@charset "utf-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td ,button{border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
h1, h2, h3, h4, h5, h6 {
  line-height: 140% !important;
  font-weight: normal;
}
*{box-sizing: border-box;margin: 0;padding: 0;}
ol,ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
img{height: auto;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;position: relative;}
html {-webkit-text-size-adjust: 100%}
body{
	font-family:"メイリオ" , Meiryo, "Meiryo UI" , Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro"  , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-size: 16px;
	line-height: 170%;
	color:#10526c;
	-webkit-text-size-adjust:100%;
	background:#fef5d9;
	font-weight: normal;
	width: 100%;
	position: relative;
}
@font-face{ 
	font-family: 'm1';
	src: url('../font/m1-regular.woff2') format('woff'); 
	font-weight: normal;
	font-style: normal;
	display=swap
}
.web-font{font-family: 'm1';}
@font-face{ 
	font-family: 'm1-bold';
	src: url('../font/m1-bold.woff2') format('woff'); 
	font-weight: normal;
	font-style: normal;
	display=swap
}
.web-font{font-family: 'm1-bold';}


/* リンク設定
------------------------------------------------------------*/
a{
	margin:0;
	padding:0;
	text-decoration:none;
	outline:0;
	vertical-align:baseline;
	background:transparent;
	font-size:100%;
	color:#10526c;
}
a:hover, a:active{
	-webkit-transition:opacity 1s;
	-moz-transition:opacity 1s;
	-o-transition:opacity 1s; 
	outline: none;
	color:#ccc;
}
/* フォーム
------------------------------------------------------------*/
.button{
	position: relative;
	background:#ea546c;
	border-radius: 6px;
	border: none;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 8px 0 #9d9476;
	display: block;
	padding:0 15px;
	font-weight: normal !important;
	cursor: pointer;
	box-sizing: border-box;
}
.button:hover{
	top: -3px;
	box-shadow: 0 13px 0 #9d9476;
	text-decoration: none;
}
.button:active {
	top: 3px !important;
	box-shadow: none !important;
}
.sec-area .button{
	max-width: 1000px;
	width: 90%;
	height: 150px;
	border-radius: 75px;
	margin: 0 auto;
}
.button .arrow{
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 50px;
}


/* 共通レイアウト・フォント
------------------------------------------------------------*/
.wrapper{
	margin:0 auto;
	width:1140px;
}
.flex-area{
	display: flex;
	justify-content:space-between;
	align-items: center;
}
.flex-area-left{
	display: flex;
	justify-content:flex-start;
	align-items: center;
}
.flex-area-center{
	display: flex;
	justify-content:center;
	align-items: center;
}

.back-cream{background: #fef5d9;}
.back-yellow{background: #fcdc6f;}
.back-blue{background: #10526c;}
.back-l-blue{background: #badbf3;}
.back-white{background: #fff;}


h1, h2, h3, h4, h5, h6 {
  font-family: 'm1-bold';
}
h2{font-size: 24px;}
h2.title{
	font-size: 40px;
}
h3{font-size: 20px;}
h3.title{
	font-size: 30px;
}
ul{
	list-style-position: inside;
}
.text-center{text-align: center;}
.font24{font-size: 24px !important;line-height: 0.8em;}
.font30{font-size: 30px !important;line-height: 0.8em;}
.font36{font-size: 36px !important;line-height: 0.8em;}
.font40{font-size: 40px !important;line-height: 0.8em;}
.font50{font-size: 50px !important;line-height: 0.8em;}

br.br1024,br.br789,br.br589,br.br489,br.br389{display: none;}


/* ---       LPページ
----------------------------------------------------------------------*/
.lp-area-img{
	display: block;
	max-width: 1200px;
	width: 90%;
	height: auto;
	margin: 0 auto;
}
.has-button{
	padding-bottom: 50px;
}


/*     フッター  #footer
------------------------------------------------------------*/

#footer{
	color: #fff;
	padding-top: 50px;
	padding-left: 20px;
	padding-right: 20px;
}
#chart-top #footer{padding-bottom: 30px;}
#policy-page #footer,
#terms-page #footer{padding-bottom: 150px;}

#home #footer{padding: 0 0 100px;}
#footer a{color: #fff;}
.footer-nav li a {
	display: block;
	margin: 0 15px;
}



.footer-nav{
	list-style: none !important;
}
#footer-nav{padding: 5px 10px 30px;}
#footer-nav a{
	color: #fff;
	font-size: 1.2em;
	padding: 0 20px;
}
#footer-nav a:hover{
	text-decoration: underline!important;
}
#footer-sp-area-inner {
	position: fixed;
	margin: auto;
	left: 0;
	right: 0;
	width: 100%;
	text-align: center;
	bottom: 0;
	opacity: 1;
	z-index: 1000;
	align-items: stretch;
	justify-content:center;
	background: #fff;
	padding: 12px 0 20px;
	border-top: 10px solid #10526c;
}
#footer-sp-area .button{
	height: 80px;
	border-radius: 50px;
	width: 48%;
	max-width: 500px;
	padding: 0;
	margin: 0 1%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 24px;
	font-weight: bold !important;
}
#footer-sp-area .button.line-link{
	border:5px solid #03b84d;
	background: #fff;
	color: #03b84d;
}
#footer-sp-area .button .icon-flex{margin: 0 20px 0 0;}
#footer-sp-area .button .arrow{
	width: 30px;
	height: auto;
	right: 20px;
}


