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

	main_img

-----------------------------------*/
#main_img {
    width: 100%;
    height: 1000px;
    background-image: url(../img/index/main_img.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right 30% top;
    position: relative;
}
#main_img #svg-bg-top {
	position:absolute;
	width: 100%;
    bottom:0;
    left: 0;
    z-index: 1;
}
#main_img .main_img_conte {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    margin: 0 auto !important;
	text-align:center;
}
#main_img .main_text {
	width:386px;
    text-align: center;
    margin: 0 auto;
}
#main_img .main_logo {
	width:234px;
	margin-top:30px;
}


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

}

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

	#main_img {
		height: 600px;
	}
	#main_img .main_text {
		width:218px;
	}
	
}
@media screen and (max-width: 640px) {
	
	#main_img .main_img_conte {
		width:95%;	
	}
	#main_img .link_btn{
		width:200px;
		max-width:90%;
	}
}
/*@media screen and (max-width: 640px) {
	
	#main_img .main_text{
		width:193px !important;
	}
	#main_img .main_logo{
		width:117px !important;
	}
}*/

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

	#main_img {
		height: 440px;
	}
	
}

/*-----------------------------------

	about_block

-----------------------------------*/

#about_block {
	text-align:center;	
	padding-bottom:60px;
	position:relative;
}
#about_block .text_box ul{
	width:960px;
	margin:0 auto;
}
#about_block .text_box li {
	float:left;
	width:456px;
	margin-right:48px;
	margin-bottom:20px;
}
#about_block .text_box li:nth-child(even){
	margin-right:0;
}
#about_block .text_box li img{
	border:2px solid #BBDFF6;
	border-radius:15px;
	padding:10px;
}
#about_block .text_box h3 {
    width: 548px;
    text-align: center;
    display: block;
    margin: 0 auto 30px;
}

@media screen and (max-width: 1200px) {
	
	#about_block .text_box ul{
		width:100%;
		margin:0 auto;
	}
	#about_block .text_box li {
		width:49%;
		margin-right:2%;
	}
}

@media screen and (max-width: 640px) {
	
	#about_block {
		margin-top:90px;
		padding-bottom:40px;
	}
	#about_block .text_box li {
		float:none;
		width:100%;
		margin-right:0;
	}
	#about_block .text_box h3 {
    	width: 100%;
		margin:auto;
		padding:45px 0 25px 0;
	}

}

/*-----------------------------------

	flow_block

-----------------------------------*/
#flow_block {
	background: url(../img/index/flow_bg.png);
    background-repeat: no-repeat;
    background-position: center;
	background-position: top;
	background-size: 100%;	
	margin-top:60px;
	padding-bottom:60px;
	position:relative;
}
#flow_wrap {
	
}
#flow_block .link_btn{
	margin:60px auto 0;
	background:#8abde7 !important;
}
#flow_block #svg-bg-bottom {
	position:absolute;
	width: 100%;
    top:0;
    left: 0;
    z-index: 1;
}
#flow_block .flow_box li {
    float: left;
    width: 25%;
	text-align:center;
    position: relative;
}
#flow_block .flow_box li:before {
    width: 60px;
    transform: translate(30px, 0px);
}
#flow_block .flow_box li:before,
#flow_block .flow_box li:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    height: 1px;
    background: #6a98d0;
	z-index: 1;
}
#flow_block .flow_box li:after {
    width: 15px;
    transform-origin: right center;
    transform: translate(30px, 0px) rotate(25deg);
}
#flow_block .flow_box li:nth-child(4):before,
#flow_block .flow_box li:nth-child(4):after {
	content:none;	
}
#flow_block .flow_box {
	padding-top:20%;
}


/*@media screen and (max-width: 1200px) {
	
	#flow_block {
		padding: 200px 0 90px 0;	
	}
	#flow_block .flow_box {
		margin-bottom:100px;
	}
}*/

