@charset "UTF-8";
/*=============================================================
 02_base
=============================================================*/
/*!  02_base
================================================ */
/*!  fonts
------------------------------------------------ */
/* 一般的な書き方（Android 4.4以降対応） */
@font-face { font-family: 'Noto Serif Japanese'; font-style: normal; font-weight: 400; src: url("fonts/NotoSerifCJKjp-hinted/NotoSerifCJKjp-Regular.woff") format("woff"), url("fonts/NotoSerifCJKjp-hinted/NotoSerifCJKjp-Regular.ttf") format("truetype"); font-display: swap; }

@font-face { font-family: 'Noto Serif Japanese'; font-style: normal; font-weight: 700; src: url("fonts/NotoSerifJP/NotoSerifCJKjp-Bold.woff") format("woff"), url("fonts/NotoSerifJP/NotoSerifCJKjp-Bold.ttf") format("truetype"); font-display: swap; }
html { overflow: auto; }
@media all and (min-width: 600px) { html { overflow: auto; } }

body { min-width: 320px; font-family: -apple-system, BlinkMacSystemFont, "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; color: #684531; font-size: 1.3rem; line-height: 1.53; letter-spacing: .06em; position: relative; background-color: #f0edec; overflow: hidden; }
body::-webkit-scrollbar { display: none; }

@media all and (min-width: 600px) { body { min-width: 1100px; font-size: 1.6rem; overflow: hidden; } }

* { box-sizing: border-box; }

a { color: #333; text-decoration: underline; }

@media all and (min-width: 600px) { a:hover { text-decoration: none; } }

.alpha { display: block; text-decoration: none; }

@media all and (min-width: 600px) { .alpha { transition: all 0.3s ease; }
  .alpha:hover { opacity: .7; } }

.noto { font-family: 'Noto Serif Japanese', serif; }

@media all and (min-width: 600px) { .auto { width: 1100px; margin: 0 auto; } }

.indent { padding-left: 1em; text-indent: -1em; }

.indent.kome li:before { content: "※"; }

img { width: 100%; height: auto; }

@media all and (max-width: 599px) { .viewPc { display: none !important; } }

@media all and (min-width: 600px) { .viewSp { display: none !important; } }

.cf:after { content: ''; display: block; clear: both; }

#mediaQuery { display: none; font-family: 'sp'; }

@media all and (min-width: 600px) { #mediaQuery { font-family: 'pc'; } }

/*! layout
-------------------------------------- */
#wrapper { position: relative; }

#container { margin: 0 auto; }

/*=============================================================
 03_layout
=============================================================*/
/* #gHeader
================================================ */
#gHeader { position: absolute; width: 75px; top: 15px; left: 15px; z-index: 10; }

@media all and (min-width: 600px) { #gHeader { left: 28px; top: 27px; width: 180px; } }

/*!  #gFooter
================================================ */
#gFooter { background: #fff; }

#gFooter .ftInner { padding: 20px 0; }

#gFooter .ftInner .logo { width: 111px; margin: 0 auto; }

#gFooter .ftInner .txt { text-align: center; margin: 15px 0; }

#gFooter .ftInner .btn { width: 230px; margin: 0 auto; border-radius: 35px; border: 1px solid #d9d9d9; box-shadow: 0 2px 0 0 #d9d9d9; }

#gFooter .ftInner .btn a { line-height: 36px; font-size: 1.2rem; }

#gFooter .ftInner .btn a:before { right: 13px; }

#gFooter .copy { font-size: 1.2rem; text-align: center; color: #9c9c9c; line-height: 45px; background: #f6f2f1; }

@media screen and (min-width: 600px) { #gFooter .ftInner { padding: 45px 0 40px; }
  #gFooter .ftInner .logo { width: 220px; margin: 0; float: left; }
  #gFooter .ftInner .ftInfo { float: right; width: 730px; }
  #gFooter .ftInner .txt { text-align: left; margin: 0; float: left; padding: 2px 0 0 60px; color: #333; font-size: 1.5rem; line-height: 1.8; letter-spacing: .05rem; }
  #gFooter .ftInner .btn { width: 220px; margin: 0; border-radius: 35px; float: right; box-shadow: 0 4px 0 0 #d9d9d9; margin-top: -3px; }
  #gFooter .ftInner .btn a { line-height: 55px; font-size: 1.5rem; }
  #gFooter .ftInner .btn a:before { right: 20px; }
  #gFooter .copy { font-size: 1.3rem; line-height: 50px; } }

/* #pagetop
================================================ */
#pagetop { width: 59px; position: fixed; bottom: 20px; right: 20px; opacity: 0; transition: .3s; }

#pagetop.is_view { opacity: 1; }
