@charset "UTF-8";
/*
suffix
560px < landscape <= 768px < tablet <= 1024px < laptop <= 1366px < desktop
        mobile    <= 768px
*/
:root {
  --font-family-body: "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  --font-family-latin:"Times New Roman" , serif;
  --font-family-garamond:"eb-garamond", serif;
  --font-family-garamond-mix:"eb-garamond", "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
  --font-size-body:15px;
  --line-height-body:1.8;
  --color-text-body:#333;
  --color-text-red:#cc0000;
  --color-primary:#EECC00;
  --color-primary-rgb:238, 204, 0;
  --gutter:12px;
  --container-slim:900px;
  --container:1100px;
  --container-number:1100;
  --container-wide:1160px;
}
@media (min-width: 768px) {
  :root {
    --font-size-body:clamp(16px, 1.6vw, 24px);
  }
}

@font-face {
  src: url(../fonts/Times-Roman.woff) format("woff");
  font-family: "Times New Roman";
}
@font-face {
  font-style: italic;
  src: url(../fonts/TimesRoman-Italic.woff) format("woff");
  font-family: "Times New Roman";
}
/* RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, hr {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
  font-size: 100%;
  text-align: left;
  text-decoration: none;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main, picture {
  display: block;
}

html {
  overflow-y: scroll;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

input, button, textarea, select {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

select::-ms-expand {
  display: none;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

a, span, small, strong, em {
  color: inherit;
  font-weight: inherit;
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  font-size: 0.625em;
}

body {
  color: var(--color-text-body);
  font: var(--font-size-body)/var(--line-height-body) var(--font-family-body);
}

input, select, option, textarea, button {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: var(--color-text-body);
  font: var(--font-size-body)/var(--line-height-body) var(--font-family-body);
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  image-rendering: smooth;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*:after, *:before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*[role=button], *[type=button], label {
  cursor: pointer;
}

my-icon {
  display: block;
  line-height: 1;
}

.color-red {
  color: var(--color-text-red);
}

.color-primary {
  color: var(--color-primary);
}

.display-block {
  display: block;
}

.display-inline {
  display: inline;
}

.display-inline-block {
  display: inline-block;
}

.display-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.display-inline-flex {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.display-grid {
  display: -ms-grid;
  display: grid;
}

.display-inline-grid {
  display: -ms-inline-grid;
  display: inline-grid;
}

.font-weight-normal {
  font-weight: normal;
}

.font-weight-bold {
  font-weight: bold;
}

.font-weight-lighter {
  font-weight: lighter;
}

.font-weight-bolder {
  font-weight: bolder;
}

.font-weight-100 {
  font-weight: 100;
}

.font-weight-200 {
  font-weight: 200;
}

.font-weight-300 {
  font-weight: 300;
}

.font-weight-400 {
  font-weight: 400;
}

.font-weight-500 {
  font-weight: 500;
}

.font-weight-600 {
  font-weight: 600;
}

.font-weight-700 {
  font-weight: 700;
}

.font-weight-800 {
  font-weight: 800;
}

.font-weight-900 {
  font-weight: 900;
}

.hidden {
  display: none;
}

@media (min-width: 560px) {
  .hidden--landscape-up {
    display: none;
  }
}
@media (min-width: 768px) {
  .hidden--tablet-up {
    display: none;
  }
}
@media (min-width: 1024px) {
  .hidden--laptop-up {
    display: none;
  }
}
@media (min-width: 1366px) {
  .hidden--desktop-up {
    display: none;
  }
}
@media (max-width: 559.98px) {
  .hidden--landscape-down {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .hidden--tablet-down {
    display: none;
  }
}
@media (max-width: 1023.98px) {
  .hidden--laptop-down {
    display: none;
  }
}
@media (max-width: 1365.98px) {
  .hidden--desktop-down {
    display: none;
  }
}
@media (min-width: 768px) {
  .hidden--pc {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .hidden--mobile {
    display: none;
  }
}
@media (hover: hover) {
  .hover-alpha {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .hover-alpha:hover {
    opacity: 0.6;
  }
}

.hover-underline:hover {
  text-decoration: none;
}

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

.indent-1\.5em {
  text-indent: 1.5em;
}

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

.outdent-1\.5em {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.indent-2em {
  text-indent: 2em;
}

.indent-3em {
  text-indent: 3em;
}

.outdent-2em {
  padding-left: 2em;
  text-indent: -2em;
}

.outdent-3em {
  padding-left: 3em;
  text-indent: -3em;
}

.indent-3em {
  text-indent: 3em;
}

.indent-4\.5em {
  text-indent: 4.5em;
}

.outdent-3em {
  padding-left: 3em;
  text-indent: -3em;
}

.outdent-4\.5em {
  padding-left: 4.5em;
  text-indent: -4.5em;
}

.indent-4em {
  text-indent: 4em;
}

.indent-6em {
  text-indent: 6em;
}

.outdent-4em {
  padding-left: 4em;
  text-indent: -4em;
}

.outdent-6em {
  padding-left: 6em;
  text-indent: -6em;
}

.mb-1em {
  margin-bottom: 1em;
}

.mg-x-auto {
  margin-right: auto;
  margin-left: auto;
}

.pl-1em {
  padding-left: 1em;
}

.max-width-100 {
  max-width: 100px;
}

.max-width-110 {
  max-width: 110px;
}

.max-width-120 {
  max-width: 120px;
}

.max-width-130 {
  max-width: 130px;
}

.max-width-140 {
  max-width: 140px;
}

.max-width-150 {
  max-width: 150px;
}

.max-width-160 {
  max-width: 160px;
}

.max-width-170 {
  max-width: 170px;
}

.max-width-180 {
  max-width: 180px;
}

.max-width-190 {
  max-width: 190px;
}

.max-width-200 {
  max-width: 200px;
}

.max-width-210 {
  max-width: 210px;
}

.max-width-220 {
  max-width: 220px;
}

.max-width-230 {
  max-width: 230px;
}

.max-width-240 {
  max-width: 240px;
}

.max-width-250 {
  max-width: 250px;
}

.max-width-260 {
  max-width: 260px;
}

.max-width-270 {
  max-width: 270px;
}

.max-width-280 {
  max-width: 280px;
}

.max-width-290 {
  max-width: 290px;
}

.max-width-300 {
  max-width: 300px;
}

.max-width-310 {
  max-width: 310px;
}

.max-width-320 {
  max-width: 320px;
}

.max-width-330 {
  max-width: 330px;
}

.max-width-340 {
  max-width: 340px;
}

.max-width-350 {
  max-width: 350px;
}

.max-width-360 {
  max-width: 360px;
}

.max-width-370 {
  max-width: 370px;
}

.max-width-380 {
  max-width: 380px;
}

.max-width-390 {
  max-width: 390px;
}

.max-width-400 {
  max-width: 400px;
}

.max-width-410 {
  max-width: 410px;
}

.max-width-420 {
  max-width: 420px;
}

.max-width-430 {
  max-width: 430px;
}

.max-width-440 {
  max-width: 440px;
}

.max-width-450 {
  max-width: 450px;
}

.max-width-460 {
  max-width: 460px;
}

.max-width-470 {
  max-width: 470px;
}

.max-width-480 {
  max-width: 480px;
}

.max-width-490 {
  max-width: 490px;
}

.max-width-500 {
  max-width: 500px;
}

.max-width-510 {
  max-width: 510px;
}

.max-width-520 {
  max-width: 520px;
}

.max-width-530 {
  max-width: 530px;
}

.max-width-540 {
  max-width: 540px;
}

.max-width-550 {
  max-width: 550px;
}

.max-width-560 {
  max-width: 560px;
}

.max-width-570 {
  max-width: 570px;
}

.max-width-580 {
  max-width: 580px;
}

.max-width-590 {
  max-width: 590px;
}

.max-width-600 {
  max-width: 600px;
}

.max-width-610 {
  max-width: 610px;
}

.max-width-620 {
  max-width: 620px;
}

.max-width-630 {
  max-width: 630px;
}

.max-width-640 {
  max-width: 640px;
}

.max-width-650 {
  max-width: 650px;
}

.max-width-660 {
  max-width: 660px;
}

.max-width-670 {
  max-width: 670px;
}

.max-width-680 {
  max-width: 680px;
}

.max-width-690 {
  max-width: 690px;
}

.max-width-700 {
  max-width: 700px;
}

.max-width-710 {
  max-width: 710px;
}

.max-width-720 {
  max-width: 720px;
}

.max-width-730 {
  max-width: 730px;
}

.max-width-740 {
  max-width: 740px;
}

.max-width-750 {
  max-width: 750px;
}

.max-width-760 {
  max-width: 760px;
}

.max-width-770 {
  max-width: 770px;
}

.max-width-780 {
  max-width: 780px;
}

.max-width-790 {
  max-width: 790px;
}

.max-width-800 {
  max-width: 800px;
}

.max-width-810 {
  max-width: 810px;
}

.max-width-820 {
  max-width: 820px;
}

.max-width-830 {
  max-width: 830px;
}

.max-width-840 {
  max-width: 840px;
}

.max-width-850 {
  max-width: 850px;
}

.max-width-860 {
  max-width: 860px;
}

.max-width-870 {
  max-width: 870px;
}

.max-width-880 {
  max-width: 880px;
}

.max-width-890 {
  max-width: 890px;
}

.max-width-900 {
  max-width: 900px;
}

[class*=object-fit] {
  width: 100%;
  max-width: none;
  height: 100%;
}

.object-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.object-fit-contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.object-fit-fill {
  -o-object-fit: fill;
     object-fit: fill;
}

.object-fit-none {
  -o-object-fit: none;
     object-fit: none;
}

.object-fit-scale-down {
  -o-object-fit: scale-down;
     object-fit: scale-down;
}

.object-position-left {
  -o-object-position: left;
     object-position: left;
}

.object-position-right {
  -o-object-position: right;
     object-position: right;
}

.object-position-center {
  -o-object-position: center;
     object-position: center;
}

.object-position-top {
  -o-object-position: top;
     object-position: top;
}

.object-position-bottom {
  -o-object-position: bottom;
     object-position: bottom;
}

.object-position-center {
  -o-object-position: center;
     object-position: center;
}

.object-position-left-top {
  -o-object-position: left top;
     object-position: left top;
}

.object-position-left-bottom {
  -o-object-position: left bottom;
     object-position: left bottom;
}

.object-position-left-center {
  -o-object-position: left center;
     object-position: left center;
}

.object-position-right-top {
  -o-object-position: right top;
     object-position: right top;
}

.object-position-right-bottom {
  -o-object-position: right bottom;
     object-position: right bottom;
}

.object-position-right-center {
  -o-object-position: right center;
     object-position: right center;
}

.object-position-center-top {
  -o-object-position: center top;
     object-position: center top;
}

.object-position-center-bottom {
  -o-object-position: center bottom;
     object-position: center bottom;
}

.object-position-center-center {
  -o-object-position: center center;
     object-position: center center;
}

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

.text-align-left {
  text-align: left;
}

.text-align-right {
  text-align: right;
}

.text-align-justify {
  text-align: justify;
}

.container {
  --full:1fr;
  --wide: clamp( 0% ,
    calc( var(--js-view-width) * 0.5 - var(--container) * 0.5 - var(--gutter) ) ,
    calc( var(--container-wide) * 0.5 - var(--container) * 0.5 ) );
  --content: clamp( 0% ,
    calc( var(--js-view-width)*0.5 - var(--container-slim) * 0.5 - var(--gutter) ) ,
    calc( var(--container) * 0.5 - var(--container-slim) * 0.5 ) );
  --slim: min(calc(100% - var(--gutter)*2), var(--container-slim));
  -ms-grid-columns: [full-start] var(--full) var(--gutter) [wide-start] var(--wide) [content-start] var(--content) [slim-start] var(--slim) [slim-end] var(--content) [content-end] var(--wide) [wide-end] var(--gutter) var(--full) [full-end];
  display: -ms-grid;
  display: grid;
  grid-template-columns: [full-start] var(--full) var(--gutter) [wide-start] var(--wide) [content-start] var(--content) [slim-start] var(--slim) [slim-end] var(--content) [content-end] var(--wide) [wide-end] var(--gutter) var(--full) [full-end];
  grid-auto-rows: -webkit-min-content;
  grid-auto-rows: min-content;
  width: 100%;
}
.container > * {
  grid-column: content;
}

@media (min-width: 768px) {
  .container--sidebar, .container--sidebar--reverse {
    --outside: max( 0px , calc(var(--js-view-width)*0.5 - ( var(--gutter) + var(--container)*0.5 ) ) ) ;
    --main: min( calc( 700 / var(--container-number) * (var(--js-view-width) - var(--gutter)*2) ) , 700px);
    --aside: min( calc( 250 / var(--container-number) * (var(--js-view-width) - var(--gutter)*2) ) , 250px);
    --gap: min( calc( calc( var(--container-number) - 250 - 700) / var(--container-number) * (var(--js-view-width) - var(--gutter)*2) ) , calc( var(--container) - 250px - 700px) );
    -ms-grid-columns: var(--outside) var(--gutter) [main-start] var(--main) [main-end] var(--gap) [aside-start] var(--aside) [aside-end] var(--gutter) var(--outside);
    display: -ms-grid;
    display: grid;
    grid-template-columns: var(--outside) var(--gutter) [main-start] var(--main) [main-end] var(--gap) [aside-start] var(--aside) [aside-end] var(--gutter) var(--outside);
    grid-auto-rows: -webkit-min-content;
    grid-auto-rows: min-content;
  }
  .container--sidebar--reverse {
    direction: rtl;
  }
}

.grid--row12, .grid--row11, .grid--row10, .grid--row9, .grid--row8, .grid--row7, .grid--row6, .grid--row5, .grid--row4, .grid--row3, .grid--row2, .grid--row1, .grid {
  display: -ms-grid;
  display: grid;
}

.grid--row1 {
  -ms-grid-columns: (1fr)[1];
  grid-template-columns: repeat(1, 1fr);
}
.grid--row2 {
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}
.grid--row3 {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
.grid--row4 {
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
}
.grid--row5 {
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
}
.grid--row6 {
  -ms-grid-columns: (1fr)[6];
  grid-template-columns: repeat(6, 1fr);
}
.grid--row7 {
  -ms-grid-columns: (1fr)[7];
  grid-template-columns: repeat(7, 1fr);
}
.grid--row8 {
  -ms-grid-columns: (1fr)[8];
  grid-template-columns: repeat(8, 1fr);
}
.grid--row9 {
  -ms-grid-columns: (1fr)[9];
  grid-template-columns: repeat(9, 1fr);
}
.grid--row10 {
  -ms-grid-columns: (1fr)[10];
  grid-template-columns: repeat(10, 1fr);
}
.grid--row11 {
  -ms-grid-columns: (1fr)[11];
  grid-template-columns: repeat(11, 1fr);
}
.grid--row12 {
  -ms-grid-columns: (1fr)[12];
  grid-template-columns: repeat(12, 1fr);
}
.grid__column1 {
  -ms-grid-column-span: 1;
  grid-column: span 1;
}
.grid__column2 {
  -ms-grid-column-span: 2;
  grid-column: span 2;
}
.grid__column3 {
  -ms-grid-column-span: 3;
  grid-column: span 3;
}
.grid__column4 {
  -ms-grid-column-span: 4;
  grid-column: span 4;
}
.grid__column5 {
  -ms-grid-column-span: 5;
  grid-column: span 5;
}
.grid__column6 {
  -ms-grid-column-span: 6;
  grid-column: span 6;
}
.grid__column7 {
  -ms-grid-column-span: 7;
  grid-column: span 7;
}
.grid__column8 {
  -ms-grid-column-span: 8;
  grid-column: span 8;
}
.grid__column9 {
  -ms-grid-column-span: 9;
  grid-column: span 9;
}
.grid__column10 {
  -ms-grid-column-span: 10;
  grid-column: span 10;
}
.grid__column11 {
  -ms-grid-column-span: 11;
  grid-column: span 11;
}
.grid__column12 {
  -ms-grid-column-span: 12;
  grid-column: span 12;
}
.grid--gap5 {
  gap: 5px;
}
.grid--gapY5 {
  row-gap: 5px;
}
.grid--gapX5 {
  -webkit-column-gap: 5px;
          column-gap: 5px;
}
.grid--gap10 {
  gap: 10px;
}
.grid--gapY10 {
  row-gap: 10px;
}
.grid--gapX10 {
  -webkit-column-gap: 10px;
          column-gap: 10px;
}
.grid--gap15 {
  gap: 15px;
}
.grid--gapY15 {
  row-gap: 15px;
}
.grid--gapX15 {
  -webkit-column-gap: 15px;
          column-gap: 15px;
}
.grid--gap20 {
  gap: 20px;
}
.grid--gapY20 {
  row-gap: 20px;
}
.grid--gapX20 {
  -webkit-column-gap: 20px;
          column-gap: 20px;
}
.grid--gap25 {
  gap: 25px;
}
.grid--gapY25 {
  row-gap: 25px;
}
.grid--gapX25 {
  -webkit-column-gap: 25px;
          column-gap: 25px;
}
.grid--gap30 {
  gap: 30px;
}
.grid--gapY30 {
  row-gap: 30px;
}
.grid--gapX30 {
  -webkit-column-gap: 30px;
          column-gap: 30px;
}
.grid--gap35 {
  gap: 35px;
}
.grid--gapY35 {
  row-gap: 35px;
}
.grid--gapX35 {
  -webkit-column-gap: 35px;
          column-gap: 35px;
}
.grid--gap40 {
  gap: 40px;
}
.grid--gapY40 {
  row-gap: 40px;
}
.grid--gapX40 {
  -webkit-column-gap: 40px;
          column-gap: 40px;
}
.grid--gap45 {
  gap: 45px;
}
.grid--gapY45 {
  row-gap: 45px;
}
.grid--gapX45 {
  -webkit-column-gap: 45px;
          column-gap: 45px;
}
.grid--gap50 {
  gap: 50px;
}
.grid--gapY50 {
  row-gap: 50px;
}
.grid--gapX50 {
  -webkit-column-gap: 50px;
          column-gap: 50px;
}
.grid--gap55 {
  gap: 55px;
}
.grid--gapY55 {
  row-gap: 55px;
}
.grid--gapX55 {
  -webkit-column-gap: 55px;
          column-gap: 55px;
}
.grid--gap60 {
  gap: 60px;
}
.grid--gapY60 {
  row-gap: 60px;
}
.grid--gapX60 {
  -webkit-column-gap: 60px;
          column-gap: 60px;
}
.grid--gap65 {
  gap: 65px;
}
.grid--gapY65 {
  row-gap: 65px;
}
.grid--gapX65 {
  -webkit-column-gap: 65px;
          column-gap: 65px;
}
.grid--gap70 {
  gap: 70px;
}
.grid--gapY70 {
  row-gap: 70px;
}
.grid--gapX70 {
  -webkit-column-gap: 70px;
          column-gap: 70px;
}
.grid--gap75 {
  gap: 75px;
}
.grid--gapY75 {
  row-gap: 75px;
}
.grid--gapX75 {
  -webkit-column-gap: 75px;
          column-gap: 75px;
}
.grid--gap80 {
  gap: 80px;
}
.grid--gapY80 {
  row-gap: 80px;
}
.grid--gapX80 {
  -webkit-column-gap: 80px;
          column-gap: 80px;
}
.grid--gap85 {
  gap: 85px;
}
.grid--gapY85 {
  row-gap: 85px;
}
.grid--gapX85 {
  -webkit-column-gap: 85px;
          column-gap: 85px;
}
.grid--gap90 {
  gap: 90px;
}
.grid--gapY90 {
  row-gap: 90px;
}
.grid--gapX90 {
  -webkit-column-gap: 90px;
          column-gap: 90px;
}
.grid--gap95 {
  gap: 95px;
}
.grid--gapY95 {
  row-gap: 95px;
}
.grid--gapX95 {
  -webkit-column-gap: 95px;
          column-gap: 95px;
}
.grid--gap100 {
  gap: 100px;
}
.grid--gapY100 {
  row-gap: 100px;
}
.grid--gapX100 {
  -webkit-column-gap: 100px;
          column-gap: 100px;
}
@media (min-width: 768px) {
  .grid__column1--pc {
    -ms-grid-column-span: 1;
    grid-column: span 1;
  }
  .grid__column2--pc {
    -ms-grid-column-span: 2;
    grid-column: span 2;
  }
  .grid__column3--pc {
    -ms-grid-column-span: 3;
    grid-column: span 3;
  }
  .grid__column4--pc {
    -ms-grid-column-span: 4;
    grid-column: span 4;
  }
  .grid__column5--pc {
    -ms-grid-column-span: 5;
    grid-column: span 5;
  }
  .grid__column6--pc {
    -ms-grid-column-span: 6;
    grid-column: span 6;
  }
  .grid__column7--pc {
    -ms-grid-column-span: 7;
    grid-column: span 7;
  }
  .grid__column8--pc {
    -ms-grid-column-span: 8;
    grid-column: span 8;
  }
  .grid__column9--pc {
    -ms-grid-column-span: 9;
    grid-column: span 9;
  }
  .grid__column10--pc {
    -ms-grid-column-span: 10;
    grid-column: span 10;
  }
  .grid__column11--pc {
    -ms-grid-column-span: 11;
    grid-column: span 11;
  }
  .grid__column12--pc {
    -ms-grid-column-span: 12;
    grid-column: span 12;
  }
  .grid--gap5--pc {
    gap: 5px;
  }
  .grid--gapY5--pc {
    row-gap: 5px;
  }
  .grid--gapX5--pc {
    -webkit-column-gap: 5px;
            column-gap: 5px;
  }
  .grid--gap10--pc {
    gap: 10px;
  }
  .grid--gapY10--pc {
    row-gap: 10px;
  }
  .grid--gapX10--pc {
    -webkit-column-gap: 10px;
            column-gap: 10px;
  }
  .grid--gap15--pc {
    gap: 15px;
  }
  .grid--gapY15--pc {
    row-gap: 15px;
  }
  .grid--gapX15--pc {
    -webkit-column-gap: 15px;
            column-gap: 15px;
  }
  .grid--gap20--pc {
    gap: 20px;
  }
  .grid--gapY20--pc {
    row-gap: 20px;
  }
  .grid--gapX20--pc {
    -webkit-column-gap: 20px;
            column-gap: 20px;
  }
  .grid--gap25--pc {
    gap: 25px;
  }
  .grid--gapY25--pc {
    row-gap: 25px;
  }
  .grid--gapX25--pc {
    -webkit-column-gap: 25px;
            column-gap: 25px;
  }
  .grid--gap30--pc {
    gap: 30px;
  }
  .grid--gapY30--pc {
    row-gap: 30px;
  }
  .grid--gapX30--pc {
    -webkit-column-gap: 30px;
            column-gap: 30px;
  }
  .grid--gap35--pc {
    gap: 35px;
  }
  .grid--gapY35--pc {
    row-gap: 35px;
  }
  .grid--gapX35--pc {
    -webkit-column-gap: 35px;
            column-gap: 35px;
  }
  .grid--gap40--pc {
    gap: 40px;
  }
  .grid--gapY40--pc {
    row-gap: 40px;
  }
  .grid--gapX40--pc {
    -webkit-column-gap: 40px;
            column-gap: 40px;
  }
  .grid--gap45--pc {
    gap: 45px;
  }
  .grid--gapY45--pc {
    row-gap: 45px;
  }
  .grid--gapX45--pc {
    -webkit-column-gap: 45px;
            column-gap: 45px;
  }
  .grid--gap50--pc {
    gap: 50px;
  }
  .grid--gapY50--pc {
    row-gap: 50px;
  }
  .grid--gapX50--pc {
    -webkit-column-gap: 50px;
            column-gap: 50px;
  }
  .grid--gap55--pc {
    gap: 55px;
  }
  .grid--gapY55--pc {
    row-gap: 55px;
  }
  .grid--gapX55--pc {
    -webkit-column-gap: 55px;
            column-gap: 55px;
  }
  .grid--gap60--pc {
    gap: 60px;
  }
  .grid--gapY60--pc {
    row-gap: 60px;
  }
  .grid--gapX60--pc {
    -webkit-column-gap: 60px;
            column-gap: 60px;
  }
  .grid--gap65--pc {
    gap: 65px;
  }
  .grid--gapY65--pc {
    row-gap: 65px;
  }
  .grid--gapX65--pc {
    -webkit-column-gap: 65px;
            column-gap: 65px;
  }
  .grid--gap70--pc {
    gap: 70px;
  }
  .grid--gapY70--pc {
    row-gap: 70px;
  }
  .grid--gapX70--pc {
    -webkit-column-gap: 70px;
            column-gap: 70px;
  }
  .grid--gap75--pc {
    gap: 75px;
  }
  .grid--gapY75--pc {
    row-gap: 75px;
  }
  .grid--gapX75--pc {
    -webkit-column-gap: 75px;
            column-gap: 75px;
  }
  .grid--gap80--pc {
    gap: 80px;
  }
  .grid--gapY80--pc {
    row-gap: 80px;
  }
  .grid--gapX80--pc {
    -webkit-column-gap: 80px;
            column-gap: 80px;
  }
  .grid--gap85--pc {
    gap: 85px;
  }
  .grid--gapY85--pc {
    row-gap: 85px;
  }
  .grid--gapX85--pc {
    -webkit-column-gap: 85px;
            column-gap: 85px;
  }
  .grid--gap90--pc {
    gap: 90px;
  }
  .grid--gapY90--pc {
    row-gap: 90px;
  }
  .grid--gapX90--pc {
    -webkit-column-gap: 90px;
            column-gap: 90px;
  }
  .grid--gap95--pc {
    gap: 95px;
  }
  .grid--gapY95--pc {
    row-gap: 95px;
  }
  .grid--gapX95--pc {
    -webkit-column-gap: 95px;
            column-gap: 95px;
  }
  .grid--gap100--pc {
    gap: 100px;
  }
  .grid--gapY100--pc {
    row-gap: 100px;
  }
  .grid--gapX100--pc {
    -webkit-column-gap: 100px;
            column-gap: 100px;
  }
}
@media (max-width: 767.98px) {
  .grid__column1--mobile {
    -ms-grid-column-span: 1;
    grid-column: span 1;
  }
  .grid__column2--mobile {
    -ms-grid-column-span: 2;
    grid-column: span 2;
  }
  .grid__column3--mobile {
    -ms-grid-column-span: 3;
    grid-column: span 3;
  }
  .grid__column4--mobile {
    -ms-grid-column-span: 4;
    grid-column: span 4;
  }
  .grid__column5--mobile {
    -ms-grid-column-span: 5;
    grid-column: span 5;
  }
  .grid__column6--mobile {
    -ms-grid-column-span: 6;
    grid-column: span 6;
  }
  .grid__column7--mobile {
    -ms-grid-column-span: 7;
    grid-column: span 7;
  }
  .grid__column8--mobile {
    -ms-grid-column-span: 8;
    grid-column: span 8;
  }
  .grid__column9--mobile {
    -ms-grid-column-span: 9;
    grid-column: span 9;
  }
  .grid__column10--mobile {
    -ms-grid-column-span: 10;
    grid-column: span 10;
  }
  .grid__column11--mobile {
    -ms-grid-column-span: 11;
    grid-column: span 11;
  }
  .grid__column12--mobile {
    -ms-grid-column-span: 12;
    grid-column: span 12;
  }
  .grid--gap5--mobile {
    gap: 5px;
  }
  .grid--gapY5--mobile {
    row-gap: 5px;
  }
  .grid--gapX5--mobile {
    -webkit-column-gap: 5px;
            column-gap: 5px;
  }
  .grid--gap10--mobile {
    gap: 10px;
  }
  .grid--gapY10--mobile {
    row-gap: 10px;
  }
  .grid--gapX10--mobile {
    -webkit-column-gap: 10px;
            column-gap: 10px;
  }
  .grid--gap15--mobile {
    gap: 15px;
  }
  .grid--gapY15--mobile {
    row-gap: 15px;
  }
  .grid--gapX15--mobile {
    -webkit-column-gap: 15px;
            column-gap: 15px;
  }
  .grid--gap20--mobile {
    gap: 20px;
  }
  .grid--gapY20--mobile {
    row-gap: 20px;
  }
  .grid--gapX20--mobile {
    -webkit-column-gap: 20px;
            column-gap: 20px;
  }
  .grid--gap25--mobile {
    gap: 25px;
  }
  .grid--gapY25--mobile {
    row-gap: 25px;
  }
  .grid--gapX25--mobile {
    -webkit-column-gap: 25px;
            column-gap: 25px;
  }
  .grid--gap30--mobile {
    gap: 30px;
  }
  .grid--gapY30--mobile {
    row-gap: 30px;
  }
  .grid--gapX30--mobile {
    -webkit-column-gap: 30px;
            column-gap: 30px;
  }
  .grid--gap35--mobile {
    gap: 35px;
  }
  .grid--gapY35--mobile {
    row-gap: 35px;
  }
  .grid--gapX35--mobile {
    -webkit-column-gap: 35px;
            column-gap: 35px;
  }
  .grid--gap40--mobile {
    gap: 40px;
  }
  .grid--gapY40--mobile {
    row-gap: 40px;
  }
  .grid--gapX40--mobile {
    -webkit-column-gap: 40px;
            column-gap: 40px;
  }
  .grid--gap45--mobile {
    gap: 45px;
  }
  .grid--gapY45--mobile {
    row-gap: 45px;
  }
  .grid--gapX45--mobile {
    -webkit-column-gap: 45px;
            column-gap: 45px;
  }
  .grid--gap50--mobile {
    gap: 50px;
  }
  .grid--gapY50--mobile {
    row-gap: 50px;
  }
  .grid--gapX50--mobile {
    -webkit-column-gap: 50px;
            column-gap: 50px;
  }
  .grid--gap55--mobile {
    gap: 55px;
  }
  .grid--gapY55--mobile {
    row-gap: 55px;
  }
  .grid--gapX55--mobile {
    -webkit-column-gap: 55px;
            column-gap: 55px;
  }
  .grid--gap60--mobile {
    gap: 60px;
  }
  .grid--gapY60--mobile {
    row-gap: 60px;
  }
  .grid--gapX60--mobile {
    -webkit-column-gap: 60px;
            column-gap: 60px;
  }
  .grid--gap65--mobile {
    gap: 65px;
  }
  .grid--gapY65--mobile {
    row-gap: 65px;
  }
  .grid--gapX65--mobile {
    -webkit-column-gap: 65px;
            column-gap: 65px;
  }
  .grid--gap70--mobile {
    gap: 70px;
  }
  .grid--gapY70--mobile {
    row-gap: 70px;
  }
  .grid--gapX70--mobile {
    -webkit-column-gap: 70px;
            column-gap: 70px;
  }
  .grid--gap75--mobile {
    gap: 75px;
  }
  .grid--gapY75--mobile {
    row-gap: 75px;
  }
  .grid--gapX75--mobile {
    -webkit-column-gap: 75px;
            column-gap: 75px;
  }
  .grid--gap80--mobile {
    gap: 80px;
  }
  .grid--gapY80--mobile {
    row-gap: 80px;
  }
  .grid--gapX80--mobile {
    -webkit-column-gap: 80px;
            column-gap: 80px;
  }
  .grid--gap85--mobile {
    gap: 85px;
  }
  .grid--gapY85--mobile {
    row-gap: 85px;
  }
  .grid--gapX85--mobile {
    -webkit-column-gap: 85px;
            column-gap: 85px;
  }
  .grid--gap90--mobile {
    gap: 90px;
  }
  .grid--gapY90--mobile {
    row-gap: 90px;
  }
  .grid--gapX90--mobile {
    -webkit-column-gap: 90px;
            column-gap: 90px;
  }
  .grid--gap95--mobile {
    gap: 95px;
  }
  .grid--gapY95--mobile {
    row-gap: 95px;
  }
  .grid--gapX95--mobile {
    -webkit-column-gap: 95px;
            column-gap: 95px;
  }
  .grid--gap100--mobile {
    gap: 100px;
  }
  .grid--gapY100--mobile {
    row-gap: 100px;
  }
  .grid--gapX100--mobile {
    -webkit-column-gap: 100px;
            column-gap: 100px;
  }
}

.section--gutter {
  padding-right: var(--gutter);
  padding-left: var(--gutter);
}
.section--fillGutter {
  margin-right: calc(var(--gutter) * -1);
  margin-left: calc(var(--gutter) * -1);
}
.section--full {
  grid-column: full;
}
.section--wide {
  grid-column: wide;
}
.section--slim {
  grid-column: slim;
}
.section--main {
  grid-column: main;
}
.section--aside {
  grid-column: aside;
}

.wrapper {
  width: 100%;
  overflow: hidden;
}
.wrapper.is-open {
  position: fixed;
  left: 0;
}

.heading-t1 {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  -webkit-transform: translateX(-0.1em);
      -ms-transform: translateX(-0.1em);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          justify-content: center;
  gap: 0 0.12em;
          transform: translateX(-0.1em);
  font-size: 30px;
  font-family: var(--font-family-latin);
}
.heading-t1__text {
  -webkit-background-clip: text;
  display: inline-block;
  -webkit-text-fill-color: transparent;
  background-image: -webkit-gradient(linear, left top, right top, from(#E3CB8B), color-stop(40.44%, #EECC00), to(#F5E0C6));
  background-image: -o-linear-gradient(left, #E3CB8B 0%, #EECC00 40.44%, #F5E0C6 100%);
  background-image: linear-gradient(90deg, #E3CB8B 0%, #EECC00 40.44%, #F5E0C6 100%);
          background-clip: text;
  color: transparent;
}
.heading-t1__textwhite {
  color: #fff;
}
@media (min-width: 768px) {
  .heading-t1 {
    font-size: clamp(30px, 3vw, 50px);
  }
}

.linklist-news {
  -ms-grid-columns: 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px 0;
}
.linklist-news__item {
  position: relative;
  padding: 0 0 0.7em;
  color: #fff;
}
.linklist-news__item::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-image: -webkit-gradient(linear, left top, right top, from(#E3CB8B), color-stop(40%, rgba(var(--color-primary-rgb), 1)), to(rgba(var(--color-primary-rgb), 0)));
  background-image: -o-linear-gradient(left, #E3CB8B 0%, rgba(var(--color-primary-rgb), 1) 40%, rgba(var(--color-primary-rgb), 0) 100%);
  background-image: linear-gradient(90deg, #E3CB8B 0%, rgba(var(--color-primary-rgb), 1) 40%, rgba(var(--color-primary-rgb), 0) 100%);
  content: "";
}
.linklist-news .linklist-news__item:nth-child(even)::before {
  background-image: -webkit-gradient(linear, right top, left top, from(#E3CB8B), color-stop(40%, rgba(var(--color-primary-rgb), 1)), to(rgba(var(--color-primary-rgb), 0)));
  background-image: -o-linear-gradient(right, #E3CB8B 0%, rgba(var(--color-primary-rgb), 1) 40%, rgba(var(--color-primary-rgb), 0) 100%);
  background-image: linear-gradient(-90deg, #E3CB8B 0%, rgba(var(--color-primary-rgb), 1) 40%, rgba(var(--color-primary-rgb), 0) 100%);
}
.linklist-news__date {
  display: block;
  letter-spacing: 0.035em;
}
.linklist-news__link {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.07em;
}
.linklist-news__link:hover {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .linklist-news {
    gap: 60px 0;
  }
  .linklist-news__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .linklist-news__date {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 12em;
            flex: 0 0 12em;
    width: 12em;
    padding: 0 0 0 2.5em;
  }
  .linklist-news__link {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
}

.page-bottom {
  padding-top: 5px;
  background: -webkit-gradient(linear, left top, right top, from(rgb(227, 203, 139)), color-stop(1.75%, rgb(228, 203, 131)), color-stop(14.88%, rgb(232, 203, 75)), color-stop(26.18%, rgb(235, 204, 34)), color-stop(35.06%, rgb(237, 204, 9)), color-stop(40.45%, rgb(238, 204, 0)), color-stop(42.34%, rgb(238, 205, 8)), color-stop(63.36%, rgb(241, 213, 88)), color-stop(80.63%, rgb(243, 219, 148)), color-stop(93.29%, rgb(245, 223, 184)), to(rgb(245, 224, 198)));
  background: -o-linear-gradient(left, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
  background: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
}
.page-bottom__logo {
  text-align: center;
}
.page-bottom__logo img {
  width: 250px;
}
.page-bottom__inner {
  background-color: #000;
}
.page-bottom__grid {
  -ms-grid-columns: 1fr 1fr 1fr;
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  max-width: 920px;
  margin: 0 auto;
  gap: 0 10px;
}
.page-bottom__group {
  padding: 50px 0;
  background: url(../images/shared/bg-group.png) no-repeat center center/cover;
}
.page-bottom__banner {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
          align-items: center;
          justify-content: center;
  height: 50vw;
}
.page-bottom__banner::before, .page-bottom__banner::after {
  z-index: 2;
  position: absolute;
  left: 0;
  width: 100%;
  height: 5px;
  background: -webkit-gradient(linear, left top, right top, from(rgb(227, 203, 139)), color-stop(1.75%, rgb(228, 203, 131)), color-stop(14.88%, rgb(232, 203, 75)), color-stop(26.18%, rgb(235, 204, 34)), color-stop(35.06%, rgb(237, 204, 9)), color-stop(40.45%, rgb(238, 204, 0)), color-stop(42.34%, rgb(238, 205, 8)), color-stop(63.36%, rgb(241, 213, 88)), color-stop(80.63%, rgb(243, 219, 148)), color-stop(93.29%, rgb(245, 223, 184)), to(rgb(245, 224, 198)));
  background: -o-linear-gradient(left, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
  background: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
  content: "";
}
.page-bottom__banner::before {
  top: 0;
}
.page-bottom__banner::after {
  bottom: 0;
}
.page-bottom__banner span {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 3;
  position: relative;
          flex: 1 1 100%;
          align-items: center;
          justify-content: center;
  height: 60px;
  background-color: rgba(255, 255, 255, 0.7);
  font-size: clamp(13px, 2.34375vw, 18px);
}
.page-bottom__banner figure {
  -webkit-filter: grayscale(90%);
  -webkit-transition: 0.3s -webkit-filter ease-in-out;
  -o-transition: 0.3s filter ease-in-out;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
          filter: grayscale(90%);
  transition: 0.3s -webkit-filter ease-in-out;
  transition: 0.3s filter ease-in-out;
  transition: 0.3s filter ease-in-out, 0.3s -webkit-filter ease-in-out;
}
.page-bottom__banner:hover figure {
  -webkit-filter: grayscale(0%);
          filter: grayscale(0%);
}
.page-bottom__banners {
  padding: var(--gutter);
}
.page-bottom__notes {
  margin: 1em 0 0;
  color: #fff;
  line-height: 1.46875;
  letter-spacing: 0.05em;
  text-align: center;
}
.page-bottom__instagram {
  margin: 43px 0 0;
  text-align: center;
}
.page-bottom__instagram img {
  width: 222px;
}
@media (hover: hover) {
  .page-bottom__instagram a {
    -webkit-transition: 0.3s opacity ease-in-out;
    -o-transition: 0.3s opacity ease-in-out;
    transition: 0.3s opacity ease-in-out;
  }
  .page-bottom__instagram a:hover {
    opacity: 0.6;
  }
}
@media (min-width: 1024px) {
  .page-bottom__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .page-bottom__logo img {
    width: 463px;
  }
  .page-bottom__notes {
    font-size: clamp(10.6666666667px, 1.0666666667vw, 16px);
  }
  .page-bottom__instagram {
    margin: 20px 0 0;
  }
  .page-bottom__instagram img {
    width: 307px;
  }
  .page-bottom__group {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    width: 50%;
    padding: 150px 17px 0 0;
  }
  .page-bottom__banners {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 50%;
            flex: 0 0 50%;
    width: 50%;
    padding: 40px 0 36px;
  }
  .page-bottom__banner {
    height: 400px;
  }
  .page-bottom__banner span {
    height: 80px;
    font-size: clamp(18px, 1.8vw, 27px);
    letter-spacing: 0.08em;
  }
  .page-bottom__grid {
    margin: 0;
  }
}

.site-footer {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: center;
          justify-content: center;
  height: 80px;
  background-image: -webkit-gradient(linear, left top, right top, from(rgb(227, 203, 139)), color-stop(1.75%, rgb(228, 203, 131)), color-stop(14.88%, rgb(232, 203, 75)), color-stop(26.18%, rgb(235, 204, 34)), color-stop(35.06%, rgb(237, 204, 9)), color-stop(40.45%, rgb(238, 204, 0)), color-stop(42.34%, rgb(238, 205, 8)), color-stop(63.36%, rgb(241, 213, 88)), color-stop(80.63%, rgb(243, 219, 148)), color-stop(93.29%, rgb(245, 223, 184)), to(rgb(245, 224, 198)));
  background-image: -o-linear-gradient(left, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
  background-image: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
}
.site-footer__copyrigjt {
  font-size: 12px;
  font-family: var(--font-family-latin);
}
@media (min-width: 768px) {
  .site-footer {
    height: 124px;
  }
  .site-footer__copyright {
    font-size: clamp(10.6666666667px, 1.0666666667vw, 16px);
  }
}

.home-mv {
  -webkit-box-align: center;
      -ms-flex-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
          align-items: center;
          justify-content: center;
  width: 100%;
  height: 100vh;
  height: 100dvh;
}
.home-mv__text {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
  z-index: 2;
  position: relative;
          flex: 0 0 100%;
  width: 100%;
}
.home-mv__video {
  -o-object-fit: cover;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
     object-fit: cover;
}
@media (min-width: 768px) {
  .home-mv {
    height: 850px;
  }
  .home-mv__text {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 720px;
            flex: 0 0 720px;
    width: 720px;
  }
}
@media (min-width: 1366px) {
  .home-mv {
    height: 920px;
  }
  .home-mv__text {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 1372px;
            flex: 0 1 1372px;
    width: auto;
    max-width: 1372px;
  }
}
@media (max-width: 767px) {
    .home-mv {
      height: auto;
        padding: 5em 0;
    }
}

.home-section1 {
  background: url(../images/shared/bg1.jpg) no-repeat center top/cover;
}

.home-message {
  padding: 2em 0;
}
.home-message__copy {
  margin: .8em 0 0;
}
.home-message__copy p {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #fff;
  font-size: 14px;
  line-height: 1.875;
  letter-spacing: 0.035em;
  text-align: center;
}
.home-message__copy p + p {
  margin-top: 1.3em;
}
@media (min-width: 768px) {
  .home-message {
    padding: 3em 0;
  }
  .home-message__copy {
    margin: 35px 0 0;
    font-size: clamp(18px, 2vw, 26px);
  }
}

.home-news {
  padding: 0 0 7em;
}
.home-news__list {
  margin: 1em 0 0;
}
@media (min-width: 768px) {
  .home-news {
    padding: 0 0 10em
  }
  .home-news__list {
    margin: 32px 0 0;
  }
}

.home-price * {
    font-weight: bold;
}
.home-price__title {
  margin: 0 0 1em;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.5;
  font-family: var(--font-family-latin);
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
	.home-price__title {
	    font-size: 28px;
	    -webkit-text-stroke: .5px #333;
	}
}
.home-price__subtitle {
  margin: 0 0 0 2em;
  font-size: 20px;
  line-height: 1.5;
  font-family: var(--font-family-latin);
  letter-spacing: 0.1em;
}
.home-price__list {
  max-width: 20em;
  margin: 0 0 0 3em;
}
.home-price__list + .home-price__subtitle {
  margin-top: 1em;
}
.home-price__list + .home-price__list {
  margin-top: 1.3em;
}
.home-price__list li {
  -webkit-box-align: end;
      -ms-flex-align: end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
          align-items: flex-end;
          justify-content: space-between;
  margin-top: 0.2em;
  gap: 0 0.5em;
  line-height: 1.25;
  font-family: var(--font-family-garamond-mix);
  font-weight: bold;
  /*letter-spacing: 0.1em;*/
}
.home-price__list li strong {
  font-size: 1.3333333333em;
}

