@charset "UTF-8";
/* =================
値の定義
==================== */
@import url("https://fonts.googleapis.com/css2?family=Crimson+Pro:ital@0;1&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/* ====================
importファイル
=================== */
/* ================================================================================
VW設定
================================================================================ */
/* PC設定 */
/* タブレット設定 */
/* SP設定 */
/* フォントサイズ */
/* 余白計算 */
/* ===================================
リセット
=================================== */
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,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font: inherit;
  background: transparent;
  vertical-align: baseline;
}

html {
  text-size-adjust: 100%;
}

body {
  color: #555;
  font-size: 62.5%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  body {
    font-size: 100%;
  }
}

html,
body {
  line-height: 1.6;
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

li {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

legend {
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

fieldset {
  margin: 0 2px;
  border: 1px solid #999;
  padding: 0.35em 0.625em 0.75em;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  outline: none;
  background: transparent;
  text-decoration: none;
  vertical-align: baseline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
a:link {
  color: #000;
  outline: none;
}
a:visited {
  color: #000;
  outline: none;
}
a:hover {
  text-decoration: none;
  outline: none;
}
a:focus {
  text-decoration: none;
}

ins {
  color: #000;
  background: #ff9;
  text-decoration: none;
}

mark {
  color: #000;
  background-color: #ff9;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

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

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}
table th,
table td {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th {
  text-align: left;
}

hr {
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  display: block;
  overflow: visible;
  border-top: 1px solid #999;
}

img {
  max-width: 100%;
  display: block;
  font-size: 0;
  line-height: 0;
  height: auto;
  vertical-align: bottom;
}

input,
select {
  vertical-align: middle;
}

button,
select {
  text-transform: none;
}

select {
  appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

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

button {
  margin: 0;
  padding: 0;
  border: none;
  background: initial;
}

input[type=button],
input[type=submit],
input[type=search],
input[type=reset],
button {
  appearance: none;
}

label {
  font-weight: normal;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

input {
  padding: 0;
}
input::-ms-clear, input::-ms-reveal {
  visibility: hidden;
}

[type=checkbox],
[type=radio] {
  padding: 0;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  appearance: textfield;
  outline-offset: -2px;
}

::-webkit-search-cancel-button,
::-webkit-search-decoration {
  appearance: none;
}

::input-placeholder {
  color: #ccc;
  opacity: 1;
}

:placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
  opacity: 1;
}

:input-placeholder {
  color: #ccc;
}

::-webkit-file-upload-button {
  appearance: auto;
  font: inherit;
}

[aria-busy=true] {
  cursor: progress;
}

[aria-controls] {
  cursor: pointer;
}

[aria-disabled] {
  cursor: default;
}

a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
  margin: 0;
  padding: 0;
  touch-action: manipulation;
}

input,
textarea,
select {
  font-size: inherit;
  font-weight: inherit;
}

[hidden][aria-hidden=false] {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute;
}

[hidden][aria-hidden=false]:focus {
  clip: auto;
}

strong {
  font-weight: bold;
}

/* 汎用CSS---------------------- */
body {
  color: #202020;
}

.on-sp {
  display: block;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-sp {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .on-sp {
    display: none;
  }
}

.on-tab {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-tab {
    display: block;
  }
}
@media screen and (min-width: 960px) {
  .on-tab {
    display: none;
  }
}

.on-tabUp {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-tabUp {
    display: block;
  }
}
@media screen and (min-width: 960px) {
  .on-tabUp {
    display: block;
  }
}

.on-common-pc {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-common-pc {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .on-common-pc {
    display: block;
  }
}
@media screen and (min-width: 1601px) {
  .on-common-pc {
    display: none;
  }
}

.on-large-pc {
  display: none;
}
@media screen and (min-width: 1601px) {
  .on-large-pc {
    display: block;
  }
}

.on-pc {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-pc {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .on-pc {
    display: block;
  }
}

.on-sp-tab {
  display: block;
}
@media screen and (min-width: 960px) {
  .on-sp-tab {
    display: none;
  }
}

.on-pc-tab {
  display: none;
}
@media screen and (min-width: 960px) {
  .on-pc-tab {
    display: block;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .on-pc-tab {
    display: block;
  }
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media screen and (min-width: 960px) and (max-width: 1340px) {
  .space-x-in-small-pc {
    padding-left: 25px;
    padding-right: 25px;
  }
}

@media screen and (min-width: 960px) and (max-width: 1340px) {
  .space-l-in-small-pc {
    padding-left: 25px;
  }
}

@media screen and (min-width: 960px) and (max-width: 1340px) {
  .space-r-in-small-pc {
    padding-right: 25px;
  }
}

.invisible-heading {
  display: none;
}

.c-hover {
  transition: 0.3s;
}
.c-hover:hover {
  opacity: 0.7;
}

.hover-40 {
  transition: 0.3s;
}
.hover-40:hover {
  opacity: 0.4;
}

.hidden-visibility {
  visibility: hidden;
}

.has-gray-filter {
  position: relative;
  display: block;
}
.has-gray-filter::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.2);
  pointer-events: none;
  z-index: 1;
}
.has-gray-filter img {
  display: block;
  width: 100%;
  height: auto;
  position: relative;
  z-index: 0;
}

.has-external-icon {
  display: inline-flex;
  align-items: center;
  gap: 1.6vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .has-external-icon {
    gap: 0.8vw;
  }
}
@media screen and (min-width: 960px) {
  .has-external-icon {
    gap: clamp(3px, 0.5vw, 6px);
  }
}
.has-external-icon::after {
  content: "";
  display: inline-block;
  width: 3.2vw;
  height: 3.2vw;
  background-image: url("../icons/navigation/other_tab_icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .has-external-icon::after {
    width: 1.6vw;
    height: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .has-external-icon::after {
    width: clamp(6px, 1vw, 12px);
    height: clamp(6px, 1vw, 12px);
  }
}

.base-btn__container {
  border: 1px solid #202020;
  position: relative;
}
.base-btn__container::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #202020;
  transition: all 0.2s ease;
  z-index: 1;
}
.base-btn__container:hover::before {
  width: 100%;
}
.base-btn__container:hover a {
  color: #FFFFFF;
  position: relative;
  z-index: 2;
}
.base-btn__container a {
  color: #202020;
  font-size: 2.6666666667vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  padding: 1.3333333333vw 6.6666666667vw;
  display: block;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .base-btn__container a {
    font-size: 1.4666666667vw;
    padding: 0.6666666667vw 3.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .base-btn__container a {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    padding: clamp(5px, 0.8333333333vw, 10px) clamp(15px, 2.5vw, 30px);
  }
}
.base-btn__container.dark-btn {
  border: 1px solid #FFFFFF;
}
.base-btn__container.dark-btn::before {
  background-color: #FFFFFF;
}
.base-btn__container.dark-btn:hover::before {
  width: 100%;
}
.base-btn__container.dark-btn:hover a {
  color: #202020;
}
.base-btn__container.dark-btn a {
  color: #FFFFFF;
}

.line-btn__container {
  width: max-content;
  position: relative;
}
.line-btn__container::before {
  content: "";
  width: 0;
  height: 1px;
  background-color: #FFFFFF;
  bottom: 0;
  left: 0;
  position: absolute;
  transition: all 0.2s ease;
}
.line-btn__container:hover::before {
  width: 100%;
}
.line-btn__container a,
.line-btn__container span {
  font-size: 2.6666666667vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  font-weight: 400;
  color: #FFFFFF;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .line-btn__container a,
  .line-btn__container span {
    font-size: 1.4666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .line-btn__container a,
  .line-btn__container span {
    font-size: clamp(6px, 1vw, 12px);
  }
}
.line-btn__container.dark-btn::before {
  background-color: #202020;
}
.line-btn__container.dark-btn a,
.line-btn__container.dark-btn span {
  color: #202020;
}

.fade-btn__container {
  border: 1px solid #FFFFFF;
  transition: all 0.3s ease;
  position: relative;
  backdrop-filter: blur(3px);
  background-color: rgba(0, 0, 0, 0.2);
  overflow: hidden;
}
.fade-btn__container::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 25px;
  height: 1px;
  background-color: #FFFFFF;
  z-index: 2;
  transition: background-color 0.3s ease;
}
.fade-btn__container::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF;
  transition: all 0.3s ease;
  z-index: 1;
}
.fade-btn__container:hover {
  backdrop-filter: blur(10px);
}
.fade-btn__container:hover::before {
  left: 0;
}
.fade-btn__container:hover::after {
  background-color: #202020;
}
.fade-btn__container:hover a {
  color: #202020;
}
.fade-btn__container a {
  font-size: 3.7333333333vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  font-weight: 400;
  color: #FFFFFF;
  padding: 2.6666666667vw 8vw;
  display: inline-block;
  position: relative;
  z-index: 2;
  transition: color 0.3s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .fade-btn__container a {
    font-size: 2.2666666667vw;
    padding: 1.3333333333vw 4vw;
  }
}
@media screen and (min-width: 960px) {
  .fade-btn__container a {
    font-size: clamp(8.25px, 1.375vw, 16.5px);
    padding: clamp(6.5px, 1.0833333333vw, 13px) clamp(20px, 3.3333333333vw, 40px);
  }
}

.only-arrow-btn__container {
  width: max-content;
}
.only-arrow-btn__container a {
  display: inline-block;
}
.only-arrow-btn__container a::before {
  content: "";
  display: inline-block;
  width: 6.6666666667vw;
  height: 2.1333333333vw;
  background: url("../icons/navigation/icn_left_arrow_black.svg") no-repeat center center;
  background-size: contain;
  transition: all 0.2s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .only-arrow-btn__container a::before {
    width: 4vw;
    height: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .only-arrow-btn__container a::before {
    width: clamp(15px, 2.5vw, 30px);
    height: clamp(6px, 1vw, 12px);
  }
}
.only-arrow-btn__container:hover a::before {
  transform: translateX(20%);
}
.only-arrow-btn__container--text-left {
  width: max-content;
}
.only-arrow-btn__container--text-left a {
  display: inline-block;
  position: relative;
  transition: transform 0.2s ease;
}
.only-arrow-btn__container--text-left a::before {
  content: "";
  display: inline-block;
  width: 6.6666666667vw;
  height: 2.1333333333vw;
  padding-left: 5.3333333333vw;
  background: url("../icons/navigation/icn_left_arrow_black.svg") no-repeat center center;
  background-size: contain;
  transition: transform 0.2s ease;
  transform: scaleX(-1) translateX(0);
}
.only-arrow-btn__container--text-left a::after {
  display: none;
}
.only-arrow-btn__container--text-left a:hover::before {
  transform: scaleX(-1);
}
.only-arrow-btn__container--text-left a:hover {
  transform: translateX(-10%);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .only-arrow-btn__container--text-left a::before {
    width: 4vw;
    height: 1.6vw;
    padding-left: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .only-arrow-btn__container--text-left a::before {
    width: clamp(15px, 2.5vw, 30px);
    height: clamp(6px, 1vw, 12px);
    padding-left: clamp(15px, 2.5vw, 30px);
  }
}
.only-arrow-btn__container--text-right {
  width: max-content;
}
.only-arrow-btn__container--text-right a {
  display: inline-block;
  position: relative;
  transition: transform 0.2s ease;
}
.only-arrow-btn__container--text-right a::after {
  content: "";
  display: inline-block;
  width: 6.6666666667vw;
  height: 2.1333333333vw;
  padding-left: 5.3333333333vw;
  background: url("../icons/navigation/icn_left_arrow_black.svg") no-repeat center center;
  background-size: contain;
  transition: transform 0.2s ease;
}
.only-arrow-btn__container--text-right a::before {
  display: none;
}
.only-arrow-btn__container--text-right a:hover {
  transform: translateX(10%);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .only-arrow-btn__container--text-right a::after {
    width: 4vw;
    height: 1.6vw;
    padding-left: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .only-arrow-btn__container--text-right a::after {
    width: clamp(15px, 2.5vw, 30px);
    height: clamp(6px, 1vw, 12px);
    padding-left: clamp(15px, 2.5vw, 30px);
  }
}

.breadcrumbs ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.breadcrumbs li {
  font-size: 3.2vw;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .breadcrumbs li {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .breadcrumbs li {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.breadcrumbs li:not(:last-child)::after {
  content: "";
  width: 10.6666666667vw;
  height: 2.9333333333vw;
  background-image: url("../icons/navigation/black_left_chev.svg");
  background-repeat: no-repeat;
  display: inline-block;
  background-position: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .breadcrumbs li:not(:last-child)::after {
    width: 5.3333333333vw;
    height: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .breadcrumbs li:not(:last-child)::after {
    width: clamp(20px, 3.3333333333vw, 40px);
    height: clamp(5px, 0.8333333333vw, 10px);
  }
}
.breadcrumbs li a {
  text-decoration: none;
}
.breadcrumbs .breadcrumbs__item--current {
  flex: 1 1 auto;
  min-width: 0;
}
.breadcrumbs .breadcrumbs__item--current .breadcrumbs__title {
  display: inline-block;
  word-break: break-word;
  overflow-wrap: break-word;
  white-space: normal;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.breadcrumbs--has-title-wrap .breadcrumbs__list {
  flex-wrap: nowrap;
  align-items: center;
}
.breadcrumbs--has-title-wrap .breadcrumbs__item--current {
  flex: 1;
  min-width: 0;
}
.breadcrumbs--has-title-wrap .breadcrumbs__title {
  display: inline;
  line-height: 1.2;
  letter-spacing: 0.07em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.main-title {
  padding: 0;
  margin: 0;
  font-size: 6.6666666667vw;
  line-height: 1.5;
  letter-spacing: 0.07em;
  font-family: "Crimson Pro", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .main-title {
    font-size: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .main-title {
    font-size: clamp(18px, 3vw, 36px);
  }
}

.fv__title {
  padding: 0;
  margin: 0;
  font-size: 8.8vw;
  line-height: 1.2;
  letter-spacing: 0.07em;
  font-family: "Crimson Pro", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .fv__title {
    font-size: 4.9333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .fv__title {
    font-size: clamp(20px, 3.3333333333vw, 40px);
  }
}

.fv {
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 375/240;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .fv {
    aspect-ratio: 900/375;
  }
}
@media screen and (min-width: 960px) {
  .fv {
    aspect-ratio: 1200/500;
  }
}
@media screen and (min-width: 1601px) {
  .fv {
    aspect-ratio: 1920/500;
  }
}
.fv picture,
.fv .fv__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.fv .fv__title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  text-align: center;
  white-space: nowrap;
  z-index: 1;
  text-transform: uppercase;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .fv--scale .fv__image {
    transform: scaleX(1.15);
  }
}

.pagination-container {
  display: flex;
  gap: 4vw;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .pagination-container {
    gap: 2vw;
  }
}
@media screen and (min-width: 960px) {
  .pagination-container {
    gap: clamp(8.5px, 1.4166666667vw, 17px);
  }
}
.pagination-container .page-numbers {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  gap: 1.0666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .pagination-container .page-numbers {
    gap: 0.5333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .pagination-container .page-numbers {
    gap: clamp(2px, 0.3333333333vw, 4px);
  }
}
.pagination-container .page-numbers li,
.pagination-container .page-numbers li a,
.pagination-container .page-numbers li span {
  width: 6.4vw;
  height: 6.4vw;
  font-size: 3.2vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.07em;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .pagination-container .page-numbers li,
  .pagination-container .page-numbers li a,
  .pagination-container .page-numbers li span {
    width: 3.2vw;
    height: 3.2vw;
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .pagination-container .page-numbers li,
  .pagination-container .page-numbers li a,
  .pagination-container .page-numbers li span {
    width: clamp(12px, 2vw, 24px);
    height: clamp(12px, 2vw, 24px);
    font-size: clamp(6px, 1vw, 12px);
  }
}
.pagination-container .page-numbers li a.page-numbers:hover,
.pagination-container .page-numbers li span.page-numbers:not(.dots):hover {
  box-sizing: border-box;
  border: 0.2666666667vw solid #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .pagination-container .page-numbers li a.page-numbers:hover,
  .pagination-container .page-numbers li span.page-numbers:not(.dots):hover {
    border: 0.1333333333vw solid #202020;
  }
}
@media screen and (min-width: 960px) {
  .pagination-container .page-numbers li a.page-numbers:hover,
  .pagination-container .page-numbers li span.page-numbers:not(.dots):hover {
    border: clamp(0.5px, 0.0833333333vw, 1px) solid #202020;
  }
}
.pagination-container .page-numbers li .current {
  background-color: #202020;
  color: #fff;
}
.pagination-container .page-numbers li .dots {
  border: none;
}
.pagination-container .page-numbers .pagination-arrow {
  width: 3.2vw;
  height: 3.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .pagination-container .page-numbers .pagination-arrow {
    width: 1.6vw;
    height: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .pagination-container .page-numbers .pagination-arrow {
    width: clamp(6px, 1vw, 12px);
    height: clamp(6px, 1vw, 12px);
  }
}
.pagination-container .page-numbers .pagination-arrow.is-prev {
  transform: rotate(180deg);
}

body:has(.header-container .header-drawer.active) {
  overflow: hidden;
}

.header-container .header-top .header__inner {
  background-color: #FFFFFF;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 3.7333333333vw 5vw;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 100;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-top .header__inner {
    padding: 1.8666666667vw 3vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner {
    padding: 0 calc((100% - 1200px) / 2);
  }
}
@media screen and (min-width: 960px) and (max-width: 1300px) {
  .header-container .header-top .header__inner {
    padding: 0 5vw;
  }
}
.header-container .header-top .header__inner .header__logo {
  width: 35.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-top .header__inner .header__logo {
    width: 20.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner .header__logo {
    width: clamp(76px, 12.6666666667vw, 152px);
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner .header-right {
    display: flex;
    align-items: center;
    gap: clamp(20px, 3.3333333333vw, 40px);
  }
}
.header-container .header-top .header__inner .header-right .header-nav-pc {
  display: none;
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner .header-right .header-nav-pc {
    display: flex;
    align-items: center;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav {
    display: flex;
    gap: clamp(20px, 3.3333333333vw, 40px);
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li {
    padding: clamp(10px, 1.6666666667vw, 20px) 0;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li a {
    color: #202020;
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    letter-spacing: 0.07em;
    line-height: 1em;
    cursor: pointer;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu {
    position: relative;
    display: flex;
    align-items: center;
    gap: clamp(5px, 0.8333333333vw, 10px);
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu::after {
    content: "";
    display: inline-block;
    width: clamp(5px, 0.8333333333vw, 10px);
    height: clamp(5px, 0.8333333333vw, 10px);
    background: url("../icons/navigation/black-down-chev.svg") no-repeat center center;
    background-size: contain;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu:hover .submenu {
    display: block;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu .submenu {
    display: none;
    position: absolute;
    padding: clamp(13.5px, 2.25vw, 27px) clamp(20px, 3.3333333333vw, 40px);
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #FFFFFF;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu .submenu .submenu__item {
    margin-bottom: clamp(10px, 1.6666666667vw, 20px);
    padding: 0;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu .submenu .submenu__item:last-child {
    margin-bottom: 0;
  }
  .header-container .header-top .header__inner .header-right .header-nav-pc .header__nav li.has-submenu .submenu .submenu__item a {
    color: #202020;
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    letter-spacing: 0.07em;
    line-height: 1em;
  }
}
.header-container .header-top .header__inner .header-right .header__recruit-btn {
  display: none;
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner .header-right .header__recruit-btn {
    display: block;
  }
}
.header-container .header-top .header__inner .header-right .header__trigger-btn {
  width: 5.8666666667vw;
  height: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-top .header__inner .header-right .header__trigger-btn {
    width: 4.2666666667vw;
    height: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-top .header__inner .header-right .header__trigger-btn {
    width: clamp(16px, 2.6666666667vw, 32px);
    height: clamp(12px, 2vw, 24px);
  }
}
.header-container .header-top .header__inner .header-right .header__trigger-btn .header__trigger {
  width: 100%;
  height: 100%;
  background: url("../icons/header/ham-on.svg") no-repeat center center;
  background-size: contain;
  cursor: pointer;
}
.header-container .header-drawer {
  position: fixed;
  display: none;
  justify-content: center;
  align-items: center;
  background-color: #202020;
  height: 100vh;
  width: 100vw;
  top: 0;
  right: 0;
  transition: all 0.3s ease-in-out;
  opacity: 0.2;
  z-index: 110;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer {
    width: 61.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer {
    width: clamp(230px, 38.3333333333vw, 460px);
  }
}
.header-container .header-drawer.active {
  opacity: 1;
  transition: all 0.3s ease-in-out;
}
.header-container .header-drawer .close-drawer-btn {
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  background: url("../icons/header/ham-off.svg") no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 5.3333333333vw;
  right: 5.8666666667vw;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .close-drawer-btn {
    width: 4vw;
    height: 4vw;
    top: 5.3333333333vw;
    right: 6.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .close-drawer-btn {
    width: clamp(15px, 2.5vw, 30px);
    height: clamp(15px, 2.5vw, 30px);
    top: clamp(20px, 3.3333333333vw, 40px);
    right: clamp(25px, 4.1666666667vw, 50px);
  }
}
.header-container .header-drawer .header__inner .header__nav li {
  margin-bottom: 8vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__nav li {
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__nav li {
    margin-bottom: clamp(19px, 3.1666666667vw, 38px);
  }
}
.header-container .header-drawer .header__inner .header__nav li a {
  color: #FFFFFF;
  font-size: 2.9333333333vw;
  letter-spacing: 0.07em;
  line-height: 1em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__nav li a {
    font-size: 1.4666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__nav li a {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
  }
}
.header-container .header-drawer .header__inner .header__nav-outsite {
  display: flex;
  align-items: center;
  gap: 6.9333333333vw;
  margin-bottom: 8vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__nav-outsite {
    gap: 3.4666666667vw;
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__nav-outsite {
    margin-bottom: clamp(19px, 3.1666666667vw, 38px);
    gap: clamp(10px, 1.6666666667vw, 20px);
  }
}
.header-container .header-drawer .header__inner .header__nav-outsite .header__nav-item .base-btn__container {
  min-width: 32vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__nav-outsite .header__nav-item .base-btn__container {
    min-width: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__nav-outsite .header__nav-item .base-btn__container {
    min-width: clamp(65px, 10.8333333333vw, 130px);
  }
}
.header-container .header-drawer .header__inner .header__nav-outsite .header__nav-item .base-btn__container a {
  text-align: center;
}
.header-container .header-drawer .header__inner .header__social {
  display: flex;
  align-items: center;
  gap: 5.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__social {
    gap: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__social {
    gap: clamp(10px, 1.6666666667vw, 20px);
  }
}
.header-container .header-drawer .header__inner .header__social li a {
  display: block;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .header-container .header-drawer .header__inner .header__social li a {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .header-container .header-drawer .header__inner .header__social li a {
    width: clamp(10px, 1.6666666667vw, 20px);
    height: clamp(10px, 1.6666666667vw, 20px);
  }
}
.header-container .header-drawer .header__inner .header__social li:first-child a {
  transform: scale(1.2);
}

footer.footer-container {
  background-color: #202020;
  padding: 11.4666666667vw 5vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container {
    padding: 5.7333333333vw 5vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container {
    padding: clamp(61px, 10.1666666667vw, 122px) 5vw clamp(31px, 5.1666666667vw, 62px);
  }
}
footer.footer-container .footer__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: column;
  gap: 8vw;
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner {
    gap: 4vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner {
    gap: clamp(22px, 3.6666666667vw, 44px);
    max-width: 1200px;
    margin: auto;
  }
}
footer.footer-container .footer__inner .footer__logo {
  width: 40vw;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__logo {
    width: 28.2666666667vw;
    margin-bottom: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__logo {
    width: clamp(106px, 17.6666666667vw, 212px);
    margin-bottom: 0;
  }
}
footer.footer-container .footer__inner .footer__nav .footer__nav-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5.8666666667vw 8vw;
  flex-wrap: wrap;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__nav .footer__nav-list {
    gap: 2.9333333333vw 4vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__nav .footer__nav-list {
    gap: clamp(24px, 4vw, 48px);
    flex-wrap: nowrap;
  }
}
footer.footer-container .footer__inner .footer__nav .footer__nav-list a {
  color: #FFFFFF;
  font-size: 2.9333333333vw;
  text-decoration: none;
  letter-spacing: 0.07em;
  line-height: 1em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__nav .footer__nav-list a {
    font-size: 1.4666666667vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__nav .footer__nav-list a {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
  }
}
footer.footer-container .footer__inner .footer__outside-list .footer__outside-item {
  display: flex;
  align-items: center;
  gap: 6.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__outside-list .footer__outside-item {
    gap: 3.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__outside-list .footer__outside-item {
    gap: clamp(15px, 2.5vw, 30px);
  }
}
footer.footer-container .footer__inner .footer__outside-list .footer__outside-item .footer__outside-link .base-btn__container {
  min-width: 32vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__outside-list .footer__outside-item .footer__outside-link .base-btn__container {
    min-width: 16vw;
  }
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__outside-list .footer__outside-item .footer__outside-link .base-btn__container {
    min-width: clamp(65px, 10.8333333333vw, 130px);
  }
}
footer.footer-container .footer__inner .footer__outside-list .footer__outside-item .footer__outside-link .base-btn__container a {
  text-align: center;
}
footer.footer-container .footer__inner .footer__social-list .footer__social-item {
  display: flex;
  align-items: center;
  gap: 6.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__social-list .footer__social-item {
    gap: 3.3333333333vw;
  }
}
footer.footer-container .footer__inner .footer__social-list .footer__social-item li a {
  width: 5.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__social-list .footer__social-item li a {
    width: 2.6666666667vw;
  }
}
footer.footer-container .footer__inner .footer__social-list .footer__social-item li:first-child a {
  transform: scale(1.2);
}
footer.footer-container .footer__inner .footer__privacy-sp a {
  font-size: 2.9333333333vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  color: #FFFFFF;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__privacy-sp a {
    font-size: 1.4666666667vw;
  }
}
footer.footer-container .footer__inner .footer__copyright-sp span {
  font-size: 2.6666666667vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  color: #FFFFFF;
  width: 100%;
  text-align: center;
  display: inline-block;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  footer.footer-container .footer__inner .footer__copyright-sp span {
    font-size: 1.4666666667vw;
  }
}
footer.footer-container .footer__inner .footer__privacy-pc {
  display: none;
}
@media screen and (min-width: 960px) {
  footer.footer-container .footer__inner .footer__privacy-pc {
    display: block;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-top: clamp(35px, 5.8333333333vw, 70px);
  }
  footer.footer-container .footer__inner .footer__privacy-pc .privacy-policy a {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    letter-spacing: 0.07em;
    line-height: 1em;
    color: #FFFFFF;
  }
  footer.footer-container .footer__inner .footer__privacy-pc .copyright span {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    letter-spacing: 0.07em;
    line-height: 1em;
    color: #FFFFFF;
  }
  footer.footer-container .footer__inner .footer__privacy-pc .social-list {
    display: flex;
    gap: clamp(10px, 1.6666666667vw, 20px);
  }
  footer.footer-container .footer__inner .footer__privacy-pc .social-list li a {
    width: clamp(10px, 1.6666666667vw, 20px);
    height: clamp(10px, 1.6666666667vw, 20px);
  }
  footer.footer-container .footer__inner .footer__privacy-pc .social-list li:first-child a {
    transform: scale(1.2);
  }
}

.responsive-container {
  width: 90%;
  margin: 0 auto;
}
@media screen and (min-width: 960px) {
  .responsive-container {
    max-width: 1200px;
  }
}
.responsive-container--mw1000 {
  width: 90%;
  margin: 0 auto;
}
@media screen and (min-width: 960px) {
  .responsive-container--mw1000 {
    max-width: 1000px;
  }
}
.responsive-container--90percent {
  width: 90%;
  margin: 0 auto;
}
.responsive-container--84percent {
  width: 84%;
  margin: 0 auto;
}
@media screen and (min-width: 960px) {
  .responsive-container--84percent {
    max-width: 1200px;
  }
}
.responsive-container--84percentMw1000 {
  width: 84%;
  margin: 0 auto;
}
@media screen and (min-width: 960px) {
  .responsive-container--84percentMw1000 {
    max-width: 1000px;
  }
}

.top-page {
  padding-top: 14.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page {
    padding-top: 7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page {
    padding-top: clamp(28.5px, 4.75vw, 57px);
  }
}
.top-page .common-heading-lever-2 {
  font-size: 6.4vw;
  font-family: "Crimson Pro", sans-serif;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1em;
  color: #202020;
  line-height: 1.2em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .common-heading-lever-2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .common-heading-lever-2 {
    font-size: clamp(18px, 3vw, 36px);
  }
}
.top-page .fv-sec {
  width: 100%;
  position: relative;
  padding-bottom: 6.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec {
    padding-bottom: 3.7333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec {
    padding-bottom: clamp(16px, 2.6666666667vw, 32px);
  }
}
.top-page .fv-sec .splide__track .splide__list .splide__slide {
  height: 90vh;
  height: 90dvh;
}
.top-page .fv-sec .splide__track .splide__list .splide__slide .fv_img {
  width: 100%;
  height: 100%;
  background-image: url(../img/pages/top/fv_01_sp.webp);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide .fv_img {
    background-image: url(../img/pages/top/fv_01.webp);
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide .fv_img {
    background-image: url(../img/pages/top/fv_01.webp);
  }
}
.top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(2) .fv_img {
  background-image: url(../img/pages/top/fv_02_sp.webp);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(2) .fv_img {
    background-image: url(../img/pages/top/fv_02.webp);
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(2) .fv_img {
    background-image: url(../img/pages/top/fv_02.webp);
  }
}
.top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(3) .fv_img {
  background-image: url(../img/pages/top/fv_03_sp.webp);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(3) .fv_img {
    background-image: url(../img/pages/top/fv_03.webp);
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .splide__track .splide__list .splide__slide:nth-child(3) .fv_img {
    background-image: url(../img/pages/top/fv_03.webp);
  }
}
.top-page .fv-sec .splide__pagination {
  gap: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .splide__pagination {
    gap: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .splide__pagination {
    gap: clamp(6px, 1vw, 12px);
  }
}
.top-page .fv-sec .splide__pagination li .splide__pagination__page {
  background-color: #D9D9D9;
  width: 1.8666666667vw;
  height: 1.8666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .splide__pagination li .splide__pagination__page {
    width: 0.9333333333vw;
    height: 0.9333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .splide__pagination li .splide__pagination__page {
    width: clamp(3.5px, 0.5833333333vw, 7px);
    height: clamp(3.5px, 0.5833333333vw, 7px);
  }
}
.top-page .fv-sec .splide__pagination li .splide__pagination__page.is-active {
  background-color: #202020;
  transform: unset;
}
.top-page .fv-sec .fv__text {
  position: absolute;
  top: calc(50% - 6.6666666667vw);
  left: 50%;
  transform: translate(-50%, -50%);
  width: max-content;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .fv__text {
    top: calc(50% - 3.7333333333vw);
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .fv__text {
    top: calc(50% - clamp(16px, 2.6666666667vw, 32px));
  }
}
.top-page .fv-sec .fv__text .title {
  font-size: 4.2666666667vw;
  line-height: 1.8em;
  letter-spacing: 0.16em;
  font-weight: 500;
  font-family: "Zen Old Mincho", sans-serif;
  color: #FFFFFF;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .fv-sec .fv__text .title {
    font-size: 2.9333333333vw;
    width: max-content;
  }
}
@media screen and (min-width: 960px) {
  .top-page .fv-sec .fv__text .title {
    font-size: clamp(13px, 2.1666666667vw, 26px);
  }
}
.top-page .our-sec {
  width: 100%;
  height: 50vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .our-sec {
    padding-top: 26.6666666667vw;
    padding-bottom: 26.6666666667vw;
    height: unset;
  }
}
@media screen and (min-width: 960px) {
  .top-page .our-sec {
    padding-top: clamp(115px, 19.1666666667vw, 230px);
    padding-bottom: clamp(130px, 21.6666666667vw, 260px);
    height: unset;
  }
}
.top-page .our-sec .our__inner .our__title {
  text-align: center;
  margin-bottom: 3.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .our-sec .our__inner .our__title {
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .our-sec .our__inner .our__title {
    margin-bottom: clamp(13px, 2.1666666667vw, 26px);
  }
}
.top-page .our-sec .our__inner .our__desc {
  font-size: 3.7333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
  line-height: 2.2em;
  color: #202020;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .our-sec .our__inner .our__desc {
    font-size: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .our-sec .our__inner .our__desc {
    font-size: clamp(9px, 1.5vw, 18px);
  }
}
.top-page .brand-sec {
  width: 100%;
}
.top-page .brand-sec .brand__inner {
  display: flex;
  flex-direction: column;
  background-color: #F6F6F6;
  transition: all 0.3s ease;
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
  }
}
.top-page .brand-sec .brand__inner .brand__text {
  padding: 10.6666666667vw 5vw 11.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__text {
    padding: 12vw 5vw 12vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__text {
    width: 50%;
    padding: clamp(45px, 7.5vw, 90px) clamp(32.5px, 5.4166666667vw, 65px) clamp(45px, 7.5vw, 90px) calc((100% - 1200px) / 2);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
@media screen and (min-width: 960px) and (max-width: 1300px) {
  .top-page .brand-sec .brand__inner .brand__text {
    padding: clamp(45px, 7.5vw, 90px) clamp(5px, 0.8333333333vw, 10px) clamp(45px, 7.5vw, 90px) 5vw;
  }
}
.top-page .brand-sec .brand__inner .brand__text .brand__title {
  margin-bottom: 3.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__text .brand__title {
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__text .brand__title {
    margin-bottom: clamp(15px, 2.5vw, 30px);
  }
}
.top-page .brand-sec .brand__inner .brand__text .brand__desc {
  font-size: 3.4666666667vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
  line-height: 2em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__text .brand__desc {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__text .brand__desc {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2em;
    letter-spacing: 0.05em;
    margin-bottom: clamp(15px, 2.5vw, 30px);
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide {
    max-width: 50vw;
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list {
    flex-direction: row;
    justify-content: flex-end;
    height: 100%;
    width: 100%;
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item {
  width: 100%;
  height: 13.3333333333vw;
  transition: all 0.3s ease;
  position: relative;
  background-size: 120% auto;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item {
    width: 100%;
    height: 8vw;
    background-size: cover;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item {
    width: clamp(28.5px, 4.75vw, 57px);
    height: 100%;
    min-height: clamp(205px, 34.1666666667vw, 410px);
    background-size: cover;
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top {
  padding: 3.2vw 5vw 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top {
    padding: 2vw 5vw 0;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top {
    padding: clamp(7.5px, 1.25vw, 15px) clamp(5px, 0.8333333333vw, 10px);
    flex-direction: column;
    width: max-content;
    height: 90%;
    justify-content: flex-start;
    gap: clamp(7.5px, 1.25vw, 15px);
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .title {
  color: #FFFFFF;
  font-size: 4.8vw;
  font-family: "Zen Old Mincho", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .title {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .title {
    font-size: clamp(11px, 1.8333333333vw, 22px);
    writing-mode: vertical-rl;
    text-orientation: sideways;
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .toggle-icn {
  transition: all 0.3s ease;
  width: 4vw;
  height: 4vw;
  background: url("../icons/button/icn-plus-white.svg") no-repeat center center;
  background-size: contain;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .toggle-icn {
    width: 2vw;
    height: 2vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .slide-top .toggle-icn {
    width: clamp(7.5px, 1.25vw, 15px);
    height: clamp(7.5px, 1.25vw, 15px);
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .view-more-btn {
  position: absolute;
  bottom: 4vw;
  left: 3.2vw;
  opacity: 0;
  transition: all 0.2s ease;
  width: 0;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .view-more-btn {
    bottom: 2vw;
    left: 5vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item .view-more-btn {
    bottom: clamp(8px, 1.3333333333vw, 16px);
    right: clamp(8px, 1.3333333333vw, 16px);
    left: unset;
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item:first-child.expand .toggle-icn {
  opacity: 0;
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item.expand {
  height: 64.2666666667vw;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item.expand {
    height: 53.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item.expand {
    height: 100%;
    min-height: clamp(205px, 34.1666666667vw, 410px);
    width: clamp(370px, 61.6666666667vw, 740px);
  }
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item.expand .toggle-icn {
  background: url("../icons/button/icn-line-white.svg") no-repeat center center;
}
.top-page .brand-sec .brand__inner .brand__slide .slide-list .slide-item.expand .view-more-btn {
  opacity: 1;
  width: max-content;
}
.top-page .brand-sec .brand__inner .brand__cta {
  margin-top: 4vw;
  margin-bottom: 2.6666666667vw;
  display: flex;
  justify-content: flex-end;
  padding: 0 5vw;
}
.top-page .about-sec .about__inner {
  padding: 26.6666666667vw 5vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .about-sec .about__inner {
    padding: 20vw 5vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner {
    padding: clamp(100px, 16.6666666667vw, 200px) 5vw;
    max-width: 1200px;
    margin: auto;
  }
}
.top-page .about-sec .about__inner .about__title {
  margin-bottom: 12vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .about-sec .about__inner .about__title {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__title {
    margin-bottom: clamp(35px, 5.8333333333vw, 70px);
  }
}
.top-page .about-sec .about__inner .about__content .about__list {
  display: flex;
  flex-direction: column;
  gap: 8vw;
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list {
    flex-direction: row;
    gap: clamp(1.5px, 0.25vw, 3px);
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item {
  flex: 1;
}
.top-page .about-sec .about__inner .about__content .about__list .about-item a .about-pic {
  overflow: hidden;
}
.top-page .about-sec .about__inner .about__content .about__list .about-item a .about-pic .about-pic__inner {
  width: 100%;
  aspect-ratio: 34/24;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
  position: relative;
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item a .about-pic .about-pic__inner {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    aspect-ratio: 4/5;
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item a .about-pic .about-pic__inner::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 2;
  display: block;
  transition: all 0.3s ease;
}
.top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title {
  margin-top: 0.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title {
    margin-top: 0.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title {
    margin-top: clamp(5px, 0.8333333333vw, 10px);
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title .title {
  font-size: 5.3333333333vw;
  font-family: "Crimson Pro", sans-serif;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.6em;
  color: #202020;
  transition: all 0.3s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title .title {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item a .about-title .title {
    font-size: clamp(14px, 2.3333333333vw, 28px);
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:hover a .about-title .title {
  opacity: 0.4;
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:hover a .about-pic .about-pic__inner {
  transform: scale(1.05);
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:hover a .about-pic .about-pic__inner::before {
  background-color: unset;
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(1) a .about-pic__inner {
  background-image: url("../img/pages/top/about_company_df_sp.webp");
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(1) a .about-pic__inner {
    background-image: url("../img/pages/top/about_company_df_pc.webp");
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(2) a .about-pic__inner {
  background-image: url("../img/pages/top/about_principles_df_sp.webp");
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(2) a .about-pic__inner {
    background-image: url("../img/pages/top/about_principles_hv_pc.webp");
  }
}
.top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(3) a .about-pic__inner {
  background-image: url("../img/pages/top/about_message_df_sp.webp");
}
@media screen and (min-width: 960px) {
  .top-page .about-sec .about__inner .about__content .about__list .about-item:nth-child(3) a .about-pic__inner {
    background-image: url("../img/pages/top/about_message_df_pc.webp");
  }
}
.top-page .recruit-sec {
  background: url("../img/pages/top/recruit_banner.webp") no-repeat center center;
  background-size: cover;
}
.top-page .recruit-sec .recruit__inner {
  height: 80vw;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .top-page .recruit-sec .recruit__inner {
    height: clamp(250px, 41.6666666667vw, 500px);
  }
}
.top-page .recruit-sec .recruit__inner .recruit__title {
  color: #FFFFFF;
  margin-bottom: 6.6666666667vw;
}
@media screen and (min-width: 960px) {
  .top-page .recruit-sec .recruit__inner .recruit__title {
    margin-bottom: clamp(35px, 5.8333333333vw, 70px);
  }
}
.top-page .recruit-sec .recruit__inner .recruit__cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5.8666666667vw;
}
@media screen and (min-width: 960px) {
  .top-page .recruit-sec .recruit__inner .recruit__cta {
    flex-direction: row;
    gap: clamp(23px, 3.8333333333vw, 46px);
  }
}
.top-page .recruit-sec .recruit__inner .recruit__cta .fade-btn__container a {
  min-width: 26.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .recruit-sec .recruit__inner .recruit__cta .fade-btn__container a {
    min-width: 17.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .recruit-sec .recruit__inner .recruit__cta .fade-btn__container a {
    min-width: clamp(60px, 10vw, 120px);
  }
}
.top-page .news-sec .news__inner {
  padding: 26.6666666667vw 5vw 37.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner {
    padding: 20vw 5vw 18.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner {
    padding: clamp(100px, 16.6666666667vw, 200px) 5vw;
    max-width: 1200px;
    margin: auto;
  }
}
.top-page .news-sec .news__inner .news__title {
  margin-bottom: 10.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner .news__title {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__title {
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.top-page .news-sec .news__inner .news__list {
  display: flex;
  flex-direction: column;
  gap: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner .news__list {
    gap: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__list {
    flex-direction: row;
    gap: clamp(20px, 3.3333333333vw, 40px);
  }
}
.top-page .news-sec .news__inner .news__list .news-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner .news__list .news-item {
    gap: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__list .news-item {
    gap: clamp(4px, 0.6666666667vw, 8px);
  }
}
.top-page .news-sec .news__inner .news__list .news-item .news-pic {
  aspect-ratio: 34/20;
  overflow: hidden;
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__list .news-item .news-pic {
    aspect-ratio: 34/24;
  }
}
.top-page .news-sec .news__inner .news__list .news-item .news-pic img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-page .news-sec .news__inner .news__list .news-item .date {
  font-size: 2.9333333333vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 2.2em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner .news__list .news-item .date {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__list .news-item .date {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.top-page .news-sec .news__inner .news__list .news-item .title {
  font-size: 3.2vw;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6em;
  color: #202020;
  font-family: "Zen Old Mincho", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .top-page .news-sec .news__inner .news__list .news-item .title {
    font-size: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__list .news-item .title {
    font-size: clamp(8px, 1.3333333333vw, 16px);
  }
}
.top-page .news-sec .news__inner .news__list .news-item .view .only-arrow-btn__container {
  margin-left: auto;
}
.top-page .news-sec .news__inner .news__list .news-item:hover .view .only-arrow-btn__container a::before {
  transform: translateX(20%);
}
.top-page .news-sec .news__inner .news__cta {
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 960px) {
  .top-page .news-sec .news__inner .news__cta {
    margin-top: clamp(35px, 5.8333333333vw, 70px);
  }
}
.top-page .news-sec .news__inner .news__cta .line-btn__container {
  margin-left: auto;
}

.privacy-pages {
  box-sizing: border-box;
  width: 90%;
  margin: 0 auto;
  margin-top: 24vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages {
    margin-top: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages {
    max-width: 1200px;
    margin-top: clamp(54px, 9vw, 108px);
  }
}
.privacy-pages .line-height-215 {
  line-height: 2.15;
}
@media screen and (min-width: 960px) {
  .privacy-pages .line-height-215 {
    line-height: 2.25;
  }
}
@media screen and (min-width: 1601px) {
  .privacy-pages .line-height-215 {
    line-height: 2.23;
  }
}
.privacy-pages h1 {
  font-family: "Crimson Pro", sans-serif;
}
.privacy-pages h2 {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  letter-spacing: 0.03em;
  padding-bottom: 3.7333333333vw;
  line-height: 1.9;
  font-weight: 600;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages h2 {
    font-size: 3.2vw;
    padding-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages h2 {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    padding-bottom: clamp(8px, 1.3333333333vw, 16px);
  }
}
@media screen and (min-width: 1601px) {
  .privacy-pages h2 {
    padding-bottom: clamp(10px, 1.6666666667vw, 20px);
  }
}
.privacy-pages p {
  padding: 0;
  margin: 0;
  font-family: "Noto Sans JP";
  letter-spacing: 0.07em;
  line-height: 2.2;
  font-size: 3.2vw;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages p {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages p {
    letter-spacing: 0.05em;
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.privacy-pages .privacy__container .breadcrumbs {
  margin-left: -0.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .breadcrumbs {
    margin-left: 0;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .breadcrumbs {
    margin-left: 0;
  }
}
.privacy-pages .privacy__container .privacy__content {
  padding: 21.3333333333vw 0 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content {
    padding: clamp(36.5px, 6.0833333333vw, 73px) 0 clamp(40px, 6.6666666667vw, 80px);
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__header {
  margin: 0 0 10.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content .privacy__header {
    margin: 0 0 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__header {
    margin: 0 0 clamp(20px, 3.3333333333vw, 40px);
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__description {
  margin: 10.6666666667vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content .privacy__description {
    margin: 5.3333333333vw 0;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__description {
    margin: clamp(39.5px, 6.5833333333vw, 79px) 0;
  }
}
@media screen and (min-width: 1601px) {
  .privacy-pages .privacy__container .privacy__content .privacy__description {
    margin: clamp(38px, 6.3333333333vw, 76px) 0;
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__section {
  margin-bottom: 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section {
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section {
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__section-body .privacy__section-item {
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__section-body .privacy__section-item {
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__section-body .privacy__section-item {
    margin-bottom: clamp(8px, 1.3333333333vw, 16px);
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__section-body .privacy__section-item:last-child {
  margin-bottom: 0;
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list {
  font-size: 3.2vw;
  list-style: none;
  padding: 0;
  margin: 0;
  counter-reset: item;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list li {
  letter-spacing: 0.07em;
  line-height: 2.165;
  position: relative;
  padding-left: 2em;
  counter-increment: item;
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list li {
    letter-spacing: 0.05em;
    line-height: 2.25;
  }
}
@media screen and (min-width: 1601px) {
  .privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list li {
    letter-spacing: 0.046em;
    line-height: 2.2;
  }
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list li::before {
  content: counter(item, decimal-leading-zero) " ";
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 400;
}
.privacy-pages .privacy__container .privacy__content .privacy__section .privacy__list li:first-child {
  line-height: 2.2;
}

.message-pages {
  box-sizing: border-box;
  margin-top: 13.8666666667vw;
}
.message-pages h2,
.message-pages h3,
.message-pages p {
  padding: 0;
  margin: 0;
  font-weight: 400;
}
.message-pages p {
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages {
    margin-top: 8.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages {
    margin-top: clamp(32.5px, 5.4166666667vw, 65px);
  }
}
.message-pages .one-row {
  white-space: nowrap;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .one-row {
    white-space: inherit;
  }
}
.message-pages .message__container .breadcrumbs {
  padding-top: 3.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .breadcrumbs {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .breadcrumbs {
    padding-top: clamp(20px, 3.3333333333vw, 40px);
  }
}
.message-pages .message__container .message__content .message__block {
  padding: 16vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block {
    padding: 8vw 0;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block {
    padding: clamp(77.5px, 12.9166666667vw, 155px) 0;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__block {
    padding: clamp(80px, 13.3333333333vw, 160px) 0;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block--shimazaki {
    padding: clamp(40px, 6.6666666667vw, 80px) 0 clamp(50px, 8.3333333333vw, 100px);
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__block--shimazaki {
    padding: clamp(40px, 6.6666666667vw, 80px) 0;
  }
}
.message-pages .message__container .message__content .message__block .message__body {
  display: flex;
  flex-direction: column;
  gap: 6.9333333333vw;
  margin-bottom: 14.9333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body {
    flex-direction: row;
    gap: 4.2666666667vw;
    margin-bottom: 10.6666666667vw;
    align-items: flex-end;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body {
    flex-direction: row;
    gap: clamp(16px, 2.6666666667vw, 32px);
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    align-items: flex-end;
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__image-wrap {
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__image-wrap {
    aspect-ratio: 448/335;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__image-wrap {
    width: 63%;
    flex-shrink: 0;
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__image-wrap img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__info {
    max-width: 40%;
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__info .message__title {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__info .message__title {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__info .message__title {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__name {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: bold;
  font-size: 5.3333333333vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
  border-bottom: 1px solid;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__name {
    font-size: 3.2vw;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__name {
    font-size: clamp(12px, 2vw, 24px);
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__bio {
  margin-top: 5.0666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio {
    margin-top: 2.5333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio {
    margin-top: clamp(9.5px, 1.5833333333vw, 19px);
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile {
  font-size: 2.6666666667vw;
  line-height: 2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile {
    font-size: 1.4666666667vw;
    letter-spacing: 0.07em;
    line-height: 1.7;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile {
    font-size: clamp(5.5px, 0.9166666667vw, 11px);
    letter-spacing: 0.07em;
    line-height: 1.7;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile {
    line-height: 1.7;
  }
}
.message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile--lh2_2 {
  line-height: 2.2;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile--lh2_2 {
    line-height: 2.2;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile--lh2_2 {
    line-height: 2.2;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__block .message__body .message__bio .message__profile--lh2_2 {
    line-height: 1.7;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block--reverse {
    padding: clamp(30px, 5vw, 60px) 0;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__block--reverse {
    padding: clamp(40px, 6.6666666667vw, 80px) 0;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block--reverse .message__body {
    flex-direction: row-reverse;
    justify-content: space-between;
  }
}
.message-pages .message__container .message__content .message__block .message__extra-group {
  display: flex;
  flex-direction: column;
  gap: 17.0666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__extra-group {
    gap: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group {
    gap: clamp(40px, 6.6666666667vw, 80px);
  }
}
.message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-title {
  font-weight: bold;
  font-size: 5.3333333333vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
  margin-bottom: 5.0666666667vw;
  font-family: "Zen Old Mincho", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-title {
    font-size: 2.6666666667vw;
    line-height: 2;
    letter-spacing: 0.07em;
    margin-bottom: 3.2vw;
    font-weight: 500;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-title {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    line-height: 2;
    letter-spacing: 0.07em;
    margin-bottom: clamp(10px, 1.6666666667vw, 20px);
    font-weight: 500;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-title--large {
    font-size: clamp(12px, 2vw, 24px);
  }
}
.message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-description {
  font-size: 3.2vw;
  line-height: 2.18;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-description {
    font-size: 1.8666666667vw;
    line-height: 2.2;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra .message__extra-description {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.22;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra--people .message__extra-title {
    margin-bottom: clamp(12.5px, 2.0833333333vw, 25px);
  }
}
.message-pages .message__container .message__content .message__block .message__extra-group .message__extra--challenge {
  margin-top: clamp(-2.5px, -0.4166666667vw, -5px);
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__block .message__extra-group .message__extra--challenge .message__extra-title {
    margin-bottom: clamp(12.5px, 2.0833333333vw, 25px);
  }
}
.message-pages .message__container .message__content .message__president {
  padding: 16vw 0 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president {
    padding: 8vw 0;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president {
    padding: clamp(90px, 15vw, 180px) 0 0;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__president {
    padding: clamp(80px, 13.3333333333vw, 160px) 0 0;
  }
}
.message-pages .message__container .message__content .message__president .message__president-title {
  text-align: center;
  font-size: 6.6666666667vw;
  line-height: 1.6;
  letter-spacing: 0.07em;
  font-family: "Crimson Pro", sans-serif;
  padding: 0;
  margin: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .message__president-title {
    font-size: 4.8vw;
    line-height: 1.2;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .message__president-title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2;
  }
}
.message-pages .message__container .message__content .message__president .president__list {
  padding-top: 9.0666666667vw;
  padding-bottom: 26.6666666667vw;
  display: flex;
  flex-direction: column;
  gap: 7.4666666667vw;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list {
    padding-top: 10.6666666667vw;
    padding-bottom: 30.6666666667vw;
    column-gap: 0.5333333333vw;
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(115px, 19.1666666667vw, 230px);
    column-gap: clamp(2px, 0.3333333333vw, 4px);
    row-gap: clamp(40px, 6.6666666667vw, 80px);
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media screen and (min-width: 960px) and (max-width: 1200px) {
  .message-pages .message__container .message__content .message__president .president__list {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(115px, 19.1666666667vw, 230px);
    column-gap: clamp(2px, 0.3333333333vw, 4px);
    row-gap: clamp(40px, 6.6666666667vw, 80px);
    flex-direction: row;
    flex-wrap: wrap;
    max-width: 85%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1201px) and (max-width: 1600px) {
  .message-pages .message__container .message__content .message__president .president__list {
    flex-wrap: nowrap;
  }
}
@media screen and (min-width: 1601px) {
  .message-pages .message__container .message__content .message__president .president__list {
    flex-wrap: nowrap;
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item {
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item {
    text-align: left;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item {
    text-align: left;
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item .president__image-wrap {
  margin: 0 auto;
  overflow: hidden;
  width: 65vw;
  aspect-ratio: 241/281;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__image-wrap {
    aspect-ratio: 241/281;
    width: 25vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__image-wrap {
    aspect-ratio: 236/421;
    width: auto;
    max-width: clamp(118px, 19.6666666667vw, 236px);
  }
}
@media screen and (min-width: 960px) and (max-width: 1200px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__image-wrap {
    width: 25vw;
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item .president__image-wrap .president__image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
}
.message-pages .message__container .message__content .message__president .president__list .president__item .president__info {
  padding: 0 2.2666666667vw;
  transition: opacity 0.3s ease;
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info {
    padding: 0;
    margin-top: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info {
    padding: 0;
    margin-top: clamp(4px, 0.6666666667vw, 8px);
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__company {
  font-size: 3.2vw;
  line-height: 2;
  letter-spacing: 0.07em;
  font-family: "Zen Old Mincho", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__company {
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__company {
    font-size: clamp(6px, 1vw, 12px);
    letter-spacing: 0.13em;
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__name {
  font-weight: bold;
  font-size: 4.2666666667vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__name {
    font-size: 3.2vw;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .message__content .message__president .president__list .president__item .president__info .president__name {
    font-size: clamp(12px, 2vw, 24px);
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
.message-pages .message__container .message__content .message__president .president__list .president__item:hover .president__image-wrap .president__image {
  transform: scale(1.05);
}
.message-pages .message__container .message__content .message__president .president__list .president__item:hover .president__info {
  opacity: 0.35;
}
.message-pages .message__container .modal {
  position: fixed;
  inset: 0;
  justify-content: center;
  align-items: center;
  z-index: 9999;
  background: transparent;
  display: flex;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: none;
}
.message-pages .message__container .modal.active {
  pointer-events: auto;
  visibility: visible;
  opacity: 1;
}
.message-pages .message__container .modal.fadein {
  transition: opacity 0.3s ease;
}
.message-pages .message__container .modal.is-fading-out {
  transition: opacity 0.3s ease, visibility 0.3s ease;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.message-pages .message__container .modal::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: #000;
  opacity: 0.75;
  mix-blend-mode: multiply;
  pointer-events: none;
  z-index: -1;
}
.message-pages .message__container .modal.active {
  display: flex;
}
.message-pages .message__container .modal__overlay {
  position: absolute;
  inset: 0;
  background: transparent;
}
.message-pages .message__container .modal__body {
  display: flex;
  z-index: 10;
  gap: 0.9333333333vw;
  justify-content: center;
  position: absolute;
  top: 0;
  padding-top: 5vh;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body {
    gap: 5.3333333333vw;
    padding-top: 0;
    position: relative;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body {
    gap: clamp(20px, 3.3333333333vw, 40px);
    max-width: 1200px;
    width: 100%;
    padding-top: 0;
    position: relative;
  }
}
.message-pages .message__container .modal__body .modal__nav-left {
  width: 11.7333333333vw;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__nav-left {
    width: 6.4vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__nav-left {
    width: clamp(24px, 4vw, 48px);
  }
}
.message-pages .message__container .modal__body .modal__nav-left .modal__prev {
  width: 3.2vw;
  height: 6.4vw;
  background-image: url("../icons/navigation/icon_arrow_left.svg");
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__nav-left .modal__prev {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__nav-left .modal__prev {
    width: clamp(16px, 2.6666666667vw, 32px);
    height: clamp(16px, 2.6666666667vw, 32px);
  }
}
.message-pages .message__container .modal__body .modal__nav-right {
  width: 12.8vw;
  display: flex;
  flex-direction: column;
  position: relative;
  justify-content: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__nav-right {
    width: 6.4vw;
    align-items: center;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__nav-right {
    width: clamp(24px, 4vw, 48px);
    align-items: center;
  }
}
.message-pages .message__container .modal__body .modal__nav-right .modal__close {
  width: 4.2666666667vw;
  height: 4.2666666667vw;
  background-image: url("../icons/navigation/icon_close.svg");
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 5.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__nav-right .modal__close {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    right: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__nav-right .modal__close {
    width: clamp(16px, 2.6666666667vw, 32px);
    height: clamp(16px, 2.6666666667vw, 32px);
    right: clamp(10px, 1.6666666667vw, 20px);
  }
}
.message-pages .message__container .modal__body .modal__nav-right .modal__next {
  width: 3.2vw;
  height: 6.4vw;
  background-image: url("../icons/navigation/icon_arrow_right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__nav-right .modal__next {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__nav-right .modal__next {
    width: clamp(16px, 2.6666666667vw, 32px);
    height: clamp(16px, 2.6666666667vw, 32px);
  }
}
.message-pages .message__container .modal__body .modal__wrapper {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  align-items: center;
  gap: 2.6666666667vw;
  width: 80%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper {
    flex-direction: row;
    gap: 2.6666666667vw;
    justify-content: center;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper {
    flex-direction: row;
    gap: clamp(30px, 5vw, 60px);
    width: 75%;
    justify-content: center;
  }
}
.message-pages .message__container .modal__body .modal__wrapper .modal__info {
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 90%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info {
    width: 55%;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info {
    width: 100%;
  }
}
.message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__company {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 2.9333333333vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__company {
    font-size: 1.8666666667vw;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__company {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
.message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__name {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 4.8vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__name {
    font-size: 3.2vw;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__name {
    font-size: clamp(12px, 2vw, 24px);
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
.message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__details {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
  margin-top: 1.0666666667vw;
  font-weight: 400;
  max-height: 50vh;
  overflow-y: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__details {
    font-size: 1.8666666667vw;
    line-height: 2.2;
    letter-spacing: 0.05em;
    margin-top: 4vw;
    max-height: 80vh;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__info .modal__details {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2;
    letter-spacing: 0.05em;
    margin-top: clamp(15px, 2.5vw, 30px);
    max-height: 80vh;
  }
}
.message-pages .message__container .modal__body .modal__wrapper .modal__image-wrapper {
  width: 90%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__image-wrapper {
    aspect-ratio: 310/431;
    flex-shrink: 0;
    width: 45%;
  }
}
@media screen and (min-width: 960px) {
  .message-pages .message__container .modal__body .modal__wrapper .modal__image-wrapper {
    width: 70%;
    display: flex;
    justify-content: center;
  }
  .message-pages .message__container .modal__body .modal__wrapper .modal__image-wrapper img {
    max-height: clamp(215.5px, 35.9166666667vw, 431px);
    height: clamp(215.5px, 35.9166666667vw, 431px);
    display: block;
    object-fit: contain;
  }
}

.news-page {
  margin-top: 13.8666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page {
    margin-top: 14.4vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page {
    margin-top: clamp(54px, 9vw, 108px);
  }
}
.news-page .news__container .breadcrumbs {
  padding-top: 10.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .breadcrumbs {
    padding-top: 0;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .breadcrumbs {
    padding-top: clamp(-5px, -0.8333333333vw, -10px);
  }
}
.news-page .news__container .news__sec .main-title {
  text-align: center;
  margin: 19.2vw 0 9.3333333333vw;
  font-size: 9.6vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .main-title {
    margin: 9.7333333333vw 0 10.6666666667vw;
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .main-title {
    margin: clamp(32.5px, 5.4166666667vw, 65px) 0 clamp(37.5px, 6.25vw, 75px);
    font-size: clamp(18px, 3vw, 36px);
  }
}
.news-page .news__container .news__sec .news__list .pagination-container {
  margin: 10.6666666667vw 0 8.8vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .pagination-container {
    margin: 10.6666666667vw 0 9.7333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .pagination-container {
    margin: clamp(38.5px, 6.4166666667vw, 77px) 0 clamp(36.5px, 6.0833333333vw, 73px);
    padding-left: clamp(5px, 0.8333333333vw, 10px);
  }
}
.news-page .news__container .news__sec .news__list .news__items {
  display: flex;
  flex-wrap: wrap;
  gap: 20vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items {
    column-gap: 2.1333333333vw;
    row-gap: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items {
    column-gap: clamp(8px, 1.3333333333vw, 16px);
    row-gap: clamp(38.5px, 6.4166666667vw, 77px);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item {
  list-style: none;
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item {
    width: calc((100% - 2.1333333333vw * 2) / 2);
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item {
    width: calc((100% - clamp(8px, 1.3333333333vw, 16px) * 2) / 3);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card {
  display: block;
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__link::before {
  display: none;
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__figure {
  position: relative;
  width: 100%;
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__figure .news-card__img {
  display: block;
  width: 100%;
  object-fit: cover;
  height: 53.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__figure .news-card__img {
    height: 32vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__figure .news-card__img {
    height: clamp(120px, 20vw, 240px);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__figure .news-card__img--noimage {
  background-color: #f5f5f5;
  display: block;
  background-image: none;
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content {
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content {
    margin-top: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content {
    margin-top: clamp(4px, 0.6666666667vw, 8px);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__date {
  font-size: 2.9333333333vw;
  font-weight: bold;
  line-height: 2.2;
  letter-spacing: 0.05em;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__date {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__date {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__title {
  font-size: 3.2vw;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-family: "Zen Old Mincho", sans-serif;
  margin-top: 2.1333333333vw;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__title {
    margin-top: 1.0666666667vw;
    font-size: 2.1333333333vw;
    line-height: 1.5;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__title {
    margin-top: clamp(4px, 0.6666666667vw, 8px);
    font-size: clamp(8px, 1.3333333333vw, 16px);
    line-height: 1.5;
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__arrow-wrapper {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin-top: 1.6vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__arrow-wrapper {
    margin-top: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .news-page .news__container .news__sec .news__list .news__items .news__item .news-card .news-card__content .news-card__arrow-wrapper {
    margin-top: clamp(6px, 1vw, 12px);
  }
}
.news-page .news__container .news__sec .news__list .news__items .news__item .news-card:hover .news-card__content .news-card__arrow-wrapper .only-arrow-btn__container a::before {
  transform: translateX(20%);
}

.news-detail-pages {
  box-sizing: border-box;
  margin-top: 23.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages {
    margin-top: 14.4vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages {
    margin-top: clamp(50px, 8.3333333333vw, 100px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__body {
  padding: 14.9333333333vw 0 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__body {
    padding: 10.2666666667vw 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__body {
    padding: clamp(38.5px, 6.4166666667vw, 77px) 0 clamp(40px, 6.6666666667vw, 80px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__body .main-title {
  font-size: 5.3333333333vw;
  font-weight: bold;
  font-family: "Zen Old Mincho", sans-serif;
  line-height: 1.9;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__body .main-title {
    font-size: 3.2vw;
    margin: 0 0 5.3333333333vw;
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__body .main-title {
    font-size: clamp(12px, 2vw, 24px);
    margin: 0 0 clamp(20px, 3.3333333333vw, 40px);
    line-height: 2;
    letter-spacing: 0.07em;
  }
}
.news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail {
  margin: 10.6666666667vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail {
    margin: 10.6666666667vw 0;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail {
    margin: clamp(40px, 6.6666666667vw, 80px) 0;
  }
}
.news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail .detail-thumbnail__img-wrapper {
  position: relative;
  width: 100%;
  max-height: 53.3333333333vw;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail .detail-thumbnail__img-wrapper {
    width: 68%;
    max-height: 53.3333333333vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail .detail-thumbnail__img-wrapper {
    width: 68%;
    max-height: clamp(200px, 33.3333333333vw, 400px);
    margin: 0 auto;
  }
}
.news-detail-pages .detail__container .detail__content .detail__body .detail-thumbnail .detail-thumbnail__img-wrapper .detail-thumbnail__img {
  display: block;
  width: 100%;
  height: auto;
}
.news-detail-pages .detail__container .detail__content .detail__body .detail-content__main {
  font-size: 3.2vw;
  line-height: 2.15;
  letter-spacing: 0.07em;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-content__main {
    font-size: 1.8666666667vw;
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__body .detail-content__main {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
}
.news-detail-pages .detail__container .detail__content .detail__body .detail-content__main a {
  word-break: break-word;
  overflow-wrap: break-word;
  white-space: normal;
}
.news-detail-pages .detail__container .detail__content .detail__footer {
  padding: 21.3333333333vw 0 42.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer {
    padding: 10.9333333333vw 0 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer {
    padding: clamp(41px, 6.8333333333vw, 82px) 0 clamp(20px, 3.3333333333vw, 40px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list {
  display: flex;
  flex-direction: column;
  gap: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list {
    flex-direction: row;
    gap: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list {
    flex-direction: row;
    gap: clamp(100px, 16.6666666667vw, 200px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card {
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card {
    width: 50%;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card {
    width: 50%;
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link::before, .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link::after {
  display: none;
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link .post-card__thumbnail .post-card__thumbnail-wrapper {
  position: relative;
  width: 100%;
  height: 53.3333333333vw;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link .post-card__thumbnail .post-card__thumbnail-wrapper {
    height: 31.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link .post-card__thumbnail .post-card__thumbnail-wrapper {
    height: clamp(117.5px, 19.5833333333vw, 235px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__link .post-card__thumbnail .post-card__thumbnail-wrapper .post-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content {
  margin-top: 1.6vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content {
    margin-top: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content {
    margin-top: clamp(5px, 0.8333333333vw, 10px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__title {
  font-size: 3.2vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: bold;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__title {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__title {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta {
  margin-top: 3.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta {
    margin-top: 1.6vw;
    display: flex;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta {
    margin-top: clamp(10px, 1.6666666667vw, 20px);
    display: flex;
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta--right {
  display: flex;
  justify-content: right;
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta .only-arrow-btn__container {
  font-size: 3.2vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta .only-arrow-btn__container {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card .post-card__content .post-card__meta .only-arrow-btn__container {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__thumbnail-wrapper {
  background-color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 53.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__thumbnail-wrapper {
    height: 31.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__thumbnail-wrapper {
    height: clamp(117.5px, 19.5833333333vw, 235px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__content .post-card__title {
  font-family: "Crimson Pro", sans-serif;
  font-weight: 500;
  font-size: 4.2666666667vw;
  margin-top: 2.6666666667vw;
  line-height: 1.6;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__content .post-card__title {
    font-size: 2.4vw;
    margin-top: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card--empty .post-card__content .post-card__title {
    font-size: clamp(9px, 1.5vw, 18px);
    margin-top: clamp(5px, 0.8333333333vw, 10px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card:hover .post-card__content .post-card__meta--right a {
  transform: translateX(10%);
}
.news-detail-pages .detail__container .detail__content .detail__footer .post-navigation__list .post-card:hover .post-card__content .post-card__meta--left a {
  transform: translateX(-10%);
}
.news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button {
  text-align: center;
  padding: 14.9333333333vw 0 0vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button {
    padding: 5.3333333333vw 0 17.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button {
    padding: clamp(20px, 3.3333333333vw, 40px) 0 clamp(65px, 10.8333333333vw, 130px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back {
  width: 100%;
  height: 14.9333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back {
    width: auto;
    height: 8vw;
    width: 42.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back {
    width: auto;
    height: clamp(30px, 5vw, 60px);
    width: clamp(160px, 26.6666666667vw, 320px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back a {
  position: relative;
  font-size: 4.8vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
  position: relative;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back a {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back a {
    font-size: clamp(10px, 1.6666666667vw, 20px);
  }
}
.news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back a::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: url("../icons/navigation/line.svg") no-repeat right center;
  background-size: contain;
  z-index: 2;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.news-detail-pages .detail__container .detail__content .detail__footer .detail__footer-button .button-back a:hover::after {
  background: url("../icons/navigation/line_white.svg") no-repeat right center;
  background-size: contain;
}

.company-pages {
  box-sizing: border-box;
}
.company-pages h2,
.company-pages p,
.company-pages dl,
.company-pages dd,
.company-pages dt,
.company-pages span {
  padding: 0;
  margin: 0;
  font-weight: 400;
}
.company-pages p {
  font-family: "Noto Sans JP", sans-serif;
}
.company-pages .company__container .fv {
  margin-top: 14.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .fv {
    margin-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .fv {
    margin-top: clamp(31.5px, 5.25vw, 63px);
  }
}
.company-pages .company__container .breadcrumbs {
  padding-top: 3.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .breadcrumbs {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .breadcrumbs {
    padding-top: clamp(20px, 3.3333333333vw, 40px);
  }
}
.company-pages .company__container .main-title {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .main-title {
    line-height: 1.2;
  }
}
.company-pages .company__container .company-outlined {
  padding: 16vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined {
    padding: 21.3333333333vw 0;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined {
    padding: clamp(80px, 13.3333333333vw, 160px) 0;
  }
}
.company-pages .company__container .company-outlined .company-outlined__group {
  display: flex;
  flex-direction: column;
  gap: 10.4vw;
  margin-top: 13.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group {
    gap: 5.3333333333vw;
    margin-top: 10vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group {
    gap: clamp(20px, 3.3333333333vw, 40px);
    margin-top: clamp(37.5px, 6.25vw, 75px);
  }
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item {
  display: flex;
  font-size: 3.2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__name {
  width: 30%;
  border-bottom: 1px solid #202020;
  padding-bottom: 2.1333333333vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__name {
    padding-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__name {
    padding-bottom: clamp(4px, 0.6666666667vw, 8px);
  }
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info {
  width: 70%;
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: 2.1333333333vw;
  line-height: 2.2;
  letter-spacing: 0.12em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info {
    padding-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info {
    letter-spacing: 0.05em;
    padding-bottom: clamp(4px, 0.6666666667vw, 8px);
    padding-left: clamp(2.5px, 0.4166666667vw, 5px);
  }
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked {
  display: flex;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked {
    gap: 1.3333333333vw;
    align-items: flex-start;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked {
    gap: clamp(5px, 0.8333333333vw, 10px);
    align-items: center;
  }
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked .company-outlined__label {
  white-space: nowrap;
}
.company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked .company-outlined__icon {
  display: flex;
  align-items: center;
  width: 6.4vw;
  background-image: url("../icons/common/icon_line.svg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  flex-shrink: 0;
  min-height: 0.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked .company-outlined__icon {
    background-image: url("../icons/common/icon_line_pc.svg");
    min-height: 0.2666666667vw;
    margin-top: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-outlined .company-outlined__group .company-outlined__item .company-outlined__info--stacked .company-outlined__icon {
    background-image: url("../icons/common/icon_line_pc.svg");
    width: clamp(26px, 4.3333333333vw, 52px);
    min-height: clamp(1px, 0.1666666667vw, 2px);
  }
}
.company-pages .company__container .company-group {
  padding: 16vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group {
    padding: 10.6666666667vw 0;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group {
    padding: clamp(40px, 6.6666666667vw, 80px) 0;
  }
}
.company-pages .company__container .company-group .company-group__list {
  display: flex;
  flex-direction: column;
  gap: 16vw;
  padding: 10.6666666667vw 0 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list {
    gap: 16vw;
    padding: 10.2666666667vw 0 0;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list {
    gap: clamp(61.5px, 10.25vw, 123px);
    padding: clamp(38.5px, 6.4166666667vw, 77px) 0 0;
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item {
  display: flex;
  flex-direction: column;
  gap: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item {
    gap: 3.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item {
    gap: clamp(11.5px, 1.9166666667vw, 23px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body {
    flex-direction: row;
    gap: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body {
    flex-direction: row;
    gap: clamp(16px, 2.6666666667vw, 32px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__img {
  display: flex;
  justify-content: center;
  flex-shrink: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__img {
    align-items: center;
    width: 30%;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__img {
    align-items: center;
    max-width: clamp(150px, 25vw, 300px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__img img {
  display: block;
  max-width: 100%;
  height: auto;
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__name {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__name {
    font-size: 1.8666666667vw;
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__name {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__lead {
  font-size: 5.3333333333vw;
  line-height: 1.9;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__lead {
    font-size: 2.8vw;
    line-height: 1.6;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__lead {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    line-height: 1.6;
    letter-spacing: 0.07em;
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__text {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
  padding-top: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__text {
    font-size: 1.8666666667vw;
    line-height: 2.2;
    padding-top: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__body .company-group__content .company-group__text {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2;
    padding-top: clamp(8px, 1.3333333333vw, 16px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer {
  text-align: right;
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link {
  position: relative;
  display: inline-flex;
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link {
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link {
    font-size: clamp(6px, 1vw, 12px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 0.2666666667vw;
  width: 100%;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link::before {
    height: 0.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link::before {
    height: clamp(0.5px, 0.0833333333vw, 1px);
  }
}
.company-pages .company__container .company-group .company-group__list .company-group__item .company-group__footer .company-group__link:hover::before {
  transform: scaleX(1);
}
.company-pages .company__container .company-office {
  padding: 16vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-office {
    padding: 11.3333333333vw 0;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-office {
    padding: clamp(42.5px, 7.0833333333vw, 85px) 0;
  }
}
.company-pages .company__container .company-office .company-office__subtitle {
  text-align: justify;
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-office .company-office__subtitle {
    font-size: 1.8666666667vw;
    margin-top: 10.6666666667vw;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-office .company-office__subtitle {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-top: clamp(40px, 6.6666666667vw, 80px);
    text-align: center;
  }
}
.company-pages .company__container .company-office .company-office__carousel {
  overflow: hidden;
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-office .company-office__carousel {
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-office .company-office__carousel {
    margin-top: clamp(40px, 6.6666666667vw, 80px);
  }
}
.company-pages .company__container .company-office .company-office__carousel .company-office__track {
  display: flex;
}
.company-pages .company__container .company-office .company-office__carousel .company-office__slide {
  flex: 0 0 auto;
  aspect-ratio: 16/9;
  width: 76.8vw;
  padding: 0 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-office .company-office__carousel .company-office__slide {
    height: 30vw;
    width: 53.3333333333vw;
    padding: 0 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-office .company-office__carousel .company-office__slide {
    height: clamp(112.5px, 18.75vw, 225px);
    width: clamp(200px, 33.3333333333vw, 400px);
    padding: 0 clamp(4px, 0.6666666667vw, 8px);
  }
}
.company-pages .company__container .company-office .company-office__carousel .company-office__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.company-pages .company__container .company-map {
  padding: 16vw 0 26.6666666667vw;
  display: flex;
  flex-direction: column;
  gap: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map {
    padding: 16vw 0 26.6666666667vw;
    flex-direction: row;
    justify-content: center;
    gap: 6.9333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map {
    padding: clamp(58.5px, 9.75vw, 117px) 0 clamp(100px, 16.6666666667vw, 200px);
    flex-direction: row;
    justify-content: center;
    gap: clamp(26px, 4.3333333333vw, 52px);
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__map {
    width: 70%;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__map {
    width: 70%;
  }
}
.company-pages .company__container .company-map .company-map__map .company-map__map-base .company-map__map-inner iframe {
  width: 100%;
  height: 52.5333333333vw;
  border: 0;
  display: block;
  filter: grayscale(1);
  -ms-filter: grayscale(100%);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__map .company-map__map-base .company-map__map-inner iframe {
    height: 54.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__map .company-map__map-base .company-map__map-inner iframe {
    height: clamp(203px, 33.8333333333vw, 406px);
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info {
    align-self: flex-end;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info {
    align-self: flex-end;
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-title {
  font-size: 3.2vw;
  font-weight: bold;
  line-height: 2.2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-title {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-title {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail {
  margin-top: 3.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail {
    margin-top: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail {
    margin-top: clamp(8px, 1.3333333333vw, 16px);
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 1.6vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list {
    gap: 0.8vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list {
    gap: clamp(3px, 0.5vw, 6px);
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item {
  position: relative;
  font-size: 3.2vw;
  line-height: 2.2;
  display: inline-flex;
  align-items: center;
  gap: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item {
    gap: 1.0666666667vw;
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item {
    gap: clamp(4px, 0.6666666667vw, 8px);
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item::before {
  content: "";
  width: 6.4vw;
  height: 6.4vw;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item::before {
    width: 3.2vw;
    height: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item::before {
    width: clamp(12px, 2vw, 24px);
    height: clamp(12px, 2vw, 24px);
  }
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item--add::before {
  background-image: url("../icons/common/icon_map.svg");
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item--tel::before {
  background-image: url("../icons/common/icon_smartphone.svg");
}
.company-pages .company__container .company-map .company-map__info .company-map__info-detail .company-map__info-list .company-map__info-item--access::before {
  background-image: url("../icons/common/icon_walking.svg");
}

.principles-page {
  padding-top: 14.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page {
    padding-top: 7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page {
    padding-top: clamp(28.5px, 4.75vw, 57px);
  }
}
.principles-page .fv::after {
  content: none;
}
.principles-page .breadcrumb-sec {
  padding-top: 3.7333333333vw;
}
.principles-page .overview-sec {
  padding-top: 26.6666666667vw;
  padding-bottom: 26.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .overview-sec {
    padding-top: 13.3333333333vw;
    padding-bottom: 13.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec {
    padding-top: clamp(50px, 8.3333333333vw, 100px);
    padding-bottom: clamp(85px, 14.1666666667vw, 170px);
  }
}
.principles-page .overview-sec .overview-inner {
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec .overview-inner {
    max-width: 1200px;
  }
}
.principles-page .overview-sec .overview-inner .overview__title {
  margin-bottom: 13.3333333333vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .overview-sec .overview-inner .overview__title {
    margin-bottom: 6.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec .overview-inner .overview__title {
    margin-bottom: clamp(25px, 4.1666666667vw, 50px);
  }
}
.principles-page .overview-sec .overview-inner .overview__title .en {
  font-family: "Crimson Pro", sans-serif;
  font-size: 4.8vw;
  letter-spacing: 0.07em;
  line-height: 1em;
  margin-bottom: 2.1333333333vw;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .overview-sec .overview-inner .overview__title .en {
    font-size: 2.6666666667vw;
    margin-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec .overview-inner .overview__title .en {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    margin-bottom: clamp(4px, 0.6666666667vw, 8px);
  }
}
.principles-page .overview-sec .overview-inner .overview__title .jp {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  line-height: 2em;
  letter-spacing: 0.04em;
  font-weight: 600;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .overview-sec .overview-inner .overview__title .jp {
    font-size: 3.2vw;
    letter-spacing: 0.07em;
    font-weight: 500;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec .overview-inner .overview__title .jp {
    line-height: 1.9em;
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    font-weight: 500;
  }
}
.principles-page .overview-sec .overview-inner .overview__content .txt {
  margin-bottom: 7.4666666667vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 3.4666666667vw;
  line-height: 2.4em;
  letter-spacing: 0.02em;
  color: #202020;
  text-align: center;
}
.principles-page .overview-sec .overview-inner .overview__content .txt:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .overview-sec .overview-inner .overview__content .txt {
    font-size: 2vw;
    line-height: 2.2em;
    margin-bottom: 3.7333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .overview-sec .overview-inner .overview__content .txt {
    font-size: clamp(7.5px, 1.25vw, 15px);
    line-height: 2em;
    margin-bottom: clamp(14px, 2.3333333333vw, 28px);
  }
}
.principles-page .mission-sec {
  padding-top: 21.3333333333vw;
  background-color: #F6F6F6;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec {
    padding-top: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec {
    padding-top: clamp(75px, 12.5vw, 150px);
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner {
    width: 90%;
    max-width: 1200px;
    margin: auto;
  }
}
.principles-page .mission-sec .mission-inner .mission__title {
  width: 90%;
  margin: auto;
  margin-bottom: 8.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec .mission-inner .mission__title {
    margin-bottom: 4.2666666667vw;
  }
}
.principles-page .mission-sec .mission-inner .mission__title .en {
  font-family: "Crimson Pro", sans-serif;
  font-size: 6.4vw;
  letter-spacing: 0.07em;
  line-height: 1.2em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec .mission-inner .mission__title .en {
    font-size: 3.4666666667vw;
    letter-spacing: 0.07em;
  }
}
.principles-page .mission-sec .mission-inner .mission__content {
  display: flex;
  flex-direction: column;
  gap: 8.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec .mission-inner .mission__content {
    gap: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content {
    flex-direction: row;
    gap: clamp(30px, 5vw, 60px);
    align-items: center;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--img {
    width: 56.5%;
  }
}
.principles-page .mission-sec .mission-inner .mission__content .mission__content--desc {
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc {
    width: calc(43.5% - clamp(30px, 5vw, 60px));
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .title-en {
    font-family: "Crimson Pro", sans-serif;
    font-size: clamp(11px, 1.8333333333vw, 22px);
    letter-spacing: 0.07em;
    line-height: 1.2em;
    color: #202020;
    margin-bottom: clamp(4px, 0.6666666667vw, 8px);
  }
}
.principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .title-jp {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  font-weight: 600;
  color: #202020;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .title-jp {
    font-size: 2.9333333333vw;
    letter-spacing: 0.07em;
    line-height: 1.7em;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .title-jp {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    line-height: 1.7em;
    font-weight: 500;
    margin-bottom: clamp(16px, 2.6666666667vw, 32px);
  }
}
.principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .txt {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.04em;
  color: #202020;
  margin-bottom: 5.3333333333vw;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .txt {
    font-size: 1.8666666667vw;
    line-height: 2.2em;
    letter-spacing: 0.05em;
    margin-bottom: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .txt {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2em;
    letter-spacing: 0.05em;
    margin-bottom: clamp(16px, 2.6666666667vw, 32px);
    font-weight: 400;
  }
}
.principles-page .mission-sec .mission-inner .mission__content .mission__content--desc .txt:last-child {
  margin-bottom: 0;
}
.principles-page .vision-sec {
  padding-bottom: 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .vision-sec {
    padding-bottom: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .vision-sec {
    padding-bottom: clamp(100px, 16.6666666667vw, 200px);
  }
}
@media screen and (min-width: 960px) {
  .principles-page .vision-sec .mission-inner .mission__content.is-reverse {
    flex-direction: row-reverse;
    gap: clamp(21px, 3.5vw, 42px);
  }
}
@media screen and (min-width: 960px) {
  .principles-page .vision-sec .mission-inner .mission__content.is-reverse .mission__content--desc {
    width: calc(43.5% - clamp(21px, 3.5vw, 42px));
  }
}
.principles-page .declaration-sec {
  padding-top: 16vw;
  padding-bottom: 32vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec {
    padding-top: 8vw;
    padding-bottom: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(120px, 20vw, 240px);
  }
}
.principles-page .declaration-sec .declaration-inner {
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner {
    max-width: 1200px;
    display: flex;
    gap: clamp(44px, 7.3333333333vw, 88px);
    align-items: center;
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__title {
  text-align: center;
  margin-bottom: 14.9333333333vw;
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title {
    margin-bottom: 0;
    width: 35%;
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__title .en {
  font-family: "Crimson Pro", sans-serif;
  font-size: 6.4vw;
  letter-spacing: 0.07em;
  line-height: 1.2em;
  color: #202020;
  margin-bottom: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .en {
    font-size: 2.9333333333vw;
    margin-bottom: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .en {
    font-size: clamp(11px, 1.8333333333vw, 22px);
    margin-bottom: clamp(4px, 0.6666666667vw, 8px);
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__title .jp {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  font-weight: 600;
  color: #202020;
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .jp {
    font-size: 3.2vw;
    letter-spacing: 0.07em;
    line-height: 2em;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .jp {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    line-height: 2em;
    font-weight: 500;
    margin-bottom: clamp(12px, 2vw, 24px);
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__title .summary {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.07em;
  color: #202020;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .summary {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__title .summary {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2em;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__content {
    width: calc(65% - clamp(44px, 7.3333333333vw, 88px));
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__content .item {
  margin-bottom: 14.9333333333vw;
  border-bottom: 1px solid #202020;
  padding-bottom: 2.6666666667vw;
}
.principles-page .declaration-sec .declaration-inner .declaration__content .item:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec .declaration-inner .declaration__content .item {
    margin-bottom: 7.4666666667vw;
    padding-bottom: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__content .item {
    margin-bottom: clamp(33px, 5.5vw, 66px);
    padding-bottom: clamp(5px, 0.8333333333vw, 10px);
  }
}
.principles-page .declaration-sec .declaration-inner .declaration__content .item .txt {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.03em;
  color: #202020;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .declaration-sec .declaration-inner .declaration__content .item .txt {
    font-size: 1.8666666667vw;
    letter-spacing: 0.05em;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .declaration-sec .declaration-inner .declaration__content .item .txt {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    letter-spacing: 0.05em;
  }
}
.principles-page .value-sec {
  padding-top: 21.3333333333vw;
  padding-bottom: 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec {
    padding-top: 16vw;
    padding-bottom: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec {
    padding-top: clamp(80px, 13.3333333333vw, 160px);
    padding-bottom: clamp(80px, 13.3333333333vw, 160px);
  }
}
.principles-page .value-sec .value-inner__container {
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container {
    max-width: 1200px;
  }
}
.principles-page .value-sec .value-inner__container .value__title {
  margin-bottom: 10.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__title {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__title {
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.principles-page .value-sec .value-inner__container .value__title .en {
  font-family: "Crimson Pro", sans-serif;
  font-size: 7.4666666667vw;
  letter-spacing: 0.07em;
  line-height: 1.6em;
  color: #202020;
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__title .en {
    font-size: 3.7333333333vw;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__title .en {
    font-size: clamp(18px, 3vw, 36px);
    margin-bottom: clamp(16px, 2.6666666667vw, 32px);
  }
}
.principles-page .value-sec .value-inner__container .value__title .jp {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  font-weight: 600;
  color: #202020;
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__title .jp {
    font-size: 2.6666666667vw;
    letter-spacing: 0.07em;
    line-height: 2em;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__title .jp {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    font-weight: 500;
    margin-bottom: clamp(16px, 2.6666666667vw, 32px);
    line-height: 2em;
  }
}
.principles-page .value-sec .value-inner__container .value__title .summary {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.05em;
  color: #202020;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__title .summary {
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__title .summary {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2em;
    letter-spacing: 0.05em;
  }
}
.principles-page .value-sec .value-inner__container .value__content {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__content {
    gap: 0.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__content {
    gap: clamp(1px, 0.1666666667vw, 2px);
  }
}
.principles-page .value-sec .value-inner__container .value__content .item {
  width: calc(50% - 0.2666666667vw);
  aspect-ratio: 170/95;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__content .item {
    width: calc(50% - 0.1333333333vw);
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__content .item {
    width: calc(33.3333333333% - clamp(1px, 0.1666666667vw, 2px));
  }
}
.principles-page .value-sec .value-inner__container .value__content .item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 1;
  transition: background 0.3s ease;
}
.principles-page .value-sec .value-inner__container .value__content .item .item__thumbnail img {
  transition: transform 0.3s ease;
}
.principles-page .value-sec .value-inner__container .value__content .item .item__title {
  font-size: 3.2vw;
  line-height: 2em;
  letter-spacing: 0.07em;
  color: #FFFFFF;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: max-content;
  z-index: 2;
  font-family: "Zen Old Mincho", sans-serif;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__content .item .item__title {
    font-size: 2.4vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__content .item .item__title {
    font-size: clamp(9px, 1.5vw, 18px);
  }
}
.principles-page .value-sec .value-inner__container .value__content .item:hover .item__thumbnail img {
  transform: scale(1.05);
}
.principles-page .value-sec .value-inner__container .value__content .item:hover::before {
  background: rgba(0, 0, 0, 0);
}
.principles-page .value-sec .value-inner__container .value__modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 100;
  display: none;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.5s ease;
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal {
    align-items: center;
  }
}
.principles-page .value-sec .value-inner__container .value__modal.is-open {
  opacity: 1;
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner {
  width: 75%;
  position: relative;
  margin-top: 20vh;
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner {
    max-width: 1200px;
    margin-top: unset;
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer {
  display: none;
  flex-direction: column;
  gap: 2.6666666667vw;
  max-height: 70vh;
  overflow-y: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer {
    gap: 2.6666666667vw;
    max-height: 80vh;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer {
    flex-direction: row-reverse;
    gap: clamp(20px, 3.3333333333vw, 40px);
    align-items: center;
    max-height: 90vh;
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer.is-active {
  display: flex;
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--img {
    width: 60%;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc {
    width: calc(40% - clamp(20px, 3.3333333333vw, 40px));
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .title {
  font-size: 5.3333333333vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  color: #FFFFFF;
  font-family: "Zen Old Mincho", sans-serif;
  margin-bottom: 1.0666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .title {
    font-size: 3.2vw;
    margin-bottom: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .title {
    font-size: clamp(12px, 2vw, 24px);
    margin-bottom: clamp(15px, 2.5vw, 30px);
    line-height: 2em;
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .desc {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.07em;
  color: #FFFFFF;
  font-weight: 300;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .desc {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .value__viewer .value__viewer--desc .desc {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .close-btn {
  width: 4.2666666667vw;
  height: 4.2666666667vw;
  position: absolute;
  top: 0;
  right: -8vw;
  cursor: pointer;
  background-image: url(../icons/navigation/icon_close.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .close-btn {
    width: 3.2vw;
    height: 3.2vw;
    right: -7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .close-btn {
    width: clamp(12px, 2vw, 24px);
    height: clamp(12px, 2vw, 24px);
    right: clamp(-75px, -12.5vw, -150px);
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .next-btn,
.principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
  width: 3.2vw;
  height: 6.4vw;
  position: absolute;
  top: calc(50% - 20vh);
  right: -8vw;
  transform: translateY(-50%);
  cursor: pointer;
  background-image: url(../icons/navigation/icon_arrow_right.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .next-btn,
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    right: -9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .next-btn,
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
    top: 50%;
    width: clamp(8px, 1.3333333333vw, 16px);
    height: clamp(16.5px, 2.75vw, 33px);
    right: clamp(-75px, -12.5vw, -150px);
  }
}
.principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
  left: -8vw;
  transform: rotate(180deg);
  right: unset;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
    left: -9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .principles-page .value-sec .value-inner__container .value__modal .value-inner .prev-btn {
    left: clamp(-75px, -12.5vw, -150px);
  }
}

.history-pages {
  box-sizing: border-box;
  width: 90%;
  margin: 0 auto;
  margin-top: 24vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages {
    margin-top: 16vw;
  }
}
@media screen and (min-width: 960px) {
  .history-pages {
    max-width: 1200px;
    margin-top: clamp(54px, 9vw, 108px);
  }
}
.history-pages h1 {
  font-family: "Crimson Pro", sans-serif;
}
.history-pages h2 {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  letter-spacing: 0.03em;
  padding-bottom: 3.7333333333vw;
  line-height: 1.9;
  font-weight: 600;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages h2 {
    font-size: 3.2vw;
    padding-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .history-pages h2 {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    padding-bottom: clamp(8px, 1.3333333333vw, 16px);
  }
}
@media screen and (min-width: 1601px) {
  .history-pages h2 {
    padding-bottom: clamp(10px, 1.6666666667vw, 20px);
  }
}
.history-pages p {
  padding: 0;
  margin: 0;
  font-family: "Noto Sans JP";
  letter-spacing: 0.07em;
  line-height: 2.2;
  font-size: 3.2vw;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages p {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .history-pages p {
    letter-spacing: 0.05em;
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.history-pages .history__container .breadcrumbs {
  margin-left: -0.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages .history__container .breadcrumbs {
    margin-left: 0;
  }
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .breadcrumbs {
    margin-left: 0;
  }
}
.history-pages .history__container .history__content {
  padding: 21.3333333333vw 0 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages .history__container .history__content {
    padding: 10.6666666667vw 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content {
    padding: clamp(40px, 6.6666666667vw, 80px) 0 clamp(40px, 6.6666666667vw, 80px);
  }
}
.history-pages .history__container .history__content .history__header {
  padding: 0 0 21.3333333333vw;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__header {
    padding: 0 0 128px;
  }
}
.history-pages .history__container .history__content .history__title {
  text-align: center;
}
.history-pages .history__container .history__content .history__section {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 21.3333333333vw;
  position: relative;
}
.history-pages .history__container .history__content .history__section::before {
  content: "";
  left: 0;
  margin-left: 17.78%;
  position: absolute;
  top: 0;
  width: 1px;
  height: 100%;
  background-color: #000;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section::before {
    margin-left: 8.5%;
  }
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .history-pages .history__container .history__content .history__section {
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section {
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.history-pages .history__container .history__content .history__section-body {
  display: flex;
}
.history-pages .history__container .history__content .history__section-body:first-child [data-aos] {
  transform: translateZ(0) !important;
  opacity: 1 !important;
}
.history-pages .history__container .history__content .history__section-body .history__section-year {
  width: 17.78%;
  font-size: 4.2666666667vw;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-year {
    width: 8.5%;
    font-size: clamp(12px, 2vw, 24px);
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-year::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  margin-right: -10.65%;
  width: 16.67%;
  padding-top: 16.67%;
  border: 1px solid #202020;
  border-radius: 15px;
  background-color: #fff;
  z-index: 2;
  margin-top: 16.67%;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-year::after {
    margin-top: 19.67%;
  }
}
.history-pages .history__container .history__content .history__section-body .history__section--container {
  padding: 1% 0 0 5.42%;
  flex: 1;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section--container {
    padding: 0;
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-text {
  padding-bottom: 21.3333333333vw;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-text {
    display: flex;
    gap: 0 50px;
    padding: clamp(5px, 0.8333333333vw, 10px) 0 clamp(56px, 9.3333333333vw, 112px) clamp(12.5px, 2.0833333333vw, 25px);
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-text__description {
  width: 100%;
  display: flex;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-text__description {
    width: 39.1%;
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-text__month {
  font-size: 3.2vw;
  padding: 0.85% 5.99% 0 0;
  font-weight: 400;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-text__month {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    padding: 0 clamp(20px, 3.3333333333vw, 40px) 0 0;
    line-height: 2;
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-text__read {
  font-size: 3.2vw;
  line-height: 2;
  padding-bottom: 4.2666666667vw;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-text__read {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    padding-bottom: 0;
  }
}
.history-pages .history__container .history__content .history__section-body .history__section-text__picture {
  width: 100%;
}
@media screen and (min-width: 960px) {
  .history-pages .history__container .history__content .history__section-body .history__section-text__picture {
    width: auto;
    flex: 1;
  }
}

.contact-page {
  padding-top: 14.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page {
    padding-top: 7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page {
    padding-top: clamp(28.5px, 4.75vw, 57px);
  }
}
.contact-page .breadcrumb-sec {
  width: 90%;
  padding-top: 10.6666666667vw;
  margin: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .breadcrumb-sec {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .breadcrumb-sec {
    padding-top: clamp(20px, 3.3333333333vw, 40px);
    max-width: 1200px;
  }
}
.contact-page .fv-sec {
  padding-top: 21.3333333333vw;
  padding-bottom: 10.6666666667vw;
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .fv-sec {
    padding-top: 10.6666666667vw;
    padding-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .fv-sec {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(40px, 6.6666666667vw, 80px);
    max-width: 1200px;
  }
}
.contact-page .fv-sec .fv-inner .title {
  font-size: 7.4666666667vw;
  font-family: "Crimson Pro", sans-serif;
  font-weight: 700;
  letter-spacing: 0.07em;
  line-height: 1.6em;
  color: #202020;
  text-align: center;
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .fv-sec .fv-inner .title {
    font-weight: 500;
    font-size: 4.2666666667vw;
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .fv-sec .fv-inner .title {
    font-weight: 500;
    font-size: clamp(18px, 3vw, 36px);
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.contact-page .fv-sec .fv-inner .sub-title {
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 2.2em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .fv-sec .fv-inner .sub-title {
    font-size: 1.8666666667vw;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .fv-sec .fv-inner .sub-title {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    text-align: center;
  }
}
.contact-page .form-sec {
  padding-top: 21.3333333333vw;
  padding-bottom: 21.3333333333vw;
  background-color: #F6F6F6;
  margin-bottom: 42.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
    margin-bottom: 21.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(40px, 6.6666666667vw, 80px);
    margin-bottom: clamp(80px, 13.3333333333vw, 160px);
  }
}
.contact-page .form-sec .form-inner {
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner {
    max-width: 1000px;
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control {
  margin-bottom: 10.6666666667vw;
  display: flex;
  flex-wrap: wrap;
  gap: 4.2666666667vw 3.2vw;
  align-items: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control {
    margin-bottom: 5.3333333333vw;
    gap: 2.1333333333vw 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control {
    gap: 0 clamp(12px, 2vw, 24px);
    margin-bottom: clamp(20px, 3.3333333333vw, 40px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control::before {
  content: "任意";
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1em;
  color: #FFFFFF;
  background-color: #9A9A9A;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.6vw 3.7333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control::before {
    font-size: 1.8666666667vw;
    padding: 1.0666666667vw 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control::before {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    padding: clamp(4px, 0.6666666667vw, 8px) clamp(8px, 1.3333333333vw, 16px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control.is-required::before {
  content: "必須";
  background-color: #202020;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control p:has(label) {
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control p:has(label) {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control p:has(label) {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    letter-spacing: 0.05em;
    width: 20%;
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea {
  width: 100%;
  display: inherit;
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea {
    width: unset;
    flex: 1;
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select p:has(span.wpcf7-form-control-wrap),
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input p:has(span.wpcf7-form-control-wrap),
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea p:has(span.wpcf7-form-control-wrap) {
  display: inline-block;
  width: 100%;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select p:has(span.wpcf7-form-control-wrap) span.wpcf7-form-control-wrap,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input p:has(span.wpcf7-form-control-wrap) span.wpcf7-form-control-wrap,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea p:has(span.wpcf7-form-control-wrap) span.wpcf7-form-control-wrap {
  display: flex;
  width: 100%;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected {
  width: 100%;
  padding: 2.1333333333vw 3.2vw;
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.6em;
  color: #202020;
  background-color: #FFFFFF;
  border: 1px solid #202020;
  border-radius: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 3.2vw;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected {
    font-size: 1.8666666667vw;
    padding: 1.3333333333vw 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea,
  .contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    padding: clamp(4px, 0.6666666667vw, 8px) clamp(8px, 1.3333333333vw, 16px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea::after,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected::after {
  display: none;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea.is-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected.is-error {
  border-color: #D86262;
  background-color: #FFE9E9;
  color: #D86262;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea.is-format-error,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected.is-format-error {
  border-color: #D86262;
  background-color: #FFE9E9;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select.is-error:focus, .contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select input.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select textarea.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select .select-selected.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input select.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input input.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input textarea.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-input .select-selected.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea select.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea input.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea textarea.is-format-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected.is-error:focus,
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-textarea .select-selected.is-format-error:focus {
  outline: none;
  border-color: #D86262;
  background-color: #FFE9E9;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select {
  position: relative;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select::before {
  content: "";
  z-index: 1;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 2%;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url("../icons/navigation/black-down-chev.svg") no-repeat center center;
  background-size: contain;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select option {
  background-color: #FFFFFF;
  color: #202020;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .form-select select option:disabled {
  color: #9A9A9A;
}
.contact-page .form-sec .form-inner .contact-form-container .form-control .error-message {
  font-size: 2.6666666667vw;
  letter-spacing: 0.07em;
  color: #D86262;
  margin-top: -1.3333333333vw;
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control .error-message {
    font-size: 1.6vw;
    margin-top: -0.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-control .error-message {
    font-size: clamp(6px, 1vw, 12px);
    margin-top: clamp(5px, 0.8333333333vw, 10px);
    margin-left: 31%;
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-control:has(.is-error) .form-select::before {
  background-image: url("../icons/navigation/red_down_chev.svg");
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement {
  padding: 10.6666666667vw;
  background-color: #FFFFFF;
  border: 1px solid #202020;
  margin-bottom: 21.3333333333vw;
  margin-top: 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement {
    padding: 5.3333333333vw;
    margin-bottom: 10.6666666667vw;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement {
    padding: clamp(20px, 3.3333333333vw, 40px);
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    margin-top: clamp(40px, 6.6666666667vw, 80px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement .title {
  font-size: 5.3333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.9em;
  color: #202020;
  margin-bottom: 4.2666666667vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement .title {
    font-size: 3.2vw;
    margin-bottom: 2.5333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement .title {
    font-size: clamp(12px, 2vw, 24px);
    margin-bottom: clamp(9.5px, 1.5833333333vw, 19px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p {
  font-size: 3.2vw;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 2.2em;
  color: #202020;
  margin-bottom: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement p {
    font-size: 1.8666666667vw;
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement p {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-bottom: clamp(8px, 1.3333333333vw, 16px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:last-child {
  margin-bottom: 0;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) {
  display: flex;
  align-items: center;
  width: max-content;
  margin: auto;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label {
  position: relative;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 1px solid #202020;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label:has(input[type=checkbox]:checked)::after {
  content: "";
  width: 12px;
  height: 12px;
  background-color: #202020;
  position: absolute;
  left: 3px;
  top: 50%;
  transform: translateY(-50%);
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label:has(input[type=checkbox].is-error)::before {
  border-color: #D86262;
  background-color: #FFE9E9;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label input {
  display: none;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label span.wpcf7-list-item-label {
  margin-left: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label span.wpcf7-list-item-label {
    margin-left: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-agreement p:has(input[type=checkbox]) label span.wpcf7-list-item-label {
    margin-left: clamp(16px, 2.6666666667vw, 32px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p .txtLink {
  border-bottom: 1px solid #202020;
  transition: 0.3s;
}
.contact-page .form-sec .form-inner .contact-form-container .form-agreement p .txtLink:hover {
  opacity: 0.4;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) {
  display: flex;
  justify-content: center;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button {
  cursor: pointer;
  text-align: center;
  width: 100%;
  border: 1px solid #202020;
  color: #202020;
  font-size: 4.8vw;
  line-height: 1em;
  letter-spacing: 0.07em;
  padding: 4.2666666667vw 1.3333333333vw;
  font-weight: 500;
  position: relative;
  transition: all 0.3s ease-in-out;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button {
    font-size: 2.6666666667vw;
    padding: 2.1333333333vw 0.6666666667vw;
    width: max-content;
    min-width: 48vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    padding: clamp(8px, 1.3333333333vw, 16px) clamp(2.5px, 0.4166666667vw, 5px);
    width: max-content;
    min-width: clamp(180px, 30vw, 360px);
  }
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button::before {
  content: "";
  position: absolute;
  width: 0;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #202020;
  transition: all 0.3s ease-in-out;
  z-index: 1;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button::after {
  content: "";
  position: absolute;
  width: 10%;
  height: 1px;
  top: 50%;
  right: 0;
  background-color: #202020;
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button:hover {
  color: #FFFFFF;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button:hover::before {
  width: 100%;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button:hover::after {
  background-color: #FFFFFF;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .virtual-btn p:has(button) button span {
  position: relative;
  z-index: 2;
}
.contact-page .form-sec .form-inner .contact-form-container .form-cta .btn.send {
  display: none;
}
.contact-page.thanks-page .fv-sec {
  padding-top: 21.3333333333vw;
  padding-bottom: 42.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page.thanks-page .fv-sec {
    padding-top: 10.6666666667vw;
    padding-bottom: 32vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page.thanks-page .fv-sec {
    padding-top: clamp(40px, 6.6666666667vw, 80px);
    padding-bottom: clamp(120px, 20vw, 240px);
  }
}
.contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .summary {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.6em;
  color: #202020;
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .summary {
    font-size: 3.2vw;
    margin-bottom: 5.3333333333vw;
    font-weight: 500;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .summary {
    font-size: clamp(12px, 2vw, 24px);
    margin-bottom: clamp(20px, 3.3333333333vw, 40px);
    font-weight: 500;
    text-align: center;
  }
}
.contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .desc {
  font-size: 3.2vw;
  letter-spacing: 0.07em;
  line-height: 2.2em;
  color: #202020;
  font-weight: 400;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .desc {
    font-size: 1.8666666667vw;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .contact-page.thanks-page .fv-sec .fv-inner .thanks-desc .desc {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    text-align: center;
  }
}
.contact-page .custom-select {
  position: relative;
  user-select: none;
}
.contact-page .custom-select .select-selected {
  position: relative;
  cursor: pointer;
}
.contact-page .custom-select .select-selected:after {
  content: "";
  z-index: 1;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  width: 15px;
  height: 15px;
  background: url("../icons/navigation/black-down-chev.svg") no-repeat center center;
  background-size: contain;
}
.contact-page .custom-select .select-selected.select-arrow-active:after {
  transform: translateY(-50%) rotate(180deg);
}
.contact-page .custom-select .select-items {
  position: absolute;
  border: 1px solid #F0F0F0;
  width: 100%;
  max-height: none;
  overflow-y: auto;
  z-index: 99;
  top: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  background-color: #F0F0F0;
  border-radius: 3.2vw;
  font-size: 3.2vw;
  box-shadow: rgba(0, 0, 0, 0.24) 0 0.8vw 2.1333333333vw;
  transition: none;
  backface-visibility: hidden;
  transform: translateZ(0);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .custom-select .select-items {
    border-radius: 1.6vw;
    font-size: 1.6vw;
    box-shadow: rgba(0, 0, 0, 0.24) 0 0.4vw 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .custom-select .select-items {
    border-radius: clamp(6px, 1vw, 12px);
    font-size: clamp(6px, 1vw, 12px);
    box-shadow: rgba(0, 0, 0, 0.24) 0 clamp(1.5px, 0.25vw, 3px) clamp(4px, 0.6666666667vw, 8px);
  }
}
.contact-page .custom-select .select-items.show-above {
  top: auto;
  bottom: 100%;
  z-index: 100;
}
.contact-page .custom-select .select-items .select-option {
  margin: 4.2666666667vw 0;
  padding: 0px 8.5333333333vw;
  font-size: 3.2vw;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .custom-select .select-items .select-option {
    margin: 2.1333333333vw 0;
    padding: 0px 4.2666666667vw;
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .custom-select .select-items .select-option {
    margin: clamp(8px, 1.3333333333vw, 16px) 0;
    padding: 0px clamp(16px, 2.6666666667vw, 32px);
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.contact-page .custom-select .select-items .select-option:hover {
  background-color: #f0f0f0;
}
.contact-page .custom-select .select-items .select-option.same-as-selected {
  background-color: #eaeaea;
}
.contact-page .custom-select .select-items .select-group-label {
  font-weight: bold;
  color: #929292;
  border-bottom: 1px solid #929292;
  user-select: none;
  cursor: default;
  font-size: 3.2vw;
  margin: 0 auto;
  max-width: 95%;
  margin-top: 4.8vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .contact-page .custom-select .select-items .select-group-label {
    font-size: 1.8666666667vw;
    margin-top: 2.4vw;
  }
}
@media screen and (min-width: 960px) {
  .contact-page .custom-select .select-items .select-group-label {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-top: clamp(9px, 1.5vw, 18px);
  }
}
.contact-page .select-hide {
  display: none;
}

.our-brands-page {
  padding-top: 14.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page {
    padding-top: 7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page {
    padding-top: clamp(28.5px, 4.75vw, 57px);
  }
}
.our-brands-page .breadcrumb-sec {
  padding-top: 3.7333333333vw;
  width: 90%;
  margin: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .breadcrumb-sec {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .breadcrumb-sec {
    max-width: 1200px;
    padding-top: clamp(20px, 3.3333333333vw, 40px);
  }
}
.our-brands-page .fv-sec .fv-inner {
  padding-top: 16.5333333333vw;
  padding-bottom: 18.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .fv-sec .fv-inner {
    padding-top: 10.6666666667vw;
    padding-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .fv-sec .fv-inner {
    padding-top: clamp(51.5px, 8.5833333333vw, 103px);
    padding-bottom: clamp(80px, 13.3333333333vw, 160px);
  }
}
.our-brands-page .fv-sec .fv-inner .title {
  font-family: "Crimson Pro", sans-serif;
  font-size: 6.6666666667vw;
  color: #202020;
  font-weight: 500;
  line-height: 1.6em;
  letter-spacing: 0.07em;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .fv-sec .fv-inner .title {
    font-size: 4.2666666667vw;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .fv-sec .fv-inner .title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2em;
  }
}
.our-brands-page .content-sec .content-inner {
  padding-bottom: 21.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner {
    padding-bottom: 26.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner {
    padding-bottom: clamp(100px, 16.6666666667vw, 200px);
  }
}
.our-brands-page .content-sec .content-inner .filter-container .filter {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 3.7333333333vw 8.5333333333vw;
  overflow: hidden;
  width: 95%;
  margin: auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter {
    gap: 1.8666666667vw 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter {
    max-width: clamp(380px, 63.3333333333vw, 760px);
    margin: auto;
    gap: clamp(13px, 2.1666666667vw, 26px) clamp(22px, 3.6666666667vw, 44px);
  }
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item {
  width: 21.3333333333vw;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.3333333333vw 0;
  position: relative;
  cursor: pointer;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item {
    width: 13.3333333333vw;
    padding: 0.8vw 0;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item {
    width: clamp(45px, 7.5vw, 90px);
    padding: clamp(3px, 0.5vw, 6px) 0;
  }
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: -4.2666666667vw;
  width: 1px;
  height: 100%;
  background: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item::after {
    right: -2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item::after {
    right: -22px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1300px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item::after {
    right: -1.8333333333vw;
  }
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item:last-child::after {
  content: none;
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item span {
  font-size: 2.9333333333vw;
  line-height: 1.2em;
  letter-spacing: 0.07em;
  color: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item span {
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .filter-container .filter .filter-item span {
    font-size: clamp(6px, 1vw, 12px);
  }
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item.is-active {
  background: #202020;
}
.our-brands-page .content-sec .content-inner .filter-container .filter .filter-item.is-active span {
  color: #FFFFFF;
}
.our-brands-page .content-sec .content-inner .brand-list {
  padding-top: 8vw;
  padding-bottom: 10.6666666667vw;
  display: flex;
  flex-direction: column;
  gap: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list {
    padding-top: 8vw;
    padding-bottom: 16vw;
    gap: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list {
    padding-top: clamp(37.5px, 6.25vw, 75px);
    padding-bottom: clamp(60px, 10vw, 120px);
    gap: clamp(4px, 0.6666666667vw, 8px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list:not(:has(.brand-item:not(.hidden))) {
  padding-bottom: 0;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item {
  position: relative;
  transition: all 0.2s ease;
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: auto;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item::before {
  content: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #F6F6F6;
  transition: all 0.5s ease;
  z-index: 1;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item::before {
    content: "";
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #F6F6F6;
    transition: all 0.5s ease;
    z-index: 1;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item:hover::before {
  width: 100%;
  transition: all 1s ease;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item:hover .brand-inner .brand-inner__image::before {
  background: transparent;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item:hover .brand-inner .brand-inner__image img {
  transform: scale(1.05);
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item.hidden {
  opacity: 0.5;
  transform: scale(0.95);
  pointer-events: none;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner {
  display: flex;
  flex-direction: column-reverse;
  gap: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner {
    flex-direction: row;
    gap: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner {
    flex-direction: row;
    gap: clamp(29px, 4.8333333333vw, 58px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text {
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text {
    flex: 1;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text {
    flex: 1;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p {
  display: flex;
  gap: 0 6.4vw;
  flex-wrap: wrap;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p {
    gap: 0 3.2vw;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p span {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 3.2vw;
  line-height: 1.6em;
  letter-spacing: 0.05em;
  color: #202020;
  font-weight: 500;
  position: relative;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p span {
    font-size: 1.8666666667vw;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p span::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -3.2vw;
  width: 1px;
  height: 60%;
  transform: translateY(-35%);
  background: #202020;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p span::after {
    right: -1.6vw;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--sp p span:last-child::after {
  content: none;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc {
    padding: 1.3333333333vw;
    display: flex;
    flex-direction: column;
    gap: 0.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc {
    padding: clamp(10px, 1.6666666667vw, 20px);
    display: flex;
    flex-direction: column;
    gap: clamp(2.5px, 0.4166666667vw, 5px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .code,
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .date {
  font-family: "Crimson Pro", sans-serif;
  font-size: 1.8666666667vw;
  line-height: 1.2em;
  letter-spacing: 0.07em;
  color: #202020;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .code,
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .date {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .title {
  font-family: "Crimson Pro", sans-serif;
  font-size: 3.2vw;
  line-height: 1.2em;
  letter-spacing: 0.07em;
  color: #202020;
  font-weight: 500;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .title {
    font-size: clamp(13.5px, 2.25vw, 27px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .title.font-mincho {
  font-family: "Zen Old Mincho", sans-serif;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .date {
  line-height: 1.6em;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .cta__container {
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__text .brand-inner__text--pc .cta__container {
    margin-top: clamp(13.5px, 2.25vw, 27px);
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__image {
  width: 100%;
  aspect-ratio: 340/172;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__image {
    width: 65%;
    aspect-ratio: 916/400;
    flex-shrink: 0;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__image {
    width: 76.33%;
    aspect-ratio: 916/320;
  }
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  z-index: 1;
  transition: background 0.3s ease;
}
.our-brands-page .content-sec .content-inner .brand-list .brand-item .brand-inner .brand-inner__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.2s ease;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner {
    width: 90%;
    margin: auto;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner {
    width: 90%;
    max-width: 1200px;
    margin: auto;
  }
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--title {
  font-family: "Crimson Pro", sans-serif;
  font-size: 5.3333333333vw;
  letter-spacing: 0.07em;
  line-height: 1.6em;
  color: #202020;
  font-weight: 500;
  text-align: center;
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--title {
    margin-bottom: 10.6666666667vw;
    font-size: 3.7333333333vw;
    line-height: 1.2em;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--title {
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    font-size: clamp(14px, 2.3333333333vw, 28px);
    line-height: 1.2em;
  }
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--title.hidden {
  display: none;
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list {
    gap: 0.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list {
    gap: clamp(1px, 0.1666666667vw, 2px);
  }
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item {
  width: calc(50% - clamp(2px, 0.3333333333vw, 4px));
  aspect-ratio: 187/121;
  overflow: hidden;
  position: relative;
  cursor: pointer;
  transition: all 0.2s ease;
  opacity: 1;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item {
    width: calc(50% - 0.2666666667vw);
    aspect-ratio: 40/26;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item {
    width: calc(33.3333333333% - clamp(1px, 0.1666666667vw, 2px));
    aspect-ratio: 40/26;
  }
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item.hidden {
  opacity: 0.5;
  transform: scale(0.95);
  pointer-events: none;
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item:hover::before {
  background: transparent;
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item:hover img {
  transform: scale(1.05);
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
  z-index: 1;
  transition: background 0.3s ease;
  z-index: 2;
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.2s ease;
  z-index: 1;
}
.our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item .title {
  position: absolute;
  bottom: 2.1333333333vw;
  left: 4.2666666667vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 2.9333333333vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  color: #FFFFFF;
  font-weight: 500;
  z-index: 3;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item .title {
    font-size: 1.8666666667vw;
    line-height: 1.2em;
    letter-spacing: 0.07em;
    bottom: 1.3333333333vw;
    left: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item .title {
    font-size: clamp(9px, 1.5vw, 18px);
    line-height: 1.2em;
    letter-spacing: 0.07em;
    bottom: clamp(5px, 0.8333333333vw, 10px);
    left: clamp(8px, 1.3333333333vw, 16px);
    font-family: "Crimson Pro", sans-serif;
  }
  .our-brands-page .content-sec .content-inner .brand-gallery .brand-gallery__inner--list .brand-gallery__item .title.font-mincho {
    font-family: "Zen Old Mincho", sans-serif;
  }
}
.our-brands-page .content-sec .content-inner .brand-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 100;
  display: none;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 100;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal {
    align-items: center;
  }
}
.our-brands-page .content-sec .content-inner .brand-modal.is-open {
  opacity: 1;
  display: flex;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner {
  width: 75%;
  position: relative;
  margin-top: 10vh;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner {
    margin-top: unset;
    width: 90%;
    max-width: 1100px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1300px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner {
    width: 80%;
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .close-btn {
  width: 4.2666666667vw;
  height: 4.2666666667vw;
  position: absolute;
  top: 0;
  right: -8vw;
  cursor: pointer;
  background-image: url(../icons/navigation/icon_close.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .close-btn {
    width: 3.2vw;
    height: 3.2vw;
    right: -7.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .close-btn {
    width: clamp(12px, 2vw, 24px);
    height: clamp(12px, 2vw, 24px);
    right: clamp(-75px, -12.5vw, -150px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .next-btn,
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
  width: 3.2vw;
  height: 6.4vw;
  position: absolute;
  top: 50%;
  right: -8vw;
  transform: translateY(-50%);
  cursor: pointer;
  background-image: url(../icons/navigation/icon_arrow_right.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .next-btn,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    right: -9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .next-btn,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
    width: clamp(8px, 1.3333333333vw, 16px);
    height: clamp(16.5px, 2.75vw, 33px);
    right: clamp(-75px, -12.5vw, -150px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
  left: -8vw;
  transform: rotate(180deg);
  right: unset;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
    left: -9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .prev-btn {
    left: clamp(-75px, -12.5vw, -150px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner {
  flex-direction: column-reverse;
  gap: 2.6666666667vw;
  display: none;
  height: max-content;
  max-height: 90vh;
  overflow-y: auto;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner::-webkit-scrollbar {
  display: none;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner {
    gap: 2.6666666667vw;
    min-height: 80vh;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner {
    flex-direction: row;
    gap: clamp(20px, 3.3333333333vw, 40px);
    max-height: unset;
    align-items: center;
    min-height: unset;
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner.is-active {
  display: flex;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow {
  background-color: #F6F6F6;
  width: 100%;
  aspect-ratio: 276/180;
  overflow: hidden;
  flex-shrink: 0;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow {
    width: 60%;
    aspect-ratio: 614/400;
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__track {
  height: 100%;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__track .splide__list .splide__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__pagination {
  justify-content: flex-end;
  gap: 2.6666666667vw;
  bottom: 2.1333333333vw;
  right: 1.3333333333vw;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__pagination {
    gap: clamp(8px, 1.3333333333vw, 16px);
    bottom: clamp(9px, 1.5vw, 18px);
    right: clamp(21px, 3.5vw, 42px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__pagination button {
  width: 6px;
  height: 6px;
  margin: 0;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--slideshow .splide__pagination button.is-active {
  background-color: #FFFFFF;
  transform: unset;
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text {
    width: calc(40% - clamp(20px, 3.3333333333vw, 40px));
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .title-name {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  color: #FFFFFF;
  line-height: 2em;
  letter-spacing: 0.07em;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .title-name {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .title-name {
    font-size: clamp(12px, 2vw, 24px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .category-name,
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links a,
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links span {
  color: #FFFFFF;
  font-size: 3.2vw;
  line-height: 2em;
  letter-spacing: 0.07em;
  font-weight: 300;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .category-name,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links a,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links span {
    font-size: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .category-name,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links a,
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links span {
    font-size: clamp(6px, 1vw, 12px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .links a {
  text-decoration: underline;
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-title {
  margin-top: 5.3333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 5.3333333333vw;
  color: #FFFFFF;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-title {
    font-size: 3.2vw;
    letter-spacing: 0.07em;
    font-weight: 500;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-title {
    font-size: clamp(10px, 1.6666666667vw, 20px);
    line-height: 1.6em;
    letter-spacing: 0.04em;
    margin-top: clamp(22.5px, 3.75vw, 45px);
  }
}
.our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-message {
  font-size: 3.2vw;
  line-height: 2.2em;
  letter-spacing: 0.07em;
  font-weight: 300;
  color: #FFFFFF;
  margin-top: 3.7333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-message {
    font-size: 2.1333333333vw;
    line-height: 2.2em;
    margin-top: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .our-brands-page .content-sec .content-inner .brand-modal .brand-modal__inner .brand-viewers .brand-viewers__inner .brand-viewers__inner--text .modal-message {
    font-size: clamp(6px, 1vw, 12px);
    line-height: 2.2em;
    margin-top: clamp(10px, 1.6666666667vw, 20px);
  }
}

.brand-detail-pages p,
.brand-detail-pages h2 {
  font-weight: 400;
}
.brand-detail-pages .fv {
  margin-top: 14.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .fv {
    margin-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .fv {
    margin-top: clamp(31.5px, 5.25vw, 63px);
    aspect-ratio: 1920/500;
  }
}
.brand-detail-pages .breadcrumbs {
  padding-top: 3.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .breadcrumbs {
    padding-top: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .breadcrumbs {
    padding-top: clamp(20px, 3.3333333333vw, 40px);
  }
}
.brand-detail-pages .breadcrumbs ul li {
  text-transform: none;
}
.brand-detail-pages .brand-concept {
  padding: 21.3333333333vw 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept {
    padding: 10.6666666667vw 0;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept {
    padding: clamp(80px, 13.3333333333vw, 160px) 0 clamp(100px, 16.6666666667vw, 200px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout {
    flex-direction: row;
    gap: clamp(25px, 4.1666666667vw, 50px);
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__image {
    flex: 1.5;
    aspect-ratio: 646/430;
    overflow: hidden;
  }
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content {
    align-items: flex-start;
    flex: 1;
    margin-top: clamp(-10px, -1.6666666667vw, -20px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__title {
  font-size: 5.3333333333vw;
  font-family: "Crimson Pro", sans-serif;
  letter-spacing: 0.07em;
  margin-bottom: 2vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__title {
    font-size: 3.2vw;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__title {
    margin-bottom: 0;
    font-size: clamp(11px, 1.8333333333vw, 22px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__summary {
  font-size: 5.3333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  text-align: center;
  letter-spacing: 0.04em;
  line-height: 1.8;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__summary {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__summary {
    font-size: clamp(12px, 2vw, 24px);
    text-align: justify;
    letter-spacing: 0.05em;
    line-height: 1.7;
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__image {
  margin: 8.5333333333vw 0;
  width: 100%;
  aspect-ratio: 34/21;
  overflow: hidden;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__image {
    margin: 4.2666666667vw 0;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__image {
    margin: 0;
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__description {
  font-size: 3.2vw;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__description {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__description {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-top: clamp(9px, 1.5vw, 18px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content hr {
  width: 100%;
  height: 1px;
  margin-top: 6.4vw;
  margin-bottom: 6.4vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content hr {
    margin-top: 3.2vw;
    margin-bottom: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content hr {
    margin-top: clamp(12px, 2vw, 24px);
    margin-bottom: clamp(12px, 2vw, 24px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_title {
  font-family: "Zen Old Mincho", sans-serif;
  font-size: 4.2666666667vw;
  line-height: 1.9em;
  letter-spacing: 0.04em;
  color: #202020;
  margin-top: 0;
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_title {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_title {
    font-size: clamp(8px, 1.3333333333vw, 16px);
  }
}
.brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_contents {
  font-size: 2.6666666667vw;
  line-height: 2.2em;
  letter-spacing: 0.05em;
  color: #202020;
  margin-top: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_contents {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-concept .brand-concept__layout .brand-concept__content .brand-concept__note_contents {
    font-size: clamp(5px, 0.8333333333vw, 10px);
  }
}
.brand-detail-pages .brand-message {
  color: #fff;
  height: 153.6vw;
  position: relative;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-message {
    height: 75.4666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-message {
    height: clamp(300px, 50vw, 600px);
  }
}
.brand-detail-pages .brand-message .brand-message__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.brand-detail-pages .brand-message .brand-message__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.brand-detail-pages .brand-message .brand-message__layout {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.brand-detail-pages .brand-message .brand-message__layout .brand-message__title {
  font-size: 5.3333333333vw;
  font-family: "Crimson Pro", sans-serif;
  letter-spacing: 0.07em;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__title {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__title {
    font-size: clamp(11px, 1.8333333333vw, 22px);
  }
}
.brand-detail-pages .brand-message .brand-message__layout .brand-message__catch {
  font-size: 5.3333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  letter-spacing: 0.04em;
  line-height: 1.6;
  margin: 3.2vw 0 8.5333333333vw;
  text-align: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__catch {
    font-size: 3.4666666667vw;
    margin: 1.6vw 0 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__catch {
    font-size: clamp(12px, 2vw, 24px);
    margin: clamp(5px, 0.8333333333vw, 10px) 0 clamp(16px, 2.6666666667vw, 32px);
    letter-spacing: 0.15em;
    line-height: 1.7;
  }
}
.brand-detail-pages .brand-message .brand-message__layout .brand-message__catch.mb-0 {
  margin-bottom: 0;
}
.brand-detail-pages .brand-message .brand-message__layout .brand-message__sub {
  font-size: 3.2vw;
  font-family: "Zen Old Mincho", sans-serif;
  letter-spacing: 0.04em;
  line-height: 1.9em;
  margin-bottom: 8.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__sub {
    font-size: 1.8666666667vw;
    margin-bottom: 4.2666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__sub {
    letter-spacing: 0.07em;
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-bottom: clamp(16px, 2.6666666667vw, 32px);
  }
}
.brand-detail-pages .brand-message .brand-message__layout .brand-message__description {
  font-size: 3.2vw;
  letter-spacing: 0.05em;
  line-height: 2.2;
  padding: 0 2.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__description {
    font-size: 1.8666666667vw;
    padding: 0 1.3333333333vw;
    text-align: center;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .brand-message .brand-message__layout .brand-message__description {
    text-align: center;
    font-size: clamp(7px, 1.1666666667vw, 14px);
    padding: 0 clamp(5px, 0.8333333333vw, 10px);
  }
}
.brand-detail-pages .our-story {
  padding: 32vw 0 13.3333333333vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story {
    padding: 16vw 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story {
    padding: clamp(100px, 16.6666666667vw, 200px) 0 clamp(42.5px, 7.0833333333vw, 85px);
  }
}
.brand-detail-pages .our-story .our-story__title {
  font-size: 5.3333333333vw;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
  margin-bottom: 8.5333333333vw;
  font-weight: bold;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story .our-story__title {
    font-size: 3.4666666667vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2;
    letter-spacing: 0.07em;
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    font-family: "Crimson Pro", sans-serif;
    font-weight: 400;
  }
}
.brand-detail-pages .our-story .our-story__item {
  display: flex;
  flex-direction: column;
  gap: 8.5333333333vw;
  margin: 0 0 21.3333333333vw;
  width: 100%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story .our-story__item {
    gap: 4.2666666667vw;
    margin: 0 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item {
    flex-direction: row;
    gap: clamp(40px, 6.6666666667vw, 80px);
    margin: 0 0 clamp(80px, 13.3333333333vw, 160px);
    align-items: center;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item--reverse {
    flex-direction: row-reverse;
  }
}
.brand-detail-pages .our-story .our-story__item .our-story__image {
  width: 100%;
  aspect-ratio: 315/210;
  overflow: hidden;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item .our-story__image {
    aspect-ratio: 656/437;
  }
}
.brand-detail-pages .our-story .our-story__item .our-story__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content {
    max-width: 38.65%;
    width: 100%;
  }
}
.brand-detail-pages .our-story .our-story__item .our-story__content .our-story__label {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__label {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__label {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.brand-detail-pages .our-story .our-story__item .our-story__content .our-story__subtitle {
  font-size: 5.3333333333vw;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__subtitle {
    font-size: 3.2vw;
    letter-spacing: 0.07em;
    line-height: 1.7;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__subtitle {
    font-size: clamp(12px, 2vw, 24px);
    letter-spacing: 0.07em;
    line-height: 1.7;
  }
}
.brand-detail-pages .our-story .our-story__item .our-story__content .our-story__text {
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.05em;
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__text {
    font-size: 1.8666666667vw;
    margin-top: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-story .our-story__item .our-story__content .our-story__text {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-top: clamp(10px, 1.6666666667vw, 20px);
  }
}
.brand-detail-pages .our-service {
  padding: 0 0 32vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-service {
    padding: 0 0 16vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service {
    padding: clamp(30px, 5vw, 60px) 0 clamp(90px, 15vw, 180px);
  }
}
.brand-detail-pages .our-service .our-service__title {
  font-size: 5.3333333333vw;
  line-height: 1.6;
  letter-spacing: 0.07em;
  font-family: "Zen Old Mincho", sans-serif;
  margin-bottom: 12vw;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-service .our-service__title {
    font-size: 3.4666666667vw;
    line-height: 1.2;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2;
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    font-family: "Crimson Pro", sans-serif;
    font-weight: 400;
  }
}
.brand-detail-pages .our-service .our-service__list {
  display: flex;
  flex-direction: column;
  gap: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-service .our-service__list {
    gap: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__list {
    gap: clamp(20px, 3.3333333333vw, 40px);
    flex-direction: row;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item {
    width: calc((100% - 2 * clamp(20px, 3.3333333333vw, 40px)) / 3);
  }
}
.brand-detail-pages .our-service .our-service__list .our-service__item .our-service__image {
  width: 100%;
  aspect-ratio: 315/204;
  overflow: hidden;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item .our-service__image {
    aspect-ratio: 373/240;
  }
}
.brand-detail-pages .our-service .our-service__list .our-service__item .our-service__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}
.brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__subtitle {
  font-size: 5.3333333333vw;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.6;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__subtitle {
    font-size: 3.2vw;
    line-height: 1.7;
    letter-spacing: 0.07em;
    margin-top: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__subtitle {
    font-size: clamp(12px, 2vw, 24px);
    line-height: 1.7;
    letter-spacing: 0.07em;
    margin-top: clamp(4px, 0.6666666667vw, 8px);
  }
}
.brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__text {
  font-size: 3.2vw;
  font-family: "Zen Old Mincho", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__text {
    font-size: 2.1333333333vw;
    line-height: 2.2;
    letter-spacing: 0.05em;
    margin-top: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .our-service .our-service__list .our-service__item .our-service__content .our-service__text {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    line-height: 2.2;
    letter-spacing: 0.05em;
    margin-top: clamp(4px, 0.6666666667vw, 8px);
    font-family: "Noto Sans JP", sans-serif;
  }
}
.brand-detail-pages .history {
  background-color: #F6F6F6;
  padding: 21.3333333333vw 0 8.5333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history {
    padding: 18.6666666667vw 0 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history {
    padding: clamp(70px, 11.6666666667vw, 140px) 0 clamp(70px, 11.6666666667vw, 140px);
  }
}
.brand-detail-pages .history .history__title {
  font-size: 5.3333333333vw;
  line-height: 1.6;
  letter-spacing: 0.04em;
  font-family: "Zen Old Mincho", sans-serif;
  margin-bottom: 8vw;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__title {
    font-size: 3.4666666667vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
    margin-bottom: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2;
    letter-spacing: 0.07em;
    margin-bottom: clamp(40px, 6.6666666667vw, 80px);
    font-family: "Crimson Pro", sans-serif;
    font-weight: 400;
  }
}
.brand-detail-pages .history .history__container {
  display: flex;
  flex-direction: column;
  padding-bottom: 18.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container {
    padding-bottom: 9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    padding-bottom: 0;
    gap: clamp(37.5px, 6.25vw, 75px);
  }
}
.brand-detail-pages .history .history__container .history__timeline {
  display: flex;
  flex-direction: column;
  position: relative;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline {
    grid-column: 1;
    grid-row: 1/3;
  }
}
.brand-detail-pages .history .history__container .history__timeline::before {
  content: "";
  position: absolute;
  left: 16vw;
  top: 0;
  bottom: 17.0666666667vw;
  width: 1px;
  background-color: #000;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline::before {
    bottom: 8.5333333333vw;
    left: 9.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline::before {
    bottom: clamp(-22.5px, -3.75vw, -45px);
    left: clamp(40px, 6.6666666667vw, 80px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section {
  position: relative;
  display: flex;
  align-items: flex-start;
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .year {
  flex-shrink: 0;
  font-size: 4.5333333333vw;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .year {
    font-size: 2.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .year {
    font-size: clamp(10px, 1.6666666667vw, 20px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-dot {
  position: absolute;
  left: 14.9333333333vw;
  top: 3.2vw;
  width: 2.1333333333vw;
  height: 2.1333333333vw;
  border: 1px solid #666;
  border-radius: 50%;
  background-color: #f5f5f5;
  z-index: 1;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-dot {
    top: 1.6vw;
    width: 1.0666666667vw;
    height: 1.0666666667vw;
    left: 8.8vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-dot {
    top: clamp(6px, 1vw, 12px);
    width: clamp(4px, 0.6666666667vw, 8px);
    height: clamp(4px, 0.6666666667vw, 8px);
    left: clamp(38px, 6.3333333333vw, 76px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .content {
  margin-left: 6.4vw;
  flex: 1;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .content {
    margin-left: 3.2vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .content {
    margin-left: clamp(12px, 2vw, 24px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-entry {
  margin-bottom: 10.6666666667vw;
  display: flex;
  align-items: baseline;
  gap: 4.2666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-entry {
    margin-bottom: 5.3333333333vw;
    gap: 2.1333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .timeline-entry {
    margin-bottom: clamp(20px, 3.3333333333vw, 40px);
    gap: clamp(22.5px, 3.75vw, 45px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .month {
  flex-shrink: 0;
  font-size: 3.2vw;
  margin-left: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .month {
    font-size: 1.8666666667vw;
    margin-left: 2.4vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .month {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-left: clamp(14px, 2.3333333333vw, 28px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .description {
  line-height: 1.6;
  flex: 1;
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .description {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .description {
    font-size: clamp(7px, 1.1666666667vw, 14px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section .milestone {
  margin-left: 9.3333333333vw;
  font-size: 3.2vw;
  line-height: 2.2;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .milestone {
    font-size: 2.5333333333vw;
    margin-left: 4.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section .milestone {
    font-size: clamp(7px, 1.1666666667vw, 14px);
    margin-left: clamp(25px, 4.1666666667vw, 50px);
  }
}
.brand-detail-pages .history .history__container .history__timeline .timeline-section:last-child {
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section:last-child {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__timeline .timeline-section:last-child {
    margin-bottom: clamp(20px, 3.3333333333vw, 40px);
  }
}
.brand-detail-pages .history .history__container .history__images {
  display: flex;
  flex-direction: column;
  gap: 10.6666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__images {
    gap: 5.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__images {
    grid-column: 2;
    grid-row: 1/3;
    gap: clamp(32px, 5.3333333333vw, 64px);
    padding-left: clamp(5px, 0.8333333333vw, 10px);
  }
}
.brand-detail-pages .history .history__container .history__image img {
  width: 100%;
  height: auto;
  max-height: 56vw;
  object-fit: cover;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .history .history__container .history__image img {
    max-height: 53.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__image img {
    max-width: clamp(172.5px, 28.75vw, 345px);
    max-height: clamp(115px, 19.1666666667vw, 230px);
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .history .history__container .history__image:nth-of-type(2) img {
    max-width: clamp(132px, 22vw, 264px);
  }
}
.brand-detail-pages .founding-team {
  padding: 21.3333333333vw 0;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team {
    padding: 10.6666666667vw 0;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team {
    padding: clamp(80px, 13.3333333333vw, 160px) 0 clamp(45px, 7.5vw, 90px);
  }
}
.brand-detail-pages .founding-team .founding-team__title {
  font-size: 6.6666666667vw;
  line-height: 1.6;
  letter-spacing: 0.07em;
  font-family: "Crimson Pro", sans-serif;
  font-weight: 500;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team .founding-team__title {
    font-size: 3.4666666667vw;
    line-height: 1.2;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__title {
    font-size: clamp(18px, 3vw, 36px);
    line-height: 1.2;
    letter-spacing: 0.07em;
    font-weight: 400;
  }
}
.brand-detail-pages .founding-team .founding-team__members {
  margin-top: 10.6666666667vw;
  display: flex;
  flex-direction: column;
  gap: 7.4666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team .founding-team__members {
    margin-top: 5.3333333333vw;
    gap: 3.7333333333vw;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__members {
    margin-top: clamp(40px, 6.6666666667vw, 80px);
    gap: clamp(2px, 0.3333333333vw, 4px);
    flex-direction: row;
  }
}
.brand-detail-pages .founding-team .founding-team__members .founding-team__member {
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member {
    width: calc(45% - 3.7333333333vw);
    margin: 0;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member {
    width: clamp(146.5px, 24.4166666667vw, 293px);
  }
}
.brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__image {
  width: 100%;
}
.brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__image img {
  display: block;
  width: 100%;
  object-fit: contain;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info {
    text-align: left;
  }
}
.brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__position {
  font-size: 3.2vw;
  font-family: "Zen Old Mincho", sans-serif;
  letter-spacing: 0.07em;
  line-height: 2;
  font-weight: bold;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__position {
    font-size: 1.8666666667vw;
    margin-top: 1.0666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__position {
    font-size: clamp(6.5px, 1.0833333333vw, 13px);
    margin-top: clamp(4px, 0.6666666667vw, 8px);
  }
}
.brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__name {
  font-size: 4.2666666667vw;
  font-weight: bold;
  font-family: "Zen Old Mincho", sans-serif;
  line-height: 1.9;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__name {
    font-size: 2.6666666667vw;
    line-height: 1.7;
    letter-spacing: 0.07em;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .founding-team .founding-team__members .founding-team__member .founding-team__info .founding-team__name {
    font-size: clamp(12px, 2vw, 24px);
    line-height: 1.3;
    letter-spacing: 0.07em;
  }
}
.brand-detail-pages .produced-by {
  text-align: center;
}
.brand-detail-pages .produced-by.produced-pt {
  padding-top: 16vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by.produced-pt {
    padding-top: 10.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by.produced-pt {
    padding-top: clamp(60px, 10vw, 120px);
  }
}
.brand-detail-pages .produced-by .produced-by__logo {
  padding-bottom: 13.3333333333vw;
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__logo {
    padding-bottom: 6.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__logo {
    padding-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.brand-detail-pages .produced-by .produced-by__logo a {
  width: 29.8666666667vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__logo a {
    width: 26.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__logo a {
    width: clamp(135px, 22.5vw, 270px);
  }
}
.brand-detail-pages .produced-by .produced-by__button {
  padding-bottom: 13.3333333333vw;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__button {
    padding-bottom: 6.6666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button {
    padding-bottom: clamp(40px, 6.6666666667vw, 80px);
  }
}
.brand-detail-pages .produced-by .produced-by__button .base-btn__container::before {
  display: none;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .base-btn__container::before {
    display: block;
  }
}
.brand-detail-pages .produced-by .produced-by__button .button-back {
  width: 45%;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back {
    width: auto;
    height: 4.9333333333vw;
    width: 40vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back {
    width: auto;
    height: clamp(18.5px, 3.0833333333vw, 37px);
    width: clamp(116px, 19.3333333333vw, 232px);
  }
}
.brand-detail-pages .produced-by .produced-by__button .button-back a {
  position: relative;
  font-size: 2.4vw;
  line-height: 2.2;
  letter-spacing: 0.07em;
  position: relative;
  padding: 0;
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a {
    font-size: 1.8666666667vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a {
    font-size: clamp(6.5px, 1.0833333333vw, 13px);
  }
}
.brand-detail-pages .produced-by .produced-by__button .button-back a:hover {
  color: #000;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a:hover {
    color: #fff;
  }
}
.brand-detail-pages .produced-by .produced-by__button .button-back a::after {
  content: "";
  position: absolute;
  width: 5.3333333333vw;
  height: 0.8vw;
  background: url("../icons/navigation/line.svg") no-repeat right center;
  background-size: contain;
  z-index: 2;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (min-width: 600px) and (max-width: 959px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a::after {
    width: 3.2vw;
    height: 1.3333333333vw;
  }
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a::after {
    width: clamp(12px, 2vw, 24px);
    height: clamp(5px, 0.8333333333vw, 10px);
  }
}
.brand-detail-pages .produced-by .produced-by__button .button-back a:hover::after {
  background-size: contain;
}
@media screen and (min-width: 960px) {
  .brand-detail-pages .produced-by .produced-by__button .button-back a:hover::after {
    background: url("../icons/navigation/line_white.svg") no-repeat right center;
  }
}

/*# sourceMappingURL=style.css.map */