@charset "utm-8";

/* edit 2024.6.12 modal_top.cssから移動 */
.modal-content {
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: none;
	margin: auto;
	padding: 20px 0;
	max-width: 560px;
	height: fit-content;
	border: 4px solid #feee50;
	background: #fff;
	z-index: 4;
}
#modal-overlay {
	z-index: 3;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0,0,0,.75);
}
#modal-close {
	position: absolute;
	top: 0;
	right: 7px;
	font-size: 150%;
	color: #666;
	cursor: pointer;
}
.modal-content p {
	margin: 0;
	font-size: 14px;
}
.modal-content .text-em {
	font-size: 22px;
	font-style: italic;
	font-weight: 700;
}
.modal-content .text-blue {
	font-size: 24px;
	font-weight: 700;
	color: #333;
}
.modal-content .text-number {
	color: #db5e29;
	font-size: 44px;
	font-weight: 700;
}
.modal-content .text-number::before {
	display: inline-block;
	width: 50px;
	height: 50px;
	margin-right: 10px;
	vertical-align: middle;
	border: 2px solid #f07b02;
	border-radius: 50%;
	font-family: "Font Awesome 5 Free";
	content: "\f2a0";
	font-size: 80%;
	line-height: 50px;
}
.modal-content .logo {
	margin: 0 -16px;
	padding: 18px 0 10px;
	background: #fced6d;
	text-align: center;
}
.modal-content .logo > img {
	max-height: 22px;
}
.modal-content .title {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: bold;
}
.title_img {
	max-width: 80px;
}
.title_img img {
	display: block;
}
.contact #btn_cancel,
.contact #btn_move {
	height: 60px;
	line-height: 60px;
	padding: 0;
	color: #333;
}
.contact #btn_order,
.contact #btn_others {
	height: 50px;
	line-height: 1;
	padding-top: 10px;
	color: #333;
}
#contact-modal .button.hollow > small {
	margin-top: 5px;
}
#contact-modal .button.hollow {
	color: #fff;
	box-shadow: none;
	background-color: #db5e29;
	border-radius: 36px;
	font-size: 18px;
}
#contact-modal .button.hollow:nth-child(2),
#contact-modal .button.hollow:nth-child(3) {
	box-sizing: border-box;
	color: #595757;
	border: solid 3px #db5e29;
	background-color: #fff;
}
#contact-modal .button.hollow:nth-child(2)::after,
#contact-modal .button.hollow:nth-child(3)::after {
	background-image: url(../img/modal_arrow.png);
}
@media screen and (min-width: 38.75em) {
	.modal-content .title {
		text-align: center;
		font-size: 16px;
	}
	.modal-content .title > br {
		display: none;
	}
	#contact-modal {
		padding: 0 60px 60px;
		border: none;
	}
	.modal-content .logo {
		margin: 0 -60px 18px;
	}
	.modal-content p {
		font-size: 16px;
	}
	#contact-modal .button {
		margin: 0 0 10px;
	}
	.contact .btn_move,
	.contact .btn_order {
		max-width: 700px;
		margin: 0 auto;
		height: 90px;
		line-height: 90px;
	}
	.contact .btn_move > i,
	.contact .btn_order > i {
		margin-top: 1.5rem;
		margin-right: -2rem;
	}
	.contact .btn_order {
		height: 64px;
		padding-top: 12px;
		line-height: 1.4;
	}
	.contact .btn_order > i {
		margin-top: .5rem;
	}
	#contact-modal .btn_move {
		height: 78px;
		line-height: 78px;
		padding: 0;
	}
	#contact-modal .btn_move > i {
		float: unset;
		position: absolute;
		top: 0;
		left: 30px;
		bottom: 0;
		margin: auto;
		padding: 0;
		width: 24px;
		height: fit-content;
	}
		#contact-modal .btn_move:nth-child(2) > i {
			width: 32px;
		}
	#contact-modal .button.hollow > small {
		font-size: .85rem;
	}
	#contact-modal .button.hollow > small > br {
		display: none;
	}
}
@media screen and (max-width: 38.74em) {
	#contact-modal {
		padding: 0 16px 16px;
		max-width: 335px;
		border: none;
	}
	#contact-modal .button:not(:last-child) {
		margin-bottom: 10px;
	}
	#contact-modal .button.hollow {
		font-size: 14px;
	}
	#contact-modal .button > small {
		font-size: 11px;
	}
	#contact-modal .btn_move {
		display: flex;
		align-items: center;
		justify-content: center;
		height: 5rem;
		padding: 0;
	}
	.button > i {
		margin: auto;
		top: 0;
		left: 16px;
		bottom: 0;
		height: fit-content;
		width: 16px;
	}
	.button:nth-child(2) > i {
		width: 24px;
	}
}
/* edit 2024.6.12 modal_top.cssから移動　ここまで */

/* edit 2024.6.10 common.cssから移動 */

html{
	font-size: 100%;
	}
@media screen and (max-width: 38.74em) {
html{
	font-size: 75%;
	}
}
body{
	margin: 0;
	padding: 0;
	line-height: 1.6;
	color: #4e4644;
	font-family: "Noto Sans JP", sans-serif;
	}
img{
	max-width: 100%;
	}
ul{
	list-style:none;
	}
a{
	text-decoration: underline;
	color: #4e4644;
	}
a:hover{
	text-decoration: none;
	}
a * {
	pointer-events: none;
}

#page{
	margin-bottom: 90px;
}
#contents{
	}
.wrap{
	width: 100%;
	max-width: 980px;
	margin:0 auto;
	}
@media screen and (max-width: 38.74em) {
.wrap{
	width: auto;
	padding:0 1rem;
	}
}

/* block
-------------------------------- */
.block-2,
.block-3,
.block-4 {
	display: flex;
	flex-wrap: wrap;
	max-width: 980px;
	margin:0 auto;
	}
.block-2 > .col,
.block-3 > .col,
.block-4 > .col {
	box-sizing: border-box;
	}
.block-2 > .col{
	width: 50%;
	}
.block-3 > .col{
	width: 33.3%;
	}
.block-4 > .col{
	width: 25%;
	}
@media screen and (max-width: 38.74em) {
.block-3 > .col{
	width: 100%;
	}
.block-4 > .col{
	width: 50%;
	}
}

@media screen and (min-width: 38.74em) {
.pcnone{
	display: none !important;
	}
}
@media screen and (max-width: 38.74em) {
.spnone{
	display: none !important;
	}
}