.home-system .home-price__list:nth-of-type(1) li:nth-child(-n+3) span {
    font-size: 1.4em;
}
.home-system .home-price__list:nth-of-type(1) li:nth-child(-n+3) strong {
    font-size: 1.5em;
}

@media (min-width: 768px) {
  .home-price__title {
    margin: 0 0 0.5em;
    font-size: clamp(30px, 3vw, 50px);
  }
  .home-price__subtitle {
    font-size: clamp(25px, 2vw, 36px);
  }
}
@media (min-width: 1024px) {
  .home-price__list {
    margin: 0;
    margin-left: clamp(113.3333333333px, 11.3333333333vw, 100px);
  }
  .home-price__subtitle {
    margin: 0;
    padding-left: clamp(113.3333333333px, 11.3333333333vw, 100px);
  }
}

.home-system {
  background: url(../images/home/bg-gold.jpg) no-repeat center center/cover;
}
.home-system .home-price__list.freedrink {
  max-width: 100%;
  background: rgb(255 255 255 / 50%);
  padding: 1em;
  font-size: 12px;
  border: 5px solid #edcc09;
    border-image: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%) 1;
}
@media (max-width: 767px) {
	.home-system .home-price__list.freedrink {
	    font-size: 14px;
	    -webkit-text-stroke: .1px;
	}
}
@media (min-width: 1024px) {
  .home-system {
    position: relative;
    height: 730px;
    padding-right: 50%;
  }
  .home-system__image {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
  }
  .home-system__content {
    max-width: 700px;
    margin: 0 auto;
    padding: 40px 15px 0;
  }
  .home-system .home-price__list {
    max-width: 20em;
  }
  .home-system .home-price__list.freedrink {
    width: 100%;
    max-width: 33em;
    font-size: min(18px, 1vw);
    font-family: var(--font-family-garamond-mix);
  }
}
.home-system .home-price__list.freedrink + ul {
    margin: 1.7em 0 0 3em;
}
.home-system .home-price__list.freedrink + ul li {
    font-size: 12px;
    padding-left: 1em;
    text-indent: -1em;
    font-family: var(--font-family-garamond-mix);
}
@media (max-width: 767px) {
	.home-system .home-price__list.freedrink + ul li {
	    font-size: 14px;
	    font-weight: bold;
	    -webkit-text-stroke: .1px;
	}
}
.home-system .home-price__list.freedrink + ul li:not(:first-child) {
    margin: .5em 0 0;
}
@media (min-width: 1024px) {
    .home-system .home-price__list.freedrink + ul {
        max-width: 30em;
        margin-left: clamp(113.3333333333px, 11.3333333333vw, 170px);
    }
    .home-system .home-price__list.freedrink + ul li {
        font-size: min(16px, 1vw);
    }
}

