@charset "UTF-8";

/* keyVisual ------------------*/
#keyVisual{
background:url(../img/top/main_img.jpg) no-repeat center top;
background-size:cover;
position:relative;
}

#keyVisual:after{
content:"";
background:url(../img/common/bg_pattern01.png) repeat left top;
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

#keyVisual .innerCon{
display:-webkit-flex;
display:flex;
justify-content:flex-end;
position:relative;
z-index:4;
}

#keyVisual .innerCon .inner{
display:-webkit-flex;
display:flex;
align-items:center;
flex-direction:column;
}

#keyVisual #logo{
color:#0158A2;
font-size:180%;
line-height:1.4;
text-shadow:
0px 0px 2px rgba(255, 255, 255, 0.75),
0px 0px 2px rgba(255, 255, 255, 0.75),
0px 0px 2px rgba(255, 255, 255, 0.75),
0px 0px 2px rgba(255, 255, 255, 0.75);
margin-bottom:20px;
display:-webkit-flex;
display:flex;
}

#keyVisual #logo > img{
max-width:84px;
max-height:78px;
margin-right:10px;
}

#keyVisual .txtBlc{
text-align:center;
}

#keyVisual .txtBlc .txt01{
font-size:260%;
color:#011f4f;
text-shadow:
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1);
}

#keyVisual .txtBlc .txt02{
font-size:260%;
color:#011f4f;
font-weight:bold;
line-height:1.5;
text-shadow:
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1);
margin:20px 0;
}

#keyVisual .txtBlc .txt02 .smallTxt{
font-size:90%;
font-weight:normal;
}

#keyVisual .txtBlc .txt02 .smallTxt .bigTxt{
font-size:180%;
line-height:1;
}

#keyVisual .txtBlc .txt03{
font-size:140%;
color:#011f4f;
text-shadow:
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1);
margin-bottom:4%;
}

#keyVisual .logoSub{
text-align:center;
margin-bottom:20px;
}

@media screen and (max-width: 767px) {
#keyVisual .innerCon .inner{
width:100%;
text-align:center;
display:block;
}

#keyVisual #logo{
font-size:140%;
justify-content:center;
align-items:center;
}

#keyVisual #logo > img{
width:60px;
height:56px;
max-height:none;
}

#keyVisual .txtBlc .txt01{
font-size:180%;
}

#keyVisual .txtBlc .txt02{
font-size:180%;
}

#keyVisual .txtBlc .txt03{
font-size:140%;
}
}

@media screen and (max-width: 480px) {
#keyVisual #logo{
font-size:120%;
}

#keyVisual .txtBlc .txt01{
font-size:140%;
}

#keyVisual .txtBlc .txt02{
font-size:140%;
}

#keyVisual .txtBlc .txt03{
font-size:100%;
}
}


/* blc01 ------------------*/
#blc01{
background:url(../img/common/bg_pattern02.png) repeat left top;
}

#blc01 .introBlc{
margin-top:7%;
}

#blc01 .introBlc .ttl{
font-size:160%;
max-width:60%;
line-height:1.8;
margin-bottom:2%;
}

#blc01 .introBlc .txtBlc{
background-color:#fff;
padding:4% 4% 0;
margin-bottom:40px;
display:-webkit-flex;
display:flex;
justify-content:space-between;
position:relative;
}

#blc01 .introBlc .txtBlc:after{
content:"";
width:0;
height:0;
border-style:solid;
border-width:34px 45px 0 45px;
border-color:#ffffff transparent transparent transparent;
margin:auto;
position:absolute;
top:100%;
left:0;
right:0;
}

#blc01 .introBlc .txtBlc .txt{
width:60%;
}

#blc01 .introBlc .txtBlc .imgBlc{
width:33%;
position:relative;
}

#blc01 .introBlc .txtBlc .imgBlc .img{
width:100%;
position:absolute;
bottom:0;
}

#blc01 .introBlc .txtBlc .imgBlc .img .name{
text-align:center;
line-height:1.8;
padding:7px 0 15px;
}

#blc01 .guideBlc{
margin-top:7%;
}

#blc01 .guideBlc .partBlc{
display:-webkit-flex;
display:flex;
justify-content:space-between;
}

