@charset "UTF-8";

/*--------------------------------
  CSSカスタムプロパティ
--------------------------------*/
:root {
  --root-em: 100%;
  --scroll-bar-width: 15px;
}

/*--------------------------------
  テーマカラー
--------------------------------*/
/*--------------------------------
  コンテンツ幅/ガター
--------------------------------*/
/*--------------------------------
  ブレイクポイント
--------------------------------*/
/* Global
 * 変数、関数、mixinを定義
 * サイト全体のデフォルトスタイルを管理
======================================*/
/****** 変数定義 ******/
/****** mixin定義 ******/
/****** 関数定義 ******/
/*! destyle.css v3.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: baseline;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  /* 1 */
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
  text-align: inherit;
  text-transform: inherit;
  /* 2 */
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type="checkbox"] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
}

[type="radio"] {
  -webkit-appearance: radio;
  appearance: radio;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type="search"] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-color: inherit;
  /* 1 */
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

html {
  font-size: var(--root-em);
  background: #00001c;
  scroll-behavior: smooth;
}

body {
  color: #00001c;
  font-family: "a-otf-gothic-mb101-pr6n", sans-serif;
  line-height: 1.5;
  font-weight: 300;
}

a {
  transition: all 0.25s;
}

p {
  line-height: 1.8;
}

/* common */
@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}

/* Foundation
 * サイト全体のデフォルトスタイルを管理
======================================*/
/****** リセットCSS ******/
/****** ベースとなるスタイル ******/
.l-body {
  height: 100%;
  transition: 0.3s;
  overflow-x: hidden;
  padding-top: 100px;
}

@media screen and (max-width: 768px) {
  .l-body {
    padding-top: 60px;
  }
}

.l-body__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
}

.l-main {
  flex: 1;
  color: #fff;
}

.l-main__section {
  padding-top: 10em;
}

@media screen and (max-width: 768px) {
  .l-main__section {
    padding-top: 4.625em;
  }
}

.l-cont {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

/****** header ******/
body.scroll-none {
  overflow: hidden;
}

.l-head {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  z-index: 1000;
  background: #00001c;
  transition: all 0.25s;
}

.l-head.hide {
  transform: translateY(-100px);
}

.l-head .head-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 36px 160px 36px 20px;
}

.l-head .logo {
  line-height: 1;
  width: 245px;
}

.l-head .logo img {
  width: 100%;
}

.l-head .logo a {
  display: block;
}

.l-head .btn_box {
  width: 53.33%;
  max-width: 640px;
}

.l-head .btn_box ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.l-head .btn_box li {
  width: 31.25%;
}

.l-head .btn_box li a,
.l-head .gnav .nav-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 200px;
  width: 100%;
  height: 100%;
  border-radius: 100px;
  background: #fff;
  color: #00001c;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.4);
  text-align: center;
  font-size: 16px;
  letter-spacing: 0.22em;
  padding: 16px 0;
  line-height: 1;
  transition: all 0.25s;
}

.l-head .btn_box li a:hover,
.l-head .gnav .nav-btn a:hover {
  opacity: 0.7;
}

.l-head .btn_box li a span,
.l-head .gnav .nav-btn a span {
  display: block;
  font-size: 12px;
  letter-spacing: 0.12em;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  text-align: center;
}

.l-head .btn_box li a img,
.l-head .gnav .nav-btn a img {
  margin-right: 20px;
  width: 28px;
}

.l-head #nav_toggle {
  position: fixed;
  top: 0;
  right: 20px;
  z-index: 50;
  width: 100px;
  height: 100px;
  z-index: 1200;
}

.l-head #nav_toggle div {
  position: relative;
  top: 41px;
  width: 60px;
  height: 18px;
  margin: auto;
}

.l-head #nav_toggle span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  right: 0;
  width: 60px;
  height: 2px;
  background: #fff;
}

.l-head #nav_toggle span:first-child {
  top: 0;
}

.l-head #nav_toggle span:last-child {
  bottom: 0;
}

.l-head .gnav {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  padding: 150px 0;
  width: 717px;
  height: 100vh;
  background: #b5b5b6;
  z-index: 1010;
  overflow: auto;
}

.l-head:before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  height: 100vh;
  background: rgba(0, 0, 28, 0.1);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s;
}

.l-head .gnav div {
  width: 100%;
  padding: 0 160px 0 155px;
}

.l-head .gnav ul {
  width: 100%;
}

.l-head.open:before {
  opacity: 1;
  visibility: visible;
}

.l-head.open #nav_toggle span {
  background: #00001c;
  width: 100%;
}

.l-head.open #nav_toggle span:first-child {
  transform: translateY(7px) rotate(-45deg);
}

.l-head.open #nav_toggle span:last-child {
  transform: translateY(-8px) rotate(45deg);
}

@media screen and (min-width: 769px) {
  .l-head #nav_toggle:hover {
    cursor: pointer;
  }

  .l-head #nav_toggle:hover span:first-child {
    width: 40px;
  }

  .l-head.open #nav_toggle:hover span:first-child {
    width: 60px;
  }
}

.l-head .gnav .nav-logo img {
  max-width: 280px;
}

.l-head .gnav .nav-list {
  margin-top: 50px;
}

.l-head .gnav .nav-list a {
  position: relative;
  display: block;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 24px;
  color: #00001c;
  letter-spacing: 0.18em;
  border-bottom: 1px solid #4d4d61;
  padding: 10px 32px 10px 0;
  line-height: 1.25;
}

.l-head .gnav .nav-list a:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  margin: auto;
  width: 14px;
  height: 14px;
  border-top: solid 1px #00001c;
  border-right: solid 1px #00001c;
  transform: rotate(45deg);
  transition: all 0.25s;
}

.l-head .gnav .nav-list a:hover:before {
  right: -6px;
}

.l-head .gnav .nav-btn {
  margin-top: 60px;
}

.l-head .gnav .nav-btn+.nav-btn {
  margin-top: 20px;
}

.l-head .gnav .nav-btn a {
  flex-wrap: wrap;
  max-width: none;
  box-shadow: none;
  height: 60px;
}

.l-head .gnav .nav-btn a span {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .l-head {
    height: 60px;
  }

  .l-head.hide {
    transform: translateY(-60px);
  }

  .l-head .btn_box {
    display: none;
  }

  .l-head .logo {
    width: 147px;
  }

  .l-head .head-wrapper {
    padding: 22px 16px;
  }

  .l-head #nav_toggle {
    right: 0;
    width: 70px;
    height: 60px;
  }

  .l-head #nav_toggle div {
    top: 21px;
    width: 40px;
    height: 18px;
  }

  .l-head #nav_toggle span {
    width: 40px;
  }

  .l-head .gnav {
    width: 100%;
    padding: min(100px, 26.67vw) 0;
  }

  .l-head .gnav div {
    padding: 0 min(60px, 16vw);
  }

  .l-head .gnav .nav-logo {
    text-align: center;
  }

  .l-head .gnav .nav-logo img {
    width: 53.33vw;
    max-width: 200px;
  }

  .l-head .gnav .nav-list {
    margin-top: 46px;
  }

  .l-head .gnav .nav-list+.nav-list {
    margin-top: 36px;
  }

  .l-head .gnav .nav-list a {
    font-size: clamp(16px, 5.33vw, 18px);
    padding: 8px 16px 8px 0;
  }

  .l-head .gnav .nav-btn {
    margin-top: 40px;
  }

  .l-head .gnav .nav-btn+.nav-btn {
    margin-top: 10px;
  }

  .l-head .gnav .nav-btn a {
    padding: 10px 0;
    height: 50px;
    font-size: clamp(14px, 4.27vw, 16px);
  }

  /* paddingがそろっていないため非表示 */
  /* .l-head .gnav .nav-btn:last-child a {
    padding: 16px 0;
  } */

  .l-head .gnav .nav-btn a span {
    font-size: clamp(10px, 3.2vw, 12px);
  }
}

/****** footer ******/
.l-footer {
  margin-top: 10rem;
  padding-bottom: clamp(10px, 3.3279220779vw, 41px);
  background: #000000;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .l-footer {
    margin-top: 80px;
    padding-bottom: 135px;
  }
}

.l-footer__contact {
  margin-bottom: clamp(10px, 2.8409090909vw, 35px);
  padding: 80px 15px;
  background: url(../images/common/f_contact_bg.jpg) center / cover no-repeat;
}

.l-footer__contact .ttl {
  margin-bottom: 30px;
  line-height: 1.25;
  text-align: center;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 56px;
  letter-spacing: 0.18em;
}

.l-footer__contact .contactBtnList {
  display: flex;
  /* contactのコンポーネントが２つ以上になる場合下記を消す */
  justify-content: center;
  column-gap: 40px;
  max-width: 760px;
  margin: 0 auto;

}

.l-footer__contact .contactBtnList li {
  width: 50%;
}

.l-footer__contact .contactBtnList a {
  flex-direction: column;
  width: 100%;
  height: 60px;
  letter-spacing: 0.22em;
  font-size: 18px;
  padding: 14px 50px;
}

.l-footer__contact .contactBtnList a .en {
  margin-bottom: 2px;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 12px;
  letter-spacing: 0.12em;
}

@media screen and (min-width: 769px) {
  .l-footer__contact .c-btn-def .svg {
    right: 32px;
    width: 23px;
    height: 6px;
    background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="22.571" height="6.332" viewBox="0 0 22.571 6.332"><path id="arrow" d="M22.164,6.041H0v-1H21.193L17.8.291l.814-.581,3.957,5.541-.407.291Z" transform="translate(0 0.291)" fill="%2300001c"/></svg>') no-repeat;
  }
}

@media screen and (max-width: 768px) {
  .l-footer__contact {
    margin-bottom: 40px;
    padding: 40px 0;
  }

  .l-footer__contact .ttl {
    margin-bottom: 22px;
    font-size: 28px;
  }

  .l-footer__contact .contactBtnList {
    flex-direction: column;
    gap: 20px 0;
    max-width: 280px;
  }

  .l-footer__contact .contactBtnList li {
    width: 100%;
  }

  .l-footer__contact .contactBtnList a {
    height: 54px;
    font-size: 18px;
    letter-spacing: 0.18em;
  }

  .l-footer__contact .contactBtnList a .en {
    margin-bottom: 0;
    font-size: 12px;
    letter-spacing: 0.12em;
  }
}

.not-contact .l-footer__wrapper {
  padding-top: 35px;
}

.l-footer__wrapper {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .l-footer__wrapper {
    flex-direction: column-reverse;
    row-gap: 75px;
  }

  .not-contact .l-footer__wrapper {
    padding-top: 40px;
  }
}

.l-footer__inner.--left {
  display: flex;
  flex-direction: column;
  row-gap: 35px;
}

@media screen and (max-width: 768px) {
  .l-footer__inner.--left {
    row-gap: 10px;
  }
}

.l-footer__logo {
  width: 245px;
}

@media screen and (max-width: 768px) {
  .l-footer__logo {
    margin: 0 auto;
  }
}

.l-footer__navList {
  display: flex;
  justify-content: space-around;
}


@media screen and (max-width: 768px) {
  .l-footer__navList {
    justify-content: space-evenly;
    ;
  }
}

.l-footer__nav--left,
.l-footer__nav--right {
  /* flex: 1; */
  margin-inline: 15px;
  display: flex;
  flex-direction: column;
  row-gap: clamp(8px, 3.2467532468vw, 16px);
}

@media screen and (max-width: 768px) {

  .l-footer__nav--left,
  .l-footer__nav--right {
    margin-inline: 10px;
    row-gap: 8px;
  }
}

.l-footer__nav {
  display: flex;
  /* flex-direction: column; */
  row-gap: 10px;
  font-family: "a-otf-gothic-mb101-pr6n", sans-serif;
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .l-footer__nav {
    column-gap: 10px;
  }
}

@media screen and (max-width: 768px) {
  .l-footer__nav {
    flex-direction: column;
    row-gap: 10px;
  }
}

.l-footer__nav li {
  width: fit-content;
  font-size: 12px;
  letter-spacing: 0.18em;
}

@media screen and (max-width: 768px) {
  .l-footer__nav li {
    font-size: clamp(11px, 1.1363636364vw, 12px);
  }
}

.l-footer__nav li.--en {
  letter-spacing: 0.12em;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
}

.l-footer__nav a {
  position: relative;
  display: flex;
  align-items: center;
}

.l-footer__nav a::before {
  position: absolute;
  content: "";
  display: block;
  height: 1px;
  width: 0%;
  bottom: 0px;
  left: 0;
  background: #fff;
  transition: 0.3s;
}

.l-footer__nav a:hover::before,
.l-footer__nav a:active::before {
  width: 100%;
}

.l-footer__nav a.pdf .svg {
  display: inline-block;
  margin-left: 5px;
  width: 1.6rem;
  height: 11px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="11"><g data-name="グループ 92794"><g fill="none" stroke="%23fff" data-name="長方形 2257"><path stroke="none" d="M0 0h24v11H0z"/><path d="M.5.5h23v10H.5z"/></g><path fill="%23fff" d="M4 8.516h1.26V6.647h1.617a1.812 1.812 0 0 0 2.047-1.799A1.863 1.863 0 0 0 6.877 3H4Zm1.26-4.515h1.477a.808.808 0 0 1 .9.819.807.807 0 0 1-.9.826H5.26Zm4.725 4.515h2.079c1.141 0 2.849-.3 2.849-2.709A2.53 2.53 0 0 0 12.064 3H9.985Zm1.26-4.487h.917c1.071 0 1.449.847 1.449 1.708 0 1.029-.483 1.75-1.449 1.75h-.917Zm5.971 1.33v-1.33h2.828V3h-4.088v5.516h1.26V6.353h2.436v-.994Z" data-name="パス 10058"/></g></svg>');
}

.l-footer__nav a.blank .svg {
  display: inline-block;
  margin-left: 5px;
  width: 13px;
  height: 13px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="12.75" height="12.674"><g data-name="グループ 92797"><g fill="none" stroke="%23fff" data-name="グループ 92796"><g data-name="長方形 2258"><path stroke="none" d="M2.749 0h10v10h-10z"/><path d="M3.249.5h9v9h-9z"/></g><path d="M.5 3.03v9.144h9.187" data-name="パス 10059"/></g></g></svg>');
}

