@charset "utf-8";

/* HOME
-------------------------------------------------------------------*/
.btn a{
	display:block;
}

.img{
	line-height:0;
}

.mv{
	padding:10px;
	text-align:center;
	background:#455B66;
}

.mv .box{
	border-radius:30px;
	background:#fff;
	padding:20px 30px 75px 30px;
}

.mv .box h1{
	margin:0 -15px;
}

.mv .box .btn-box{
	padding:20px 0 30px 0;
}

.btn-box .min-txt{
	text-align:center;
	padding:0 0 10px 0;
}

.btn-box .min-txt span{
	font-size: clamp(12px, 3vw, 16px);
	display:inline-block;
	position:relative;
	color:#FF697A;
}

.btn-box .min-txt span:after {
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background: #FF697A;
  position: absolute;
  left: -10px;
  top: 5px;
  transform: rotate(-28deg);
}

.btn-box .min-txt span:before {
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background: #FF697A;
  position: absolute;
  right: -10px;
  top: 5px;
  transform: rotate(28deg);
}

.btn-box .m-btn{
	display:flex;
	justify-content:space-between;
}

.btn-box .m-btn li{
	width:49%;
}

.m-btn a{
	border-radius: 8px;
	background: linear-gradient(#68aff8 0%, #429dfa 100%);
	box-shadow: 0px 3px 0px #2368af;
	padding:10px 0 10px 20px;
	color:#fff;
	font-size:18px;
	font-weight:700;
	display:block;
	text-align:left;
	position:relative;
}

.btn-box .m-btn a{
	font-size: clamp(16px, 3vw, 18px);
}

.m-btn li:nth-child(2) a{
	background: linear-gradient(#ff697a 0%, #f74357 100%);
	box-shadow: 0px 3px 0px #b1424f;
}

.m-btn a:before,
.m-btn a:after{
	content:"";
	width:48px;
	height:48px;
	position:absolute;
	right:4.3%;
	background: url(../img/common/btn-ico01.png) no-repeat;
	background-size:contain;
	top:50%;
	transform: translateY(-50%);
	transition: 0.6s;
}

.m-btn li:nth-child(2) a:before,
.m-btn li:nth-child(2) a:after{
	background: url(../img/common/btn-ico02.png) no-repeat;
	background-size:contain;
}

.m-btn a:after{
	background: url(../img/common/btn-ico01-on.png) no-repeat;
	background-size:contain;
	opacity:0;
}

.m-btn li:nth-child(2) a:after{
	background: url(../img/common/btn-ico02-on.png) no-repeat;
	background-size:contain;
}

.m-btn a:hover:after{
	opacity:1;
}

.mv .btn a{
	display:block;
	border-radius:50px;
	border:2px dotted rgba(170,170,170,0.44);
	width:330px;
	padding:10px;
	margin:0 auto;
	position:relative;
	background:url(../img/top/mv-arrow.png) no-repeat 95% center / 23px;
}

.mv .btn a:hover{
	background:url(../img/top/mv-arrow.png) no-repeat 95% center / 23px, #455B66;
	color:#fff;
}

.mv .btn a span{
	padding:0 20px 0 0;
}

.mv .btn a:after{
	content:"";
	width:60px;
	height:53px;
	position:absolute;
	left:-30px;
	top: 50%;
	transform: translateY(-50%);
	background:url(../img/top/mv-ico.png) no-repeat;
	background-size:contain;
}

.change{
	padding:0 40px 90px 40px;
	background:#455B66;
	color:#fff;
}

.change .box{
	position:relative;
	padding:20% 0 0 0;
}

.change .box h2{
	font-size: clamp(24px, 5vw, 32px);
	font-weight:700;
	line-height:1.4;
}

.change .box .ico{
	position:absolute;
	width:50%;
	top:0;
	right:0;
}

.change .box .txt{
	font-size:14px;
	color:#BABABA;
	padding:60px 0 0 0;
}

.tab{
	display:flex;
	justify-content:space-between;
	margin:0 0 20px 0;
}

.tab li{
	width:49%;
	position:relative;
	text-align:center;
	margin:40px 0 0 0;
}

.tab li div{
	background: linear-gradient(#576e78 0%, #455b66 100%);
	border-radius:20px 20px 0 0;
	position:relative;
	text-align:center;
	font-size: clamp(14px, 3vw, 17px);
	cursor:pointer;
	padding: 10px 10px 20px 10px;
}

.tab li:nth-child(2) div:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    border-top: 2px solid #F0FC01;
    border-left: 2px solid #F0FC01;
    border-right: 2px solid #F0FC01;
    border-radius: 20px 20px 0 0;
    -webkit-mask-image: linear-gradient(to bottom, black 20px, transparent 25px);
    mask-image: linear-gradient(to bottom, black 20px, transparent 25px);
	opacity:0;
	transition: 0.6s;
}

.tab li:nth-child(2) div:after {
    content: "";
    position: absolute;
    top: 20px;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    border-left: 2px solid #F0FC01;
    border-right: 2px solid #F0FC01;
    -webkit-mask-image: linear-gradient(to bottom, black 0%, transparent 60%);
    mask-image: linear-gradient(to bottom, black 0%, transparent 60%);
	opacity:0;
	transition: 0.6s;
}

.tab li:nth-child(2).select div:before,
.tab li:nth-child(2).select div:after{
	opacity:1;
}

.tab li span{
	display:block;
	font-size: 12px;
	color:rgba(255,255,255,0.34);
}

.tab li:after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	margin:0 auto;
	bottom:5px;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 6px solid #F0FC01;
	opacity:0;
	transition: 0.6s;
}

.tab li:nth-child(1):after{
	border-top: 6px solid #FF697A;
}

.tab li.select:after,
.tab li:nth-child(2).select:before{
	opacity:1;
}

.tab li:nth-child(2):before{
	content:"ご相談後";
	display:inline-block;
	font-size:13px;
	padding:3px 0;
	background: linear-gradient(#ff697a 0%, #f74357 100%);
	border-radius:10px 10px 0 0;
	opacity:0;
	transition: 0.6s;
	position:absolute;
	left:0;
	right:0;
	width:70px;
	margin:0 auto;
	top:-27px;
}

.tab-box > li {
    display: none;
}

.tab-box > li:nth-child(2) {
    display: block;
}

.m-txt{
	font-size: clamp(16px, 3.5vw, 20px);
}

.tab-box > li .m-txt{
	padding:20px 0 0 0;
}

.shift{
	padding:80px 30px;
}

.shift .box{
	position:relative;
}

.shift .box h2{
	position:relative;
	font-size: clamp(24px, 5vw, 32px);
	font-weight:700;
	z-index:2;
}

.shift .box .ico{
	position:absolute;
	right:0;
	top:-140px;
	width:205px;
}

.shift .box ul.m-txt{
	padding:30px 0;
}

.shift .box ul.m-txt li{
	padding:5px 0 5px 55px;
	background:url(../img/top/shift-solid.png) no-repeat left center / 44px;
	margin:10px 0 0 0;
	font-weight:700;
}

.shift .box h3{
	font-size: clamp(20px, 5vw, 28px);
	font-weight:700;
	padding:0 0 30px 0;
}

.why{
	padding:0 20px;
}

.why .box{
	position:relative;
	color:#fff;
}

.why .box .bg{
	line-height:0;
	margin:0 -20px;
}

.why .box h2{
	position:relative;
	padding:0 0 12% 0;
}

.m-tit{
	font-size: clamp(24px, 5vw, 32px);
	font-weight:700;
}

.why .box .m-tit{
	font-size: clamp(16px, 5vw, 32px);
}

.why .box .box-in{
	padding:22% 0 20% 10%;
	position:absolute;
	top:0;
}

.why .box .box-in .m-txt{
	line-height:2;
	font-size: clamp(10px, 3.5vw, 20px);
}

.why .box .box-in h3{
	font-size: clamp(14px, 5vw, 28px);
	font-weight:700;
	padding:9% 0;
	line-height:1.8;
}

.why .box .box-in h3 span{
	color:#F0FC01;
}

.convey{
	padding:0 40px;
}

.convey .box{
	position:relative;
	padding:20% 0 0 0;
}

.convey .box .m-tit{
	font-size: clamp(16px, 5vw, 32px);
}

.convey .box .bg{
	position:absolute;
	top:0;
	margin:0 -40px;
	z-index:-1;
}

.convey .box .txt-box{
	padding:0 0 35% 0;
}

.convey .box .txt-box dl{
	padding:30px 0 0 0;
}

.convey .box .txt-box dl dt{
	padding:0 0 0 50px;
	background:url(../img/top/convey-num1.png) no-repeat left center / 32px;
	font-size: clamp(14px, 5vw, 28px);
	font-weight:700;
}
.convey .box .txt-box dl:nth-child(2) dt{
	background:url(../img/top/convey-num2.png) no-repeat left center / 32px;
}
.convey .box .txt-box dl:nth-child(3) dt{
	background:url(../img/top/convey-num3.png) no-repeat left center / 32px;
}
.convey .box .txt-box dl:nth-child(4) dt{
	background:url(../img/top/convey-num4.png) no-repeat left center / 32px;
}

.convey .box .txt-box dl dd{
	padding:10px 0 0 50px;
    font-size: clamp(12px, 3.5vw, 20px);
}

.convey2{
	padding:0 40px 40px 40px;
	text-align:center;
}

.convey2 .box ul{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	margin:30% 0 0 0;
}

.convey2 .box ul li{
	width:48%;
	margin:0 0 10px 0;
}

.improvement{
	padding:0 10px;
	color:#fff;
}

.improvement h2{
	width: 220px;
	border-radius: 8px 8px 0px 0px;
	background: #455b66;
	margin:0 auto;
	text-align:center;
	font-size:16px;
	padding:10px 0;
}

.improvement h2 span{
	width:33px;
	display:block;
	margin:0 auto;
}

.improvement .box{
	border-radius: 64px;
	padding:20px 30px 60px 30px;
	background:#455B66;
}

.improvement .box h3{
	text-align:center;
	padding:110px 0 30px 0;
	background:url(../img/top/improvement-ico02.png) no-repeat top center / 138px;
	font-weight:700;
	line-height:1.4;
}

.improvement .box h3 span{
	display:block;
}

.improvement .box h3 span em{
	font-size:14px;
	display:inline-block;
	position:relative;
}

.improvement .box h3 span em:after {
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background: #F6FF40;
  position: absolute;
  left: -20px;
  top: 5px;
  transform: rotate(-28deg);
}

.improvement .box h3 span em:before {
  display: block;
  content: "";
  width: 1px;
  height: 16px;
  background: #F6FF40;
  position: absolute;
  right: -20px;
  top: 5px;
  transform: rotate(28deg);
}

.improvement .box .box-in{
	padding:70px 0 0 0;
}

.improvement .box .box-in h4{
	width:186px;
}

.more__content{
	max-height: 560px;
	overflow: hidden;
	transition: max-height 1s;
	position: relative;
	height: auto;
}

.more__content:after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 30%;
	transition: 1s;
	background: linear-gradient(rgba(69, 91, 102, 0) 0%, #455b66 100%);
}

.more__content.open:after{
	z-index: -1;
    opacity: 0;
}

.more__btn{
	display:block;
	width: 146px;
	box-sizing:border-box;
	padding:15px;
	border-radius: 30px;
	position:absolute;
	left:0;
	right:0;
	margin:0 auto;
	bottom:50px;
	font-size:14px;
	background:rgba(255,255,255,0.34);
	text-align:center;
	outline:none !important;
	font-family: "HigureGothic", sans-serif;
	font-weight: 500;
	position:relative;
	transition: all 0.3s;
	cursor:pointer;
	border:none;
	color:#fff;
	z-index:2;
}

.more__btn.open{
	opacity:0;
	z-index:-1;
}

.improvement .box .box-in .txt-box .cate{
	font-size:13px;
	color:#AAAAAA;
}

.improvement .box .box-in .txt-box h5{
	font-size:18px;
	padding:20px 0;
}

.improvement .box .box-in .txt-box .url dl{
	display:flex;
	font-size:12px;
	margin:0 0 7px 0;
}

.improvement .box .box-in .txt-box .url dl dt{
	width:100px;
	color:#AAAAAA;
}

.improvement .box .box-in .txt-box .url dl dd a{
	color:#AAAAAA;
	text-decoration:underline;
}

.improvement .box .box-in .txt-box ul.cate2{
	display:flex;
	flex-wrap:wrap;
	padding:20px 0;
}

.improvement .box .box-in .txt-box ul.cate2 li{
	display:inline-block;
	padding:7px 10px;
	border-radius: 2px;
	background:rgba(248,248,248,0.17);
	font-size:12px;
	margin:0 10px 10px 0;
}

.improvement .box .box-in h6{
	padding:5px 0 5px 33px;
	background:url(../img/top/improvement-ico01.png) no-repeat left center / 24px;
	font-size:18px;
}

.improvement .box .box-in .huki{
	border-radius: 2px;
	background: #fff;
	position:relative;
	padding:20px;
	margin:10px 0 0 0;
	color:#455B66;
}

.improvement .box .box-in .huki:after{
	width: 56px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='24' viewBox='0 0 56 24'%3E%3Cpath d='M28 24L0 0H56L28 24Z' fill='%23fff'/%3E%3C/svg%3E");
	display: inline-block;
	vertical-align: middle;
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:-24px;
	margin:0 auto;
}

.improvement .box .box-in .huki:before{
	content:"";
	width:112px;
	height:78px;
	background:url(../img/top/improvement-ico03.png) no-repeat;
	background-size:contain;
	position:absolute;
	right:20px;
	top:-60px;
}

.improvement .box .box-in .huki li{
	position:relative;
	padding:0 0 0 18px;
}

.improvement .box .box-in .huki li:after{
	content:"■";
	color:#F74357;
	position:absolute;
	left:0;
	top:0;
}

.improvement .box .box-in .f-txt{
	text-align:center;
	font-weight:700;
	color:#F6FF40;
	padding:35px 0 0 0;
}

.flow{
	padding:80px 40px 150px 40px;
}

.flow .box ul{
	counter-reset: flow-number;
}

.flow .box ul li{
	margin:30px 0 0 0;
	position:relative;
	padding:10px 0 10px 40px;
	font-weight:700;
	counter-increment: flow-number;
}

.flow .box ul li:after{
	content: counter(flow-number);
	width:32px;
	height:32px;
	line-height:32px;
	text-align:center;
	border-radius:50%;
	background:#A1C181;
	color:#F0FC01;
	position:absolute;
	left:0;
    top: 50%;
    transform: translateY(-50%);
}


.flow .box ul li:not(:last-child):before{
	content:"";
	position:absolute;
	left:10px;
	bottom:-17px;
	width: 0;
	height: 0;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 6px solid #FF6666;
}

.discomfort{
	background: #455B66;
	padding:0 40px;
}

.discomfort .box{
	position:relative;
}

.discomfort .box .huki{
	background: #f0fc01;
	filter: drop-shadow(0px 3px 16px rgba(0, 0, 0, 0.16));
	padding:40px 20px 40px 20px;;
	position:relative;
	top:-90px;
}

.discomfort .box .huki h2{
	padding:0 0 20px 0;
}

.discomfort .box .huki .ico{
	width:245px;
	position:absolute;
	right:10px;
	top:-120px;
}

.discomfort .box .huki:after{
	content:"";
	width: 100px;
	height: 90px;
	background-color: #F0FC01;
	clip-path: polygon(0 0, 100% 0, 0 100%);
	display: inline-block;
	position:absolute;
	bottom:-90px;
	right:0;
	left:0;
	margin:0 auto;
}

.discomfort .btn-box{
	position:relative;
	bottom:-30px;
}

.discomfort .btn-box .min-txt span{
	color:#fff;
}

.discomfort .btn-box .min-txt span:after {
  background: #fff;
}

.discomfort .btn-box .min-txt span:before {
  background: #fff;
}
@media screen and (max-width: 500px) {
.mv .box{
	border-radius:30px;
	padding:20px 20px 60px 20px;
}

.btn-box .min-txt span:before,
.btn-box .min-txt span:after{
	height:30px;
	top:6px;
}

.mv .box .btn-box{
	padding:20px 0;
}

.btn-box .m-btn {
    display:block;
}

.btn-box .m-btn li {
    width: 100%;
	margin:0 0 10px 0;
}

.m-btn a{
	padding:20px 0 20px 20px;
	font-size:17px;
}

.m-btn a:before,
.m-btn a:after{
	width:30px;
	height:30px;
	right:10px;
}

.mv .btn a{
	width:270px;
	padding:10px;
	background:url(../img/top/mv-arrow.png) no-repeat 95% center / 20px;
}

.mv .btn a span{
	padding:0;
}

.mv .btn a:after{
	width:50px;
	height:42px;
	left:-20px;
}

.change{
	padding:0 20px 60px 20px;
}

.change .box{
	padding:0;
}

.change .box h2{
	font-size: 24px;
	text-align:center;
}

.change .box .ico{
	position:static;
	text-align:center;
	width:120px;
	margin:0 auto 20px;
}

.change .box .txt{
	padding:10px 0 20px 0;
	text-align:center;
}

.tab{
	display:block;
}

.tab li{
	width:220px;
	margin:0 auto;
}

.tab li:nth-child(2){
	margin:40px auto 0;
}

.tab li div{
	border-radius:20px;
	font-size: 14px;
	padding: 10px 10px 20px 10px;
}

.tab li:nth-child(2):before{
	font-size:12px;
	top:-25px;
}

.shift{
	padding:60px 20px;
}

.shift .box .ico{
	top:-85px;
	width:130px;
}

.shift .box ul.m-txt{
	padding:20px 0;
}

.shift .box ul.m-txt li{
	padding:5px 0 5px 45px;
	background:url(../img/top/shift-solid.png) no-repeat left center / 30px;
	margin:10px 0 0 0;
}

.shift .box h3{
	padding:0 0 20px 0;
}

.convey{
	padding:0 20px;
}

.convey .box .bg{
	margin:0 -20px;
}

.convey .box .txt-box{
	padding:0 0 40% 0;
}

.convey .box .txt-box dl{
	padding:20px 0 0 0;
}

.convey .box .txt-box dl dt{
	padding:0 0 0 40px;
	background:url(../img/top/convey-num1.png) no-repeat left center / 25px;
}
.convey .box .txt-box dl:nth-child(2) dt{
	background:url(../img/top/convey-num2.png) no-repeat left center / 25px;
}
.convey .box .txt-box dl:nth-child(3) dt{
	background:url(../img/top/convey-num3.png) no-repeat left center / 25px;
}
.convey .box .txt-box dl:nth-child(4) dt{
	background:url(../img/top/convey-num4.png) no-repeat left center / 25px;
}

.convey .box .txt-box dl dd{
	padding:5px 0 0 40px;
}

.convey2{
	padding:0 20px 40px 20px;
}

.convey2 .m-tit{
    font-size: clamp(16px, 5vw, 32px);
}

.convey2 .box ul {
    margin: 20% 0 0 0;
}

.convey2 .box ul li{
	width:49%;
	margin:10px 0 0 0;
}

.improvement h2{
	width: 180px;
	font-size:14px;
}

.improvement h2 span{
	width:28px;
}

.improvement .box{
	border-radius: 30px;
	padding:30px 20px 60px 20px;
}

.improvement .box h3{
	padding:90px 0 20px 0;
	background:url(../img/top/improvement-ico02.png) no-repeat top center / 100px;
}

.improvement .box h3 span em{
	font-size:13px;
}

.improvement .box h3 span em:after {
	height: 14px;
	left: -15px;
	top: 3px;
}

.improvement .box h3 span em:before {
	height: 14px;
	right: -15px;
	top: 3px;
}

.improvement .box .box-in{
	padding:40px 0 0 0;
	text-align:center;
}

.improvement .box .box-in h4{
	width:150px;
	margin:0 auto 20px;
}

.more__content{
	max-height: 540px;
}

.improvement .box .box-in .txt-box{
	text-align:left;
}

.improvement .box .box-in .txt-box h5{
	font-size:16px;
	padding:10px 0;
}

.improvement .box .box-in .txt-box ul.cate2 li{
	padding:5px 10px;
	margin:0 5px 5px 0;
}

.improvement .box .box-in h6{
	display:inline-block;
	padding:5px 0 5px 27px;
	background:url(../img/top/improvement-ico01.png) no-repeat left center / 20px;
	font-size:16px;
}

.improvement .box .box-in .huki{
	padding:15px;
}

.improvement .box .box-in .huki:after{
	width: 50px;
	height: 20px;
	bottom:-20px;
}

.improvement .box .box-in .huki:before{
	width:80px;
	height:50px;
	right:0;
	top:-35px;
}

.improvement .box .box-in .huki li{
	text-align:left;
}


.improvement .box .box-in .f-txt{
	padding:30px 0 0 0;
}

.flow{
	padding:60px 20px 150px 20px;
}


.flow .box ul li{
	margin:20px 0 0 0;
	padding:10px 0 10px 40px;
}

.flow .box ul li:after{
	width:30px;
	height:30px;
	line-height:30px;
}


.flow .box ul li:not(:last-child):before{
	left:10px;
	bottom:-12px;
}


.discomfort{
	padding:0 20px;
}

.discomfort .box .huki{
	padding:30px;
	top:-90px;
}

.discomfort .box .huki h2{
	padding:0 0 20px 0;
}

.discomfort .box .huki .ico{
	width: 170px;
	top: -80px;
}

.discomfort .box .huki:after{
	width: 80px;
	height: 70px;
	bottom:-70px;
}
}

/* CONTACT
-------------------------------------------------------------------*/
#contact{
	padding:90px 30px 40px 30px;
	text-align:center;
}

#contact .box{
	border: 5px solid #FF697A;
	border-radius: 64px;
	padding:45px 55px;
	position:relative;
}

