@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,700;1,700&family=Noto+Sans+JP:wght@100..900&display=swap');

* { box-sizing: border-box; }

html,body{ 
	width: 100%;
	-webkit-text-size-adjust: 100%;
} 

body {
	margin: 0;
	padding: 0;
	color: #000;
	font-family: 'Noto Sans JP', Meiryo, sans-serif;
	font-weight: 400;
	font-size: 15px;
	line-height: 1.7;
}
.montserrat { font-family: 'Montserrat', sans-serif; }

.fleft { float: left; }
.fright { float: right; }
.clearfix { min-height: 1px; }
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

a {
	outline: none;
	color: #004c80;
}
a:hover { text-decoration: none; }

img {
	margin: 0;
	padding: 0;
	border: none;
}

p {
	margin: 0 0 1em 0;
	padding: 0;
}
.iblock { display: inline-block; }

@media print,screen and ( max-width: 700px ) {
	.sp_none {
		display: none;
	}
}

#wrap {
	margin: 0;
	padding: 78px 0 0;
	background-color: #efefef;
	overflow: hidden;
}
@media only screen and ( max-width: 700px ) {
	#wrap { padding: 0; }
}


/* --------------- header --------------- */

#header {
	width: 100%;
	height: 78px;
	margin: 0;
	padding: 0 0 0 20px;
	background-color: #fff;
	display: flex;
	justify-content: space-between;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 15;
}
@media only screen and ( max-width: 700px ) {
	#header {
		height: 60px;
		padding: 0 0 0 3%;
	}
}
#header .logo {
	width: 68%;
	max-width: 400px;
	margin: 0;
	padding: 0;
	align-self: center;
	display: block;
}
#header .logo a {
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
}
#header .logo img {
	width: 100%;
	vertical-align: top;
}
@media only screen and ( min-width: 701px ) {
	#header .logo a { transition: opacity .4s; }
	#header .logo a:hover { opacity: 0.7; }
}
#header #menubtn {
	width: 78px;
	height: 78px;
	margin: 0;
	padding: 0;
	cursor: pointer;
	position: relative;
	z-index: 0;
}
#menubtn span {
	width: 26px;
	height: 2px;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	display: inline-block;
	position: absolute;
	left: 17px;
}
#menubtn span:first-child { top: 28px; }
#menubtn span:nth-child(2) { top: 38px; }
#menubtn span:nth-child(3) { top: 48px; }
@media only screen and ( max-width: 700px ) {
	#header #menubtn {
		width: 60px;
		height: 60px;
	}
	#menubtn span:first-child { top: 19px; }
	#menubtn span:nth-child(2) { top: 29px; }
	#menubtn span:nth-child(3) { top: 39px; }
}

#header .bg_gnavi {
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
	background-color: rgba(0,0,0,0.4);
	display: none;
	position: fixed;
	top: 78px;
	left: 0;
}
#gnavi {
	width: 100%;
	max-width: 485px;
	margin: 0;
	padding: 0 0 26px;
	background-color: rgba(242,242,243,0.9);
	display: none;
	position: fixed;
	top: 78px;
	right: 0;
}
@media only screen and ( max-width: 700px ) {
	#header .bg_gnavi { top: 60px; }
	#gnavi { top: 60px; }
}
#gnavi .navi {
	width: 100%;
	margin: 0 0 26px;
	padding: 0;
}
#gnavi .navi a {
	margin: 0;
	padding: 1.4em 1em;
	color: #000;
	text-decoration: none;
	border-bottom: solid 1px #8b8b8b;
	display: block;
	position: relative;
	z-index: 0;
}
@media only screen and ( min-width: 701px ) {
	#gnavi .navi a { transition: background .4s; }
	#gnavi .navi a:hover { background-color: #fff; }
}
#gnavi .navi a::before {
	content: "";
	width: 10px;
	height: 10px;
	margin: 0;
	padding: 0;
	border-top: solid 1px #8b8b8b;
	border-right: solid 1px #8b8b8b;
	transform: rotate(45deg) translateY(-50%);
	position: absolute;
	top: 50%;
	right: 20px;
}
#gnavi a.btn_corp {
	width: 86%;
	height: 3.6em;
	max-width: 200px;
	margin: 0 auto;
	padding: 0;
	color: #fff;
	text-decoration: none;
	background-color: var(--main-color);
	border-radius: 1.8em;
	display: flex;
	align-items: center;
	justify-content: center;
}
@media only screen and ( min-width: 701px ) {
	#gnavi a.btn_corp { transition: opacity .4s; }
	#gnavi a.btn_corp:hover { opacity: 0.7; }
}
#gnavi a.btn_corp .icon {
	width: 18px;
	height: 16px;
	margin: 0 0 0 0.3em;
	display: inline-block;
	position: relative;
	z-index: 0;
}
#gnavi a.btn_corp .icon::before {
	content: "";
	width: 10px;
	height: 8px;
	margin: 0;
	padding: 0;
	border: solid 2px #fff;
	border-radius: 2px;
	position: absolute;
	top: 0;
	right: 0;
}
#gnavi a.btn_corp .icon::after {
	content: "";
	width: 10px;
	height: 9px;
	margin: 0;
	padding: 0;
	border-left: solid 2px #fff;
	border-bottom: solid 2px #fff;
	border-radius: 2px;
	position: absolute;
	left: 0;
	bottom: 0;
}

