@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

/* リスト要素をリセットする ---------------- */
dl,dt,dd,ol,ul,li	{
	list-style-position: outside;
	list-style-type: none;
}
/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/* floatの解除 ------------- */
.fbox{
	clear:both;
	_display: inline-block;
	min-height: 1%;
}
.fbox:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
	line-height: 0;
}


/* ===================================================================

	NSD

=================================================================== */
.list_tanka{
	font-size:170%;
}

/* ===================================================================

	スタイルの設定

=================================================================== */
html {
	font-size:16px;
	background: url(../img/bg.png) repeat;
}
body{
	color:#333;
	line-height:1.5;
	margin:0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}
#contents {
	box-sizing: border-box;
}
#contents * {
	box-sizing: border-box;
}
img {
	max-width: 100%;
}



/* ---------------- 上書き ------------- */
strong {font-weight:bold;}
p,li,dl,dt,dd {line-height:1.5;}
.red{	color:#F40027;}
.red2{	color:#DC0000;}
.blue{	color:blue;}
.blue{	color:blue;}
.txt-left {	text-align:left;}
.txt-right {	text-align:right;}


input[type='text'],
textarea,
button {
	font-family: 'Noto Sans JP', sans-serif;
}

.bg {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
	background-color: rgba(51,51,51,0.7);
	display: none;
}

/* ===================================================================
	通常のリンク
=================================================================== */
a:link {
	color: #005FFD;
	text-decoration: none;
}
a:visited {
	color: #005FFD;
	text-decoration:none;
}
a:hover {
	color: #005FFD;
	text-decoration:none;
	opacity: 0.7;
}
a:active {
	color: #005FFD;
	text-decoration:none;
}

button:hover {
	opacity: 0.7;
}
/* メインエリアはリンクにアンダーライン */
/*#main a{
	text-decoration:underline;
}*/

/* ===================================================================
	#header
	ヘッダー
=================================================================== */

header {
	background: #fff;
	border-bottom: solid #0042B0 2px;
}

.h_inner {
	max-width: 1000px;
	margin: 0 auto;
	width: 94%;
	padding: 10px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.page_title {
	display: flex;
	align-items: center;
}
.header_logo {
	display: block;
	margin-right: 15px;
}
.page_title_text {
	font-weight: 700;
	display: block;
}

.header_tel {
	display: flex;
	align-items: center;
}

.header_tel h2 {
	font-weight: 700;
	margin-right: 15px;
	line-height: 1.3;
}

.header_tel span {
	margin-right: 7px;
}
.header_tel a {
	font-size: 1.8rem;
	font-weight: 700;
	color: #000;
}



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


/*address {
    margin: 0;
    padding: 0;
    text-align: center;
    font-style: normal;
	font-size: 10px;
}*/




/* ===================================================================
	共通CSS
=================================================================== */
#main {
	position: relative;
}


/* 
ページャー
--------------------------------------------------------------- */
.pager,
.select_pager,
.explanation_pager {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	margin-bottom: 60px;
	position: relative;
}
.pager::before,
.select_pager::before,
.explanation_pager::before {
	position: absolute;
	top: 20px;
	left: 6%;
	background: #fff;
	height: 10px;
	width: 88%;
	content: "";
}

.pager li,
.select_pager li,
.explanation_pager li {
	width: calc(100% / 6);
	position: relative;
	text-align: center;
}

.pager li span,
.select_pager li span,
.explanation_pager li span {
	color: #B3B3B3;
	background: #fff;
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	text-align: center;
	line-height: 50px;
	font-size: 1.25rem;
	font-weight: 700;
	position: relative;
	z-index: 100;
}

.pager li.current span,
.pager li.current_first span,
.select_pager li.current span,
.select_pager li.current_first span,
.explanation_pager li.current span,
.explanation_pager li.current_first span {
	background: #0042B0;
	color: #fff;
}

.pager li.current::before,
.select_pager li.current::before,
.explanation_pager li.current::before {
	content: "";
	width: 100%;
	height: 10px;
	background: #0042B0;
	position: absolute;
	top: 20px;
	left: -50%;
	z-index: 10;
}

.pager li.current_first::before,
.select_pager li.current_first::before,
.explanation_pager li.current_first::before {
	content: none;
}


/* 
フォーム
--------------------------------------------------------------- */
input[type="button"],
input[type="submit"],
button {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1rem;
	outline : none;
}


input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"] {
	width: 100%;
	padding: 1em;
	border: 1px solid #B3B3B3;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1rem;
	font-weight: 400;
	outline: none;
	border-radius: 0;
}
textarea {
	height: 150px;
	width: 100%;
	padding: 10px;
	outline: none;
	resize: none;
	border: 1px solid #B3B3B3;
}

input[type="text"]::placeholder,
input[type="email"]::placeholder ,
input[type="tel"]::placeholder,
input[type="number"]::placeholder{
	color: #B3B3B3;
}



/* チェックボックス */
input[type="checkbox"] {
	display: none;
}
.checkbox1 {
	cursor: pointer;
	display: block;
	border-radius: 10px;
	background: #F2F2F2;
	text-align: center;
	width: 100%;
	padding: 15px;

}

.checkbox1 span {
	position: relative;
}

.checkbox1 span::before {
	border: 1px solid #000;
	content: '';
	display: block;
	height: 12px;
	left: -17px;
	margin-top: -8px;
	position: absolute;
	top: 15px;
	width: 12px;
}

.checkbox1 span::after {
 	border-right: 2px solid #29ABE2;
	border-bottom: 2px solid #29ABE2;
	content: '';
	display: block;
	height: 9px;
	left: -13px;
	margin-top: -8px;
	opacity: 0;
	position: absolute;
	top: 15px;
	transform: rotate(45deg);
	width: 5px;
}

input[type="checkbox"]:checked + .checkbox1 span::after {
	opacity: 1;
}

input[type="checkbox"]:checked + label {
	background: #EBF2FF;
}

.input_form_radiobtn {
	display: inline-block;
	margin-right: 1em;
}
.input_form_radiobtn:last-child {
	margin-right: 0;
}


select {
	display: block;
	width: 100%;
	padding: 1em;
	padding-right: 2.8em;
	font-size: 1rem;
	font-weight: 400;
	color: #333;
	line-height: 1.5;
	background-color: #fff;
	background-image: url(../img/select_arrow.svg);
	background-repeat: no-repeat;
	background-position: right 0.5rem center;
	background-size: 12px auto;
	border: 1px solid #B3B3B3;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
}



.error {
	color: #DE0000;
	font-weight: 500;
	background: #ffefef;
}
label.error {
	display: block;
	margin-top: 0.5em;
	padding: .5em;
}

.form_select {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-right: 1em;
}
.form_select:last-child {
	margin-right: 0;
}
.form_select select {
	width: auto;
	order:1;
}
.form_select p {
	margin-left: .5em;
	order:2;
}
.form_select label.error {
	width: 100%;
	order:3;
}

.birth_date_inner {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}


/* ラジオボタン共通 */
.radio_btn_def {
	position: relative;
	display: block;
	padding-left: 2em;
	cursor: pointer;
	user-select: none;
	margin-right: 30px;
}

.radio_btn_def input[type="radio"] {
	display: none;
}

.radio_mark {
	position: absolute;
	top: 1px;
	left: 0;
	height: 1.3em;
	width: 1.3em;
	border: solid 1px #B3B3B3;
	border-radius: 50%;
}

.radio_mark:after {
	content: "";
	position: absolute;
	background: #2e80ff;
	border-radius: 50%;
	top: 2px;
	bottom: 2px;
	left: 2px;
	right: 2px;
	opacity: 0;
}
.radio_btn_def  input:checked + .radio_mark:after {
	opacity: 1;
}



/* 
ボタンいろいろ
--------------------------------------------------------------- */

.select_btm_btn_area {
	display: flex;
	justify-content: space-between;
}


.return_btn_area {
	width: 40%;
}
.return_btn_area a {
	
}
.next_btn_area {
	width: 60%;
}

a.return_btn,
.return_btn,
a.next_btn,
.next_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 94%;
	padding: .7em 1em;
	text-align: center;
	border-radius: 10px;
	position: relative;

	font-weight: 700;
	box-shadow: 3px 3px 8px rgba(0,0,0, 0.1);
	cursor:pointer;
}
a.return_btn,
.return_btn {
	max-width: 8em;
	padding-left: 2em;
	background: #fff;
	border: solid #0042B0 1px;
	color: #0042B0;
}
a.next_btn,
.next_btn {
	max-width: 20em;
	margin: 0 0 0 auto;
	padding-right: 2em;
	background: #0042B0;
	color: #fff;
	border: solid 1px #0042B0;
}
.return_btn span,
.next_btn span {
	position: absolute;
	display: flex;
	align-items: center;
	top: 0;
	bottom: 0;
	font-size: 12px;
}
.return_btn span {
	left: 1.3em;
	color: #0042B0;
	font-size: 12px;
}
.next_btn span {
	right: 1.3em;
	color: #fff;
}






