@charset "utf-8";


body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,textarea,p,blockquote,th,td,img,div,span {
	margin: 0;
	padding: 0;
	border:0;
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, Helvetica, Arial, sans-serif;
}

body {
	margin:0 auto;
	background:#fff;
	position:relative;
}

img {
	width:100%;
}

.clearfix {
	min-height: 1px;
}

.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}

* html .clearfix {
	height: 1px;
	height: auto;
	overflow: hidden;
}


.widthset {
	position:relative;
	width:100%;
	margin:0 auto;
}

.hidden{
	display: none;
}

header {
	position:relative;
}

.header-tel {
	position:absolute;
	display:block;
}

#step1,#step2,#step3,#step4,#step5 {
	position:relative;
	max-width:560px;
	width:90%;
	margin:0 auto;
}

.form-lead img{
	max-width: 960px;
	margin: auto;
}

.step-icon {
	display:block;
	width:90%;
	max-width:500px;
	margin:0 auto;
	margin-top:1.0em;
	margin-bottom:1.6em;
}

.flex-box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}



.checkbox-item {
	float:left;
}


.col1 {
	width:100%;
	margin-bottom:1.0em;
}

.col2 {
	width:46%;
	margin-bottom:1.0em;
}

.col3 {
	width:31%;
	margin:0.6em 1.16%;
}

.checkbox-item label{
	display:block;
	cursor: pointer;
	padding:0.6em 0;
	text-align:center;
	background:#fff;
	color:#333;
	font-size:0.90em;
	border:2px solid #dddddd;
	border-radius: 5px;
}

.checkbox-item input{
	display: none;
}

.checkbox-item input[type="checkbox"]:checked + label {
	background: #e5699b !important;
	border:2px solid #e5699b !important;
	color:#fff;
}

.checkbox-item input[type="radio"]:checked + label {
	background: #e5699b !important;
	border:2px solid #e5699b !important;
	color:#fff;
}

.q-title {
	margin-top:10px;
	margin-bottom:30px;
	font-weight:bold;
	border-radius: 10px;
}

.reqired {
	font-size:0.8em;
	color:red;
	margin-left:1.0em;
}

.optional {
	font-size:0.8em;
	color:#c5c5c5;
	margin-left:1.0em;
}

.q-contents {
	margin-bottom:10px;
}

.agreement {
	display:block;
	width:60px;
	margin:0 auto;
	margin-top:15px;
	text-align:center;
	font-size:12px;
}


#step5 .step-btn {
	display:none;
}

#step2_to_step1_btn_container,
#step3_to_step2_btn_container,
#step4_to_step3_btn_container,
#step5_to_step4_btn_container,
.last-prev-btn {
	float:left;
	width:21%;
	border:none !important;
	background:none !important;
}

.step-btn,
.submit-btn {
	display:block;
	width:70%;
	margin: auto;
	border:none !important;
	background:none !important;
}

button {
	border:none !important;
	background:none !important;
}


.error-message {
	display:block;
	position:absolute;
	width:100%;
	text-align:center;
	color:red;
	font-size:1.0em;
}

input[type="text"],[type="email"],[type="tel"],select,textarea {
	display:block;
	border:0;
	width:96%;
	margin-bottom:20px;
	padding:18px 2%;
	font-size:16px;
	border:solid 1px #ddd;
	background:#fff;

	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

select {
	width:100%;
}

#magazine {
	transform: scale(2.2);
	margin: 15px 15px 20px 10px;
}

.kiyaku {
	margin:0 auto;
	width:100%;
	text-align:center;
	padding-top:100px;
}

.kiyaku a {
	text-decoration:underline;
	font-size:0.9em;
	color:#e5699b;
}

.kiyaku a:hover {
	text-decoration:none;
}

footer {
	display:block;
	width:100%;
	padding:1.0em 0;
	margin-top: 60px;
	background:#333;
}

footer p {
	width:100%;
	margin: auto;
	text-align:center;
	font-size:0.7em;
	color:#fff;
}

.thanks {
	margin:3.0em 0;
}
.thanks .widthset{
	width: 100%;
	max-width: 820px;
	padding: 0 10px;
}

.thanks h2{
	font-size: 1.7rem;
	text-align: center;
	font-weight: normal;
}

.thanks p {
	margin:0 auto;
	line-height:1.6;
}

.thanks a {
	text-decoration:underline;
	color:#333;
}

