@charset "utf-8";
/* ----------------------------------------
レイアウト
------------------------------------------- */
body {
font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", sans-serif;
background: #116bad url(../img/body_bg.jpg) repeat center center scroll;
font-size: 20px;
font-weight: 800;
color: #08315c;
letter-spacing: 2px;
line-height: 2.0;
word-wrap: break-word;
height: 100%;
margin: 0;
padding: 0;
}
/*main {width: 100%;}*/
/*main#main {width: 100%;}*/
section{padding: 3em 0;}
/*#subPage {background:#fff;}*/
#subPage section{padding: 5em 0;}
.wrap_s {
width: 1000px;
max-width:100%;
margin:0 auto;
}
.wrap {
width: 1200px;
max-width:100%;
margin:0 auto;
}
.wrap_w {
width: 1400px;
max-width:100%;
margin:0 auto;
}
.inner {
/*padding:1.5em;*/
padding:20px;
}
.explan {
text-align: center;
color: #fff;
font-weight: 600;
}
.txt_bold {
text-align: center;
color: #fff;
font-weight: 800;
font-size: 170%;
line-height: 1.8;
}
.box_border {
background: #fff;
border: #e68935 10px solid;
padding: 1em;
margin: 1em auto;
border-radius: 20px;
font-size: 18px;
}

@media screen and (max-width:1500px) {
.wrap_w{width:1200px;margin: 0 auto;}
}

@media screen and (max-width:1280px) {
body {font-size: 16px;}
.wrap_w,.wrap,.wrap_s,.wrap_xs{width: 90%;margin: 0 auto;}
section, #subPage section {padding:4em 0;}
.box_border {font-size: inherit;}
}
@media screen and (max-width:1000px) {
.w25 {width: 30%;min-width: 160px;}
}
@media screen and (max-width:768px) {
body {font-size: 16px;}
section {padding:3em 0;}
#subPage section{padding: 2em 0;}
.inner {padding:2% 3%;}
.txt_box {padding:2%;}
.box_border {padding:3%;}
}

@media screen and (max-width:599px) {
body {font-size: 14px;}
section {padding: 2em 0;}
}

/*-------------------------------
BTN
-------------------------------*/
.btn_more a {
color: #fff;
background-color: #001c58;
border: #001c58 2px solid;
margin: 1em auto 0;
padding:1.2em 1.5em 1.2em 1em;
line-height: 1;
font-weight: bold;
letter-spacing: 0.1em;
width: 480px;
max-width: 94%;
font-size: 100%;
text-align: center;
text-decoration: none;
clear: both;
display: block;
border-radius: 50px;
box-shadow: #333 3px 3px 3px;
}
.btn_more a:hover {
opacity: 0.9;
color: #001c58;
background-color: transparent;
background-color: #fff;
}
.btn_more a:before {
content: "\f178";
content: "\f101";
content: "\f105";
content: "\f138";
font-family: FontAwesome;
margin-right: 1.2em;
}

/* ----------------------------------------
ul
------------------------------------------- */
/**/
ul.check-list{
padding: 0 1em 0.5em 1.5em;
}
ul.check-list li{
text-align: left;
padding: 7px;
border-bottom: #333 1px dashed;
}
ul.check-list li::before {
content: "\2714";
display: inline-block;
text-indent: -1.2em;
color: #F44336;
}
/**/
ul.point-list{
padding: 1em;
}
ul.point-list li{
text-align: left;
padding-left: 1em;
}
ul.point-list li::before {
content: "\2756";
display: inline-block;
text-indent: -1.2em;
color: #F44336;
}
/**/
ul.list-a{
padding: 0 1em 0.5em 1.5em;
}
ul.list-a li{
text-align: left;
padding: 7px;
border-bottom: #333 1px dashed;
}
ul.list-a li::before {
content: "\2756";
display: inline-block;
text-indent: -1.2em;
color: #F44336;
}

