@charset "utf-8";

/*
GLOBAL
***************************************************************************/
html {
	font-size: 62.5%;
	overflow-y: auto;
}

body {
	width: 100%;
	height: 100%;
	font-family: 'Noto Sans JP',sans-serif;
	font-weight:300;
	overflow-wrap: break-word;
	word-wrap: break-word;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.7;
	color: #111;
	background-color: #FFF;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	overflow-x: hidden;
}

@media screen and (min-width: 769px) {
	body { 
		background:url(../img/common/bg_01.png) repeat-y top center;
		background-size:100%;
		font-size: 1.8rem;
	}
}


/*
DEFAULT
***************************************************************************/
body,
h1,h2,h3,h4,h5,h6,p,
ul,ol,li,dl,dt,dd,
form,fieldset,legend,pre,blockquote {
	margin: 0;
	padding: 0;
	font-weight:300;
	font-feature-settings: "pkna";
	-webkit-font-feature-settings: "pkna";
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,video {
	display: block;
}

.clearfix:after {
	display: block;
	clear: both;
	content: "";
	overflow: hidden;
}

li {
	list-style-type: none;
}

table {
	width: 100%;
	border-collapse: collapse;
}

/* ▼LINK▼ */
a {
	color: #111;
	text-decoration: none;
	outline: none;
	/*transition-duration: 0.5s;*/
}

.nav_img {
	float:right;
	margin-right:-30px;
	width: 25px;
	height: 25px;
}

/* ▼IMG▼ */
img{
	max-width: 100%;
	font-size: 0;
	line-height: 0;
	vertical-align: middle;
	border: none;
}

.sp_br{ display: block; }
.pc,
.pc_br{display:none;}
.sp{display:block;}

@media screen and (min-width: 769px) {
	a:hover{opacity:0.7;}
	a[href*="tel:"]{
		pointer-events: none;
		cursor: default;
	}
	a[href*="tel:"]:hover{opacity:1;}
	.sp_br,
	.sp{ display: none; }
	.pc,
	.pc_br{display:block;}
}


/*
CONTENTS
***************************************************************************/
#container{ 
	width:100%;
	padding:50px 0 0;
}
#contents{
	padding:0 0 60px;
	width:100%;
}

@media screen and (min-width: 769px) {
	#container{ 
		width:768px; 
		margin:0 auto;
		background-color:#FFF;
		padding:100px 0 0;
	}
	#contents{ 
		padding:0 0 90px; 
		min-height:calc(100vh - 190px);
	}
}


/*SERVICE*/
.service_content .title{
	border-bottom:1px #707070 dotted;
	padding:0 0 calc((100vw / 375) * 12);
	line-height:1.5;
	margin:0 0 calc((100vw / 375) * 15);
}
.service_content .title.radio_ttl{
	padding:0;
	margin:calc((100vw / 375) * -14) calc((100vw / 375) * -15) calc((100vw / 375) * 15);
}
.service_content .title.border100{
	margin:calc((100vw / 375) * -14) calc((100vw / 375) * -15) calc((100vw / 375) * 15);
	padding:calc((100vw / 375) * 14) calc((100vw / 375) * 15) calc((100vw / 375) * 12);
}
.service_content .title h3{
	font-size:1.6rem;
	margin:0 0 calc((100vw / 375) * 8);
	font-weight:700;
}
.service_content .title.radio_ttl h3{
	margin:0;
	padding:calc((100vw / 375) * 14) 9px 0;
	background: linear-gradient(to right,#CBE7F0,#CBE7F0 40px,#FFF 40px,#FFF); 
}
.service_content .title p{font-weight:700;}
.service_content .note{
	font-size:1.1rem;
	text-indent:-1em;
	padding-left:1em;
	margin: 0 0 calc((100vw / 375) * 10);
}
.service_content .txt{margin:0 0 calc((100vw / 375) * 10);}
.service_content section{margin:0 0 calc((100vw / 375) * 5);}
.service_content section h4{
	font-size:1.6rem;
	font-weight:700;
	margin:0 0 calc((100vw / 375) * 20);
}
.service_content section h4 span{ position:relative; }
.service_content section h4 span:after{
	content:"";
	position:absolute;
	background-color:#1C8BB4;
	width:100%;
	height:3px;
	display:block;
	left:0;
	bottom:calc((100vw / 375) * -10);
}
.service_content section p{
	font-weight:400;
	margin:0 0 calc((100vw / 375) * 15);
}


@media screen and (min-width: 769px) {
	.service_content .title{
		padding:0 0 24px;
		margin:0 0 30px;
	}
	.service_content .title.border100{
		margin:-20px -30px 0;
		padding:20px 30px 20px;
	}
	.service_content .title.radio_ttl{
		padding:0;
		margin:-20px -30px 24px;
	}
	.service_content .title h3{
		font-size:2.2rem;
		margin:0 0 10px;
	}
	.service_content .title.radio_ttl h3{
		padding:20px 9px 0;
	}
	.service_content .note{
		font-size:1.4rem;
		margin: 0 0 25px;
	}
	.service_content .txt{margin:0 0 20px;}
	.service_content section{margin:0 0 10px;}
	.service_content section h4{
		font-size:2rem;
		margin:0 0 40px;
	}
	.service_content section h4 span:after{ bottom:-15px; }
	.service_content section p{ margin:0 0 30px; }
}


/*POPUP*/
#overflow_content{
	background:rgba(0,0,0,0.8);
	width:100%;
	height:100vh;
	position:fixed;
	top:0;
	left:0;
	z-index:5000;
	display:none;
}
.img_popup{
	background:#FFF;
	width:95%;
	max-width:1000px;
	padding:10px;
	left:50%;
	position:absolute;
	display:none;
	z-index:6000;
	transform:translateX(-50%);
	text-align:center;
	box-sizing:border-box;
}
.img_popup img{max-width:100%;}
.popup_close{
	width:40px;
	height:40px;
	position:absolute;
	top:-25px;
	right:0;
}
.popup_close span{
	width:100%;
	height:1px;
	background-color:#FFF;
	display:block;
}
.popup_close span:first-child{ transform:rotate(45deg); }
.popup_close span:last-child{ transform:rotate(-45deg); }


