@charset "UTF-8";
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 {
  margin: 0;
  padding: unset;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

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

:root {
  --base-font-size: 1rem;
  --base-font-family: "Zen Old Mincho",
    "Times New Roman",
    "YuMincho",
    "Hiragino Mincho ProN",
    "Yu Mincho",
    "MS PMincho",
    serif;
  --font-libre: "Libre Baskerville",
    sans-serif;
  --color-text: #333333;
  --color-blue: #6DACC0;
  --color-blue-gray: #8D9BA0;
  --bg01: #F0F0ED;
  --bg02: #CBD8DC;
  --cta-bg01: #CEDADE;
  --cta-bg02: #C2D2D7;
  --fs12: .75rem;
  --fs14: .875rem;
  --fs15: .9375rem;
  --fs18: 1.125rem;
  --fs20: 1.25rem;
  --fs22: 1.375rem;
  --fs24: 1.5rem;
  --fs32: 2rem;
  --fs36: 2.25rem;
  --fs40: 2.5rem;
  --fs44: 2.75rem;
  --fs48: 3rem;
  --viewport: 1120;
  --max-viewport: 1320;
}

/* common styles */
@media print, screen and (max-width: 750px) {
  :root {
    --viewport: 375;
    --max-viewport: 750;
    --size40: calc(40 / var(--viewport) * 100vw);
    --size60: calc(60 / var(--viewport) * 100vw);
    --size80: calc(80 / var(--viewport) * 100vw);
    --size100: calc(100 / var(--viewport) * 100vw);
  }
}
@media print, screen and (min-width: 751px) {
  :root {
    --viewport-ratio: calc(var(--wrap-viewport) / var(--max-viewport));
    --size40: min(40px, calc(40 / var(--viewport) * 100vw));
    --size60: min(60px, calc(60 / var(--viewport) * 100vw));
    --size80: min(80px, calc(80 / var(--viewport) * 100vw));
    --size100: min(100px, calc(100 / var(--viewport) * 100vw));
  }
}

@media print, screen and (max-width: 750px) {
  .wide,
  .pc,
  .tbl {
    display: none !important;
  }
}
@media print, screen and (min-width: 751px) {
  .sp {
    display: none !important;
  }
}
@media print, screen and (min-width: 1121px) {
  .sp {
    display: none !important;
  }
}
@media print, screen and (min-width: 1301px) {
  .sp {
    display: none !important;
  }
}
body {
  font-family: var(--base-font-family);
  font-size: var(--fs14);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.2em;
  color: var(--color-text);
  background-color: var(--bg01);
}
@media print, screen and (min-width: 751px) {
  body {
    font-size: var(--base-font-size);
    line-height: 2.4;
  }
}

img {
  margin: 0;
  padding: 0;
  border-style: none;
  vertical-align: bottom;
  border: 0;
  max-width: 100%;
  height: auto;
}

h2,
h3,
p {
  line-height: 1.7;
  letter-spacing: 0.08em;
}

a {
  text-decoration: none;
  color: var(--color-text);
}
a:hover {
  opacity: 0.7;
  transition: all 0.3s;
}

.mb0 {
  margin-bottom: 0 !important;
}

/** button **/
.btn a {
  display: inline-block;
  margin-bottom: 16px;
  color: var(--color-text);
  font-size: var(--fs14);
  line-height: 1;
  letter-spacing: 0.2em;
}

.outer__link a {
  text-decoration: underline;
}
.outer__link a span {
  position: relative;
  padding-right: 28px;
  display: inline-block;
}
.outer__link a span::after {
  content: "";
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAxOCAxOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTYuNjE3IDEwLjk2MDFDMTYuMDkyMyAxMC40MzU0IDE1LjgyNzIgOS4xMzM2MiAxNS42OTQyIDcuOTUxMzRDMTUuNTIwMyA2LjQyODIzIDE1LjU4NiA0Ljg4MTc5IDE1Ljk0NTMgMy4zOTI2MkMxNi4yMTQ3IDIuMjc2MSAxNi42NDgxIDEuMDI5NDcgMTcuMzI0MSAwLjM1MzQ3NU0xNy4zMjQxIDAuMzUzNDc1QzE2LjY0ODEgMS4wMjk0NyAxNS40MDA4IDEuNDYzNjMgMTQuMjg1IDEuNzMyMzNDMTIuNzk1MSAyLjA5MDg0IDExLjI0ODcgMi4xNTY2IDkuNzI2OTYgMS45ODQwNkM4LjU0Mzk3IDEuODUwNDIgNy4yNDA3NyAxLjU4Mzg0IDYuNzE3NTIgMS4wNjA1OE0xNy4zMjQxIDAuMzUzNDc1TDAuMzUzNTU1IDE3LjMyNCIgc3Ryb2tlPSJibGFjayIvPjwvc3ZnPg==");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
}
.outer__link a:hover {
  text-decoration: none;
}

.inner__link a {
  text-decoration: underline;
}
.inner__link a span {
  position: relative;
  padding-right: 28px;
}
.inner__link a span::after {
  content: "";
  position: absolute;
  top: calc(50% - 8px);
  right: 0;
  width: 16px;
  height: 16px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTYgMEMxNiAwLjc0MiAxNi43MzMgMS44NSAxNy40NzUgMi43OEMxOC40MjkgMy45OCAxOS41NjkgNS4wMjcgMjAuODc2IDUuODI2QzIxLjg1NiA2LjQyNSAyMy4wNDQgNyAyNCA3TTI0IDdDMjMuMDQ0IDcgMjEuODU1IDcuNTc1IDIwLjg3NiA4LjE3NEMxOS41NjkgOC45NzQgMTguNDI5IDEwLjAyMSAxNy40NzUgMTEuMjE5QzE2LjczMyAxMi4xNSAxNiAxMy4yNiAxNiAxNE0yNCA3SDAiIHN0cm9rZT0iYmxhY2siLz48L3N2Zz4=");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
}
.inner__link a:hover {
  text-decoration: none;
}

.insta__link a span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNS44NjE0NCAwLjA3MzQ1OUM0LjgwMTgxIDAuMTIzNDQyIDQuMDcyMDcgMC4yOTMzODIgMy40MzIyOSAwLjU0MzI5NUMyLjc3MjUyIDAuODAzMjA1IDIuMjIyNzEgMS4xNDMwOSAxLjY2MjkxIDEuNzAyODlDMS4xMDMxIDIuMjYyNyAwLjc2MzIxOSAyLjgyMjUgMC41MTMzMDYgMy40NzIyN0MwLjI2MzM5MyA0LjExMjA1IDAuMTAzNDQ5IDQuODMxOCAwLjA1MzQ2NiA1LjkwMTQzQzAuMDAzNDgzNDQgNi45NzEwNiAtMC4wMDY1MTMwMyA3LjMxMDk0IDAuMDAzNDgzNDggMTAuMDJDMC4wMDM0ODM0OCAxMi43MzkgMC4wMjM0NzY0IDEzLjA3ODkgMC4wNzM0NTkgMTQuMTM4NkMwLjEyMzQ0MiAxNS4xOTgyIDAuMjkzMzgyIDE1LjkyNzkgMC41NDMyOTUgMTYuNTY3N0MwLjgwMzIwNSAxNy4yMjc1IDEuMTQzMDkgMTcuNzc3MyAxLjcwMjg5IDE4LjMzNzFDMi4yNjI3IDE4Ljg4NjkgMi44MjI1IDE5LjIzNjggMy40NzIyNyAxOS40ODY3QzQuMTEyMDUgMTkuNzM2NiA0LjgzMTggMTkuODk2NiA1LjkwMTQzIDE5Ljk0NjVDNi45NzEwNiAxOS45OTY1IDcuMzEwOTQgMjAuMDA2NSAxMC4wMiAxOS45OTY1QzEyLjczOSAxOS45OTY1IDEzLjA3ODkgMTkuOTc2NSAxNC4xMzg2IDE5LjkyNjVDMTUuMTk4MiAxOS44NzY2IDE1LjkyNzkgMTkuNzA2NiAxNi41Njc3IDE5LjQ1NjdDMTcuMjI3NSAxOS4xOTY4IDE3Ljc3NzMgMTguODU2OSAxOC4zMzcxIDE4LjI5NzFDMTguODg2OSAxNy43MzczIDE5LjIzNjggMTcuMTc3NSAxOS40ODY3IDE2LjUyNzdDMTkuNzM2NiAxNS44ODc5IDE5Ljg5NjYgMTUuMTY4MiAxOS45NDY1IDE0LjA5ODZDMTkuOTk2NSAxMy4wMjg5IDIwLjAwNjUgMTIuNjg5MSAxOS45OTY1IDkuOTgwMDFDMTkuOTk2NSA3LjI2MDk1IDE5Ljk3NjUgNi45MjEwNyAxOS45MjY1IDUuODYxNDRDMTkuODc2NiA0LjgwMTgxIDE5LjcwNjYgNC4wNzIwNyAxOS40NTY3IDMuNDMyMjlDMTkuMTk2OCAyLjc3MjUyIDE4Ljg1NjkgMi4yMjI3MSAxOC4yOTcxIDEuNjYyOTFDMTcuNzM3MyAxLjExMzEgMTcuMTc3NSAwLjc2MzIxOSAxNi41Mjc3IDAuNTEzMzA2QzE1Ljg4NzkgMC4yNjMzOTMgMTUuMTY4MiAwLjEwMzQ0OSAxNC4wOTg2IDAuMDUzNDY2QzEzLjAyODkgMC4wMDM0ODM0NCAxMi42ODkxIC0wLjAwNjUxMzAzIDkuOTgwMDEgMC4wMDM0ODM0OEM3LjI2MDk1IDAuMDAzNDgzNDggNi45MjEwNyAwLjAyMzQ3NjQgNS44NjE0NCAwLjA3MzQ1OVpNNS45ODE0IDE4LjE0NzJDNS4wMTE3NCAxOC4xMDcyIDQuNDgxOTIgMTcuOTQ3MiA0LjEyMjA1IDE3LjgwNzNDMy42NTIyMSAxNy42MjczIDMuMzIyMzMgMTcuNDA3NCAyLjk3MjQ1IDE3LjA1NzVDMi42MjI1NyAxNi43MDc3IDIuNDAyNjUgMTYuMzc3OCAyLjIyMjcxIDE1LjkwNzlDMi4wODI3NiAxNS41NTgxIDEuOTIyODEgMTUuMDI4MiAxLjg3MjgzIDE0LjA0ODZDMS44MjI4NSAxMi45OTkgMS44MTI4NSAxMi42NzkxIDEuODAyODYgMTAuMDFDMS44MDI4NiA3LjM0MDkzIDEuODAyODYgNy4wMjEwNCAxLjg1Mjg0IDUuOTcxNEMxLjg5MjgzIDUuMDAxNzQgMi4wNTI3NyA0LjQ3MTkzIDIuMTkyNzIgNC4xMTIwNUMyLjM3MjY2IDMuNjQyMjIgMi41OTI1OCAzLjMxMjMzIDIuOTQyNDYgMi45NjI0NUMzLjI5MjM0IDIuNjEyNTcgMy42MjIyMiAyLjM5MjY1IDQuMDkyMDYgMi4yMTI3MUM0LjQ0MTk0IDIuMDcyNzYgNC45NzE3NSAxLjkxMjgyIDUuOTUxNDEgMS44NjI4NEM3LjAwMTA0IDEuODEyODUgNy4zMjA5MyAxLjgwMjg2IDkuOTkgMS43OTI4NkMxMi42NTkxIDEuNzkyODYgMTIuOTc5IDEuNzkyODYgMTQuMDI4NiAxLjg0Mjg0QzE0Ljk5ODMgMS44ODI4MyAxNS41MjgxIDIuMDQyNzcgMTUuODg3OSAyLjE4MjcyQzE2LjM1NzggMi4zNjI2NiAxNi42ODc3IDIuNTgyNTggMTcuMDM3NSAyLjkzMjQ2QzE3LjM4NzQgMy4yODIzNCAxNy42MDczIDMuNjEyMjMgMTcuNzg3MyA0LjA4MjA2QzE3LjkyNzIgNC40MzE5NCAxOC4wODcyIDQuOTYxNzYgMTguMTM3MiA1Ljk0MTQxQzE4LjE4NzEgNi45OTEwNSAxOC4xOTcxIDcuMzEwOTQgMTguMjA3MSA5Ljk4MDAxQzE4LjIwNzEgMTIuNjQ5MSAxOC4yMDcxIDEyLjk2OSAxOC4xNTcyIDE0LjAxODZDMTguMTE3MiAxNC45ODgzIDE3Ljk1NzIgMTUuNTE4MSAxNy44MTczIDE1Ljg3OEMxNy42MzczIDE2LjM0NzggMTcuNDE3NCAxNi42Nzc3IDE3LjA2NzUgMTcuMDI3NkMxNi43MTc3IDE3LjM3NzQgMTYuMzg3OCAxNy41OTc0IDE1LjkxNzkgMTcuNzc3M0MxNS41NjgxIDE3LjkxNzIgMTUuMDM4MiAxOC4wNzcyIDE0LjA1ODYgMTguMTI3MkMxMy4wMDkgMTguMTc3MiAxMi42ODkxIDE4LjE4NzEgMTAuMDIgMTguMTk3MUM3LjM1MDkyIDE4LjE5NzEgNy4wMzEwMyAxOC4xOTcxIDUuOTgxNCAxOC4xNDcyWk0xNC4xMjg2IDQuNjUxODZDMTQuMTI4NiA1LjMxMTYzIDE0LjY2ODQgNS44NTE0NSAxNS4zMjgxIDUuODUxNDVDMTUuOTg3OSA1Ljg1MTQ1IDE2LjUyNzcgNS4zMTE2MyAxNi41Mjc3IDQuNjUxODZDMTYuNTI3NyAzLjk5MjA5IDE1Ljk4NzkgMy40NTIyOCAxNS4zMjgxIDMuNDUyMjhDMTQuNjY4NCAzLjQ1MjI4IDE0LjEyODYgMy45OTIwOSAxNC4xMjg2IDQuNjUxODZaTTQuODcxNzkgMTAuMDFDNC44NzE3OSAxMi44NDkgNy4xODA5OCAxNS4xMzgyIDEwLjAxIDE1LjEyODJDMTIuODQ5IDE1LjEyODIgMTUuMTM4MiAxMi44MTkgMTUuMTM4MiA5Ljk5QzE1LjEzODIgNy4xNTA5OSAxMi44MjkgNC44NjE3OSA5Ljk5IDQuODcxNzlDNy4xNTA5OSA0Ljg3MTc5IDQuODYxNzkgNy4xODA5OCA0Ljg3MTc5IDEwLjAxWk02LjY3MTE2IDEwLjAxQzYuNjcxMTYgOC4xNzA2NCA4LjE2MDY0IDYuNjcxMTYgMTAgNi42NzExNkMxMS44Mzk0IDYuNjcxMTYgMTMuMzM4OCA4LjE2MDY0IDEzLjMzODggMTBDMTMuMzM4OCAxMS44Mzk0IDExLjg0OTQgMTMuMzM4OCAxMC4wMSAxMy4zMzg4QzguMTcwNjQgMTMuMzM4OCA2LjY3MTE2IDExLjg0OTQgNi42NzExNiAxMC4wMVoiIGZpbGw9IiMzMzMzMzMiLz48L3N2Zz4=");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  padding-left: 24px;
}

