@charset "UTF-8";
/* CSS Document */
html {
    /* ルートのフォントサイズを10pxに設定しておく */
    font-size: 62.5%;
    }
body{
	font-size: 1.6em;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#2D2D2D;
	width: 100%;
	position: relative;
	overflow-x: hidden!important;
    margin: 0!important;
}

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}
nav{
	font-family: english-grotesque, sans-serif;
	font-weight: 300;
	font-style: normal;
}


.img_full img{
    width:100%;
    height: auto;
    vertical-align: bottom;
}
.svg_full img{
    width:100%;
    max-width: 300px;
    height: auto;
}
.pdgb10{
    padding-bottom:10px;
}
.pdgt10{
    padding-top:10px;
}
.pdgt30{
    padding-top:30px;
}
/*-----------------header-----------------*/

@media (min-width: 788px) {
    #header{
        max-width:1500px;
        position:relative;
        margin:0 auto;
        height: 80px;
    }
    .head_logo{
        position:absolute;
        top: 24px;
        left: 10px;
        width: auto;
        height: 40px;
    }
    .head_logo img{
        width:auto;
        height: 100%;
    }
    .head_ctct{
        position:absolute;
        top: 5px;
        right: 10px;
        width: auto;
        height: 46px;
        text-align: right;
        color: #008090;
        font-weight: bold;
        font-family: Arial, Helvetica, "sans-serif";
        font-size: 3.7rem;
        line-height: 0.6em;
    }
    .head_ctct p{
        font-size: 1.2rem;
    }
    .pc_br{
        display: none;
    }
    .head_copy{
        font-size: 2rem!important;
        font-weight: 700;
        padding: 0 10px;
        color: #2378b5;
    }
}
@media (max-width: 787px) {
    #header{
        position:relative;
        padding-bottom: 10px;
    }
    .head_logo{
        position:relative;
        width: auto;
        height: auto;
        padding-left: 5px;
        padding-top: 5px;
    }
    .head_logo img{
        width:50%;
        height: auto;
    }
    .head_ctct{
        display: none;
    }
    .head_ctct p{
        display: none;
    }
    .pc_br{
        display: block;
    }
    .head_copy{
        font-size: 2rem!important;
        font-weight: 700;
        padding: 10px 0 ;
        color: #2378b5;
    }
}
/*-----------------topimg-----------------*/
#scroll_down{
    width:30px;
    position: absolute;
    bottom: -50px;
    right: 30px;
    z-index: 8;
}

@media (min-width: 768px) {
    .top_ctt{
        margin: 0 auto;
        position: relative;
    }
	#topimg{
		width:100%;
		height: auto;
        margin: 0 auto;
	}
	#topimg_sp{
		display: none;
	}
}
@media (max-width: 767px) {
    .top_ctt{
        position: relative;
    }
	#topimg{
		display: none;
	}
	#topimg_sp{
		width:100%;
		height: auto;
	}
}
#topimg img{
    vertical-align:bottom;
}
#topimg_sp img{
    vertical-align:bottom;
}
.top_ctt_on > .date{
    background-color:#747cce;
    color: #fff;
    font-size:60%;
    line-height: 1em;
    font-weight: 700;
    display: inline-block;
    margin-bottom: 10px;
    padding: 10px 20px;
    border-radius: 21px;
}
.top_ctt_on span{
    font-size:70%;
}
.top_ctt_on strong{
    color:#747cce;
    font-size:60%;
    font-weight: 700;
}
/*img_animation*/
.objct_animation{
	animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;
}
.i_animation_objct{
	animation-name: objct_anim_box;
}
@keyframes objct_anim_box {
  0% { transform: translate(0, 0px) }
  100% { transform: translate(0, -20px) }
}
/*--------------------contact----------------------*/
.ctct_ctt{
    width:100%;
    position: relative;
    background-color: #97cef1;
    padding: 20px;
    box-sizing: border-box;
}
@media (min-width: 768px) {
	.ctct_inner{
        max-width: 960px;
        position: relative;
		background-color: #fff;
        margin: 0 auto 10px auto;
        padding: 30px;
        box-sizing: border-box;
        border-radius: 7px;
        display: flex;
	}
    .ctct_tel_box{
        width: calc(60% - 30px);
        padding-right: 30px;
        border-right:solid 1px #9bd2be;
        margin-right: 30px;
    }
    .ctct_mail_box{
        width: 40%;
    }
    .ctct_ctt h2{
        font-size:2.5rem;
        font-weight: 700;
        padding-bottom:10px;
    }
    .ctct_txt{
        font-weight:700;
        font-size: 1.6rem;
        text-align: right;
    }
}

