@charset "UTF-8";

html{
	overflow: auto;
	height: 100%;
    font-family: "Meiryo", "Hiragino Sans", sans-serif;
	font-size: 18px;
	line-height: 1.5rem;
	color: #444;
}

body{
	width: 100%;
	min-height: 100%;
	height: auto !important;
	height: 100%;
    position: relative;
    word-wrap: break-word;
	overflow-wrap: break-word;
}

@media screen and (max-width: 480px) {
	body {overflow: hidden;}
}

.clearfix:after {content: "."; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix {min-height: 1px;}

a{color: #0569b6; text-decoration: none;}
a:hover{color:#ff4e00;}
a:active{color: #0569b6;}
a:visited{color: #0569b6;}

a.type_a:hover{
	opacity: 0.6;
	-webkit-transition: all .1s;
    transition: all .1s;
}

/*** 非表示 ***/
.hide_all{
	display: none;
}
@media screen and (min-width: 481px){
	.hidePC{
		display: none;
	}
}
@media screen and (max-width: 480px){
	.hideMB{
		display: none;
	}
}

/*** Float Control ***/
.flt_lft {float: left;}
.flt_rght {float: right;}

.disply_blk {display: block;} /* 要素をブロックとする */
.disply_inlnblk {display:inline-block;} /* 要素をブロックとしたうえでインライン配置できるようにする */
.disply_nn {display:none;} /* 要素を批評じにする */
.disply_inln {display: inline;} /* 要素をインライン配置できるようにする */

/** Block Table Layout **/
/* ブロック要素をテーブルレイアウトとして設定 */
.disply_tbl {display: table;} /* 要素をテーブルとする */
.disply_tblcl {display: table-cell;} /* 要素をテーブルセルとする */
.disply_tblcol {display: table-column;} /* 要素に対してカラム定義を設定する/ テーブルセルなどを囲う要素 */
.disply_tblrw {display: table-row;} /* 要素にテーブルロウの定義を設定する(テーブルセル下段への囲み要素) */
.disply_tblhd {display: table-header-group;} /* 要素にテーブルヘッダーの定義を設定する */
.disply_tblft {display: table-footer-group;} /* 要素にテーブルフッターの定義を設定する */
.disply_tblinln {display: inline-table;} /* 要素をインライン属性のテーブルとする */
.disply_tblcap {display: table-caption;} /* 要素にテーブルキャプションを設定する */

/*** width Control ***/
/* 横幅の設定 */
.wd10 {width: 10%;}
.wd20 {width: 20%;}
.wd30 {width: 30%;}
.wd30_3col {width: 33.33333333%;}
.wd30_3col2 {width: 33.33333333%;}
.wd40 {width: 40%;}
.wd40_2 {width: 40%;}
.wd50 {width: 50%;}
.wd50_2 {width: 50%;}
.wd60 {width: 60%;}
.wd60_2 {width: 60%;}
.wd65 {width: 65%;}
.wd70 {width: 70%;}
.wd70_2 {width: 70%;}
.wd75 {width: 75%;}
.wd80 {width: 80%;}
.wd80_2 {width: 80%;}
.wd85 {width: 85%;}
.wd90 {width: 90%;}
.wd95 {width: 95%}
.wd100 {width: 100%;}

/*** width Control Responsive -Fullwidth Change- ***/
/* 横幅指定のclassの一部に対してモバイル表示の場合は100%の横幅となるようにしてあるもの。*/
/* 上記横幅設定のclassに同一の名称があり、PCでの要素とモバイルでの要素で表示幅が自動的に同一名称であれば可変する */
@media screen and (max-width: 480px) {
    .wd30_3col2 {width: 100%;}
    .wd40_2 {width: 100%;}
    .wd50_2 {width: 100%;}
    .wd60_2 {width: 100%;}
    .wd70_2 {width: 100%;}
    .wd80_2 {width: 100%;}
}

/** Margin Center (margintop & marginbottom ON) **/
/* 要素を中央にして外周の上下余白を設定 */
.mgn0tpbtm {margin: 0px auto;}
.mgn5tpbtm {margin: 5px auto;}
.mgn10tpbtm {margin: 10px auto}
.mgn15tpbtm {margin: 15px auto;}
.mgn20tpbtm {margin: 20px auto;}
.mgn25tpbtm {margin: 25px auto;}
.mgn30tpbtm {margin: 30px auto;}
.mgn35tpbtm {margin: 35px auto;}
.mgn40tpbtm {margin: 40px auto;}
.mgn45tpbtm {margin: 45px auto;}
.mgn50tpbtm {margin: 50px auto;}

/** Margin (margin ON) **/
/* 要素外周の余白を設定 */
.mgnall_5 {margin: 5px;}
.mgnall_10 {margin: 10px;}
.mgnall_15 {margin: 15px;}
.mgnall_20 {margin: 20px;}
.mgnall_25 {margin: 25px;}
.mgnall_30 {margin: 30px;}

/** Margin (margin ON) **/
/* 要素外周の余白を減衰設定 */
.mgnmins_0 {margin: 0px;}
.mgnmins_10 {margin: -10px;}
.mgnmins_15 {margin: -15px;}
.mgnmins_20 {margin: -20px;}
.mgnmins_25 {margin: -25px;}
.mgnmins_30 {margin: -30px;}
.mgnminstp_0 {margin-top: 0px;}
.mgnminstp_10 {margin-top: -10px;}
.mgnminstp_15 {margin-top: -15px;}
.mgnminstp_20 {margin-top: -20px;}
.mgnminstp_25 {margin-top: -25px;}
.mgnminstp_30 {margin-top: -30px;}

/** Margin Top **/
/* 要素外周の上部余白を設定 */
.mgntp0 {margin-top: 0px;}
.mgntp1 {margin-top: 1px;}
.mgntp2 {margin-top: 2px;}
.mgntp3 {margin-top: 3px;}
.mgntp4 {margin-top: 4px;}
.mgntp5 {margin-top: 5px;}
.mgntp6 {margin-top: 6px;}
.mgntp7 {margin-top: 7px;}
.mgntp8 {margin-top: 8px;}
.mgntp9 {margin-top: 9px;}
.mgntp10 {margin-top: 10px;}
.mgntp11 {margin-top: 11px;}
.mgntp12 {margin-top: 12px;}
.mgntp13 {margin-top: 13px;}
.mgntp14 {margin-top: 14px;}
.mgntp15 {margin-top: 15px;}
.mgntp20 {margin-top: 20px;}
.mgntp25 {margin-top: 25px;}
.mgntp30 {margin-top: 30px;}
.mgntp35 {margin-top: 35px;}
.mgntp40 {margin-top: 40px;}
.mgntp45 {margin-top: 45px;}
.mgntp50 {margin-top: 50px;}
.mgntp55 {margin-top: 55px;}
.mgntp60 {margin-top: 60px;}
.mgntp65 {margin-top: 65px;}
.mgntp70 {margin-top: 70px;}
.mgntp75 {margin-top: 75px;}
.mgntp80 {margin-top: 80px;}
.mgntp85 {margin-top: 85px;}
.mgntp90 {margin-top: 90px;}
.mgntp95 {margin-top: 95px;}
.mgntp100 {margin-top: 100px;}

/** Margin Bottom **/
/* 要素外周の下部余白を設定 */
.mgnbtm1 {margin-bottom: 1px;}
.mgnbtm2 {margin-bottom: 2px;}
.mgnbtm3 {margin-bottom: 3px;}
.mgnbtm4 {margin-bottom: 4px;}
.mgnbtm5 {margin-bottom: 5px;}
.mgnbtm6 {margin-bottom: 6px;}
.mgnbtm7 {margin-bottom: 7px;}
.mgnbtm8 {margin-bottom: 8px;}
.mgnbtm9 {margin-bottom: 9px;}
.mgnbtm10 {margin-bottom: 10px;}
.mgnbtm11 {margin-bottom: 11px;}
.mgnbtm12 {margin-bottom: 12px;}
.mgnbtm13 {margin-bottom: 13px;}
.mgnbtm14 {margin-bottom: 14px;}
.mgnbtm15 {margin-bottom: 15px;}
.mgnbtm20 {margin-bottom: 20px;}
.mgnbtm25 {margin-bottom: 25px;}
.mgnbtm30 {margin-bottom: 30px;}
.mgnbtm31 {margin-bottom: 31px;}
.mgnbtm32 {margin-bottom: 32px;}
.mgnbtm33 {margin-bottom: 33px;}
.mgnbtm34 {margin-bottom: 34px;}
.mgnbtm35 {margin-bottom: 35px;}
.mgnbtm40 {margin-bottom: 40px;}
.mgnbtm45 {margin-bottom: 45px;}
.mgnbtm50 {margin-bottom: 50px;}
.mgnbtm55 {margin-bottom: 55px;}
.mgnbtm60 {margin-bottom: 60px;}
.mgnbtm65 {margin-bottom: 65px;}
.mgnbtm70 {margin-bottom: 70px;}
.mgnbtm75 {margin-bottom: 75px;}
.mgnbtm80 {margin-bottom: 80px;}
.mgnbtm85 {margin-bottom: 85px;}
.mgnbtm90 {margin-bottom: 90px;}
.mgnbtm95 {margin-bottom: 95px;}
.mgnbtm100 {margin-bottom: 100px;}

/*** Padding Control ***/
/** Padding **/
/* 要素内周の余白を設定 */
.pdng1 {padding: 1px;}
.pdng2 {padding: 2px;}
.pdng3 {padding: 3px;}
.pdng4 {padding: 4px;}
.pdng5 {padding: 5px;}
.pdng6 {padding: 6px;}
.pdng7 {padding: 7px;}
.pdng8 {padding: 8px;}
.pdng9 {padding: 9px;}
.pdng10 {padding: 10px;}
.pdng15 {padding: 15px;}
.pdng20 {padding: 20px;}
.pdng25 {padding: 25px;}
.pdng30 {padding: 30px;}

/** Padding Top **/
/* 要素内周の上部余白を設定 */
.pdtp1 {padding-top: 1px;}
.pdtp2 {padding-top: 2px;}
.pdtp3 {padding-top: 3px;}
.pdtp4 {padding-top: 4px;}
.pdtp5 {padding-top: 5px;}
.pdtp6 {padding-top: 6px;}
.pdtp7 {padding-top: 7px;}
.pdtp8 {padding-top: 8px;}
.pdtp9 {padding-top: 9px;}
.pdtp10 {padding-top: 10px;}
.pdtp15 {padding-top: 15px;}
.pdtp20 {padding-top: 20px;}
.pdtp25 {padding-top: 25px;}
.pdtp30 {padding-top: 30px;}
.pdtp35 {padding-top: 35px;}
.pdtp40 {padding-top: 40px;}
.pdtp45 {padding-top: 45px;}
.pdtp50 {padding-top: 50px;}
.pdtp55 {padding-top: 55px;}
.pdtp60 {padding-top: 60px;}
.pdtp65 {padding-top: 65px;}
.pdtp70 {padding-top: 70px;}
.pdtp75 {padding-top: 75px;}
.pdtp80 {padding-top: 80px;}
.pdtp85 {padding-top: 85px;}
.pdtp90 {padding-top: 90px;}
.pdtp95 {padding-top: 95px;}
.pdtp100 {padding-top: 100px;}

/** Padding Bottom **/
/* 要素内周の下部余白を設定 */
.pdbtm1 {padding-bottom: 1px;}
.pdbtm2 {padding-bottom: 2px;}
.pdbtm3 {padding-bottom: 3px;}
.pdbtm4 {padding-bottom: 4px;}
.pdbtm5 {padding-bottom: 5px;}
.pdbtm6 {padding-bottom: 6px;}
.pdbtm7 {padding-bottom: 7px;}
.pdbtm8 {padding-bottom: 8px;}
.pdbtm9 {padding-bottom: 9px;}
.pdbtm10 {padding-bottom: 10px;}
.pdbtm15 {padding-bottom: 15px;}
.pdbtm20 {padding-bottom: 20px;}
.pdbtm25 {padding-bottom: 25px;}
.pdbtm30 {padding-bottom: 30px;}
.pdbtm35 {padding-bottom: 35px;}
.pdbtm40 {padding-bottom: 40px;}
.pdbtm45 {padding-bottom: 45px;}
.pdbtm50 {padding-bottom: 50px;}
.pdbtm55 {padding-bottom: 55px;}
.pdbtm60 {padding-bottom: 60px;}
.pdbtm65 {padding-bottom: 65px;}
.pdbtm70 {padding-bottom: 70px;}
.pdbtm75 {padding-bottom: 75px;}
.pdbtm80 {padding-bottom: 80px;}
.pdbtm85 {padding-bottom: 85px;}
.pdbtm90 {padding-bottom: 90px;}
.pdbtm95 {padding-bottom: 95px;}
.pdbtm100 {padding-bottom: 100px;}

/** Textsize Adjust **/
.txts08 {font-size: 0.5rem;}
.txts09 {font-size: 0.563rem;}
.txts10 {font-size: 0.625rem;}
.txts11 {font-size: 0.688rem;}
.txts12 {font-size: 0.750rem;}
.txts13 {font-size: 0.813rem;}
.txts14 {font-size: 0.875rem;}
.txts15 {font-size: 0.938rem;}
.txts16 {font-size: 1.000rem;}
.txts17 {font-size: 1.063rem;}
.txts18 {font-size: 1.125rem;}
.txts19 {font-size: 1.188rem;}
.txts20 {font-size: 1.250rem;}
.txts21 {font-size: 1.313rem;}
.txts22 {font-size: 1.375rem;}
.txts23 {font-size: 1.437rem;}
.txts24 {font-size: 1.500rem;}
.txts25 {font-size: 1.562rem;}
.txts26 {font-size: 1.625rem;}
.txts27 {font-size: 1.6875rem;}
.txts28 {font-size: 1.75rem;}
.txts29 {font-size: 1.8125rem;}
.txts30 {font-size: 1.875rem;}
.txts31 {font-size: 1.9375rem;}
.txts32 {font-size: 2.000rem;}

@media screen and (max-width:414px) {
	.txts20{font-size: 0.875rem;}
}

/*** Text Align ***/
.txts_l {text-align: left;}
.txts_r {text-align: right;}
.txts_c {text-align: center;}

/*** Text Weight ***/
.txtsw_n {font-weight: normal;}
.txtsw_s {font-weight: lighter;}
.txtsw_b {font-weight: bold;}
.txtsw_xb {font-weight: bolder;}

/*** Vertical Align ***/
.vtagn_tp {vertical-align: top;}
.vtagn_btm {vertical-align: bottom;}
.vtagn_mid {vertical-align: middle;}
.vtagn_bline {vertical-align: baseline;}
.vtagn_txtp {vertical-align: text-top;}
.vtagn_txtbtm {vertical-align: text-bottom;}

.ovfhdn{overflow: hidden;}

.imgsize10{width: 10%; height: auto;}
.imgsize20{width: 20%; height: auto;}
.imgsize25{width: 25%; height: auto;}
.imgsize30{width: 30%; height: auto;}
.imgsize40{width: 40%; height: auto;}
.imgsize50{width: 50%; height: auto;}
.imgsize60{width: 60%; height: auto;}
.imgsize70{width: 70%; height: auto;}
.imgsize80{width: 80%; height: auto;}
.imgsize90{width: 90%; height: auto;}
.imgsize92{width: 92%; height: auto;}
.imgsize94{width: 94%; height: auto;}
.imgsize96{width: 96%; height: auto;}
.imgsize98{width: 98%; height: auto;}
.imgsize100{width: 100%; height: auto;}
.imgsize100_2{width: 100%; height: auto;}

@media screen and (max-width:414px) {
	.imgsize70{width: 70%; height: auto; margin: 0 auto;}
	.imgsize100_2{margin: 50px auto 0;}
}

.bdr_all {border: 1px solid #333;}
.bdr_tp {border-top: 1px solid #333;}
.bdr_tp2 {border-top: 3px solid #333;}
.bdr_tp3 {border-top: 3px solid #0569b6;}
.bdr_lft {border-left: 1px solid #333;}
.bdr_rght {border-right: 1px solid #333;}
.bdr_btm {border-bottom: 1px solid #333;}
.bdr_btm2 {border-bottom: 3px solid #333;}

.bdr_all2 {border: 3px solid #0569b6; box-sizing: border-box;}
.bdr_grey {border: 2px solid #adadad; box-sizing: border-box;}
.bdr_green {border: 2px solid #b9ff97; box-sizing: border-box;}
.bdr_orange {border: 2px solid #fe9567; box-sizing: border-box;}
.bdr_blue {border: 2px solid #2e75b6; box-sizing: border-box;}

.bdr_tpblue {position: relative;}

.bdr_tpblue::before {
	content: '';
	display: block;
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: -5px;
	width: 40px;
	height: 4px;
	background-color: #0569b6;
}

.bdrdus_01{border-radius: 20px;}
.bdrdus_02{border-radius: 15px;}
.bdrdus_03{border-radius: 10px;}

.bdrdus_left{border-radius: 10px 0 0 10px;}
.bdrdus_right{border-radius: 0 10px 10px 0;}

@media screen and (max-width:414px){
	.bdrdus_left{border-radius: 10px 10px 0 0;}
	.bdrdus_right{border-radius: 0 0 10px 10px;}
}

.bgc01{background-color: #e9e9e9;}
.bgc02{background-color: #0569b6;}
.bgc03{background-color: #b9ff97;}
.bgc04{background-color: #fe9567;}
.bgc05{background-color: #2e75b6;}
.bgc06{background-color: #adadad;}
.bgc07{background-color: #fff;}

.red{color: #e20000;}
.blue{color: #0569b6;}
.green{color: #00c210;}
.orenge{color: #ff4e00;}
.white{color: #fff;}

.bxsiz{box-sizing: border-box;}
.nobr{white-space: nowrap}

.wrapper{
	width: 100%;
	max-width: 1200px;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

/*ーーーーーーーーーー
.header
ーーーーーーーーーーー*/
h1{
    margin: 0;
}

a {
    text-decoration: none;
}

header {
    width: 100%;
    background: #fff;
    z-index: 1000;
    padding: 0;
    /* box-shadow: 1px 1px 1px gray; */
	position: fixed;
	top: 0;
	left: 0;
	transition: .3s;
}

.container{
    padding-left: 10px;
    padding-right: 10px;
}

.headA {
}


.headA h1 {
    font-size: 12px;
    margin: 0 0 0 10px;
    color: #333;
	font-weight: normal;
}

.headA h1 img{
	width: 160px;
	height: auto;
}

@media screen and (max-width:820px){
	.headA h1 img{ width: 130px;}
}

.headA h1:hover{
	opacity: 0.6;
	-webkit-transition: all .1s;
    transition: all .1s;
}

.headscsk{
	width: 110px;
	height: auto;
	padding: 5px 1px;
	margin-top: -8px;
	margin-left: 5px;
	margin-right: 5px;
}

@media screen and (max-width:820px){
	.headscsk{
		magin-top: 0px;
	}
}


@media screen and (max-width:820px){
	.headA h1 img{width: 130px;}
}

.headB ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.headB ul li{
	padding-top: 10px;
}

.headB ul li.drpmnu{
	padding-top: 10px;
	position: relative;
}


.headB ul li.drpmnu ul.secondry {
    position: absolute;
    top: 40px;
	left: 50%;
	transform: translate(-50%);
	width: 100%;
    min-width: 230px;
	max-width: 100%;
    background: #fff;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
	visibility: hidden;
    opacity: 0;
    z-index: 888;
	display: block;
}

.headB ul li.drpmnu:hover ul.secondry {
    top: 50px;
    visibility: visible;
    opacity: 1;
	display: block;
}

.headB a {
    display: block;
    padding: 10px;
    color: #333;
    font-size: 17px;
    text-decoration: none;
    /* border-bottom: 1px solid none; */
}

.headB a:hover {
	color: #ff4e00;
	-webkit-transition: all .5s;
    transition: all .5s;
    /* margin-top: -3px; */
    /* border-bottom: 1px solid none; */
}

.allwbtm:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 0 15px;
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* floatクリア */
.headB:before,
.headB:after {
    content: " ";
    display: table;
}

.headB:after {
    clear: both;
}

.headB {
    *zoom: 1;
}

@media screen and (min-width: 821px) {
    .container {
        display: flex;
        align-items: center;
        max-width: 1200px;
        justify-content: space-between;
        margin-left: auto;
        margin-right: auto;
    }

    .headB ul {
        display: flex;
    }

    .headC {
        display: none;

    }

    .headB {
        display: block !important;
    }
}

@media screen and (max-width:820px) {
    header .container-small {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    .headC {
        margin-right: 10px;
        padding: 0;
        border: none;
        outline: none;
        background: none;
        font-size: 28px;
        opacity: 0.8;
        cursor: pointer;
        color: #333;
    }

    .headC:hover {
        opacity: 0.3;

    }

    .headB {
        display: none;
		text-align: center;
    }
}

.conA{
    height: 90vh;
    width: 100%;
    /* background-color: aquamarine; */
}

section{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0 10px;
	box-sizing: border-box;
}

@media screen and (max-width:820px){
	section {padding: 0;}
}

.maincover{
	width: 100%;
	max-width: 1200px;
	height: 100%;
	max-height: 732px;
	margin: 25px auto 0;
	position: relative;
	z-index: 1;
}

.coverbg{
	width: 100%;
	max-width: 1200px;
	height: 100%;
	max-height: 732px;
	margin: 0 auto;
	z-index: 2;
	object-fit: contain;
}

h2.ccopy {
	font-size: 8.0rem;
	text-align: center;
	line-height: 0.2;
	font-weight: bold;
	position: absolute;
	display: block;
	width: 100%;
	z-index: 3;
	top: 12%;
	margin: 0 auto;
	color: #333;
}

h2.ccopy span.subcopy_2 {
	font-size: 2.7rem;
}

h2.ccopy span.subcopy {
	font-size: 1.625rem;
}

@media screen and (max-width:820px) {
	.maincover{margin-top: 20px;}
	h2.ccopy {font-size: 5.0rem;}
	h2.ccopy span.subcopy_2 {font-size: 1.65rem; line-height: 1.5;}
	h2.ccopy span.subcopy {font-size: 1.0rem; line-height: 1.0;}
}

@media screen and (max-width:414px) {
	.maincover{margin-top: 70px;}
	h2.ccopy {font-size: 2.4rem;}
	h2.ccopy span.subcopy_2 {font-size: 1.05rem; line-height: 1.3;}
	h2.ccopy span.subcopy {font-size: 0.675rem; line-height: 0.8;}
}

h2.title{
	font-size: 2.0rem;
	line-height: 1.3;
	text-align: center;
	font-weight: bold;
	padding: 10px;
	border-bottom: 3px solid;
	border-color: #0569b6;
}

@media screen and (max-width:414px) {
	h2.title{font-size: 1.6rem;}
}

h3.boxtitle{
	font-size: 1.625rem;
	line-height: 1.3;
	text-align: center;
	font-weight: bold;
	display: block;
	padding: 5px;
}

.number{
	float: left;
	max-width: 50px;
	max-height: 50px;
	margin-right: 10px;
}

.kkbox{height: 210px;}
.kkbox2{height: 230px;}
.kkbox3{height: 250px;}

.flexwrapp{
	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-flow: row wrap;
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
	justify-content: center;
	-ms-flex-pack: distribute;
	align-items: stretch;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-content: stretch;
	-ms-flex-line-pack: stretch;
}

.flexwrapp2{
	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-flow: row wrap;
	-webkit-box-orient: horizontal;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: row;
	justify-content: center;
	-ms-flex-pack: distribute;
	align-items: stretch;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-content: stretch;
	-ms-flex-line-pack: stretch;
}

@media screen and (max-width:414px) {
	.flexwrapp2{flex-direction: column-reverse;}
}

.boxstyle_1{flex-basis: 100%; -ms-flex-preferred-size: 100%; padding: 0 10px; box-sizing: border-box;}
.boxstyle_2{flex-basis: 48%; -ms-flex-preferred-size: 50%; padding: 10px; box-sizing: border-box;}
.boxstyle_3{flex-basis: 30%; -ms-flex-preferred-size: 30%; padding: 10px; box-sizing: border-box;}
.boxstyle_4{flex-basis: 25%; -ms-flex-preferred-size: 25%; padding: 10px; box-sizing: border-box;}
.boxstyle_4_2{flex-basis: 22%; -ms-flex-preferred-size: 22%; padding: 10px; box-sizing: border-box;}
.boxstyle_5{flex-basis: 20%; -ms-flex-preferred-size: 20%; padding: 10px; box-sizing: border-box;}
.boxstyle_5_2{flex-basis: 20%; -ms-flex-preferred-size: 20%; padding: 10px; margin: 10px; height: 230px;}
.boxstyle_5_3{flex-basis: 20%; -ms-flex-preferred-size: 20%; padding: 10px; margin: 10px; height: 170px;}
.boxstyle_5_4{flex-basis: 20%; -ms-flex-preferred-size: 20%; padding: 10px; margin: 10px; height: 200px;}
.boxstyle_5_5{flex-basis: 20%; -ms-flex-preferred-size: 20%; padding: 10px; margin: 10px; height: 250px;}
.flxcenter{align-self: center; -ms-flex-item-align: center;}
.flxstart{align-self: start; -ms-flex-item-align: start;}
.flxend{align-self: end; -ms-flex-item-align: end;}
.flxbaseline{align-self: baseline; -ms-flex-item-align: baseline;}

.boxstyle_90per{flex-basis: 90%; -ms-flex-preferred-size: 90%; padding: 10px; box-sizing: border-box;}
.boxstyle_80per{flex-basis: 80%; -ms-flex-preferred-size: 80%; padding: 10px; box-sizing: border-box;}
.boxstyle_80per_2{flex-basis: 80%; -ms-flex-preferred-size: 80%; padding: 0; box-sizing: border-box;}
.boxstyle_70per{flex-basis: 70%; -ms-flex-preferred-size: 70%; padding: 10px; box-sizing: border-box;}
.boxstyle_60per{flex-basis: 60%; -ms-flex-preferred-size: 60%; padding: 10px; box-sizing: border-box;}
.boxstyle_40per{flex-basis: 40%; -ms-flex-preferred-size: 40%; padding: 10px; box-sizing: border-box;}
.boxstyle_40per2{flex-basis: 40%; -ms-flex-preferred-size: 40%; padding: 10px; box-sizing: border-box;}
.boxstyle_30per{flex-basis: 25%; -ms-flex-preferred-size: 25%; padding: 10px; box-sizing: border-box;}
.boxstyle_30per2{flex-basis: 30%; -ms-flex-preferred-size: 30%; padding: 10px; box-sizing: border-box;}

@media screen and (max-width:768px) {
	.boxstyle_5_2,
	.boxstyle_5_3,
	.boxstyle_5_4,
	.boxstyle_5_5{flex-basis: 40%;}
}
@media screen and (max-width:414px) {
	.boxstyle_3,
	.boxstyle_5_2,
	.boxstyle_5_3,
	.boxstyle_5_4,
	.boxstyle_5_5,
	.boxstyle_80per,
	.boxstyle_80per_2,
	.boxstyle_70per,
	.boxstyle_60per,
	.boxstyle_40per2{flex-basis: 90%;}
	.boxstyle_4_2{flex-basis: 45%;}
}

@media screen and (max-width:414px) {
	.boxstyle_30per2{flex-basis: 100%;}
}

p.sub{
	font-size: 1.250rem;
	text-align: left;
	line-height: 1.3;
	font-weight: bold;
}

.bgcircle{
	height: 175px;
	margin: 5px;
	background-color: #e9e9e9;
	/*  background-image: url(../images/circlebg.jpg);
	background-size: contain;
	background-repeat:  no-repeat;
	background-position: center center; */
}

.contactbanner{
	width: 100%;
	height: auto;
	margin-top: 30px;
	padding: 10px;
	background-color: #e3f4f6;
}

.btntype_01{
	font-size: 1.250rem;
	color: #fff;
	text-align: center;
	background-color: #000099;
	padding: 15px 45px;
	border: none;
	outline: none;
	cursor: pointer;
	border: 1px solid #000099;
}

.btntype_01:hover{
	color: #000099;
	background-color: #fff;
	border: 1px solid #000099;
}

.btntype_02{
	font-size: 0.875rem;
	color: #fff;
	text-align: center;
	background-color: #ff4e00;
	padding: 10px 50px;
	border: none;
	outline: none;
	cursor: pointer;
	border: 1px solid #ff4e00;
}

.btntype_02:hover{
	color: #ff4e00;
	background-color: #fff;
	border: 1px solid #ff4e00;
}

.btntype_03{
	font-size: 0.875rem;
	color: #fff;
	text-align: center;
	background-color: #ff4e00;
	padding: 5px 20px;
	border: none;
	outline: none;
	cursor: pointer;
	border: 1px solid #ff4e00;
}

.btntype_03:hover{
	color: #ff4e00;
	background-color: #fff;
	border: 1px solid #ff4e00;
}

.btntype_01:active,
.btntype_02:active,
.btntype_03:active,
.btntype_04:active{color: #fff;}

.btntype_01:visited,
.btntype_02:visited,
.btntype_03:visited,
.btntype_04:visited{color: #fff;}

.btntype_04{
	font-size: 1.250rem;
	color: #fff;
	text-align: center;
	background-color: #0569b6;
	padding: 15px 30px;
	border: none;
	outline: none;
	cursor: pointer;
	border: 1px solid #0569b6;
}

.btntype_04:hover{
	color: #0569b6;
	background-color: #fff;
	border: 1px solid #0569b6;
}

@media(max-width:768px){
	.btntype_03{
		width: 50%;
		margin: 10px auto;
	}
}

footer{
	width: 100%;
	max-width: 1200px;
	height: auto;
	margin: 20px auto 0;
	border-top: 5px solid #0569b6;
}

.ftitpnavi{
	width: 180px;
	height: auto;
	display: inline;
	vertical-align: middle;
	margin: 20px;
	border: 1px solid #000099;
}

.ftscsk{
	width: 110px;
	height: auto;
	display: inline;
	float: right;
	margin: 30px 20px 20px;
	vertical-align: middle;
}

.ftunder{
	background-color: #0569b6;
	width: 100%;
	height: auto;
}

ul.ftlink{
	margin: 10px;
	padding: 5px;
	float: left;
}

ul.ftlink li{
	list-style-type: none;
	display: inline-block;
	font-size: 80%;
	color: #fff;
	padding: 10px 0 10px 5px;
}

ul.ftlink li:before { content:"｜" }
ul.ftlink li:last-child:after{ content:"｜"}

ul.ftlink a{color: #fff;}
ul.ftlink a:hover{color: #ff4e00;}

.copyright{
	float: right;
	text-align: right;
	font-size: 80%;
	color: #fff;
	padding: 10px;
}

@media screen and (max-width:414px){
	.contactbanner{max-width: 414px;}
	.btntype_02{width: 350px; margin: 10px;}
	.ftitpnav{float: right; margin: 10px;}
	ul.ftlink{margin: 5px auto; float: none; text-align: center;}
	ul.ftlink li{text-align: center;}
	.copyright{text-align: center; float: none; color: #fff; padding:0;}
}

.feature3{
	width: 80%;
	display: block;
	padding: 0 0 10px 0;
	border: 1px solid #374d81;
	border-radius: 15px;
	margin: 20px auto;
}

.feature3 h3{
	display: block;
	color: #fff;
	text-align: left;
	margin: 0 auto;
	padding: 10px 10px;
	background-color: #374d81;
	border-radius: 15px 15px 0 0;
}

ul.normal{
	list-style: disc;
	margin: 0;
	padding: 15px 5px 10px 40px;
}

.mbmgn1{margin-top: 0;}

@media screen and (max-width:414px){
	.feature3{width:90%;}
	.feature3 h3{font-size: 1.1rem; text-align: center; padding: 15px 10px;}
	ul.normal li{font-size: 0.875rem; padding-bottom: 10px;}
	.mbmgn1{margin-top: 40px;}
}

.mizuho{
	width: 90%;
	height: auto;
	max-width: 200px;
	margin: 10px auto;
}

table.option{
	width: 100%;
	height: auto;
	box-sizing: border-box;
	margin: 20px;
	border-collapse: separate;
	border-spacing: 0;
}

table.option th{
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #e3f4f6;
	border: 1px solid #646464;
}

table.option th:first-child{
	border-radius: 10px 0 0 0;
}

table.option th:last-child{
	border-radius: 0 10px 0 0;
}

table.option th.stdth{
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #ededed;
	border: 1px solid #646464;
}

table.option th.advth{
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #e2efda;
	border: 1px solid #646464;
}

table.option th.prmth{
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #fce4d6;
	border: 1px solid #646464;
}

table.option td.fnc{
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #fff;
	border: 1px solid #646464;
	width: 7%;
}

table.option td{
	padding: 5px;
	box-sizing: border-box;
	text-align: left;
	vertical-align: middle;
	background-color: #fff;
	border: 1px solid #646464;
	width: 20%;
}

table.option tr:last-child td:first-child{
	border-radius: 0 0 0 10px;
}

table.option tr:last-child td:last-child{
	border-radius: 0 0 10px 0;
}


table.option td.std{
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #ededed;
	border: 1px solid #646464;
}

table.option td.adv{
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #e2efda;
	border: 1px solid #646464;
}

table.option td.prm{
	padding: 5px;
	box-sizing: border-box;
	text-align: center;
	vertical-align: middle;
	background-color: #fce4d6;
	border: 1px solid #646464;
}

h3.fnctitle{
	width: 100%;
	display: block;
	background-color: #025ca0;
	padding: 5px;
	text-align: center;
	color: #fff;
}

@media screen and (max-width:480px){table.option{width: 94%;}}