.map__link a {
  text-decoration: underline;
}
.map__link a span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAxNiAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNy45MSAwLjVDNS45NDQ3NSAwLjUgNC4wNTk5OCAxLjI4MDY5IDIuNjcwMzQgMi42NzAzNEMxLjI4MDY5IDQuMDU5OTggMC41IDUuOTQ0NzUgMC41IDcuOTFWOC40NUMwLjggMTIuNTEgNC4xNyAxNS43NzUgNy45MSAyMEMxMS44MTUgMTUuNTkgMTUuMzIgMTIuMjUgMTUuMzIgNy45MUMxNS4zMiA1Ljk0NDc1IDE0LjUzOTMgNC4wNTk5OCAxMy4xNDk3IDIuNjcwMzRDMTEuNzYgMS4yODA2OSA5Ljg3NTI1IDAuNSA3LjkxIDAuNVpNNy45MSA0LjM1QzguNjE1MyA0LjM1IDkuMzA0NzYgNC41NTkyMSA5Ljg5MTEzIDQuOTUxMTZDMTAuNDc3NSA1LjM0MzExIDEwLjkzNDQgNS45MDAxOCAxMS4yMDQxIDYuNTUxODlDMTEuNDczOCA3LjIwMzYgMTEuNTQ0MSA3LjkyMDY2IDExLjQwNjEgOC42MTIzNEMxMS4yNjgyIDkuMzA0MDIgMTAuOTI4MSA5LjkzOTIzIDEwLjQyOTEgMTAuNDM3NkM5LjkyOTk5IDEwLjkzNiA5LjI5NDMgMTEuMjc1MSA4LjYwMjQzIDExLjQxMjFDNy45MTA1NiAxMS41NDkxIDcuMTkzNiAxMS40Nzc4IDYuNTQyMjYgMTEuMjA3MkM1Ljg5MDkzIDEwLjkzNjYgNS4zMzQ1IDEwLjQ3ODkgNC45NDMzOCA5Ljg5MTk3QzQuNTUyMjUgOS4zMDUwNSA0LjM0NDAxIDguNjE1MyA0LjM0NSA3LjkxQzQuMzQ2MzMgNi45NjUzNyA0LjcyMjUxIDYuMDU5ODggNS4zOTA5MyA1LjM5MjRDNi4wNTkzNSA0LjcyNDkxIDYuOTY1MzcgNC4zNSA3LjkxIDQuMzVaIiBzdHJva2U9ImJsYWNrIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=");
  background-position: left center;
  background-repeat: no-repeat;
  background-size: contain;
  padding-left: 24px;
}
.map__link a:hover {
  text-decoration: none;
}

.btn__link a {
  padding: 12px 30px;
  border: 1px solid var(--color-text);
}
@media print, screen and (min-width: 751px) {
  .btn__link a {
    padding: 16px 40px;
  }
}
.btn__link.bg__white a {
  background: white;
  border: none;
}
.btn__link.outer__link a {
  text-decoration: none;
}

.menu__btn a {
  padding: 8px 24px;
  border: 1px solid var(--color-text);
}

/* header */
.header {
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}

.hamburger__nav {
  display: none;
}
.hamburger__nav .menu__nav {
  padding: 54px 40px 40px;
  background: var(--bg02);
  width: calc(100% - 80px);
  position: fixed;
  top: 0;
  right: 0;
  letter-spacing: 0.08em;
  z-index: 999;
}
@media print, screen and (min-width: 751px) {
  .hamburger__nav .menu__nav {
    width: 375px;
  }
}
.hamburger__nav .menu__nav a {
  color: var(--color-text);
}
.hamburger__nav .menu__nav a.special {
  display: inline-block;
  width: 100%;
}
.hamburger__nav .menu__nav .menu__nav__list li {
  line-height: 1.4;
  margin-bottom: 24px;
}
.hamburger__nav .menu__nav .menu__nav__list li.btn {
  margin-bottom: 0;
}
.hamburger__nav .menu__nav .menu__nav__list li.btn a {
  font-size: var(--fs12);
}
.hamburger__nav .menu__nav .menu__nav__list li.insta__link a {
  font-size: var(--fs14);
}
.hamburger__nav .menu__nav .menu__nav__list li.insta__link a span {
  background-size: 16px 16px;
}
.hamburger__nav .menu__nav .menu__nav__list li.outer__link a span {
  background-size: 12px 12px;
}
.hamburger__nav .menu__nav .menu__nav__list li.arrange a {
  text-align: center;
  width: 16em;
}
.hamburger__nav .menu__nav .menu__nav__list .menu__nav__list__title {
  font-size: var(--fs12);
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}
.hamburger__nav .menu__nav .inner {
  display: block;
  margin: 0 auto;
  width: calc(670 / var(--max-viewport) * 100vw);
}

.hamburger__nav__bg {
  display: none;
}

.hamburger {
  position: fixed;
  top: 20px;
  right: 16px;
  z-index: 1000;
  transform: translateZ(999px);
}
@media print, screen and (min-width: 751px) {
  .hamburger {
    top: 40px;
    right: 40px;
  }
}
.hamburger .hamburger__btn {
  display: block;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: top right;
  background-color: white;
  border-radius: 32px;
  width: 64px;
  height: 64px;
  cursor: pointer;
  transition: 0.3s;
  position: relative;
}
.hamburger .hamburger__btn div::before, .hamburger .hamburger__btn div::after {
  content: " ";
  display: block;
  background: var(--color-text);
  width: 26px;
  left: 19px;
  height: 1px;
  position: absolute;
  transition: 0.5s;
}
.hamburger .hamburger__btn div::before {
  top: 45%;
}
.hamburger .hamburger__btn div::after {
  top: 55%;
}

.nav__open {
  overflow: hidden;
}
.nav__open .hamburger__nav {
  display: block;
}
.nav__open .hamburger__btn div::before, .nav__open .hamburger__btn div::after {
  top: 50% !important;
}
.nav__open .hamburger__btn div::before {
  transform: rotate(30deg);
}
.nav__open .hamburger__btn div::after {
  transform: rotate(-30deg);
}
.nav__open .hamburger__nav {
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  letter-spacing: 0.08em;
}
@media print, screen and (min-width: 751px) {
  .nav__open .hamburger__nav {
    width: 375px;
  }
}
.nav__open .hamburger__nav__bg {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 998;
}

.page_up {
  position: fixed;
  bottom: 75px;
  right: 10px;
  z-index: 10;
}
@media print, screen and (min-width: 751px) {
  .page_up {
    right: 60px;
  }
}
.page_up a {
  display: flex;
  align-items: center;
  justify-content: center;
}
.page_up a img {
  width: 60px;
}