.col_fixed {
	width: 100%;
	margin: 0;
	padding: 0 15px 15px 0;
	position: fixed;
	right: 0;
	bottom: 0;
	z-index: 10;
}
.col_fixed a.btn_fixed {
	width: 266px;
	height: 66px;
	margin: 0 0 0 auto;
	padding: 0 13px 0 25px;
	color: #e60012;
	font-size: 22px;
	font-weight: 700;
	text-decoration: none;
	background-color: #fff;
	border: solid 2px #e60012;
	border-radius: 33px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.col_fixed a.btn_fixed .arrow {
	width: 42px;
	height: 42px;
	margin: 0;
	padding: 0;
	background-color: #e60012;
	border-radius: 50%;
	display: inline-block;
	position: relative;
}
.col_fixed a.btn_fixed .arrow::before {
	content: "";
	width: 2px;
	height: 20px;
	background-color: #fff;
	border-radius: 1px;
	transform: translate(-50%, -50%);
	position: absolute;
	top: 50%;
	left: 50%;
}
.col_fixed a.btn_fixed .arrow::after {
	content: "";
	width: 10px;
	height: 10px;
	margin: 0;
	paddint: 0;
	border-right: solid 3px #fff;
	border-bottom: solid 3px #fff;
	border-radius: 2px;
	box-sizing: border-box;
	transform: translate(-50%, -50%) rotate(45deg);
	position: absolute;
	top: calc( 50% + 6px );
	left: 50%;
}
@media only screen and ( min-width: 701px ) {
	.col_fixed a.btn_fixed * { transition: opacity .4s; }
	.col_fixed a.btn_fixed:hover * { opacity: 0.6; }
}
@media only screen and ( max-width: 700px ) {
	
	.col_fixed a.btn_fixed {
		width: 210px;
		height: 52px;
		padding: 0 8px 0 17px;
		font-size: 18px;
	}
	.col_fixed a.btn_fixed .arrow {
		width: 33px;
		height: 33px;
	}
	.col_fixed a.btn_fixed .arrow::before { height: 16px; }
	.col_fixed a.btn_fixed .arrow::after {
		border-width: 2.5px;
		top: calc( 50% + 3px );
	}
	
}


/* --------------- footer --------------- */

#footer {
	margin: 0;
	padding: 0;
}
#footer .col_footer {
	width: 90%;
	margin: 0 auto;
	padding: 20px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
#footer .col_footer .logo {
	max-width: 482px;
	margin: 0 20px 0 0;
	padding: 0;
}
#footer .col_footer .logo img {
	width: 100%;
	vertical-align: top;
}
#footer .col_footer ul.list_link_footer {
	margin: 0;
	padding: 0;
	font-size: 21px;
	line-height: 1.5;
	list-style: none;
}
#footer .col_footer ul.list_link_footer li {
	margin: 0;
	padding: 0;
}
#footer .col_footer ul.list_link_footer li + li { margin-top: 0.2em; }
#footer .col_footer ul.list_link_footer li a {
	margin: 0;
	padding: 0 30px 0 0;
	color: var(--main-color);
	text-decoration: none;
	display: inline-block;
	position: relative;
	z-index: 0;
}
#footer .col_footer ul.list_link_footer li a::before,
#footer .col_footer ul.list_link_footer li a::after {
	content: "";
	width: 16px;
	height: 14px;
	margin: 0;
	padding: 0;
	border-radius: 2px;
	box-sizing: border-box;
	position: absolute;
}
#footer .col_footer ul.list_link_footer li a::before {
	border: solid 2px var(--main-color);
	top: 7px;
	right: 0;
}
#footer .col_footer ul.list_link_footer li a::after {
	border-left: solid 2px var(--main-color);
	border-bottom: solid 2px var(--main-color);
	top: 11px;
	right: 4px;
}
@media only screen and ( max-width: 850px ) {
	#footer .col_footer { display: block; }
	#footer .col_footer .logo {
		margin: 0 auto 5px;
	}
	#footer .col_footer ul.list_link_footer {
		width: 100%;
		margin: 0;
		padding: 0;
		display: flex;
		justify-content: center;
	}
	#footer .col_footer ul.list_link_footer li + li { margin: 0 0 0 1.2em; }
	#footer .col_footer ul.list_link_footer li a { padding: 0 25px 0 0; }
}
@media only screen and ( max-width: 700px ) {
	#footer .col_footer ul.list_link_footer { font-size: 14px; }
	#footer .col_footer ul.list_link_footer li a { padding: 0 20px 0 0; }
	#footer .col_footer ul.list_link_footer li a::before,
	#footer .col_footer ul.list_link_footer li a::after {
		width: 11px;
		height: 10px;
	}
	#footer .col_footer ul.list_link_footer li a::before { top: 4px; }
	#footer .col_footer ul.list_link_footer li a::after {
		top: 7px;
		right: 3px;
	}
}

#footer #copyright {
	margin: 0;
	padding: 0.8em 1em;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	text-align: center;
	background-color: #595757;
}


/* --------------- contents --------------- */

.scrlevent {
	transition: all 1s;
	opacity: 0;
	position: relative;
	top: 15px;
}
.scrlevent.active {
	opacity: 1;
	top: 0;
}

#main {
	width: 100%;
	height: calc( 67.46vw * 52 / 85 );
	max-height: 520px;
	margin: 0;
	padding: 0;
	overflow: hidden;
	position: relative;
	z-index: 0;
}
@media only screen and ( max-width: 700px ) {
	#main {
		height: 156vw;
		max-height: unset;
	}
}
.bg_main {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	display: flex;
}
.bg_main .bgskew {
	width: 32.54%;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	transform-origin: right bottom;
	transform: skewX(-24deg);
	position: relative;
	z-index: 1;
}
@media only screen and ( max-width: 700px ) {
	.bg_main .bgskew { display: none; }
}
.mainimg {
	width: 67.46%;
	height: 100%;
	margin: 0 0 0 auto;
	padding: 0;
	position: relative;
	z-index: 0;
}
@media only screen and ( max-width: 700px ) {
	.mainimg { width: 100%; }
}
.mainimg img {
	width: 100%;
	margin: 0;
	padding: 0;
	transform: translateY(-50%);
	position: absolute;
	top: 50%;
	left: 0;
}
@media only screen and ( min-width: 701px ) {
	.mainimg .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.mainimg .pc { display: none; }
}