/*ACCORDION*/
.ac_contents{margin:0 0 calc((100vw / 375) * 20);}
.ac_title{
	color:#1C8BB4;
	font-size:1.6rem;
	font-weight:700;
	border:1px #CCCCCC solid;
	padding:11px 15px;
	line-height:24px;
	position:relative;
	cursor:pointer;
}
.ac_title:after{
	position:absolute;
	content:"";
	background:url(../img/common/arrow_03.png) no-repeat center center;
	background-size:12px 8px;
	border:1px #1C8BB4 solid;
	width:24px;
	height:24px;
	display:block;
	right:10px;
	top:50%;
	margin-top:-12px;
}
.ac_title.opened:after{ transform:rotate(180deg); }
.ac_inner{
	padding:calc((100vw / 375) * 15) 0 calc((100vw / 375) * 5);
	display:none;
}

@media screen and (min-width: 769px) {
	.ac_contents{margin:0 0 30px;}
	.ac_title{
		font-size:1.8rem;
		padding:15px 15px;
		line-height:36px;
	}
	.ac_title:after{
		background-size:24px 16px;
		width:36px;
		height:36px;
		margin-top:-20px;
	}
	.ac_inner{ padding:30px 0 10px; }
}



/***********HEADER***********/
header{
	height:50px;
	width:100%;
	position:fixed;
	box-shadow:0 3px 6px 0 rgba(0,0,0,0.16);
	z-index:1000;
	text-align:center;
	padding:10px 0 5px;
	box-sizing:border-box;
	background:#FFF;
	left:0;
	top:0;
}
header h1{ margin:0 0 6px; }
header h1 img{
	width:64px;
	display:block;
	margin:0 auto;
}
header h2{
	font-size:1rem;
	line-height:1;
}
.h_menu,
.m_close{
	width:26px;
	height:18px;
	position:fixed;
	top:16px;
	right:13px;
}
.h_menu div,
.m_close div{
	width:100%;
	height:100%;
	position:relative;
}
.h_menu div span,
.m_close div span{
	width:100%;
	height:2px;
	border-radius:1px;
	position:absolute;
	left:0;
}
.h_menu div span{ background-color:#707070; }
.h_menu div span:first-child,
.m_close div span:first-child{top:0;}
.h_menu div span:nth-child(2){top:8px;}
.h_menu div span:last-child,
.m_close div span:last-child{bottom:0;}
.h_mypage{
	position:fixed;
	width:15px;
	height:24px;
	left:15px;
	top:13px;
}
.h_top {
	width:140px !important;
	left:-10px !important;
}
#rmenu{
	background:rgba(51,51,51,0.9);
	width:66%;
	position:fixed;
	right:0;
	top:0;
	z-index:3000;
	height:100%;
	display:none;
	overflow-y:auto;
}
.m_close{z-index:3500;}
.m_close div span{background-color:#FFF;}
.m_close div span:first-child{ transform:translateY(8px) rotate(45deg); }
.m_close div span:last-child{ transform:translateY(-8px) rotate(-45deg); }
#rmenu ul{ margin:50px 0 0; }
#rmenu li{ border-bottom:1px #707070 solid; }
#rmenu li a{
	padding:15px calc((100vw / 375) * 30);
	color:#FFF;
	font-weight:400;
	display:block;
}


@media screen and (min-width: 769px) {
	header{
		height:100px;
		width:768px;
		padding:20px 0 10px;
		left:50%;
		margin-left:-384px;
		box-shadow:0 3px 3px 0 rgba(0,0,0,0.16);
	}
	header h1{ margin:0 0 12px; }
	header h1 img{ width:127px; }
	header h2{ font-size:2rem; }
	.h_menu,
	.m_close{
		width:52px;
		height:36px;
		top:32px;
		right:50%;
		margin-right:-350px;
		cursor:pointer;
	}
	.h_menu div span,
	.m_close div span{
		height:4px;
		border-radius:2px;
	}
	.h_menu div span:nth-child(2){top:16px;}
	.h_mypage{
		width:30px;
		height:48px;
		left:50%;
		top:26px;
		margin-left:-345px;
	}
	.h_top {
		width:140px !important;
		left: 50% !important;
		top: 36px;
	}
	#rmenu{
		width:510px;
		right:50%;
		min-height:100vh;
		margin-right:-384px;
	}
	.m_close div span:first-child{ transform:translateY(16px) rotate(45deg); }
	.m_close div span:last-child{ transform:translateY(-16px) rotate(-45deg); }
	#rmenu ul{ margin:100px 0 0; }
	#rmenu li a{ padding:15px 60px; }

}