.l-footer__follow__wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
  color: #b5b5b6;
}

@media screen and (max-width: 768px) {
  .l-footer__follow__wrapper {
    align-items: unset;
    justify-content: center;
    flex-direction: column;
    row-gap: 10px;
    width: fit-content;
    margin: 0 auto;
  }
}

.l-footer__follow__wrapper p {
  font-size: clamp(12px, 1.1363636364vw, 14px);
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.12em;
  line-height: 1.5;
}

.l-footer__follow {
  display: flex;
  align-items: center;
  column-gap: clamp(10px, 3.2467532468vw, 40px);
  color: #b5b5b6;
}

@media screen and (max-width: 768px) {
  .l-footer__follow {
    column-gap: 2.5rem;
    justify-content: center;
  }

  .l-footer__follow__wrapper p {
    text-align: center;
  }
}

.l-footer__follow li {
  display: flex;
  align-items: center;
}

.l-footer__follow li a {
  display: flex;
}

.l-footer__follow li a:hover .svg,
.l-footer__follow li a:active .svg {
  opacity: 0.4;
}

.l-footer__follow li .svg {
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  opacity: 1;
  transition: 0.3s;
}

.l-footer__follow li .line .svg {
  width: 31.5px;
  height: 31.5px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="31.5" height="31.5"><g data-name="グループ 92798"><path fill="%23b5b5b6" d="M19.132 12.108v5a.222.222 0 0 1-.225.225h-.8a.233.233 0 0 1-.183-.091L15.63 14.15v2.967a.222.222 0 0 1-.225.225h-.8a.222.222 0 0 1-.225-.225v-5a.222.222 0 0 1 .225-.225h.795a.212.212 0 0 1 .183.1l2.292 3.094v-2.971a.222.222 0 0 1 .225-.225h.8a.222.222 0 0 1 .232.218Zm-5.766-.225h-.8a.222.222 0 0 0-.225.225v5a.222.222 0 0 0 .225.225h.8a.222.222 0 0 0 .225-.225v-5a.227.227 0 0 0-.225-.225Zm-1.934 4.191H9.246v-3.966a.222.222 0 0 0-.225-.225h-.8a.222.222 0 0 0-.225.225v5a.207.207 0 0 0 .063.155.237.237 0 0 0 .155.063h3.213a.222.222 0 0 0 .225-.225v-.8a.225.225 0 0 0-.218-.225Zm11.918-4.191h-3.213a.227.227 0 0 0-.225.225v5a.227.227 0 0 0 .225.225h3.213a.222.222 0 0 0 .225-.225v-.8a.222.222 0 0 0-.225-.225h-2.186v-.844h2.187a.222.222 0 0 0 .225-.225v-.809a.222.222 0 0 0-.225-.225h-2.187v-.844h2.187a.222.222 0 0 0 .225-.225v-.8a.236.236 0 0 0-.225-.225Zm8.15-6.138v20.06a5.727 5.727 0 0 1-5.745 5.7H5.7a5.732 5.732 0 0 1-5.7-5.75V5.695a5.732 5.732 0 0 1 5.745-5.7H25.8a5.727 5.727 0 0 1 5.7 5.75Zm-4.331 8.62c0-5.133-5.147-9.309-11.468-9.309S4.233 9.232 4.233 14.365c0 4.6 4.078 8.452 9.591 9.183 1.343.288 1.188.78.886 2.587-.049.288-.232 1.132.991.619a37.061 37.061 0 0 0 9.014-6.659 8.307 8.307 0 0 0 2.454-5.73Z" data-name="Icon awesome-line"/></g></svg>');
}

@media screen and (max-width: 768px) {
  .l-footer__follow li .line .svg {
    width: 1.96875rem;
    height: 1.96875rem;
  }
}

.l-footer__follow li .insta .svg {
  width: 31px;
  height: 31px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="34.5" height="34.5"><g data-name="グループ 92799"><g fill="%23b5b5b6" data-name="Icon feather-instagram"><path d="M10.5 1.5h15a9.01 9.01 0 0 1 9 9v15a9.01 9.01 0 0 1-9 9h-15a9.01 9.01 0 0 1-9-9v-15a9.01 9.01 0 0 1 9-9Zm15 30a6.007 6.007 0 0 0 6-6v-15a6.007 6.007 0 0 0-6-6h-15a6.007 6.007 0 0 0-6 6v15a6.007 6.007 0 0 0 6 6Z" data-name="パス 3"/><path d="M18.063 10.435a7.539 7.539 0 0 1 1.1.081 7.5 7.5 0 0 1 2.272 14.118 7.533 7.533 0 0 1-3.37.8 7.5 7.5 0 0 1 0-15Zm0 12a4.5 4.5 0 0 0 4.45-5.16 4.5 4.5 0 0 0-3.791-3.791 4.529 4.529 0 0 0-.662-.049 4.5 4.5 0 0 0 0 9Z" data-name="パス 4"/></g></g></svg>');
  background-size: contain;
}

@media screen and (max-width: 768px) {
  .l-footer__follow li .insta .svg {
    width: 1.9375rem;
    height: 1.9375rem;
  }
}

.l-footer__follow li .twitter .svg {
  width: 28.61px;
  height: 29.24px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="28.61" height="29.239" viewBox="0 0 28.61 29.239"><path id="logo" d="M17.027,12.381,27.677,0H25.154L15.906,10.75,8.519,0H0L11.17,16.256,0,29.239H2.524L12.29,17.886l7.8,11.352H28.61L17.026,12.381ZM13.57,16.4,12.438,14.78l-9-12.88H7.31l7.267,10.395,1.132,1.619,9.446,13.511H21.278L13.57,16.4Z" fill="%23b5b5b6"/></svg>');
}

@media screen and (max-width: 768px) {
  .l-footer__follow li .twitter .svg {
    width: 2.25rem;
    height: 1.875rem;
  }
}

.l-footer__follow li .in .svg {
  width: 30.85px;
  height: 30.85px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="30.849" height="30.849"><g data-name="グループ 92801"><path fill="%23b5b5b6" d="M25.667 0H5.181A5.2 5.2 0 0 0 0 5.182v20.485a5.2 5.2 0 0 0 5.182 5.182h20.485a5.2 5.2 0 0 0 5.182-5.182V5.182A5.2 5.2 0 0 0 25.667 0Zm-14.1 25.064H7.712V11.572h3.856v13.5ZM9.64 9.64a1.928 1.928 0 1 1 1.928-1.928A1.928 1.928 0 0 1 9.64 9.64Zm15.424 15.424h-3.856v-7.712a1.928 1.928 0 1 0-3.856 0v7.712h-3.856V11.572h3.856v2.39c.8-1.092 2.011-2.394 3.374-2.394a4.6 4.6 0 0 1 4.338 4.82v8.676Z" data-name="Icon metro-linkedin" /></g></svg>');
}

@media screen and (max-width: 768px) {
  .l-footer__follow li .in .svg {
    width: 1.928125rem;
    height: 1.928125rem;
  }
}

.l-footer__copy-right {
  margin-top: auto;
  color: #b5b5b6;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  letter-spacing: 0.12em;
  line-height: 1.5;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
}

@media screen and (max-width: 768px) {
  .l-footer__copy-right {
    text-align: center;
    margin-top: 2.5rem;
  }
}

/* Layout
 * 接頭辞：l-
 * 各ページを構成する大枠のエリアに対するレイアウトを定義
======================================*/
/****** 全体 ******/
/****** メインコンテンツ ******/
/****** コンテンツ ******/
/****** ヘッダー ******/
/****** フッター ******/
.p-home__h2 {
  font-size: clamp(28px, 4.5454545455vw, 56px);
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.18em;
  line-height: 1.25;
}

@media screen and (max-width: 768px) {
  .p-home__h2 {
    line-height: 1.143;
  }
}

.p-home__h3 {
  font-size: clamp(20px, 1.9480519481vw, 24px);
  letter-spacing: 0.18em;
  line-height: 1.25;
}

@media screen and (max-width: 768px) {
  .p-home__h3 {
    line-height: 1.714;
  }
}

.--blur {
  opacity: 0;
}

.--blur.is-active {
  opacity: 1;
  filter: blur(0);
  transform: translate(0, 0);
  transition: 1s ease-in-out;
  /* animation: blur 1s ease-in-out 0.5s forwards; */
}

.js-scrollIn {
  opacity: 0;
  filter: blur(6px);
}

@keyframes blur {
  0% {
    opacity: 0;
    filter: blur(6px);
  }

  100% {
    opacity: 1;
    transform: translate(0, 0);
    filter: blur(0);
  }
}

.top .p-home__slider img {
  width: 100%;
}

.top .p-home__slider .slick-dots {
  bottom: 2.08vw;
}

.top .p-home__slider .slick-dots li,
.top .p-home__slider .slick-dots li button {
  width: 16px;
  height: 16px;
}

.top .p-home__slider .slick-dots li button {
  padding: 4px;
}

.top .p-home__slider .slick-dots li button::before {
  line-height: 1;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  content: "";
  opacity: 1;
  background: #fff;
}

.top .p-home__slider .slick-dots li.slick-active button {
  border: 1px solid #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  padding: 4px;
}

@media screen and (max-width: 768px) {
  .top .p-home__slider .slick-dots {
    bottom: 5.33vw;
  }

  .slide_target {
    pointer-events: none;
  }
}

.p-home__life {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 3.75rem;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-home__life {
    padding-top: 0rem;
  }
}

.p-home__life .p-home__life__h2 {
  margin-bottom: 3.375rem;
}

@media screen and (max-width: 768px) {
  .p-home__life .p-home__life__h2 {
    margin-bottom: 2.5rem;
  }
}

.p-home__life .p-home__life__h3 {
  margin-top: 3.75rem;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
}

@media screen and (max-width: 768px) {
  .p-home__life .p-home__life__h3 {
    margin-top: 2.5rem;
  }
}

.p-home__life .p-home__life__txt {
  font-size: clamp(14px, 1.461038961vw, 18px);
  letter-spacing: 0.22em;
  line-height: 2.25;
  margin-top: 3.1875rem;
}

@media screen and (max-width: 768px) {
  .p-home__life .p-home__life__txt {
    margin-top: 2.0625rem;
  }
}

@media screen and (max-width: 768px) {
  .p-home__life .p-home__life__img {
    width: 180px;
  }
}

.p-home__life .p-home__life__img img {
  max-width: 100%;
}

.p-home__life .p-home__life__open {
  width: 633px;
  margin: 1.25rem auto auto;
  padding: 2.5rem 0 1.8125rem;
  border: 1px solid #fff;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: clamp(28px, 3.0844155844vw, 38px);
  line-height: 1.1;
  letter-spacing: 0.18em;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-home__life .p-home__life__open {
    width: 307px;
    padding: 1.25rem 0 0.8125rem;
  }
}

.p-home__life-concept {
  padding-top: 10rem;
}

@media screen and (max-width: 768px) {
  .p-home__life-concept {
    padding-top: 5rem;
  }
}

.p-home__life-concept .p-home__life__txt {
  margin-top: 2.125rem;
}

@media screen and (max-width: 768px) {
  .p-home__life-concept .p-home__life__txt {
    margin-top: 1.875rem;
  }
}

.p-home__allIn {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .p-home__allIn .p-home__allIn__h2 {
    text-align: center;
  }
}

.p-home__allIn .p-home__allIn__wrapper {
  display: flex;
  align-items: center;
  gap: 8.33%;
}

@media screen and (max-width: 768px) {
  .p-home__allIn .p-home__allIn__wrapper {
    display: block;
    margin-top: 1.25rem;
  }
}

.p-home__allIn .p-home__allIn__wrapper figure {
  width: 50.94%;
}

@media screen and (max-width: 768px) {
  .p-home__allIn .p-home__allIn__wrapper figure {
    width: 330px;
    max-width: 100%;
    margin: auto;
  }
}

.p-home__allIn .p-home__allIn__wrapper figure img {
  max-width: 100%;
}

.p-home__allIn .p-home__allIn__inner {
  width: 43.33%;
}

@media screen and (max-width: 768px) {
  .p-home__allIn .p-home__allIn__inner {
    width: auto;
    margin-top: 2.5rem;
  }
}

.p-home__allIn .p-home__allIn__inner p {
  font-size: clamp(14px, 1.461038961vw, 18px);
  letter-spacing: 0.22em;
  line-height: 2;
  margin-top: 1.875rem;
}

@media screen and (max-width: 768px) {
  .p-home__allIn .p-home__allIn__inner p {
    margin-top: 0rem;
    text-align: center;
    line-height: 1.74;
  }
}

.p-home__3set {
  width: 100%;
  max-width: 1920px;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  .p-home__3set {
    display: flex;
    flex-direction: column;
    gap: 53px;
  }
}

.p-home__3set__cont {
  position: relative;
  opacity: 1;
}

.p-home__3set__cont.is-active figure {
  opacity: 1;
  filter: blur(0);
  transform: translate(0, 0);
  transition: 1.5s ease-in-out;
}

.p-home__3set__cont.is-active .p-home__3set__cont__inner {
  opacity: 1;
  transform: translate(0) !important;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont.is-active .p-home__3set__cont__inner {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0);
    transition: 1.5s ease-in-out;
  }
}

.p-home__3set__cont:nth-child(2n) .p-home__3set__cont__txt {
  right: 0;
  padding-left: 138px;
}

@media screen and (max-width: 1232px) {
  .p-home__3set__cont:nth-child(2n) .p-home__3set__cont__txt {
    padding-left: calc(6.05% + 63.49px);
  }
}

.p-home__3set__cont:nth-child(2n) .p-home__3set__cont__txt::before {
  left: 0;
  transform: skew(-21deg);
}

.p-home__3set__cont:nth-child(2n) .p-home__3set__cont__inner {
  width: 440px;
  transform: translate(100px);
}

.p-home__3set__cont:nth-child(2n-1) figure {
  margin-left: auto;
}