@media screen and (max-width: 840px) {
	
	#flow_block .flow_box li {
		float: left;
		width: 50%;
	}
	#flow_block .flow_box li:nth-child(even):before, 
	#flow_block .flow_box li:nth-child(even):after {
		content: none;
	}
	
}

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

	#flow_block {
		margin-top:40px;
		padding-bottom:40px;
	}
	
}

/*-----------------------------------

	price_block

-----------------------------------*/
#price_block {
	margin:90px 0;
	background:#F2F9F9;
	text-align:center;
	position:relative;
}
#price_block h2{
	margin-top:-90px;
}
#price_block .price_inner {
	padding:0 0 40px 0;	
}
#price_block h3{
	font-size: 24px;
    font-weight: 100;	
}
#price_block .men {
	color:#6a98d0;
}
#price_block .ladies {
	color:#f476dc;
}
#price_block .price_box {
    width: 600px;
    margin: 0 auto;
	overflow:hidden;
}
#price_block .price_wrap {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#price_block .price_conte {
	float:left;
	width:50%;	
}
#price_block .price_box .price_list {
    cursor: pointer;
    text-align: center;
}
#price_block .link_btn {
	background:#8ABDE7;	
}
@media screen and (max-width: 840px) {
	
	#price_block {
		
	}
	#price_block .price_box {
		width:100%;	
	}

}
@media screen and (max-width: 640px) {
	
	#price_block {
		
	}
	#price_block h3{
		font-size: 16px;
	}
	#price_block .price_box {
		padding-top:10%;
	}
	#price_block .link_btn {
		margin: 40px auto 0;
	}
	#price_block h2{
		margin-top:0;
	}
}


/*-----------------------------------

	plan_block

-----------------------------------*/
#plan_block {
    background: url(../img/index/plan_bg.png);
    background-repeat: no-repeat;
    background-position: top;
	background-size:100%;
    padding: 0 0 90px 0;
	position:relative;
}
#plan_block #compare_block {
	padding-top:20%;	
}
@media screen and (max-width: 840px) {
	
	#plan_block {
		padding: 0 0 60px 0;
	}
}

@media screen and (max-width: 640px) {
	
	#plan_block {
		padding: 0 0 40px 0;
		margin-top:40px;
	}
	#plan_block #compare_block {
		padding-top:40%;	
	}
	#compare_block .compare_list td {
		padding: 10px 5px;
		font-size: 12px;
	}	
	#compare_block .compare_head .regular, #compare_block .compare_head .gold, #compare_block 	.compare_list td {
		padding: 10px 5px;
		font-size: 12px;
		height: 20px;
		line-height: 20px;
	}
	#compare_block .compare_list ul {
		margin:0 auto;	
	}
	#compare_block .compare_list ul li span{
		display:block;
	}
		
}


/*-----------------------------------

	area_block

-----------------------------------*/
#area_block {
    background: linear-gradient(to bottom, transparent 0%, transparent 70%, #fff 100%),url(../img/index/area_bg.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
    margin-top: 60px;
    padding-bottom: 60px;
	position:relative;
}
#area_block h3 {
    font-size: 21px;
    font-weight: 500;
	color:#646666;
	text-align:center;
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
}
#area_block h3 .area_icon {
    padding-right: 10px;
    display: inline-block;
    vertical-align: middle;
}
#area_block .white_box {
	width:680px;
	max-width:90%;
	margin:0 auto;
	background:#fff;
	border-radius: 20px;
    background-color: rgba(255,255,255,0.7);
    padding: 25px 50px;
	box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.5);
}
#area_block .area_inner {
	width:500px;
	max-width:90%;
	margin:0 auto;
}
#area_block .conte {
	margin-top:40px;	
}
#area_block .area_inner h4{
	font-family: 'M PLUS Rounded 1c', sans-serif;
    font-size: 40px;
	color:#6A98D0;
	display: inline-block;
    vertical-align: middle;
}
#area_block .area_inner h4 span{
    font-size: 14px;
	color:#242424;
	padding-left:10px;
}
#area_block .tohoku_text{
	padding-left:10px;
}
#area_block .area_inner p{
	font-size:16px;
	font-weight:100;
	line-height:200%;
	display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 840px) {
	
}