/***********TOP***********/
#p_top{ padding:calc((100vw / 375) * 30) 0 calc((100vw / 375) * 20); }
#p_top .lead{ margin:0 calc((100vw / 375) * 13) calc((100vw / 375) * 25); }
#p_top .title_01{ margin:0 0 20px; }
.flow_color{
	text-align:right;
	font-size:1.2rem;
	margin:0 calc((100vw / 375) * 15) calc((100vw / 375) * 10);
	line-height:calc((100vw / 375) * 12);
}
.flow_color > span{ margin:0 0 0 calc((100vw / 375) * 10); }
.flow_color span span{
	width:calc((100vw / 375) * 12);
	height:calc((100vw / 375) * 12);
	display:inline-block;
	margin:0 calc((100vw / 375) * 3) 0 0;
	vertical-align:top;
}
.flow_color .c_customer{ background-color:#E87928; }
.flow_color .c_company{ background-color:#1C8BB4; }
.signup_flow{
	background-color:#F7F7F7;
	padding:calc((100vw / 375) * 30) calc((100vw / 375) * 14) calc((100vw / 375) * 22);
	margin:0 0 calc((100vw / 375) * 20);
}
.signup_flow section{
	background-color:#FFF;
	border:1px #707070 solid;
	position:relative;
	padding:calc((100vw / 375) * 30) calc((100vw / 375) * 10) calc((100vw / 375) * 25);
	text-align:center;	
	margin:0 0 calc((100vw / 375) * 30);
	box-sizing:border-box;
}
.signup_flow section h4{
	position:absolute;
	background-color:#E87928;
	color:#FFF;
	font-weight:700;
	font-size:calc((100vw / 375) * 10);
	width:calc((100vw / 375) * 164);
	top:calc((100vw / 375) * -17);
	left:50%;
	margin-left:calc((100vw / 375) * -82);
	display:block;
	height:calc((100vw / 375) * 26);
	line-height:calc((100vw / 375) * 26);
	border-radius:calc((100vw / 375) * 13);
}
.signup_flow section h4 span{ font-size:calc((100vw / 375) * 18); }
.signup_flow section h4.c_company{ background-color:#1C8BB4; }
.signup_flow section:after{
	content:"";
	display:block;
	width:34px;
	height:13px;
	background:url(../img/flow_arrow_01.png) no-repeat;
	background-size:cover;
	bottom:-13px;
	left:50%;
	margin-left:-17px;
	position:absolute;
}
.signup_flow section:nth-child(5):after{
	content:"";
	background:url(../img/flow_arrow_02.png) no-repeat;
	background-size:cover;
	width:214px;
	margin-left:-107px;
}
.signup_flow section p{
	font-size:1.6rem;
	font-weight:700;
	line-height:1.4;
}
.signup_flow section p .stxt{
	font-weight:400;
	font-size:1.2rem;
}
.signup_flow .period{
	text-align:center;
	margin:calc((100vw / 375) * 5) 0 0;
}
.signup_flow .period span{
	background-color:#1C8BB4;
	color:#FFF;
	display:inline-block;
	font-weight:500;
	font-size:calc((100vw / 375) * 11);
	height:calc((100vw / 375) * 18);
	line-height:calc((100vw / 375) * 18);
	padding:0 calc((100vw / 375) * 5);
}
.flow_box2{
	display:flex;
	justify-content:space-between;
}
.signup_flow .flow_box2 section{
	flex:0 1 47%;
	max-width:47%;
}
.signup_flow .flow_box2 section:after{
	background:url(../img/flow_arrow_03.png) no-repeat;
	background-size:cover;
	width:18px;
	margin-left:-9px;
}
.signup_flow .flow_box2 section h4{
	width:calc((100vw / 375) * 122);
	margin-left:calc((100vw / 375) * -61);
}
.signup_flow section p.note{
	font-weight:400;
	font-size:1.1rem;
	text-indent:-1em;
	padding-left:1em;
	margin:calc((100vw / 375) * 8) 0 0 ;
	text-align:left;
}
.signup_flow > section:last-child{margin:0;}
.signup_flow > section:last-child:after{content:none;}
#p_top .btn{ padding:0 calc((100vw / 375) * 14); }
#p_top .btn a{
	display:block;
	width:100%;
	height:60px;
	line-height:60px;
	font-size:1.8rem;
	font-weight:700;
	color:#FFF;
	background-color:#CB0000;
	text-align:center;
	border-radius:4px;
}

@media screen and (min-width: 769px) {
	#p_top{ padding:60px 0 40px; }
	#p_top .lead{ 
		margin:0 30px 50px; 
		text-align:center;
	}
	#p_top .title_01{ margin:0 0 40px; }
	.flow_color{
		font-size:1.6rem;
		margin:0 30px 20px;
		line-height:24px;
	}
	.flow_color > span{ margin:0 0 0 20px; }
	.flow_color span span{
		width:24px;
		height:24px;
		margin:0 6px 0 0;
	}
	.signup_flow{
		padding:60px 30px 40px;
		margin:0 0 40px;
	}
	.signup_flow section{
		padding:60px 20px 50px;
		margin:0 0 60px;
	}
	.signup_flow section h4{
		font-size:1.6rem;
		width:320px;
		top:-34px;
		left:50%;
		margin-left:-160px;
		height:52px;
		line-height:52px;
		border-radius:26px;
	}
	.signup_flow section h4 span{ font-size:2.8rem; }
	.signup_flow section:after{
		width:34px;
		height:13px;
		bottom:-13px;
		left:50%;
		margin-left:-17px;
	}
	.signup_flow section:nth-child(5):after{
		width:214px;
		margin-left:-107px;
		background-size:100%;
	}
	.signup_flow section p{ font-size:2rem; }
	.signup_flow section p .stxt{ font-size:1.4rem; }
	.signup_flow .period{ margin:10px 0 0; }
	.signup_flow .period span{
		font-size:1.4rem;
		height:36px;
		line-height:36px;
		padding:0 10px;
	}
	.signup_flow .flow_box2 section:after{
		width:18px;
		margin-left:-9px;
	}
	.signup_flow .flow_box2 section h4{
		width:244px;
		margin-left:-122px;
	}
	.signup_flow section p.note{
		font-size:1.4rem;
		margin:15px 0 0 ;
	}
	#p_top .btn{ padding:0 30px; }
	#p_top .btn a{
		height:120px;
		line-height:120px;
		font-size:2.2rem;
		border-radius:8px;
	}

}


/***********CONTENTS***********/
#apply_top{ padding:calc((100vw / 375) * 15) calc((100vw / 375) * 14) 0; }
.apply_step{
	margin:0 0 calc((100vw / 375) * 20);
	width:100%;
	display:flex;
	color:#FFF;
	font-weight:700;
	height:calc((100vw / 375) * 50);
	line-height:calc((100vw / 375) * 50);
	background-color:#7CC4DE;
}
.apply_step div{
	flex:0 1 9.3%;
	background-color:#7CC4DE;
	position:relative;
	padding:0 0 0 calc((100vw / 375) * 17);
	box-sizing:border-box;
	max-width:9.3%;
}
.apply_step div.current{
	flex:0 1 44.2%;
	background-color:#1C8BB4;
	font-size:1.2rem;
	text-align:center;
	max-width:44.2%;
}
.apply_step div:first-child.current{padding:0;}
.apply_step div:after{
	content:"";
	background:url(../img/apply/step_arrow.png) no-repeat ;
	width:calc((100vw / 375) * 11);
	height:calc((100vw / 375) * 50);
	background-size:cover;
	position:absolute;
	top:0;
	right:calc((100vw / 375) * -11);
	z-index:10;
}
.apply_step div.current:after{
	background:url(../img/apply/step_arrow_current.png) no-repeat ;
	background-size:cover;
}
.apply_step div:last-child:after{content:none;}
#apply_top .lead{ margin:0 0 calc((100vw / 375) * 30); }
#apply_top .note{
	border:1px #CB0000 solid;
	margin:0 calc((100vw / 375) * 15) calc((100vw / 375) * 30);
	padding:calc((100vw / 375) * 15) calc((100vw / 375) * 20);
}
#apply_top .note li{
	text-indent:-1em;
	padding-left:1em;
}
#apply_form{
	background-color:#F7F7F7;
	padding:calc((100vw / 375) * 30) calc((100vw / 375) * 14);
}
#apply_form dl{
	margin:0 0 calc((100vw / 375) * 15);
	padding:0 calc((100vw / 375) * 10);
	display:flex;
}
#apply_form dl:last-of-type{ margin:0 0 calc((100vw / 375) * 32); }
#apply_form dt{
	flex:0 1 35%;
	font-weight:500;
	line-height:1.2;
	padding:11px calc((100vw / 375) * 5) 0 0;
	box-sizing:border-box;
	max-width:35%;
}
#apply_form dt.dt_line2{padding:3px calc((100vw / 375) * 5) 0 0;}
#apply_form dd{ flex:0 1 65%; }
#apply_form .apply_btn1{ padding:0 calc((100vw / 375) * 10); }
#apply_form .apply_btn1 button[type="submit"]{
	width:100%;
	border:none;
	height:50px;
	line-height:50px;
	background-color:#1C8BB4;
	color:#FFF;
	text-align:center;
	font-size:1.5rem;
	font-weight:700;
	border-radius:4px;
	font-family: 'Noto Sans JP',sans-serif;
}