@media (max-width: 767px) {
	.ctct_inner{
        position: relative;
		background-color: #fff;
        margin: 0 auto 10px auto;
        padding: 20px 30px;
        box-sizing: border-box;
        border-radius: 7px;
        display: block;
	}
    .ctct_tel_box{
        width: 100%;
        padding-bottom: 10px;
        border-bottom:solid 1px #9bd2be;
        margin-bottom: 10px;
    }
    .ctct_mail_box{
        width: 100%;
    }
    .ctct_ctt h2{
        font-size:2.1rem;
        font-weight: 700;
        padding-bottom:10px;
    }
    .ctct_txt{
        font-weight:700;
        font-size: 1.3rem;
        text-align: center;
    }
}
.ctct_tel{
    color: #008090;
    font-weight:700;
    padding-bottom: 5px;
    font-size: 1.6rem;
    padding-left: 22px;
    background: url("../svg/tel.svg") left center no-repeat;
    background-size: 18px;
}
.ctct_mail{
    color: #008090;
    font-weight:700;
    padding-bottom: 5px;
    font-size: 1.6rem;
    padding-left: 22px;
    background: url("../svg/mail.svg") left center no-repeat;
    background-size: 18px;
}
.ctct_btn{
    padding-bottom: 5px;
}
.ctct_ctt span{
	font-size: 1.3rem;
	line-height: 1em;
	font-weight: 700;
	background-color: #fff;
	display: inline-block;
	padding: 5px 10px;
	margin: 0 2px;
	border-radius: 11px;
    border:solid 1px #000;
}
.ctct_ctt img{
    vertical-align:middle;
}



/*-------------------index_ctt共通-------------------*/
@media (min-width: 768px) {
    .rpbr{
        display: none;
    }
	.text_l_to_c{
		text-align:left;
	}
}

@media (max-width: 767px) {
    .rpbr{
        display: block;
    }
	.text_l_to_c{
		text-align:center;
	}
}

.text_center{
    text-align:center;
}

.text_right{
    text-align:right;
}
.i_ctt_sub{
    font-size: 1.8rem;
    line-height: 1.5em;
    font-weight: bold;
    margin: 20px 0;
}
.i_ctt_txt{
    font-size: 1.8rem;
    line-height: 3.6rem;
    padding-bottom: 20px;
}
.i_ctt_txt_small{
    font-size: 1.4rem;
    line-height: 2.8rem;
    padding-bottom: 20px;
}

/*-------------------共通ボタン-------------------*/
.bm_btn_ctt a{
    transition:.5s;
}
.bm_btn{
    display:inline-block;
    width: auto;
    padding:10px 45px 10px 0;
    font-size: 2.4rem;
    font-weight: 700;
    margin:20px 0;
    cursor:pointer;
    position: relative;
    border-bottom: solid 2px #000;
}
.bm_btn:after{
    position: absolute;
    top: 14px;
    right: 0px;
    width: 30px;
    height: 30px;
    content: url("../images/arrow.svg");
    transition: .5s;
}
.bm_btn:hover:after{
    right: -6px;
    opacity: 0.7;
}
.bm_btn:hover{
    opacity: 0.7;
}

.marker{
background: #ffff80;
font-weight: bold; 
    padding: 5px 5px;
}
@media (min-width: 768px) {
    .check_list_ctt{
        max-width: 800px;
        margin: 0 auto;
    }
    .check_list{
        width:100%;
        position: relative;
        order: 1;
    }
    .check_list ul{
        list-style:none;
        margin-bottom: 30px;
    }
    .check_list li{
        padding: 10px 0 10px 30px;
        background: url("../svg/check.svg") left no-repeat;
        background-size: 20px;
        color: #008090;
        font-weight: bold;
        font-size: 2.5rem;
        line-height: 1.3em;
        display: block;
        border-bottom: solid 1px #9E9E9E;
    }
}
@media (max-width: 767px) {
    .check_list_ctt{
        display:block;
        max-width: 800px;
    }
    .check_list{
        width:100%;
        position: relative;
    }
    .check_list ul{
        list-style:none;
        margin-bottom: 20px;
    }
    .check_list li{
        padding: 5px 5px 5px 25px;
        background: url("../svg/check.svg") left no-repeat;
        background-size: 18px;
        color: #008090;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 1.3em;
        display: block;
        border-bottom: solid 1px #9E9E9E;
        margin-bottom: 5px;
    }
}
/*-------------------price-------------------*/