/* 文字設定
-------------------------------- */
.text-center{
	text-align:center;
	}
.text-right{
	text-align: right;
	}
.text-left{
	text-align: left;
	}
.text-blue{
	color: #004ea2;
	}
.text-red{
	color: #de5f1d;
	}
.text-yellow{
	color: #ffe100;
	}
.text-large{
	font-size: 150%;
	}
.text-note{
	margin: .5rem 0 0;
	line-height: 1.2;
	font-size: 80%;
	}
	.text-note p{
		margin: .4rem 0;
		}
	.text-note p:first-child{
		font-size: 21px;
		font-weight: bold;
		}
ul.text-note{
	padding-left: 0;
	}
	ul.text-note > li{
		padding-left: 1em;
		text-indent: -1em;
		}
.text-center{
	text-align: center;
	}
.link_arrow:before{
	margin-right: .2em;
	color: #798b90;
	font-size: 1em;
	font-family: "Font Awesome 5 Free";
	content: "\f105";
	font-weight: bold;
	}

.list-disc{
	padding-left: 0;
	}
	.list-disc li{
		padding-left: 1em;
		text-indent: -1em;
		}
		.list-disc li::before{
			display: inline-block;
			width: .6em;
			height: .6em;
			margin-right: .6em;
			border-radius: 50%;
			background: #ccc;
			content: '';
			}
table{
	width: 100%;
	border-collapse: collapse;
	}
table > caption{
	background: #333;
	text-align: left;
	padding: .2em 1em;
	color: #fff;
	}
table th,
table td{
	padding: .5em 1em;
	border:1px solid #ccc;
	text-align: left;
	}
table th{
	font-weight: normal;
	background: #fef6e8;
	}
table th ul{
	margin: 0;
	}
@media screen and (max-width: 38.74em) {
table th,
table td{
	font-size: 12px;
	}
.table-scroll{
	overflow-x: scroll;
	}
.table-scroll table{
	min-width: 600px;
	}
}

/* ボタン
-------------------------------- */
.button{
	display: block;
	position: relative;
	padding: 1em 1em 1em 0;
	text-decoration: none;
	font-weight: bold;
	text-align: center;
	font-size: 1.5rem;
	line-height: 1.4;
	border-radius: 6px;
	cursor: pointer;
	border:none;
	color: #fff;
	background-color: #666;
	box-shadow: 0px 4px 10px 0px rgba(7, 4, 4, 0.2);
	}
.button:hover{
	transition: background-color .2s;
	background-color: #858585;
	}
.button.hollow,
.button.small{
	padding: .6em 1em .6em 0;
	line-height: 1.2;
	}
	.button:not(.small)::after{
		position: absolute;
		top: 50%;
		right: 1.4rem;
		margin-top: -1.2rem;
		font-size: 2rem;
		font-family: "Font Awesome 5 Free";
		content: "\f105";
		font-weight: bold;
		}
	.button > i{
		float: left;
		margin-top: .3rem;
		padding-left: 2rem;
		font-size: 180%;
		}
	.button.small{
		font-size: 1rem;
		}
	.button.small > i{
		margin-top: -.1rem;
		padding-left: 1rem;
		font-size: 130%;
		}
	.button > small{
		display: block;
		font-size: 1rem;
		font-weight: normal;
		}
	.button > i,
	.button > small{
		pointer-events: none;
		}
/* ボタンの色設定 */
.button.alert{
	background-color: rgb(51, 51, 51);
	}
.button.alert:hover{
	background-color: rgba(51, 51, 51, .8);
	}
.button.success{
	color: #333;
	background-color: rgb(254, 238, 80);
	}
.button.success:hover{
	background-color: rgba(254, 238, 80, .6);
	}
.button.hollow{
	background-color: #fff;
	color: #de5f1d;
	}
.button.hollow:hover {
	background-color: #fef6e8;
}

#contact-modal .button i {
	position: absolute;
	top: 0;
	left: 25px;
	bottom: 0;
	margin: auto;
	width: 1.5rem;
	height: 2.75rem;
}
#contact-modal .button i img {
	display: block;
}
#contact-modal .button:nth-child(1) i {
	left: 22.5px;
	width: 2rem;
	height: 2rem;
}
.modal_button_text * {
	display: block;
}
.modal_button_text small {
	font-size: .8em;
}


@media screen and (max-width: 38.74em) {
.button{
	padding: 1.25rem 0;
	font-size: 1.4rem;
	border-radius: 4px;
	box-shadow: 0px 2px 4px 0px rgba(7, 4, 4, 0.2);
	}
.button.hollow,
.button.small{
	padding: .4em 0;
	}
	.button > i,
	.button.small > i{
		position:absolute;
		top: 50%;
		left: .8rem;
		margin-top: -1rem;
		padding-left: 0;
		font-size: 150%;
		}
	.button.small{
		font-size: .9rem;
		font-weight: normal;
		}
	.button:not(.small)::after{
		right: .5rem;
		margin-top: -.8rem;
		font-size: 1.5rem;
		}
.button.hollow{
	border-width: 1px;
	}
}


/* header
-------------------------------- */
#header{
	position: -webkit-sticky; /* safari対応 */
	position: sticky;
	top:0;
	left:0;
	width: 100%;
	padding: 20px 0;
	z-index: 4;
	background: #fff;
	box-shadow: 0px 0px 7px 0px rgba(17, 27, 43, 0.32);
}
.code{
	position: relative;
	z-index: 3;
	margin: 0;
	padding: .01rem 0;
	background: #f5f5f5;
	font-size: .625rem;
	line-height: 1.2;
	}
#header .logo{
	display: flex;
	align-items: center;
	font-size: .75rem;
}
	#header .logo-wrap {
		width: auto;
		height: 30px;
		}
	#header .logo-wrap img {
		display: block;
		width: auto;
		height: 100%;
	}
#header ul{
	float:right;
	margin: 0;
	padding: 0;
	text-align: right;
	}
	#header ul > li{
		display: inline-block;
		margin: 0 0 0 2px;
		}
@media screen and (min-width: 38.74em) {
	#header .logo > span{
		padding-left: 1em;
	}
	#header .nav > li{
		width: 11.25em;
	}
	#header .button > br{
		display: none;
	}
}
@media screen and (max-width: 38.74em) {
	#header {
		padding: 10px 0;
	}
	#header .logo {
		flex-direction: column;
		align-items: flex-start;
	}
	#header .logo-wrap {
		height: 25px;
	}
	#header .logo.east img{
		max-width: 100%;
	}
	#header .logo.west img{
		max-width: 80px;
	}
	#header .logo > span {
		padding-top: .2rem;
	}
	#header .nav > li{
		width: 6em;
	}
	#header .nav .button > i{
		left: 50%;
		margin-top: -1em;
		margin-left: -.5em;
	}
	#header .nav .button{
		padding-top: .5rem;
	}
}