input[type="text"],
select,
textarea,
input[type="file"],
input[type="tel"],
input[type="email"],
input[type="password"]{
	-webkit-appearance:none;
	-moz-appearance:none;
	-ms-appearance:none;
	font-family: 'Noto Sans JP',sans-serif;
	width:100%;
	line-height:38px;
	border:1px #707070 solid;
	border-radius:4px;
	padding:0 calc((100vw / 375) * 5);
	box-sizing:border-box;
	font-size:1.2rem;
}
input[type="text"],
textarea,
input[type="file"],
input[type="tel"],
input[type="email"],
input[type="password"]{ height:40px; }
input[type="text"]:focus,
select:focus,
textarea:focus,
input[type="file"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="passeord"]:focus,
button:focus{ outline:none; }

select{
	background:url(../img/common/select_arrow.png) no-repeat 92% center #FFF;
	background-size:12px 8px;
}

#apply_form .form_sbtn1{
	margin:calc((100vw / 375) * 5) 0 0 ;
	display:inline-block;
	width:100%;
	border:none;
	height:30px;
	line-height:30px;
	background-color:#1C8BB4;
	color:#FFF;
	text-align:center;
	font-size:1.3rem;
	font-weight:700;
	border-radius:4px;
	font-family: 'Noto Sans JP',sans-serif;
}
.apply_btn2{
	display:flex;
	width:100%;
	justify-content:space-between;
}
.apply_btn2 .back,
.apply_btn2 button[name="next"]{
	flex:0 1 49%;
	font-weight:700;
	text-align:center;
	padding:10px 0 8px;
	min-height:34px;
	box-sizing:border-box;
	display:block;
	position:relative;
	line-height:1.4;
	font-size:1.4rem;
	font-family: 'Noto Sans JP',sans-serif;
}
.apply_btn2 .back{
	border:1px #1C8BB4 solid;
	background-color:#FFF;
	color:#1C8BB4;
}
.apply_btn2 .back:before,
.apply_btn2 button[name="next"]:after{
	content:"";
	width:6px;
	height:11px;
	position:absolute;
	top:50%;
	margin-top:-5px;
}
.apply_btn2 .back:before{
	background:url(../img/common/arrow_01.png) no-repeat;
	background-size:cover;
	left:8%;
}
.apply_btn2 button[name="next"]{
	background-color:#1C8BB4;
	color:#FFF;
	border:none;
}
.apply_btn2 button[name="next"]:after{
	background:url(../img/common/arrow_02.png) no-repeat;
	background-size:cover;
	right:8%;
}
.btn_resend {
	text-decoration: underline;
	cursor: pointer;
}
.confirm_input{
	width:100%;
	line-height:38px;
	border-radius:4px;
	padding:0 calc((100vw / 375) * 10);
	box-sizing:border-box;
	background:#E0E0E0;
	font-size:1.2rem;
}
.confirm_rdo{
	background:url(../img/common/icon_rdo_off.png) no-repeat left center;
	background-size:22px 22px;
	padding:8px 0 8px 30px;
	display:inline-block;
	margin:0 calc((100vw / 375) * 30) 0 0 ;
}
.confirm_rdo.active{
	background:url(../img/common/icon_rdo_confirm.png) no-repeat left center;
	background-size:22px 22px;
}
#apply_form dt .note{
	font-size:1.1rem;
	text-indent:-1em;
	padding-left:1em;
	margin:calc((100vw / 375) * 5) 0 0 ;
}
#apply_form dl dl.name_input{
	padding:0;
	margin:0 0 calc((100vw / 375) * 5) ;
	width:100%;
}
#apply_form dl dl.name_input dt{
	flex:0 1 17%;
	padding: 10px calc((100vw / 375) * 3) 0;
	font-size:1.3rem;
}
#apply_form dl dl.name_input dd{ flex:0 1 33%; }
.form_txt{
	text-indent:-1em;
	padding-left:1em;
	margin:calc((100vw / 375) * 30) 0 ;
}
#apply_form dl dl.postalcode{
	padding:0;
	margin:0;
	width:100%;
	justify-content:space-between;
}
#apply_form dl dl.postalcode input{ 
	flex:0 1 55%; 
	max-width:55%;
}
#apply_form dl dl.postalcode button{ 
	flex:0 1 43%; 
	max-width:43%;
}
.radio_list{margin:0 0 calc((100vw / 375) * 25);}
.radio_list li{
	margin:0 0 calc((100vw / 375) * 5);
	border:1px #BCCED5 solid;
	width:100%;
	box-sizing:border-box;
	background-color:#FFF;
	display:flex;
}
.radio_list li .left{
	flex:0 1 40px;
	background-color:#CBE7F0;
	padding:calc((100vw / 375) * 16) 9px 0;
	box-sizing:border-box;
}
.radio_list li .rdo_content{
	flex:1 1 auto;
	padding:calc((100vw / 375) * 14) calc((100vw / 375) * 15) calc((100vw / 375) * 15);
}
.radio_list li .note li{
	border:none;
	margin:0;
	background:none;
	display:block;
}
.radio_list label{
	background:url(../img/common/icon_rdo_off.png) left center no-repeat;
	background-size:cover;
	position:relative;
	width:22px;
	height:22px;
	display:block;
}
.radio_list .title label{
	width:100%;
	height:auto;
	background-size: 22px 22px;
    padding: 5px 0 calc((100vw / 375) * 20) 40px;
}
.radio_list label.active{
	background:url(../img/common/icon_rdo_on.png) left center no-repeat;
	background-size:cover;
}
.radio_list .title label.active{
	background-size: 22px 22px;
}
.radio_list .radio_ttl label,
.radio_list .radio_ttl label.active{background-position:left 6px;}
.radio_list input[type="radio"],
.check_list input[type="checkbox"]{
	position:absolute;
	top:0;
	left:0;
	width:22px;
	height:22px;
	opacity:0;
	filter:alpha(opacity=0);
	cursor:pointer;
}
.check_list input[type="checkbox"]{
	padding:0;
	margin:0;
}
.about_payment h4{
	font-size:1.2rem;
	font-weight:700;
	font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
}
.about_payment p{margin:0 0 calc((100vw / 375) * 10);}
.about_payment p .popup{ font-size:1.2rem; }
#apply_form form > section{ margin:0 0 calc((100vw / 375) * 40); }
.txtbox.terms{
	background: #fff;
	height:calc((100vw / 375) * 200);
	margin:0 0 calc((100vw / 375) * 15);
}
.check_list label{
	background:url(../img/common/icon_chk_off.png) left center no-repeat;
	background-size:22px 22px;
	position:relative;
	padding-left:30px;
}
.check_list label.active{
	background:url(../img/common/icon_chk_on.png) left center no-repeat;
	background-size:22px 22px;
}
#apply_form .agree_check{margin:0 0 calc((100vw / 375) * 5);}
.check_list.agree_check label{font-size:1.6rem;}
.check_list.agree_check + .note{font-size:1.1rem;}
.login_form form{margin:0 0 calc((100vw / 375) * 10);}
.login_form p:last-child{
	padding:0 calc((100vw / 375) * 10);
	font-size:1.2rem;
}
#forget_top{ padding: calc((100vw / 375) * 15) calc((100vw / 375) * 14) ; }
.forget_form form{margin:0 0 calc((100vw / 375) * 40);}
.forget_form section{ margin:0 calc((100vw / 375) * 10) calc((100vw / 375) * 30); }
.forget_comp p{margin:0 0 calc((100vw / 375) * 20);}
#p_mypage section{
	border-bottom:1px #707070 dotted;
	padding:calc((100vw / 375) * 20) calc((100vw / 375) * 14) calc((100vw / 375) * 30);
}
#p_mypage section:last-child{border:none;}
#p_mypage section .title{position:relative;}
#p_mypage section .title .txtlink_01{
	position:absolute;
	right:0;
	top:calc((100vw / 375) * 5);
	font-size:1.1rem;
}
.tbl_01.service_tbl th{ text-align:center; }
.tbl_01.service_tbl tr > td:first-child{
	font-weight:700;
	font-size:1.2rem;
}
#apply_form.s_cancel_form dl{margin:0 calc((100vw / 375) * 40) calc((100vw / 375) * 32);}
#p_service_cancel .note{ margin:0 0 calc((100vw / 375) * 15); }
#p_service_cancel .note li{
	text-indent:-1em;
	padding-left:1em;
}
.s_cancel_form .service_content{ padding: 0 calc((100vw / 375) * 10); }
.s_cancel_form .service_content .title{
	border:none;
	padding:0;
}
#apply_form dd.radio_list{ margin:0; }
#apply_form dd.radio_list.notice{ 
	width:100%; 
	padding:calc((100vw / 375) * 11) 0 0 ;
}
#apply_form dd.radio_list.notice label{
	width:48%;
	background-size:22px 22px;
	display:inline-block;
	padding-left:30px;
	box-sizing:border-box;
}
.m_change_form .leave_link{
	text-align:center;
	margin:calc((100vw / 375) * 20) 0 0;
}
.user_ip {
	margin: 2em auto;
	padding: 1em;
	background-color: #fff;
	border: 1px solid #b0b0b0; 
}
#p_member_apply,
#p_leave,
#p_payment_apply,
#p_service_apply,
#p_service_detail,
#p_service_cancel{padding: calc((100vw / 375) * 20) calc((100vw / 375) * 14);}
#p_member_apply .lead,
#p_leave .lead,
#p_service_apply .lead,
#p_service_cancel .lead{ margin: 0 0 calc((100vw / 375) * 30); }
#p_payment_apply .lead{margin: 0 0 calc((100vw / 375) * 10);}
#p_payment_apply.comp .lead{margin: 0 0 calc((100vw / 375) * 30);}
#p_payment_apply .tbl_01 th,
#p_payment_apply .tbl_01 td{font-size:1.4rem;}
#p_leave .note{margin: 0 0 calc((100vw / 375) * 20);}
#p_leave .note li{
	text-indent:-1em;
	padding-left:1em;
}
#p_leave .note a{
	color:#cb0000;
	text-decoration:underline;
}

