@charset "euc-jp";

#page-wrapper {
  position: relative;
}
#wrapper {
  padding-top: 68px !important;
}
/* アンカーリンクでジャンプした際に固定ヘッダーの下に隠れないよう余白を確保 */
html {
  scroll-padding-top: 68px;
}
@media (max-width: 900px) {
  #wrapper {
    padding-top: 77px !important;
  }
  html {
    scroll-padding-top: 77px;
  }
}
.container {
  max-width: 900px;
}

textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
  border: 1px solid #ccc;
  background-color: #fff;
}

textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  outline: 0;
  outline: thin dotted \9;
  border-color: rgba(82, 168, 236, 0.8);
}


.muted {
  color: #999;
}

body {
  color: #464e54;
  background-color: #fff;
  background-image: url(https://img.shop-pro.jp/tmpl_img/69/bg.gif);
}

a {
  color: #464e54;
}
  a:hover {
    color: #5e5e5e;
  }

a.muted:hover,
a.muted:focus {
  color: #808080;
}

.text-warning {
  color: #c09853;
}

a.text-warning:hover,
a.text-warning:focus {
  color: #a47e3c;
}

.text-error {
  color: #b94a48;
}

a.text-error:hover,
a.text-error:focus {
  color: #953b39;
}

.text-info {
  color: #3a87ad;
}

a.text-info:hover,
a.text-info:focus {
  color: #2d6987;
}

.text-success {
  color: #468847;
}

a.text-success:hover,
a.text-success:focus {
  color: #356635;
}

.btn-01 {
  border: 1px solid #4d4d4d;
  background-color: #4d4d4d;
  color: #fff;
  *background-color: #4d4d4d;
}

h2 {
  margin: 30px 0;
  text-align: center;
}
  .ttl-h2 {
    position: relative;
  }
  .ttl-h2:before {
    position: absolute;
    top: 50%;
    z-index: -1;
    display: block;
    width: 100%;
    height: 1px;
    background-color: #ccc;
    content: "";
  }
  .ttl-h2 span {
    padding: 0 2em;
    background-color: #fff;
  }

.btn-01 {
  border: 1px solid #4d4d4d;
  background-color: #4d4d4d;
  color: #fff;
  *background-color: #4d4d4d;
}

.btn-01:hover,
.btn-01:focus,
.btn-01:active,
.btn-01.active,
.btn-01.disabled,
.btn-01[disabled] {
  border: 1px solid #5e5e5e;
  background-color: #5e5e5e;
  color: #fff;
  *background-color: #5e5e5e;
}

.btn-02 {
  border: 1px solid #d8d8d8;
  background-color: #d8d8d8;
  color: #4d4d4d;
  *background-color: #d8d8d8;
}

.btn-02:hover,
.btn-02:focus,
.btn-02:active,
.btn-02.active,
.btn-02.disabled,
.btn-02[disabled] {
  border: 1px solid #d8d8d8;
  background-color: #d8d8d8;
  color: #4d4d4d;
  *background-color: #d8d8d8;
}
.product-order-num input {
  border-color: #d8d8d8;
}

/*
 * web font
 */
.google-font {
  text-transform: uppercase;
  letter-spacing: 2px;
  font-weight: 400;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
  .google-font.fwb {
    font-weight: 700;
  }

/*
 * icon
 */
.icon-b,
.icon-w {
  display: inline-block;
  width: 16px;
  height: 16px;
  *display: inline;
  *zoom: 1;
}
.icon-b {
  background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon16_b.png);
}
.icon-w {
  background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon16_w.png);
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz--device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  .icon-b,
  .icon-w {
    -webkit-background-size: 368px 320px;
    background-size: 368px 320px;
  }
  .icon-lg-b,
  .icon-lg-w {
    -webkit-background-size: 552px 480px;
    background-size: 552px 480px;
  }
  .icon-b {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon16_2x_b.png);
  }
  .icon-w {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon16_2x_w.png);
  }
  .icon-lg-b {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_2x_b.png);
  }
  .icon-lg-w {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_2x_w.png);
  }
}
.icon-cart { background-position: -176px -64px; }
.icon-user { background-position: -208px -0px; }
.icon-adduser { background-position: -240px -0px; }
.icon-logout { background-position: -32px -80px; }
.icon-login { background-position: -48px -80px; }
/* icon large */
.icon-twitter { background-position: -144px -264px; }
.icon-facebook { background-position: -192px -264px; }
.icon-instagram { background-position: -168px -288px; }
.icon-youtube { background-position: -191px -240px; }
.icon-mail { background-position: -96px -0px; }
.icon-lg-w.icon-cart { background-position: -264px -96px; }
.icon-lg-w.icon-chevron_up { background-position: -0px -216px; }
.icon-lg-w.icon-chevron_down { background-position: -528px -192px; }

