@charset "utf-8";
/* ================================================== 
COMMON CSS
================================================== */
figure{
	margin:1em 0;
	position:relative;
	text-align: center;
	}
figure img{
	max-width:100%;
	width: auto;
	height:auto;
	box-shadow:0 0 5px rgba(0,0,0,0.50);
	}
figure figcaption{
	text-align:center;
	font-size:.9em;
	font-weight:bold;
	line-height:1.5em;
	height:43px;
	margin:.5em 0;
	overflow:hidden;
	}
/*
figure:after{
	content:"";
	position:absolute;
	width:50%;
	height:40px;
	bottom:50px;
	left:50%;
	margin-bottom:0px;
	margin-left:-25%;
	z-index:-1;
	border-radius:550px;
	box-shadow:0 0 100px rgba(0,0,0,0.50);
	}
*/
.hosoku{
	background-color:#d0eaea;
	padding:1em 3em;
	font-size:.9em;
	margin:1em 0;
	}
table + .hosoku {margin-top: -30px;}
#primary .hosoku p {
	text-indent:-2em !important;
	font-size: 12px;
	margin: .5em;
	letter-spacing: 0;
}
.box{
	margin:1em 0;
	padding:1em;
	background-color:#E8E8E7;
	border-radius:15px;
	}
.box.list_point > li{
	margin-left:1em;
	}
sup{
	font-size:75.5%;
	vertical-align:top;
	position:relative;
	top:-0.1em;
	color:#999;
	}
.cfa:before,.cfa:after {
	content:" ";
    display:block;
    clear:both;
}
/* LIST
----------------------------------------*/
/* 2ndBox */
.list_2ndBox > li{
	float:left;
	margin-left:2%;
	margin-bottom:20px;
	width:49%;
	}
.list_2ndBox > li:nth-child(2n+1){
	margin-left:0;
	}
.list_2ndBox > li img{
	box-shadow:0 0 8px rgba(0,0,0,0.36);
	}
.list_2ndBox > li p{
	font-size:.9em;
	line-height:1.5;
	color:#252525;
	}
/* menuArea */
.list_menuArea{
	margin:2em 0;
	padding:1.5em 1em 1em 0;
	border:solid 3px #eee;
	}
.list_menuArea > li{
	margin:0 0 .5em 1.5em;
	list-style:url(../img/common/h3_sq.png) outside;
	background-color:#009d95;
	}
.list_menuArea > li a{
	display:block;
	text-decoration:none;
	background-color:#f3f7f3;
	line-height:1.8;
	padding:.5em 1em;
	}
/* list_point */
.list_point{margin:2em 1em;}
.list_point > li{
	list-style: url(../img/common/ico_sq.gif) outside;
	line-height:1.8;
	margin-bottom:.5em;
	}
.list_point > li:last-child{ margin-bottom:0;}
/* list_number */
.list_number{
	margin:2em 1em;
	counter-reset:li;
	}
.list_number > li{
	list-style:none;
	position:relative;
	padding-left:2em;
	margin-bottom:.5em;
	}
.list_number > li:before{
	counter-increment:li;
	content: counter(li);
	margin-right:.5em;
	background-color:#3EA789;
	border-radius:50%;
	text-align:center;
	color:#fff;
	width:1.3em;
	height:1.3em;
	position:absolute;
	top:5px;
	left:0;
	line-height:1.4;
	}
/* ================================================== 
CAMPAIGN
================================================== */
table td.cp_2way{ position:relative;}
table td.cp_2way .or{
	display:block;
	position:absolute;
	background:#00cccc;
	color:#333;
	border-radius:50%;
	padding:25px 10px;
	top:50%;
	right:-38px;
	margin-top:-38px;
	}

/* ================================================== 
FEE
================================================== */
.box_fee {
	margin: 2em 0;
}
.box_fee div{
	border-radius:5px;
	box-shadow:0 0 15px rgba(0,0,0,0.30);
	width:32%;
	float:left;
	margin: 0 0 1em 2%;
	background-color:#d5307a;
	}
.box_fee div:first-child,
.box_fee div:last-child{
	margin-left:0;
	}
.box_fee div:last-child{
	width:100%;
	margin: 1em 0;
	}
.box_fee div a{
	/*min-height:200px;*/
	padding:1em;
	text-decoration:none;
	display:block;
	background-color:#fff;
	color:#333;
	}