/* ----------------------------------------
title
------------------------------------------- */
h1,h2,h3,h4{
line-height: 1.5;
letter-spacing: 1px;
font-feature-settings: "palt";/*文字詰め*/
font-weight: 400;
font-style: normal;
}
.title_top{/*HOMEタイトル*/
font-family:"Hiragino Mincho ProN", serif;
/*font-family: "Cormorant Garamond", "Shippori Mincho B1", serif;*/
color: #001c58;
font-size: 400%;
padding: 0px 0 0px;
margin: 0 auto 0.5em;
width: 900px;
max-width: 100%;
height: auto;
/* background: url(../img/title_top_bg.png) center 15px no-repeat; */
background-size: contain;
line-height: 1;
letter-spacing: 1px;
font-weight: bold;
text-align: center;
clear: both;
display: block;
}
.title_top .small{
display: block;
font-size: 30%;
margin-top: 25px;
letter-spacing: 5px;
font-family: "Zen Maru Gothic", sans-serif;
font-weight: 500;
}
.title_top_harf{/*HOMEタイトル*/
font-size: 38px;
color: #ffffff;
text-align: center;
letter-spacing: 5px;
font-family: "Zen Maru Gothic", sans-serif;
font-weight: 600;
margin-bottom: 1em;
}
.explain{text-align: center;padding: 15px;}

@media screen and (max-width:1024px) {
.explain{text-align:left;}
}

@media screen and (max-width:768px) {
.title_top_img-01{width: 42vw;}
.title_top{background: none;}
.title_top .small{
margin-top: 5px;
}
}

/* ----------------------------------------
sub_title
------------------------------------------- */
.title_a{
font-size: 120%;
background: linear-gradient(90deg, rgb(1 29 89) 0%, rgb(63 91 152) 100%);
color: #fff;
font-weight: normal;
line-height: 1.6;
padding: 0.6em 0.6em 0.6em;
margin-bottom: 1em;
border-radius: 5px;
box-shadow: #999 1px 1px 1px;
}
.title_a:before {
content: "\f184";
content: "\f260";
content: "\f299";
content: "\f069";
content: "\f142";
font-family: FontAwesome;
font-weight: normal;
padding: 0 1em;
}
.title_b {
font-size: 230%;
border-bottom: #ffffff 10px solid;
padding: 0 0 1em;
margin: 0em auto 1em;
line-height: 1.4;
letter-spacing: 3px;
font-weight: 800;
text-align: center;
color: #ffffff;
}


@media screen and (max-width:1024px) {
.title_top{font-size: 60px;}
.title_a{font-size: inherit;}
.title_b{font-size:180%;}
}

@media screen and (max-width:599px) {
.title_top{
/*background-position: center bottom;*/
font-size: 9vw;
padding: 0px 8vw 0;
letter-spacing: 1px;
line-height: 1.3;
}
.title_top .small{font-size: 50%;}
.title_top_harf{font-size: 5.5vw;}
}

/* ----------------------------------------
font
------------------------------------------- */
.font-min {font-family:"Hiragino Mincho ProN", serif;}
.font-go {font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;}
.font-robot{font-family: 'Roboto', sans-serif;}
.font-maru{font-family: 'Kosugi Maru', sans-serif;}