/* ポップアップ */
#popup-area-line{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
}
#popup-back-line{
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 0;
	opacity: 0;
	background:#03b84d;
}
#popup-inner-line{
	position: absolute;
	left: 5%;
	right: 5%;
	top: 5%;
	bottom: 5%;
	width: 90%;
	max-width: 100%;
	padding: 50px 20px;
	z-index: 2;
	border-radius: 6px ;
	background: #fef5d9;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #10526c;
	text-align: center;
}
#popup-inner-line .inner{
	overflow: scroll;
	width: 100%;
}
#popup-area-line.show ,#popup-area-line.show #popup-back-line{
	opacity: 1;
	visibility: visible;
}	
#popup-area-line h2{
	font-size: 24px;
	margin: 0 auto 5px;
	padding-top: 30px;
}
#popup-area-line h2 img{margin-right: 20px;}
.popup-button-area{
	position: relative;
	padding-bottom: 20px;
}
#popup-time{
	position: absolute;
	left: 0;
	right: 0;
	text-align: center;
	bottom: -1.2em;
	display: block;
}
#popup-time-line{padding: 0 0 10px 0;}
#popup-area-line .button{
	display: flex;
	justify-content: center;
	align-items: center;
}
#popup-area-line #go-line{
	max-width: 400px;
	width: 100%;
	color: #fff !important;
	background: #06c755;
	font-size: 24px;
	height: 80px;
	border-radius: 50px;
	margin: 0 auto 25px;

}
#popup-area-line #close-line{
	background: #ccc;
	color: #10526c
	font-size: 16px;
	height: 50px;
	border-radius: 25px;
	margin: 0 auto 10px;
	width: 200px;
}	