#contact .box h2{
	color:#F74357;
	padding:0 0 20px 0;
}

.form{
	text-align:left;
	padding:20px 0 0 0;
}

.form dl{
	padding:0 0 15px 0;
}

.form dl dt{
	font-size: 16px;
	line-height:1.4;
	display:inline-block;
	position:relative;
	margin:0 0 10px 0;
}

.form dl dt:before{
	content:"■";
	color:#A1C181;
	padding:0 5px 0 0;
}

.form dl dt.hissu:after{
	content:"必須";
	color:#F74357;
	font-size:12px;
	border:1px solid #FF697A;
	padding:2px 0;
	width:40px;
	display:block;
	text-align:center;
	border-radius:14px;
	position:absolute;
	right:-50px;
	top: 50%;
	transform: translateY(-50%);
}

.form input, .form textarea {
	width: 100%;
	font-size: 16px;
	line-height: 1.6;
	padding: 15px;
    font-family:"HigureGothic";
	box-sizing:border-box;
	border-radius: 3px;
	background: #f2f2f2;
	box-shadow: inset 0 3px 4px #DDDDDD;
	border:none;
}

.form textarea{
	height:160px;
}

.contact .privacy {
    margin: 20px auto;
	height:160px;
    box-sizing: border-box;
    padding: 10px;
    overflow: auto;
    font-size: 11px;
    border: 1px solid #E3E3E3;
    border-radius: 2px;
	background:#fff;
	max-width:320px;
	color:#64748B;
	text-align:left;
}