#blc01 .guideBlc .partBlc .leftBlc{
width:30%;
position:relative;
}

#blc01 .guideBlc .partBlc .leftBlc > img{
max-width:140%;
position:absolute;
bottom:0;
left:0;
}

#blc01 .guideBlc .partBlc .rightBlc{
width:70%;
}

#blc01 .guideBlc .partBlc .rightBlc .list{
display:-webkit-flex;
display:flex;
justify-content:space-between;
}

#blc01 .guideBlc .partBlc .rightBlc .list li{
width:48%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .subj{
background-color:#03255c;
color:#fff;
font-size:140%;
text-align:center;
margin:0 20px;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .subj .bigTxt{
font-size:140%;
line-height:1;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtBlc{
background-color:#fff;
border:3px solid #03255c;
border-radius:3px;
padding:4%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtTop{
font-size:120%;
color:#03255c;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtCatch{
font-size:180%;
color:#03255c;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtCatch .txt01{
font-size:80%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtCatch .txt02{
font-size:70%;
}

#blc01 .guideBlc .partBlc .rightBlc .txtBtmCatch{
color:#03255c;
font-size:160%;
text-align:center;
padding:4% 0 7%;
}

#blc01 .btmBlc .rowBlc{
display:-webkit-flex;
display:flex;
}

#blc01 .btmBlc .rowBlc:nth-of-type(even){
flex-direction:row-reverse;
}

#blc01 .btmBlc .rowBlc .txtBlc{
background-color:#fff;
width:50%;
display:-webkit-flex;
display:flex;
justify-content:flex-end;
}

#blc01 .btmBlc .rowBlc:nth-of-type(even) .txtBlc{
justify-content:flex-start;
}

#blc01 .btmBlc .rowBlc .txtBlc .inner{
width:500px;
padding:0 4%;
display:-webkit-flex;
display:flex;
flex-direction:column;
justify-content:center;
box-sizing:border-box;
}

#blc01 .btmBlc .rowBlc .txtBlc .subj{
font-size:120%;
margin-bottom:2%;
}

#blc01 .btmBlc .rowBlc .txtBlc .subj .bigTxt{
font-size:110%;
}

#blc01 .btmBlc .rowBlc .imgBlc{
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
width:50%;
min-height:400px;
}

#blc01 .btmBlc .rowBlc .imgBlc.img01{
background-image:url(../img/top/img02.jpg);
}

#blc01 .btmBlc .rowBlc .imgBlc.img02{
background-image:url(../img/top/img03.jpg);
}

@media screen and (max-width: 1000px) {
#blc01 .introBlc .ttl{
font-size:140%;
max-width:none;
}

#blc01 .introBlc .txtBlc .imgBlc .img{
width:auto;
position:static;
}
}

@media screen and (max-width: 767px) {
#blc01 .guideBlc .partBlc .leftBlc{
display:none;
}

#blc01 .guideBlc .partBlc .rightBlc{
width:100%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .subj{
font-size:120%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtTop{
font-size:110%;
}

#blc01 .guideBlc .partBlc .rightBlc .list li .txtCatch{
font-size:160%;
}

#blc01 .guideBlc .partBlc .rightBlc .txtBtmCatch{
font-size:140%;
}
}

@media screen and (max-width: 640px) {
#blc01 .btmBlc .rowBlc{
flex-direction:column-reverse;
}

#blc01 .btmBlc .rowBlc:nth-of-type(even){
flex-direction:column-reverse;
}

#blc01 .btmBlc .rowBlc .txtBlc{
width:100%;
}

#blc01 .btmBlc .rowBlc .txtBlc .inner{
width:100%;
display:block;
}

#blc01 .btmBlc .rowBlc .txtBlc .subj{
padding-top:4%;
}

#blc01 .btmBlc .rowBlc .txtBlc .txt{
padding-bottom:4%;
}

#blc01 .btmBlc .rowBlc .imgBlc{
width:100%;
min-height:250px;
}
}

@media screen and (max-width: 480px) {
#blc01 .introBlc .ttl{
font-size:140%;
max-width:none;
}

#blc01 .introBlc .txtBlc{
flex-direction:column-reverse;
justify-content:space-around;
}

#blc01 .introBlc .txtBlc .txt{
width:100%;
}