@media (min-width: 768px) {
    .price_box dl{
        width: 100%;
        max-width: 800px;
        border:solid 1px #df122d;
        box-sizing: border-box;
        margin: 0 auto 20px auto;
        display: flex;
    }
    .price_box dt{
        width: 60%;
        background-color: #df122d;
        color: #fff;
        font-weight: 700;
        padding: 20px;
        box-sizing: border-box;
    }
    .price_box dd{
        width: 40%;
        font-weight: 700;
        text-align: right;
        padding: 20px;
        box-sizing: border-box;
    }
}
@media (max-width: 767px) {
    .price_box dl{
        width: 100%;
        border:solid 1px #df122d;
        box-sizing: border-box;
        margin-bottom: 20px;
        display: block;
        float: left;
    }
    .price_box dt{
        width: 100%;
        background-color: #df122d;
        color: #fff;
        font-weight: 700;
        padding: 15px;
        box-sizing: border-box;
    }
    .price_box dd{
        width: 100%;
        font-weight: 700;
        text-align: center;
        padding: 15px;
        box-sizing: border-box;
    }
}
@media (min-width: 960px) {
    .price_ttl{
        width:100%;
        padding: 20px 0;
        font-size: 3.2rem;
        line-height: 1.3em;
        position: relative;
        font-weight: 700;
        z-index: 2;
    }

}
@media (max-width: 959px) {
    .price_ttl{
        width:100%;
        padding: 20px 0;
        font-size: 2.4rem;
        line-height: 1.3em;
        position: relative;
        font-weight: 700;
        z-index: 2;
    }
}
/*-------------------jokin-------------------*/
@media (min-width: 768px) {
    .jokin_container{
        width: 100%;
        height: auto;
        padding: 50px;
        box-sizing: border-box;
        display: block;
        background-color: #2677b1;
        color: #fff;
        position: relative;
    }
    .jokin_no{
        width: 59px;
        height: 59px;
        position: absolute;
        top: 0;
        left:0;
    }
    .jokin_no img{
        width: auto;
        max-height:59px;
        height: 100%;
    }
    .col_img_r{
        max-width: 300px;
        width: 30%;
        float:right;
        padding-left: 30px;
        box-sizing: border-box;
    }
}
@media (max-width: 767px) {
    .jokin_container{
        width: 100%;
        padding: 20px;
        box-sizing: border-box;
        display: block;
        background-color: #2677b1;
        color: #fff;
        position: relative;
    }
    .jokin_no{
        width: 40px;
        height: 40px;
        position: absolute;
        top: 0;
        left:0;
    }
    .jokin_no img{
        width: auto;
        max-height:40px;
        height: 100%;
    }
    .col_img_r{
        width: 50%;
        float:right;
        padding-left: 20px;
        box-sizing: border-box;
    }
}
.border_5px{
    border:solid 5px #fff;
}
.jokin_wbg{
    width: 100%;
    max-width: 960px;
    margin: 0 auto;
    position: relative;
    background-color: #fff;
    color: #333;
    border-radius:17px;
    padding: 20px;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .jokin_list ul{
        width: calc(50% - 20px);
        margin: 0 10px;
        box-sizing: border-box;
        position: relative;
        float: left;
    }
}
@media (min-width: 768px) {
    .col2to1 ul{
        width: 100%;
        position: relative;
        float: left;
        box-sizing: border-box;
    }
}
.jokin_list li{
    margin-bottom:10px;
    text-align: center;
}
/*-------------------nayami-------------------*/