.icon-lg-b,
.icon-lg-w {
  width: 24px;
  height: 24px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.icon-lg-b {
  background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_b.png);
}
.icon-lg-w {
  background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_w.png);
}


/*
 * header
 */
#header-wrapper {
  margin-bottom: 4em;
}
.header-link a {
  color: #4d4d4d;
}
.header-link a:hover {
  text-decoration: none;
  opacity: 0.7;
}

/* header-line-nav */
.header-line-nav li {
  padding-top: 5px;
}
  .header-line-nav a {
    cursor: pointer;
  }
  .header-line-nav span {
    float: left;
    padding-left: 4px;
    font-size: 12px;
    line-height: 1.5em;
  }
  .header-line-nav .icon-b,
  .header-line-nav .icon-w {
    float: left;
  }
.btn-viewcart {
  padding: 1px 15px 0 13px;
  -webkit-border-radius: 3em;
  -moz-border-radius: 3em;
  border-radius: 3em;
}

/* header logo */
.shop-name {
  clear: both;
  margin: 2em 0;
  text-align: center;
  font-size: 24px;
}
.shop-description {
  font-size: 12px;
  font-weight: normal;
  color: #4d4d4d;
}

/* header global nav */
#header-global-nav {
  margin: 1.8em 0;
  text-align: center;
  font-size: 16px;
}
  #header-global-nav li {
    margin: 0 1em;
  }

/* incart delivery */
.incart-delivery {
  float: right;
}
  .incart-delivery ul {
    margin: 0;
    padding: 10px 12px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background-color: #d9edf7;
    color: #31708f;
    list-style: none;
    font-size: 12px;
  }

/* slider */
.slider {
  margin-top: 2em;
  padding: 0 .1%;
  position: relative;
}
.bx-viewport {
  -moz-box-shadow: none !important;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  left: 0 !important;
  border: none !important;
}
#slider div {
  width: 100% !important;
}

/*
 * product list
 */

.prd-lst-unit {
  margin-bottom: 60px;
  padding: 0 30px;
  text-align: center;
}
.prd-lst-img {
  display: block;
  margin: 0 auto 1em;
}
.prd-lst-span {
  display: block;
  margin: .3em 0;
  font-size: 12px;
}
.prd-lst-name {
  font-size: 14px;
}
.prd-lst-price {
  color: #abaaaa;
}
.prd-lst-regular {
  text-decoration: line-through;
}
.prd-lst-discount {
  color: #b81717;
}

/* product list sort */
.prd-lst-sort {
  margin: 3em 0;
  color: #888;
  text-align: center;
  font-size: 12px;
}

/* prduct list pager */
.prd-lst-pager {
  text-align: center;
}
.prd-lst-pos b {
  font-size: 18px;
  font-weight: normal;
}

/*
 * product
 */
.product-image-thumb img {
  border: 2px solid #fff;
}
.thumb-active img {
  border: 2px solid #4d4d4d;
}


/*
 * footer
 */

#footer-wrapper {
  padding-top: 3em;
}
.footer-primary {
  border-right: 1px solid #e7e7e7;
}

/* footer nav */
.footer-nav {
  list-style: none;
  margin: 0;
}
  .footer-nav li {
    margin: .8em 0;
  }