/* ===================================================================
	ページャー
=================================================================== */
.explanation_inner {
	margin-bottom: 55px;
}

.explanation_box {
	background: #fff;
 	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 20px;
	margin-bottom: 35px;
}

.explanation_box h4 {
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 25px;
}

.explanation_box p {
	text-align: center;
	font-size: 1.125rem;
	margin-bottom: 15px;
}

.explanation_box p span {
	color: #DE0000;
	font-size: 17px;
	padding-right: 7px;
}

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






/* ===================================================================
	申し込みトップページ
=================================================================== */

.subscription_top_content {
	padding: 55px 0 290px;
}

.sub_inner {
	background: #FFFFFF;
	max-width: 1000px;
	margin: 0 auto;
	width: 94%;
	border-radius: 9px;
	padding: 75px 70px 75px;
	box-shadow: 2px 2px 7px rgba(0,66,176, 0.05);
}

.sub_top_txt {
	text-align: center;
	margin-bottom: 75px;
}

.sub_top_txt h3 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 35px;
	text-align: center;
}

.sub_top_txt h3 span {
	display: block;
	margin-bottom: 25px;
}

.sub_top_txt p {

	font-weight: 400;
}

/* 
申し込みボタン
--------------------------------------------------------------- */
.sub_next_btn {
	background: #0042B0;
	border-radius: 10px;
	text-align: center;
	position: relative;
	font-size: 1.8rem;
	font-weight: 700;
	max-width: 600px;
	margin: 0 auto;
	width: 94%;
	padding: 42px 15px;
	display: block;
}

.sub_next_btn_area a {
	color: #fff;
}
.right_arrow {
	position: absolute;
	top: 45px;
	right: 15px;
	font-size: 23px;
}



/* ===================================================================
	当社おすすめコースページ
=================================================================== */

.recommended_content {
	padding: 33px 0 85px;
}

.rec_wrap {
	max-width: 1000px;
	margin: 0 auto;
	width: 94%;
}



.rec_inner {
	background: #fff;
	border-radius: 9px;
	padding: 65px 0 50px;
	margin-bottom: 40px;
	box-shadow: 2px 2px 7px rgba(0,66,176, 0.05);
}

.rec_inner h3 {
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
	margin-bottom: 27px;
}

.course_list {
	max-width: 820px;
	margin: 0 auto 55px auto;
	width: 94%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}

.course_list li {
	border: solid 2px #0042B0;
	border-radius: 13px;
	width: 49%;
	padding: 25px 35px 20px;
}

.course_list li h4 {
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 10px;
}

.course_txt_area p {
	text-align: center;
	margin-bottom: 15px;
}

.rec_course_icon {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}

.rec_course_icon img {
	margin: 1px 4px 0 4px;
}

.rec_course_icon p {
	text-align: center;
	font-size: 12px;
	font-weight: 700;
}

.rec_course_tv_icon {
	color: #00AEFF;
}

.rec_course_pc_icon p {
	color: #FD58A2;
}

/* おすすめコース */
.recommended_course_list {
	display: flex;
	justify-content: center;
	max-width: 820px;
	width: 94%;
	margin: 0 auto 55px auto;
	align-items: stretch;
}
.recommended_course_list li {
	width: 49%;
	margin: 0 auto;
	display: flex;
}
.recommended_course_list li a {
	display: block;
	width: 100%;
	padding: 20px 20px 25px;
	border: solid 2px #0042B0;
	border-radius: 13px;
	color: #333;
}
.recommended_course_list_title {
	margin: 5px 0 20px;
	text-align: center;
	font-size: 1.3rem;
	font-weight: 700;
	color: #666;
}
.recommended_course_list_title span {
	margin-right: .1em;
	font-size: 160%;
}
.recommended_course_ouchi .recommended_course_list_title span {
	color: #00AEFF;
}
.recommended_course_clover .recommended_course_list_title span {
	color: #37C400;
}

