.temp img{ width:100%; height:auto; display:block; }

  .temp .fs-c-documentArticle__heading{
    font-size:1.8em; font-weight:700; line-height:1.7;
    letter-spacing:calc((70 / 1000) * 1em);
    padding:0 1em .25em; margin:0 0 1.25em; box-sizing:border-box;
    background-color:inherit; color:#892342; text-align:left;
    border-bottom:1px solid #892342;
  }
  .temp .fs-c-documentArticle__heading span{ font-size:.8em; margin-left:0; }

  .temp .temp_flexbox{ display:flex; justify-content:space-between; gap:40px; margin-bottom:6em; }
  .temp .temp_info{ width:40%; }
  .temp .temp_info .info-table{ width:100%; margin-bottom:1em; border-collapse:collapse; }
  .temp .temp_info .info-table th,
  .temp .temp_info .info-table td{
    font-size:.875em; font-weight:normal; line-height:2;
    letter-spacing:calc((70 / 1000) * 1em); text-align:left; margin:0; padding:1.5em 0;
    border-bottom:1px solid #eee; vertical-align:top;
  }
  .temp .temp_info .info-table th{ font-weight:700; width:7em; }

  .temp .num-pc{ position:relative; text-align:center; width:80%; margin:auto; }
  .temp .num-pc .icon{
    position:absolute; left:0; top:50%; transform:translateY(-50%); margin:5px 0 0;
    padding:0;
  }
  .temp .material-icons{ font-size:40px; color:#ffa000; }
  .temp .temptel_text{ text-align:center; font-size:1.2em; }
  .temp a.telhref{ color:#000; font-size:2.0em; text-align:center; font-weight:700; display:inline-block; text-decoration:none; }
  .temp a.telhref:focus{ outline:2px solid #ffa000; outline-offset:4px; }

  /* gallery */
  .temp .gallery{ width:60%; margin:0 auto; }
  .temp .main-image{
    width:100%; overflow:hidden; position:relative;
    aspect-ratio: 4/3; /* 画像比率の目安。必要に応じて変更可 */
    background:#f5f5f5;
  }
  .temp .main-image img{
    object-fit:contain; width:100%; height:100%;
  }

  .temp .thumbnails{ display:flex; justify-content:center; margin-top:10px; gap:6px; }
  .temp .thumb{
    width:calc(25% - 4.5px); aspect-ratio:1/1; object-fit:cover; cursor:pointer;
    border:2px solid transparent; border-radius:4px;
  }
  .temp .thumb[aria-current="true"]{ border-color:#892342; }
  .temp .thumb:focus{ outline:2px solid #ffa000; outline-offset:2px; }

  .temp_text{ margin-bottom:6em; line-height:1.7; letter-spacing:calc((70 / 1000) * 1em); }

  .sp_only{ display:none; }

  @media (max-width:768px){
    .temp .temp_flexbox{ display:block; }
    .temp .gallery, .temp .temp_info{ width:100%; }
    .temp .fs-c-documentArticle__heading span{ margin-left:-15px; }
    .temp .num-pc{ width:90%; }
    .temp .material-icons{ font-size:34px; }
    .temp .num-pc .icon{ left:-25px; }
    .temp a.telhref{ font-size:1.8em; }
    .sp_only{ display:block; }
  }

  @media (prefers-reduced-motion: reduce){
    *{ scroll-behavior:auto !important; }
  }