.thanks p.lead{
	width: fit-content;
	margin: 20px auto;
}
.thanks p.lead span{
	background: linear-gradient(transparent 70%, #baede6 70%);
	font-weight: bold;
}
.thanks .consul{
	justify-content: space-between;
	display: flex;
	padding: 15px 0 20px;
}
/* #93 修正ここから */
.thanks .consul .consul_box{
	border: 2px solid #4ebaab;
	width: 100%;
	display: block;
	padding: 25px 15px 30px;
	box-sizing: border-box;
	position: relative;
}
 .thanks .consul .clear {
  clear: both;
  margin-bottom:20px;
}
.thanks .consul .consul_time{
	height:auto;
}
.thanks .consul .consul_link{
  font-size: .85rem;
  width: 100%;
  margin-top:10px;
  text-align: center;
  color: #4bb1a5;
  display: block;
}
/* #93 修正ここまで */
.thanks .consul .consul_box h3{
	text-align: center;
	font-size: 1.4rem;
	margin-bottom: 15px;
}
.thanks .consul .consul_box h3 span{
	font-size: 1.0rem;
}
.thanks .consul .consul_box img{
	position: absolute;
	width: 40%;
	max-width: 140px;
	top: 30px;
	left: 120px;
}
.thanks .consul .consul_box p,
.thanks .consul .consul_box ul{
	width: 63%;
	float: right;
	margin: 5px 0;
	font-size: 0.9rem;
}
.thanks .consul .consul_box ul{
	color: #4ebaab;
	list-style: none;
}

.thanks .consul .consul_box ul .place::before{
	display: inline-block;
  content: " ";
  width: 13px;
  height: 14px;
  background: url(../img/icon_place.svg) 0 0 no-repeat;
  background-size: 12px;
  top: 2px;
  position: relative;
	margin-right: 3px;
}
.thanks .consul .consul_box ul .time::before{
	display: inline-block;
  content: " ";
  width: 14px;
  height: 14px;
  background: url(../img/icon_time.svg) 0 0 no-repeat;
  background-size: 13px;
  top: 3px;
  position: relative;
	margin-right: 3px;
}
.thanks .comsul_btn{
	 clear: both;
	 position: absolute;
	 bottom: 25px;
	 left: 0;
	 right: 0;
	 margin: auto;
	 width: 80%;
 }
.thanks .comsul_btn a{
	display: block;
	color: #ffffff;
	background: #4ebaab;
	border-radius: 30px;
	text-align: center;
	text-decoration: none;
	font-size: 1.2rem;
	padding: 10px;
}
.thanks .comsul_btn a:hover{
	opacity: 0.8;
	transition: 0.4s ease 0s;
}
.thanks .details{
	background: #e4f2ef;
	padding: 20px 50px 15px;
	box-sizing: border-box;
	margin-bottom: 40px;
}
.thanks .details h3{
	text-align: center;
	font-size: 1.2rem;
	margin-bottom: 10px;
}
.thanks .details ul{
	margin: auto;
	width: 90%;
	display: flow-root;
}
.thanks .details ul li{
	display: inline-block;
	margin: 3px 6px;
	float: left;
	line-height: 1.6;
}
.thanks .details ul li::before{
	display: inline-block;
  content: "・";
  width: 12px;
  height: 12px;
  background-size: 12px;
  position: relative;
	margin-right: 3px;
}
.thanks .contact{
	display: table;
	margin-bottom: 80px;
}
.thanks .contact .logo{
	width: 30%;
  display: table-cell;
  vertical-align: middle;
	padding-left: 15px;
}
.thanks .contact .contact_lead{
	padding-left: 50px;
}
.thanks .contact .contact_lead .tel,
.thanks .contact .contact_lead .mail{
	display: block;
	float: left;
	margin-top: 4px;
	letter-spacing: 1px;
}
.thanks .contact .contact_lead .tel{
	margin-right: 32px;
}
.thanks .contact .contact_lead .tel a,
.thanks .contact .contact_lead .mail a{
	text-decoration: none;
}

#rank_high,
#rank_low {
	display: block;
	height: 1px;
}

.news{
	margin: 50px auto;
}
.news_title{
	background: #eaeaea;
	border-top: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	text-align: center;
	color: #4fbaaf;
	font-size: 1.6rem;
	letter-spacing: 0.3rem;
	padding: 0.5rem;
}
.news_list{
	padding: 20px 40px;
	border: 1px solid #dddddd;
}
.news_list li{
	font-size: 1.1rem;
	margin: 20px 0;
	list-style-type: none;
	padding-left: 20px;
	position: relative;
}
.news_list li a{
	color: #4fbaaf;
	text-decoration: underline;
}
.news_list li::before{
	content: "・";
	color: #4fbaaf;
	font-size: 2.8rem;
	position: absolute;
	left: -15px;
	top:-20px;
}