@media screen and (max-width: 640px) {
	
	#area_block {
		background: url(../img/index/area_bg.png);
		background-repeat: no-repeat;
		background-position: top;
		background-size: 100%;
		padding-bottom: 40px;
	}
	#area_block h3{
		font-size:18px;
	}
	#area_block .white_box {
		background:none;
		box-shadow:none;
		padding:0;
	}
	#area_block .area_box {
		padding-top: 40%;	
	}
	#area_block .conte {
		margin-top: 20px;
	}
	#area_block .area_inner h4 {
		font-size: 24px;
	}
	#area_block .area_inner p {
		display:block;	
	}
	#area_block .tohoku_text {
		padding-left: 0;
	}
	
}

/*@media screen and (max-width: 420px) {
	
	#area_block .white_box {
		width:100%;
		margin-bottom:30px;
	}
	#area_block .white_box {
		width:100%;
		margin-bottom:30px;
	}
	#area_block .white_box:last-child {
		margin-bottom:0;
	}
	
}*/

/*-----------------------------------

	campaign_block

-----------------------------------*/
#campaign_block {
    background: url(../img/index/campaign_bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    margin-top: 90px;
    padding-bottom: 60px;
}
#campaign_block .campaign_img{
	position:relative;
}
#campaign_block .campaign_img .link_btn{
	position:absolute;
	bottom:4%;
	left:0;
	right:0;
	margin:0 auto;
	background:#ffff91;
	color:#6a98d0 !important;
}
#campaign_block .campaign_img .link_btn:hover{ 
	opacity:0.8;
}

@media screen and (max-width: 840px) {
	
	#campaign_block {
		/*padding:0 0 60px 0;*/	
	}
	#campaign_block .campaign_img .link_btn{
		height:50px;
		line-height:50px;
	}
	
}

@media screen and (max-width: 640px) {
	
	#campaign_block {
		padding-bottom:0;
		margin-top:0;
	}
	#campaign_block .campaign_img .link_btn {
		width: 200px;
		height: 35px;
		line-height: 35px;
		font-size: 14px;
	}
	
}

@media screen and (max-width: 420px) {
	
	#campaign_block .campaign_img .link_btn {
		height: 25px;
		line-height: 25px;
		font-size: 12px;
	}
	
}

/*-----------------------------------

	faq_block

-----------------------------------*/
#faq_block {
    background: url(../img/index/faq_bg.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: 100%;
	margin-top: 90px;
    padding-bottom: 60px;
	position:relative;
}
#faq_block .faq_list{
	padding-top:30%;
}
#faq_block .faq_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#faq_block .white_box {
	float:left;
	width:32%;
	background:#fff;
	border-radius: 20px;
    background-color: rgba(255,255,255,0.7);
    padding: 40px;
	box-shadow: 3px 3px 5px 0px rgba(0, 0, 0, 0.5);
}
#faq_block .white_box h3{
	font-family: 'M PLUS Rounded 1c', sans-serif;
    font-size: 15px;
	font-weight:600;
	margin-bottom:60px;
	color:#6a98d0;
    text-align: justify;
	position:relative;
	text-indent: -2em;
	letter-spacing: 0.01em;
 	padding-left: 5em;
}
#faq_block .white_box h3 span {
    text-indent: -1em;
  /*padding-left: 2em;*/
    /*display: block;*/
}
#faq_block .white_box h3::before {
    content: "Q";
    position: absolute;
    color: #fff;
    text-align: center;
    background: #6a98d0;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    line-height: 200%;
    font-size: 18px;
    top: -6px;
    left: -15px;
    text-indent: 0;
}
#faq_block .white_box .answer {
    font-size: 16px;
    font-weight: 100;
    position: relative;
    margin-bottom: 20px;
	padding-left: 3em;
    text-align: justify;
}
#faq_block .white_box .answer::before {
    content: "A";
    position: absolute;
    color: #6a98d0;
    text-align: center;
    border: 1px solid #6a98d0;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    line-height: 200%;
    font-size: 18px;
    top: -6px;
    left: -15px;
}
#faq_block .line_box {
	margin-top:120px;
	border:2px solid #6a98d0;
	padding:30px;
	border-radius:50px;
	text-align: center;
	position:relative;
}
#faq_block .line_box:before {
    content: "";
    position: absolute;
    background: #fff;
    width: 300px;
    height: 5px;
    top: -3px;
    left: 0;
    right: 0;
    margin: 0 auto;
}
#faq_block .line_box .h3_style {
    font-size: 28px;
    font-weight: 100;
    color: #6a98d0;
    display: inline-block;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -15px;
}
#faq_block .text_box {
	display:inline-block;
	vertical-align:middle;
	width:40%;
}
#faq_block .text_box p{
	font-size: 16px;
    font-weight: 100;
	line-height:200%;
	text-align:left;
}
#faq_block .img_box{
	display:inline-block;
	vertical-align:middle;
}