.radio_list .radio_list2{ margin:calc((100vw / 375) * -15) 0 calc((100vw / 375) * 20); }
.radio_list .radio_list2 label{
	width:auto;
	padding:calc((100vw / 375) * 15) 0 calc((100vw / 375) * 15) 50px;
	border-bottom:1px #BCCED5 solid;
	margin:0 calc((100vw / 375) * -15);
	background:url(../img/common/icon_rdo_off.png) 9px center no-repeat,
		linear-gradient(to right,#CBE7F0,#CBE7F0 40px,#FFF 40px,#FFF);
	background-size:22px 22px,100% 100%;
}
.radio_list .radio_list2 label.active{
	background:url(../img/common/icon_rdo_on.png) 9px center no-repeat,
		linear-gradient(to right,#CBE7F0,#CBE7F0 40px,#FFF 40px,#FFF);
	background-size:22px 22px,100% 100%;
}

@media screen and (min-width: 769px) {
	#apply_top{ padding:30px 30px 0; }
	.apply_step{
		margin:0 0 40px;
		height:100px;
		line-height:100px;
	}
	.apply_step div{ padding:0 0 0 37px; }
	.apply_step div.current{ font-size:1.7rem; }
	.apply_step div:after{
		width:22px;
		height:100px;
		right:-22px;
	}
	#apply_top .lead{ margin:0 0 50px; }
	#apply_top .note{
		margin:0 30px 60px;
		padding:30px 40px;
	}
	#apply_form{ padding:60px 30px; }
	#apply_form dl{
		margin:0 0 30px;
		padding:0 20px;
	}
	#apply_form dl:last-of-type{ margin:0 0 60px; }
	#apply_form dt,
	#apply_form dt.dt_line2{ padding:14px 10px 0 0 ; }
	#apply_form .apply_btn1{ padding:0 20px; }
	#apply_form .apply_btn1 button[type="submit"]{
		height:100px;
		line-height:100px;
		font-size:2rem;
		border-radius:8px;
	}
	#apply_form .apply_btn1 button[type="submit"]:hover{ opacity:0.6; }
	input[type="text"],
	select,
	textarea,
	input[type="file"],
	input[type="tel"],
	input[type="email"],
	input[type="password"]{
		line-height:48px;
		border-radius:8px;
		padding:0 20px;
		font-size:1.8rem;
	}
	input[type="text"],
	textarea,
	input[type="file"],
	input[type="tel"],
	input[type="email"],
	input[type="password"]{ height:50px; }
	select{
		background:url(../img/common/select_arrow.png) no-repeat 95% center #FFF;
		background-size:12px 8px;
	}
	#apply_form select::-ms-expand { display: none; }

	#apply_form .form_sbtn1{
		margin:10px 0 0 ;
		height:45px;
		line-height:45px;
		font-size:1.6rem;
		border-radius:8px;
	}
	.apply_btn2 .back,
	.apply_btn2 button[name="next"]{
		padding:15px 0 12px;
		min-height:68px;
		font-size:1.8rem;
	}
	.apply_btn2 .back:before,
	.apply_btn2 button[name="next"]:after{
		width:12px;
		height:22px;
		margin-top:-11px;
	}
	#apply_form .form_sbtn1:hover,
	.apply_btn2 .back:hover,
	.apply_btn2 button[name="next"]:hover{opacity:0.6;}
	.confirm_input{
		line-height:50px;
		border-radius:8px;
		padding:0 20px;
		font-size:1.8rem;
	}
	#apply_form dt .note{ margin:10px 0 0 ; }
	#apply_form dl dl.name_input{ margin:0 0 10px ; }
	#apply_form dl dl.name_input dt{
		flex:0 1 17%;
		font-size:1.8rem;
		padding: 14px 10px 0;
	}
	#apply_form dl dl.name_input dd{ flex:0 1 33%; }
	.form_txt{
		text-indent:-1em;
		padding-left:1em;
		margin:50px 20px;
	}
	#apply_form dl dl.postalcode{ align-items:center; }
	#apply_form .postalcode .form_sbtn1{margin:0;}
	.radio_list{margin:0 0 50px;}
	.radio_list li{ margin:0 0 10px; }
	.radio_list li .left{
		flex:0 1 42px;
		padding:24px 10px 0;
	}
	.radio_list li .rdo_content{ padding:20px 30px 30px; }
	.radio_list label{
		width:22px;
		height:22px;
	}
	.radio_list .title label{ padding:0 0 20px 50px; }
	.radio_list input[type="radio"]{
		width:22px;
		height:22px;
	}
	.about_payment h4{ font-size:1.5rem; }
	.about_payment p{margin:0 0 20px;}
	#apply_form form > section{ margin:0 0 80px; }
	.txtbox.terms{
		background: #fff;
		height:400px;
		margin:0 0 30px;
	}
	#apply_form .agree_check{margin:0 0 10px;}
	.check_list.agree_check label{font-size:2rem;}
	.check_list.agree_check + .note{font-size:1.4rem;}
	.login_form form{margin:0 0 20px;}
	.login_form p:last-child{
		padding:0 20px;
		font-size:1.4rem;
	}
	#forget_top{ padding: 30px 50px; }
	.forget_form form{margin:0 0 80px;}
	.forget_form section{ margin:0 20px 50px; }
	.forget_comp p{margin:0 0 40px;}
	#p_mypage section{ padding:40px 30px 45px; }
	#p_mypage section .title .txtlink_01{
		top:10px;
		font-size:1.5rem;
	}
	.tbl_01.service_tbl tr > td:first-child{
		font-weight:700;
		font-size:1.6rem;
	}
	#apply_form.s_cancel_form dl{margin:0 100px 50px;}
	#p_service_cancel .note{ margin:0 0 30px; }
	.s_cancel_form .service_content{ padding: 0 20px; }
	#apply_form dd.radio_list.notice{  padding:14px 0 0 ; }
	#apply_form dd.radio_list.notice label{line-height:22px;}
	.m_change_form .leave_link{ margin:40px 0 0; }
	#p_member_apply,
	#p_leave,
	#p_service_apply,
	#p_service_cancel{padding: 40px 30px;}
	#p_member_apply .lead,
	#p_leave .lead,
	#p_service_apply .lead,
	#p_service_cancel .lead{ margin: 0 0 50px; }
	#p_payment_apply,
	#p_service_detail{padding: 40px 30px 45px;}
	#p_payment_apply .lead{margin: 0 0 20px;}
	#p_payment_apply.comp .lead{margin: 0 0 50px;}
	#p_payment_apply .tbl_01 th,
	#p_payment_apply .tbl_01 td{font-size:1.8rem;}
	#p_leave .note{margin: 0 0 20px;}
	.radio_list .radio_list2{ margin:0 0 25px; }
	.radio_list .radio_list2 label{
		line-height:22px;
		padding:30px 0 30px 50px;
		margin:0 -30px;
	}
	.confirm_rdo{ margin:0 100px 0 0 ; }

}