@media only screen and (min-width:751px) {
	.widthset {
		max-width:960px;
	}
	.pc {
		display:block;
	}

	.sp {
		display:none;
	}

	header {
		background:url(../img/pc/header-bg.png) repeat-x;
	}

	.icatch {
		background:#e4e8e9;
	}

	.icatch-back {
		background:url(../img/pc/icatch-bg2.jpg) no-repeat;
		background-size:1600px 798px;
		background-position:center top;
	}

	.contents {
		background:url(../img/pc/contents-bg-wide.png) repeat-x;
		background-position: center 326px;
	}

	.contents-back {
		background:url(../img/pc/contents-bg.png) no-repeat;
		background-size:1600px 1123px;
		background-position:center top;
	}

	.header-tel {
		width:46%;
		height:50%;
		top:40%;
		left:51%;
	}

	.leadcopy {
		top:40px;
	}

	.checkbox-item label{
		font-size:1.1em;
	}

	#step1,#step2,#step3,#step4,#step5 {
		background:#fff;
		width:80%;
		margin-top:20px;
		margin-bottom:60px;
		padding:20px;
	}

	#step2_to_step1_btn_container,
	#step3_to_step2_btn_container,
	#step4_to_step3_btn_container,
	#step5_to_step4_btn_container,
	.last-prev-btn {
		margin-top:10px;
	}

	.q-title {
		text-align:center;
		font-size:1.1em;
	}

	textarea {
		height:10.0em;
	}

	.step-btn,
	.submit-btn {
	}

/* ここから */
	.error-message {
		top:132px;
	}
/* ここまで */
	.thanks .widthset{
		width: 100%;
    max-width: 820px;
    box-sizing: border-box;
	}
	.news .widthset{
		max-width: 1000px;
		box-sizing: border-box;
		padding: 0 20px;
	}
}

@media only screen and (max-width:750px) {

	.widthset {
		min-width:360px;
	}

	.pc {
		display:none;
	}

	.sp {
		display:block;
	}

	.header-line {
		font-size:0.65em;
	}

	.header-tel {
		width:36%;
		height:60%;
		top:34%;
		left:62%;
	}

	.checkbox-item label{
		font-size:0.85em;
	}

	#step1,#step2,#step3,#step4,#step5 {
		width:90%;
		padding:10px 0 40px;
	}

	.q-title {
		width:100%;
		text-align:center;
		font-size:1.0em;
	}

	#step2_to_step1_btn_container,
	#step3_to_step2_btn_container,
	#step4_to_step3_btn_container,
	#step5_to_step4_btn_container,
	.last-prev-btn {
		margin-top:6px;
	}

	.step-btn,
	.submit-btn {
	}
/* ここから */
	.error-message {
		top:100px;
		font-size:0.9em;
	}
/* ここまで */

	.thanks{
		margin: 2em 0;
	}
	.thanks .widthset{
		box-sizing: border-box;
		margin-bottom: 80px;
		padding: 30px 10px 0;
	}
	.thanks h2 {
		font-size: 1.4rem;
		font-weight: bold;
	}
	.thanks p{
		line-height: 1.7;
	}
	.thanks p.lead{
		margin: 30px auto 20px;
    padding: 0 10px;
	}
	.thanks .consul{
		display: grid;
		padding: 0;
	}
	/* #93 修正ここから */
  .thanks .consul .consul_box {
    width: 100%;
    border: 1px solid #4ebaab;
    padding: 20px 10px 50px;
    margin-bottom: 15px
  }
	/* #93 修正ここから */
	.thanks .consul .consul_box img{
		top: 25px;
    left: 12px;
		width: 31%;
	}
	.thanks .consul .consul_box h3{
		width: 63%;
		float: right;
		text-align: left;
		font-size: 1.1rem;
		margin-bottom: 0px;
	}
	.thanks .consul .consul_box p,
	.thanks .consul .consul_box ul{
    font-size: 0.85rem;
    line-height: 1.6;
		margin: 5px 0 0;
	}
	.thanks .comsul_btn{
		bottom: 20px;
	}
	.thanks .comsul_btn a{
		font-size: 1.0rem;
		font-weight: bold;
	}
	.thanks .details{
		padding: 20px 0px;
		margin-bottom: 30px;
		font-size: 0.95rem;
		display: grid;
	}
	.thanks .details h3{
		font-size: 1.1rem;
	}
	.thanks .details ul{
		width: 320px;
	}
	.thanks .details ul li{
		margin: 2px 6px;
	}
	.thanks .contact{
		display: inline-block;
		text-align: center;
		margin-bottom: 0px;
	}
	.thanks .contact .logo{
		display: block;
		width: 50%;
		margin: 30px auto 10px;
	}
	.thanks .contact .contact_lead{
		text-align: center;
		display: inline-block;
		padding: 0;
	}
	.thanks .contact .contact_lead .tel,
	.thanks .contact .contact_lead .mail{
		text-align: center;
		width: 100%;
		font-size: 0.9rem;
	}

	.news{
		margin: 30px auto;
	}
	.news .widthset{
		min-width:inherit;
		width: auto;
		padding: 0 10px;
	}
	.news_title{
		font-size: 1.0rem;
	}
	.news_list{
		padding: 10px 15px;
	}
	.news_list li{
		font-size: 0.85em;
	}
	.news_list li::before{
		font-size: 2.0rem;
		left: -10px;
    top: -14px;
	}
	footer {
		margin-top: 0px;
	}
}