#blc01 .introBlc .txtBlc .txt .inner{
padding-top:4%;
}

#blc01 .introBlc .txtBlc .imgBlc{
width:100%;
text-align:center;
}

#blc01 .guideBlc .partBlc .rightBlc .list{
display:block;
}

#blc01 .guideBlc .partBlc .rightBlc .list li{
width:100%;
margin-bottom:4%;
}

#blc01 .btmBlc .rowBlc .imgBlc{
min-height:200px;
}
}


/* blc02 ------------------*/
#blc02{
background:url(../img/top/bg01.png) no-repeat center top, url(../img/common/bg_pattern02.png) repeat left top;
position:relative;
}

#blc02:after{
content:"";
background:url(../img/common/bg_pattern01.png) repeat left top;
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

#blc02 .ttlStyle03{
position:relative;
z-index:4;
}

#blc02 .innerBlc{
position:relative;
z-index:4;
}

#blc02 .introBlc .pointList{
margin-top:4%;
display:-webkit-flex;
display:flex;
flex-wrap:wrap;
}

#blc02 .introBlc .pointList li{
width:50%;
margin-bottom:30px;
display:-webkit-flex;
display:flex;
}

#blc02 .introBlc .pointList li .pointNum .txt{
background-color:#03255c;
color:#fff;
font-size:120%;
width:90px;
height:90px;
line-height:1.5;
border-radius:999px;
text-align:center;
display:-webkit-flex;
display:flex;
justify-content:center;
align-items:center;
flex-direction:column;
}

#blc02 .introBlc .pointList li .pointNum .txt .num{
font-size:140%;
line-height:1;
}

#blc02 .introBlc .pointList li .txtBlc{
color:#03255c;
padding-left:10px;
display:-webkit-flex;
display:flex;
align-items:center;
}

#blc02 .exampleBlc{
background-color:#fff;
padding:0 4% 4%;
margin-top:7%;
margin-bottom:60px;
position:relative;
}

#blc02 .exampleBlc:after{
content:"";
width:0;
height:0;
border-style:solid;
border-width:34px 45px 0 45px;
border-color:#ffffff transparent transparent transparent;
margin:auto;
position:absolute;
top:100%;
left:0;
right:0;
}

#blc02 .exampleBlc .ttlStyle05{
-webkit-transform:translateY(-20px);
-moz-transform:translateY(-20px);
-o-transform:translateY(-20px);
transform:translateY(-20px);
}

#blc02 .exampleBlc .pointList{
margin-top:4%;
display:-webkit-flex;
display:flex;
flex-wrap:wrap;
}

#blc02 .exampleBlc .pointList li{
width:50%;
margin-bottom:30px;
display:-webkit-flex;
display:flex;
}

#blc02 .exampleBlc .pointList li .pointNum .txt{
background-color:#204f9c;
color:#fff;
font-size:120%;
width:75px;
height:75px;
line-height:1.5;
border-radius:999px;
text-align:center;
display:-webkit-flex;
display:flex;
justify-content:center;
align-items:center;
flex-direction:column;
}

#blc02 .exampleBlc .pointList li .pointNum .txt .num{
font-size:140%;
line-height:1;
}

#blc02 .exampleBlc .pointList li .txtBlc{
color:#03255c;
padding-left:10px;
display:-webkit-flex;
display:flex;
align-items:center;
}

#blc02 .txtBtm{
color:#03255c;
font-size:120%;
text-align:center;
}

#blc02 .bannerContact{
margin-top:4%;
}

@media screen and (max-width: 767px) {
#blc02 .introBlc .pointList li .pointNum .txt{
width:75px;
height:75px;
}

#blc02 .exampleBlc{
margin-bottom:45px;
}

#blc02 .exampleBlc .pointList li .pointNum .txt{
width:65px;
height:65px;
}
}

@media screen and (max-width: 480px) {
#blc02 .introBlc .pointList{
flex-wrap:nowrap;
flex-direction:column;
}

#blc02 .introBlc .pointList li{
width:100%;
}

#blc02 .exampleBlc .pointList{
flex-wrap:nowrap;
flex-direction:column;
}

#blc02 .exampleBlc .pointList li{
width:100%;
}
}