.recommended_course_list_txt {
	text-align: center;
	font-weight: 400;
}


/* 
シミュレーションボタン
--------------------------------------------------------------- */
.sub_next_btn_area {
	text-align: center;
}

.rec_next_btn {
	background: #0042B0;
	max-width: 600px;
	margin: 0 auto;
	width: 94%;
	border-radius: 10px;
	padding: 33px 15px 33px 30px;
	display: block;
	position: relative;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.6;
}

.simulation_icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 25px;
	display: flex;
	align-items: center;
}

.right_arrow_rec {
	position: absolute;
	top: 45px;
	right: 15px;
	font-size: 25px;
	color: #fff;
}




/* ===================================================================
	対応エリア検索ページ
=================================================================== */

.search_area_content {
	padding: 30px 0 60px;
}

.search_area_inner {
	background: #fff;
	border-radius: 9px;
	padding: 80px 3%;
	margin-bottom: 35px;
	box-shadow: 2px 2px 7px rgba(0,66,176, 0.05);
}

.search_area_top {
	margin-bottom: 45px;
}

.search_area_top h3 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 32px;
	text-align: center;
}

.search_area_top p {

	text-align: center;
}


/* 
検索フォーム
--------------------------------------------------------------- */
.search_content {
	margin-bottom: 40px;
}

.search_content h4 {
	font-size: 1.25rem;
	font-weight: 700;
	margin-bottom: 15px;
	text-align: center;
}

.search_container {
	position: relative;
	border: 1px solid #0042B0;
	display: block;
	border-radius: 10px;
	max-width: 400px;
	width: 100%;
	margin: 0 auto 13px;
	overflow: hidden;
}

.search_container input[type="text"],
.search_container input[type="number"] {
	border: none;
	width: 100%;
}

.search_container input[type="button"],
.search_container input[type="submit"],
.cpcode_form input[type="submit"] {
	max-width: 100px;
	width: 30%;
	color: #fff;
	position: absolute;
	height: 100%;
	right:0px;
	top: 0;
	background: #0042B0;
	border: 1px solid #0042B0;
}

.search_content p {
	text-align: center;
}

.search_content p span {
	color: #005FFD;
	font-size: 12px;
	margin-right: 5px;
}

.search_content a {
	color: #005FFD;
	text-decoration: underline;
}


/* 検索結果 */
.search_result_area {
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
	padding: 30px;
	background: #EBF2FF;
	border-radius: 10px;
}
.search_result_area h4 {
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 15px;
}
.search_result_area p {

	margin-bottom: 35px;
	text-align: center;
}

.search_result_area p span {
	margin-right: 10px;
}

.area_err_img {
	margin-top: 40px;
	text-align: center;
}


/* ===================================================================
	サービス選択ページ
=================================================================== */
.select_content {
	padding: 15px 0 90px;
}
.select_inner {
	max-width: 1100px;
	margin: 0 auto;
	width: 94%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}



/* 
料金シミュレーション　サイド（計算エリア）
--------------------------------------------------------------- */
.simulation_result_area {
	box-shadow: 2px 2px 7px rgb(0,66, 176,0.05);
	background: #fff;
	max-width: 220px;
	width: 94%;
}
.simulation_result_area h3 {
	text-align: center;
	background: #0042B0;
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	padding: 10px 20px;
}

.simulation_result_area h4 {
	font-weight: 700;
	text-align: center;
	background: #B7D2FE;
	padding: 7px;
}

.result_cost_list li,
.result_service_list li {
	border-bottom: solid 1px #E6E6E6;
}

.result_cost_list li:last-child,
.result_service_list li:last-child {
	border-bottom: none;
}

.result_cost_list li {
	padding: 6px 17px;
}

.result_cost_list li p.price {
	font-size: 14px;
	text-align: right;
	font-weight: 700;
}

.result_cost_list li p.price span {
	font-size: 1.8rem;
	margin-right: 3px;
}

.result_cost_list li.breakdown_list {
	display: flex;
	justify-content: space-between;
	padding: 13px 17px;
}

.breakdown_txt {
	font-weight: 700;
}

.breakdown_price {
	text-align: right;
}

.breakdown_price p {
	margin-bottom: 3px;
	font-weight: 400;
}

.breakdown_price span {
	margin: 0 3px 0 30px;
}


.result_service_list li {
	padding: 8px 10px;
	display: flex;
	align-items: center;
}

.result_service_list li span {
/*	display: inline-block;*/

}
.simu_icon {
	margin-right: 15px;
	flex-shrink: 0;
	flex-grow: 0;
}
.simu_icon img {
	width: 40px;
	height: 40px;
}

.result_service_list li span.op_name {
	display: block;
	padding: 5px 0;
	border-bottom: 1px solid #E6E6E6;
}
.result_service_list li span.op_name:last-child {
	border: none;
}



/* 
サービス選択　メイン
--------------------------------------------------------------- */

.select_content_right {
	max-width: 800px;
	width: 94%;
	margin: 20px 0 0;
	margin-left: 20px;
	/*	margin: 18px 60px 0 80px;*/
}


.select_service_top {
	text-align: center;
	margin-top: 60px;
	margin-bottom: 35px;
}

.select_service_top h3 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 32px;
}

.select_service_box,
.select_service_box_last {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 30px 20px;
	margin-bottom: 60px;
}

.select_service_box_last {
	margin-bottom: 35px;
}

.select_service_box h4,
.select_service_box_last h4 {
	text-align: center;
	margin-bottom: 40px;
	font-size: 1.8rem;
	font-weight: 700;
}

.select_service_box h4 span,
.select_service_box_last h4 span,
.select_cp_box h4 span {
	display: block;
	margin-bottom: 5px;
}

.select_title_icon {
	display: block;
	margin-bottom: 5px;
}
.select_title_icon img {
	width: 50px;
	height: auto;
}

.select_btn_area {
	
}
.course_title {
	margin-bottom: 15px;
	padding: .3em;
	font-size: 1.2rem;
	font-weight: 700;
	text-align: center;
	color: #fff;
}
#tv_list_area .course_title {
	background: #00AEFF;
}
#select_service_box_tel .course_title {
	background: #37C400;
}
.course_catchcopy {
	margin-bottom: 10px;
	font-weight: 500;
	text-align: center;
}
.select_btn_area_top {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 10px;
}
.select_radio_btn {
/*	display: flex;*/
	width: 48.5%;
	margin-bottom: 3%;
	text-align: center;
}