.footer-primary {
  padding: .3em 0;
}
  .footer-primary li {
    margin-right: 25px;
    margin-left: 5px;
  }
  .footer-primary a {
    color: #4d4d4d;
  }
  .freepage-nav {
    margin-right: 10%;
    margin-bottom: 1.5em;
    padding-bottom: .8em;
    border-bottom: 1px solid #e7e7e7;
  }
.footer-secondary {
  padding: .3em 0;
  font-size: 12px;
}
  .footer-secondary li {
    margin-left: 10%;
  }
  .footer-secondary li:before {
    margin-right: 4px;
    color: #abaaaa;
    content: "-";
  }
  .footer-secondary a {
    color: #abaaaa;
  }

/* social icon */
.social-nav {
  text-align: center;
  margin: 2em 0;
}

/* copyright */
.copyright {
  margin: 3em 0 2em;
  color: #abaaaa;
  text-align: center;
  font-size: 12px;
}

/* pagetop */
#pagetop {
  position: fixed;
  right: 20px;
  bottom: 30px;
  display: none;
  z-index: 9999;
}
.btn-pagetop {
  display: block;
  padding: 0;
  background: none;
  border: none;
}
.btn-pagetop img {
  width: 80px;
  height: auto;
  filter: drop-shadow(0 4px 8px rgba(0,0,0,0.15));
  animation: putto-float 3s ease-in-out infinite;
}
@keyframes putto-float {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-8px); }
}


@media (max-width: 980px) {
  #base_gmoWrapp,
  #gmo_CMSPbar {
    overflow: hidden;
    min-width: 100% !important;
    width: 100% !important;
  }
  .container {
    max-width: 900px;
    width: 90%;
  }
}
@media (max-width: 768px) {
  .container {
    width: auto;
  }
  .header-dropdown {
    position: absolute;
    top: 0;
    z-index: 200;
    width: 100%;
    border-bottom: 1px solid #dbdbdb;
    background-color: #fff;
  }
  .header-dropdown.affix {
    position: fixed;
  }
    .header-dropdown .dropdown-nav li {
      border-bottom: 1px solid #dbdbdb;
      text-align: center;
    }
    .header-dropdown .dropdown-nav a {
      display: block;
      padding: 10px;
    }
    .header-dropdown .btn-dropdown {
      padding-left: 34px;
      font-size: 16px;
      line-height: 1.6;
    }
    .header-dropdown .btn-dropdown-close {
      opacity: 0.4;
    }
  .view-cart {
    position: static;
  }
    .view-cart a {
      background-color: #4d4d4d;
      color: #fff;
    }
    .view-cart span {
      display: block;
      width: 130px;
      margin: 0 auto;
    }
    .view-cart .icon-w {
      float: left;
      margin-top: -2px;
    }
  .incart-delivery {
    padding-top: 20px;
    float: none;
  }
  .prd-lst-sort {
    font-size: 14px;
  }
  .footer-primary,
  .footer-secondary {
    padding: 0;
    border: none;
  }
  .footer-nav li {
    margin: 0;
    font-size: 14px;
    border-top: 1px solid #e7e7e7;
  }
    .footer-nav li:first-child {
      border-top: none;
    }
  .footer-nav li:before {
    display: none;
  }
  .footer-nav a {
    display: block;
    padding: 1em;
    color: #4d4d4d;
  }
  .footer-nav a:hover {
    text-decoration: none;
  }
  .icon-b,
  .icon-w {
    display: inline-block;
    width: 24px;
    height: 24px;
    *display: inline;
    *zoom: 1;
  }
  .icon-b {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_b.png);
  }
  .icon-w {
    background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_w.png);
  }
  .icon-cart { background-position: -264px -96px; }
  .icon-list { background-position: -288px -144px; }
  .icon-chevron_thin_up { background-position: -192px -216px; }
  @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min--moz--device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
    .icon-b,
    .icon-lg-b {
      background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_2x_b.png);
    }
    .icon-w,
    .icon-lg-w {
      background-image: url(https://img.shop-pro.jp/tmpl_img/69/icon24_2x_w.png);
    }
    .icon-b,
    .icon-w {
      -webkit-background-size: 552px 480px;
      background-size: 552px 480px;
    }
  }
}
@media (max-width: 480px) {
  .ttl-h2 span {
    padding: 0 10px;
    font-size: 14px;
  }
  .prd-lst-unit {
    margin-bottom: 30px;
    height: auto !important;
  }
}