/* blc03 ------------------*/
#blc03{
background:url(../img/top/bg02.jpg) no-repeat center top;
background-size:cover;
position:relative;
}

#blc03:after{
content:"";
background:url(../img/common/bg_pattern01.png) repeat left top;
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

#blc03 .ttlStyle01{
position:relative;
z-index:4;
}

#blc03 .innerBlc{
position:relative;
z-index:4;
}

#blc03 .partBlc{
display:-webkit-flex;
display:flex;
justify-content:space-between;
flex-direction:row-reverse;
}

#blc03 .partBlc .txtBlc{
width:50%;
}

#blc03 .partBlc .txtBlc .list dt{
color:#03255c;
font-size:140%;
line-height:1.8;
border-bottom:4px solid #03255c;
text-shadow:
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1);
margin-bottom:2%;
display:inline-block;
position:relative;
}

#blc03 .partBlc .txtBlc .list dd{
color:#000;
text-shadow:
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1);
padding-left:20px;
margin-bottom:4%;
}

#blc03 .partBlc .txtBlc .txt{
font-size:120%;
text-shadow:
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1);
}

#blc03 .partBlc .imgBlc{
width:45%;
display:-webkit-flex;
display:flex;
align-items:center;
}

#blc03 .partBlc .imgBlc > img{
width:100%;
}

@media screen and (max-width: 767px) {
#blc03 .partBlc{
display:block;
}

#blc03 .partBlc .txtBlc{
width:100%;
}

#blc03 .partBlc .imgBlc{
width:100%;
margin-top:4%;
justify-content:center;
}

#blc03 .partBlc .imgBlc > img{
max-width:400px;
}
}


/* blc04 ------------------*/
#blc04{
background:url(../img/common/bg_pattern02.png) repeat left top;
}

#blc04 .bannerTel{
margin-top:0;
}

#blc04 .promoteBlc .txtCatch{
font-size:120%;
line-height:1.8;
text-align:center;
}

#blc04 .promoteBlc .txtCatch .bigTxt{
font-size:140%;
}

#blc04 .promoteBlc .txtNote{
font-size:90%;
color:#ce2129;
text-align:center;
}

#blc04 .promoteBlc .list{
margin:7% 0;
display:-webkit-flex;
display:flex;
justify-content:space-between;
}

#blc04 .promoteBlc .list li{
background-color:#fff;
width:32%;
border:5px solid #03255c;
border-bottom-width:10px;
box-sizing:border-box;
}

#blc04 .promoteBlc .list li .subj{
background-color:#03255c;
color:#fff;
font-size:90%;
line-height:1.5;
padding:15px 0 15px 10px;
display:-webkit-flex;
display:flex;
align-items:center;
position:relative;
}

#blc04 .promoteBlc .list li .subj .icn{
position:absolute;
bottom:5px;
left:0;
}

#blc04 .promoteBlc .list li .subj .txt01{
text-shadow:
0px 0px 2px rgba(3, 37, 92, 1),
0px 0px 2px rgba(3, 37, 92, 1),
0px 0px 2px rgba(3, 37, 92, 1),
0px 0px 2px rgba(3, 37, 92, 1),
0px 0px 2px rgba(3, 37, 92, 1);
position:relative;
z-index:4;
}

#blc04 .promoteBlc .list li .inner{
padding:4%;
}

#blc04 .promoteBlc .list li .tbl{
width:100%;
}

#blc04 .promoteBlc .list li .tbl th,
#blc04 .promoteBlc .list li .tbl td{
font-size:90%;
padding:7px 0;
}

#blc04 .promoteBlc .list li .tbl td{
text-align:right;
}

#blc04 .promoteBlc .list li .tbl tr:last-of-type th,
#blc04 .promoteBlc .list li .tbl tr:last-of-type td{
border-top:1px solid #03255c;
}

@media screen and (max-width: 767px) {
#blc04 .promoteBlc .list{
display:block;
}

#blc04 .promoteBlc .list li{
width:100%;
margin-bottom:4%;
}

#blc04 .promoteBlc .list li .subj{
font-size:100%;
}

#blc04 .promoteBlc .list li .tbl th,
#blc04 .promoteBlc .list li .tbl td{
font-size:100%;
}
}