@media screen and (max-width: 1200px) {
	
	#faq_block .img_box{
		width:59%;
	}
	
}

@media screen and (max-width: 840px) {
	
	#faq_block {
		/*padding:0 0 60px 0;*/	
	}
	#faq_block .white_box {
		width:100%;
		margin-bottom:20px;	
	}
	#faq_block .line_box {
		margin-top: 60px;
		border-radius: 30px;
	}
}

@media screen and (max-width: 640px) {
	
	#faq_block {
		/*padding-bottom:40px;	
		padding-top:40px;*/
	}
	#faq_block .faq_list{
		padding-top:40%;
		width:100%;	
	}
	#faq_block .white_box h3 {
		font-size: 14px;
		margin-bottom: 30px;
	}
	#faq_block .white_box .answer {
		font-size:14px;	
	}
	#faq_block .line_box:before {
		width:200px;	
	}
	#faq_block .line_box .h3_style {
		font-size: 18px;
	}
	#faq_block .text_box {
		width:100%;
	}
	#faq_block .text_box p{
		font-size: 14px;
	}
	#faq_block .img_box{
		width:100%;
	}
	
}

/*-----------------------------------

	form_block

-----------------------------------*/
#form_block {
    background: #f2f9f9;
    padding: 120px 0;
	margin-top:90px;
}
@media screen and (max-width: 840px) {
	
	#form_block {
		padding: 60px 0;
	}
	
}
@media screen and (max-width: 640px) {
	
	#form_block {
		padding: 40px 0;
		margin-top:40px;
	}
	
}

/*member_wrap*/
#form_block #member_wrap{
	margin-top:50px;
}
#form_block .member_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px 0;
    border-bottom:1px solid #6a98d0;
	padding-bottom:10px;
}
#form_block .member_box h3 {
	font-size: 14px;
    display: inline-block;
    vertical-align: bottom;
    line-height: 55px;
}
#form_block .member_box .link_btn {
    margin: 0;
    width: 200px;
    max-width: 100%;
    display: inline-block;
    vertical-align: middle;
    background: #6a98d0;
    line-height: 50px;
    height: 50px;
}

@media screen and (max-width: 420px) {
	
	#form_block .member_box .link_btn  {
		width:130px;
		font-size: 12px;
	}
	
}

/********************************************

	
/*checkbox_box*/
#form_block .checkbox_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px 0;
}
#form_block .checkbox_box h3{
	float:left;
    border-bottom:1px solid #6a98d0;
	padding-bottom:10px;
}
#form_block .checkbox_box p{
    line-height: 48px;
}