.col_main {
	width: 90%;
	height: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 5%;
}
.col_main.scrlevent { top: 15px; }
.col_main.scrlevent.active { top: 0; }
.col_main .lead {
	margin: 0 0 1.6em;
	padding: 0;
	color: var(--main-color);
	font-size: min(3.6vw, 41px);
}
.col_main .lead span {
	margin: 0 0 0.5em;
	padding: 0.1em 0.3em;
	line-height: 1.3;
	letter-spacing: 0.1em;
	background-color: #fff;
	display: inline-block;
}
.col_main .lead span:last-child { margin-bottom: 0; }
.col_main a.job {
	width: fit-content;
	margin: 0;
	padding: 0;
	color: #fff;
	border: solid 2px #fff;
	border-radius: 10px;
	text-decoration: none;
	background-color: var(--sub-color1);
	display: block;
	position: relative;
	z-index: 0;
}
@media only screen and ( min-width: 701px ) {
	.col_main a.job { transition: opacity .4s; }
	.col_main a.job:hover { opacity: 0.8; }
}
.col_main a.job dl {
	margin: 0;
	padding: 8px 0;
	display: flex;
}
.col_main a.job dl dt {
	margin: 0;
	padding: 1em;
	font-size: min(2.3vw, 26px);
	letter-spacing: 0.1em;
	border-right: solid 1px #fff;
}
.col_main a.job dl dd {
	margin: 0;
	padding: 1em 3.4em 1em 1.2em;
	font-size: min( 1.8vw, 21px);
	line-height: 1.4;
	background-image: url(../img/arrow_mainbtn.svg);
	background-repeat: no-repeat;
	background-size: 1.4em auto;
	background-position: right 1em center;
	display: flex;
	align-items: center;
}
@media only screen and ( max-width: 700px ) {
	.col_main {
		padding: 0 0 6vw;
		justify-content: flex-end;
	}
	.col_main .lead {
		margin: 0 0 0.7em;
		font-size: 5.6vw;
	}
	.col_main a.job {
		width: 100%;
		margin: 0 auto;
	}
	.col_main a.job dl dt {
		width: 38%;
		padding: 0.9em 0.5em;
		font-size: 5vw;
		text-align: center;
	}
	.col_main a.job dl dd {
		width: 62%;
		font-size: 3.75vw;
	}
}

.lead1 {
	width: fit-content;
	max-width: 94%;
	margin: 0 auto;
	padding: 1em 0;
	color: var(--main-color);
	font-size: min(3.55vw, 38px);
	line-height: 1.6;
}
@media only screen and ( min-width: 701px ) {
	.lead1 .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.lead1 {
		font-size: 6.52vw;
		text-align: center;
		line-height: 1.4;
	}
	.lead1 .pc { display: none; }
}

.col_intro1 {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 60px 0;
	display: flex;
	justify-content: space-between;
}
.col_intro1 .cont_logo {
	width: 31.8%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	border-radius: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}
.col_intro1 .cont_logo img { width: 80%; }
.col_intro1 .cont_txt {
	width: 60%;
	margin: 0;
	padding: 0;
	color: var(--main-color);
	background-color: var(--main-color);
	position: relative;
	z-index: 0;
}
.col_intro1 .cont_txt::before {
	content: "";
	width: 100vw;
	height: calc( 100% + 120px );
	margin: 0;
	padding: 0;
	background-color: inherit;
	border-radius: 28px 0 0 28px;
	position: absolute;
	top: -60px;
	left: -25%;
}
.col_intro1 .cont_txt p {
	margin: 0 0 1.8em;
	line-height: 1.66;
	filter: invert(100%) grayscale(100%) contrast(100);
}
.col_intro1 .cont_txt p:last-child { margin-bottom: 0; }
@media only screen and ( max-width: 850px ) {
	.col_intro1 {
		padding: 0;
		display: block;
	}
	.col_intro1 .cont_logo {
		width: 65vw;
		max-width: 360px;
		height: 63.5vw;
		max-height: 350px;
		margin: 0 auto;
	}
	.col_intro1 .cont_txt {
		width: 100%;
		padding: 1.8em 1.5em;
		border-radius: 28px;
	}
	.col_intro1 .cont_txt::before {
		width: 100%;
		height: calc( 100% + min( 45.12vw, 250px ) );
		border-radius: 28px;
		top: auto;
		left: 0;
		bottom: 0;
	}
}