.home-vip {
  background: url(../images/home/bg-gold.jpg) no-repeat center center/cover;
}
@media (min-width: 1024px) {
  .home-vip {
    position: relative;
    height: 700px;
    padding-left: 50%;
  }
  .home-vip__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
  }
  .home-vip__content {
    max-width: 700px;
    margin: 0 auto;
    padding: 40px 15px 0;
  }
  .home-vip .home-price__list {
    max-width: 13em;
  }
}

@media (max-width: 1023.98px) {
  .home-vip__content,
  .home-system__content {
    padding: 2em var(--gutter);
  }
}
.home-access {
  padding: 44px 0 0;
  background: url(../images/shared/bg2.jpg) no-repeat center top/cover;
}
.home-access__logo {
  margin: 28px 0 0;
  text-align: center;
}
.home-access__logo img {
  width: 250px;
}
.home-access__address {
  margin: 0.8em 0 0;
  color: #fff;
  letter-spacing: 0.03em;
  text-align: center;
}
.home-access__phone {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin: 0.35em 0 0;
  color: #fff;
  font-size: 32px;
  line-height: 1;
  font-family: var(--font-family-garamond-mix);
  letter-spacing: 0.08em;
  text-align: center;
}
.home-access__hour {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin: 0.2em 0 0;
  color: #fff;
  line-height: 1;
  font-family: var(--font-family-garamond-mix);
  letter-spacing: 0.08em;
  text-align: center;
}
.home-access__map {
  max-width: 1600px;
  margin: 24px auto 0;
}
.home-access__map iframe {
  width: 100%;
  height: 400px;
}
@media (min-width: 768px) {
  .home-access {
    padding: 66px 0 0;
  }
  .home-access__logo {
    margin: 48px 0 0;
  }
  .home-access__logo img {
    width: 340px;
  }
  .home-access__phone {
    font-size: clamp(42.6666666667px, 4.2666666667vw, 64px);
  }
  .home-access__map {
    margin: 37px auto 0;
  }
  .home-access__map iframe {
    height: 710px;
  }
}
@media (min-width: 1024px) {
  .home-access {
    padding: 66px 0 75px;
  }
}