.footer {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzc1IiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDM3NSAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTM3NC45OTggMTYuNzIyOUMzNzQuOTk4IDE2LjcyMjkgMzI4LjY0NCAyLjczMDI5IDI3My40MzYgMi43MzAzQzIwOS41NzcgMi43MzAzMSAxNjkuMjY0IDEzLjcwNzMgMTA1LjQwNSAxMy43MDczQzQ0LjIwNyAxMy43MDczIC0zLjA1MTc2ZS0wNSAwIC0zLjA1MTc2ZS0wNSAwTDAuMDAxMjgxNzQgMTAwSDM3NUwzNzQuOTk4IDE2LjcyMjlaIiBmaWxsPSIjRjBGMEVEIi8+PC9zdmc+");
  background-position: left top;
  background-size: 100%;
  background-repeat: no-repeat;
  min-height: 100px;
  width: 100%;
  margin-top: -49px;
  padding-top: 150px;
  padding-bottom: 62px;
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .footer {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSIxNjAiIHZpZXdCb3g9IjAgMCAxNDQwIDE2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQzOS45OSA2MC44MTA1QzE0MzkuOTkgNjAuODEwNSAxMjYxLjk5IDkuOTI4MzEgMTA0OS45OSA5LjkyODM1QzgwNC43NzQgOS45Mjg0IDY0OS45NzQgNDkuODQ0NyA0MDQuNzU0IDQ5Ljg0NDdDMTY5Ljc1NSA0OS44NDQ3IDAgMCAwIDBMMC4wMDUwMDQ4OCAxNjBIMTQ0MEwxNDM5Ljk5IDYwLjgxMDVaIiBmaWxsPSIjRjBGMEVEIi8+PC9zdmc+");
    min-height: 160px;
    margin-top: -89px;
    padding-top: 160px;
  }
}
.footer .footer__inner {
  display: block;
  margin: 0 auto;
  padding: 0 30px;
  width: calc(100% - 60px);
  background-color: var(--bg01);
}
@media print, screen and (min-width: 751px) {
  .footer .footer__inner {
    padding: 0 60px;
    width: calc(100% - 120px);
  }
}
@media print, screen and (min-width: 1301px) {
  .footer .footer__contents .footer__grid {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 215px;
    padding-bottom: 120px;
  }
}
.footer .footer__contents .footer__grid .footer__grid__child {
  display: grid;
  grid-template-rows: repeat(3, auto);
  gap: 60px;
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .footer__grid__child {
    gap: 40px;
  }
}
.footer .footer__contents .footer__grid .footer__grid__child:first-child {
  grid-template-rows: 1fr 1fr;
  gap: 48px;
  text-align: center;
  margin-bottom: 60px;
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .footer__grid__child:first-child {
    grid-template-rows: 35% 1fr;
    gap: 42px;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .footer__grid__child .sns__icon__list {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
}
.footer .footer__contents .footer__grid .footer__grid__child .sns__icon__list li:first-child {
  margin-bottom: 24px;
}
.footer .footer__contents .footer__grid .footer__grid__child .sns__icon__list li.menu__btn a {
  padding: 12px 24px;
  line-height: 1.4;
}
.footer .footer__contents .footer__grid .footer__grid__child .menu__nav {
  text-align: center;
}
.footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list {
  display: grid;
  gap: 24px;
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list {
    display: flex;
  }
}
.footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li {
  line-height: 1.4;
  letter-spacing: 0.1em;
  font-size: var(--base-font-size);
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li {
    font-size: var(--fs14);
  }
  .footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li a {
    padding-right: 24px;
    margin-right: -12px;
    position: relative;
  }
  .footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li a::after {
    position: absolute;
    content: "｜";
    right: 0;
  }
  .footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li:last-child a::after {
    content: none;
  }
}
.footer .footer__contents .footer__grid .footer__grid__child .menu__nav .menu__nav__list li a {
  color: var(--color-blue-gray);
}
.footer .footer__contents .footer__grid .nav__list .info {
  margin-bottom: 24px;
  letter-spacing: 0.1em;
  line-height: 1.6;
  font-size: var(--fs14);
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .nav__list .info {
    display: grid;
    grid-template-columns: 8em 1fr;
    margin-bottom: 12px;
  }
  .footer .footer__contents .footer__grid .nav__list .info:last-child {
    margin-bottom: 0;
  }
}
.footer .footer__contents .footer__grid .nav__list .info dt {
  margin-bottom: 8px;
}
.footer .footer__contents .footer__grid .nav__list .info .map__link {
  margin-top: 6px;
}
.footer .footer__contents .footer__grid .menu__nav__list__bottom {
  padding-bottom: 120px;
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .menu__nav__list__bottom {
    padding-bottom: 0;
  }
}
.footer .footer__contents .footer__grid .menu__nav__list__bottom .title {
  text-align: center;
  font-family: var(--base-font-family);
  font-size: var(--fs12);
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 0.1em;
  margin-bottom: 12px;
}
@media print, screen and (min-width: 751px) {
  .footer .footer__contents .footer__grid .menu__nav__list__bottom .title {
    text-align: left;
    font-size: var(--fs18);
  }
}
.footer .footer__contents .footer__grid .menu__nav__list__bottom ul {
  padding: 0 10vw;
}
@media print, screen and (min-width: 1450px) {
  .footer .footer__contents .footer__grid .menu__nav__list__bottom ul {
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, 19em);
    gap: 24px;
  }
}
.footer .footer__contents .footer__grid .menu__nav__list__bottom ul li.btn {
  text-align: center;
}
.footer .footer__contents .footer__grid .menu__nav__list__bottom ul li.btn a {
  font-size: var(--fs12);
  width: 16em;
}
@media print, screen and (min-width: 1450px) {
  .footer .footer__contents .footer__grid .menu__nav__list__bottom ul li.btn a {
    width: calc(100% - 80px);
    font-size: var(--fs14);
    text-align: center;
  }
}
.footer .copy {
  text-align: center;
}
.footer .cta {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  box-shadow: 0 -2px 20px rgba(0, 0, 0, 0.16);
  z-index: 997;
}
.footer .cta ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.footer .cta ul li {
  text-align: center;
}
.footer .cta ul li a {
  display: block;
  background-color: var(--cta-bg01);
  padding: 17px 0;
}
.footer .cta ul li:nth-child(2) a {
  background-color: var(--cta-bg02);
}

/* common contents */
.wrapper {
  overflow: hidden;
}

.inner {
  display: block;
  margin: 0 auto;
  width: calc(670 / var(--max-viewport) * 100vw);
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .inner {
    padding: 0 20px;
    width: calc(100% - 40px);
  }
}
@media print, screen and (min-width: 1121px) {
  .inner {
    padding: 0 20px;
    width: calc(100% - 40px);
  }
}
@media print, screen and (min-width: 1301px) {
  .inner {
    width: 1120px;
  }
}

.title {
  font-family: var(--font-libre);
  font-size: var(--fs24);
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1;
  position: relative;
}
.title span {
  position: relative;
  z-index: 1;
}
.title span::before {
  content: "";
  position: absolute;
  top: calc(50% - 130px);
  left: -36px;
  width: 50vw;
  max-width: 377px;
  height: 259px;
  z-index: -1;
  background-image: url(../img/common/bg-ulu.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media print, screen and (min-width: 751px) {
  .title span::before {
    top: calc(50% - 185px);
  }
}
@media print, screen and (min-width: 751px) {
  .title {
    font-size: var(--fs40);
    letter-spacing: 0.02em;
  }
}
.title.reverse {
  font-size: var(--fs36);
  color: white;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}
.title.reverse::before {
  content: none;
}

.headings01 {
  font-size: var(--fs20);
  letter-spacing: 0.2em;
  line-height: 1.8;
}
@media print, screen and (min-width: 1121px) {
  .headings01 {
    font-size: var(--fs32);
  }
}

.section {
  padding: 120px 16px;
}
@media print, screen and (min-width: 751px) {
  .section {
    padding: 120px 0;
  }
}
.section p {
  font-size: var(--fs14);
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 1em;
}
@media print, screen and (min-width: 1121px) {
  .section p {
    font-size: var(--base-font-size);
  }
}

/* top */
.mv {
  position: relative;
}
.mv .header__logo {
  position: absolute;
  top: calc(50% - 60px);
  left: calc(50% - 80px);
  z-index: 10;
}
@media print, screen and (min-width: 751px) {
  .mv .header__logo {
    top: calc(50% - 135px);
    left: calc(50% - 98px);
  }
}
.mv .swiper img {
  width: 100%;
}

.top__information {
  position: relative;
  z-index: 10;
  margin-top: -100px;
  padding-bottom: 80px;
}
.top__information::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzc1IiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDM3NSAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTM3NC45OTggMTYuNzIyOUMzNzQuOTk4IDE2LjcyMjkgMzI4LjY0NCAyLjczMDI5IDI3My40MzYgMi43MzAzQzIwOS41NzcgMi43MzAzMSAxNjkuMjY0IDEzLjcwNzMgMTA1LjQwNSAxMy43MDczQzQ0LjIwNyAxMy43MDczIC0zLjA1MTc2ZS0wNSAwIC0zLjA1MTc2ZS0wNSAwTDAuMDAxMjgxNzQgMTAwSDM3NUwzNzQuOTk4IDE2LjcyMjlaIiBmaWxsPSIjRjBGMEVEIi8+PC9zdmc+");
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100px;
  width: 100%;
}
@media print, screen and (min-width: 751px) {
  .top__information::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSIxNjAiIHZpZXdCb3g9IjAgMCAxNDQwIDE2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQzOS45OSA2MC44MTA1QzE0MzkuOTkgNjAuODEwNSAxMjYxLjk5IDkuOTI4MzEgMTA0OS45OSA5LjkyODM1QzgwNC43NzQgOS45Mjg0IDY0OS45NzQgNDkuODQ0NyA0MDQuNzU0IDQ5Ljg0NDdDMTY5Ljc1NSA0OS44NDQ3IDAgMCAwIDBMMC4wMDUwMDQ4OCAxNjBIMTQ0MEwxNDM5Ljk5IDYwLjgxMDVaIiBmaWxsPSIjRjBGMEVEIi8+PC9zdmc+");
    min-height: 160px;
  }
}
@media print, screen and (min-width: 751px) {
  .top__information {
    padding-bottom: 180px;
  }
}
@media print, screen and (min-width: 751px) {
  .top__information .inner {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 83px;
  }
}
@media print, screen and (min-width: 751px) {
  .top__information .title {
    margin-bottom: 24px;
  }
}
.top__information .info__inner a {
  display: block;
}
.top__information .info__inner .info__inner__contents {
  font-size: var(--fs14);
  line-height: 1.7;
  margin-bottom: 12px;
}
.top__information .info__inner .info__inner__contents li {
  position: relative;
}
.top__information .info__inner .info__inner__contents li dl {
  display: flex;
  align-items: center;
  margin-bottom: 9px;
  padding-top: 24px;
  letter-spacing: 0.08em;
  font-size: var(--fs12);
}
@media print, screen and (min-width: 751px) {
  .top__information .info__inner .info__inner__contents li dl {
    margin-bottom: 16px;
  }
}
.top__information .info__inner .info__inner__contents li dl dt {
  margin-right: 12px;
}
@media print, screen and (min-width: 751px) {
  .top__information .info__inner .info__inner__contents li dl dt {
    margin-right: 38px;
  }
}
.top__information .info__inner .info__inner__contents li dl dd {
  background-color: var(--bg05);
  font-weight: bold;
  border: 1px solid var(--color-text);
  padding: 0 12px;
  line-height: 2;
}
.top__information .info__inner .info__inner__contents li::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTYgMEMxNiAwLjc0MiAxNi43MzMgMS44NSAxNy40NzUgMi43OEMxOC40MjkgMy45OCAxOS41NjkgNS4wMjcgMjAuODc2IDUuODI2QzIxLjg1NiA2LjQyNSAyMy4wNDQgNyAyNCA3TTI0IDdDMjMuMDQ0IDcgMjEuODU1IDcuNTc1IDIwLjg3NiA4LjE3NEMxOS41NjkgOC45NzQgMTguNDI5IDEwLjAyMSAxNy40NzUgMTEuMjE5QzE2LjczMyAxMi4xNSAxNiAxMy4yNiAxNiAxNE0yNCA3SDAiIHN0cm9rZT0iYmxhY2siLz48L3N2Zz4=");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
}
@media print, screen and (min-width: 751px) {
  .top__information .info__inner .info__inner__contents li::before {
    content: none;
  }
}
.top__information .info__inner .info__inner__contents .items {
  padding-bottom: 10px;
  border-bottom: 1px solid var(--color-text);
  font-size: var(--fs14);
  line-height: 1.6;
}
@media print, screen and (min-width: 751px) {
  .top__information .info__inner .info__inner__contents .items {
    padding-right: 20px;
    padding-bottom: 20px;
  }
}
.top__information .info__inner .info__inner__contents .items::before {
  content: none;
}
@media print, screen and (min-width: 751px) {
  .top__information .info__inner .info__inner__contents .items::before {
    content: "";
    bottom: 20px;
  }
}
.top__information .info__inner .archive__link {
  text-align: right;
}

.top__concept {
  padding: 0;
}
@media print, screen and (min-width: 1121px) {
  .top__concept {
    padding-bottom: 240px;
  }
}
.top__concept .top__concept_sp {
  margin-bottom: 136px;
}
.top__concept .top__concept_sp li {
  margin-bottom: 40px;
  width: 70%;
}
.top__concept .top__concept_sp li:first-child {
  margin-left: auto;
}
@media print, screen and (min-width: 751px) {
  .top__concept .top__concept_sp {
    display: none;
  }
}
@media print, screen and (min-width: 751px) {
  .top__concept .top__concept__contents {
    display: grid;
    grid-template-columns: 50% 50%;
    gap: 60px;
    width: calc(100% - 60px);
  }
  .top__concept .top__concept__contents .title span::before {
    top: calc(50% - 210px);
    left: -170px;
  }
  .top__concept .top__concept__contents li .top__concept__contents__img {
    text-align: right;
  }
  .top__concept .top__concept__contents li:first-child {
    padding-top: 240px;
  }
  .top__concept .top__concept__contents li:first-child .top__concept__contents__img {
    margin-top: 150px;
  }
  .top__concept .top__concept__contents li:nth-child(2) .top__concept__contents__img {
    margin-bottom: 80px;
    position: relative;
  }
}
@media print, screen and (min-width: 751px) and (min-width: 1401px) {
  .top__concept .top__concept__contents li:nth-child(2) .top__concept__contents__img img {
    position: relative;
    right: -100px;
  }
}
.top__concept .top__concept__contents .title,
.top__concept .top__concept__contents .headings01 {
  margin-bottom: 40px;
}
.top__concept .common__btn {
  text-align: center;
  margin-top: 56px;
}
@media print, screen and (min-width: 751px) {
  .top__concept .common__btn {
    margin-top: 80px;
  }
}

.top__style {
  padding: 165px 16px;
}
@media print, screen and (min-width: 751px) {
  .top__style {
    padding-top: 0;
    padding-bottom: 240px;
  }
}
.top__style .title {
  position: absolute;
  top: -25px;
  left: 0;
  z-index: 10;
}
@media print, screen and (min-width: 751px) {
  .top__style .title {
    left: auto;
    right: 0;
    top: -20px;
  }
}
.top__style .title span::before {
  content: none;
}
.top__style .swiper-wrap {
  position: relative;
  margin: 0 -16px;
}
.top__style .swiper-wrap .style__lists-swiper {
  overflow: hidden;
}
.top__style .swiper-wrap .style__lists-swiper .swiper-wrapper {
  transition-timing-function: linear;
}
.top__style .swiper-wrap .swiper-button-prev,
.top__style .swiper-wrap .swiper-button-next {
  top: -45px;
  height: 40px;
  width: 40px;
  color: black;
  border: 1px solid black;
}
@media print, screen and (min-width: 751px) {
  .top__style .swiper-wrap .swiper-button-prev,
  .top__style .swiper-wrap .swiper-button-next {
    display: none;
  }
}
.top__style .swiper-wrap .swiper-button-prev svg,
.top__style .swiper-wrap .swiper-button-next svg {
  fill: black;
  height: 12px;
  padding: 14px 16px;
}
.top__style .swiper-wrap .swiper-button-prev {
  left: auto;
  right: 86px;
}
.top__style .swiper-wrap .swiper-button-next {
  right: 16px;
}
.top__style .common__btn {
  text-align: center;
  margin-top: 56px;
}
@media print, screen and (min-width: 751px) {
  .top__style .common__btn {
    margin-top: 80px;
  }
}