#form_block #member_wrap h3{
	border-bottom:1px solid #6a98d0;
	padding-bottom:10px;	
}

/********************************************

/* common style */
.checkbox_box #demo01 {
  display: none;
}
.gray {
	font-weight:200 !important;
	background:#efefef !important;	
	color:#646666 !important;
}
#demo01+label,
#demo01+label::before,
#demo01+label::after {
  -webkit-transition: all .2s;
  transition: all .2s;
}
#demo01+label {
  display: inline-block;
  position: relative;
  width: 100px;
  height: 48px;
  border-radius: 24px;
  cursor: pointer;
}
#demo01+label::before {
  display: block;
  content: attr(data-off-label);
  position: absolute;
  top: 14px;
  right: 7px;
  color: #fff;
  font-family: Arial, sans-serif;
  font-size: 18px;
}
#demo01+label::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 44px;
  height: 44px;
  background-color: #fff;
  border-radius: 50%;
}
#demo01:checked+label::before {
  content: attr(data-on-label);
  left: 7px;
  right: auto;
  color: #fff;
}
#demo01:checked+label::after {
  left: 54px;
  background-color: #f7f7f7;
}

/********************************************

/* demo01 */
#demo01+label {
	float:right;
  background-color: #eee;
}
#demo01:checked+label {
  background-color: #6a98d0;
}

/********************************************

/*form*/
.w100 {
	width:100%;
}
.require {
  color: red;
}
#form_block input {
    /* width: 100%; */
    /* padding: 0.7em; */
    height: 45px;
    border: none;
}
#form_block .form_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
}
#form_block .form_content dt {
  padding: 0.7em 0;
}
#form_block .form_content dt {
    font-size: 16px;
    border-radius: 6px;
   /* background: #fff;*/
    text-align: center;
    vertical-align: middle;
}
#form_block .form_content dt {
  width: 25%;
  margin-bottom: 20px;
}
#form_block .input_box dt {
    width: 25%;
	margin-bottom:0;
}
#form_block .form_content dd {
  width: 65%;
  margin-left: 20px;
}
#form_block .form_content dt {
    font-size: 16px;
    background: #fff;
    vertical-align: middle;
    text-align: center;
    padding-left: 10px;
}
/*#payment_block input {
    border: 1px solid #999;
    height: 100%;
}
#form_block .form_content dt,
#form_block .form_content dd {
  font-size: 16px;
  height:50px;
}*/
@media screen and (max-width: 840px) {
 
  #form_block .form_content dt {
    width: 100%;
  }
  #form_block .form_content dd {
    width: 100%;
	margin-left: 0;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 640px) {
  
  #form_block .form_content dt,
  #form_block .form_content dd {
   width: 100%;
    font-size: 14px;
  }
  #form_block .form_content dt {
    border-bottom: none!important;
    padding: 1em;
  }
  /*#form_block .form_content dd {
    padding: 0.5em 0 1em;
  }*/

}


/*radio*/
.input_radio {
  display: none;
}
.input_radio + label {
  padding-left: 1.5em;
  position: relative;
  cursor: pointer;
}
/*.input_radio + label::before {
  content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}
.input_radio:checked + label::before {
  border-width: 5px;
  border-color: #ff7bac;
}*/

/*error/alert*/
.error {
  color: red;
  font-size: 14px;
  padding-bottom: 0.3em;
}
.alert {
  display: block;
  padding: 0.5em;
  text-align: center;
  border: 1px solid red;
  background: rgba(255,0,0,0.1);
  color: red;

}

/********************************************


/*pay*/
#form_block #pay_wrap {
	margin-top:50px;
}
#form_block .pay_conte {
	width:635px;
	margin:40px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
}
#form_block #pay_wrap h3{
	border-bottom: 1px solid #6a98d0;
    padding-bottom: 10px;
}
#form_block .pay_box {
    width: 48%;
    background: #fff;
    border-radius: 30px;
    border: 1px solid #6a98d0;
    margin-right: 4%;
	text-align:center;
}
#form_block .pay_box:nth-child(2) {
    margin-right: 0;
	background:#ffffcc;
}
#form_block .pay_box p{
	font-size:18px;
	padding:20px;
}