@media screen and (max-width: 374px) {
	.apply_step div.current{ font-size:calc((100vw / 375) * 12); }
	#apply_form dt{ font-size:calc((100vw / 375) * 14); }
	#apply_form dl dl.name_input dt{ font-size:calc((100vw / 375) * 13); }
	.confirm_input{ padding:0 calc((100vw / 375) * 5); }

}


/***********SETTING***********/
#p_setting{
	padding:calc((100vw / 375) * 17) calc((100vw / 375) * 14) calc((100vw / 375) * 25);
}
.tab_list{
	width:100%;
	border-bottom:2px #1C8BB4 solid;
	display:flex;
	justify-content:space-between;
}
.tab_list div{
	background-color:#CCCCCC;
	color:#FFF;
	font-size:1.1rem;
	font-weight:700;
	text-align:center;
	height:calc((100vw / 375) * 34);
	line-height:calc((100vw / 375) * 34);
	flex:0 1 24.7%;
	border-radius:8px 8px 0 0 ;
	cursor:pointer;
}
.tab_list div.active{background-color:#1C8BB4;}
.tab_content{
	padding:calc((100vw / 375) * 20) 0 0 ;
	font-size:1.6rem;
	display:none;
}
#p_setting p{font-weight:400;}
.tab_content .lead{margin:0 0 calc((100vw / 375) * 15);}
.tab_content section{padding:0 0 calc((100vw / 375) * 10);}
.tab_content h3{
	font-size:1.6rem;
	position:relative;
	margin:0 0 calc((100vw / 375) * 5);
	padding:0 0 calc((100vw / 375) * 15);
	font-weight:400;
	line-height:1;
}
.tab_content h3 span{
	font-size:2rem;
	font-weight:700;
}
.tab_content h3:after{
	content:"";
	width:calc((100vw / 375) * 58);
	height:2px;
	background-color:#1C8BB4;
	display:block;
	position:absolute;
	left:0;
	bottom:0;
}
.tab_content section p{margin:0 0 calc((100vw / 375) * 10);}
#p_setting .tab_content section p .stxt,
#p_setting .tab_content section p.stxt{
	font-size:1.4rem;
	font-weight:300;
}
.tab_content section .box{
	border:1px #CCCCCC solid;
	padding:calc((100vw / 375) * 15) calc((100vw / 375) * 12) calc((100vw / 375) * 1);
	margin:0 0 calc((100vw / 375) * 10);
}
.tab_content section .box li{
	font-size:1.4rem;
	font-weight:300;
	margin:0 0 calc((100vw / 375) * 15);
}
#p_setting p .next_link{
	color:#1C8BB4;
	font-size:1.4rem;
	font-weight:300;
}
#p_setting p .next_link span{text-decoration:underline}
#p_setting p .next_link:before{
	content:"↓";
	text-decoration:none;
}
#p_setting .sp_img{text-align:center;}
#p_setting .sp_img img{ max-width:calc((100vw / 375) * 220); }