@media (min-width: 768px) {
    .nayami_list ul{
        list-style:none;
        margin-bottom: 30px;
    }
    .nayami_list li{
        padding: 5px 5px 5px 30px;
        background: url("../svg/check.svg") left no-repeat;
        background-size: 20px;
        font-weight: bold;
        font-size: 2rem;
        line-height: 1.3em;
    }
}
@media (max-width: 767px) {
    .nayami_list ul{
        list-style:none;
    }
    .nayami_list li{
        padding: 5px 5px 5px 20px;
        background: url("../svg/check.svg") left no-repeat;
        background-size: 18px;
        font-weight: bold;
        font-size: 1.8rem;
        line-height: 1.3em;
    }
}
.nayami_point{
    width:100%;
    padding: 20px;
    background-color: #d33400;
    color:#ffff80;
    font-size: 2.5rem;
    line-height: 1.3em;
    text-align: center;
    font-weight: bold;
}

/*-------------------place-------------------*/
@media (min-width: 768px) {
    .place_txt{
        font-size:auto;
        padding-top: 5px;
        font-weight: 700;
    }
}
@media (max-width: 767px) {
    .place_txt{
        font-size:10px;
        padding-top: 5px;
        font-weight: 700;
    }
}
/*-------------------flow-------------------*/

@media (min-width: 768px) {
    .flow_ctt{
        width:100%;
        max-width: 960px;
        margin: 0 auto 20px auto;
        position: relative;
        display: flex;
        margin-bottom: 30px;
    }
    .flow_l{
        width: 60%;
        padding: 25px;
        box-sizing: border-box;
    }
    .flow_r{
        width: 40%;
        padding: 25px;
        box-sizing: border-box;
    }
}
@media (max-width: 767px) {
    .flow_ctt{
        width:100%;
        max-width: 960px;
        margin: 0 auto 20px auto;
        position: relative;
        display: block;
    }
    .flow_l{
        width: 100%;
        box-sizing: border-box;
    }
    .flow_r{
        width: 100%;
        padding: 20px 0;
        box-sizing: border-box;
    }
}
.flow_l_number{
    width: 40px;
    height: 40px;
    border-radius: 20px;
    text-align: center;
    font-weight: bold;
    padding: 9px;
    box-sizing: border-box;
    position: relative;
    background-color: #008090;
    color: #fff;
    display: inline-block;
    margin-bottom: 10px;
}


@media (min-width: 768px) {
	.flow_staff{
		width: 100%;
		max-width: 960px;
		border:solid 3px #008090;
		padding: 20px;
		box-sizing: border-box;
		margin: 20px auto;
		border-radius: 7px;
		position: relative;
	}
    .flow_staff_inner{
        width: 70%;
        position: relative;
    }
    .flow_staff_img{
        position:absolute;
        width: 30%;
        bottom: -3px;
        right: 0;
    }
    .flow_staff_img img{
        width: 100%;
		height: auto;
		vertical-align: bottom;
    }
    .flow_staff_prof{
        position:absolute;
        bottom: 20px;
        right: 20%;
    }
    .flow_staff_prof span{
        background-color:#fff;
        font-weight: 700;
        padding: 2px;
    }
	.flow_staff_inner span{
		max-width: 25%;
		padding:5px;
		display: inline-block;
	}
	.flow_staff_inner img{
		width:auto;
		max-height: 40px;
	}
	.flow_banner{
		padding-top: 20px;
		display:block;
	}
}
@media (max-width: 767px) and (min-width:440px ) {
    .flow_staff_img{
        position:absolute;
        max-width: 60%;
		height: 300px;
		margin-left: 40%;
		bottom: -3px;
		right: 0;
    }
    .flow_staff_img img{
        width: auto;
		height: 100%;
    }
	
}
@media (max-width: 439px) {
    .flow_staff_img{
        position:absolute;
        max-width: 60%;
		height: 235px;
		margin-left: 40%;
		bottom: -3px;
		right: 0;
    }
    .flow_staff_img img{
        width: auto;
		height: 100%;
    }
}
@media (max-width: 767px) {
	.flow_staff{
		width: 100%;
		max-width: 960px;
		border:solid 3px #008090;
		padding:20px;
		box-sizing: border-box;
		margin: 20px auto;
		border-radius: 7px;
		position: relative;
	}
    .flow_staff_inner{
        width: 100%;
        position: relative;
    }
    .flow_staff_prof{
        position:relative;
        width: 100%;
    }
    .flow_staff_prof span{
        background-color:#fff;
        font-weight: 700;
        padding: 2px;
    }
	.flow_staff_inner span{
		padding:5px;
		display: block;
	}
	.flow_staff_inner img{
		width:100%;
	}
	.flow_banner{
		width: 50%;
		max-width: 250px;
		display:block;
		position: relative;
	}
}
/*-------------------ictt02-------------------*/

