@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500;600;700&display=swap');

/* font-family: "Zen Kaku Gothic New", sans-serif; */

/* Common
-----------------------------------*/
:root{
	--main-color: #00BFDE;
}
*{
	box-sizing: border-box;
	vertical-align: middle;
}
html{
	font-size: 62.5%;
	overscroll-behavior: none;
}
body{
	/*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;*/
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
	line-height: 180%;
	color: #2F201B;
	background: #F6F5F1;
	font-size: 1.4rem;
	overflow-x: hidden;
}
a{
	color: inherit;
	text-decoration: none;
}
img,svg{
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
input,select,textarea,label,button{
	/*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;*/
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 500;
}
h1,h2,h3,h4,h5,h6{
	line-height: 140%;
}
.pc{display: block;}
.sp{display: none;}

.tit01{
	font-family: "Shippori Mincho", serif;
	margin-bottom: 58px;
	font-size: 1.6rem;
	line-height: 1.4rem;
	font-weight: 600;
	color: #B3A48B;
}
.tit01 span{
	display: block;
	font-size: 7.2rem;
	line-height: 5.3rem;
	margin-bottom: 20px;
}
.tit02{
	font-family: "Shippori Mincho", serif;
	font-weight: 500;
	padding-left: 16px;
	font-size: 1.6rem;
	line-height: 1.6;
	/*border-left: 4px solid #b3a48b;*/
	margin-bottom: 10px;
	position: relative;
}
.tit02:before{
	content: "";
	width: 4px;
	height: 40px;
	position: absolute;
	background: #b3a48b;
	top: 50%;
	margin-top: -20px;
	left: 0;
}
.tit03{
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	line-height: 1.6;
	font-size: 3.2rem;
	margin-bottom: 64px;
}
.inner{
	max-width: 960px;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}
.common_btn{
	font-family: "Shippori Mincho", serif;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.6;
	max-width: 380px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.common_btn a{
	display: block;
	width: 100%;
	background: #F75A3E;
	color: #FFF;
	border-radius: 40px;
	padding: 12px 40px 12px 40px;
	position: relative;
	opacity: 1;
	transition: opacity 0.3s;
}
.common_btn a:hover{
	opacity: 0.6;
}
.common_btn a .ico{
	position: absolute;
	right: 20px;
	top: 50%;
	font-size: 0;
	display: block;
	margin-top: -6px;
}
.campaign_box{
	max-width: 800px;
	margin: 0 auto 40px auto;
}

/* Header
-----------------------------------*/
header{
	background: #F6F5F1;
}
header .hdr_inner{
	padding: 16px 3.3333vw;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
header #hdr_logo{
	max-width: 333px;
	width: 100%;
}
header .btn{
	font-family: "Shippori Mincho", serif;
	font-weight: bold;
	text-align: center;
	font-size: 2rem;
	max-width: 320px;
	width: 100%;
}
header .btn.campaign{
	max-width: 220px;
}
header .btn a{
	width: 100%;
	display: block;
	line-height: 1.6;
	padding: 9px 21px;
	background: #F75A3E;
	color: #FFF;
	border-radius: 40px;
}

/* MainVisual
-----------------------------------*/
#mainVisual{
	margin-bottom: 120px;
	position: relative;
	padding-bottom: 8.9563vw;
}
#mainVisual .wrap{
	max-width: 94.2708vw;
	width: 100%;
	margin-left: auto;
	position: absolute;
	bottom: 0;
	right: 0;
	/*margin-bottom: -8.9563vw;*/
}
#mainVisual .wrap h1{
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 2.5516vw;
	line-height: 160%;
	letter-spacing: 5%;
	margin-bottom: 2.4625vw;
	color: #FFF;
	text-shadow: 0px 5.44px 10.89px rgba(0, 0, 0, 0.6);
}
#mainVisual .wrap h1 span{
	font-size: 1.25vw;
}
#mainVisual .wrap .box{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
#mainVisual .wrap .box .image{
	max-width: 53.8693vw;
	width: 100%;
	order: 2;
}
#mainVisual .wrap .box .left{
	order: 1;
	max-width: 35.4401vw;
}
#mainVisual .wrap .box .left ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1.1339vw;
}
#mainVisual .wrap .box .left ul li{
	max-width: 11.0573vw;
	margin-right: 1.1339vw;
}
#mainVisual .wrap .box .left ul li:last-child{
	margin-right: 0;
}
#mainVisual .wrap .box .left .notice{
	font-size: 0.8078vw;
	line-height: 140%;
	text-align: right;
}

/* Lead
-----------------------------------*/
#lead{
	margin-bottom: 115px;
}
#lead .box{
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
	background: #AC8958;
	background: linear-gradient(180deg,rgba(172, 137, 88, 1) 0%, rgba(110, 73, 20, 1) 100%);
	border-radius: 8px;
	padding: 27px 10px 33px 10px;
	position: relative;
}
#lead .box:before,
#lead .box:after{
	content: "";
	width: 49px;
	height: 1px;
	transform: rotate(-45deg);
	background: #d9d9d9;
	position: absolute;
}
#lead .box:before{
	top: 0;
	left: -14px;
	transform-origin: center right;
}
#lead .box:after{
	right: -14px;
	bottom: 0;
	transform-origin: center left;
}
#lead .box h2{
	font-family: "Shippori Mincho", serif;
	font-weight: bold;
	font-size: 3.2rem;
	/*line-height: 140%;*/
	line-height: 1.4;
	padding-bottom: 19px;
	position: relative;
	color: #FFF;
	text-align: center;
	margin-bottom: 19px;
}
#lead .box h2 span{
	display: block;
	font-size: 2rem;
	margin-bottom: 16px;
	/*line-height: 160%;*/
	line-height: 1.6;
}
#lead .box h2:after{
	content: "";
	width: 32px;
	height: 2px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -16px;
}
#lead .box ul{
	/*max-width: 505px;*/
	max-width: 543px;
	width: 100%;
	padding-left: 18px;
	margin: 0 auto;
	color: #FFF;
}
#lead .box ul li{
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 14px;
	display: flex;
	align-items: center;
	width: 100%;
}
#lead .box ul li:last-child{
	margin-bottom: 0;
}
#lead .box ul li span{
	margin-right: 13px;
	padding-bottom: 2px;
}
#lead .box ul li:last-child span{
	margin-right: 17px;
}