@media only screen and (max-width:640px){
	.box_fee div{
		width: 98%;
		margin:1em 1%;
	}
	.box_fee div:first-child,
.box_fee div:last-child{
	margin:1em 1%;
	width: 98%;
	}
}
.fee_bt_ul{
	width: 100%;
	margin: 1em auto;
	font-size: 13px;
}
.fee_bt_ul li{
	width: 28%;
	float: left;
	list-style: none;
	padding: .5em;
	border: 1px solid #e2e2e2;
	margin: .5em;
}
.fee_bt_ul li img{
	width: 100%;
}
.fee_bt_ul h3{
	background:none;
	font-size: 100%;
	text-align: center;
	margin: 0;
}
.fee_bt_ul_text {
	font-size: 80%;
	text-align: center;
}
.fee_bt_ul a{
	display: block;
	width: 95%;
	margin: 0 auto 1em;
	text-align: center;
	background-color:#F1B5D0;
	border-radius: 10px;
	padding: .5em 0;
	box-shadow:0 2px 0 #e57fad;
}
.fee_bt_ul a:hover{
	background-color: #F9E3ED;
	transition: 0.5s;
}
.fee_type_ul li{
	width: 45%;
	float: left;
	list-style: none;
	padding: 1em;
}
.fee_type_ul img{
	width: 100%;
}
@media only screen and (max-width:1024px){
	.fee_bt_ul{
		width: 90%;
	margin: 0 5%;
	padding: 0;}
	.fee_bt_ul li{
		width: 100%;
		padding: 0;
		margin:0 0 .5em 0;
	}
	.fee_bt_ul li img{width: 50%; float: left;}
	.fee_type_ul{
		margin: 0;
	padding: 0;
	}
	.fee_type_ul li{
		width: 100%;
		padding: 0;
		margin:0 0 .5em 0;
	}
	.fee_bt_ul a{
		margin-top: 1em;
	}
}

.plan_tb{
	text-align: center;
	width: 90%;
	margin: 1em auto 0;
}
.plan_tb td{
	padding: .5em;
	width: 50%;
	vertical-align: top;
	border: none;
	
}
.plan_tb_box{
	border: 5px solid #00cccc;
}

.plan_tb_box .lh12{
 line-height: 1.2 !important;
}
@media only screen and (max-width:640px){
	.plan_tb td{
		display: block;
		width: 100%;
	}
}

.plan_small, .plan_small * {
	box-sizing: border-box;
}
.plan_small{
	font-size: 90%;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 1em auto;
	width: 85%;
}
.plan_small th,
.plan_small td {
	vertical-align: middle;
	padding: .5em .3em;
	border: 1px solid #EEE;
}
.plan_small th{
	background-color: #F5F3F3;
	color: #000;
	text-align: center;
}

@media only screen and (max-width:640px){
	.plan_small td{
		display: table-cell;
		width: 50%;
	}
}

.fee_area{
	padding: .2em .2em .5em;
	font-size: 120%;
}
.fee_text{
	font-size: 110%;
	font-weight: bold;
	color: #00cccc;
	padding: 2em .2em 0;
}
.plan_title{
	color: #ffffff;
	font-weight: bold;
	font-size: 130%;
	padding: .5em;
	margin: 0;
	background-color: #00cccc;
}
.txt_blue{	color: #00cccc;}
.txt_pink{color: #d5307a;}
.number{
	font-family: Arial, Helvetica, "sans-serif";
}
.txt_300{	font-size: 300%;}
.txt_130{	font-size: 130%;}
.txt_110{font-size: 110%;}
.txt_80{font-size: 80%;}
.txt_c{text-align: center;}
/* ================================================== 
FLOW
================================================== */
.tab{overflow:hidden;}
#flow_area .tab > li{margin-bottom:0;}
.tab li{
	background:#ccc;
	padding:1em 0;
	text-align:center;
	cursor: pointer;
	}
.tab li.select{background:#d5307a; color:#fff; font-weight:bold;}
.tab_content{border:solid 3px #d5307a;}
.tab_content > li{
	padding:20px;
	}
.hide {display:none;}
/* flow_area */
#flow_area dl{
	border:solid 3px #FF837B;
	border-left:none;
	margin-bottom:1em;
	}
#flow_area dl:after{
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	overflow: hidden;
	font-size: 0.1em;
	line-height: 0;
	}
#flow_area dl dt{
	width:100px;
	height:70px;
	background-color:#FF837B;
	display:table-cell;
	vertical-align:middle;
	padding:0 .5em;
	font-size:.8em;
	text-align:center;
	}
#flow_area dl dt .circle{
	background-color:#fff;
	border-radius:50%;
	height:28px;
	width:72px;
	margin:0 auto;
	padding:22px 0;
	font-size:14px;
	line-height:1;
	}
#flow_area dl dd{
	display:table-cell;
	vertical-align:middle;
}
#flow_area dl dd .wrap{
	padding:1em;
	}