/* IE用 */
.ie_wrapper.container {
  width: 900px;
  overflow: auto;
}


/* ============================================================
   ここから：ヘッダー・フッター・pagetop（全ページ共通）
============================================================ */

/* ── RESET & BASE ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  background:#fff;color:#1a1a1a;
  overflow-x:hidden;
}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}

/* ── COLORS ── */
:root{
  --org:#e07832;
  --org-lt:#f5ede0;
  --cream:#faf8f4;
  --ink:#1a1a1a;
  --ink-lt:#5a4a3a;
  --rule:rgba(26,26,26,0.1);
  --white:#fff;
}

/* 固定ヘッダー分のスペースを確保 */
#header-wrapper {
  margin-bottom: 0;
}

/* ── HEADER（初期状態＝クリーム背景・濃い文字・ロゴ表示。トップページのみトップCSSで上書き） ── */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 400;
  display: flex;
  flex-direction: column;
  background: #fcf7e8;
  transition: background 0.5s ease;
}

.hd-top-bar {
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 32px;
  pointer-events: all;
  position: relative;
  z-index: 201;
}

.hd-top-bar .inline {
  display: flex;
  gap: 16px;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.hd-top-bar a,
.hd-top-bar span {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.2em;
  color: #D16B3A;
  transition: color 0.4s ease;
  text-decoration: none;
}

.hd-top-bar .btn-viewcart {
  background: transparent;
  border: 1px solid #D16B3A;
  border-radius: 0;
  color: #D16B3A;
  padding: 4px 14px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 11px;
  letter-spacing: 0.15em;
  transition: all 0.4s ease;
}

.hd-bottom-bar {
  height: 77px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 32px;
  pointer-events: all;
}

.hd-logo {
  display: flex;
  align-items: center;
  height: 100%;
  opacity: 1;
  pointer-events: all;
  transition: opacity 0.5s ease;
}

.hd-logo img {
  height: calc(77px * 0.8);
  width: auto;
  display: block;
}

/* PC表示：上下の余白を揃えてオレンジバーの高さを縮小
   （ページ上端→MY ACCOUNT文字上端の距離 ＝ お問い合わせ文字下端→オレンジバー下端の距離、いずれも12px） */
@media (min-width: 901px) {
  .site-header {
    height: 68px;
    justify-content: center;
  }
  .hd-top-bar {
    height: auto;
    padding: 15px 32px 8px;
  }
  .hd-bottom-bar {
    height: auto;
    padding: 8px 32px 15px;
    justify-content: flex-end;
  }
  .hd-logo {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 32px;
    height: auto;
    display: flex;
    align-items: center;
    z-index: 202;
  }
  .hd-logo img {
    height: 50px !important;
    width: auto;
  }
}

.hd-ham {
  display: none;
  flex-direction: column;
  gap: 5px;
  cursor: pointer;
  pointer-events: all;
  position: fixed;
  top: 30px;
  right: 20px;
  z-index: 600;
}
.hd-ham span{display:block;width:22px;height:1.5px;background:var(--ink);transition:background 0.4s ease;}

.hd-nav {
  display: flex;
  gap: 28px;
  align-items: center;
}
.hd-nav a {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #D16B3A;
  transition: color 0.4s ease;
  text-decoration: none;
}
.hd-nav a:hover { color: rgba(209,107,58,0.7); }
.hd-nav a:last-child { margin-right: -0.2em; }

/* ── スクロール後の状態（トップページで初期＝透過の時に使用。他ページでは初期状態と同じなので見た目の変化なし） ── */
.site-header.scrolled {
  background: #fcf7e8;
}
.site-header.scrolled .hd-top-bar a,
.site-header.scrolled .hd-top-bar span,
.site-header.scrolled .hd-nav a {
  color: #D16B3A;
}
.site-header.scrolled .hd-top-bar .btn-viewcart {
  border-color: #D16B3A;
  color: #D16B3A;
}
.site-header.scrolled .hd-logo {
  opacity: 1;
  pointer-events: all;
}
.site-header.scrolled .hd-logo img {
  filter: none;
}
.site-header.scrolled .hd-ham span {
  background: var(--ink);
}

@media (max-width: 900px) {
  .hd-nav { display: none; }
  .hd-ham { display: flex; }
  .hd-top-bar { display: none !important; }
  .hd-bottom-bar {
    justify-content: center;
    position: relative;
  }
}

/* ── MOBILE MENU ── */
.mobile-menu{
  position:fixed;top:0;right:0;
  width:72vw;max-width:280px;height:100%;
  background:rgba(252,247,232,0.9);z-index:500;
  display:flex;flex-direction:column;
  align-items:flex-start;justify-content:center;
  padding:16px 36px 56px;gap:16px;
  overflow-y:auto;
  transform:translateX(100%);
  transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);
  pointer-events:none;
}
.mobile-menu.open{transform:translateX(0);pointer-events:all;}