input.radiobtn {
	display: none;
}

.select_radio_btn label {
	padding: 30px 1em;
}
.select_radio_btn label,
.subscribed_btn label {
	display: block;
	width: 100%;
	cursor: pointer;
	background: #F2F2F2;
	border-radius: 10px;
	text-align: center;
	font-size: 1.25rem;
	font-weight: 700;
}

.radio_btn_note {
	display: block;
	margin-top: 10px;
	font-size: .8rem;
	font-weight: 400;
}

/* 申し込まない */
.subscribed_btn{
	max-width: 370px;
	margin: 10px auto 0;
	width: 94%;
}
.subscribed_btn label {
	padding: 15px 10px;
	color: #333;
}


/* 各種ラベルの色 */
.tv_radiobtn label {
	color: #00AEFF;
}
.net_radiobtn label {
	color: #FD58A2;
}
.ss_radiobtn label {
	color: #FF7800;
}
.tel_radiobtn label {
	color: #37C400;
}
.discount_use_btn label {
	color: #333;
	padding: 30px;
}
.other_op_radiobtn label {
	color: #7B5DA2;
}


/* チェック時の色 */
.select_radio_btn input[type="checkbox"]:checked + label,
.subscribed_btn input[type="checkbox"]:checked + label,
.select_radio_btn input[type="radio"]:checked + label,
.subscribed_btn input[type="radio"]:checked + label {
	color: #fff;
}

.tv_radiobtn input[type="checkbox"]:checked + label,
.tv_radiobtn input[type="radio"]:checked + label,
.tv_subscribed_btn input[type="checkbox"]:checked + label,
.tv_subscribed_btn input[type="radio"]:checked + label {
	background: #00AEFF;
}
.net_radiobtn input[type="checkbox"]:checked + label,
.net_subscribed_btn input[type="checkbox"]:checked + label,
.net_radiobtn input[type="radio"]:checked + label,
.net_subscribed_btn input[type="radio"]:checked + label {
	background: #FD58A2;
}
.ss_radiobtn input[type="checkbox"]:checked + label,
.ss_subscribed_btn input[type="checkbox"]:checked + label,
.ss_radiobtn input[type="radio"]:checked + label,
.ss_subscribed_btn input[type="radio"]:checked + label {
	background: #FF7800;
}
.tel_radiobtn input[type="checkbox"]:checked + label,
.tel_subscribed_btn input[type="checkbox"]:checked + label,
.tel_radiobtn input[type="radio"]:checked + label,
.tel_subscribed_btn input[type="radio"]:checked + label {
	background: #37C400;
}
.other_op_radiobtn input:checked + label {
	background: #7B5DA2;
}
.discount_use_btn input[type="checkbox"]:checked + label,
.discount_use_btn input[type="radio"]:checked + label {
	background: #DE0000;
}



/* スマートステーション */
.ss_txt {
	text-align: center;
	margin-bottom: 35px;
}
.ss_radiobtn,
.ss_subscribed_btn {
	max-width: 370px;
	margin: 0 auto;
	width: 94%;
}
.ss_subscribed_btn {
	margin-top: 20px;
}

/* 電話 */
.select_tel_want {
	margin-top: 40px;
}
.select_tel_want_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
}
.select_tel_want_list > div {
	width: 47%;
}
.select_tel_want_list > div .radio_btn_def {
	margin-right: 0;
}
input[type="text"].tel_new_txt {
	width: calc(100% - 2em);
	margin-left: 2em;
	margin-top: .8em;
}

/* 割引 */
.discount_use_btn {
	width: 100%;
}


/* 各オプション選ぶ　トグルで開閉 */
.select_service_option {
	margin-top: 40px;
}
.select_option_title {
	padding: 0.5em 2em;
	font-size:1.4rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
	position: relative;
	cursor: pointer;
}
.select_option_tv .select_option_title {
	background: #00AEFF;
}
.select_option_net .select_option_title {
	background: #FD58A2;
}
.select_option_title::after {
	content: '\f13a';
	font-family: 'Font Awesome 5 Free';
	display: block;
	width: 1em;
	height: 1em;
	line-height: 1;
	position: absolute;
	top: calc(50% - .5em);
	right: .5em;
}
.select_option_title.active::after {
	content: '\f139';
}
.option_list {
	display: none;
	padding-top: 20px;
}



/* ===================================================================
	キャンペーン選択ページ
=================================================================== */

.select_cp_content {
	padding: 18px 0 60px;
}
.result_cp_list {
	padding-bottom: 8px;
}

.result_cp_list li {
	padding: 4px 10px 0 15px;
	position: relative;
}

.result_cp_list li:before {
	content:  "";
	width:  3px;
	height:  3px;
	display:  inline-block;
	background: #000;
	border-radius:  50%;
	position: absolute;
	top: 13px;
	left: 10px;
}

.cp_radiobtn {
	width: 100%;
}

.select_cp_box {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 30px 20px 20px;
	margin-bottom: 40px;
}

.select_cp_box h4 {
	text-align: center;
	margin-bottom: 25px;
	font-size: 1.8rem;
	font-weight: 700;
}

.cp_radiobtn label {
	cursor: pointer;
	background: #F2F2F2;
	border-radius: 10px;
	font-size: 1.25rem;
	font-weight: 400;
	display: block;
}

.cp_radiobtn label span {
	color: #00AEFF;
	display: block;
	font-weight: 700;
	font-size: 22px;
	margin-bottom: 10px;
}

 .cp_radiobtn label {
	 padding: 18px 30px;
	 margin-bottom: 18px;
}

.cpcode_txt {
	font-weight: 400;
	text-align: center;
	margin-bottom: 35px;

}

.cpcode_form {
	position: relative;
	border: 1px solid #0042B0;
	display: block;
	border-radius: 10px;
	width: 100%;
	overflow: hidden;
	margin-bottom: 15px;
}

.cpcode_form input[type="text"] {
	border: none;

	font-weight: 400;
	width: 94%;
	padding: 15px;
}



/* ===================================================================
	選択内容確認ページ
=================================================================== */

.confirmation_select_content {
	padding: 18px 0 380px;
}

.select_detail_area {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
    padding: 20px;
    margin-bottom: 40px;
}

.select_detail_box {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	padding: 20px 0;
	justify-content: space-between;
}

.select_detail_box {
	border-radius: 10px;
}