.top__pickup,
.salon__about,
.style__about {
  background-image: url(../img/common/bg.svg);
  background-size: 40%;
  background-repeat: repeat;
  background-color: var(--bg02);
  padding-top: 205px;
  padding-bottom: 240px;
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .top__pickup,
  .salon__about,
  .style__about {
    background-size: auto;
    padding-top: 320px;
    padding-bottom: 420px;
  }
}
.top__pickup::before,
.salon__about::before,
.style__about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(203, 216, 220, 0.5);
}
.top__pickup .title,
.salon__about .title,
.style__about .title {
  margin-bottom: 143px;
  text-align: center;
}
.top__pickup .pickup__lists,
.top__pickup .pickup__lists__special,
.salon__about .pickup__lists,
.salon__about .pickup__lists__special,
.style__about .pickup__lists,
.style__about .pickup__lists__special {
  margin-bottom: 80px;
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists,
  .top__pickup .pickup__lists__special,
  .salon__about .pickup__lists,
  .salon__about .pickup__lists__special,
  .style__about .pickup__lists,
  .style__about .pickup__lists__special {
    display: grid;
    grid-template-columns: calc(50% - 40px) calc(50% - 40px);
    align-items: center;
    gap: 80px;
    width: 100%;
  }
}
.top__pickup .pickup__lists li:first-child,
.top__pickup .pickup__lists__special li:first-child,
.salon__about .pickup__lists li:first-child,
.salon__about .pickup__lists__special li:first-child,
.style__about .pickup__lists li:first-child,
.style__about .pickup__lists__special li:first-child {
  margin-bottom: 56px;
}
.top__pickup .pickup__lists .headings01,
.top__pickup .pickup__lists__special .headings01,
.salon__about .pickup__lists .headings01,
.salon__about .pickup__lists__special .headings01,
.style__about .pickup__lists .headings01,
.style__about .pickup__lists__special .headings01 {
  margin-bottom: 32px;
}
@media print, screen and (min-width: 751px) {
  .top__pickup .pickup__lists .headings01,
  .top__pickup .pickup__lists__special .headings01,
  .salon__about .pickup__lists .headings01,
  .salon__about .pickup__lists__special .headings01,
  .style__about .pickup__lists .headings01,
  .style__about .pickup__lists__special .headings01 {
    font-size: var(--fs24);
  }
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists,
  .salon__about .pickup__lists,
  .style__about .pickup__lists {
    margin-left: -50px;
  }
}
.top__pickup .pickup__lists li img,
.salon__about .pickup__lists li img,
.style__about .pickup__lists li img {
  max-width: 86%;
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists li img,
  .salon__about .pickup__lists li img,
  .style__about .pickup__lists li img {
    max-width: 100%;
  }
}
.top__pickup .pickup__lists li:first-child,
.salon__about .pickup__lists li:first-child,
.style__about .pickup__lists li:first-child {
  text-align: right;
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists li:first-child,
  .salon__about .pickup__lists li:first-child,
  .style__about .pickup__lists li:first-child {
    text-align: left;
  }
}
.top__pickup .pickup__lists__special li img,
.salon__about .pickup__lists__special li img,
.style__about .pickup__lists__special li img {
  max-width: 86%;
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists__special li img,
  .salon__about .pickup__lists__special li img,
  .style__about .pickup__lists__special li img {
    max-width: 100%;
  }
}
@media print, screen and (min-width: 1301px) {
  .top__pickup .pickup__lists__special li,
  .salon__about .pickup__lists__special li,
  .style__about .pickup__lists__special li {
    margin-right: 0;
    z-index: 1;
  }
  .top__pickup .pickup__lists__special li:first-child,
  .salon__about .pickup__lists__special li:first-child,
  .style__about .pickup__lists__special li:first-child {
    order: 2;
    margin-right: 0;
    z-index: 0;
  }
  .top__pickup .pickup__lists__special .num,
  .top__pickup .pickup__lists__special .headings01,
  .salon__about .pickup__lists__special .num,
  .salon__about .pickup__lists__special .headings01,
  .style__about .pickup__lists__special .num,
  .style__about .pickup__lists__special .headings01 {
    text-align: left;
  }
}
@media print, screen and (min-width: 1401px) {
  .top__pickup .pickup__lists__special,
  .salon__about .pickup__lists__special,
  .style__about .pickup__lists__special {
    margin-left: 50px;
  }
}
.top__pickup .common__btn,
.salon__about .common__btn,
.style__about .common__btn {
  text-align: center;
}

.top__pickup .common__btn {
  margin-top: 56px;
}

.top__stylist {
  background-color: var(--bg01);
  padding: 120px 16px 40px;
  margin-top: -1px;
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .top__stylist {
    padding-top: 0;
  }
}
.top__stylist::before {
  content: "";
  position: absolute;
  left: 0;
  top: -99px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzc1IiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDM3NSAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTAuMDAxOTUzMTIgMTYuNzIyOUMwLjAwMTk1MzEyIDE2LjcyMjkgNDYuMzU2IDIuNzMwMjkgMTAxLjU2NCAyLjczMDNDMTY1LjQyMyAyLjczMDMxIDIwNS43MzYgMTMuNzA3MyAyNjkuNTk1IDEzLjcwNzNDMzMwLjc5MyAxMy43MDczIDM3NSAwIDM3NSAwTDM3NC45OTkgMTAwSDBMMC4wMDE5NTMxMiAxNi43MjI5WiIgZmlsbD0iI0YwRjBFRCIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100px;
  width: 100%;
  z-index: 2;
}
@media print, screen and (min-width: 751px) {
  .top__stylist::before {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSIxNjAiIHZpZXdCb3g9IjAgMCAxNDQwIDE2MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4wMDc0MTEzOSA2MC44MTA1QzAuMDA3NDExMzkgNjAuODEwNSAxNzguMDA3IDkuOTI4MzEgMzkwLjAwNiA5LjkyODM1QzYzNS4yMjYgOS45Mjg0IDc5MC4wMjYgNDkuODQ0NyAxMDM1LjI1IDQ5Ljg0NDdDMTI3MC4yNCA0OS44NDQ3IDE0NDAgMCAxNDQwIDBMMTQzOS45OSAxNjBIMEwwLjAwNzQxMTM5IDYwLjgxMDVaIiBmaWxsPSIjRjBGMEVEIi8+PC9zdmc+");
    min-height: 160px;
    top: -160px;
  }
}
@media print, screen and (min-width: 751px) {
  .top__stylist .stylist__inner {
    display: grid;
    grid-template-columns: 27% 73%;
    align-items: center;
    position: relative;
    top: -210px;
  }
}
.top__stylist .stylist__inner .title {
  margin-bottom: 50px;
}
.top__stylist .stylist__inner .headings01,
.top__stylist .stylist__inner p {
  margin-bottom: 40px;
}
.top__stylist .stylist__inner .common__btn {
  padding-top: 16px;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .top__stylist .stylist__inner {
    padding-top: 0;
  }
  .top__stylist .stylist__inner .top__stylist__img {
    text-align: right;
    margin-bottom: 120px;
  }
  .top__stylist .stylist__inner .top__stylist__img img {
    position: relative;
    z-index: 10;
  }
}

.top__access {
  padding: 120px 0 160px;
}
@media print, screen and (min-width: 751px) {
  .top__access {
    padding-top: 0;
    padding-bottom: 240px;
  }
}
.top__access .title {
  margin-bottom: 56px;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .top__access .title {
    margin-bottom: 30px;
    text-align: left;
  }
}
.top__access .title span::before {
  content: none;
}
.top__access iframe {
  width: 100%;
  height: 216px;
  margin-bottom: 24px;
}
@media print, screen and (min-width: 751px) {
  .top__access iframe {
    height: 400px;
  }
}
.top__access p {
  margin: 0 auto 56px;
  max-width: 640px;
}
.top__access .common__btn {
  text-align: center;
}
@media print, screen and (min-width: 751px) and (min-width: 751px) {
  .top__access .common__btn {
    text-align: left;
  }
}
@media print, screen and (min-width: 1121px) {
  .top__access .top__access__lists {
    display: grid;
    grid-template-columns: calc(50% - 20px) calc(50% - 20px);
    gap: 40px;
  }
  .top__access .top__access__lists li:first-child {
    order: 2;
  }
}

.top__recruit {
  color: white;
  padding: 96px 0 160px;
  background-image: url(../img/common/sp/footer.webp);
  background-size: cover;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 751px) {
  .top__recruit {
    background-image: url(../img/common/footer.webp);
    background-position: top right;
  }
}
@media print, screen and (min-width: 751px) {
  .top__recruit .inner .top__recruit__content {
    max-width: 603px;
  }
}
.top__recruit .inner img {
  width: 40vw;
}
@media print, screen and (min-width: 751px) {
  .top__recruit .inner img {
    width: auto;
  }
}
.top__recruit .inner .btn {
  margin-top: 56px;
}
.top__recruit .inner .btn a {
  padding: 12px 30px;
  line-height: 1.4;
}

/* lower common*/
.lower__common.inner {
  width: 100%;
}
@media print, screen and (min-width: 751px) {
  .lower__common.inner {
    width: calc(100% - 40px);
  }
}
@media print, screen and (min-width: 1121px) {
  .lower__common.inner {
    padding: 0 30px;
    width: calc(100% - 60px);
  }
}
.lower__common .title {
  text-align: center;
  font-size: var(--fs24);
  color: white;
  padding-top: 70%;
}
@media print, screen and (min-width: 751px) {
  .lower__common .title {
    padding-top: 286px;
  }
}
.lower__common .title span::before {
  left: -75px;
}
@media print, screen and (min-width: 751px) {
  .lower__common .title span {
    font-size: var(--fs48);
  }
}

.bc__container {
  margin-top: -40px;
  width: calc(100% - 44px);
  padding: 10px 22px 0;
}
@media print, screen and (min-width: 1121px) {
  .bc__container {
    margin-top: -100px;
    padding-top: 50px;
    overflow: hidden;
  }
}
.bc__container::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzc1IiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDM3NSAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTAuMDAxOTUzMTIgMTYuNzIyOUMwLjAwMTk1MzEyIDE2LjcyMjkgNDYuMzU2IDIuNzMwMjkgMTAxLjU2NCAyLjczMDNDMTY1LjQyMyAyLjczMDMxIDIwNS43MzYgMTMuNzA3MyAyNjkuNTk1IDEzLjcwNzNDMzMwLjc5MyAxMy43MDczIDM3NSAwIDM3NSAwTDM3NC45OTkgMTAwSDBMMC4wMDE5NTMxMiAxNi43MjI5WiIgZmlsbD0iI0YwRjBFRCIvPjwvc3ZnPg==);
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100px;
  width: 100%;
}

.breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  margin: 32px auto 16px;
  color: var(--color-gray1);
  font-size: var(--fs12);
  position: relative;
  z-index: 20;
}
@media print, screen and (min-width: 1121px) {
  .breadcrumbs {
    width: 1100px;
  }
}
.breadcrumbs li {
  position: relative;
  line-height: 2.25;
  font-weight: bold;
}
.breadcrumbs li::after {
  content: url(../img/common/bg-breadcrumb.svg);
  padding: 0 1em;
}
.breadcrumbs li a {
  color: var(--color-blue-gray);
}
.breadcrumbs li:last-child::after {
  content: none;
}
.breadcrumbs li a {
  display: inline-block;
}

.lower__head {
  min-height: 345px;
  padding-bottom: 100px;
  background-size: cover;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 751px) {
  .lower__head {
    min-height: 500px;
  }
}