/* footer
-------------------------------- */
#footer{
	/* padding-top: 1rem; */
	text-align:center;
	}
#footer .button{
	margin:0 0 1rem;
	padding: 1rem 0;
	}
	#footer .privacy{
		padding: 1.5em 0;
		background: #f5f5f5;
		}
	#footer .privacy > a{
		display: inline-block;
		color: #4D4D4D;
		line-height: 1;
		padding: 0 1rem;
		text-decoration: none;
		}
.copyright{
	margin: 0;
	color: #fff;
	background: #333;
	}
@media screen and (min-width: 38.74em) {
#footer .button{
	max-width: 500px;
	margin: 0 auto 2.5rem;
	padding: 1.5rem 0;
	}
.copyright{
	font-size: .75rem;
	padding: .8rem 0;
	}
}

/* 見出し */
.ttl-h2{
	width: 100%;
	max-width: 980px;
	margin: 0 auto 20px;
	padding: .2em 0;
	font-size: 1.875rem;
	text-align: center;
	background: #e6eaed;
	background-image: -moz-linear-gradient( 90deg, rgb(225,228,232) 0%, rgb(233,236,238) 39%, rgb(240,243,244) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(225,228,232) 0%, rgb(233,236,238) 39%, rgb(240,243,244) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(225,228,232) 0%, rgb(233,236,238) 39%, rgb(240,243,244) 100%);
	}
.ttl-h3{
	margin: 0;
	padding: .6em 0;
	font-size: 1.6rem;
	color: #fff;
	text-align: center;
	background: #333;
	}
@media screen and (max-width: 38.74em) {
.ttl-h2{
	margin: 0;
	padding: .6em 0;
	font-size: 1.6rem;
	}
.ttl-h3{
	padding: 8px 0;
	font-size: 1.3rem;
	}
}
@media screen and (min-width: 38.74em) {
#contents section{
	margin-bottom: 40px;
}
}
.label{
	padding: .1em .5em;
	border-radius: 2px;
	font-size: 10px;
	color: #fff;
	vertical-align: 2px;
	font-weight: normal;
	background: #eb5405;
	}
@media screen and (min-width: 38.74em) {
.label{
	font-size: 14px;
	}
}


/* コンテンツエリア
-------------------------------- */
/* KV */
.kv{
	margin: 0 !important;
	padding: 0;
	}
.kv > h1 {
	margin: 0;
	padding: 0;
	font-size: 1rem;
	line-height: 0;
	text-align: center;
	background: #de5f1d;
}
.kv > h1 img {
	max-width: 1100px;
	width: 100%;
}
.attention{
	margin: 1rem 0 2rem;
	text-align: center;
	}
	.attention > p{
		display: inline-block;
		margin: 0;
		border-bottom:2px solid #de5f1d;
		}
		.attention > p > span{
			margin-right: 1rem;
			font-size: 1.125rem;
			}
@media screen and (max-width: 38.74em) {
	.kv > h1 img {
		max-width: 100%;
	}
.attention{
	margin: 1rem;
	}
	.attention > p{
		border:none
		}
		.attention > p > span{
			display: block;
			}
}

/* conversion */
.conversion{
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	background: #f5f5f5;
	color: #fff;
	}
	.conversion > h2{
		margin: 0;
		padding: 1rem 0;
		font-size: 1.625rem;
		text-align: center;
		background: #333;
		}
	.conversion .button{
		margin-top: .5em;
		}
	.conversion .button.hollow{
		font-size: 1rem;
		}
	.conversion .button.faq{
		padding: 1rem 0;
		font-size: 1.2rem;
		}
.conversion-note {
	padding: 2rem 1rem 1rem;
	font-size: 1.2375rem;
	color: #4E4644;
	text-align: center;
	background-color: #fff;
}
.conversion-note h3 {
	margin: 0 0 .25rem;
	font-size: 1em;
}
.conversion-note p {
	margin: 0;
	font-size: .95em;
}
@media screen and (min-width: 38.74em) {
	.conversion > .wrap{
		width: auto;
		margin: 0 20px 20px;
		padding: 35px;
		text-align: center;
		}
	.conversion .button.hollow > br{
		display: none;
		}
	.conversion .button.alert,
	.conversion .button.success:not(.faq){
		display: inline-block;
		width: calc(50% - 37px);
		}
	.conversion .button{
		margin: 10px 5px;
		}
.conversion + .text-note{
	margin: -30px auto 1.5rem;
	text-align: right;
	max-width: 980px;
	}
}
@media screen and (max-width: 38.74em) {
.conversion{
	/*
	margin-top: 1rem;
	*/
	}
	.conversion > .wrap{
		margin: 0 1rem 1rem;
		padding-top: .5rem;
		padding-bottom: 1.5rem ;
		}
	.conversion .col{
		padding:0 2px;
		}
	.conversion .button.hollow{
		display: table-cell;
		width: 100vw;
		height: 3em;
		padding: .5em 1em .5em 0;
		vertical-align: middle;
		font-size: .85rem;
		}
.conversion + .text-note{
	margin: 1em;
	}
}

#reason .col{
	background: #fef6e8;
	}
@media screen and (min-width: 38.74em) {
#reason .col:not(:first-child){
	border-left: 20px solid #fff;
	}
}
@media screen and (max-width: 38.74em) {
	#reason .col:nth-child(-n+2){
		border-bottom:1px solid #cfe3e8;
		}
	#reason .col:nth-child(even){
		border-left:1px solid #cfe3e8;
		}
}
	#reason h3,
	#reason .pic{
		margin: 0;
		text-align: center;
		}
	#reason h3{
		display: table-cell;
		width: 100vw;
		height:4em;
		line-height: 1.2;
		vertical-align: middle;
		}
@media screen and (min-width: 38.74em) {
#reason .col{
	padding: 1rem 0;
	}
	#reason h3{
		font-size: 1.375rem;
		}
	#reason .pic > img{
		max-height:100px;
		}
	#reason .txt{
		margin:1em;
		}
}
@media screen and (max-width: 38.74em) {
	#reason .pic > img{
		max-height:67px;
		}
	#reason .txt{
		margin:0 1em 1rem;
		}
}
#feature{
	position: relative;
	padding-bottom: 1rem;
	background: #fff;
	z-index: 1;
	}