.contact .privacy h4{
    line-height: 1.6;
	padding:0 0 5px 0;
}

.contact .privacy p{
	padding:0 0 10px 0;
}

.form .wpcf7-radio {
	display: block;
	padding: 0;
}

.form .wpcf7-radio > * {
	display: inline-block;
	margin: 0;
}

.form .wpcf7-radio input[type=radio] {
	display: none;
}

.form .wpcf7-radio .wpcf7-list-item-label {
	position: relative;
	padding-left: 40px;
	line-height: 1.5;
	cursor: pointer;
	font-size: 18px;
	font-weight:700;
}

.form .wpcf7-list-item > label {
	display: inline-block;
	font-weight: 500;
}

.form .wpcf7-list-item.first > label {
	margin: 0 0 10px 0;
}

.form .wpcf7-radio .wpcf7-list-item-label::before {
	content: "";
	position: absolute;
	width: 30px;
	height: 30px;
	box-shadow: inset 0 3px 4px #DDDDDD;
	top: 50%;
	left: 0;
    transform: translateY(-50%);
	border-radius: 50%;
	background: #f2f2f2;
}

.form .wpcf7-radio .wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
    top: 50%;
	left:7.5px;
    transform: translateY(-50%);
	background: #619B8A;
	border-radius: 50%;
	opacity: 0;
	transition: 0.3s;
}