.select_detail_box.select_detail_box_tv {
	border: solid 1px #00AEFF;
}
.select_detail_box.select_detail_box_net {
	border: solid 1px #FD58A2;
}
.select_detail_box.select_detail_box_tel {
	border: solid 1px #37C400;
}
.select_detail_box.select_detail_box_option{
	border: solid 1px #7B5DA2;
}
.select_detail_box.select_detail_box_discount {
	border: solid 1px #DE0000;
}
.select_detail_box.select_detail_box_campaign {
	border: solid 1px #0042B0;
}
.select_detail_box.select_detail_box_period {
	border: solid 1px #0042B0;
}

.select_detail_box:nth-child(4) li {
	padding: 5px 10px;
}

.select_detail_box:nth-child(6) h4 {
	line-height: 1.2;
}

.select_detail_title {
	max-width: 200px;
	width: 94%;
}

.select_detail_name_list {
	max-width: 520px;
	width: 94%;
	padding-right: 20px;
}

.select_detail_title h4 {
	font-size: 1.25rem;
	font-weight: 700;
	text-align: center;
}

.select_detail_title h4 span {
	display: block;
	margin-bottom: 5px;
}
.select_detail_title h4 span img {
	width: 60px;
}

.select_detail_box_tv h4 {
	color: #00AEFF;
}
.select_detail_box_net h4 {
	color: #FD58A2;
}
.select_detail_box_tel h4 {
	color: #37C400;
}
.select_detail_box_option h4{
	color: #7B5DA2;
}
.select_detail_box_discount h4{
	color: #DE0000;
}
.select_detail_box_campaign h4 {
	color: #0042B0;
}
.select_detail_box_period h4 {
	color: #0042B0;
}


.select_detail_name_list li {
	padding: 21px 0 21px 10px;
	font-size: 1.25rem;
	font-weight: 400;
	border-bottom: dashed #CCCCCC 1px;
}

.select_detail_name_list li:last-child {
	border: none;
}



/* 申し込み後の連絡 */
.select_contact_box {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0 66 176 / 5%);
	padding: 30px 20px 35px 20px;
	margin-bottom: 40px;
}

.select_contact_box h3 {
	text-align: center;
	margin-bottom: 30px;
	font-size: 1.8rem;
	font-weight: 700;
}

.contact_radiobtn label {
	color: #000;
	padding: 32px 10px;
}


/* ===================================================================
	重要説明ページ
=================================================================== */
.explanation_content {
	max-width: 800px;
	margin: 0 auto;
	width: 94%;
	padding: 35px 0 340px;
}


/* ===================================================================
	注意書き
=================================================================== */
.instructions_txt p {

	font-weight: 400;
	line-height: 1.7;
}



/* ===================================================================
	お客様情報入力ページ
=================================================================== */
.customer_information_content {
	padding: 35px 0 45px;
	max-width: 800px;
	margin: 0 auto;
	width: 94%;
}

.input_form_area {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 35px 40px 32px;
	margin-bottom: 30px;
	display: block;
}

tbody {
	display: block;
}

.input_form_area tr {
	margin-bottom: 35px;
	display: flex;
	justify-content: space-between;
}

.input_form_area th,
.confirmation_list th {
	display: flex;
	justify-content: space-between;
	width: 32.5%;
	align-items: center;
}

.input_form_area th h4,
.confirmation_list th h4 {

	font-weight: 700;
}

.input_form_area th span,
.confirmation_list th span {
	background: #DE0000;
	color: #fff;
	text-align: center;
	border-radius: 15px;
	padding: 4px 10px;
	font-size: 14px;
	font-weight: 500;
}

.input_form_area td,
.confirmation_list td {
	width: 65%;
	font-weight: 400;

}









/* ===================================================================
	性別
=================================================================== */

.sex_box {
	padding: 15px 0;
}

.input_form_area td.sex {
	display: flex;
}

.sex_radio,
.address_radio,
.address_radio_first,
.build_radio {
	position: relative;
	display: block;
	padding-left: 30px;
	cursor: pointer;
	user-select: none;
	margin-right: 30px;
}

.sex_radio input,
.address_radio input,
.address_radio_first input,
.build_radio input {
	display: none;
}


.sex_radio input:checked + .radio_mark:after,
.address_radio input:checked + .radio_mark:after,
.address_radio_first input:checked + .radio_mark:after,
.build_radio input:checked + .radio_mark:after {
	opacity: 1;
}

/* ===================================================================
	加入先建物形態
=================================================================== */

.build_box {
	padding: 15px 0 25px;
}

/* ===================================================================
	加入先住所
=================================================================== */
.address_area_top,
.address_area {
	align-items: flex-start;
}

.address_area_top {
	padding-bottom: 15px;
}

.address_area_top span {
	display: block;
	margin-bottom: 3px;
}

.address_txt {
	padding: 15px 0 4px;
}

/* ===================================================================
	現住所
=================================================================== */

.address_radio_first {
	margin-bottom: 15px;
}

/* ===================================================================
	連絡先電話番号
=================================================================== */

.input_form_area tr.tel_table {
	margin-bottom: 30px;
}

/* ===================================================================
	希望日時
=================================================================== */

.input_form_area tr.preferred_area {
	align-items: flex-start;
}

.preferred_area th {
	padding-top: 20px;
}

.preferred_area p {
	margin-bottom: 5px;
}

.preferred_date_box {
	width: 100%;
}

.preferred_date_area_top {
	margin-bottom: 13px;
}




.input_form_area tr:last-child {
	margin-bottom: 0;
}

/* ===================================================================
	お客様情報確認ページ
=================================================================== */

.confirmation_customer_information_content {
	padding: 35px 0 400px;
	max-width: 800px;
	margin: 0 auto;
	width: 94%;
}

.confirmation_list {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 35px 35px 40px;
	display: block;
}