.lower__top {
  padding-bottom: 80px;
}
.lower__top.single {
  padding-top: 70px;
  padding-bottom: 0;
}
@media print, screen and (min-width: 751px) {
  .lower__top {
    margin-top: -160px;
    padding-bottom: 240px;
    background-image: url(../img/common/bg-pattern02.svg);
    background-repeat: no-repeat;
    background-size: 15vw;
    background-position: 24vw 40vw;
  }
}
@media print, screen and (min-width: 751px) and (min-width: 1121px) {
  .lower__top {
    background-position: 24vw 16vw;
  }
}
.lower__top .inner {
  background-image: url(../img/common/bg-pattern02.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: left 60px;
}
@media print, screen and (min-width: 751px) {
  .lower__top .inner {
    padding-top: 240px;
    background: none;
  }
}
@media print, screen and (min-width: 1301px) {
  .lower__top .inner {
    width: 800px;
  }
}
.lower__top .headings01 {
  margin-bottom: 40px;
  text-align: center;
}
.lower__top p {
  text-align: center;
  margin-bottom: 2em;
}
@media print, screen and (min-width: 751px) {
  .lower__top p {
    line-height: 2.4;
  }
}

/* salon */
.salon {
  background-image: url(../img/salon/sp/img-top.webp);
  background-position-x: center;
}
@media print, screen and (min-width: 751px) {
  .salon {
    background-image: url(../img/salon/img-top.webp);
  }
}

.salon__about {
  padding-bottom: 80px;
}
.salon__about .inner .title span::before {
  left: -85px;
}
@media print, screen and (min-width: 751px) {
  .salon__about .inner .pickup__lists,
  .salon__about .inner .pickup__lists__special {
    display: grid;
    grid-template-columns: calc(50% - 30px) calc(50% - 30px);
    gap: 60px;
  }
  .salon__about .inner .pickup__lists .headings01,
  .salon__about .inner .pickup__lists__special .headings01 {
    font-size: var(--fs24);
    margin-bottom: 56px;
  }
  .salon__about .inner .pickup__lists li img,
  .salon__about .inner .pickup__lists__special li img {
    max-width: 100%;
  }
}
.salon__about .inner .pickup__lists .common__btn,
.salon__about .inner .pickup__lists__special .common__btn {
  margin: 56px auto 87px;
}
@media print, screen and (min-width: 751px) {
  .salon__about .inner .pickup__lists .common__btn,
  .salon__about .inner .pickup__lists__special .common__btn {
    margin-top: 80px;
    text-align: left;
  }
  .salon__about .inner .pickup__lists .common__btn.center,
  .salon__about .inner .pickup__lists__special .common__btn.center {
    text-align: center;
  }
}
@media print, screen and (min-width: 751px) {
  .salon__about .inner .pickup__lists__special li:first-child {
    order: 2;
  }
}

.reservation {
  background-image: url(../img/common/sp/bg-reservation.webp);
  background-color: rgba(0, 0, 0, 0.5);
  background-repeat: no-repeat;
  background-size: cover;
  background-blend-mode: darken;
}
@media print, screen and (min-width: 751px) {
  .reservation {
    background-image: url(../img/common/bg-reservation.webp);
  }
}
.reservation .inner {
  color: white;
}
.reservation .inner .title {
  margin-bottom: 20px;
}
.reservation .inner .title span {
  font-family: var(--base-font-family);
}
.reservation .inner .title span::before {
  content: none;
}
.reservation .inner .title.reverse {
  text-shadow: 0 0 16px rgba(0, 0, 0, 0.8);
}
@media print, screen and (min-width: 751px) {
  .reservation .inner .title.reverse {
    font-size: var(--fs44);
  }
}
.reservation .inner .comment {
  margin-bottom: 56px;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.5);
}
@media print, screen and (min-width: 751px) {
  .reservation .inner .comment {
    font-size: var(--fs20);
    line-height: 1.6;
  }
}
.reservation .inner .reservation__links li a {
  width: 16em;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .reservation .inner {
    text-align: center;
    max-width: 603px;
  }
  .reservation .inner .reservation__links {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
    justify-content: center;
  }
}
.reservation .inner .btn a {
  padding: 12px 30px;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .reservation .inner .btn a {
    padding: 18px 40px;
  }
}

/* menu */
.menu {
  background-image: url(../img/salon/sp/img-top.webp);
  background-position-x: center;
}
@media print, screen and (min-width: 751px) {
  .menu {
    background-image: url(../img/salon/img-top.webp);
  }
}
.menu .title span::before {
  left: -10px;
}

.menu__top {
  padding-top: 160px;
  background-image: url(../img/common/bg-pattern02.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: 5px 100px;
}
@media print, screen and (min-width: 751px) {
  .menu__top {
    padding-top: 336px;
    background-repeat: no-repeat;
    background-size: 15vw;
    background-position: 24vw 40vw;
  }
  .menu__top p {
    font-size: var(--base-font-size);
  }
}
@media print, screen and (min-width: 1121px) {
  .menu__top {
    background-position: 24vw 14vw;
  }
}
.menu__top .inner {
  width: 100%;
  background: none;
  padding: 36px 0;
  border-top: 1px solid var(--color-text);
  border-bottom: 1px solid var(--color-text);
}
@media print, screen and (min-width: 751px) {
  .menu__top .inner {
    width: calc(100% - 60px);
  }
}
.menu__top .inner ul {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media print, screen and (min-width: 751px) {
  .menu__top .inner ul {
    display: grid;
    grid-template-columns: repeat(2, auto);
    justify-content: center;
    gap: 24px;
  }
}
.menu__top .inner ul li a {
  width: 16em;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .menu__top .inner ul li a {
    width: 16em;
  }
}

.menu__about {
  padding-top: 130px;
  padding-bottom: 43px;
  clear: both;
}
@media print, screen and (min-width: 751px) {
  .menu__about {
    padding-top: 0;
    padding-bottom: 160px;
  }
}
.menu__about .title {
  margin-bottom: 135px;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .menu__about .title {
    margin-top: 160px;
    margin-bottom: 80px;
  }
}
@media print, screen and (min-width: 751px) and (min-width: 751px) {
  .menu__about .title {
    margin-top: 120px;
    margin-bottom: 130px;
  }
}
.menu__about .title span::before {
  left: -65px;
}
.menu__about .pickup__lists,
.menu__about .pickup__lists__special {
  margin-bottom: 87px;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists,
  .menu__about .pickup__lists__special {
    display: grid;
    grid-template-columns: calc(50% - 40px) calc(50% - 40px);
    align-items: center;
    gap: 0 80px;
  }
  .menu__about .pickup__lists p,
  .menu__about .pickup__lists__special p {
    line-height: 2.4;
  }
}
.menu__about .pickup__lists li:first-child,
.menu__about .pickup__lists__special li:first-child {
  margin-bottom: 56px;
}
.menu__about .pickup__lists li .btn__link,
.menu__about .pickup__lists__special li .btn__link {
  margin-top: 56px;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists li .btn__link,
  .menu__about .pickup__lists__special li .btn__link {
    margin-top: 80px;
    text-align: left;
  }
}
.menu__about .pickup__lists .headings01,
.menu__about .pickup__lists__special .headings01 {
  font-weight: normal;
  margin-bottom: 32px;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists .headings01,
  .menu__about .pickup__lists__special .headings01 {
    font-size: var(--fs24);
  }
}
.menu__about .pickup__lists li img {
  max-width: 83%;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists li img {
    max-width: 100%;
  }
}
.menu__about .pickup__lists li:first-child {
  text-align: right;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists li:first-child {
    text-align: left;
  }
}
.menu__about .pickup__lists__special img {
  max-width: 83%;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists__special img {
    max-width: 100%;
  }
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists__special li {
    z-index: 1;
  }
  .menu__about .pickup__lists__special li:first-child {
    order: 2;
    margin-right: 0;
    z-index: 0;
  }
  .menu__about .pickup__lists__special .headings01 {
    text-align: left;
  }
}
.menu__about .pickup__lists__special .center {
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .menu__about .pickup__lists__special .center {
    text-align: left;
  }
}

@media print, screen and (min-width: 751px) {
  .menu__price {
    padding-bottom: 240px;
  }
}
.menu__price .menu__price__top {
  display: flex;
  padding-bottom: 40px;
}
.menu__price .menu__price__top li {
  width: 65%;
}
.menu__price .menu__price__top li:first-child {
  width: 35%;
}
.menu__price .menu__price__top li .menu__price__box li {
  width: 100%;
  line-height: 1.6;
}
.menu__price .title {
  margin-bottom: 120px;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .menu__price .title {
    margin-bottom: 0;
    text-align: left;
  }
}
.menu__price .title span::before {
  left: -70px;
}
.menu__price .menu__price__box {
  margin-bottom: 56px;
}
.menu__price .menu__price__lists {
  margin-top: 56px;
}
.menu__price .menu__price__lists dt {
  padding: 13px 12px;
  width: calc(100% - 24px);
}
.menu__price .menu__price__lists dt.title {
  margin-bottom: 0;
  text-align: left;
  font-family: var(--base-font-family);
  font-size: var(--fs20);
  letter-spacing: 0.2em;
  line-height: 1.6;
}
.menu__price .menu__price__lists dt.title::before {
  content: none;
}
.menu__price .menu__price__lists dd {
  padding: 15px 12px;
  border-bottom: 1px solid var(--color-blue-gray);
}
.menu__price .menu__price__lists dd ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.menu__price .menu__price__lists dd ul li {
  font-size: var(--fs14);
  line-height: 1.3;
  margin-right: 2em;
}
.menu__price .menu__price__lists dd ul li:nth-child(2) {
  margin-right: 0;
  font-family: var(--font-lato);
  font-size: var(--fs13);
}
@media print, screen and (min-width: 751px) {
  .menu__price .menu__price__lists dd ul li {
    font-size: var(--base-font-size);
  }
}
.menu__price .menu__price__lists dd p {
  line-height: 1.6;
  letter-spacing: 0.1em;
  font-size: var(--fs14);
  color: var(--color-blue-gray);
}
@media print, screen and (min-width: 751px) {
  .menu__price .menu__price__lists dd p {
    font-size: var(--base-font-size);
  }
}
@media print, screen and (min-width: 751px) {
  .menu__price .menu__price__lists {
    overflow: hidden;
  }
  .menu__price .menu__price__lists dt {
    width: calc(35% - 24px);
    float: left;
  }
  .menu__price .menu__price__lists dd {
    float: right;
    width: calc(65% - 24px);
  }
  .menu__price .menu__price__lists dd ul {
    display: flex;
  }
}

/* style */
.style {
  background-image: url(../img/style/sp/img-top.webp);
  background-position-x: center;
}
@media print, screen and (min-width: 751px) {
  .style {
    background-image: url(../img/style/img-top.webp);
  }
}

.style__about {
  padding-bottom: 0;
}
.style__about .inner .title span::before {
  left: 10px;
}
.style__about .style__lists {
  display: grid;
  grid-template-columns: repeat(2, 50%);
  gap: 40px 16px;
  width: calc(100% - 16px);
}
@media print, screen and (min-width: 751px) {
  .style__about .style__lists {
    grid-template-columns: repeat(4, 25%);
    gap: 56px 24px;
    width: calc(100% - 72px);
  }
}
.style__about .style__lists li a {
  display: block;
  overflow: hidden;
  font-size: var(--fs12);
  line-height: 1.4;
  letter-spacing: 0.1em;
  position: relative;
  padding: 8px;
  border: 1px solid #333;
}
@media print, screen and (min-width: 751px) {
  .style__about .style__lists li a {
    padding: 12px;
    line-height: 1.6;
    font-size: var(--base-font-size);
  }
}
.style__about .style__lists li a span {
  display: block;
  padding: 12px 0;
  text-align: center;
}
.style__about .style__lists li a::before {
  content: "";
  background-image: url(../img/common/icon-plus.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 12px;
  right: 9px;
  width: 24px;
  height: 24px;
}
@media print, screen and (min-width: 751px) {
  .style__about .style__lists li a::before {
    top: 24px;
    right: 24px;
  }
}

#cboxOverlay {
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
}

#cboxContent {
  position: relative;
}
#cboxContent #cboxLoadedContent {
  overflow: hidden;
  margin: 0;
}
#cboxContent #cboxLoadedContent .style__overlay {
  background-color: var(--bg02);
  padding: 12px;
}
@media print, screen and (min-width: 751px) {
  #cboxContent #cboxLoadedContent .style__overlay {
    max-width: 375px;
  }
}
#cboxContent #cboxLoadedContent .style__overlay li:first-child {
  text-align: center;
}
#cboxContent #cboxLoadedContent .style__overlay li:nth-child(2) {
  padding-top: 16px;
}
@media print, screen and (min-width: 751px) {
  #cboxContent #cboxLoadedContent .style__overlay li:nth-child(2) {
    padding: 24px;
  }
}
#cboxContent #cboxLoadedContent .style__overlay li .overlay__title {
  margin-bottom: 16px;
  text-align: center;
  font-size: var(--fs18);
  line-height: 1.6;
  letter-spacing: 0.2em;
}
@media print, screen and (min-width: 751px) {
  #cboxContent #cboxLoadedContent .style__overlay li .overlay__title {
    margin-bottom: 16px;
    font-size: var(--fs20);
    line-height: 1.4;
  }
}
#cboxContent #cboxLoadedContent .style__overlay li dl dt {
  background-color: white;
  display: inline;
  padding: 5px 10px;
  font-family: var(--font-libre);
  font-size: var(--fs12);
  letter-spacing: 0.2em;
  line-height: 1.7;
}
@media print, screen and (min-width: 751px) {
  #cboxContent #cboxLoadedContent .style__overlay li dl dt {
    padding: 4px 12px;
    font-size: var(--base-font-size);
  }
}
#cboxContent #cboxLoadedContent .style__overlay li dl dd {
  padding: 4px 0 12px;
  line-height: 1.6;
  font-size: var(--fs14);
  letter-spacing: 0.2em;
  word-break: break-all;
}
@media print, screen and (min-width: 751px) {
  #cboxContent #cboxLoadedContent .style__overlay li dl dd {
    font-size: var(--base-font-size);
  }
}
#cboxContent #cboxLoadedContent .style__overlay li .stylist__name {
  display: flex;
}
#cboxContent #cboxLoadedContent .style__overlay li .stylist__name dt {
  margin-right: 10px;
}
#cboxContent #cboxLoadedContent .style__overlay li .stylist__name dd {
  padding-bottom: 0;
}

