@charset "utf-8";
/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box;}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: Lucida Grande,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:18px;
text-align:left;
color:#000;
min-width:1120px;
}
@media screen and (max-width:767px){
html,body{ font-size:3.5vw; min-width:240px; max-width:767px;}
}

img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:60%; height:auto;}
figure{ margin:0 auto; text-align:center;}


p{ line-height:1.75em; margin:0 0 1em; padding:0; text-align:left;}
p:last-child{ margin:0;}
a{ color:inherit; text-decoration:none;}
a:hover{}
.opa{ transition: all 0.3s ease;}
.opa:hover{ opacity: 0.7;}

.left{ text-align:left;}
.right{ text-align:right;}
.center{ text-align:center;}

.clear{ clear:both;}
.clearfix:after{ margin:0; padding:0; visibility:hidden; content:"."; display:block; line-height:0; clear:both;}

@media screen and (max-width:480px){
    img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
}
    
/*ヘッダー*/
#header{position:relative;
	    width:100%;
	    overflow:hidden;
	    padding-top: 4em;
	    display: block;
      }
.first {background-position: center 0;
	    background-image: url("../images/mv_bg.png");
	    background-repeat: no-repeat;
	    background-size: cover;
	    background-attachment:fixed;
	    }

 h1{ margin: 140px auto;
	 text-align: center;
	 padding: 20px 0 10px;
	 background-color:rgba(82, 157, 204, 0.7);
          }
 h1 img{width: 100%;
	    max-width: 800px;
              }
@media print, screen and (min-width:1440px){
#header{ background-size: cover;
	    max-width: 100%;
        height: auto;}
.first{ background-size: cover;
	    max-width: 100%;
        height: auto;}
}
@media screen and (max-width:812px){
#header{ background-size: cover;
	    max-width: 100%;
        height: auto;}
.first{ background: url("../images/mv_bg.jpeg") center center no-repeat; background-size: cover;
	    max-width: 100%;
        height: auto;}
}

@media screen and (max-width:600px){
#header .first{ background: url("../images/mv_bg.jpeg") center center no-repeat; background-size: cover;
   	     max-width: 100%;
         height: auto;}
 h1 img{width: 100%;
	    max-width: 900px; }
}

@media screen and (max-width:480px){
#header .first{ background: url("../images/mv_bg.jpeg") center center no-repeat; background-size: cover;
   	     max-width: 100%;
         height: auto;}
 h1 img{width: 100%;
	    max-width: 900px; }
}

/*メニュー*/
#menu{ background: #fff; padding:0; position: relative; z-index: 3; box-shadow:rgba(0, 0, 0, 0.1) 0 0 31px 10px;}
#menu ul{ text-align: center; letter-spacing: -1em; width: 1080px; margin: 0 auto;}
#menu ul li{ display: inline-block; vertical-align: middle; letter-spacing: 0; text-align: center; position: relative;}
#menu ul li:before{ content: ""; width: 1px; height: calc(100% - 40px); top: 20px; left: 0; position: absolute; background: #529dcc;}
#menu ul li:first-child:before{ display: none;}
#menu ul li a{ display: block; padding:20px; font-size: 14px; line-height: 2.8em; color: #529dcc; transition: 0.3s;}
#menu ul li a span{ font-size: 12px;}
#menu ul li.row1 a{ line-height: 2.8em;}
#menu ul li a:hover{ background: #529dcc; color: #fff;}
#menu ul li a:after{ content: ""; width: 1px; height: 100%; top: 0; right: -1px; position: absolute; background: transparent; transition: 0.3s;}
#menu ul li a:hover:after{ background: #529dcc;}
@media screen and (max-width:767px){
#menu ul{ width:100%; overflow: hidden;}
#menu ul li{ /*width: 33.3333%;*/ width: 50%;}
#menu ul li:first-child{ width: 100%;}
#menu ul li:before{ height: calc(100% - 3vw); top: 1.5vw;}
#menu ul li:after{ content: ""; width: calc(100% - 3vw); height:1px; position: absolute; left: 1.5vw; bottom: 0; background: #529dcc;}
#menu ul li:nth-child(2n):before{ display: none;}
#menu ul li:nth-child(n + 6):after{ display: none;}
#menu ul li a{ padding:3vw; font-size:3vw; line-height: 1.25em; text-align: center;}
#menu ul li a span{ font-size: 2.5vw;}
#menu ul li.row1 a{ line-height: 2.5em;}

}