.confirmation_list tr {
	margin-bottom: 65px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.confirmation_list tr:last-child {
	margin-bottom: 0;
}

.birth_date_txt span {
	padding: 0 3px;
}

.confirmation_list tr.birth_list {
	margin-bottom: 70px;
}


.confirmation_list tr.confirmation_address_area_top {
	margin-bottom: 50px;
}

.address_list_txt {
	line-height: 1.6;
}

.confirmation_list tr.confirmation_address_area {
	margin-bottom: 55px;
}


.confirmation_list tr.preferred_area {
	margin-bottom: 40px;
}


.confirmation_list tr.tel_list {
	margin-bottom: 45px;
}

.preferred_date_subtitle {
	padding-bottom: 5px;
}

.preferred_date_inner_txt span {
	padding: 0 5px;
}

.preferred_date_txt {
	margin-bottom: 25px;
}

/* ===================================================================
	完了ページ
=================================================================== */

.complete_content {
	padding: 35px 0 155px;
	max-width: 800px;
	margin: 0 auto;
	width: 94%;
}

.complete_txt_area {
	background: #fff;
	border-radius: 10px;
	box-shadow: 2px 2px 7px rgb(0,66,176,0.05);
	padding: 30px 30px 43px;
	display: block;
}

.complete_txt_area p {
	text-align: center;
	font-weight: 400;

	margin-bottom: 30px;
	line-height: 1.6;
}

.complete_txt_area h4 {
	text-align: center;
	font-size: 1.125rem;
	font-weight: 700;
}


.complete_btn_area {
	margin: 40px 0 0;
	text-align: center;
}
.btn_card_add {
	max-width: 18em;
	width: 100%;
	padding: 1em;
	border: none;
	color: #fff;
	font-weight: 700;
	font-size: 1.6rem;
	background: #DE0000;
	border-radius: 10px;
	position: relative;
}
.btn_card_add .right_arrow {
	display: flex;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
}


/* ===================================================================
	レスポンシブ対応用
=================================================================== */

/* タブレット */
@media ( max-width : 960px ){
	.page_title_text {
		font-size: 1rem;
	}
	.header_tel h2 {
		display: none;
	}
	.header_tel a {
		font-size: 1.6rem;
	}
	.header_tel a span img {
		width: auto;
		height: 1.6rem;
	}
	
	/* ページャー */
	.explanation_pager,
	.select_pager {
		margin-bottom: 7%;
	}
	
	
	.sub_inner {
		padding: 60px;
	}
	.course_list li {
		padding: 25px 30px 20px;
	}
	
	.course_list li h4 {
		font-size: 23px;
	}
	
	
	.rec_next_btn {
		padding: 33px 15px;
	}
	
	.simulation_icon {
		left: 15px;
	}
	.simulation_icon img {
		width: 35px;
	}
	
	.recommended_course_list {
		display: block;
	}
	.recommended_course_list li {
		width: auto;
		margin-bottom: 20px;
	}
	
	
	.select_radio_btn label,
	.subscribed_btn label {
		font-size: 1rem;
	}
	.select_radio_btn label {
		padding: 20px .5em;
	}
	.course_title {
		font-size: 1rem;
	}
	
	.select_detail_title {
		max-width: 160px;
	}
	
	.select_detail_title h4 {
		font-size: 21px;
	}

	.select_detail_name_list li {
		font-size: 17px;
	}
	
	.select_tel_want_list > div {
		width: 100%;
		margin-bottom: 1em;
	}
	
	.contact_radiobtn label {
		padding: 27px 10px;
	}
	
}

@media screen and (max-width: 768px) {
	.header_logo {
		margin-right: 5px;
	}
	.header_logo img {
		width: 150px;
	}
	.page_title_text {
		font-size: .8rem;
	}
	.header_tel a {
		font-size: 1rem;
	}
	
	
	#main {
		padding-top: 100px;
	}
	
	.simulation_result_area {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		max-width: inherit;
		z-index: 200;
	}
	.simulation_result_area h3 {
		font-size: 1rem;
	}
	.simulation_cost {
		display: flex;
		justify-content: space-between;
	}
	.simulation_cost h4 {
		display: flex;
		align-items: center;
		font-size: .8rem;
		font-weight: 500;
	}
	.result_cost_list {
		flex-shrink: 1;
		flex-grow: 1;
	}
	.result_cost_list li {
		border: none;
	}
	.result_cost_list li.breakdown_list,
	.simulation_service,
	.simulation_option {
		display: none;
	}
	.result_cost_list li p.price span {
		font-size: 1.6rem;
	}
	
	.select_content {
		padding: 30px 0 95px;
	}
	.select_content_right {
		margin: 0 auto;
		width: 100%;
	}
	.select_option_title {
		font-size: 1.1rem;
	}
	
	.select_cp_content {
		padding: 30px 0 60px;
	}
	.select_option_title{
		
	}
	.confirmation_select_content {
		padding: 30px 0 100px;
	}
	
	.select_detail_name_list li {
		font-size: 1.25rem;
	}
	
	.input_form_area tr,
	.input_form_area th,
	.input_form_area td {
		display: block;
		width: 100%;
		text-align: left;
	}
	
	.input_form_area th,
	.confirmation_list th {
		display: flex;
		justify-content: flex-start;
		text-align: left;
		margin-bottom: .5em;
	}
	.input_form_area th h4,
	.confirmation_list th h4 {
		margin-right: 1em;
/*		display: inline-block;*/
	}

}