.mm-logo {
  margin-bottom: 24px;
}
.mm-logo img{
  height:109px;
  width:auto;
}

.mobile-menu a{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;font-size:15px;
  letter-spacing:0.2em;text-transform:uppercase;
  color:#D16B3A;transition:color 0.3s;
}
.mobile-menu a:hover{color:rgba(209,107,58,0.7);}

.mm-divider{
  width:100%;
  height:1px;
  background:rgba(209,107,58,0.25);
}

.mm-sns{
  display:flex;
  align-items:center;
  gap:16px;
}
.mm-sns a{
  display:flex;
  align-items:center;
  justify-content:center;
}

.menu-overlay{
  position:fixed;inset:0;background:rgba(26,26,26,0.45);
  z-index:450;opacity:0;pointer-events:none;
  transition:opacity 0.4s;
}
.menu-overlay.open{opacity:1;pointer-events:all;}
.hd-ham.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hd-ham.open span:nth-child(2){opacity:0;}
.hd-ham.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}

/* ── FOOTER BAND ── */
.footer-band{
  background:#fff;
  padding:16px 0;
  min-height:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-top:1px solid var(--rule);
}
.footer-band p{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-style:normal;font-size:13px;
  letter-spacing:0.4em;color:#D16B3A;
  text-transform:uppercase;
}

/* ── FOOTER ── */
footer{
  background:#fcf7e8;
  padding:56px 40px 32px;
  text-align:center;
}
.footer-logo{margin-bottom:24px;}
.footer-logo img{
  height:80px;width:auto;
  margin:0 auto;
}
.footer-sns{
  display:flex;gap:16px;justify-content:center;
  margin-bottom:32px;
}
.footer-sns a{
  display:flex;align-items:center;justify-content:center;
  transition:opacity 0.3s;
}
.footer-sns a:hover{opacity:0.75;}
.footer-nav{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:8px 24px;margin-bottom:28px;
}
.footer-nav a{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;font-size:10px;
  letter-spacing:0.15em;
  color:rgba(0,0,0,0.75);
  transition:color 0.3s;
}
.footer-nav a:hover{color:#000;}
.footer-copy{
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;font-size:10px;
  letter-spacing:0.15em;color:rgba(0,0,0,0.5);
  border-top:1px solid rgba(0,0,0,0.15);
  padding-top:20px;
}

/* ── pagetop（せとぷキャラ トップへ戻る） ── */
#pagetop {
  position: fixed !important;
  right: 20px !important;
  bottom: 30px !important;
  z-index: 9999 !important;
  display: block !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
#pagetop img {
  width: 80px;
  height: auto;
  filter: drop-shadow(0 4px 8px rgba(0,0,0,0.15));
  animation: putto-float 3s ease-in-out infinite;
}
@keyframes putto-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@media (max-width: 900px) {
  #pagetop {
    right: 12px !important;
    bottom: 20px !important;
  }
  #pagetop img {
    width: 60px;
  }
}

/* 初期：非表示／スクロール後：表示 */
body.scrolled #pagetop {
  opacity: 1 !important;
  pointer-events: all !important;
}