/*------------------------------------------
color
------------------------------------------*/
.red {font-weight: bold;color: #dd0000;}
.blue {font-weight: bold;color: #006699;}
.gold {font-weight: bold;color: #826641;}
.clr-1 {color: #7896c0;}
.clr-2 {color: #40b49d;}
.clr-3 {color: #001c58;}
.bgclr-1 a {background-color: #001c58;color:#fff;}
.bgclr-2 a {background-color: #b28850;color:#fff;}
.bgclr-3 a {background-color: #efefef;color:#fff;}

/*-------------------------------
背景
-------------------------------*/
.bg-0 {background: rgba(255,255,255,0.4);}
.bg-1 {background: #eaf2f4 url(../img/bg-1.jpg) repeat center center scroll;}
.bg-2 {background: #efefef url(../img/bg-2.jpg) repeat top center scroll;background-size: cover;}
.bg-3 {background: #181937;}
.bg-4 {background: #efefef url(../img/bg-4.png) repeat top center scroll;}
.bg-5 {background: #fffdf2 url(../img/bg-5.png) repeat top center scroll;;}
.bg-c {background: #f8f0d7 url(../img/bg-c.png) repeat top center scroll;}
.bg-s {background: #e4f3fd url(../img/bg-s.png) repeat top center scroll;}
.bg-w {background: #ffffff;}
.bg-b {background: #000;}
.rgba{background: rgba(0,0,0,0.2);}

@media screen and (max-width:1024px) {
.bg-2 {background-size: auto;}
}


/*------------------------------------------
【HOME】３連
------------------------------------------*/
#nonp ul.nonp_list{
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: space-between;
}
#nonp ul.nonp_list li{
width: 30%;
margin: 1.5%;
background: #fff;
padding: 30px 25px;
border-radius: 20px;
border: #2d4a83 5px solid;
}
#nonp .nonp_img{
margin: 0 auto;
display: block;
}
#nonp ul.nonp_list li p{
text-align: center;
line-height: 1.4;
color: #2e487c;
font-weight: 900;
font-size: 230%;
letter-spacing: 2px;
}
@media screen and (max-width: 1000px) {
#nonp ul.nonp_list li p {
font-size: 180%;
}
}
@media screen and (max-width: 759px) {
#nonp ul.nonp_list {flex-direction: column;}
#nonp ul.nonp_list li {
width: 85%;
display: flex;
margin: 1.5%;
background: #fff;
padding: 10px;
border-radius: 20px;
border: #2d4a83 5px solid;
flex-direction: row;
align-content: space-around;
align-items: center;
justify-content: center;
}
#nonp .nonp_img {
margin: 0;
display: inline-block;
width: 80px;
}
}
/*------------------------------------------
【HOME】店舗
------------------------------------------*/
#tenpo ul.tenpo_list{
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: space-around;
align-items: stretch;
flex-direction: row;
justify-content: space-between;
}
#tenpo ul.tenpo_list li{
width: 31%;
margin: 1%;
background: #fff;
padding: 20px;
border-radius: 20px;
border: #e68935 8px solid;
}
#tenpo .tenpo_img{
margin: 0 auto;
display: block;
}
#tenpo ul.tenpo_list li p{
text-align: left;
line-height: 1.8;
color: #2e487c;
font-weight: 600;
font-size: 100%;
letter-spacing: 0;
padding: 15px 0;
}
@media screen and (max-width: 759px) {
#tenpo ul.tenpo_list {
flex-direction: column;
}
#tenpo ul.tenpo_list li {
width: 100%;
margin: 1em auto;
padding: 10px;
border: #e68935 5px solid;
display: flex;
align-items: center;
}
}
/*------------------------------------------
【HOME】FLOW
------------------------------------------*/
#flow dl {
width: 100%;
margin: auto;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: nowrap;
-webkit-justify-content: space-between;
align-items: center;
flex-direction: row;
justify-content: flex-start;
align-content: space-around;
}
#flow dl{
background: #ffffff;
width: 100%;
padding: 0;
border-radius: 15px;
border: #ff8500 5px solid;
}
#flow dl dt{
font-size: 120%;
font-weight: 900;
background: #ff8500;
color: #ffffff;
padding: 5px 30px;
border-radius: 10px 0 0 10px;
}
#flow dl dt .num{
font-size: 120%;
font-weight: 900;
padding: 0 5px;
/*transform: skew(-10deg, 0deg);*/
display: inline-block;
}
#flow dl dd{
padding: 0 1em;
font-weight: 800;
font-size: 120%;
}
@media screen and (max-width: 759px) {
#flow dl {
flex-direction: column;
}
#flow dl {
border-radius: 5px;
border: #ff8500 2px solid;
}
#flow dl dt {
padding: 0;
border-radius: 0;
width: 100%;
text-align: center;
}
#flow dl dd {
padding: 1em;
font-size: 110%;
}
#flow dl dt .num {
font-size: 100%;
}
}
/*------------------------------------------
【HOME】Q＆A
-------------------------------------------*/
#faq{

}
#faq .toggle_wrap {
background: #ffffff;
width: 98%;
margin: 0 auto 2em;
border-radius: 5px;
padding: 0px;
border: #e68935 3px solid;
}
#faq .toggle_wrap p.q {
font-size: 115%;
line-height: 1.8;
padding:10px 40px 10px 25px;
font-weight: 800;
}
#faq .toggle_wrap p.q:before,
#faq .toggle_wrap p.a:before{
content: "Q.";
font-family: FontAwesome;
margin-right: 10px;
font-weight: bold;
color: #fff;
background: transparent;
padding: 0;
border-radius: 5px;
}
#faq .toggle_wrap p.a:before {
content: "A.";
color: #cc0000;
background: transparent;
}
#faq .toggle_contents {background: #fff;}