.p-home__3set__cont:nth-child(2n-1) .p-home__3set__cont__txt {
  left: 0;
  justify-content: flex-end;
  padding-right: 98px;
}

@media screen and (max-width: 1232px) {
  .p-home__3set__cont:nth-child(2n-1) .p-home__3set__cont__txt {
    padding-right: calc(8.64% - 8.44px);
  }
}

.p-home__3set__cont:nth-child(2n-1) .p-home__3set__cont__txt::before {
  right: 0;
  transform: skew(21deg);
}

.p-home__3set__cont:nth-child(2n-1) .p-home__3set__cont__txt .p-home__3set__cont__inner {
  width: 480px;
  transform: translate(-100px);
}

.p-home__3set__cont figure {
  position: relative;
  width: calc(70.85% - 160.35px);
  height: 640px;
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont figure {
    width: auto;
    height: auto;
  }
}

.p-home__3set__cont figure img {
  position: absolute;
  top: 0;
  left: 50%;
  width: auto;
  height: 100%;
  transform: translate(-50%);
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont figure img {
    position: static;
    transform: translate(0);
    width: 100%;
    height: auto;
  }
}

.p-home__3set__cont .p-home__3set__cont__txt {
  position: absolute;
  top: 0;
  display: flex;
  align-items: center;
  width: calc(48.09% + 14.7px);
  height: 100%;
  padding: 0 16px;
  z-index: 3;
  opacity: 1;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont .p-home__3set__cont__txt {
    position: static;
    display: block;
    width: auto;
    margin-top: 1.875rem;
    padding: 0 16px !important;
    text-align: center;
  }
}

.p-home__3set__cont .p-home__3set__cont__txt p {
  margin-top: 1.875rem;
  font-size: clamp(14px, 1.461038961vw, 18px);
  letter-spacing: 0.22em;
  line-height: 2;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont .p-home__3set__cont__txt p {
    margin-top: 1.25rem;
    line-height: 1.74;
  }
}

.p-home__3set__cont .p-home__3set__cont__txt::before {
  position: absolute;
  content: "";
  display: block;
  width: 100vw;
  background: #00001c;
  top: 0;
  bottom: 0;
  z-index: -1;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont .p-home__3set__cont__txt::before {
    content: none;
  }
}

.p-home__3set__cont .p-home__3set__cont__inner {
  max-width: 100%;
  opacity: 0;
  transition: opacity 1s 1s, transform 1s 1s;
}

@media screen and (max-width: 768px) {
  .p-home__3set__cont .p-home__3set__cont__inner {
    width: auto !important;
    transform: none !important;
  }

  .p-home__3set .p-home__cta__foot {
    padding: 0 16px;
  }

  .p-home__3set .p-home__cta__foot .c-btn-def {
    margin: -20px auto 0;
    padding: 19px 10px 17px;
    max-width: 280px;
    font-size: 18px;
  }
}