@media (min-width: 768px) {
    .i_container02{
        width: 100%;
        height: auto;
        padding: 50px;
        box-sizing: border-box;
        display: block;
        background-color: #ffffff;
        position: relative;
    }
    .ictt02{
        width: 100%;
        max-width: 960px;
        margin: 0 auto;
        padding: 0!important;
        display: flex;
        flex-direction: row;
        position: relative;
    }
    .ictt02r{
        width: 100%;
        max-width: 960px;
        margin: 0 auto;
        padding: 0!important;
        display: flex;
        flex-direction: row-reverse;
        position: relative;
    }
    .ictt02_l{
        width: calc(50% - 50px);
        margin: 30px 25px;
        position: relative;
    }
    .ictt02_r{
        width: calc(50% - 50px);
        margin: 30px 25px;
        position: relative;
    }
    .ictt02_one{
        width:  calc(100% - 10px);
        margin: 30px 0px;
        position: relative;
    }
    .ictt02_ttl{
        font-size: 4rem;
        line-height: 4.5rem;
        font-weight: 700;
        margin-bottom: 30px;
    }
    .ictt02_img{
        width: calc(100% + 50px);
        height: 400px;
        background-color: #333;
    }
    .ictt02r_img{
        width: 100%;
        height: auto;
    }
}
@media (max-width: 767px) {
    .i_container02{
        width: 100%;
        padding: 20px;
        box-sizing: border-box;
        display: block;
        background-color: #fff;
        position: relative;
    }
    .ictt02{
        width: 100%;
        margin: 0 auto;
        display: block;
        position: relative;
    }
    .ictt02r{
        width: 100%;
        margin: 0 auto;
        display: block;
        position: relative;
    }
    .ictt02_l{
        width: 100%;
    }
    .ictt02_r{
        width: 100%;
    }
    .ictt02_one{
        width: 100%;
    }
    .ictt02_ttl{
        font-size: 3.2rem;
        line-height: 4.2rem;
        font-weight: 700;
        margin-bottom: 40px;
    }
    .ictt02_img{
        width: 100%;
        height: 300px;
        background-color: #333;
    }
    .ictt02r_img{
        width: 100%;
        height: auto;
        margin-top: 15px;
    }
}





/*-------------------footer-------------------*/
footer{
    width: 100%;
    position:relative;
    background-color: #fff;
}
@media (min-width: 768px) {
    #foot-copy{
        width: 100%;
        padding: 30px;
        font-size: 1rem;
        box-sizing: border-box;
        position: relative;
    }
    #foot_menu{
        min-width: 200px;
        position: absolute;
        right: 100px;
        top: 30px;
        display: flex;
        text-align: center;
        z-index: 8;
    }
    #foot_menu li{
        padding: 0 10px;
        font-size: 1rem;
        text-align: right;
    }
}
@media (max-width: 767px) {
    #foot-copy{
        width: 100%;
        padding: 10px;
        font-size: 1rem;
        box-sizing: border-box;
        position: relative;
    }
    #foot_menu{
        width: 100%;
        position: relative;
        display: block;
        padding-top: 30px;
    }
    #foot_menu li{
        width: 100%;
        padding:10px;
        font-size: 1.2rem;
        text-align: center;
    }
}




/*-------------------下層ページcss-------------------*/
@media (min-width: 960px) {
    .base_ttl{
        width:100%;
        padding: 50px 0;
        font-size: 3.2rem;
        line-height: 1.3em;
        position: relative;
        font-weight: 700;
        z-index: 2;
    }

}
@media (max-width: 959px) {
    .base_ttl{
        width:100%;
        padding: 20px 0;
        font-size: 2.4rem;
        line-height: 1.3em;
        position: relative;
        font-weight: 700;
        z-index: 2;
    }
}
.base_sub{
    font-size: 2rem;
    line-height: 1.3em;
    font-weight: 700;
}
.base_sub strong{
    font-size: 140%;
    font-weight: 700;
    line-height: 1.3em;
}

