@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

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

ol, ul, li {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  color: #000;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

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

/* change border colour to suit your needs
*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

img, iframe {
  vertical-align: bottom;
}

th {
  text-align: left;
}

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

:focus {
  outline: none;
}

:focus-visible {
  outline: 2px solid #2196f3;
  /* 視認性のある色。好みに応じて */
}

* {
  -webkit-tap-highlight-color: transparent;
}

/*
@import "./fontawesome/fontawesome.scss";
@import "./fontawesome/solid.scss";
@import "./fontawesome/regular.scss";
@import "./fontawesome/brands.scss";
*/
:root {
  --width-base: 1280px;
  --width-main-column: 930px;
  --width-side-column: 350px;
  --padding-base: 40px;
  --padding-mobile: 5.3333vw;
  /* 色 **************************** */
  --color-navy: #153d5c;
  --color-navy2: #506e85;
  --color-navy3: #0b2132;
  --color-blue: #8499a8;
  --color-white: #ffffff;
  --color-gray: #eff1f2;
  --color-black: #404040;
  --color-black2: #153d5c;
  --color-main: var(--color-navy);
  --color-second: var(--color-blue);
  --color-base: var(--color-white);
  --color-base2: var(--color-gray);
  --color-text: var(--color-black);
  --color-btn: var(--color-navy2);
  --color-bg: var(--color-navy3);
  /* フォント **************************** */
  --font-adobe-caslon-pro: "Adobe Caslon Pro";
  --font-dnp-shuei-gothic-gin-std: dnp-shuei-gothic-gin-std;
  --font-zen-old-mincho: zen-old-mincho;
  --font-sans-serif: sans-serif;
  --font-serif: serif;
  --font-gothic-base: var(--font-sans-serif);
  --font-mincho-base: var(--font-serif);
  --font-gothic: var(--font-dnp-shuei-gothic-gin-std), var(--font-gothic-base);
  --font-mincho: var(--font-adobe-caslon-pro), var(--font-zen-old-mincho), var(--font-mincho-base);
}

.bg-navy {
  background-color: #153d5c;
}

.text-navy {
  color: #153d5c;
}

.bg-navy2 {
  background-color: #506e85;
}

.text-navy2 {
  color: #506e85;
}

.bg-navy3 {
  background-color: #0b2132;
}

.text-navy3 {
  color: #0b2132;
}

.bg-blue {
  background-color: #8499a8;
}

.text-blue {
  color: #8499a8;
}

.bg-white {
  background-color: #ffffff;
}

.text-white {
  color: #ffffff;
}

.bg-gray {
  background-color: #eff1f2;
}

.text-gray {
  color: #eff1f2;
}

.bg-black {
  background-color: #404040;
}

.text-black {
  color: #404040;
}

.bg-black2 {
  background-color: #153d5c;
}

.text-black2 {
  color: #153d5c;
}

[data-css-scroll="all"] {
  overflow-y: scroll;
}

.mb5em {
  margin-bottom: 0.5em;
}

.mt5em {
  margin-top: 0.5em;
}

[data-css-mb="0.5"] {
  margin-bottom: 0.5em;
}

[data-css-mt="0.5"] {
  margin-top: 0.5em;
}

.mb10em {
  margin-bottom: 1em;
}

.mt10em {
  margin-top: 1em;
}

[data-css-mb="1"] {
  margin-bottom: 1em;
}

[data-css-mt="1"] {
  margin-top: 1em;
}

.mb15em {
  margin-bottom: 1.5em;
}

.mt15em {
  margin-top: 1.5em;
}

[data-css-mb="1.5"] {
  margin-bottom: 1.5em;
}

[data-css-mt="1.5"] {
  margin-top: 1.5em;
}

.mb20em {
  margin-bottom: 2em;
}

.mt20em {
  margin-top: 2em;
}

[data-css-mb="2"] {
  margin-bottom: 2em;
}

[data-css-mt="2"] {
  margin-top: 2em;
}

.mb25em {
  margin-bottom: 2.5em;
}

.mt25em {
  margin-top: 2.5em;
}

[data-css-mb="2.5"] {
  margin-bottom: 2.5em;
}

[data-css-mt="2.5"] {
  margin-top: 2.5em;
}

.mb30em {
  margin-bottom: 3em;
}

.mt30em {
  margin-top: 3em;
}

[data-css-mb="3"] {
  margin-bottom: 3em;
}

[data-css-mt="3"] {
  margin-top: 3em;
}

.mb35em {
  margin-bottom: 3.5em;
}

.mt35em {
  margin-top: 3.5em;
}

[data-css-mb="3.5"] {
  margin-bottom: 3.5em;
}

[data-css-mt="3.5"] {
  margin-top: 3.5em;
}

.mb40em {
  margin-bottom: 4em;
}

.mt40em {
  margin-top: 4em;
}

[data-css-mb="4"] {
  margin-bottom: 4em;
}

[data-css-mt="4"] {
  margin-top: 4em;
}

.mb45em {
  margin-bottom: 4.5em;
}

.mt45em {
  margin-top: 4.5em;
}

[data-css-mb="4.5"] {
  margin-bottom: 4.5em;
}

[data-css-mt="4.5"] {
  margin-top: 4.5em;
}

.mb50em {
  margin-bottom: 5em;
}

.mt50em {
  margin-top: 5em;
}

[data-css-mb="5"] {
  margin-bottom: 5em;
}

[data-css-mt="5"] {
  margin-top: 5em;
}

[data-css-inner="10"] {
  padding-left: 10px;
  padding-right: 10px;
}

[data-css-mb="10"] {
  margin-bottom: 1rem;
}

[data-css-inner="20"] {
  padding-left: 20px;
  padding-right: 20px;
}

[data-css-mb="20"] {
  margin-bottom: 2rem;
}

[data-css-inner="30"] {
  padding-left: 30px;
  padding-right: 30px;
}

[data-css-mb="30"] {
  margin-bottom: 3rem;
}

[data-css-inner="40"] {
  padding-left: 40px;
  padding-right: 40px;
}

[data-css-mb="40"] {
  margin-bottom: 4rem;
}

[data-css-inner="50"] {
  padding-left: 50px;
  padding-right: 50px;
}

[data-css-mb="50"] {
  margin-bottom: 5rem;
}

[data-css-inner="60"] {
  padding-left: 60px;
  padding-right: 60px;
}

[data-css-mb="60"] {
  margin-bottom: 6rem;
}

[data-css-inner="70"] {
  padding-left: 70px;
  padding-right: 70px;
}

[data-css-mb="70"] {
  margin-bottom: 7rem;
}

[data-css-inner="80"] {
  padding-left: 80px;
  padding-right: 80px;
}

[data-css-mb="80"] {
  margin-bottom: 8rem;
}

[data-css-inner="90"] {
  padding-left: 90px;
  padding-right: 90px;
}

[data-css-mb="90"] {
  margin-bottom: 9rem;
}

[data-css-inner="100"] {
  padding-left: 100px;
  padding-right: 100px;
}

[data-css-mb="100"] {
  margin-bottom: 10rem;
}

[data-css-inner="110"] {
  padding-left: 110px;
  padding-right: 110px;
}

[data-css-mb="110"] {
  margin-bottom: 11rem;
}

[data-css-inner="120"] {
  padding-left: 120px;
  padding-right: 120px;
}

[data-css-mb="120"] {
  margin-bottom: 12rem;
}

[data-css-inner="130"] {
  padding-left: 130px;
  padding-right: 130px;
}

[data-css-mb="130"] {
  margin-bottom: 13rem;
}

[data-css-inner="140"] {
  padding-left: 140px;
  padding-right: 140px;
}

[data-css-mb="140"] {
  margin-bottom: 14rem;
}

[data-css-inner="150"] {
  padding-left: 150px;
  padding-right: 150px;
}

[data-css-mb="150"] {
  margin-bottom: 15rem;
}

[data-css-inner="160"] {
  padding-left: 160px;
  padding-right: 160px;
}

[data-css-mb="160"] {
  margin-bottom: 16rem;
}

[data-css-inner="170"] {
  padding-left: 170px;
  padding-right: 170px;
}

[data-css-mb="170"] {
  margin-bottom: 17rem;
}

[data-css-inner="180"] {
  padding-left: 180px;
  padding-right: 180px;
}

[data-css-mb="180"] {
  margin-bottom: 18rem;
}

[data-css-inner="190"] {
  padding-left: 190px;
  padding-right: 190px;
}

[data-css-mb="190"] {
  margin-bottom: 19rem;
}

[data-css-inner="200"] {
  padding-left: 200px;
  padding-right: 200px;
}

[data-css-mb="200"] {
  margin-bottom: 20rem;
}

[data-css-flex] {
  display: flex;
}

[data-css-flex="row"] {
  flex-direction: row;
}

[data-css-flex="row-center"] {
  flex-direction: row;
  justify-content: center;
}

[data-css-flex="row-right"] {
  flex-direction: row;
  justify-content: flex-end;
}

[data-css-flex="column"] {
  flex-direction: column;
}

[data-css-flex="column-center"] {
  flex-direction: column;
  align-items: center;
}

[data-css-flex="column-right"] {
  flex-direction: column;
  align-items: flex-end;
}

.gap {
  display: flex;
  flex-direction: column;
}

[data-css-gap="10"] {
  gap: 10px;
}

.gap--10px {
  gap: 10px;
}

[data-css-gap="20"] {
  gap: 20px;
}

.gap--20px {
  gap: 20px;
}

[data-css-gap="30"] {
  gap: 30px;
}

.gap--30px {
  gap: 30px;
}

[data-css-gap="40"] {
  gap: 40px;
}

.gap--40px {
  gap: 40px;
}

[data-css-gap="50"] {
  gap: 50px;
}

.gap--50px {
  gap: 50px;
}

[data-css-gap="60"] {
  gap: 60px;
}

.gap--60px {
  gap: 60px;
}

[data-css-gap="70"] {
  gap: 70px;
}

.gap--70px {
  gap: 70px;
}

[data-css-gap="80"] {
  gap: 80px;
}

.gap--80px {
  gap: 80px;
}

[data-css-gap="90"] {
  gap: 90px;
}

.gap--90px {
  gap: 90px;
}

[data-css-gap="100"] {
  gap: 100px;
}

.gap--100px {
  gap: 100px;
}

[data-css-gap="110"] {
  gap: 110px;
}

.gap--110px {
  gap: 110px;
}

[data-css-gap="120"] {
  gap: 120px;
}

.gap--120px {
  gap: 120px;
}

[data-css-gap="130"] {
  gap: 130px;
}

.gap--130px {
  gap: 130px;
}

[data-css-gap="140"] {
  gap: 140px;
}

.gap--140px {
  gap: 140px;
}

[data-css-gap="150"] {
  gap: 150px;
}

.gap--150px {
  gap: 150px;
}

[data-css-gap="160"] {
  gap: 160px;
}

.gap--160px {
  gap: 160px;
}

[data-css-gap="170"] {
  gap: 170px;
}

.gap--170px {
  gap: 170px;
}

[data-css-gap="180"] {
  gap: 180px;
}

.gap--180px {
  gap: 180px;
}

[data-css-gap="190"] {
  gap: 190px;
}

.gap--190px {
  gap: 190px;
}

[data-css-gap="200"] {
  gap: 200px;
}

.gap--200px {
  gap: 200px;
}

[data-css-gap="1em"] {
  gap: 1em;
}

.gap--1em {
  gap: 1em;
}

[data-css-gap="2em"] {
  gap: 2em;
}

.gap--2em {
  gap: 2em;
}

[data-css-gap="3em"] {
  gap: 3em;
}

.gap--3em {
  gap: 3em;
}

[data-css-gap="4em"] {
  gap: 4em;
}

.gap--4em {
  gap: 4em;
}

[data-css-gap="5em"] {
  gap: 5em;
}

.gap--5em {
  gap: 5em;
}

[data-css-gap="6em"] {
  gap: 6em;
}

.gap--6em {
  gap: 6em;
}

[data-css-gap="7em"] {
  gap: 7em;
}

.gap--7em {
  gap: 7em;
}

[data-css-gap="8em"] {
  gap: 8em;
}

.gap--8em {
  gap: 8em;
}

[data-css-gap="9em"] {
  gap: 9em;
}

.gap--9em {
  gap: 9em;
}

[data-css-gap="10em"] {
  gap: 10em;
}

.gap--10em {
  gap: 10em;
}

.display-xl {
  display: none;
}

.display-lg {
  display: none;
}

.display-md {
  display: none;
}

.display-sm {
  display: none;
}

.display-xs {
  display: none;
}

.visually-hidden {
  position: absolute;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  overflow: hidden;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.8rem;
  font-weight: 500;
  font-family: var(--font-gothic);
  color: var(--color-text);
  letter-spacing: 0.025em;
  word-wrap: break-word;
}

.textLeft {
  text-align: left;
}

.textRight {
  text-align: right;
}

.textCenter {
  text-align: center;
}

.textJustify {
  text-align: justify;
  text-justify: inter-ideograph;
}

.weightBold {
  font-weight: bold;
}

.text-common {
  font-size: 1.8rem;
  font-family: var(--font-mincho);
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  line-height: 1.75;
}

.textMarker {
  background: linear-gradient(to bottom, transparent 0, transparent 50%, rgba(var(color-main), 0.25) 50%, rgba(var(color-main), 0.25) 100%);
}

[data-css-font="mincho"] {
  font-family: var(--font-mincho) !important;
}

[data-css-font="gothic"] {
  font-family: var(--font-gothic) !important;
}

html,
body {
  scroll-padding-top: 100px;
}

html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 1fr auto;
  -ms-grid-columns: 100%;
  grid-template: "header" auto "main" 1fr "footer" auto / 100%;
  width: 100%;
  min-height: 100vh;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
}

.header {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  grid-area: header;
}

.footer {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: footer;
}

.main {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: main;
  position: relative;
  width: 100%;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
  z-index: 2;
}

body:not(.ordermade):not(.flow) .main {
  overflow: hidden;
}

.home .main {
  padding-left: 7rem;
  padding-right: 7rem;
}

.wrap-1column {
  display: flex;
  justify-content: center;
}

.wrap-2column {
  display: flex;
  flex-flow: row-reverse nowrap;
  justify-content: space-between;
}

.main-column {
  width: var(--width-main-column);
}

.sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  width: var(--width-side-column);
}

body:not(.index) .wrap {
  padding: 40px 0 0;
}

.inner {
  padding: 0 140px;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.flexCenter {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
}

.flexLeft {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.flexRight {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.fullWidth {
  width: 100%;
  min-width: var(--width-base);
}

.contents {
  margin-left: auto;
  margin-right: auto;
  width: var(--width-base);
}

.content {
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--padding-base);
  padding-right: var(--padding-base);
  max-width: calc(var(--width-base) + var(--padding-base) * 2);
}

.content--page {
  padding-top: 10rem;
  padding-bottom: 30rem;
}

.content__inner {
  padding-left: 80px;
  padding-right: 80px;
}

.content__inner--160 {
  padding-left: 160px;
  padding-right: 160px;
}

.content__inner--240 {
  padding-left: 240px;
  padding-right: 240px;
}

.content__inner--320 {
  padding-left: 320px;
  padding-right: 320px;
}

.container {
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--padding-base);
  padding-right: var(--padding-base);
  max-width: calc(var(--width-base) + var(--padding-base) * 2);
}

.section {
  padding-top: 100px;
  padding-bottom: 100px;
}

.section__inner {
  padding-left: 80px;
  padding-right: 80px;
}

.alignfull {
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 2.5rem 7rem;
  z-index: 9999;
  transition: background-color .5s;
}

[data-header-active] .header {
  background-color: rgba(255, 255, 255, 0.75);
}

.header__contact {
  display: block;
  width: 24rem;
  font-family: var(--font-mincho);
  line-height: 2;
  text-align: center;
  border: 1px solid var(--color-black);
  transition: color 0.5s, background-color 0.5s, background-color 0.5s;
}

.home .header__contact,
.archive-voice .header__contact,
.page-template-default .header__contact {
  color: var(--color-white);
  border: 1px solid var(--color-white);
}

.header__contact.is-active {
  border: 1px solid var(--color-black) !important;
}

.header__contact.is-active .cls-2 {
  stroke: var(--color-black) !important;
}

[data-header-active] .header__contact {
  color: var(--color-black) !important;
  border: 1px solid var(--color-black) !important;
}

.header__contact svg {
  display: none;
}

body:not(.home):not(.archive-voice):not(.page-template-default) .header__contact svg .cls-2 {
  stroke: var(--color-black);
}

[data-header-active] .header__contact svg .cls-2 {
  stroke: var(--color-black) !important;
}

.header__contact:hover {
  color: var(--color-black);
  background-color: var(--color-white);
  border: 1px solid var(--color-white);
}

.home .header__contact:hover,
.archive-voice .header__contact:hover,
.page-template-default .header__contact:hover {
  color: var(--color-black);
}

.header__contact:hover svg .cls-2 {
  stroke: var(--color-black);
}

.menu-header-container {
  position: relative;
  z-index: 3;
}

.menu-header-container > .menu > li:last-child {
  display: none;
}

.menu-header-container .menu {
  position: relative;
  display: flex;
  align-items: center;
  gap: 2rem;
  font-size: 1.6rem;
}

.menu-header-container .menu a {
  color: var(--color-main);
  transition: color 1s;
}

.menu-header-container .menu-item:hover > .megamenu {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.menu-cta-container {
  position: relative;
  z-index: 2;
}

.menu-cta-container .menu {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1em;
  font-size: 1.5rem;
  font-family: var(--font-mincho);
}

.menu-cta-container a {
  display: block;
  padding: 0.125em 1em;
  font-weight: 500;
  color: var(--color-black);
  line-height: 1.5;
  border: 1px solid var(--color-black);
  transition: color 0.5s, background-color 0.5s;
}

.menu-cta-container a:hover {
  color: var(--color-white);
  background-color: var(--color-black);
}

.footer {
  position: relative;
  z-index: 1;
}

body.page-template-default:not(.home) .footer {
  margin-top: -11rem;
  z-index: 3;
}

.footer__banner {
  overflow: hidden;
  position: relative;
  margin-bottom: 10rem;
  z-index: 3;
}

.footer__banner__scroll {
  height: 90px;
}

.footer__banner__bg {
  width: 100%;
  height: auto;
}

.footer__top {
  position: relative;
  padding-left: 7rem;
  padding-right: 7rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
  z-index: 3;
}

.footer__recruit {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2em;
  padding-top: 10rem;
  padding-bottom: 20rem;
  text-align: center;
  border-bottom: 1px solid var(--color-black);
}

.footer__recruit p {
  line-height: calc( 34 / 16);
}

.footer__cta {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: end;
  padding-top: 12rem;
  padding-bottom: 5rem;
}

.footer__cta .container {
  display: flex;
  align-items: flex-end;
  height: 100%;
}

.footer__wrap--top {
  height: 65rem;
  z-index: 2;
}

.footer__wrap--common {
  padding-top: 5em;
  height: 31rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/footer-bg.jpg) no-repeat center center/cover;
}

.footer__inner {
  position: relative;
  left: 0;
  top: 7rem;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  gap: 1em;
  padding-left: 7rem;
  padding-right: 7rem;
  width: 100%;
  color: var(--color-white);
  z-index: 3;
}

.footer__logo {
  display: block;
  margin-bottom: 2em;
  width: 13.8rem;
}

.footer__logo__img {
  width: 100%;
  height: auto;
}

.footer__text {
  padding-left: .1em;
  font-size: 1.6rem;
  line-height: calc( 46 /16);
  text-align: center;
  letter-spacing: .1em;
}

.footer__copyright {
  font-size: 1.2rem;
  font-family: var(--font-mincho);
}

.footer__copyright a {
  color: var(--color-white);
}

.banner-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7rem;
  margin-top: -15.9rem;
}

.banner-list__item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: var(--color-white);
}

.banner-list__link {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 2.5rem;
  width: 38rem;
  height: 31.8rem;
}

.banner-list__link::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--color-black);
  opacity: 0;
  transition: opacity .5s;
}

.banner-list__link:hover::before {
  opacity: .25;
}

.banner-list__link:hover .btn::after {
  -webkit-transform: translateX(1em);
  transform: translateX(1em);
}

.banner-list__title {
  width: 100%;
  font-size: 2.4rem;
  font-family: var(--font-mincho);
  letter-spacing: .1em;
}

.banner-list__title::after {
  content: attr(data-english);
  display: block;
  margin-top: 1em;
  font-size: calc(14 / 24 * 100%);
  letter-spacing: .075em;
}

.banner-list__img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  aspect-ratio: 320 / 150;
}

.footer-slide {
  position: fixed;
  left: 0;
  bottom: 0;
  display: none;
  overflow: hidden;
  white-space: nowrap;
  z-index: 1;
}

.footer-slide::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #404040;
  opacity: .3;
  z-index: 2;
}

.footer.is-active .footer-slide {
  display: flex;
}

.footer-slide-track {
  position: relative;
  display: flex;
  z-index: 1;
  -webkit-animation: scroll 120s linear infinite;
  animation: scroll 120s linear infinite;
}

@-webkit-keyframes scroll {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@keyframes scroll {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.cta-wrap {
  display: flex;
  gap: 0 12rem;
  margin-top: auto;
}

.cta-box {
  line-height: 1.75;
}

.drawer .cta-box {
  margin-bottom: 1.5em;
  font-size: 0.9375vw;
}

.cta-box__head {
  margin-bottom: .25em;
  font-size: calc(20 / 18 * 100%);
  font-family: var(--font-mincho);
}

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

.cta-box__address {
  font-size: calc(16 / 18 * 100%);
}

.cta-box__tel::before {
  content: "Tel";
  display: inline-block;
  width: 3em;
}

.cta-box__mail::before {
  content: "Mail";
  display: inline-block;
  width: 3em;
}

.cta-box__link {
  display: flex;
  margin-top: 1.5em;
}

.footer__cta .cta-box__link a {
  margin-left: 0;
  margin-right: auto;
}

.menu-sns-container .menu {
  display: flex;
  gap: 2.5em;
}

.drawer .menu-sns-container .menu {
  gap: 1em;
}

.menu-sns-container .menu-item:nth-child(1) a::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/logo-instagram.svg) no-repeat center center/contain;
}

.menu-sns-container .menu-item:nth-child(2) a::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/logo-facebook.svg) no-repeat center center/contain;
}

.menu-sns-container .menu-item:nth-child(3) a::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/logo-line.svg) no-repeat center center/contain;
}

.menu-sns-container a {
  display: block;
  font-size: 1.6rem;
  font-family: var(--font-mincho);
}

.drawer .menu-sns-container a {
  width: 2rem;
  height: 2rem;
  color: transparent;
}

.menu-sns-container a::before {
  content: "";
  display: inline-block;
  margin-right: .5em;
  width: 2rem;
  height: 2rem;
  vertical-align: -25%;
}

.breadcrumbs {
  display: flex;
  justify-content: flex-end;
  font-size: 1.6rem;
  font-family: var(--font-mincho);
  line-height: 1.5;
}

.page-main .breadcrumbs {
  margin-bottom: 2em;
}

.breadcrumbs a,
.breadcrumbs span {
  color: var(--color-white);
}

.page-header .breadcrumbs a, .page-header
.breadcrumbs span {
  color: var(--color-black);
}