/*フッター*/
#footer{ background: #fff;}
#footer #source{ width: 1080px; margin: 0 auto 60px; font-size: 14px; text-align: right;}
p.copyright{ text-align:center; margin:0; padding:1em; background:#529dcc; color:#fff; font-size:14px;}
@media screen and (max-width:767px){
#footer #source{ width:94%; margin:0 auto 9%; font-size:2.5vw; letter-spacing: -0.05em;}
p.copyright{ font-size:2.5vw;}
}

/*メイン*/
#content{ overflow-x: hidden;}
section { width:100%; margin:0 auto;}
.maincontent{ padding:0; margin:0 auto; width:1120px; position: relative; z-index: 5;}
.maincontent_in{ padding: 0 40px; margin-bottom: 60px;}
.maincontent_in:last-child{ margin-bottom: 0;}
@media screen and (max-width:767px){
.maincontent{ padding:0; margin:0 auto; width:94%;}
.maincontent_in{ padding: 0 3%; margin-bottom:9%;}
}

/*２カラム*/
.col2{ display: table; table-layout: fixed; width: 100%; margin-bottom: 60px;}
.col2:last-child{ margin-bottom: 0;}
.col2_in{ display: table-cell; vertical-align: top;}
.col2_in:nth-child(2n+1){ padding-right: 20px;}
.col2_in:nth-child(2n){ padding-left: 20px;}
@media screen and (max-width:767px){
.col2{ display: block; margin-bottom: 0;}
.col2_in{ display:block;}
.col2_in:nth-child(2n+1){ padding:0; margin-bottom:9%;}
.col2_in:nth-child(2n){ padding:0;}
}

/*title*/
h2,h3,h4,h5{ font-weight: normal; font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'メイリオ', Meiryo, serif;}
h2{ text-align: center; font-size: 44px; line-height: 1.25em; margin-bottom: 60px; position: relative;}
h2 strong{ display: inline-block; border-bottom: 5px solid #4169e1;}
h2:before{ content: ""; width: 27px; height: 27px; position: absolute; left: 0; right: 0; top: -40px; margin: auto;}
h3{ background: #529dcc; color: #fff; font-size: 28px; line-height: 1.25em; padding: 20px 40px; margin-bottom: 40px; border-radius: 4px;}
h4{ text-align: center; font-size: 30px; line-height: 1.25em; position: relative; color: #FF8600;}
@media screen and (max-width:767px){
h2{ font-size:7vw; margin-bottom:7.5%;}
h2 strong{ border-bottom:0.75vw solid #4169e1;}
h2:before{ width:4.5vw; height:4.5vw; top:-6vw; background-size: cover !important;}
h3{ font-size:5vw; padding:3%; margin-bottom:4.5%;}
h4{ font-size: 5vw;}
}

/*説明*/
dl.explain{ display: table; table-layout: fixed; width: 100%; margin:40px auto;}
dl.explain dt{ display: table-cell; vertical-align: top; padding-right: 45px;}
dl.explain dd{ display: table-cell; vertical-align: top; padding-left: 45px;}
dl.explain.block{ display: block;}
dl.explain.block dt{ display: block; padding: 0; margin-bottom: 20px;}
dl.explain.block dd{ display: block; padding: 0;}
@media screen and (max-width:767px){
dl.explain{ display:block; margin: 6% auto;}
dl.explain dt{ display:block; padding: 0; margin-bottom: 3%;}
dl.explain.block dt{ margin-bottom: 3%;}
dl.explain dd{ display:block; padding: 0;}
dl.explain dd img{ width: 100%;}
}

/*リスト*/
ul.list{ margin: 40px auto; border: 1px solid #a0a0a0; background: #fff; padding: 30px 15px; border-radius: 4px;}
.col2 ul.list{ margin: 20px auto;}
ul.list li{ padding-left: 25px; line-height: 1.25em; margin-bottom: 10px; position: relative;}
ul.list li:before{ content: ""; width: 6px; height: 6px; background: #333; position: absolute; left: 0; top: 8px;}
ul.list li:last-child{ margin-bottom: 0;}
@media screen and (max-width:767px){
ul.list{ margin:6% auto; padding:3%;}
.col2 ul.list{ margin:6% auto;}
ul.list li{ padding-left:3vw; margin-bottom:1.5%;}
ul.list li:before{ width:1vw; height:1vw; top:1.5vw;}
}

/*sec0*/
#sec01_02{ background: #fff;}
#sec0{ position: relative; padding:140px 0 140px;}
#sec01-2{ padding:0 0 100px;}
#sec02{ position: relative; padding:140px 0 100px;}
#sec0 img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
#sec0 h2 strong{ display: inline-block; border-bottom: 5px solid #ff8a4f;}
@media screen and (min-width:1440px){
#sec0:before{ left:calc(100% - 860px); top: 0;}
#sec0:after{ right:calc(100% - 721px); top: 0;}
#sec02:before{ left:calc(100% - 859px); bottom: 0;}
}
@media screen and (max-width:767px){
#sec0{ padding:12% 0 12%;}
#sec01-2{ padding:0 0 9%;}
#sec02{ padding:12% 0 9%;}
/*
#sec01_02{ background: url("../images/sp_bg.png") -25vw top #fff; background-size:150% auto;}
#sec01:before{ display: none;}
#sec01:after{ display: none;}
#sec02:before{ display: none;}
*/
#sec0:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec0:after{ width:50vw; height:100vw; background-size: cover; top:125vw; right: auto; left: 0;}
#sec02:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
}
#sec02 dl.explain dd ul{ border: 1px solid #ababab; padding: 20px; border-radius: 4px; letter-spacing: -1em; background: #fff; margin: 0 auto; max-width: 900px;}
#sec02 dl.explain dd ul li{ display: inline-block; vertical-align: middle; letter-spacing: 0; padding: 10px;}
@media screen and (max-width:767px){
#sec02 dl.explain dd ul{ padding:3%;}
#sec02 dl.explain dd ul li{ display:block; padding:1.5%;}
}

/*sec01_02*/
#sec01_02{ background: #fff;}
#sec01{ position: relative; padding:140px 0 140px;}
#sec01-2{ padding:0 0 100px;}
#sec02{ position: relative; padding:140px 0 100px;}
#sec01:before{ content: ""; width: 860px; height: 860px; background: url("../images/sec01_bg_ico_r.png") right top no-repeat; position: absolute; left:calc(1440px - 860px); top: 0;}
#sec02:before{ content: ""; width: 859px; height: 859px; background: url("../images/sec02_bg_ico_r.png") right bottom no-repeat; position: absolute; left:calc(1440px - 859px); bottom: 0;}
@media screen and (min-width:1440px){
#sec01:before{ left:calc(100% - 860px); top: 0;}
#sec01:after{ right:calc(100% - 721px); top: 0;}
#sec02:before{ left:calc(100% - 859px); bottom: 0;}
}
@media screen and (max-width:767px){
#sec01{ padding:12% 0 12%;}
#sec01-2{ padding:0 0 9%;}
#sec02{ padding:12% 0 9%;}
/*
#sec01_02{ background: url("../images/sp_bg.png") -25vw top #fff; background-size:150% auto;}
#sec01:before{ display: none;}
#sec01:after{ display: none;}
#sec02:before{ display: none;}
*/
#sec01:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec01:after{ width:50vw; height:100vw; background-size: cover; top:125vw; right: auto; left: 0;}
#sec02:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
}
#sec02 dl.explain dd ul{ border: 1px solid #ababab; padding: 20px; border-radius: 4px; letter-spacing: -1em; background: #fff; margin: 0 auto; max-width: 900px;}
#sec02 dl.explain dd ul li{ display: inline-block; vertical-align: middle; letter-spacing: 0; padding: 10px;}
@media screen and (max-width:767px){
#sec02 dl.explain dd ul{ padding:3%;}
#sec02 dl.explain dd ul li{ display:block; padding:1.5%;}
}

/*sec03*/
#sec03{ background: #fff; padding:140px 0 100px; position: relative;}
#sec03:before{ content: ""; width: 861px; height: 861px; background: url("../images/sec03_bg_ico_r.png") right top no-repeat; position: absolute; left:calc(1440px - 861px); top: 0;}
#sec03:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec03_bg_ico_l.png") left bottom no-repeat; position: absolute; right:calc(1440px - 860px); bottom: 0;}
@media screen and (min-width:1440px){
#sec03:before{ left:calc(100% - 861px);}
#sec03:after{ right:calc(100% - 860px);}
}
@media screen and (max-width:767px){
/*
#sec03{ background: url("../images/sp_bg.png") -25vw top #fff; background-size:150% auto;}
#sec03:before{ display: none;}
#sec03:before{ display: none;}
*/
#sec03{ padding:12% 0 9%;}
#sec03:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec03:after{ width:66.6666vw; height:66.6666vw; background-size: cover; right: auto; left: 0;}
}
#sec03 p.lead{ text-align: center; font-size: 32px; line-height: 1.4em; margin: 0 auto 90px; width: 1000px; font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'メイリオ', Meiryo, serif; position: relative;}
#sec03 p.lead:before{ content: ""; position: absolute; left: 0; right: 0; width: 0; height: 0; border-style: solid; border-width: 25px 25px 0 0; border-color: #981b1b transparent transparent transparent;}
#sec03 p.lead:after{ content: ""; position: absolute; right: 0; bottom: 0; width: 0; height: 0; border-style: solid; border-width: 0 0 25px 25px; border-color: transparent transparent #981b1b transparent;}
@media screen and (max-width:767px){
#sec03 p.lead{ font-size:4.5vw; margin: 0 auto 9%; width: 100%; padding: 0 1.5%;}
#sec03 p.lead:before{ border-width: 3vw 3vw 0 0; left: -1.5vw;}
#sec03 p.lead:after{ border-width: 0 0 3vw 3vw; right: -1.5vw;}
}

/*sec04*/
#sec04{ background: #fff; padding:140px 0 100px; position: relative;}
/*
#sec04:before{ content: ""; width: 756px; height: 756px; background: url("../images/sec04_bg_ico_l.png") left top no-repeat; position: absolute; right:calc(1440px - 756px); top: 0;}
#sec04:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec04_bg_ico_r.png") right bottom no-repeat; position: absolute; left:calc(1440px - 860px); bottom: 0;}
*/
#sec04:before{ content: ""; width: 697px; height: 697px; background: url("../images/sec05_bg_ico_r.png") right top no-repeat; position: absolute; left:calc(1440px - 697px); top: 0;}
#sec04:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec05_bg_ico_l.png") left bottom no-repeat; position: absolute; right:calc(1440px - 860px); bottom: 0;}
@media screen and (min-width:1440px){
/*
#sec04:before{ right:calc(100% - 756px);}
#sec04:after{ left:calc(100% - 860px);}
*/
#sec04:before{ left:calc(100% - 697px);}
#sec04:after{ right:calc(100% - 860px);}
}
@media screen and (max-width:767px){
#sec04{ padding:12% 0 9%;}
/*
#sec04:before{ width:50vw; height:50vw; background-size: cover; right: auto; left: 0;}
#sec04:after{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
*/
#sec04:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec04:after{ width:66.6666vw; height:66.6666vw; background-size: cover; right: auto; left: 0;}
}
#sec04 #sec04_list ul li{ margin-bottom: 20px; border: 1px solid #d2d2d2; background: #fff; border-radius: 4px; padding: 20px 20px;}
#sec04 #sec04_list dl{ display: flex;}
#sec04 #sec04_list ul li:nth-child(2n) dl{ flex-direction: row-reverse;}
#sec04 #sec04_list dl dt{ width: 220px; padding: 0 20px;}
#sec04 #sec04_list dl dd{ width: calc(100% - 220px); padding: 10px 20px 0;}
#sec04 #sec04_list dl dd h4{ color:#141878; font-size: 24px; font-weight: normal; line-height: 1.25em; margin-bottom: 15px;}
#sec04 #sec04_list dl dd a{ color: #141878; text-decoration: underline;}
#sec04 #sec04_list dl dd a:hover{ text-decoration: none;}
@media screen and (max-width:767px){
#sec04 #sec04_list ul li{ margin-bottom:3%; padding:3%;}
#sec04 #sec04_list dl{ display:block;}
#sec04 #sec04_list dl dt{ width:100%; padding:0; margin-bottom: 3%; text-align: center;}
#sec04 #sec04_list dl dt img{ width: 40%;}
#sec04 #sec04_list dl dd{ width:100%; padding:0;}
#sec04 #sec04_list dl dd h4{ font-size:4.5vw; margin-bottom:1.5%;}
}

/*sec05*/
#sec05{ background: #fff; padding:80px 0 100px; position: relative;}

#sec05 .example2{
    /*コレ*/text-align: center;
    border: 1px solid #fff;
    padding: 3px;
    background: #f2f2f2;
}
/*
#sec05:before{ content: ""; width: 697px; height: 697px; background: url("../images/sec05_bg_ico_r.png") right top no-repeat; position: absolute; left:calc(1440px - 697px); top: 0;}
#sec05:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec05_bg_ico_l.png") left bottom no-repeat; position: absolute; right:calc(1440px - 860px); bottom: 0;}
*/
#sec05:before{ content: ""; width: 756px; height: 756px; background: url("../images/sec04_bg_ico_l.png") left top no-repeat; position: absolute; right:calc(1440px - 756px); top: 0;}
#sec05:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec04_bg_ico_r.png") right bottom no-repeat; position: absolute; left:calc(1440px - 860px); bottom: 0;}
@media screen and (min-width:1440px){
/*
#sec05:before{ left:calc(100% - 697px);}
#sec05:after{ right:calc(100% - 860px);}
*/
#sec05:before{ right:calc(100% - 756px);}
#sec05:after{ left:calc(100% - 860px);}
}
@media screen and (max-width:767px){
#sec05{ padding:9% 0 9%;}
/*
#sec05:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec05:after{ width:66.6666vw; height:66.6666vw; background-size: cover; right: auto; left: 0;}
*/
#sec05:before{ width:50vw; height:50vw; background-size: cover; right: auto; left: 0;}
#sec05:after{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
}
#sec05 h2{ margin-bottom: 40px;}
#sec05 ul li{ margin: 70px auto; position: relative; border: 1px solid #d2d2d2; background: #fafafa; padding: 40px;}
#sec05 ul li:after{ content: ""; width: 0; height: 0; border-style: solid; border-width: 30px 52.5px 0 52.5px; border-color: #141878 transparent transparent transparent; position: absolute; left: 0; right: 0; bottom: -50px; margin: auto;}
#sec05 ul li:before{ content: "01"; font-size:16px; line-height:1em; position: absolute; left: 0; top: -18px; background: #141878; color: #fff; padding: 10px 9px; border-radius: 50%;}
#sec05 ul li:first-child{ margin-top: 0;}
#sec05 ul li:last-child{ margin-bottom: 0;}
#sec05 ul li:last-child:after{ display: none;}
#sec05 ul li:nth-child(2):before{ content: "02";}
#sec05 ul li:nth-child(3):before{ content: "03";}
#sec05 ul li:nth-child(4):before{ content: "04";}
#sec05 ul li:nth-child(5):before{ content: "05";}
#sec05 ul li:nth-child(6):before{ content: "06";}
#sec05 ul li:nth-child(7):before{ content: "07";}
#sec05 ul li:nth-child(8):before{ content: "08";}
#sec05 ul li dl{ display: table; table-layout: fixed; width: 100%;}
#sec05 ul li dl dt{ display: table-cell; vertical-align: top; width: 300px;}
#sec05 ul li dl dd{ display: table-cell; vertical-align: top; padding-left: 20px;}
#sec05 ul li dl dd h4{ color: #141878; font-size: 28px; margin-bottom: 15px;}
#sec05 ul li dl dd p{ line-height: 1.4em;}
#sec05 ul li dl dd a{ text-decoration: underline; color: #141878;}
#sec05 ul li dl dd a:hover{ text-decoration: none;}
@media screen and (max-width:767px){
#sec05 h2{ margin-bottom:6%;}
#sec05 ul li{ margin:15% auto; padding:3%;}
#sec05 ul li:after{ border-width: 6vw 9vw 0 9vw; bottom: -10.5vw; margin: auto;}
#sec05 ul li:before{ font-size:3vw; top:-3.75vw; padding:0.5em 0.45em;}
#sec05 ul li dl{ display:block;}
#sec05 ul li dl dt{ display:block; width:100%; text-align:center;}
#sec05 ul li dl dt img{ width: 75%; margin-bottom: 3%;}
#sec05 ul li dl dd{ display:block; padding:0;}
#sec05 ul li dl dd h4{ font-size:5vw; margin-bottom:1.5%;}
}

/*sec06*/
#sec06{ background: #fff; padding:80px 0 100px; position: relative;}
#sec06:before{ content: ""; width: 860px; height: 860px; background: url("../images/sec06_bg_ico_l.png") left top no-repeat; position: absolute; right:calc(1440px - 860px); top: 0;}
#sec06:after{ content: ""; width: 860px; height: 860px; background: url("../images/sec06_bg_ico_r.png") right bottom no-repeat; position: absolute; left:calc(1440px - 860px); bottom: 0;}
@media screen and (min-width:1440px){
#sec06:before{ right:calc(100% - 860px);}
#sec06:after{ left:calc(100% - 860px);}
}
@media screen and (max-width:767px){
#sec06{ padding:9% 0 9%;}
#sec06:before{ width:66.6666vw; height:66.6666vw; background-size: cover; right: auto; left: 0;}
#sec06:after{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
}
#sec06 h2{ margin-bottom: 40px;}
/*#sec06 h2:before{ background: url("../images/tit_ico_06.png") center center no-repeat;}*/
#sec06 .maincontent{ background: #fafafa; padding: 10px; border-radius: 12px;}
#sec06 .maincontent2{ border: 1px solid #141878; border-radius: 8px; padding: 90px 10px 10px;}
#sec06 ul li{ margin: 40px auto; padding: 30px 40px; background: #fff; border: 1px solid #d3d3d3; border-radius: 4px;}
#sec06 ul li:last-child{ margin-bottom: 0;}
#sec06 ul li h3{ background: #141878; font-size: 28px; line-height: 1.25em; text-align: center;}
#sec06 ul li h3 span{ font-size: 20px; line-height: 1em; display:inline-block; vertical-align:middle; margin-right: 1em;}
#sec06 ul li h4{ color: #141878; font-size: 28px; line-height: 1.25em; text-align: left; margin-bottom: 15px;}
#sec06 ul li h4 span{ font-size: 20px; line-height: 1em; display:inline-block; vertical-align:middle; margin-right: 1em;}
#sec06 dl{ display: table; table-layout: fixed; width: 100%;}
#sec06 dl dt{ display: table-cell; vertical-align: top; width: 180px;}
#sec06 dl dd{ display: table-cell; vertical-align: top; padding-left: 20px;}
#sec06 dl dd p{ line-height: 1.4em;}
@media screen and (max-width:767px){
#sec06 h2{ margin-bottom:6%;}
#sec06 .maincontent{ padding:1.5%;}
#sec06 .maincontent2{ padding:9% 1.5% 1.5%;}
#sec06 ul li{ margin:6% auto; padding:3%;}
#sec06 ul li h3{ font-size:5vw;}
#sec06 ul li h3 span{ font-size:4vw; display: block; margin:0 auto 0.25em;}
#sec06 ul li h4{ font-size:5vw; margin-bottom:3%; text-align: center;}
#sec06 ul li h4 span{ font-size:4vw; display: block; margin:0 auto 0.25em;}
#sec06 dl{ display:block;}
#sec06 dl dt{ display:block; width: 100%; text-align: center; margin-bottom: 3%;}
#sec06 dl dt img{ width: 50%;}
#sec06 dl dd{ display:block; padding:0;}
}



/*sec07*/
#sec07{ background: #529dcc; color: #fff; padding:140px 0 100px; position: relative; z-index: 5;}
#sec07 h2{ color: #fff;}
#sec07 h2 strong{ border-bottom: 5px solid #fff;}
#sec07 ul li{ border-bottom: 1px solid #fff; padding: 40px 0;}
#sec07 ul li:first-child{ border-top: 1px solid #fff;}
#sec07 dl dt{ background:#529dcc; color: #fff; font-size: 24px; line-height: 1.25em; padding: 0 20px; margin-bottom: 20px; display: table; table-layout: fixed; width: 100%;}
#sec07 dl dt span{ display: table-cell; vertical-align: middle; width: 80px;}
#sec07 dl dt strong{ display: table-cell; vertical-align: middle; padding-left: 20px; font-weight: normal; font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'メイリオ', Meiryo, serif;}
#sec07 dl dd{ background: rgba(255,255,255,0.1); color: #fff; line-height: 1.4em; padding: 20px 20px 20px 120px; border-radius: 4px; min-height: 100px; position: relative;}
#sec07 dl dd span{ position: absolute; left: 20px; top: 10px; width: 80px;}
#sec07 dl dd h5{ font-size: 20px; line-height: 1.25em; color: #529dcc; background: #fff; padding: 10px; margin: 20px auto 20px 0; text-align: center; border-radius: 40px; max-width: 856px;}
#sec07 dl dd table{ margin: 0 auto 0 0; text-align: center; border-collapse: separate; border-spacing: 1px;}
#sec07 dl dd table thead th{ background: #981b1b; color: #fff; font-size: 24px; line-height: 1em; width: 425px; padding: 1em;}
#sec07 dl dd table thead th:last-child{ background: #7e1010;}
#sec07 dl dd table tbody td{ background: #fff; color: #000; font-size: 24px; line-height: 1em; padding: 1em;}
#sec07 dl dd p.notice{ text-align: right; font-size: 16px; margin: 10px auto 0 0; max-width: 856px;}
@media screen and (max-width:767px){
#sec07{ padding:12% 0 9%;}
#sec07 ul li{ padding:6% 0;}
#sec07 dl dt{ font-size:4vw; padding:0 3%; margin-bottom:3%;}
#sec07 dl dt span{ width:12.5%;}
#sec07 dl dt strong{ padding-left:3%;}
#sec07 dl dd{ padding:3% 3% 3% 18%; min-height:2em;}
#sec07 dl dd p{ line-height: 1.4em;}
#sec07 dl dd span{ left:3vw; top:1.5vw; width:10.5vw;}
#sec07 dl dd h5{ font-size:2.8vw; padding:1.5%; margin:3% auto 3%;}
#sec07 dl dd table{ width: 100%;}
#sec07 dl dd table thead th{ font-size:4vw; width:50%; padding: 0.75em;}
#sec07 dl dd table tbody td{ font-size:4vw; padding: 0.75em;}
#sec07 dl dd p.notice{ font-size:2.4vw; margin:1.5% auto 0 0;}
}
#sec07 figure.btn a{ display: block; text-align: center; background: #529dcc; color: #fff; font-size: 36px; line-height: 1em; padding: 40px; margin: 80px 20px 0; position: relative; border-radius: 4px;}
#sec07 figure.btn a span{ display: inline-block; vertical-align: middle; position: absolute; right: 40px; transition: 0.3s;}
#sec07 figure.btn a:hover span{ right: 30px;}
@media screen and (max-width:767px){
#sec07 figure.btn a{ font-size:3.5vw; padding:1em; margin:6% auto 0;}
#sec07 figure.btn a span{ right:6vw;}
#sec07 figure.btn a:hover span{ right:4.5vw;}
}



/*sec08*/
#sec08{ background: #fff; padding:140px 0 100px; position: relative;}

@media screen and (min-width:1440px){
#sec08:before{ right:calc(100% - 240px);}
#sec08:after{ left:calc(100% - 860px);}
}
@media screen and (max-width:767px){
#sec08{ padding:12% 0 9%;}
#sec08:before{ width:15vw; height:16vw; background-size: cover; right: auto; left: 0;}
/*
#sec08{ background: url("../images/sp_bg.png") -25vw top #fff; background-size:150% auto;}
#sec08:before{ display: none;}
#sec08:before{ display: none;}
*/
#sec08 p.center{ text-align: left;}
}

/*sec09*/
#sec09{ background: #fafafa; position: relative; padding: 140px 0 20px;}

@media screen and (min-width:1440px){
#sec09:before{ left:calc(100% - 860px);}
}
@media screen and (max-width:767px){
#sec09{ padding:12% 0 3%;}
#sec09:before{ width:66.6666vw; height:66.6666vw; background-size: cover; left: auto; right: 0;}
#sec09 p.center{ text-align: left;}
}
#sec09 #sec09_contact dl{ display: table; table-layout: fixed; width: 1080px; margin: 40px auto;}
#sec09 #sec09_contact dl dt{ display: table-cell; vertical-align: middle; text-align: center;}
#sec09 #sec09_contact dl dd{ display: table-cell; vertical-align: middle; padding-left: 60px; text-align: center; color:#141878;}
#sec09 #sec09_contact dl dt a{ display: block; background: #981b1b; color: #fff; font-size: 18px; line-height: 1em; padding: 40px; position: relative;}
#sec09 #sec09_contact dl dt a span{ display: inline-block; vertical-align: middle; margin-left: 20px; position: relative; left: 0; transition: 0.3s;}
#sec09 #sec09_contact dl dt a:hover span{ left: 10px;}
#sec09 #sec09_contact dl dd strong{ display: block; border: 1px solid #141878; background: #fff; border-radius: 30px; font-size: 24px; line-height: 1em; padding: 0.25em;}
#sec09 #sec09_contact dl dd a{ font-size: 18px; line-height: 1em; font-weight: bold; margin: 10px auto 5px;}
#sec09 #sec09_contact dl dd span{ display: block; font-size: 20px; font-weight: bold;}
@media screen and (max-width:767px){
#sec09 #sec09_contact dl{ display:block; width:100%; margin:6% auto;}
#sec09 #sec09_contact dl dt{ display:block;}
#sec09 #sec09_contact dl dd{ display:block; padding:0; margin-top:4.5%;}
#sec09 #sec09_contact dl dt a{ font-size:2.5vw; padding:1em;}
#sec09 #sec09_contact dl dt a span{ margin-left:0.5em;}
#sec09 #sec09_contact dl dt a:hover span{ left:1.5vw;}
#sec09 #sec09_contact dl dd strong{ font-size:4vw;}
#sec09 #sec09_contact dl dd a{ font-size:2.5vw; margin:2% auto 1%;}
#sec09 #sec09_contact dl dd span{ font-size:2.5vw;}
}
#sec09 #sec09_qa dl{ border: 1px solid #141878;}
#sec09 #sec09_qa dl dt{ background: #141878; color: #fff; font-size: 24px; line-height: 1.25em; padding: 20px; display: table; table-layout: fixed; width: 100%;}
#sec09 #sec09_qa dl dt span{ display: table-cell; vertical-align: middle; width: 80px;}
#sec09 #sec09_qa dl dt strong{ display: table-cell; vertical-align: middle; padding-left: 20px; font-weight: normal; font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'メイリオ', Meiryo, serif;}
#sec09 #sec09_qa dl dd{ padding: 40px 40px 40px 120px;}
#sec09 #sec09_qa dl dd a{ display: block; text-align: center; background: #141878; color: #fff; font-size: 20px; line-height: 1em; padding: 30px; position: relative; margin-right: 80px;}
#sec09 #sec09_qa dl dd a span{ display: inline-block; vertical-align: middle; margin-left: 20px; position: relative; left: 0; transition: 0.3s;}
#sec09 #sec09_qa dl dd a:hover span{ left: 10px;}
@media screen and (max-width:767px){
#sec09 #sec09_qa dl dt{ font-size:4vw; padding:3%;}
#sec09 #sec09_qa dl dt span{ width:12.5%;}
#sec09 #sec09_qa dl dt strong{ padding-left:3%;}
#sec09 #sec09_qa dl dd{ padding:6%;}
#sec09 #sec09_qa dl dd a{ font-size:3.5vw; padding:1em; margin:0 auto;}
#sec09 #sec09_qa dl dd a span{ margin-left:0.5em;}
#sec09 #sec09_qa dl dd a:hover span{ left:1.5vw;}
}



/*インサートimg*/
#ins_img01{ background: url("../images/01.jpeg");    
	        background-position: center 0;
            background-repeat: no-repeat;
            padding-top: 80%;
            background-size: cover;
            background-attachment: fixed;
            background-color: #d2f6f8;
	        max-width: 100%;
            height: auto;}
#ins_img02{ background: url("../images/02.jpeg") center center fixed; background-size: cover; height: 400px;}
#ins_img03{ background: url("../images/03.jpeg") center center fixed; background-size: cover; height: 400px;}
#ins_img04{ background: url("../images/04.jpeg") center center fixed; background-size: cover; height: 400px;}
@media screen and (max-width:812px){
#ins_img01{ background: url("../images/01.jpg") center center no-repeat; background-size: cover; max-width: 100%; height:auto;}
#ins_img02{ background: url("../images/02.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img03{ background: url("../images/03.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img04{ background: url("../images/04.jpeg") center center no-repeat; background-size: cover; height: 400px;}
}


@media screen and (max-width:600px){
#ins_img01{ background: url("../images/01.jpeg") center center no-repeat; background-size: cover; max-width: 100%; height:auto;}
#ins_img02{ background: url("../images/02.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img03{ background: url("../images/03.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img04{ background: url("../images/04.jpeg") center center no-repeat; background-size: cover; height: 400px;}
}

@media screen and (max-width:480px){
#ins_img01{ background: url("../images/01.jpeg") center center no-repeat; max-width: 100%; height:auto; background-size: cover;}
#ins_img02{ background: url("../images/02.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img03{ background: url("../images/03.jpeg") center center no-repeat; background-size: cover; height: 400px;}
#ins_img04{ background: url("../images/04.jpeg") center center no-repeat; background-size: cover; height: 400px;}
}


/*modalウィンドウ作り変え_180315*/
.inline{ cursor: pointer; transition: 0.3s;}
.inline:hover{ opacity: 0.7;}
#modal_window_area{ display:none;}
.modal_window{ background:#fff; padding:0; margin:0; max-width:840px; overflow:hidden; position:relative; box-shadow:rgba(0, 0, 0, 1.0) 0 0 10px 5px;}
.modal_in img{ width: auto; max-width: 840px; padding: 20px;}
@media screen and (max-width:767px){
.modal_in{ width: 100%; overflow-x: scroll; -webkit-overflow-scrolling: touch;}
}

/*ボタン*/
.button09 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #b0c4de;
  transition: 0.3s;
}

.button09 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #3d9ec8;
  transition: 0.2s;
}

.button09 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button09 a:hover::before {
  top: 0;
  left: 0;
}

.button09 a:hover {
  text-decoration: none;
  background-color: #a0c4d3;
}

.button10 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #deb887;
  transition: 0.3s;
}

.button10 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #ffa500;
  transition: 0.2s;
}

.button10 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button10 a:hover::before {
  top: 0;
  left: 0;
}

.button10 a:hover {
  text-decoration: none;
  background-color: #ffdead;
}

.button11 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #5f9ea0;
  transition: 0.3s;
}

.button11 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #8fbc8f;
  transition: 0.2s;
}

