@charset "UTF-8";
/*=============================================================
 02_base
=============================================================*/
/*!  02_base
================================================ */
html { overflow: auto; }
body { width: 100%; line-height: 2; overflow: hidden; color: #333; font-family: "メイリオ", Meiryo, Tahoma, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.4rem; letter-spacing: .06em; }
@media screen and (min-width: 600px) { body { font-size: 1.8rem; } }
a { color: inherit; text-decoration: none; }
img { width: 100%; height: auto; -webkit-backface-visibility: hidden; }
* { box-sizing: border-box; }
strong { color: #fa6e3d; font-weight: bold; }
sup { display: inline-block; position: relative; top: -.3em; left: -.1em; vertical-align: top; -webkit-transform: scale(.6, .6); transform: scale(.6, .6); }
/* form回りcssリセット
-------------------------------------------------*/
input , button , textarea , select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
/* layout
-------------------------------------------------*/
@media screen and (min-width: 600px) { .viewSp { display: none !important; } }
@media screen and (max-width: 599px) { .viewPc { display: none !important; } }
.alpha { -webkit-transition: .4s; transition: .4s; }
@media screen and (min-width: 600px) { .alpha:hover { opacity: .6; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }
.cf:after { display: block; clear: both; visibility: hidden; content: ""; }
.inview { opacity: 0; -webkit-transition: .5s .5s; transition: .5s .5s; -webkit-transform: translateY(20px); transform: translateY(20px); -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
.inview.action { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
@media screen and (min-width: 600px) { .inview { -webkit-transform: translateY(40px); transform: translateY(40px); } }
select::-ms-expand { display: none; }
/*=============================================================
 03_layout
=============================================================*/
/*!  #gHeader
================================================ */
#gHeader { position: relative; }
@media screen and (max-width: 599px) { #gHeader .inner { position: relative; padding-top: 22px; }  #gHeader .inner .pageTit { position: absolute; top: 0; left: 0; width: 100%; line-height: 1; padding: 6px 15px; background: #fff; font-size: 1rem; letter-spacing: 0; }  #gHeader .inner .logo { position: absolute; top: 38px; left: 23px; width: 142px; } }
@media screen and (min-width: 600px) { #gHeader .inner { position: absolute; top: 0; right: 0; left: 0; width: 1100px; margin: 0 auto; padding-top: 37px; }  #gHeader .inner .logo { position: relative; top: -10px; float: left; width: 238px; }  #gHeader .inner .hdInfo { float: left; width: 500px; }  #gHeader .inner .pageTit { float: left; line-height: 20px; margin-left: 20px; font-size: 1.4rem; } }
#gHeader .inner .list { float: right; }
#gHeader .inner .list .item { display: table; float: left; }
#gHeader .inner .list .item .ico { display: table-cell; line-height: 1; padding: 12px; background: #fff; color: #345c8d; font-weight: 800; font-size: 1.4rem; }
#gHeader .inner .list .item .txt { display: table-cell; line-height: 18px; padding: 0 10px; font-size: 1.3rem; vertical-align: middle; }
@media screen and (min-width: 600px) { #gHeader .mainVisual { background: url(../img/home/bg_mainimg01_pc.png) center top no-repeat; background-size: cover; }  #gHeader .mainVisual .wrapper { position: relative; width: 1100px; margin: 0 auto; padding-top: 860px; }  #gHeader .mainVisual .wrapper .tit { position: absolute; top: 0; bottom: 131px; left: 25px; height: 348px; margin: auto 0; }  #gHeader .mainVisual .wrapper .circle { position: absolute; right: -46px; bottom: 160px; } }
#gHeader .hdCv { padding: 16px 15px 15px; background: #345c8d; }
#gHeader .hdCv .guide { margin: 0 -5px 20px 0; }
#gHeader .hdCv .tel { padding: 15px; background: #fff; }
#gHeader .hdCv .tel .txt { display: block; width: 207px; margin: 0 auto 15px; }
#gHeader .hdCv .tel .phone { display: block; margin: 0 0 10px; }
#gHeader .hdCv .tel .btn:before { display: inline-block; width: 25px; height: 19px; margin-right: 10px; background: url(../img/home/ico_mail01.png) 0 0 no-repeat; background-size: contain; vertical-align: middle; content: ""; }
@media screen and (min-width: 600px) { #gHeader .hdCv { position: absolute; right: 0; bottom: -27px; left: 0; z-index: 10; width: 1100px; margin: 0 auto; padding: 0; border: 3px solid #345c8d; background: #fff; }  #gHeader .hdCv .guide { float: left; width: 587px; margin: 0; }  #gHeader .hdCv .tel { position: relative; float: right; width: 507px; padding: 21px 210px 21px 0; }  #gHeader .hdCv .tel .txt { width: 100%; }  #gHeader .hdCv .tel .phone { margin: 0; }  #gHeader .hdCv .tel .btn { position: absolute; top: 21px; right: 21px; width: 160px; line-height: 1.2; padding: 12px 0; font-size: 2rem; text-align: center; }  #gHeader .hdCv .tel .btn:before { display: block; width: 32px; height: 24px; margin: 0 auto 10px; margin-right: auto; content: ""; } }
@media screen and (max-width: 599px) { body:not(#home) #gHeader .inner .logo { position: static; width: 100%; padding: 22px 0 21px; background: #e1ebf7; text-align: center; }  body:not(#home) #gHeader .inner .logo img { display: block; width: 110px; margin: 0 auto; } }
@media screen and (min-width: 600px) { body:not(#home) #gHeader { padding-bottom: 23px; background: #e1ebf7; }  body:not(#home) #gHeader .inner { position: static; } }
@media screen and (min-width: 600px) { body:not(#home) #gHeader .inner .logo { width: 184px; } }
/*!  #hdCv_follow
================================================ */
.hdCv_follow { position: fixed; right: -100%; bottom: 20px; z-index: 100; width: 250px; border: 2px solid #345c8d; background: #fff; -webkit-transition: .5s; transition: .5s; }
.hdCv_follow .guide { padding: 0 0 15px 15px; background: #345c8d; }
.hdCv_follow .guide img { width: 227px; margin-top: -5px; }
.hdCv_follow .tel { padding: 15px 18px 18px; }
.hdCv_follow .tel .phone { margin: 14px 0 10px; }
.hdCv_follow .tel .btn span { position: relative; z-index: 5; font-weight: bold; }
.hdCv_follow .tel .btn:before { display: block; position: absolute; top: 0; right: 10px; bottom: 0; width: 45px; height: 34px; margin: auto; background: url(../img/common/ico_mail01.png) left center no-repeat; background-size: contain; content: ""; }
.hdCv_follow .tel .btn:hover:before { background: url(../img/common/ico_mail01_on.png) left center no-repeat; background-size: contain; }
.hdCv_follow.action { right: 20px; }
.hdCv_follow.close { right: -100%; }
/*!  #mainImg 下層ページ
================================================ */
/*!  #mainimg
================================================ */
#mainimg { background-color: #222; }
#mainimg .mainTxt { line-height: 1.4; margin: 0 auto; padding: 28px 15px 22px; font-weight: bold; font-size: 24px; text-align: center; text-shadow: 0 3px 1px #fff, 0 2px 1px #fff, 1px 2px 1px #fff, 2px 2px 1px #fff, 2px 1px 1px #fff, 2px 0 1px #fff, 3px 0 1px #fff, 2px -1px 1px #fff, 2px -2px 1px #fff, 2px -3px 1px #fff, 1px -3px 1px #fff, 0 -3px 1px #fff, -1px -3px 1px #fff, -2px -3px 1px #fff, -3px -3px 1px #fff, -3px -2px 1px #fff, -3px -1px 1px #fff, -3px 0 1px #fff, -3px 1px 1px #fff, -3px 2px 1px #fff, -2px 2px 1px #fff, -1px 2px 1px #fff; letter-spacing: .5em; }
/*!  #breadcrumb
================================================ */
#breadcrumb ol { width: 1000px; overflow: hidden; margin: 0 auto; padding: 17px 0 51px; }
#breadcrumb ol li { display: inline-block; float: left; line-height: 1.2; font-size: 12px; }
#breadcrumb ol li + li { padding-left: 6px; }
#breadcrumb ol li + li:before { color: #a3a2a2; content: ">"; }
#breadcrumb ol li a { display: inline-block; text-decoration: underline; }
/*!  #sidebar
================================================ */
#sidebar { background-color: #333; }
#sidebar .leadTit { padding: 10px 0 0; color: #fff; text-align: center; }
#sidebar .categories { padding: 15px; }
#sidebar .categories li + li { margin-top: 10px; }
#sidebar .categories a { display: block; padding: 4px 0 2px; color: #333; font-size: 12px; text-decoration: none; text-align: center; }
#sidebar .btns { padding: 10px; border: 2px solid #333; background-color: #fff; }
#sidebar .btns li + li { margin-top: 10px; }
/*!  #gFooter
================================================ */
#gFooter .pageTop { display: block; position: relative; width: 100%; height: 31px; background: #345c8d; }
#gFooter .pageTop:after { position: absolute; top: 0; right: 0; bottom: 0; left: 0; width: 0; height: 0; margin: auto; border-width: 0 6px 9px 6px; border-style: solid; border-color: transparent transparent #fff transparent; content: ""; }
#gFooter .logo { width: 180px; margin: 25px auto 20px; }
#gFooter .operation { margin: 0 15px 26px; }
#gFooter .operation dt { float: left; width: 40px; line-height: 1; padding: 11px 0 10px; border: 1px solid #345c8d; color: #345c8d; font-weight: 800; font-size: 1.1rem; text-align: center; }
#gFooter .operation dd { padding-left: 50px; font-size: 1.2rem; }
#gFooter .ftLink { margin: 0 15px 23px; }
#gFooter .ftLink .link { color: #345c8d; font-size: 1.3rem; text-decoration: underline; }
#gFooter .copyright { line-height: 1; padding: 14px 0; border-top: 1px solid #d9d9d9; color: #9ca4a6; font-size: 1.1rem; text-align: center; }
@media screen and (min-width: 600px) { #gFooter { padding: 26px 0 28px; }  #gFooter .inner { width: 1100px; margin: 0 auto; }  #gFooter .pageTop { float: right; width: 54px; height: 54px; margin-top: -22px; border-radius: 50%; }  #gFooter .pageTop:after { border-width: 0 7px 10px 7px; }  #gFooter .ftInfo { float: left; width: 650px; }  #gFooter .logo { float: left; width: 238px; margin: 0 20px 0 0; }  #gFooter .operation { float: left; margin: 0; }  #gFooter .operation dt { float: left; width: 50px; padding: 11px 0 11px; font-size: 1.4rem; }  #gFooter .operation dd { padding-left: 60px; font-size: 1.3rem; }  #gFooter .ftLink { float: right; width: 315px; margin: 0; }  #gFooter .ftLink .link { display: block; float: left; margin: 8px 12px 0 0; font-size: 1.3rem; }  #gFooter .copyright { width: 1100px; margin: 0 auto; padding: 0; border-top: none; font-size: 1.2rem; text-align: right; } }
@media screen and (min-width: 600px) { body:not(#home) #gFooter { padding-top: 55px; border-top: 1px solid #d9d9d9; } }
body:not(#home) #gFooter .logo { width: 184px; }
/*=============================================================
 05_helper
=============================================================*/
/*!  .js-name
================================================ */
/*=============================================================
 06_lib
=============================================================*/

/*# sourceMappingURL=maps/common.css.map */