@media screen and (min-width: 38.74em) {
#feature{
	padding-bottom: 90px;
	margin-bottom: 0 !important;
	}
}
	#feature .block-2,
	#feature .block-3{
		counter-reset: num;
		}
	#feature h3,
	#feature p{
		margin: 0;
		}
	#feature h3{
		position: relative;
		margin: 0;
		padding-top: 0rem;
		padding-bottom: .5rem;
		font-weight:bold;
		font-size: 1.3rem;
		line-height: 1.2;
		}
		#feature h3::before{
			position: absolute;
			width: 5rem;
			top: 0;
			padding: .5em 0;
			background: #de5f1d;
			border-radius: 3px;
			color: #fff;
			text-align: center;
			counter-increment:num;
			content: "POINT " counter(num);
			}
		#feature h3::after{
			position: absolute;
			font-family: "Font Awesome 5 Free";
			line-height: 1;
			font-weight: normal;
			color: #de5f1d;
			content: "\f0a4";
			}
@media screen and (min-width: 38.74em) {
	#feature .block-2,
	#feature .block-3{
		margin-top: 2rem;
		}
	#feature .block-2 .col,
	#feature .block-3 .col{
		padding-right: 1rem;
		}
	#feature .block-2 .col:not(:first-child),
	#feature .block-3 .col:not(:first-child){
		padding-left: 1rem;
		border-left: 1px solid #dcdcdc;
		}
	#feature h3{
		min-height: 2.5em;
		padding-left: 7.5rem;
		}
		#feature h3::before{
			left: 0;
			font-size: .875rem;
			}
		#feature h3::after{
			top: 0;
			left: 5rem;
			font-size: 130%;
			}
		#feature h3 br{
			display: none;
			}
}
@media screen and (max-width: 38.74em) {
	#feature .block-2 .col{
		width: 100%;
		}
	#feature .block-2 .col:not(:first-child),
	#feature .block-3 .col:not(:first-child){
		margin-top: .5rem;
		border-top: 1px solid #dcdcdc;
		}
	#feature .col{
		padding-top: 1rem;
		}
	#feature h3{
		padding-left: 9rem;
		}
		#feature h3::before{
			left: 1rem;
			font-size: 1rem;
			}
		#feature h3::after{
			top: 0;
			left: 6rem;
			font-size: 160%;
			}
	#feature p{
		padding-left: 9rem;
		}
}

#feature .accordion{
	position: relative;
	cursor: pointer;
	}
#feature .accordion::after{
	position:absolute;
	top: -.2em;
	right: 1rem;
	font-size: 160%;
	color: #004ea2;
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	font-weight: bold;
	}
#feature .accordion.active::after{
	content: "\f106";
	}
#feature .accordion-inside{
	display: none;
	}
@media screen and (max-width: 38.74em) {
#feature .accordion{
	margin-top: 1rem;
	}
#feature .accordion::after{
	right: .5rem;
	top: 1rem;
	font-size: 1.5rem;
	}
}


#campaign{
	counter-reset: num;
	}
#campaign h2,
#campaign h3,
#campaign p{
	margin: 0;
	line-height: 1.2;
	}
	#campaign .col{
		position: relative;
		margin-bottom: 10px;
		counter-increment:num;
		}
	#campaign .label{
		display: table-cell;
		width: 100vw;
		font-weight: bold;
		vertical-align: middle;
		color: #333;
		background: #fff;
		}
		#campaign .label::before{
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			background: #de5f1d;
			color: #fff;
			content: "特典" '\A' counter(num);
			white-space: pre;
			}
	#campaign .label > .large{
		font-size: 120%;
		}
@media screen and (min-width: 38.74em) {
#campaign{
	padding-bottom: .5rem;
	background: url(/template/img/bg_yellow_repeat.png) repeat-y 50% 0;
	}
	#campaign > h2{
		position: relative;
		height: 65px;
		top: -30px;
		padding-top: 5px;
		font-size: 2.25rem;
		color: #fff;
		background: url(/template/img/bg_ribbon.png) no-repeat 50% 0;
		}
	#campaign > h2 + p{
		font-size: 1.5rem;
		}
	#campaign > h3{
		padding-bottom: .8em;
		font-size: 3rem;
		}
		#campaign > h3 > span{
			font-size: 4rem;
			}
		#campaign > h3 > br{
			display: none;
			}
	#campaign .block-3 .col:nth-child(-n+2),
	#campaign .block-4 .col:nth-child(-n+3),
	#campaign .point .col:nth-child(odd){
		border-right: 10px solid transparent;
		}
	#campaign .label{
		height: 66px;
		padding-left: 70px;
		font-size: 1.125rem;
		}
		#campaign .label::before{
			width: 70px;
			height: 55px;
			padding-top: 15px;
			}
	#campaign .wrap{
		max-width: 900px;
		margin-bottom: 30px;
		}
}
@media screen and (max-width: 38.74em) {
#campaign{
	/* padding-bottom: .5rem; */
	padding-bottom: 1px;
	background: url(/template/img/bg_yellow.png) repeat-y 50% 15px;
	background-size: 100% auto;
	}
	#campaign > h2{
		position: relative;
		top: -15px;
		height: 35px;
		margin-bottom: -15px;
		padding-top: 0;
		font-size: 1.5rem;
		color: #fff;
		background: url(/template/img/bg_ribbon.png) no-repeat 50% 0;
		background-size: auto 35px;
		}
	#campaign > h3{
		padding-bottom: .3em;
		font-size: 2rem;
		}
		#campaign > h3 > span{
			font-size: 2.5rem;
			}
	#campaign .block-4 .col:nth-child(odd){
		border-right: 10px solid transparent;
		}
	#campaign .label{
		height: 45px;
		padding-left: 45px;
		}
		#campaign .label::before{
			width: 45px;
			height: 37px;
			padding-top: 8px;
			}
}
#campaign .arrow{
	height: 55px;
	line-height: 40px;
	background: url(/template/img/ico_arrow.png) no-repeat 50% 0;
	background-size: auto 100%;
	font-weight: bold;
	}