.form .wpcf7-radio input[type=radio]:checked + .wpcf7-list-item-label::after {
  opacity: 1;
}

.check{
	text-align:center;
	padding:0 0 30px 0;
}

.check .wpcf7-list-item-label {
	position: relative;
	cursor: pointer;
}

.check input[type=checkbox] {
	display: none;
}

.check input[type=checkbox] + span {
	display: inline-block;
	position: relative;
	padding:0 0 0 28px;
	font-size: 14px;
	line-height: 1.4;
	cursor: pointer;
}

.check input[type=checkbox] + span::before {
	content: "";
	position: absolute;
	width: 18px;
	aspect-ratio: 1/1;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
	margin:0 auto;
	background: #fff;
	border-radius:3px;
	border: 1px solid #267482;
}

.check input[type=checkbox] + span::after {
	content: "";
	position: absolute;
	width: 10px;
	aspect-ratio: 1/1;
    top: 50%;
    transform: translateY(-50%);
	left: 4px;
	background: url(../img/common/check-solid.svg) no-repeat center center;
	background-size: contain;
	opacity: 0;
	transition: 0.3s;
}

.check input[type=checkbox]:checked + span::after {
	opacity: 1;
}

.conbtn input[type=submit]{
	line-height: 96px;
	height: 96px;
	width: 100%;
	color: #fff;
	font-size: 27px;
	display: block;
	position: relative;
    font-family:"HigureGothic";
	font-weight:700;
	border: none;
	cursor: pointer;
	margin:0 auto;
	border-radius: 8px;
	background: linear-gradient(#f97316 0%, #ea580c 100%);
	box-shadow: 0px 3px 0px #b1424f;
}

.wpcf7-not-valid-tip {
    font-size: 12px;
    padding: 5px 0 0 0;
    font-weight: 600;
}

.contact .f-box .ico{
	padding:60px 0 5px 0;
	width:34px;
	margin:0 auto;
}

.contact .f-box .f-txt{
	font-size:16px;
}

@media screen and (max-width: 500px) {
#contact{
	padding:60px 20px;
}

#contact .box{
	border: 3px solid #FF697A;
	border-radius: 20px;
	padding:30px 20px 0 20px;
}