.form {
  /* プレースホルダー */
  /* 入力欄 */
  /* 入力欄 */
  /* 日付 */
  /* 数値 */
  /* スピンボタン非表示*/
  /* レンジ */
  /* カラーピッカー */
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="search"],
.form input[type="url"],
.form input[type="password"],
.form input[type="datetime"],
.form input[type="date"],
.form input[type="month"],
.form input[type="week"],
.form input[type="time"],
.form input[type="datetime-local"],
.form input[type="number"],
.form input[type="range"],
.form input[type="color"],
.form input[type="submit"],
.form input[type="button"],
.form input[type="image"],
.form select,
.form button,
.form textarea,
.form progress {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  font-family: var(--font-gothic);
}

.form ::-webkit-input-placeholder {
  color: #000;
  opacity: 0.3;
}

.form ::-moz-placeholder {
  color: #000;
  opacity: 0.3;
}

.form :-ms-input-placeholder {
  color: #000;
  opacity: 0.3;
}

.form ::-ms-input-placeholder {
  color: #000;
  opacity: 0.3;
}

.form ::placeholder {
  color: #000;
  opacity: 0.3;
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="search"],
.form input[type="url"],
.form input[type="password"],
.form input[type="datetime"],
.form input[type="date"],
.form input[type="month"],
.form input[type="week"],
.form input[type="time"],
.form input[type="datetime-local"],
.form input[type="number"],
.form input[type="range"] {
  padding: 0.4em 1em;
  width: 100%;
  color: #333;
  border: 1px solid #ccc;
}

.form input[type="text"],
.form input[type="email"],
.form input[type="tel"],
.form input[type="search"],
.form input[type="url"],
.form input[type="password"],
.form textarea {
  background: #fff;
  font-size: 16px;
}

.form input[type="datetime"],
.form input[type="date"],
.form input[type="month"],
.form input[type="week"],
.form input[type="time"],
.form input[type="datetime-local"] {
  font-size: 16px;
}

.form input[type="number"]::-webkit-outer-spin-button,
.form input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.form input[type="number"] {
  -moz-appearance: textfield;
}

.form select {
  margin-right: 0.05em;
  padding: 0.75em 2em 0.75em 1em;
  width: 100%;
  font-size: 16px;
  background: #fff url(../images/icon-tri.png) no-repeat right 0.5em center;
  border: 1px solid #ccc;
}

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

.form textarea {
  overflow: hidden;
  /* ieでスクロールバー非表示 */
  padding: 0.5em 1em;
  width: 100%;
  height: 300px;
  border: 1px solid #ccc;
}

.form input[type="submit"],
.form input[type="button"],
.form button {
  cursor: pointer;
}

.main-visual {
  position: relative;
  display: flex;
  justify-content: center;
  width: 100%;
}

.nav-common {
  position: absolute;
  right: 0;
  top: 200px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.home .nav-common {
  position: relative;
  top: 0;
  display: flex;
  justify-content: flex-end;
}

.nav-common .menu {
  position: relative;
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-end;
  gap: 2em;
  font-size: 1.8rem;
  z-index: 1;
}

.nav-common .menu > .menu-item {
  width: 100%;
}

.nav-common .menu > .menu-item > a {
  display: block;
  font-weight: bold;
  color: var(--color-white);
  text-align: right;
  line-height: 1.5;
}

.white .nav-common .menu > .menu-item > a {
  color: var(--color-white);
}

.black .nav-common .menu > .menu-item > a {
  color: var(--color-black);
}

.home .nav-common .menu > .menu-item > a {
  color: var(--color-black);
}

.nav-common .menu > .menu-item > a::before {
  content: ">> ";
}

.nav-common .menu-item-has-children {
  position: relative;
}

.nav-common .menu-item-has-children:hover > .sub-menu {
  display: block;
}

.nav-common .sub-menu {
  display: none;
  position: absolute;
  right: 0;
  top: 1.5em;
  font-size: 1.8rem;
  background-color: var(--color-gray2);
  border: 1px solid var(--color-white);
  z-index: 2;
}

.nav-common .sub-menu > .menu-item:not(:last-child) {
  border-bottom: 1px solid var(--color-white);
}

.nav-common .sub-menu > .menu-item > a {
  display: block;
  padding: 0.5em;
  font-weight: 500;
  color: var(--color-white);
  text-align: center;
  white-space: nowrap;
}

.nav-common .sub-menu > .menu-item > a:hover {
  text-decoration: none;
  background-color: rgba(var(--color-main-rgb), 0.4);
}

.jhs-site .nav-common .sub-menu > .menu-item > a:hover {
  background-color: rgba(var(--color-jhs-rgb), 0.4);
}

.vecc-site .nav-common .sub-menu > .menu-item > a:hover {
  background-color: rgba(var(--color-vecc-rgb), 0.4);
}

.nav-input {
  display: none;
}

#nav-drawer {
  position: relative;
}

.nav-unshown {
  display: none;
}

.drawer-btn {
  position: fixed;
  display: block;
  top: 1rem;
  right: 7rem;
  width: 7rem;
  height: 7rem;
  z-index: 9999;
  cursor: pointer;
}

.drawer-btn__line {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 3.4%;
  background-color: var(--color-black);
  -webkit-transform-origin: center right;
  transform-origin: center right;
  transition: opacity .5s, -webkit-transform .5s;
  transition: transform .5s, opacity .5s;
  transition: transform .5s, opacity .5s, -webkit-transform .5s;
}

.home .drawer-btn__line,
.archive-voice .drawer-btn__line,
.page-template-default .drawer-btn__line {
  background-color: var(--color-white);
}

.nav-input:checked ~ .drawer-btn .drawer-btn__line {
  background-color: var(--color-black);
  -webkit-transform-origin: center;
  transform-origin: center;
}

[data-header-active] .drawer-btn__line {
  background-color: var(--color-black) !important;
}

.drawer-btn__line--1 {
  -webkit-transform: translateY(-13px) scale(calc( 50 / 90));
  transform: translateY(-13px) scale(calc( 50 / 90));
}

.nav-input:checked ~ .drawer-btn .drawer-btn__line--1 {
  -webkit-transform: translateY(0) rotate(30deg);
  transform: translateY(0) rotate(30deg);
}

.drawer-btn__line--2 {
  -webkit-transform: translateY(0) scale(calc( 70 / 90));
  transform: translateY(0) scale(calc( 70 / 90));
}

.nav-input:checked ~ .drawer-btn .drawer-btn__line--2 {
  opacity: 0;
}

.drawer-btn__line--3 {
  -webkit-transform: translateY(13px);
  transform: translateY(13px);
}

.nav-input:checked ~ .drawer-btn .drawer-btn__line--3 {
  -webkit-transform: translateY(0) rotate(-30deg);
  transform: translateY(0) rotate(-30deg);
}

.nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9998;
  display: flex;
  width: 100%;
  max-width: 100%;
  height: 100vh;
  background: var(--color-white);
  transition: opacity 0.3s ease-in-out;
  /* 右からフェイドインしながら開く */
  /* 右からフェイドインしながら開く */
  /* 左からフェイドインしながら開く */
  /* 右上から円形に広がりながら開く */
  /* 左上から円形に広がりながら開く */
}

.nav-content::before {
  content: "";
  display: block;
  width: calc( 498 / 1920 * 100%);
  height: 100%;
  background: url(https://sub42.rabona.click/wp-content/uploads/drawer-bg.jpg) repeat center center/cover;
  transition: width 1s;
}

.nav-content[data-open="fadeIn"] {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease-in-out;
}

.nav-input:checked ~ .nav-content[data-open="fadeIn"] {
  opacity: 1;
  pointer-events: auto;
}

.nav-content[data-open="fadeInRight"] {
  -webkit-transform: translateX(105%);
  transform: translateX(105%);
  opacity: 0;
}

.nav-input:checked ~ .nav-content[data-open="fadeInRight"] {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  opacity: 1;
}

.nav-content[data-open="fadeInLeft"] {
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
  opacity: 0;
}

.nav-input:checked ~ .nav-content[data-open="fadeInLeft"] {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
}

.nav-content[data-open="circleInRight"] {
  -webkit-clip-path: circle(0 at 100% 0);
  clip-path: circle(0 at 100% 0);
  transition: -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s, -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
}

.nav-input:checked ~ .nav-content[data-open="circleInRight"] {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-clip-path: circle(1100px at 100% 0);
  clip-path: circle(1100px at 100% 0);
  transition: -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s, -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
}

.nav-content[data-open="circleInLeft"] {
  -webkit-clip-path: circle(0 at 0 0);
  clip-path: circle(0 at 0 0);
  transition: -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s, -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
}

.nav-input:checked ~ .nav-content[data-open="circleInLeft"] {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-clip-path: circle(1100px at 0 0);
  clip-path: circle(1100px at 0 0);
  transition: -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
  transition: clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s, -webkit-clip-path 0.8s cubic-bezier(0.645, 0.045, 0.355, 1) 0s, -webkit-transform 0s cubic-bezier(0.645, 0.045, 0.355, 1) 0.8s;
}

.drawer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 11.45833vw 5.72917vw 3.64583vw 5.72917vw;
  width: calc( (1920 - 498) / 1920 * 100%);
  opacity: 0;
  transition-delay: 0.6s;
  transition-duration: 1s;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.18, 0.06, 0.23, 1);
}

.nav-input:checked ~ .nav-content .drawer {
  opacity: 1;
}

.drawer__home {
  display: inline-block;
  margin-bottom: 4em;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: var(--font-mincho);
  color: var(--color-black);
  line-height: 2;
  letter-spacing: 0.025em;
}

.drawer__info {
  margin-bottom: 4rem;
  font-size: 1.4rem;
  color: var(--color-black);
  line-height: 1.5;
}

.drawer__logo {
  margin-bottom: 4rem;
  width: 18rem;
  height: auto;
}

.drawer__footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1em;
  width: 100%;
  border-top: 1px solid var(--color-black);
}

.menu-drawer-container {
  margin-bottom: 10rem;
}

.menu-drawer-container .menu {
  display: flex;
  gap: 3em;
  font-size: 2.4rem;
  font-weight: 500;
  font-family: var(--font-mincho);
  line-height: 2;
}

.menu-drawer-container .menu > .menu-item > a {
  pointer-events: none;
  white-space: nowrap;
}

.menu-drawer-container .menu > .menu-item > .sub-menu {
  pointer-events: default;
}

.menu-drawer-container .sub-menu {
  padding: 1em 1.5em 0 0;
  font-size: calc(16 / 24 * 100%);
  font-family: var(--font-gothic);
}

.menu-drawer-container .sub-menu > .menu-item {
  margin-top: .5em;
}

.menu-drawer-container .sub-menu > .menu-item > a {
  display: block;
  white-space: nowrap;
}

.menu-drawer-container .sub-menu > .menu-item > a:hover {
  opacity: 0.7;
}

/*
#overview
トップに戻る
*/
/*
#styleguide
トップに戻る

```
<div>
<a id="js-pagetop" class="pagetop" href="#top">
	<span></span>
</a>
</div>
```
*/
.pagetop {
  position: fixed;
  right: 20px;
  bottom: 120px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 80px;
  height: 80px;
  text-align: center;
  z-index: 5;
  color: var(--color-gray);
  background-color: var(--color-white);
  transition: opacity 0.5s, -webkit-transform 0.25s;
  transition: transform 0.25s, opacity 0.5s;
  transition: transform 0.25s, opacity 0.5s, -webkit-transform 0.25s;
  -webkit-transform-origin: center;
  transform-origin: center;
  opacity: 0.5;
}

.pagetop:hover {
  opacity: 1;
}

.pagetop[data-shape="circle"] {
  border-radius: 50%;
}

.pagetop[data-stroke="true"] {
  border: 5px solid var(--color-gray);
}

.pagetop:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 30%;
  bottom: auto;
  display: block;
  margin: auto;
  width: 30%;
  height: 30%;
  border-left: 3px solid var(--color-gray);
  border-bottom: 3px solid var(--color-gray);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.pagetop::after {
  content: attr(data-text);
  margin-bottom: 0.75em;
  color: var(--color-gray);
}

.pagetop[data-active="fadeIn"] {
  opacity: 0;
}

.pagetop[data-active="fadeIn"].active {
  opacity: 0.5;
}

.pagetop[data-active="zoomIn"] {
  -webkit-transform: scale(0, 0);
  transform: scale(0, 0);
}