.home-top {
    background: url(../images/shared/bg2.jpg) no-repeat center top/cover;
}
.home-top__img {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    display: block;
}
.home-cast {
    background: #000 url(../images/home/cast-bg2.jpg) bottom 30% center no-repeat;
    position: relative;
    overflow: hidden;
}
.home-cast::after {
    content: "";
    width: 100%;
    height: 5px;
    background: -webkit-gradient(linear, left top, right top, from(rgb(227, 203, 139)), color-stop(1.75%, rgb(228, 203, 131)), color-stop(14.88%, rgb(232, 203, 75)), color-stop(26.18%, rgb(235, 204, 34)), color-stop(35.06%, rgb(237, 204, 9)), color-stop(40.45%, rgb(238, 204, 0)), color-stop(42.34%, rgb(238, 205, 8)), color-stop(63.36%, rgb(241, 213, 88)), color-stop(80.63%, rgb(243, 219, 148)), color-stop(93.29%, rgb(245, 223, 184)), to(rgb(245, 224, 198)));
    background: -o-linear-gradient(left, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
    background: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
}
.home-cast__list {
    width: 95%;
    max-width: 1400px;
    margin: 0 auto 5em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}
.home-cast__list::after {
    content: "";
    width: 31%;
}
.home-cast__list > li {
    width: 31%;
    margin: 0 0 3%;
}
@media (min-width: 768px) {
	.home .home-cast__list > li:nth-child(n+7) {
	    display: none;
	}
}
.home-cast__list li .img {
    margin: 0 0 2em;
    background: url(../images/home/cast-bg.jpg) center / cover no-repeat;
    position: relative;
}
.home-cast__list li .img .frame {
    position: relative;
    z-index: 1;
}
.home-cast__list li .img .cast {
    width: 73%;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 0;
}
.home-cast__list li .text .name {
    color: #eecc00;
    font-size: 48px;
    font-family: "trajan-color", serif;
    line-height: 1;
    text-align: center;
}
.home-cast__list li .text .birth {
    margin: 0 0 0.5em;
    color: #fff;
    font-size: 24px;
    font-family: var(--font-family-latin);
    text-align: center;
}
.home-cast__list li .link {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    transition: opacity ease .3s;
}
.home-cast__list li .link li:not(:last-child) {
    margin-right: 10%;
}
.home-cast__list li .link a {
    transition: opacity ease .3s;
}
.home-cast__list li .link a:hover {
    opacity: .6;
}
@media (max-width: 1023.98px) {
    .home-cast__list > li {
        margin: 0 0 5%;
    }
    .home-cast__list li .text .name {
        font-size: 40px;
    }
    .home-cast__list li .text .birth {
        font-size: 20px;
    }
}
@media (max-width: 767px) {
	.home-cast {
	    background: #000 url(../images/home/cast-bg2.jpg) top center / cover no-repeat;
	}
    .home-cast__list > li {
        width: 48.5%;
        margin: 0 0 5%;
    }
	.home .home-cast__list > li:nth-child(n+7) {
	    display: none;
	}
    .home-cast__list li .text .name {
        font-size: 24px;
    }
    .home-cast__list li .text .birth {
        font-size: 14px;
    }
    .home-cast__list li .link li {
        width: 15%;
    }
}

.btn01 {
    width: fit-content;
    margin: 5em auto 6.5em;
    position: relative;
    transition: opacity ease .3s;
}
.btn01::after {
    content: "";
    width: 539px;
    height: 415px;
    background: url(../images/home/btn-kira.png) center / cover no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    z-index: 0;
}
.btn01 a {
    width: 480px;
    height: 120px;
    margin: 0 auto;
    color: #fff;
    background: url(../images/home/btn-bg.png) center / cover no-repeat;
    font-size: 30px;
    font-family: var(--font-family-latin);
    letter-spacing: 0.1em;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    z-index: 1;
}
.btn01:has(a:hover) {
    opacity: .6;
}
@media (max-width: 1023.98px) {
    .btn01 a {
        width: 300px;
        height: 75px;
        font-size: 18px;
    }
    .btn01::after {
        width: 310px;
        height: 239px;
    }
}


.home-shop img {
    position: relative;
    z-index: 1;
}
.home-shop {
    position: relative;
}
.home-shop::after {
    content: "";
    width: 100%;
    height: 5px;
    background: -webkit-gradient(linear, left top, right top, from(rgb(227, 203, 139)), color-stop(1.75%, rgb(228, 203, 131)), color-stop(14.88%, rgb(232, 203, 75)), color-stop(26.18%, rgb(235, 204, 34)), color-stop(35.06%, rgb(237, 204, 9)), color-stop(40.45%, rgb(238, 204, 0)), color-stop(42.34%, rgb(238, 205, 8)), color-stop(63.36%, rgb(241, 213, 88)), color-stop(80.63%, rgb(243, 219, 148)), color-stop(93.29%, rgb(245, 223, 184)), to(rgb(245, 224, 198)));
    background: -o-linear-gradient(left, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
    background: linear-gradient(90deg, rgb(227, 203, 139) 0%, rgb(228, 203, 131) 1.75%, rgb(232, 203, 75) 14.88%, rgb(235, 204, 34) 26.18%, rgb(237, 204, 9) 35.06%, rgb(238, 204, 0) 40.45%, rgb(238, 205, 8) 42.34%, rgb(241, 213, 88) 63.36%, rgb(243, 219, 148) 80.63%, rgb(245, 223, 184) 93.29%, rgb(245, 224, 198) 100%);
    position: absolute;
    bottom: 0;
    left: 0;
}
@media (max-width: 960px)
	.home-shop {
	    background: #000 url(../images/home/cast-bg2.jpg) center / 100% auto no-repeat;
	}
}