.bnr-campaign{
	padding-bottom: .5rem;
	background: #fff;
	font-size: 1.1rem;
	font-weight: bold;
	}
	.bnr-campaign .catch{
		margin-bottom: .5rem;
		background: #de5f1d;
		font-size: 1.5rem;
		color: #fff;
		}
	.bnr-campaign .price{
		display: flex;
		justify-content: center;
		line-height: 1;
		}
		.bnr-campaign .price > span:first-child{
			width: 1em;
			padding: 1.4rem .2rem 0 0;
			}
		.bnr-campaign .price > span:last-child{
			font-size: 2.2rem;
			}
		.bnr-campaign .price .large{
			font-size: 180%;
			font-family: arial;
			}
	.bnr-campaign .price + div{
		font-size: 140%;
		}

#price{
	max-width: 980px;
	margin: 0 auto;

	margin-top: -65px;
	padding-top: 65px;

	padding-bottom: 1rem;
	background: #fffdda;
	}
	#price .col{
		position: relative;
		text-align: center;
		background: #fff;
		}
	#price h4{
		margin: 0;
		background: #ffdf01;
		}
		#price h4 > i{
			display: inline-block;
			position: absolute;
			left: 50%;
			border-radius: 50%;
			background: #fff;
			text-align: center;
			font-size: 200%;
			}
		#price h4 > .large{
			font-size: 120%;
			}
	#price .col p{
		margin: 0;
		line-height: 1;
		}
	#price .col em{
		margin-right: .2rem;
		font-size: 200%;
		font-weight: bold;
		}
	#price .text-note{
		text-align: left;
		margin: 1rem 1rem 0;
		}
.price-detail{
	background: #fff;
	box-shadow: 1px 1.5px 3px 0px rgba(7, 4, 4, 0.3);
	border-radius: 4px;
	}
	.price-detail .trigger{
		padding: .5rem 0 !important;
		line-height: 1.5;
		border: none !important;
		}
	#price .price-detail .col{
		margin-top: 1.5rem;
		}
	.price-detail .bg{
		background: #ededed;
		}
	#price .price-detail .col:first-child .bg{
		padding: 1.5em 0;
		}
@media screen and (min-width: 38.74em) {
#price .block-2{
	max-width: 620px;
	}
	#price .col{
		width: calc(50% - 20px);
		margin: 70px 10px 0 10px;
		border:4px solid #ffdf01;
		}
	#price h4{
		font-size: 1.5rem;
		padding: 60px 0 10px;		
		}
		#price h4 > i{
			width: 94px;
			height: 94px;
			top: -47px;
			margin-left: -47px;
			line-height: 94px;
			border:4px solid #ffdf01;
			}
	#price .col p{
		padding: 1rem 0;
		font-size: 1.5rem;
		}
	#price .text-note{
		max-width: 600px;
		margin: 1rem auto;
		}
.price-detail{
	max-width: 800px;
	margin: 1rem auto;
	}
	#price .price-detail .bg{
		font-size: 1rem;
		}
}
@media screen and (max-width: 38.74em) {
#price{
	padding-bottom: 2rem;
	}
	#price .col{
		width: calc(50% - 16px);
		margin: 45px 0 0 10px;
		border:2px solid #ffdf01;
		border-radius: 4px;
		}
	#price h4{
		padding: 30px 0 10px;		
		}
		#price h4 > i{
			width: 44px;
			height: 44px;
			top: -22px;
			margin-left: -22px;
			line-height: 44px;
			border:2px solid #ffdf01;
			}
	#price .col p{
		padding: .5rem 0;
		font-size: 120%;
		}
.price-detail{
	margin: 1rem;
	}
	#price .price-detail .bg{
		font-size: .9rem;
		}
}
#flow{
	padding-bottom: 1rem;
	}
	#flow dl{
		position: relative;
		}
	#flow dt,
	#flow dd{
		margin: 0;
		padding: 0;
		}
	#flow .label{
		display: block;
		position: absolute;
		top: 5px;
		left: 0;
		line-height: 1;
		text-align: center;
		font-weight: bold;
		color: #fff;
		background: #de5f1d;
		}
		#flow .label > span{
			display: block;
			position: relative;
			z-index: 1;
			}
		#flow .label::after{
			display: block;
			position: absolute;
			width: 0;
			height: 0;
			left: 0;
			border-style: solid;
			border-color: #de5f1d transparent transparent transparent;
			content: '';
			}
	#flow .text{
		font-weight: bold;
		color: #de5f1d;
		}
@media screen and (min-width: 38.74em) {
	#flow .label{
		width: 145px;
		height: 50px;
		padding-top: 15px;
		font-size: 150%;
		}
		#flow .label::after{
			top: 65px;
			border-width: 26px 72px 0 72px;
			}
	#flow dl{
		margin-left: 40px;
		margin-bottom: 70px;
		padding-left: 160px;
		}
	#flow .text{
		font-size: 150%;
		}
#flow .text-note{
	margin-left: 40px;
	}
}
@media screen and (max-width: 38.74em) {
	#flow .label{
		width: 70px;
		height: 25px;
		padding-top: 5px;
		}
		#flow .label::after{
			top: 30px;
			border-width: 16px 35px 0 35px;
			}
	#flow dl{
		padding-left: 80px;
		}
	#flow .text{
		font-size: 120%;
		}
}

#faq{
	padding: 0 0 .5rem;
	}
@media screen and (max-width: 38.74em) {
#faq{
	margin: 0 0 10px 0;
	background: #fef6e8;
	}
}
@media screen and (min-width: 38.74em) {
#faq{
	margin: 0 0 30px 0 !important;
	}
#faq .wrap{
	padding: 40px 0 20px;
	background: #fef6e8;
	}
.acMenu{
	margin:0 40px;
	}
}
/* アコーディオン */
.duration {
	-webkit-transition: 1s;
	-moz-transition: 1s;
	-ms-transition: 1s;
	-o-transition: 1s;
	transition: 1s;
}
.acMenu{
	background: #fff;
	border-radius: 3px;
	box-shadow: 0px 2px 4px 0px rgba(7, 4, 4, 0.06);
	}
.acMenu dt,
.acMenu dd {
	position:relative;
	margin:0;
	}
.acMenu dt {
	cursor:pointer;
	font-size: 1.167rem;
}
.acMenu dd {
	display: none;
	margin-top: .5rem;
	}
.acMenu dt:before,
.acMenu dd:before {
	display: block;
	position:absolute;
	top: .3rem;
	text-indent:0;
	text-align: center;
	color: #fff;
	}
