body{
font-family: "M PLUS 1", sans-serif;
line-height: 1.6;
overflow-x: hidden; 
-webkit-font-smoothing: antialiased;
word-wrap: break-word;
font-optical-sizing: auto;
font-weight: 400;
font-style: normal;
}
html {scroll-behavior: smooth;}
/*bace-css*/
.wi85{
width: 85%;
margin: auto;
}
.wi95{
width: 95%;
margin: 10px auto;
}
.fo_90{
font-size: 90%;
}
.co_aka{
color: #C10104;
}
.pa10{
padding: 10px 0;
}
.pa20{
padding: 20px 0;
}
.must{
color: #F41E67;
font-size: 80%;
margin-left: 5px;
}
.page_cont{
background: #FBFBFB;
position: relative;
page-break-after: always;
width: 70%;
box-sizing: border-box;
margin: 20px auto;
padding: 0;
box-shadow: 2px 2px 3px 3px rgba(0,0,0,0.1);
background-color: #fff;
background-image:  linear-gradient(#e1eef5 1px, transparent 1px), linear-gradient(to right, #e1eef5 1px, #fff 1px);
background-size: 20px 20px;  
}
.container{
width: 85%;
margin: 0 auto;
padding: 30px;
}
.te_center{
text-align: center;
}
a{
text-decoration: none;
}
/*見出し*/
h1{
font-size: 130%;
text-align: center;
padding: 10px 0 20px;
}
h1 span{
font-size: 70%;
color: rgba(255,0,4,1.00);
}
h2{
background: #E3E3E3;
padding: 5px 13px;
border-radius: 3px;
font-weight:600;
font-size: 120%;
}
.midashi01{
font-size: 120%;
font-weight: bold;
padding: 10px 0 20px;
text-align: center;
}
i{
padding-right: 5px;
}
/* ヘッダー */
header{
position: relative;
text-align: center;
margin: 0 auto;
box-shadow: 2px 2px 4px #AFAFAF;
font-size: 150%;
padding: 20px;
color: #11C4C9;
font-weight: bold;
background: #ffffff;
}
.header_img{
position: absolute;
top:10px;
left:2%;
width: 15%;
}
.header_img img{
width: 100%;
}
.flex_box{
display: flex;
justify-content: center;
flex-direction: row;
}
.flex_box_column{
display: flex;
justify-content: center;
flex-direction: column;
}
.flex_90{
width: 90%;
margin: 10px auto;
}
.flex_60{
width: 55%;
padding: 0 10px;
}
.flex_50{
width: 45%; 
padding: 0 10px;
}
.flex_40{
width: 35%; 
padding: 0 10px;
}
.flex_45{
width: 45%; 
margin: 0 auto;
}
.co_gray{
color: #8E8E8E;
}
.bbb{
font-weight: bold;
}
/*input*/
input[type="text"]{
font-size: 105%;
outline: none;
background: #FFFFFF;
border-radius: 5px;
height: 40px;
line-height: 40px;
cursor: pointer;
box-sizing: border-box;
border: 0.5px solid #5B5B5B;
margin: 10px 10px 30px;
}
input[type="text"].cal {
padding: 0 0 0 50px;
width: 30%;
}
input[type="text"].nomal_box {
padding: 0 0 0 5px;
width: 70%;
}
input[type="text"].name_box {
padding: 0 0 0 5px;
width: 50%;
}
input[type="text"].tel {
padding: 0 0 0 5px;
width: 30%;
}
input[type="text"]:focus{
background: #99FFE7;
}
input[type="text"].application_day_box {
padding: 0;
width: 100px;
}
.application_day{
text-align: right;
font-size: 80%;
width: 90%;
margin: auto;

}
.application_day input[type="text"]{
outline: none;
background: #FFFFFF;
border-radius: 5px;
height: 20px;
line-height: 1;
cursor: pointer;
box-sizing: border-box;
border: none;
margin: 0; 
text-align: right;
}
/*カレンダー*/
.cal_cont {
position: relative;
cursor: pointer;
}
.cal_cont:before {
content: "";
background: url("../img/Calendar_icon.png") no-repeat;
background-size: contain;
height: 20px;
width: 20px;
position: absolute;
top: 0;
bottom: 0;
left: 20px;
margin: auto;
}
/* 解約理由チェックボックス */
.check_box{
text-align: center;
font-size: 120%;
margin: 60px auto 0;
}
.check-btns input[type=checkbox] {
display: none;
}
.check-btns{
margin: 20px 10px;
}
.check-btns label {
position: relative;
padding-left: 25px;
line-height: 2;
}
.check-btns input[type=checkbox]  + label::before {
position: absolute;
content: '';
display: block;
width: 18px;
height: 18px;
border: 1px solid #000000;
left: -3px;
top: 0;
border-radius: 3px;
}
.check-btns02 input[type=checkbox]  + label::before {
position: absolute;
content: '';
display: block;
width: 25px;
height: 25px;
border: 1px solid #000000;
left: 0;
top: 0;
border-radius: 3px;
}
.check-btns input[type=checkbox]  + label::before:checked {
background: rgba(239,228,83,1.00);
}
.check-btns input[type=checkbox]  + label::after {
position: absolute;
content: '';
display: block;
width: 8px;
height: 12px;
transform: rotate(45deg) scale(0, 0);
border-right: 3px solid #11C4C9;
border-bottom: 3px solid #11C4C9;
left: 5px;
top: -2px;
transition: .3s;
}
.check-btns02 input[type=checkbox]  + label::after {
position: absolute;
content: '';
display: block;
width: 8px;
height: 12px;
transform: rotate(45deg) scale(0, 0);
border-right: 3px solid #11C4C9;
border-bottom: 3px solid #11C4C9;
left: 8px;
top: 4px;
transition: .3s;
}
.check-btns input[type=checkbox]:checked + label::after {
transform: rotate(45deg) scale(1, 1);
}
.check-btns input[type=checkbox]:checked + .ch_box{
color: #11C4C9;
}
label.ch_box{
padding-left: 30px;
}
label.ch_box:hover{
color: #B8C910;
}
label i{
color: #007C9A;
padding-right: 5px;
}
/*確認画面テーブル*/
.info_table{
width: 80%;
border-collapse: collapse;
margin: 10px auto 60px;
}
.info_table th,.info_table td {
padding: 10px 15px;
border: 1px solid #353434;
}
.info_table th {
background:	rgba(17,196,201,0.20);
width: 30%;
text-align: right;
}
.info_table td {
background: #fff;
}
/*申込みテーブル*/
.form_table{
width: 90%;
border-collapse: collapse;
margin: 10px auto 60px;
}
.form_table th,.form_table td {
padding: 0px 15px;
border: 1px solid #353434;
}
.form_table th {
background:	rgba(17,196,201,0.20);
width: 30%;
text-align: right;
}
.form_table td {
background: #fff;
}
.cyui_title{
font-weight:bold;
padding: 10px 0;
}
.cyui_title span{
font-weight:500;
color: #FD0004;
font-size: 85%;
padding-left: 1em;
}
.cyui{
font-size: 90%;
padding: 5px 0;
width: 97%;
margin: auto;
padding-left: 1em;
text-indent: -1em;
}
/*infotextbox*/
.info_box{
position: relative;
width: 100%;
margin: 0 auto;
}
.table_box{
position: relative;
width: 100%;
margin: 0 auto;
}
.table_box input[type='text']{
width: 90%;
padding: 10px;
transition: 0.3s;
letter-spacing: 1px;
border: 1px solid rgba(222,242,247,1.00);
box-shadow: 1px 1px 3px 0px #BDBDBD inset;
border-radius: 4px;
}
.gray_font{
color: #707070;
}
/*項目タイトル*/
label.item{
font-size: 100%;
font-weight: bold;
padding: 5px 0;
}
/* submit 送信ボタン*/
.submit{
padding: 50px 0;
margin: 10px auto;
text-align: center;
width: 50%;
}
.submit_btn01{
width: 80%;
margin: 0 auto;
font-size: 110%;
font-weight: bold;
}
.submit02{
padding: 50px 0;
display: flex;
flex-flow: row;
justify-content:center;
margin: 30px auto;
font-weight: bold;
font-size: 110%;
}
.submit_btn02{
width: 30%;
}
.submit_btn03{
width: 50%;
}
input.kakunin{ 
width:100%;
border: 0.5px solid #11C4C9;
text-decoration: none;
margin: 0 auto 50px;
position: relative;
transition: .3s;
background: #D3F1F4;
color: #11C4C9;
text-align: center;
box-shadow: 0px 2px 2px 0px rgba(9,235,247,0.30), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.1);
padding: 10px;
border-radius: 30px;
font-weight: 600;
font-size: 150%;
cursor: pointer;
}
.kakunin:hover{
background: #11C4C9;
color: #ffffff;
box-shadow: 0 10px 10px -5px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1);
}
.btn_normal01{ 
width:100%;
color: #11C4C9;
background:rgba(37,200,174,0.19);
border: 3px solid #11C4C9;
font-weight:bold;
border-radius: 10px;
cursor: pointer;
text-align: center;
padding: 15px 0;
text-decoration: none;
font-size: 110%;
margin: 0 auto 50px;
box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
position: relative;
transition: .3s;
display: block;
}
.btn_normal01:hover{
background: #11C4C9;
color: #ffffff;
box-shadow: 0 10px 10px -5px rgba(0,0,0,.1), 0 0 5px rgba(0,0,0,.1);
}

