@charset "UTF-8";

html,body{
height:auto;
}

/* keyVisual ------------------*/
#keyVisual{
position:relative;
}

#keyVisual:after{
content:"";
background:url(../img/common/pattern02.png) repeat left top rgba(236,249,255,0.2);
width:100%;
height:100%;
position:absolute;
top:0;
left:0;
}

#keyVisual .bgArea{
width:100%;
height:0;
padding-bottom:700px;
position:relative;
box-sizing:border-box;
}

#keyVisual .bgSwitch{
background-position:center top !important;
background-size:cover !important;
min-height:100%;
z-index:0 !important;
}

#keyVisual .txtCatch{
width:100%;
position:absolute;
top:30%;
z-index:4;
text-align:center;
}

#keyVisual .txtCatch .txtBlc{
background:rgba(255,255,255,0.4);
padding:20px 30px;
display:inline-block;
box-sizing:border-box;
}

#keyVisual .txtCatch .txtBlc .txt01{
color:#2665a4;
font-size:170%;
font-weight:500;
}

#keyVisual .txtCatch .txtBlc .txt02{
background-color:#2665a4;
color:#fff;
font-size:180%;
font-weight:500;
line-height:1.8;
padding:0 10px;
display:inline-block;
box-sizing:border-box;
}

#keyVisual .txtCatch .txtBlc .txt02 .bigTxt{
font-size:170%;
}

#keyVisual .txtCatch .txtBlc .txt03{
color:#2665a4;
margin-top:2%;
display:block;
box-sizing:border-box;
}

#keyVisual .btnScroll{
width:100%;
text-align:center;
position:absolute;
bottom:-15px;
z-index:4;
}

#keyVisual .btnScroll a{
color:#4877a7;
font-size:90%;
text-decoration:none;
padding-bottom:88px;
display:inline-block;
position:relative;
text-shadow:-1px -1px 3px rgba(255, 255, 255, 1),
1px -1px 3px rgba(255, 255, 255, 1),
-1px 1px 3px rgba(255, 255, 255, 1),
1px 1px 3px rgba(255, 255, 255, 1);
}

#keyVisual .btnScroll a:after{
content:"";
background:url(../img/top/arrow_scroll_down.png) no-repeat center bottom;
width:9px;
height:88px;
margin:auto;
position:absolute;
bottom:0;
left:0;
right:0;
}

@media screen and (max-width: 1000px) {
#keyVisual .bgArea{
padding-bottom:60%;
}

#keyVisual .btnScroll a{
padding-bottom:60px;
}

#keyVisual .btnScroll a:after{
height:60px;
}
}

@media screen and (max-width: 767px) {
#keyVisual .bgArea{
padding-bottom:75%;
}
}

@media screen and (max-width: 640px) {
#keyVisual .txtCatch .txtBlc{
padding:10px 15px;
}

#keyVisual .txtCatch .txtBlc .txt01{
font-size:130%;
}

#keyVisual .txtCatch .txtBlc .txt02{
font-size:140%;
}

#keyVisual .txtCatch .txtBlc .txt03{
font-size:90%;
}
}

@media screen and (max-width: 480px) {
#keyVisual .txtCatch{
text-align:center;
}

#keyVisual .txtCatch .txtBlc{
padding:7px 10px;
}

#keyVisual .txtCatch .txtBlc .txt01{
font-size:95%;
}

#keyVisual .txtCatch .txtBlc .txt02{
font-size:100%;
}

#keyVisual .txtCatch .txtBlc .txt03{
font-size:80%;
}

#keyVisual .btnScroll a{
padding-bottom:30px;
}

#keyVisual .btnScroll a:after{
height:30px;
}
}


/* blc01 ------------------*/
#blc01{
background:url(../img/common/pattern03.png) repeat left top;
padding:50px 0 70px;
}

#blc01 .partBlc{
display:flex;
justify-content:space-between;
}

#blc01 .partBlc .leftBlc{
width:44%;
display:flex;
align-items:center;
}

#blc01 .partBlc .leftBlc .btn{
margin-top:7%;
}

#blc01 .partBlc .rightBlc{
width:54%;
}

#blc01 .partBlc .rightBlc .map{
text-align:center;
}

#blc01 .partBlc .rightBlc .map svg{
width:100%;
max-width:540px;
height:450px;
}

#blc01 .partBlc .rightBlc .map svg a{
cursor:pointer;
}

#blc01 .partBlc .rightBlc .map svg a:hover path,
#blc01 .partBlc .rightBlc .map svg a:hover polygon,
#blc01 .partBlc .rightBlc .map svg a:hover polyline{
opacity:0.8;
}