/* blc05 ------------------*/
#blc05{
background:url(../img/top/bg03.png) no-repeat center top, url(../img/common/bg_pattern02.png) repeat left top;
}

#blc05 .introBlc .ttl{
font-size:320%;
color:#048088;
text-align:center;
text-shadow:
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1),
0px 0px 3px rgba(255, 255, 255, 1);
margin-bottom:2%;
}

#blc05 .introBlc .txtBlc{
text-align:center;
}

#blc05 .introBlc .txtBlc .txtCatch{
font-size:140%;
color:#504a4a;
}

#blc05 .introBlc .txtBlc .txt{
font-size:120%;
color:#504a4a;
}

#blc05 .introBlc .catchBlc{
background:url(../img/top/img_group02.png) no-repeat right center;
background-size:auto 100%;
font-size:220%;
line-height:1.8;
color:#048088;
text-shadow:
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1),
0px 0px 2px rgba(255, 255, 255, 1);
padding:7% 0;
margin-top:4%;
}

@media screen and (max-width: 767px) {
#blc05 .introBlc .ttl{
font-size:200%;
}

#blc05 .introBlc .txtBlc .txtCatch{
font-size:120%;
}

#blc05 .introBlc .txtBlc .txt{
font-size:100%;
}

#blc05 .introBlc .catchBlc{
font-size:160%;
}
}

@media screen and (max-width: 480px) {
#blc05 .introBlc .catchBlc{
background-position:center bottom;
background-size:70% auto;
padding-top:0;
padding-bottom:50%;
}
}


/* formBlc ------------------*/
#formBlc{
margin-top:7%;
}

#formBlc.paddTop{
padding-top:4%;
}

#formBlc.spaceTopNon{
margin-top:0;
}

#formBlc,
#formBlc ol,
#formBlc ul,
#formBlc dl,
#formBlc li,
#formBlc dt,
#formBlc dd,
#formBlc table,
#formBlc th,
#formBlc td,
#formBlc input,
#formBlc textarea,
#formBlc select,
#formBlc h1,
#formBlc h2,
#formBlc h3,
#formBlc h4,
#formBlc h5,
#formBlc h6{
font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Noto Sans Japanese', Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif; /* Gothic */
}

#formBlc .txtCatch{
color:#fff;
font-size:160%;
text-align:center;
}

#formBlc .telBlc{
background-color:#1f488a;
color:#fff;
font-size:120%;
text-align:center;
border-radius:3px;
padding:15px 20px;
margin-bottom:4%;
}

#formBlc .telBlc a{
margin-left:20px;
display:inline-block;
}

#formBlc .ttl{
font-size:120%;
color:#fff;
text-align:center;
}

#formBlc .mainTtlStyle01 .txt01{
font-size:280%;
}

#formBlc .innerBlc{
background:#001441 url(../img/common/bg_banner02.jpg) no-repeat right -150px top;
border:1px solid #001441;
border-radius:10px;
-webkit-box-shadow:inset 0px 0px 3px 2px #40537d;
-moz-box-shadow:inset 0px 0px 3px 2px #40537d;
box-shadow:inset 0px 0px 3px 2px #40537d;
margin-top:7%;
padding:4% 4% 2%;
}

#formBlc .innerBlc.spaceTopNon{
margin-top:0;
}

#formBlc .innerBlc .ttl{
background-color:transparent;
margin-bottom:0;
}

#formBlc .innerBlc .ttl:after{
display:none;
}

#formBlc .innerBlc .ttl .txt01{
font-size:200%;
}

#formBlc .innerBlc .ttl .txt02{
font-size:110%;
}

#formBlc .innerBlc .infoRule{
color:#fff;
}

#formBlc .innerBlc .infoRule a{
color:#fff;
}

@media screen and (max-width: 767px) {
#formBlc .txtCatch{
font-size:140%;
}

#formBlc .mainTtlStyle01 .txt01{
font-size:190%;
}

#formBlc .innerBlc .ttl .txt01{
font-size:160%;
}

#formBlc .innerBlc .ttl .txt02{
font-size:100%;
}
}

@media screen and (max-width: 640px) {
#formBlc .telBlc a{
margin-top:10px;
margin-left:0;
display:block;
}
}