.p-home__cta {
  position: relative;
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

.p-home__cta .p-home__cta__inner {
  position: relative;
  padding: 5rem 1rem;
  background-image: url(../images/top/cta.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .p-home__cta .p-home__cta__inner {
    padding: 3.75rem 1.25rem;
    background-image: url(../images/top/cta_sp.png);
  }
}

.p-home__cta .p-home__cta__inner::before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  content: "";
  display: block;
  background-color: rgba(0, 0, 28, 0.7);
  z-index: 0;
}

.p-home__cta__head {
  position: relative;
}

.p-home__cta__head h2 {
  text-align: center;
}

.p-home__cta__head h3 {
  margin-top: 0.75rem;
  font-size: clamp(14px, 1.9480519481vw, 24px);
  text-align: center;
}

@media screen and (max-width: 768px) {
  .p-home__cta__head h3 {
    margin-top: 1.25rem;
  }
}

.p-home__cta__body {
  display: flex;
  justify-content: center;
  position: relative;
  margin-top: 3.125rem;
}

@media screen and (max-width: 768px) {
  .p-home__cta__body {
    margin-top: 2.0625rem;
  }
}

.p-home__cta__body ul {
  display: flex;
  flex-direction: column;
  gap: 1.4375rem;
}

@media screen and (max-width: 768px) {
  .p-home__cta__body ul {
    gap: 0.8125rem;
    align-items: unset;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
}

.p-home__cta__body ul li {
  display: flex;
  gap: 1.25rem;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .p-home__cta__body ul li {
    gap: 20px;
  }
}

.p-home__cta__body ul li .number {
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  width: 51px;
  height: 37px;
}

.p-home__cta__body ul li:nth-child(1) .number {
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="44.395" height="38"><g data-name="グループ 92825"><path fill="%23fff" d="M11.952 37.501a11.7 11.7 0 0 1-7.729-2.947A11.544 11.544 0 0 1 .5 25.617v-3.975h5v3.733a8.576 8.576 0 0 0 1.63 5.312 6.014 6.014 0 0 0 4.913 2.244 6.615 6.615 0 0 0 4.439-1.762 6.5 6.5 0 0 0 2.057-4.83v-4.7h5v4.456a10.777 10.777 0 0 1-3.885 8.625 11.987 11.987 0 0 1-3.747 2.093 12.237 12.237 0 0 1-3.955.688Zm26.94-.673V5.793h-5.245v-4.57h10.248v35.6h-5ZM5.505 15.811h-5v-3.425a11.649 11.649 0 0 1 3.6-8.774A11.4 11.4 0 0 1 7.83 1.297a12.033 12.033 0 0 1 4.316-.795 11.237 11.237 0 0 1 8.137 3.411 11.6 11.6 0 0 1 3.266 8.137v3.761h-5v-3.762a7.6 7.6 0 0 0-1.57-4.824 6.118 6.118 0 0 0-4.926-2.153 6.221 6.221 0 0 0-4.841 2.063 7.41 7.41 0 0 0-1.7 4.914v3.762Z" data-name="前面オブジェクトで型抜き 3"/><path fill="rgba(0,0,0,0)" d="M11.952 38.001a12.2 12.2 0 0 1-8.063-3.075A12.033 12.033 0 0 1 0 25.617v-4.475h6v4.233a8.079 8.079 0 0 0 1.522 5 5.529 5.529 0 0 0 4.521 2.054 6.11 6.11 0 0 0 4.1-1.629 6 6 0 0 0 1.9-4.463v-5.2h6v4.956a11.264 11.264 0 0 1-4.066 9.009 12.476 12.476 0 0 1-3.9 2.18 12.736 12.736 0 0 1-4.125.719ZM1 22.143v3.475a11.057 11.057 0 0 0 3.557 8.565 11.192 11.192 0 0 0 7.395 2.819 11.737 11.737 0 0 0 3.8-.658 11.492 11.492 0 0 0 3.591-2.005 10.292 10.292 0 0 0 3.7-8.24v-3.956h-4v4.2a6.99 6.99 0 0 1-2.217 5.2 7.121 7.121 0 0 1-4.779 1.9 6.5 6.5 0 0 1-5.306-2.434 9.074 9.074 0 0 1-1.737-5.622v-3.233Zm37.392 15.186V6.294h-5.245V.724h11.248v36.6ZM34.147 5.294h5.245v31.035h4v-34.6h-9.248ZM5.504 16.312h-5.5v-3.925a12.137 12.137 0 0 1 3.761-9.14A11.894 11.894 0 0 1 7.653.831a12.522 12.522 0 0 1 4.5-.828 11.733 11.733 0 0 1 8.5 3.563 12.1 12.1 0 0 1 3.407 8.485v4.261h-6V12.05a7.1 7.1 0 0 0-1.456-4.507 5.635 5.635 0 0 0-4.539-1.97A5.734 5.734 0 0 0 7.6 7.466a6.912 6.912 0 0 0-1.578 4.584v4.262Zm-4.5-1h4v-3.263A7.908 7.908 0 0 1 6.83 6.806a6.707 6.707 0 0 1 5.217-2.233 6.6 6.6 0 0 1 5.312 2.336 8.094 8.094 0 0 1 1.683 5.141v3.262h4v-3.261a11.1 11.1 0 0 0-3.125-7.789 10.74 10.74 0 0 0-7.779-3.259A11.539 11.539 0 0 0 8 1.765a10.9 10.9 0 0 0-3.563 2.214 11.161 11.161 0 0 0-3.444 8.409Z" data-name="前面オブジェクトで型抜き 3 - アウトライン"/></g></svg>');
}

.p-home__cta__body ul li:nth-child(2) .number {
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="52.026" height="37.755"><g data-name="グループ 92826"><path fill="%23fff" d="M11.942 37.255a11.733 11.733 0 0 1-7.724-2.928A11.435 11.435 0 0 1 .497 25.45v-3.225h5v2.985c0 4.559 2.567 7.5 6.54 7.5a6.457 6.457 0 0 0 6.493-6.548v-3.941h5v3.7a10.683 10.683 0 0 1-3.884 8.567 12.005 12.005 0 0 1-3.745 2.079 12.308 12.308 0 0 1-3.959.688Zm39.58-.669H29.255v-4.159L43.49 18.041c2.982-3.013 2.982-5.174 2.982-6.213 0-3.779-2.683-6.739-6.108-6.739-3.827 0-6.3 2.983-6.3 7.6v.668h-5v-.621c0-8 5.637-12.188 11.205-12.188a11.027 11.027 0 0 1 7.984 3.346 11.507 11.507 0 0 1 3.222 8.077 10.463 10.463 0 0 1-1.022 4.8 20.325 20.325 0 0 1-3.979 5.192l-9.859 10.084h14.909v4.54ZM5.498 16.433h-5v-4.125a11.537 11.537 0 0 1 3.6-8.717 11.414 11.414 0 0 1 3.723-2.3 12.1 12.1 0 0 1 4.314-.789 11.268 11.268 0 0 1 8.133 3.388 11.487 11.487 0 0 1 3.264 8.083v4.46h-5v-4.461c0-3.2-1.7-6.93-6.493-6.93-3.851 0-6.54 2.85-6.54 6.93v4.461Z" data-name="前面オブジェクトで型抜き 6"/><path fill="rgba(0,0,0,0)" d="M11.942 37.755A12.238 12.238 0 0 1 3.885 34.7a11.92 11.92 0 0 1-3.888-9.25v-3.725h6v3.485a7.677 7.677 0 0 0 1.657 5.133 5.615 5.615 0 0 0 4.383 1.871 5.961 5.961 0 0 0 5.993-6.048v-4.441h6v4.2a11.169 11.169 0 0 1-4.065 8.953 12.5 12.5 0 0 1-3.9 2.166 12.816 12.816 0 0 1-4.123.711ZM.996 22.725v2.725a10.946 10.946 0 0 0 3.554 8.5 11.227 11.227 0 0 0 7.391 2.8 11.8 11.8 0 0 0 3.8-.654 11.509 11.509 0 0 0 3.59-1.992 10.2 10.2 0 0 0 3.7-8.182v-3.2h-4v3.441a6.951 6.951 0 0 1-6.993 7.048 6.586 6.586 0 0 1-5.137-2.214 8.651 8.651 0 0 1-1.9-5.79v-2.485Zm50.526 14.361H28.755v-4.864l.145-.146L43.135 17.69c2.838-2.867 2.838-4.89 2.838-5.862 0-3.5-2.463-6.239-5.608-6.239a5.265 5.265 0 0 0-4.2 1.888 8.058 8.058 0 0 0-1.6 5.212v1.168h-6v-1.121a12.806 12.806 0 0 1 3.666-9.454A11.323 11.323 0 0 1 35.987.861 11.623 11.623 0 0 1 40.27.047a11.522 11.522 0 0 1 8.343 3.5 12 12 0 0 1 3.364 8.425 10.937 10.937 0 0 1-1.072 5.016 20.77 20.77 0 0 1-4.072 5.324l-9.028 9.234h14.221v5.54Zm-21.767-1h21.267v-3.541h-15.6l10.69-10.934a19.87 19.87 0 0 0 3.887-5.061 9.987 9.987 0 0 0 .972-4.579 11.01 11.01 0 0 0-3.081-7.729 10.531 10.531 0 0 0-7.625-3.194 10.628 10.628 0 0 0-3.916.744A10.322 10.322 0 0 0 32.923 4a11.83 11.83 0 0 0-3.363 8.736v.121h4v-.168a9.031 9.031 0 0 1 1.83-5.85 6.235 6.235 0 0 1 4.97-2.25c3.705 0 6.608 3.18 6.608 7.239 0 1.105 0 3.406-3.127 6.565l-14.09 14.24ZM5.497 16.933h-5.5v-4.625a12.025 12.025 0 0 1 3.761-9.084 11.916 11.916 0 0 1 3.885-2.4 12.6 12.6 0 0 1 4.492-.822 11.764 11.764 0 0 1 8.491 3.538 11.986 11.986 0 0 1 3.407 8.433v4.96h-6v-4.961a7.165 7.165 0 0 0-1.346-4.359 5.526 5.526 0 0 0-4.647-2.071A5.81 5.81 0 0 0 7.69 7.32 6.616 6.616 0 0 0 6 11.972v4.961Zm-4.5-1h4v-3.962a7.7 7.7 0 0 1 1.962-5.338 6.876 6.876 0 0 1 5.078-2.092 6.559 6.559 0 0 1 5.44 2.461 8.166 8.166 0 0 1 1.553 4.968v3.961h4v-3.96a10.99 10.99 0 0 0-3.122-7.733 10.771 10.771 0 0 0-7.776-3.237 11.6 11.6 0 0 0-4.136.756 10.917 10.917 0 0 0-3.561 2.2 11.049 11.049 0 0 0-3.441 8.351Z" data-name="前面オブジェクトで型抜き 6 - アウトライン"/></g></svg>');
}

.p-home__cta__body ul li:nth-child(3) .number {
  background-image: url('data:image/svg+xml;utf-8,<svg version="1.1" id="レイヤー_1" xmlns="http://www.w3.org/2000/svg" width="52.026" height="37.755" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 52 37" style="enable-background:new 0 0 52 37;" xml:space="preserve"><g><g><path fill="white" d="M11.7,36.5c-2.8,0-5.5-1-7.6-2.9c-2.4-2.2-3.8-5.4-3.6-8.7v-3.2h4.9v2.9c0,4.5,2.5,7.4,6.4,7.4c3.5,0,6.3-2.8,6.4-6.3c0,0,0-0.1,0-0.1v-3.9h4.9v3.6c0.1,3.2-1.3,6.3-3.8,8.4c-1.1,0.9-2.3,1.6-3.7,2C14.3,36.3,13,36.5,11.7,36.5z M5.4,16.1H0.5v-4C0.4,8.8,1.7,5.7,4,3.5c1.1-1,2.3-1.7,3.6-2.3c1.4-0.5,2.8-0.8,4.2-0.8c3,0,5.9,1.2,8,3.3c2.1,2.1,3.2,5,3.2,7.9v4.4h-4.9v-4.4c0-3.1-1.7-6.8-6.4-6.8c-3.8,0-6.4,2.8-6.4,6.8L5.4,16.1L5.4,16.1z"/><path fill="white" d="M11.7,37c-2.9,0-5.7-1.1-7.9-3c-2.5-2.3-3.9-5.6-3.8-9.1v-3.7h5.9v3.4c-0.1,1.8,0.5,3.6,1.6,5c1.1,1.2,2.7,1.9,4.3,1.8c3.2,0,5.9-2.6,5.9-5.8c0,0,0-0.1,0-0.1v-4.4h5.9v4.1c0.1,3.4-1.4,6.6-4,8.8c-1.1,0.9-2.4,1.7-3.8,2.1C14.5,36.8,13.1,37,11.7,37z"/><path fill="white" d="M1,22.3v2.7c-0.1,3.2,1.2,6.2,3.5,8.3C6.5,35,9,36,11.7,36c1.3,0,2.5-0.2,3.7-0.6c1.3-0.4,2.5-1.1,3.5-2c2.4-2,3.7-4.9,3.6-8v-3.1h-3.9v3.4c0.1,3.8-3,6.9-6.7,6.9c0,0-0.1,0-0.1,0c-1.9,0.1-3.8-0.7-5-2.2c-1.3-1.6-2-3.6-1.9-5.7v-2.4L1,22.3z"/><path fill="white" d="M5.4,16.6H0v-4.5c-0.1-3.4,1.2-6.6,3.7-8.9c1.1-1,2.4-1.8,3.8-2.4C8.9,0.3,10.4,0,11.9,0C15,0,18,1.2,20.2,3.5c2.2,2.2,3.4,5.2,3.3,8.3v4.9h-5.9v-4.9c0-1.5-0.4-3-1.3-4.3c-1.1-1.4-2.8-2.1-4.6-2c-1.6,0-3.2,0.6-4.3,1.7c-1.1,1.2-1.7,2.9-1.7,4.6v4.9H5.4z"/><path fill="white" d="M1,15.6h3.9v-3.9C4.9,9.8,5.5,7.9,6.8,6.5c1.3-1.3,3.1-2.1,5-2.1c2.1-0.1,4,0.8,5.3,2.4c1,1.4,1.6,3.1,1.5,4.9v3.9h3.9v-3.9c0-2.8-1.1-5.6-3.1-7.6c-2-2-4.8-3.2-7.6-3.2c-1.4,0-2.8,0.2-4.1,0.7C6.6,2.2,5.4,2.9,4.4,3.9C2.1,6,0.9,9,1,12.1L1,15.6z"/><path fill="white" d="M40.2,37c-5.7,0-11.9-3.8-12.1-12.3l0-1.3H34l0.1,1.2c0.2,5,3.5,6.8,6.2,6.8c3.5,0,5.9-2.6,5.9-6.3c0-3.2-2.7-5.2-7-5.2h-2.6v-5.6l1.3,0.1c1,0,1.1,0,1.3,0c2.6,0,4.8-2.2,4.8-4.9c0-2.3-1.6-4-3.9-4c-3.4,0-5.7,2-5.8,5l0,1.3h-6l0-1.3C28.5,4.6,33.7,0,40.1,0c5.5,0,9.7,4.2,9.7,9.8c0,2.6-0.9,5.1-2.6,7c3.3,2.1,4.8,4.7,4.8,8.1C52,31.7,46.8,37,40.2,37z"/><path fill="white" d="M40.2,36.7c-5.5,0-11.6-3.7-11.8-11.9l0-1h5.3l0,0.9c0.2,5.2,3.6,7.1,6.5,7.1c3.7,0,6.2-2.7,6.2-6.7c0-3.4-2.8-5.5-7.3-5.5h-2.3v-4.9l1,0c1,0,1.1,0,1.3,0c2.8,0,5.1-2.4,5.1-5.2c0-2.5-1.7-4.3-4.2-4.3c-3.6,0-6,2.1-6.1,5.3l0,1h-5.3l0-1c0.2-5.7,5.2-10.2,11.4-10.2c5.4,0,9.4,4.1,9.4,9.5c0,2.7-1,5.2-2.8,7c3.4,2.1,5,4.7,5,8C51.7,31.5,46.7,36.7,40.2,36.7z"/><path fill="white" d="M40.2,36.4c-5.4,0-11.3-3.6-11.5-11.6l0-0.7h4.6l0,0.6c0.2,5.4,3.8,7.4,6.8,7.4c3.8,0,6.5-2.9,6.5-7c0-3.6-2.9-5.8-7.6-5.8h-2V15l0.7,0c1,0,1.2,0,1.3,0c2.9,0,5.4-2.5,5.4-5.5C44.5,6.9,42.6,5,40,5c-3.8,0-6.4,2.3-6.4,5.6l0,0.6h-4.6l0-0.7C29.1,5,34,0.7,40.1,0.7c5.2,0,9.1,3.9,9.1,9.2c0,2.7-1.1,5.3-3,7.1c3.5,2.1,5.2,4.6,5.2,7.9C51.4,31.3,46.5,36.4,40.2,36.4z"/><path fill="white" d="M37.8,18.6v-2.9c1,0,1.2,0,1.3,0c3.4,0,6.1-2.9,6.1-6.2c0-3.1-2.2-5.3-5.2-5.3c-4.4,0-7,2.7-7,6.3h-3.3c0.2-5.3,5-9.3,10.5-9.3c4.9,0,8.4,3.8,8.4,8.5c0,2.5-1,5.4-3.4,7.2c3.5,1.8,5.6,4.2,5.6,7.8c0,5.8-4.3,10.8-10.5,10.8c-5.2,0-10.7-3.5-10.8-11h3.3c0.2,5.3,3.7,8,7.5,8c4.3,0,7.2-3.3,7.2-7.6c0-4-3.3-6.4-8.3-6.4H37.8z"/></g></g></svg>');
}


.p-home__cta__body ul li .txt {
  font-size: clamp(14px, 1.461038961vw, 18px);
  letter-spacing: 0.22em;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .p-home__cta__body ul li .txt {
    width: calc(100% - 71px);
  }
}

.p-home__cta__btn {
  margin: 3.75rem auto 0;
}

@media screen and (max-width: 768px) {
  .p-home__cta__btn {
    margin-top: 52px;
  }
}

.p-home__cta-line {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
  padding-top: 5em;
}

@media screen and (max-width: 768px) {
  .p-home__cta-line {
    padding-top: 2.5em;
  }
}

.p-home__cta-line .p-home__cta-line__wrapper {
  position: relative;
  border: 1px solid #fff;
  padding: 2.75em 10% 3.5em 38.33%;
  background-image: url("../images/top/carappo_logomark_w.svg");
  background-size: 210px auto;
  background-position: left 10% center;
  background-repeat: no-repeat;
}

@media screen and (max-width: 768px) {
  .p-home__cta-line .p-home__cta-line__wrapper {
    display: block;
    padding: 1.625em 2em 1.875em;
    background-image: none;
    text-align: center;
  }
}

@media screen and (max-width: 768px) {
  .p-home__cta-line .p-home__cta-line__wrapper figure {
    width: 60px;
    margin: auto;
  }
}

.p-home__cta-line .p-home__cta-line__wrapper figure img {
  max-width: 100%;
}

@media screen and (max-width: 768px) {
  .p-home__cta-line .p-home__cta-line__inner {
    margin-top: 1rem;
  }
}

.p-home__cta-line .p-home__cta-line__ttl {
  font-size: clamp(20px, 3.0844155844vw, 38px);
  letter-spacing: 0.18em;
  line-height: 1.263;
}

.p-home__cta-line .p-home__cta-line__ttl .small {
  font-size: clamp(14px, 2.2727272727vw, 28px);
}

.p-home__cta-line .p-home__cta-line__btn {
  margin-top: 1.5rem;
  margin-left: auto;
  width: 360px;
  font-size: clamp(14px, 1.2987012987vw, 16px);
  padding: 1.0625rem;
  letter-spacing: 0.18em;
}

.p-home__cta-line .p-home__cta-line__btn .svg {
  width: 21px;
  height: 6px;
  right: clamp(10px, 2.5974025974vw, 32px);
}

@media screen and (max-width: 768px) {
  .p-home__cta-line .p-home__cta-line__btn {
    margin-right: auto;
  }
}

.p-home__cta .campaign-bnr img {
  width: 100%;
}

.p-home__cta .campaign-bnr a {
  display: block;
  margin-bottom: 80px;
  transition: all 0.25s;
}

.p-home__cta .campaign-bnr a:hover {
  opacity: 0.5;
}

@media screen and (max-width: 768px) {
  .p-home__cta .campaign-bnr a {
    margin-bottom: 40px;
  }
}

.p-home__news {
  position: relative;
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
}

.p-home__news:before {
  position: absolute;
}

.p-home__news .ttl-box {
  display: flex;
  align-items: end;
}

.p-home__news .p-home__h2 {
  line-height: 1;
}

.p-home__news .p-home__news__swiper {
  margin-right: -3px;
  padding-right: 3px;
}

.p-home__news .p-home__news__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.p-home__news .p-home__news__swiper-wrapper {
  margin-top: 1.875em;
}

.c-card-news {
  position: relative;
  padding-bottom: 45px;
}

.c-card-news a {
  display: block;
  height: 100%;
}

.c-card-news a.not-link {
  pointer-events: none;
}

.p-home__news .news-listlink,
.c-card-news__body .more-txt {
  display: block;
  line-height: 1;
  font-size: 14px;
  letter-spacing: 0.14em;
  transition: all 0.4s;
  padding: 0 26px 10px 114px;
}

.p-home__news .news-listlink {
  position: relative;
  margin: 0 0 10px 32px;
}

.c-card-news__body .more-txt {
  position: absolute;
  bottom: 0;
  right: 0;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
}

.c-card-news__body .more-txt:before,
.news-listlink:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 180px;
  height: 11px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="180.407" height="10.791" viewBox="0 0 180.407 10.791"><path id="arrow" d="M-1421.436-3206.5h-180v-1h179.029l-6.576-9.209.814-.581,7.141,10-.407.291Z" transform="translate(1601.436 3217.29)" fill="%23b5b5b6"/></svg>');
  background-repeat: no-repeat;
  transition: all 0.4s;
  z-index: 501;
}

.c-card-news a:hover .more-txt:before,
.news-listlink:hover:before {
  right: -10px;
}

.c-card-news a img {
  transition: all 0.4s;
}

.c-card-news a:hover figure img {
  opacity: 0.7;
}

.p-home__news .swiper {
  overflow: visible;
}

.p-home__news {
  position: relative;
  overflow-x: hidden;
}

@media screen and (max-width: 768px) {
  .p-home__news .p-home__news__swiper-wrapper {
    margin-top: 1.25em;
  }

  .p-home__news .news-listlink {
    padding: 0 26px 7px;
    margin: 0 0 0 20px;
  }

  .p-home__news .news-listlink:before {
    width: 80px;
    height: 11px;
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="80.407" height="10.377" viewBox="0 0 80.407 10.377"><path d="M172.568,10.087h-80v-1H171.6l-6.281-8.8.814-.581L172.975,9.3l-.407.291Z" transform="translate(-92.568 0.291)" fill="%23b5b5b6"/></svg>');
    background-repeat: no-repeat;
  }

  .p-home__news .c-card-news__body .more-txt:before {
    width: min(172px, 45.87vw);
    height: min(11px, 2.93vw);
    background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="172.975" height="10.378" viewBox="0 0 172.975 10.378"><path d="M172.568,10.087H0v-1H171.6l-6.281-8.8.814-.581L172.975,9.3l-.407.291Z" transform="translate(0 0.291)" fill="%23b5b5b6"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
  }

  .p-home__news:before,
  .p-home__news:after {
    display: none;
  }
}

/* facility */
.top .facility-wrapper {
  width: 100%;
  max-width: 1232px;
  padding: 0 16px;
  margin: 160px auto 0;
}

.top .facility-box {
  position: relative;
  margin-top: 30px;
}

.top .facility-box .swiper-wrapper {
  transition-timing-function: linear;
}

@media screen and (min-width: 769px) {
  .top .facility-box:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc((100vw - 1200px) / 2);
    min-width: 100px;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(0, 0, 28, 1), rgba(0, 0, 28, 0));
    z-index: 10;
  }

  .top .facility-box:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: calc((100vw - 1200px) / 2);
    min-width: 100px;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(0, 0, 28, 0), rgba(0, 0, 28, 1));
    z-index: 10;
  }
}

.top .facility-list figure {
  padding: 0 20px;
}

.top .facility-list img {
  height: auto;
  width: 100%;
}

.top .facility-list figcaption {
  font-size: min(24px, 2vw);
  line-height: 1.25;
  margin-top: 12px;
  letter-spacing: 0.18em;
}

@media screen and (max-width: 768px) {
  .top .facility-wrapper {
    margin-top: 70px;
  }

  .top .facility-box {
    margin-top: 20px;
  }

  .top .facility-list figure {
    padding: 0 16px;
  }

  .top .facility-list figcaption {
    font-size: clamp(12px, 3.73vw, 14px);
    margin-top: 7px;
  }
}