@media (min-width: 960px) {

    .table_ctt dl{
        width: 100%;
        padding-bottom: 10px;
        clear:both;
        overflow: hidden;
    }
    .table_ctt dt{
        width: calc(50% - 10px);
        margin-right: 10px;
        padding: 10px;
        background-color: #0052a5;
        color: #fff;
        font-weight: 700;
        float: left;
    }
    .table_ctt dd{
        width: calc(50% - 10px);
        margin-left: 10px;
        padding: 10px;
        float: left;
    }
}
@media (max-width: 959px) {
    .table_ctt dl{
        width: 100%;
        padding-bottom: 10px;
        clear:both;
        overflow: hidden;
    }
    .table_ctt dt{
        width: 100%;
        padding: 10px;
        background-color: #0052a5;
        color: #fff;
        font-weight: 700;
        float: left;
    }
    .table_ctt dd{
        width: 100%;
        padding: 10px;
        float: left;
    }
}
@media (min-width: 960px) {
    .caution_box{
        width: 80%;
        padding: 20px;
        margin: 30px 10%;
        box-sizing: border-box;
        background-color: #fff;
        border:solid 1px #0052a5;
        position: relative;
    }
}
@media (max-width: 959px) {
    .caution_box{
        width: 100%;
        padding: 20px;
        margin: 30px 0;
        box-sizing: border-box;
        background-color: #fff;
        border:solid 1px #0052a5;
        position: relative;
    }
}
.caution_box strong{
    color:#0052a5;
    font-weight: 700;
}
.qa_l{
    width: 35px;
    position: absolute;
    top: 15px;
    left: 15px;
}
.qa_r{
    width: 100%;
    position: relative;
    padding-left: 45px;
}
.txt_point{
    padding: 5px 10px;
    border-radius: 11px;
    background-color: #0052a5;
    color: #fff;
    font-weight: 700;
    margin-bottom: 10px;
}
.txt_grn{
    color: #008090;
}
.txt_blue{
    color: #2677b1;
}
.txt_yel{
    color:#ffff80;
}
@media (min-width: 768px) {
    .col4ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col4to3{
        width: calc(25% - 20px);
        padding: 5px;
        margin: 10px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col3{
        width: calc(33.333333% - 20px);
        padding: 10px;
        margin: 10px;
        position: relative;
        float: left;
        text-align: center;
        background-color: #fff;
    }
    .col3to1{
        width: calc(33.333333% - 20px);
        padding: 15px;
        margin: 10px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3to3{
        width: calc(33.333333% - 20px);
        padding: 5px;
        margin: 10px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3to1_it{
        width: calc(33.333333% - 20px);
        padding: 15px;
        margin: 10px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3to1_blue{
        width: calc(33.333333% - 20px);
        padding: 15px;
        margin: 10px;
        position: relative;
        float: left;
        background-color: #ecf9f9;
    }
    .col3to1_ctct{
        width: calc(33.333333% - 20px);
        padding: 15px;
        margin: 10px;
        position: relative;
        float: left;
        border-radius: 11px;
    }
    .col2ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col2to2{
        width: calc(50% - 20px);
        padding: 15px;
        margin: 10px;
        box-sizing: border-box;
        position: relative;
        float: left;
    }
    .col2to1{
        width: calc(50% - 20px);
        padding: 5px;
        margin: 10px;
        box-sizing: border-box;
        position: relative;
        float: left;
    }
    .col2to1_blue_l{
        width: calc(55% - 10px);
        margin-right: 10px;
        float:left;
    }
    .col2to1_blue_r{
        width: 45%;
        float:left;
    }
    .col3to2{
        display:block;
    }
    .col1ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col1to1{
        width: calc(100% - 20px);
        padding: 15px;
        margin: 10px;
        box-sizing: border-box;
        position: relative;
    }
}
@media (max-width: 767px) {
    .col4ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col4to3{
        width: calc(33.333333% - 4px);
        margin: 2px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col3{
        width: calc(50% - 20px);
        padding: 10px;
        margin: 10px;
        position: relative;
        float: left;
        text-align: center;
        background-color: #fff;
    }
    .col3to1{
        width: 100%;
        padding: 15px;
        margin-bottom: 10px;
        position: relative;
        float: left;
        background-color: #fff;
        box-sizing: border-box;
    }
    .col3to3{
        width: calc(33.333333% - 4px);
        margin: 2px;
        position: relative;
        float: left;
        background-color: #fff;
    }
    .col3to1_it{
        width: 100%;
        padding: 15px;
        margin-bottom: 10px;
        position: relative;
        float: left;
        background-color: #fff;
        box-sizing: border-box;
    }
    .col3to1_blue{
        width: 100%;
        padding: 15px;
        margin-bottom: 10px;
        position: relative;
        float: left;
        background-color: #ecf9f9;
        box-sizing: border-box;
    }
    .col3to1_ctct{
        width: 100%;
        padding: 15px;
        margin-bottom: 10px;
        position: relative;
        float: left;
        box-sizing: border-box;
        border-radius: 11px;
    }
    .col2ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col2to2{
        width: calc(50% - 4px);
        padding: 5px;
        margin: 2px;
        box-sizing: border-box;
        position: relative;
        float: left;
    }
    .col2to1{
        width: 100%;
        padding: 5px;
        margin-bottom: 10px;
        position: relative;
        float: left;
        box-sizing: border-box;
    }
    .col2to1_blue_l{
        width: 100%;
        margin-right: 10px;
        float:none;
    }
    .col2to1_blue_r{
        width:100%;
        margin-right: 10px;
        float:none;
    }
    .col3to2{
        width: calc(50% - 4px);
        padding: 5px;
        margin: 2px;
        box-sizing: border-box;
        position: relative;
        float: left;
    }
    .col1ctt{
        width:100%;
        max-width: 960px;
        margin:0 auto;
        clear: both;
        overflow: hidden;
    }
    .col1to1{
        width: calc(100% - 4px);
        padding: 5px;
        margin: 2px;
        box-sizing: border-box;
        position: relative;
    }
}
.col3 img{
    max-width: 200px;
}

@media (min-width: 768px) {
    .mail-button{
        min-width:270px;
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 15px;
        font-weight: bold;
        display: inline-block;
        padding: 15px;
        text-align: center;
        color: #fff;
        background-color: #23ACFF;
        border-radius: 11px;
        border: none;
    }
    .mail-buttong{
        min-width:270px;
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 15px;
        font-weight: bold;
        display: inline-block;
        padding: 15px;
        text-align: center;
        color: #fff;
        background-color: #333;
        border-radius: 11px;
        border: none;
    }
}
@media (max-width: 767px) {
    .mail-button{
        width:100%;
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 15px;
        font-weight: bold;
        display: inline-block;
        padding: 15px;
        text-align: center;
        color: #fff;
        background-color: #23ACFF;
        border-radius: 11px;
        border: none;
        box-sizing: border-box;
    }
    .mail-buttong{
        width:100%;
        margin-top: 10px;
        margin-bottom: 10px;
        font-size: 15px;
        font-weight: bold;
        display: inline-block;
        padding: 15px;
        text-align: center;
        color: #fff;
        background-color: #333;
        border-radius: 11px;
        border: none;
        box-sizing: border-box;
    }
}
.mail-button_ctt{
    padding:0 20px;
}
#formWrap {
	width:100%;
	margin:0 auto;
	margin-bottom:40px;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}

@media (min-width: 768px) {
    table.formTable td,table.formTable th{
        border:none;
        padding:15px;
    }
    table.formTable th{
        text-align:left;
        border-radius: 14px;
    }
}
@media (max-width: 767px) {
    table.formTable td,table.formTable th{
        border:none;
        padding:10px;
    }
    table.formTable th{
        text-align:left;
        background-color: #f2f2f2;
        border-radius: 14px;
    }
}

.formTable input, textarea{
	border-radius: 5px;
	padding:15px!important;
	border: solid 1px #D6D6D6;
	width: 100%;
}
table.formTable span{
    background-color: #CD0003;
    color: #fff;
    padding: 4px;
    display: inline-block;
    font-size: 12px;
    line-height: 14px;
    border-radius: 4px;
}
option, select{
    width: 100%;
    padding: 15px;
	border-radius: 5px;
    box-sizing: border-box;
}