.acMenu dt:before {
	background: #de5f1d;
	content:'Q';
}
.acMenu dd:before {
	background: #abb7c4;
	content:'A';
}
.acMenu dt:after{
	position:absolute;
	color: #de5f1d;
	font-size: 1rem;
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	font-weight: bold;
	}
.acMenu dt.active:after{
	content: "\f106";
	}
.acMenu .conversion{
	padding-bottom: .5rem;
	background: transparent;
	}
.acMenu .button{
	font-size: 1.2rem;
	}
@media screen and (max-width: 38.74em) {
.acMenu{
	padding: 5px 10px;
	}
.acMenu dt,
.acMenu dd {
	padding-left:30px;
	padding-right: 1rem;
	}
.acMenu dt:before,
.acMenu dd:before {
	width: 24px;
	height: 24px;
	left: 0;
	line-height: 22px;
	font-size: 14px;
	}
.acMenu dt:after{
	top: 0;
	right: 0;
	}
}
@media screen and (min-width: 38.75em) {
.acMenu{
	margin-bottom: 1rem;
	padding: 35px 70px 35px;
	}
.acMenu dt,
.acMenu dd {
	padding-left: 30px;
	}
.acMenu dt{
	padding-top: 5px;
	padding-bottom: 10px;
	font-size:20px;
	}
.acMenu dt:before,
.acMenu dd:before {
	width: 40px;
	height: 40px;
	left: -30px;
	line-height: 35px;
	font-size: 22px;
	}
.acMenu dt:after{
	top: 0;
	right: -30px;
	font-size: 160%;
	}
.acMenu .conversion{
	text-align: center;
	}
}

.trigger:not(.success){
	position: relative;
	margin: 1em;
	padding: .2rem 0;
	border: 1px solid #ccc;
	border-radius: 4px;
	text-align: center;
	cursor: pointer;
	}
.wrap .trigger{
	margin: 1em 0;
	}
.trigger > i{
	margin-right: .5em;
	color: #666;
	}
.trigger + div{
	display: none;
	padding-bottom: 1rem;
	}
.trigger::after{
	position: absolute;
	top: 50%;
	right: 1.4rem;
	margin-top: -1.2rem;
	font-size: 1.5rem;
	font-family: "Font Awesome 5 Free";
	content: "\f107";
	color: #de5f1d;
	font-weight: bold;
	}
.trigger.active::after{
	content: "\f106";
	}
.triger-inside{
	margin-bottom: 1rem;
	}
.trigger-wrap,
.campaign-note{
	border-radius: 2px;
	background: #fff;
	box-shadow: 1.147px 1.638px 4px 0px rgba(7, 4, 4, 0.28);
	}
.campaign-note{
	margin-top: 1rem;
	margin-bottom: 1rem;
	padding-top: .5rem;
	}
.trigger-wrap .trigger:not(.success){
	border: none;
	}
.trigger-wrap .trigger + div{
	margin-bottom: 1rem;
	text-align: left;
	}
.campaign-note p{
	padding-bottom: 1rem;
	text-align: left;
	}
@media screen and (min-width: 38.74em) {
.trigger-wrap .trigger + div,
.campaign-note p{
	box-sizing: border-box;
	padding: 0 1rem 1rem;
	}
.bnr-campaign > div:not(.catch){
	display: inline-block;
	}
}


/* form
-------------------------------- */
.area-form {
	margin: 0;
	padding-bottom: 1px;
	background: #fef6e8;
}
.area-form h2 {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 0 12px;
	padding: 1rem 0;
	font-size: 18px;
	color: #595757;
	text-align: center;
	font-weight: bold;
	background: #efcf4f;
}
.area-form h2::after {
	position: absolute;
	display: block;
	bottom: -8px;
	left: 50%;
	margin-left: -10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 10px 0 10px;
	border-color: #efcf4f transparent transparent transparent;
	content: '';
}
.area-form h2 i {
	margin-right: 12px;
}
.area-form h2 i img {
	display: block;
}
#sfm-form .button {
	width: 100%;
	margin: 1rem auto;
	padding: 1.1em 0 1.1em 1.8em;
	background-image: url(/template/img/ico_area.png);
	background-repeat: no-repeat;
	background-position: 20px 15px;
	background-size: 33px 32px;
	font-size: 18px;
}
#sfm-form .button[disabled]{
	padding-left: 0;
	background: #E0E0E0;
	cursor: auto;
	box-shadow: none;
	}
input:focus,
select:focus,
textarea:focus {
	outline: none;
}
select,
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"] {
	border:none;
	border-radius:4px;
	background: #fff;
	border:1px solid #AFAFAF;
	font-size: 16px;
}
select,
input[type="text"],
input[type="tel"],
input[type="number"],
input[type="email"] {
	width: calc(100% - 1.2em);
	padding: .5em;
}
select{
	width: 100%;
	height: 2.5em;
	font-size: 16px;
	text-indent: 5px;
	border-radius: 6px;
	border: 1px solid #AFAFAF;
	}
.ERR {
	color:#f00;
	margin: .5rem 0 0;
	}
.required-focus{
	background: #fce2e2 !important;
	border-color: #E75B5B !important;
	}
.any,
.required{
	padding: .1em .5em;
	font-size: 10px;
	color: #fff;
	vertical-align: middle;
	font-weight: normal;
	}
.any{
	background: #666666;
	}
.required{
	background: #de5f1d;
	}
.area-form table{
	width: 100%;
	border-collapse: collapse;
	}
.area-form th,
.area-form td{
	display: block;
	}
.area-form th{
	padding: 5px 10px;
	background: #f5f5f5;
	text-align: left;
	font-size: 14px;
	}
.area-form td {
	padding: 10px;
	background: #fff;
	}