/* tel_area */
.tel_area{
	text-align:center;
	}
.tel_area .tel_number{
	font-size:1.5em;
	line-height:1;
	font-weight:bold;
	color:#d5307a;
	}
.tel_area .tel_number img{
	vertical-align: middle;
	box-shadow: none;
	}
.tel_area .tel_time{
	font-size:.9em;
	line-height:1.2;
	color:#1d1d1d;
	margin-top:5px;
	}


@media only screen and (max-width:1024px){
.list_2ndBox li{
	float: none;
	margin-left:0;
	margin-bottom:20px;
	width:100%;
	}
/* flow_area */
#flow_area dl{
	border-left:solid 3px #FF837B;
	}
#flow_area dl dt{
	width:100%;
	height: auto;
	display: block;
	padding:.5em 0;
	}
#flow_area dl dd{
	display: block;
}
#flow_area dl dd .list_2ndBox li,
#tenyou-number .list_2ndBox li{text-align:center;}
}

table.cp_table,
table.cp_table * {
	box-sizing: border-box;
}
table.cp_table {
	border-collapse:  collapse;
	border-spacing:  0;
	margin: 10px auto 40px;
	width: 100%;
	border: none;
}

table.cp_table th,
table.cp_table td {
	vertical-align:  middle;
	padding: 1em;
	text-align: center;
	border: 1px solid #ccc;
}

table.cp_table th {
	font-weight: bold;
	background: #d5307a;
}
table.cp_table th:first-child {
	width: 20%;
}

table.cp_table td.cp_or_wrap {
	position:  relative;
	width:  40%;
}

table.cp_table .cp_or {
	position: absolute;
	display: block;
	text-align: center;
	top: 50%;
	font-weight: bold;
	color: #FFF;
	background: #0a68c2;
	border-radius: 100px;
	padding: 1em;
	width: 4em;
	height: 4em;
	line-height: 2;
	transform: translateY(-50%);
	right: -2em;
}
.cp_table .big {
	line-height: 1.2;
}
@media only screen and (max-width:640px){
	table.cp_table th,
	table.cp_table td {
		padding: .5em;
	}
	table.cp_table th:first-child {
		width: 2em;
		line-height: 1.1;
	}
	table.cp_table td {
		padding: 1.5em .5em;
		font-size: 13px;
		letter-spacing: 0;
	}
	table.cp_table td.cp_or_wrap,
	table.cp_table td.cp_or_wrap2{
		width: 47%;
	}
	table.cp_table .cp_or {
		width: 2em;
		padding: 1em .5em;
		line-height: 1;
		height: auto;
		right: -1em;
	}
	table.cp_table .big {
		font-size: 20px;
	}
}


table.hikaku_tb th,
table.hikaku_tb td {
	text-align: center;
	padding: 2em .5em;
	border: 1px solid #bbb;
}
table.hikaku_tb th {
	background: #317bd6;
	color: #FFF;
	font-weight: bold;
}
table.hikaku_tb th sup {
	color: #ddd;
}
table.hikaku_tb td {
	line-height: 1.4;
}
table.hikaku_tb td .num {
	font-size: 20px;
	font-weight: bold;
	color: #d5307a;
	letter-spacing: 0;
}

/*change*/
p.sankaku{color:#d5307a;margin:0 !important;font-size: 300% !important;}
.kurowaku{border:1px solid black;padding:20px;margin-top:20px}
.akawaku{border:1px solid #d5307a;padding:20px;margin-top:20px}
.kurowaku > p,.akawaku > p{font-weight: 700;font-size: 150% !important;margin: 0 0 10px 0 !important;text-decoration: underline;}
.red{color: #d5307a;} .bold{font-weight:700;}

#iyakukinhoten h3{border:1px solid #d5307a;padding: 15px !important;border-radius: 15px}
#iyakukinhoten h3::after{display:none}
#iyakukinhoten .sankaku{font-size: 170%!important;margin:0 0 -30px 0 !important;}

@media only screen and (max-width: 640px) {
.scroll_ta {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  white-space: nowrap;
  margin-bottom: 1rem;
}
 .scroll_ta::-webkit-scrollbar {
 height: 10px;
 background: #F1F1F1;
 -webkit-appearance: none;
}
 .scroll_ta::-webkit-scrollbar-track {
 background: #F1F1F1;
}
 .scroll_ta::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}
.scroll_ta::before {
  content: "→横にスクロールしてご確認頂けます ";
  color: #d5307a;
  margin-left: 1rem;
}
}
table.ausmaval th{
	text-align: left !important;
}