.mds1 {
	color: var(--main-color);
	font-size: min( 6.66vw, 38px);
	font-weight: 500;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
@media only screen and ( max-width: 700px ) {
	.mds1 { letter-spacing: 0.05em; }
}

.col_feature {
	width: 94%;
	max-width: 1140px;
	margin: 0 auto;
	padding: 80px 0 65px;
}
.col_feature .mds { margin: 0 0 42px; }
.cont_feature {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: center;
}
.cont_feature .cont {
	width: calc( 100% / 3 );
	margin: 0;
	padding: 10px 2.5% 0;
	border-right: dotted 2px #898989;
}
.cont_feature .cont:nth-child(3n),
.cont_feature .cont:last-child { border-right: none; }
.cont_feature .cont .img {
	width: 100%;
	margin: 0;
	padding: 0;
	border-radius: 25px;
	overflow: hidden;
}
.cont_feature .cont .img img {
	width: 100%;
	vertical-align: top;
}
.cont_feature .cont dl {
	margin: 0;
	padding: 0;
}
.cont_feature .cont dl dt {
	margin: 0;
	padding: 0.6em 0;
	color: var(--main-color);
	font-size: min( 1.92vw, 23px );
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.05em;
	line-height: 1.45;
	border-bottom: solid 1px var(--main-color);
}
.cont_feature .cont dl dd {
	margin: 0;
	padding: 0.6em 0.1em 1em;
	font-size: 18px;
	font-weight: 400;
}
@media only screen and ( max-width: 850px ) {
	.col_feature { width: 100%; }
	.cont_feature {
		width: 90%;
		margin: 0 auto;
		display: block;
	}
	.cont_feature .cont {
		width: 100%;
		margin: 0 0 5%;
		padding: 0;
		border-right: none;
		border-bottom: dotted 2px #898989;
	}
	.cont_feature .cont:nth-child(3n),
	.cont_feature .cont:last-child { border-bottom: none; }
	.cont_feature .cont:last-child { margin-bottom: 0; }
	.cont_feature .cont .img {
		max-width: 500px;
		margin: 0 auto;
	}
	.cont_feature .cont dl dt {
		padding: 0.4em 0;
		font-size: min(5.69vw, 23px);
	}
	.cont_feature .cont dl dd { font-size: 15px; }
}
@media only screen and ( max-width: 700px ) {
	.col_feature { padding: 10% 0; }
}

.bg_reason {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 95px;
	padding: 80px 0 75px;
	background-color: #fff;
	border-radius: 35px;
}
@media only screen and ( max-width: 700px ) {
	.bg_reason {
		margin: 0 auto 14%;
		padding: 12% 0 6%;
		border-radius: 15px;
	}
}
.bg_reason .mds1 {
	margin: 0 0 38px;
	line-height: 1.56;
}
@media only screen and ( min-width: 851px ) {
	.bg_reason .mds1 .sp { display: none; }
}
@media only screen and ( max-width: 850px ) {
	.bg_reason .mds1 .pc { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.bg_reason .mds1 { margin: 0 0 0.8em; }
}
.lead_reason1 {
	margin: 0 0 20px;
	padding: 0 1em;
	font-size: min(4.3vw, 18px );
	text-align: center;
}
@media only screen and ( min-width: 901px ) {
	.lead_reason1 .sp { display: none; }
}
@media only screen and ( max-width: 900px ) {
	.lead_reason1 .pc { display: none; }
}
ul.list_reason1 {
	width: 92%;
	max-width: 900px;
	margin: 0 auto 38px;
	padding: 0;
}
ul.list_reason1 li {
	width: 100%;
	margin: 0;
	padding: 15px 8px 15px 15px;
	border-bottom: dotted 2px #afafb0;
	display: flex;
}
ul.list_reason1 li .icon {
	width: 45px;
	margin: 0 15px 0 0;
	padding: 0;
}
ul.list_reason1 li .icon img {
	width: 100%;
	vertical-align: top;
}
ul.list_reason1 li .txt {
	width: calc( 100% - 60px );
	margin: 0;
	padding: 0;
	color: var(--main-color);
	font-size: 22px;
	font-weight: 500;
	line-height: 1.4;
	align-self: center;
}
@media only screen and ( max-width: 700px ) {
	ul.list_reason1 { margin: 0 auto 5%; }
	ul.list_reason1 li { padding: 12px 0; }
	ul.list_reason1 li .icon {
		width: 35px;
		margin: 0 10px 0 0;
	}
	ul.list_reason1 li .txt {
		width: calc( 100% - 45px );
		font-size: 17px;
	}
}
.lead_reason2 {
	margin: 0 0 60px;
	padding: 0 10px;
	font-size: min(4.72vw, 22px );
	font-weight: 500;
	text-align: center;
}
@media only screen and ( min-width: 901px ) {
	.lead_reason2 .sp { display: none; }
}
@media only screen and ( max-width: 900px ) {
	.lead_reason2 .pc { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.lead_reason2 {
		margin: 0 0 7%;
		line-height: 1.5;
	}
}
.col_reason1 {
	width: 92%;
	max-width: 900px;
	margin: 0 auto;
	padding: 0;
}
.col_reason1 .cont {
	width: 100%;
	margin: 0 0 40px;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.col_reason1 .cont .img {
	width: 35.5%;
	margin: 0;
	padding: 0;
	border-radius: 20px;
	overflow: hidden;
}
.col_reason1 .cont:nth-child(even) .img { order: 1; }
.col_reason1 .cont .img img {
	width: 100%;
	vertical-align: top;
}
.col_reason1 .cont dl {
	width: 60%;
	margin: 0;
	padding: 0;
}
.col_reason1 .cont dl dt {
	margin: 0;
	padding: 0.1em 0.2em 0.1em 0.4em;
	color: var(--main-color);
	font-size: min(5.33vw, 24px);
	font-weight: 500;
	line-height: 1.4;
	border-left: solid 6px var(--main-color);
	position: relative;
	z-index: 0;
}
.col_reason1 .cont:nth-child(even) dl dt {
	color: var(--sub-color2);
	border-left-color: var(--sub-color2);
}
.col_reason1 .cont dl dt::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	opacity: 0.1;
	position: absolute;
	top: 0;
	left: 0;
}
.col_reason1 .cont:nth-child(even) dl dt::before { background-color: var(--sub-color2); }
.col_reason1 .cont dl dd {
	margin: 0;
	padding: 0.6em 6px 0;
	font-size: 18px;
}
@media only screen and ( max-width: 850px ) {
	.col_reason1 { width: 90%; }
	.col_reason1 .cont { display: block; }
	.col_reason1 .cont .img {
		width: 100%;
		max-width: 500px;
		margin: 0 auto 5%
	}
	.col_reason1 .cont dl { width: 100%; }
	.col_reason1 .cont dl dt { padding: 0.2em 0.2em 0.2em 0.4em; }
	.col_reason1 .cont dl dd { font-size: 15px; }
}
.lead_reason3 {
	margin: 0;
	padding: 0.5em 10px;
	font-size: min(2.3vw, 22px );
	font-weight: 500;
	text-align: center;
	line-height: 1.45;
}
@media only screen and ( min-width: 901px ) {
	.lead_reason3 .sp { display: none; }
}
@media only screen and ( max-width: 900px ) {
	.lead_reason3 {
		width: 90%;
		margin: 0 auto;
		padding: 0.5em 0 0;
		font-size: 20px;
		text-align: left;
		line-height: 1.55;
	}
	.lead_reason3 .pc { display: none; }
}
@media only screen and ( max-width: 850px ) {
	.lead_reason3 { font-size: 16px; }
}

.wrap_aboutwork {
	margin: 0 0 85px;
	padding: 0 0 85px;
	background: linear-gradient( 180deg, rgba(255,255,255,0) 100px, var(--main-color) 101px );
}
.bg_aboutwork {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 78px 0;
	background-color: #fff;
	border-radius: 35px;
}
.col_aboutwork1 {
	width: 90%;
	max-width: 912px;
	margin: 0 auto 30px;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.col_aboutwork1 .img {
	width: 38.4%;
	margin: 0;
	padding: 0;
	border-radius: 25px;
	overflow: hidden;
	order: 1;
}
.col_aboutwork1 .img img {
	width: 100%;
	vertical-align: top;
}
.col_aboutwork1 dl {
	width: 58%;
	margin: 0;
	padding: 0;
}
.col_aboutwork1 dl dt {
	margin: 0 0 0.4em;
	padding: 0;
	font-size: min(3.58vw, 38px );
}
.col_aboutwork1 dl dt .mds {
	margin: 0;
	padding: 0;
	color: var(--main-color);
	font-size: min(3.42vw, 38px );
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.05em;
}
.col_aboutwork1 dl dd {
	margin: 0;
	padding: 0;
	font-size: min( 1.88vw, 20px );
	font-weight: 500;
	line-height: 1.45;
}
@media only screen and ( min-width: 851px ) {
	.col_aboutwork1 dl dt .sp { display: none; }
}
@media only screen and ( max-width: 850px ) {
	.bg_aboutwork {
		padding: 10% 0 6%;
	}
	.col_aboutwork1 {
		display: block;
	}
	.col_aboutwork1 .img {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	.col_aboutwork1 dl {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	.col_aboutwork1 dl dt {
		margin: 0;
		padding: 0.6em 0;
		font-size: min(6.52vw, 38px );
		text-align: center;
	}
	.col_aboutwork1 dl dt .mds {
		font-size: min(6.52vw, 38px );
		line-height: 1.42;
	}
	.col_aboutwork1 dl dt .pc { display: none; }
	.col_aboutwork1 dl dd {
		font-size: 20px;
		text-align: center;
		line-height: 1.6;
	}
}
@media only screen and ( min-width: 701px ) {
	.col_aboutwork1 dl dd .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.wrap_aboutwork {
		margin: 0 0 8%;
		padding: 0 0 8%;
	}
	.col_aboutwork1 dl dd { font-size: min( 4.44vw, 20px ); }
	.col_aboutwork1 dl dd .pc { display: none; }
}

.col_aboutwork2 {
	width: 90%;
	max-width: 912px;
	margin: 0 auto 20px;
	padding: 0;
}
.col_aboutwork2:last-child { margin-bottom: 0; }
.col_aboutwork2 .mds {
	margin: 0;
	padding: 0.1em 8px;
	color: var(--main-color);
	font-size: 26px;
	font-weight: 500;
	line-height: 1.4;
	border-left: solid 6px var(--main-color);
	border-bottom: solid 1px var(--main-color);
}
.col_aboutwork2 .txt {
	margin: 0;
	padding: 0.6em 14px 0;
	font-size: 18px;
}
.col_aboutwork2 .txt *:last-child { margin-bottom: 0; }
@media only screen and ( max-width: 700px ) {
	.col_aboutwork2 .mds { font-size: 20px; }
	.col_aboutwork2 .txt { font-size: 15px; }
}

.bg_staff {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 80px;
	padding: 80px 0;
	background-color: #fff;
	border-radius: 35px;
}
.bg_staff .mds1 {
	margin: 0 0 60px;
}
@media only screen and ( min-width: 1071px ) {
	.bg_staff .mds1 .sp { display: none; }
}
@media only screen and ( max-width: 1070px ) {
	.bg_staff .mds1 .pc { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.bg_staff {
		margin: 0 auto 10%;
		padding: 10% 0;
	}
	.bg_staff .mds1 { margin: 0 0 1em; }
}

.col_staff1 {
	width: 88%;
	max-width: 890px;
	margin: 0 auto 55px;
	padding: 6% 6% 5%;
	border: solid 2px var(--main-color);
	border-radius: 30px;
	position: relative;
	z-index: 0
}
.col_staff1::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	opacity: 0.1;
	background-color: var(--main-color);
	border-radius: inherit;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.col_staff1:last-child { margin-bottom: 0; }
.col_staff1 .mds {
	width: 9em;
	height: 2em;
	margin: 0;
	padding: 0;
	color: var(--main-color);
	font-size: min( 7.9vw, 37px );
	font-weight: 700;
	text-align: center;
	line-height: 2em;
	transform: translateX(-50%);
	position: absolute;
	top: -1em;
	left: 50%;
}
.col_staff1 .mds::before {
	content: "";
	width: 100%;
	height: 50%;
	margin: 0;
	padding: 0;
	background-color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
@media only screen and ( max-width: 850px ) {
	.col_staff1 .mds { width: 8em; }
}
@media only screen and ( max-width: 700px ) {
	.col_staff1 { padding: 10% 6% 5%; }
	.col_staff1 .mds { width: 7.6em; }
}
.col_staff1 .img {
	margin: 0;
	padding: 0;
}
.col_staff1 .img img {
	width: 100%;
	vertical-align: top;
}
@media only screen and ( min-width: 701px ) {
	.col_staff1 .img .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.col_staff1 .img .pc { display: none; }
}
.col_staff1 .txt {
	margin: 0;
	padding: 16px 0 0;
}
.col_staff1 .txt *:last-child { margin-bottom: 0; }

.bg_oneday {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 80px;
	padding: 80px 0 40px;
	background-color: #fff;
	border-radius: 35px;
}
.bg_oneday .mds1 {
	margin: 0 0 35px;
}
@media only screen and ( min-width: 701px ) {
	.bg_oneday .mds1 .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.bg_oneday {
		margin: 0 auto 10%;
		padding: 10% 0 5%;
	}
	.bg_oneday .mds1 { margin: 0 0 0.8em; }
	.bg_oneday .mds1 .pc { display: none; }
}
.col_flow_oneday {
	width: 88%;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.cont_flow {
	width: 30%;
	margin: 0 5% 5% 0;
	padding: 0;
	position: relative;
	z-index: 0;
}
.cont_flow:nth-child(3n) { margin-right: 0; }
.cont_flow::before {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 18px var(--main-color);
	border-top: solid 20px rgba(255,255,255,0);
	border-bottom: solid 20px rgba(255,255,255,0);
	position: absolute;
	top: calc( 24% - 20px );
	right: calc( -5.5% - 18px );
}
.cont_flow:nth-child(3n)::before { content: none; }
@media only screen and ( max-width: 850px ) {
	.cont_flow { width: 47.5%; }
	.cont_flow:nth-child(3n) { margin-right: 5%; }
	.cont_flow:nth-child(even) { margin-right: 0; }
	.cont_flow::before {
		border-left-width: 2vw;
		border-top-width: 2.2vw;
		border-bottom-width: 2.2vw;
		top:  13vw;
		right: calc( -2.7% - 2vw );
	}
	.cont_flow:nth-child(3n)::before { content: ""; }
	.cont_flow:nth-child(even)::before { content: none; }
}
@media only screen and ( max-width: 500px ) {
	.col_flow_oneday { display: block; }
	.cont_flow {
		width: 100%;
		margin: 0 0 9vw;
	}
	.cont_flow:nth-child(3n) { margin-right: 0; }
	.cont_flow::before {
		border-top: solid 4vw var(--main-color);
		border-left: solid 4.5vw rgba(255,255,255,0);
		border-right: solid 4.5vw rgba(255,255,255,0);
		border-bottom: none;
		top: calc( 100% + 2.5vw );
		right: calc( 50% - 4.5vw );
	}
	.cont_flow:nth-child(even)::before { content: ""; }
	.cont_flow:last-child::before { content: none; }
}
.cont_flow .img {
	width: 100%;
	margin: 0 0 15px;
	padding: 0;
	border-radius: 20px;
	overflow: hidden;
}
.cont_flow .img img {
	width: 100%;
	vertical-align: top;
}
.cont_flow dl.time {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: min(2.2vw, 24px);
	font-weight: 700;
	border: solid 1px var(--main-color);
	border-radius: 10px;
	display: flex;
	overflow: hidden;
	position: relative;
	z-index: 0;
}
.cont_flow dl.time::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	opacity: 0.1;
	position: absolute;
	top: 0;
	left: 0;
}
.cont_flow dl.time dt {
	width: 3.2em;
	margin: 0;
	padding: 0;
	color: #fff;
	text-align: center;
	background-color: var(--main-color);
}
.cont_flow dl.time dd {
	width: calc( 100% - 3.2em );
	margin: 0;
	padding: 0 0.2em;
	color: var(--main-color);
}
.cont_flow .txt {
	margin: 0;
	padding: 0.5em 0;
	font-size: 18px;
}
.cont_flow .txt p { margin-bottom: 0.6em; }
.cont_flow .txt *:last-child { margin-bottom: 0; }
@media only screen and ( max-width: 850px ) {
	.cont_flow dl.time { font-size: min( 3.3vw, 25px ); }
}
@media only screen and ( max-width: 700px ) {
	.cont_flow .txt { font-size: 15px; }
}
@media only screen and ( max-width: 500px ) {
	.cont_flow dl.time { font-size: 5.6vw; }
}

.col_flow_entry {
	margin: 0 0 85px;
	padding: 0;
}
.col_flow_entry .mds1 { margin: 0 0 45px; }

@media only screen and ( min-width: 701px ) {
	.col_flow_entry .mds1 .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.col_flow_entry { margin: 0 0 12%; }
	.col_flow_entry .mds1 { margin: 0 0 1em; }
	.col_flow_entry .mds1 .pc { display: none; }
}
ol.list_flow_entry {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 35px;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
ol.list_flow_entry li {
	width: 22.45%;
	margin: 0 3.4% 0 0;
	padding: 0;
	position: relative;
	z-index: 0;
}
ol.list_flow_entry li:nth-child(4n),
ol.list_flow_entry li:last-child { margin-right: 0; }
ol.list_flow_entry li::before {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 16px #9fa0a0;
	border-top: solid 17px rgba(255,255,255,0);
	border-bottom: solid 17px rgba(255,255,255,0);
	position: absolute;
	top: calc( 50% - 17px );
	right: calc( -4% - 16px );
}
ol.list_flow_entry li:last-child::before { content: none; }
ol.list_flow_entry li img {
	width: 100%;
	vertical-align: top;
}
@media only screen and ( min-width: 851px ) {
	ol.list_flow_entry li .sp { display: none; }
}
@media only screen and ( max-width: 850px ) {
	ol.list_flow_entry {
		max-width: 500px;
		margin: 0 auto;
	}
	ol.list_flow_entry li {
		width: 46.5%;
		margin: 0 7% 7% 0;
	}
	ol.list_flow_entry li:nth-child(even) { margin-right: 0; }
	ol.list_flow_entry li:nth-child(even)::before { content: none; }
	ol.list_flow_entry li .pc { display: none; }
}
@media only screen and ( max-width: 550px ) {
	ol.list_flow_entry li::before {
		border-left-width: 3.4vw;
		border-top-width: 3.7vw;
		border-top-width: 3.7vw;
		top: calc( 50% - 3.7vw );
		right: calc( -4% - 3.4vw );
	}
}
.note_flow_entry {
	width: 90%;
	margin: 0 auto;
	padding: 0;
	font-size: 18px;
	text-align: center;
	line-height: 1.4;
}
@media only screen and ( max-width: 700px ) {
	.note_flow_entry { font-size: 15px; }
}

.bg_require {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 90px;
	padding: 80px 0;
	background-color: #fff;
	border-radius: 30px;
}
.bg_require .mds_require {
	margin: 0 0 50px;
	padding: 0 10px;
	color: var(--main-color);
	font-size: min(6.66vw, 38px);
	font-weight: 500;
	text-align: center;
	line-height: 1.35;
	letter-spacing: 0.08em;
}
.bg_require .mds_require span {
	font-size: min( 4.3vw, 21px );
}
@media only screen and ( max-width: 700px ) {
	.bg_require {
		margin: 0 auto 12%;
		padding: 8% 0;
		border-radius: 4.72vw;
	}
	.bg_require .mds_require { margin: 0 0 1.2em; }
}
.col_list_require {
	width: 90%;
	max-width: 850px;
	margin: 0 auto;
	padding: 0;
}
dl.list_require {
	width: 100%;
	margin: 0;
	padding: 0;
	foint-size: 18px;
	line-height: 1.5;
	display: flex;
}
dl.list_require dt {
	width: 100px;
	margin: 0 12px 0 0;
	padding: 1.4em 4px;
	color: var(--main-color);
	font-weight: 500;
	letter-spacing: 0.1em;
	border-top: solid 1px var(--main-color);
}
dl.list_require:last-child dt { border-bottom: solid 1px var(--main-color); }
dl.list_require dd {
	width: calc( 100% - 112px );
	margin: 0;
	padding: 1.4em 4px;
	border-top: solid 1px #afafb0;
}
dl.list_require:last-child dd { border-bottom: solid 1px #afafb0; }
dl.list_require dd *:last-child { margin-bottom: 0; }
@media only screen and ( max-width: 700px ) {
	dl.list_require {
		font-size: 15px;
		display: block;
	}
	dl.list_require dt {
		width: 100%;
		padding: 1em 4px;
	}
	dl.list_require:last-child dt { border-bottom: none; }
	dl.list_require dd {
		width: 100%;
		padding: 1em 4px;
		line-height: 1.7;
	}
	dl.list_require:last-child dd { border-bottom-color: var(--main-color); }
}

.bg_faq {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto 80px;
	padding: 78px 0;
	background-color: #fff;
	border-radius: 30px;
}
.bg_faq .mds_faq {
	margin: 0 0 50px;
	padding: 0 10px;
	color: var(--main-color);
	font-size: min(6.66vw, 38px);
	font-weight: 500;
	text-align: center;
	line-height: 1.35;
	letter-spacing: 0.08em;
}
.bg_faq .mds_faq span { font-size: min( 4.3vw, 21px ); }
@media only screen and ( max-width: 700px ) {
	.bg_faq {
		margin: 0 auto 12%;
		padding: 8% 0;
		border-radius: 4.72vw;
	}
	.bg_faq .mds_faq { margin: 0 0 1.2em; }
}
.col_faq {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	padding: 0;
}
.col_faq dl {
	width: 100%;
	margin: 0 auto 18px;
	padding: 32px 5%;
	position: relative;
	z-index: 0;
}
.col_faq dl:last-child { margin-bottom: 0; }
.col_faq dl::before {
	content: "";
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	background-color: var(--main-color);
	border-radius: 20px;
	opacity: 0.1;
	position: absolute;
	top: 0;
	left: 0;
}
.col_faq dl dt {
	width: 100%;
	margin: 0;
	padding: 0 44px 0 10px;
	cursor: pointer;
	display: flex;
	position: relative;
	z-index: 0;
}
.col_faq dl dt::before,
.col_faq dl dt::after {
	content: "";
	width: 20px;
	height: 2px;
	background-color: #afafb0;
	transform: translateY(-50%);
	transition: transform .4s;
	position: absolute;
	top: 50%;
	right: 10px;
}
.col_faq dl dt::after { transform: translateY(-50%) rotate(90deg); }
.col_faq dl.open dt::after { transform: translateY(-50%) rotate(0deg); }

.col_faq dl dd {
	width: 100%;
	margin: 18px 0 0;
	padding: 18px 10px 0;
	border-top: dotted 2px #afafb0;
	display: flex;
}
.col_faq dl .icon {
	width: 35px;
	height: 35px;
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	line-height: 1.2;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center
}
.col_faq dl dt .icon { background-color: var(--main-color); }
.col_faq dl dd .icon { background-color: var(--sub-color1); }
.col_faq dl .txt {
	width: calc( 100% - 35px );
	margin: 0;
	padding: 0 0 0 10px;
	font-size: 18px;
	line-height: 1.5;
}
.col_faq dl dt .txt {
	color: var(--main-color);
	font-size: 20px;
	font-weight: 500;
}
@media only screen and ( max-width: 700px ) {
	.col_faq dl { padding: 16px 5%; }
	.col_faq dl::before { border-radius: 2.5vw; }
	.col_faq dl dt { padding: 0 26px 0 0; }
	.col_faq dl dt::before,
	.col_faq dl dt::after {
		width: 16px;
		right: 5px;
	}
	.col_faq dl dd {
		margin: 10px 0 0;
		padding: 10px 3px 0 0;
	}
	.col_faq dl .icon {
		width: 30px;
		height: 30px;
		font-size: 18px;
	}
	.col_faq dl .txt {
		width: calc( 100% - 30px );
		font-size: 15px;
	}
	.col_faq dl dt .txt { font-size: 17px; }
}

.col_message {
	width: 90%;
	max-width: 970px;
	margin: 0 auto 80px;
	padding: 0;
}
.cont_catch_message {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	color: #fff;
	background-color: var(--main-color);
	border-radius: 35px;
	overflow: hidden;
	display: flex;
}
.cont_catch_message .img {
	width: 44.8%;
	margin: 0;
	padding: 0;
	order: 1;
}
.cont_catch_message .img img {
	width: 100%;
	vertical-align: top;
}
.cont_catch_message .txt {
	width: 55.2%;
	margin: 0;
	padding: 0;
	font-size: min( 4.25vw, 40px );
	font-weight: 500;
	line-height: 1.48;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cont_catch_message .txt *:last-child { margin-bottom: 0; }
@media only screen and ( min-width: 701px ) {
	.cont_catch_message .img .sp { display: none; }
}
@media only screen and ( max-width: 700px ) {
	.col_message { margin: 0 auto 10%; }
	.cont_catch_message {
		max-width: 540px;
		margin: 0 auto;
		display: block;
	}
	.cont_catch_message .img { width: 100%; }
	.cont_catch_message .img .pc { display: none; }
	.cont_catch_message .txt {
		width: 100%;
		padding: 0.4em 0 0.5em;
		font-size: min(6.66vw, 40px);
	}
}
.cont_txt_message {
	width: 100%;
	max-width: 850px;
	margin: 0 auto;
	padding: 15px 0 0;
	font-size: 18px;
	line-height: 1.5;
}
.cont_txt_message ul.check {
	margin: 0 0 1em;
	padding: 0;
	color: var(--main-color);
	font-size: 25px;
	font-weight: 500;
	list-style: none;
}
.cont_txt_message ul.check li {
	margin: 0 0 0.4em;
	padding: 0 0 0 42px;
	line-height: 1.4;
	position: relative;
	z-index: 0;
}
.cont_txt_message ul.check li::before {
	content: "";
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	border: solid 2px var(--main-color);
	box-sizing: border-box;
	position: absolute;
	top: 10px;
	left: 0;
}
.cont_txt_message ul.check li::after {
	content: "";
	width: 24px;
	height: 7px;
	border-left: solid 3px var(--main-color);
	border-bottom: solid 3px var(--main-color);
	transform: rotate(-48deg);
	position: absolute;
	top: 7px;
	left: 3px;
}
@media only screen and ( max-width: 700px ) {
	.cont_txt_message ul.check { font-size: 18px; }
	.cont_txt_message ul.check li { padding: 0 0 0 27px; }
	.cont_txt_message ul.check li::before {
		width: 16px;
		height: 16px;
		top: 5px;
	}
	.cont_txt_message ul.check li::after {
		width: 19px;
		height: 6px;
		border-width: 2px;
		top: 3px;
	}
	.cont_txt_message {
		padding: 2em 0 0;
		font-size: 15px;
		line-height: 1.7;
	}
}

.bg_entry {
	margin: 0;
	padding: 0 0 105px;
	background: linear-gradient( 180deg, rgba(255,255,255,0) 145px, var(--main-color) 146px );
}
.bg_entry .col_entry {
	width: 90%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 80px 0;
	background-color: #fff;
	border-radius: 30px;
}
.bg_entry .col_entry .mds1 {
	margin: 0 0 30px;
}
.lead_entry1 {
	margin: 0 0 45px;
	padding: 0 1.5em;
	font-size: 18px;
	text-align: center;
}
.btn_entry_line {
	margin: 0 0 45px;
	padding: 0;
	text-align: center;
}
.btn_entry_line img {
	width: 50%;
	max-width: 168px;
	vertial-align: top;
}
.cont_form_entry {
	width: 90%;
	max-width: 810px;
	margin: 0 auto;
}
.cont_form_entry .smf-form smf-form--simple-table {
	margin: 0;
	padding: 0;
}
.cont_form_entry .smf-item {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 1.5;
	display: flex;
}
.cont_form_entry .smf-item .smf-item__col--label {
	width: 150px;
	margin: 0 12px 0 0;
	padding: 1.2em 0.5em;
	font-weight: 500;
	border-top: solid 1px #666565;
}
.cont_form_entry .smf-item.must .smf-item__label__text::after {
	content: "必須";
	width: 3.4em;
	height: 1.4em;
	margin: 0.6em 0 0;
	padding: 0 0.4em;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	text-align: center;
	line-height: 1.3;
	letter-spacing: 0.1em;
	background-color: #e60012;
	border-radius: 0.7em;
	display: block;
}
.cont_form_entry .smf-item .smf-item__col--controls {
	width: calc( 100% - 162px );
	margin: 0;
	padding: 1.2em 1em;
	border-top: solid 1px #afafb0;
}
.cont_form_entry .smf-item .smf-radio-buttons-control--horizontal .smf-radio-buttons-control__control {
	width: 100%;
	display: flex;
}
.cont_form_entry .smf-item .smf-radio-buttons-control--horizontal .smf-label {
	width: fit-content;
	margin: 0 2em 0 0;
	padding: 0;
}
.cont_form_entry .smf-item input[type="text"],
.cont_form_entry .smf-item input[type="email"] {
	width: 100%;
	max-width: 360px;
	margin: 0;
	padding: 0.8em 0.5em;
	font-size: inherit;
	background-color: #f0f0f0;
	border: none;
	border-radius: 5px;
}
.cont_form_entry .smf-item input[type="text"].postcode { margin-left: 0.5em; }
.cont_form_entry .smf-item input[type="date"] {
	width: 100%;
	max-width: 200px;
	margin: 0;
	padding: 0.8em 0.5em;
	font-size: inherit;
	background-color: #f0f0f0;
	border: none;
	border-radius: 5px;
}
.cont_form_entry .smf-item.box_address .smf-item__controls .wp-block-group.is-layout-flex div + div {
	width: 100%;
	margin-top: 0.5em;
}

.cont_form_entry .smf-item input[type="text"].address { max-width: unset; }
.cont_form_entry .smf-item textarea {
	width: 100%;
	min-height: 8em;
	padding: 0.8em 0.5em;
	font-size: inherit;
	background-color: #f0f0f0;
	border: none;
	border-radius: 5px;
}
.cont_form_entry .smf-item.box_privacy {
	width: 100%;
	max-width: 760px;
	max-height: 15em;
	margin: 40px auto 30px;
	padding: 0.8em 1em;
	border: solid 1px #e7e7e7;
	overflow: auto;
	display: block;
}
.cont_form_entry .smf-item.box_privacy .smf-item__col--controls,
.cont_form_entry .smf-item.check_privacy .smf-item__col--controls {
	width: 100%;
	padding: 0;
	border-top: none;
}
.cont_form_entry .smf-item.check_privacy {
	margin: 0 0 30px;
	text-align: center;
	display: block;
}
.cont_form_entry input.hidden_field { display: none; }

.cont_form_entry .smf-action {
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.cont_form_entry .smf-action .smf-button-control {
	width: 310px;
	margin: 0 15px 15px;
	padding: 0;
}
.cont_form_entry .smf-action .smf-button-control button {
	width: 100%;
	height: 3.8em;
	margin: 0;
	padding: 0 0.5em;
	font-size: 18px;
	font-weight: 500;
	background-color: #fff;
	border-radius: 1.9em;
	cursor: pointer;
}
@media only screen and ( max-width: 700px ) {
	.bg_entry {
		padding: 0 0 14%;
		background: linear-gradient( 180deg, rgba(255,255,255,0) 18.8vw, var(--main-color) calc( 18.8vw + 1px ) );
	}
	.bg_entry .col_entry {
		padding: 8% 0;
		border-radius: 4.72vw;
	}
	.bg_entry .col_entry .mds1 { margin: 0 0 1em; }
	.lead_entry1 {
		margin: 0 0 1.5em;
		font-size: 15px;
		line-height: 1.9;
	}
	.cont_form_entry .smf-item {
		font-size: 15px;
		display: block;
	}
	.cont_form_entry .smf-item .smf-item__col--label {
		width: 100%;
		margin: 0;
		padding: 0.8em 0.2em;
		border-top-width: 2px;
	}
	.cont_form_entry .smf-item.must .smf-item__label__text::after {
		margin: 0 0 0 0.6em;
		font-size: 14px;
		display: inline-block;
	}
	.cont_form_entry .smf-item .smf-item__col--controls {
		width: 100%;
		padding: 1.2em 0.2em;
	}
	.cont_form_entry .smf-item input[type="text"],
	.cont_form_entry .smf-item input[type="email"] { max-width: unset; }
	.cont_form_entry .smf-item input[type="text"].postcode {
		width: calc( 100% - 3em );
		max-width: 15em;
	}
	.cont_form_entry .smf-item.box_privacy { margin: 3em auto 2em; }
	.cont_form_entry .smf-item.check_privacy { margin: 0 0 2em; }
	.cont_form_entry .smf-action .smf-button-control button { font-size: 15px; }
}