/* 現在地表示 その2 */
.flow-list-2 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 20px;
	padding-right: 10px;
	font-weight: bold;
}
.flow-list-2 p {
	margin: 0;
	font-size: 16px;
}
.flow-list-2 ol {
	height: 36px;
	font-size: 12px;
	line-height: 36px;
	margin: 0 0 0 15px;
	padding: 0;
}
		.flow-list-2 li{
			display: inline-block;
			position:relative;
			padding-left: 0;
			padding-right: 5px;
			box-sizing: content-box;
			margin-left: -3px;
			text-indent:10px;
			background: #f5f5f5;
			}
		.flow-list-2 ol li:not(:first-child){
			padding-left: 5px;
			}
		.flow-list-2 li.active{
			background: #de5f1d;
			color: #fff;
			border-right:none;
			}
		.flow-list-2 li:nth-child(1){
			z-index: 3;
			}
		.flow-list-2 li:nth-child(2){
			z-index: 2;
			}
		.flow-list-2 li:nth-child(3){
			z-index: 1;
			}
			.flow-list-2 li::before{
				margin-right: .2rem;
				}
			.flow-list-2 li:nth-child(1)::before{content:'1.';}
			.flow-list-2 li:nth-child(2)::before{content:'2.';}
			.flow-list-2 li:nth-child(3)::before{content:'3.';}
			.flow-list-2 li::after{
				position:absolute;
				width: 0;
				height: 0;
				top:0;
				right: -10px;
				border-style: solid;
				border-width: 18px 0 18px 10px;
				border-color: transparent transparent transparent #f5f5f5;
				content:'';
				}
			.flow-list-2 li.active::after{
				border-color: transparent transparent transparent #de5f1d;
				}
@media screen and (min-width: 38.74em) {
.area-form{
	}
	.area-form h2{
		font-size: 32px;
		}
.area-form table {
	width: calc(100% - 60px);
	margin: 30px auto 0;
	}
	.area-form th,
	.area-form td {
		display: table-cell;
		width: auto;
		padding: 10px 20px;
		border-bottom: 1px solid #ccc;
		}
	.area-form th {
		width: 200px;
		font-size: 16px;
		}
	select,
	input[type="text"],
	input[type="tel"],
	input[type="number"],
	input[type="email"] {
		padding: 0 .8em;
		width: 100%;
		height: 52px;
		box-sizing: border-box;
	}
	#sfm-form .button {
		max-width: 320px;
		margin: 1rem auto 3rem;
		padding-left: 40px;
		background-position: 60px 18px;
	}
}

@media screen and (max-width: 640px) {
	table{
		width: 100% !important;
		border-bottom: 1px solid #ccc;
	}
	.triger-inside th,
	.triger-inside td {
		display: block;
		width: auto !important;
		border: 1px solid #ccc;
		border-bottom: none;
	}
}

#price .col p span {
	margin-top: 5px;
	display: inline-block;
}

em.text-red.tax-in {
	font-size: 100% !important
}
.form-discription {
	color: #de5f1d;
	font-weight: bold;
	text-align: center;
}
@media screen and (min-width: 38.74em){
	p.form-discription {
		font-size: 24px;
		}
}
@media screen and (max-width: 38.74em){
	p.form-discription {
		font-size: 14px;
	}
}

.hover_list {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
	padding: 20px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #fff;
	box-shadow: 0px -5px 9px 1px rgba(7, 4, 4, 0.2);
	z-index: 3;
}
.hover_list li {
	max-width: 183px;
	width: 100%;
}
.hover_list li:not(:last-child) {
	margin-right: 13px;
}
.hover_list a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 11px 0;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	font-family: 'Noto Sans JP', sans-serif;
	max-height: 44.4px;
	box-sizing: border-box;
}
.hover_list_area {
	border: solid 3px #de5f1d;
	color: #db5e29;
	background-color: #fff;
}
.hover_list_area i {
	margin-right: 8px;
	max-width: 16px;
}
.hover_list_tel {
	background-image: linear-gradient(to top, #717476, #9c9fa2);
	color: #fff;
}
.hover_list_tel i {
	margin-right: 8px;
	max-width: 16px;
}
.hover_list_form {
	position: relative;
	color: #fff;
	background-image: linear-gradient(to top, #db5e29, #ec9a44);
}
.hover_list_form p {
	position: absolute;
	top: -16px;
	left: 0;
	right: 0;
	margin: auto;
	max-width: 169px;
	font-size: 11px;
	border-radius: 12px;
	border: solid 2px #db5e29;
	background-color: #fdef8c;
	text-align: center;
	color: #333;
	font-weight: 500;
}
.hover_list_form p::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	display: block;
	margin: auto;
	width: 9.2px;
	height: 10px;
	z-index: 2;
	background-image: url(../img/fukidasi.png);
	background-size: contain;
	background-repeat: no-repeat;
}
.hover_list_form p b {
	color: #db5e29;
	font-weight: 500;
}
.hover_list_form i {
	margin-right: 8px;
	max-width: 16px;
}

@media screen and (max-width: 38.74em) {
	.hover_list {
		padding: 0;
		background-color: transparent;
	}
	.hover_list li {
		max-width: unset;
	}
	.hover_list li:not(:last-child) {
		margin-right: 0;
	}
	.hover_list a {
		flex-direction: column;
		font-size: calc(18 / 620 * 100vw);
		border-radius: 0;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		-ms-border-radius: 0;
		-o-border-radius: 0;
		max-height: unset;
		box-sizing: border-box;
	}
		.hover_list a.hover_list_area {
		padding: 7px 0;
		box-sizing: border-box;
	}
	.hover_list_area i,
	.hover_list_tel i,
	.hover_list_form i {
		width: 25px;
	}
	.hover_list_form p {
		font-size: calc(14 / 620 * 100vw);
	}
}

/* load */
.load {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	padding: 1.25rem 1rem 1rem;
	max-width: 500px;
	height: fit-content;
	color: #fff;
	text-align: center;
	border-radius: .5rem;
	background-color: #f07b02;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
	font-family: 'Noto Sans JP', sans-serif;
	z-index: 10;
}

.load_head {
	margin: 0 0 1.25rem;
	font-size: 1.75rem;
}

.load_wrap {
	padding: 1.25rem 1rem 1rem;
	color: #333;
	border-radius: 6px;
	background-color: #fff;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	-ms-border-radius: 6px;
	-o-border-radius: 6px;
}

.load_p {
	margin: 0 0 1.25rem;
	font-size: 18px;
	font-weight: bold;
}

.load_list {
	margin: 0;
	padding: 0;
}

.load_list li {
	position: relative;
	border-radius: .5rem;
	overflow: hidden;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}

.load_list li:not(:last-child) {
	margin-bottom: 1rem;
}

.load_list li a {
	display: block;
	padding: 1.5rem;
	font-size: 1.5rem;
	font-weight: bold;
	text-decoration: none;
	background-color: #feee50;
}
.load_list li a * {
	pointer-events: none;
}

.load_list li .load_list_arrow {
	position: absolute;
	top: 0;
	right: 1rem;
	bottom: 0;
	margin: auto;
	max-width: 1rem;
	height: fit-content;
}

.load_list li .load_list_arrow img {
	display: block;
}

.load_close {
	position: absolute;
	top: 1rem;
	right: 1rem;
	max-width: 1.5rem;
	cursor: pointer;
}

@media screen and (max-width: 600px) {
	.load {
		margin: auto 1rem;
	}

	.load_close {
		max-width: 1.16666rem;
	}

	.load_head {
		font-size: 1.666667rem;
	}

	.load_p {
		font-size: 1.166667rem;
	}

	.load_list li a {
		padding: 1.25rem;
		font-size: 16px;
	}
}

/* edit 2024.6.10 area/sfm_form.htmlから移動 */

.family-price h2 {
	font-size: 15px;
}

.family-price p {
	font-size: 14px;
}

.family-price .lead {
	margin-bottom: 0;
	font-size: 20px;
	line-height: 1.2;
	font-weight: bold;
}

.family {
	padding: 10px 0;
	background: #fef6e8;
}

.family img {
	max-width: 148px;
	margin: 0 3px;
}

.family>p>img {
	max-width: 238px;
	margin: 0;
}


/* edit 2024.6.10 ここまで */


.conversion > .wrap {
	display: flex;
	justify-content: center;
}
.conversion .success {
	padding: 1rem 0;
	color: #fff;
	background-color: #db5e29;
	border-radius: 36px;
	-webkit-border-radius: 36px;
	-moz-border-radius: 36px;
	-ms-border-radius: 36px;
	-o-border-radius: 36px;
}
.conversion .success:hover {
	opacity: .8;
	background-color: #db5e29;
}
.cta_apply {
	display: flex!important;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
}
.cta_apply b {
	font-weight: 700;
}
.cta_apply span {
	font-size: .75em;
	transform: translateY(2px);
}
.cta_tel {
	font-size: 1.75rem;
}
.cta_tel p {
	margin: 0 0 4px;
	font-size: .42857143em;
}
.cta_tel_wrap {
	display: flex;
	align-items: center;
	justify-content: center;
}
.cta_tel_num {
	margin-right: 4px;
	line-height: 1;
	font-weight: 700;
}
.btn_reservation .cta_tel_num {
	font-size: 18px;
	font-weight: 900;
	font-family: arial;
}
.cta_tel_text_wrap {
	font-size: .35714286em;
	line-height: 1.2;
	text-align: left;
	font-weight: normal;
}
.cta_tel_text_wrap span {
	display: block;
}
.cta_tel_text_wrap i {
	display: block;
	font-style: normal;
}
.button:not(.small)::after {
	content: '';
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	display: block;
	margin: auto;
	font-size: 2rem;
	width: 9px;
	height: 13px;
	background-image: url(../img/arrow.png);
	background-size: contain;
}
#construction-modal {
	text-align: center;
}

