@charset "UTF-8";
html { width: 100%; overflow-x: hidden; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
@media (min-width: 769px) { html { min-width: 800px; overflow: auto; } }
body { min-width: 320px; line-height: 2; background-color: #fff; color: #000; font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; font-size: 14px; -webkit-text-size-adjust: 100%; }
@media (min-width: 769px) { body { line-height: 1.66; font-size: 16px; } }
a { color: #000; text-decoration: underline; }
img { width: 100%; height: auto; }
input , textarea { -webkit-appearance: none; }
.viewPc { display: none; }
@media (min-width: 769px) { .viewSp { display: none; }  .viewPc { display: block; } }
.cf:after { display: block; clear: both; content: ""; }
@media (min-width: 769px) { #main { padding-bottom: 120px; } }
/* header not:top
-------------------------------------- */
body:not(#home) #gHeader { position: relative; z-index: 999; }
@media (max-width: 768px) { body:not(#home) #gHeader { height: 63px; } }
body:not(#home) #gHeader .logoWrap { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; }
@media (max-width: 768px) { body:not(#home) #gHeader .logoWrap { height: 63px; } }
body:not(#home) #gHeader .logoWrap .logo { width: 210px; }
@media (min-width: 769px) { body:not(#home) #gHeader .logoWrap .logo { width: 290px; margin: 10px 0; } }
@media (min-width: 769px) { body:not(#home) #gHeader .logoWrap .sns.viewPc { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }  body:not(#home) #gHeader .logoWrap .sns.viewPc .item { line-height: 0; margin-left: 30px; font-size: 30px; }  body:not(#home) #gHeader .logoWrap .sns.viewPc .item a { transition: all .3s linear; }  body:not(#home) #gHeader .logoWrap .sns.viewPc .item a:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; }  body:not(#home) #gHeader .logoWrap .sns.viewPc .inTxt { display: inline-block; text-indent: -9999px; } }
body:not(#home) #gHeader #gNav { background: #000; color: #fff; }
@media (max-width: 768px) { body:not(#home) #gHeader #gNav { position: fixed; top: 0; left: 0; width: 100%; height: 0; overflow: hidden; padding: 0; background-color: rgba(180, 222, 219, .9); transition: all .3s ease; }  body:not(#home) #gHeader #gNav.is_open { height: 100%; min-height: inherit; transition: all .3s ease; } }
@media (min-width: 769px) { body:not(#home) #gHeader #gNav { top: -100px; transition: all .3s linear; }  body:not(#home) #gHeader #gNav.is-fixed { position: fixed; top: 0; left: 0; width: 100%; transition: all .3s linear; } }
@media (max-width: 768px) { body:not(#home) #gHeader #gNav .list { padding: 5%; } }
@media (min-width: 769px) { body:not(#home) #gHeader #gNav .list { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; } }
@media (max-width: 768px) { body:not(#home) #gHeader #gNav .list .item { font-size: 20px; font-size: 6.25vw; } }
body:not(#home) #gHeader #gNav .list .item a { display: block; font-family: "Roboto", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; font-weight: 900; font-size: 22px; text-decoration: none; font-size:  }
@media (max-width: 768px) { body:not(#home) #gHeader #gNav .list .item a { display: block; text-decoration: none; transition: all .3s linear; }  body:not(#home) #gHeader #gNav .list .item a.current { color: #fff; } }
@media (min-width: 769px) { body:not(#home) #gHeader #gNav .list .item a { line-height: 1; padding: 20px 0; color: #fff; transition: all .3s linear; font-size: clamp(19px, 7.26px + 1.527vw, 21px) }  body:not(#home) #gHeader #gNav .list .item a:hover { color: #97d4d9; } }
body:not(#home) #gHeader #gNav .list .current { color: #97d4d9; }
@media (max-width: 768px) { body:not(#home) #gHeader #gNav .sns.viewSp { display: -ms-flexbox; display: flex; padding: 5%; -ms-flex-align: center; align-items: center; }  body:not(#home) #gHeader #gNav .sns.viewSp .item { margin-right: 8%; font-size: 30px; font-size: 9.375vw; }  body:not(#home) #gHeader #gNav .sns.viewSp .item a { transition: all .3s linear; }  body:not(#home) #gHeader #gNav .sns.viewSp .item a:hover { color: #fff; }  body:not(#home) #gHeader #gNav .sns.viewSp .inTxt { display: inline-block; text-indent: -9999px; } }
body:not(#home) .mv { background: url(../images/bg_mv01.png) 50% 50% no-repeat; background-size: cover; }
body:not(#home) .mv .tit { display: -ms-flexbox; display: flex; height: 120px; color: #fff; font-family: "Roboto", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; font-weight: 900; font-size: 25px; font-size: 7.8125vw; text-indent: .8em; -ms-flex-align: center; align-items: center; }
@media (min-width: 769px) { body:not(#home) .mv .tit { height: 300px; font-size: 60px; } }
/* footer
-------------------------------------- */
#gFooter .wrap { padding: 16px 0; background: #000; }
@media (min-width: 769px) { #gFooter .wrap { padding: 16px; } }
#gFooter .mod_inner01 { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; }
#gFooter .sns { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }
#gFooter .sns .item { line-height: 0; margin-right: 20px; font-size: 20px; }
@media (min-width: 769px) { #gFooter .sns .item { margin-right: 30px; font-size: 30px; } }
#gFooter .sns .item a { color: #fff; transition: all .3s linear; }
#gFooter .sns .item a:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; }
#gFooter .sns .inTxt { display: inline-block; text-indent: -9999px; }
#gFooter .logo { width: 269px; }
#gFooter .list01 { margin: 1em 10px 2em; text-align: center; }
#gFooter .list01 .item { display: inline-block; margin: 0 1.5em; }
#gFooter .list01 .item a { font-size: 14px; text-decoration: none; }
@media (min-width: 769px) { #gFooter .list01 .item a { font-size: 16px; transition: all .3s linear; }  #gFooter .list01 .item a:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; } }
#gFooter .copy { display: block; margin-bottom: 50px; font-size: 12px; text-align: center; }
.pageTop { position: fixed; right: 16px; bottom: 50px; z-index: 99; font-size: 48px; transition: all .3s linear; }
.pageTop:hover { opacity: .2; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"; }
.btnGnav , .btnClose { position: fixed; top: 0; right: 0; z-index: 99; box-sizing: border-box; width: 63px; height: 63px; background: #97d4d9; transition: all .5s linear; }
.btnGnav .line , .btnClose .line { position: absolute; left: 16px; width: 32px; height: 2px; background: #fff; content: ""; transition: all .2s linear; }
.btnGnav .line:nth-child(1) , .btnClose .line:nth-child(1) { top: 16px; }
.btnGnav .line:nth-child(2) , .btnClose .line:nth-child(2) { top: 24px; }
.btnGnav .line:nth-child(3) , .btnClose .line:nth-child(3) { top: 32px; }
.btnGnav .txt , .btnClose .txt { position: absolute; top: 35px; left: 17px; color: #fff; font-family: "Roboto", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; font-size: 10px; text-align: center; letter-spacing: .1em; }
.btnGnav.is_open { opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
.btnClose { position: absolute; background: #fff; }
.btnClose.is_open { opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
.btnClose .line { width: 32px; height: 2px; background-color: #97d4d9; }
.btnClose .line:nth-child(1) { top: 24px; transform: rotate(45deg); }
.btnClose .line:nth-child(2) { top: 24px; transform: rotate(-45deg); }
.btnClose .txt { color: #97d4d9; }
/* more_btn
-------------------------------------- */
.more_btn { width: 100%; }
.more_btn .fas { line-height: 60px; font-size: 30px; font-size: 3rem; }
/* module
-------------------------------------- */
.mod_inner01 { max-width: 800px; margin: 0 auto; padding-right: 5%; padding-left: 5%; }
@media (min-width: 769px) { .mod_inner01 { padding-right: 60px; padding-left: 60px; } }
.mod_inner02 { max-width: 1000px; margin: 0 auto; padding-right: 5%; padding-left: 5%; }
@media (min-width: 769px) { .mod_inner02 { padding-right: 20px; padding-left: 20px; } }
.mod_tit01 { line-height: 1.33333; font-family: "Roboto", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN","メイリオ", sans-serif; font-weight: bold; font-size: 22px; font-size: 6.875vw; text-align: center; }
@media (min-width: 769px) { .mod_tit01 { font-size: 36px; } }
.mod_tit01:after { display: block; width: 100px; height: 4px; margin: 10px auto 30px; background: #97d4d9; content: ""; }
@media (min-width: 769px) { .mod_tit01:after { width: 100px; height: 5px; margin: 7px auto 50px; } }
.mod_tit01txt { text-align: center; } 
.mod_tit02 { margin-bottom: .3em; font-size: 22px; }
.mod_tit02:before { display: inline-block; width: .8em; height: 6px; margin-right: .15em; background: #97d4d9; vertical-align: middle; content: ""; }
.mod_btn01 a , .mod_btn01 input { display: block; width: 90%; height: 48px; line-height: 48px; margin: 0 auto 30px; border: 1px solid #535353; font-size: 15px; font-size: 4.6875vw; text-decoration: none; text-align: center; transition: all .3s linear; }
@media (min-width: 769px) { .mod_btn01 a , .mod_btn01 input { width: 480px; height: 60px; line-height: 60px; margin: 0 auto 0; font-size: 20px; } }
@media (min-width: 769px) { .mod_btn01 a:hover , .mod_btn01 input:hover { opacity: .4; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; } }
.mod_btn02 a { display: -ms-flexbox; display: flex; width: 100%; height: 80px; line-height: 1.53333; border: 3px solid #97d4d9; color: #97d4d9; font-weight: bold; font-size: 20px; text-decoration: none; text-align: center; transition: all .3s linear; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; }
.mod_btn02 a:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; }
.mod_btn02.is_key a { background: #97d4d9; color: #fff; }
.bnr1clm { max-width: 500px; margin: 20px auto; padding: 0 10px; }
@media (min-width: 769px) { .bnr1clm { margin: 50px auto; } }
.breadcrumb { padding: 10px 0; font-size: 12px; }
@media (min-width: 769px) { .breadcrumb { font-size: 14px; } }