@media screen and (min-width: 769px) {
	#p_setting{ padding:35px 30px 50px; }
	.tab_list{ border-bottom:4px #1C8BB4 solid; }
	.tab_list div{
		font-size:1.6rem;
		height:68px;
		line-height:68px;
	}
	.tab_content{
		padding:40px 0 0 ;
		font-size:1.8rem;
	}
	.tab_content .lead{margin:0 0 30px;}
	.tab_content section{padding:0 0 20px;}
	.tab_content h3{
		font-size:2.2rem;
		margin:0 0 15px;
		padding:0 0 20px;
	}
	.tab_content h3 span{ font-size:2.8rem; }
	.tab_content h3:after{
		width:116px;
		height:4px;
	}
	.tab_content section p{margin:0 0 20px;}
	.tab_content section .box{
		padding:30px 30px 1px;
		margin:0 0 20px;
	}
	.tab_content section .box li{
		font-size:1.6rem;
		margin:0 0 25px;
	}
	#p_setting img{
		max-width:347px;
		display:block;
		margin:0 auto;
	}
	#p_setting .sp_img img{ max-width:220px; }
}



/***********FOOTER***********/
footer{
	position:fixed;
	width:100%;
	bottom:0;
	left:0;
	box-shadow:0 -3px 6px 0 rgba(0,0,0,0.15);
	background:rgba(255,255,255,0.8);
	padding:calc((100vw / 375) * 15) calc((100vw / 375) * 10) ;
	box-sizing:border-box;
	display:flex;
	max-width:100%;
	align-items:center;
}
footer .txt{
	flex:0 1 41%;
	font-weight:700;
	line-height:30px;
	font-size:calc((100vw / 375) * 14);
}
footer .tel{
	flex:0 1 59%;
	display:flex;
	align-items:center;
}
footer .icon{ flex:0 1 20%; }
footer .tel_num{
	flex:1 1 auto;
	font-size:calc((100vw / 375) * 10);
	line-height:1;
	padding:0 0 0 5px;
	box-sizing:border-box;
}
footer .tel_num a{
	font-family: 'Noto Sans SC', sans-serif;
	font-size:calc((100vw / 375) * 20);
	font-weight:400;
}
footer .tel_num span{ font-size:0.9rem; }


@media screen and (min-width: 769px) {
	footer{
		width:768px;
		margin-left:-384px;
		left:50%;
		padding:20px 34px ;
	}
	footer .txt{
		font-size:1.8rem;
		line-height:45px;
		text-align:center;
	}
	footer .icon{ flex:0 1 79px; }
	footer .tel_num{
		font-size:1.5rem;
		padding:0 0 0 8px;
	}
	footer .tel_num a{ font-size:3rem; }
	footer .tel_num span{ font-size:1.2rem; }
}
@media screen and (max-width: 374px) {
	footer .txt{ 
		font-size:calc((100vw / 375) * 12); 
		flex:0 1 36%;
	}
	footer .tel{ 
		flex:0 1 64%;
	}
	footer .tel_num{ font-size:calc((100vw / 375) * 10); }
	footer .icon { flex: 0 1 15%;}
	footer .tel_num a{ font-size:calc((100vw / 375) * 20); }
	footer .tel_num span{ font-size:calc((100vw / 375) * 9); }
}



/*
COMMON PARTS
***************************************************************************/
/* ▼display▼ */
.block { display:block; }
.inline { display:inline; }
.none { display:none!important; }


/* ▼position▼ */
.posit_r { position:relative!important; }
.posit_a { position:absolute!important; }
.posit_f { position:fixed!important; }

.align_c { text-align:center!important; }
.align_r { text-align:right!important; }
.align_l { text-align:left!important; }

.disp_l { float:left!important; }
.disp_r { float:right!important; }

.va_top { vertical-align:top!important; }
.va_mid { vertical-align:middle!important; }
.va_btm { vertical-align:bottom!important; }