.button11 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button11 a:hover::before {
  top: 0;
  left: 0;
}

.button11 a:hover {
  text-decoration: none;
  background-color: #afeeee;
}

.button12 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #d8bfd8;
  transition: 0.3s;
}

.button12 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #db7093;
  transition: 0.2s;
}

.button12 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button12 a:hover::before {
  top: 0;
  left: 0;
}

.button12 a:hover {
  text-decoration: none;
  background-color: #ffe4e1;
}

.button13 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #9370db;
  transition: 0.3s;
}

.button13 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #483d8b;
  transition: 0.2s;
}

.button13 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button13 a:hover::before {
  top: 0;
  left: 0;
}

.button13 a:hover {
  text-decoration: none;
  background-color: #e6e6fa;
}

.button14 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  background-color: #ccc;
  border-radius: 50vh;
  transition: 0.3s;
}

.button14 a::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  border: 2px solid #3d9ec8;
  border-radius: 50vh;
  transition: 0.2s;
}

.button14 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button14 a:hover::before {
  top: 0;
  left: 0;
}

.button14 a:hover {
  text-decoration: none;
  background-color: #a0c4d3;
}

@media screen and (max-width:768px){
.button13 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 3em;
  width: 100%;
  color: #333;
  font-size: 13px;
  font-weight: 700;
  background-color: #9370db;
  transition: 0.3s;
}
.button10 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  margin: 0 auto;
  padding: 1em 2em;
  width: 100%;
  color: #333;
  font-size: 13px;
  font-weight: 700;
  background-color: #deb887;
  transition: 0.3s;
}

}


