@charset "UTF-8";
/*==========================================================
 02_base
==========================================================*/
/* 02_base
================================================ */
html { overflow: auto; }
body { min-width: 320px; overflow: hidden; color: #333; font-size: 1.4rem; line-height: 1.36; font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont,  "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif; letter-spacing: 0.08em; }
@media all and (min-width: 600px) { body { min-width: 1100px; line-height: 1.79; line-height: calc(50/28); } }
img { max-width: 100%; }
a { transition: all 0.3s ease; text-decoration: none; }
a.opacity:hover { opacity: .7; }
a.underline:hover { text-decoration: underline; }
a:hover { color: #e96400; }
strong, em { font-weight: bold; }
/* .is_font_sawarabimincho { font-family: "Sawarabi Mincho",sans-serif; } */
/* pc <--> sp切り替え
-------------------------------------- */
#mediaQuery { display: none; font-family: 'sp'; }
@media all and (min-width: 600px) { #mediaQuery { font-family: 'pc'; } }
@media all and (min-width: 600px) { .viewSp { display: none; } }
@media all and (max-width: 599px) { .viewPc { display: none; } }
#overlay { display: none; position: fixed; z-index: 10; top: 0; bottom: 0; right: 0; left: 8px; background: white; }
/* clearfix
-------------------------------------- */
.cf:after { display: block; content: ''; clear: both; }
/* layout
-------------------------------------- */
#wrapper { position: relative; }
.roboto { font-family: "Roboto"; }
/*==========================================================
 03_layout
==========================================================*/
/* #gHeader
================================================ */
#gHeader { position: relative; background: #fff; z-index: 100; }
#gHeader .hdBox { text-align: left; }
#gHeader .hdBox a { color: #333; }
#gHeader .hdBox .txt01 { display: block; color: #909090; }
#gHeader .hdBox .logo img, #gHeader .hdBox .logo .txt02 { display: inline-block; vertical-align: middle; }
#gHeader .hdBox .logo .txt02 { font-weight: 800; }
#gHeader .hdBox .logo .txt02 span { color: #255e3a; font-weight: 800; }
#gHeader .hdBox .txt03 { display: block; color: #909090; }
@media all and (max-width: 599px) { #gHeader .hdBox { padding: 7px 15px; line-height: 1; }  #gHeader .hdBox .txt01 { margin-left: -50%; width: 200%; font-size: 1.3rem; -webkit-transform: scale(0.5); -ms-transform: scale(0.5); transform: scale(0.5); }  #gHeader .hdBox .logo { margin: 0 0 5px 0; }  #gHeader .hdBox .logo img { width: 20px; }  #gHeader .hdBox .logo .txt02 { padding-left: 10px; font-size: 1.15rem; }  #gHeader .hdBox .txt03 { margin-left: -50%; width: 200%; font-size: 1.1rem; -webkit-transform: scale(0.5); -ms-transform: scale(0.5); transform: scale(0.5); } }
@media all and (min-width: 600px) { #gHeader .hdBox .txt01, #gHeader .hdBox .txt03 { font-size: 1.1rem; }  #gHeader .hdBox .logo { margin: 0 0 5px 0; }  #gHeader .hdBox .logo .txt02 { padding-left: 10px; font-size: 2.3rem; } }
@media all and (min-width: 600px) { #hdInfo { padding: 20px 0; display: table; margin: auto; width: 1100px; }  #hdInfo .cv { width: 240px; }  #hdInfo .hdBox, #hdInfo .cv, #hdInfo .btnWrap01, #hdInfo .btnWrap02 { display: table-cell; vertical-align: top; }  #hdInfo .tel { width: 215px; }  #hdInfo .tel .txt01 { margin-bottom: 10px; font-size: 1.1rem; font-weight: 700; text-align: center; background: #e8efeb; }  #hdInfo .tel .txt02 { font-size: 2.8rem; font-weight: 700; font-family: Roboto; color: #195e3b; line-height: 1; letter-spacing: 0.01em; }  #hdInfo .tel .txt02 span { font-size: 1.5rem; font-weight: 700; line-height: 1.3; }  #hdInfo .tel .txt03 { font-size: 1.3rem; }  #hdInfo .btn01, #hdInfo .btn02 { margin: 0; box-sizing: border-box; }  #hdInfo .btn01 a, #hdInfo .btn02 a { display: block; padding: 0; height: 80px; font-size: 1.5rem; }  #hdInfo .btn01 img { padding: 15px 0 12px; }  #hdInfo .btn02 img { padding: 5px 0 0; } }
/* #gNav
================================================ */
/* #mainVisual TOPページ
================================================ */
#mainVisual { position: relative; }
#mainVisual .txt01, #mainVisual .txtStrong01 { display: inline-block; vertical-align: middle; }
#mainVisual .txt01 { font-weight: 800; }
#mainVisual .txtStrong01 { line-height: 1; color: #fff; background: #195e3b; }
#mainVisual .txtStrong02 { font-weight: 800; color: #195e3b; }
#mainVisual .txtSmall { font-weight: 800; }
#mainVisual .txt03 { font-weight: 600; }
#mainVisual .txtStrong03 { position: relative; display: inline-block; font-weight: 900; color: #cc3f0c; z-index: 1; }
#mainVisual .txtStrong03:after { position: absolute; display: block; content: ""; bottom: 3px; left: 0; width: 100%; height: 7px; background: #f1e62a; z-index: -1; }
#mainVisual .list01 { display: table; }
#mainVisual .list01 li { display: table-cell; vertical-align: middle; font-weight: 800; text-align: center; color: #9c7d00; }
@media all and (max-width: 599px) { #mainVisual .bg01 { padding: 30px 15px; height: 240px; background: url(../img/home/bg_mv01_sp.png) bottom center no-repeat; background-size: cover; box-sizing: border-box; }  #mainVisual .txt01, #mainVisual .txtStrong01 { margin: 0 5px 0 0; }  #mainVisual .txt01 { padding: 0 0 0 5px; font-size: 1.5rem; }  #mainVisual .txtStrong01 { padding: 7px 10px; font-size: 1.5rem; font-weight: 500; }  #mainVisual .txt02 { margin-top: 10px; font-size: 2.4rem; }  #mainVisual .txtStrong02 { font-size: 3.8rem; }  #mainVisual .txtSmall { font-size: 3.3rem; }  #mainVisual .txt03 { padding: 25px 0 15px; font-size: 1.8rem; text-align: center; line-height: 1.75; }  #mainVisual .txtStrong03 { font-size: 2.4rem; }  #mainVisual .list01 { margin: 0 auto 30px; border-spacing: 10px 0; }  #mainVisual .list01 li { width: 107px; height: 109px; font-size: 1.35rem; background: url(../img/home/bg_mv02_sp.png) center center no-repeat; background-size: contain; } }
@media all and (min-width: 600px) { #mainVisual { height: 648px; background: url(../img/home/bg_mv01_pc.png) top center no-repeat; }  #mainVisual .wrap { margin: auto; padding-top: 50px; width: 1100px; height: 648px; background: url(../img/home/img_mv01_pc.png) right bottom no-repeat; box-sizing: border-box; }  #mainVisual .txt01, #mainVisual .txtStrong01 { margin: 0 5px 0 0; }  #mainVisual .txt01 { font-size: 2.5rem; }  #mainVisual .txtStrong01 { width: 155px; padding: 13px 0 15px 0; font-size: 2.5rem; font-weight: 500; text-align: center; }  #mainVisual .txt02 { display: table; margin-top: 0px; padding-bottom: 20px; font-size: 4.5rem; line-height: 1.5; border-bottom: 1px solid #bccec9; }  #mainVisual .txtStrong02 { font-size: 6rem; font-weight: 900; line-height: 1.4; letter-spacing: 0.05em; }  #mainVisual .txtSmall { font-size: 5.5rem; }  #mainVisual .txt03 { padding: 20px 0 15px; font-size: 2rem; line-height: 2; }  #mainVisual .txtStrong03 { font-size: 3rem; line-height: 1.4; }  #mainVisual .list01 { margin: 15px 0 0 -10px; border-spacing: 10px 0; }  #mainVisual .list01 li { width: 196px; height: 197px; font-size: 2.2rem; line-height: 1.5; background: url(../img/home/bg_mv02_pc.png) center center no-repeat; } }
/* #breadcrumb
================================================ */
/* #sidebar
================================================ */
/* .pageTop
================================================ */
@media all and (max-width: 599px) { .pageTop a { position: relative; display: block; width: 100%; height: 40px; background: #666; box-sizing: border-box; }  .pageTop a:after { position: absolute; content: ""; top: 15px; left: calc(50% - 10px); -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); width: 10px; height: 10px; border-left: 2px solid #fff; border-top: 2px solid #fff; } }
@media all and (min-width: 600px) { .pageTop { display: none; position: fixed; right: 20px; bottom: 20px; z-index: 1001; }  .pageTop a { display: block; padding-top: 18px; width: 60px; height: 60px; background: #666; box-sizing: border-box; }  .pageTop a:after { position: absolute; content: ""; top: 25px; left: 22px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); width: 13px; height: 13px; border-left: 3px solid #fff; border-top: 3px solid #fff; }  .pageTop a:hover { color: #333; border: 1px solid #333; }  .pageTop a:hover:after { border-color: #333; } }
/* footer
================================================ */
@media all and (min-width: 600px) { footer .inner { margin: auto; padding: 60px 0; width: 1100px; } }
footer .txtWrap01 { display: table; text-align: left; }
@media all and (max-width: 599px) { footer .txtWrap01 { padding: 7px 15px; margin: 10px auto; } }
footer .txtWrap01 .txt01 { display: block; font-size: 1rem; color: #909090; }
@media all and (min-width: 600px) { footer .txtWrap01 .txt01 { font-size: 1.1rem; line-height: 1; margin: 0 0 4px; } }
footer .txtWrap01 .logo { margin: 5px 0; }
footer .txtWrap01 .logo img, footer .txtWrap01 .logo .txt02 { display: inline-block; vertical-align: middle; }
@media all and (max-width: 599px) { footer .txtWrap01 .logo img { width: 25px; } }
@media all and (min-width: 600px) { footer .txtWrap01 .logo { margin: 0 0 5px; } }
footer .txtWrap01 .logo .txt02 { padding-left: 10px; font-size: 1.5rem; font-weight: 800; }
@media all and (min-width: 600px) { footer .txtWrap01 .logo .txt02 { font-size: 2.3rem; } }
footer .txtWrap01 .logo .txt02 span { color: #255e3a; font-weight: 800; }
footer .txtWrap01 .txt03 { display: block; color: #909090; }
@media all and (max-width: 599px) { footer .txtWrap01 .txt03 { margin-left: -15px; font-size: 1rem; -webkit-transform: scale(0.9); -ms-transform: scale(0.9); transform: scale(0.9); } }
@media all and (min-width: 600px) { footer .txtWrap01 .txt03 { font-size: 1.1rem; } }
footer .copyright { padding: 0 0 90px 0; text-align: center; font-size: 1rem; }
@media all and (min-width: 600px) { footer .txtWrap01, footer .copyright { display: table-cell; width: 550px; padding: 0; margin: 0; vertical-align: bottom; }  footer .copyright { font-size: 1.2rem; text-align: right; } }
.fCv { position: fixed; bottom: 0; left: 0; width: 100%; height: 75px; background: #80b200; overflow: hidden; box-sizing: border-box; }
.fCv ul { display: table; width: 100%; }
.fCv li { display: table-cell; padding: 10px 10px 0 0; vertical-align: top; }
.fCv li:nth-child(2) { width: 25%; }
.fCv li:nth-child(3) { width: 25%; }
.fCv li:first-child { padding-left: 10px !important; }
.fCv .btn01 a, .fCv .btn02 a, .fCv .btn03 a { height: 55px; box-sizing: border-box; }
.fCv .btn01 .inner { padding: 10px; }
.fCv .btn01 .inner .txt01 span { font-size: 1rem; }
.fCv .btn01 .inner .txt02 { padding-left: 5px; font-size: 1.8rem; white-space: nowrap; }
.fCv .btn01 .inner .txt04 { text-indent: -40px; font-size: 1rem; text-align: center; -webkit-transform: scale(0.9); -ms-transform: scale(0.9); transform: scale(0.9); }
.fCv .btn02, .fCv .btn03 { margin: 0; }
.fCv .btn02 img, .fCv .btn03 img { display: block; margin: auto; }
.fCv .btn02 img { padding: 5px 0; width: 15px; }
.fCv .btn03 img { width: 20px; }
.fCv .btn02 a, .fCv .btn03 a { font-size: 1rem; line-height: 1.5; -webkit-transform: scale(0.9); -ms-transform: scale(0.9); transform: scale(0.9); }
@media all and (max-width: 599px) { .inner { padding: 0 15px; } }
.inner a { text-decoration: underline; }
.inner a:hover { text-decoration: none; }
/*==========================================================
 05_helper
==========================================================*/

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