/* アコーディオン */
#faq .toggle_switch {
position: relative;
cursor: pointer;
padding:5px 0;
background: #ff8500;
color: #fff;
}
#faq .toggle_contents p {
text-align: left;
padding: 15px 25px;
line-height: 2.0;
}
#faq .toggle_switch::after {
content: "";
display: inline-block;
width: 18px;
height: 11px;
background: url(../img/arrow_down.png) no-repeat center center;
background-size: contain;
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 20px;
transition: transform .2s;
}
#faq .toggle_switch.open::after {
transform: rotateZ(180deg);
top: 40%;
}
#faq .toggle_contents {
/*display: none;*/
display: block;
padding: 5px 0 5px;
background: #fff;
width: 100%;
margin: 0;
border-radius: 0 0 10px 10px;
}

@media screen and (max-width: 590px) {
#faq .toggle_wrap p.q,#faq .toggle_wrap p.a {padding:10px 20px 10px 20px;}
#faq .toggle_switch::after {right: 5px;}
}

/*------------------------------------------
【下層】　個人情報保護方針
------------------------------------------*/
.privacy dl dt{
border-bottom: #001c58 1px dotted;
color: #001c58;
font-size: 110%;
font-weight: bold;
margin: 1em auto;
padding: 8px 20px 5px 0;
}
.privacy dl dt:before{
content: "■ "
}

/*------------------------------------------
【共通】Google map
------------------------------------------*/
/*googlemap彩度*/
.googlemap iframe,
.googlemap object,
.googlemap embed {
width: 100%;
height: 400px;
-webkit-filter: saturate(60%);
filter: saturate(60%);
-webkit-transition: all 0.7s ease;
transition: all  0.7s ease;
}
.googlemap iframe:hover,
.googlemap object:hover,
.googlemap embed:hover {
-webkit-filter: saturate(90%);
filter: saturate(90%);
}

/*-------------------------------------------
【共通】footer
-------------------------------------------*/
section#footer_area {
background: #131d55 url(../img/footer.jpg) repeat bottom center scroll;
background-size: auto;
color: #fff;
padding: 0;
width: 100%;
display: block;
clear: both;
margin: 0;
}
footer .wrap,
footer .wrap_w{
margin: auto;
padding:0em;
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-ms-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-justify-content: space-between;
align-content: flex-start;
align-items: stretch;
flex-direction: row;
justify-content: space-between;
}

/* footer box */
footer .f_box {
/*width: 18%;*/
padding:0;
}
footer .lg {
width: 40%;
}
footer .f_box p {
font-size: 14px;
padding: 5px 0;
line-height: 1.8;
}
footer .f_box p.logo_footer {
font-size: 140%;
font-weight: bold;
margin-bottom: 10px;
}
footer .f_box p.logo_footer img {
width: auto;
}

/* footer link */
footer ul.f_link li a {
display: block;
text-decoration: none;
font-size: 15px;
font-weight: 500;
color: #ffffff;
text-align: left;
padding: 0.5em 1em 0.5em 0;
border-bottom: #ffffff dotted 1px;
}
footer ul.f_link li a::before {
color:#ffffff;
content: "\f138";
font-family: FontAwesome;
padding-right: 0.5em;
}
footer ul.f_link li.no-icon a::before {
color:#ffffff;
content:none;
padding-right: 0.5em;
}
footer ul.f_link li a:hover {
opacity: 0.8;
}
address {
font-size: 16px;
color: #fff;
font-style: normal;
padding: 2em 0;
text-align: center;
letter-spacing: 1px;
}

@media screen and (max-width:1279px) {
footer .wrap {
display: block;
max-width: 100%;
width: 100%;
padding: 0em 0;
margin: 0 auto;
}
footer .f_box {
width: 100%;
padding: 0;
}
footer .lg {
width: 100%;
padding: 2em;
}
footer ul.f_link li a {
font-size: 14px;
color: #333;
border-top: #fff 1px solid;
border-bottom: unset;
padding: 0.8em 2em;
display: block;
text-decoration: none;
text-align: left;
background: #36a4df;
color: #fff;
}
footer ul.f_link li a:hover{
background: rgba(255,255,255,0.98);
color: #001c58;
}
}
@media screen and (max-width:1279px) {
footer .f_box p.logo_footer img {
width: 250px;}

footer ul.f_link li a:hover::before {
color:#36a4df;
}
}

/*-------------------------------------------
TOPへ戻る
-------------------------------------------*/
.to_top {
position: fixed;
bottom: 0px;
right: 0px;
z-index: 800;
}
.to_top a {
background-color: #001c58;
color: #fff;
text-decoration: none;
text-align: center;
display: block;
width: 60px;
height: 60px;
font-size: 30px;
line-height: 60px;
}
.to_top a:hover {
opacity: 0.9;
}