/*固定ナビ*/
#fix_nav{ position: fixed; right: 0; bottom: 0; width: 290px; padding: 10px; font-family: "Hiragino Sans", Meiryo, sans-serif; z-index: 100;}
#fix_nav ul li{ margin: 10px 0 0; font-size: 13px; line-height: 1.25em;}
#fix_nav ul li a{ display: block; position: relative; background: rgba(20,24,120,0.9); color: #fff; border: 1px solid #fff; padding: 8px; transition: 0.3s;}
#fix_nav ul li a:after{ content: ">"; position: absolute; right: 10px; top: calc(50% - 0.5em); font-size: 14px; line-height: 1em;}
#fix_nav ul li a span{ display: inline-block; background: #fff; color: #141878; font-weight: bold; margin-bottom: 0.25em; padding: 0 0.25em; border-radius: 2em;}
#fix_nav ul li a:hover{ background: rgba(20,24,120,1.0);}
@media screen and (max-width:767px){
body{ padding-bottom: 19vw;}
#fix_nav{ width:100%; padding:0;}
#fix_nav ul{ display: table; table-layout: fixed; width: 100%;}
#fix_nav ul li{ display: table-cell; vertical-align: middle; margin:0; font-size:3vw; letter-spacing: 0.05em; line-height: 1.25em;}
#fix_nav ul li a{ padding:1vw 1.5vw;}
/*#fix_nav ul li a.row2{ padding: calc(1vw + 0.625em) 1.5vw;}*/
#fix_nav ul li:first-child a{ border-right: none;}
#fix_nav ul li a:after{ right:1.5vw; font-size:3vw; line-height: 1em;}
#fix_nav ul li a span{ margin-bottom: 0.25em; padding: 0.125em 0.25em; border-radius:1vw;}
}