#cboxClose {
  position: absolute;
  top: 15px;
  right: 15px;
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  text-indent: -9999px;
  width: 24px;
  height: 24px;
  background: url(../img/common/icon-plus.svg) no-repeat 0 0;
  background-size: contain;
  transform: rotate(45deg);
}
#cboxClose:hover {
  background-position: 0 0;
}

.style__bottom,
.stylist__bottom {
  margin: 0 -16px;
  padding: 120px 0 160px;
}
@media print, screen and (min-width: 751px) {
  .style__bottom,
  .stylist__bottom {
    margin: 160px 0 0;
    padding: 120px 0 300px;
  }
}
.style__bottom .style__bottom__contents,
.stylist__bottom .style__bottom__contents {
  position: relative;
}
.style__bottom .style__bottom__contents li:first-child,
.stylist__bottom .style__bottom__contents li:first-child {
  text-align: right;
}
.style__bottom .style__bottom__contents li:first-child img,
.stylist__bottom .style__bottom__contents li:first-child img {
  max-width: 68%;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li:first-child img,
  .stylist__bottom .style__bottom__contents li:first-child img {
    max-width: none;
  }
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li:first-child,
  .stylist__bottom .style__bottom__contents li:first-child {
    float: none;
    position: absolute;
    left: calc(50% - 69px);
    top: 50px;
    width: auto;
  }
  .style__bottom .style__bottom__contents li:first-child img,
  .stylist__bottom .style__bottom__contents li:first-child img {
    width: 604px;
  }
}
@media print, screen and (min-width: 1121px) {
  .style__bottom .style__bottom__contents li:first-child,
  .stylist__bottom .style__bottom__contents li:first-child {
    top: -60px;
  }
}
.style__bottom .style__bottom__contents li:last-child,
.stylist__bottom .style__bottom__contents li:last-child {
  padding: 80px 16px 40px;
  margin-top: -60px;
  width: calc(96% - 32px);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
  background-color: white;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li:last-child,
  .stylist__bottom .style__bottom__contents li:last-child {
    padding: 80px;
    margin-bottom: 0;
    width: calc(100% - 160px);
  }
}
@media print, screen and (min-width: 1121px) {
  .style__bottom .style__bottom__contents li:last-child,
  .stylist__bottom .style__bottom__contents li:last-child {
    padding: 100px 80px;
  }
}
.style__bottom .style__bottom__contents li .title,
.stylist__bottom .style__bottom__contents li .title {
  margin-bottom: 12px;
  text-align: left;
  font-size: var(--fs24);
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li .title,
  .stylist__bottom .style__bottom__contents li .title {
    font-size: var(--fs32);
    font-weight: bold;
    font-family: var(--base-font-family);
    line-height: 1.6;
  }
}
.style__bottom .style__bottom__contents li .title::before,
.stylist__bottom .style__bottom__contents li .title::before {
  content: none;
}
.style__bottom .style__bottom__contents li .comment,
.stylist__bottom .style__bottom__contents li .comment {
  font-size: var(--fs14);
  margin-bottom: 24px;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li .comment,
  .stylist__bottom .style__bottom__contents li .comment {
    font-size: var(--fs20);
    line-height: 1.6;
  }
}
.style__bottom .style__bottom__contents li .box,
.stylist__bottom .style__bottom__contents li .box {
  position: relative;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li .box,
  .stylist__bottom .style__bottom__contents li .box {
    width: 50%;
    max-width: 420px;
  }
}
.style__bottom .style__bottom__contents li .box .btn,
.stylist__bottom .style__bottom__contents li .box .btn {
  margin-bottom: 0;
}
.style__bottom .style__bottom__contents li .box .btn a,
.stylist__bottom .style__bottom__contents li .box .btn a {
  padding: 12px 30px;
  margin-bottom: 0;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .style__bottom__contents li .box .btn a,
  .stylist__bottom .style__bottom__contents li .box .btn a {
    padding: 16px 40px;
  }
}
.style__bottom .style__bottom__contents li .box .btn a span,
.stylist__bottom .style__bottom__contents li .box .btn a span {
  padding-left: 30px;
}

.style__bottom .inner {
  width: 100%;
}
@media print, screen and (min-width: 751px) {
  .style__bottom .inner {
    width: calc(100% - 60px);
  }
}
@media print, screen and (min-width: 1121px) {
  .style__bottom .inner {
    width: 1070px;
  }
}

/* stylist */
.stylist {
  background-image: url(../img/stylist/sp/img-top.png);
  background-position-x: center;
}
@media print, screen and (min-width: 751px) {
  .stylist {
    background-image: url(../img/stylist/img-top.png);
  }
}