/* スマホ（横） */
@media screen and (max-width: 600px) {
	

	.subscription_top_content {
		padding: 55px 0 100px;
	}
	
	.sub_inner {
		padding: 40px;
	}
	

	.sub_next_btn {
		font-size: 27px;
		padding: 37px 15px;
	}
	
	.right_arrow {
		top: 41px;
	}
	

	.pager li span,
	.select_pager li span,
	.explanation_pager li span {
		width: 40px;
		height: 40px;
		line-height: 40px;
		font-size: 17px;
	}
	
	.pager::before,
	.select_pager::before,
	.pager::before {
		height: 6px;
		top: 17px;
	}
	.pager li.current::before,
	.select_pager li.current::before,
	.pager li.current::before {
		height: 6px;
		top: 17px;
	}
	

	.rec_inner {
		padding: 35px 0 50px;
	}
	
	.course_list {
		display: block;
	}
	
	.course_list li {
		width: 100%;
		margin-bottom: 20px;
		padding: 25px;
	}
	
	
	.rec_next_btn {
		padding: 23px 10px;
		font-size: 14px;
	}
	
	.simulation_icon img {
		width: 25px;
	}
	
	
	.right_arrow_rec {
		top: 35px;
		right: 10px;
		font-size: 1.25rem;
	}
	

	
	.search_area_inner {
		padding: 40px 10px;
	}


	
	.select_service_box h4, 
	.select_service_box_last h4,
	.select_cp_box h4 {
		font-size: 29px;
	}
	
	.radio_btn {
		width: 100%;
	}

	.select_detail_name_list li {
		padding: 16px 0 16px 10px;
		font-size: 17px;
	}
	
	.select_detail_box:nth-child(4) {
		padding: 13px 0;
	}
	

	.select_contact_box h3 {
		font-size: 27px;
	}
	
	.contact_radiobtn label {
		padding: 22px 10px;
	}
	

	.explanation_content {
		padding: 30px 0 100px;
	}
	

	.explanation_pager::before {
		top: 17px;
	}
	.explanation_pager li.current::before {
		left: -50px;
		width: 60px;
		top: 17px;
	}
	
	.explanation_box h4 {
		margin-bottom: 15px;
	}


	.input_form_area th h4,
	.confirmation_list th h4 {
		font-size: 14px;
	}
	
	input[type="text"],
	input[type="email"],
	input[type="tel"] {
		font-size: 14px;
		padding: 10px;
	}
	
	.input_form_area tr {
		margin-bottom: 30px;
	}
	
	.birth_date_inner p {
		padding-left: 5px;
	}
	
	.input_form_area td,
	.confirmation_list td{
		font-size: 14px;
	}
	
	.radio_mark {
		height: 15px;
		width: 15px;
	}
	
	.sex_radio, .address_radio,
	.address_radio_first,
	.build_radio {
		margin-right: 15px;
		padding-left: 25px;
	}
	
	
	textarea {
		font-size: 14px;
	}
	

	.confirmation_customer_information_content {
		padding: 35px 0 100px;
	}
	
	.confirmation_list tr,
	.confirmation_list tr.birth_list,
	.confirmation_list tr.confirmation_address_area_top,
	.confirmation_list tr.confirmation_address_area ,
	.confirmation_list tr.tel_list,
	.confirmation_list tr.preferred_area {
		margin-bottom: 35px;
	}
	
	.btn_card_add {
		font-size: 1.2rem;
	}
	.btn_card_add .right_arrow {
		font-size: 1.2rem;
	}
}

/* スマホ用（縦） */
@media screen and (max-width: 480px) {
	
	.header_tel br {
		display: none;
	}
	

	.h_inner {
		padding: 10px 0;
	}
	
	.page_title_text {
		padding: 0;
	}
	
	.header_logo {
		margin-right: 0;
	}
	
	.header_tel,
	.page_title {
		display: block;
		text-align: center;
	}
	
	.header_tel h2 {
		margin-right: 0;
	}
	
	

	.subscription_top_content {
		padding: 30px 0 100px;
	}
	
	.sub_inner {
		padding: 30px 10px;
	}
	
	.sub_top_txt h3 {
		font-size: 24px;
	}
	
	.sub_top_txt {
		margin-bottom: 30px;
	}
	
	.sub_top_txt h3 span img {
		width: 70px;
	}
	
	.sub_top_txt h3 span {
		margin-bottom: 15px;
	}
	

	.sub_next_btn {
		font-size: 21px;
		padding: 28px 10px;
	}
	
	.right_arrow {
		right: 9px;
		font-size: 1.125rem;
		top: 31px;
	}
	

	.recommended_content {
		padding: 25px 0 85px;
	}
	

	
	.pager::before,
	.select_pager::before,
	.explanation_pager::before {
		top: 15px;
	}
	.pager li span,
	.select_pager li span,
	.explanation_pager li span {
		width: 36px;
		height: 36px;
		font-size: 15px;
		line-height: 36px;
	}
	.pager li.current::before,
	.select_pager li.current::before,
	.explanation_pager li.current::before {
		top: 15px;
	}
	
	.rec_inner {
		padding: 30px 0;
	}
	
	.rec_inner h3 {
		font-size: 27px;
	}
	
	.course_list li {
		padding: 20px;
	}
	
	.course_list {
		margin-bottom: 30px;
	}

	

	.simulation_icon {
		left: 10px;
	}
	
	.simulation_icon img {
		width: 20px;
	}
	
	.rec_next_btn {
		padding: 18px 10px;
		font-size: 12px;
	}
	
	.right_arrow_rec {
		top: 27px;
		right: 7px;
		font-size: 15px;
	}
	

	.return_btn,
	.next_btn {
		font-size: 14px;
	}
	
	.return_btn span {
		top: 12px;
	}
	
	
	.search_area_content {
		padding: 25px 0 55px;
	}
	
	
	.search_area_inner {
		padding: 30px 10px;
	}
	
	.search_area_top {
		margin-bottom: 35px;
	}
	
	.search_area_top h3 {
		font-size: 27px;
		margin-bottom: 22px;
	}

	
	.search_container input[type="submit"] {
		max-width: 90px;
	}
	
	.search_content a {
		font-size: 14px;
	}
	

	.search_result_area {
		padding: 20px 10px;
	}
	
		.search_result_area p {
		margin-bottom: 30px;
	}


	.select_content {
		padding: 25px 0 55px;
	}
	
	
	.select_service_top h3 {
		margin-bottom: 22px;
	}
	
	.select_service_box h4,
	.select_service_box_last h4 {
		margin-bottom: 20px;
		font-size: 24px;
	}

	
	.select_service_box, 
	.select_service_box_last {
		margin-bottom: 35px;
	}
	
	.subscribed_btn {
		width: 100%;
	}
	
	.ss_radiobtn {
		width: 100%;
	}
	
	.discount_use_btn label {
		padding: 25px;
	}
	
	.next_btn_area a {
		padding: 10px;
	}
	
	.next_btn {
		width: 100%;
		font-size: 14px;
	}
	
	.next_btn span {
		right: 12px;
		top: 11px;
	}
	
	.select_cp_box {
		margin-bottom: 30px;
	}
	
	.select_cp_box h4 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	
	.cp_radiobtn label span {
		font-size: 19px;
		margin-bottom: 5px;
	}
	
	.cp_radiobtn label {
		padding: 15px;
	}
	
	.cpcode_form input[type="submit"] {
		max-width: 60px;
		font-size: 13px;
	}
	
	.cpcode_form input[type="text"] {
		font-size: 13px;
	}
	
	.select_detail_area {
		padding: 20px 20px 5px 20px;
		margin-bottom: 30px;
	}
	
	.select_detail_box {
		display: block;
		padding: 10px;
	}
	
	.select_detail_title,
	.select_detail_name_list {
		width: 100%;
		margin: 0 auto;
	}
	
	.select_detail_name_list {
		padding: 0 10px;
	}
	
	.select_detail_name_list li {
		text-align: center;
		padding: 10px;
	}
	

	.select_contact_box {
		padding: 20px 20px 10px 20px;
		margin-bottom: 30px;
	}
	
	.select_contact_box h3 {
		font-size: 22px;
		margin-bottom: 20px;
	}
	
	.contact_radiobtn {
		width: 100%;
	}
	
	.contact_radiobtn label {
		margin-bottom: 10px;
	}
	
	
	.explanation_content {
		padding: 20px 0 50px;
	}
	
	.explanation_inner {
		margin-bottom: 30px;
	}
	
	
	.explanation_pager li.current::before {
		top: 11px;
		left: -35px;
		width: 45px;
	}
	
	.explanation_box h4 {
		font-size: 21px;
	}

	

	.customer_information_content {
		padding: 20px 0 50px;
	}
	
	.input_form_area {
		padding: 25px 20px 15px;
	}
	
	.input_form_area th span {
		padding: 2px 8px;
		font-size: 13px;
	}
	
	.input_form_area td {
		font-size: 13px;
	}
	
	input[type="text"],
	input[type="email"], 
	input[type="tel"] {
		font-size: 13px;
	}
	
	.input_form_area tr {
		margin-bottom: 20px;
	}
	

	
	.birth_date_inner p {
		padding-left: 0;
	}
	
	.sex_radio,
	.address_radio,
	.address_radio_first, .build_radio {
		margin-right: 5px;
		padding-left: 20px;
	}
	
	.radio_mark {
		height: 13px;
		width: 13px;
	}
	
	
	.select_box_year select,
	.select_box_month select,
	.preferred_date_box select {
		font-size: 13px;
	}
	
	.sex_box,
	.build_box {
		padding: 0;
	}
	
	
	.address_radio_first {
		margin-bottom: 10px;
	}
	
	
	.input_form_area tr.tel_table {
		margin-bottom: 20px;
	}
	
	
	.confirmation_customer_information_content {
		padding: 20px 0 50px;
	}
	
	.confirmation_list {
		padding: 25px;
	}
	
	.confirmation_list tr,
	.confirmation_list tr.birth_list,
	.confirmation_list tr.confirmation_address_area_top,
	.confirmation_list tr.confirmation_address_area,
	.confirmation_list tr.tel_list,
	.confirmation_list tr.preferred_area {
		margin-bottom: 20px;
	}
	
	.preferred_date_txt {
		margin-bottom: 15px;
	}
	

	.complete_content {
		padding: 20px 0 100px;
	}
	
	.complete_txt_area {
		padding: 25px;
	}
    
    
}