.pagetop[data-active="zoomIn"].active {
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.pagetop[data-active="slideInRight"] {
  -webkit-transform: translateX(110%);
  transform: translateX(110%);
}

.pagetop[data-active="slideInRight"].active {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.pagetop[data-active="slideInUp"] {
  -webkit-transform: translateY(110%);
  transform: translateY(110%);
}

.pagetop[data-active="slideInUp"].active {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.pagetop[data-active="slideInCorner"] {
  -webkit-transform: translate(200%, 200%);
  transform: translate(200%, 200%);
}

.pagetop[data-active="slideInCorner"].active {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.list-num-period {
  counter-reset: cnt;
}

.list-num-period > li {
  list-style-position: inside;
  counter-increment: cnt;
  padding-left: 1.6em;
  text-indent: -0.6em;
}

.list-num-period > li:before {
  content: counter(cnt) ".";
  margin-right: 0.5em;
}

.list-num-period .list-num-period {
  margin: 1em;
}

.list-num-period .list-num-period .list-num-period {
  margin: 1em;
}

.list-num-brackets > li {
  margin-left: 2em;
  text-indent: -1em;
  list-style-position: inside;
  counter-increment: cnt;
}

.list-num-brackets > li:before {
  content: counter(cnt) ")";
  margin-right: 0.5em;
}

.list-caution > li {
  margin-left: 1em;
  text-indent: -1em;
}

.list-caution > li:before {
  content: "※";
}

.list-circle > li {
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.list-circle > li:before {
  content: "●";
  margin-right: 0.5em;
}

.list-circle-border > li {
  margin-left: 1em;
  text-indent: -1em;
}

.list-circle-border > li:before {
  content: "○";
}

.list-dot > li {
  margin-left: 1em;
  text-indent: -1em;
}

.list-dot > li:before {
  content: "・";
}

.list-item {
  display: flex;
  flex-flow: row wrap;
}

.list-item li:not(:last-child):after {
  content: "　";
  margin: 0 0.25em;
}

.list-dia > li {
  margin-left: 1.5em;
  text-indent: -1.5em;
}

.list-dia > li:before {
  content: "◆";
  margin-right: 0.5em;
}

[data-css-list] > li {
  margin-left: 1em;
  text-indent: -1em;
}

[data-css-list="・"] > li:before {
  content: "・";
}

[data-css-list="●"] > li:before {
  content: "●";
}

[data-css-list="◯"] > li:before {
  content: "◯";
}

[data-css-list="◆"] > li:before {
  content: "◆";
}

[data-css-list="※"] > li:before {
  content: "※";
}

[data-css-list="★"] > li:before {
  content: "★";
}

[data-css-list="num-round"] > li:nth-child(1)::before {
  content: "①";
}

[data-css-list="num-round"] > li:nth-child(2)::before {
  content: "②";
}

[data-css-list="num-round"] > li:nth-child(3)::before {
  content: "③";
}

[data-css-list="num-round"] > li:nth-child(4)::before {
  content: "④";
}

[data-css-list="num-round"] > li:nth-child(5)::before {
  content: "⑤";
}

[data-css-list="num-round"] > li:nth-child(6)::before {
  content: "⑥";
}

[data-css-list="num-round"] > li:nth-child(7)::before {
  content: "⑦";
}

[data-css-list="num-round"] > li:nth-child(8)::before {
  content: "⑧";
}

[data-css-list="num-round"] > li:nth-child(9)::before {
  content: "⑨";
}

[data-css-list="num-round"] > li:nth-child(10)::before {
  content: "⑩";
}

[data-css-list="num-round"] > li:nth-child(11)::before {
  content: "⑪";
}

[data-css-list="num-round"] > li:nth-child(12)::before {
  content: "⑫";
}

[data-css-list="num-round"] > li:nth-child(13)::before {
  content: "⑬";
}

[data-css-list="num-round"] > li:nth-child(14)::before {
  content: "⑭";
}

[data-css-list="num-round"] > li:nth-child(15)::before {
  content: "⑮";
}

[data-css-list="num-round"] > li:nth-child(16)::before {
  content: "⑯";
}

[data-css-list="num-round"] > li:nth-child(17)::before {
  content: "⑰";
}

[data-css-list="num-round"] > li:nth-child(18)::before {
  content: "⑱";
}

[data-css-list="num-round"] > li:nth-child(19)::before {
  content: "⑲";
}

[data-css-list="num-round"] > li:nth-child(20)::before {
  content: "⑳";
}

[data-css-list="num-round-black"] > li:nth-child(1)::before {
  content: "❶";
}

[data-css-list="num-round-black"] > li:nth-child(2)::before {
  content: "❷";
}

[data-css-list="num-round-black"] > li:nth-child(3)::before {
  content: "❸";
}

[data-css-list="num-round-black"] > li:nth-child(4)::before {
  content: "❹";
}

[data-css-list="num-round-black"] > li:nth-child(5)::before {
  content: "❺";
}

[data-css-list="num-round-black"] > li:nth-child(6)::before {
  content: "❻";
}

[data-css-list="num-round-black"] > li:nth-child(7)::before {
  content: "❼";
}

[data-css-list="num-round-black"] > li:nth-child(8)::before {
  content: "❽";
}

[data-css-list="num-round-black"] > li:nth-child(9)::before {
  content: "❾";
}

[data-css-list="num-round-black"] > li:nth-child(10)::before {
  content: "❿";
}

[data-css-list="num-round-black"] > li:nth-child(11)::before {
  content: "⓫";
}

[data-css-list="num-round-black"] > li:nth-child(12)::before {
  content: "⓬";
}

[data-css-list="num-round-black"] > li:nth-child(13)::before {
  content: "⓭";
}

[data-css-list="num-round-black"] > li:nth-child(14)::before {
  content: "⓮";
}

[data-css-list="num-round-black"] > li:nth-child(15)::before {
  content: "⓯";
}

[data-css-list="num-round-black"] > li:nth-child(16)::before {
  content: "⓰";
}

[data-css-list="num-round-black"] > li:nth-child(17)::before {
  content: "⓱";
}

[data-css-list="num-round-black"] > li:nth-child(18)::before {
  content: "⓲";
}

[data-css-list="num-round-black"] > li:nth-child(19)::before {
  content: "⓳";
}

[data-css-list="num-round-black"] > li:nth-child(20)::before {
  content: "⓴";
}

[data-css-list="alphabet-l"] > li:nth-child(1)::before {
  content: "A";
}

[data-css-list="alphabet-l"] > li:nth-child(2)::before {
  content: "B";
}

[data-css-list="alphabet-l"] > li:nth-child(3)::before {
  content: "C";
}

[data-css-list="alphabet-l"] > li:nth-child(4)::before {
  content: "D";
}

[data-css-list="alphabet-l"] > li:nth-child(5)::before {
  content: "E";
}

[data-css-list="alphabet-l"] > li:nth-child(6)::before {
  content: "F";
}

[data-css-list="alphabet-l"] > li:nth-child(7)::before {
  content: "G";
}

[data-css-list="alphabet-l"] > li:nth-child(8)::before {
  content: "H";
}

[data-css-list="alphabet-l"] > li:nth-child(9)::before {
  content: "I";
}

[data-css-list="alphabet-l"] > li:nth-child(10)::before {
  content: "J";
}

[data-css-list="alphabet-l"] > li:nth-child(11)::before {
  content: "K";
}

[data-css-list="alphabet-l"] > li:nth-child(12)::before {
  content: "L";
}

[data-css-list="alphabet-l"] > li:nth-child(13)::before {
  content: "M";
}

[data-css-list="alphabet-l"] > li:nth-child(14)::before {
  content: "N";
}

[data-css-list="alphabet-l"] > li:nth-child(15)::before {
  content: "O";
}

[data-css-list="alphabet-l"] > li:nth-child(16)::before {
  content: "P";
}

[data-css-list="alphabet-l"] > li:nth-child(17)::before {
  content: "Q";
}

[data-css-list="alphabet-l"] > li:nth-child(18)::before {
  content: "R";
}

[data-css-list="alphabet-l"] > li:nth-child(19)::before {
  content: "S";
}

[data-css-list="alphabet-l"] > li:nth-child(20)::before {
  content: "T";
}

[data-css-list="alphabet-l"] > li:nth-child(21)::before {
  content: "U";
}

[data-css-list="alphabet-l"] > li:nth-child(22)::before {
  content: "V";
}

[data-css-list="alphabet-l"] > li:nth-child(23)::before {
  content: "W";
}

[data-css-list="alphabet-l"] > li:nth-child(24)::before {
  content: "X";
}

[data-css-list="alphabet-l"] > li:nth-child(25)::before {
  content: "Y";
}

[data-css-list="alphabet-l"] > li:nth-child(26)::before {
  content: "Z";
}

[data-css-list="alphabet-s"] > li {
  margin-left: 2em;
  text-indent: -2em;
}

[data-css-list="alphabet-s"] > li::before {
  margin-right: 2em;
}

[data-css-list="alphabet-s"] > li:nth-child(1)::before {
  content: "a" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(2)::before {
  content: "b" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(3)::before {
  content: "c" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(4)::before {
  content: "d" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(5)::before {
  content: "e" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(6)::before {
  content: "f" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(7)::before {
  content: "g" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(8)::before {
  content: "h" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(9)::before {
  content: "i" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(10)::before {
  content: "j" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(11)::before {
  content: "k" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(12)::before {
  content: "l" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(13)::before {
  content: "m" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(14)::before {
  content: "n" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(15)::before {
  content: "o" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(16)::before {
  content: "p" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(17)::before {
  content: "q" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(18)::before {
  content: "r" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(19)::before {
  content: "s" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(20)::before {
  content: "t" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(21)::before {
  content: "u" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(22)::before {
  content: "v" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(23)::before {
  content: "w" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(24)::before {
  content: "x" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(25)::before {
  content: "y" ".";
}

[data-css-list="alphabet-s"] > li:nth-child(26)::before {
  content: "z" ".";
}

[data-mark] {
  margin-left: 1em;
  text-indent: -1em;
}

[data-mark]::before {
  content: attr(data-mark);
}

.nav-link {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: 40px;
  margin-top: 3em;
  width: 100%;
}

.nav-link--right {
  justify-content: flex-end;
}

.nav-link--center {
  justify-content: center;
}

.nav-link__item {
  font-size: 1.7rem;
}

.nav-link__item--prev {
  order: 1;
}

.nav-link__item--next {
  order: 3;
}

.nav-link__item--archive {
  order: 2;
}

.nav-link__link {
  display: inline-block;
  padding-bottom: 1em;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  color: var(--color-blue);
  border-bottom: 3px solid var(--color-blue);
  transition: color 0.25s, border 0.25s;
}

.nav-link__link:hover {
  opacity: 0.7;
}

.nav-link__link::before, .nav-link__link::after {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -10%;
}

.nav-link__link--prev::before {
  content: "";
  margin-right: 1em;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.nav-link__link--next::after {
  content: "";
  margin-left: 1em;
}

.nav-link__link--archive::after {
  content: "●";
  margin-left: 0.5em;
  color: var(--color-gray);
  vertical-align: -5%;
}

/*
#overview
ページ送り
*/
/*
#styleguide
ページ送り

```
<ol class="pagination">
	<li>
		<a class="pager prev" href="">prev</a>
	</li>
	<li>
		<a class="pager" href="">1</a>
	</li>
	<li>
		<a class="pager" href="">2</a>
	</li>
	<li>
		<a class="pager current" href="">3</a>
	</li>
	<li>
		<a class="pager" href="">4</a>
	</li>
	<li>
		<a class="pager" href="">5</a>
	</li>
	<li>
		<a class="pager next" href="">next</a>
	</li>
</ol>
```
*/
.pagination {
  display: flex;
  justify-content: center;
}

.pagination__inner {
  position: relative;
  display: flex;
  align-items: center;
}

.pagination__item {
  margin: 0 0.5em;
  font-size: 1.8rem;
}

.pagination__link {
  display: inline-block;
  min-width: 32px;
  height: 1.5em;
  line-height: 1.5;
  font-size: 1.8rem;
  text-align: center;
  transition: color 0.25s, border 0.25s;
}

.pagination__link:hover, .pagination__link--current {
  font-weight: bold;
}

.pagination__link--first, .pagination__link--last, .pagination__link--prev, .pagination__link--next {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination__link--first:before, .pagination__link--first:after, .pagination__link--last:before, .pagination__link--last:after, .pagination__link--prev:before, .pagination__link--prev:after, .pagination__link--next:before, .pagination__link--next:after {
  content: "";
  display: block;
  width: 0.35em;
  height: 0.35em;
  border-right: 2px solid var(--text-color);
  border-top: 2px solid var(--text-color);
  -webkit-transform-origin: center;
  transform-origin: center;
}

.pagination__link--first:before, .pagination__link--first:after {
  content: none;
}

.pagination__link--prev:before {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.pagination__link--prev:after {
  content: none;
}

.pagination__link--last:before, .pagination__link--last:after {
  content: none;
}

.pagination__link--next:before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pagination__link--next:after {
  content: none;
}

::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar:hover {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: var(--color-white);
  border-radius: 3px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}

::-webkit-scrollbar-track:hover {
  border-radius: 5px;
}

::-webkit-scrollbar-thumb {
  background: var(--color-main);
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}

::-webkit-scrollbar-thumb:hover {
  border-radius: 5px;
}

.breadcrumb::-webkit-scrollbar {
  width: 2px;
  height: 2px;
}

.horizontal-table--sm-scroll::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

[data-css-scroll]::-webkit-scrollbar {
  width: 20px;
  height: 20px;
}

[data-css-scroll]::-webkit-scrollbar-track {
  margin: 1px;
  background: var(--color-white);
  border-radius: 10px;
  outline: 1px solid var(--color-black);
}

[data-css-scroll]::-webkit-scrollbar-thumb {
  width: 10px;
  height: 10px;
  background: var(--color-gray);
  border: 5px solid var(--color-white);
  border-radius: 10px;
}

[data-css-scroll]::-webkit-scrollbar:vertical {
  display: none;
}

/*
#overview
ボタン
*/
a[href^="tel:"] {
  pointer-events: none;
}

a[href^="tel:"]:hover, a[href^="tel:"]:focus {
  pointer-events: none;
}

.btn-common,
submit.btn-common {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  width: 25rem;
  height: 6rem;
  font-size: 2rem;
  color: var(--color-white);
  background: var(--color-navy2);
  border-radius: 3rem;
  transition: opacity 0.5s;
}

.btn-common:hover, .btn-common:focus,
submit.btn-common:hover,
submit.btn-common:focus {
  opacity: 0.7;
}

.btn-archive {
  display: flex;
  justify-content: center;
}

* + .btn-archive {
  margin-top: 5em;
}

.btn-archive__link {
  display: block;
  padding: 0.5em 1.5em;
  color: var(--color-black);
  outline: 2px solid var(--color-black);
}

.btn-archive__link:hover::after {
  -webkit-transform: translateX(0.5em);
  transform: translateX(0.5em);
}

.btn-archive__link::after {
  content: ">";
  display: inline-block;
  margin-left: 1em;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}

.page-head-wrap {
  margin-top: auto;
  margin-bottom: auto;
}

.page-head-wrap--a {
  margin-bottom: -22rem;
}

.page-head {
  font-size: 4.8rem;
  font-family: var(--font-mincho);
  color: var(--color-white);
  line-height: 1.5;
  letter-spacing: 0.025em;
}

.page-header .page-head {
  color: var(--color-black);
}

.page-head::after {
  content: attr(data-english);
  display: block;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0.025em;
}

.page-header {
  padding-top: 23.3rem;
  padding-bottom: 9rem;
}

.drawer-nav {
  display: flex;
  flex-flow: column wrap;
  gap: 60px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: 420px;
}

.drawer-nav__item {
  width: 160px;
}

.drawer-nav__item--parent::before {
  margin-bottom: 0.5em;
}

.drawer-nav [href]::after {
  content: "";
}

.drawer-nav__link {
  display: block;
  font-size: 1.5rem;
  color: var(--color-blue);
  line-height: 2;
}

.drawer-nav__link:hover, .drawer-nav__link:focus {
  opacity: 0.7;
}

.drawer-nav__link--parent {
  position: relative;
  padding-bottom: 0.25em;
  font-size: 1.7rem;
  font-weight: bold;
  border-bottom: 2px solid var(--color-blue);
  letter-spacing: 0.1em;
}

.drawer-nav__link--parent::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0.35em;
  display: block;
  width: 22px;
  height: 22px;
}

.drawer-nav__link--children {
  font-size: 1.5rem;
  letter-spacing: 0.025em;
}

.drawer-nav__children {
  margin-top: 1em;
}

.js-fadeInUp {
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s;
  transition: opacity 1s, transform 1s, -webkit-transform 1s;
  opacity: 0;
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  transition-delay: 0.2s;
}

.js-fadeInUp.show {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.js-fadeIn {
  transition: opacity 2s;
  opacity: 0;
}

.js-fadeIn.show {
  opacity: 1;
}

.js-fadeInRight {
  transition: opacity 2s, -webkit-transform 2s;
  transition: opacity 2s, transform 2s;
  transition: opacity 2s, transform 2s, -webkit-transform 2s;
  opacity: 0;
  -webkit-transform: translateX(-100px);
  transform: translateX(-100px);
  transition-delay: 0.2s;
}

.js-fadeInRight.show {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.js-fadeInLeft {
  transition: opacity 2s, -webkit-transform 2s;
  transition: opacity 2s, transform 2s;
  transition: opacity 2s, transform 2s, -webkit-transform 2s;
  opacity: 0;
  -webkit-transform: translateX(100px);
  transform: translateX(100px);
  transition-delay: 0.2s;
}

.js-fadeInLeft.show {
  opacity: 1;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.horizontal-table__inner {
  width: 100%;
  line-height: 1.75;
  letter-spacing: 0.1em;
  border-top: 1px solid var(--color-navy2);
}

.horizontal-table__row {
  border-bottom: 1px solid var(--color-navy2);
}

.horizontal-table__head {
  padding: 1em 0;
  width: 220px;
}

.horizontal-table__text {
  padding: 1em 0;
  vertical-align: top;
  word-break: break-word;
}

.horizontal-table__placeholder {
  margin-top: 0.5em;
  font-size: 75%;
}

.confirm .horizontal-table__placeholder,
.entry-confirm .horizontal-table__placeholder {
  display: none;
}

.horizontal-table__placeholder:before {
  content: "例：";
}

.horizontal-table--contact .horizontal-table__head {
  padding: 1em 4em 0.75em 1em;
  width: 250px;
}

.horizontal-table--contact .horizontal-table__head:after {
  display: inline-block;
  padding: 0.25em 0.5em;
  font-size: 75%;
  color: var(--color-white);
  border-radius: 3px;
}

.horizontal-table--contact .horizontal-table__head--require, .horizontal-table--contact .horizontal-table__head--optional {
  position: relative;
}

.horizontal-table--contact .horizontal-table__head--require:after, .horizontal-table--contact .horizontal-table__head--optional:after {
  position: absolute;
  right: 1em;
  top: 1.5em;
}

.horizontal-table--contact .horizontal-table__head--require:after {
  content: "必須";
  background-color: var(--color-red);
}

.horizontal-table--contact .horizontal-table__head--optional:after {
  content: "任意";
  background-color: var(--color-main);
}

.vertical-table__inner {
  width: 100%;
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.vertical-table__row {
  border-bottom: 1px solid var(--color-navy2);
}

.vertical-table__head {
  display: list-item;
  padding: 1em 0;
  list-style: none;
}

.vertical-table__text {
  display: list-item;
  padding: 1em 0;
  vertical-align: top;
  list-style: none;
}

.vertical-table__job {
  font-size: 125%;
  font-weight: bold;
}

.vertical-table__placeholder {
  margin-top: 0.5em;
  font-size: 75%;
}

.confirm .vertical-table__placeholder,
.entry-confirm .vertical-table__placeholder {
  display: none;
}

.vertical-table__placeholder:before {
  content: "例：";
}

.vertical-table--contact .vertical-table__head {
  padding: 2em 0 0.75em 0;
}

.vertical-table--contact .vertical-table__head:after {
  display: inline-block;
  padding: 0.25em 0.75em;
  font-size: 75%;
  color: var(--color-main);
}

.vertical-table--contact .vertical-table__head--require, .vertical-table--contact .vertical-table__head--optional {
  position: relative;
}

.vertical-table--contact .vertical-table__head--require:after, .vertical-table--contact .vertical-table__head--optional:after {
  margin-left: 2em;
}

.vertical-table--contact .vertical-table__head--require:after {
  content: "必須";
  background-color: var(--color-sub);
}

.vertical-table--contact .vertical-table__head--optional:after {
  content: "任意";
  background-color: var(--color-gray2);
}

.vertical-table--contact .vertical-table__text {
  padding: .75em 0 2em 0;
}

/*　ふわっと　*/
[data-animation="fluffy"] {
  -webkit-animation: fluffy ease-in-out 2s infinite alternate;
  animation: fluffy ease-in-out 2s infinite alternate;
}

@-webkit-keyframes fluffy {
  0% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  100% {
    -webkit-transform: translate(0%, -30px);
    transform: translate(0%, -30px);
  }
}

@keyframes fluffy {
  0% {
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }
  100% {
    -webkit-transform: translate(0%, -30px);
    transform: translate(0%, -30px);
  }
}

/*　ジャンプ　*/
[data-animation="jump"] {
  -webkit-animation: jump 5s infinite;
  animation: jump 5s infinite;
}

@-webkit-keyframes jump {
  0% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  3% {
    -webkit-transform: translate(0, -20px);
    transform: translate(0, -20px);
  }
  5% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  6% {
    -webkit-transform: translate(0, -5px);
    transform: translate(0, -5px);
  }
  7% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  100% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
}

@keyframes jump {
  0% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  3% {
    -webkit-transform: translate(0, -20px);
    transform: translate(0, -20px);
  }
  5% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  6% {
    -webkit-transform: translate(0, -5px);
    transform: translate(0, -5px);
  }
  7% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
  100% {
    -webkit-transform: translate(0, 0px);
    transform: translate(0, 0px);
  }
}

/*　振り子　*/
[data-animation="pendulum"] {
  -webkit-transform-origin: top;
  transform-origin: top;
  -webkit-animation: pendulum ease-in-out 3s infinite alternate;
  animation: pendulum ease-in-out 3s infinite alternate;
}

@-webkit-keyframes pendulum {
  0% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
  100% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
}

@keyframes pendulum {
  0% {
    -webkit-transform: rotate(10deg);
    transform: rotate(10deg);
  }
  100% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
}

/*　バウンド　*/
[data-animation="bound"] {
  -webkit-animation: bound 0.6s alternate infinite;
  animation: bound 0.6s alternate infinite;
}

@-webkit-keyframes bound {
  0% {
    -webkit-transform: translate(0%, 0%) rotateX(25deg);
    transform: translate(0%, 0%) rotateX(25deg);
  }
  100% {
    -webkit-transform: translate(0%, -60px);
    transform: translate(0%, -60px);
  }
}

@keyframes bound {
  0% {
    -webkit-transform: translate(0%, 0%) rotateX(25deg);
    transform: translate(0%, 0%) rotateX(25deg);
  }
  100% {
    -webkit-transform: translate(0%, -60px);
    transform: translate(0%, -60px);
  }
}

/* --------------------------------------------------------------------- */
/* display / inline */
/* --------------------------------------------------------------------- */
.u-db-pc {
  display: block !important;
}

.u-db-sp {
  display: none !important;
}

.u-dib-pc {
  display: inline-block !important;
}

.u-dib-sp {
  display: none !important;
}

.u-di-pc {
  display: inline !important;
}

.u-di-sp {
  display: none !important;
}

/* --------------------------------------------------------------------- */
/* flexbox */
/* --------------------------------------------------------------------- */
/* base */
.u-fb {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.u-fb-l {
  display: flex;
  flex-wrap: wrap;
  justify-content: start;
  align-items: stretch;
}

/* justify-content */
.u-fb-jc-sb {
  justify-content: space-between;
}

.u-fb-jc-s {
  justify-content: start;
}

.u-fb-jc-c {
  justify-content: center;
}

.u-fb-jc-sa {
  justify-content: space-around;
}

.u-fb-jc-se {
  justify-content: space-evenly;
}

/* align-items */
.u-fb-ai-sh {
  align-items: stretch;
}

.u-fb-ai-c {
  align-items: center;
}

.u-fb-ai-s {
  align-items: start;
}

.u-fb-ai-e {
  align-items: end;
}

/* --------------------------------------------------------------------- */
/* ef */
/* --------------------------------------------------------------------- */
.u-anime-up {
  opacity: 0;
}

.u-anime-up.play {
  -webkit-animation: anime-up 0.6s forwards;
  animation: anime-up 0.6s forwards;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

@-webkit-keyframes anime-up {
  0% {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
  }
}

@keyframes anime-up {
  0% {
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
  }
}

.u-anime-down {
  opacity: 1;
}

.u-anime-down.play {
  -webkit-animation: anime-down 0.4s forwards;
  animation: anime-down 0.4s forwards;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

@-webkit-keyframes anime-down {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

@keyframes anime-down {
  0% {
    -webkit-transform: scale(1, 0);
    transform: scale(1, 0);
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

.u-anime-bound {
  opacity: 0;
}

.u-anime-bound.play {
  -webkit-animation: anime-bound 3s forwards;
  animation: anime-bound 3s forwards;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes anime-bound {
  0% {
    -webkit-transform: scale(0.8, 0.8);
    transform: scale(0.8, 0.8);
    opacity: 1;
  }
  5% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
    opacity: 1;
  }
  10% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
  15% {
    -webkit-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
    opacity: 1;
  }
  20% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
}

@keyframes anime-bound {
  0% {
    -webkit-transform: scale(0.8, 0.8);
    transform: scale(0.8, 0.8);
    opacity: 1;
  }
  5% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
    opacity: 1;
  }
  10% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
  15% {
    -webkit-transform: scale(1.1, 1.1);
    transform: scale(1.1, 1.1);
    opacity: 1;
  }
  20% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    opacity: 1;
  }
}

.u-anime-right {
  opacity: 0;
}

.u-anime-right.play {
  -webkit-animation: anime-right 0.6s forwards;
  animation: anime-right 0.6s forwards;
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}

@-webkit-keyframes anime-right {
  0% {
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes anime-right {
  0% {
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}

.u-anime-left {
  opacity: 0;
}

.u-anime-left.play {
  -webkit-animation: anime-left 0.6s forwards;
  animation: anime-left 0.6s forwards;
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}

@-webkit-keyframes anime-left {
  0% {
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes anime-left {
  0% {
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
    opacity: 1;
  }
}

.u-anime-zoom {
  opacity: 0;
}

.u-anime-zoom.play {
  -webkit-animation: anime-zoom 1.4s forwards;
  animation: anime-zoom 1.4s forwards;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes anime-zoom {
  0% {
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}

@keyframes anime-zoom {
  0% {
    -webkit-transform: scale(1.02);
    transform: scale(1.02);
    opacity: 0;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
}

.delay-03 {
  -webkit-animation-delay: 0.3s !important;
  animation-delay: 0.3s !important;
}

.delay-04 {
  -webkit-animation-delay: 0.4s !important;
  animation-delay: 0.4s !important;
}

.delay-05 {
  -webkit-animation-delay: 0.5s !important;
  animation-delay: 0.5s !important;
}

.delay-06 {
  -webkit-animation-delay: 0.6s !important;
  animation-delay: 0.6s !important;
}

.cta-title {
  margin-bottom: 1.5em;
  padding: 0.5em 1.5em;
  font-size: 3.2rem;
  font-family: var(--font-mincho);
  line-height: 1.5;
  text-align: center;
  border: 1px solid var(--color-black);
  border-radius: 20px;
  text-indent: 0.1em;
  letter-spacing: 0.1em;
}

.cta-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 0 2em;
  font-size: 2.4rem;
  line-height: calc(40 / 24);
}

.cta-list + p {
  margin-top: 1em;
}

.lazy {
  opacity: 0;
  transition: opacity 0.5s;
}

.lazy.loaded {
  opacity: 1;
}

.loading-mask {
  opacity: 1;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10000;
  pointer-events: none;
  transition: background-color 1s;
  transition-delay: 1.5s;
}

.home .loading-mask::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
  opacity: 1;
  transition: opacity 1s;
  transition-delay: 1.5s;
}

.visited .home .loading-mask::before,
.wf-active .home .loading-mask::before {
  opacity: 0;
}

.loading-mask__tag {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.loading-mask__link {
  position: absolute;
  display: block;
  max-width: 18rem;
  width: calc(180 / 1920 * 100%);
  height: auto;
  transition: width 1s, top 1s, -webkit-transform 1s;
  transition: transform 1s, width 1s, top 1s;
  transition: transform 1s, width 1s, top 1s, -webkit-transform 1s;
  transition-delay: 1.2s;
}

.home .loading-mask__link {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.visited .home .loading-mask__link,
.wf-active .home .loading-mask__link {
  top: .5rem;
  width: 5rem;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  pointer-events: auto;
}

body:not(.home) .loading-mask__link {
  top: .5rem;
  left: 50%;
  width: 5rem;
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  pointer-events: auto;
}

.loading-mask__link:hover .loading-mask__img {
  -webkit-transform: rotateY(360deg);
  transform: rotateY(360deg);
}

.loading-mask__img {
  display: block;
  width: auto;
  height: 100%;
  transition: -webkit-transform 1s ease;
  transition: transform 1s ease;
  transition: transform 1s ease, -webkit-transform 1s ease;
}

.loading-mask__img .logo-loading {
  transition: fill 1s;
}

.archive-voice .loading-mask__img .logo-loading,
.page-template-default .loading-mask__img .logo-loading {
  fill: var(--color-white);
}

.visited .home .loading-mask__img .logo-loading {
  fill: var(--color-white);
}

html:not(.visited) .home .loading-mask__img .logo-loading {
  fill: #143f5d;
  transition-delay: 2s;
}

html:not(.visited).wf-active .home .loading-mask__img .logo-loading {
  fill: var(--color-white);
}

.loading-mask__img .logo-loading.is-active {
  fill: var(--color-black) !important;
}

[data-header-active] .loading-mask__img .logo-loading {
  fill: var(--color-black) !important;
}

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

.common-wrap {
  margin-bottom: 5em;
}

.common-wrap__text {
  padding-left: 0.05em;
  line-height: 2;
  letter-spacing: 0.05em;
}

.common-wrap__text--1 {
  margin-bottom: 0.5em;
  font-size: 3rem;
}

.common-wrap [href^="tel"] {
  display: block;
  margin-top: 0.5em;
  font-size: 2.6rem;
  color: var(--color-main);
}

.characteristic .page-section:nth-child(even) {
  background-color: var(--color-white);
}

.characteristic-header {
  padding-bottom: 1.5em;
  margin-bottom: 2em;
  border-bottom: 1px dashed var(--color-black);
}

.characteristic-head {
  margin-bottom: 0.25em;
  font-size: 2.4rem;
  font-family: var(--font-mincho);
  color: var(--color-black);
  line-height: 1.75;
  letter-spacing: 0.05em;
}

.characteristic-title {
  margin-bottom: 1em;
  padding-left: 0.5em;
  border-left: 5px solid var(--color-main);
}

.inner-frame {
  padding: 4rem 8rem;
  outline: 1px solid var(--color-black);
}

.inner-solid {
  padding: 4rem 8rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
}

.characteristic-ventilate {
  max-width: 100%;
  height: auto;
}

.inner-box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  gap: calc(80 / 1120 * 100%);
}

.inner-box--reverse {
  flex-flow: row-reverse wrap;
}

.inner-box--padding {
  padding-top: 5rem;
  padding-bottom: 5rem;
}

.inner-box--padding:not(:last-child) {
  border-bottom: 1px dashed var(--color-main);
}

.inner-box__padding > * {
  padding-bottom: 3rem;
}

.inner-box__padding > *:not(:last-child) {
  border-bottom: 1px dashed var(--color-main);
}

.inner-box__padding > *:not(:first-child) {
  padding-top: 3rem;
}

.inner-box__content {
  width: calc(560 / 1120 * 100%);
}

.inner-box__image {
  width: calc(480 / 1120 * 100%);
}

.inner-box__head {
  font-family: var(--font-mincho);
  color: var(--color-main);
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.support .inner-box__head {
  counter-increment: cnt;
}

.support .inner-box__head::before {
  content: "0" counter(cnt) ". ";
  font-size: calc(30 / 18 * 100%);
  font-weight: bold;
}

.inner-box__text {
  line-height: 1.75;
  letter-spacing: 0.1em;
}

.inner-box__list {
  margin-top: 1em;
  line-height: calc(24 / 18 * 100%);
}

.inner-box__list a {
  font-weight: 500;
  color: #8f8f8f;
  letter-spacing: 0.1em;
}

.inner-box__list a:hover {
  opacity: 0.7;
}

.inner-box__list a::after {
  content: "";
  display: inline-block;
  margin-left: 0.5em;
  width: 1em;
  height: 1em;
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-external-link-navy.svg) no-repeat center center/contain;
  vertical-align: -5%;
}

.inner-box__img {
  max-width: 100%;
  height: auto;
}

.common-box__content--zeh h3 {
  margin-bottom: 0.5em;
  font-size: 2.2rem;
  color: var(--color-main);
  letter-spacing: 0.1em;
}

.common-box__content--zeh table td {
  padding: 0.75em 0 0.25em;
  width: 50%;
  line-height: 1.75;
  border: none;
  border-bottom: 1px dashed var(--color-main);
}

.zeh-frame {
  margin-bottom: 2.5em;
  padding: 0.5rem 3rem 3rem;
  border: 1px solid var(--color-main);
}

.consultation-info {
  position: relative;
  margin-top: 1em;
  background-color: var(--color-white);
  border: 1px solid var(--color-black);
}

.consultation-info::after {
  content: "";
  position: absolute;
  right: -1em;
  bottom: -3rem;
  display: block;
  width: 17.2rem;
  height: 14rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/chara6.png) no-repeat center center/contain;
}

.consultation-info__data {
  padding: 2.5rem 5rem;
  line-height: calc(24 / 18);
  letter-spacing: 0.1em;
}

.consultation-info__data dt {
  margin-bottom: 0.5em;
  font-size: 2.2rem;
}

.consultation-info__data a {
  display: block;
  margin-top: 0.5em;
  color: #8f8f8f;
}

.consultation-info__data a:hover {
  opacity: 0.7;
}

.consultation-info__data a::after {
  content: "";
  display: inline-block;
  margin-left: 0.5em;
  width: 1em;
  height: 1em;
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-external-link-navy.svg) no-repeat center center/contain;
  vertical-align: -10%;
}

.form-table {
  width: 100%;
}

.form-table dl {
  display: flex;
  align-items: center;
  width: 100%;
}

.form-table dl.align-top {
  align-items: flex-start;
}

.form-table dl.align-top dt {
  padding-top: 2em !important;
}

.form-table dt {
  padding: 1.5rem 0;
  width: calc(270 / 1120 * 100%);
  font-weight: 500;
  color: var(--color-main);
}

.form-table dt.required::after {
  content: "*";
  margin-left: 0.5em;
  color: #950404;
}

.form-table dd {
  padding: 1.5rem 0;
  width: calc(850 / 1120 * 100%);
}

.form-table dd > div {
  display: flex;
  gap: 1.5rem;
}

.form-table dd > div > * {
  flex: 1;
}

.form-table input[type="text"],
.form-table input[type="email"],
.form-table input[type="tel"],
.form-table input[type="date"],
.form-table select,
.form-table textarea {
  padding: 0.5em 2em;
  width: 100%;
  font-size: 1.6rem;
  font-family: var(--font-gothic);
  background-color: transparent;
  border: 1px solid var(--color-black);
  box-shadow: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.form-table input[type="text"],
.form-table input[type="email"],
.form-table input[type="tel"],
.form-table input[type="date"],
.form-table select {
  min-height: 6rem;
}

.form-table select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  z-index: 2;
}

.form-table textarea {
  min-height: 30rem;
}

.form-table [data-name="subject"],
.form-table [data-name="respond"],
.form-table [data-name="date1"],
.form-table [data-name="date2"],
.form-table [data-name="date3"],
.form-table [data-name="time1"],
.form-table [data-name="time2"],
.form-table [data-name="time3"],
.form-table [data-name="reply"] {
  display: block;
  position: relative;
}

.form-table [data-name="subject"]::after,
.form-table [data-name="respond"]::after,
.form-table [data-name="date1"]::after,
.form-table [data-name="date2"]::after,
.form-table [data-name="date3"]::after,
.form-table [data-name="time1"]::after,
.form-table [data-name="time2"]::after,
.form-table [data-name="time3"]::after,
.form-table [data-name="reply"]::after {
  content: "▼";
  position: absolute;
  right: 2em;
  top: 1.25em;
  z-index: 1;
}

.consultation .form-table [data-name="date1"]::after, .consultation
.form-table [data-name="date2"]::after, .consultation
.form-table [data-name="date3"]::after {
  content: none;
}

.form-table .wpcf7-not-valid-tip {
  margin-top: 0.5em;
}

.form-table .privacy-link {
  margin-left: 2em;
  color: var(--color-main);
}

input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  margin-top: 1em;
  margin-left: auto;
  margin-right: auto;
  padding: 1em;
  width: 25rem;
  font-size: 2rem;
  font-family: var(--font-gothic);
  color: var(--color-white);
  line-height: 1;
  text-align: center;
  background-color: #8f8f8f;
  border: 2px solid #8f8f8f;
  border-radius: 0;
  box-shadow: none;
  transition: color 0.5s, background-color 0.5s;
}

input[type="submit"]:hover {
  color: #8f8f8f;
  background-color: var(--color-white);
}

.inner-link {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  gap: 1em;
  margin-bottom: 10rem;
}

.inner-link__link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5em;
  width: 17rem;
  height: 3rem;
  color: var(--color-black);
  border: 1px solid var(--color-black);
  transition: color 0.5s, background-color 0.5s;
}

.inner-link__link:hover {
  color: var(--color-white);
  background-color: var(--color-black);
}

.inner-link__link::after {
  content: "▼";
}

.dictionary-wrap {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}

.dictionary-head {
  margin-bottom: 1em;
  font-size: 2.4rem;
  color: var(--color-main);
}

.dictionary-description {
  margin-bottom: 1.5em;
  padding: 5rem;
  background-color: var(--color-white);
}

.dictionary-description img {
  max-width: 100%;
  height: 55rem;
  -o-object-fit: contain;
  object-fit: contain;
}

.accordion-wrap {
  display: flex;
  flex-flow: column nowrap;
  gap: 1em;
}

.accordion {
  overflow: hidden;
  border: 1px solid var(--color-black);
  transition: background-color 0.5s;
}

.accordion[data-open] {
  background-color: var(--color-white);
}

.accordion__summary {
  position: relative;
  padding: 1em 8rem;
  font-size: 2rem;
  color: var(--color-black);
  line-height: 1.5;
  cursor: pointer;
}

.accordion__summary::after {
  content: "＋";
  position: absolute;
  right: 8rem;
  top: 1.25em;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4rem;
  height: 2.4rem;
  color: var(--color-white);
  border-radius: 0.2rem;
  background-color: var(--color-black);
}

.accordion[data-open] .accordion__summary::after {
  content: "ー";
}

.accordion__summary p {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2;
}

.accordion__title {
  padding-right: 3em;
}

.accordion__title--faq {
  margin-left: 1.1em;
  text-indent: -1.1em;
}

.accordion__title--faq::before {
  content: "Q.";
}

.accordion__title--style {
  display: flex;
  align-items: flex-end;
  letter-spacing: 0.05em;
}

.accordion__title--style span {
  order: 3;
}

.accordion__title--style::before {
  order: 1;
  content: attr(data-english);
  font-size: calc(24 / 18 * 100%);
  font-weight: bold;
}

.accordion__title--style::after {
  order: 2;
  content: "/";
  margin-left: 1em;
  margin-right: 1em;
}

.accordion__content {
  max-height: 0;
  transition: max-height 0.5s;
}

.accordion[data-open] .accordion__content {
  max-height: 50rem;
  height: auto;
}

.style .accordion[data-open] .accordion__content {
  max-height: 400rem;
}

.accordion__inner {
  padding: 0 8rem 1em;
  line-height: 2;
}

.dictionary .accordion__inner {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 4rem;
}

.style .accordion {
  color: var(--color-main);
}

.style .accordion h3 {
  margin-bottom: 0.5em;
  font-size: 2.4rem;
}

.style .accordion .wp-block-image {
  margin-top: 1em;
  margin-bottom: 1em;
}

.style .accordion .wp-block-columns {
  display: flex;
  gap: 7rem;
  margin-bottom: 2em;
}

.style .accordion .wp-block-columns:not(:first-of-type) {
  margin-top: 2em;
}

.style .accordion .wp-block-columns--summary {
  margin-top: 2em;
}

.style .accordion .wp-block-column {
  flex: 1;
  -ms-grid-row-align: center;
  align-self: center;
}

.style .accordion .wp-block-column .wp-block-image {
  margin-top: 0;
  margin-bottom: 0;
  text-align: center;
}

.style .accordion .wp-block-column .wp-block-image img {
  width: auto;
  max-height: 52rem;
}

.flow .common-box--1 {
  counter-reset: cnt;
}

.flow .common-box--2 {
  counter-reset: cnt1;
}

.flow .common-box--3 {
  counter-reset: cnt1;
}

.flow .common-box--3 .flow-box__head::before {
  content: counter(cnt) ".";
}

.flow-box {
  counter-increment: cnt;
}

.flow-box__head {
  margin-bottom: 1em;
  font-size: 2.6rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  color: var(--color-black);
}

.flow-box__head::before {
  content: "0" counter(cnt) ".";
  margin-right: 0.25em;
  font-size: calc(36 / 26 * 100%);
  font-weight: bold;
}

.flow-box:nth-child(6) .flow-box__head::before {
  content: counter(cnt) ".";
}

.flow-box__text {
  line-height: 1.75;
}

.flow-chara--free::after, .flow-chara--paid::before {
  content: "";
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 16.4rem;
  height: 33.4rem;
}

.flow-chara--free::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/chara-free.png) no-repeat center center/contain;
}

.flow-chara--paid::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/chara-paid.png) no-repeat center center/contain;
}

.swiper-flow img {
  width: 100%;
  height: auto;
  border-radius: 2rem;
}

.section--greeting1 {
  padding-top: 15rem;
  padding-bottom: 0;
}

.section--greeting1 .common-head {
  margin-bottom: 1em;
}

.section--greeting2 {
  padding-top: 15rem;
  padding-bottom: 22rem;
}

.section--greeting2 .common-head {
  margin-bottom: 2em;
}

.page-main {
  height: 100vh;
}

.page-main__picture {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.page-main__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.page-main__inner {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  padding-left: 7rem;
  padding-right: 7rem;
  width: 100%;
  height: 100vh;
  z-index: 2;
}

.common-header {
  margin-bottom: 8rem;
}

.common-head {
  font-size: 4rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  text-align: center;
  counter-reset: cnt;
}

.common-head span {
  font-size: calc(54 / 40 * 100%);
  font-weight: 500;
}

.common-head::before {
  content: attr(data-english);
  display: block;
  margin-bottom: 2.5em;
  font-size: calc(18 / 40 * 100%);
  font-weight: 500;
  font-family: var(--font-degular);
}

.common-text {
  font-size: 2.1rem;
  line-height: calc(46 / 21);
}

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

.greeting-top__wrap {
  display: flex;
  justify-content: center;
}

.greeting-top__img {
  width: 50%;
}

.greeting-top__img__inner {
  display: flex;
  justify-content: flex-end;
  margin-left: calc(50% - 50vw);
}

.greeting-top__img img {
  position: relative;
  right: -28.5rem;
  max-width: 116rem;
  height: auto;
  aspect-ratio: 1160 / 774;
  -o-object-fit: cover;
  object-fit: cover;
}

.greeting-top__content {
  width: 50%;
}

.greeting-top__content__inner {
  display: flex;
}

.greeting-top__wrapper {
  position: relative;
  left: 18.5rem;
  margin-top: 18rem;
  padding: 8rem 10rem;
  width: 70rem;
  height: 70rem;
  background-color: var(--color-white);
}

.greeting-top__scroll {
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.charm-wrap {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}

.charm-box {
  width: 50rem;
  height: 54rem;
  counter-increment: cnt;
}

.charm-box__head {
  padding-left: 0.05em;
  margin-bottom: 1em;
  font-size: 3rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  line-height: calc(48 / 30);
}

.charm-box__head::before {
  content: "Charm 0" counter(cnt);
  display: block;
  margin-bottom: 1em;
  font-size: calc(18 / 30 * 100%);
  font-size: 500;
  text-indent: 0.025em;
}

.charm-box__text {
  margin-bottom: 2em;
  line-height: calc(38 / 18);
  letter-spacing: 0.05em;
}

.charm-box__btn {
  display: flex;
  justify-content: center;
}

.wecan-wrap {
  display: flex;
  flex-direction: column;
  gap: 15rem;
}

.wecan-box {
  display: flex;
  align-items: center;
  counter-increment: cnt;
  gap: 7rem 0;
}

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

.wecan-box--column {
  flex-direction: column;
  align-items: flex-start;
}

.wecan-box__content {
  width: 50%;
}

.wecan-box__content__inner {
  max-width: 36rem;
  box-sizing: content-box;
}

.wecan-box--reverse .wecan-box__content__inner {
  padding-left: 14rem;
}

.wecan-box__head {
  margin-bottom: 1.5em;
  font-size: 3rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  line-height: calc(48 / 30);
  letter-spacing: 0.1em;
}

.wecan-box__head::before {
  content: "0" counter(cnt);
  display: block;
  margin-bottom: .75em;
  font-size: calc(48 / 30 * 100%);
  letter-spacing: .075em;
  line-height: 1;
}

.wecan-box__text {
  font-size: 1.8rem;
  line-height: calc(30 / 18);
  letter-spacing: 0.1em;
}

.wecan-box__list {
  line-height: calc(30 / 18);
  letter-spacing: 0.1em;
}

.wecan-box__list li::before {
  content: "▶";
  margin-right: 0.5em;
}

.wecan-box__list li a::after {
    content: "";
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-left: 0.5em;
    background: url("https://daimasa.net/wp-content/uploads/icon-external-link.svg") no-repeat center / contain;

}

.wecan-box__imgs {
  width: 50%;
}

.wecan-box--column .wecan-box__imgs {
  width: 100%;
}

.wecan-box__imgs__wrapper {
  display: -ms-grid;
  display: grid;
  gap: 3rem;
  margin-right: calc( 50% - 50vw);
}

.wecan-box--reverse .wecan-box__imgs__wrapper {
  margin-right: 0;
  margin-left: calc( 50% - 50vw);
}

.wecan-box--column .wecan-box__imgs__wrapper {
  margin-right: calc( 50% - 50vw);
}

.wecan-box__imgs__wrapper--01 {
  -ms-grid-columns: auto;
  grid-template-columns: auto;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  margin-left: -8rem;
}

.wecan-box__imgs__wrapper--01 > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--01 > *:nth-child(2) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--02 {
  -ms-grid-columns: auto auto;
  grid-template-columns: auto auto;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  justify-content: end;
}

.wecan-box__imgs__wrapper--02 > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--02 > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.wecan-box__imgs__wrapper--03 {
  margin-left: -23.5rem;
}

.wecan-box__imgs__wrapper--04 {
  -ms-grid-columns: auto auto;
  grid-template-columns: auto auto;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  justify-content: end;
}

.wecan-box__imgs__wrapper--04 > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--04 > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.wecan-box__imgs__wrapper--04 > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--04 > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}

.wecan-box__imgs__wrapper--05 {
  -ms-grid-columns: auto auto auto auto;
  grid-template-columns: auto auto auto auto;
  justify-content: start;
}

.wecan-box__imgs__wrapper--06 {
  -ms-grid-columns: auto auto;
  grid-template-columns: auto auto;
  -ms-grid-rows: auto auto;
  grid-template-rows: auto auto;
  justify-content: end;
}

.wecan-box__imgs__wrapper--06 > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--06 > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}

.wecan-box__imgs__wrapper--06 > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}

.wecan-box__imgs__wrapper--06 > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}

.wecan-box__imgs__wrapper--07 {
  margin-left: -8rem;
}

.wecan-box__img {
  max-width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}

.greeting-graphs {
  display: flex;
  justify-content: center;
  gap: 0 10rem;
  padding-bottom: 3rem;
  margin-bottom: 4rem;
}

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

.greeting-company__head {
  margin-bottom: 2em;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
}

.greeting-company__head::before {
  content: "【";
}

.greeting-company__head::after {
  content: "】";
}

.greeting-graph {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: calc(10 / 375 * 100%);
  width: 33rem;
  height: 37.5rem;
  font-size: 2.1rem;
  line-height: calc(24 / 21);
}

.greeting-graph__item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: calc(53 / 375 * 100%);
  background-color: var(--color-gray);
  border-radius: 2px;
}

.greeting-graph__item--cross {
  height: calc(180 / 375 * 100%);
  background-image: repeating-linear-gradient(90deg, transparent, transparent 1px, rgba(132, 153, 168, 0.5) 1px, rgba(132, 153, 168, 0.5) 2px), repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(132, 153, 168, 0.5) 1px, rgba(132, 153, 168, 0.5) 2px);
}

.greeting-graph__item--vertical {
  height: calc(167 / 375 * 100%);
  background-image: repeating-linear-gradient(90deg, transparent, transparent 1px, rgba(132, 153, 168, 0.5) 1px, rgba(132, 153, 168, 0.5) 2px);
}

.greeting-graph__item--horizontal {
  height: calc(72 / 375 * 100%);
  background-image: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(132, 153, 168, 0.5) 1px, rgba(132, 153, 168, 0.5) 2px);
}

.greeting-graph__item--white {
  background-color: var(--color-white);
  border: 1px dashed var(--color-main);
}

.greeting-graph__item--main {
  color: var(--color-white);
  background-color: var(--color-main);
}

.greeting-graph__item--blue {
  color: var(--color-white);
  background-color: var(--color-blue);
}

.greeting-graph__item--deepblue {
  color: var(--color-white);
  background-color: var(--color-navy2);
}

.greeting-graph__text {
  padding-left: 0.1em;
  letter-spacing: 0.1em;
}

.greeting-graph__text--plus::after {
  content: "+";
  display: block;
}

[data-icon]::before {
  content: "";
  display: inline-block;
  margin-right: 0.5em;
  width: 1.25em;
  height: 1.25em;
  vertical-align: -20%;
}

[data-icon="home"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-home.svg) no-repeat center center/contain;
}

[data-icon="hammer-crash"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-hammer-crash.svg) no-repeat center center/contain;
}

[data-icon="hard-hat"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-hard-hat.svg) no-repeat center center/contain;
}

[data-icon="coins"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-coins.svg) no-repeat center center/contain;
}

[data-icon="hard-hat-white"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-hard-hat-white.svg) no-repeat center center/contain;
}

[data-icon="coins-white"]::before {
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-coins-white.svg) no-repeat center center/contain;
}

.greeting-cost {
  display: flex;
  flex-direction: column;
  gap: 1em;
  line-height: calc(24 / 18);
  letter-spacing: 0.1em;
}

.greeting-cost dl {
  display: flex;
  width: 100%;
}

.greeting-cost dt {
  width: 21rem;
  color: var(--color-main);
}

.greeting-cost dd {
  width: calc(100%-21rem);
}

.greeting-cost-head {
  margin-bottom: 1.5em;
  padding-left: 0.05em;
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.05em;
}

.greeting-cost-box {
  display: flex;
  justify-content: center;
  gap: 8rem;
}

.greeting-cost-box__head {
  -ms-grid-row-align: center;
  align-self: center;
  padding-top: 1em;
  padding-bottom: 1em;
  padding-left: 0.1em;
  width: 29rem;
  font-size: 2rem;
  text-align: center;
  line-height: 1.5;
  letter-spacing: 0.1em;
  border: 1px solid var(--color-black);
}

.greeting-cost-box__list {
  font-size: 2.4rem;
  line-height: 1.75;
}

.greeting-cost-box__list ul {
  margin-left: 2em;
}

.greeting-cost-box__list li {
  text-indent: -1em;
}

.greeting-cost-box__list li::before {
  display: inline-block;
  margin-right: 1em;
}

.greeting-cost-box__list li:nth-child(1)::before {
  content: "\2776";
}

.greeting-cost-box__list li:nth-child(2)::before {
  content: "\2777";
}

.greeting-cost-box__list li:nth-child(3)::before {
  content: "\2778";
}

.greeting-cost-box__list li:nth-child(4)::before {
  content: "\2779";
}

.greeting-cost-box__list li:nth-child(5)::before {
  content: "\277A";
}

.hinoki-project-bottom {
  margin-top: 10rem;
}

.hinoki-project-bottom__text {
  padding-left: 0.1em;
  font-size: 2.4rem;
  color: var(--color-black);
  text-align: center;
  line-height: calc(46 / 24);
  letter-spacing: 0.1em;
}

.hp-icon-list {
  display: flex;
  justify-content: center;
  gap: 1rem;
  min-width: 100%;
}

.hp-icon-list__item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.hp-icon-list__img {
  width: 100%;
  height: auto;
  aspect-ratio: 1/1;
  -o-object-fit: contain;
  object-fit: contain;
}

.fix-wrap {
  position: relative;
}

.fix-bg {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 0;
}

.fix-bg--fixed {
  position: fixed;
}

.fix-bg--top {
  top: 0;
}

.fix-bg--bottom {
  bottom: 0;
}

.fix-bg__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.hinoki-wrap {
  position: relative;
  display: flex;
  flex-flow: column nowrap;
  gap: 14rem;
  padding-top: 19rem;
  padding-bottom: 19rem;
  z-index: 1;
  counter-reset: cnt;
}

.hinoki-box {
  padding: 7rem 8rem 10rem;
  width: 64rem;
  background-color: var(--color-white);
  counter-increment: cnt;
}

.hinoki-box__head {
  padding-left: 0.05em;
  margin-bottom: 1em;
  font-size: 3.6rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  color: var(--color-black);
  line-height: calc(56 / 36);
  text-align: center;
  letter-spacing: 0.05em;
}

.greeting .hinoki-box__head::before {
  content: "Charm 0" counter(cnt);
  display: block;
  margin-bottom: 1em;
  font-size: calc(24 / 36 * 100%);
  font-size: 500;
  font-family: var(--font-degular);
  color: var(--color-blue);
  text-indent: 0.075em;
  letter-spacing: 0.075em;
}

.hinoki-box__text {
  margin-bottom: 2em;
  line-height: 2;
  letter-spacing: 0.1em;
}

.hinoki-box__btn {
  display: flex;
  justify-content: center;
}

*::-webkit-media-controls-panel,
*::-webkit-media-controls-play-button,
*::-webkit-media-controls-start-playback-button {
  display: none !important;
  -webkit-appearance: none;
}

.section--event {
  position: relative;
  padding-bottom: 0;
  border-radius: 0px 0px 5vw 5vw;
  z-index: 3;
}

.section--madein {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
}

.section--madein .container {
  position: relative;
  z-index: 2;
}

.section--works {
  position: relative;
  padding-bottom: 20rem;
}

.section--access {
  padding-bottom: 25rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/home-access-illust.png) no-repeat right top/calc( 1003 / 1920 * 100%);
}

.section--topics {
  position: relative;
  padding-bottom: 200px;
  background: var(--color-white);
  z-index: 2;
}

.section--topics .container {
  position: relative;
}

.illust-topics {
  position: absolute;
  left: -34rem;
  top: 9rem;
}

.mainvisual {
  position: relative;
  overflow: hidden;
}

.mainvisual__slider {
  position: relative;
  z-index: 1;
}

.mainvisual__slider img {
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
  object-fit: cover;
}

.mainvisual__container {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100vh;
  z-index: 2;
}

.mainvisual__text {
  font-size: 6.4rem;
  font-family: var(--font-mincho);
  color: var(--color-white);
  text-align: center;
  line-height: calc( 48 / 28);
  opacity: 0;
  -webkit-transform: translateY(0.5em);
  transform: translateY(0.5em);
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
  transition: opacity 2s, -webkit-transform 2s;
  transition: opacity 2s, transform 2s;
  transition: opacity 2s, transform 2s, -webkit-transform 2s;
}

html:not(.visited) .mainvisual__text {
  transition-delay: 2.5s;
}

.wf-active .mainvisual__text {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.mainvisual__text__en {
  padding-left: .075em;
  letter-spacing: .075em;
}

.mainvisual__text__jp {
  padding-left: .1em;
  margin-top: .5em;
  font-size: 38%;
  letter-spacing: .1em;
}

.head-wrap {
  display: flex;
}

.head-wrap--event, .head-wrap--works {
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 1.5em;
}

.head-wrap--topics {
  flex-direction: column;
  gap: 3em;
}

.head {
  font-size: 1.6rem;
}

.head--access {
  margin-bottom: 2em;
}

.madein-box .head {
  margin-bottom: 2em;
}

.head-wrap--white .head {
  color: var(--color-white);
}

.head-wrap--cta .head {
  font-size: 1.4rem;
}

.head-wrap--recruit .head {
  margin-bottom: 1em;
}

.head-wrap--recruit .head::before {
  display: block;
  margin-right: 0;
  margin-bottom: .5em;
}

.head::before {
  content: attr(data-english);
  display: inline-block;
  margin-right: 0.5em;
  font-size: calc(48 / 16 * 100%);
  font-weight: 500;
  font-family: var(--font-mincho);
  letter-spacing: 0.025em;
}

.head-wrap--center .head::before {
  padding-left: 0.025em;
}

.head-wrap--cta .head::before {
  font-size: 4.8rem;
}

.home-news {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}

.post-list {
  display: flex;
  flex-flow: column nowrap;
  gap: 5rem;
  width: 77rem;
}

.post-list__item {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1em 0;
}

.post-list__time {
  margin-right: 1em;
  font-size: 1.6rem;
  font-family: var(--font-mincho);
}

.post-list__category {
  display: flex;
  font-size: 1.6rem;
}

.post-list__category__item {
  padding-left: 1em;
  padding-right: 1em;
  font-family: var(--font-mincho);
  border-left: 1px solid var(--color-text);
}

.post-list__title {
  overflow: hidden;
  padding-right: 1em;
  width: calc(100% - 9rem);
  white-space: nowrap;
  text-overflow: ellipsis;
}

.post-list__title:hover {
  opacity: 0.7;
}

.post-list__btn {
  margin-left: auto;
}

.home-greeting {
  display: flex;
  justify-content: center;
}

.home-greeting__image {
  flex: 1;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

.home-greeting__content {
  position: relative;
  flex: 1;
  box-sizing: content-box;
}

.home-greeting-img {
  max-width: 88.5rem;
  width: 100%;
  height: auto;
  aspect-ratio: 885/970;
  -o-object-fit: contain;
  object-fit: contain;
}

.home-greeting-box {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1em;
  padding-top: 7rem;
  padding-left: 11rem;
  max-width: 100%;
  width: 44rem;
  box-sizing: content-box;
  z-index: 2;
}

.home-greeting-box__catch {
  display: block;
  margin-left: auto;
  margin-right: 1em;
}

.home-greeting-box__text {
  width: 33rem;
  line-height: calc( 46 / 18);
}

.home-greeting-illust {
  position: absolute;
  z-index: 1;
  height: auto;
}

.home-greeting-illust--kumo1 {
  top: 10rem;
  left: 63rem;
}

.home-greeting-illust--kumo2 {
  top: 77rem;
  left: -8rem;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.home-greeting-illust--tsubame {
  top: 65rem;
  left: 46rem;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
}

.zoom-up-area {
  width: 100%;
  min-height: 200vw;
  display: flex;
  justify-content: center;
  position: relative;
}

.zoom-up-area__inner {
  width: 100%;
  min-height: calc( 250 / 350 * 100%);
}

.zoom-up-area__view {
  width: 100%;
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.zoom-up-area__image {
  width: 64rem;
  height: 82rem;
  position: relative;
  overflow: hidden;
  aspect-ratio: 1200/679;
}

.zoom-up-area__image > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0%;
  left: 0%;
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
}

.zoom-up-area__text {
  overflow: hidden;
  margin: 0;
  position: absolute;
  top: calc(50% - 16rem);
  left: calc(50% - 16rem);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #eff1f2;
}

.zoom-up-area__text > span {
  display: inline-block;
  font-size: 3rem;
  font-family: var(--font-mincho);
  font-weight: 600;
  font-style: normal;
  text-align: left;
  line-height: calc( 72 / 30);
  text-indent: 0.1em;
  letter-spacing: -0.02em;
}

.bg-fix-area {
  width: 100%;
  padding-top: 50px;
  padding-bottom: 100px;
  position: relative;
}

.bg-fix-area__view {
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  z-index: 1;
  pointer-events: none;
  background-image: url(https://sub42.rabona.click/wp-content/uploads/logo_slider.png);
  background-repeat: repeat-x;
  background-size: 118.75vw;
  background-position: 50% 50%;
  -webkit-animation: bg-ticker 30s linear infinite;
  animation: bg-ticker 30s linear infinite;
}

@-webkit-keyframes bg-ticker {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}

@keyframes bg-ticker {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: 200% 50%;
  }
}

.horizontal {
  display: flex;
  width: 400vw;
}

.madein-box {
  display: flex;
  width: 100%;
  height: 100vh;
  background-color: var(--color-white);
}

.madein-box__content {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}

.madein-box__inner {
  display: flex;
  flex-direction: column;
  padding-left: 16rem;
  width: 64rem;
}

.madein-box__top {
  grid-area: top;
}

.madein-box__bottom {
  grid-area: bottom;
}

.madein-box .head {
  white-space: nowrap;
}

.madein-box__catch {
  margin-bottom: 1em;
  font-size: 3rem;
  font-family: var(--font-mincho);
  line-height: 2;
}

.madein-box__text {
  width: calc( 340 / 480 * 100%);
  line-height: 2;
}

.madein-box__image {
  flex: 1;
  grid-area: image;
}

.madein-box__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.home-event-list {
  position: relative;
  display: flex;
  justify-content: space-between;
}

.event-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr 4rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 4rem;
}

.event-list__item {
  position: relative;
  min-width: 0;
  width: 100%;
}

.event-list__header {
  overflow: hidden;
  display: flex;
  gap: 1em;
  width: 100%;
  line-height: calc(30 / 18);
}

.event-list__time {
  display: inline-block;
  margin-right: 1em;
  font-size: 1.6rem;
  font-family: var(--font-mincho);
  color: #8b8b8b;
  line-height: 1.5;
  white-space: nowrap;
}

.event-list__category {
  display: inline-block;
  font-size: 1.6rem;
  font-family: var(--font-mincho);
  color: #8b8b8b;
  line-height: 1.5;
  white-space: nowrap;
}

.event-list__category__item {
  margin-right: 1em;
}

.event-list__title {
  overflow: hidden;
  display: block;
  width: 100%;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.event-list__link {
  overflow: hidden;
  display: block;
  margin-bottom: .5em;
  width: 100%;
  aspect-ratio: 400 / 180;
}

.event-list__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 400 / 180;
}

.works-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1rem 1fr 1rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  -ms-grid-rows: 1fr 4rem 1fr 4rem 1fr;
  grid-template-rows: repeat(3, 1fr);
  gap: 4rem 1rem;
  margin-right: calc(50% - 50vw);
}

.works-list > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

.works-list > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}

.works-list > *:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}

.works-list > *:nth-child(4) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}

.works-list > *:nth-child(5) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}

.works-list > *:nth-child(6) {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
}

.works-list > *:nth-child(7) {
  -ms-grid-row: 5;
  -ms-grid-column: 1;
}

.works-list > *:nth-child(8) {
  -ms-grid-row: 5;
  -ms-grid-column: 3;
}

.works-list > *:nth-child(9) {
  -ms-grid-row: 5;
  -ms-grid-column: 5;
}

.works-list__item {
  min-width: 0;
}

.works-list__item:nth-child(10) {
  display: none;
}

.works-list__item:hover .works-list__link::before {
  opacity: 0;
}

.works-list__link {
  overflow: hidden;
  position: relative;
  display: block;
  margin-bottom: 1em;
  width: 100%;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.works-list__link::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #404040;
  opacity: .3;
  transition: opacity .5s;
}

.works-list__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 608 / 300;
}

.works-list__header {
  overflow: hidden;
  display: flex;
  gap: 1em;
  height: 1em;
}

.works-list__category {
  display: flex;
  gap: 1em;
}

.works-list__term {
  color: #8e8d8d;
  white-space: nowrap;
}

.works-list__title {
  overflow: hidden;
  display: block;
  width: 100%;
  text-overflow: ellipsis;
}

.home-works {
  position: relative;
  margin-left: -10rem;
  margin-right: calc(50% - 50vw);
  font-size: 8rem;
}

.home-works__wrap {
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 1em;
  display: flex;
  flex-flow: row-reverse nowrap;
  gap: 0 0.5em;
  width: calc(100% - 51rem);
}

.home-works__text {
  display: inline-block;
  font-weight: 500;
  font-family: var(--font-degular);
  color: var(--color-white);
  letter-spacing: 0.025em;
  white-space: nowrap;
  -webkit-animation: animate-text 30s linear infinite;
  animation: animate-text 30s linear infinite;
}

.home-works__text:nth-child(3n-2)::after {
  left: -0.25em;
  background: url(https://sub42.rabona.click/wp-content/uploads/chara2.png) no-repeat center bottom/contain;
}

.home-works__text:nth-child(3n-1)::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/chara3.png) no-repeat center bottom/contain;
}

.home-works__text:nth-child(3n)::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/chara4.png) no-repeat center bottom/contain;
}

.home-works__text::after {
  content: "";
  position: relative;
  display: inline-block;
  width: 8rem;
  height: 9.1rem;
  vertical-align: bottom;
}

@-webkit-keyframes animate-text {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(300%);
    transform: translateX(300%);
  }
}

@keyframes animate-text {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(300%);
    transform: translateX(300%);
  }
}

.swiper-button-wrap {
  position: absolute;
  display: flex;
  justify-content: space-between;
  width: 7rem;
}

.home .swiper-button-wrap {
  right: 7rem;
  top: -7.5rem;
}

.material .swiper-button-wrap {
  right: 0;
  top: 2rem;
}

.swiper-button-prev,
.swiper-button-next {
  position: relative !important;
  width: 3.2rem !important;
  height: 3.2rem !important;
}

.swiper-button-prev:hover::after,
.swiper-button-next:hover::after {
  background-color: var(--color-black) !important;
  color: var(--color-white) !important;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 3px;
  width: 3.2rem !important;
  height: 3.2rem !important;
  line-height: 3.2rem !important;
  font-size: 1.5rem !important;
  font-weight: 500;
  font-family: var(--font-gothic2) !important;
  color: var(--color-black) !important;
  text-align: center;
  border: 1px solid var(--color-black);
  background-color: transparent;
  border-radius: 1.6rem;
  transition: background-color 0.5s, color 0.5s;
}

.swiper-button-prev {
  left: 0 !important;
}

.swiper-button-prev::after {
  content: "<" !important;
}

.swiper-button-next {
  right: 0 !important;
}

.swiper-button-next::after {
  content: ">" !important;
}

.btn {
  position: relative;
  display: inline-block;
}

.btn:hover::after {
  -webkit-transform: translateX(1em);
  transform: translateX(1em);
}

.post-list__title:hover + .btn::after {
  -webkit-transform: translateX(1em);
  transform: translateX(1em);
}

.btn::after {
  content: "";
  display: block;
  width: 10.6rem;
  height: 2rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/link-arrow.svg) no-repeat center center/contain;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}

.btn--s::after {
  width: 6.8rem;
  background: url(https://sub42.rabona.click/wp-content/uploads/link-arrow-s.svg) no-repeat center center/contain;
}

.btn--right {
  margin-left: auto;
  margin-right: 0;
}

.madein-box * + .btn {
  margin-top: 3em;
}

.btn--more {
  padding: 0 1.25em 2px;
  width: 9rem;
  font-size: 1.4rem;
}

.btn--more::after {
  right: 1em;
}

.btn--contact {
  width: 14.6rem;
}

.btn--event {
  width: 19.4rem;
}

.btn--material {
  margin-top: 1em;
}

.btn--post-header {
  width: 15rem;
}

.btn--thanks {
  padding: 0 1.25em;
  width: 28rem;
  font-size: 1.8rem;
  font-family: var(--font-gothic);
  color: var(--color-main);
  text-align: center;
  background-color: transparent;
  border: 2px solid var(--color-main);
  border-radius: 1em;
}

.gallery {
  position: relative;
  z-index: 1;
  display: -ms-grid;
  display: grid;
  grid-template-areas: "g1  g1  g1  g1" "g1  g1  g1  g1" "g2  g2  g3  g4" "g2  g2  g5  g5" "g6  g7  g9  g9" "g6  g8  g9  g9" "g10 g10 g11 g11" "g10 g10 g12 g13" "g14 g14 g15 g15";
  -ms-grid-rows: (28vw)[9];
  grid-template-rows: repeat(9, 28vw);
  -ms-grid-columns: (1fr)[4];
  grid-template-columns: repeat(4, 1fr);
  width: 100%;
}

.gallery__box {
  position: relative;
  overflow: hidden;
}

.gallery__box--1 {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 4;
  grid-area: g1;
}

.gallery__box--2 {
  -ms-grid-row: 3;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: g2;
}

.gallery__box--3 {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: g3;
}

.gallery__box--4 {
  -ms-grid-row: 3;
  -ms-grid-column: 4;
  grid-area: g4;
}

.gallery__box--5 {
  -ms-grid-row: 4;
  -ms-grid-column: 3;
  -ms-grid-column-span: 2;
  grid-area: g5;
}

.gallery__box--6 {
  -ms-grid-row: 5;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  grid-area: g6;
}

.gallery__box--7 {
  -ms-grid-row: 5;
  -ms-grid-column: 2;
  grid-area: g7;
}

.gallery__box--8 {
  -ms-grid-row: 6;
  -ms-grid-column: 2;
  grid-area: g8;
}

.gallery__box--9 {
  -ms-grid-row: 5;
  -ms-grid-row-span: 2;
  -ms-grid-column: 3;
  -ms-grid-column-span: 2;
  grid-area: g9;
}

.gallery__box--10 {
  -ms-grid-row: 7;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: g10;
}

.gallery__box--11 {
  -ms-grid-row: 7;
  -ms-grid-column: 3;
  -ms-grid-column-span: 2;
  grid-area: g11;
}

.gallery__box--12 {
  -ms-grid-row: 8;
  -ms-grid-column: 3;
  grid-area: g12;
}

.gallery__box--13 {
  -ms-grid-row: 8;
  -ms-grid-column: 4;
  grid-area: g13;
}

.gallery__box--14 {
  -ms-grid-row: 9;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: g14;
}

.gallery__box--15 {
  -ms-grid-row: 9;
  -ms-grid-column: 3;
  -ms-grid-column-span: 2;
  grid-area: g15;
}

.gallery__box a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.gallery__box img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.home-googlemap {
  margin-bottom: 3em;
  max-width: 100%;
  height: auto;
  aspect-ratio: 640/292;
}

.access-text {
  margin-bottom: 2em;
  line-height: calc( 34 / 18);
}

.access-map {
  margin-top: 2em;
  max-width: 100%;
  height: auto;
}

.bottom-movie {
  position: relative;
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 177/83;
  z-index: 3;
}

.material-head {
  margin-bottom: 1em;
  font-size: 2.6rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  color: var(--color-black);
  letter-spacing: 0.05em;
}

.common-box__image--material {
  position: relative;
  margin-right: 8rem;
  width: calc(100% - 64rem);
}

.common-box__image--material::before, .common-box__image--material::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  height: 100%;
  background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center;
  z-index: 2;
}

.common-box__image--material::before {
  left: -55vw;
  width: 55vw;
}

.common-box__image--material::after {
  right: -55vw;
  width: 55vw;
}

.material-list {
  margin-top: 6rem;
  width: 100%;
}

.material-list__link {
  display: block;
}

.material-list__img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 1/1;
}

.odermade-alignments {
  position: relative;
  margin-left: 4.16667vw;
  margin-right: 4.16667vw;
  width: calc(100% - (4.16667vw * 2));
}

.odermade-alignments__img {
  max-width: 100%;
  min-width: calc(100% - 64rem);
  height: auto;
  z-index: 1;
}

.odermade-alignments__img--anim {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}

.craftsman-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 8rem;
  counter-reset: cnt;
}

.craftsman-box {
  position: -webkit-sticky;
  position: sticky;
  display: flex;
  flex-flow: row-reverse nowrap;
  justify-content: center;
  align-items: center;
  gap: calc(max(16rem, 160 / 1770 * 100%));
  margin-left: 8rem;
  margin-right: 8rem;
  padding: calc(max(16rem, 160 / 1770 * 100%));
  color: var(--color-white);
  counter-increment: cnt;
}

.craftsman-box:nth-child(odd) {
  background-color: #404040;
}

.craftsman-box:nth-child(even) {
  background-color: #8e8e8e;
}

.craftsman-box:nth-child(1) {
  top: 15px;
}

.craftsman-box:nth-child(2) {
  top: 30px;
}

.craftsman-box:nth-child(3) {
  top: 45px;
}

.craftsman-box:nth-child(4) {
  top: 60px;
}

.craftsman-box:nth-child(5) {
  top: 75px;
}

.craftsman-box::after {
  content: "0" counter(cnt) " / 05";
  position: absolute;
  right: 9rem;
  bottom: 5rem;
  font-size: 2.4rem;
  font-family: var(--font-mincho);
}

.craftsman-box__content {
  width: calc(max(64rem, 640 / 1770 * 100%));
}

.craftsman-box__head {
  margin-bottom: 1em;
  font-size: 3.6rem;
  font-weight: bold;
  font-family: var(--font-mincho);
  letter-spacing: 0.05em;
}

.craftsman-box__head::after {
  content: "/ " attr(data-english);
  margin-left: 1em;
  font-size: 50%;
  font-weight: normal;
  letter-spacing: 0.1em;
}

.craftsman-box__text {
  line-height: 1.75;
}

.craftsman-box__image {
  width: calc(max(54rem, 540 / 1770 * 100%));
}

.craftsman-box__img {
  max-width: 100%;
  height: auto;
}

.section-wrap {
  display: flex;
  flex-direction: column;
  gap: 20rem;
}

.section-wrap--padding {
  gap: 0;
}

.section-wrap--padding .page-section {
  padding-top: 7.5rem;
  padding-bottom: 15rem;
}

.page-section--cost {
  padding-top: 6rem;
}

.page-section--last {
  padding-bottom: 32rem !important;
}

.page-section__head {
  padding-left: 0.05em;
  margin-bottom: 10rem;
  font-size: 4rem;
  font-family: var(--font-mincho);
  text-align: center;
  letter-spacing: 0.05em;
}

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

.page-section__head--cost {
  margin-bottom: 5rem;
}

.characteristic .page-section__head {
  margin-bottom: 1.5em;
}

.voice .page-section__head {
  margin-bottom: 1.5em;
}

.page-section__head span {
  font-size: calc(54 / 40 * 100%);
}

.page-section__head::after {
  content: attr(data-english);
  display: block;
  margin-top: 1em;
  padding-left: 0.075em;
  font-size: calc(18 / 40 * 100%);
  font-weight: 500;
  color: var(--color-text);
  letter-spacing: 0.075em;
}

.page-section__sub {
  margin-bottom: 0.5em;
  font-size: 3.6rem;
  font-family: var(--font-mincho);
  line-height: calc(56 / 36);
  letter-spacing: 0.05em;
}

.page-section__text {
  line-height: 2;
  letter-spacing: 0.1em;
}

.content__inner > .page-section__head + .page-section__text {
  margin-bottom: 10rem;
  font-size: 2.1rem;
  text-align: center;
}

.characteristic .content__inner > .page-section__head + .page-section__text {
  margin-bottom: 2.5em;
}

.common-box {
  display: flex;
  gap: 8rem;
}

.common-box--1 {
  flex-flow: row-reverse nowrap;
  margin-left: calc(50% -50vw);
}

.common-box--2 {
  flex-flow: row nowrap;
  margin-right: calc(50% -50vw);
}

.common-box__content {
  position: relative;
  width: 56rem;
  z-index: 2;
}

.common-box--2 .common-box__content {
  margin-left: -80px;
}

.common-box__inner {
  display: flex;
  flex-direction: column;
  gap: 14rem;
}

.common-box__image {
  position: relative;
  z-index: 1;
  max-width: 100%;
}

.common-box__img-wrap {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
}

.common-box__img {
  position: relative;
  top: 0;
  left: 0;
  max-width: 100%;
  min-width: calc(100% - 64rem);
  height: auto;
  z-index: 1;
}

.common-box__img--anim {
  position: absolute;
  -webkit-transform: scale(1);
  transform: scale(1);
  z-index: 2;
}

.common-box__img--recruit1 {
  -webkit-transform: scale(1.678, 1.678);
  transform: scale(1.678, 1.678);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.common-box__img--company1 {
  -webkit-transform: scale(1.081, 1.081);
  transform: scale(1.081, 1.081);
  -webkit-transform-origin: top right;
  transform-origin: top right;
}

.common-box__img--message1 {
  top: auto;
  bottom: 0;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transform-origin: bottom right;
  transform-origin: bottom right;
}

.common-box__iframe {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  left: 0;
  max-width: 100%;
  min-width: calc(100% - 64rem);
  height: auto;
  aspect-ratio: 794 / 560;
}

.post-form-wrap {
  display: flex;
  align-items: flex-end;
  gap: 0.5em;
}

.post-select,
.post-button {
  height: 3rem;
  font-size: 2rem;
  text-align: center;
  line-height: 3rem;
  letter-spacing: 0.05em;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 1.5em;
}

.post-select {
  width: 8.5rem;
  border: 1px solid #777;
}

.post-select option {
  font-size: 2rem;
  line-height: 3rem;
  letter-spacing: 0.05em;
}

.post-button {
  width: 185px;
  color: var(--color-white);
  background-color: #777;
  border: 1px solid #777;
}

.post-header {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 1em;
  margin-bottom: 8rem;
  width: 100%;
}

.post-header__voice, .post-header__event {
  display: flex;
  flex-direction: column;
  width: 100%;
  font-size: 1.8rem;
  color: var(--color-black);
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.post-header__voice h2, .post-header__event h2 {
  font-size: 2rem;
}

.post-header__voice dl, .post-header__event dl {
  display: flex;
  align-items: center;
  gap: 2em;
}

.post-header__voice {
  gap: 1em;
}

.post-header__voice dl {
  gap: 2em;
}

.post-header__event {
  gap: 0.5em;
}

.post-header__event dl {
  gap: 0.5em;
}

.post-header__event dt {
  display: flex;
  align-items: center;
}

.post-date {
  color: var(--color-black);
  letter-spacing: 0.1em;
}

.post-category {
  display: flex;
  gap: 1em;
}

.post-category__item {
  display: inline-block;
  padding: 0.2em 0.5em;
  min-width: 10rem;
  color: var(--color-white);
  line-height: 1.25;
  background-color: var(--color-black);
  border: 1px solid var(--color-black);
  text-align: center;
  letter-spacing: 0.1em;
}

.single-post .post-category__item {
  color: var(--color-white);
  background: var(--color-black);
}

.home-event-list .post-category__item {
  margin-top: 1em;
  margin-bottom: 0.5em;
  min-width: 5rem;
  font-size: calc(14 / 18 * 100%);
}

.post-wrap {
  position: relative;
  display: flex;
  gap: 1em;
}

.post-thumbnail {
  max-width: 100%;
  width: 93rem;
  height: auto;
}

.single-post .post-content h2,
.single-post .post-content h3,
.single-post .post-content h4,
.single-post .post-content h5,
.single-post .post-content h6,
.single-event .post-content h2,
.single-event .post-content h3,
.single-event .post-content h4,
.single-event .post-content h5,
.single-event .post-content h6,
.single-works .post-content h2,
.single-works .post-content h3,
.single-works .post-content h4,
.single-works .post-content h5,
.single-works .post-content h6,
.single-voice .post-content h2,
.single-voice .post-content h3,
.single-voice .post-content h4,
.single-voice .post-content h5,
.single-voice .post-content h6 {
  margin-top: 4rem;
  margin-bottom: 0.5em;
  font-weight: 500;
  color: var(--color-main);
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.single-post .post-content h2,
.single-event .post-content h2,
.single-works .post-content h2,
.single-voice .post-content h2 {
  margin-bottom: 0.25em;
  font-size: 3.6rem;
}

.single-post .post-content h3,
.single-event .post-content h3,
.single-works .post-content h3,
.single-voice .post-content h3 {
  font-size: 3rem;
  border-bottom: 2px solid var(--color-main);
}

.single-post .post-content h4,
.single-event .post-content h4,
.single-works .post-content h4,
.single-voice .post-content h4 {
  font-size: 2.4rem;
  border-bottom: 2px dashed var(--color-main);
}

.single-post .post-content h5,
.single-event .post-content h5,
.single-works .post-content h5,
.single-voice .post-content h5 {
  font-size: 2.1rem;
}

.single-post .post-content p,
.single-event .post-content p,
.single-works .post-content p,
.single-voice .post-content p {
  line-height: 2;
  letter-spacing: 0.05em;
}

.single-post .post-content img,
.single-event .post-content img,
.single-works .post-content img,
.single-voice .post-content img {
  max-width: 100%;
  height: auto;
}

.single-post .post-content iframe,
.single-event .post-content iframe,
.single-works .post-content iframe,
.single-voice .post-content iframe {
  margin-bottom: 2em;
}

.single-post .post-content > *,
.single-event .post-content > *,
.single-works .post-content > *,
.single-voice .post-content > * {
  margin-top: 1em;
  margin-bottom: 1em;
}

.single-post .post-content > *:nth-child(1),
.single-event .post-content > *:nth-child(1),
.single-works .post-content > *:nth-child(1),
.single-voice .post-content > *:nth-child(1) {
  margin-top: 0;
}

.single-works .post-content figure,
.single-works .post-content img {
  margin-top: 2em;
  margin-bottom: 1em;
}

.single-works .post-content figure:nth-child(1),
.single-works .post-content img:nth-child(1) {
  margin-top: 0;
}

.sidebar .categories {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.sidebar .categories a {
  display: inline-block;
  padding: 0.2em 1em;
  color: var(--color-black);
  line-height: 1.25;
  border: 1px solid var(--color-black);
  transition: color 0.5s, background-color 0.5s;
}

.sidebar .categories a:hover {
  color: var(--color-white);
  background-color: var(--color-black);
}

.archive-categories .categories {
  display: flex;
  flex-flow: row wrap;
  gap: 1em;
}

.archive-categories .categories--works {
  justify-content: flex-end;
}

.archive-categories .categories--works .cat-item:nth-child(1) {
  margin-right: auto;
}

.archive-categories .categories--works .cat-item:nth-child(1) a {
  font-size: 2.4rem;
  font-weight: bold;
}

.archive-categories .categories a {
  display: block;
  padding: 0.25em 0.75em;
  min-width: 10rem;
  color: var(--color-black);
  text-align: center;
  border: 1px solid var(--color-black);
  transition: color 0.5s, background-color 0.5s;
}

.archive-categories .categories a[data-active], .archive-categories .categories a:hover {
  color: var(--color-white);
  background-color: var(--color-black);
}

.privacy .main h2 {
  margin-top: 2em;
  margin-bottom: 0.5em;
  font-size: 2rem;
}

.privacy .main h2::before {
  content: "■";
}

.privacy .main p,
.privacy .main ul,
.privacy .main ol {
  line-height: 2;
}

.privacy .main ul > li {
  margin-left: 1em;
  text-indent: -1em;
}

.privacy .main ul > li::before {
  content: "・";
}

.privacy .main ol {
  counter-reset: cnt;
}

.privacy .main ol > li {
  margin-left: 1em;
  text-indent: -1em;
  counter-increment: cnt;
}

.privacy .main ol > li::before {
  content: counter(cnt) ".";
}

.common-table td {
  padding: 1.5em 0;
  line-height: 1.75;
  border: none;
  border-bottom: 1px dashed var(--color-text);
}

.common-table td:nth-child(1) {
  width: 27rem;
  color: var(--color-main);
  letter-spacing: 0.1em;
}

.common-table td:nth-child(2) {
  width: 85rem;
}

.common-frame {
  padding: 3rem 8rem 10rem;
  border: 1px solid var(--color-black);
}

.flip-wrap {
  display: flex;
  flex-flow: row wrap;
  gap: 5.5rem;
  counter-reset: cnt;
}

.flip-wrap::after {
  content: "";
  display: block;
  width: 39rem;
  height: 1px;
}

.flip-box {
  background-color: transparent;
  width: 39rem;
  height: 46rem;
  -webkit-perspective: 1000px;
  perspective: 1000px;
  list-style-position: inside;
  counter-increment: cnt;
}

.flip-box__inner {
  position: relative;
  width: 100%;
  height: 100%;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.flip-box:hover .flip-box__inner {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

.flip-box__front, .flip-box__back {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: -webkit-transform 0.8s cubic-bezier(0.5, 0.2, 0.2, 0.8);
  transition: transform 0.8s cubic-bezier(0.5, 0.2, 0.2, 0.8);
  transition: transform 0.8s cubic-bezier(0.5, 0.2, 0.2, 0.8), -webkit-transform 0.8s cubic-bezier(0.5, 0.2, 0.2, 0.8);
}

.flip-box__front__inner, .flip-box__back__inner {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: flex-start;
  gap: 1em;
  padding: 4rem;
  width: 100%;
  height: 100%;
}

.flip-box__front {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  font-family: var(--font-mincho);
  color: var(--color-black);
  text-align: center;
  border: 0.7rem solid var(--color-white);
  background-color: var(--color-white);
}

.flip-box__front__head {
  margin-bottom: 1em;
  font-size: 3rem;
  font-weight: bold;
  line-height: calc(36 / 30);
}

.flip-box__front__head::before {
  content: "0" counter(cnt);
  display: block;
  margin-bottom: 0.75em;
  font-size: 4.8rem;
  font-weight: 800;
  font-family: var(--font-degular);
  color: var(--color-navy2);
  line-height: 1;
  text-indent: 0.075em;
  letter-spacing: 0.075em;
}

.flip-box__front__head::after {
  content: "";
  display: block;
  margin-top: 1em;
  width: 100%;
  height: 14rem;
}

.flip-box:nth-child(1) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust01.png) no-repeat bottom/contain;
}

.flip-box:nth-child(2) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust02.png) no-repeat bottom/contain;
}

.flip-box:nth-child(3) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust03.png) no-repeat bottom/contain;
}

.flip-box:nth-child(4) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust04.png) no-repeat bottom/contain;
}

.flip-box:nth-child(5) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust05.png) no-repeat bottom/contain;
}

.flip-box:nth-child(6) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust06.png) no-repeat bottom/contain;
}

.flip-box:nth-child(7) .flip-box__front__head::after {
  background: url(https://sub42.rabona.click/wp-content/uploads/greeting-illust07.png) no-repeat bottom/contain;
}

.flip-box__front__face {
  margin-bottom: 2em;
  width: auto;
  height: 15rem;
}

.flip-box__front__name {
  font-size: 2.2rem;
  line-height: 1.25;
}

.flip-box__front__name::before {
  content: attr(data-english);
  display: block;
  font-size: calc(16 / 22 * 100%);
}

.flip-box__front__duty {
  margin-top: 1em;
  font-size: 1.6rem;
  line-height: 1.25;
}

.flip-box__front__corner {
  overflow: hidden;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 6.5rem;
  height: 6.5rem;
  background-color: var(--color-black);
  -webkit-clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.flip-box__front__corner::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: -100%;
  background-image: linear-gradient(-130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 75%);
  -webkit-animation: shine 2s infinite;
  animation: shine 2s infinite;
}

.flip-box__back {
  font-size: 2.1rem;
  color: var(--color-text);
  line-height: 2;
  background: var(--color-white);
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

.greeting .flip-box:nth-child(1) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg01.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(2) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg02.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(3) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg03.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(4) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg04.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(5) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg05.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(6) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg06.jpg);
  background-size: cover;
}

.greeting .flip-box:nth-child(7) .flip-box__back {
  background: linear-gradient(rgba(255, 255, 255, 0.65), rgba(255, 255, 255, 0.65)), url(https://sub42.rabona.click/wp-content/uploads/flip-bg07.jpg);
  background-size: cover;
}

.flip-box__back__inner {
  -webkit-transform: translate3d(0, 0, 200px) scale(0.9);
  transform: translate3d(0, 0, 200px) scale(0.9);
}

.flip-box__back__catch {
  font-size: 2.2rem;
  color: var(--color-main);
  line-height: calc(36 / 22);
  letter-spacing: 0.05em;
}

.flip-box__back__text {
  font-size: 1.8rem;
  line-height: calc(30 / 18);
  letter-spacing: 0.1em;
}

.flip-box__back ul {
  font-size: 85%;
}

.flip-box__back ul li::before {
  content: "▶";
  margin-right: 0.5em;
}

.flip-box__back .btn {
  margin-left: auto;
  margin-right: auto;
}

@-webkit-keyframes shine {
  0% {
    left: -100%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}

@keyframes shine {
  0% {
    left: -100%;
  }
  50% {
    left: 100%;
  }
  100% {
    left: 100%;
  }
}

.support-participatory-list {
  display: flex;
  flex-direction: column;
  gap: 1em;
  font-size: 2rem;
}

.support-participatory-list a {
  display: flex;
  justify-content: center;
  gap: 1em;
  padding: 1em;
  color: var(--color-white);
  text-align: center;
  background-color: #404040;
  mix-blend-mode: lighten;
  transition: opacity 0.5s;
}

.support-participatory-list a:hover {
  opacity: .7;
}

.support-participatory-list a::after {
  content: "";
  width: 1em;
  height: 1em;
  background: url(https://sub42.rabona.click/wp-content/uploads/icon-external-link-white.svg) no-repeat center center/contain;
}

.support-box-wrap {
  counter-reset: cnt;
}

.voice iframe {
  width: 100%;
  height: 64rem;
  aspect-ratio: 960/ 640;
}

.ytp-gradient-top {
  display: none;
}

.archive-categories {
  margin-bottom: 4.5em;
}

/*
.category-list {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
	gap: 1em;

	&__item {
		&--all {
			margin-right: auto;

			@include media(sm) {
				width: 100%;
			}
		}
	}
	&__link {
		display: block;
		padding: 0.25em 0.75em;
		min-width: 10rem;
		color: var(--color-main);
		text-align: center;
		border: 1px solid var(--color-main);
		transition: color 0.5s, background-color 0.5s;

		@include media(sm) {
			min-width: none;
			width: 42.5vw;
		}

		&--all {
			font-size: 2.4rem;
			font-weight: bold;

			@include media(sm) {
				font-size: px2vw(14, ss);
			}
		}

		&[data-active],
		&:hover {
			color: var(--color-white);
			background-color: var(--color-main);
		}
	}
}
*/
.card-list {
  display: flex;
  flex-flow: row wrap;
  gap: 5.5rem;
}

.card-list::after {
  content: "";
  display: block;
  width: 39rem;
  height: 1px;
}

.card-list__item {
  width: 39rem;
}

.card-list__item[data-closed="true"] {
  opacity: 0.5;
}

.card-list__link {
  display: block;
  width: 100%;
}

.card-list__inner {
  display: flex;
  flex-direction: column;
  gap: 1em;
}

.card-list__cate {
  display: flex;
  align-items: center;
  gap: 1em;
}

.card-list__img {
  width: 100%;
}

.card-list__img img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 390 / 260;
  transition-duration: 0.5s;
}

.card-list__img--event img {
  aspect-ratio: 400 / 180;
}

.card-list__link:hover .card-list__img img {
  -webkit-transform: translateZ(0) scale(0.96);
  transform: translateZ(0) scale(0.96);
}

.card-list__title {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  width: 100%;
  font-size: 2.4rem;
  font-weight: 600;
  color: var(--color-black);
  line-height: 1.5;
  text-overflow: ellipsis;
}

.card-list__data {
  display: flex;
  flex-direction: column;
  gap: 1em;
  color: var(--color-black);
}

.card-list__data dl {
  display: flex;
  gap: 0.5em;
}

.card-list__data dl img {
  -o-object-fit: contain;
  object-fit: contain;
}

.media-list {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
  width: 100%;
}

.media-list__item {
  padding: 3.5rem 0;
  border-bottom: 1px solid var(--color-black);
}

.media-list__link {
  display: block;
  width: 100%;
}

.media-list__inner {
  display: flex;
  gap: 2em;
}

.media-list__img {
  width: calc(390 / 1280 * 100%);
}

.media-list__img img {
  width: 100%;
  transition-duration: 0.5s;
}

.media-list__link:hover .media-list__img img {
  border-radius: 6.25rem 0.25rem;
  -webkit-transform: translateZ(0) scale(0.96);
  transform: translateZ(0) scale(0.96);
}

.media-list__title {
  width: calc(850 / 1280 * 100%);
  font-size: 2.4rem;
  color: var(--color-black);
  line-height: 1.5;
}

.media-list__title::after {
  content: "Voice" attr(data-count);
  display: block;
  margin-top: 0.5em;
  font-size: calc(16 / 20 * 100%);
}

.wp-pagenavi {
  margin-top: 8rem;
  text-align: center;
}

.wp-pagenavi .pages {
  display: none;
}

.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  margin: 0 0.5em;
  color: var(--color-black);
  border: none;
  border-radius: 2px;
}

.wp-pagenavi span.extend {
  display: inline-block;
  margin: 0;
}

.wp-pagenavi a:hover,
.wp-pagenavi span.current {
  color: var(--color-white);
  background-color: var(--color-black);
}

@media screen and (max-width: 1920px) {
  [data-css-scroll="ll"] {
    overflow-y: scroll;
  }
  .drawer__home {
    font-size: 1.25vw;
  }
  .menu-drawer-container .menu {
    font-size: 1.25vw;
  }
  .greeting-top__img img {
    right: -14.84375vw;
    width: 60.41667vw;
  }
  .greeting-top__wrapper {
    left: 9.63542vw;
    margin-top: 9.375vw;
    padding: 4.16667vw 5.20833vw;
    width: 36.45833vw;
    height: 36.45833vw;
  }
  .charm-box {
    width: 26.04167vw;
    height: 28.125vw;
  }
  .charm-box__head {
    font-size: 1.5625vw;
  }
  .charm-box__text {
    font-size: 0.9375vw;
  }
  .home-greeting-box {
    padding-top: 0;
    padding-left: 5.72917vw;
  }
  .home-greeting-illust--kumo1 {
    top: 5.20833vw;
    left: 32.8125vw;
    width: 23.54167vw;
  }
  .home-greeting-illust--kumo2 {
    top: 40.10417vw;
    left: -4.16667vw;
    width: 17.8125vw;
  }
  .home-greeting-illust--tsubame {
    top: 33.85417vw;
    left: 23.95833vw;
    width: 22.23958vw;
  }
  .works-list__header {
    font-size: 0.9375vw;
  }
}

@media screen and (max-width: 1600px) {
  [data-css-scroll="xl"] {
    overflow-y: scroll;
  }
  .display-xl {
    display: block;
  }
  .none-xl {
    display: none;
  }
  [data-display="xl"] {
    display: block;
  }
  [data-display-none="xl"] {
    display: none;
  }
  .footer__banner__scroll {
    width: 200%;
  }
  .nav-content::before {
    width: 0;
  }
  .drawer {
    padding: 16.10542vw 8.05271vw 5.12445vw 8.05271vw;
    width: 100%;
  }
  .drawer__home {
    font-size: 1.5vw;
  }
  .menu-drawer-container .menu {
    font-size: 1.5vw;
  }
  .greeting-top__wrap {
    flex-direction: column;
  }
  .greeting-top__img {
    width: 100%;
  }
  .greeting-top__img__inner {
    justify-content: center;
    margin-left: 0;
  }
  .greeting-top__img img {
    right: 0;
    width: 100%;
  }
  .greeting-top__content {
    width: 100%;
  }
  .greeting-top__content__inner {
    justify-content: center;
  }
  .greeting-top__wrapper {
    overflow: visible;
    left: auto;
    margin-top: -9rem;
    padding: 8rem 10rem;
    width: 100%;
    height: auto;
    padding: 0;
    background-color: transparent;
  }
  .charm-wrap {
    align-items: center;
    gap: 2.38095vw;
  }
  .charm-box {
    padding: 8rem 10rem;
    width: 70rem;
    height: auto;
    background-color: var(--color-white);
  }
  .charm-box__head {
    font-size: 3rem;
  }
  .charm-box__text {
    font-size: 1.8rem;
  }
  .section--event .container {
    padding-left: 0;
    padding-right: 0;
  }
  .craftsman-box {
    gap: calc(max(8rem, 80 / 1770 * 100%));
    padding: calc(max(8rem, 80 / 1770 * 100%));
  }
}

@media screen and (max-width: 1366px) {
  [data-css-scroll="base"] {
    overflow-y: scroll;
  }
  .menu-header-container .menu > li > a {
    font-size: 1.4rem;
  }
  .section--greeting1 {
    padding-bottom: 0 !important;
  }
  .wecan-wrap {
    gap: 10.98097vw;
  }
  .wecan-box__content__inner {
    padding-right: 5vw;
  }
  .wecan-box--reverse .wecan-box__content__inner {
    padding-left: 5vw;
  }
  .wecan-box__head {
    font-size: 2.19619vw;
  }
  .wecan-box__text {
    font-size: 1.31772vw;
  }
  .wecan-box__list {
    font-size: 1.31772vw;
  }
  .wecan-box__imgs__wrapper {
    margin-right: 0;
    width: 100%;
  }
  .wecan-box--reverse .wecan-box__imgs__wrapper {
    margin-left: 0;
    width: 100%;
  }
  .wecan-box__imgs__wrapper--01 {
    margin-left: 0;
  }
  .wecan-box__imgs__wrapper--03 {
    margin-left: 0;
  }
  .wecan-box__imgs__wrapper--07 {
    margin-left: 0;
  }
  .greeting-graphs {
    gap: 0 5vw;
  }
  .greeting-company__head {
    font-size: 1.75695vw;
  }
  .greeting-graph {
    width: 24.15813vw;
    font-size: 1.53734vw;
  }
  .greeting-cost-box__head {
    font-size: 1.75695vw;
  }
  .greeting-cost-box__list {
    font-size: 1.75695vw;
  }
  .zoom-up-area__image {
    width: 51.24451vw;
    height: 49.70717vw;
  }
  .zoom-up-area__text > span {
    font-size: 2.19619vw;
  }
  .common-box__image--material {
    margin-right: 0;
    width: calc(100% - 56rem);
  }
  .craftsman-box {
    margin-left: calc(max(4rem, 40 / 1770 * 100%));
    margin-right: calc(max(4rem, 40 / 1770 * 100%));
    font-size: 1.31772vw;
  }
  .craftsman-box::after {
    font-size: 1.75695vw;
  }
  .craftsman-box__head {
    font-size: 2.63543vw;
  }
  .common-box {
    gap: 5.85652vw;
  }
  .common-box--1 {
    padding-right: 0;
    padding-left: 5.85652vw;
  }
  .common-box--2 {
    padding-right: 5.85652vw;
  }
  .common-box__content {
    flex: 1;
    width: 40.99561vw;
  }
  .common-box--2 .common-box__content {
    margin-left: 0;
  }
  .common-box__image {
    flex: 1;
  }
  .common-box__img {
    width: 100%;
  }
  .flip-wrap {
    justify-content: center;
  }
  .card-list {
    justify-content: center;
  }
}

@media screen and (max-width: 1260px) {
  [data-css-scroll="lg"] {
    overflow-y: scroll;
  }
  [data-css-inner="10"] {
    padding-left: 0.73206vw;
    padding-right: 0.73206vw;
  }
  [data-css-mb="10"] {
    margin-bottom: 0.73206vw;
  }
  [data-css-inner="20"] {
    padding-left: 1.46413vw;
    padding-right: 1.46413vw;
  }
  [data-css-mb="20"] {
    margin-bottom: 1.46413vw;
  }
  [data-css-inner="30"] {
    padding-left: 2.19619vw;
    padding-right: 2.19619vw;
  }
  [data-css-mb="30"] {
    margin-bottom: 2.19619vw;
  }
  [data-css-inner="40"] {
    padding-left: 2.92826vw;
    padding-right: 2.92826vw;
  }
  [data-css-mb="40"] {
    margin-bottom: 2.92826vw;
  }
  [data-css-inner="50"] {
    padding-left: 3.66032vw;
    padding-right: 3.66032vw;
  }
  [data-css-mb="50"] {
    margin-bottom: 3.66032vw;
  }
  [data-css-inner="60"] {
    padding-left: 4.39239vw;
    padding-right: 4.39239vw;
  }
  [data-css-mb="60"] {
    margin-bottom: 4.39239vw;
  }
  [data-css-inner="70"] {
    padding-left: 5.12445vw;
    padding-right: 5.12445vw;
  }
  [data-css-mb="70"] {
    margin-bottom: 5.12445vw;
  }
  [data-css-inner="80"] {
    padding-left: 5.85652vw;
    padding-right: 5.85652vw;
  }
  [data-css-mb="80"] {
    margin-bottom: 5.85652vw;
  }
  [data-css-inner="90"] {
    padding-left: 6.58858vw;
    padding-right: 6.58858vw;
  }
  [data-css-mb="90"] {
    margin-bottom: 6.58858vw;
  }
  [data-css-inner="100"] {
    padding-left: 7.32064vw;
    padding-right: 7.32064vw;
  }
  [data-css-mb="100"] {
    margin-bottom: 7.32064vw;
  }
  [data-css-inner="110"] {
    padding-left: 8.05271vw;
    padding-right: 8.05271vw;
  }
  [data-css-mb="110"] {
    margin-bottom: 8.05271vw;
  }
  [data-css-inner="120"] {
    padding-left: 8.78477vw;
    padding-right: 8.78477vw;
  }
  [data-css-mb="120"] {
    margin-bottom: 8.78477vw;
  }
  [data-css-inner="130"] {
    padding-left: 9.51684vw;
    padding-right: 9.51684vw;
  }
  [data-css-mb="130"] {
    margin-bottom: 9.51684vw;
  }
  [data-css-inner="140"] {
    padding-left: 10.2489vw;
    padding-right: 10.2489vw;
  }
  [data-css-mb="140"] {
    margin-bottom: 10.2489vw;
  }
  [data-css-inner="150"] {
    padding-left: 10.98097vw;
    padding-right: 10.98097vw;
  }
  [data-css-mb="150"] {
    margin-bottom: 10.98097vw;
  }
  [data-css-inner="160"] {
    padding-left: 11.71303vw;
    padding-right: 11.71303vw;
  }
  [data-css-mb="160"] {
    margin-bottom: 11.71303vw;
  }
  [data-css-inner="170"] {
    padding-left: 12.4451vw;
    padding-right: 12.4451vw;
  }
  [data-css-mb="170"] {
    margin-bottom: 12.4451vw;
  }
  [data-css-inner="180"] {
    padding-left: 13.17716vw;
    padding-right: 13.17716vw;
  }
  [data-css-mb="180"] {
    margin-bottom: 13.17716vw;
  }
  [data-css-inner="190"] {
    padding-left: 13.90922vw;
    padding-right: 13.90922vw;
  }
  [data-css-mb="190"] {
    margin-bottom: 13.90922vw;
  }
  [data-css-inner="200"] {
    padding-left: 14.64129vw;
    padding-right: 14.64129vw;
  }
  [data-css-mb="200"] {
    margin-bottom: 14.64129vw;
  }
  [data-css-gap="10"] {
    gap: 0.73206vw;
  }
  [data-css-gap="20"] {
    gap: 1.46413vw;
  }
  [data-css-gap="30"] {
    gap: 2.19619vw;
  }
  [data-css-gap="40"] {
    gap: 2.92826vw;
  }
  [data-css-gap="50"] {
    gap: 3.66032vw;
  }
  [data-css-gap="60"] {
    gap: 4.39239vw;
  }
  [data-css-gap="70"] {
    gap: 5.12445vw;
  }
  [data-css-gap="80"] {
    gap: 5.85652vw;
  }
  [data-css-gap="90"] {
    gap: 6.58858vw;
  }
  [data-css-gap="100"] {
    gap: 7.32064vw;
  }
  [data-css-gap="110"] {
    gap: 8.05271vw;
  }
  [data-css-gap="120"] {
    gap: 8.78477vw;
  }
  [data-css-gap="130"] {
    gap: 9.51684vw;
  }
  [data-css-gap="140"] {
    gap: 10.2489vw;
  }
  [data-css-gap="150"] {
    gap: 10.98097vw;
  }
  [data-css-gap="160"] {
    gap: 11.71303vw;
  }
  [data-css-gap="170"] {
    gap: 12.4451vw;
  }
  [data-css-gap="180"] {
    gap: 13.17716vw;
  }
  [data-css-gap="190"] {
    gap: 13.90922vw;
  }
  [data-css-gap="200"] {
    gap: 14.64129vw;
  }
  .display-lg {
    display: block;
  }
  .none-lg {
    display: none;
  }
  [data-display="lg"] {
    display: block;
  }
  [data-display-none="lg"] {
    display: none;
  }
  .text-common {
    font-size: 1.31772vw;
  }
  .wrap-2column {
    flex-flow: column nowrap;
    margin-bottom: 50px;
  }
  .main-column {
    margin-bottom: 50px;
    width: 100%;
  }
  .inner {
    padding: 0;
  }
  .fullWidth {
    min-width: 100%;
  }
  .sp-contents {
    padding-left: 6.4%;
    padding-right: 6.4%;
    width: 100%;
  }
  .content {
    max-width: 100%;
    padding-left: var(--padding-mobile);
    padding-right: var(--padding-mobile);
  }
  .content__inner {
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
  }
  .container {
    max-width: 100%;
    padding-left: var(--padding-mobile);
    padding-right: var(--padding-mobile);
  }
  .section {
    padding-top: 7.32064vw;
    padding-bottom: 7.32064vw;
  }
  .section__inner {
    padding-left: 5.85652vw;
    padding-right: 5.85652vw;
  }
  .footer__cta {
    flex-direction: column;
    align-items: start;
    padding-top: 8vw;
    padding-bottom: 8vw;
  }
  .cta-wrap {
    margin-bottom: 7.32064vw;
  }
  .drawer .cta-box {
    font-size: 1.42857vw;
  }
  .main-visual {
    margin-bottom: 7.93651vw;
  }
  .nav-common {
    right: 5vw;
    top: 14.64129vw;
  }
  .nav-common .menu {
    font-size: 1.31772vw;
  }
  .nav-common .sub-menu {
    font-size: 1.31772vw;
  }
  .drawer__home {
    font-size: 1.90476vw;
  }
  .menu-drawer-container .menu {
    flex-wrap: wrap;
    font-size: 1.90476vw;
  }
  .menu-drawer-container .menu > .menu-item {
    width: 9em;
  }
  .pagination__item {
    font-size: 1.31772vw;
  }
  .pagination__link {
    font-size: 1.31772vw;
  }
  .horizontal-table__row {
    font-size: 1.3vw;
  }
  .cta-title {
    font-size: 2.34261vw;
    border-radius: 1.46413vw;
  }
  .cta-list {
    font-size: 1.75695vw;
  }
  .consultation-info::after {
    right: -0.79365vw;
    bottom: -2.38095vw;
    width: 13.65079vw;
    height: 11.11111vw;
  }
  .swiper-flow img {
    border-radius: 1.46413vw;
  }
  .greeting-top__wrapper {
    margin-top: -7.14286vw;
  }
  .greeting-top__scroll {
    overflow: visible;
  }
  .charm-box__head {
    font-size: 2.38095vw;
  }
  .charm-box__text {
    font-size: 1.42857vw;
  }
  .section--greeting {
    padding-bottom: 22.22222vw !important;
  }
  .section--access {
    background: url(https://sub42.rabona.click/wp-content/uploads/home-access-illust.png) no-repeat right top/calc( 1003 / 1920 * 100%);
  }
  .section--access .container {
    padding-left: 0;
    padding-right: 0;
  }
  .section--topics {
    padding-bottom: 50vw;
  }
  .illust-topics {
    left: 0;
    top: 40vw;
    width: 60vw;
    height: auto;
  }
  .home-news {
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
  }
  .post-list {
    width: 100%;
    gap: 6.66667vw;
  }
  .post-list__title {
    line-height: calc(16 / 11);
    white-space: wrap;
  }
  .home-greeting {
    flex-direction: column;
    gap: 7.05645vw;
  }
  .home-greeting__image {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 75%;
  }
  .home-greeting__content {
    display: flex;
    justify-content: flex-end;
  }
  .home-greeting-box {
    padding-left: 10vw;
    padding-right: 10vw;
    width: 100%;
  }
  .home-greeting-box__catch {
    position: absolute;
    right: 5vw;
    top: -50vw;
    width: 12.5183vw;
    height: auto;
  }
  .home-greeting-box__text {
    width: 100%;
  }
  .home-greeting-illust--kumo1 {
    top: -27.77778vw;
    left: 67.46032vw;
    width: 23.80952vw;
  }
  .home-greeting-illust--kumo2 {
    top: 0vw;
    left: -5.55556vw;
    width: 23.80952vw;
  }
  .home-greeting-illust--tsubame {
    top: 17.46032vw;
    left: 31.74603vw;
    width: 35.71429vw;
  }
  .madein-box__inner {
    padding-left: 0;
    width: 40vw;
  }
  .madein-box .head {
    font-size: 1.1713vw;
  }
  .madein-box__catch {
    font-size: 2.19619vw;
  }
  .madein-box__text {
    width: 100%;
    font-size: 1.31772vw;
  }
  .event-list__header {
    font-size: 1.31772vw;
  }
  .event-list__time {
    font-size: 1.1713vw;
  }
  .event-list__category {
    font-size: 1.1713vw;
  }
  .works-list {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: (1fr)[4];
    grid-template-rows: repeat(4, 1fr);
  }
  .works-list > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .works-list > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .works-list > *:nth-child(3) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .works-list > *:nth-child(4) {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .works-list > *:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .works-list > *:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 2;
  }
  .works-list > *:nth-child(7) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .works-list > *:nth-child(8) {
    -ms-grid-row: 4;
    -ms-grid-column: 2;
  }
  .works-list__item:nth-child(10) {
    display: block;
  }
  .works-list__header {
    font-size: 1.74603vw;
  }
  .common-box__image--material {
    width: 50vw;
  }
  .support-participatory-list {
    font-size: 1.5vw;
  }
}

@media screen and (max-width: 992px) {
  [data-css-scroll="md"] {
    overflow-y: scroll;
  }
  .display-md {
    display: block;
  }
  .none-md {
    display: none;
  }
  [data-display="md"] {
    display: block;
  }
  [data-display-none="md"] {
    display: none;
  }
  .sidebar {
    width: 100%;
  }
  .contents {
    width: 100%;
  }
  .alignfull-md {
    padding-left: 0;
    padding-right: 0;
  }
  .drawer-nav__link--children {
    font-size: 1.6vw;
  }
  .section--topics {
    padding-bottom: 49.33333vw !important;
  }
  .illust-topics {
    top: 53vw;
  }
  .common-box--material {
    flex-direction: column;
  }
  .common-box__content {
    width: 100%;
  }
  .common-box__image--material {
    width: 100%;
  }
  .craftsman-box {
    gap: var(--padding-mobile);
    margin-left: var(--padding-mobile);
    margin-right: var(--padding-mobile);
    padding: var(--padding-mobile);
    flex-flow: column nowrap;
    font-size: 1.81452vw;
  }
  .craftsman-box::after {
    position: relative;
    left: auto;
    right: 0;
    top: -0.5em;
    bottom: auto;
    align-self: flex-end;
  }
  .craftsman-box__content {
    width: 100%;
  }
  .craftsman-box__head {
    font-size: 3.62903vw;
  }
  .craftsman-box__image {
    width: 100%;
    text-align: center;
  }
  .post-wrap {
    flex-direction: column;
    gap: 5vw;
  }
  .sidebar .categories {
    display: none;
  }
}

@media screen and (max-width: 834px) {
  .u-db-pc {
    display: none !important;
  }
  .u-db-sp {
    display: block !important;
  }
  .u-dib-pc {
    display: none !important;
  }
  .u-dib-sp {
    display: inline-block !important;
  }
  .u-di-pc {
    display: none !important;
  }
  .u-di-sp {
    display: inline !important;
  }
}

@media screen and (max-width: 768px) and (max-width: 768px) {
  .menu-drawer-container .menu > .menu-item.menu-item-has-children[data-open] > .sub-menu {
    max-height: 500px;
    transition: max-height 0.5s ease-in;
  }
}

@media screen and (max-width: 768px) {
  [data-css-scroll="sm"] {
    overflow-y: scroll;
  }
  [data-css-inner="10"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="10"] {
    margin-bottom: 1.30208vw;
  }
  [data-css-inner="20"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="20"] {
    margin-bottom: 2.60417vw;
  }
  [data-css-inner="30"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="30"] {
    margin-bottom: 3.90625vw;
  }
  [data-css-inner="40"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="40"] {
    margin-bottom: 5.20833vw;
  }
  [data-css-inner="50"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="50"] {
    margin-bottom: 6.51042vw;
  }
  [data-css-inner="60"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="60"] {
    margin-bottom: 7.8125vw;
  }
  [data-css-inner="70"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="70"] {
    margin-bottom: 9.11458vw;
  }
  [data-css-inner="80"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="80"] {
    margin-bottom: 10.41667vw;
  }
  [data-css-inner="90"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="90"] {
    margin-bottom: 11.71875vw;
  }
  [data-css-inner="100"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="100"] {
    margin-bottom: 13.02083vw;
  }
  [data-css-inner="110"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="110"] {
    margin-bottom: 14.32292vw;
  }
  [data-css-inner="120"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="120"] {
    margin-bottom: 15.625vw;
  }
  [data-css-inner="130"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="130"] {
    margin-bottom: 16.92708vw;
  }
  [data-css-inner="140"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="140"] {
    margin-bottom: 18.22917vw;
  }
  [data-css-inner="150"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="150"] {
    margin-bottom: 19.53125vw;
  }
  [data-css-inner="160"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="160"] {
    margin-bottom: 20.83333vw;
  }
  [data-css-inner="170"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="170"] {
    margin-bottom: 22.13542vw;
  }
  [data-css-inner="180"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="180"] {
    margin-bottom: 23.4375vw;
  }
  [data-css-inner="190"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="190"] {
    margin-bottom: 24.73958vw;
  }
  [data-css-inner="200"] {
    padding-left: 0;
    padding-right: 0;
  }
  [data-css-mb="200"] {
    margin-bottom: 26.04167vw;
  }
  [data-css-gap="10"] {
    gap: 1.30208vw;
  }
  .gap--10px {
    gap: 1.33333vw;
  }
  [data-css-gap="20"] {
    gap: 2.60417vw;
  }
  .gap--20px {
    gap: 2.66667vw;
  }
  [data-css-gap="30"] {
    gap: 3.90625vw;
  }
  .gap--30px {
    gap: 4vw;
  }
  [data-css-gap="40"] {
    gap: 5.20833vw;
  }
  .gap--40px {
    gap: 5.33333vw;
  }
  [data-css-gap="50"] {
    gap: 6.51042vw;
  }
  .gap--50px {
    gap: 6.66667vw;
  }
  [data-css-gap="60"] {
    gap: 7.8125vw;
  }
  .gap--60px {
    gap: 8vw;
  }
  [data-css-gap="70"] {
    gap: 9.11458vw;
  }
  .gap--70px {
    gap: 9.33333vw;
  }
  [data-css-gap="80"] {
    gap: 10.41667vw;
  }
  .gap--80px {
    gap: 10.66667vw;
  }
  [data-css-gap="90"] {
    gap: 11.71875vw;
  }
  .gap--90px {
    gap: 12vw;
  }
  [data-css-gap="100"] {
    gap: 13.02083vw;
  }
  .gap--100px {
    gap: 13.33333vw;
  }
  [data-css-gap="110"] {
    gap: 14.32292vw;
  }
  .gap--110px {
    gap: 14.66667vw;
  }
  [data-css-gap="120"] {
    gap: 15.625vw;
  }
  .gap--120px {
    gap: 16vw;
  }
  [data-css-gap="130"] {
    gap: 16.92708vw;
  }
  .gap--130px {
    gap: 17.33333vw;
  }
  [data-css-gap="140"] {
    gap: 18.22917vw;
  }
  .gap--140px {
    gap: 18.66667vw;
  }
  [data-css-gap="150"] {
    gap: 19.53125vw;
  }
  .gap--150px {
    gap: 20vw;
  }
  [data-css-gap="160"] {
    gap: 20.83333vw;
  }
  .gap--160px {
    gap: 21.33333vw;
  }
  [data-css-gap="170"] {
    gap: 22.13542vw;
  }
  .gap--170px {
    gap: 22.66667vw;
  }
  [data-css-gap="180"] {
    gap: 23.4375vw;
  }
  .gap--180px {
    gap: 24vw;
  }
  [data-css-gap="190"] {
    gap: 24.73958vw;
  }
  .gap--190px {
    gap: 25.33333vw;
  }
  [data-css-gap="200"] {
    gap: 26.04167vw;
  }
  .gap--200px {
    gap: 26.66667vw;
  }
  .display-sm {
    display: block;
  }
  .none-sm {
    display: none;
  }
  [data-display="sm"] {
    display: block;
  }
  [data-display-none="sm"] {
    display: none;
  }
  html {
    font-size: 3.6vw;
  }
  body {
    font-size: 2.93333vw;
  }
  .text-common {
    font-size: 3.6vw;
  }
  html,
  body {
    scroll-padding-top: 20vw;
  }
  body {
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .main {
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .home .main {
    padding-left: 5.33333vw;
    padding-right: 5.33333vw;
  }
  .content--page {
    padding-top: 13.02083vw;
    padding-bottom: 39.0625vw;
  }
  .section {
    padding-top: 10vw;
    padding-bottom: 10vw;
  }
  .section__inner {
    padding-left: 0;
    padding-right: 0;
  }
  .alignfull-sm {
    padding-left: 0;
    padding-right: 0;
  }
  .header {
    padding: 5vw;
  }
  .header__contact {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 8.53333vw;
    height: 8.53333vw;
    border-radius: 50%;
  }
  .header__contact span {
    display: none;
  }
  .header__contact svg {
    display: block;
    width: 50%;
    height: auto;
  }
  .menu-header-container .menu {
    gap: 0;
  }
  .menu-header-container .menu a {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    gap: 1vw;
    width: 12vw;
    height: 12vw;
  }
  .menu-cta-container .menu {
    gap: 3.2vw;
  }
  .menu-cta-container a {
    font-size: 3.2vw;
  }
  body.page-template-default:not(.home) .footer {
    margin-top: -21.33333vw;
  }
  .footer__banner {
    margin-bottom: 13.33333vw;
  }
  .footer__banner__scroll {
    width: 400%;
    height: 12vw;
  }
  .footer__banner__bg {
    aspect-ratio: 380 / 212;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .footer__top {
    padding-left: 5.33333vw;
    padding-right: 5.33333vw;
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .footer__recruit {
    padding-top: 13.33333vw;
    padding-bottom: 24vw;
  }
  .footer__wrap--top {
    height: 141.33333vw;
  }
  .footer__wrap--common {
    padding-top: 3em;
    height: 64vw;
    background: url(https://sub42.rabona.click/wp-content/uploads/footer-bg-sp.jpg) no-repeat center center/cover;
  }
  .footer__inner {
    flex-flow: column nowrap;
    gap: 1em;
    padding-left: 8vw;
    padding-right: 8vw;
  }
  .footer__logo {
    width: 28.26667vw;
  }
  .footer__text {
    font-size: 3.2vw;
    line-height: calc( 24 / 12);
    letter-spacing: 0.05em;
  }
  .footer__illust {
    width: 38.4vw;
    height: auto;
  }
  .footer__copyright {
    width: 100%;
    font-size: 2.13333vw;
    text-align: center;
  }
  .banner-list {
    flex-direction: column;
    align-items: center;
    gap: 9.33333vw;
    margin-top: -9.33333vw;
  }
  .banner-list__link {
    padding: 5.33333vw;
    width: 71.46667vw;
    height: 59.73333vw;
  }
  .banner-list__title {
    font-size: 3.73333vw;
  }
  .banner-list__img {
    width: 42.66667vw;
  }
  .footer-slide img {
    width: auto;
    height: 141.33333vw;
  }
  .cta-wrap {
    flex-direction: column;
    gap: 13.33333vw;
    margin-bottom: 26.66667vw;
  }
  .drawer .cta-box {
    font-size: 2.93333vw;
  }
  .cta-box__address {
    font-size: 2.66667vw;
  }
  .menu-sns-container .menu {
    justify-content: start;
    gap: 6.4vw;
  }
  .menu-sns-container a {
    height: 3.73333vw;
    font-size: 2.93333vw;
  }
  .drawer .menu-sns-container a {
    width: 3.73333vw;
    height: 3.73333vw;
  }
  .menu-sns-container a::before {
    width: 3.73333vw;
    height: 3.73333vw;
  }
  .breadcrumbs {
    justify-content: flex-start;
    font-size: 2.66667vw;
  }
  .main-visual {
    overflow-x: hidden;
  }
  .nav-common {
    top: 30vw;
  }
  .nav-common .menu {
    gap: 1em;
    font-size: 3.6vw;
  }
  .nav-common .sub-menu {
    font-size: 3.6vw;
  }
  .drawer-btn {
    top: 4.8vw;
    right: 8vw;
    width: 8vw;
    height: 8vw;
  }
  .drawer-btn__line {
    height: 1px;
  }
  .drawer-btn__line--1 {
    -webkit-transform: translateY(-1.6vw) scale(calc( 50 / 90));
    transform: translateY(-1.6vw) scale(calc( 50 / 90));
  }
  .drawer-btn__line--3 {
    -webkit-transform: translateY(1.6vw);
    transform: translateY(1.6vw);
  }
  .drawer {
    padding: 24vw 8vw 8vw 8vw;
  }
  .drawer__home {
    flex-flow: column nowrap;
    margin-bottom: 2em;
    font-size: 3.73333vw;
  }
  .drawer__info {
    margin-bottom: 5.33333vw;
    font-size: 2.66667vw;
  }
  .drawer__logo {
    margin-bottom: 5.33333vw;
    width: 24vw;
  }
  .menu-drawer-container {
    margin-bottom: 26.66667vw;
  }
  .menu-drawer-container .menu {
    flex-flow: column nowrap;
    gap: 2em;
    font-size: 3.73333vw;
  }
  .menu-drawer-container .menu > .menu-item {
    width: auto;
    cursor: pointer;
  }
  .menu-drawer-container .menu > .menu-item.menu-item-has-children > a::after {
    content: "▶";
    display: inline-block;
    margin-left: .5em;
    width: 1em;
    height: 1em;
    font-family: var(--font-gothic);
    line-height: 1;
    vertical-align: -10%;
    -webkit-transform: rotate(0deg) scale(75%);
    transform: rotate(0deg) scale(75%);
    -webkit-transform-origin: center;
    transform-origin: center;
    transition: -webkit-transform 0.5s;
    transition: transform 0.5s;
    transition: transform 0.5s, -webkit-transform 0.5s;
  }
  .menu-drawer-container .menu > .menu-item.menu-item-has-children[data-open] > a::after {
    -webkit-transform: rotate(90deg) scale(75%);
    transform: rotate(90deg) scale(75%);
  }
  .menu-drawer-container .menu > .menu-item > .sub-menu {
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-out;
    will-change: max-height;
    -webkit-overflow-scrolling: touch;
  }
  .menu-drawer-container .sub-menu {
    padding: .5em 1.5em 0 2em;
    font-size: 2.66667vw;
  }
  .menu-drawer-container .sub-menu > .menu-item {
    margin-top: 1em;
  }
  .pagetop {
    right: 3vw;
    bottom: 3vw;
    width: 12vw;
    height: 12vw;
  }
  .pagetop[data-stroke="true"] {
    border: 0.75vw solid var(--color-gray);
  }
  .pagetop:before {
    top: 2.4vw;
    width: 4vw;
    height: 4vw;
    border-left: 0.75vw solid var(--color-gray);
    border-bottom: 0.75vw solid var(--color-gray);
  }
  .pagetop::after {
    font-size: 2.4vw;
  }
  .nav-link {
    gap: 5vw;
  }
  .nav-link__item {
    font-size: 4vw;
  }
  .nav-link__link {
    font-size: 4vw;
  }
  .pagination {
    overflow-x: scroll;
  }
  .pagination__item {
    margin: 0 0.25em;
    font-size: 4vw;
  }
  .pagination__link {
    min-width: 10vw;
    height: 10vw;
    line-height: 10vw;
    font-size: 4vw;
  }
  .btn-common,
  submit.btn-common {
    width: 40vw;
    height: 13.33333vw;
    font-size: 3.2vw;
  }
  .page-head-wrap--a {
    margin-bottom: -34.66667vw;
  }
  .page-head {
    font-size: 6.93333vw;
  }
  .page-head__img {
    width: auto;
    height: 8.8vw;
  }
  .page-head::after {
    font-size: 2.66667vw;
  }
  .page-header {
    padding-top: 36vw;
    padding-bottom: 0;
  }
  .drawer-nav {
    gap: 5.33333vw;
    height: 90.66667vw;
  }
  .drawer-nav__item {
    width: 40vw;
  }
  .drawer-nav__link {
    font-size: 3.73333vw;
  }
  .drawer-nav__link--parent {
    font-size: 4vw;
  }
  .horizontal-table__row {
    font-size: 3.6vw;
  }
  .horizontal-table--sm-scroll {
    padding-bottom: 5vw;
    overflow-x: auto;
  }
  .horizontal-table--sm-vertical .horizontal-table__head {
    display: list-item;
    padding: .75em 0 0.25em;
    width: 100%;
    font-size: 3.6vw;
    font-weight: bold;
    list-style: none;
  }
  .horizontal-table--sm-vertical .horizontal-table__text {
    display: list-item;
    padding: 0.25em 0 .75em;
    width: 100%;
    font-size: 3.3vw;
    list-style: none;
  }
  .horizontal-table--sm-vertical--contact .horizontal-table__head {
    padding: 1em 1em 0.5em;
    width: 100%;
  }
  .vertical-table--sm-scroll {
    padding-bottom: 5vw;
    overflow-x: auto;
  }
  .cta-title {
    font-size: 4.5vw;
  }
  .cta-list {
    font-size: 4vw;
  }
  .cta-list + p {
    text-align: center;
  }
  .home .loading-mask::before {
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .loading-mask__link {
    width: 25vw;
    height: auto;
  }
  .visited .home .loading-mask__link,
  .wf-active .home .loading-mask__link {
    width: 10vw;
  }
  body:not(.home) .loading-mask__link {
    width: 10vw;
  }
  .common-wrap__text--1 {
    font-size: 5.33333vw;
  }
  .common-wrap [href^="tel"] {
    font-size: 6.93333vw;
  }
  .characteristic-head {
    font-size: 4.26667vw;
  }
  .inner-frame {
    padding: 5vw;
  }
  .inner-solid {
    padding: 5vw;
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .inner-box {
    gap: 5vw;
  }
  .inner-box--padding {
    padding-top: 5vw;
    padding-bottom: 5vw;
  }
  .inner-box__padding > * {
    padding-bottom: 1em;
  }
  .inner-box__padding > *:not(:first-child) {
    padding-top: 1em;
  }
  .inner-box__content {
    width: 100%;
  }
  .inner-box__image {
    width: 100%;
    text-align: center;
  }
  .inner-box__list {
    margin-bottom: 1em;
  }
  .common-box__content--zeh {
    width: 100%;
  }
  .common-box__content--zeh h3 {
    font-size: 4.26667vw;
  }
  .common-box__content--zeh table {
    width: 100%;
  }
  .zeh-frame {
    padding: 5vw;
    width: 100%;
  }
  .consultation-info::after {
    right: 1.30208vw;
    bottom: -3.90625vw;
    width: 22.39583vw;
    height: 18.22917vw;
  }
  .consultation-info__data {
    padding: 5vw;
  }
  .consultation-info__data dt {
    font-size: 3.73333vw;
  }
  .form-table dl {
    flex-direction: column;
  }
  .form-table dt {
    padding: 0.5em 0;
    width: 100%;
  }
  .form-table dd {
    padding: 0.5em 0;
    width: 100%;
  }
  .form-table dd > div {
    gap: 3vw;
  }
  .form-table input[type="text"],
  .form-table input[type="email"],
  .form-table input[type="tel"],
  .form-table input[type="date"],
  .form-table select,
  .form-table textarea {
    font-size: 2.93333vw;
  }
  .form-table input[type="text"],
  .form-table input[type="email"],
  .form-table input[type="tel"],
  .form-table input[type="date"],
  .form-table select {
    min-height: 3em;
  }
  .form-table textarea {
    min-height: 50vw;
  }
  .form-table input[type="checkbox"] + span {
    font-size: 2.93333vw;
  }
  .form-table .wpcf7-not-valid-tip {
    font-size: 2.93333vw;
  }
  input[type="submit"] {
    width: 100%;
    font-size: 3.73333vw;
  }
  .inner-link {
    justify-content: space-between;
    gap: 5vw 0;
    margin-bottom: 13.33333vw;
    font-size: 3.6vw;
  }
  .inner-link__link {
    width: 42.5vw;
    height: 2em;
  }
  .dictionary-wrap {
    gap: 13.33333vw;
  }
  .dictionary-head {
    font-size: 4.5vw;
  }
  .dictionary-description {
    padding: 10vw 5vw;
  }
  .dictionary-description img {
    height: auto;
  }
  .accordion__summary {
    padding: 5vw;
    font-size: 3.73333vw;
  }
  .accordion__summary::after {
    right: 5vw;
    top: 1.35em;
    width: 5.33333vw;
    height: 5.33333vw;
    font-size: 3.73333vw;
  }
  .accordion__summary p {
    font-size: 2.93333vw;
  }
  .accordion__title--style {
    flex-direction: column;
    align-items: flex-start;
  }
  .accordion__title--style::after {
    content: none;
  }
  .accordion__inner {
    padding: 0 5vw 5vw;
  }
  .dictionary .accordion__inner {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 5vw;
  }
  .accordion__inner img {
    max-width: 100%;
    height: auto;
  }
  .style .accordion h3 {
    font-size: 4.4vw;
  }
  .style .accordion .wp-block-columns {
    gap: 5vw;
  }
  .style .accordion .wp-block-column .wp-block-image img {
    max-height: none;
    max-width: 100%;
    height: auto;
  }
  .flow-box__head {
    font-size: 4.5vw;
  }
  .flow-chara--free::after, .flow-chara--paid::before {
    width: 21.86667vw;
    height: 44.53333vw;
  }
  .swiper-flow img {
    border-radius: 5.33333vw;
  }
  .page-main {
    height: 141.33333vw;
  }
  .page-main__inner {
    padding-left: 8vw;
    padding-right: 8vw;
    height: 141.33333vw;
  }
  .common-header {
    margin-bottom: 10.66667vw;
  }
  .common-head {
    font-size: 4.8vw;
  }
  .common-text {
    font-size: 2.93333vw;
  }
  .greeting-top__img {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: auto;
  }
  .greeting-top__img img {
    max-width: auto;
    aspect-ratio: 375 / 352;
  }
  .greeting-top__wrapper {
    margin-top: -8vw;
  }
  .charm-wrap {
    gap: 8vw;
    width: 100%;
  }
  .charm-box {
    padding: 9.33333vw;
    width: 73.33333vw;
  }
  .charm-box__head {
    font-size: 4.53333vw;
  }
  .charm-box__text {
    font-size: 2.66667vw;
  }
  .wecan-wrap {
    gap: 13.33333vw;
  }
  .wecan-box {
    flex-direction: column;
    gap: 6.66667vw;
  }
  .wecan-box__content {
    width: 100%;
  }
  .wecan-box__content__inner {
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
       /* max-width: 54.66667vw; */
  }
  .wecan-box--reverse .wecan-box__content__inner {
    padding-left: 2.66667vw;
  }
  .wecan-box__head {
    font-size: 3.73333vw;
  }
  .wecan-box__head::before {
    margin-bottom: .25em;
  }
  .wecan-box__text {
    font-size: 2.66667vw;
  }
  .wecan-box__list {
    font-size: 2.66667vw;
  }
  .wecan-box__imgs {
    margin-right: 0;
    width: 100%;
  }
  .wecan-box__imgs__wrapper {
    gap: 2.66667vw;
    margin-right: 0;
  }
  .wecan-box--reverse .wecan-box__imgs__wrapper {
    margin-left: 0;
  }
  .wecan-box--column .wecan-box__imgs__wrapper {
    margin-left: 0;
  }
  .wecan-box__imgs__wrapper--04 {
    -ms-grid-columns: (auto)[1];
    grid-template-columns: repeat(1, auto);
    -ms-grid-rows: (auto)[4];
    grid-template-rows: repeat(4, auto);
    justify-content: center;
  }
  .wecan-box__imgs__wrapper--04 > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .wecan-box__imgs__wrapper--04 > *:nth-child(2) {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .wecan-box__imgs__wrapper--04 > *:nth-child(3) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .wecan-box__imgs__wrapper--04 > *:nth-child(4) {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .wecan-box__imgs__wrapper--05 {
    -ms-grid-columns: auto;
    grid-template-columns: auto;
    justify-content: center;
  }
  .wecan-box__imgs__wrapper--06 {
    -ms-grid-columns: auto;
    grid-template-columns: auto;
    justify-content: center;
  }
  .greeting-graphs {
    padding-bottom: 5vw;
    margin-bottom: 5vw;
  }
  .greeting-company {
    flex: 1;
  }
  .greeting-company__head {
    margin-bottom: 1em;
    font-size: 3.73333vw;
  }
  .greeting-graph {
    width: 100%;
    height: 50vw;
    font-size: 3.2vw;
  }
  .greeting-cost dl {
    flex-direction: column;
    gap: 0.5em;
  }
  .greeting-cost dt {
    width: 100%;
  }
  .greeting-cost dd {
    width: 100%;
  }
  .greeting-cost-head {
    font-size: 4.26667vw;
  }
  .greeting-cost-box {
    flex-direction: column;
    gap: 5.33333vw;
  }
  .greeting-cost-box__head {
    width: 48vw;
    font-size: 3.2vw;
  }
  .greeting-cost-box__list {
    font-size: 3.46667vw;
  }
  .hinoki-project-bottom {
    margin-top: 13vw;
  }
  .hinoki-project-bottom__text {
    font-size: 3.73333vw;
  }
  .hp-icon-list {
    gap: 2vw;
  }
  .hp-icon-list__item {
    width: calc(100% / 3);
  }
  .hinoki-wrap {
    align-items: center;
    gap: 21.33333vw;
    padding-top: 34.66667vw;
    padding-bottom: 34.66667vw;
  }
  .hinoki-box {
    padding: 9.33333vw;
    width: 73.33333vw;
  }
  .hinoki-box__head {
    font-size: 4.53333vw;
  }
  .hinoki-box__text {
    font-size: 2.66667vw;
  }
  .section--event {
    border-radius: 0 0 7.5vw 7.5vw;
  }
  .section--greeting {
    padding-bottom: 53.33333vw !important;
  }
  .section--access {
    padding-bottom: 64vw;
    background: url(https://sub42.rabona.click/wp-content/uploads/home-access-illust.png) no-repeat center bottom 10vw/95%;
  }
  .section--access .cta-box__head {
    font-size: 4.8vw;
  }
  .illust-topics {
    top: 76vw;
  }
  .mainvisual__slider img {
    height: auto;
    aspect-ratio: 375 / 677;
  }
  .mainvisual__container {
    margin-bottom: -22.66667vw;
  }
  .mainvisual__text {
    font-size: 7.46667vw;
  }
  .mainvisual__text__jp {
    margin-top: 1.5em;
  }
  .head-wrap--event, .head-wrap--works {
    margin-bottom: 5.33333vw;
  }
  .head-wrap--topics {
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
    margin-bottom: 3em;
    width: 100%;
  }
  .head {
    font-size: 2.13333vw;
  }
  .head-wrap--cta .head {
    font-size: 2.13333vw;
  }
  .head-wrap--cta .head::before {
    font-size: 5.33333vw;
  }
  .post-list__time {
    font-size: 2.66667vw;
  }
  .post-list__category {
    font-size: 2.66667vw;
  }
  .post-list__title {
    width: 70%;
    max-height: 3em;
  }
  .home-greeting {
    gap: 18.66667vw;
  }
  .home-greeting__image {
    width: auto;
  }
  .home-greeting-img {
    aspect-ratio: 345 / 520;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .home-greeting-box {
    padding-left: 0;
    padding-right: 8vw;
    width: 100%;
  }
  .home-greeting-box__catch {
    position: relative;
    left: 0;
    top: 0;
    width: 26.66667vw;
  }
  .home-greeting-box__text {
    padding-right: 16vw;
    width: 100%;
    font-size: 3.2vw;
  }
  .home-greeting-illust--kumo1 {
    top: 40vw;
    left: 53.33333vw;
    width: 53.33333vw;
  }
  .home-greeting-illust--kumo2 {
    top: 112vw;
    left: -16vw;
    width: 53.33333vw;
  }
  .home-greeting-illust--tsubame {
    top: 133.33333vw;
    left: 21.33333vw;
    width: 53.33333vw;
  }
  .zoom-up-area {
    min-height: 275vw;
  }
  .zoom-up-area__inner {
    min-height: 275vw;
  }
  .zoom-up-area__image {
    width: 72vw;
    height: 96vw;
  }
  .zoom-up-area__text {
    top: 35%;
    left: 40%;
  }
  .zoom-up-area__text > span {
    font-size: 4.8vw;
  }
  .horizontal {
    flex-direction: column;
    width: 100%;
  }
  .madein-box {
    flex-direction: column;
    height: auto;
  }
  .madein-box__content {
    flex: auto;
    padding: 10.66667vw 5.33333vw;
  }
  .madein-box__inner {
    width: 100%;
  }
  .madein-box .head {
    font-size: 2.13333vw;
  }
  .madein-box__catch {
    font-size: 4.8vw;
  }
  .madein-box__text {
    padding-right: 13.33333vw;
    width: 100%;
    font-size: 3.2vw;
  }
  .madein-box__image {
    flex: auto;
  }
  .madein-box__img {
    height: auto;
    aspect-ratio: 375 / 430;
  }
  .home-event-list {
    flex-direction: column;
    align-items: center;
    padding: 0;
  }
  .event-list {
    -ms-grid-columns: 1fr;
    grid-template-columns: repeat(1, 1fr);
    gap: 10.66667vw;
  }
  .event-list__header {
    flex-flow: column nowrap;
    align-items: flex-start;
    gap: 0.5em 0;
    font-size: 3.2vw;
  }
  .event-list__time {
    font-size: 2.93333vw;
  }
  .event-list__category {
    font-size: 2.93333vw;
  }
  .works-list {
    -ms-grid-rows: 1fr 9.33333vw 1fr 9.33333vw 1fr 9.33333vw 1fr 9.33333vw 1fr;
    grid-template-rows: repeat(5, 1fr);
    gap: 9.33333vw 4vw;
    margin-right: 0;
  }
  .works-list__img {
    aspect-ratio: 1 / 1;
  }
  .works-list__header {
    font-size: 3.2vw;
  }
  .home-works {
    margin-left: 0;
    font-size: 5.86667vw;
  }
  .home-works__img {
    width: 44.26667vw;
    height: auto;
  }
  .home-works__wrap {
    width: 57.33333vw;
  }
  .home-works__text::after {
    width: 8vw;
    height: 10.66667vw;
  }
  .swiper-button-wrap {
    width: 10.13333vw;
  }
  .home .swiper-button-wrap {
    right: 8vw;
    top: -9.6vw;
  }
  .material .swiper-button-wrap {
    top: -2.66667vw;
  }
  .swiper-button-prev,
  .swiper-button-next {
    display: block !important;
    width: 4.53333vw !important;
    height: 4.53333vw !important;
  }
  .swiper-button-prev::after,
  .swiper-button-next::after {
    padding-bottom: 0.8vw !important;
    width: 4.53333vw !important;
    height: 4.53333vw !important;
    line-height: 4.53333vw !important;
    font-size: 2.13333vw !important;
  }
  .btn {
    width: 17.06667vw;
    font-size: 2.13333vw;
  }
  .btn::after {
    width: 100%;
  }
  .btn--s {
    width: 10.93333vw;
  }
  .greeting .main .btn {
    width: 23.46667vw;
    font-size: 2.66667vw;
  }
  .btn--contact {
    width: 19.73333vw;
  }
  .btn--event {
    width: 28.26667vw;
  }
  .btn--post-header {
    width: 26.66667vw;
  }
  .gallery {
    grid-template-areas: "g1  g1" "g2  g2" "g2  g2" "g3  g4" "g5  g5" "g6  g7" "g6  g8" "g9  g9" "g9  g9" "g10 g10" "g10 g10" "g11 g11" "g12 g13" "g15 g15" "g14 g14";
    -ms-grid-rows: (56vw)[14];
    grid-template-rows: repeat(14, 56vw);
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
  .gallery__box--1 {
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--2 {
    -ms-grid-row: 2;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--3 {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }
  .gallery__box--4 {
    -ms-grid-row: 4;
    -ms-grid-column: 2;
  }
  .gallery__box--5 {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--6 {
    -ms-grid-row: 6;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .gallery__box--7 {
    -ms-grid-row: 6;
    -ms-grid-column: 2;
  }
  .gallery__box--8 {
    -ms-grid-row: 7;
    -ms-grid-column: 2;
  }
  .gallery__box--9 {
    -ms-grid-row: 8;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--10 {
    -ms-grid-row: 10;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--11 {
    -ms-grid-row: 12;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--12 {
    -ms-grid-row: 13;
    -ms-grid-column: 1;
  }
  .gallery__box--13 {
    -ms-grid-row: 13;
    -ms-grid-column: 2;
  }
  .gallery__box--14 {
    -ms-grid-row: 15;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .gallery__box--15 {
    -ms-grid-row: 14;
    -ms-grid-column: 1;
    -ms-grid-column-span: 2;
  }
  .home-googlemap {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    margin-bottom: 16vw;
    max-width: none;
    width: 113%;
    aspect-ratio: 375/240;
  }
  .material-head {
    font-size: 4.5vw;
  }
  .common-box__image--material::before, .common-box__image--material::after {
    background: url(https://sub42.rabona.click/wp-content/uploads/bg.jpg) repeat center center/960px;
  }
  .material-list {
    margin-top: 0;
  }
  .craftsman-wrap {
    margin-top: 21.33333vw;
  }
  .craftsman-box {
    padding: 10vw var(--padding-mobile) var(--padding-mobile);
    font-size: 2.93333vw;
  }
  .craftsman-box::after {
    font-size: 3.125vw;
  }
  .craftsman-box__head {
    font-size: 5.33333vw;
  }
  .section-wrap {
    gap: 20vw;
  }
  .section-wrap--padding {
    gap: 0;
  }
  .section-wrap--padding .page-section {
    padding-top: 10vw;
    padding-bottom: 20vw;
  }
  .page-section--cost {
    padding-top: 16vw;
  }
  .page-section--last {
    padding-bottom: 40vw !important;
  }
  .page-section__head {
    margin-bottom: 2em;
    font-size: 5vw;
  }
  .page-section__sub {
    font-size: 4.5vw;
  }
  .content__inner > .page-section__head + .page-section__text {
    margin-bottom: 10vw;
    font-size: 3.2vw;
  }
  .common-box {
    gap: 13.33333vw;
  }
  .common-box--1 {
    flex-flow: column nowrap;
    margin-left: 0;
    padding-left: 0;
  }
  .common-box--2 {
    flex-flow: column nowrap;
    margin-right: 0;
    padding-right: 0;
  }
  .common-box__content {
    gap: 5vw;
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
    width: 100%;
  }
  .common-box__inner {
    gap: 5vw;
  }
  .post-header {
    margin-bottom: 10vw;
  }
  .post-header__voice {
    gap: 0.5em;
  }
  .post-header__voice h2 {
    font-size: 4.26667vw;
  }
  .post-header__voice dl {
    font-size: 3.2vw;
  }
  .post-header__event dl {
    font-size: 3.2vw;
  }
  .post-header__event dt img {
    width: 3.2vw;
    height: 3.2vw;
  }
  .single-post .post-content h2,
  .single-post .post-content h3,
  .single-post .post-content h4,
  .single-post .post-content h5,
  .single-post .post-content h6,
  .single-event .post-content h2,
  .single-event .post-content h3,
  .single-event .post-content h4,
  .single-event .post-content h5,
  .single-event .post-content h6,
  .single-works .post-content h2,
  .single-works .post-content h3,
  .single-works .post-content h4,
  .single-works .post-content h5,
  .single-works .post-content h6,
  .single-voice .post-content h2,
  .single-voice .post-content h3,
  .single-voice .post-content h4,
  .single-voice .post-content h5,
  .single-voice .post-content h6 {
    margin-top: 6vw;
  }
  .single-post .post-content h2,
  .single-event .post-content h2,
  .single-works .post-content h2,
  .single-voice .post-content h2 {
    font-size: 6vw;
  }
  .single-post .post-content h3,
  .single-event .post-content h3,
  .single-works .post-content h3,
  .single-voice .post-content h3 {
    font-size: 5.5vw;
  }
  .single-post .post-content h4,
  .single-event .post-content h4,
  .single-works .post-content h4,
  .single-voice .post-content h4 {
    font-size: 5vw;
  }
  .single-post .post-content h5,
  .single-event .post-content h5,
  .single-works .post-content h5,
  .single-voice .post-content h5 {
    font-size: 4.5vw;
  }
  .single-post .post-content h6,
  .single-event .post-content h6,
  .single-works .post-content h6,
  .single-voice .post-content h6 {
    font-size: 4vw;
  }
  .archive-categories .categories--works {
    justify-content: flex-start;
  }
  .archive-categories .categories--works .cat-item:nth-child(1) {
    width: 100%;
  }
  .archive-categories .categories--works .cat-item:nth-child(1) a {
    font-size: 3.73333vw;
  }
  .archive-categories .categories a {
    min-width: none;
    width: 42.5vw;
  }
  .privacy .main h2 {
    font-size: 4.26667vw;
  }
  .common-table td {
    display: list-item;
  }
  .common-table td:nth-child(1) {
    padding: 1em 0 0.25em;
    width: 100%;
    border: none;
  }
  .common-table td:nth-child(2) {
    padding: 0.25em 0 1em;
    width: 100%;
  }
  .common-frame {
    padding: 5vw;
  }
  .flip-wrap {
    gap: 8vw;
    padding-left: 2.66667vw;
    padding-right: 2.66667vw;
  }
  .flip-wrap::after {
    width: 84vw;
  }
  .flip-wrap--sm-2 {
    justify-content: space-between;
    gap: 5.33333vw 0;
    padding-left: 0;
    padding-right: 0;
  }
  .flip-wrap--sm-2 .flip-box {
    width: calc(82.66667vw / 2);
    height: calc(99.2vw / 2);
  }
  .flip-wrap--sm-2 .flip-box__front__inner, .flip-wrap--sm-2 .flip-box__back__inner {
    padding: 3.6vw;
  }
  .flip-wrap--sm-2 .flip-box__front {
    border: 0.66667vw solid var(--color-white);
  }
  .flip-wrap--sm-2 .flip-box__front__head {
    font-size: 3.2vw;
  }
  .flip-wrap--sm-2 .flip-box__front__head::before {
    font-size: 5.33333vw;
  }
  .flip-wrap--sm-2 .flip-box__front__head::after {
    height: 12vw;
  }
  .flip-wrap--sm-2 .flip-box__front__face {
    height: 16vw;
  }
  .flip-wrap--sm-2 .flip-box__front__name {
    font-size: 2.93333vw;
  }
  .flip-wrap--sm-2 .flip-box__front__duty {
    font-size: 2.13333vw;
  }
  .flip-wrap--sm-2 .flip-box__front__corner {
    width: 6.66667vw;
    height: 6.66667vw;
  }
  .flip-wrap--sm-2 .flip-box__back {
    font-size: 2.8vw;
    line-height: 1.75;
  }
  .flip-wrap--sm-2 .flip-box__back__catch {
    font-size: 3.6vw;
  }
  .flip-wrap--sm-2 .flip-box__back__text {
    font-size: 2.8vw;
  }
  .flip-wrap--sm-2 .flip-box:nth-child(1) .flip-box__back, .flip-wrap--sm-2 .flip-box:nth-child(7) .flip-box__back {
    line-height: 1.5;
  }
  .flip-box {
    width: 84vw;
    height: 99.2vw;
  }
  .flip-box__front__inner, .flip-box__back__inner {
    padding: 9.33333vw;
  }
  .flip-box__front {
    border: 1.33333vw solid var(--color-white);
  }
  .flip-box__front__head {
    font-size: 6.4vw;
  }
  .flip-box__front__head::before {
    font-size: 10.66667vw;
  }
  .flip-box__front__head::after {
    height: 24vw;
  }
  .flip-box__front__face {
    height: 32vw;
  }
  .flip-box__front__name {
    font-size: 5.86667vw;
  }
  .flip-box__front__duty {
    font-size: 4.26667vw;
  }
  .flip-box__front__corner {
    width: 14.66667vw;
    height: 14.66667vw;
  }
  .flip-box__back {
    font-size: 3.73333vw;
  }
  .flip-box__back__catch {
    font-size: 4.8vw;
  }
  .flip-box__back__text {
    font-size: 3.73333vw;
  }
  .support-participatory-list {
    font-size: 3vw;
  }
  .voice iframe {
    height: auto;
  }
  .card-list {
    justify-content: space-between;
    gap: 7.5vw;
  }
  .card-list__title {
    font-size: 3.73333vw;
  }
  .card-list__data dl img {
    width: 3.2vw;
    height: 3.2vw;
  }
  .media-list {
    gap: 5vw;
  }
  .media-list__item {
    padding: 5vw 0;
  }
  .media-list__img {
    width: calc(50% - 2.5vw);
  }
  .media-list__title {
    width: calc(50% - 2.5vw);
    font-size: 3.2vw;
  }
}

@media screen and (max-width: 575px) {
  [data-css-scroll="xs"] {
    overflow-y: scroll;
  }
  .display-xs {
    display: block;
  }
  .none-xs {
    display: none;
  }
  [data-display="xs"] {
    display: block;
  }
  [data-display-none="xs"] {
    display: none;
  }
  .wrap-2column {
    margin-bottom: 0;
  }
  body:not(.index) .wrap {
    padding: 5vw 0 18vw;
  }
  .alignfull-xs {
    padding-left: 0;
    padding-right: 0;
  }
  a[href^="tel:"] {
    pointer-events: auto;
  }
  .horizontal-table--xs-scroll {
    padding-bottom: 5vw;
    overflow-x: auto;
  }
  .horizontal-table--xs-vertical .horizontal-table__head {
    display: list-item;
    padding: 1em 1em 0.5em;
    width: 100%;
    font-weight: bold;
    list-style: none;
  }
  .horizontal-table--xs-vertical .horizontal-table__text {
    display: list-item;
    padding: 0.5em 1em 1em;
    width: 100%;
    list-style: none;
  }
  .horizontal-table--xs-vertical--contact .horizontal-table__head {
    padding: 1em 1em 0.5em;
    width: 100%;
  }
  .vertical-table--xs-scroll {
    padding-bottom: 5vw;
    overflow-x: auto;
  }
}

@media screen and (max-width: 375px) {
  [data-css-scroll="ss"] {
    overflow-y: scroll;
  }
}

@media (prefers-color-scheme: dark) {
  [data-css-scroll="dark"] {
    overflow-y: scroll;
  }
}