.p-home__info {
  width: 100%;
  max-width: 1232px;
  padding-right: 16px;
  padding-left: 16px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 1920px;
  margin-right: auto;
  margin-left: auto;
}

.p-home__info .p-home__info__inner {
  display: flex;
  gap: 100px;
}

@media screen and (max-width: 1232px) {
  .p-home__info .p-home__info__inner {
    gap: 8.33%;
  }
}

@media screen and (max-width: 768px) {
  .p-home__info .p-home__info__inner {
    display: block;
  }
}

.p-home__info__map {
  width: calc(50% - 100px + 16px);
  margin-left: -16px;
}

@media screen and (max-width: 1232px) {
  .p-home__info__map {
    width: calc(41.67% + 16px);
  }
}

@media screen and (max-width: 768px) {
  .p-home__info__map {
    width: 100%;
    height: 236px;
    margin-top: 20px;
    margin-left: auto;
  }

  .p-home__info__map iframe {
    height: 236px;
  }
}

.p-home__info__map iframe {
  width: 100%;
  height: calc(100% - 60px);
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

@media screen and (max-width: 768px) {
  .p-home__info__map iframe {
    height: 100%;
  }
}

.p-home__info__cont {
  width: 50%;
  max-width: 600px;
}

@media screen and (max-width: 768px) {
  .p-home__info__cont {
    max-width: none;
    width: 100%;
    margin-top: 20px;
  }
}

.p-home__info__cont table {
  width: 100%;
  margin-top: 1.875rem;
}

@media screen and (max-width: 768px) {
  .p-home__info__cont table {
    margin-top: 1.25rem;
  }
}

.p-home__info__cont table tr:first-of-type th,
.p-home__info__cont table tr:first-of-type td {
  padding-top: 0;
}

.p-home__info__cont table th,
.p-home__info__cont table td {
  padding: 1.25rem 0.9375rem;
  font-size: clamp(14px, 1.2987012987vw, 16px);
  letter-spacing: 0.13em;
  line-height: 1.25;
}

@media screen and (max-width: 768px) {

  .p-home__info__cont table th,
  .p-home__info__cont table td {
    padding: 0.625rem 0;
    line-height: 1.42;
  }
}

.p-home__info__cont table th {
  padding-left: 10px;
  padding-right: 0;
  width: 140px;
  border-bottom: 1px solid #fff;
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .p-home__info__cont table th {
    width: 105px;
    padding-left: 0;
  }
}

.p-home__info__cont table td {
  padding-right: 0.625em;
  width: calc(100% - 140px);
  border-bottom: 1px solid #b5b5b6;
  word-break: break-all;
}

@media screen and (max-width: 768px) {
  .p-home__info__cont table td {
    width: calc(100% - 105px);
    padding-left: 7px;
    padding-right: 0;
  }
}

.p-home__info__cont table a {
  position: relative;
}

.p-home__info__cont table a::before {
  position: absolute;
  content: "";
  display: block;
  height: 1px;
  width: 0%;
  bottom: 0px;
  left: 0;
  background: #fff;
  transition: 0.3s;
}

.p-home__info__cont table a:hover::before,
.p-home__info__cont table a:active::before {
  width: 100%;
}

.p-home__info__cont p {
  margin-top: 1.25rem;
  padding-left: 1em;
  text-indent: -1em;
  font-size: clamp(14px, 1.2987012987vw, 16px);
  letter-spacing: 0.13em;
  line-height: 1.25;
}

/* Object > Project
 * 接頭辞：p-
 * 再利用できるパターンとしてComponentの集合体を定義
 * もしくはComponentとするには大きすぎるObject（4階層構造以上を目安）を定義
======================================*/
/****** ナビゲーション ******/
/****** TOPページ ******/
.c-btn-def {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 640px;
  max-width: 100%;
  background: #fff;
  color: #00001c;
  font-size: clamp(20px, 2.5974025974vw, 32px);
  letter-spacing: 0.36rem;
  padding: 2.0625rem 3.125rem 2.1875rem;
  border-radius: 50px;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .c-btn-def {
    padding: 0.875rem 1.25rem 1rem;
    letter-spacing: 0.27rem;
  }
}

.c-btn-def:hover,
.c-btn-def:active {
  opacity: 0.5;
}

.c-btn-def .svg {
  position: absolute;
  top: 50%;
  right: clamp(21px, 4.1396103896vw, 51px);
  width: clamp(26px, 2.8814935065vw, 35.5px);
  height: 9px;
  transform: translateY(-50%);
  transition: 0.3s;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="35.87" height="9.656"><path fill="%2300001c" d="M35.462 9.656H0v-1h34.491L28.725.581 29.539 0l6.33 8.866-.407.291Z"/></svg>');
}

.c-btn-top {
  position: fixed;
  bottom: 50px;
  right: 20px;
  z-index: 999;
  opacity: 0;
  transition: 1s;
  filter: blur(6px);
}

.c-btn-top.is-active {
  opacity: 1;
  filter: blur(0);
}

@media screen and (max-width: 768px) {
  .c-btn-top {
    bottom: 90px;
  }
}

.c-btn-top .layer {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
  height: calc(100% + clamp(27px, 3.8149350649vw, 47px));
  top: unset;
  bottom: 0;
}

@media screen and (min-width: 769px) {

  .c-btn-top .layer:hover,
  .c-btn-top .layer:active {
    height: calc(100% + clamp(42px, 5.5194805195vw, 68px));
  }

  .c-btn-top .layer:hover~.circle::before,
  .c-btn-top .layer:active~.circle::before {
    bottom: 100%;
  }
}

.c-btn-top .circle {
  position: relative;
  display: block;
  width: clamp(30px, 3.4090909091vw, 42px);
  height: clamp(30px, 3.4090909091vw, 42px);
  border: 1px solid #fff;
  border-radius: 50px;
}

.c-btn-top .circle::before {
  position: absolute;
  content: "";
  display: block;
  bottom: 50%;
  left: 3px;
  width: 18px;
  height: 68px;
  width: clamp(11px, 1.461038961vw, 18px);
  height: clamp(42px, 5.5194805195vw, 68px);
  transition: 0.3s;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="17.656" height="67.87"><path fill="%23fff" d="M17.656.407v67.462h-1V1.378L.581 12.856 0 12.042 16.866 0l.291.407Z" data-name="グループ 92796"/></svg>');
}

@media screen and (max-width: 768px) {
  .c-btn-top .circle::before {
    left: 4px;
  }
}

.c-btn-top .txt {
  margin-top: 1em;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  text-align: center;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .c-btn-top .txt {
    letter-spacing: 0.09rem;
  }
}

@media screen and (min-width: 769px) {
  .c-btn-special {
    position: fixed;
    color: #00001c;
    right: 0;
    max-width: 60px;
    bottom: 300px;
    /* bottom: 204px; */
    z-index: 444;
    opacity: 0;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.4);
    display: none;
  }

  .c-btn-special.is-active {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0);
    transition: 1.5s ease-in-out;
  }

  .c-btn-special .c-btn-special__wrapper li {
    width: 100%;
    border-bottom: 1px solid #00001c;
  }

  .c-btn-special .c-btn-special__wrapper li:last-child {
    border-bottom: none;
  }

  .c-btn-special .c-btn-special__wrapper a {
    display: block;
    width: 60px;
    height: 160px;
    background: #fff;
    color: #00001c;
    text-align: center;
    letter-spacing: 0.22em;
    padding: 0 16px;
    line-height: 1;
    font-size: 14px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    transition: all 0.25s;
  }

  .c-btn-special .c-btn-special__wrapper a:hover {
    opacity: 0.7;
  }

  .c-btn-special .c-btn-special__wrapper a span {
    font-size: 12px;
    letter-spacing: 0.12em;
    font-family: "itc-avant-garde-gothic-pro", sans-serif;
    text-align: center;
    line-height: 1;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }

  .c-btn-special .c-btn-special__wrapper li:last-child a {
    padding: 0 20px;
  }
}

@media screen and (max-width: 768px) {
  .c-btn-special {
    position: fixed;
    color: #00001c;
    background: #fff;
    width: 100%;
    right: 0;
    bottom: 0;
    z-index: 444;
    opacity: 0;
  }

  .c-btn-special.is-active {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0);
    transition: 1.5s ease-in-out;
    /* animation: blur 1s ease-in-out 1.5s forwards; */
  }

  .c-btn-special .c-btn-special__wrapper ul {
    display: flex;
  }

  .c-btn-special .c-btn-special__wrapper li {
    display: flex;
    align-items: center;
    width: calc(100% / 2);
    height: 60px;
    border-right: 1px solid #00001c;
  }

  .c-btn-special .c-btn-special__wrapper li:last-child {
    border-right: none;
  }

  .c-btn-special .c-btn-special__wrapper a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    max-height: 60px;
    background: #fff;
    color: #00001c;
    text-align: center;
    letter-spacing: 0.1em;
    padding: 16px 0;
    line-height: 1;
    font-size: clamp(11px, 3.73vw, 11px);
  }

  .c-btn-special .c-btn-special__wrapper a span {
    display: block;
    width: 100%;
    font-size: clamp(9px, 3.73vw, 9px);
    letter-spacing: 0.12em;
    font-family: "itc-avant-garde-gothic-pro", sans-serif;
    text-align: center;
  }

  .c-btn-special .c-btn-special__wrapper a img {
    width: min(28px, 7.47vw);
    margin-right: 10px;
  }
}

.c-card-news {
  position: relative;
  display: flex;
  flex-direction: column;
  height: unset;
}

.c-card-news a.layer {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
}

.c-card-news a.layer:hover~figure,
.c-card-news a.layer:active~figure {
  opacity: 0.7;
}

.c-card-news a.layer:hover~.c-card-news__body .c-card-news__more .svg,
.c-card-news a.layer:active~.c-card-news__body .c-card-news__more .svg {
  right: -3px;
}

.c-card-news figure {
  display: block;
  position: relative;
  width: 100%;
  padding-bottom: 61.11%;
  transition: 0.3s;
}

.c-card-news figure img {
  width: auto;
  height: auto;
  max-width: inherit;
  max-height: 100%;
  transition: all 0.2s ease;
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
}

.c-card-news__body {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.c-card-news__body .c-card-news__txt {
  margin-top: 0.9375rem;
  letter-spacing: 0.18em;
  line-height: 1.25;
  font-size: clamp(14px, 1.2987012987vw, 16px);
}

.c-card-news__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 1.25em;
}

.c-card-news__meta__cat {
  display: block;
  text-align: center;
  padding: 0 18px;
  border-radius: 50px;
  background: #b5b5b6;
  color: #00001c;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  letter-spacing: 0.18em;
  margin-right: 16px;
  max-width: 280px;
}

.c-card-news__meta__date {
  font-size: clamp(12px, 1.1363636364vw, 14px);
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.12em;
  color: #b5b5b6;
}

.c-card-news__more {
  position: relative;
  margin-top: auto;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  color: #b5b5b6;
  text-align: right;
  padding-right: 1.5625rem;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  letter-spacing: 0.12em;
}

.c-card-news__more .svg {
  position: absolute;
  display: inline-block;
  bottom: 0;
  right: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  height: 11px;
  width: 180px;
  background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="180.407" height="10.791"><path fill="%23b5b5b6" d="M180 10.79H0v-1h179.029L172.453.581l.814-.581 7.141 10-.407.291Z"/></svg>');
  transition: 0.3s;
}