#form_block .top_head {
	padding:20px;
    border-radius: 20px 20px 0 0;
    background: #6a98d0;
    color: #fff;
}

#form_block .pay_list {
    width: 100%;
    background: #fff;
    border-radius: 30px;
	padding:30px;
    border: 1px solid #6a98d0;
	margin-top:40px;
}
#form_block .pay_list li{
	font-size:20px;
	padding-bottom:10px;
	padding-left: 30px;
	margin-bottom:20px;
	border-bottom: 3px dotted #b7b3b7;
	position:relative;
}
#form_block .pay_list li:last-child{
	padding-bottom:10px;
	margin-bottom:0;
}
#form_block .pay_list li .check_icon {
    position: absolute;
    left: 0;
    top: 5px;
    vertical-align: middle;
}
#form_block .pay_list li .check_icon {
    position: absolute;
    left: 0;
    top: 5px;
    vertical-align: middle;
}
#form_block .pay_list li .gold_line {
	background:#ffffcc;	
}

@media screen and (max-width: 840px) {
	
	#form_block .pay_list li {
		font-size:16px;	
	}
	#form_block .pay_conte {
		width:100%;	
	}
	.input_radio + label {
		margin-right:0;	
	}
	#form_block .pay_box p {
		font-size:16px;	
		padding: 20px;
	}
	
	
}

@media screen and (max-width: 640px) {
	
	#form_block .pay_list li {
		font-size:14px;	
	}
	#form_block .pay_box p {
		font-size:14px;	
		/*padding: 10px;*/
	}
	
}

@media screen and (max-width: 420px) {
	
	#form_block .pay_box {
		width:100%;	
		margin-right: 0;
		margin-bottom: 30px;
	}
	#form_block .pay_box:nth-child(2) {
		margin-bottom: 0;
	}
	
}



/*day_wrap*/

#day_wrap {
	margin-top:90px;	
}
#day_wrap h3{
	border-bottom: 1px solid #6a98d0;
    padding-bottom: 10px;	
}
#day_wrap p {
    text-align: center;
    margin: 20px 0 30px;
}
#day_wrap .select_btn {
	display: block;
	padding:0 80px;
    max-width: 100%;
    font-size: 16px;
    font-weight: 500;
    height: 60px;
    line-height: 60px;
    z-index: 100;
    background: #6a98d0;
    margin: 60px auto 0;
    color: #fff !important;
    position: relative;
    -webkit-transition: all .25s ease;
    transition: all .25s ease;
    overflow: hidden;
	border:none;
	cursor: pointer;
}
#day_wrap .select_btn option {
	background:#fff;
	color:#000;
}
/*#day_wrap .link_btn span{
	position:relative;
}
#day_wrap .link_btn span:after {
    content: "";
    position: absolute;
    top: 6px;
    right: -20px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(135deg);
    width: 10px;
    height: 10px;
}*/
#day_wrap .blue{
	background:#6a98d0;
}
#day_wrap .pink{
	background:#f490ca;
}

@media only screen and (max-width: 640px) {
	
	#day_wrap .link_btn {
		margin: 20px auto 0;
	}

}