/* About
-----------------------------------*/
#about{
	margin-bottom: 115px;
}
#about .tit02:before{
	height: 16px;
	margin-top: -8px;
}
#about .tit03{
	margin-bottom: 54px;
}
#about .image{
	text-align: center;
	max-width: 690px;
	margin: 0 auto 34px auto;
}
#about .image .notice{
	text-align: right;
	font-size: 1.3rem;
	line-height: 1rem;
	margin-top: 16px;
}
#about .box01{
	margin-bottom: 73px;
}
#about .box01 .txt{
	font-size: 1.8rem;
	line-height: 1.6;
}
#about .contact_box{
	max-width: 800px;
	height: 250px;
	width: 100%;
	margin: 0 auto;
	background-image: url(../images/bg_contact_box.png);
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 16px;
	color: #FFF;
	padding-bottom: 9px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#about .contact_box h2{
	font-family: "Shippori Mincho", serif;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.8;
	margin-bottom: 23px;
}

/* Merit
-----------------------------------*/
#merit{
	margin-bottom: 120px;
}
#merit .tit03{
	margin-bottom: 23px;
}
#merit .txt{
	font-size: 1.8rem;
	line-height: 1.6;
}
#merit .box01{
	margin-bottom: 96px;
}
#merit .box02{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 73px;
}
#merit .box02 .tit03{
	margin-bottom: 21px;
}
#merit .box02 .left{
	max-width: 468px;
	width: 100%;
}
#merit .box02 .left h3{
	margin-bottom: 15px;
}
#merit .box02 .left .txt{
	margin-bottom: 31px;
}
#merit .box02 .left .image{

}
#merit .box02 .right{
	margin-top: 15px;
	max-width: 426px;
	width: 100%;
}
#merit .box02 .right_sp{
	display: none;
}
#merit .box02 .notice{
	width: 100%;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	margin-top: 8px;
	text-align: right;
}
#merit .box03{
	max-width: 520px;
	width: 100%;
	margin: 0 auto 80px auto;
}

/* Design
-----------------------------------*/
#design{
	padding: 80px 0;
	position: relative;
}
#design:before{
	content: "";
	position: absolute;
	z-index: 1;
	max-width: 75vw;
	min-width: 1200px;
	width: 100%;
	height: 100%;
	background: #FFF;
	top: 0;
	left: 0;
}
#design .tit01{
	margin-bottom: 0;
}
#design .box{
	display: flex;
	/*justify-content: space-between;*/
	margin-bottom: 80px;
}
#design .box .left{
	max-width: 360px;
	width: 100%;
	margin-top: 48px;
	margin-right: 5.2083vw;
}
#design .box .left .tit03{
	margin-bottom: 44px;
}
#design .box .left .right_sp{
	display: none;
}
#design .box .left h4{
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 2.0rem;
	line-height: 1.6;
	margin-bottom: 10px;
}
#design .box .left .txt{
	font-size: 1.8rem;
	line-height: 1.6;
}
#design .box .right{
	width: 53.125vw;
	margin-right: -25vw;
	/*width: 53.1944vw;
	margin-right: -16.6667vw;*/
}
#design .box .right h5{
	margin-bottom: 20px;
}
#design .box .right .image{
	min-width: 766px;
}

/* Manufacturing
-----------------------------------*/
#manufacturing{
	background: #B3A48B;
	padding: 115px 0 80px 0;
}
#manufacturing .tit01{
	color: #fff;
}
#manufacturing .tit02{
	color: #FFF;
}
#manufacturing .tit02:before{
	background: #FFF;
}
#manufacturing .tit03{
	color: #FFF;
	margin-bottom: 23px;
}
#manufacturing .txt{
	font-size: 1.8rem;
	line-height: 1.6;
	color: #FFF;
	margin-bottom: 55px;
}
#manufacturing .box{
	background: #FFF;
	border-radius: 16px;
	padding: 57px 120px 33px 120px;
	margin-bottom: 80px;
}
#manufacturing .box h5{
	font-family: "Shippori Mincho", serif;
	font-weight: bold;
	font-size: 2.8rem;
	line-height: 1.8;
	margin-bottom: 27px;
	text-align: center;
}
#manufacturing .box .images{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
#manufacturing .box .images p:first-child{
	width: 100%;
	margin-bottom: 48px;
}
#manufacturing .box .images p:nth-child(2){
	/*max-width: 16.0214vw;*/
	max-width: 42.7236%;
	width: 100%;
	margin-bottom: 14px;
}
#manufacturing .box .images ul{
	/*max-width: 19.1667vw;*/
	max-width: 51.1111%;
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#manufacturing .box .images ul li{
	max-width: 47.8261%;
	width: 100%;
	margin-bottom: 16px;
}

/* Guests' Voice
-----------------------------------*/
#guests{
	padding: 115px 0 120px 0;
}
#guests .tit01{
	margin-bottom: 48px;
}
#guests .tit03{
	margin-bottom: 53px;
}
#guests .bloc .box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 64px;
}
#guests .bloc .box:last-child{
	margin-bottom: 0;
}
#guests .bloc .box ul{
	max-width: 46.1458%;
	width: 100%;
}
#guests .bloc .box:nth-child(odd) ul,
#guests .bloc .box:nth-child(even) .image{
	order: 1;
}
#guests .bloc .box:nth-child(even) ul,
#guests .bloc .box:nth-child(odd) .image{
	order: 2;
}
#guests .bloc .box ul li{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.6;
	border-bottom: 1px solid #b3a48b;
	margin-bottom: 60px;
	padding-top: 4px;
	padding-bottom: 8px;
	position: relative;
}
#guests .bloc .box:nth-child(odd) ul li{
	padding-right: 27px;
	border-right: 1px solid #b3a48b;
}
#guests .bloc .box:nth-child(even) ul li{
	padding-left: 27px;
	border-left: 1px solid #b3a48b;
}
#guests .bloc .box .image img{
	max-width: 360px;
}
#guests .bloc .box:nth-child(odd) .image{
	text-align: left;
	padding-left: 20px;
}
#guests .bloc .box:nth-child(even) .image{
	text-align: right;
	padding-right: 20px;
}
#guests .bloc .box ul li:after{
	content: "";
	background-image: url(../images/ico_guests_arrow.svg);
	background-color: #f6f5f1;
	width: 12px;
	height: 11px;
	position: absolute;
	bottom: 11px;
}
#guests .bloc .box:nth-child(odd) ul li:after{
	right: -12px;
}
#guests .bloc .box:nth-child(even) ul li:after{
	transform: rotate(180deg);
	left: -12px;
}
#guests .bloc .box ul li:last-child{
	margin-bottom: 0;
}
#guests .bloc .box .image{
	max-width: 47.9167%;
	width: 100%;
}