/* Object > Component
 * 接頭辞：c-
 * 再利用できるパターンとして最小単位のモジュールを定義
======================================*/
/****** ボタン ******/
/****** カード ******/
@media screen and (min-width: 1025px) {
  .md {
    display: none !important;
  }

  .sm {
    display: none !important;
  }

  .smmd {
    display: none !important;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .lg {
    display: none !important;
  }

  .sm {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .lg {
    display: none !important;
  }

  .md {
    display: none !important;
  }

  .mdlg {
    display: none !important;
  }
}

.has-scrollbar .p--home__3set__cont {
  margin-right: calc(50% - 50vw + var(--scroll-bar-width) / 2);
  margin-left: calc(50% - 50vw + var(--scroll-bar-width) / 2);
}

.p-home__news__swiper .swiper-button-prev,
.p-home__news__swiper .swiper-button-next {
  position: unset;
  margin-top: unset;
  width: 48px;
  height: 48px;
  border-radius: 50px;
  border: 1px solid #fff;
  transition: 0.3s;
}

@media screen and (min-width: 769px) {
  .p-home__news__swiper .swiper-button-next svg {
    margin-right: -4px;
  }
}

@media screen and (max-width: 768px) {

  .p-home__news__swiper .swiper-button-prev,
  .p-home__news__swiper .swiper-button-next {
    width: 28px;
    height: 28px;
  }

  .p-home__news__swiper .swiper-button-prev svg,
  .p-home__news__swiper .swiper-button-next svg {
    width: 5px;
    height: 9px;
  }
}

.p-home__news__swiper .swiper-button-prev svg line,
.p-home__news__swiper .swiper-button-next svg line {
  transition: 0.3s;
}

.p-home__news__swiper .swiper-button-prev::after,
.p-home__news__swiper .swiper-button-next::after {
  content: none;
}

.p-home__news__swiper .swiper-button-prev:hover,
.p-home__news__swiper .swiper-button-prev:active,
.p-home__news__swiper .swiper-button-next:hover,
.p-home__news__swiper .swiper-button-next:active {
  background: #fff;
}

.p-home__news__swiper .swiper-button-prev:hover svg line,
.p-home__news__swiper .swiper-button-prev:active svg line,
.p-home__news__swiper .swiper-button-next:hover svg line,
.p-home__news__swiper .swiper-button-next:active svg line {
  stroke: #00001c;
}

.p-home__news__swiper .swiper-button-prev svg {
  transform: rotate(180deg);
}

.p-home__news__swiper .swiper-controller {
  display: flex;
  gap: 0 26px;
}

@media screen and (max-width: 768px) {
  .p-home__news__swiper .swiper-controller {
    gap: 32px;
  }
}

.is-hide {
  display: none !important;
}

/* Utility
 * 接頭辞：u-
======================================*/
/****** その他 ******/
/* Global
 * 変数、関数、mixinを定義
 * サイト全体のデフォルトスタイルを管理
======================================*/
/* Foundation
 * サイト全体のデフォルトスタイルを管理
======================================*/
/* Layout
 * 接頭辞：l-
 * 各ページを構成する大枠のエリアに対するレイアウトを定義
======================================*/
/* Object > Project
 * 接頭辞：p-
 * 再利用できるパターンとしてComponentの集合体を定義
 * もしくはComponentとするには大きすぎるObject（4階層構造以上を目安）を定義
======================================*/
/* Object > Component
 * 接頭辞：c-
 * 再利用できるパターンとして最小単位のモジュールを定義
======================================*/
/* Utility
 * 接頭辞：u-
======================================*/

/* lower */
/* ============================================ */
.cont_wrapper {
  width: 100%;
  max-width: 1232px;
  padding: 60px 16px 0;
  margin: 0 auto;
}

.cont_wrapper img {
  max-width: 100%;
  height: auto;
}

.cont_wrapper br.sp,
.cont_wrapper .spImg {
  display: none;
}

@media screen and (max-width: 768px) {
  .cont_wrapper {
    padding-top: 27px;
  }

  .cont_wrapper br.pc,
  .cont_wrapper .pcImg {
    display: none;
  }

  .cont_wrapper br.sp {
    display: block;
  }

  .cont_wrapper .spImg {
    display: inline;
  }
}

/* パンくず */
.cont_wrapper .pan {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
}

.cont_wrapper .pan li,
.cont_wrapper .pan li a {
  color: #b5b5b6;
  letter-spacing: 0.22em;
}

.cont_wrapper .pan li:not(:first-child) {
  position: relative;
  padding-left: 47px;
}

.cont_wrapper .pan li:not(:first-child)::after {
  content: "";
  display: block;
  position: absolute;
  left: 20px;
  top: 50%;
  width: 7px;
  height: 7px;
  border: solid #b5b5b6;
  border-width: 0 1px 1px 0;
  transform: translateY(-50%) rotate(-45deg);
}

@media screen and (max-width: 768px) {

  .cont_wrapper .pan li,
  .cont_wrapper .pan li a {
    color: #fff;
    font-size: 12px;
    letter-spacing: 0.18em;
  }

  .low-newsdetail .cont_wrapper .pan li:last-child {
    display: none;
  }

  .not404.low-newsdetail .cont_wrapper .pan li:last-child {
    display: block;
  }
}

/* 下層タイトル */
.cont_wrapper h1:not(.wp-block-heading) {
  line-height: 1.25;
  margin-bottom: 30px;
  font-size: 56px;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.18em;
}

@media screen and (max-width: 768px) {
  .cont_wrapper h1:not(.wp-block-heading) {
    margin-bottom: 20px;
    font-size: 28px;
  }
}

/* アンカーナビ */
.ancNavBox {
  margin-bottom: 80px;
}

.ancNavBox .txt {
  line-height: 1.25;
  margin-bottom: 15px;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.18em;
}

.ancNavBox .ancNav {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
}

.ancNavBox .ancNav li {
  min-width: 220px;
  border-bottom: 1px solid #fff;
}

.ancNavBox .ancNav li a {
  display: block;
  position: relative;
  padding: 20px 60px 30px 20px;
  letter-spacing: 0.22em;
}

.ancNavBox .ancNav li a:after {
  content: "";
  display: block;
  position: absolute;
  right: 20px;
  top: calc(50% - 10px);
  width: 10px;
  height: 10px;
  border: solid #fff;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
  transition: top 0.3s;
}

.ancNavBox .ancNav li a:hover:after {
  top: 50%;
}

@media screen and (max-width: 768px) {
  .ancNavBox {
    margin-bottom: 68px;
  }

  .ancNavBox .txt {
    display: none;
  }

  .ancNavBox .ancNav {
    gap: 10px;
    justify-content: flex-start;
  }

  .ancNavBox .ancNav li {
    display: flex;
    align-items: center;
    width: calc(50% - 5px);
    min-width: auto;
  }

  .ancNavBox .ancNav li a {
    width: 100%;
    padding: 20px 15px 20px 5px;
    font-size: 12px;
    letter-spacing: 0.18em;
  }

  .ancNavBox .ancNav li a:after {
    right: 5px;
    top: calc(50% - 3px);
    width: 7px;
    height: 7px;
  }
}

/* contents */
/* ============================================ */
.low-contents .contents-sec {
  position: relative;
}

.low-contents .contents-sec .ancPos {
  position: absolute;
  top: 0;
}

.low-contents .contents-sec+.contents-sec {
  margin-top: 130px;
}

.low-contents .contents-sec .ttl-box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

.low-contents .ttl-box h2 {
  line-height: 1.25;
  font-size: 28px;
  letter-spacing: 0.18em;
}

.low-contents .ttl-box ul {
  display: flex;
  align-items: center;
}

.low-contents .ttl-box li+li {
  margin-left: 20px;
}

.low-contents .ttl-box li a {
  position: relative;
  display: block;
  padding: 12px 80px 12px 60px;
  background: #b5b5b6;
  border: 1px solid #fff;
  border-radius: 100px;
  color: #00001c;
  transition: all 0.25s;
}

.low-contents .ttl-box li a:hover {
  opacity: 0.5;
}

.low-contents .ttl-box li a:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 32px;
  margin: auto;
  width: 23px;
  height: 6px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="23.099" height="6.332" viewBox="0 0 23.099 6.332"><path d="M22.164,6.041H0v-1H21.193L17.8.291l.814-.581,3.957,5.541.528.791Z" transform="translate(0 0.291)" fill="%2300001c"/></svg>') no-repeat;
  background-size: contain;
}

.low-contents .contents-gallery {
  position: relative;
  margin-top: 20px;
}

@media screen and (min-width: 769px) {
  .low-contents .contents-gallery:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: calc((100vw - 1200px) / 2);
    min-width: 100px;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(0, 0, 28, 1), rgba(0, 0, 28, 0));
    z-index: 100;
  }

  .low-contents .contents-gallery:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: calc((100vw - 1200px) / 2);
    min-width: 100px;
    height: 100%;
    background-image: linear-gradient(90deg, rgba(0, 0, 28, 0), rgba(0, 0, 28, 1));
    z-index: 100;
  }
}

.low-contents .swiper-wrapper {
  transition-timing-function: linear;
}

.low-contents .contents-gallery figure {
  padding: 0 20px;
}

.low-contents .contents-gallery img {
  height: auto;
  width: 100%;
}

.low-contents .contents-sec .cont_wrapper {
  padding-top: 0;
}

.low-contents .contents-sec .txt-box {
  margin-top: 40px;
}

.low-contents .contents-sec .txt-box dd+dt,
.low-contents .contents-sec .txt-box dd+dt+dd {
  margin-top: 60px;
}

.low-contents .contents-sec .txt-box dl {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.low-contents .contents-sec .txt-box dt {
  position: relative;
  width: 30.67%;
  height: 60px;
  font-weight: unset;
}

.low-contents .contents-sec .txt-box dt::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.low-contents .contents-sec .txt-box dt:nth-of-type(1)::before {
  width: 48px;
  height: 42px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="48.216" height="42.896" viewBox="0 0 48.216 42.896"><path d="M29.4-27.608c0-9.408-6.608-14.56-13.888-14.56-7.392,0-13.888,5.32-13.888,14.5v12.936C1.624-4.368,7.84.728,15.512.728c7.616,0,13.888-5.1,13.888-15.4Zm-4.144,12.6c0,9.464-5.1,11.984-9.744,11.984-4.816,0-9.744-2.688-9.744-12.208V-26.6c0-8.9,5.6-11.816,9.632-11.816,4.2,0,9.856,2.632,9.856,11.816ZM49.84,0V-41.44H38.584v3.752H45.7V0Z" transform="translate(-1.624 42.168)" fill="%23fff"/></svg>') no-repeat;
  background-size: contain;
}

.low-contents .contents-sec .txt-box dt:nth-of-type(2)::before {
  width: 58px;
  height: 42px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="58.184" height="42.896"><path fill="%23fff" d="M27.776 14.56C27.776 5.152 21.168 0 13.888 0 6.496 0 0 5.32 0 14.5v12.936c0 10.364 6.216 15.46 13.888 15.46 7.616 0 13.888-5.1 13.888-15.4Zm-4.144 12.6c0 9.464-5.1 11.984-9.744 11.984-4.816 0-9.744-2.688-9.744-12.208V15.568c0-8.9 5.6-11.816 9.632-11.816 4.2 0 9.856 2.632 9.856 11.816ZM57.96 42.168v-3.752H37.24l13.328-12.712c4.032-3.864 7.616-7.448 7.616-13.048A12.788 12.788 0 0 0 45.304 0c-6.608 0-13.328 4.2-13.328 14.112h4.144c.168-6.552 3.584-10.36 8.96-10.36a8.99 8.99 0 0 1 8.96 8.792c0 3.416-2.24 6.5-5.1 9.24l-17.3 16.632v3.752Z"/></svg>') no-repeat;
  background-size: contain;
}

.low-contents .contents-sec .txt-box dt:nth-of-type(3)::before {
  width: 57px;
  height: 42px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="57.736" height="42.896"><path fill="%23fff" d="M27.776 14.56C27.776 5.152 21.168 0 13.888 0 6.496 0 0 5.32 0 14.5v12.936c0 10.364 6.216 15.46 13.888 15.46 7.616 0 13.888-5.1 13.888-15.4Zm-4.144 12.6c0 9.464-5.1 11.984-9.744 11.984-4.816 0-9.744-2.688-9.744-12.208V15.568c0-8.9 5.6-11.816 9.632-11.816 4.2 0 9.856 2.632 9.856 11.816Zm19.712-6.776c6.216 0 10.248 4.312 10.248 9.24 0 5.432-3.584 9.52-8.9 9.52-4.7 0-8.96-3.36-9.24-9.968h-4.148c.224 9.3 7 13.72 13.44 13.72 7.616 0 12.992-6.216 12.992-13.5a12.573 12.573 0 0 0-7-10.976c2.968-2.3 4.256-4.648 4.256-7.784A10.356 10.356 0 0 0 44.52-.004c-5.88 0-10.248 4.48-10.472 11.088h4.144c.056-4.424 2.632-7.336 6.216-7.336a6.265 6.265 0 0 1 6.44 6.552c0 4.032-3.248 6.5-7.5 6.5-.168 0-.392 0-1.624-.056v3.64Z"/></svg>') no-repeat;
  background-size: contain;
}

.low-contents .contents-sec .txt-box h3 {
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: clamp(20px, 2vw, 24px);
  margin-left: 82px;
  line-height: 1.25;
  letter-spacing: 0.18em;
}

.low-contents .contents-sec .txt-box dd {
  width: 66.67%;
}

.low-contents .contents-sec .txt-box p {
  font-size: 16px;
  line-height: 1.875;
  letter-spacing: 0.22em;
}

@media screen and (min-width: 769px) {
  .low-contents .contents-sec dt .toggle {
    display: none;
  }
}

@media screen and (max-width: 768px) {

  /* .low-contents .contents-sec .ancPos {
    top: -87px;
  } */
  .low-contents .contents-sec+.contents-sec {
    margin-top: 60px;
  }

  .low-contents .ttl-box h2 {
    font-size: 20px;
  }

  .low-contents .contents-gallery {
    margin-top: 15px;
  }

  .low-contents .contents-gallery figure {
    padding: 0 16px;
  }

  .low-contents .contents-sec .txt-box dl {
    display: block;
  }

  .low-contents .contents-sec .txt-box dt {
    display: flex;
    position: relative;
    width: 100%;
    background-color: #b5b5b6;
    padding: 20px 50px 20px 20px;
    border-radius: 10px;
    color: #000;
    pointer-events: all;
    height: auto;
  }

  .low-contents .contents-sec .txt-box dd+dt {
    margin-top: 40px;
  }

  .low-contents .contents-sec .txt-box dd,
  .low-contents .contents-sec .txt-box dd+dt+dd {
    width: 100%;
    margin-top: 20px;
    padding: 0 16px;
  }

  .low-contents .contents-sec .txt-box dt:before {
    position: static;
    transform: none;
    margin-top: 5px;
  }

  .low-contents .contents-sec .txt-box dt:nth-of-type(1)::before {
    width: 29px;
    height: 21px;
    background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="48.216" height="42.896" viewBox="0 0 48.216 42.896"><path d="M29.4-27.608c0-9.408-6.608-14.56-13.888-14.56-7.392,0-13.888,5.32-13.888,14.5v12.936C1.624-4.368,7.84.728,15.512.728c7.616,0,13.888-5.1,13.888-15.4Zm-4.144,12.6c0,9.464-5.1,11.984-9.744,11.984-4.816,0-9.744-2.688-9.744-12.208V-26.6c0-8.9,5.6-11.816,9.632-11.816,4.2,0,9.856,2.632,9.856,11.816ZM49.84,0V-41.44H38.584v3.752H45.7V0Z" transform="translate(-1.624 42.168)" fill="%2300001C"/></svg>') no-repeat;
    background-size: contain;
  }

  .low-contents .contents-sec .txt-box dt:nth-of-type(2)::before {
    width: 34px;
    height: 21px;
    background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="58.184" height="42.896"><path fill="%2300001C" d="M27.776 14.56C27.776 5.152 21.168 0 13.888 0 6.496 0 0 5.32 0 14.5v12.936c0 10.364 6.216 15.46 13.888 15.46 7.616 0 13.888-5.1 13.888-15.4Zm-4.144 12.6c0 9.464-5.1 11.984-9.744 11.984-4.816 0-9.744-2.688-9.744-12.208V15.568c0-8.9 5.6-11.816 9.632-11.816 4.2 0 9.856 2.632 9.856 11.816ZM57.96 42.168v-3.752H37.24l13.328-12.712c4.032-3.864 7.616-7.448 7.616-13.048A12.788 12.788 0 0 0 45.304 0c-6.608 0-13.328 4.2-13.328 14.112h4.144c.168-6.552 3.584-10.36 8.96-10.36a8.99 8.99 0 0 1 8.96 8.792c0 3.416-2.24 6.5-5.1 9.24l-17.3 16.632v3.752Z"/></svg>') no-repeat;
    background-size: contain;
  }

  .low-contents .contents-sec .txt-box dt:nth-of-type(3)::before {
    width: 33px;
    height: 21px;
    background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="57.736" height="42.896"><path fill="%2300001C" d="M27.776 14.56C27.776 5.152 21.168 0 13.888 0 6.496 0 0 5.32 0 14.5v12.936c0 10.364 6.216 15.46 13.888 15.46 7.616 0 13.888-5.1 13.888-15.4Zm-4.144 12.6c0 9.464-5.1 11.984-9.744 11.984-4.816 0-9.744-2.688-9.744-12.208V15.568c0-8.9 5.6-11.816 9.632-11.816 4.2 0 9.856 2.632 9.856 11.816Zm19.712-6.776c6.216 0 10.248 4.312 10.248 9.24 0 5.432-3.584 9.52-8.9 9.52-4.7 0-8.96-3.36-9.24-9.968h-4.148c.224 9.3 7 13.72 13.44 13.72 7.616 0 12.992-6.216 12.992-13.5a12.573 12.573 0 0 0-7-10.976c2.968-2.3 4.256-4.648 4.256-7.784A10.356 10.356 0 0 0 44.52-.004c-5.88 0-10.248 4.48-10.472 11.088h4.144c.056-4.424 2.632-7.336 6.216-7.336a6.265 6.265 0 0 1 6.44 6.552c0 4.032-3.248 6.5-7.5 6.5-.168 0-.392 0-1.624-.056v3.64Z"/></svg>') no-repeat;
    background-size: contain;
  }

  .low-contents .contents-sec .txt-box h3 {
    position: static;
    transform: none;
    font-size: 18px;
    line-height: 1.5;
    margin-left: 16px;
  }

  .low-contents .contents-sec .txt-box p {
    font-size: 14px;
    line-height: 1.71;
  }

  .low-contents .contents-sec dt .toggle {
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    width: 15px;
    height: 15px;
  }

  .low-contents .contents-sec dt .toggle:before,
  .low-contents .contents-sec dt .toggle:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #000;
  }

  .low-contents .contents-sec dt .toggle:after {
    display: none;
    transform: rotate(90deg);
  }

  .low-contents .contents-sec dt.close .toggle:after {
    display: block;
  }

  .low-contents .contents-sec .link-box {
    display: flex;
    justify-content: center;
    gap: 0 15px;
    margin-top: 20px;
  }

  .low-contents .contents-sec .link-box li {
    width: calc((100% - 15px) / 2);
  }

  .low-contents .contents-sec .link-box li {
    width: auto;
    min-width: 153px;
  }

  .low-contents .contents-sec .link-box a {
    position: relative;
    display: block;
    font-size: 14px;
    padding: 10px 16px;
    background: #b5b5b6;
    border: 1px solid #fff;
    border-radius: 100px;
    color: #00001c;
    transition: all 0.25s;
    text-align: center;
  }
}