/* ▼width▼ */
.w5per { width:5%; }
.w10per { width:10%; }
.w15per { width:15%; }
.w20per { width:20%; }
.w25per { width:25%; }
.w30per { width:30%; }
.w35per { width:35%; }
.w50per { width:50%; }
.w55per { width:55%; }
.w60per { width:60%; }
.w70per { width:70%; }
.w75per { width:75%; }
.w80per { width:80%; }
.w100per { width:100%!important; }


/* ▼area▼ */
.mb0{margin-bottom:0!important;}

.txtbox{
	border:1px #CCCCCC solid;
	padding:calc((100vw / 375) * 20);
	overflow-y:scroll;
}

@media screen and (min-width: 769px) {
	.txtbox{ padding:30px; }
}

/* ▼font▼ */
.medium { font-weight:500!important; }
.regular { font-weight:400!important; }

.size10 { font-size:1rem!important; }
.size11 { font-size:1.1rem!important; }
.size12 { font-size:1.2rem!important; }
.size13 { font-size:1.3rem!important; }
.size14 { font-size:1.4rem!important; }
.size16 { font-size:1.6rem!important; }
.size18 { font-size:1.8rem!important; }
.size20 { font-size:2.0rem!important; }
.size22 { font-size:2.2rem!important; }
.size24 { font-size:2.4rem!important; }
.size28 { font-size:2.8rem!important; }
.size30 { font-size:3.0rem!important; }

.c_white{color:#FFF!important;}
.note{color:#cb0000!important;}

.lh2 { line-height:2!important; }
.lh18 { line-height:1.8!important; }
.lh16 { line-height:1.6!important; }
.lh15 { line-height:1.5!important; }
.lh14 { line-height:1.4!important; }


/* ▼link▼ */
a.line, .line { text-decoration:underline!important; }
a.no_line { text-decoration:none!important; }

.txtlink_01{
	color:#1C8BB4;
	text-decoration:underline
}

/* ▼title▼ */
.title_01{
	font-weight:400;
	text-align:center;
	font-size:1.6rem;
	position:relative;
}
.title_01:after{
	content:"";
	display:block;
	width:60px;
	height:3px;
	background-color:#E87928;
	bottom:-10px;
	left:50%;
	margin-left:-30px;
	position:absolute;
}
.title_02{
	font-size:1.6rem;
	font-weight:400;
	margin:0 0 calc((100vw / 375) * 12);
}
.title_03,
.login_pagettl{
	background-color:#7CC4DE;
	color:#FFF;
	font-size:1.4rem;
	font-weight:700;
	text-align:center;
	line-height:calc((100vw / 375) * 40);
	margin:0 0 calc((100vw / 375) * 20);
}
.login_pagettl.pr{ padding: 0 calc((100vw / 375) * 30) 0 0 ; }

.title_04{
	border-left:4px #1C8BB4 solid;
	padding:calc((100vw / 375) * 7) 0 calc((100vw / 375) * 7) calc((100vw / 375) * 8);
	margin:0 0 calc((100vw / 375) * 10);
	font-weight:400;
	font-size:1.6rem;
	line-height:1.1;
}
.login_pagettl{
	margin:0;
	position:relative;
}
.login_pagettl .user_name{
	position:absolute;
	color:#111111;
	top:0;
	right:calc((100vw / 375) * 13);
}
.login_pagettl .user_name span{font-weight:300;}


@media screen and (min-width: 769px) {
	.title_01{ font-size:2.8rem; }
	.title_01:after{
		content:"";
		display:block;
		width:120px;
		height:6px;
		bottom:-20px;
		left:50%;
		margin-left:-60px;
	}
	.title_02{
		font-size:2.2rem;
		margin:0 0 20px;
	}
	.title_03,
	.login_pagettl{
		font-size:1.8rem;
		line-height:80px;
		margin:0 0 30px;
	}
	.title_04{
		border-left:8px #1C8BB4 solid;
		padding:14px 0 14px 15px;
		margin:0 0 20px;
		font-size:2rem;
	}
	.login_pagettl{margin:0;}
	.login_pagettl.pr{ padding:0; }
	.login_pagettl .user_name{ right:25px; }

}
@media screen and (max-width: 374px) {
	.login_pagettl.pr{
		text-align:left;
		padding: 0 calc((100vw / 375) * 14);
	}
}

/* ▼btn▼ */
.btn_01{
	width:100%;
	border:none;
	height:50px;
	line-height:50px;
	background-color:#1C8BB4;
	color:#FFF;
	text-align:center;
	font-size:1.5rem;
	font-weight:700;
	border-radius:4px;
	display:inline-block;
}
@media screen and (min-width: 769px) {
	.btn_01{
		height:100px;
		line-height:100px;
		font-size:2rem;
		border-radius:8px;
	}
}


/* ▼TABLE▼ */
.tbl_01{
	width:100%;
	border-collapse:collapse;
}
.tbl_01 th,
.tbl_01 td{
	border:1px #FFF solid;
	vertical-align:middle;
	padding:5px calc((100vw / 375) * 10);
	font-size:1.1rem;
	text-align:left;
}
.tbl_01 th{
	background-color:#1C8BB4;
	color:#FFF;
	font-weight:700;
}
.tbl_01 td{
	background-color:#F7F7F7;
	font-weight:400;
}
@media screen and (min-width: 769px) {
	.tbl_01 th,
	.tbl_01 td{
		padding:10px 20px;
		font-size:1.4rem;
	}
}


/* ▼indent▼ */
.indent1 { margin-left:1em; text-indent:-1em; }
.indent2 { margin-left:2em; text-indent:-2em; }
.indent3 { margin-left:3em; text-indent:-3em; }
.indent4 { margin-left:4em; text-indent:-4em; }
.indent5 { margin-left:5em; text-indent:-5em; }
.indent6 { margin-left:6em; text-indent:-6em; }


/* ▼background▼ */
.bg_none { background:none!important; }

/* ▼border▼ */
.border_none { border:none!important; }

/* ▼form▼ */


.error {
	color: #CB0000;
}

.msg_area {
	color: #1C8BB4;
	border: solid 1px #1C8BB4;
	padding: 10px;
}

pre {
	white-space: pre-wrap ;
}

.info {
	margin: 10px;
	font-size: 14px;
	border: 1px solid #a8a8a8;
	padding: 10px;
}

.note.alert li {
	text-indent: 0 !important;
}
.note.alert li a {
	color: #1C8BB4;
	text-decoration: underline;
}