.stylists {
  padding-bottom: 40px;
  background-image: url(../img/common/bg-pattern02.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: left bottom;
}
@media print, screen and (min-width: 751px) {
  .stylists {
    padding-bottom: 80px;
    background-size: 15vw;
    background-position: 24vw bottom;
  }
}
.stylists .title {
  margin-bottom: 40px;
}
.stylists .stylists__comment {
  font-size: var(--fs20);
  line-height: 1.8;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
}
@media print, screen and (min-width: 751px) {
  .stylists .stylists__comment {
    font-size: var(--fs32);
    line-height: 1.6;
    letter-spacing: 0.12em;
    margin-bottom: 80px;
  }
}
.stylists .stylist__lists {
  margin-bottom: 80px;
}
@media print, screen and (min-width: 751px) {
  .stylists .stylist__lists {
    display: grid;
    grid-template-columns: 32% 1fr;
    gap: 40px;
  }
}
.stylists .stylist__lists li:first-child {
  text-align: center;
  margin-bottom: 24px;
}
@media print, screen and (min-width: 751px) {
  .stylists .stylist__lists li:first-child {
    margin-bottom: 0;
  }
}
.stylists .stylist__lists li .position {
  font-size: var(--base-font-size);
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 0;
}
.stylists .stylist__lists li .name {
  font-size: var(--fs20);
  letter-spacing: 0.2em;
  line-height: 1.6;
  margin-bottom: 24px;
}
.stylists .stylist__lists li .name span {
  font-size: var(--fs12);
  padding-left: 1em;
}
@media print, screen and (min-width: 1121px) {
  .stylists .stylist__lists li dl {
    display: flex;
    align-items: baseline;
    margin-bottom: 16px;
  }
  .stylists .stylist__lists li dl dt {
    word-break: keep-all;
  }
  .stylists .stylist__lists li dl dd {
    margin-bottom: 0;
    margin-left: 1em;
    padding: 8px 0;
    line-height: 1.2;
  }
}
.stylists .stylist__lists li dl dt {
  background-color: white;
  display: inline-block;
  padding: 8px 12px;
  margin-bottom: 10px;
  font-size: var(--fs14);
  letter-spacing: 0.2em;
  line-height: 1.2;
}
@media print, screen and (min-width: 1121px) {
  .stylists .stylist__lists li dl dt {
    font-size: var(--base-font-size);
    line-height: 1.3;
    margin-bottom: 0;
  }
}
.stylists .stylist__lists li dl dd {
  margin-bottom: 24px;
  line-height: 1.7;
  font-size: var(--fs14);
  letter-spacing: 0.08em;
}
@media print, screen and (min-width: 1121px) {
  .stylists .stylist__lists li dl dd {
    font-size: var(--base-font-size);
    margin-bottom: 0;
    margin-left: 10px;
  }
}
.stylists .stylist__lists li dl.stylist__lists__flex {
  display: flex;
  align-content: center;
  margin-bottom: 16px;
	flex-wrap: wrap;
}
.stylists .stylist__lists li dl.stylist__lists__flex dd {
  margin-bottom: 0;
  /*margin-left: 1em;*/
  padding: 8px 0;
  line-height: 1.2;
}
.stylists .stylist__lists li .btn {
  margin-bottom: 0;
}
.stylists .stylist__lists li .btn a {
  padding: 12px 40px;
  margin-bottom: 0;
  width: calc(100% - 80px);
  text-align: center;
  line-height: 1.4;
}
.stylists .stylist__lists li .btn a span {
  background-size: contain;
}
@media print, screen and (min-width: 751px) {
  .stylists .stylist__lists li .btn a {
    padding: 16px 40px;
    width: auto;
  }
}
.stylists .stylist__lists li .comment {
  font-size: var(--fs14);
  margin-bottom: 24px;
}
@media print, screen and (min-width: 751px) {
  .stylists .stylist__lists li .comment {
    font-size: var(--base-font-size);
    line-height: 1.8;
  }
}

.stylist__bottom {
  margin: 0;
  padding: 0;
  position: relative;
}
.stylist__bottom::before {
  content: "";
  display: block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE0MDIgNzAiIHdpZHRoPSIxNDAyIiBoZWlnaHQ9IjcwIj48c3R5bGU+LmF7ZmlsbDojZmZmfTwvc3R5bGU+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGFzcz0iYSIgZD0ibTEzNjYuNSAwaDUzLjV2NzBoLTE0NDB2LTcwaDUzLjNjOC42IDAgMTYuNSA0LjYgMjAuNyAxMi4xIDQuMyA3LjQgMTIuMiAxMiAyMC43IDEyaDgzLjVjOC41IDAgMTYuNC00LjYgMjAuNy0xMiA0LjItNy41IDEyLjEtMTIuMSAyMC42LTEyLjFoNjcuMmM4LjYgMCAxNi40IDQuNiAyMC43IDEyLjEgNC4zIDcuNCAxMi4yIDEyIDIwLjcgMTJoODMuNWM4LjUgMCAxNi40LTQuNiAyMC43LTEyIDQuMi03LjUgMTIuMS0xMi4xIDIwLjYtMTIuMWg2Ny4yYzguNSAwIDE2LjQgNC42IDIwLjcgMTIuMSA0LjMgNy40IDEyLjEgMTIgMjAuNyAxMmg4My41YzguNSAwIDE2LjQtNC42IDIwLjYtMTIgNC4zLTcuNSAxMi4yLTEyLjEgMjAuNy0xMi4xaDY3LjJjOC41IDAgMTYuNCA0LjYgMjAuNyAxMi4xIDQuMiA3LjQgMTIuMSAxMiAyMC43IDEyaDgzLjRjOC42IDAgMTYuNC00LjYgMjAuNy0xMiA0LjMtNy41IDEyLjItMTIuMSAyMC43LTEyLjFoNjcuMmM4LjUgMCAxNi40IDQuNiAyMC43IDEyLjEgNC4yIDcuNCAxMi4xIDEyIDIwLjYgMTJoODMuNWM4LjYgMCAxNi40LTQuNiAyMC43LTEyIDQuMy03LjUgMTIuMi0xMi4xIDIwLjctMTIuMWg2Ny4yYzguNSAwIDE2LjQgNC42IDIwLjcgMTIuMSA0LjIgNy40IDEyLjEgMTIgMjAuNiAxMmg4My41YzguNiAwIDE2LjQtNC42IDIwLjctMTIgNC4zLTcuNSAxMi4yLTEyLjEgMjAuNy0xMi4xeiIvPjwvc3ZnPg==");
  background-repeat: repeat-x;
  background-position: left bottom;
  background-size: contain;
  height: 70px;
  width: 100%;
}
.stylist__bottom .wrapper {
  background-color: white;
  padding: 80px 0;
}
@media print, screen and (min-width: 1121px) {
  .stylist__bottom .wrapper {
    padding: 120px 0;
  }
}
@media print, screen and (min-width: 1121px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 125px;
    width: 1000px;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 1121px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li {
    width: 560px;
  }
}
.stylist__bottom .wrapper .inner .stylist__bottom__contents li:first-child {
  text-align: center;
  margin-bottom: 56px;
}
@media print, screen and (min-width: 1121px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li:first-child {
    width: 320px;
  }
}
.stylist__bottom .wrapper .inner .stylist__bottom__contents li:first-child img {
  width: 42%;
}
@media print, screen and (min-width: 751px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li:first-child img {
    width: auto;
  }
}
.stylist__bottom .wrapper .inner .stylist__bottom__contents li .title img {
  width: 32%;
}
@media print, screen and (min-width: 751px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li .title img {
    width: auto;
  }
}
.stylist__bottom .wrapper .inner .stylist__bottom__contents li p {
  margin-bottom: 24px;
}
@media print, screen and (min-width: 751px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li p {
    font-size: var(--fs20);
    margin-bottom: 12px;
  }
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li p.comment {
    margin-bottom: 56px;
  }
}
.stylist__bottom .wrapper .inner .stylist__bottom__contents li a {
  padding: 12px 30px;
  margin-bottom: 0;
  line-height: 1.4;
}
@media print, screen and (min-width: 751px) {
  .stylist__bottom .wrapper .inner .stylist__bottom__contents li a {
    padding: 16px 40px;
  }
}

/* access */
.access {
  background-image: url(../img/access/sp/img-top.png);
  background-position-x: center;
}
@media print, screen and (min-width: 751px) {
  .access {
    background-image: url(../img/access/img-top.png);
  }
}

.access__info {
  background-image: url(../img/common/bg-pattern02.svg);
  background-repeat: no-repeat;
  background-size: 50%;
  background-position: left bottom;
}
@media print, screen and (min-width: 751px) {
  .access__info {
    padding-bottom: 80px;
    background-size: 15vw;
    background-position: 24vw bottom;
  }
}
.access__info .title {
  margin-bottom: 120px;
}
@media print, screen and (min-width: 751px) {
  .access__info .title {
    text-align: center;
  }
}
.access__info iframe {
  width: 100%;
  height: 400px;
  margin-bottom: 48px;
}
.access__info .shop__name {
  font-size: var(--fs20);
  letter-spacing: 0.2em;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 48px;
}
.access__info dl {
  font-size: var(--fs14);
  line-height: 1.6;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #bcb49b;
}
@media print, screen and (min-width: 751px) {
  .access__info dl {
    display: grid;
    grid-template-columns: 160px 1fr;
    align-items: center;
    font-size: var(--base-font-size);
    width: 800px;
    margin: 24px auto 0;
    padding: 12px 0 20px;
  }
}
.access__info dl dt {
  padding: 8px 12px;
  margin-top: 10px;
}
@media print, screen and (min-width: 751px) {
  .access__info dl dt {
    margin-top: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
.access__info dl dd {
  padding: 12px;
  padding-top: 0;
}
@media print, screen and (min-width: 751px) {
  .access__info dl dd {
    padding: 0;
  }
}
.access__info dl dd .btn {
  margin-bottom: 0;
}
.access__info dl dd .btn a {
  margin-bottom: 0;
  padding: 14px 30px;
}
@media print, screen and (min-width: 751px) {
  .access__info dl dd .btn a {
    padding: 16px 40px;
  }
}
.access__info dl dd .btn__special a {
  width: 16em;
  text-align: center;
}
.access__info dl dd .reservation__btn {
  margin-bottom: 16px;
}

.access__bottom .wrapper {
  padding-bottom: 200px;
}

/* 投稿ページ */
.lower__common.single {
  background-image: url(../img/information/sp/img-top.png);
  background-position-x: center;
  border: none;
}
@media print, screen and (min-width: 751px) {
  .lower__common.single {
    background-image: url(../img/information/img-top.png);
  }
}
.lower__common.single .title span::before {
  left: 0;
  top: calc(50% - 100px);
}
@media print, screen and (min-width: 751px) {
  .lower__common.single .title span::before {
    top: calc(50% - 180px);
  }
}
.lower__common.single .breadcrumbs {
  justify-content: start;
  padding-left: 15px;
  padding-bottom: 16px;
  margin-bottom: 80px;
  border-bottom: 1px solid #3f3e3e;
}
@media print, screen and (min-width: 751px) {
  .lower__common.single .breadcrumbs {
    justify-content: end;
  }
}

.single .single__contents,
.single .archive__contents {
  display: flex;
  flex-direction: column-reverse;
}
@media print, screen and (min-width: 1121px) {
  .single .single__contents,
  .single .archive__contents {
    display: grid;
    grid-template-columns: 1fr 260px;
    gap: 64px;
    align-items: start;
  }
}
@media print, screen and (min-width: 1121px) {
  .single .single__contents,
  .single .archive__contents {
    width: 1072px;
  }
}
.single .single__contents aside,
.single .archive__contents aside {
  padding: 24px;
  margin-bottom: 120px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents aside,
  .single .archive__contents aside {
    padding: 56px 56px 44px;
  }
}
.single .single__contents aside p,
.single .archive__contents aside p {
  text-align: left;
}
@media print, screen and (min-width: 1121px) {
  .single .single__contents aside p,
  .single .archive__contents aside p {
    text-align: center;
  }
}
.single .single__contents aside .title,
.single .archive__contents aside .title {
  margin-bottom: 24px;
  font-size: var(--fs20);
}
.single .single__contents aside ul,
.single .archive__contents aside ul {
  display: flex;
  flex-wrap: wrap;
	justify-content: center
}
.single .single__contents aside ul li,
.single .archive__contents aside ul li {
  margin: 0 14px 14px 0;
  font-size: var(--fs12);
  font-weight: bold;
  line-height: 2;
  text-align: center;
}
@media print, screen and (min-width: 1121px) {
  .single .single__contents aside ul li,
  .single .archive__contents aside ul li {
    width: calc(100% - 24px);
    margin: 0 0 12px;
  }
}
.single .single__contents aside ul li a,
.single .archive__contents aside ul li a {
  display: inline-block;
  padding: 0 12px;
  border: 1px solid #333;
}
@media print, screen and (min-width: 1121px) {
  .single .single__contents aside ul li a,
  .single .archive__contents aside ul li a {
    width: calc(100% - 24px);
  }
}
.single .single__contents main h3,
.single .archive__contents main h3 {
  font-size: var(--fs24);
  letter-spacing: 0.2em;
  line-height: 1.8;
  margin-bottom: 12px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main h3,
  .single .archive__contents main h3 {
    font-size: var(--fs32);
    margin-bottom: 24px;
  }
}
.single .single__contents main h4,
.single .archive__contents main h4 {
  margin-bottom: 24px;
  padding: 10px 12px;
  font-size: var(--fs18);
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.12em;
  border-top: 1px solid var(--color-blue);
  border-bottom: 1px solid var(--color-blue);
}
.single .single__contents main h5,
.single .archive__contents main h5 {
  font-size: var(--fs18);
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.12em;
  margin-bottom: 24px;
}
.single .single__contents main h5 span,
.single .archive__contents main h5 span {
  background-image: url(../img/common/border-wave.svg);
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom: 10px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main h5 span,
  .single .archive__contents main h5 span {
    font-size: var(--fs20);
    line-height: 2.4;
    letter-spacing: 0.2em;
  }
}
.single .single__contents main .info,
.single .archive__contents main .info {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main .info,
  .single .archive__contents main .info {
    margin-bottom: 40px;
  }
}
.single .single__contents main .info dt,
.single .archive__contents main .info dt {
  margin-right: 20px;
  font-size: var(--fs12);
  letter-spacing: 0.2em;
}
.single .single__contents main .info dd ul,
.single .archive__contents main .info dd ul {
  display: flex;
  flex-wrap: wrap;
}
.single .single__contents main .info dd ul li,
.single .archive__contents main .info dd ul li {
  margin-right: 12px;
  padding: 0 10px;
  border: 1px solid #333;
  font-size: var(--fs12);
  font-weight: bold;
  line-height: 2;
}
.single .single__contents main figure,
.single .archive__contents main figure {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main figure,
  .single .archive__contents main figure {
    margin-bottom: 80px;
  }
}
.single .single__contents main p,
.single .archive__contents main p {
  text-align: left;
  font-size: var(--fs14);
  letter-spacing: 0.2em;
  line-height: 2;
  margin-bottom: 40px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main p,
  .single .archive__contents main p {
    font-size: var(--base-font-size);
  }
}
.single .single__contents main p strong,
.single .archive__contents main p strong {
  font-weight: bold;
}
.single .single__contents main p.btn,
.single .archive__contents main p.btn {
  /* margin: 80px auto 120px; */
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main p.btn,
  .single .archive__contents main p.btn {
    /*  margin-bottom: 160px; */
  }
}
.single .single__contents main .wp-block-group,
.single .archive__contents main .wp-block-group {
  padding: 32px;
  margin-bottom: 80px;
  background-color: white;
}
.single .single__contents main .wp-block-group .wp-block-heading,
.single .archive__contents main .wp-block-group .wp-block-heading {
  color: var(--color-blue);
  font-size: var(--fs18);
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-bottom: 16px;
}
.single .single__contents main .wp-block-group .wp-block-list,
.single .archive__contents main .wp-block-group .wp-block-list {
  margin-bottom: 20px;
  margin-right: 1em;
}
.single .single__contents main .wp-block-group .wp-block-list li,
.single .archive__contents main .wp-block-group .wp-block-list li {
  position: relative;
  padding-left: 1em;
  margin-bottom: 12px;
  line-height: 1.6;
  font-size: var(--fs14);
  letter-spacing: 0.2em;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main .wp-block-group .wp-block-list li,
  .single .archive__contents main .wp-block-group .wp-block-list li {
    font-size: var(--base-font-size);
  }
}
.single .single__contents main .wp-block-group .wp-block-list li::before,
.single .archive__contents main .wp-block-group .wp-block-list li::before {
  content: "";
  position: absolute;
  top: calc(50% - 4px);
  left: 0;
  border-radius: 50%;
  background-color: var(--bg02);
  width: 7px;
  height: 7px;
}
.single .single__contents main .wp-block-group p,
.single .archive__contents main .wp-block-group p {
  margin-bottom: 1em;
}
.single .single__contents main .single__outer__btn,
.single .archive__contents main .single__outer__btn {
  text-align: center;
  margin: 80px auto 120px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main .single__outer__btn,
  .single .archive__contents main .single__outer__btn {
    text-align: left;
    margin-bottom: 160px;
  }
}
.single .single__contents main .single__outer__btn a,
.single .archive__contents main .single__outer__btn a {
  padding: 16px 40px;
  font-size: var(--fs13);
  font-weight: bold;
  color: var(--color-gray2);
  letter-spacing: 0.06em;
  border: 1px solid var(--color-gray2);
  border-radius: 4px;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main .single__outer__btn a,
  .single .archive__contents main .single__outer__btn a {
    padding: 20px 40px;
    font-size: var(--fs18);
  }
}
.single .single__contents main .single__outer__btn a span,
.single .archive__contents main .single__outer__btn a span {
  padding-right: 2.5em;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyNCAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEuMzgyNSAwLjI5MzAxNUMyMS43NzMgLTAuMDk3NTA4OSAyMi40MDcgLTAuMDk3NTA5MSAyMi43OTc1IDAuMjkzMDE1QzIzLjE4NzcgMC42ODM0NzYgMjMuMTg3NyAxLjMxNjYyIDIyLjc5NzUgMS43MDcwOEwxMi41MjcgMTEuOTc3NkMxMi4xMzY2IDEyLjM2NzggMTEuNTAzNCAxMi4zNjc4IDExLjExMyAxMS45Nzc2QzEwLjcyMjQgMTEuNTg3MSAxMC43MjI0IDEwLjk1MzEgMTEuMTEzIDEwLjU2MjVMMjEuMzgyNSAwLjI5MzAxNVoiIGZpbGw9IiM3NzcyNkIiLz48cGF0aCBkPSJNMjEuMDkwMyA1LjU1OTU3VjJIMTcuNTJDMTYuOTY3NyAyIDE2LjUyIDEuNTUyMjggMTYuNTIgMUMxNi41MiAwLjQ0NzcxNSAxNi45Njc3IDAgMTcuNTIgMEgyMi4wOTAzQzIyLjY0MjUgMC4wMDAxNjkwMTQgMjMuMDkwMyAwLjQ0NzgxOSAyMy4wOTAzIDFWNS41NTk1N0MyMy4wOTAzIDYuMTExNzUgMjIuNjQyNSA2LjU1OTQgMjIuMDkwMyA2LjU1OTU3QzIxLjUzOCA2LjU1OTU3IDIxLjA5MDMgNi4xMTE4NiAyMS4wOTAzIDUuNTU5NTdaIiBmaWxsPSIjNzc3MjZCIi8+PHBhdGggZD0iTTIwLjE2MDIgMjEuMDc5NkMyMC4xNjAyIDIyLjEzMTkgMTkuMzAyMyAyMi45ODk3IDE4LjI1IDIyLjk4OTdIMS45MTAxNkMwLjg1Nzg3NyAyMi45ODk3IDAgMjIuMTMxOSAwIDIxLjA3OTZWNS4xNDAxNEMwIDQuMDg3ODUgMC44NTc4NzYgMy4yMjk5OCAxLjkxMDE2IDMuMjI5OThIMTMuMDRDMTMuNTkyMyAzLjIzIDE0LjA0IDMuNjc3NzEgMTQuMDQgNC4yMjk5OEMxNC4wNCA0Ljc4MjI1IDEzLjU5MjMgNS4yMjk5NiAxMy4wNCA1LjIyOTk4SDJWMjAuOTg5N0gxOC4xNjAyVjkuNDg5NzVDMTguMTYwMyA4LjkzNzU3IDE4LjYwOCA4LjQ4OTc1IDE5LjE2MDIgOC40ODk3NUMxOS43MTIzIDguNDg5ODMgMjAuMTYgOC45Mzc2MiAyMC4xNjAyIDkuNDg5NzVWMjEuMDc5NloiIGZpbGw9IiM3NzcyNkIiLz48L3N2Zz4=");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
}
.single .single__contents main .single__outer__btn a:hover,
.single .archive__contents main .single__outer__btn a:hover {
  color: white;
  background-color: var(--color-gray2);
}
.single .single__contents main .single__outer__btn a:hover span,
.single .archive__contents main .single__outer__btn a:hover span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjMiIHZpZXdCb3g9IjAgMCAyNCAyMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMjEuMzgyNSAwLjI5MzAxNUMyMS43NzMgLTAuMDk3NTA4OSAyMi40MDcgLTAuMDk3NTA5MSAyMi43OTc1IDAuMjkzMDE1QzIzLjE4NzcgMC42ODM0NzYgMjMuMTg3NyAxLjMxNjYyIDIyLjc5NzUgMS43MDcwOEwxMi41MjcgMTEuOTc3NkMxMi4xMzY2IDEyLjM2NzggMTEuNTAzNCAxMi4zNjc4IDExLjExMyAxMS45Nzc2QzEwLjcyMjQgMTEuNTg3MSAxMC43MjI0IDEwLjk1MzEgMTEuMTEzIDEwLjU2MjVMMjEuMzgyNSAwLjI5MzAxNVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjEuMDkwMyA1LjU1OTU3VjJIMTcuNTJDMTYuOTY3NyAyIDE2LjUyIDEuNTUyMjggMTYuNTIgMUMxNi41MiAwLjQ0NzcxNSAxNi45Njc3IDAgMTcuNTIgMEgyMi4wOTAzQzIyLjY0MjUgMC4wMDAxNjkwMTQgMjMuMDkwMyAwLjQ0NzgxOSAyMy4wOTAzIDFWNS41NTk1N0MyMy4wOTAzIDYuMTExNzUgMjIuNjQyNSA2LjU1OTQgMjIuMDkwMyA2LjU1OTU3QzIxLjUzOCA2LjU1OTU3IDIxLjA5MDMgNi4xMTE4NiAyMS4wOTAzIDUuNTU5NTdaIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTIwLjE2MDIgMjEuMDc5NkMyMC4xNjAyIDIyLjEzMTkgMTkuMzAyMyAyMi45ODk3IDE4LjI1IDIyLjk4OTdIMS45MTAxNkMwLjg1Nzg3NyAyMi45ODk3IDAgMjIuMTMxOSAwIDIxLjA3OTZWNS4xNDAxNEMwIDQuMDg3ODUgMC44NTc4NzYgMy4yMjk5OCAxLjkxMDE2IDMuMjI5OThIMTMuMDRDMTMuNTkyMyAzLjIzIDE0LjA0IDMuNjc3NzEgMTQuMDQgNC4yMjk5OEMxNC4wNCA0Ljc4MjI1IDEzLjU5MjMgNS4yMjk5NiAxMy4wNCA1LjIyOTk4SDJWMjAuOTg5N0gxOC4xNjAyVjkuNDg5NzVDMTguMTYwMyA4LjkzNzU3IDE4LjYwOCA4LjQ4OTc1IDE5LjE2MDIgOC40ODk3NUMxOS43MTIzIDguNDg5ODMgMjAuMTYgOC45Mzc2MiAyMC4xNjAyIDkuNDg5NzVWMjEuMDc5NloiIGZpbGw9IiNmZmYiLz48L3N2Zz4=");
}
.single .single__contents main .single__cmn__btn,
.single .archive__contents main .single__cmn__btn {
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .single .single__contents main .single__cmn__btn,
  .single .archive__contents main .single__cmn__btn {
    text-align: left;
  }
}
.single .single__contents main .single__cmn__btn a:hover,
.single .archive__contents main .single__cmn__btn a:hover {
  color: white;
  background-color: var(--color-gray2);
}
.single .single__contents main .single__cmn__btn a:hover span,
.single .archive__contents main .single__cmn__btn a:hover span {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNyIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDcgMTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0wLjAwMDI5NzA3IDUuNzgxTDUuNzgxMyAxMS41NjJMNi44NDE4IDEwLjUwMTVMMi4xMjEzIDUuNzgxTDYuODQxOCAxLjA2Mkw1Ljc4MTMgMEwwLjAwMDI5NzA3IDUuNzgxWiIgZmlsbD0id2hpdGUiLz48L3N2Zz4=");
}
.single.archive {
  margin-bottom: 100px;
  border: none;
}
.single.archive .breadcrumbs {
  padding-left: 15px;
  padding-bottom: 16px;
  margin-bottom: 80px;
  border-bottom: 1px solid #3f3e3e;
}
@media print, screen and (min-width: 751px) {
  .single .archive__contents main .items {
    display: grid;
    grid-template-columns: calc(50% - 16px) calc(50% - 16px);
    gap: 32px;
  }
}
.single .archive__contents main .items li a {
  display: block;
  margin-bottom: 40px;
}
.single .archive__contents main .items li a .post__img__wrapper {
  margin-bottom: 12px;
  max-height: 255px;
  overflow: hidden;
  text-align: center;
}
@media print, screen and (min-width: 751px) {
  .single .archive__contents main .items li a .info {
    margin-bottom: 12px;
    flex-direction: column;
    align-items: start;
  }
}
@media print, screen and (min-width: 1121px) {
  .single .archive__contents main .items li a .info {
    flex-direction: row;
    align-items: center;
  }
}
@media print, screen and (min-width: 751px) {
  .single .archive__contents main .items li a .info dd ul li {
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 1121px) {
  .single .archive__contents main .items li a .info dd ul li {
    margin-top: 0;
  }
}
.single .archive__contents main .items li a h3 {
  font-family: var(--base-font-family);
  font-size: var(--fs14);
  letter-spacing: 0.08em;
  position: relative;
}
.single .archive__contents main .items li a h3::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTYgMEMxNiAwLjc0MiAxNi43MzMgMS44NSAxNy40NzUgMi43OEMxOC40MjkgMy45OCAxOS41NjkgNS4wMjcgMjAuODc2IDUuODI2QzIxLjg1NiA2LjQyNSAyMy4wNDQgNyAyNCA3TTI0IDdDMjMuMDQ0IDcgMjEuODU1IDcuNTc1IDIwLjg3NiA4LjE3NEMxOS41NjkgOC45NzQgMTguNDI5IDEwLjAyMSAxNy40NzUgMTEuMjE5QzE2LjczMyAxMi4xNSAxNiAxMy4yNiAxNiAxNE0yNCA3SDAiIHN0cm9rZT0iYmxhY2siLz48L3N2Zz4=);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
  width: 24px;
  height: 24px;
}
@media print, screen and (min-width: 751px) {
  .single .archive__contents main .items li a h3 {
    font-size: var(--base-font-size);
    margin-bottom: 12px;
  }
}
.single .archive__contents main .items li a p {
  margin-bottom: 32px;
}
.single .archive__contents main .items li a .more {
  text-align: right;
  padding-right: 1.5em;
  background-image: url(../img/common/icon-arrow.svg);
  background-position: right center;
  background-repeat: no-repeat;
  background-size: 0.8em;
  line-height: 1;
}
.single .post-pagination-wrapper {
  display: flex;
  justify-content: center;
  margin: 100px auto 0;
  padding-bottom: 220px;
}
.single .post-pagination-wrapper span,
.single .post-pagination-wrapper a {
  display: inline-block;
  width: 40px;
  height: 40px;
  text-align: center;
  font-size: var(--fs12);
  border: 1px solid var(--color-text);
  line-height: 40px;
  margin-right: 8px;
  position: relative;
}
.single .post-pagination-wrapper span.prev, .single .post-pagination-wrapper span.next,
.single .post-pagination-wrapper a.prev,
.single .post-pagination-wrapper a.next {
  border: none;
}
.single .post-pagination-wrapper span.next,
.single .post-pagination-wrapper a.next {
  margin-right: 0;
}
.single .post-pagination-wrapper span svg,
.single .post-pagination-wrapper a svg {
  position: absolute;
  top: calc(50% - 6px);
  left: calc(50% - 3.5px);
}
.single .post-pagination-wrapper span.current {
  border: none;
  background-color: white;
}
.single .post-pagination-wrapper span.dots {
  border: none;
  background: none;
}

.bottom__navi {
  display: flex;
  grid-template-columns: repeat(3, 1fr);
  justify-content: center;
  gap: 15px;
  padding-bottom: 256px;
}
.bottom__navi li {
  position: relative;
  font-size: var(--fs14);
  font-weight: bold;
  letter-spacing: 0.2em;
  background-color: white;
  line-height: 2.4;
}
@media print, screen and (min-width: 751px) {
  .bottom__navi li {
    line-height: 1.3;
  }
}
.bottom__navi li a {
  display: inline-block;
  padding: 14px 24px;
}
@media print, screen and (min-width: 1121px) {
  .bottom__navi li a {
    padding: 16px 24px;
  }
}
@media print, screen and (min-width: 751px) {
  .bottom__navi li a .single__cmn__btn {
    font-size: var(--fs14);
  }
}
.bottom__navi li.prev a::before {
  content: url(../img/common/btn-prev.svg);
}
@media print, screen and (min-width: 751px) {
  .bottom__navi li.prev a::before {
    position: relative;
    top: 2px;
    margin-right: 10px;
  }
}
.bottom__navi li.next a::after {
  content: url(../img/common/btn-next.svg);
}
@media print, screen and (min-width: 751px) {
  .bottom__navi li.next a::after {
    position: relative;
    top: 2px;
    margin-left: 10px;
  }
}
.bottom__navi li p {
  margin-bottom: 0;
}
@media print, screen and (min-width: 751px) {
  .bottom__navi li p {
    font-size: var(--fs14);
    line-height: 1.3;
  }
}

.wp-singular .footer,
.archive .footer {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE0NDAgMTc1IiB3aWR0aD0iMTQ0MCIgaGVpZ2h0PSIxNzUiPgk8ZGVmcz4gPGZpbHRlciB4PSItNTAlIiB5PSItNTAlIiB3aWR0aD0iMjAwJSIgaGVpZ2h0PSIyMDAlIiBpZD0iZjEiID48ZmVEcm9wU2hhZG93IGR4PSItMS4yMjQ2NDY3OTkxNDczNTMzZS0xNSIgZHk9Ii0yMCIgc3RkRGV2aWF0aW9uPSI4LjMzMzMzMzMzMzMzMzMzNCIgZmxvb2QtY29sb3I9IiM5OTk5OTkiIGZsb29kLW9wYWNpdHk9Ii4xIi8+PC9maWx0ZXI+CTwvZGVmcz4JPHN0eWxlPiAuczAgeyBmaWx0ZXI6IHVybCgjZjEpO2ZpbGw6ICNmMGYwZWQgfSA8L3N0eWxlPgk8Zz4gPHBhdGggY2xhc3M9InMwIiBkPSJtMTQzOS45OSA3NS44MWMwIDAtMTc4LTUwLjg4LTM5MC01MC44OC0yNDUuMjIgMC00MDAuMDIgMzkuOTEtNjQ1LjI0IDM5LjkxLTIzNSAwLTQwNC43NS00OS44NC00MDQuNzUtNDkuODR2MTYwaDE0NDB6Ii8+CTwvZz48L3N2Zz4=");
}/*# sourceMappingURL=styles.css.map */