@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.mainVisual {
	padding-top: 248px;
	position: relative;
	z-index: 10;
}
.mainVisual .inner {
	margin: 0 auto;
	padding: 0 20px;
	max-width: 1100px;
	position: relative;
	color: #fff;
}
.mainVisual .bgList {
	width: 89.58%;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}
.mainVisual .bgList li {
	height: 800px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.slick-dots {
	width: 100%;
	position: absolute;
	left: -5.7%;
	bottom: 36px;
	display: flex;
	justify-content: center;
}
.slick-dots li {
	margin: 0 10px;
	width: 20px;
	height: 10px !important;
	position: relative;
	cursor: pointer;
}
.slick-dots li::before {
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
	top: 50%;
	background-color: #fff;
	content: '';
}
.slick-dots li.slick-active::before {
	background-color: #A38560;
}
.slick-dots li button {
	display: none;
}
.mainVisual .inner .title {
	margin-bottom: 25px;
	font-size: 2rem;
	line-height: 1.8;
	letter-spacing: 0.15em;
	font-family: 'Noto Serif JP', serif;
}
.mainVisual .inner h2 {
	margin-bottom: 25px;
	font-size: 10rem;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.075em;
	font-family: 'Cormorant Infant', serif;
}
.mainVisual .inner .textBox {
	padding: 35px 140px 36px;
	background: url(../img/common/icon_warning.png) no-repeat left 71px center / 68px auto;
	background-color: #fff;
}
.mainVisual .inner .textBox p {
	color: #1d1d1d;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.15em;
	text-align: center;
}
.mainVisual .inner .textBox p strong {
	margin-bottom: 17px;
	display: block;
	font-size: 3rem;
}
.mainVisual .inner .link {
	position: absolute;
	right: 160px;
	bottom: 216px;
}
#main .about {
	margin: -100px 0 106px;
	padding: 330px 20px 90px;
	position: relative;
	box-sizing: border-box;
}
#main .about::before {
	width: 85.42%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #E5EBF3;
	content: '';
	z-index: -1;
}
#main .about h3 {
	width: 540px;
	position: absolute;
	right: 0;
	top: 549px;
	font-size: 10rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	font-family: 'Cormorant Infant', serif;
	transform: rotate(90deg);
}
#main .about h4 {
	margin-bottom: 25px;
	padding-top: 93px;
	font-size: 3.6rem;
	letter-spacing: 0.1em;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
}
#main .about p {
	margin-bottom: 52px;
	color: #1e1e1e;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2.25;
	letter-spacing: 0.075em;
	text-align: left;
}
#main .product {
	margin-bottom: 100px;
	max-width: 1360px;
}
#main .product .linkList {
	margin-top: -20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .product .linkList > li {
	margin-top: 20px;
	width: calc((100% - 40px) / 3);
	background-color: #fff;
}
#main .product .linkList > li a {
	display: block;
}
#main .product .linkList li .pho {
	position: relative;
}
#main .product .linkList li .pho span {
	width: 80px;
	position: absolute;
	right: 0;
	bottom: 0;
}
#main .product .linkList li .txtBox {
	padding: 23px 35px 41px;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.1);
}
#main .product .linkList li .txtBox .ttl {
	margin-bottom: 17px;
	color: #2667de;
	font-size: 2.6rem;
	font-weight: 600;
	letter-spacing: 0.075em;
	font-family: 'Noto Serif JP', serif;
}
#main .product .linkList li:first-of-type .txtBox p {
	line-height: 2;
}
#main .product .linkList li:first-of-type .txtBox .ttl {
	margin-bottom: 5px;
}
#main .product .linkList li .txtBox  p {
	line-height: 1.73;
	letter-spacing: 0.075em;
}
#main .product .linkList li .txtBox ul {
	line-height: 1.73;
	letter-spacing: 0.075em;
}
#main .preformance {
	margin-bottom: 135px;
	padding-top: 93px;
	max-width: 1360px;
	position: relative;
}
#main .preformance::before {
	width: 80.88%;
	height: 550px;
	max-width: 1100px;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background: url(../img/index/performance_bg.jpg) no-repeat center center / cover;
	content: '';
	z-index: -1;
}
#main .preformance .headLine01 {
	margin-bottom: 67px;
	color: #fff;
}
#main .preformance .textList {
	margin-top: -40px;
	display: flex;
	flex-wrap: wrap;
}
#main .preformance .textList li {
	margin: 40px 40px 0 0;
	width: calc((100% - 120px) / 4);
}
#main .preformance .textList li:nth-of-type(4n) {
	margin-right: 0;
}
#main .preformance .textList li .pho {
	margin-bottom: 13px;
}
#main .preformance .textList li .subBox {
	margin-bottom: 27px;
}
#main .preformance .textList li .txtBox .ttl {
	margin-bottom: 6px;
	color: #202020;
	font-size: 1.6rem;
	font-weight: 700;
}
#main .preformance .textList li .txtBox p {
	font-size: 1.5rem;
	line-height: 1.6;
	letter-spacing: 0.075em;
}
#main .preformance .textList li .btn {
	text-align: center;
}
#main .preformance .textList li .btn a {
	display: inline-block;
	vertical-align: top;
}
#main .news {
	margin-bottom: 80px;
	padding: 84px 0 94px;
	background-color: #F0F3F7;
}
#main .news .headLine01 {
	margin-bottom: 37px;
}
#main .news .tabList {
	display: flex;
	flex-wrap: wrap;
}
#main .news .tabList li {
	width: 25%;
	display: flex;
	border-right: 1px solid #F0F3F7;
	box-sizing: border-box;
}
#main .news .tabList li:nth-of-type(4n) {
	border: none;
}
#main .news .tabList li a {
	padding: 12px;
	width: 100%;
	font-size: 1.8rem;
	letter-spacing: 0.075em;
	text-align: center;
	box-sizing: border-box;
	background-color: #D8DCE1;
}
#main .news .tabList li.on a {
	color: #fff;
	background-color: #2667DE;
}
#main .news .tabBox {
	border-left: 1px solid #E5E9EE;
	border-right: 1px solid #E5E9EE;
	background-color: #fff;
}
#main .news .tabBox dt {
	margin: 16px 10px 0 60px;
	float: left;
}
#main .news .tabBox dd {
	padding: 16px 15px 14px 14.3em;
	border-bottom: 1px solid #E5E9EE;
}
#main .news .tabBox dd a {
	display: inline-block;
	vertical-align: top;
}
#main .linkBox {
	margin-bottom: 127px;
}
#main .linkBox .linkList {
	margin: -30px 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .linkBox .linkList:last-of-type {
	margin-bottom: 0;
}
#main .linkBox .linkList li {
	margin-top: 30px;
	width: calc((100% - 40px) / 2);
	display: flex;
}
#main .linkBox .linkList li a {
	width: 100%;
	display:block;
}
#main .linkBox .linkList li a img{
	width:100%;
	height: auto;
	border:1px solid #eee;
}
#main .linkBox .linkUl::after {
	width: calc((100% - 80px) / 3);
	content: '';
}
#main .linkBox .linkUl li {
	width: calc((100% - 80px) / 3);
}
#main .linkBox .linkUl li a {
}
@media all and (min-width: 897px) {
	.mainVisual .inner .link a:hover {
		opacity: 0.7;
	}
	#main .preformance .textList li .btn a:hover {
		opacity: 0.7;
	}
	#main .news .tabList li a:hover {
		color: #fff;
		background-color: #2667DE;
	}
	#main .news .tabBox dd a:hover {
		text-decoration: underline;
	}
	#main .linkBox .linkList li a:hover {
		opacity: 0.7;
	}
	#main .product .linkList > li a:hover {
		opacity: 0.7;
	}
}
@media (min-width: 897px) and (max-width: 1445px) {
	.mainVisual .bgList {
		width: calc(100% - 20px);
	}
	.mainVisual .inner {
		padding-left: 40px;
	}
	.mainVisual .inner h2 {
		font-size: 8rem;
	}
	.mainVisual .inner .link {
		right: 60px;
	}
}
@media (min-width: 897px) and (max-width: 1660px) {
	#main .about .content {
		padding-right: 50px;
	}
	#main .about h3 {
		right: -155px;
		width: 380px;
		font-size: 7rem;
	}
	#main .about::before {
		width: calc(100% - 20px);
	}
}
@media all and (max-width: 896px) {
	.mainVisual {
		padding-top: 50px;
		height: 450px;
		box-sizing: border-box;
	}
	.mainVisual .inner {
		padding-left: 40px;
		max-width: inherit;
	}
	.mainVisual .bgList {
		width: calc(100% - 20px);
	}
	.mainVisual .bgList li {
		height: 450px;
	}
	.mainVisual .inner .title {
		font-size: 1.4rem;
	}
	.mainVisual .inner h2 {
		margin-bottom: 25px;
		font-size: 3.2rem;
	}
	.mainVisual .inner .textBox {
		padding: 50px 10px 20px 20px;
		background-size: 30px auto;
		background-position: center top 10px;
	}
	.mainVisual .inner .textBox p {
		font-size: 1.6rem;
	}
	.mainVisual .inner .textBox p strong {
		font-size: 2rem;
	}
	.mainVisual .inner .link {
		width: 80px;
		right: 10px;
		bottom: -85px;
	}
	#main .about {
		margin: -130px 0 60px;
		padding: 130px 20px 50px 0;
	}
	#main .about::before {
		width: calc(100% - 20px);
	}
	#main .about h3 {
		width: 220px;
		left: auto;
		right: -85px;
		top: 270px;
		font-size: 4rem;
	}
	#main .about h4 {
		padding-top: 80px;
		font-size: 2.4rem;
	}
	#main .about p {
		margin-bottom: 30px;
		font-size: 1.4rem;
		line-height: 1.75;
		letter-spacing: 0.02em;
		text-align: left;
	}
	#main .product {
		margin-bottom: 50px;
		max-width: inherit;
	}
	#main .product .linkList {
		margin-top: 0;
		display: block;
	}
	#main .product .linkList > li {
		margin: 0 0 30px;
		width: auto;
	}
	#main .product .linkList > li:last-of-type {
		margin-bottom: 0;
	}
	#main .product .linkList li .pho img {
		width: 100%;
	}
	#main .product .linkList li .pho span {
		width: 40px;
	}
	#main .product .linkList li .txtBox {
		padding: 20px;
	}
	#main .product .linkList li .txtBox .ttl {
		margin-bottom: 5px;
		font-size: 1.8rem;
	}
	#main .preformance {
		margin-bottom: 60px;
		padding-top: 50px;
		max-width: inherit;
	}
	#main .preformance::before {
		width: calc(100% - 40px);
		height: 300px;
		max-width: inherit;
	}
	#main .preformance .headLine01 {
		margin-bottom: 40px;
	}
	#main .preformance .textList {
		margin-top: 0;
		display: block;
	}
	#main .preformance .textList li {
		margin: 0 0 40px;
		width: auto;
	}
	#main .preformance .textList li:last-of-type {
		margin-bottom: 0;
	}
	#main .preformance .textList li .pho {
		text-align: center;
	}
	#main .preformance .textList li .txtBox .ttl {
		font-size: 1.4rem;
	}
	#main .preformance .textList li .txtBox p {
		font-size: 1.3rem;
	}
	#main .preformance .textList li .btn a {
		width: 140px;
	}
	#main .news {
		margin-bottom: 50px;
		padding: 40px 0 50px;
	}
	#main .news .headLine01 {
		margin-bottom: 37px;
	}
	#main .news .tabList li {
		width: 25%;
	}
	#main .news .tabList li a {
		padding: 5px;
		font-size: 1.3rem;
		letter-spacing: 0.05em;
	}
	#main .news .tabBox dt {
		margin: 16px 10px 0 10px;
	}
	#main .news .tabBox dd {
		padding-left: 7em;
	}
	#main .linkBox {
		margin-bottom: 60px;
	}
	#main .linkBox .linkList {
		margin: 0 0 20px;
		display: block;
	}
	#main .linkBox .linkList li {
		margin: 0 0 20px;
		width: auto;
		display: block;
	}
	#main .linkBox .linkList li:last-of-type {
		margin-bottom: 0;
	}
	#main .linkBox .linkList li a {
	}
	#main .linkBox .linkUl {
		display: flex;
	}
	#main .linkBox .linkUl::after {
		display: none;
	}
	#main .linkBox .linkUl li {
		width: calc((100% - 15px) / 2);
	}
	#main .linkBox .linkUl li a {
	}
	.slick-dots {
		left: 50%;
		transform: translateX(-50%);
	}
}