#contact .box h2{
	font-size:20px;
	padding:20px 0;
}

.form dl dt{
	font-size: 16px;
}

.form input, .form textarea {
	padding: 10px;
}
	
.check {
	padding: 0 0 20px 0;
}

.conbtn input[type=submit]{
	line-height: 60px;
	height: 60px;
	width: 100%;
	font-size: 18px;
}
}

/* THANKS/404
-------------------------------------------------------------------*/
.thanks_area{
	padding:120px 20px 100px 20px;
	text-align:center;
}

.thanks_area h1{
	font-size: 24px;
	line-height:1.6;
	padding:30px 0;
	border-bottom:1px solid #E8EBEC;
	margin:0 auto;
	font-weight:700;
	color:#FF697A;
}

.thanks_area .txt{
	font-size: 15px;
	padding:30px 0;
	text-align:left;
}

.thanks_area .btn a {
    line-height: 80px;
    height: 80px;
    width: 400px;
    color: #fff;
    font-size: 18px;
    display: block;
    position: relative;
    font-family: "HigureGothic";
    font-weight: 500;
    border: none;
    cursor: pointer;
    margin: 0 auto;
    border-radius: 40px;
    background: linear-gradient(#ff697a 0%, #f74357 100%);
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.thanks_area .btn{
	padding:20px 0 0 0;
}

.thanks_area .m-btn a {
    font-size: 22px;
	padding:30px 0 30px 30px;
}
@media screen and (max-width: 500px) {
.thanks_area{
	padding:80px 20px;
}

.thanks_area h1{
	font-size: 20px;
	padding:30px 0;
}

.thanks_area .txt{
	font-size: 14px;
}

.thanks_area .btn a{
	font-size:16px;
	height:auto;
	line-height:1.6;
	padding:20px;
	width:100%;
}
	
.thanks_area .m-btn a {
    font-size: 16px;
	padding: 20px 0 20px 20px;
}
}