/* Owners' Voice
-----------------------------------*/
#owners{
	padding: 120px 0 80px 0;
	background: #FFF;
}
#owners .tit01{
	margin-bottom: 48px;
}
#owners .tit03{
	margin-bottom: 69px;
}
#owners .bloc{
	margin-bottom: 80px;
}
#owners .bloc .box{
	padding-bottom: 42px;
	margin-bottom: 48px;
	position: relative;
}
#owners .bloc .box:after{
	content: "";
	background-image: linear-gradient(to right, #B3A48B, #B3A48B 2px, transparent 2px, transparent 4px);
	background-size: 4px 1px;
	background-repeat: repeat-x;
	position: absolute;
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
}
#owners .bloc .box:last-child{
	margin-bottom: 0;
}
#owners .bloc .box .wrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#owners .bloc .box .wrap:before,
#owners .bloc .box .wrap:after{
	content: "";
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #B3A48B;
	position: absolute;
	bottom: -2px;
}
#owners .bloc .box .wrap:before{
	left: 0;
}
#owners .bloc .box .wrap:after{
	right: 0;
}
#owners .bloc .box .wrap .left{
	max-width: 27.5%;
	width: 100%;
	text-align: center;
}
#owners .bloc .box .wrap .right{
	max-width: 66.6667%;
	width: 100%;
}
#owners .bloc .box .wrap .right .tits{
}
#owners .bloc .box .wrap .right .tits .tit{
	width: 100%;
}
#owners .bloc .box .wrap .right .tits .tit h4{
	font-size: 1.6rem;
	line-height: 1.2rem;
	text-align: center;
	padding: 10px;
	color: #FFF;
	background: #7F6C4B;
	font-weight: 600;
	border-radius: 4px;
	margin-bottom: 22px;
}
#owners .bloc .box .wrap .right .tits .tit h5{
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 2.4rem;
	line-height: 1.4;
	margin-bottom: 11px;
}
#owners .bloc .box .wrap .right .tits .image_sp{
	display: none;
}
#owners .bloc .box .wrap .right .txt{
	font-size: 1.8rem;
	line-height: 160%;
}
#owners .bloc .box .wrap .right .txt p{

}

/* Company
-----------------------------------*/
#company{
	padding: 80px 0;
}
#company .box{
	max-width: 960px;
	width: 100%;
	margin: 0 auto 62px auto;
	display: flex;
	justify-content: space-between;
}
#company .box h2{
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	font-size: 3.6rem;
	line-height: 1.6;
	margin-top: -20px;
}
#company .box .image{
	max-width: 500px;
	width: 100%;
}
#company .box .image .notice{
	font-size: 1.2rem;
	line-height: 1rem;
	margin-top: 10px;
}
#company h3{
	margin-bottom: 59px;
	line-height: 2rem;
	font-size: 2.4rem;
	vertical-align: middle;
	font-family: "Shippori Mincho", serif;
	font-weight: 600;
	padding-left: 8px;
	border-left: 4px solid #b3a48b;
}
#company h4{
	margin-bottom: 32px;
	font-size: 2rem;
	font-weight: bold;
}
#company table{
	width: 100%;
}
#company table tr:first-child th{
	border-top: 1px solid #b3a48b;
}
#company table tr:first-child td{
	border-top: 1px solid #e8e4dc;
}
#company table th,
#company table td{
	padding: 27px 16px 22px 16px;
	vertical-align: top;
	text-align: left;
}
#company table th{
	width: 176px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.6;
	border-bottom: 1px solid #b3a48b;
}
#company table td{
	font-size: 1.6rem;
	line-height: 1.6;
	border-bottom: 1px solid #e8e4dc;
}

