@charset "UTF-8";
/* import */
/* サイト共通カラー */
/* レイアウト（カンプ基準。--view-size とは別） */
/* top_order の .inner.top_order_inner 用（カンプ上 766px） */
/* レスポンシブ */
/*****STANDART CSS******/
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css");
:root {
  --view-size: 1280; }

@media screen and (max-width: 768px) {
  :root {
    --view-size: 375; } }
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var,
video {
  margin: 0; }

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  /******SMOOTH SCROLL ANCHOR******/ }

/*****STANDART CSS******/
/* ---------common--------- */
body {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  line-height: 1.75; }
  @media (max-width: 768px) {
    body {
      padding-bottom: calc( Min(calc(54 / var(--view-size) * 100vw), 58px) + env(safe-area-inset-bottom, 0px) ); } }

ul {
  list-style: none;
  margin: 0;
  padding: 0; }

img {
  vertical-align: bottom;
  width: 100%; }

a {
  -webkit-transition: .3s;
  transition: .3s;
  text-decoration: none;
  color: #000;
  cursor: pointer; }
  a:hover {
    opacity: .7; }

/* パンくずリスト */
.bread {
  width: 100%; }
  .bread .inner {
    margin-bottom: 0 !important;
    padding-top: 0 !important; }
  .bread ul {
    display: flex; }
    .bread ul li {
      padding: Min(calc(5 / var(--view-size) * 100vw), 5px); }
      .bread ul li a {
        transition: .15s; }
        @media (max-width: 768px) {
          .bread ul li a {
            font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
        .bread ul li a:hover {
          opacity: 0.7; }
      .bread ul li:after {
        content: '\003e';
        margin-left: Min(calc(10 / var(--view-size) * 100vw), 10px);
        margin-right: Min(calc(10 / var(--view-size) * 100vw), 10px); }
      .bread ul li:last-child:after {
        content: ""; }

/* flex */
.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap; }

.between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.align_start {
  align-items: flex-start; }

.align_center {
  align-items: center; }

.align_end {
  align-items: flex-end; }

.flex_center {
  justify-content: center; }

.flex_start {
  justify-content: flex-start; }

.flex_end {
  justify-content: flex-end; }

.stretch {
  align-items: stretch; }

.reverse {
  flex-direction: row-reverse; }

/* inner */
.inner {
  /* 1920カンプ・インナー1580 と同じ比率（1280幅時は約1053pxまで） */
  width: min(100%, Min(calc(1680 / 1920 * 100vw), 1680px));
  max-width: 100%;
  margin: 0 auto; }
  @media (max-width: 768px) {
    .inner {
      width: min(100%, Min(calc(338 / var(--view-size) * 100vw), 345px)); } }

/* top_order：カンプ1920時インナー766px相当の比率（.inner の padding は継承） */
.inner.top_order_inner {
  width: min(100%, Min(calc(1080 / 1920 * 100vw), 1080px)); }
  @media (max-width: 768px) {
    .inner.top_order_inner {
      width: min(100%, Min(calc(328 / var(--view-size) * 100vw), 345px)); } }

/* display */
@media (max-width: 768px) {
  .sp_dn {
    display: none; } }

.sp_db {
  display: none; }
  @media (max-width: 768px) {
    .sp_db {
      display: block; } }

@media (max-width: 768px) {
  .tab_dn {
    display: none; } }

.tab_db {
  display: none; }
  @media (max-width: 768px) {
    .tab_db {
      display: block; } }

.common_ttl_wrap {
  margin-bottom: Min(calc(50 / var(--view-size) * 100vw), 24px);
  text-align: center;
  position: relative; }
  .common_ttl_wrap.common_ttl_wrap_left {
    text-align: left; }
  .common_ttl_wrap .common_subttl {
    display: inline-flex;
    align-items: center;
    gap: Min(calc(8 / var(--view-size) * 100vw), 10px);
    padding: 0;
    font-family: "Montserrat", sans-serif;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #000;
    line-height: 1.2; }
    .common_ttl_wrap .common_subttl::before {
      content: "";
      flex-shrink: 0;
      width: Min(calc(10 / var(--view-size) * 100vw), 10px);
      height: Min(calc(10 / var(--view-size) * 100vw), 10px);
      border-radius: 50%;
      background: #eb5e01; }
    .common_ttl_wrap .common_subttl.common_subttl_white {
      color: #fff; }
      .common_ttl_wrap .common_subttl.common_subttl_white::before {
        background: #fff; }
    @media (max-width: 768px) {
      .common_ttl_wrap .common_subttl {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        margin-bottom: 0; } }
  .common_ttl_wrap .common_ttl {
    font-size: Min(calc(46 / var(--view-size) * 100vw), 46px);
    font-weight: 900;
    line-height: 1.4; }
    @media (max-width: 768px) {
      .common_ttl_wrap .common_ttl {
        font-size: Min(calc(32 / var(--view-size) * 100vw), 42px); } }

.text_orange {
  color: #eb5e01; }

.text_white {
  color: #fff; }

.common_btn_wrap .common_btn {
  position: relative;
  width: Min(calc(370 / var(--view-size) * 100vw), 370px);
  margin: 0 auto;
  max-width: 100%;
  display: block;
  padding: Min(calc(20 / var(--view-size) * 100vw), 20px) 0;
  padding-left: Min(calc(40 / var(--view-size) * 100vw), 40px);
  padding-right: Min(calc(58 / var(--view-size) * 100vw), 58px);
  box-sizing: border-box;
  border-radius: 999px;
  background: #000;
  color: #fff;
  font-weight: bold;
  font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
  transition: background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
  line-height: 1.7; }
  .common_btn_wrap .common_btn:hover {
    opacity: 1;
    background: #fff;
    color: #000 !important;
    box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #000; }
    .common_btn_wrap .common_btn:hover::before {
      background: #000; }
    .common_btn_wrap .common_btn:hover::after {
      color: #fff; }
  .common_btn_wrap .common_btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: Min(calc(14 / var(--view-size) * 100vw), 14px);
    transform: translateY(-50%);
    width: Min(calc(44 / var(--view-size) * 100vw), 44px);
    height: Min(calc(44 / var(--view-size) * 100vw), 44px);
    border-radius: 50%;
    background: #fff;
    pointer-events: none;
    z-index: 0;
    transition: background-color 0.25s ease; }
  .common_btn_wrap .common_btn::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    top: 50%;
    right: Min(calc(14 / var(--view-size) * 100vw), 14px);
    transform: translateY(-50%);
    width: Min(calc(44 / var(--view-size) * 100vw), 44px);
    height: Min(calc(44 / var(--view-size) * 100vw), 44px);
    font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
    line-height: Min(calc(44 / var(--view-size) * 100vw), 44px);
    text-align: center;
    color: #000;
    pointer-events: none;
    z-index: 1;
    -webkit-font-smoothing: antialiased;
    transition: color 0.25s ease; }
  @media (max-width: 768px) {
    .common_btn_wrap .common_btn {
      width: Min(calc(300 / var(--view-size) * 100vw), 300px);
      padding-left: Min(calc(32 / var(--view-size) * 100vw), 32px);
      padding-right: Min(calc(54 / var(--view-size) * 100vw), 54px);
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); }
      .common_btn_wrap .common_btn::before, .common_btn_wrap .common_btn::after {
        right: Min(calc(12 / var(--view-size) * 100vw), 12px);
        width: Min(calc(40 / var(--view-size) * 100vw), 40px);
        height: Min(calc(40 / var(--view-size) * 100vw), 40px); }
      .common_btn_wrap .common_btn::after {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        line-height: Min(calc(40 / var(--view-size) * 100vw), 40px); } }

.top_btn {
  position: fixed;
  right: Min(calc(24 / var(--view-size) * 100vw), 32px);
  bottom: Min(calc(128 / var(--view-size) * 100vw), 128px);
  z-index: 100;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: Min(calc(8 / var(--view-size) * 100vw), 10px);
  width: auto;
  height: auto;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  text-decoration: none;
  color: inherit;
  cursor: pointer;
  transition: opacity 0.3s ease;
  opacity: 0;
  pointer-events: none; }
  @media (max-width: 768px) {
    .top_btn {
      right: Min(calc(16 / var(--view-size) * 100vw), 20px);
      bottom: calc( Min(calc(20 / var(--view-size) * 100vw), 24px) + min(calc(54 / var(--view-size) * 100vw), 58px) + env(safe-area-inset-bottom, 0px) ); } }
  .top_btn.active {
    opacity: 1;
    pointer-events: auto; }
  .top_btn img {
    display: block;
    width: Min(calc(40 / var(--view-size) * 100vw), 40px);
    height: auto;
    max-width: none;
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .top_btn img {
        width: Min(calc(40 / var(--view-size) * 100vw), 40px); } }
  .top_btn .top_btn_text {
    margin: 0;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    font-size: Min(calc(10 / var(--view-size) * 100vw), 10px);
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.08em;
    color: #000;
    writing-mode: sideways-rl;
    text-orientation: upright; }
  .top_btn:hover {
    opacity: 0.85; }

@media (max-width: 768px) {
  .grecaptcha-badge {
    display: none !important; } }

/* 追従「Order / ご注文」
   PC: 縦積み（黄丸 → Order 縦 → 白線 → ご注文は縦書き）
   SP: 1行横並び */
.fixed_order_btn {
  position: fixed;
  right: 0;
  top: 50%;
  z-index: 95;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: Min(calc(58 / var(--view-size) * 100vw), 64px);
  min-height: Min(calc(200 / var(--view-size) * 100vw), 228px);
  padding: Min(calc(16 / var(--view-size) * 100vw), 20px) Min(calc(8 / var(--view-size) * 100vw), 10px);
  overflow: hidden;
  background: #eb5e01;
  border: 3px solid #fff;
  border-right: 0;
  border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px) 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
  text-decoration: none;
  color: #fff;
  transform: translateY(-50%);
  transition: filter 0.25s ease, opacity 0.25s ease; }
  .fixed_order_btn:hover {
    filter: brightness(0.96);
    opacity: 1; }
  @media (max-width: 768px) {
    .fixed_order_btn {
      top: auto;
      bottom: 0;
      left: 0;
      right: 0;
      width: 100%;
      max-width: 100%;
      min-width: 0;
      min-height: 0;
      overflow: visible;
      padding: Min(calc(12 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 20px);
      border: 2px solid #fff;
      border-left: 0;
      border-right: 0;
      border-bottom: 0;
      border-radius: 0;
      box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.08);
      transform: none;
      justify-content: center; } }

.fixed_order_btn_inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: Min(calc(10 / var(--view-size) * 100vw), 12px);
  min-height: 100%; }
  @media (max-width: 768px) {
    .fixed_order_btn_inner {
      flex-direction: row;
      justify-content: center;
      width: 100%;
      gap: Min(calc(10 / var(--view-size) * 100vw), 12px); } }

.fixed_order_btn_dot {
  flex-shrink: 0;
  width: Min(calc(8 / var(--view-size) * 100vw), 8px);
  height: Min(calc(8 / var(--view-size) * 100vw), 8px);
  border-radius: 50%;
  background: #f8ea21; }

.fixed_order_btn_en {
  display: inline-block;
  font-family: "Montserrat", "Noto Sans JP", sans-serif;
  font-size: Min(calc(17 / var(--view-size) * 100vw), 19px);
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #fff;
  writing-mode: vertical-rl; }
  @media (max-width: 768px) {
    .fixed_order_btn_en {
      writing-mode: horizontal-tb;
      text-orientation: mixed;
      font-size: Min(calc(16 / var(--view-size) * 100vw), 18px);
      font-style: italic;
      letter-spacing: 0.02em; } }

.fixed_order_btn_sep {
  flex-shrink: 0;
  width: Min(calc(2 / var(--view-size) * 100vw), 2px);
  height: Min(calc(22 / var(--view-size) * 100vw), 28px);
  background: #fff;
  border-radius: 1px;
  writing-mode: vertical-rl; }
  @media (max-width: 768px) {
    .fixed_order_btn_sep {
      width: Min(calc(18 / var(--view-size) * 100vw), 24px);
      height: Min(calc(2 / var(--view-size) * 100vw), 2px); } }

.fixed_order_btn_ja {
  display: inline-block;
  margin: 0;
  font-size: Min(calc(14 / var(--view-size) * 100vw), 15px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.16em;
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: upright; }
  @media (max-width: 768px) {
    .fixed_order_btn_ja {
      writing-mode: horizontal-tb;
      text-orientation: mixed;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 15px);
      letter-spacing: 0.04em; } }

.common_mv {
  position: relative;
  overflow: hidden;
  background-color: #eb5e01; }
  .common_mv .common_mv_inner {
    position: relative;
    min-height: Min(calc(420 / var(--view-size) * 100vw), 420px); }
    @media (max-width: 768px) {
      .common_mv .common_mv_inner {
        display: flex;
        flex-direction: column;
        min-height: 0;
        padding-top: Min(calc(150 / var(--view-size) * 100vw), 200px); } }
  .common_mv .common_mv_img {
    margin-left: auto;
    width: Min(calc(880 / var(--view-size) * 100vw), 880px);
    position: relative;
    z-index: 10; }
    @media (max-width: 768px) {
      .common_mv .common_mv_img {
        position: relative;
        order: 2;
        width: 100%;
        aspect-ratio: 375 / 280; } }
  .common_mv .common_mv_content {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    box-sizing: border-box;
    width: Min(calc(1120 / 1920 * 100vw), 1120px);
    max-width: 68%;
    min-height: Min(calc(420 / var(--view-size) * 100vw), 420px);
    padding: Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(80 / var(--view-size) * 100vw), 80px) Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(64 / var(--view-size) * 100vw), 64px);
    display: flex;
    flex-direction: column;
    justify-content: center; }
    @media (max-width: 768px) {
      .common_mv .common_mv_content {
        width: 100%;
        max-width: 100%;
        min-height: 0;
        padding: Min(calc(32 / var(--view-size) * 100vw), 32px) Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(0 / var(--view-size) * 100vw), 40px); } }
  .common_mv .common_mv_label {
    align-self: flex-start;
    margin: 0 0 Min(calc(12 / var(--view-size) * 100vw), 20px);
    padding: Min(calc(6 / var(--view-size) * 100vw), 6px) Min(calc(18 / var(--view-size) * 100vw), 18px);
    background-color: #000;
    color: #fff;
    font-size: Min(calc(48 / var(--view-size) * 100vw), 48px);
    font-weight: 900;
    line-height: 1.4; }
    @media (max-width: 768px) {
      .common_mv .common_mv_label {
        margin-bottom: Min(calc(8 / var(--view-size) * 100vw), 8px);
        font-size: Min(calc(36 / var(--view-size) * 100vw), 36px); } }
  .common_mv .common_mv_ttl {
    margin: 0 0 Min(calc(24 / var(--view-size) * 100vw), 24px);
    color: #fff;
    font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
    font-weight: 900;
    line-height: 1.35; }
    @media (max-width: 768px) {
      .common_mv .common_mv_ttl {
        margin-bottom: Min(calc(8 / var(--view-size) * 100vw), 8px);
        font-size: Min(calc(23 / var(--view-size) * 100vw), 28px);
        line-height: 1.4; } }
  .common_mv .common_mv_text {
    margin: 0;
    color: #000;
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.75; }
    @media (max-width: 768px) {
      .common_mv .common_mv_text {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 15px);
        line-height: 1.7; } }

/* header（高さ用。Sass が Min(calc) を崩すため unquote 使用。カラーは _setting.scss） */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1001;
  background: #fff; }

.header_inner {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-height: Min(calc(96 / var(--view-size) * 100vw), 96px);
  padding: 0 Min(calc(24 / var(--view-size) * 100vw), 24px); }
  @media (max-width: 768px) {
    .header_inner {
      display: grid;
      grid-template-columns: 1fr auto 1fr;
      align-items: center;
      min-height: Min(calc(76 / var(--view-size) * 100vw), 76px);
      padding: 0 Min(calc(16 / var(--view-size) * 100vw), 16px);
      max-width: none; } }

.header_logo {
  flex-shrink: 0;
  width: Min(calc(162 / var(--view-size) * 100vw), 162px); }
  @media (max-width: 768px) {
    .header_logo {
      grid-column: 2;
      justify-self: center;
      width: Min(calc(124 / var(--view-size) * 100vw), 124px); } }
  .header_logo a {
    display: block;
    transition: opacity 0.25s ease; }
    .header_logo a:hover {
      opacity: 1; }
    .header_logo a:hover img {
      opacity: 0.88;
      transition: opacity 0.25s ease; }

.header_nav {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  margin-left: auto;
  padding: 0 Min(calc(12 / var(--view-size) * 100vw), 12px) 0 0; }
  @media (max-width: 768px) {
    .header_nav {
      display: none;
      margin-left: 0; } }
  .header_nav ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: Min(calc(8 / var(--view-size) * 100vw), 8px) Min(calc(20 / var(--view-size) * 100vw), 20px); }
  .header_nav a {
    color: #000;
    font-weight: bold;
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    transition: color 0.25s ease, opacity 0.25s ease; }
    .header_nav a:hover {
      opacity: 1;
      color: #eb5e01; }

.header_links {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: Min(calc(40 / var(--view-size) * 100vw), 40px);
  margin-left: auto; }
  @media (max-width: 768px) {
    .header_links {
      display: none; } }

.header_order {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
  margin-left: Min(calc(8 / var(--view-size) * 100vw), 8px);
  padding: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(22 / var(--view-size) * 100vw), 22px);
  border-radius: 999px;
  background: #eb5e01;
  color: #fff !important;
  font-weight: 700;
  font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
  @media (max-width: 768px) {
    .header_order {
      display: none; } }
  .header_order:hover {
    opacity: 1;
    background: #fff;
    color: #eb5e01 !important;
    box-shadow: 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
  .header_order .header_order_icons {
    position: relative;
    width: Min(calc(18 / var(--view-size) * 100vw), 18px);
    height: Min(calc(18 / var(--view-size) * 100vw), 18px);
    flex-shrink: 0; }
  .header_order .header_order_icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: Min(calc(18 / var(--view-size) * 100vw), 18px);
    max-width: Min(calc(18 / var(--view-size) * 100vw), 18px);
    height: auto;
    display: block;
    transition: opacity 0.25s ease; }
  .header_order .header_order_icon--orange {
    opacity: 0; }
  .header_order:hover .header_order_icon--white {
    opacity: 0; }
  .header_order:hover .header_order_icon--orange {
    opacity: 1; }

.header_instagram {
  display: inline-block;
  width: Min(calc(26 / var(--view-size) * 100vw), 26px);
  transition: transform 0.25s ease, opacity 0.25s ease; }
  .header_instagram:hover {
    opacity: 1;
    transform: scale(1.08); }
  .header_instagram img {
    transition: filter 0.25s ease; }
  .header_instagram:hover img {
    filter: brightness(0.85); }

.header_lang {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(22 / var(--view-size) * 100vw), 22px);
  border-radius: 999px;
  background: #000;
  color: #fff !important;
  font-weight: 700;
  font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
  .header_lang:hover {
    opacity: 1;
    background: #fff;
    color: #000 !important;
    box-shadow: 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #000; }

.menu_btn {
  display: none;
  position: relative;
  z-index: 1002;
  flex-direction: column;
  justify-content: center;
  gap: Min(calc(7 / var(--view-size) * 100vw), 7px);
  width: Min(calc(32 / var(--view-size) * 100vw), 32px);
  height: Min(calc(28 / var(--view-size) * 100vw), 28px);
  cursor: pointer;
  grid-column: 3;
  justify-self: end; }
  @media (max-width: 768px) {
    .menu_btn {
      display: flex; } }
  .menu_btn span {
    display: block;
    height: Min(calc(3 / var(--view-size) * 100vw), 3px);
    border-radius: 999px;
    background: #eb5e01;
    transition: transform 0.3s, opacity 0.3s, background 0.3s; }

body.open {
  overflow: hidden; }

body.open .menu_btn span:nth-child(1) {
  transform: translateY(Min(calc(10 / var(--view-size) * 100vw), 10px)) rotate(45deg); }

body.open .menu_btn span:nth-child(2) {
  opacity: 0; }

body.open .menu_btn span:nth-child(3) {
  transform: translateY(Min(calc(-10 / var(--view-size) * 100vw), -10px)) rotate(-45deg); }

body.open .menu_btn span {
  background: #fff; }

@media (max-width: 768px) {
  body.open .header_inner > .header_logo,
  body.open .header_inner > .header_nav,
  body.open .header_inner > .header_order,
  body.open .header_inner > .header_links {
    visibility: hidden;
    opacity: 0;
    pointer-events: none; }

  body.open .menu_btn {
    position: fixed;
    top: Min(calc(22 / var(--view-size) * 100vw), 22px);
    right: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
.nav_sp {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
  padding: Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(20 / var(--view-size) * 100vw), 20px) 0;
  padding-top: Min(calc(83 / var(--view-size) * 100vw), 83px);
  background: #eb5e01;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.35s ease, visibility 0.35s ease; }

body.open .nav_sp {
  opacity: 1;
  visibility: visible;
  pointer-events: auto; }

.nav_sp_logo {
  flex-shrink: 0;
  margin-bottom: Min(calc(8 / var(--view-size) * 100vw), 8px);
  width: Min(calc(253 / var(--view-size) * 100vw), 253px);
  margin: 0 auto; }
  .nav_sp_logo a {
    display: block;
    width: 100%;
    padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(24 / var(--view-size) * 100vw), 24px);
    border-radius: Min(calc(10 / var(--view-size) * 100vw), 10px);
    background: #fff; }
  .nav_sp_logo img {
    width: 100%;
    height: auto;
    max-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
    object-fit: contain; }

.nav_sp_list {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: Min(calc(22 / var(--view-size) * 100vw), 22px);
  width: Min(calc(253 / var(--view-size) * 100vw), 253px);
  max-width: 100%;
  margin: 0 auto;
  padding: Min(calc(16 / var(--view-size) * 100vw), 16px) 0; }
  .nav_sp_list li {
    position: relative;
    padding-left: Min(calc(22 / var(--view-size) * 100vw), 22px); }
    .nav_sp_list li::before {
      content: "";
      position: absolute;
      left: 0;
      top: 50%;
      width: Min(calc(8 / var(--view-size) * 100vw), 8px);
      height: Min(calc(8 / var(--view-size) * 100vw), 8px);
      border-radius: 50%;
      background: #f8ea21;
      transform: translateY(-50%); }
  .nav_sp_list a {
    color: #fff;
    font-weight: bold;
    font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); }

.nav_sp_instagram {
  display: block;
  width: Min(calc(32 / var(--view-size) * 100vw), 44px);
  margin: Min(calc(12 / var(--view-size) * 100vw), 12px) auto Min(calc(28 / var(--view-size) * 100vw), 28px); }

.nav_sp_lang {
  display: flex;
  flex-shrink: 0;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-top: auto; }
  .nav_sp_lang a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: Min(calc(18 / var(--view-size) * 100vw), 18px);
    font-weight: 700;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    transition: opacity 0.3s; }
    .nav_sp_lang a:first-child {
      background: #fff;
      color: #000 !important; }
    .nav_sp_lang a:last-child {
      background: #000;
      color: #fff !important; }

main {
  padding-top: Min(calc(96 / var(--view-size) * 100vw), 96px); }
  @media (max-width: 768px) {
    main {
      padding-top: Min(calc(76 / var(--view-size) * 100vw), 76px); } }

/* footer */
.footer {
  border-top: 1px solid #eb5e01;
  background: #fff;
  padding: Min(calc(64 / var(--view-size) * 100vw), 64px) 0 Min(calc(40 / var(--view-size) * 100vw), 48px);
  color: #000; }
  @media (max-width: 768px) {
    .footer {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(32 / var(--view-size) * 100vw), 36px); } }

.footer_inner .footer_wrap {
  max-width: 90%;
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  column-gap: Min(calc(20 / var(--view-size) * 100vw), 20px);
  row-gap: Min(calc(40 / var(--view-size) * 100vw), 48px);
  align-items: start;
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .footer_inner .footer_wrap {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: Min(calc(20 / var(--view-size) * 100vw), 20px);
      margin: 0 auto; } }

.footer_info {
  grid-column: 1;
  grid-row: 1; }
  @media (max-width: 768px) {
    .footer_info {
      order: 1;
      width: 100%;
      max-width: Min(calc(290 / var(--view-size) * 100vw), 290px);
      margin: 0 auto; } }

.footer_nav {
  grid-column: 2;
  grid-row: 1; }
  @media (max-width: 768px) {
    .footer_nav {
      order: 5;
      width: 100%;
      max-width: Min(calc(250 / var(--view-size) * 100vw), 345px);
      margin: 0 auto; } }

.footer_contact {
  grid-column: 3;
  grid-row: 1; }
  @media (max-width: 768px) {
    .footer_contact {
      order: 2;
      width: 100%;
      max-width: Min(calc(345 / var(--view-size) * 100vw), 345px); } }

.footer_copy {
  grid-column: 1 / -1;
  grid-row: 3;
  margin: 0;
  padding-top: Min(calc(8 / var(--view-size) * 100vw), 8px);
  font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
  font-weight: 400;
  line-height: 1.5;
  color: #000;
  text-align: left; }
  @media (max-width: 768px) {
    .footer_copy {
      order: 4;
      width: 100%;
      max-width: 100%;
      padding-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
      text-align: center; } }

.footer_logo {
  margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 14px);
  width: Min(calc(260 / var(--view-size) * 100vw), 260px); }
  @media (max-width: 768px) {
    .footer_logo {
      width: Min(calc(190 / var(--view-size) * 100vw), 190px);
      margin: 0 auto Min(calc(12 / var(--view-size) * 100vw), 14px); } }

.footer_name {
  margin: 0 0 Min(calc(16 / var(--view-size) * 100vw), 18px);
  font-weight: 700;
  line-height: 1.5; }
  @media (max-width: 768px) {
    .footer_name {
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); } }

.footer_address {
  margin: 0 0 Min(calc(20 / var(--view-size) * 100vw), 24px);
  font-weight: 700;
  line-height: 1.65; }
  @media (max-width: 768px) {
    .footer_address {
      margin-bottom: 0;
      font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
      text-align: left;
      padding-left: Min(calc(56 / var(--view-size) * 100vw), 56px); } }

.footer_sns {
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: Min(calc(28 / var(--view-size) * 100vw), 28px);
  margin: 0;
  padding: 0;
  list-style: none; }
  @media (max-width: 768px) {
    .footer_sns {
      order: 3;
      width: 100%;
      max-width: Min(calc(290 / var(--view-size) * 100vw), 290px);
      margin: 0 auto;
      justify-content: center;
      gap: Min(calc(20 / var(--view-size) * 100vw), 24px); } }
  .footer_sns a {
    display: inline-block;
    font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
    font-weight: 700;
    color: #000;
    text-decoration: none;
    transition: opacity 0.25s ease; }
    .footer_sns a:hover {
      opacity: 0.65; }
    .footer_sns a img {
      height: Min(calc(32 / var(--view-size) * 100vw), 32px);
      width: auto; }

.footer_nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }

.footer_nav li {
  margin: 0 0 Min(calc(10 / var(--view-size) * 100vw), 12px);
  padding-left: Min(calc(18 / var(--view-size) * 100vw), 20px);
  position: relative; }
  .footer_nav li:last-child {
    margin-bottom: 0; }
  @media (max-width: 768px) {
    .footer_nav li {
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px);
      padding-left: Min(calc(20 / var(--view-size) * 100vw), 22px);
      text-align: left; } }
  .footer_nav li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.7em;
    width: Min(calc(8 / var(--view-size) * 100vw), 8px);
    height: Min(calc(8 / var(--view-size) * 100vw), 8px);
    border-radius: 50%;
    background: #eb5e01; }

.footer_nav a {
  font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
  font-weight: bold;
  line-height: 1.5;
  color: #000;
  text-decoration: none;
  transition: opacity 0.2s ease, color 0.2s ease; }
  .footer_nav a:hover {
    color: #eb5e01;
    opacity: 1; }
  @media (max-width: 768px) {
    .footer_nav a {
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }

.footer_contact_text {
  margin: 0 0 Min(calc(20 / var(--view-size) * 100vw), 24px);
  font-weight: 700;
  line-height: 1.65;
  color: #000; }
  @media (max-width: 768px) {
    .footer_contact_text {
      margin-bottom: Min(calc(16 / var(--view-size) * 100vw), 18px);
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }

.footer_contact_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: Min(calc(10 / var(--view-size) * 100vw), 12px);
  min-width: Min(calc(360 / var(--view-size) * 100vw), 360px);
  padding: Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(32 / var(--view-size) * 100vw), 40px);
  box-sizing: border-box;
  border: 2px solid #eb5e01;
  border-radius: 999px;
  background: #eb5e01;
  color: #fff !important;
  font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
  font-weight: bold;
  transition: background-color 0.25s ease, color 0.25s ease; }
  @media (max-width: 768px) {
    .footer_contact_btn {
      width: 100%;
      max-width: Min(calc(250 / var(--view-size) * 100vw), 320px);
      min-width: 0;
      padding: Min(calc(14 / var(--view-size) * 100vw), 16px) Min(calc(28 / var(--view-size) * 100vw), 32px);
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .footer_contact_btn:hover {
    background: #fff;
    color: #eb5e01 !important; }
  .footer_contact_btn::before {
    content: "";
    display: block;
    flex-shrink: 0;
    width: Min(calc(22 / var(--view-size) * 100vw), 22px);
    height: Min(calc(22 / var(--view-size) * 100vw), 22px);
    background: url("../images/icon_mail_white.png") no-repeat center/contain; }
  .footer_contact_btn:hover::before {
    background-image: url("../images/icon_mail_orange.png"); }

/* top */
.top_mv {
  width: 100%;
  background-color: #eb5e01; }

.top_mv_inner {
  position: relative;
  display: grid;
  grid-template-rows: minmax(0, 1fr) Min(calc(40 / var(--view-size) * 100vw), 40px); }
  @media (max-width: 768px) {
    .top_mv_inner {
      display: flex;
      flex-direction: column;
      grid-template-rows: none; } }

.top_mv_photo {
  grid-row: 1;
  grid-column: 1;
  position: relative;
  width: 70%;
  margin-left: auto;
  margin-right: 0;
  min-height: Min(calc(532 / var(--view-size) * 100vw), 532px);
  overflow: hidden; }
  @media (max-width: 768px) {
    .top_mv_photo {
      order: 1;
      z-index: 1;
      width: calc(100% - Min(calc(12 / var(--view-size) * 100vw), 12px));
      margin-left: Min(calc(12 / var(--view-size) * 100vw), 12px);
      min-height: 0;
      aspect-ratio: 375 / 280;
      border-top: Min(calc(12 / var(--view-size) * 100vw), 12px) solid #eb5e01;
      border-left: Min(calc(12 / var(--view-size) * 100vw), 12px) solid #eb5e01;
      box-sizing: border-box; } }

.top_mv_slide {
  width: 100%;
  height: 100%; }
  .top_mv_slide .slick-list,
  .top_mv_slide .slick-track {
    height: 100%; }
  .top_mv_slide .slick-slide {
    height: 100%; }
    .top_mv_slide .slick-slide > div {
      height: 100%; }

.top_mv_img {
  height: 100%; }
  .top_mv_img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 0 0 0 Min(calc(56 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .top_mv_img img {
        border-radius: 0 0 0 Min(calc(24 / var(--view-size) * 100vw), 24px); } }

.top_mv_copy {
  position: absolute;
  top: 0;
  left: 0;
  bottom: Min(calc(40 / var(--view-size) * 100vw), 40px);
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: Min(calc(640 / var(--view-size) * 100vw), 640px);
  padding: Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(48 / var(--view-size) * 100vw), 48px);
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .top_mv_copy {
      position: relative;
      top: auto;
      left: auto;
      bottom: auto;
      order: 2;
      z-index: 2;
      width: Min(calc(337 / var(--view-size) * 100vw), 337px);
      margin: 0 auto;
      padding: 0;
      display: flex;
      flex-direction: column;
      padding-bottom: Min(calc(22 / var(--view-size) * 100vw), 22px); } }

.top_mv_catch {
  margin: 0;
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
  font-size: Min(calc(142 / var(--view-size) * 100vw), 142px);
  line-height: 0.9;
  color: #fff;
  text-shadow: 3px 3px 0 rgba(0, 0, 0, 0.75); }
  .top_mv_catch span {
    display: block; }
    @media (max-width: 768px) {
      .top_mv_catch span {
        text-align: center;
        display: inline; } }
    @media (max-width: 768px) {
      .top_mv_catch span.sp_dn {
        display: none; } }
    .top_mv_catch span.sp_db {
      display: none; }
      @media (max-width: 768px) {
        .top_mv_catch span.sp_db {
          display: inline; } }
  @media (max-width: 768px) {
    .top_mv_catch {
      margin-top: Min(calc(-52 / var(--view-size) * 100vw), -52px);
      font-size: Min(calc(52 / var(--view-size) * 100vw), 52px);
      text-shadow: Min(calc(3 / var(--view-size) * 100vw), 3px) Min(calc(3 / var(--view-size) * 100vw), 3px) 0 rgba(0, 0, 0, 0.75);
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); } }

.top_mv_tagline {
  align-self: flex-start;
  margin: Min(calc(32 / var(--view-size) * 100vw), 32px) 0 0;
  padding: 0 Min(calc(18 / var(--view-size) * 100vw), 18px);
  background-color: #000;
  color: #fff;
  font-size: Min(calc(48 / var(--view-size) * 100vw), 48px);
  font-weight: 700;
  line-height: 1.5;
  white-space: nowrap; }
  @media (max-width: 768px) {
    .top_mv_tagline {
      align-self: stretch;
      margin: 0;
      padding: 0 Min(calc(4 / var(--view-size) * 100vw), 4px);
      font-size: Min(calc(19 / var(--view-size) * 100vw), 20px);
      text-align: center;
      white-space: normal;
      width: 100%; } }

.top_mv_bar {
  grid-row: 2;
  grid-column: 1;
  position: relative;
  z-index: 1;
  background-color: #eb5e01; }
  @media (max-width: 768px) {
    .top_mv_bar {
      display: none; } }

.top_pickup {
  padding-top: Min(calc(86 / var(--view-size) * 100vw), 86px); }
  @media (max-width: 768px) {
    .top_pickup {
      padding-top: Min(calc(48 / var(--view-size) * 100vw), 48px); } }
  .top_pickup .top_pickup_inner {
    width: Min(calc(1170 / var(--view-size) * 100vw), 1170px);
    margin: 0 auto; }
    @media (max-width: 768px) {
      .top_pickup .top_pickup_inner {
        width: 100%;
        max-width: Min(calc(345 / var(--view-size) * 100vw), 345px);
        box-sizing: border-box; } }
    .top_pickup .top_pickup_inner .common_ttl_wrap {
      position: relative; }
      @media (max-width: 768px) {
        .top_pickup .top_pickup_inner .common_ttl_wrap {
          margin-bottom: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
      .top_pickup .top_pickup_inner .common_ttl_wrap::before {
        content: "";
        position: absolute;
        top: Min(calc(-12 / var(--view-size) * 100vw), -12px);
        left: 50%;
        transform: translateX(-50%);
        width: Min(calc(14 / var(--view-size) * 100vw), 14px);
        height: Min(calc(14 / var(--view-size) * 100vw), 14px);
        background-color: #eb5e01;
        border-radius: 50%; }
      .top_pickup .top_pickup_inner .common_ttl_wrap .common_ttl {
        font-family: "Montserrat", sans-serif; }
    .top_pickup .top_pickup_inner .top_pickup_cont {
      margin-top: Min(calc(48 / var(--view-size) * 100vw), 48px);
      display: flex;
      flex-wrap: nowrap;
      justify-content: flex-start;
      align-items: stretch;
      gap: Min(calc(40 / var(--view-size) * 100vw), 40px);
      margin-bottom: Min(calc(48 / var(--view-size) * 100vw), 48px); }
      @media (max-width: 768px) {
        .top_pickup .top_pickup_inner .top_pickup_cont {
          flex-direction: column;
          flex-wrap: nowrap;
          align-items: stretch;
          gap: Min(calc(36 / var(--view-size) * 100vw), 40px);
          margin-top: Min(calc(28 / var(--view-size) * 100vw), 28px);
          width: 100%;
          margin-bottom: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
  .top_pickup .top_pickup_item {
    flex: none;
    min-width: 0;
    width: 31%; }
    @media (max-width: 768px) {
      .top_pickup .top_pickup_item {
        flex: none;
        width: 100%;
        max-width: 100%; } }
  .top_pickup .pickup_item_img {
    position: relative;
    overflow: hidden;
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px); }
    @media (max-width: 768px) {
      .top_pickup .pickup_item_img {
        border-radius: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
    .top_pickup .pickup_item_img img {
      display: block;
      width: 100%;
      aspect-ratio: 16 / 9;
      object-fit: cover;
      vertical-align: bottom; }
      @media (max-width: 768px) {
        .top_pickup .pickup_item_img img {
          aspect-ratio: 16 / 9;
          min-height: Min(calc(180 / var(--view-size) * 100vw), 180px); } }
  .top_pickup .pickup_item_cate {
    position: absolute;
    left: Min(calc(12 / var(--view-size) * 100vw), 12px);
    bottom: Min(calc(12 / var(--view-size) * 100vw), 12px);
    margin: 0;
    padding: Min(calc(6 / var(--view-size) * 100vw), 6px) Min(calc(16 / var(--view-size) * 100vw), 16px);
    border-radius: 999px;
    background: #f8ea21;
    color: #000;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: 700;
    line-height: 1.3;
    min-width: Min(calc(113 / var(--view-size) * 100vw), 113px);
    text-align: center; }
    @media (max-width: 768px) {
      .top_pickup .pickup_item_cate {
        left: Min(calc(10 / var(--view-size) * 100vw), 10px);
        bottom: Min(calc(10 / var(--view-size) * 100vw), 10px);
        padding: Min(calc(7 / var(--view-size) * 100vw), 7px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
  .top_pickup .pickup_item_textarea {
    margin-top: Min(calc(24 / var(--view-size) * 100vw), 24px);
    text-align: left; }
    @media (max-width: 768px) {
      .top_pickup .pickup_item_textarea {
        margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .top_pickup .pickup_item_ttl {
    margin: 0;
    color: #eb5e01;
    font-size: Min(calc(22 / var(--view-size) * 100vw), 22px);
    font-weight: 700;
    line-height: 1.45;
    text-decoration: underline;
    text-decoration-color: #eb5e01;
    text-decoration-thickness: 1px;
    text-underline-offset: Min(calc(4 / var(--view-size) * 100vw), 4px);
    margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); }
    @media (max-width: 768px) {
      .top_pickup .pickup_item_ttl {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.5;
        margin-bottom: Min(calc(10 / var(--view-size) * 100vw), 10px);
        text-underline-offset: Min(calc(3 / var(--view-size) * 100vw), 3px); } }
  .top_pickup .pickup_item_text {
    margin: 0;
    color: #000;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: 400;
    line-height: 1.65; }
    @media (max-width: 768px) {
      .top_pickup .pickup_item_text {
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
        line-height: 1.75; } }
  .top_pickup .top_pickup_loop {
    width: 100%;
    margin-top: Min(calc(86 / var(--view-size) * 100vw), 86px); }
    @media (max-width: 768px) {
      .top_pickup .top_pickup_loop {
        margin-top: Min(calc(36 / var(--view-size) * 100vw), 36px); } }
  .top_pickup .top_pickup_loop_marquee {
    overflow: hidden; }
  .top_pickup .top_pickup_loop_track {
    display: flex;
    width: max-content;
    animation: top_pickup_loop_marquee 40s linear infinite;
    will-change: transform; }
    @media (prefers-reduced-motion: reduce) {
      .top_pickup .top_pickup_loop_track {
        animation: none; } }
  .top_pickup .top_pickup_loop_item {
    flex-shrink: 0;
    width: Min(calc(200 / var(--view-size) * 100vw), 200px); }
    @media (max-width: 768px) {
      .top_pickup .top_pickup_loop_item {
        width: Min(calc(160 / var(--view-size) * 100vw), 160px); } }
    .top_pickup .top_pickup_loop_item img {
      width: 100%;
      height: auto;
      display: block; }

@keyframes top_pickup_loop_marquee {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); } }
.top_store {
  background-color: #f6ede2;
  padding: Min(calc(86 / var(--view-size) * 100vw), 86px) 0; }
  @media (max-width: 768px) {
    .top_store {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0; } }
  .top_store .top_store_cont {
    align-items: center;
    gap: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    @media (max-width: 768px) {
      .top_store .top_store_cont {
        flex-direction: column;
        align-items: stretch;
        gap: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
  .top_store .top_store_img {
    flex: 0 1 auto;
    width: Min(calc(800 / 1920 * 100vw), 800px);
    max-width: 100%;
    border-radius: Min(calc(20 / var(--view-size) * 100vw), 20px);
    overflow: hidden;
    box-shadow: 0 0 0 Min(calc(3 / var(--view-size) * 100vw), 3px) #fff; }
    @media (max-width: 768px) {
      .top_store .top_store_img {
        width: 100%;
        border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
    .top_store .top_store_img img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
  .top_store .top_store_textarea {
    flex: 1 1 auto;
    min-width: 0;
    max-width: Min(calc(800 / 1920 * 100vw), 800px);
    display: flex;
    flex-direction: column; }
    @media (max-width: 768px) {
      .top_store .top_store_textarea {
        max-width: 100%;
        gap: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .top_store .top_store_area_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 16px);
    margin: 0;
    padding: 0;
    list-style: none;
    margin-bottom: Min(calc(60 / var(--view-size) * 100vw), 60px); }
    @media (max-width: 768px) {
      .top_store .top_store_area_list {
        grid-template-columns: 1fr;
        gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
        width: Min(calc(296 / var(--view-size) * 100vw), 296px);
        margin: 0 auto Min(calc(32 / var(--view-size) * 100vw), 36px) auto; } }
    .top_store .top_store_area_list li {
      min-width: 0; }
    .top_store .top_store_area_list a {
      position: relative;
      display: flex;
      width: 100%;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      min-height: Min(calc(56 / var(--view-size) * 100vw), 56px);
      padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px);
      border-radius: 999px;
      background: #fff;
      color: #000;
      font-weight: 700;
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
      line-height: 1.4;
      box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
      transition: opacity 0.25s ease, background-color 0.25s ease, color 0.25s ease; }
      @media (max-width: 768px) {
        .top_store .top_store_area_list a {
          min-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
          font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
      .top_store .top_store_area_list a:hover {
        opacity: 1;
        background: #eb5e01;
        color: #fff; }
        .top_store .top_store_area_list a:hover::after {
          color: #fff; }
      .top_store .top_store_area_list a::after {
        content: "\2192";
        position: absolute;
        top: 50%;
        right: Min(calc(18 / var(--view-size) * 100vw), 18px);
        transform: translateY(-50%);
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1;
        color: #eb5e01;
        pointer-events: none;
        transition: color 0.25s ease; }
  .top_store .top_store_textarea > .common_btn_wrap .common_btn {
    margin-left: 0; }
    @media (max-width: 768px) {
      .top_store .top_store_textarea > .common_btn_wrap .common_btn {
        width: Min(calc(296 / var(--view-size) * 100vw), 296px);
        margin: 0 auto; } }

.top_order {
  background-color: #eb5e01;
  background-image: url(../images/top/top_order_bg.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: Min(calc(86 / var(--view-size) * 100vw), 86px) 0;
  /* 黒ボタンと反転：オレンジ地・白字・右は黒丸＋白矢印 */ }
  @media (max-width: 768px) {
    .top_order {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0; }
      .top_order .common_ttl {
        letter-spacing: -0.1em; } }
  .top_order .top_order_text {
    margin: Min(calc(20 / var(--view-size) * 100vw), 20px) 0 Min(calc(40 / var(--view-size) * 100vw), 40px);
    color: #fff;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 400;
    line-height: 1.75; }
    @media (max-width: 768px) {
      .top_order .top_order_text {
        margin-bottom: Min(calc(28 / var(--view-size) * 100vw), 28px);
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.8;
        font-weight: bold; } }
  .top_order .top_order_cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: Min(calc(24 / var(--view-size) * 100vw), 24px); }
    @media (max-width: 768px) {
      .top_order .top_order_cont {
        flex-direction: column;
        gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .top_order .top_order_item {
    position: relative;
    flex: 1 1 0;
    min-width: 0;
    box-sizing: border-box;
    padding: Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(32 / var(--view-size) * 100vw), 32px) Min(calc(36 / var(--view-size) * 100vw), 36px);
    border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px);
    background: #fff;
    text-align: center; }
    @media (max-width: 768px) {
      .top_order .top_order_item {
        flex: none;
        width: 100%;
        padding: Min(calc(32 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 24px) Min(calc(36 / var(--view-size) * 100vw), 36px);
        border-radius: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
    .top_order .top_order_item::before {
      content: "";
      display: block;
      width: Min(calc(12 / var(--view-size) * 100vw), 12px);
      height: Min(calc(12 / var(--view-size) * 100vw), 12px);
      margin: 0 auto Min(calc(10 / var(--view-size) * 100vw), 20px);
      border-radius: 50%;
      background: #eb5e01; }
      @media (max-width: 768px) {
        .top_order .top_order_item::before {
          margin: 0 auto Min(calc(10 / var(--view-size) * 100vw), 16px); } }
  .top_order .top_order_item_ttl {
    margin: 0 0 Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(24 / var(--view-size) * 100vw), 24px);
    font-weight: 700;
    line-height: 1.45;
    color: #000;
    font-weight: 900; }
    @media (max-width: 768px) {
      .top_order .top_order_item_ttl {
        font-size: Min(calc(26 / var(--view-size) * 100vw), 26px);
        margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .top_order .top_order_item_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: 400;
    line-height: 1.7;
    color: #000;
    font-weight: bold; }
    @media (max-width: 768px) {
      .top_order .top_order_item_text {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        line-height: 1.75; } }
  .top_order .top_order_item .common_btn_wrap {
    margin-top: Min(calc(28 / var(--view-size) * 100vw), 28px);
    margin-bottom: 0; }
    @media (max-width: 768px) {
      .top_order .top_order_item .common_btn_wrap {
        margin-top: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
  .top_order .top_order_item .common_btn.common_btn_orange {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    padding-top: Min(calc(18 / var(--view-size) * 100vw), 18px);
    padding-bottom: Min(calc(18 / var(--view-size) * 100vw), 18px);
    margin-right: 0;
    background: #eb5e01;
    color: #fff !important;
    box-shadow: none;
    font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    .top_order .top_order_item .common_btn.common_btn_orange::before {
      background: #000; }
    .top_order .top_order_item .common_btn.common_btn_orange::after {
      color: #fff; }
    .top_order .top_order_item .common_btn.common_btn_orange:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
      .top_order .top_order_item .common_btn.common_btn_orange:hover::before {
        background: #eb5e01; }
      .top_order .top_order_item .common_btn.common_btn_orange:hover::after {
        color: #fff; }

.top_school {
  padding: Min(calc(86 / var(--view-size) * 100vw), 86px) 0; }
  @media (max-width: 768px) {
    .top_school {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0; } }
  .top_school .top_school_cont {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: Min(calc(48 / var(--view-size) * 100vw), 48px); }
    @media (max-width: 768px) {
      .top_school .top_school_cont {
        flex-direction: column;
        gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .top_school .top_school_img {
    flex: 0 1 47%;
    max-width: Min(calc(767 / 1920 * 100vw), 767px);
    min-width: 0;
    border-radius: Min(calc(20 / var(--view-size) * 100vw), 24px);
    overflow: hidden; }
    @media (max-width: 768px) {
      .top_school .top_school_img {
        flex: none;
        order: 2;
        width: 100%;
        max-width: 100%; } }
    .top_school .top_school_img img {
      display: block;
      width: 100%;
      height: auto;
      min-height: Min(calc(280 / var(--view-size) * 100vw), 320px);
      object-fit: cover;
      vertical-align: bottom; }
      @media (max-width: 768px) {
        .top_school .top_school_img img {
          min-height: Min(calc(200 / var(--view-size) * 100vw), 220px); } }
  .top_school .top_school_textarea {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: Min(calc(16 / var(--view-size) * 100vw), 20px); }
    @media (max-width: 768px) {
      .top_school .top_school_textarea {
        display: contents; } }
  @media (max-width: 768px) {
    .top_school .top_school_head {
      order: 1;
      width: 100%; } }
  .top_school .top_school_head .common_ttl_wrap {
    margin-bottom: Min(calc(16 / var(--view-size) * 100vw), 20px); }
    .top_school .top_school_head .common_ttl_wrap .common_ttl {
      font-size: Min(calc(21 / var(--view-size) * 100vw), 46px); }
  .top_school .top_school_lead {
    margin: 0;
    font-size: Min(calc(46 / var(--view-size) * 100vw), 46px);
    font-weight: 900;
    line-height: 1.45;
    color: #000; }
    @media (max-width: 768px) {
      .top_school .top_school_lead {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 30px); }
        .top_school .top_school_lead .sp_text_large {
          font-size: Min(calc(42 / var(--view-size) * 100vw), 22px); } }
  .top_school .top_school_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: bold;
    color: #000; }
    @media (max-width: 768px) {
      .top_school .top_school_text {
        order: 3;
        width: 100%;
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .top_school .top_school_list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: Min(calc(18 / var(--view-size) * 100vw), 20px) Min(calc(16 / var(--view-size) * 100vw), 18px);
    margin-top: Min(calc(8 / var(--view-size) * 100vw), 8px); }
    @media (max-width: 768px) {
      .top_school .top_school_list {
        order: 4;
        width: 100%;
        grid-template-columns: 1fr;
        gap: Min(calc(16 / var(--view-size) * 100vw), 16px);
        margin-top: Min(calc(4 / var(--view-size) * 100vw), 4px); } }
  .top_school .top_school_item {
    /* カードごとに --school-icon-max（1920カンプ時の最大幅px）を上書き */
    --school-icon-max: 80;
    --school-icon-min: 36px;
    --school-accent: #eb5e01;
    --school-bg: #fafafa;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    align-self: stretch;
    height: 100%;
    min-height: 0;
    padding-top: Min(calc(10 / var(--view-size) * 100vw), 12px); }
  .top_school .top_school_item_green {
    --school-icon-max: 112;
    --school-icon-min: 52px;
    --school-accent: #8cc673;
    --school-bg: #f2f8f3; }
  .top_school .top_school_item_blue {
    --school-icon-max: 52;
    --school-icon-min: 40px;
    --school-accent: #70acde;
    --school-bg: #f2f7fc; }
  .top_school .top_school_item_pink {
    --school-icon-max: 96;
    --school-icon-min: 48px;
    --school-accent: #dd6081;
    --school-bg: #fdf5f8; }
  .top_school .top_school_item_purple {
    --school-icon-max: 100;
    --school-icon-min: 50px;
    --school-accent: #985ea3;
    --school-bg: #f6f4fb; }
  .top_school .top_school_item_tab {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    font-family: "Montserrat", sans-serif;
    gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
    margin: 0 0 Min(calc(-2 / var(--view-size) * 100vw), -2px) Min(calc(12 / var(--view-size) * 100vw), 16px);
    padding: Min(calc(8 / var(--view-size) * 100vw), 8px) Min(calc(14 / var(--view-size) * 100vw), 16px) Min(calc(10 / var(--view-size) * 100vw), 10px);
    border-radius: Min(calc(10 / var(--view-size) * 100vw), 12px) Min(calc(10 / var(--view-size) * 100vw), 12px) 0 0;
    background: var(--school-accent);
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: Min(calc(11 / var(--view-size) * 100vw), 12px);
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
    z-index: 1; }
    @media (max-width: 768px) {
      .top_school .top_school_item_tab {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .top_school .top_school_item_tab_dot {
    flex-shrink: 0;
    width: Min(calc(8 / var(--view-size) * 100vw), 8px);
    height: Min(calc(8 / var(--view-size) * 100vw), 8px);
    border-radius: 50%;
    background: #fff100; }
  .top_school .top_school_item_tab_txt {
    white-space: nowrap; }
  .top_school .top_school_item_box {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    width: 100%;
    box-sizing: border-box;
    padding: Min(calc(22 / var(--view-size) * 100vw), 24px) Min(calc(16 / var(--view-size) * 100vw), 20px) Min(calc(20 / var(--view-size) * 100vw), 22px);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--school-accent);
    background: #fffddd; }
  .top_school .top_school_item_row {
    flex: 1 1 auto;
    display: flex;
    align-items: flex-start;
    gap: Min(calc(14 / var(--view-size) * 100vw), 16px);
    min-height: 0; }
  .top_school .top_school_item_icon {
    flex-shrink: 0; }
    .top_school .top_school_item_icon.top_school_item_icon_green {
      width: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    .top_school .top_school_item_icon.top_school_item_icon_blue {
      width: Min(calc(14 / var(--view-size) * 100vw), 14px); }
    .top_school .top_school_item_icon.top_school_item_icon_pink {
      width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .top_school .top_school_item_icon.top_school_item_icon_purple {
      width: Min(calc(36 / var(--view-size) * 100vw), 36px); }
    .top_school .top_school_item_icon img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
  .top_school .top_school_item_body {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left; }
  .top_school .top_school_item_ttl {
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 10px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.35;
    color: #000; }
    @media (max-width: 768px) {
      .top_school .top_school_item_ttl {
        font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
  .top_school .top_school_item_text {
    margin: 0;
    font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
    font-weight: 400;
    line-height: 1.65;
    color: #000; }
    @media (max-width: 768px) {
      .top_school .top_school_item_text {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }

.top_artists {
  background-color: #f6ede2;
  padding: Min(calc(86 / var(--view-size) * 100vw), 86px) 0; }
  @media (max-width: 768px) {
    .top_artists {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0; } }
  .top_artists .top_artists_inner {
    width: min(100%, Min(calc(1180 / 1920 * 100vw), 1180px));
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .top_artists .top_artists_inner {
        width: Min(calc(325 / var(--view-size) * 100vw), 325px); } }
  .top_artists .common_ttl_wrap {
    width: Min(calc(770 / 1920 * 100vw), 770px);
    max-width: 100%;
    margin: 0 auto Min(calc(48 / var(--view-size) * 100vw), 48px); }
    @media (max-width: 768px) {
      .top_artists .common_ttl_wrap {
        width: 100%;
        margin-bottom: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
    .top_artists .common_ttl_wrap .top_artists_text {
      margin: Min(calc(20 / var(--view-size) * 100vw), 20px) 0 0;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      font-weight: 400;
      line-height: 1.75;
      color: #000; }
      @media (max-width: 768px) {
        .top_artists .common_ttl_wrap .top_artists_text {
          margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
          font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .top_artists .top_artists_list {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: Min(calc(24 / var(--view-size) * 100vw), 28px);
    margin-bottom: Min(calc(40 / var(--view-size) * 100vw), 40px); }
    @media (max-width: 768px) {
      .top_artists .top_artists_list {
        flex-direction: column;
        gap: Min(calc(32 / var(--view-size) * 100vw), 32px);
        margin-bottom: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
    .top_artists .top_artists_list .top_artists_item {
      flex: 1 1 0;
      min-width: 0;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
      box-sizing: border-box; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item {
          flex: none;
          width: 100%; } }
    .top_artists .top_artists_list .top_artists_item_img {
      flex: 0 0 auto;
      width: 100%;
      max-width: 100%;
      border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px);
      border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid #eb5e01;
      background: #fff;
      overflow: hidden;
      box-sizing: border-box; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item_img {
          border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px); } }
      .top_artists .top_artists_list .top_artists_item_img img {
        display: block;
        width: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        vertical-align: bottom; }
    .top_artists .top_artists_list .top_artists_item_textarea {
      flex: 0 0 auto;
      width: 100%;
      min-width: 0;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      gap: Min(calc(6 / var(--view-size) * 100vw), 8px);
      text-align: left; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item_textarea {
          gap: Min(calc(8 / var(--view-size) * 100vw), 8px); } }
    .top_artists .top_artists_list .top_artists_item_name {
      display: flex;
      align-items: center;
      gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
      margin: 0;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      font-weight: 700;
      line-height: 1.3;
      color: #000; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item_name {
          font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
      .top_artists .top_artists_list .top_artists_item_name::before {
        content: "";
        flex-shrink: 0;
        width: Min(calc(10 / var(--view-size) * 100vw), 10px);
        height: Min(calc(10 / var(--view-size) * 100vw), 10px);
        border-radius: 50%;
        background: #eb5e01; }
    .top_artists .top_artists_list .top_artists_item_ttl {
      margin: 0;
      font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
      font-weight: 700;
      line-height: 1.45;
      color: #000; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item_ttl {
          font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
    .top_artists .top_artists_list .top_artists_item_text {
      margin: 0;
      font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
      font-weight: 400;
      line-height: 1.65;
      color: #000; }
      @media (max-width: 768px) {
        .top_artists .top_artists_list .top_artists_item_text {
          font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .top_artists .top_artists_service {
    padding: Min(calc(32 / var(--view-size) * 100vw), 32px);
    border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px);
    background: #eb5e01;
    width: Min(calc(480 / var(--view-size) * 100vw), 480px);
    margin: Min(calc(64 / var(--view-size) * 100vw), 64px) auto 0; }
    @media (max-width: 768px) {
      .top_artists .top_artists_service {
        padding: Min(calc(16 / var(--view-size) * 100vw), 16px);
        width: 100%; } }
    .top_artists .top_artists_service .top_artists_service_text {
      margin: 0 0 Min(calc(20 / var(--view-size) * 100vw), 20px);
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      font-weight: 900;
      color: #fff; }
      @media (max-width: 768px) {
        .top_artists .top_artists_service .top_artists_service_text {
          font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
    .top_artists .top_artists_service .top_artists_service .common_btn_wrap {
      margin-top: 0;
      margin-bottom: 0; }

.top_interview {
  background: #fff;
  padding: Min(calc(86 / var(--view-size) * 100vw), 86px) 0; }
  @media (max-width: 768px) {
    .top_interview {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0; } }
  .top_interview .top_interview_inner {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: Min(calc(32 / var(--view-size) * 100vw), 40px);
    box-sizing: border-box;
    width: min(100%, Min(calc(1740 / 1920 * 100vw), 1740px)); }
    @media (max-width: 768px) {
      .top_interview .top_interview_inner {
        flex-direction: column;
        gap: Min(calc(24 / var(--view-size) * 100vw), 28px); } }
  .top_interview .top_interview_side {
    flex-shrink: 0;
    margin: 0;
    display: flex;
    gap: Min(calc(12 / var(--view-size) * 100vw), 16px);
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-family: "Montserrat", "Noto Sans JP", sans-serif;
    line-height: 1.5;
    letter-spacing: 0.08em; }
    @media (max-width: 768px) {
      .top_interview .top_interview_side {
        writing-mode: horizontal-tb;
        display: flex;
        flex-direction: column;
        gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
        width: 100%; } }
  .top_interview .top_interview_side_label {
    display: inline-flex;
    align-items: center;
    gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
    font-size: Min(calc(12 / var(--view-size) * 100vw), 13px);
    font-weight: 600;
    color: #6a5a4a; }
    .top_interview .top_interview_side_label::before {
      content: "";
      flex-shrink: 0;
      width: Min(calc(10 / var(--view-size) * 100vw), 10px);
      height: Min(calc(10 / var(--view-size) * 100vw), 10px);
      border-radius: 50%;
      background: #eb5e01; }
    @media (max-width: 768px) {
      .top_interview .top_interview_side_label {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .top_interview .top_interview_side_ttl {
    display: inline-block;
    margin: 0;
    font-size: Min(calc(22 / var(--view-size) * 100vw), 22px);
    font-weight: 700;
    color: #000; }
    @media (max-width: 768px) {
      .top_interview .top_interview_side_ttl {
        font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
        line-height: 1.25; } }
  .top_interview .top_interview_main {
    flex: 1 1 0;
    min-width: 0;
    width: 100%; }
  .top_interview .top_interview_cont {
    position: relative;
    --interview-img-w: Min(calc(746 / 1920 * 100vw), 746px);
    --interview-img-gap: Min(calc(32 / var(--view-size) * 100vw), 40px);
    padding-right: calc(var(--interview-img-w) + var(--interview-img-gap));
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    gap: Min(calc(32 / var(--view-size) * 100vw), 40px);
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .top_interview .top_interview_cont {
        position: static;
        padding-right: 0;
        flex-direction: column;
        gap: Min(calc(24 / var(--view-size) * 100vw), 28px); }
        .top_interview .top_interview_cont .top_interview_text_col {
          display: contents; }
        .top_interview .top_interview_cont .top_interview_img {
          order: 2; }
        .top_interview .top_interview_cont .top_interview_body {
          order: 3; } }
  .top_interview .top_interview_text_col {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: Min(calc(28 / var(--view-size) * 100vw), 32px);
    position: relative;
    z-index: 100; }
  .top_interview .top_interview_lead {
    display: flex;
    flex-direction: column;
    gap: Min(calc(20 / var(--view-size) * 100vw), 24px); }
  .top_interview .top_interview_ttl {
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: Min(calc(8 / var(--view-size) * 100vw), 10px); }
  .top_interview .top_interview_ttl_line {
    display: inline-block;
    margin: 0;
    padding: Min(calc(10 / var(--view-size) * 100vw), 12px) Min(calc(18 / var(--view-size) * 100vw), 24px);
    background: #eb5e01;
    color: #fff;
    font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0.02em; }
    @media (max-width: 768px) {
      .top_interview .top_interview_ttl_line {
        font-size: Min(calc(38 / var(--view-size) * 100vw), 38px);
        padding: Min(calc(8 / var(--view-size) * 100vw), 10px) Min(calc(14 / var(--view-size) * 100vw), 18px); } }
  .top_interview .top_interview_subttl {
    margin: 0;
    font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
    font-weight: 700;
    line-height: 1.5;
    color: #000; }
    @media (max-width: 768px) {
      .top_interview .top_interview_subttl {
        font-size: Min(calc(23 / var(--view-size) * 100vw), 23px); } }
  .top_interview .top_interview_body {
    display: flex;
    flex-direction: column;
    gap: Min(calc(24 / var(--view-size) * 100vw), 28px); }
  .top_interview .top_interview_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: 400;
    line-height: 1.85;
    color: #000;
    width: Min(calc(380 / var(--view-size) * 100vw), 380px); }
    @media (max-width: 768px) {
      .top_interview .top_interview_text {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        line-height: 1.8;
        width: 100%; } }
  .top_interview .top_interview_img {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
    width: Min(calc(1060 / 1920 * 100vw), 1060px);
    overflow: hidden;
    border-radius: 0; }
    @media (max-width: 768px) {
      .top_interview .top_interview_img {
        position: relative;
        top: auto;
        right: auto;
        z-index: auto;
        flex: none;
        width: Min(calc(375 / var(--view-size) * 100vw), 375px);
        border-radius: 0;
        margin-left: Min(calc(-17.5 / var(--view-size) * 100vw), -17.5px); } }
  .top_interview .top_interview_body .common_btn_wrap .common_btn {
    margin-left: 0; }

.fadein {
  opacity: 0;
  transform: translateY(3%); }
  .fadein.active {
    animation: .8s forwards fadein; }

.fadein2 {
  opacity: 0;
  transform: translateY(3%); }
  .fadein2.active {
    animation: .8s forwards .1s fadein; }

.leftin {
  transform: translateX(-100%);
  overflow: hidden; }
  .leftin.active {
    animation: .5s forwards leftin; }

.rightin {
  transform: translateX(100%);
  overflow: hidden; }
  .rightin.active {
    animation: .5s forwards rightin; }

@keyframes fadein {
  0% {
    opacity: 0;
    transform: translateY(3%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }
@keyframes leftin {
  0% {
    transform: translateX(-100%); }
  100% {
    transform: translateX(0); } }
@keyframes rightin {
  0% {
    transform: translateX(100%); }
  100% {
    transform: translateX(0); } }
/* shop（PC inner 770px 基準） */
.page_shop .page_shop_area {
  background-color: #f6ede2;
  padding: Min(calc(64 / var(--view-size) * 100vw), 64px) 0; }
  @media (max-width: 768px) {
    .page_shop .page_shop_area {
      padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
.page_shop .page_shop_inner {
  width: 100%;
  max-width: Min(calc(980 / 1920 * 100vw), 980px);
  margin: 0 auto; }
  @media (max-width: 768px) {
    .page_shop .page_shop_inner {
      max-width: Min(calc(333 / var(--view-size) * 100vw), 333px); } }
.page_shop .page_shop_area_inner {
  width: Min(calc(1200 / 1920 * 100vw), 1200px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_area_inner {
      width: Min(calc(330 / var(--view-size) * 100vw), 330px); } }
.page_shop .page_shop_tabbtn_area {
  display: flex;
  flex-direction: column;
  gap: Min(calc(28 / var(--view-size) * 100vw), 28px); }
.page_shop .page_shop_tabbtn_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(12 / var(--view-size) * 100vw), 12px);
  margin: 0;
  margin-bottom: 0;
  padding: 0;
  list-style: none; }
  @media (max-width: 768px) {
    .page_shop .page_shop_tabbtn_list {
      grid-template-columns: 1fr;
      gap: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_shop .page_shop_tabbtn_list li {
    min-width: 0; }
.page_shop .page_shop_tabbtn {
  position: relative;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 0;
  border: none;
  cursor: pointer;
  font-family: inherit;
  appearance: none;
  -webkit-appearance: none;
  min-height: Min(calc(48 / var(--view-size) * 100vw), 48px);
  padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 16px);
  border-radius: 999px;
  background: #fff;
  color: #000;
  font-weight: 700;
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  line-height: 1.4;
  text-decoration: none;
  box-shadow: inset 0 0 0 Min(calc(1 / var(--view-size) * 100vw), 1px) #000;
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease; }
  @media (max-width: 768px) {
    .page_shop .page_shop_tabbtn {
      min-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
      font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .page_shop .page_shop_tabbtn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: Min(calc(12 / var(--view-size) * 100vw), 12px);
    transform: translateY(-50%);
    width: Min(calc(28 / var(--view-size) * 100vw), 28px);
    height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 50%;
    background: #000;
    pointer-events: none;
    transition: background-color 0.25s ease; }
  .page_shop .page_shop_tabbtn::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    top: 50%;
    right: Min(calc(12 / var(--view-size) * 100vw), 12px);
    transform: translateY(-50%);
    width: Min(calc(28 / var(--view-size) * 100vw), 28px);
    height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
    line-height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    text-align: center;
    color: #fff;
    pointer-events: none;
    -webkit-font-smoothing: antialiased;
    transition: color 0.25s ease; }
  .page_shop .page_shop_tabbtn:hover, .page_shop .page_shop_tabbtn.is-active {
    background: #eb5e01;
    color: #fff;
    box-shadow: none; }
    .page_shop .page_shop_tabbtn:hover::before, .page_shop .page_shop_tabbtn.is-active::before {
      background: #000; }
    .page_shop .page_shop_tabbtn:hover::after, .page_shop .page_shop_tabbtn.is-active::after {
      color: #fff; }
.page_shop .page_shop_contact {
  padding: Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(32 / var(--view-size) * 100vw), 32px);
  border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px);
  background: #fff;
  box-shadow: 0 0 0 Min(calc(3 / var(--view-size) * 100vw), 3px) #fff; }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact {
      padding: Min(calc(32 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 24px);
      border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
.page_shop .page_shop_contact_head {
  margin-bottom: Min(calc(10 / var(--view-size) * 100vw), 10px); }
.page_shop .page_shop_contact_label {
  display: inline-flex;
  align-items: center;
  gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
  margin: 0 0 Min(calc(12 / var(--view-size) * 100vw), 12px);
  font-family: "Montserrat", sans-serif;
  font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #000;
  line-height: 1.2; }
.page_shop .page_shop_contact_label_dot {
  flex-shrink: 0;
  width: Min(calc(10 / var(--view-size) * 100vw), 10px);
  height: Min(calc(10 / var(--view-size) * 100vw), 10px);
  border-radius: 50%;
  background: #eb5e01; }
.page_shop .page_shop_contact_ttl {
  margin: 0;
  font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
  font-weight: 900;
  line-height: 1.4;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact_ttl {
      font-size: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_shop .page_shop_contact_ttl .text_orange {
    color: #eb5e01; }
.page_shop .page_shop_contact_body {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: Min(calc(16 / var(--view-size) * 100vw), 16px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact_body {
      flex-direction: column;
      align-items: stretch;
      gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .page_shop_contact_tel {
  flex: 1 1 auto;
  min-width: 0; }
.page_shop .page_shop_contact_tel_num {
  position: relative;
  margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
  padding-left: Min(calc(30 / var(--view-size) * 100vw), 30px);
  color: #eb5e01;
  font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.02em; }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact_tel_num {
      font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
      padding-left: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_shop .page_shop_contact_tel_num::before {
    content: "\f095";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    top: 60%;
    left: 0;
    transform: translateY(-50%);
    font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
    line-height: 1;
    color: #eb5e01;
    -webkit-font-smoothing: antialiased; }
    @media (max-width: 768px) {
      .page_shop .page_shop_contact_tel_num::before {
        font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
.page_shop .page_shop_contact_tel_note {
  margin: 0;
  color: #000;
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  font-weight: 700;
  line-height: 1.5; }
  .page_shop .page_shop_contact_tel_note span {
    display: block;
    font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); }
.page_shop .page_shop_contact_btn_wrap {
  flex-shrink: 0; }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact_btn_wrap {
      width: 100%; } }
.page_shop .page_shop_contact_btn {
  position: relative;
  display: flex;
  width: Min(calc(280 / var(--view-size) * 100vw), 280px);
  max-width: 100%;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: Min(calc(48 / var(--view-size) * 100vw), 48px);
  margin: 0;
  padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(44 / var(--view-size) * 100vw), 44px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px);
  border-radius: 999px;
  background: #eb5e01;
  color: #fff;
  font-weight: 700;
  font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
  line-height: 1.4;
  text-decoration: none;
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease; }
  @media (max-width: 768px) {
    .page_shop .page_shop_contact_btn {
      width: 100%;
      min-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_shop .page_shop_contact_btn::before {
    content: "";
    position: absolute;
    top: 50%;
    right: Min(calc(12 / var(--view-size) * 100vw), 12px);
    transform: translateY(-50%);
    width: Min(calc(28 / var(--view-size) * 100vw), 28px);
    height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 50%;
    background: #000;
    pointer-events: none;
    transition: background-color 0.25s ease; }
  .page_shop .page_shop_contact_btn::after {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    top: 50%;
    right: Min(calc(12 / var(--view-size) * 100vw), 12px);
    transform: translateY(-50%);
    width: Min(calc(28 / var(--view-size) * 100vw), 28px);
    height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
    line-height: Min(calc(28 / var(--view-size) * 100vw), 28px);
    text-align: center;
    color: #fff;
    pointer-events: none;
    -webkit-font-smoothing: antialiased;
    transition: color 0.25s ease; }
  .page_shop .page_shop_contact_btn:hover {
    background: #fff;
    color: #000;
    box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #000; }
    .page_shop .page_shop_contact_btn:hover::before {
      background: #000; }
    .page_shop .page_shop_contact_btn:hover::after {
      color: #fff; }
.page_shop .page_shop_tabpanels {
  margin-top: Min(calc(48 / var(--view-size) * 100vw), 48px);
  padding-bottom: Min(calc(64 / var(--view-size) * 100vw), 64px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_tabpanels {
      margin-top: Min(calc(40 / var(--view-size) * 100vw), 40px);
      padding-bottom: Min(calc(48 / var(--view-size) * 100vw), 48px); } }
.page_shop .page_shop_panel[hidden] {
  display: none !important; }
.page_shop .page_shop_panel_empty {
  margin: 0;
  padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0;
  font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .page_shop_panel_empty {
      padding: Min(calc(32 / var(--view-size) * 100vw), 32px) 0;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
.page_shop .page_shop_list {
  margin: 0;
  padding: 0; }
.page_shop .page_shop_item {
  padding-bottom: Min(calc(36 / var(--view-size) * 100vw), 36px);
  margin-bottom: Min(calc(36 / var(--view-size) * 100vw), 36px);
  border-bottom: Min(calc(2 / var(--view-size) * 100vw), 2px) dotted #eb5e01; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item {
      padding-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px);
      margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_shop .page_shop_item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none; }
.page_shop .page_shop_item_head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(16 / var(--view-size) * 100vw), 16px);
  margin-bottom: Min(calc(16 / var(--view-size) * 100vw), 16px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_head {
      margin-bottom: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
.page_shop .page_shop_item_tag {
  flex-shrink: 0;
  margin: 0;
  padding: Min(calc(6 / var(--view-size) * 100vw), 6px) Min(calc(20 / var(--view-size) * 100vw), 20px);
  border-radius: 999px;
  background: #e8e8e8;
  color: #000;
  font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
  font-weight: 700;
  line-height: 1.4; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_tag {
      font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
.page_shop .page_shop_item_name {
  margin: 0;
  font-size: Min(calc(22 / var(--view-size) * 100vw), 22px);
  font-weight: 900;
  line-height: 1.4;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_name {
      font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
.page_shop .page_shop_item_body {
  display: flex;
  align-items: flex-start;
  gap: Min(calc(20 / var(--view-size) * 100vw), 20px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_body {
      flex-direction: column;
      gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .page_shop_item_img {
  flex: 0 0 Min(calc(280 / var(--view-size) * 100vw), 280px);
  width: Min(calc(280 / var(--view-size) * 100vw), 280px);
  max-width: 100%;
  border-radius: Min(calc(10 / var(--view-size) * 100vw), 10px);
  overflow: hidden; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_img {
      flex: none;
      width: 100%; } }
  .page_shop .page_shop_item_img img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 250 / 167;
    object-fit: cover; }
.page_shop .page_shop_item_info {
  flex: 1 1 auto;
  min-width: 0; }
.page_shop .page_shop_item_dl {
  margin: 0 0 Min(calc(16 / var(--view-size) * 100vw), 16px);
  padding: 0; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_dl {
      margin-bottom: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .page_shop_item_dl_row {
  display: flex;
  align-items: flex-start;
  gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
  padding: Min(calc(10 / var(--view-size) * 100vw), 10px) 0;
  border-bottom: Min(calc(1 / var(--view-size) * 100vw), 1px) solid #e8e8e8; }
  .page_shop .page_shop_item_dl_row:first-child {
    border-top: Min(calc(1 / var(--view-size) * 100vw), 1px) solid #e8e8e8; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_dl_row {
      flex-direction: column;
      gap: Min(calc(4 / var(--view-size) * 100vw), 4px);
      padding: Min(calc(12 / var(--view-size) * 100vw), 12px) 0; } }
  .page_shop .page_shop_item_dl_row dt {
    flex: 0 0 Min(calc(80 / var(--view-size) * 100vw), 80px);
    margin: 0;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    font-weight: 700;
    line-height: 1.55;
    color: #000; }
    @media (max-width: 768px) {
      .page_shop .page_shop_item_dl_row dt {
        flex: none;
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_shop .page_shop_item_dl_row dd {
    flex: 1 1 auto;
    margin: 0;
    min-width: 0;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    font-weight: 400;
    line-height: 1.55;
    color: #000; }
    @media (max-width: 768px) {
      .page_shop .page_shop_item_dl_row dd {
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
.page_shop .page_shop_item_btns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(12 / var(--view-size) * 100vw), 12px); }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_btns {
      width: Min(calc(300 / var(--view-size) * 100vw), 300px);
      margin: 0 auto;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      flex-wrap: nowrap;
      gap: Min(calc(8 / var(--view-size) * 100vw), 8px); } }
.page_shop .page_shop_item_line_btn {
  display: inline-block;
  flex: 0 0 auto;
  box-sizing: border-box;
  padding: 0;
  border-radius: Min(calc(6 / var(--view-size) * 100vw), 6px);
  background: transparent;
  line-height: 0;
  text-decoration: none;
  transition: opacity 0.25s ease;
  overflow: hidden; }
  .page_shop .page_shop_item_line_btn img {
    display: block;
    width: Min(calc(120 / var(--view-size) * 100vw), 120px);
    max-width: 100%;
    height: auto; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_line_btn {
      flex: 0 0 Min(calc(148 / var(--view-size) * 100vw), 148px);
      width: Min(calc(132 / var(--view-size) * 100vw), 132px);
      min-width: Min(calc(148 / var(--view-size) * 100vw), 148px);
      max-width: Min(calc(148 / var(--view-size) * 100vw), 148px); }
      .page_shop .page_shop_item_line_btn img {
        width: 100%; } }
  .page_shop .page_shop_item_line_btn:hover {
    opacity: 0.85; }
.page_shop .page_shop_item_btn_wrap {
  flex: 0 0 auto;
  margin: 0; }
  @media (max-width: 768px) {
    .page_shop .page_shop_item_btn_wrap {
      flex: 0 0 Min(calc(148 / var(--view-size) * 100vw), 148px);
      width: Min(calc(132 / var(--view-size) * 100vw), 132px);
      min-width: Min(calc(148 / var(--view-size) * 100vw), 148px);
      max-width: Min(calc(148 / var(--view-size) * 100vw), 148px); } }
  .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange {
    width: 100%;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;
    padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(64 / var(--view-size) * 100vw), 64px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(24 / var(--view-size) * 100vw), 24px);
    background: #eb5e01;
    color: #fff !important;
    box-shadow: none;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    font-weight: 700;
    line-height: 1.4; }
    .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange::before {
      top: 50%;
      right: Min(calc(8 / var(--view-size) * 100vw), 8px);
      transform: translateY(-50%);
      width: Min(calc(26 / var(--view-size) * 100vw), 26px);
      height: Min(calc(26 / var(--view-size) * 100vw), 26px);
      background: #000; }
    .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange::after {
      top: 50%;
      right: Min(calc(8 / var(--view-size) * 100vw), 8px);
      transform: translateY(-50%);
      width: Min(calc(26 / var(--view-size) * 100vw), 26px);
      height: Min(calc(26 / var(--view-size) * 100vw), 26px);
      font-size: Min(calc(11 / var(--view-size) * 100vw), 11px);
      line-height: Min(calc(26 / var(--view-size) * 100vw), 26px);
      color: #fff; }
    .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
      .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange:hover::before {
        background: #eb5e01; }
      .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange:hover::after {
        color: #fff; }
    @media (max-width: 768px) {
      .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange {
        min-height: Min(calc(44 / var(--view-size) * 100vw), 44px);
        padding: Min(calc(8 / var(--view-size) * 100vw), 8px) Min(calc(36 / var(--view-size) * 100vw), 36px) Min(calc(8 / var(--view-size) * 100vw), 8px) Min(calc(24 / var(--view-size) * 100vw), 24px);
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); }
        .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange::before, .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange::after {
          right: Min(calc(7 / var(--view-size) * 100vw), 7px);
          width: Min(calc(26 / var(--view-size) * 100vw), 26px);
          height: Min(calc(26 / var(--view-size) * 100vw), 26px); }
        .page_shop .page_shop_item_btn_wrap .common_btn.common_btn_orange::after {
          font-size: Min(calc(11 / var(--view-size) * 100vw), 11px);
          line-height: Min(calc(26 / var(--view-size) * 100vw), 26px); } }
.page_shop .page_shop_detail {
  width: 100%;
  max-width: Min(calc(1200 / 1920 * 100vw), 1200px);
  margin: 0 auto;
  padding: Min(calc(72 / var(--view-size) * 100vw), 72px) 0;
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .page_shop .page_shop_detail {
      max-width: Min(calc(333 / var(--view-size) * 100vw), 333px);
      padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0; } }
.page_shop .shop_detail_ttl {
  display: flex;
  align-items: center;
  gap: Min(calc(14 / var(--view-size) * 100vw), 14px);
  margin: 0 0 Min(calc(40 / var(--view-size) * 100vw), 40px);
  font-size: Min(calc(36 / var(--view-size) * 100vw), 36px);
  font-weight: 900;
  line-height: 1.4;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_ttl {
      margin-bottom: Min(calc(24 / var(--view-size) * 100vw), 24px);
      font-size: Min(calc(38 / var(--view-size) * 100vw), 38px); } }
.page_shop .shop_detail_ttl_dot {
  flex-shrink: 0;
  width: Min(calc(12 / var(--view-size) * 100vw), 12px);
  height: Min(calc(12 / var(--view-size) * 100vw), 12px);
  border-radius: 50%;
  background: #eb5e01; }
.page_shop .shop_detail_images {
  display: flex;
  align-items: stretch;
  gap: Min(calc(20 / var(--view-size) * 100vw), 20px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_images {
      flex-direction: column;
      gap: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
.page_shop .shop_detail_images_main {
  flex: 1 1 85%;
  min-width: 0;
  border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px);
  overflow: hidden; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_images_main {
      flex: none;
      width: 100%; } }
  .page_shop .shop_detail_images_main img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: Min(calc(340 / var(--view-size) * 100vw), 340px);
    object-fit: cover;
    aspect-ratio: 4 / 3; }
    @media (max-width: 768px) {
      .page_shop .shop_detail_images_main img {
        min-height: 0;
        aspect-ratio: 16 / 10; } }
.page_shop .shop_detail_images_sub {
  display: flex;
  flex: 1 1 42%;
  flex-direction: column;
  gap: Min(calc(20 / var(--view-size) * 100vw), 20px);
  min-width: 0; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_images_sub {
      flex: none;
      flex-direction: row;
      width: 100%;
      gap: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
.page_shop .shop_detail_images_sub_item {
  flex: 1 1 auto;
  min-height: 0;
  border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px);
  overflow: hidden; }
  .page_shop .shop_detail_images_sub_item img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: Min(calc(160 / var(--view-size) * 100vw), 160px);
    object-fit: cover;
    aspect-ratio: 4 / 3; }
    @media (max-width: 768px) {
      .page_shop .shop_detail_images_sub_item img {
        min-height: 0;
        aspect-ratio: 0; } }
.page_shop .shop_detail_map {
  margin-top: Min(calc(48 / var(--view-size) * 100vw), 48px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_map {
      margin-top: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
.page_shop .shop_detail_map_inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px);
  overflow: hidden; }
  .page_shop .shop_detail_map_inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }
.page_shop .shop_detail_notice {
  margin-top: Min(calc(48 / var(--view-size) * 100vw), 48px);
  padding: Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(36 / var(--view-size) * 100vw), 36px);
  border: Min(calc(1 / var(--view-size) * 100vw), 1px) solid #d8d8d8;
  border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_notice {
      margin-top: Min(calc(28 / var(--view-size) * 100vw), 28px);
      padding: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_shop .shop_detail_notice p {
    margin: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 400;
    line-height: 1.75;
    color: #000; }
    @media (max-width: 768px) {
      .page_shop .shop_detail_notice p {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        line-height: 1.7; } }
.page_shop .shop_detail_info {
  margin: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 0;
  padding: 0; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_info {
      margin-top: Min(calc(28 / var(--view-size) * 100vw), 28px); } }
.page_shop .shop_detail_info_row {
  display: flex;
  align-items: flex-start;
  gap: Min(calc(24 / var(--view-size) * 100vw), 24px);
  padding: Min(calc(18 / var(--view-size) * 100vw), 18px) 0;
  border-bottom: Min(calc(1 / var(--view-size) * 100vw), 1px) solid #e8e8e8; }
  .page_shop .shop_detail_info_row:first-child {
    border-top: Min(calc(1 / var(--view-size) * 100vw), 1px) solid #e8e8e8; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_info_row {
      flex-direction: column;
      gap: Min(calc(6 / var(--view-size) * 100vw), 6px);
      padding: Min(calc(14 / var(--view-size) * 100vw), 14px) 0; } }
  .page_shop .shop_detail_info_row dt {
    flex: 0 0 Min(calc(140 / var(--view-size) * 100vw), 140px);
    margin: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_shop .shop_detail_info_row dt {
        flex: none;
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_shop .shop_detail_info_row dd {
    flex: 1 1 auto;
    margin: 0;
    min-width: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 400;
    line-height: 1.6;
    color: #000; }
    .page_shop .shop_detail_info_row dd a {
      color: #eb5e01;
      font-weight: 700;
      text-decoration: underline;
      transition: opacity 0.25s ease; }
      .page_shop .shop_detail_info_row dd a:hover {
        color: #000; }
    @media (max-width: 768px) {
      .page_shop .shop_detail_info_row dd {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
.page_shop .shop_detail_contact_tel {
  margin: 0 0 Min(calc(14 / var(--view-size) * 100vw), 14px);
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  font-weight: 400;
  line-height: 1.6; }
.page_shop .shop_detail_contact_btns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(16 / var(--view-size) * 100vw), 16px);
  margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_contact_btns {
      flex-wrap: nowrap;
      gap: Min(calc(8 / var(--view-size) * 100vw), 8px); } }
.page_shop .shop_detail_contact_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
  box-sizing: border-box;
  min-height: Min(calc(48 / var(--view-size) * 100vw), 48px);
  padding: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(24 / var(--view-size) * 100vw), 24px);
  border-radius: Min(calc(64 / var(--view-size) * 100vw), 64px);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition: opacity 0.25s ease; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_contact_btn {
      flex: 0 0 Min(calc(148 / var(--view-size) * 100vw), 148px);
      width: Min(calc(148 / var(--view-size) * 100vw), 148px);
      min-width: Min(calc(148 / var(--view-size) * 100vw), 148px);
      max-width: Min(calc(148 / var(--view-size) * 100vw), 148px);
      padding: Min(calc(8 / var(--view-size) * 100vw), 8px) Min(calc(10 / var(--view-size) * 100vw), 10px);
      font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_shop .shop_detail_contact_btn:hover {
    opacity: 0.85; }
.page_shop .shop_detail_contact_btn--line {
  gap: 0;
  min-height: 0;
  padding: 0;
  background: transparent;
  border-radius: Min(calc(6 / var(--view-size) * 100vw), 6px);
  line-height: 0;
  overflow: hidden; }
  .page_shop .shop_detail_contact_btn--line img {
    display: block;
    width: Min(calc(148 / var(--view-size) * 100vw), 148px);
    max-width: 100%;
    height: auto; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_contact_btn--line img {
      width: 100%; } }
.page_shop .shop_detail_contact_btn--mail {
  background: #eb5e01;
  color: #fff; }
  .page_shop .shop_detail_contact_btn--mail .shop_detail_contact_btn_mail_icon {
    display: block;
    flex-shrink: 0;
    width: Min(calc(22 / var(--view-size) * 100vw), 22px);
    height: Min(calc(22 / var(--view-size) * 100vw), 22px);
    object-fit: contain; }
.page_shop .shop_detail_contact_note {
  margin: 0;
  line-height: 1.5;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_contact_note {
      font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
.page_shop .shop_detail_link {
  color: #eb5e01;
  font-weight: 700;
  text-decoration: underline;
  transition: opacity 0.25s ease; }
  .page_shop .shop_detail_link:hover {
    opacity: 0.75;
    text-decoration: underline; }
.page_shop .shop_detail_staff_sep {
  color: #000;
  font-weight: 400; }
.page_shop .shop_detail_pickup {
  margin-top: Min(calc(56 / var(--view-size) * 100vw), 56px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup {
      margin-top: Min(calc(36 / var(--view-size) * 100vw), 36px); } }
.page_shop .shop_detail_pickup_inner {
  position: relative;
  padding: Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(40 / var(--view-size) * 100vw), 40px);
  border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid #eb5e01;
  border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px);
  background: #fff; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_inner {
      padding: Min(calc(36 / var(--view-size) * 100vw), 36px) Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(24 / var(--view-size) * 100vw), 24px);
      border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
.page_shop .shop_detail_pickup_label {
  position: absolute;
  top: 0;
  left: Min(calc(28 / var(--view-size) * 100vw), 28px);
  display: inline-flex;
  align-items: center;
  gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
  margin: 0;
  padding: 0 Min(calc(12 / var(--view-size) * 100vw), 12px);
  transform: translateY(-50%);
  background: #fff;
  font-family: "Montserrat", sans-serif;
  font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 1.2;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_label {
      left: Min(calc(16 / var(--view-size) * 100vw), 16px);
      font-size: Min(calc(27 / var(--view-size) * 100vw), 27px); } }
.page_shop .shop_detail_pickup_label_dot {
  flex-shrink: 0;
  width: Min(calc(10 / var(--view-size) * 100vw), 10px);
  height: Min(calc(10 / var(--view-size) * 100vw), 10px);
  border-radius: 50%;
  background: #eb5e01; }
.page_shop .shop_detail_pickup_main {
  display: flex;
  align-items: flex-start;
  gap: Min(calc(24 / var(--view-size) * 100vw), 24px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_main {
      flex-direction: column;
      gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .shop_detail_pickup_body {
  flex: 1 1 auto;
  min-width: 0; }
.page_shop .shop_detail_pickup_ttl {
  margin: 0 0 Min(calc(20 / var(--view-size) * 100vw), 20px);
  font-size: Min(calc(27 / var(--view-size) * 100vw), 27px);
  font-weight: 900;
  line-height: 1.5;
  color: #eb5e01; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_ttl {
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px);
      font-size: Min(calc(27 / var(--view-size) * 100vw), 27px); } }
.page_shop .shop_detail_pickup_lead,
.page_shop .shop_detail_pickup_lead_sub {
  margin: 0 0 Min(calc(18 / var(--view-size) * 100vw), 18px);
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  font-weight: 400;
  line-height: 1.7;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_lead,
    .page_shop .shop_detail_pickup_lead_sub {
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px);
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
.page_shop .shop_detail_pickup_lead_sub {
  margin-bottom: 0; }
.page_shop .shop_detail_pickup_price {
  margin-bottom: Min(calc(18 / var(--view-size) * 100vw), 18px);
  padding: Min(calc(16 / var(--view-size) * 100vw), 16px);
  border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px);
  background: #eb5e01;
  color: #fff; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_price {
      margin-bottom: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
.page_shop .shop_detail_pickup_price_main {
  margin: 0 0 Min(calc(4 / var(--view-size) * 100vw), 4px);
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  font-weight: 900;
  line-height: 1.4; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_price_main {
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .shop_detail_pickup_price_tag {
  font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
  font-weight: 700; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_price_tag {
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .shop_detail_pickup_price_note {
  margin: 0;
  font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
  font-weight: 400;
  line-height: 1.5; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_price_note {
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
.page_shop .shop_detail_pickup_samples {
  width: Min(calc(580 / var(--view-size) * 100vw), 580px); }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_samples {
      flex: none;
      width: 100%; } }
.page_shop .shop_detail_pickup_samples_img {
  margin-bottom: Min(calc(8 / var(--view-size) * 100vw), 8px);
  border-radius: Min(calc(8 / var(--view-size) * 100vw), 8px);
  overflow: hidden; }
  .page_shop .shop_detail_pickup_samples_img img {
    display: block;
    width: 100%;
    height: auto; }
.page_shop .shop_detail_pickup_samples_caption {
  margin: 0;
  font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
  font-weight: 400;
  line-height: 1.5;
  text-align: right;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_samples_caption {
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      text-align: left; } }
.page_shop .shop_detail_pickup_manager {
  display: flex;
  align-items: flex-start;
  gap: Min(calc(32 / var(--view-size) * 100vw), 32px);
  margin-top: Min(calc(32 / var(--view-size) * 100vw), 32px);
  padding: Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(20 / var(--view-size) * 100vw), 20px);
  border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px);
  background: #f6ede2; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_manager {
      flex-direction: column;
      align-items: center;
      gap: Min(calc(16 / var(--view-size) * 100vw), 16px);
      margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px);
      padding: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .shop_detail_pickup_manager_img {
  flex: 0 0 Min(calc(180 / var(--view-size) * 100vw), 180px);
  width: Min(calc(180 / var(--view-size) * 100vw), 180px);
  border-radius: 50%;
  overflow: hidden;
  background: #fff; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_manager_img {
      flex: none;
      width: 100%; } }
  .page_shop .shop_detail_pickup_manager_img img {
    display: block;
    width: 100%;
    height: auto; }
.page_shop .shop_detail_pickup_manager_body {
  flex: 1 1 auto;
  min-width: 0; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_manager_body {
      width: 100%; } }
.page_shop .shop_detail_pickup_manager_name {
  margin: 0 0 Min(calc(14 / var(--view-size) * 100vw), 14px);
  font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
  font-weight: 900;
  line-height: 1.4;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_manager_name {
      margin-bottom: Min(calc(10 / var(--view-size) * 100vw), 10px);
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      text-align: center; } }
.page_shop .shop_detail_pickup_manager_text {
  margin: 0;
  font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
  font-weight: 400;
  line-height: 1.75;
  color: #000; }
  @media (max-width: 768px) {
    .page_shop .shop_detail_pickup_manager_text {
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      line-height: 1.7; } }
.page_shop .page_shop_area_02 .page_shop_detail_back {
  margin-top: Min(calc(40 / var(--view-size) * 100vw), 40px);
  text-align: center; }
  @media (max-width: 768px) {
    .page_shop .page_shop_area_02 .page_shop_detail_back {
      margin-top: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
.page_shop .page_shop_area_02 .page_shop_detail_back_btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: Min(calc(320 / var(--view-size) * 100vw), 320px);
  max-width: 100%;
  min-height: Min(calc(56 / var(--view-size) * 100vw), 56px);
  padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(56 / var(--view-size) * 100vw), 56px);
  border-radius: 999px;
  background: #fff;
  color: #000;
  font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  box-shadow: inset 0 0 0 Min(calc(1 / var(--view-size) * 100vw), 1px) #000;
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease; }
  @media (max-width: 768px) {
    .page_shop .page_shop_area_02 .page_shop_detail_back_btn {
      min-width: Min(calc(280 / var(--view-size) * 100vw), 280px);
      min-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
      padding-left: Min(calc(52 / var(--view-size) * 100vw), 52px);
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_shop .page_shop_area_02 .page_shop_detail_back_btn::before {
    content: "";
    position: absolute;
    top: 50%;
    left: Min(calc(14 / var(--view-size) * 100vw), 14px);
    transform: translateY(-50%);
    width: Min(calc(32 / var(--view-size) * 100vw), 32px);
    height: Min(calc(32 / var(--view-size) * 100vw), 32px);
    border-radius: 50%;
    background: #000;
    pointer-events: none;
    transition: background-color 0.25s ease; }
  .page_shop .page_shop_area_02 .page_shop_detail_back_btn::after {
    content: "\f060";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    position: absolute;
    top: 50%;
    left: Min(calc(14 / var(--view-size) * 100vw), 14px);
    transform: translateY(-50%);
    width: Min(calc(32 / var(--view-size) * 100vw), 32px);
    height: Min(calc(32 / var(--view-size) * 100vw), 32px);
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    line-height: Min(calc(32 / var(--view-size) * 100vw), 32px);
    text-align: center;
    color: #fff;
    pointer-events: none;
    -webkit-font-smoothing: antialiased;
    transition: color 0.25s ease; }
  .page_shop .page_shop_area_02 .page_shop_detail_back_btn:hover {
    background: #eb5e01;
    color: #fff;
    box-shadow: none; }
    .page_shop .page_shop_area_02 .page_shop_detail_back_btn:hover::before {
      background: #000; }
    .page_shop .page_shop_area_02 .page_shop_detail_back_btn:hover::after {
      color: #fff; }
.page_shop .page_artist_intro_btn_wrap {
  margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px);
  text-align: center; }
  @media (max-width: 768px) {
    .page_shop .page_artist_intro_btn_wrap {
      margin-top: 0;
      text-align: center; } }
.page_shop .page_artist_intro_btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: Min(calc(180 / var(--view-size) * 100vw), 180px);
  max-width: 100%;
  margin: 0 auto;
  padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(28 / var(--view-size) * 100vw), 28px);
  border-radius: 999px;
  background: #eb5e01;
  color: #fff;
  font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
  .page_shop .page_artist_intro_btn.back {
    padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(40 / var(--view-size) * 100vw), 40px); }
  .page_shop .page_artist_intro_btn:hover {
    opacity: 1;
    background: #fff;
    color: #eb5e01 !important;
    box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
  @media (max-width: 768px) {
    .page_shop .page_artist_intro_btn {
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
      margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
.page_shop .page_artist_intro_btn:hover .page_artist_intro_btn_arrow {
  background: #eb5e01; }
  .page_shop .page_artist_intro_btn:hover .page_artist_intro_btn_arrow::before {
    color: #fff; }
.page_shop .page_artist_intro_btn_txt {
  flex: 1 1 auto;
  text-align: center; }
.page_shop .page_artist_intro_btn_arrow {
  position: absolute;
  top: 50%;
  right: Min(calc(10 / var(--view-size) * 100vw), 10px);
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: Min(calc(30 / var(--view-size) * 100vw), 30px);
  height: Min(calc(30 / var(--view-size) * 100vw), 30px);
  border-radius: 50%;
  background: #000;
  transition: background-color 0.25s ease; }
  .page_shop .page_artist_intro_btn_arrow.back {
    right: inherit;
    left: Min(calc(10 / var(--view-size) * 100vw), 10px); }
  .page_shop .page_artist_intro_btn_arrow::before {
    content: "\f061";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-style: normal;
    color: #fff;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    transition: color 0.25s ease; }
  .page_shop .page_artist_intro_btn_arrow.back::before {
    content: "\f060"; }
  @media (max-width: 768px) {
    .page_shop .page_artist_intro_btn_arrow {
      width: Min(calc(32 / var(--view-size) * 100vw), 32px);
      height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
      .page_shop .page_artist_intro_btn_arrow::before {
        font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }

/* =========================================
   page-school
   ========================================= */
.page_school {
  /* ===== list ===== */
  /* ===== item（カードごとに色を上書き） ===== */
  /* ===== タブ（OUR SCHOOL） ===== */
  /* ===== カード本体（左: 画像＋ボタン / 右: タイトル・本文・開催情報） ===== */
  /* ===== タイトル＋アイコン ===== */
  /* TOP .top_school_item_icon と同じ画像・サイズ比率 */
  /* ===== サムネ ===== */
  /* ===== 詳細はこちらボタン ===== */
  /* ===== 説明文 ===== */
  /* ===== 開催情報ボックス ===== */
  /* =========================================
     スクール詳細（個別）
     ========================================= */
  /* =========================================
     関連スクールメニュー
     ========================================= */
  /* =========================================
     スクールの感想
     ========================================= */
  /* =========================================
     オリジナル画材のご紹介
     ========================================= */ }
  .page_school .page_school_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_school .page_school_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_school .page_school_head {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: Min(calc(100 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .page_school .page_school_head {
        margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_school .page_school_ttl {
    font-size: Min(calc(64 / var(--view-size) * 100vw), 64px);
    font-weight: 900;
    line-height: 1.3;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_ttl {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
        line-height: 1.4; } }
  .page_school .page_school_lead {
    margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    line-height: 1.85;
    color: #000;
    font-weight: 700; }
    @media (max-width: 768px) {
      .page_school .page_school_lead {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.75; } }
  .page_school .page_school_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(32 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_school .page_school_list {
        grid-template-columns: 1fr;
        gap: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_school .page_school_item {
    --school-accent: #eb5e01;
    --school-bg: #fff;
    --school-dot: #fff100;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%;
    padding-top: Min(calc(8 / var(--view-size) * 100vw), 10px); }
  .page_school .page_school_item_green {
    --school-accent: #8cc673;
    --school-bg: #fff;
    --school-dot: #fff100; }
  .page_school .page_school_item_blue {
    --school-accent: #70acde;
    --school-bg: #fff;
    --school-dot: #fff100; }
  .page_school .page_school_item_pink {
    --school-accent: #dd6081;
    --school-bg: #fff;
    --school-dot: #fff100; }
  .page_school .page_school_item_purple {
    --school-accent: #985ea3;
    --school-bg: #fff;
    --school-dot: #fff100; }
  .page_school .page_school_item_tab {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
    margin: 0 0 Min(calc(-2 / var(--view-size) * 100vw), -2px) Min(calc(20 / var(--view-size) * 100vw), 24px);
    padding: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(20 / var(--view-size) * 100vw), 22px) Min(calc(12 / var(--view-size) * 100vw), 12px);
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px) Min(calc(12 / var(--view-size) * 100vw), 14px) 0 0;
    background: var(--school-accent);
    color: #fff;
    font-family: "Montserrat", sans-serif;
    font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1;
    z-index: 1; }
    @media (max-width: 768px) {
      .page_school .page_school_item_tab {
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
        margin-left: Min(calc(16 / var(--view-size) * 100vw), 16px);
        padding: Min(calc(10 / var(--view-size) * 100vw), 10px) Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_school .page_school_item_tab_dot {
    flex-shrink: 0;
    width: Min(calc(8 / var(--view-size) * 100vw), 8px);
    height: Min(calc(8 / var(--view-size) * 100vw), 8px);
    border-radius: 50%;
    background: var(--school-dot); }
  .page_school .page_school_item_tab_txt {
    white-space: nowrap; }
  .page_school .page_school_item_box {
    flex: 1 1 auto;
    display: grid;
    grid-template-columns: minmax(0, 34%) minmax(0, 1fr);
    grid-template-rows: auto 1fr auto;
    grid-template-areas: "img head" "img text" "btn schedule";
    gap: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 24px);
    align-items: start;
    box-sizing: border-box;
    width: 100%;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 28px) Min(calc(24 / var(--view-size) * 100vw), 28px);
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--school-accent);
    background: var(--school-bg); }
    @media (max-width: 768px) {
      .page_school .page_school_item_box {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas: "head" "img" "btn" "text" "schedule";
        gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
        min-height: 0;
        padding: Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(22 / var(--view-size) * 100vw), 24px); } }
  .page_school .page_school_item_head {
    grid-area: head;
    display: flex;
    align-items: flex-start;
    gap: Min(calc(10 / var(--view-size) * 100vw), 12px);
    margin: 0;
    min-width: 0; }
    @media (max-width: 768px) {
      .page_school .page_school_item_head {
        gap: Min(calc(10 / var(--view-size) * 100vw), 10px); } }
  .page_school .page_school_item_icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center; }
    .page_school .page_school_item_icon img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
    .page_school .page_school_item_icon.page_school_item_icon_green {
      width: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    .page_school .page_school_item_icon.page_school_item_icon_blue {
      width: Min(calc(14 / var(--view-size) * 100vw), 14px); }
    .page_school .page_school_item_icon.page_school_item_icon_pink {
      width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_school .page_school_item_icon.page_school_item_icon_purple {
      width: Min(calc(36 / var(--view-size) * 100vw), 36px); }
    @media (max-width: 768px) {
      .page_school .page_school_item_icon.page_school_item_icon_green {
        width: Min(calc(20 / var(--view-size) * 100vw), 20px); }
      .page_school .page_school_item_icon.page_school_item_icon_blue {
        width: Min(calc(14 / var(--view-size) * 100vw), 14px); }
      .page_school .page_school_item_icon.page_school_item_icon_pink {
        width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
      .page_school .page_school_item_icon.page_school_item_icon_purple {
        width: Min(calc(36 / var(--view-size) * 100vw), 36px); } }
  .page_school .page_school_item_ttl {
    margin: 0;
    flex: 1 1 auto;
    min-width: 0;
    font-size: Min(calc(20 / var(--view-size) * 100vw), 22px);
    font-weight: 700;
    line-height: 1.45;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_item_ttl {
        font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
  .page_school .page_school_item_img {
    grid-area: img;
    align-self: start;
    border-radius: Min(calc(6 / var(--view-size) * 100vw), 6px);
    overflow: hidden;
    line-height: 0; }
    .page_school .page_school_item_img img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: cover; }
  .page_school .page_school_item_btn_wrap {
    grid-area: btn;
    align-self: end;
    width: 100%;
    margin: 0;
    text-align: center; }
    @media (max-width: 768px) {
      .page_school .page_school_item_btn_wrap {
        align-self: center; } }
  .page_school .page_school_item_btn {
    --btn-accent: #888888;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    max-width: Min(calc(220 / var(--view-size) * 100vw), 220px);
    padding: Min(calc(12 / var(--view-size) * 100vw), 14px) Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(12 / var(--view-size) * 100vw), 14px) Min(calc(24 / var(--view-size) * 100vw), 24px);
    border-radius: 999px;
    background: var(--btn-accent);
    color: #fff;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_school .page_school_item_btn:hover {
      opacity: 1;
      background: #fff;
      color: var(--btn-accent) !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) var(--btn-accent); }
    @media (max-width: 768px) {
      .page_school .page_school_item_btn {
        width: Min(calc(220 / var(--view-size) * 100vw), 220px);
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(44 / var(--view-size) * 100vw), 44px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_item_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_school .page_school_item_btn:hover .page_school_item_btn_arrow {
    background: var(--btn-accent); }
    .page_school .page_school_item_btn:hover .page_school_item_btn_arrow::before {
      color: #fff; }
  .page_school .page_school_item_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(6 / var(--view-size) * 100vw), 6px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(34 / var(--view-size) * 100vw), 34px);
    height: Min(calc(34 / var(--view-size) * 100vw), 34px);
    border-radius: 50%;
    background: #fff;
    transition: background-color 0.25s ease; }
    .page_school .page_school_item_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: var(--btn-accent);
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_school .page_school_item_btn_arrow {
        width: Min(calc(30 / var(--view-size) * 100vw), 30px);
        height: Min(calc(30 / var(--view-size) * 100vw), 30px); }
        .page_school .page_school_item_btn_arrow::before {
          font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_school .page_school_item_text {
    grid-area: text;
    align-self: start;
    margin: 0;
    min-width: 0;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    line-height: 1.85;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_item_text {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
        line-height: 1.8; } }
  .page_school .page_school_item_schedule {
    grid-area: schedule;
    align-self: end;
    width: 100%;
    margin: 0;
    padding: Min(calc(12 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 20px);
    border-radius: Min(calc(6 / var(--view-size) * 100vw), 6px);
    background: #eeeeee;
    color: #000;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 15px);
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .page_school .page_school_item_schedule {
        align-self: stretch;
        padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .page_school .page_school_detail_inner {
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_school .page_school_detail_inner {
        padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0 Min(calc(48 / var(--view-size) * 100vw), 48px); } }
  .page_school .page_school_detail {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin: 0 auto; }
  .page_school .page_school_detail_head {
    display: flex;
    align-items: center;
    gap: Min(calc(16 / var(--view-size) * 100vw), 18px);
    margin: 0 0 Min(calc(18 / var(--view-size) * 100vw), 22px); }
    @media (max-width: 768px) {
      .page_school .page_school_detail_head {
        flex-direction: column;
        align-items: flex-start;
        gap: Min(calc(14 / var(--view-size) * 100vw), 16px);
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_school .page_school_detail_title {
    display: flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
    min-width: 0; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_title {
        width: 100%; } }
  .page_school .page_school_detail_icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_school .page_school_detail_icon img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_icon {
        width: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
  .page_school .page_school_detail_ttl {
    margin: 0;
    min-width: 0;
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
    font-weight: 700;
    line-height: 1.25;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_ttl {
        font-size: Min(calc(26 / var(--view-size) * 100vw), 26px);
        line-height: 1.3; } }
  .page_school .page_school_detail_line {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity 0.2s ease; }
    .page_school .page_school_detail_line:hover {
      opacity: 0.85; }
    .page_school .page_school_detail_line img {
      display: block;
      width: Min(calc(120 / var(--view-size) * 100vw), 140px);
      height: auto; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_line img {
        width: Min(calc(137 / var(--view-size) * 100vw), 137px); } }
  .page_school .page_school_detail_box {
    --detail-accent: #8cc673;
    --detail-bg: #fffddd;
    box-sizing: border-box;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(32 / var(--view-size) * 100vw), 36px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--detail-accent);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: var(--detail-bg); }
    .page_school .page_school_detail_box.is-blue {
      --detail-accent: #70acde;
      --detail-bg: #fff; }
    .page_school .page_school_detail_box.is-pink {
      --detail-accent: #dd6081;
      --detail-bg: #fff; }
    .page_school .page_school_detail_box.is-purple {
      --detail-accent: #985ea3;
      --detail-bg: #fff; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_box {
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_school .page_school_detail_dl {
    margin: 0; }
  .page_school .page_school_detail_row {
    display: grid;
    grid-template-columns: minmax(0, 112px) minmax(0, 1fr);
    gap: Min(calc(20 / var(--view-size) * 100vw), 24px);
    padding: Min(calc(18 / var(--view-size) * 100vw), 20px) 0;
    border-top: 1px solid rgba(0, 0, 0, 0.25); }
    .page_school .page_school_detail_row:first-child {
      border-top: 0;
      padding-top: 0; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_row {
        grid-template-columns: 1fr;
        gap: Min(calc(10 / var(--view-size) * 100vw), 10px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) 0; } }
  .page_school .page_school_detail_dt {
    margin: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_dt {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_school .page_school_detail_dd {
    margin: 0;
    min-width: 0; }
    .page_school .page_school_detail_dd a {
      color: #eb5e01;
      text-decoration: underline;
      transition: opacity 0.25s ease; }
      .page_school .page_school_detail_dd a:hover {
        color: #000; }
  .page_school .page_school_detail_dd_ttl {
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_dd_ttl {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_school .page_school_detail_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85;
    color: #000; }
    .page_school .page_school_detail_text strong {
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
      font-weight: 700; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_text strong {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 15px); } }
  .page_school .page_school_detail_note {
    display: inline-block;
    margin-top: Min(calc(10 / var(--view-size) * 100vw), 10px);
    color: #e4502e;
    font-weight: 700;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); }
    @media (max-width: 768px) {
      .page_school .page_school_detail_note {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_school .page_school_detail_list {
    margin: 0;
    padding: 0;
    list-style: none; }
    .page_school .page_school_detail_list li {
      position: relative;
      padding-left: 1.1em;
      line-height: 1.8;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      color: #000; }
      .page_school .page_school_detail_list li::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0; }
      @media (max-width: 768px) {
        .page_school .page_school_detail_list li {
          font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_school .page_school_detail_link {
    margin: Min(calc(10 / var(--view-size) * 100vw), 10px) 0 0; }
    .page_school .page_school_detail_link a {
      color: #eb5e01;
      text-decoration: underline; }
      .page_school .page_school_detail_link a:hover {
        opacity: 0.8; }
  .page_school .page_school_detail_apply {
    margin-top: Min(calc(40 / var(--view-size) * 100vw), 48px);
    padding: Min(calc(44 / var(--view-size) * 100vw), 52px) Min(calc(48 / var(--view-size) * 100vw), 56px);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: #eb5e01;
    color: #fff; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_apply {
        margin-top: Min(calc(18 / var(--view-size) * 100vw), 18px);
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_school .page_school_detail_apply_text {
    margin: 0 0 Min(calc(28 / var(--view-size) * 100vw), 32px);
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_apply_text {
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px);
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_school .page_school_detail_apply_btn_wrap {
    display: flex;
    justify-content: center; }
  .page_school .page_school_detail_apply_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(360 / var(--view-size) * 100vw), 420px);
    max-width: 100%;
    padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
    border-radius: 999px;
    background: #fff;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    line-height: 1.4;
    box-sizing: border-box;
    transition: background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease; }
    .page_school .page_school_detail_apply_btn:hover {
      opacity: 1;
      background: #000;
      color: #fff !important; }
    @media (max-width: 768px) {
      .page_school .page_school_detail_apply_btn {
        width: 100%;
        max-width: Min(calc(300 / var(--view-size) * 100vw), 320px);
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
        padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(52 / var(--view-size) * 100vw), 52px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_detail_apply_btn:hover .page_school_detail_apply_btn_arrow {
    background: #fff; }
    .page_school .page_school_detail_apply_btn:hover .page_school_detail_apply_btn_arrow::before {
      color: #000; }
  .page_school .page_school_detail_apply_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_school .page_school_detail_apply_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(8 / var(--view-size) * 100vw), 8px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(34 / var(--view-size) * 100vw), 34px);
    height: Min(calc(34 / var(--view-size) * 100vw), 34px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_school .page_school_detail_apply_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
  .page_school .page_school_related_inner {
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_school .page_school_related_inner {
        padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0 Min(calc(48 / var(--view-size) * 100vw), 48px);
        padding-bottom: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_school .page_school_related {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin: 0 auto; }
  .page_school .page_school_related_list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: Min(calc(20 / var(--view-size) * 100vw), 24px) Min(calc(24 / var(--view-size) * 100vw), 28px);
    margin: 0;
    padding: 0;
    list-style: none; }
    @media (max-width: 768px) {
      .page_school .page_school_related_list {
        grid-template-columns: 1fr;
        gap: Min(calc(14 / var(--view-size) * 100vw), 16px); } }
  .page_school .page_school_related_item {
    margin: 0; }
  .page_school .page_school_related_link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: Min(calc(12 / var(--view-size) * 100vw), 16px);
    min-height: Min(calc(72 / var(--view-size) * 100vw), 80px);
    padding: Min(calc(18 / var(--view-size) * 100vw), 20px) Min(calc(24 / var(--view-size) * 100vw), 28px) Min(calc(18 / var(--view-size) * 100vw), 20px) Min(calc(56 / var(--view-size) * 100vw), 64px);
    box-sizing: border-box;
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid #000;
    border-radius: 999px;
    background: #fff;
    color: #000;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease; }
    .page_school .page_school_related_link:hover {
      opacity: 1;
      background: #000;
      color: #fff;
      border-color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_related_link {
        gap: Min(calc(6 / var(--view-size) * 100vw), 6px);
        min-height: Min(calc(64 / var(--view-size) * 100vw), 72px);
        padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(20 / var(--view-size) * 100vw), 22px) Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_school .page_school_related_item.is-active.is-green .page_school_related_link {
    --related-accent: #8cc673; }
  .page_school .page_school_related_item.is-active.is-blue .page_school_related_link {
    --related-accent: #70acde; }
  .page_school .page_school_related_item.is-active.is-pink .page_school_related_link {
    --related-accent: #dd6081; }
  .page_school .page_school_related_item.is-active.is-purple .page_school_related_link {
    --related-accent: #985ea3; }
  .page_school .page_school_related_item.is-active .page_school_related_link {
    border-color: var(--related-accent);
    background: var(--related-accent);
    color: #fff; }
    .page_school .page_school_related_item.is-active .page_school_related_link:hover {
      opacity: 1;
      background: #fff;
      color: var(--related-accent);
      border-color: var(--related-accent);
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) var(--related-accent); }
  .page_school .page_school_related_link:hover .page_school_related_arrow {
    background: #fff; }
    .page_school .page_school_related_link:hover .page_school_related_arrow::before {
      color: #000; }
  .page_school .page_school_related_item.is-active .page_school_related_link:hover .page_school_related_arrow {
    background: var(--related-accent); }
    .page_school .page_school_related_item.is-active .page_school_related_link:hover .page_school_related_arrow::before {
      color: #fff; }
  .page_school .page_school_related_txt {
    flex: 1 1 auto;
    min-width: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.45;
    text-align: left; }
    @media (max-width: 768px) {
      .page_school .page_school_related_txt {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .page_school .page_school_related_arrow {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(34 / var(--view-size) * 100vw), 34px);
    height: Min(calc(34 / var(--view-size) * 100vw), 34px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_school .page_school_related_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_school .page_school_related_arrow {
        width: Min(calc(32 / var(--view-size) * 100vw), 32px);
        height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
        .page_school .page_school_related_arrow::before {
          font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
  .page_school .page_school_voice_bg {
    background-color: #f6ede2; }
  .page_school .page_school_voice_inner {
    padding: Min(calc(72 / var(--view-size) * 100vw), 80px) 0; }
  .page_school .page_school_voice {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin: 0 auto; }
  .page_school .page_school_voice_ttl {
    display: inline-flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
    margin: 0 0 Min(calc(28 / var(--view-size) * 100vw), 32px);
    font-size: Min(calc(24 / var(--view-size) * 100vw), 26px);
    font-weight: 700;
    line-height: 1.4;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_voice_ttl {
        margin-bottom: Min(calc(20 / var(--view-size) * 100vw), 22px);
        font-size: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_school .page_school_voice_ttl_dot {
    flex-shrink: 0;
    width: Min(calc(8 / var(--view-size) * 100vw), 8px);
    height: Min(calc(8 / var(--view-size) * 100vw), 8px);
    border-radius: 50%;
    background: #eb5e01; }
  .page_school .page_school_voice_list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: Min(calc(24 / var(--view-size) * 100vw), 28px) Min(calc(28 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_school .page_school_voice_list {
        grid-template-columns: 1fr;
        gap: Min(calc(18 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_voice_item {
    display: flex;
    align-items: flex-start;
    gap: Min(calc(18 / var(--view-size) * 100vw), 20px);
    padding: Min(calc(22 / var(--view-size) * 100vw), 24px) Min(calc(22 / var(--view-size) * 100vw), 26px);
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 12px);
    background: #fff;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .page_school .page_school_voice_item {
        flex-direction: column;
        align-items: flex-start;
        gap: Min(calc(16 / var(--view-size) * 100vw), 16px);
        padding: Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(18 / var(--view-size) * 100vw), 18px); } }
  .page_school .page_school_voice_item--wide {
    grid-column: 1 / -1; }
  .page_school .page_school_voice_item_avatar {
    flex-shrink: 0;
    width: Min(calc(96 / var(--view-size) * 100vw), 110px);
    border-radius: Min(calc(10 / var(--view-size) * 100vw), 10px); }
    .page_school .page_school_voice_item_avatar.is-01 {
      background-image: url("../images/school/voice_avatar_01.png"); }
    .page_school .page_school_voice_item_avatar.is-02 {
      background-image: url("../images/school/voice_avatar_02.png"); }
    .page_school .page_school_voice_item_avatar.is-03 {
      background-image: url("../images/school/voice_avatar_03.png"); }
    .page_school .page_school_voice_item_avatar.is-04 {
      background-image: url("../images/school/voice_avatar_04.png"); }
    .page_school .page_school_voice_item_avatar.is-05 {
      background-image: url("../images/school/voice_avatar_05.png"); }
    @media (max-width: 768px) {
      .page_school .page_school_voice_item_avatar {
        width: Min(calc(109 / var(--view-size) * 100vw), 109px);
        margin: 0 auto; } }
  .page_school .page_school_voice_item_body {
    flex: 1 1 auto;
    min-width: 0; }
  .page_school .page_school_voice_item_name {
    margin: 0 0 Min(calc(12 / var(--view-size) * 100vw), 12px);
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.45;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_voice_item_name {
        font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_voice_item_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85;
    color: #000; }
  .page_school .page_school_intro_inner {
    padding: min(90 / var(--view-size) * 100vw, 80px) 0 min(64 / var(--view-size) * 100vw, 120px); }
    @media (max-width: 768px) {
      .page_school .page_school_intro_inner {
        padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0 Min(calc(48 / var(--view-size) * 100vw), 48px); } }
  .page_school .page_school_intro {
    position: relative;
    margin: 0 auto;
    padding: Min(calc(60 / var(--view-size) * 100vw), 64px) Min(calc(48 / var(--view-size) * 100vw), 56px) Min(calc(48 / var(--view-size) * 100vw), 56px);
    border: Min(calc(3 / var(--view-size) * 100vw), 3px) solid #eb5e01;
    border-radius: Min(calc(16 / var(--view-size) * 100vw), 18px);
    background: #fff;
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px)); }
    @media (max-width: 768px) {
      .page_school .page_school_intro {
        width: 100%;
        margin-top: Min(calc(20 / var(--view-size) * 100vw), 24px);
        padding: Min(calc(70 / var(--view-size) * 100vw), 70px) Min(calc(20 / var(--view-size) * 100vw), 22px) Min(calc(24 / var(--view-size) * 100vw), 28px);
        border-width: Min(calc(2 / var(--view-size) * 100vw), 2px);
        border-radius: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_intro_ttl {
    position: absolute;
    top: 0;
    left: Min(calc(40 / var(--view-size) * 100vw), 40px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
    margin: 0;
    padding: 0 Min(calc(16 / var(--view-size) * 100vw), 20px);
    background: #fff;
    font-size: Min(calc(22 / var(--view-size) * 100vw), 24px);
    font-weight: 900;
    line-height: 1.4;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_ttl {
        top: Min(calc(16 / var(--view-size) * 100vw), 16px);
        left: Min(calc(16 / var(--view-size) * 100vw), 16px);
        transform: translateY(-50%);
        align-items: flex-start;
        gap: Min(calc(8 / var(--view-size) * 100vw), 10px);
        padding: 0 Min(calc(10 / var(--view-size) * 100vw), 12px);
        background: #fff;
        font-size: Min(calc(27 / var(--view-size) * 100vw), 27px);
        line-height: 1.45; } }
  .page_school .page_school_intro_ttl_dot {
    flex-shrink: 0;
    width: Min(calc(12 / var(--view-size) * 100vw), 12px);
    height: Min(calc(12 / var(--view-size) * 100vw), 12px);
    border-radius: 50%;
    background: #eb5e01; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_ttl_dot {
        width: Min(calc(10 / var(--view-size) * 100vw), 10px);
        height: Min(calc(10 / var(--view-size) * 100vw), 10px);
        margin-top: Min(calc(8 / var(--view-size) * 100vw), 8px); } }
  .page_school .page_school_intro_body {
    display: flex;
    align-items: center;
    gap: Min(calc(40 / var(--view-size) * 100vw), 48px); }
    @media (max-width: 768px) {
      .page_school .page_school_intro_body {
        flex-direction: column;
        align-items: stretch;
        gap: Min(calc(20 / var(--view-size) * 100vw), 24px); } }
  .page_school .page_school_intro_textarea {
    flex: 1 1 auto;
    min-width: 0; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_textarea {
        display: flex;
        flex-direction: column;
        gap: Min(calc(20 / var(--view-size) * 100vw), 22px); } }
  .page_school .page_school_intro_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.95;
    color: #000; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_text {
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
        line-height: 1.85; } }
  .page_school .page_school_intro_btn_wrap {
    margin-top: Min(calc(28 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_school .page_school_intro_btn_wrap {
        margin-top: 0;
        text-align: center; } }
  .page_school .page_school_intro_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: Min(calc(320 / var(--view-size) * 100vw), 340px);
    max-width: 100%;
    padding: Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(60 / var(--view-size) * 100vw), 60px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 999px;
    background: #eb5e01;
    color: #fff;
    font-size: Min(calc(17 / var(--view-size) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_school .page_school_intro_btn:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_btn {
        width: 100%;
        max-width: 100%;
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_school .page_school_intro_btn:hover .page_school_intro_btn_arrow {
    background: #eb5e01; }
    .page_school .page_school_intro_btn:hover .page_school_intro_btn_arrow::before {
      color: #fff; }
  .page_school .page_school_intro_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_btn_txt {
        text-align: left; } }
  .page_school .page_school_intro_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(10 / var(--view-size) * 100vw), 10px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(36 / var(--view-size) * 100vw), 36px);
    height: Min(calc(36 / var(--view-size) * 100vw), 36px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_school .page_school_intro_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_btn_arrow {
        width: Min(calc(32 / var(--view-size) * 100vw), 32px);
        height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
        .page_school .page_school_intro_btn_arrow::before {
          font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
  .page_school .page_school_intro_img {
    flex: 0 0 Min(calc(360 / var(--view-size) * 100vw), 360px);
    width: Min(calc(360 / var(--view-size) * 100vw), 360px);
    max-width: 100%;
    line-height: 0; }
    .page_school .page_school_intro_img img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: contain; }
    @media (max-width: 768px) {
      .page_school .page_school_intro_img {
        flex: 0 0 auto;
        width: 100%;
        border-radius: Min(calc(10 / var(--view-size) * 100vw), 10px);
        overflow: hidden; }
        .page_school .page_school_intro_img img {
          display: block;
          width: 100%;
          height: auto;
          object-fit: cover; } }

/* =========================================
   page-service
   ========================================= */
html {
  scroll-padding-top: 95px; }
  @media (max-width: 768px) {
    html {
      scroll-padding-top: 75px; } }

.page_service {
  /* ===== list ===== */
  /* ===== item（カードごとに色を上書き） ===== */
  /* ===== カード本体（左: 画像＋ボタン / 右: タイトル・本文・開催情報） ===== */
  /* ===== タイトル＋アイコン ===== */
  /* ===== サムネ ===== */
  /* =========================================
     スクール詳細（個別）
     ========================================= */
  /* =========================================
     オリジナル画材のご紹介
     ========================================= */ }
  .page_service .page_service_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_service .page_service_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_service .page_service_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_service .page_service_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_service .page_service_head {
    width: min(100%, Min(calc(900 / var(--view-size) * 100vw), 900px));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: Min(calc(100 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .page_service .page_service_head {
        margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
    .page_service .page_service_head .service_level {
      margin-top: 2em; }
  .page_service .page_service_ttl {
    font-size: Min(calc(64 / var(--view-size) * 100vw), 64px);
    font-weight: 900;
    line-height: 1.3;
    color: #000; }
    @media (max-width: 768px) {
      .page_service .page_service_ttl {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
        line-height: 1.4; } }
  .page_service .page_service_lead {
    margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    line-height: 1.85;
    color: #000;
    font-weight: 700; }
    @media (max-width: 768px) {
      .page_service .page_service_lead {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.75; } }
  .page_service .page_service_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(32 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_service .page_service_list {
        grid-template-columns: 1fr;
        gap: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_service .page_service_item {
    --service-accent: #eb5e01;
    --service-bg: #eb5e01;
    --service-dot: #fff100;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%;
    padding-top: Min(calc(8 / var(--view-size) * 100vw), 10px);
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_service .page_service_item:hover {
      opacity: 1;
      --service-bg: #fff; }
      .page_service .page_service_item:hover h3 {
        color: #eb5e01; }
  .page_service .page_service_item_box {
    box-sizing: border-box;
    width: 100%;
    padding: Min(calc(24 / var(--view-size) * 100vw), 28px);
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--service-accent);
    background: var(--service-bg);
    height: 100%; }
    @media (max-width: 768px) {
      .page_service .page_service_item_box {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas: "head" "img" "btn" "text" "schedule";
        gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
        min-height: 0;
        padding: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_service .page_service_item_head {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .page_service .page_service_item_head h3 {
      color: #fff;
      font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
      line-height: 1.2; }
  .page_service .page_service_item_img {
    grid-area: img;
    align-self: start;
    border-radius: Min(calc(6 / var(--view-size) * 100vw), 6px);
    overflow: hidden;
    line-height: 0; }
    .page_service .page_service_item_img img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: cover; }
  .page_service .page_service_item_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_service .page_service_item_btn:hover .page_service_item_btn_arrow {
    background: var(--btn-accent); }
    .page_service .page_service_item_btn:hover .page_service_item_btn_arrow::before {
      color: #fff; }
  .page_service .page_service_item_btn_arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(24 / var(--view-size) * 100vw), 24px);
    height: Min(calc(24 / var(--view-size) * 100vw), 24px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_service .page_service_item_btn_arrow::before {
      content: "\f063";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_service .page_service_item_btn_arrow {
        width: Min(calc(30 / var(--view-size) * 100vw), 30px);
        height: Min(calc(30 / var(--view-size) * 100vw), 30px); }
        .page_service .page_service_item_btn_arrow::before {
          font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_service .page_service_detail_inner {
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_service .page_service_detail_inner {
        padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0 Min(calc(48 / var(--view-size) * 100vw), 48px); } }
  .page_service .page_service_detail {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin: 0 auto; }
  .page_service .page_service_detail_head {
    display: flex;
    align-items: center;
    gap: Min(calc(16 / var(--view-size) * 100vw), 18px);
    margin: 0 0 Min(calc(18 / var(--view-size) * 100vw), 22px); }
    @media (max-width: 768px) {
      .page_service .page_service_detail_head {
        flex-direction: column;
        align-items: flex-start;
        gap: Min(calc(14 / var(--view-size) * 100vw), 16px);
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_service .page_service_detail_title {
    display: flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
    min-width: 0; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_title {
        width: 100%; } }
  .page_service .page_service_detail_icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_service .page_service_detail_icon img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_icon {
        width: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
  .page_service .page_service_detail_ttl {
    margin: 0;
    min-width: 0;
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
    font-weight: 700;
    line-height: 1.25;
    color: #000; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_ttl {
        font-size: Min(calc(26 / var(--view-size) * 100vw), 26px);
        line-height: 1.3; } }
  .page_service .page_service_detail_line {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity 0.2s ease; }
    .page_service .page_service_detail_line:hover {
      opacity: 0.85; }
    .page_service .page_service_detail_line img {
      display: block;
      width: Min(calc(120 / var(--view-size) * 100vw), 140px);
      height: auto; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_line img {
        width: Min(calc(137 / var(--view-size) * 100vw), 137px); } }
  .page_service .page_service_detail_box {
    --detail-accent: #8cc673;
    --detail-bg: #fffddd;
    box-sizing: border-box;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(32 / var(--view-size) * 100vw), 36px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--detail-accent);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: var(--detail-bg); }
    .page_service .page_service_detail_box.is-blue {
      --detail-accent: #70acde;
      --detail-bg: #fff; }
    .page_service .page_service_detail_box.is-pink {
      --detail-accent: #dd6081;
      --detail-bg: #fff; }
    .page_service .page_service_detail_box.is-purple {
      --detail-accent: #985ea3;
      --detail-bg: #fff; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_box {
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_service .page_service_detail_dl {
    margin: 0; }
  .page_service .page_service_detail_row {
    display: grid;
    grid-template-columns: minmax(0, 112px) minmax(0, 1fr);
    gap: Min(calc(20 / var(--view-size) * 100vw), 24px);
    padding: Min(calc(18 / var(--view-size) * 100vw), 20px) 0;
    border-top: 1px solid rgba(0, 0, 0, 0.25); }
    .page_service .page_service_detail_row:first-child {
      border-top: 0;
      padding-top: 0; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_row {
        grid-template-columns: 1fr;
        gap: Min(calc(10 / var(--view-size) * 100vw), 10px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) 0; } }
  .page_service .page_service_detail_dt {
    margin: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_dt {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_service .page_service_detail_dd {
    margin: 0;
    min-width: 0; }
  .page_service .page_service_detail_dd_ttl {
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_dd_ttl {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_service .page_service_detail_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85;
    color: #000; }
    .page_service .page_service_detail_text strong {
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
      font-weight: 700; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_text strong {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 15px); } }
  .page_service .page_service_detail_note {
    display: inline-block;
    margin-top: Min(calc(10 / var(--view-size) * 100vw), 10px);
    color: #e4502e;
    font-weight: 700;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); }
    @media (max-width: 768px) {
      .page_service .page_service_detail_note {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_service .page_service_detail_list {
    margin: 0;
    padding: 0;
    list-style: none; }
    .page_service .page_service_detail_list li {
      position: relative;
      padding-left: 1.1em;
      line-height: 1.8;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      color: #000; }
      .page_service .page_service_detail_list li::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0; }
      @media (max-width: 768px) {
        .page_service .page_service_detail_list li {
          font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_service .page_service_detail_link {
    margin: Min(calc(10 / var(--view-size) * 100vw), 10px) 0 0; }
    .page_service .page_service_detail_link a {
      color: #eb5e01;
      text-decoration: underline; }
      .page_service .page_service_detail_link a:hover {
        opacity: 0.8; }
  .page_service .page_service_detail_apply {
    margin-top: Min(calc(40 / var(--view-size) * 100vw), 48px);
    padding: Min(calc(44 / var(--view-size) * 100vw), 52px) Min(calc(48 / var(--view-size) * 100vw), 56px);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: #eb5e01;
    color: #fff; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_apply {
        margin-top: Min(calc(18 / var(--view-size) * 100vw), 18px);
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_service .page_service_detail_apply_text {
    margin: 0 0 Min(calc(28 / var(--view-size) * 100vw), 32px);
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_apply_text {
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px);
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_service .page_service_detail_apply_btn_wrap {
    display: flex;
    justify-content: center; }
  .page_service .page_service_detail_apply_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(360 / var(--view-size) * 100vw), 420px);
    max-width: 100%;
    padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
    border-radius: 999px;
    background: #fff;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    line-height: 1.4;
    box-sizing: border-box;
    transition: background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease; }
    .page_service .page_service_detail_apply_btn:hover {
      opacity: 1;
      background: #000;
      color: #fff !important; }
    @media (max-width: 768px) {
      .page_service .page_service_detail_apply_btn {
        width: 100%;
        max-width: Min(calc(300 / var(--view-size) * 100vw), 320px);
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
        padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(52 / var(--view-size) * 100vw), 52px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_service .page_service_detail_apply_btn:hover .page_service_detail_apply_btn_arrow {
    background: #fff; }
    .page_service .page_service_detail_apply_btn:hover .page_service_detail_apply_btn_arrow::before {
      color: #000; }
  .page_service .page_service_detail_apply_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_service .page_service_detail_apply_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(8 / var(--view-size) * 100vw), 8px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(34 / var(--view-size) * 100vw), 34px);
    height: Min(calc(34 / var(--view-size) * 100vw), 34px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_service .page_service_detail_apply_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
  .page_service .page_service_intro_ttl {
    display: inline-flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 12px);
    margin: 0;
    padding: 0;
    font-size: Min(calc(34 / var(--view-size) * 100vw), 34px);
    font-weight: 900;
    line-height: 1;
    color: #000;
    margin-bottom: Min(calc(34 / var(--view-size) * 100vw), 34px); }
    @media (max-width: 768px) {
      .page_service .page_service_intro_ttl {
        align-items: flex-start;
        gap: Min(calc(8 / var(--view-size) * 100vw), 10px);
        padding: 0 Min(calc(10 / var(--view-size) * 100vw), 12px);
        font-size: Min(calc(27 / var(--view-size) * 100vw), 27px);
        line-height: 1.45; } }
  .page_service .page_service_intro_ttl_dot {
    flex-shrink: 0;
    width: Min(calc(12 / var(--view-size) * 100vw), 12px);
    height: Min(calc(12 / var(--view-size) * 100vw), 12px);
    border-radius: 50%;
    background: #eb5e01; }
    @media (max-width: 768px) {
      .page_service .page_service_intro_ttl_dot {
        width: Min(calc(10 / var(--view-size) * 100vw), 10px);
        height: Min(calc(10 / var(--view-size) * 100vw), 10px);
        margin-top: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_service .page_service_intro_btn_wrap {
    margin-top: Min(calc(28 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_service .page_service_intro_btn_wrap {
        margin-top: 0;
        text-align: center; } }
  .page_service .page_service_intro_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: Min(calc(220 / var(--view-size) * 100vw), 220px);
    max-width: 100%;
    margin: 0 Min(calc(5 / var(--view-size) * 100vw), 5px);
    padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(60 / var(--view-size) * 100vw), 60px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 999px;
    background: #eb5e01;
    color: #fff;
    font-size: Min(calc(17 / var(--view-size) * 100vw), 18px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_service .page_service_intro_btn:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
    @media (max-width: 768px) {
      .page_service .page_service_intro_btn {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(20 / var(--view-size) * 100vw), 20px);
        margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_service .page_service_intro_btn:hover .page_service_intro_btn_arrow {
    background: #eb5e01; }
    .page_service .page_service_intro_btn:hover .page_service_intro_btn_arrow::before {
      color: #fff; }
  .page_service .page_service_intro_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
    @media (max-width: 768px) {
      .page_service .page_service_intro_btn_txt {
        text-align: left; } }
  .page_service .page_service_intro_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(10 / var(--view-size) * 100vw), 10px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(36 / var(--view-size) * 100vw), 36px);
    height: Min(calc(36 / var(--view-size) * 100vw), 36px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_service .page_service_intro_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_service .page_service_intro_btn_arrow {
        width: Min(calc(32 / var(--view-size) * 100vw), 32px);
        height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
        .page_service .page_service_intro_btn_arrow::before {
          font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
  .page_service .page_service_intro_img {
    flex: 0 0 Min(calc(360 / var(--view-size) * 100vw), 360px);
    width: Min(calc(360 / var(--view-size) * 100vw), 360px);
    max-width: 100%;
    line-height: 0; }
    .page_service .page_service_intro_img img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: contain; }
    @media (max-width: 768px) {
      .page_service .page_service_intro_img {
        flex: 0 0 auto;
        width: 100%;
        border-radius: Min(calc(10 / var(--view-size) * 100vw), 10px);
        overflow: hidden; }
        .page_service .page_service_intro_img img {
          display: block;
          width: 100%;
          height: auto;
          object-fit: cover; } }
  .page_service .page_service_grid_container {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
    width: 100%;
    grid-template-areas: "item-a item-d" "item-a item-e"; }
    .page_service .page_service_grid_container .page_service_grid_item_a {
      grid-area: item-a; }
      .page_service .page_service_grid_container .page_service_grid_item_a img {
        border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px); }
    .page_service .page_service_grid_container .page_service_grid_item_d {
      grid-area: item-d; }
      .page_service .page_service_grid_container .page_service_grid_item_d h3 {
        font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
        margin-bottom: Min(calc(25 / var(--view-size) * 100vw), 25px);
        line-height: 1.4; }
        @media (max-width: 768px) {
          .page_service .page_service_grid_container .page_service_grid_item_d h3 {
            font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); } }
    .page_service .page_service_grid_container .page_service_grid_item_e {
      grid-area: item-e; }
      .page_service .page_service_grid_container .page_service_grid_item_e img {
        border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px); }
      .page_service .page_service_grid_container .page_service_grid_item_e table {
        width: 100%;
        border-collapse: collapse;
        border-top: 1px solid #333;
        border-left: 1px solid #333;
        margin-bottom: 1em; }
        .page_service .page_service_grid_container .page_service_grid_item_e table th, .page_service .page_service_grid_container .page_service_grid_item_e table td {
          padding: 10px;
          border-right: 1px solid #333;
          border-bottom: 1px solid #333; }
        .page_service .page_service_grid_container .page_service_grid_item_e table th {
          color: #fff;
          background-color: #eb5e01; }
        .page_service .page_service_grid_container .page_service_grid_item_e table td {
          text-align: center;
          background-color: #fff; }
        .page_service .page_service_grid_container .page_service_grid_item_e table tr:nth-child(odd) td {
          background-color: #eee; }
      .page_service .page_service_grid_container .page_service_grid_item_e .page_service_explain {
        color: #eb5e01;
        font-weight: 700; }
      .page_service .page_service_grid_container .page_service_grid_item_e p a {
        color: #eb5e01;
        text-decoration: underline; }
    @media (max-width: 768px) {
      .page_service .page_service_grid_container {
        grid-template-columns: 1fr;
        grid-template-areas: "item-d" "item-a" "item-e"; } }

/* =========================================
   page-artist
   ========================================= */
.page_artist {
  /* ===== list ===== */
  /* ===== item（カードごとに色を上書き） ===== */
  /* ===== カード本体（左: 画像＋ボタン / 右: タイトル・本文・開催情報） ===== */
  /* ===== タイトル＋アイコン ===== */
  /* ===== サムネ ===== */
  /* =========================================
     スクール詳細（個別）
     ========================================= */
  /* =========================================
     オリジナル画材のご紹介
     ========================================= */
  /* =========================================
     詳細ページ
     ========================================= */ }
  .page_artist .page_artist_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_artist .page_artist_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_artist .page_artist_head {
    width: min(100%, Min(calc(760 / var(--view-size) * 100vw), 760px));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: Min(calc(100 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_head {
        margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_artist .page_artist_ttl {
    font-size: Min(calc(64 / var(--view-size) * 100vw), 64px);
    font-weight: 900;
    line-height: 1.3;
    color: #000; }
    @media (max-width: 768px) {
      .page_artist .page_artist_ttl {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
        line-height: 1.4; } }
  .page_artist .page_artist_lead {
    margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    line-height: 1.85;
    color: #000;
    font-weight: 700; }
    @media (max-width: 768px) {
      .page_artist .page_artist_lead {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.75; } }
  .page_artist .page_artist_list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(32 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_list {
        grid-template-columns: 1fr;
        gap: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_artist .page_artist_item {
    --artist-accent: #eb5e01;
    --artist-bg: #fff;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    height: 100%;
    padding-top: Min(calc(8 / var(--view-size) * 100vw), 10px);
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
  .page_artist .page_artist_item_box {
    box-sizing: border-box;
    width: 100%;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 28px) Min(calc(24 / var(--view-size) * 100vw), 28px);
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--artist-accent);
    background: var(--artist-bg);
    height: 100%; }
    @media (max-width: 768px) {
      .page_artist .page_artist_item_box {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-template-areas: "head" "img" "btn" "text" "schedule";
        gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
        min-height: 0;
        padding: Min(calc(20 / var(--view-size) * 100vw), 20px) Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(22 / var(--view-size) * 100vw), 24px); } }
  .page_artist .page_artist_item_head {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px);
    margin-bottom: Min(calc(18/ var(--view-size) * 100vw), 18px); }
    .page_artist .page_artist_item_head h3 {
      margin: 0;
      padding: 0;
      color: #eb5e01;
      font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
      line-height: 1.2; }
    .page_artist .page_artist_item_head span {
      display: inline-block;
      color: #fff;
      background-color: #000;
      line-height: 1;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      padding: Min(calc(5 / var(--view-size) * 100vw), 5px) Min(calc(14 / var(--view-size) * 100vw), 14px);
      border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px);
      margin-top: Min(calc(5 / var(--view-size) * 100vw), 5px);
      margin-left: Min(calc(15 / var(--view-size) * 100vw), 15px); }
  .page_artist .page_artist_item_tag span {
    display: inline-block;
    color: #eb5e01;
    border: 1px solid #eb5e01;
    line-height: 1;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    padding: Min(calc(5 / var(--view-size) * 100vw), 5px) Min(calc(14 / var(--view-size) * 100vw), 14px);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px);
    margin-bottom: Min(calc(5 / var(--view-size) * 100vw), 5px);
    margin-right: Min(calc(5 / var(--view-size) * 100vw), 5px); }
  .page_artist .page_artist_item_img {
    grid-area: img;
    align-self: start;
    overflow: hidden;
    line-height: 0; }
    .page_artist .page_artist_item_img img {
      display: block;
      width: 100%;
      height: auto;
      object-fit: cover; }
  .page_artist .page_artist_item_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_artist .page_artist_item_btn:hover .page_artist_item_btn_arrow {
    background: var(--btn-accent); }
    .page_artist .page_artist_item_btn:hover .page_artist_item_btn_arrow::before {
      color: #fff; }
  .page_artist .page_artist_item_btn_arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(24 / var(--view-size) * 100vw), 24px);
    height: Min(calc(24 / var(--view-size) * 100vw), 24px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_artist .page_artist_item_btn_arrow::before {
      content: "\f063";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    @media (max-width: 768px) {
      .page_artist .page_artist_item_btn_arrow {
        width: Min(calc(30 / var(--view-size) * 100vw), 30px);
        height: Min(calc(30 / var(--view-size) * 100vw), 30px); }
        .page_artist .page_artist_item_btn_arrow::before {
          font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_artist .page_artist_detail_inner {
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_inner {
        padding: Min(calc(40 / var(--view-size) * 100vw), 40px) 0 Min(calc(48 / var(--view-size) * 100vw), 48px); } }
  .page_artist .page_artist_detail {
    width: min(100%, Min(calc(870 / var(--view-size) * 100vw), 870px));
    margin: 0 auto; }
  .page_artist .page_artist_detail_head {
    display: flex;
    align-items: center;
    gap: Min(calc(16 / var(--view-size) * 100vw), 18px);
    margin: 0 0 Min(calc(18 / var(--view-size) * 100vw), 22px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_head {
        flex-direction: column;
        align-items: flex-start;
        gap: Min(calc(14 / var(--view-size) * 100vw), 16px);
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_artist .page_artist_detail_title {
    display: flex;
    align-items: center;
    gap: Min(calc(12 / var(--view-size) * 100vw), 14px);
    min-width: 0; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_title {
        width: 100%; } }
  .page_artist .page_artist_detail_icon {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_artist .page_artist_detail_icon img {
      display: block;
      width: 100%;
      height: auto;
      vertical-align: bottom; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_icon {
        width: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
  .page_artist .page_artist_detail_ttl {
    margin: 0;
    min-width: 0;
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
    font-weight: 700;
    line-height: 1.25;
    color: #000; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_ttl {
        font-size: Min(calc(26 / var(--view-size) * 100vw), 26px);
        line-height: 1.3; } }
  .page_artist .page_artist_detail_line {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity 0.2s ease; }
    .page_artist .page_artist_detail_line:hover {
      opacity: 0.85; }
    .page_artist .page_artist_detail_line img {
      display: block;
      width: Min(calc(120 / var(--view-size) * 100vw), 140px);
      height: auto; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_line img {
        width: Min(calc(137 / var(--view-size) * 100vw), 137px); } }
  .page_artist .page_artist_detail_box {
    --detail-accent: #8cc673;
    --detail-bg: #fffddd;
    box-sizing: border-box;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(32 / var(--view-size) * 100vw), 36px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid var(--detail-accent);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: var(--detail-bg); }
    .page_artist .page_artist_detail_box.is-blue {
      --detail-accent: #70acde;
      --detail-bg: #fff; }
    .page_artist .page_artist_detail_box.is-pink {
      --detail-accent: #dd6081;
      --detail-bg: #fff; }
    .page_artist .page_artist_detail_box.is-purple {
      --detail-accent: #985ea3;
      --detail-bg: #fff; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_box {
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_artist .page_artist_detail_dl {
    margin: 0; }
  .page_artist .page_artist_detail_row {
    display: grid;
    grid-template-columns: minmax(0, 112px) minmax(0, 1fr);
    gap: Min(calc(20 / var(--view-size) * 100vw), 24px);
    padding: Min(calc(18 / var(--view-size) * 100vw), 20px) 0;
    border-top: 1px solid rgba(0, 0, 0, 0.25); }
    .page_artist .page_artist_detail_row:first-child {
      border-top: 0;
      padding-top: 0; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_row {
        grid-template-columns: 1fr;
        gap: Min(calc(10 / var(--view-size) * 100vw), 10px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) 0; } }
  .page_artist .page_artist_detail_dt {
    margin: 0;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_dt {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_artist .page_artist_detail_dd {
    margin: 0;
    min-width: 0; }
  .page_artist .page_artist_detail_dd_ttl {
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.6;
    color: #000; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_dd_ttl {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_artist .page_artist_detail_text {
    margin: 0;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85;
    color: #000; }
    .page_artist .page_artist_detail_text strong {
      font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
      font-weight: 700; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_text strong {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 15px); } }
  .page_artist .page_artist_detail_note {
    display: inline-block;
    margin-top: Min(calc(10 / var(--view-size) * 100vw), 10px);
    color: #e4502e;
    font-weight: 700;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_note {
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
  .page_artist .page_artist_detail_list {
    margin: 0;
    padding: 0;
    list-style: none; }
    .page_artist .page_artist_detail_list li {
      position: relative;
      padding-left: 1.1em;
      line-height: 1.8;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      color: #000; }
      .page_artist .page_artist_detail_list li::before {
        content: "・";
        position: absolute;
        left: 0;
        top: 0; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_list li {
          font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_artist .page_artist_detail_link {
    margin: Min(calc(10 / var(--view-size) * 100vw), 10px) 0 0; }
    .page_artist .page_artist_detail_link a {
      color: #eb5e01;
      text-decoration: underline; }
      .page_artist .page_artist_detail_link a:hover {
        opacity: 0.8; }
  .page_artist .page_artist_detail_apply {
    margin-top: Min(calc(40 / var(--view-size) * 100vw), 48px);
    padding: Min(calc(44 / var(--view-size) * 100vw), 52px) Min(calc(48 / var(--view-size) * 100vw), 56px);
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 16px);
    background: #eb5e01;
    color: #fff; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_apply {
        margin-top: Min(calc(18 / var(--view-size) * 100vw), 18px);
        padding: Min(calc(18 / var(--view-size) * 100vw), 18px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_artist .page_artist_detail_apply_text {
    margin: 0 0 Min(calc(28 / var(--view-size) * 100vw), 32px);
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.85; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_apply_text {
        margin-bottom: Min(calc(14 / var(--view-size) * 100vw), 14px);
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px); } }
  .page_artist .page_artist_detail_apply_btn_wrap {
    display: flex;
    justify-content: center; }
  .page_artist .page_artist_detail_apply_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(360 / var(--view-size) * 100vw), 420px);
    max-width: 100%;
    padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(56 / var(--view-size) * 100vw), 56px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(22 / var(--view-size) * 100vw), 22px);
    border-radius: 999px;
    background: #fff;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    line-height: 1.4;
    box-sizing: border-box;
    transition: background-color 0.25s ease, color 0.25s ease, opacity 0.25s ease; }
    .page_artist .page_artist_detail_apply_btn:hover {
      opacity: 1;
      background: #000;
      color: #fff !important; }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_apply_btn {
        width: 100%;
        max-width: Min(calc(300 / var(--view-size) * 100vw), 320px);
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
        padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(52 / var(--view-size) * 100vw), 52px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_artist .page_artist_detail_apply_btn:hover .page_artist_detail_apply_btn_arrow {
    background: #fff; }
    .page_artist .page_artist_detail_apply_btn:hover .page_artist_detail_apply_btn_arrow::before {
      color: #000; }
  .page_artist .page_artist_detail_apply_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_artist .page_artist_detail_apply_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(8 / var(--view-size) * 100vw), 8px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: Min(calc(34 / var(--view-size) * 100vw), 34px);
    height: Min(calc(34 / var(--view-size) * 100vw), 34px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_artist .page_artist_detail_apply_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
  .page_artist .page_artist_intro_btn_wrap {
    margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px);
    text-align: center; }
    @media (max-width: 768px) {
      .page_artist .page_artist_intro_btn_wrap {
        margin-top: 0;
        text-align: center; } }
  .page_artist .page_artist_intro_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: Min(calc(180 / var(--view-size) * 100vw), 180px);
    max-width: 100%;
    margin: 0 auto;
    padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 999px;
    background: #eb5e01;
    color: #fff;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_artist .page_artist_intro_btn.back {
      padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(40 / var(--view-size) * 100vw), 40px); }
    .page_artist .page_artist_intro_btn:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
    @media (max-width: 768px) {
      .page_artist .page_artist_intro_btn {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_artist .page_artist_intro_btn:hover .page_artist_intro_btn_arrow {
    background: #eb5e01; }
    .page_artist .page_artist_intro_btn:hover .page_artist_intro_btn_arrow::before {
      color: #fff; }
  .page_artist .page_artist_intro_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_artist .page_artist_intro_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(10 / var(--view-size) * 100vw), 10px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(30 / var(--view-size) * 100vw), 30px);
    height: Min(calc(30 / var(--view-size) * 100vw), 30px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_artist .page_artist_intro_btn_arrow.back {
      right: inherit;
      left: Min(calc(10 / var(--view-size) * 100vw), 10px); }
    .page_artist .page_artist_intro_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    .page_artist .page_artist_intro_btn_arrow.back::before {
      content: "\f060"; }
    @media (max-width: 768px) {
      .page_artist .page_artist_intro_btn_arrow {
        width: Min(calc(32 / var(--view-size) * 100vw), 32px);
        height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
        .page_artist .page_artist_intro_btn_arrow::before {
          font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }
  .page_artist .page_artist_detail_info {
    border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px);
    border: Min(calc(2 / var(--view-size) * 100vw), 2px) solid #eb5e01;
    background-color: #fff;
    padding: Min(calc(28 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 28px) Min(calc(24 / var(--view-size) * 100vw), 28px); }
    .page_artist .page_artist_detail_info > .row {
      flex-wrap: wrap; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_info > .row {
          flex-direction: column-reverse; } }
    .page_artist .page_artist_detail_info .page_artist_detail_info_text {
      width: 70%; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_info .page_artist_detail_info_text {
          width: 100%; } }
      .page_artist .page_artist_detail_info .page_artist_detail_info_text h2 {
        margin: 0;
        padding: 0;
        color: #eb5e01;
        font-size: Min(calc(36 / var(--view-size) * 100vw), 36px);
        line-height: 1.2;
        border-bottom: 1px dotted #000;
        margin-top: Min(calc(10 / var(--view-size) * 100vw), 10px);
        margin-bottom: Min(calc(20 / var(--view-size) * 100vw), 20px);
        padding-bottom: Min(calc(15 / var(--view-size) * 100vw), 15px); }
        .page_artist .page_artist_detail_info .page_artist_detail_info_text h2 span {
          color: #000;
          font-size: Min(calc(18 / var(--view-size) * 100vw), 18px); }
      .page_artist .page_artist_detail_info .page_artist_detail_info_text .page_artist_detail_sns {
        gap: 20px;
        margin-bottom: Min(calc(25 / var(--view-size) * 100vw), 25px); }
        .page_artist .page_artist_detail_info .page_artist_detail_info_text .page_artist_detail_sns li {
          width: Min(calc(30 / var(--view-size) * 100vw), 30px);
          height: Min(calc(30 / var(--view-size) * 100vw), 30px); }
          .page_artist .page_artist_detail_info .page_artist_detail_info_text .page_artist_detail_sns li a img {
            height: Min(calc(30 / var(--view-size) * 100vw), 30px);
            width: auto; }
      .page_artist .page_artist_detail_info .page_artist_detail_info_text table th {
        text-align: left;
        vertical-align: top;
        padding-bottom: 7px; }
        @media (max-width: 768px) {
          .page_artist .page_artist_detail_info .page_artist_detail_info_text table th {
            display: block;
            padding-bottom: 3px; } }
      .page_artist .page_artist_detail_info .page_artist_detail_info_text table td {
        vertical-align: top;
        padding-bottom: 7px; }
        @media (max-width: 768px) {
          .page_artist .page_artist_detail_info .page_artist_detail_info_text table td {
            display: block;
            padding-bottom: 15px; } }
        .page_artist .page_artist_detail_info .page_artist_detail_info_text table td a {
          color: #eb5e01; }
    .page_artist .page_artist_detail_info .page_artist_detail_info_img {
      width: 30%; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_info .page_artist_detail_info_img {
          width: 100%;
          margin-bottom: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
      .page_artist .page_artist_detail_info .page_artist_detail_info_img img {
        width: 100%;
        height: auto; }
  .page_artist .page_artist_detail_profile {
    margin-top: Min(calc(50 / var(--view-size) * 100vw), 50px); }
    .page_artist .page_artist_detail_profile h3 {
      font-size: Min(calc(24 / var(--view-size) * 100vw), 24px); }
  .page_artist .page_artist_detail_sample {
    justify-content: space-between;
    flex-wrap: wrap; }
  .page_artist .page_artist_detail_sample_column {
    width: 49%;
    margin-bottom: Min(calc(60 / var(--view-size) * 100vw), 60px); }
    @media (max-width: 768px) {
      .page_artist .page_artist_detail_sample_column {
        width: 100%;
        display: block;
        margin-bottom: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_artist .page_artist_detail_sample_column h4 {
      width: 15%;
      position: relative; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_sample_column h4 {
          width: 100%;
          margin-bottom: Min(calc(10 / var(--view-size) * 100vw), 10px); } }
      .page_artist .page_artist_detail_sample_column h4::before {
        content: "";
        display: block;
        width: 14px;
        height: 3px;
        background-color: #eb5e01; }
    .page_artist .page_artist_detail_sample_column ul {
      width: 85%; }
      @media (max-width: 768px) {
        .page_artist .page_artist_detail_sample_column ul {
          width: 100%; } }
      .page_artist .page_artist_detail_sample_column ul li {
        width: 33%;
        position: relative; }
        .page_artist .page_artist_detail_sample_column ul li a {
          display: block;
          width: 100%;
          height: 200px;
          overflow: hidden; }
          @media (max-width: 768px) {
            .page_artist .page_artist_detail_sample_column ul li a {
              height: 150px; } }
          .page_artist .page_artist_detail_sample_column ul li a img {
            width: 100%;
            height: 100%;
            object-fit: cover; }
        .page_artist .page_artist_detail_sample_column ul li span {
          display: block;
          position: relative;
          margin: -8px auto 0;
          font-size: 13px;
          text-align: center;
          background-color: seagreen;
          color: #fff;
          width: 100px;
          border-radius: 13px;
          z-index: 1; }
          .page_artist .page_artist_detail_sample_column ul li span.standard {
            background-color: dodgerblue; }
          .page_artist .page_artist_detail_sample_column ul li span.premium {
            background-color: mediumvioletred; }
  .page_artist .page_artist_detail_other a {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 auto Min(calc(50 / var(--view-size) * 100vw), 50px);
    width: 20em;
    text-decoration: underline; }
    .page_artist .page_artist_detail_other a:hover {
      opacity: 1;
      color: #eb5e01; }
    .page_artist .page_artist_detail_other a img {
      height: Min(calc(30 / var(--view-size) * 100vw), 30px);
      width: auto;
      margin-right: 5px; }

/* =========================================
   page-corp
   ========================================= */
.page_corp {
  /* ===== flow ===== */
  /* ===== faq ===== */
  /* ===== お問い合わせ ===== */
  /* ===== list ===== */ }
  .page_corp .page_corp_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_corp .page_corp_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_corp .page_corp_head {
    width: min(100%, Min(calc(830 / var(--view-size) * 100vw), 830px));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: Min(calc(100 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_head {
        margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_corp .page_corp_ttl {
    font-size: Min(calc(64 / var(--view-size) * 100vw), 64px);
    font-weight: 900;
    line-height: 1.3;
    color: #000; }
    @media (max-width: 768px) {
      .page_corp .page_corp_ttl {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
        line-height: 1.4; } }
  .page_corp .page_corp_lead {
    margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    line-height: 1.85;
    color: #000;
    font-weight: 700; }
    @media (max-width: 768px) {
      .page_corp .page_corp_lead {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.75; } }
  .page_corp .page_corp_h3 {
    display: flex;
    align-items: center;
    /* 文字と横線を上下中央に配置 */
    gap: 12px;
    /* 横線と文字の間の隙間（お好みで調整） */
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_corp .page_corp_h3::before {
      content: "";
      width: 20px;
      /* 横線の長さ */
      height: 4px;
      /* 横線の太さ */
      background-color: #eb5e01;
      /* 横線の色 */ }
  .page_corp .page_corp_flow .stepbar {
    width: Min(calc(280 / var(--view-size) * 100vw), 280px);
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_corp .page_corp_flow .stepbar .stepbarwrap {
      position: relative; }
      .page_corp .page_corp_flow .stepbar .stepbarwrap .steptitle {
        display: inline-flex;
        align-items: center; }
        .page_corp .page_corp_flow .stepbar .stepbarwrap .steptitle .stepcircle {
          display: inline-block;
          width: 3em;
          height: 3em;
          content: "";
          border-radius: 50%;
          background-color: #eb5e01;
          color: #fff;
          text-align: center;
          z-index: 1; }
          .page_corp .page_corp_flow .stepbar .stepbarwrap .steptitle .stepcircle span {
            display: inline-block;
            line-height: 1em;
            font-size: 1em;
            font-weight: bold;
            position: relative;
            top: 0.5em; }
        .page_corp .page_corp_flow .stepbar .stepbarwrap .steptitle .title {
          margin: 0.5em;
          font-weight: 700;
          font-size: 1.2em; }
      .page_corp .page_corp_flow .stepbar .stepbarwrap .steptxt {
        padding-left: 3.5em; }
        .page_corp .page_corp_flow .stepbar .stepbarwrap .steptxt .txt {
          font-size: 0.9em; }
      .page_corp .page_corp_flow .stepbar .stepbarwrap .stepline {
        width: 2px;
        height: calc(100% + 1em);
        background-color: #eb5e01;
        position: absolute;
        top: 1em;
        left: 1.5em;
        z-index: 0; }
        .page_corp .page_corp_flow .stepbar .stepbarwrap .stepline.noline {
          display: none; }
  .page_corp .page_corp_faq .page_corp_faq_wrapper {
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 {
      max-width: 1000px;
      margin: 0 auto 1em;
      border: 1px solid #d6dde3;
      border-radius: 5px;
      background-color: #fff; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 summary {
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative;
      padding: 1em 2em 1em 3em;
      color: #000;
      font-weight: 600;
      cursor: pointer; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 summary::before,
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 p::before {
      position: absolute;
      left: 1em;
      font-weight: 600;
      font-size: 1.3em; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 summary::before {
      color: #eb5e01;
      content: "Q"; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 summary::after {
      transform: translateY(-25%) rotate(45deg);
      width: 7px;
      height: 7px;
      margin-left: 10px;
      border-bottom: 3px solid #333333b3;
      border-right: 3px solid #333333b3;
      content: '';
      transition: transform .5s; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3[open] summary::after {
      transform: rotate(225deg); }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 p {
      position: relative;
      transform: translateY(-10px);
      opacity: 0;
      margin: 0;
      padding: .3em 3em 1.5em;
      color: #000;
      transition: transform .5s, opacity .5s; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3[open] p {
      transform: none;
      opacity: 1; }
    .page_corp .page_corp_faq .page_corp_faq_wrapper .qa-3 p::before {
      color: #000;
      line-height: 1.2;
      content: "A"; }
  .page_corp .page_corp_contact {
    max-width: 800px;
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px);
    padding: Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(32 / var(--view-size) * 100vw), 32px);
    border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px);
    background: #fff;
    box-shadow: 0 0 0 Min(calc(3 / var(--view-size) * 100vw), 3px) #fff; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact {
        padding: Min(calc(32 / var(--view-size) * 100vw), 32px) Min(calc(24 / var(--view-size) * 100vw), 24px);
        border-radius: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_corp .page_corp_contact_head {
    margin-bottom: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_head {
        margin-bottom: Min(calc(16 / var(--view-size) * 100vw), 24px); } }
  .page_corp .page_corp_contact_label {
    display: inline-flex;
    align-items: center;
    gap: Min(calc(8 / var(--view-size) * 100vw), 8px);
    margin: 0 0 Min(calc(12 / var(--view-size) * 100vw), 12px);
    font-family: "Montserrat", sans-serif;
    font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #000;
    line-height: 1.2; }
  .page_corp .page_corp_contact_label_dot {
    flex-shrink: 0;
    width: Min(calc(10 / var(--view-size) * 100vw), 10px);
    height: Min(calc(10 / var(--view-size) * 100vw), 10px);
    border-radius: 50%;
    background: #eb5e01; }
  .page_corp .page_corp_contact_ttl {
    margin: 0;
    font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
    font-weight: 900;
    line-height: 1.4;
    color: #000; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_ttl {
        font-size: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
    .page_corp .page_corp_contact_ttl .text_orange {
      color: #eb5e01; }
  .page_corp .page_corp_contact_body {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: Min(calc(16 / var(--view-size) * 100vw), 16px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_body {
        flex-direction: column;
        align-items: stretch;
        gap: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_corp .page_corp_contact_tel {
    flex: 1 1 auto;
    min-width: 0; }
  .page_corp .page_corp_contact_tel_num {
    position: relative;
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
    padding-left: Min(calc(30 / var(--view-size) * 100vw), 30px);
    color: #eb5e01;
    font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.02em; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_tel_num {
        font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
        padding-left: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
    .page_corp .page_corp_contact_tel_num::before {
      content: "\f095";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      position: absolute;
      top: 60%;
      left: 0;
      transform: translateY(-50%);
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      line-height: 1;
      color: #eb5e01;
      -webkit-font-smoothing: antialiased; }
      @media (max-width: 768px) {
        .page_corp .page_corp_contact_tel_num::before {
          font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
  .page_corp .page_corp_contact_tel_note {
    margin: 0;
    color: #000;
    font-size: Min(calc(13 / var(--view-size) * 100vw), 13px);
    font-weight: 700;
    line-height: 1.5; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_tel_note {
        font-size: Min(calc(12 / var(--view-size) * 100vw), 12px); } }
  .page_corp .page_corp_contact_btn_wrap {
    flex-shrink: 0; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_btn_wrap {
        width: 100%; } }
  .page_corp .page_corp_contact_btn {
    position: relative;
    display: flex;
    width: Min(calc(280 / var(--view-size) * 100vw), 280px);
    max-width: 100%;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: Min(calc(48 / var(--view-size) * 100vw), 48px);
    margin: 0;
    padding: Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(44 / var(--view-size) * 100vw), 44px) Min(calc(12 / var(--view-size) * 100vw), 12px) Min(calc(20 / var(--view-size) * 100vw), 20px);
    border-radius: 999px;
    background: #eb5e01;
    color: #fff;
    font-weight: 700;
    font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease; }
    @media (max-width: 768px) {
      .page_corp .page_corp_contact_btn {
        width: 100%;
        min-height: Min(calc(52 / var(--view-size) * 100vw), 52px);
        font-size: Min(calc(15 / var(--view-size) * 100vw), 15px); } }
    .page_corp .page_corp_contact_btn::before {
      content: "";
      position: absolute;
      top: 50%;
      right: Min(calc(12 / var(--view-size) * 100vw), 12px);
      transform: translateY(-50%);
      width: Min(calc(28 / var(--view-size) * 100vw), 28px);
      height: Min(calc(28 / var(--view-size) * 100vw), 28px);
      border-radius: 50%;
      background: #000;
      pointer-events: none;
      transition: background-color 0.25s ease; }
    .page_corp .page_corp_contact_btn::after {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      position: absolute;
      top: 50%;
      right: Min(calc(12 / var(--view-size) * 100vw), 12px);
      transform: translateY(-50%);
      width: Min(calc(28 / var(--view-size) * 100vw), 28px);
      height: Min(calc(28 / var(--view-size) * 100vw), 28px);
      font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
      line-height: Min(calc(28 / var(--view-size) * 100vw), 28px);
      text-align: center;
      color: #fff;
      pointer-events: none;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    .page_corp .page_corp_contact_btn:hover {
      background: #fff;
      color: #000;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #000; }
      .page_corp .page_corp_contact_btn:hover::before {
        background: #000; }
      .page_corp .page_corp_contact_btn:hover::after {
        color: #fff; }
  .page_corp .page_corp_works_list {
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: Min(calc(48 / var(--view-size) * 100vw), 48px) Min(calc(32 / var(--view-size) * 100vw), 32px); }
    @media (max-width: 768px) {
      .page_corp .page_corp_works_list {
        grid-template-columns: 1fr;
        gap: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
    .page_corp .page_corp_works_list .page_corp_works_list_item .works_photo img {
      width: 100%;
      height: auto;
      border-radius: Min(calc(12 / var(--view-size) * 100vw), 14px); }
    .page_corp .page_corp_works_list .page_corp_works_list_item h4 {
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      display: flex;
      align-items: center;
      line-height: 1;
      margin-top: Min(calc(15 / var(--view-size) * 100vw), 15px); }
      .page_corp .page_corp_works_list .page_corp_works_list_item h4 span {
        display: inline-block;
        color: #fff;
        background-color: #eb5e01;
        line-height: 1;
        font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
        padding: Min(calc(5 / var(--view-size) * 100vw), 5px) Min(calc(14 / var(--view-size) * 100vw), 14px);
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px);
        margin-right: Min(calc(10 / var(--view-size) * 100vw), 10px); }
    .page_corp .page_corp_works_list .page_corp_works_list_item p {
      margin-top: Min(calc(15 / var(--view-size) * 100vw), 15px); }

/* =========================================
   page-company
   ========================================= */
.page_company {
  /* ===== row ===== */
  /* ===== table ===== */ }
  .page_company .page_company_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_company .page_company_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_company .page_company_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_company .page_company_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_company .page_company_row {
    margin-top: Min(calc(60 / var(--view-size) * 100vw), 60px);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media (max-width: 768px) {
      .page_company .page_company_row {
        margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_company .page_company_row .page_company_row_text {
      width: 48%; }
      @media (max-width: 768px) {
        .page_company .page_company_row .page_company_row_text {
          width: 100%; } }
      .page_company .page_company_row .page_company_row_text h3 {
        font-size: Min(calc(42 / var(--view-size) * 100vw), 42px);
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: Min(calc(30 / var(--view-size) * 100vw), 30px); }
        @media (max-width: 768px) {
          .page_company .page_company_row .page_company_row_text h3 {
            font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
            line-height: 1.4; }
            .page_company .page_company_row .page_company_row_text h3 br {
              display: none; } }
      .page_company .page_company_row .page_company_row_text p {
        font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); }
        @media (max-width: 768px) {
          .page_company .page_company_row .page_company_row_text p {
            font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
    .page_company .page_company_row .page_company_row_photo {
      width: 46%; }
      @media (max-width: 768px) {
        .page_company .page_company_row .page_company_row_photo {
          width: 100%;
          margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
      .page_company .page_company_row .page_company_row_photo img {
        width: 100%;
        height: auto;
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); }
  .page_company .page_company_table {
    margin: Min(calc(60 / var(--view-size) * 100vw), 60px) auto 0;
    width: 100%;
    max-width: 1000px;
    border-collapse: collapse; }
    @media (max-width: 768px) {
      .page_company .page_company_table {
        margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_company .page_company_table td, .page_company .page_company_table th {
      border-bottom: 1px solid #ccc;
      text-align: left;
      vertical-align: top;
      padding: 20px; }
      @media (max-width: 768px) {
        .page_company .page_company_table td, .page_company .page_company_table th {
          display: block; } }
    @media (max-width: 768px) {
      .page_company .page_company_table th {
        border-bottom: none;
        padding-bottom: 0; } }
    .page_company .page_company_table a {
      text-decoration: underline; }
      .page_company .page_company_table a:hover {
        text-decoration: none; }

/* =========================================
   page-faq
   ========================================= */
.page_faq {
  /* ===== faq ===== */ }
  .page_faq .page_faq_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_faq .page_faq_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_faq .page_faq_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_faq .page_faq_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_faq .page_faq_head {
    width: min(100%, Min(calc(830 / var(--view-size) * 100vw), 830px));
    margin-left: auto;
    margin-right: auto;
    margin-bottom: Min(calc(100 / var(--view-size) * 100vw), 56px); }
    @media (max-width: 768px) {
      .page_faq .page_faq_head {
        margin-bottom: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
  .page_faq .page_faq_ttl {
    font-size: Min(calc(64 / var(--view-size) * 100vw), 64px);
    font-weight: 900;
    line-height: 1.3;
    color: #000; }
    @media (max-width: 768px) {
      .page_faq .page_faq_ttl {
        font-size: Min(calc(40 / var(--view-size) * 100vw), 40px);
        line-height: 1.4; } }
  .page_faq .page_faq_lead {
    margin-top: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
    line-height: 1.85;
    color: #000;
    font-weight: 700; }
    @media (max-width: 768px) {
      .page_faq .page_faq_lead {
        font-size: Min(calc(18 / var(--view-size) * 100vw), 18px);
        line-height: 1.75; } }
  .page_faq .page_faq_h3 {
    display: flex;
    align-items: center;
    /* 文字と横線を上下中央に配置 */
    gap: 12px;
    /* 横線と文字の間の隙間（お好みで調整） */
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_faq .page_faq_h3::before {
      content: "";
      width: 20px;
      /* 横線の長さ */
      height: 4px;
      /* 横線の太さ */
      background-color: #eb5e01;
      /* 横線の色 */ }
  .page_faq .page_faq_faq .page_faq_faq_wrapper {
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 {
      max-width: 1000px;
      margin: 0 auto 1em;
      border: 1px solid #d6dde3;
      border-radius: 5px;
      background-color: #fff; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 summary {
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative;
      padding: 1em 2em 1em 3em;
      color: #000;
      font-weight: 600;
      cursor: pointer; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 summary::before,
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 p::before {
      position: absolute;
      left: 1em;
      font-weight: 600;
      font-size: 1.3em; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 summary::before {
      color: #eb5e01;
      content: "Q"; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 summary::after {
      transform: translateY(-25%) rotate(45deg);
      width: 7px;
      height: 7px;
      margin-left: 10px;
      border-bottom: 3px solid #333333b3;
      border-right: 3px solid #333333b3;
      content: '';
      transition: transform .5s; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3[open] summary::after {
      transform: rotate(225deg); }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 p {
      position: relative;
      transform: translateY(-10px);
      opacity: 0;
      margin: 0;
      padding: .3em 3em 1.5em;
      color: #000;
      transition: transform .5s, opacity .5s; }
      .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 p a {
        text-decoration: underline; }
        .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 p a:hover {
          text-decoration: none; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3[open] p {
      transform: none;
      opacity: 1; }
    .page_faq .page_faq_faq .page_faq_faq_wrapper .qa-3 p::before {
      color: #000;
      line-height: 1.2;
      content: "A"; }

/* =========================================
   page-recruit
   ========================================= */
.page_recruit {
  /* ===== row ===== */
  /* ===== table ===== */ }
  .page_recruit .page_recruit_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_recruit .page_recruit_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_recruit .page_recruit_interview_white {
    background-color: #fff;
    padding: 0 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_interview_white {
        padding: 0 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
    .page_recruit .page_recruit_interview_white h3 {
      position: relative;
      z-index: 0;
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      font-weight: 700;
      margin-top: 0;
      margin-bottom: 1.5em;
      padding-left: 54px;
      line-height: 1.1923076923;
      font-style: italic;
      color: #707070; }
      .page_recruit .page_recruit_interview_white h3::before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        top: 13px;
        left: 0;
        width: 46px;
        height: 1px;
        background: #000; }
    .page_recruit .page_recruit_interview_white .inner {
      max-width: 1400px; }
  .page_recruit .page_recruit_h3 {
    display: flex;
    align-items: center;
    /* 文字と横線を上下中央に配置 */
    gap: 12px;
    /* 横線と文字の間の隙間（お好みで調整） */
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    .page_recruit .page_recruit_h3::before {
      content: "";
      width: 20px;
      /* 横線の長さ */
      height: 4px;
      /* 横線の太さ */
      background-color: #eb5e01;
      /* 横線の色 */ }
  .page_recruit .page_recruit_row {
    margin-top: Min(calc(60 / var(--view-size) * 100vw), 60px);
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_row {
        margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_recruit .page_recruit_row .page_recruit_row_text {
      width: 48%; }
      @media (max-width: 768px) {
        .page_recruit .page_recruit_row .page_recruit_row_text {
          width: 100%; } }
      .page_recruit .page_recruit_row .page_recruit_row_text h3 {
        font-size: Min(calc(42 / var(--view-size) * 100vw), 42px);
        font-weight: 700;
        line-height: 1.2;
        margin-bottom: Min(calc(30 / var(--view-size) * 100vw), 30px); }
        @media (max-width: 768px) {
          .page_recruit .page_recruit_row .page_recruit_row_text h3 {
            font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
            line-height: 1.4; }
            .page_recruit .page_recruit_row .page_recruit_row_text h3 br {
              display: none; } }
      .page_recruit .page_recruit_row .page_recruit_row_text p {
        font-size: Min(calc(20 / var(--view-size) * 100vw), 20px); }
        @media (max-width: 768px) {
          .page_recruit .page_recruit_row .page_recruit_row_text p {
            font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
    .page_recruit .page_recruit_row .page_recruit_row_photo {
      width: 46%; }
      @media (max-width: 768px) {
        .page_recruit .page_recruit_row .page_recruit_row_photo {
          width: 100%;
          margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
      .page_recruit .page_recruit_row .page_recruit_row_photo img {
        width: 100%;
        height: auto;
        border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); }
  .page_recruit .page_recruit_table {
    margin: Min(calc(60 / var(--view-size) * 100vw), 60px) auto 0;
    width: 100%;
    max-width: 1000px;
    border-collapse: collapse; }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_table {
        margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_recruit .page_recruit_table td, .page_recruit .page_recruit_table th {
      border-bottom: 1px solid #ccc;
      text-align: left;
      vertical-align: top;
      padding: 20px; }
      @media (max-width: 768px) {
        .page_recruit .page_recruit_table td, .page_recruit .page_recruit_table th {
          display: block; } }
    @media (max-width: 768px) {
      .page_recruit .page_recruit_table th {
        border-bottom: none;
        padding-bottom: 0; } }
    .page_recruit .page_recruit_table a {
      text-decoration: underline; }
      .page_recruit .page_recruit_table a:hover {
        text-decoration: none; }

.page_recruit_interview_fv {
  margin-bottom: Min(calc(80 / var(--view-size) * 100vw), 80px); }
  @media (max-width: 768px) {
    .page_recruit_interview_fv {
      margin-bottom: 0; } }
  .page_recruit_interview_fv .top_interview_subttl span {
    font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
    display: block; }
  .page_recruit_interview_fv .top_interview_text {
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); }
  @media (max-width: 768px) {
    .page_recruit_interview_fv .top_interview_img {
      padding: 0 Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_recruit_interview_fv .top_interview_img img {
    border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); }

/* ===== interview ===== */
.page_recruit_interview_row {
  margin-top: Min(calc(60 / var(--view-size) * 100vw), 60px);
  margin-bottom: Min(calc(80 / var(--view-size) * 100vw), 80px);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  .page_recruit_interview_row.reverse {
    flex-direction: row-reverse; }
  @media (max-width: 768px) {
    .page_recruit_interview_row {
      margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
  .page_recruit_interview_row .page_recruit_interview_row_text {
    width: 48%; }
    @media (max-width: 768px) {
      .page_recruit_interview_row .page_recruit_interview_row_text {
        width: 100%; } }
    .page_recruit_interview_row .page_recruit_interview_row_text p {
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      margin-bottom: 1.5em; }
      @media (max-width: 768px) {
        .page_recruit_interview_row .page_recruit_interview_row_text p {
          font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }
  .page_recruit_interview_row .page_recruit_interview_row_photo {
    width: 48%; }
    @media (max-width: 768px) {
      .page_recruit_interview_row .page_recruit_interview_row_photo {
        width: 100%;
        margin-top: Min(calc(10 / var(--view-size) * 100vw), 10px); } }
    .page_recruit_interview_row .page_recruit_interview_row_photo img {
      width: 100%;
      height: auto;
      border-radius: Min(calc(14 / var(--view-size) * 100vw), 14px); }

.page_recruit_interview_text {
  margin-bottom: Min(calc(110 / var(--view-size) * 100vw), 110px); }
  @media (max-width: 768px) {
    .page_recruit_interview_text {
      margin-bottom: Min(calc(60 / var(--view-size) * 100vw), 60px); } }
  .page_recruit_interview_text p {
    font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
    margin-bottom: 1.5em; }
    @media (max-width: 768px) {
      .page_recruit_interview_text p {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px); } }

/* =========================================
   page-contact
   ========================================= */
.page_contact {
  /* ===== table ===== */
  /* ===== contact_link ===== */ }
  .page_contact .page_contact_white {
    background-color: #fff;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_contact .page_contact_white {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_contact .page_contact_bg {
    background-color: #f6ede2;
    padding: Min(calc(90 / var(--view-size) * 100vw), 80px) 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_contact .page_contact_bg {
        padding: Min(calc(48 / var(--view-size) * 100vw), 48px) 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
  .page_contact .page_contact_interview_white {
    background-color: #fff;
    padding: 0 0 Min(calc(64 / var(--view-size) * 100vw), 120px); }
    @media (max-width: 768px) {
      .page_contact .page_contact_interview_white {
        padding: 0 0 Min(calc(64 / var(--view-size) * 100vw), 64px); } }
    .page_contact .page_contact_interview_white h3 {
      position: relative;
      z-index: 0;
      font-size: 20px;
      font-weight: 400;
      margin-top: 0;
      margin-bottom: 40px;
      padding-left: 54px;
      line-height: 1.1923076923;
      font-style: italic;
      color: #707070; }
      .page_contact .page_contact_interview_white h3::before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        top: 13px;
        left: 0;
        width: 46px;
        height: 1px;
        background: #000; }
    .page_contact .page_contact_interview_white .inner {
      max-width: 1400px; }
    .page_contact .page_contact_interview_white .page_contact_h3 {
      display: flex;
      align-items: center;
      /* 文字と横線を上下中央に配置 */
      gap: 12px;
      /* 横線と文字の間の隙間（お好みで調整） */
      font-size: Min(calc(28 / var(--view-size) * 100vw), 28px); }
      .page_contact .page_contact_interview_white .page_contact_h3::before {
        content: "";
        width: 20px;
        /* 横線の長さ */
        height: 4px;
        /* 横線の太さ */
        background-color: #eb5e01;
        /* 横線の色 */ }
  .page_contact .page_contact_h3 {
    display: flex;
    align-items: center;
    /* 文字と横線を上下中央に配置 */
    gap: 12px;
    /* 横線と文字の間の隙間（お好みで調整） */
    font-size: Min(calc(28 / var(--view-size) * 100vw), 28px); }
    @media (max-width: 768px) {
      .page_contact .page_contact_h3 {
        font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
    .page_contact .page_contact_h3::before {
      content: "";
      width: 20px;
      /* 横線の長さ */
      height: 4px;
      /* 横線の太さ */
      background-color: #eb5e01;
      /* 横線の色 */ }
  .page_contact .page_contact_table {
    margin: Min(calc(60 / var(--view-size) * 100vw), 60px) auto 0;
    width: 100%;
    max-width: 1200px;
    border-collapse: collapse; }
    @media (max-width: 768px) {
      .page_contact .page_contact_table {
        margin-top: Min(calc(30 / var(--view-size) * 100vw), 30px); } }
    .page_contact .page_contact_table td, .page_contact .page_contact_table th {
      border-bottom: 1px solid #ccc;
      text-align: left;
      vertical-align: top;
      padding: 20px; }
      @media (max-width: 768px) {
        .page_contact .page_contact_table td, .page_contact .page_contact_table th {
          display: block; } }
    .page_contact .page_contact_table th span {
      margin: 0 0 0 10px;
      color: #eb5e01;
      font-size: 12px; }
    @media (max-width: 768px) {
      .page_contact .page_contact_table th {
        border-bottom: none;
        padding-bottom: 0; } }
    .page_contact .page_contact_table td input {
      -webkit-appearance: none;
      border: thin solid #999;
      border-width: 1px;
      padding: 10px;
      height: 40px; }
    .page_contact .page_contact_table td select {
      margin: 0 0 15px 0;
      padding: 8px 10px;
      width: 200px;
      -moz-appearance: none;
      -webkit-appearance: none;
      background: url("../images/list_button.png") no-repeat;
      background-size: 20px 10px;
      background-position: right 15px center; }
    .page_contact .page_contact_table td#address input {
      width: 100%;
      display: block; }
    .page_contact .page_contact_table td textarea {
      width: 100%;
      padding: 10px; }
    .page_contact .page_contact_table a {
      text-decoration: underline; }
      .page_contact .page_contact_table a:hover {
        text-decoration: none; }
  .page_contact .submit {
    text-align: center;
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_contact .submit .btnConfirm {
      margin: 0 15px;
      width: 250px;
      height: 70px;
      line-height: 70px;
      background: #eb5e01;
      border: none;
      border-radius: 35px;
      -moz-border-radius: 35px;
      -webkit-border-radius: 35px;
      -o-border-radius: 35px;
      -ms-border-radius: 35px;
      color: #FFF;
      font-size: 18px;
      text-align: center;
      transition: 0.3s ease-out;
      -moz-transition: 0.3s ease-out;
      -webkit-transition: 0.3s ease-out;
      -o-transition: 0.3s ease-out;
      -ms-transition: 0.3s ease-out;
      cursor: pointer;
      outline: none; }
  .page_contact .page_contact_link {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1200px;
    margin: 0 auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_contact .page_contact_link li {
      width: 24%; }
      @media (max-width: 768px) {
        .page_contact .page_contact_link li {
          width: 100%;
          margin-bottom: Min(calc(10 / var(--view-size) * 100vw), 10px); } }
      .page_contact .page_contact_link li a {
        position: relative;
        display: flex;
        width: 100%;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        margin: 0;
        min-height: Min(calc(48 / var(--view-size) * 100vw), 48px);
        padding: Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(14 / var(--view-size) * 100vw), 14px) Min(calc(16 / var(--view-size) * 100vw), 16px);
        border-radius: 999px;
        background: #fff;
        color: #000;
        font-weight: 700;
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        line-height: 1.4;
        text-decoration: none;
        box-shadow: inset 0 0 0 Min(calc(1 / var(--view-size) * 100vw), 1px) #000;
        transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease; }
        .page_contact .page_contact_link li a::before {
          content: "";
          position: absolute;
          top: 50%;
          right: Min(calc(12 / var(--view-size) * 100vw), 12px);
          transform: translateY(-50%);
          width: Min(calc(28 / var(--view-size) * 100vw), 28px);
          height: Min(calc(28 / var(--view-size) * 100vw), 28px);
          border-radius: 50%;
          background: #000;
          pointer-events: none;
          transition: background-color 0.25s ease; }
        .page_contact .page_contact_link li a::after {
          content: "\f063";
          font-family: "Font Awesome 6 Free";
          font-weight: 900;
          font-style: normal;
          position: absolute;
          top: 50%;
          right: Min(calc(12 / var(--view-size) * 100vw), 12px);
          transform: translateY(-50%);
          width: Min(calc(28 / var(--view-size) * 100vw), 28px);
          height: Min(calc(28 / var(--view-size) * 100vw), 28px);
          font-size: Min(calc(12 / var(--view-size) * 100vw), 12px);
          line-height: Min(calc(28 / var(--view-size) * 100vw), 28px);
          text-align: center;
          color: #fff;
          pointer-events: none;
          -webkit-font-smoothing: antialiased;
          transition: color 0.25s ease; }
        .page_contact .page_contact_link li a:hover {
          background: #eb5e01;
          color: #fff;
          box-shadow: none; }
  .page_contact .page_corp_contact_tel_num {
    position: relative;
    margin: 0 0 Min(calc(8 / var(--view-size) * 100vw), 8px);
    padding-left: Min(calc(30 / var(--view-size) * 100vw), 30px);
    color: #eb5e01;
    font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.02em; }
    @media (max-width: 768px) {
      .page_contact .page_corp_contact_tel_num {
        font-size: Min(calc(32 / var(--view-size) * 100vw), 32px);
        padding-left: Min(calc(32 / var(--view-size) * 100vw), 32px); } }
    .page_contact .page_corp_contact_tel_num::before {
      content: "\f095";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      position: absolute;
      top: 60%;
      left: 0;
      transform: translateY(-50%);
      font-size: Min(calc(20 / var(--view-size) * 100vw), 20px);
      line-height: 1;
      color: #eb5e01;
      -webkit-font-smoothing: antialiased; }
      @media (max-width: 768px) {
        .page_contact .page_corp_contact_tel_num::before {
          font-size: Min(calc(22 / var(--view-size) * 100vw), 22px); } }
  .page_contact .page_contact_info {
    margin: Min(calc(30 / var(--view-size) * 100vw), 30px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_contact .page_contact_info ul {
      list-style: disc;
      margin: 1em 0 0 1em; }

/* =========================================
   page-news
   ========================================= */
.page_news {
  /* =========================================
     戻るボタン
     ========================================= */ }
  .page_news .top_pickup .top_pickup_inner .top_pickup_cont {
    flex-wrap: wrap; }
    .page_news .top_pickup .top_pickup_inner .top_pickup_cont .top_pickup_item {
      flex: none;
      width: 31%; }
      @media (max-width: 768px) {
        .page_news .top_pickup .top_pickup_inner .top_pickup_cont .top_pickup_item {
          width: 100%; } }
  .page_news article h1 {
    text-align: center; }
    @media (max-width: 768px) {
      .page_news article h1 {
        font-size: Min(calc(28 / var(--view-size) * 100vw), 28px);
        line-height: 1.4; } }
  .page_news article .news_inner {
    max-width: 1000px;
    margin: Min(calc(60 / var(--view-size) * 100vw), 60px) auto Min(calc(60 / var(--view-size) * 100vw), 60px); }
    .page_news article .news_inner img {
      width: 100%;
      height: auto; }
  .page_news article .pickup_icon {
    font-weight: 700;
    text-align: center;
    margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px); }
    .page_news article .pickup_icon .pickup_cate {
      margin: 0 Min(calc(10 / var(--view-size) * 100vw), 10px) 0 0;
      padding: Min(calc(6 / var(--view-size) * 100vw), 6px) Min(calc(16 / var(--view-size) * 100vw), 16px);
      border-radius: 999px;
      background: #f8ea21;
      color: #000;
      font-size: Min(calc(15 / var(--view-size) * 100vw), 15px);
      font-weight: 700;
      line-height: 1.3;
      min-width: Min(calc(113 / var(--view-size) * 100vw), 113px);
      text-align: center; }
  .page_news .page_artist_intro_btn_wrap {
    margin-bottom: Min(calc(60 / var(--view-size) * 100vw), 60px);
    text-align: center; }
    @media (max-width: 768px) {
      .page_news .page_artist_intro_btn_wrap {
        margin-top: 0;
        text-align: center; } }
  .page_news .page_artist_intro_btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: Min(calc(180 / var(--view-size) * 100vw), 180px);
    max-width: 100%;
    margin: 0 auto;
    padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(40 / var(--view-size) * 100vw), 40px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(28 / var(--view-size) * 100vw), 28px);
    border-radius: 999px;
    background: #eb5e01;
    color: #fff;
    font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
    transition: background-color 0.25s ease, color 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease; }
    .page_news .page_artist_intro_btn.back {
      padding: Min(calc(16 / var(--view-size) * 100vw), 16px) Min(calc(28 / var(--view-size) * 100vw), 28px) Min(calc(16 / var(--view-size) * 100vw), 18px) Min(calc(40 / var(--view-size) * 100vw), 40px); }
    .page_news .page_artist_intro_btn:hover {
      opacity: 1;
      background: #fff;
      color: #eb5e01 !important;
      box-shadow: inset 0 0 0 Min(calc(2 / var(--view-size) * 100vw), 2px) #eb5e01; }
    @media (max-width: 768px) {
      .page_news .page_artist_intro_btn {
        font-size: Min(calc(16 / var(--view-size) * 100vw), 16px);
        margin-top: Min(calc(20 / var(--view-size) * 100vw), 20px); } }
  .page_news .page_artist_intro_btn:hover .page_artist_intro_btn_arrow {
    background: #eb5e01; }
    .page_news .page_artist_intro_btn:hover .page_artist_intro_btn_arrow::before {
      color: #fff; }
  .page_news .page_artist_intro_btn_txt {
    flex: 1 1 auto;
    text-align: center; }
  .page_news .page_artist_intro_btn_arrow {
    position: absolute;
    top: 50%;
    right: Min(calc(10 / var(--view-size) * 100vw), 10px);
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: Min(calc(30 / var(--view-size) * 100vw), 30px);
    height: Min(calc(30 / var(--view-size) * 100vw), 30px);
    border-radius: 50%;
    background: #000;
    transition: background-color 0.25s ease; }
    .page_news .page_artist_intro_btn_arrow.back {
      right: inherit;
      left: Min(calc(10 / var(--view-size) * 100vw), 10px); }
    .page_news .page_artist_intro_btn_arrow::before {
      content: "\f061";
      font-family: "Font Awesome 6 Free";
      font-weight: 900;
      font-style: normal;
      color: #fff;
      font-size: Min(calc(14 / var(--view-size) * 100vw), 14px);
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      transition: color 0.25s ease; }
    .page_news .page_artist_intro_btn_arrow.back::before {
      content: "\f060"; }
    @media (max-width: 768px) {
      .page_news .page_artist_intro_btn_arrow {
        width: Min(calc(32 / var(--view-size) * 100vw), 32px);
        height: Min(calc(32 / var(--view-size) * 100vw), 32px); }
        .page_news .page_artist_intro_btn_arrow::before {
          font-size: Min(calc(13 / var(--view-size) * 100vw), 13px); } }

.pagination_wrap {
  margin-bottom: 40px; }

.wp-pagenavi {
  text-align: center; }