/*input_box*/
#day_wrap .input_box {
	width:770px;
	margin:0 auto;
	overflow:hidden;	
}
#day_wrap .input_box h4 {
    font-size: 16px;
    margin-bottom: 20px;
}
#day_wrap .input_box .input_conte {
    margin-top: 60px;
}
#day_wrap .input_box dl{
	background:#fff;
	border-radius:10px;
	border:2px solid #8abde7;
}
#day_wrap .input_box .form_h {
    height: 30px;
    width: 100px;
    border: 1px solid #000;
    margin-right: 5px;
}
#day_wrap .input_box .arrow:before {
    position: absolute;
    content: "▼";
    right: 30px;
    top: 0;
    font-size: 10px;
}
#day_wrap .input_box .arrow span {
	margin:0 !important;
}
#form_block #day_wrap input {
    width: 100px;
    padding: 0;
    border-radius: 0;
    border: none;
    height: 30px;
    border: 1px solid;
    margin-right: 5px;
    vertical-align: bottom;
}
#form_block #day_wrap dt {
	text-align:left;
	padding-left: 30px;
}
#form_block #day_wrap dd {
    float: right;
    text-align: right;
    padding-right: 30px;
	padding:10px 0;
}
#form_block #day_wrap .input_link_btn{
	font-size:16px;
	margin-top:20px;
	float:right;
	text-align:right;
	padding-right: 15px;
	position:relative;	
}
#form_block #day_wrap .input_link_btn:before {
    content: "";
    position: absolute;
	top: 11px;
    right: 3px;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
#form_block #day_wrap .input_link_btn:hover{
	text-decoration:underline;
	opacity:0.8;
}


@media only screen and (max-width: 840px) {
	
	#day_wrap .input_box {
		width: 100%;
		margin: 0 auto;
	}

}
@media only screen and (max-width: 640px) {
	
	 #form_block #day_wrap .input_link_btn {
		font-size: 14px;
	  }
	 #form_block .input_conte dt {
		width: 48%;
	}
	#form_block .input_conte dd {
		width: 48%;
		margin: 0 auto;
	}
	
}
@media only screen and (max-width: 420px) {
	
	#form_block #day_wrap dt {
		padding-left: 10px;
	}
	
}


/*calendar*/
.calendar {
    width: 680px;
    margin: 0 auto;
    border-collapse: collapse;
    background: #fff;
    border: 2px solid #8abde7;
}
.calendar caption{
	padding-bottom:20px;
	color: #6a98d0;
    font-size: 16px;
    font-weight: 900;
}
.calendar caption .pink_text{
	color: #f490ca;
}
.calendar caption .blue_text{
	color: #6a98d0;
}
.calendar th,.calendar td{
	height:100px;
	font-size:15px;border:1px solid #bbb;
	text-align:center;
	line-height:30px;
	color:#6b6a6b;
}
.calendar th{
	background:#ffff91;
}
.calendar th:first-child{
	color:#f490ca;
}
.calendar th:last-child{
	color:#6a98d0;
}
.calendar td div{
	text-align:center;
}
.today{
	background:#fffbcc;
}
.saturday {
    background: #f3f9fd;
    color: #6a98d0 !important;
}
.sunday{
	background:#fff5f2;
	color: #f490ca !important;
}
.blank {
	color: #b7b3b7 !important;	
}
.calendar td a{
	text-decoration:underline;
	display:block;
	width:100%;
}
.calendar td a:hover{
	background:#fe814d;
	color:#fff;
	text-decoration:none;
}
.calendar td a:active{
	background:#f30;
}
.calendar .month {
    height: 50px;
    line-height: 50px;
}


@media only screen and (max-width: 1200px) {
	
	.calendar {
		width: 100%;
	}
	
}

/*-----------------------------------

	payment_block

-----------------------------------*/