button.moushikomi{
width: 100%;
margin: 0 auto;
cursor:pointer;
border:none;
color: #fff;
font-weight:bold;
border-radius: 5px;
padding: 15px 15px;
background:#11C4C9;
font-size: 110%;
}
button.moushikomi:disabled{
background:#11C4C9;
}
button.moushikomi:hover{
background:#ca012d;
}
/*マウスオン時*/

.normal_btn{
background: #D3F1F4;
color: #11C4C9;
text-align: center;
width: auto;
box-shadow: 0px 2px 2px 0px rgba(9,235,247,0.30), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.1);
padding: 10px;
border-radius: 30px;
font-weight: 600;
font-size: 150%;
cursor: pointer;
}
.normal_btn:hover{
opacity: 0.5;
}
button.normal_btn{
background: #D3F1F4;
color: #11C4C9;
text-align: center;
box-shadow: 0px 2px 2px 0px rgba(9,235,247,0.30), inset 0px -3px 6px -2px rgba(0, 0, 0, 0.1);
padding: 10px 0;
border-radius: 30px;
font-weight: 600;
font-size: 150%;
cursor: pointer;
border: 1px solid #D3F1F4;
width: 100%;
}
button.normal_btn:hover{
opacity: 0.5;
}
.last_cent{
text-align: center;
}
.footer_img{
width: 30%;
margin: 0 auto;
}
.footer_img img{
width: 100%;
}
@media only screen and (max-width:1016px) {
.page_cont{
width: 90%;
} 
}
@media screen and (max-width: 768px){
/* ヘッダー */
header{
position: inherit;
text-align: center;
margin: 0 auto 10px;
box-shadow: 2px 2px 4px #AFAFAF;
font-size: 120%;
padding: 20px;
color: #11C4C9;
font-weight: bold;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
}
.header_img{
width: 18%;
}
/*bace-css*/
.wi85{
width: 95%;
margin: auto;
}
.page_cont{
width: 95%;
padding: 10px 0 30px;
}
.container{
width: 95%;
margin: 0 auto;
padding: 0;
}	 
p.sub01{
width: 98%;
margin: 20px auto;
font-size: 75%;
}
input.kakunin{ 
width:100%;
border: none;
font-weight:bold;
padding: 20px 15px;
font-size: 95%;
color: #ffffff;
background:#11C4C9;
border-radius: 10px;
}
.kakunin:hover{
opacity: 0.6;
}

.flex_60{
width: 85%;
padding: 0;
margin: 10px auto;
}
/*送信ボタン*/
.submit{
padding: 50px 0;
margin: 10px auto;
width: 90%;
}
.submit02{
display: flex;
flex-flow: column-reverse;
justify-content: center;
}
.submit_btn02,.submit_btn03{
width: 85%;
margin: 10px auto;
}
input[type="submit"] {
-webkit-appearance: none;
}
input[type="button"] {
-webkit-appearance: none;
}
button.moushikomi{
width: 100%;
cursor:pointer;
padding: 20px 5px;
font-size: 100%;
}	

/*確認画面テーブル*/
.info_table{
width: 95%;
margin: 10px auto 50px;
}
.info_table th,.info_table td {
padding: 10px 15px;
}
/*申込みテーブル*/
.form_table{
width: 95%;
margin: 10px auto 50px;
}
.info_table th,.info_table td {
padding: 10px 15px;
}
.normal_btn{
font-size: 140%;
}
button.normal_btn{
font-size: 140%;
}
}
@media only screen and (max-width:479px) {
.page_cont{
width: 100%;
height: auto;
margin:  0 auto;
padding: 0 0 20px 0;
box-shadow: none;
} 
body{
background-color: #fff;
background-image:  linear-gradient(#F3F8FB 1px, transparent 1px), linear-gradient(to right, #F3F8FB 1px, #fff 1px);
background-size: 20px 20px;  
}
.flex_box{
display: flex;
justify-content: center;
flex-direction: column;
}
.flex_box_nocolumn{
flex-direction: row;
}
.flex_45{
width: 95%; 
margin: 0 auto;
}
.flex_50{
width: 80%; 
padding: 0 10px;
margin: 10px auto;
}
.flex_90{
width: 97%;
margin: 10px auto;
}
.header_img{
position: inherit;
margin: 5px auto;
width: 50%;
}
.header_img img{
width: 100%;
}   
input[type="text"].cal {
padding: 0 0 0 40px;
width: 90%;
}
input[type="text"].nomal_box {
padding: 0 0 0 5px;
width: 90%;
}
input[type="text"].name_box {
padding: 0 0 0 5px;
width: 90%;
}
input[type="text"].tel {
padding: 0 0 0 5px;
width: 90%;
} 
.cyui{
font-size: 85%;
width: 97%;
}  
/*確認画面テーブル*/
.info_table{
width: 98%;
margin: 10px auto 40px;
}
.info_table th {
background:	rgba(219,243,244,0.79);
text-align:left;
}
.info_table td {
background: #fff;
font-size: 115%;
} 
.info_table th,.info_table td {
width: auto;
display: block;
border: 1px solid #878787;
}
/*申込みテーブル*/
.form_table{
width: 98%;
margin: 10px auto 40px;
}
.form_table th {
background:	rgba(17,196,201,0.09);
text-align:left;
}
.form_table td {
background: #fff;
} 
.form_table th,.form_table td {
width: auto;
display: block;
border: 1px solid #878787;
}
.form_table tr:first-child {
border-top: 1px solid #878787;
}
.submit_btn01{
width: 95%;
}
.submit02{
padding: 20px 0 50px;
justify-content: center;
margin: 0 auto;
}
.submit_btn02{
width: 95%;
margin: 10 auto;
}
.submit_btn03{
width: 95%;
margin: 10 auto;
}
.check_box{
font-size: 110%;
margin: 10px auto 0;
}   
.normal_btn{
font-size: 120%;
}
button.normal_btn{
font-size: 120%;
} 
.last_cent{
text-align: left;
}
.footer_img{
width: 50%;
}
}