#blc01 .partBlc .rightBlc .map svg path,
#blc01 .partBlc .rightBlc .map svg polygon,
#blc01 .partBlc .rightBlc .map svg polyline{
transition:all 200ms ease-in-out;
}

#blc01 .partBlc .rightBlc .map .tooltip{
position:relative;
display:inline-block;
border-bottom:1px dotted black;
}

#blc01 .partBlc .rightBlc .map .tooltip .tooltiptext{
visibility: hidden;
width:120px;
background-color:#555;
color:#fff;
text-align:center;
border-radius:6px;
padding:5px 0;
position:absolute;
z-index:1;
bottom:125%;
left:50%;
margin-left:-60px;
opacity:0;
transition:opacity 0.3s;
}

#blc01 .partBlc .rightBlc .map .tooltip .tooltiptext:after{
content:"";
position:absolute;
top:100%;
left:50%;
margin-left:-5px;
border-width:5px;
border-style:solid;
border-color:#555 transparent transparent transparent;
}

#blc01 .partBlc .rightBlc .map .tooltip:hover .tooltiptext{
visibility:visible;
opacity:1;
}

#blc01 .shopArea{
margin-top:4%;
position:relative;
}

#blc01 .shopArea:after{
content:"";
background:url(../img/top/img_deco01.png) no-repeat left top;
background-size:100% auto;
width:276px;
height:183px;
position:absolute;
bottom:100%;
left:4%;
}

#blc01 .shopArea .ttl{
background-color:#ffdf6c;
color:#0f4c9b;
width:140px;
height:140px;
text-align:center;
line-height:1.8;
border-radius:999px;
display:flex;
align-items:center;
justify-content:center;
position:absolute;
bottom:calc(100% + 7%);
left:33%;
z-index:4;
}

#blc01 .shopArea .inner{
background-color:#fff;
border:1px solid #243770;
display:flex;
}

#blc01 .shopArea .inner .leftBlc,
#blc01 .shopArea .inner .rightBlc{
width:50%;
padding:20px 4%;
position:relative;
box-sizing:border-box;
}

#blc01 .shopArea .inner .leftBlc:after{
content:"";
background-color:#233870;
width:1px;
height:80%;
margin:auto;
position:absolute;
top:0;
bottom:0;
right:0;
}

#blc01 .shopArea .inner .leftBlc .subj,
#blc01 .shopArea .inner .rightBlc .subj{
color:#000;
font-size:120%;
}

#blc01 .shopArea .inner .leftBlc .subj a,
#blc01 .shopArea .inner .rightBlc .subj a{
color:#000;
text-decoration:none;
}

#blc01 .shopArea .inner .leftBlc .list li,
#blc01 .shopArea .inner .rightBlc .list li{
display:inline-block;
}

#blc01 .shopArea .inner .leftBlc .list li:after,
#blc01 .shopArea .inner .rightBlc .list li:after{
content:"｜";
}

#blc01 .shopArea .inner .leftBlc .list li:last-of-type:after,
#blc01 .shopArea .inner .rightBlc .list li:last-of-type:after{
content:"";
}

#blc01 .shopArea .inner .leftBlc .list li a,
#blc01 .shopArea .inner .rightBlc .list li a{
color:#000;
text-decoration:none;
}

@media screen and (max-width: 1200px) {
#blc01 .shopArea:after{
width:200px;
height:133px;
}

#blc01 .shopArea .ttl{
left:250px;
}
}

@media screen and (max-width: 1000px) {
#blc01 .shopArea{
margin-top:9%;
}

#blc01 .shopArea .ttl{
width:120px;
height:120px;
}
}

@media screen and (max-width: 767px) {
#blc01 .partBlc{
display:block;
}

#blc01 .partBlc .leftBlc{
width:100%;
display:block;
}

#blc01 .partBlc .leftBlc .btn{
margin-top:4%;
}

#blc01 .partBlc .rightBlc{
width:100%;
margin-top:4%;
}
}

@media screen and (max-width: 640px) {
#blc01 .shopArea{
margin-top:120px;
}

#blc01 .shopArea:after{
width:160px;
height:106px;
}

#blc01 .shopArea .ttl{
left:170px;
}

#blc01 .shopArea .inner{
display:block;
}

#blc01 .shopArea .inner .leftBlc,
#blc01 .shopArea .inner .rightBlc{
width:100%;
}

#blc01 .shopArea .inner .leftBlc:after{
width:92%;
height:1px;
top:auto;
bottom:0;
right:0;
left:0;
}
}