@media screen and (max-width: 768px) {
	.conversion > .wrap {
		flex-direction: column;
	}
	.conversion .success {
		border-radius: 100px;
		-webkit-border-radius: 100px;
		-moz-border-radius: 100px;
		-ms-border-radius: 100px;
		-o-border-radius: 100px;
	}
	.cta_apply {
		font-size: 24px;
	}
	.cta_tel {
		font-size: 36px;
	}
	.conversion .cta_tel {
		margin-top: 14px;
	}
	.cta_tel p {
		font-size: .388889em;
	}
	.cta_tel_wrap {
		flex-direction: column;
	}
	.cta_tel_num {
		margin: 0 0 2px 0;
	}
	.cta_tel_text_wrap {
		display: flex;
		font-size: .3333333em;
	}
	.area-form h2 i {
		margin-right: 6px;
		max-width: 32px;
	}
}

.info-modal {
	padding: 0 0 32px;
	max-width: 630px;
	font-size: 46px;
	border: unset;
}
.info-modal .logo {
	margin: 0 0 12px;
	padding: 12px 0;
}
.info-modal .logo img {
	display: block;
	margin: auto;
	max-width: 230px;
	max-height: unset;
}
.info-modal .title {
	gap: 12px;
	text-align: left;
}
.info-modal .title_img {
	max-width: 100px;
}
.info-modal .title p {
	font-size: 23px;
}
.info-modal_tel_wrap {
	margin: 0 32px 20px;
	padding: 20px 10px;
	text-align: center;
	border-radius:8px;
	background-color: #EEE;
	-webkit-border-radius:8px;
	-moz-border-radius:8px;
	-ms-border-radius:8px;
	-o-border-radius:8px;
}
.info-modal_tel_wrap h4 {
	margin: 0 0 12px;
	font-size: .5em;
	font-weight: bold;
}
.info-modal_tel_flex {
	position: relative;
	margin: auto;
	width: fit-content;
}
.info-modal_tel_flex i {
	position: absolute;
	top: 3px;
	right: calc(100% + 8px);
	bottom: 0;
	margin: auto;
	width: fit-content;
	height: fit-content;
	font-size: .625em;
	color: #EA5304;
}
.info-modal_tel_flex a {
	display: block;
	margin: auto;
	width: fit-content;
	letter-spacing: -.0375128em;
	font-weight: 500;
	color: #EA5304;
	line-height: 1;
	font-family: Oswald;
	text-decoration: none;
}
.info-modal_tel_hour {
	display: block;
	margin-top: 8px;
	font-size: .375em;
}
.info-modal_apply {
	display: flex;
	gap: 16px;
	align-items: center;
	justify-content: center;
	margin: auto;
	padding: 16px;
	cursor: pointer;
	max-width: 400px;
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	background-color: #db5e29;
	border-radius: 36px;
	-webkit-border-radius: 36px;
	-moz-border-radius: 36px;
	-ms-border-radius: 36px;
	-o-border-radius: 36px;
	box-shadow: 0px 4px 10px 0px rgba(7, 4, 4, 0.2);
}
.info-modal_apply:hover {
	opacity: .9;
}
.info-modal_apply i {
	font-size: 28px;
}

@media screen and (max-width: 768px) {
	.info-modal {
		max-width: calc(100% - 32px);
		padding-bottom: 20px;
		font-size: 32px;
	}
	.info-modal .logo img {
		max-width: 150px;
	}
	.info-modal .title {
		gap: 0;
	}
	.info-modal .title_img {
		max-width: 80px;
	}
	.info-modal .title p {
		font-size: 16px;
	}
	.info-modal_tel_wrap {
		margin: 0 12px 20px;
	}
	.info-modal_apply {
		max-width: 320px;
		box-sizing: border-box;
	}
	.info-modal_apply:hover {
		opacity: unset;
	}
}