/*NEWS*/
#news{ background: #e9eff5; padding: 60px 0;}
#news .maincontent{ background: #141878; color: #fff; padding: 60px 40px; border-radius: 4px;}
#news h2{ padding: 0 1em; margin: 0 auto 0.5em; font-size: 18px; font-weight: bold; line-height: 1em; text-align: left; font-family: Lucida Grande,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;}
#news ul li{ border-bottom: 1px solid #d90000; font-size: 16px;}
#news ul li a{ display: block; padding:1em 3em 1em 1em; position: relative; transition: 0.3s;}
#news ul li a:after{ content: ""; display: inline-block; width: 7px; height: 7px; border-top: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); transform-origin: right top; position: absolute; right: 1em; top: calc(50% - 0em);}
#news ul li a:hover{ background: rgba(255,255,255,0.1);}
@media screen and (max-width:767px){
#news{ padding:6% 0;}
#news .maincontent{ padding:4.5% 3%; border-radius:1vw;}
#news h2{ font-size:3.5vw;}
#news ul li{ font-size:3vw;}
#news ul li a:after{ width:1.5vw; height:1.5vw;}
}



@media print, screen and (min-width:768px){
.smp{ display:none !important;}
}
@media screen and (max-width:767px){
.pc{ display:none !important;}
}