/* Contact
-----------------------------------*/
#contact{
	background: #B3A48B;
	padding-bottom: 37px;
}
#contact h2{
	font-family: "Shippori Mincho", serif;
	font-weight: 800;
	font-size: 3.2rem;
	line-height: 160%;
	padding: 25px 20px 30px 20px;
	width: 100%;
	text-align: center;
	margin-bottom: 42px;
	background: #6E4914;
	color: #FFF;
}
#contact .bloc{
	background: #FFF;
	padding: 49px 14.1667% 21px 14.1667%;
	border-radius: 8px;
	margin-bottom: 42px;
}
#contact .bloc .notice01{
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1rem;
	margin-bottom: 19px;
}
#contact .bloc .notice01 span{
	color: #F20202;
}
#contact .bloc .box{
	margin-bottom: 27px;
}
#contact .bloc .box.df{
	display: flex;
	justify-content: space-between;
}
#contact .bloc .box.df .left{
	max-width: 476px;
	width: 100%;
}
#contact .bloc .box.df .image{
	max-width: 188px;
	width: 100%;
}
#contact .bloc .box h4{
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.6rem;
	margin-bottom: 10px;
}
#contact .bloc .box h4 .mus{
	font-size: 1rem;
	color: #F20202;
	vertical-align: text-top;
}
#contact .bloc .box h4 .ltsp{
	letter-spacing: -0.05em;
}
#contact .bloc .box h4 .fs_sm{
	font-size: 1.4rem;
	font-weight: 500;
	display: block;
	margin-top: 5px;
}
#contact .bloc .box .area .list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
#contact .bloc .box .area #other_job{
	margin-top: 15px;
}
#contact .bloc .box .area ul{
}
#contact .bloc .box .area ul li,
#contact .bloc .box .area ol li{
	margin-right: 18px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 2;
	margin-bottom: 4px;
}
#contact .bloc .box .area .list li:last-child{
	margin-right: 0;
	width: 100%;
	margin-top: 4px;
}
#contact .bloc .box .area input[type="text"],
#contact .bloc .box .area input[type="email"],
#contact .bloc .box .area input[type="tel"]{
	width: 100%;
	appearance: none;
	font-size: 1.6rem;
	line-height: 1.2rem;
	padding: 15px 16px;
	background: #EEE;
	border: none;
	border-radius: 4px;
	box-shadow: none;
}
#contact .bloc .box .area ol li:last-child{
	margin-bottom: 0;
}
#contact .bloc .box .area input[type="checkbox"],
#contact .bloc .box .area input[type="radio"]{
	display: none;
}
#contact .bloc .box .area label{
	position: relative;
	line-height: 20px;
	padding: 0 0 0 30px;
	margin: 0;
	font-weight: 500;
	border: none;
}
#contact .bloc .box .area label.mfp_checked{
	background-color: transparent;
	box-shadow: none;
}
#contact .mfp_err{
	padding: 0;
	background: none;
}
#contact .bloc .box .area label:hover:after{
	background: #eee;
}
#contact .bloc .box .area label:after,
#contact .bloc .box .area label:before{
	position: absolute;
	content: "";
	display: block;
	top: 50%;
	transition: 0.2s;
}
#contact .bloc .box .area label:after{
	left: 0px;
	margin-top: -11px;
	width: 18px;
	height: 18px;
	border-radius: 10px;
	background: #FFF;
	border: 1px solid #888;
}
#contact .bloc .box .area ol label:after{
	border-radius: 0;
}
#contact .bloc .box .area label:before{
	width: 10px;
	height: 10px;
	background: #2f201b;
	left: 5px;
	margin-top: -6px;
	opacity: 0;
	z-index: 1;
	border-radius: 10px;
}
#contact .bloc .box .area label.mfp_checked:before{
	opacity: 1;
}
#contact .bloc .box .area textarea{
	width: 100%;
	height: 200px;
	appearance: none;
	font-size: 1.6rem;
	line-height: 1.2rem;
	padding: 15px 16px;
	background: #EEE;
	border: none;
	border-radius: 4px;
	box-shadow: none;
}
#contact .bloc .box .area input::placeholder{
	font-weight: bold;
	color: #999;
}
#contact form#mailformpro .privacy{
	color: #FFF;
	font-weight: bold;
	font-size: 1.6rem;
	margin-bottom: 40px;
	text-align: center;
}
#contact form#mailformpro .privacy input[type="checkbox"],
#contact form#mailformpro .privacy input[type="radio"]{
	display: none;
}
#contact form#mailformpro .privacy label{
	position: relative;
	line-height: 20px;
	padding: 0 0 0 30px;
	font-weight: bold;
	border: none;
}
#contact form#mailformpro .privacy label.mfp_checked{
	background-color: transparent;
	box-shadow: none;
}
#contact form#mailformpro .privacy label:hover:after{
	background: #eee;
}
#contact form#mailformpro .privacy label:after,
#contact form#mailformpro .privacy label:before{
	position: absolute;
	content: "";
	display: block;
	top: 50%;
	transition: 0.2s;
}
#contact form#mailformpro .privacy label:after{
	left: 0px;
	margin-top: -11px;
	width: 18px;
	height: 18px;
	background: #FFF;
	border: 1px solid #888;
}
#contact form#mailformpro .privacy label:before{
	width: 10px;
	height: 10px;
	background: #888;
	left: 5px;
	margin-top: -6px;
	opacity: 0;
	z-index: 1;
	border-radius: 10px;
}
#contact form#mailformpro .privacy label.mfp_checked:before{
	opacity: 1;
}
#contact .privacy_err .mfp_err{
	text-align: center;
	margin-bottom: 30px;
	color: #fff;
}
#contact .notice02{
	color: #FFF;
	font-size: 1.3rem;
	font-weight: bold;
	line-height: 1.6;
	max-width: 760px;
	margin: 0 auto 30px auto;
}
#contact .notice02 a{
	text-decoration: underline;
}
#contact .button{
	text-align: center;
}
#contact .button{
	font-family: "Shippori Mincho", serif;
	max-width: 350px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
#contact .button button{
	font-family: "Shippori Mincho", serif;
	appearance: none;
	border: none;
	cursor: pointer;
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.6;
	display: block;
	width: 100%;
	background: #F75A3E;
	color: #FFF;
	border-radius: 40px;
	padding: 9px 40px 11px 40px;
	opacity: 1;
	transition: opacity 0.3s;
}
#contact .button button:hover{
	opacity: 0.6;
}
#contact .button .ico{
	position: absolute;
	right: 16px;
	top: 50%;
	font-size: 0;
	display: block;
	margin-top: -6px;
	line-height: 1;
}

/* thanks
-----------------------------------*/
#thanks{
	padding: 80px 0;
	position: relative;
}
#thanks .txt{
	font-size: 1.8rem;
	line-height: 1.6;
}


/* Footer
-----------------------------------*/
footer{
	padding: 47px 0 60px 0;
	background: #F6F5F1;
	text-align: center;
}
footer ul{
	display: flex;
	justify-content: center;
	margin-bottom: 27px;
}
footer ul li{
	font-family: "Shippori Mincho", serif;
	font-size: 1.6rem;
	line-height: 1.2rem;
	font-weight: 500;
}
footer ul li a{
	text-decoration: underline;
}
footer .copyright{
	font-family: "Shippori Mincho", serif;
	font-size: 1.4rem;
	line-height: 2;
}