@media screen and (max-width: 400px) {
#blc01 .partBlc .rightBlc .map svg{
height:310px;
}
}


/* blc02 ------------------*/
#blc02{
background-color:#d9ebef;
padding:50px 0;
}

#blc02 .list{
margin-top:4%;
display:flex;
flex-wrap:wrap;
justify-content:center;
}

#blc02 .list li{
background-color:#fff;
width:32%;
margin:0 2% 15px 0;
}

#blc02 .list li:nth-of-type(3n){
margin-right:0;
}

#blc02 .list li:last-of-type{
background-color:transparent;
}

#blc02 .list li .imgBlc{
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
padding-top:58%;
}

#blc02 .list li .imgBlc.img01{
background-image:url(../w2img/20160321233517img01.jpg);
}


#blc02 .list li .imgBlc.img02{
background-image:url(../w2img/20160321233517img02.jpg);
}


#blc02 .list li .imgBlc.img03{
background-image:url(../w2img/20160321233517img03.jpg);
}


#blc02 .list li .imgBlc.img04{
background-image:url(../w2img/20160321233517img04.jpg);
}


#blc02 .list li .imgBlc.img05{
background-image:url(../w2img/20160321233517img05.jpg);
}

#blc02 .list li .inner{
padding:10px 10% 20px;
}

#blc02 .list li:last-of-type .inner{
background-color:#fff;
margin-bottom:2%;
}

#blc02 .list li .subj{
color:#233870;
font-size:120%;
text-align:center;
}

#blc02 .list li .txtBlc{
font-size:90%;
text-align:center;
margin-top:2%;
}

#blc02 .list li .btn{
margin-top:4%;
}

#blc02 .serviceLast{
background-color:#fff;
position:relative;
}

#blc02 .serviceLast:after{
content:"";
background:url(../img/top/img_deco02.png) no-repeat center bottom;
background-size:98% auto;
width:32%;
height:186px;
position:absolute;
bottom:100%;
right:0;
}

#blc02 .serviceLast a{
text-decoration:none;
display:flex;
flex-wrap:wrap;
}

#blc02 .serviceLast .imgBlc{
background:url(../w2img/20160321233517img06.jpg) no-repeat center center;
background-size:cover;
width:50%;
}

#blc02 .serviceLast .txtBlc{
width:50%;
text-align:center;
}

#blc02 .serviceLast .txtBlc .inner{
padding:65px 7% 75px;
}

#blc02 .serviceLast .txtBlc .subj{
color:#233870;
font-size:120%;
display:inline;
}

#blc02 .serviceLast .txtBlc .txtBlc{
font-size:90%;
display:inline;
}

#blc02 .banner{
margin-top:7%;
}

@media screen and (max-width: 767px) {
#blc02 .list li .inner{
padding-left:7%;
padding-right:7%;
}

#blc02 .serviceLast .txtBlc .inner{
padding-top:35px;
padding-bottom:45px;
}
}

@media screen and (max-width: 640px) {
#blc02 .list li{
width:49%;
}

#blc02 .list li:nth-of-type(3n){
margin-right:2%;
}

#blc02 .list li:nth-of-type(2n){
margin-right:0;
}

#blc02 .serviceLast:after{
width:49%;
height:160px;
}
}

@media screen and (max-width: 480px) {
#blc02 .list li{
width:100%;
margin-right:0;
}

#blc02 .list li:nth-of-type(3n){
margin-right:0;
}

#blc02 .serviceLast a{
display:block;
}

#blc02 .serviceLast .imgBlc{
width:100%;
padding-top:58%;
}

#blc02 .serviceLast .txtBlc{
width:100%;
}

#blc02 .serviceLast .txtBlc .inner{
padding-top:10px;
padding-bottom:20px;
}

#blc02 .serviceLast{
margin-top:110px;
}

#blc02 .serviceLast:after{
width:187px;
height:110px;
margin:auto;
left:0;
}
}


/* blc03 ------------------*/
#blc03{
padding:75px 0 50px;
}

#blc03 .newsBlc dl{
height:350px;
}

#blc03 .newsBlc dt,
#blc03 .newsBlc dd{
}

#blc03 .newsBlc dt{
background-color:#2665a4;
color:#fff;
font-size:140%;
line-height:1.5;
width:160px;
border-radius:16px;
text-align:center;
padding:0 15px;
float:left;
box-sizing:border-box;
}

#blc03 .newsBlc dt .smallTxt{
font-size:70%;
}

#blc03 .newsBlc dd{
padding-left:180px;
margin-bottom:2%;
}

#blc03 .newsBlc dd:after{
content:"";
display:block;
clear:both;
}