/* ---      診断ページ
----------------------------------------------------------------------*/
#chart-area{
	padding:50px 0 50px;
	/* margin-bottom: 80px; */
	position: relative;
}
#chart-area-title{margin: 10px auto 15px;}
#chart-area-title h2{
	margin: 0 auto 10px;
	padding: 0 0 0 20px;
}
#chart-area-inner{padding: 35px 50px 20px;}
#chart-first-title{
	padding: 45px 20px 35px;
	margin: 10px auto 40px;
	border: 5px solid #0f526c;
}
.chart-first-icon{margin-right: 10px;}
#mfp_hidden{display: none;}
#mfp_phase_stat{
	display: flex;
	justify-content:center;
	align-items: center;
	margin: 0 auto 50px;
}
.mfp_active_phase,.mfp_inactive_phase{
	width: 100px;
	height: 100px;
	font-size: 30px;
	text-align: center;
	border-radius: 100%;
	margin: 0 10px;
	position: relative;
	padding-top: 44px;
}
.mfp_active_phase:after{
	content: '';
	display: block;
	background: url(../images/icon-check.png) no-repeat center top;
	background-size: 100% 100%;
	width: 60px;
	height: 30px;
	position: absolute;
	top: -23px;
	left: 0;
	right: 0;
	margin: auto;
}
.mfp_active_phase:before,.mfp_inactive_phase:before{
	content: 'STEP';
	font-size: 16px;
	text-align: center;
	margin: auto;
	position: absolute;
	right: 0;
	left: 0;
	top: 20px;
}
#mfp_phase_4_label{
	padding-top: 0;
	line-height: 90px;
}
#mfp_phase_4_label:before{content: none;}
#mfp_phase_stat li.mfp_inactive_phase{
	background: #fff;
	color: #0f526c;
	border: 6px solid #fff;
}
#mfp_phase_stat li.mfp_active_phase{
	color: #fff;
	border: 6px solid #ffffff;
	background: #0f526c;
}
#mfp_phase_4_label{font-size: 18px;}
#mfp_phase_confirm_label{display: none;}
ul#mfp_phase_stat li:nth-child(10){display: none;}
.mailform dl{
	display: flex;
   justify-content:flex-start;
	align-items:flex-start;
	border-bottom: 5px solid #fff;
	padding: 30px 0 20px;
}
.mailform dl dt{
	width: 34%;
	font-size: 17px;
	font-family: 'm1-bold';
	text-align: left;
}
.mailform dl dt.flex-area{justify-content:flex-start;}
.mailform dl dt .big{
	font-size: 1.3em;
	line-height: 130%;
}
.mailform dl dt .icon-step{margin-right: 20px;}
.mailform dl dd{	
	flex: 2;-webkit-box-flex:2;-ms-flex:2;
	text-align: left;
}
.mailform .radio-dd{justify-content:flex-start;}
.mailform .radio-area{
	width: 10em;
	padding: 15px 0 10px;
}
.mailform textarea{
	width: 100% !important;
	min-height: 200px;
}
.mailform  .button-area{
	justify-content: center;
	margin: 50px auto 30px;
}
.mailform .mfp_next{
	position: relative;
	font-size: 26px;
	height: 60px;
	margin: 50px auto 30px;
	width: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #ea546c;
	color: #fff;
	border-radius: 30px;
	box-shadow: 0 7px 0 #9d9476;
	cursor: pointer;
}
.mailform button.mfp_element_submit{
	position: relative;
	background: #ea546c;
	color: #fff;
	border-radius: 60px;
	border: none;
	color: #fefaf4;
	height: 100px;
	-webkit-transition: none;
	transition: none;
	box-shadow: 0 7px 0 #9d9476;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: normal !important;
	font-size: 34px;
	text-decoration: none !important;
	cursor: pointer;
	width: 460px;
	display: block;
	margin: 30px auto 40px;
}
.mailform button.mfp_prev {
	position: relative;
	background: #ccc;
	box-shadow: 0 7px 0 #9d9476;
	margin: 0 auto 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 160px;
	height: 40px;
	border-radius: 30px;
}
.mailform .mfp_next:hover,
.mailform button.mfp_element_submit:hover,
.mailform button.mfp_prev:hover{
	top: -3px;
	box-shadow: 0 10px 0 #9d9476;
}
.mailform .mfp_next:active,
.mailform button.mfp_element_submit:active,
.mailform button.mfp_prev:active{
	top: 3px;
	box-shadow: none !important;
}

input[type="text"], textarea,input[type="tel"],input[type="email"],select,input[type="date"]{
	vertical-align:middle;
	max-width:99%;
	width: 99%;
	line-height:56px;
	height:56px;
	padding:5px 10px;
	border:1px solid #d4d4d7;
	border-radius:6px;
	font-size:19px;
	background:#fcfcfc;
	box-sizing: border-box !important;
	color: #0f526c;
}
input[type="date"]{width: auto;}
textarea{
	height:auto;
	line-height:1.5;
	box-sizing: border-box;
}


.mfp_err{
	color: #ff3232;
	font-family: 'boku';
}
#mfp_phase_4 dl dt{
	width: 17em;
	font-size: 19px;
	margin-top: 10px;
}
#mfp_phase_4 dl dt span{
	position: relative;
	padding-left: 34px;
	display: block;
	line-height: 1em;
	text-align: left;
}
#mfp_phase_4 dl dt span:before{
	content: '';
	background: #e9546b;
	display: block;
	border: 4px solid #fff;
	border-radius: 100%;
	width: 18px;
	height: 18px;
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
}
.back-to-top{
	text-align: center;
	font-size: 14px;
	text-decoration: underline;
}
#tel-time-area .orange{
	padding: 0;
	background: none !important;
	font-size: 0.8em;
}
#tel-time-area .orange:before{
	content: none;
}
#date-area select{margin-bottom: 15px;}
#date-area select,#time-area select{
	width: 16em;
}