#payment_block {
    padding: 60px 0;
}
#payment_block h3{
	text-align:left;
	margin-bottom:20px;
}
#payment_block .method_box,
#payment_block .credit_box {
	margin-bottom:40px;	
}
#payment_block .pay_conte {
	overflow:hidden;
}
#payment_block .attention {
    text-align: left;
    padding: 10px;
    background: #ffff91;
    position: relative;
    padding-left: 50px;
    margin-top: 20px;
}
#payment_block .attention_icon {
    position: absolute;
    left: 20px;
    top: 20%;
}
#payment_block ul{
	width:670px;
	margin:0 auto;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-flow: row wrap;
}
#payment_block ul li{
	margin-right:7%;
}
#payment_block ul li:last-child{
	margin-right:0;
}
.input_radio + label::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}
/*.input_radio:checked + label::before {
    border-width: 5px;
    border-color: #ff7bac;
}*/
.input_radio:checked + label::after {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    left: 4px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: #ff7bac;
    border-radius: 50%;
}
#payment_block .input_radio:checked + label::after {
    background: #6a98d0 !important;
}
#payment_block .terms_box {
	width:700px;
	margin:60px auto 0;	
}
#payment_block .terms_text {
		
}
#payment_block .terms_text span{
	color:#6a98d0;
}
#payment_block .link_btn{
	width:600px;
	height:80px;
	margin:60px auto 0;
	border-radius:10px;
	line-height:80px;	
}
/*.input_radio + label::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}
.input_radio + label::after {
	content:none !important;	
}*/
#payment_block input+label {
	padding: 0 0 0 30px;
	font-size:16px;
	width:50%;
	height:auto;
    cursor: pointer;
	float:left;
}
#payment_block .form_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-flow: row wrap;
  margin:60px auto 0;
}
#payment_block input {
    border: 1px solid #999;
	height:100%;
}
#payment_block .form_content dt,
#payment_block .form_content dd {
  font-size: 16px;
  height:50px;
}
#payment_block .form_content dt {
    font-size: 16px;
    background: #fff;
    border: 1px solid #999;
    vertical-align: middle;
    line-height: 50px;
    text-align: left;
    padding-left: 10px;
}
#payment_block .form_content dt {
  width: 25%;
  margin-bottom:20px;
}
#payment_block .form_content dd {
    width: 65%;
    margin-left: 20px;
}
.arrow {
	position:relative;
	display: inline-block;
}
select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none; 
}
.arrow:before {
    position: absolute;
    content: "▼";
    right: 70px;
    top: 10px;
}
.form_h {
	height:50px;
	width:200px;	
}
.arrow span{
	margin:0 20px;
}
.w400 {
	width:400px;	
}
@media only screen and (max-width: 840px) {
	
	#payment_block ul,
	#payment_block .terms_box {
		width:100%;	
		margin: 40px auto 0;
	}
	.w400 {
		width: 100%;
	}
	.form_h {
		width: 40px;
	}
	#payment_block input {
		font-size: 12px;
	}
	.arrow span {
		margin: 0 5px;
	}
	.arrow:before {
		right: 30px;
		font-size: 10px;
	}
	#payment_block .form_content dd {
		width: 55%;
		margin-left: 2%;
	}
	#payment_block .form_content dt {
		width: 40%;
		font-size: 12px;
	}
	#payment_block .attention {
		padding-left: 35px;	
	}
	#payment_block .attention_icon {
		left:5px;	
	}
	
}

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

	#payment_block {
		padding: 40px 0;
	}
	#payment_block .link_btn {
		margin:30px auto 0;	
		height: 60px;
    	line-height: 60px;
	}
	#payment_block .form_content {
		margin: 30px auto 0;	
	}
}

@media only screen and (max-width: 420px) {
	
	#payment_block ul li {
		width:20%;	
	}
	#payment_block input+label {
		font-size:12px;
	}
	
	
}

/*-----------------------------------

	caution_block

-----------------------------------*/

#caution_block {
	padding: 120px 0;	
}
#caution_block h3 {
    text-align: center;
    margin-bottom: 30px;
    color: #666564;
    font-weight: 200;
    font-size: 24px;
}
#caution_block .textarea{
	background:#e2e2e2;
	padding:40px;
}

@media only screen and (max-width: 840px) {
	
	#caution_block {
		padding: 60px 0;	
	}
		
}

@media only screen and (max-width: 640px) {
	
	#caution_block {
		padding: 40px 0;	
	}
	#caution_block h3 {
		font-size:18px;	
	}
		
}