/* NEWS LIST */
/* ============================================ */
.low-newslist .filter {
  margin-bottom: 40px;
}

.low-newslist .filter ul {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.low-newslist .filter a {
  display: inline-block;
  padding: 8px 28px;
  border: 1px solid #fff;
  color: #fff;
  border-radius: 10px;
  font-size: 14px;
  letter-spacing: 0.18em;
  transition: all 0.25s;
}

.low-newslist .filter a:hover {
  background: rgba(255, 255, 255, 0.2);
}

.low-newslist .filter a.current {
  background: #fff;
  color: #00001c;
}

.low-newslist .news-list {
  display: flex;
  flex-wrap: wrap;
}

.low-newslist .news-list>div {
  margin-right: 60px;
  margin-bottom: 80px;
}

.low-newslist .nav-links {
  margin-top: 40px;
  width: 100%;
}

.low-newslist .nav-links ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

.low-newslist .nav-links ul li {
  margin: 0 5px;
  font-size: 18px;
}

.low-newslist .nav-links ul li:first-child {
  margin-right: 40px;
}

.low-newslist .nav-links ul li:last-child {
  margin-left: 40px;
}

.low-newslist .nav-links ul li .page-numbers {
  display: block;
  text-align: center;
  padding: 17px 0 13px;
  width: 48px;
  background: #00001c;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  line-height: 1;
  border-radius: 100px;
}

.low-newslist .nav-links ul li .dots {
  position: relative;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.low-newslist .nav-links ul li .dots:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 19px;
  height: 3px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="19" height="3" viewBox="0 0 19 3"><g transform="translate(-1445 -1936.242)"><circle cx="1.5" cy="1.5" r="1.5" transform="translate(1461 1936.242)" fill="%23fff"/><circle cx="1.5" cy="1.5" r="1.5" transform="translate(1453 1936.242)" fill="%23fff"/><circle cx="1.5" cy="1.5" r="1.5" transform="translate(1445 1936.242)" fill="%23fff"/></g></svg>') no-repeat;
  background-size: contain;
}

.low-newslist .nav-links ul li a.page-numbers:hover,
.low-newslist .nav-links ul li .current {
  background: #4d4d61;
}

.low-newslist .nav-links ul li .prev,
.low-newslist .nav-links ul li .next {
  position: relative;
  height: 48px;
  border: 1px solid #fff;
}

.low-newslist .nav-links ul li a.prev:hover,
.low-newslist .nav-links ul li a.next:hover {
  background: #fff;
}

.low-newslist .nav-links ul li .prev.pager-non,
.low-newslist .nav-links ul li .next.pager-non {
  pointer-events: none;
  opacity: 0.35;
}

.low-newslist .nav-links ul li a.prev:before,
.low-newslist .nav-links ul li a.next:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 7px;
  height: 14px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="15.414" viewBox="0 0 8.414 15.414"><g id="arrow_S" transform="translate(0.707 0.707)"><line x2="7" y2="7" fill="none" stroke="%23fff" stroke-linecap="square" stroke-width="1"/><line y1="7" x2="7" transform="translate(0 7)" fill="none" stroke="%23fff" stroke-linecap="square" stroke-width="1"/></g></svg>') no-repeat;
  background-size: contain;
  transition: all 0.25s;
}

.low-newslist .nav-links ul li a.prev:before {
  transform: rotate(180deg);
}

.low-newslist .nav-links ul li a.prev:hover:before,
.low-newslist .nav-links ul li a.next:hover:before {
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="8.414" height="15.414" viewBox="0 0 8.414 15.414"><g id="arrow_S" transform="translate(0.707 0.707)"><line x2="7" y2="7" fill="none" stroke="%2300001C" stroke-linecap="square" stroke-width="1"/><line y1="7" x2="7" transform="translate(0 7)" fill="none" stroke="%2300001C" stroke-linecap="square" stroke-width="1"/></g></svg>') no-repeat;
  background-size: contain;
}

@media screen and (min-width: 1026px) {
  .low-newslist .news-list>div {
    width: calc((100% - 120px) / 3);
  }

  .low-newslist .news-list>div:nth-child(3n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 1025px) {
  .low-newslist .news-list>div {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
    margin-bottom: 40px;
  }

  .low-newslist .news-list>div:nth-child(2n) {
    margin-right: 0;
  }
}

@media screen and (max-width: 640px) {
  .low-newslist .news-list>div {
    width: 100%;
    margin-right: 0;
  }

  .low-newslist .filter ul {
    gap: 10px;
  }

  .low-newslist .filter a {
    padding: 12px 20px;
    font-size: 12px;
  }

  .low-newslist .filter {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .low-newslist .nav-links {
    margin-top: 0;
  }

  .low-newslist .nav-links ul li {
    margin: 0 8px;
    font-size: 14px;
  }

  .low-newslist .nav-links ul li:first-child {
    margin-right: 8px;
    margin-left: 0;
  }

  .low-newslist .nav-links ul li:last-child {
    margin-right: 0;
    margin-left: 8px;
  }

  .low-newslist .nav-links ul li .page-numbers {
    width: 24px;
    padding: 7px 0 3px;
  }

  .low-newslist .nav-links ul li .dots {
    width: 14px;
  }

  .low-newslist .nav-links ul li .dots:before {
    width: 14px;
    height: 2px;
  }

  .low-newslist .nav-links ul li .prev,
  .low-newslist .nav-links ul li .next {
    width: 32px;
    height: 32px;
  }

  .low-newslist .nav-links ul li a.prev:before,
  .low-newslist .nav-links ul li a.next:before {
    width: 6px;
    height: 12px;
  }
}

@media screen and (max-width: 374px) {
  .low-newslist .nav-links ul li {
    margin: 0 6px;
  }

  .low-newslist .nav-links ul li:first-child {
    margin-right: 6px;
    margin-left: 0;
  }

  .low-newslist .nav-links ul li:last-child {
    margin-right: 0;
    margin-left: 6px;
  }

  .low-newslist .nav-links ul li .prev,
  .low-newslist .nav-links ul li .next {
    width: 24px;
    height: 24px;
  }

  .low-newslist .nav-links ul li a.prev:before,
  .low-newslist .nav-links ul li a.next:before {
    width: 5px;
    height: 10px;
  }
}

/* news */
/* ============================================ */
.newsDetailBox {
  max-width: 960px;
  margin: 0 auto;
}

.newsDetailBox .newsDetailttl div {
  display: flex;
  align-items: baseline;
  gap: 0 30px;
}

.newsDetailBox .newsDetailttl .category {
  display: block;
  text-align: center;
  padding: 0 18px;
  border-radius: 50px;
  background: #b5b5b6;
  color: #00001c;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  letter-spacing: 0.18em;
  margin: 0;
}

.newsDetailBox .newsDetailttl .day {
  display: block;
  font-size: clamp(12px, 1.1363636364vw, 14px);
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.12em;
  color: #b5b5b6;
  margin: 0;
}

.newsDetailBox .newsDetailttl h2 {
  font-size: 36px;
  line-height: 1.25;
  letter-spacing: 0.18em;
  margin-top: 20px;
}

.newsDetailBox .thumbnail {
  margin-top: 30px;
}

.newsDetailBox .thumbnail img,
.newsDetailBox img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}

.newsDetailBox img {
  margin-top: 80px;
}

.newsDetailBox .wp-block-gallery img,
.newsDetailBox .wp-block-media-text img,
.newsDetailBox .wp-block-columns img {
  margin: 0;
}

.newsDetailBox h3,
.newsDetailBox h4,
.newsDetailBox dt,
.newsDetailBox ul,
.newsDetailBox ol,
.newsDetailBox p {
  margin-top: 30px;
}

.newsDetailBox ul ul,
.newsDetailBox ul ol,
.newsDetailBox ol ol,
.newsDetailBox ol ul {
  margin-top: 0;
}

.newsDetailBox h2 {
  font-size: 36px;
  line-height: 1.25;
  letter-spacing: 0.18em;
  margin-top: 80px;
}

.newsDetailBox h3 {
  font-size: 28px;
  line-height: 1.25;
  letter-spacing: 0.18em;
}

.newsDetailBox h4,
.newsDetailBox dt {
  font-size: 24px;
  line-height: 1.25;
  letter-spacing: 0.18em;
}

.newsDetailBox dt {
  margin-bottom: 20px;
  font-weight: normal;
}

.newsDetailBox dd,
.newsDetailBox ul li,
.newsDetailBox ol li {
  position: relative;
  padding-left: 1em;
  font-size: 16px;
  letter-spacing: 0.22em;
  line-height: 1.875;
}

.newsDetailBox dd:before,
.newsDetailBox ul>li:before {
  content: "";
  position: absolute;
  top: 12px;
  left: 5px;
  width: 5px;
  height: 5px;
  background: #fff;
  border-radius: 100px;
}

.newsDetailBox ol {
  counter-reset: count 0;
}

.newsDetailBox ol>li {
  padding-left: 1.5em;
}

.newsDetailBox ol>li:before {
  position: absolute;
  left: 0;
  top: 2px;
  content: counter(count) ".";
  counter-increment: count 1;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
}

.wp-block-table td,
.wp-block-table th {
  border: none;
}

.newsDetailBox .wp-element-caption {
  margin-top: 8px;
}

.newsDetailBox table {
  margin-top: 60px;
}

.newsDetailBox tr {
  border-bottom: 1px solid #b5b5b6;
}

.newsDetailBox th {
  border-bottom: 1px solid #fff;
  font-weight: normal;
}

.newsDetailBox th,
.newsDetailBox td {
  padding: 10px 20px;
  font-size: 16px;
  letter-spacing: 0.18em;
  line-height: 1.25;
}

.newsDetailBox p {
  font-size: 16px;
  letter-spacing: 0.22em;
  line-height: 1.875;
}

.newsDetailBox b,
.newsDetailBox strong {
  text-shadow: 1px 1px 1px rgba(255, 255, 255, 1), 1px 1px 1px rgba(255, 255, 255, 1), 1px 1px 1px rgba(255, 255, 255, 1);
}

.newsDetailBox del,
.newsDetailBox s {
  text-decoration: line-through;
}

.newsDetailBox a:not(.wp-element-button) {
  border-bottom: 1px solid #fff;
}

.newsDetailBox a:after {
  content: "";
  display: inline-block;
  margin-left: 2px;
  margin-right: 4px;
  width: 12px;
  height: 12px;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="12.75" height="12.674" viewBox="0 0 12.75 12.674"><g transform="translate(0.5)"><g transform="translate(-0.719)"><g transform="translate(2.968)" fill="none" stroke="%23fff" stroke-width="1"><rect width="10" height="10" stroke="none"/><rect x="0.5" y="0.5" width="9" height="9" fill="none"/></g><path d="M.719,3.03v9.144H9.906" fill="none" stroke="%23fff" stroke-width="1"/></g></g></svg>');
  background-size: contain;
}

.not404 .newsDetailBox a:after,
.newsDetailBox .wp-block-file a:after,
.newsDetailBox .wp-block-button a:after {
  display: none;
}

.newsDetail .post-link {
  margin: 120px auto 0;
  max-width: 960px;
}

.newsDetail .post-link a {
  position: relative;
  display: inline-block;
  padding: 0 114px 10px 26px;
  line-height: 1;
  font-size: 14px;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  letter-spacing: 0.12em;
}

.newsDetail .post-link a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 180px;
  height: 11px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="180.407" height="10.791" viewBox="0 0 180.407 10.791"><path id="arrow" d="M-1421.436-3206.5h-180v-1h179.029l-6.576-9.209.814-.581,7.141,10-.407.291Z" transform="translate(1601.436 3217.29)" fill="%23b5b5b6"/></svg>');
  background-repeat: no-repeat;
  transition: all 0.4s;
  transform: scale(-1, 1);
}