/*******モーダル*******/
body.selModalBody{overflow: hidden;}
.selModal{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999999;
	display: none;
}
.selModalOverlay{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
}
.selModal .selModalInner{
	position: absolute;
	box-sizing: border-box;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #fff;
	width: 95%;
	max-width: 800px;
	max-height: 95%;
	overflow-y: hidden;
	border: 5px solid #fff;
}
.selModal .selModalInner .selModalHeader{
	background:#fcdc6f	;
	text-align: right;
	padding: 10px;
}
.selModal .selModalInner .selModalHeader::after{
	content: "";
	display: block;
	clear: both;
}
.selModalCloseIcon{
	display: block;
	width: 25px;
	height: 25px;
	position: relative;
	cursor: pointer;
	float: right;
}
.selModalCloseIcon span::before,
.selModalCloseIcon span::after{
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 84%;
	height: 10%;
	margin: -8% 0 0 -42%;
	background: #10526c;
}
.selModalCloseIcon span::before{transform: rotate(-45deg);}
.selModalCloseIcon span::after{transform: rotate(45deg);}
.selModal .selModalInner .selModalList{
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	overflow-y: auto;
}
.selModal .selModalInner ul{
	margin: 0;
	padding: 0;
	color: #10526c;
	background-color :#fff;
	padding-bottom: 1px;
	box-sizing: border-box;
}
.selModal .selModalInner ul li{
	display: block;
	position: relative;
	margin: 0 0 -1px 0;
	padding: 16px 25px 16px 15px;
	border: 1px solid #10526c;
	cursor: pointer;
	box-sizing: border-box;
	font-size: 18px;
}
.selModal .selModalInner ul li img{
	height: auto;
	vertical-align: middle;
	margin-right: 5px;
	max-width: 40px;
}
.selModal .selModalInner ul li.selected{
	background: #badbf3;
	color: #10526c;
	border: 2px solid #10526c;
}
.selModal .selModalInner ul li::after{
	position: absolute;
	top: 50%;
	right: 15px;
	display: block;
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-top: 1px solid #10526c;
	border-right: 1px solid #10526c;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.selModalButton{
	display: inline-block;
	position: relative;
	overflow: hidden;
	width: 99%;
	padding: 2px 22px 2px 12px;
	border: 1px solid #d4d4d7;
	border-radius: 4px;
	background: #fff;
	color: #10526c;
	text-decoration: none;
	line-height: 56px;
	cursor: pointer;
	text-align: left;
	font-size: inherit;
	font-size: 19px;
	font-family: "m1";
}
.selModalButton::before, .selModalButton::after{
	content: '';
	position: absolute;
	z-index: 2;
	right: 7px;
	width: 0;
	height: 0;
	border: 4px dashed;
	border-color: #333 transparent;
	pointer-events: none;
}
.selModalButton::before{
	border-bottom-style: solid;
	border-top: none;
	top: 30%;
}
.selModalButton::after{
	border-top-style: solid;
	border-bottom: none;
	bottom: 30%;
}
.selModal .selModalInner ul li.totch{background-color: #EFEFEF;}


/************診断ページ　フッター***********/
#copyright {
	font-size: 14px;
	text-align: center;
	padding: 20px 0 5px;
	line-height: 130%;
}

/***************サンクスページ************** */
#thanks-area-title{
	margin: 0 auto 60px;
}
#thanks-area-title h2{
	font-size: 50px;
	margin: 0 auto;
	background: #ea546c;
	color: #fff;
	width: 90%;
	max-width: 800px;
	padding: 20px 10px;
}
#thanks-area-inner{
	width: 90%;
	max-width: 800px;
	margin: 0 auto;
	text-align: center;
}
#thanks-area-inner .thanks-h2-top{
	border-bottom: double #0f526c 8px;
	margin: 0 auto 30px;
	padding: 0 0 15px;
}
#thanks-area-inner .inner-box{
	padding: 50px 20px 30px;
	margin: 0 auto 50px;
	
}
.thanks-h2-middle{padding-bottom: 20px;}
#thanks-tel-area{padding: 30px 0 0;}
#thanks-tel-area .tel-area{
	padding: 0 0 12px;
}
#thanks-tel-area .tel-no{font-size: 40px;}
#thanks-tel-area .tel-no img{margin-right: 10px;}
h3#later{margin: 0 auto 15px;}
.button-return{
	position: relative;
	background: #ccc;
	box-shadow: 0 7px 0 #9d9476;
	margin: 0 auto 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 240px;
	height: 54px;
	border-radius: 30px;
}
.button-return:hover{
	top: -4px;
	box-shadow: 0 11px 0 #9d9476;
	text-decoration: none;
}