.search-box{
	position:fixed;
	bottom:100px;
	right:50px;
	z-index:9999;
	width:350px;
	height:70px;
}
.search-box #form{
	position:relative;
	width:350px;
}
.search-box #sbox{
	background:#eee;
	border:none;
	width:280px;
	box-sizing:border-box;
	height:70px;
	padding:0 20px;
	position:absolute;	
	left:0;
	top:0; 	
	outline:0;
}
.search-box #sbtn2{
	background:#2667DE;
	padding:15px;
	box-sizing:border-box;
	width:70px;
	height:70px;
	vertical-align:middle;
	position:absolute;
	right:0;
	top:0;
	border:none;
}
@media all and (max-width: 896px) {
.search-box{
	background:#B4B4B4;
	position:fixed;
	bottom:0;
	right:0;
	left:0;
	margin:auto;
	width:100%;
	height:70px;
	padding:10px;
	box-sizing:border-box;
}
.search-box #form{
	position:relative;
	width:100%;
}
.search-box #sbox{
	width : calc(100% - 50px) ;
	height:50px;
}
.search-box #sbtn2{
	padding:10px;
	width:50px;
	height:50px;
}
#gFooter{
	padding:0;
	border-top:1px solid #fff;
}
}


/*
Wordpress 
__________________________*/
/*others*/
.post_none{padding: 2em;}
.post_none2{text-align: center;color: #fff;}
img{height:auto;}