:root{
  --font-family:"Hiragino Sans","Noto Sans CJK JP","Noto Sans JP","BIZ UDPGothic",Meiryo,sans-serif;
  --serif:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  --text-color:#222;
  --muted-color:#555;
  --primary-color:#2f4b36;
  --header-color:#f4ead2;
  --header-text-color:#4b3a18;
  --base-color:#fff8e8;
  --accent-color:#b78925;
  --footer-color:#2f4b36;
  --footer-text-color:#fff;
  --inner-width:900px;
}
body{font-family:var(--font-family);color:var(--text-color)}
.wrapper{display:flex;flex-direction:column;min-height:100vh;overflow:hidden}
.wrapper main{flex-grow:1}
.l-inner{width:min(var(--inner-width),92%);margin:0 auto}
.note-serif-jp{font-family:var(--serif)}
.u-bold-600{font-weight:600}
#site-header{background:var(--header-color);border-bottom:1px solid rgba(183,137,37,.22)}
.header-inner{width:min(var(--inner-width),92%);margin:0 auto;padding:8px;display:flex;align-items:center;justify-content:space-between}
.header-inner--logo{width:60px}
.header-inner--logo img{display:block;width:60px;height:60px;border-radius:10px;object-fit:cover}
.gNav--list{display:flex;gap:0;margin:0;padding:0;list-style:none}
.gNav--list a{display:block;padding:6px 16px;color:var(--header-text-color);font-size:.875rem;font-weight:600}
.gNav--list a:hover,.gNav--list a.is-current{background:rgba(183,137,37,.14)}
#sideMenu-btn{display:none}
.hero-block{background:var(--base-color)}
.hero-block--h1{margin-bottom:0}
.hero-block--main-img{display:block;width:100%;height:auto}
.hero-block--legal{height:120px;background:linear-gradient(135deg,#fff8e8 0%,#f3e2bd 50%,#fffaf0 100%);border-bottom:1px solid rgba(183,137,37,.25)}
.p-top-container{padding-top:60px;padding-bottom:60px}
.p-top-container--title,.kiyaku--header-title,.policy--header-title,.toku--header-title{margin:0 0 60px;padding:.5rem 16px;text-align:center;border-bottom:3px solid var(--primary-color);font-family:var(--serif);font-weight:600}
.p-top-container--text-block{width:92%;max-width:700px;margin:1.5rem auto}
.p-top-container--text{line-height:1.8}
.p-top-intro,.p-top-detail{background:var(--base-color)}
.p-top-banner{width:100%;padding-bottom:40px}
.p-top-banner--img{width:100%;display:block;border-radius:2px}
.p-top--list{line-height:1.8}
.p-top--list li{margin-bottom:.45rem}
.kiyaku,.policy,.toku{margin-top:80px;margin-bottom:80px;font-size:.875rem;line-height:1.55;color:#444}
.kiyaku--header,.policy--header,.toku--header{margin-top:32px;margin-bottom:32px}
.kiyaku--read-text,.policy--read-text,.toku--read-text{margin:1rem 16px}
.kiyaku__list-container,.policy__list-container,.toku__list-container{list-style:none;padding-left:0}
.kiyaku__item,.policy__item,.toku__item{margin-bottom:1.6rem}
.kiyaku__title,.policy__title,.toku__title{font-size:1.25rem;color:#222}
.kiyaku__content,.policy__content,.toku__content{margin:1rem 16px}
.kiyaku__text,.policy__text,.toku__text{line-height:1.75}
.kiyaku__list,.policy__list,.toku__list{margin-bottom:1rem}
.kiyaku__list li,.policy__list li,.toku__list li{margin-bottom:.5rem;line-height:1.7}
.legal-jump{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:24px auto 0;padding:0;list-style:none}
.legal-jump a{display:block;border:1px solid var(--accent-color);color:#6c4d10;background:#fff;padding:10px 16px;font-size:.9rem}
.footer{background:var(--footer-color)}
.footer__copyright{text-align:center;width:92%;margin:0 auto;padding:.5rem 0;color:var(--footer-text-color)}
.footer__copyright small{font-size:.875rem}
@media screen and (max-width:1024px){
  .header-inner{justify-content:flex-start}
  .header-inner--logo{width:min(60px,15%)}
  .header-inner--navi{position:fixed;top:0;right:-120%;width:min(834px,100%);height:100vh;transition:all .6s;z-index:999;background:#4b3a18}
  .header-inner--navi.open{right:0;overflow:auto}
  .gNav--list{display:block;margin:10vh auto 5vh;padding:0}
  .gNav--list li{margin:.5rem 4%;font-size:.875rem}
  .gNav--list a{padding:6px 16px;color:#fff;border-bottom:1px dotted rgba(255,255,255,.75)}
  #sideMenu-btn{display:flex;justify-content:space-between;flex-flow:column nowrap;cursor:pointer;top:.5rem;right:4%;z-index:1000;position:fixed;background:rgba(255,255,255,.72);padding:5px}
  #sideMenu-btn span{height:4px;width:36px;background:var(--primary-color);border-radius:2px;margin:4px 0;transition:all .6s}
  #sideMenu-btn.active span:nth-child(1){transform:translateY(12px) rotate(45deg);background:#fff}
  #sideMenu-btn.active span:nth-child(2){opacity:0}
  #sideMenu-btn.active span:nth-child(3){transform:translateY(-12px) rotate(-45deg);background:#fff}
  .p-top-container{padding-top:5vh;padding-bottom:5vh}
  .p-top-container--title,.kiyaku--header-title,.policy--header-title,.toku--header-title{margin-bottom:5vh}
  .p-top-banner{padding-bottom:3.33vh}
  .kiyaku,.policy,.toku{margin-top:6.66vh;margin-bottom:6.66vh}
  .kiyaku--header,.policy--header,.toku--header{margin-top:2.66vh;margin-bottom:2.66vh}
}
@media screen and (max-width:599px){
  .p-top-container--text,.kiyaku,.policy,.toku{font-size:.875rem}
  .hero-block--legal{height:88px}
}