/***************プライバシーポリシー・利用規約・シュミレーターについて************** */
.info-page #info-page-title{
	padding: 25px 15px;
	background: #0f526c;
	color: #fff;
	margin: 30px auto 50px;
	max-width: 900px;
	width: 90%;
	line-height: 150%;
}
.info-page #info-page-title .min{font-size: 0.7em;}
.info-page .post{
	max-width: 900px;
	margin:0 auto 50px;
	width: 90%;
}
.info-page .post h3.title {padding: 50px 0 15px;}
.info-page .post p{padding-bottom: 15px;}
.info-page ul{
	list-style: initial;
	margin-left: 1em;
}
.info-page .post ol li{margin: 0 auto 10px;}
.info-page .post ol ol{margin: 10px 0 0 30px;}
.post-comment-area img{margin-right: 30px;}
.post-comment-area .text{flex: 2;-webkit-box-flex:2;-ms-flex:2;}




/* 下層ページ共通
------------------------------------------------------------*/
#pagetop{
	position:fixed;
	right:15px;
	bottom:0px;
	z-index: 1200;
}
#pagetop a{
	font-size:14px;
	background: rgba(89, 161, 187, 0.64);
	border-radius:4px;
	padding: 10px 15px;
	text-align: center;
	display: block;
}




@media only screen and (max-width:1200px){
	br.br1140{display: inline !important;}
	.font24{font-size: 22px !important;}
	.font30{font-size: 26px !important;}
	.font36{font-size: 32px !important;}
	.font40{font-size: 36px !important;}
	.font50{font-size: 46px !important;}
	#footer-nav a {font-size: 1em;}
	.wrapper{width:96%;margin: 0 auto;}

	.info-page #info-page-title .min{
		line-height: 1em;
		display: block;
	}

}
@media only screen and (max-width: 789px){
	br.br789{display: inline;}
	h3{font-size: 19px;}
	.font24,
	h2{font-size: 20px !important;}
	.font30{font-size: 21px !important;}
	.font36,
	h3.title{font-size: 24px !important;}
	.font40,
	h2.title{font-size: 28px !important;}
	.font50{font-size: 44px !important;}
	
	.sec-area .button {
		width: 80%;
		height: 110px;
		border-radius: 55px;
	}
	.button .button-text{
		width: 280px;
		height: auto;
	}
	.button .arrow {
		width: 30px;
		height: auto;
		right: 20px;
	}
	#footer-nav a {font-size: 14px;}

	#footer-sp-area-inner {
		padding: 10px 0 18px;
		border-top: 5px solid #10526c;
	}
	#footer-sp-area .button {font-size: 20px;}
	#footer-sp-area .button .arrow{
		width: 20px;
		right: 15px;
	}

	#popup-area-line .popup-button-area{display: block;}
	#popup-area-line #close-line {
		margin: 0 auto;
		font-size: 14px;
		line-height: 1em;
	}
	#line-qr-area{display: none;}

	
	/****診断ページ*****/
	#chart-area {
		padding: 30px 0 20px;
		/* margin-bottom: 40px; */
	}
	#chart-area-inner {
		padding: 50px 25px 20px;
	}
	#chart-first-title {
		padding: 30px 20px 25px;
		margin: 10px auto 40px;
		border: 3px solid #0f526c;
	}
	#mfp_phase_stat{margin: 0 auto 30px;}
	.mfp_active_phase:before, .mfp_inactive_phase:before {font-size: 13px;top: 11px;}
	#mfp_phase_stat li.mfp_active_phase {border: 4px solid #ffffff;}
	#mfp_phase_stat li.mfp_inactive_phase {border: 5px solid #fff;}
	.mfp_active_phase, .mfp_inactive_phase {width: 70px;height: 70px;font-size: 20px;margin: 0 5px;padding-top: 28px;}
	.mfp_active_phase:after{background-size: 100% auto;width: 34px;height: 30px;top: -11px;}
	#mfp_phase_4_label {font-size: 14px;line-height: 65px;}
	.mailform dl{display: block;}
	.mailform dl dt,#mfp_phase_4 dl dt{
		width: 100%;
		margin: 0 auto 18px;
		text-align: left;
	}
	.mailform dl dt br{display: none;}
	#tel-time-area .orange {padding: 0 0 6px;}

	.mailform dl dt.flex-area br{display: none;}
	.mailform dl dt .icon-step{width: 50px;height: auto;}
	.mailform button.mfp_prev {
		width: 180px;
		font-size: 16px;
	}
	.mailform .mfp_next {font-size: 22px;}
	.mailform button.mfp_element_submit {
		height: 80px;
		font-size: 28px;
		width: 400px;
	}
	/******サンクス*****/
	#thanks-area-title {margin: 0 auto 40px;}
	#thanks-area-title h2 {font-size: 40px !important;}

}
@media only screen and (max-width: 589px){
	br.br589{display: inline;}
	h3{font-size: 17px;}
	.font24,
	h2{font-size: 18px !important;}
	.font30,
	h3.title{font-size: 19px !important;}
	.font36{font-size: 20px !important;}
	.font40,
	h2.title{font-size: 24px !important;}
	.font50{font-size: 30px !important;}

	.has-button {
		padding-bottom: 30px;
	}
	.sec-area .button {
		width: 80%;
		height: 85px;
		border-radius:43px;
	}
	.button .button-text{width: 245px;}
	.button .arrow {width: 22px;}
	
	#footer-sp-area .button {
		font-size: 18px;
		height: 60px;
	}
	#footer-sp-area .button.line-link {
		border: none;
		background: #03b84d;
		color: #fff;
	}
	#footer-sp-area .button .icon-flex{display: none !important;}
	#footer-sp-area .button .arrow {
		width: 14px;
		right: 11px;
	}
	
	
	#popup-inner-line{padding: 50px 10px;}
	#popup-area-line #go-line {
		max-width: 340px;
		font-size: 20px;
		height: 70px;
		border-radius: 50px;
		margin: 5px auto 25px;
	}
	/****診断ページ*****/
	#chart-area-inner {padding: 50px 20px 20px;}
	#mfp_phase_4 dl dt span:before {
		border: 2px solid #fff;
		width: 14px;
		height: 14px;
	}
	#mfp_phase_4 dl dt span {padding-left: 26px;}
	.mailform dl dt .icon-step {
		width: 38px;
		height: auto;
	}
	.mailform dl dt {font-size: 16px;}
	.selModalButton,
	input[type="text"], textarea, input[type="tel"], input[type="email"], select, input[type="date"]{font-size: 17px;}
	.selModalButton {
		line-height: 150%;
		height: auto;
		min-height: 56px;
		padding: 15px 15px;
	}
	.selModal .selModalInner ul li{font-size: 16px;}
	.mailform .mfp_next{display: block;margin: 50px auto 50px;}
	.mailform button.mfp_prev{margin: 0 auto 50px;}
	.mailform button.mfp_element_submit {line-height: 80px;font-size: 30px;width: 400px;}
	.button-return{width: 200px;}
	
	/**********/
	.info-page .post p {
		padding-bottom: 15px;
		font-weight: lighter;
		font-size: 15px;
	}
	.info-page .post ol li,
	.info-page .post ul li{font-size: 15px;}
	
}
@media only screen and (max-width: 489px){
	br.br489{display: inline;}
	.has-button {padding-bottom: 20px;}
	input[type="submit"], input[type="reset"], input[type="button"], .button {box-shadow: 0 7px 0 #9d9476;}
	input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .button:hover {
		top: -4px;
		box-shadow: 0 4px 0 #9d9476;
	}
	.sec-area .button {
		height:70px;
		border-radius:50px;
	}
	.button .button-text{width: 200px;}
	#footer-nav {padding: 5px 10px 0;}
	#footer-nav a {font-size: 12px;}
	#footer-sp-area-inner {
		padding: 7px 0 13px;
		border-top: 4px solid #10526c;
	}
	#footer-sp-area .button {
		font-size: 13px;
		height: 54px;
		line-height: 120%;
	}
	#footer-sp-area .button .big{
		display: block;
		font-size: 20px;
		line-height: 120%;
	}

	#popup-area-line h2{
		font-size: 20px;
		display: block;
	}
	#popup-area-line h2 img{
		display: block;
		width: 40px;
		height: auto;
		margin: 0 auto 15px;
	}
	#popup-area-line #go-line{
		min-width: 200px;
		max-width: 350px;
		margin: 0 auto 20px;
		font-size: 18px;
	}
	#copyright {font-size: 12px;}
	/****診断ページ*****/
	#chart-area-inner {padding: 30px 20px 20px;}
	#chart-first-title {
		padding: 23px 10px 15px;
		margin: 10px auto 25px;
	}
	#mfp_phase_stat{
		flex-wrap:wrap;
		margin: 0 auto 15px;
	}
	.mfp_active_phase, .mfp_inactive_phase {
		width: 60px;
		height: 60px;
		font-size: 17px;
		padding-top: 20px;
	}
	.mfp_active_phase:before, .mfp_inactive_phase:before {
		font-size: 11px;
		top: 5px;
	}
	.mfp_active_phase:after {top: -8px;}
	#mfp_phase_4_label {font-size: 12px;line-height: 55px;}
	.mailform dl dt .icon-step {width: 40px;}
	.mailform button.button-orange{width: 100%;}
	.selModalButton{font-size: 16px;}
	.mailform button.mfp_element_submit {
		line-height: 70px;
		font-size: 24px;
		width: 100%;
	}
	#chartfooter-nav{
		display: block;
		font-size: 15px;
	}
	#chartfooter-nav li a {
		display: block;
		margin: 0 auto;
		text-align: center;
		padding: 8px 0;
	}
	/******サンクス*****/
	#thanks-area-title h2 {
		font-size: 33px !important;
		padding: 15px 10px;
	}
	#thanks-tel-area .tel-no {
		font-size: 32px;
	}
	#thanks-tel-area .tel-no img{
		width: 36px;
		height: auto;
	}

}
@media only screen and (max-width: 389px){
	br.br389{display: inline;}
	h2.title {
		font-size: 20px !important;
	}
	.sec-area .button {
		width: 90%;
		height:60px;
	}
	.button .button-text{width: 170px;}
	#home #footer,
	#policy-page #footer,
	#terms-page #footer{padding-bottom: 80px;}
	#footer-nav a {font-size: 10px;}
	#popup-area-line #close-line {
		height: 45px;
		width: 120px;
		font-size: 13px;
	}
	#footer-sp-area .button {
		font-size: 11px;
		height: 50px;
	}
	#footer-sp-area .button .big{
		font-size: 18px;
	}
	
	/****診断ページ*****/
	#chart-area-inner {
		padding: 30px 12px 20px;
	}
	
	#mfp_phase_stat li.mfp_active_phase {border: 3px solid #fff;}
	#mfp_phase_stat li.mfp_inactive_phase {border: 3px solid #fff;}
	.mfp_active_phase, .mfp_inactive_phase {
		width: 50px;
		height: 50px;
		font-size: 15px;
		padding-top: 17px;
		margin: 0 -1px;
	}
	.mfp_active_phase:before, .mfp_inactive_phase:before {font-size: 10px;top: 4px;}
	#mfp_phase_4_label {font-size: 11px;line-height: 48px;}
	#chart-first-title h2 {font-size: 16px !important;}
	.mailform dl dt {
		line-height: 130%;
		font-size: 14px;
	}
	.mailform dl dt .icon-step {
		width: 34px;
		margin-right: 11px;
	}

	.mailform .mfp_next {
		font-size: 20px;
		width: 250px;
	}
	#mfp_phase_4 dl dt{font-size: 16px;}
	.selModalButton, input[type="text"], textarea, input[type="tel"], input[type="email"], select, input[type="date"]{
		font-size: 15px;
	}
	
	#mfp_phase_4 dl dd p{
		font-size: 13px;
	}
	.mailform button.mfp_element_submit {
		line-height: 64px;
		font-size: 20px;
		width: 100%;
	}
	/***********/
	.info-page #info-page-title {margin: 20px auto 30px;}
	.info-page .post p,
	.info-page .post ol li,
	.info-page .post ul li,
	#thanks-area-inner p{
		font-size: 14px;
	}
	/******サンクス*****/
	#thanks-tel-area .tel-no {
		font-size: 27px;
	}
	#thanks-tel-area .tel-no img {width: 30px;}
	
	
	
}