/*	モーダル表示（都道府県とか）
----------------------------------------------------------------- */
.modal_base {
	position: relative;
}
.iziModal {
	transform: none !important;
	border-radius: 10px!important;
	background: url(../img/bg.png) repeat!important;
/*	background: #0042B0!important;*/
}
.iziModal-content {
}
.modal_inner {
	padding: 5%;
}

.modal_course {
	margin: 20px 0;
	background: #fff;
	border-radius: 10px;
}
.modal_price_box {
	padding: 2em 1em;
	text-align: center;
	border-bottom: 1px dashed #ccc;
}
.modal_price {
	display: flex;
	justify-content: center;
	align-items: baseline;
	font-weight: 700;
}
.modal_price dt {
	margin-right: 1em;
}
.modal_price dd {
	color: #DE0000;
}
.modal_price .modal_price_num {
	margin-right: 5px;
	font-size: 200%;
	font-family: 'Roboto', sans-serif;
}


.recommended_course_title {
	margin-bottom: 20px;
	font-weight: 700;
	font-size: 2rem;
	text-align: center;
}
.recommended_course_txt {
	text-align: center;
/*	color: #fff;*/
}


.recommended_item {
	display: flex;
	align-items: center;
	padding: 1em;
	border-bottom: 1px dashed #ccc;
}
.recommended_item:last-child {
	border: none;
}
.recommended_item_title {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	width: 12em;
	margin-right: 2em;
	flex-shrink: 0;
	flex-grow: 0;
	font-size: 1.2rem;
	font-weight: 700;
}
.recommended_item_tv .recommended_item_title {
	color: #00AEFF;
}
.recommended_item_net .recommended_item_title {
	color: #FD58A2;
}
.recommended_item_tel .recommended_item_title {
	color: #37C400;
}
.recommended_item_title_icon {
	margin-right: 1em;
}


.recommended_item_txt {
	font-size: 1.2rem;
}



.modal_btn_area {
	display: flex;
	justify-content: space-between;
}
a.btn_course_choice,
.btn_course_choice,
a.btn_course_close,
.btn_course_close {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1.2em 1em;
	border-radius: 10px;
	position: relative;
	font-size: 1.2rem;
	font-weight: 700;
	text-align: center;
	cursor: pointer;
}
a.btn_course_choice,
.btn_course_choice {
	width: calc(100% - 9em);
	border: none;
	background: #0042B0;
	color: #fff;
}
a.btn_course_close,
.btn_course_close {
	width: 8em;
	border: 1px solid #0042B0;
	background: #fff;
	color: #0042B0;
}
a.btn_course_choice .btn_txt ,
.btn_course_choice .btn_txt {
	flex-shrink: 1;
	flex-grow: 1;
	padding-right: .5em;
}
a.btn_course_close .btn_txt ,
.btn_course_close .btn_txt {
	flex-shrink: 1;
	flex-grow: 1;
	padding-left: .5em;
}
.icon_arrow_right,
.icon_arrow_left {
	font-size: 1rem;
	vertical-align: middle;
}


/* スマホ（横） */
@media screen and (max-width: 600px) {
	.recommended_course_list_title {
		font-size: 1rem;
	}
	
	.recommended_course_title {
		font-size: 1.6rem;
	}
	.recommended_item  {
		padding: .8em;
	}
	.recommended_item_title {
		display: block;
		width: 7em;
		text-align: center;
		font-size: 1rem;
	}
	.recommended_item_title_icon,
	.recommended_item_title_txt {
		display: block;
		margin: 0;
	}
	.recommended_item_txt {
		font-size: 1rem;
	}
	a.btn_course_choice,
	.btn_course_choice,
	a.btn_course_close,
	.btn_course_close {
		padding: 1em .8em;
		font-size: 1rem;
	}
	a.btn_course_choice,
	.btn_course_choice {
		width: auto;
		flex-shrink: 1;
		flex-grow: 1;
	}
	a.btn_course_close,
	.btn_course_close {
		width: auto;
		margin-right: 15px;
	}
	
}