.newsDetail .post-link a:hover:before {
  left: -10px;
}

.newsDetail .wp-block-details p {
  margin-top: 8px;
}

.newsDetail .wp-block-column table,
.newsDetail .wp-block-column h2,
.newsDetail .wp-block-column h3,
.newsDetail .wp-block-column h4,
.newsDetail blockquote>p,
.newsDetail .wp-block-cover p {
  margin-top: 0;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  color: #00001c;
}

.wp-block-columns-is-layout-flex {
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .newsDetailBox .newsDetailttl div {
    gap: 0 20px;
  }

  .newsDetailBox .newsDetailttl h2,
  .newsDetailBox h2 {
    font-size: 24px;
  }

  .newsDetailBox p {
    font-size: 14px;
    line-height: 1.71;
  }

  .newsDetailBox img {
    margin: 40px 0 30px;
  }

  .newsDetailBox h2 {
    margin-top: 30px;
  }

  .newsDetailBox h3,
  .newsDetailBox h4,
  .newsDetailBox p {
    margin-top: 20px;
  }

  .newsDetailBox h3 {
    font-size: 20px;
  }

  .newsDetailBox h4 {
    font-size: 18px;
  }

  .newsDetailBox dt {
    margin: 40px 0 20px;
    font-size: 18px;
  }

  .newsDetailBox dd,
  .newsDetailBox ul li,
  .newsDetailBox ol li {
    font-size: 14px;
  }

  .newsDetailBox dd:before,
  .newsDetailBox ul>li:before {
    top: 11px;
  }

  .newsDetailBox ol>li:before {
    top: 4px;
  }

  .newsDetailBox table {
    margin-top: 25px;
  }

  .newsDetailBox th,
  .newsDetailBox td {
    font-size: 14px;
  }

  .newsDetailBox th {
    padding: 15px 0;
  }

  .newsDetailBox td {
    padding: 15px 8px;
  }

  .newsDetail .post-link {
    margin-top: 60px;
  }
}

/* Q&A */
/* ============================================ */
.faq_ansBox {
  position: relative;
}

.faq_ansBox+.faq_ansBox {
  margin-top: 80px;
}

.faq_ansBox .ancPos {
  position: absolute;
  top: 0;
}

.faq_ansBox h2 {
  line-height: 1.25;
  margin-bottom: 25px;
  font-size: 28px;
  letter-spacing: 0.18em;
}

.faq_ansBox .faqList a {
  text-decoration: underline;
}

.faq_ansBox .faqList dt,
.faq_ansBox .faqList dd {
  display: flex;
  padding: 32px 30px 32px 0;
  letter-spacing: 0.22em;
}

.faq_ansBox .faqList dt {
  position: relative;
  padding-right: 110px;
  background-color: #b5b5b6;
  border-radius: 10px;
  color: #000;
  cursor: pointer;
  font-weight: normal;
}

.faq_ansBox .faqList dd+dt {
  margin-top: 40px;
}

.faq_ansBox .faqList dt:before,
.faq_ansBox .faqList dd:before {
  min-width: 94px;
  line-height: 28px;
  margin-bottom: -5px;
  text-align: center;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 24px;
  font-weight: 300;
}

.faq_ansBox .faqList dt:before {
  content: "Q";
}

.faq_ansBox .faqList dd:before {
  content: "A";
}

.faq_ansBox .faqList dt .toggle {
  position: absolute;
  top: calc(50% - 10px);
  right: 30px;
  width: 21px;
  height: 21px;
}

.faq_ansBox .faqList dt .toggle:before,
.faq_ansBox .faqList dt .toggle:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}

.faq_ansBox .faqList dt .toggle:after {
  transform: rotate(90deg);
}

.faq_ansBox .faqList dt.close .toggle:after {
  display: none;
}

@media screen and (max-width: 768px) {
  /* .faq_ansBox .ancPos {
    top: -87px;
  } */

  .faq_ansBox h2 {
    margin-bottom: 20px;
    font-size: 20px;
  }

  .faq_ansBox .faqList dt,
  .faq_ansBox .faqList dd {
    padding: 20px 20px 20px 0;
    font-size: 14px;
  }

  .faq_ansBox .faqList dt {
    padding-right: 55px;
  }

  .faq_ansBox .faqList dt:before,
  .faq_ansBox .faqList dd:before {
    min-width: 57px;
    font-size: 20px;
  }

  .faq_ansBox .faqList dt .toggle {
    position: absolute;
    top: calc(50% - 8px);
    right: 20px;
    width: 15px;
    height: 15px;
  }
}

/* PLAN */
/* ============================================ */
.planDetCont {
  overflow: hidden;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.planDetBox {
  overflow: hidden;
  position: relative;
  margin-top: 40px;
  padding: 60px 80px;
  background-color: #b5b5b6;
  color: #00001c;
}

.planDetBox:before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border: 1px solid #00001c;
}

.planDetBox:after {
  content: "";
  display: block;
  position: absolute;
  right: -50px;
  bottom: -50px;
  width: 100px;
  height: 100px;
  background-color: #00001c;
  transform: rotate(45deg);
}

.planDetBox .ancPos {
  position: absolute;
  top: 0;
}

.planDetBox .planDetWrapper {
  position: relative;
  z-index: 2;
}

.planDetBox .planDetWrapper .label {
  position: absolute;
  top: -60px;
  left: -80px;
}

.planDetBox .planDetWrapper .label:after {
  content: "";
  display: block;
  position: absolute;
  left: -70px;
  top: -70px;
  width: 140px;
  height: 140px;
  background-color: #00001c;
  transform: rotate(45deg);
}

.planDetBox .planDetWrapper .label .plan,
.planDetBox .planDetWrapper .num {
  display: block;
  position: relative;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-weight: 300;
  color: #b5b5b6;
  z-index: 1;
}

.planDetBox .planDetWrapper .label .plan {
  margin-top: -5px;
  font-size: 18px;
  letter-spacing: 0.18em;
}

.planDetBox .planDetWrapper .num {
  margin-top: -26px;
  font-size: 48px;
}

.planDetBox .planDetWrapper h2 {
  line-height: 1.25;
  margin-bottom: 25px;
  text-align: center;
  font-size: 28px;
  letter-spacing: 0.18em;
}

.planDetBox .planDetWrapper .detail {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}

.planDetBox .planDetWrapper .detail .price {
  display: flex;
  flex-wrap: wrap;
  width: 250px;
  padding-left: 40px;
}

.planDetBox .planDetWrapper .detail .price .month {
  width: 100%;
  font-size: 24px;
  letter-spacing: 0.18em;
}

.planDetBox .planDetWrapper .detail .price strong {
  line-height: 56px;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 56px;
  letter-spacing: 0.04em;
  font-weight: 300;
}

.planDetBox .planDetWrapper .detail .price .yenBox .tax {
  display: block;
  margin-bottom: -12px;
  font-size: 12px;
}

.planDetBox .planDetWrapper .detail .price .yenBox .yen {
  font-size: 24px;
}

.planDetBox .planDetWrapper .detail .txt {
  flex: 1;
  padding-right: 30px;
  border-right: 1px solid #00001c;
}

@media screen and (min-width: 769px) {
  .mac .plan_option .plan_optionList .yenBox {
    margin-top: 4px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .plan_option .plan_optionList li .price .yenBox .tax {
    margin-bottom: -6px;
  }
}

.planDetBox .planDetWrapper .detail.hojin .txt {
  padding-right: 0;
  border-right: none;
}

.planDetBox .planDetWrapper .detail .txt p {
  line-height: 1.875;
  letter-spacing: 0.22em;
}

.planDetBox .planDetWrapper .detail .txt .memo {
  margin-top: 12px;
}

.planDetBox .planDetWrapper .detail .txt .memo li {
  line-height: 1.5;
  font-size: 14px;
  letter-spacing: 0.18em;
}

.planDetBox .planDetWrapper .hojinContact {
  margin: 13px auto 0;
  width: 260px;
  font-size: clamp(14px, 1.2987012987vw, 16px);
  padding: 1.0625rem;
  letter-spacing: 0.18em;
}

.planDetBox .planDetWrapper .hojinContact .svg {
  width: 21px;
  height: 6px;
  right: clamp(10px, 2.5974025974vw, 32px);
}

.planBtnBox {
  margin-bottom: 80px;
}

.planBtnBox .c-btn-def {
  margin: 0 auto;
}

.plan_option {
  position: relative;
  margin: 40px 0;
}

.plan_option h2 {
  line-height: 1.25;
  margin-bottom: 36px;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.18em;
}

.plan_option h2 span {
  display: block;
  position: relative;
  width: 40px;
  height: 40px;
  margin: 0 auto 40px;
}

.plan_option h2 span:before,
.plan_option h2 span:after {
  content: "";
  display: block;
  position: absolute;
  background-color: #fff;
}

.plan_option h2 span:before {
  left: 0;
  top: 50%;
  width: 100%;
  height: 1px;
}

.plan_option h2 span:after {
  left: 50%;
  top: 0;
  width: 1px;
  height: 100%;
}

.plan_option .plan_optionList {
  display: flex;
  gap: 30px;
}

.plan_option .plan_optionList li {
  position: relative;
  padding: 40px 30px;
  background-color: #b5b5b6;
  color: #00001c;
}

.plan_option .plan_optionList li:after {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border: 1px solid #00001c;
}

.plan_option .plan_optionList li h3 {
  line-height: 1.25;
  margin-bottom: 25px;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.18em;
}

.plan_option .plan_optionList li .price {
  display: flex;
  flex-wrap: wrap;
  max-width: 140px;
  margin: 0 auto;
}

.plan_option .plan_optionList li .price .month {
  letter-spacing: 0.22em;
  width: 100%;
}

.plan_option .plan_optionList li .price strong {
  line-height: 42px;
  font-family: "itc-avant-garde-gothic-pro", sans-serif;
  font-size: 28px;
  letter-spacing: 0.18em;
  font-weight: 300;
}

.plan_option .plan_optionList li .price .yenBox .tax {
  display: block;
  margin-bottom: -10px;
  font-size: 8px;
}

.plan_option .plan_optionList li .txt {
  margin-top: 20px;
  padding-top: 30px;
  border-top: 1px solid #00001c;
  line-height: 1.875;
  letter-spacing: 0.22em;
}

.plan_option .ancPos {
  position: absolute;
  top: 0;
}

@media screen and (max-width: 768px) {
  .planDetBox {
    padding: 30px;
  }

  .planDetBox:after {
    right: -35px;
    bottom: -35px;
    width: 70px;
    height: 70px;
  }

  /* .planDetBox .ancPos {
    position: absolute;
    top: -87px;
  } */

  .planDetBox .planDetWrapper .label {
    top: -30px;
    left: -30px;
  }

  .planDetBox .planDetWrapper .label:after {
    left: -50px;
    top: -50px;
    width: 100px;
    height: 100px;
  }

  .planDetBox .planDetWrapper .label .plan {
    margin-top: -3px;
    font-size: 12px;
  }

  .planDetBox .planDetWrapper .num {
    margin-top: -18px;
    font-size: 32px;
  }

  .planDetBox .planDetWrapper h2 {
    margin-bottom: 20px;
    font-size: 18px;
  }

  .planDetBox .planDetWrapper .detail {
    flex-direction: column;
  }

  .planDetBox .planDetWrapper .detail .price {
    align-items: center;
    justify-content: center;
    width: 100%;
    padding-left: 0;
  }

  .planDetBox .planDetWrapper .detail .price .month {
    width: auto;
    margin-right: 10px;
    font-size: 12px;
  }

  .planDetBox .planDetWrapper .detail .price strong {
    line-height: 28px;
    font-size: 28px;
  }

  .planDetBox .planDetWrapper .detail .price .yenBox .tax {
    font-size: 8px;
  }

  .planDetBox .planDetWrapper .detail .price .yenBox {
    margin-top: -2px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .planDetBox .planDetWrapper .detail .price .yenBox {
    margin-top: 2px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .planDetBox .planDetWrapper .detail .price .yenBox .tax {
    margin-bottom: -9px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .plan_option .plan_optionList li .price .yenBox .tax {
    margin-bottom: -8px;
  }

  _::-webkit-full-page-media,
  _:future,
  :root .plan_option .plan_optionList .yenBox {
    margin-top: 6px;
  }

  .planDetBox .planDetWrapper .detail .price .yenBox .yen {
    font-size: 18px;
  }

  .planDetBox .planDetWrapper .detail .txt {
    margin-top: 20px;
    padding-top: 20px;
    padding-right: 0;
    border-right: none;
    border-top: 1px solid #00001c;
  }

  .planDetBox .planDetWrapper .detail.hojin .txt {
    margin-top: 0;
  }

  .planDetBox .planDetWrapper .detail .txt p {
    font-size: 14px;
  }

  .planDetBox .planDetWrapper .detail .txt .memo li {
    font-size: 12px;
  }

  /* .plan_option .ancPos {
    top: -87px;
  } */

  .planBtnBox {
    margin-bottom: 60px;
  }

  .planBtnBox .c-btn-def {
    height: 66px;
  }

  .plan_option h2 {
    margin-bottom: 10px;
    text-align: center;
    font-size: 18px;
  }

  .plan_option .plan_optionList {
    flex-direction: column;
  }

  .plan_option .plan_optionList li h3 {
    font-size: 18px;
  }

  .plan_option .plan_optionList li .txt {
    font-size: 14px;
  }
}