#blc03 .newsBlc dd .statLabel{
background-color:#ffdf6c;
color:#0857a8;
font-size:90%;
line-height:1.5;
border-radius:999px;
padding:0 10px;
margin:0 10px;
display:inline-block;
}

#blc03 .banner{
margin-top:7%;
}

@media screen and (max-width: 640px) {
#blc03 .newsBlc dt{
float:none;
display:inline-block;
margin-bottom:2%;
}

#blc03 .newsBlc dd{
padding-left:0;
margin-bottom:4%;
}
}


/* blc04 ------------------*/
#blc04{
background:url(../img/top/bg01.jpg) no-repeat center top;
background-size:cover;
padding:30px 0 50px;
}

#blc04 .list li{
background-color:#fff;
display:flex;
flex-wrap:wrap;
}

#blc04 .list li .imgBlc{
background-repeat:no-repeat;
background-position:center center;
background-size:cover;
width:50%;
box-sizing:border-box;
}

#blc04 .list li:nth-of-type(2n) .imgBlc{
order:1;
}

#blc04 .list li .imgBlc.img01{
background-image:url(../img/top/img07.jpg);
}

#blc04 .list li .imgBlc.img02{
background-image:url(../img/top/img08.jpg);
}

#blc04 .list li .txtBlc{
width:50%;
box-sizing:border-box;
}

#blc04 .list li:nth-of-type(2n) .txtBlc{
order:0;
}

#blc04 .list li .txtBlc .inner{
padding:30px 30px 40px;
}

#blc04 .list li .txtBlc .subj{
font-size:120%;
margin-bottom:2%;
}

#blc04 .list li .txtBlc .txt{
font-size:90%;
}

#blc04 .btn{
margin: 4% 0 0;
}

@media screen and (max-width: 767px) {
#blc04 .list li .txtBlc .inner{
padding:20px 20px 30px;
}
}

@media screen and (max-width: 480px) {
#blc04 .list li{
display:block;
margin-bottom:2%;
}

#blc04 .list li .imgBlc{
width:100%;
}

#blc04 .list li .txtBlc{
width:100%;
}
}


/* blc05 ------------------*/
#blc05{
background:#d0edf8 url(../img/common/pattern04.png) repeat left top;
background-size:0.3% auto;
padding:50px 0;
}

#blc05 .list{
padding:0 2%;
margin-top:4%;
display:flex;
flex-wrap:wrap;
}

#blc05 .list li{
width:16%;
border:1px solid #fff;
padding:15px;
margin:0 0.8% 10px 0;
box-sizing:border-box;
}

#blc05 .list li:nth-of-type(6n){
margin-right:0;
}

#blc05 .list li .imgBlc{
display:flex;
align-items:center;
justify-content:center;
}

#blc05 .list li .imgBlc img{
width:100%;
}

#blc05 .list li .txtBlc{
background-color:#f7fcfe;
padding:15px;
}

#blc05 .list li .txtBlc .subj{
color:#155ca1;
font-weight:400;
margin-bottom:4%;
}

#blc05 .list li .txtBlc .txt{
font-size:90%;
}

@media screen and (max-width: 1440px) {
#blc05 .list li{
width:23.5%;
margin-right:2%;
}

#blc05 .list li:nth-of-type(6n){
margin-right:2%;
}

#blc05 .list li:nth-of-type(4n){
margin-right:0;
}
}

@media screen and (max-width: 1000px) {
#blc05 .list li{
width:32%;
}

#blc05 .list li:nth-of-type(4n){
margin-right:2%;
}

#blc05 .list li:nth-of-type(3n){
margin-right:0;
}
}

@media screen and (max-width: 767px) {
#blc05 .list{
padding-left:4%;
padding-right:4%;
}
}

@media screen and (max-width: 640px) {
#blc05 .list li{
width:49%;
}

#blc05 .list li:nth-of-type(3n){
margin-right:2%;
}

#blc05 .list li:nth-of-type(2n){
margin-right:0;
}
}

@media screen and (max-width: 480px) {
#blc05 .list li{
width:100%;
margin-right:0;
}

#blc05 .list li:nth-of-type(6n){
margin-right:0;
}

#blc05 .list li:nth-of-type(4n){
margin-right:0;
}

#blc05 .list li:nth-of-type(3n){
margin-right:0;
}
}

/* footer ------------------*/
#footer .copyright{
line-height:1.2;
}
#footer .copyright .coupon{
text-align:right;
padding: 0 3%;
}
#footer .copyright .coupon a{
color:#666;
font-size:80%;
text-decoration:none;
}