/* 1024px以下の場合 */
@media screen and (max-width: 1024px){
	/* Common
	-----------------------------------*/
	body{
		font-weight: 400;
	}
	input,select,textarea,label,button{
		font-weight: 400;
	}
	.pc{display: none;}
	.sp{display: block;}
	.tit01{
		margin-bottom: 10.2564vw;
		font-size: 4.1026vw;
		line-height: 3.5897vw;
	}
	.tit01 span{
		font-size: 14.359vw;
		line-height: 1.1;
		margin-bottom: 2.3077vw;
	}
	.tit02{
		padding-left: 3.0769vw;
		font-size: 4.1026vw;
		margin-bottom: 2.5641vw;
	}
	.tit02:before{
		height: 10.2564vw;
		margin-top: 0;
		transform: translateY(-50%);
	}
	.tit03{
		font-size: 7.1795vw;
		margin-bottom: 8.2051vw;
	}
	.common_btn{
		font-size: 5.1282vw;
		max-width: 89.7436vw;
	}
	.common_btn a{
		border-radius: 10.2564vw;
		padding: 2.3077vw 5.1282vw 2.8205vw 5.1282vw;
		text-align: center;
	}
	.common_btn a .ico{
		right: 2.8205vw;
		margin-top: 0;
		transform: translateY(-50%);
		width: 100%;
		max-width: 3.0769vw;
		aspect-ratio: 12 / 10;
	}
	.common_btn a .ico svg{
		width: 100%;
	}
	.campaign_box{
		margin-bottom: 0;
	}

	/* Header
	-----------------------------------*/
	header .hdr_inner{
		padding: 4.1026vw 3.5897vw 4.1026vw 3.5897vw;
		
	}
	header #hdr_logo{
		max-width: 57.1795vw;
	}
	header .btn{
		display: none;
		/*width: 100%;
		max-width: 50.2564vw;
		text-align: center;*/
	}
	/*header .btn.campaign{
		max-width: 35.8974vw;
	}
	header .btn a{
		padding: 0.5128vw 2.5641vw 1.0256vw 2.5641vw;
		border-radius: 10.2564vw;
		font-size: 3.3333vw;
		line-height: 1.6;
	}
	header .btn.campaign a{
		font-size: 3.5897vw;
		padding: 0.5128vw 2.5641vw 1.0256vw 2.5641vw;
	}*/

	/* MainVisual
	-----------------------------------*/
	#mainVisual{
		margin-bottom: 6.1538vw;
		padding-bottom: 0;
	}
	#mainVisual .mv_image img{
		width: 100%;
	}
	#mainVisual .wrap{
		max-width: 100%;
		position: static;
	}
	#mainVisual .wrap h1{
		position: absolute;
		top: 3.0769vw;
		left: 0;
		width: 100%;
		max-width: 100%;
		text-align: center;
		font-size: 6.4103vw;
		line-height: 1.35;
		letter-spacing: 0.05em;
		margin-bottom: 0;
		color: #1F1816;
		text-shadow: none;
	}
	#mainVisual .wrap h1 span{
		font-size: 4.1026vw;
	}
	#mainVisual .wrap .box{
		display: block;
	}
	#mainVisual .wrap .box .image{
		max-width: 100%;
		margin-bottom: 6.1538vw;
	}
	#mainVisual .wrap .box .image img{
		width: 100%;
	}
	#mainVisual .wrap .box .btn{
		margin-bottom: 8.2051vw;
	}
	#mainVisual .wrap .box .left{
		max-width: 100%;
		padding: 0 5.1282vw;
		/*margin-top: -5.1282vw;*/
	}
	#mainVisual .wrap .box .left ul{
		margin-bottom: 2.0513vw;
		justify-content: center;
		flex-wrap: wrap;
		max-width: 87.6923vw;
		width: 100%;
		margin: 0 auto;
	}
	#mainVisual .wrap .box .left ul li{
		/*max-width: 28.2051vw;*/
		max-width: 42.0513vw;
		margin-right: 2.5641vw;
	}
	#mainVisual .wrap .box .left ul li:nth-child(2){
		margin-right: 0;
	}
	#mainVisual .wrap .box .left ul li:last-child{
		margin-top: -3.0769vw;
	}
	#mainVisual .wrap .box .left ul li img{
		width: 100%;
	}
	#mainVisual .wrap .box .left .notice{
		font-size: 2.5641vw;
		line-height: 1.4;
		margin-top: -3.5897vw;
	}

	/* Lead
	-----------------------------------*/
	#lead{
		margin-bottom: 16.9231vw;
		padding: 0 5.1282vw;
	}
	#lead .box{
		max-width: 100%;
		padding: 7.9487vw 5.1282vw 8.2051vw 5.1282vw;
	}
	#lead .box h2{
		font-size: 7.1795vw;
		padding-bottom: 4.8718vw;
		margin-bottom: 6.6667vw;
	}
	#lead .box h2 span{
		font-size: 4.6154vw;
		letter-spacing: 0;
		margin-bottom: 5.8974vw;
	}
	#lead .box ul{
		max-width: 100%;
		padding: 0 1.0256vw;
	}
	#lead .box ul li{
		font-size: 4.6154vw;
		margin-bottom: 3.3333vw;
		align-items: flex-start;
		line-height: 1.6;
	}
	#lead .box ul li:first-child{
		line-height: 1.5;
	}
	#lead .box ul li:nth-child(2){
		margin-bottom: 2.5641vw;
	}
	#lead .box ul li span{
		width: 5.3846vw;
		min-width: 5.3846vw;
		margin-right: 2.3077vw;
		padding-bottom: 0;
		/*margin-top: -0.5128vw;*/
	}
	#lead .box ul li span img{
		width: 100%;
	}
	#lead .box ul li:last-child span{
		margin-right: 2.3077vw;
	}

	/* About
	-----------------------------------*/
	#about{
		margin-bottom: 17.1795vw;
	}
	#about .tit01{
		margin-bottom: 9.2308vw;
		font-size: 3.5897vw;
		line-height: 100%;
	}
	#about .tit02{
		margin-bottom: 1.5385vw;
	}
	#about .tit02:before{
		height: 4.1026vw;
		margin-top: 0;
	}
	#about .tit03{
		margin-bottom: 5.8974vw;
	}
	#about .inner{
		padding: 0 5.1282vw;
	}
	#about .box01{
		margin-bottom: 8.2051vw;
		height: 31.7949vw;
		overflow: hidden;
		position: relative;
		transition: height 0.2s;
	}
	#about .box01.active{
		/*height: 51.7949vw;*/
		height: auto;
		overflow: visible;
	}
	#about .box01:after{
		content: "";
		position: absolute;
		width: 100%;
		height: 11.5385vw;
		background: linear-gradient(180deg,rgba(246, 245, 241, 0) 0%, rgba(246, 245, 241, 1) 95%);
		bottom: 0;
		left: 0;
	}
	#about .box01.active:after,
	#about .box01.active .switch{
		display: none;
	}
	#about .box01 .txt{
		font-size: 4.6154vw;
	}
	#about .box01 .switch{
		max-width: 35.8974vw;
		width: 100%;
		text-align: center;
		font-size: 4.1026vw;
		line-height: 1.6;
		padding: 1.0256vw;
		border-radius: 4.1026vw;
		background: #B3A48B;
		color: #FFF;
		font-weight: 500;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 10;
		transform: translateX(-50%);
		cursor: pointer;
	}
	#about .box01 .switch:after{
		content: "";
		background-image: url(../images/ico_arrow01.svg);
		background-size: contain;
		background-repeat: no-repeat;
		aspect-ratio: 10 / 10;
		width: 2.3077vw;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 2.0513vw;
		margin-top: 0.5128vw;
	}
	#about .box02{
		margin-bottom: 57px;
	}
	#about .box02 .image{
		max-width: 100%;
		margin-bottom: 6.1538vw;
	}
	#about .box02 ol li{
		font-size: 4.6154vw;
		line-height: 1.8;
		font-weight: 500;
		text-indent: -1em;
		padding-left: 1em;
	}
	#about .box02 .notice{
		font-size: 3.3333vw;
		line-height: 1.8;
	}
	#about .contact_box{
		max-width: 100%;
		height: auto;
		background-image: url(../images/bg_contact_box_sp.png);
		border-radius: 0;
		padding-top: 5.8974vw;
		padding-bottom: 8.2051vw;
		display: block;
	}
	#about .contact_box h2{
		font-size: 5.1282vw;
		font-weight: 800;
		line-height: 1.6;
		margin-bottom: 4.1026vw;
	}

	/* Merit
	-----------------------------------*/
	#merit{
		margin-bottom: 16.4103vw;
		padding: 0 5.1282vw;
	}
	#merit .tit01{
		margin-bottom: 8.9744vw;
	}
	#merit .tit02{
		margin-bottom: 1.2821vw;
	}
	#merit .tit03{
		margin-bottom: 6.1538vw;
	}
	#merit .txt{
		font-size: 4.1026vw;
	}
	#merit .box01{
		margin-bottom: 13.3333vw;
		height: 31.7949vw;
		overflow: hidden;
		position: relative;
		transition: height 0.2s;
	}
	#merit .box01.active{
		/*height: 96.1538vw;*/
		height: auto;
		overflow: visible;
	}
	#merit .box01:after{
		content: "";
		position: absolute;
		width: 100%;
		height: 11.5385vw;
		background: linear-gradient(180deg,rgba(246, 245, 241, 0) 0%, rgba(246, 245, 241, 1) 95%);
		bottom: 0;
		left: 0;
	}
	#merit .box01 .txt{
		font-size: 4.6154vw;
		line-height: 1.6;
	}
	#merit .box01 .switch{
		max-width: 35.8974vw;
		width: 100%;
		text-align: center;
		font-size: 4.1026vw;
		line-height: 1.6;
		padding: 1.0256vw;
		border-radius: 4.1026vw;
		background: #B3A48B;
		color: #FFF;
		font-weight: 500;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 10;
		transform: translateX(-50%);
		cursor: pointer;
	}
	#merit .box01 .switch:after{
		content: "";
		background-image: url(../images/ico_arrow01.svg);
		background-size: contain;
		background-repeat: no-repeat;
		aspect-ratio: 10 / 10;
		width: 2.3077vw;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 2.0513vw;
		margin-top: 0.5128vw;
	}
	#merit .box01.active:after,
	#merit .box01.active .switch{
		display: none;
	}
	#merit .box02{
		display: block;
		margin-bottom: 8.4615vw;
	}
	#merit .box02 .tit03{
		margin-bottom: 6.1538vw;
	}
	#merit .box02 .left{
		max-width: 100%;
	}
	#merit .box02 .left .wrap{
		margin-bottom: 8.2051vw;
		height: 31.7949vw;
		overflow: hidden;
		position: relative;
		transition: height 0.2s;
	}
	#merit .box02 .left .wrap.active{
		/*height: 51.7949vw;*/
		height: auto;
		overflow: visible;
	}
	#merit .box02 .left .wrap:after{
		content: "";
		position: absolute;
		width: 100%;
		height: 11.5385vw;
		background: linear-gradient(180deg,rgba(246, 245, 241, 0) 0%, rgba(246, 245, 241, 1) 95%);
		bottom: 0;
		left: 0;
	}
	#merit .box02 .left .wrap .txt{
		font-size: 4.6154vw;
		line-height: 1.6;
	}
	#merit .box02 .left .wrap .switch{
		max-width: 35.8974vw;
		width: 100%;
		text-align: center;
		font-size: 4.1026vw;
		line-height: 1.6;
		padding: 1.0256vw;
		border-radius: 4.1026vw;
		background: #B3A48B;
		color: #FFF;
		font-weight: 500;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 10;
		transform: translateX(-50%);
		cursor: pointer;
	}
	#merit .box02 .left .wrap .switch:after{
		content: "";
		background-image: url(../images/ico_arrow01.svg);
		background-size: contain;
		background-repeat: no-repeat;
		aspect-ratio: 10 / 10;
		width: 2.3077vw;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 2.0513vw;
		margin-top: 0.5128vw;
	}
	#merit .box02.active .left .wrap:after,
	#merit .box02.active .left .wrap .switch{
		display: none;
	}
	#merit .box02 .left .txt{
		margin-bottom: 0;
	}
	#merit .box02 .left .image{
		display: none;
	}
	#merit .box02 .right{
		max-width: 100%;
		margin-bottom: 4.1026vw;
	}
	#merit .box02 .right_sp{
		display: block;
		margin-left: -5.1282vw;
		margin-bottom: 2.5641vw;
	}
	#merit .box02 .notice{
		font-size: 3.0769vw;
		margin-top: 0;
		text-align: left;
	}
	#merit .box03{
		max-width: 100%;
		margin: 0 auto 12.3077vw auto;
	}
	#merit .box03 img{
		width: 100%;
	}

	/* Design
	-----------------------------------*/
	#design{
		padding: 16.9231vw 5.1282vw 17.4359vw 5.1282vw;
	}
	#design:before{
		min-width: auto;
		max-width: 100%;
		height: 138.4615vw;
	}
	#design .tit01 span{
		margin-bottom: 5.1282vw;
	}
	#design .box{
		display: block;
		margin-bottom: 10vw;
	}
	#design .box .left{
		max-width: 100%;
		margin-right: 0;
		margin-top: 7.1795vw;
	}
	#design .box .left .tit03{
		margin-bottom: 9.4872vw;
	}
	#design .box .left .right_sp{
		display: block;
		margin-bottom: 5.8974vw;
	}
	#design .box .left .right_sp h5{
		text-align: right;
		margin-bottom: 4.1026vw;
	}
	#design .box .left .right_sp h5 img{
		width: 66.6667vw;
	}
	#design .box .left .right_sp .image{
		margin-right: -5.1282vw;
	}
	#design .box .left .right_sp .image img{
		width: 100%;
	}
	#design .box .left h4{
		font-size: 5.1282vw;
		margin-bottom: 2.5641vw;
	}
	#design .box .left .txt{
		font-size: 4.6154vw;
		line-height: 1.6;
	}
	#design .box .right{
		display: none;
	}
	#design .box .right .image{
		min-width: auto;
	}

	/* Manufacturing
	-----------------------------------*/
	#manufacturing{
		padding: 15.8974vw 5.1282vw 16.4103vw 5.1282vw;
	}
	#manufacturing .tit01{
		margin-bottom: 8.4615vw;
	}
	#manufacturing .tit01 span{
		line-height: 1.2;
	}
	#manufacturing .tit02{
		margin-bottom: 0.7692vw;
	}
	#manufacturing .tit03{
		font-size: 8.2051vw;
		margin-bottom: 5.641vw;
	}
	#manufacturing .txt{
		font-size: 4.6154vw;
		margin-bottom: 8.2051vw;
	}
	#manufacturing .box{
		padding: 9.4872vw 5.7143% 8.4615vw 5.7143%;
		margin-bottom: 12.3077vw;
	}
	#manufacturing .box h5{
		font-size: 5.641vw;
		line-height: 1.6;
		margin-bottom: 6.9231vw;
	}
	#manufacturing .box .images img{
		width: 100%;
	}
	#manufacturing .box .images p:first-child{
		margin-bottom: 8.2051vw;
	}
	#manufacturing .box .images p:nth-child(2){
	/*max-width: 16.0214vw;*/
		max-width: 56.4103vw;
		padding: 0;
		margin: 0 auto;
		margin-bottom: 8.2051vw;
	}
	#manufacturing .box .images ul{
		max-width: 100%;
	}
	#manufacturing .box .images ul li{
		margin-bottom: 3.3333vw;
	}

	/* Guests' Voice
	-----------------------------------*/
	#guests{
		padding: 16.1538vw 5.1282vw 20vw 5.1282vw;
	}
	#guests .tit01{
		margin-bottom: 12.3077vw;
	}
	#guests .tit01 span{
		line-height: 1.2;
	}
	#guests .tit03{
		margin-bottom: 12.0513vw;
	}
	#guests .bloc .box{
		margin-bottom: 8.2051vw;
		display: block;
	}
	#guests .bloc .box ul{
		max-width: 100%;
		margin-bottom: 8.2051vw;
	}
	#guests .bloc .box ul li{
		font-size: 4.6154vw;
		padding-top: 1.0256vw;
		padding-bottom: 1.7949vw;
		margin-bottom: 6.6667vw;
	}
	#guests .bloc .box:nth-child(odd) ul li{
		padding-right: 3.5897vw;
	}
	#guests .bloc .box:nth-child(even) ul li{
		padding-left: 3.5897vw;
	}
	#guests .bloc .box .image img{
		max-width: 100%;
	}
	#guests .bloc .box:nth-child(odd) .image{
		padding-left: 0;
	}
	#guests .bloc .box:nth-child(even) .image{
		padding-right: 0;
	}
	#guests .bloc .box ul li:after{
		bottom: -11px;
	}
	#guests .bloc .box:nth-child(odd) ul li:after{
		right: 44px;
		transform: rotate(90deg);
	}
	#guests .bloc .box:nth-child(even) ul li:after{
		left: 44px;
		transform: rotate(90deg);
	}
	#guests .bloc .box .image{
		max-width: 100%;
	}
	#guests .bloc .box .image img{
		width: 100%;
	}

	/* Owners' Voice
	-----------------------------------*/
	#owners{
		padding: 17.6923vw 0 20.5128vw 0;
	}
	#owners .inner{
		padding: 0 5.1282vw;
	}
	#owners .tit01{
		margin-bottom: 13.8462vw;
	}
	#owners .tit01 span{
		line-height: 1;
	}
	#owners .tit03{
		margin-bottom: 13.5897vw;
	}
	#owners .bloc{
		margin-bottom: 16.4103vw;
	}
	#owners .bloc .box{
		padding-bottom: 6.1538vw;
		margin-bottom: 8.2051vw;
	}
	#owners .bloc .box .wrap .left{
		display: none;
	}
	#owners .bloc .box .wrap .right{
		max-width: 100%;
	}
	#owners .bloc .box .wrap .right .tits{
		margin-bottom: 6.6667vw;
	}
	#owners .bloc .box .wrap .right .tits .tit{
		max-width: 100%;
		margin-right: 0;
	}
	#owners .bloc .box .wrap .right .tits .tit h4{
		padding: 2.8205vw 2.5641vw 2.3077vw 2.5641vw;
		margin-bottom: 3.3333vw;
		font-size: 4.1026vw;
		line-height: 1.4;
	}
	#owners .bloc .box .wrap .right .tits .tit h5{
		font-size: 6.1538vw;
		line-height: 1.6;
		margin-bottom: 5.641vw;
	}
	#owners .bloc .box .wrap .right .tits .image_sp{
		display: block;
		width: 100%;
		max-width: 67.6923vw;
		margin: 0 auto;
	}
	#owners .bloc .box .wrap .right .tits .image_sp img{
		width: 100%;
	}
	#owners .bloc .box .wrap .right .txt{
		font-size: 4.6154vw;
		line-height: 1.6;
	}
	#owners .campaign_box{
		margin-bottom: 16.4103vw;
	}

	/* Company
	-----------------------------------*/
	#company{
		padding: 14.1026vw 0 20.5128vw 0;
	}
	#company .box{
		max-width: 100%;
		margin: 0 auto 19.7436vw auto;
		display: block;
	}
	#company .box h2{
		font-size: 5.1282vw;
		line-height: 1.6;
		margin-top: 0;
		padding: 0 5.1282vw;
		margin-bottom: 4.1026vw;
	}
	#company .box .image{
		max-width: 100%;
	}
	#company .box .image img{
		width: 100%;
	}
	#company .box .image .notice{
		font-size: 3.0769vw;
		margin-top: 2.0513vw;
		padding: 0 5.1282vw;
	}
	#company .inner{
		padding: 0 5.1282vw;
	}
	#company h3{
		margin-bottom: 10.2564vw;
		line-height: 5.1282vw;
		font-size: 6.1538vw;
		padding-left: 2.0513vw;
	}
	#company h4{
		margin-bottom: 4.6154vw;
		font-size: 5.1282vw;
		line-height: 1.6;
	}
	#company table th,
	#company table td{
		padding: 4.6154vw 0 3.8462vw 0;
	}
	#company table th{
		width: 16.4103vw;
		font-size: 4.1026vw;
	}
	#company table td{
		font-size: 4.1026vw;
		padding-left: 6.1538vw;
	}
	#company table td .ltsp{
		letter-spacing: -0.04em;
	}

	/* Contact
	-----------------------------------*/
	#contact{
		padding-bottom: 12.3077vw;
	}
	#contact h2{
		font-size: 7.1795vw;
		line-height: 1.4;
		padding: 2.5641vw 2.5641vw 3.0769vw 2.5641vw;
		margin-bottom: 5.1282vw;
	}
	#contact .inner{
		padding: 0 5.1282vw;
	}
	#contact .bloc{
		padding: 8.4615vw 5.7143% 1.7949vw 5.7143%;
		border-radius: 1.0256vw;
		/*margin-bottom: 16.9231vw;*/
		margin-bottom: 6.1538vw;
	}
	#contact .bloc .notice01{
		font-size: 3.3333vw;
		line-height: 1.6;
		margin-bottom: 2.3077vw;
	}
	#contact .bloc .box{
		margin-bottom: 6.6667vw;
	}
	#contact .bloc .box.df{
		display: block;
	}
	#contact .bloc .box.df .left{
		max-width: 100%;
	}
	#contact .bloc .box.df .image{
		max-width: 48.2051vw;
		margin: 0 auto;
		padding-bottom: 2.5641vw;
	}
	#contact form#mailformpro{
		padding: 0;
	}
	#contact .bloc .box h4{
		font-size: 4.1026vw;
		line-height: 1.6;
		margin-bottom: 1.0256vw;
	}
	#contact .bloc .box h4 .mus{
		font-size: 2.5641vw;
	}
	#contact .bloc .box h4 .ltsp{
		letter-spacing: -0.08em;
	}
	#contact .bloc .box h4 .fs_sm{
		font-size: 3.5897vw;
		margin-top: 0;
	}
	#contact .bloc .box .area #other_job{
		margin-top: 2.5641vw;
	}
	#contact .bloc .box .area ul{
		margin-top: 1.2821vw;
	}
	#contact .bloc .box .area .list li:nth-child(4){
		margin-right: 0;
	}
	#contact .bloc .box .area ul li,
	#contact .bloc .box .area ol li{
		/*margin-right: 4.1026vw;*/
		margin-right: 3.0769vw;
		font-size: 4.1026vw;
	}
	#contact .bloc .box .area .list li:last-child{
		margin-top: 0;
	}
	#contact .bloc .box .area input[type="text"],
	#contact .bloc .box .area input[type="email"],
	#contact .bloc .box .area input[type="tel"]{
		font-size: 4.1026vw;
		padding: 2.0513vw 4.1026vw;
	}
	#contact .bloc .box .area label{
		padding: 0 0 0 7.1795vw;
		line-height: 5.1282vw;
		margin: 0;
	}
	#contact .bloc .box .area label:after{
		margin-top: 0;
		transform: translateY(-50%);
		aspect-ratio: 18 / 18;
		width: 4.6154vw;
		height: 4.6154vw;
		border-radius: 50%;
	}
	#contact .bloc .box .area label:before{
		margin-top: 0;
		transform: translateY(-50%);
		width: 2.5641vw;
		height: 2.5641vw;
		left: 1.2vw;
		border-radius: 50%;
	}
	#contact .bloc .box .area textarea{
		height: 51.2821vw;
		font-size: 4.1026vw;
		padding: 2.0513vw 4.1026vw;
	}
	#contact .bloc .box .area input::placeholder{
		font-weight: 400;
	}
	#contact form#mailformpro .privacy{
		font-size: 4.1026vw;
		margin-bottom: 11.5385vw;
	}
	#contact form#mailformpro .privacy label{
		padding: 0 0 0 7.6923vw;
	}
	#contact form#mailformpro .privacy label:after{
		margin-top: 0;
		transform: translateY(-50%);
		aspect-ratio: 18 / 18;
		width: 4.6154vw;
		height: 4.6154vw;
	}
	#contact form#mailformpro .privacy label:before{
		margin-top: 0;
		transform: translateY(-50%);
		width: 2.5641vw;
		height: 2.5641vw;
		left: 1.2vw;
		border-radius: 50%;
	}
	#contact .privacy_err .mfp_err{
		margin-bottom: 7.6923vw
	}
	#contact .notice02{
		font-size: 3.3333vw;
		font-weight: bold;
		margin-bottom: 5.641vw;
		max-width: 100%;
	}
	#contact .button{
		max-width: 89.7436vw;
	}
	#contact .button button{
		border-radius: 10.2564vw;
		padding: 2.3077vw 5.1282vw 2.8205vw 5.1282vw;
		text-align: center;
		font-size: 5.1282vw;
	}
	#contact .button .ico{
		right: 2.8205vw;
		margin-top: 0;
		transform: translateY(-50%);
		width: 100%;
		max-width: 3.0769vw;
		aspect-ratio: 12 / 10;
	}
	#contact .button .ico svg{
		width: 100%;
	}

	/* Design
	-----------------------------------*/
	#thanks{
		padding: 16.9231vw 5.1282vw 17.4359vw 5.1282vw;
	}
	#thanks .tit03{
		margin-bottom: 6.1538vw;
	}
	#thanks .txt{
		font-size: 4.6154vw;
		line-height: 1.6;
	}

	/* Footer
	-----------------------------------*/
	footer{
		padding: 10.2564vw 0 8.7179vw 0;
	}
	footer ul{
		margin-bottom: 4.359vw;
	}
	footer ul li{
		font-size: 3.0769vw;
		line-height: 1rem;
	}
	footer .copyright{
		font-size: 2.5641vw;
	}

}