@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400&display=swap");
@import url("https://use.typekit.net/ygn3cml.css");
/************************************
 * WP
 ***********************************/
/************************************
 * Font
 ***********************************/
/************************************
 * Base size unit（変更しない）
 ***********************************/
/************************************
 * Contents 領域・余白
 ***********************************/
/************************************
 * tag の基本設定
 *  C: color, P : parts
 ***********************************/
/************************************
 * assetsパス
 ***********************************/
/************************************
 * flex-col　余白
 ***********************************/
/************************************
 * 見出しの設定
 ***********************************/
/************************************
 * Icon font
 ***********************************/
/************************************
 * Using plugin
 ***********************************/
/************************************
* 画像アレンジレイアウト
***********************************/
/*********************************************************************
 * MIXIN
 ********************************************************************/
/*** font family ****************************************************/
/*** font size *****************************************************/
/*** icon font *****************************************************/
@font-face {
  font-family: "icon";
  src: url("../fonts/icomoon.eot");
  src: url("../fonts/icomoon.eot#iefix") format("embedded-opentype"), url("../fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon.wof") format("woff"), url("../fonts/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/************************************
 * Reset
 ***********************************/
/*********************************
 * A Modern CSS Reset 
 * Web : https://piccalil.li/blog/a-modern-css-reset
 * Git : https://github.com/hankchizljaw/modern-css-reset
 ********************************/
*, *::before, *::after {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul[role=list], ol[role=list] {
  list-style: none;
}

html:focus-within {
  scroll-behavior: smooth;
}

body {
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/************************************
 * 追加 Reset Code
 ***********************************/
table {
  border-collapse: collapse;
}

/************************************
 * CSS変数の出力
 ***********************************/
:root {
  --spacing--0: 0 ;
  --spacing--default: 2em ;
  --spacing--m: 3em ;
  --spacing--l: 4em ;
  --spacing--xl: 5em ;
  --font-size--s: 0.8rem;
  --font-size--m: 1rem;
  --font-size--l: 1.25rem;
  --font-size--xl: 1.5rem;
  --font-size--xxl: 2rem;
  --color--main: #3684C6;
  --color--sub: #FFE100;
  --color--black: #1B262D;
  --color--white: #FFF;
  --color--none: transparent;
  --color--btn__reset: #F1F5F6;
  --color--red: #D53A3A;
  --color--yellow: #FFE100;
  --color--blue: #3684C6;
  --color--notes: #ACB1B4;
  --color--gray: #B3B3B3;
  --color--lightgray: #E8E8E8;
  --color--colorgray: #D0DBDE;
  --color--bg: #E8F0F2;
  --color--lightbg: #F1F5F6;
  --color--thbg: #F2F2F2;
  --color--text: #1B262D;
  --color--error: #D53A3A;
  --color--link: #666;
  --color--hover: #3684C6;
  --color--btn_bg: #F1F5F6;
  --color--btn_txt: #1B262D;
  --color--border: #E8E8E8;
  --color--hamburger: #666;
  --wp--preset--spacing--0: var(--spacing--0);
  --wp--preset--spacing--default: var(--spacing--default);
  --wp--preset--spacing--m: var(--spacing--m);
  --wp--preset--spacing--l: var(--spacing--l);
  --wp--preset--spacing--xl: var(--spacing--xl);
  --wp--preset--font-size--s: var(--font-size--s);
  --wp--preset--font-size--m: var(--font-size--m);
  --wp--preset--font-size--l: var(--font-size--l);
  --wp--preset--font-size--xl: var(--font-size--xl);
  --wp--preset--font-size--xxl: var(--font-size--xxl);
  --wp--preset--color--main: var(--color--main);
  --wp--preset--color--sub: var(--color--sub);
  --wp--preset--color--black: var(--color--black);
  --wp--preset--color--white: var(--color--white);
  --wp--preset--color--none: var(--color--none);
  --wp--preset--color--btn__reset: var(--color--btn__reset);
  --wp--preset--color--red: var(--color--red);
  --wp--preset--color--yellow: var(--color--yellow);
  --wp--preset--color--blue: var(--color--blue);
  --wp--preset--color--notes: var(--color--notes);
  --wp--preset--color--gray: var(--color--gray);
  --wp--preset--color--lightgray: var(--color--lightgray);
  --wp--preset--color--colorgray: var(--color--colorgray);
  --wp--preset--color--bg: var(--color--bg);
  --wp--preset--color--lightbg: var(--color--lightbg);
  --wp--preset--color--thbg: var(--color--thbg);
  --wp--preset--color--text: var(--color--text);
  --wp--preset--color--error: var(--color--error);
  --wp--preset--color--link: var(--color--link);
  --wp--preset--color--hover: var(--color--hover);
  --wp--preset--color--btn_bg: var(--color--btn_bg);
  --wp--preset--color--btn_txt: var(--color--btn_txt);
  --wp--preset--color--border: var(--color--border);
  --wp--preset--color--hamburger: var(--color--hamburger);
  --wp--preset--color--primary: var(--wp--preset--color--main);
  --wp--preset--color--secondary: var(--wp--preset--color--sub);
  --wp--style--unstable-gallery-gap: var(--wp--preset--spacing--default);
  --gallery-block--gutter-size: var(--spacing--default);
}

/************************************
 * global
 ***********************************/
.has-s-font-size {
  font-size: var(--wp--preset--font-size--s) !important;
}

.has-m-font-size {
  font-size: var(--wp--preset--font-size--m) !important;
}

.has-l-font-size {
  font-size: var(--wp--preset--font-size--l) !important;
}

.has-xl-font-size {
  font-size: var(--wp--preset--font-size--xl) !important;
}

.has-xxl-font-size {
  font-size: var(--wp--preset--font-size--xxl) !important;
}

.has-main {
  color: var(--wp--preset--color--main) !important;
}

.has-sub {
  color: var(--wp--preset--color--sub) !important;
}

.has-black {
  color: var(--wp--preset--color--black) !important;
}

.has-white {
  color: var(--wp--preset--color--white) !important;
}

.has-none {
  color: var(--wp--preset--color--none) !important;
}

.has-btn__reset {
  color: var(--wp--preset--color--btn__reset) !important;
}

.has-red {
  color: var(--wp--preset--color--red) !important;
}

.has-yellow {
  color: var(--wp--preset--color--yellow) !important;
}

.has-blue {
  color: var(--wp--preset--color--blue) !important;
}

.has-notes {
  color: var(--wp--preset--color--notes) !important;
}

.has-gray {
  color: var(--wp--preset--color--gray) !important;
}

.has-lightgray {
  color: var(--wp--preset--color--lightgray) !important;
}

.has-colorgray {
  color: var(--wp--preset--color--colorgray) !important;
}

.has-bg {
  color: var(--wp--preset--color--bg) !important;
}

.has-lightbg {
  color: var(--wp--preset--color--lightbg) !important;
}

.has-thbg {
  color: var(--wp--preset--color--thbg) !important;
}

.has-text {
  color: var(--wp--preset--color--text) !important;
}

.has-error {
  color: var(--wp--preset--color--error) !important;
}

.has-link {
  color: var(--wp--preset--color--link) !important;
}

.has-hover {
  color: var(--wp--preset--color--hover) !important;
}

.has-btn_bg {
  color: var(--wp--preset--color--btn_bg) !important;
}

.has-btn_txt {
  color: var(--wp--preset--color--btn_txt) !important;
}

.has-border {
  color: var(--wp--preset--color--border) !important;
}

.has-hamburger {
  color: var(--wp--preset--color--hamburger) !important;
}

.has-main-background-color {
  background-color: var(--wp--preset--color--main) !important;
}

.has-sub-background-color {
  background-color: var(--wp--preset--color--sub) !important;
}

.has-black-background-color {
  background-color: var(--wp--preset--color--black) !important;
}

.has-white-background-color {
  background-color: var(--wp--preset--color--white) !important;
}

.has-none-background-color {
  background-color: var(--wp--preset--color--none) !important;
}

.has-btn__reset-background-color {
  background-color: var(--wp--preset--color--btn__reset) !important;
}

.has-red-background-color {
  background-color: var(--wp--preset--color--red) !important;
}

.has-yellow-background-color {
  background-color: var(--wp--preset--color--yellow) !important;
}

.has-blue-background-color {
  background-color: var(--wp--preset--color--blue) !important;
}

.has-notes-background-color {
  background-color: var(--wp--preset--color--notes) !important;
}

.has-gray-background-color {
  background-color: var(--wp--preset--color--gray) !important;
}

.has-lightgray-background-color {
  background-color: var(--wp--preset--color--lightgray) !important;
}

.has-colorgray-background-color {
  background-color: var(--wp--preset--color--colorgray) !important;
}

.has-bg-background-color {
  background-color: var(--wp--preset--color--bg) !important;
}

.has-lightbg-background-color {
  background-color: var(--wp--preset--color--lightbg) !important;
}

.has-thbg-background-color {
  background-color: var(--wp--preset--color--thbg) !important;
}

.has-text-background-color {
  background-color: var(--wp--preset--color--text) !important;
}

.has-error-background-color {
  background-color: var(--wp--preset--color--error) !important;
}

.has-link-background-color {
  background-color: var(--wp--preset--color--link) !important;
}

.has-hover-background-color {
  background-color: var(--wp--preset--color--hover) !important;
}

.has-btn_bg-background-color {
  background-color: var(--wp--preset--color--btn_bg) !important;
}

.has-btn_txt-background-color {
  background-color: var(--wp--preset--color--btn_txt) !important;
}

.has-border-background-color {
  background-color: var(--wp--preset--color--border) !important;
}

.has-hamburger-background-color {
  background-color: var(--wp--preset--color--hamburger) !important;
}

/************************************
 * clear
 ***********************************/
.cf::after {
  content: "";
  display: block;
  clear: both;
}

.clr,
.clear {
  clear: both;
}

/************************************
 * List
 ***********************************/
ul, ol {
  padding-left: 0;
  margin-left: 0;
}
ul > li, ol > li {
  padding-left: 0;
  text-indent: 0;
  line-height: 1.8;
  margin-top: 1.5em;
}
ul > li ul:last-child, ul > li ol:last-child, ol > li ul:last-child, ol > li ol:last-child {
  padding-bottom: 1em;
}
ul > li p, ul > li div, ul > li span, ol > li p, ol > li div, ol > li span {
  line-height: initial !important;
}
ul > li *, ol > li * {
  text-indent: 0;
  padding-left: 0;
}
ul > a, ul > .wp-block-file__textlink, ul > span, ol > a, ol > .wp-block-file__textlink, ol > span {
  text-indent: 0;
}

ul {
  padding-left: 1.2em;
}
ul > li {
  list-style-type: circle;
  padding-left: 0;
  text-indent: 0;
}
ol {
  list-style: decimal;
}
ol li {
  list-style-position: inside;
  text-indent: -1.3em;
  padding-left: 1.3em;
}
ol li ol {
  margin-left: 1.5em;
}

.ul-reset {
  list-style: none;
  padding: 0;
  margin: 0;
}
.ul-reset li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.ul-reset li::marker {
  content: none;
}

/************************************
 * table
 ***********************************/
table:not(.acf-table) tr {
  height: auto !important;
}
table:not(.acf-table) tr th, table:not(.acf-table) tr td {
  padding: 0.75em 1em;
  border: 1px solid var(--color--border);
}
table:not(.acf-table) tr th {
  background: var(--color--thbg);
}
table:not(.acf-table) tr td {
  background: var(--color--white);
}

/************************************
 * Image
 ***********************************/
img {
  -webkit-tap-highlight-color: transparent;
  backface-visibility: hidden;
  height: auto;
  display: inline-block;
  max-width: 100%;
  width: auto;
  height: auto;
  vertical-align: top;
}

/************************************
 * String   
 * b,i はHTML5での役割が微妙なので設定してない
 * Italic はmeiryoでは効かないので設定してない
 ***********************************/
strong, em {
  font-weight: bold;
}

p, th, td, li, address, small {
  line-height: 2.6;
}

/************************************
 * a
 ***********************************/
a:focus,
*:focus {
  outline: none;
}

a, .wp-block-file__textlink {
  -webkit-tap-highlight-color: transparent;
  outline: none;
  color: var(--wp--preset--color--link);
  transition: opacity 0.3s ease-in-out, color 0.3s ease-in-out, background-color 0.3s ease-in-out, border 0.3s ease-in-out, top 0.3s ease-in-out, filter 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}
@media (hover: hover) {
  a:hover, .wp-block-file__textlink:hover {
    color: var(--wp--preset--color--hover);
  }
}

a[target=_blank]:after, [target=_blank].wp-block-file__textlink:after {
  content: "\e405";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}

a[href$=".pdf"]:after, [href$=".pdf"].wp-block-file__textlink:after {
  content: "\e404";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}

a[href$=".xls"]:after, [href$=".xls"].wp-block-file__textlink:after, a[href$=".xlsx"]:after, [href$=".xlsx"].wp-block-file__textlink:after {
  content: "\e401";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}

a[href$=".docx"]:after, [href$=".docx"].wp-block-file__textlink:after,
a[href$=".doc"]:after,
[href$=".doc"].wp-block-file__textlink:after {
  content: "\e402";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}

a[href$=".zip"]:after, [href$=".zip"].wp-block-file__textlink:after {
  content: "\e403";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}

input[type=button],
input[type=submit],
input[type=reset],
button {
  transition: opacity 0.3s ease-in-out, color 0.3s ease-in-out, background-color 0.3s ease-in-out, border 0.3s ease-in-out, top 0.3s ease-in-out, filter 0.3s ease-in-out;
}

form {
  /************************************
   * Button
   ***********************************/
  /************************************
    * Form
    ***********************************/
}
form input[type=button],
form input[type=submit],
form button {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
}
@media (hover: hover) {
  form input[type=button]:hover,
  form input[type=submit]:hover,
  form button:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
form input[type=reset] {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  background: var(--color--btn__reset);
  border-color: var(--color--btn__reset);
  color: var(--color--link);
}
@media (hover: hover) {
  form input[type=reset]:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
@media (hover: hover) {
  form input[type=reset]:hover {
    background: var(--color--main);
    border-color: var(--color--main);
    color: var(--color--btn__reset);
  }
}
form textarea,
form input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=reset]):not([type=submit]),
form select {
  font-family: "din-2014", "Noto Sans JP Local", "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 1.4;
  outline: none;
  appearance: none;
  padding-block: 1em;
  padding-inline: 1.4em;
  cursor: pointer;
  background-color: #fff;
  border-radius: 0.5em;
  border: 1px solid var(--wp--preset--color--lightbg);
  transition: border 0.3s;
}
form textarea:focus,
form input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=reset]):not([type=submit]):focus,
form select:focus {
  border-color: #000;
}
form textarea:invalid,
form input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=reset]):not([type=submit]):invalid,
form select:invalid {
  background-color: #fcefef;
}
form textarea:valid,
form input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=reset]):not([type=submit]):valid,
form select:valid {
  background-color: var(--wp--preset--color--lightbg);
}
form textarea:placeholder-shown,
form input:not([type=radio]):not([type=checkbox]):not([type=button]):not([type=reset]):not([type=submit]):placeholder-shown,
form select:placeholder-shown {
  background-color: var(--wp--preset--color--thbg);
}
form ::placeholder {
  font-family: "din-2014", "Noto Sans JP Local", "Noto Sans JP", sans-serif;
}
form input:-webkit-autofill {
  box-shadow: 0 0 0 1000px #F1F5F6 inset;
}
form input[type=radio], form input[type=checkbox] {
  border: none;
}
form input[type=radio] {
  border-radius: 100%;
  appearance: radio;
}
form input[type=text], form input[type=email], form input[type=url] {
  width: 100%;
}
form input[type=tel] {
  width: 100%;
}
form input[type=date] {
  width: 50%;
}
form input[type=number] {
  width: 8em;
}
form textarea {
  width: 100%;
  height: 200px;
}
form .select-wrap {
  position: relative;
  display: inline-block;
}
form .select-wrap::after {
  position: absolute;
  right: 0.8em;
  height: 100%;
  pointer-events: none;
  color: var(--wp--preset--color--gray);
  content: "\e102";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
form select {
  background-color: #fff !important;
  appearance: none;
  padding-right: 3em;
}
form .select-wrap::before {
  content: "";
  position: absolute;
  top: 50%;
  left: auto;
  bottom: 0;
  right: 1em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 6px 0 6px;
  border-color: #e8f0fe transparent transparent transparent;
  margin-top: -3px;
}
form .select-wrap.changed::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 0;
  border-color: var(--color--main) transparent transparent transparent;
  margin-top: 0px;
}
form .select-wrap.changed select {
  background-color: #F1F5F6 !important;
}
form .select-wrap .wpcf7-form-control-wrap {
  position: relative;
}
form .select-wrap .wpcf7-form-control-wrap::after {
  content: "";
  position: absolute;
  right: 0.5em;
  top: 50%;
  margin-top: -3px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  border-color: #CCC transparent transparent transparent;
  pointer-events: none;
}
form .wpcf7-spinner {
  display: none !important;
}
form label {
  display: inline-block;
  margin-left: 1em;
  cursor: pointer;
}
form label:first-child {
  margin-left: 0;
}

.error {
  width: 100%;
  display: block;
  margin-top: 0.5em !important;
  color: var(--color--error);
  font-size: 0.75rem;
}

.icon {
  display: flex;
  align-items: center;
}

.icon::before {
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  margin-right: 0.2em;
}

.icon-c_arrow-t::before {
  content: "\e001";
}

.icon-c_arrow-b::before {
  content: "\e002";
}

.icon-c_arrow-l::before {
  content: "\e003";
}

.icon-c_arrow-r::before {
  content: "\e004";
}

.icon-arrow-t::before {
  content: "\e101";
}

.icon-arrow-b::before {
  content: "\e102";
}

.icon-arrow-l::before {
  content: "\e103";
}

.icon-arrow-r::before {
  content: "\e104";
}

.icon-up::before {
  content: "\e301";
}

.icon-down::before {
  content: "\e302";
}

.icon-prev::before {
  content: "\e303";
}

.icon-next::before {
  content: "\e304";
}

.icon-first::before {
  content: "\e305";
}

.icon-end::before {
  content: "\e306";
}

.icon-excel::before {
  content: "\e401";
}

.icon-word::before {
  content: "\e402";
}

.icon-zip::before {
  content: "\e403";
}

.icon-pdf::before {
  content: "\e404";
}

.icon-blank::before {
  content: "\e405";
}

.icon-twitter::before {
  content: "\e501";
}

.icon-facebook::before {
  content: "\e502";
}

.icon-instagram::before {
  content: "\e503";
}

.icon-youtube::before {
  content: "\e504";
}

.icon-search::before {
  content: "\e601";
}

.icon-tag::before {
  content: "\e602";
}

.icon-access::before {
  content: "\e603";
}

.icon-check::before {
  content: "\e604";
}

.icon-filter::before {
  content: "\e605";
}

.icon-mail::before {
  content: "\e701";
}

.icon-phone::before {
  content: "\e702";
}

.icon-mobile::before {
  content: "\e703";
}

.icon-pc::before {
  content: "\e704";
}

.icon-calendar::before {
  content: "\e801";
}

.icon-warning::before {
  content: "\e802";
}

@media print {
  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    min-width: 1000px;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  #go-top {
    display: none;
  }
}
.pc-view {
  display: inherit !important;
}

.sp-view {
  display: none !important;
}

@media only screen and (max-width: 640px) {
  .pc-view {
    display: none !important;
  }
  .sp-view {
    display: inherit !important;
  }
}
.btn-area {
  position: relative;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
  margin-block: 2em;
}

.link-arw a, .link-arw .wp-block-file__textlink,
a.link-arw,
.link-arw.wp-block-file__textlink {
  color: var(--wp--preset--color--link);
  line-height: 1.4;
  text-decoration: none;
  margin-block: 0.25em;
  display: inline-block;
  gap: 6px;
  padding-left: 1.2em;
  text-indent: -0.6em;
  text-decoration: underline;
}
.link-arw a::before, .link-arw .wp-block-file__textlink::before,
a.link-arw::before,
.link-arw.wp-block-file__textlink::before {
  content: "\e004";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  margin-right: 0.2em;
}
.link-arw a::after, .link-arw .wp-block-file__textlink::after,
a.link-arw::after,
.link-arw.wp-block-file__textlink::after {
  text-indent: 0;
}
@media (hover: hover) {
  .link-arw a:hover, .link-arw .wp-block-file__textlink:hover,
  a.link-arw:hover,
  .link-arw.wp-block-file__textlink:hover {
    color: var(--wp--preset--color--hover);
    opacity: 1;
  }
}

.btn__basic,
.btn__basic a,
.btn__basic .wp-block-file__textlink,
a.btn__basic,
.btn__basic button,
button.btn__basic,
.is-style-btn__basic a,
.is-style-btn__basic .wp-block-file__textlink,
a.is-style-btn__basic,
.is-style-btn__basic.wp-block-file__textlink,
.is-style-btn__basic button,
button.is-style-btn__basic,
.wp-block-button__link {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
}
@media (hover: hover) {
  .btn__basic:hover,
  .btn__basic a:hover,
  .btn__basic .wp-block-file__textlink:hover,
  a.btn__basic:hover,
  .btn__basic button:hover,
  button.btn__basic:hover,
  .is-style-btn__basic a:hover,
  .is-style-btn__basic .wp-block-file__textlink:hover,
  a.is-style-btn__basic:hover,
  .is-style-btn__basic.wp-block-file__textlink:hover,
  .is-style-btn__basic button:hover,
  button.is-style-btn__basic:hover,
  .wp-block-button__link:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}

.btn__outline,
.btn__outline a,
.btn__outline .wp-block-file__textlink,
a.btn__outline,
.btn__outline button,
button.btn__outline,
.is-style-btn__outline a,
.is-style-btn__outline .wp-block-file__textlink,
a.is-style-btn__outline,
.is-style-btn__outline.wp-block-file__textlink,
.is-style-btn__outline button,
button.is-style-btn__outline {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  background: #fff;
  color: var(--wp--preset--color--link);
  border-color: var(--wp--preset--color--lightgray);
}
@media (hover: hover) {
  .btn__outline:hover,
  .btn__outline a:hover,
  .btn__outline .wp-block-file__textlink:hover,
  a.btn__outline:hover,
  .btn__outline button:hover,
  button.btn__outline:hover,
  .is-style-btn__outline a:hover,
  .is-style-btn__outline .wp-block-file__textlink:hover,
  a.is-style-btn__outline:hover,
  .is-style-btn__outline.wp-block-file__textlink:hover,
  .is-style-btn__outline button:hover,
  button.is-style-btn__outline:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
@media (hover: hover) {
  .btn__outline:hover,
  .btn__outline a:hover,
  .btn__outline .wp-block-file__textlink:hover,
  a.btn__outline:hover,
  .btn__outline button:hover,
  button.btn__outline:hover,
  .is-style-btn__outline a:hover,
  .is-style-btn__outline .wp-block-file__textlink:hover,
  a.is-style-btn__outline:hover,
  .is-style-btn__outline.wp-block-file__textlink:hover,
  .is-style-btn__outline button:hover,
  button.is-style-btn__outline:hover {
    background: var(--color--main);
    color: var(--color--white);
  }
}

.btn__reset,
.btn__reset a,
.btn__reset .wp-block-file__textlink,
a.btn__reset,
.btn__reset button,
button.btn__reset,
.is-style-btn__reset a,
.is-style-btn__reset .wp-block-file__textlink,
a.is-style-btn__reset,
.is-style-btn__reset.wp-block-file__textlink,
.is-style-btn__reset button,
button.is-style-btn__reset {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  background: var(--color--btn__reset);
  border-color: var(--color--btn__reset);
  color: var(--color--link);
}
@media (hover: hover) {
  .btn__reset:hover,
  .btn__reset a:hover,
  .btn__reset .wp-block-file__textlink:hover,
  a.btn__reset:hover,
  .btn__reset button:hover,
  button.btn__reset:hover,
  .is-style-btn__reset a:hover,
  .is-style-btn__reset .wp-block-file__textlink:hover,
  a.is-style-btn__reset:hover,
  .is-style-btn__reset.wp-block-file__textlink:hover,
  .is-style-btn__reset button:hover,
  button.is-style-btn__reset:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
@media (hover: hover) {
  .btn__reset:hover,
  .btn__reset a:hover,
  .btn__reset .wp-block-file__textlink:hover,
  a.btn__reset:hover,
  .btn__reset button:hover,
  button.btn__reset:hover,
  .is-style-btn__reset a:hover,
  .is-style-btn__reset .wp-block-file__textlink:hover,
  a.is-style-btn__reset:hover,
  .is-style-btn__reset.wp-block-file__textlink:hover,
  .is-style-btn__reset button:hover,
  button.is-style-btn__reset:hover {
    background: var(--color--main);
    border-color: var(--color--main);
    color: var(--color--btn__reset);
  }
}

form input[type=button],
form input[type=submit],
form button,
form button.btn__basic,
form button.btn__outline,
form button.btn__reset {
  min-width: 8em;
}
form input[type=button]::before,
form input[type=submit]::before,
form button::before,
form button.btn__basic::before,
form button.btn__outline::before,
form button.btn__reset::before {
  content: none;
}

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

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

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

.alignleft, .wp-block-embed.alignleft,
img.alignleft, .alignright, .wp-block-embed.alignright,
img.alignright {
  width: 48% !important;
  max-width: 48% !important;
  height: auto;
  clear: both;
}
@media screen and (max-width: 480px) {
  .alignleft, .wp-block-embed.alignleft,
  img.alignleft, .alignright, .wp-block-embed.alignright,
  img.alignright {
    width: 100% !important;
    max-width: 100% !important;
  }
}

*:has(.alignright, .wp-block-embed.alignright, .alignleft, .wp-block-embed.alignleft)::after {
  content: "";
  display: block;
  clear: both;
}

.alignright, .wp-block-embed.alignright,
.alignleft,
.wp-block-embed.alignleft,
.aligncenter,
.wp-block-embed.alignwide,
.alignwide,
.alignfull {
  display: flex;
  flex-wrap: wrap;
}
.alignright img, .wp-block-embed.alignright img,
.alignleft img,
.wp-block-embed.alignleft img,
.aligncenter img,
.wp-block-embed.alignwide img,
.alignwide img,
.alignfull img {
  display: block;
  width: auto;
  height: auto;
  line-height: 0;
}

.alignright .wp-caption-text,
.alignleft .wp-caption-text {
  width: 100%;
  display: block;
}

.alignright, .wp-block-embed.alignright {
  justify-content: flex-end;
}
.alignright .wp-caption-text {
  text-align: right;
}

.alignleft, .wp-block-embed.alignleft {
  justify-content: flex-start;
}
.alignleft .wp-caption-text {
  text-align: left;
}

.aligncenter, .wp-block-embed.alignwide,
.alignwide,
.alignfull {
  justify-content: center;
}

.alignwide img,
.alignfull img {
  width: 100%;
}

.alignnone, .wp-block-embed.aligncenter, .wp-block-embed.alignwide {
  display: block;
  width: auto;
  height: auto;
  margin: 2em 0;
}

.alignwide {
  margin: 2em 0;
  width: 100%;
}
.alignwide img {
  width: 100%;
}

.alignfull {
  position: relative;
  width: 100vw;
  max-width: 100vw;
  left: 50%;
  margin: 2em 0;
  margin-left: -50vw;
}

a.alignright + h2, .alignright.wp-block-file__textlink + h2, a.wp-block-embed.alignright + h2, .wp-block-file__textlink.wp-block-embed.alignright + h2, a.alignright + h3, .alignright.wp-block-file__textlink + h3, a.wp-block-embed.alignright + h3, .wp-block-file__textlink.wp-block-embed.alignright + h3, a.alignright + h4, .alignright.wp-block-file__textlink + h4, a.wp-block-embed.alignright + h4, .wp-block-file__textlink.wp-block-embed.alignright + h4, a.alignright + h5, .alignright.wp-block-file__textlink + h5, a.wp-block-embed.alignright + h5, .wp-block-file__textlink.wp-block-embed.alignright + h5, a.alignright + h6, .alignright.wp-block-file__textlink + h6, a.wp-block-embed.alignright + h6, .wp-block-file__textlink.wp-block-embed.alignright + h6, a.alignright + div a.alignright + p, .alignright.wp-block-file__textlink + div a.alignright + p, a.wp-block-embed.alignright + div a.alignright + p, .wp-block-file__textlink.wp-block-embed.alignright + div a.alignright + p, a.alignright + div .alignright.wp-block-file__textlink + p, .alignright.wp-block-file__textlink + div .alignright.wp-block-file__textlink + p, a.wp-block-embed.alignright + div .alignright.wp-block-file__textlink + p, .wp-block-file__textlink.wp-block-embed.alignright + div .alignright.wp-block-file__textlink + p, a.alignright + div a.wp-block-embed.alignright + p, .alignright.wp-block-file__textlink + div a.wp-block-embed.alignright + p, a.wp-block-embed.alignright + div a.wp-block-embed.alignright + p, .wp-block-file__textlink.wp-block-embed.alignright + div a.wp-block-embed.alignright + p, a.alignright + div .wp-block-file__textlink.wp-block-embed.alignright + p, .alignright.wp-block-file__textlink + div .wp-block-file__textlink.wp-block-embed.alignright + p, a.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignright + p, .wp-block-file__textlink.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignright + p, a.alignleft + h2, .alignleft.wp-block-file__textlink + h2, a.wp-block-embed.alignleft + h2, .wp-block-file__textlink.wp-block-embed.alignleft + h2, a.alignleft + h3, .alignleft.wp-block-file__textlink + h3, a.wp-block-embed.alignleft + h3, .wp-block-file__textlink.wp-block-embed.alignleft + h3, a.alignleft + h4, .alignleft.wp-block-file__textlink + h4, a.wp-block-embed.alignleft + h4, .wp-block-file__textlink.wp-block-embed.alignleft + h4, a.alignleft + h5, .alignleft.wp-block-file__textlink + h5, a.wp-block-embed.alignleft + h5, .wp-block-file__textlink.wp-block-embed.alignleft + h5, a.alignleft + h6, .alignleft.wp-block-file__textlink + h6, a.wp-block-embed.alignleft + h6, .wp-block-file__textlink.wp-block-embed.alignleft + h6, a.alignright + div a.alignleft + p, .alignright.wp-block-file__textlink + div a.alignleft + p, a.wp-block-embed.alignright + div a.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignright + div a.alignleft + p, a.alignright + div .alignleft.wp-block-file__textlink + p, .alignright.wp-block-file__textlink + div .alignleft.wp-block-file__textlink + p, a.wp-block-embed.alignright + div .alignleft.wp-block-file__textlink + p, .wp-block-file__textlink.wp-block-embed.alignright + div .alignleft.wp-block-file__textlink + p, a.alignright + div a.wp-block-embed.alignleft + p, .alignright.wp-block-file__textlink + div a.wp-block-embed.alignleft + p, a.wp-block-embed.alignright + div a.wp-block-embed.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignright + div a.wp-block-embed.alignleft + p, a.alignright + div .wp-block-file__textlink.wp-block-embed.alignleft + p, .alignright.wp-block-file__textlink + div .wp-block-file__textlink.wp-block-embed.alignleft + p, a.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
img.alignright + h2,
img.wp-block-embed.alignright + h2,
img.alignright + h3,
img.wp-block-embed.alignright + h3,
img.alignright + h4,
img.wp-block-embed.alignright + h4,
img.alignright + h5,
img.wp-block-embed.alignright + h5,
img.alignright + h6,
img.wp-block-embed.alignright + h6,
a.alignright + div img.alignright + p,
.alignright.wp-block-file__textlink + div img.alignright + p,
a.wp-block-embed.alignright + div img.alignright + p,
.wp-block-file__textlink.wp-block-embed.alignright + div img.alignright + p,
a.alignright + div img.wp-block-embed.alignright + p,
.alignright.wp-block-file__textlink + div img.wp-block-embed.alignright + p,
a.wp-block-embed.alignright + div img.wp-block-embed.alignright + p,
.wp-block-file__textlink.wp-block-embed.alignright + div img.wp-block-embed.alignright + p,
img.alignleft + h2,
img.wp-block-embed.alignleft + h2,
img.alignleft + h3,
img.wp-block-embed.alignleft + h3,
img.alignleft + h4,
img.wp-block-embed.alignleft + h4,
img.alignleft + h5,
img.wp-block-embed.alignleft + h5,
img.alignleft + h6,
img.wp-block-embed.alignleft + h6,
a.alignright + div img.alignleft + p,
.alignright.wp-block-file__textlink + div img.alignleft + p,
a.wp-block-embed.alignright + div img.alignleft + p,
.wp-block-file__textlink.wp-block-embed.alignright + div img.alignleft + p,
a.alignright + div img.wp-block-embed.alignleft + p,
.alignright.wp-block-file__textlink + div img.wp-block-embed.alignleft + p,
a.wp-block-embed.alignright + div img.wp-block-embed.alignleft + p,
.wp-block-file__textlink.wp-block-embed.alignright + div img.wp-block-embed.alignleft + p, a.alignleft + div a.alignright + p, .alignleft.wp-block-file__textlink + div a.alignright + p, a.wp-block-embed.alignleft + div a.alignright + p, .wp-block-file__textlink.wp-block-embed.alignleft + div a.alignright + p, a.alignleft + div .alignright.wp-block-file__textlink + p, .alignleft.wp-block-file__textlink + div .alignright.wp-block-file__textlink + p, a.wp-block-embed.alignleft + div .alignright.wp-block-file__textlink + p, .wp-block-file__textlink.wp-block-embed.alignleft + div .alignright.wp-block-file__textlink + p, a.alignleft + div a.wp-block-embed.alignright + p, .alignleft.wp-block-file__textlink + div a.wp-block-embed.alignright + p, a.wp-block-embed.alignleft + div a.wp-block-embed.alignright + p, .wp-block-file__textlink.wp-block-embed.alignleft + div a.wp-block-embed.alignright + p, a.alignleft + div .wp-block-file__textlink.wp-block-embed.alignright + p, .alignleft.wp-block-file__textlink + div .wp-block-file__textlink.wp-block-embed.alignright + p, a.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignright + p, .wp-block-file__textlink.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignright + p, a.alignleft + div a.alignleft + p, .alignleft.wp-block-file__textlink + div a.alignleft + p, a.wp-block-embed.alignleft + div a.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignleft + div a.alignleft + p, a.alignleft + div .alignleft.wp-block-file__textlink + p, .alignleft.wp-block-file__textlink + div .alignleft.wp-block-file__textlink + p, a.wp-block-embed.alignleft + div .alignleft.wp-block-file__textlink + p, .wp-block-file__textlink.wp-block-embed.alignleft + div .alignleft.wp-block-file__textlink + p, a.alignleft + div a.wp-block-embed.alignleft + p, .alignleft.wp-block-file__textlink + div a.wp-block-embed.alignleft + p, a.wp-block-embed.alignleft + div a.wp-block-embed.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignleft + div a.wp-block-embed.alignleft + p, a.alignleft + div .wp-block-file__textlink.wp-block-embed.alignleft + p, .alignleft.wp-block-file__textlink + div .wp-block-file__textlink.wp-block-embed.alignleft + p, a.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignleft + p, .wp-block-file__textlink.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
a.alignleft + div img.alignright + p,
.alignleft.wp-block-file__textlink + div img.alignright + p,
a.wp-block-embed.alignleft + div img.alignright + p,
.wp-block-file__textlink.wp-block-embed.alignleft + div img.alignright + p,
a.alignleft + div img.wp-block-embed.alignright + p,
.alignleft.wp-block-file__textlink + div img.wp-block-embed.alignright + p,
a.wp-block-embed.alignleft + div img.wp-block-embed.alignright + p,
.wp-block-file__textlink.wp-block-embed.alignleft + div img.wp-block-embed.alignright + p,
a.alignleft + div img.alignleft + p,
.alignleft.wp-block-file__textlink + div img.alignleft + p,
a.wp-block-embed.alignleft + div img.alignleft + p,
.wp-block-file__textlink.wp-block-embed.alignleft + div img.alignleft + p,
a.alignleft + div img.wp-block-embed.alignleft + p,
.alignleft.wp-block-file__textlink + div img.wp-block-embed.alignleft + p,
a.wp-block-embed.alignleft + div img.wp-block-embed.alignleft + p,
.wp-block-file__textlink.wp-block-embed.alignleft + div img.wp-block-embed.alignleft + p,
img.alignright + div a.alignright + p,
img.wp-block-embed.alignright + div a.alignright + p,
img.alignright + div .alignright.wp-block-file__textlink + p,
img.wp-block-embed.alignright + div .alignright.wp-block-file__textlink + p,
img.alignright + div a.wp-block-embed.alignright + p,
img.wp-block-embed.alignright + div a.wp-block-embed.alignright + p,
img.alignright + div .wp-block-file__textlink.wp-block-embed.alignright + p,
img.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignright + p,
img.alignright + div a.alignleft + p,
img.wp-block-embed.alignright + div a.alignleft + p,
img.alignright + div .alignleft.wp-block-file__textlink + p,
img.wp-block-embed.alignright + div .alignleft.wp-block-file__textlink + p,
img.alignright + div a.wp-block-embed.alignleft + p,
img.wp-block-embed.alignright + div a.wp-block-embed.alignleft + p,
img.alignright + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
img.wp-block-embed.alignright + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
img.alignright + div img.alignright + p,
img.wp-block-embed.alignright + div img.alignright + p,
img.alignright + div img.wp-block-embed.alignright + p,
img.wp-block-embed.alignright + div img.wp-block-embed.alignright + p,
img.alignright + div img.alignleft + p,
img.wp-block-embed.alignright + div img.alignleft + p,
img.alignright + div img.wp-block-embed.alignleft + p,
img.wp-block-embed.alignright + div img.wp-block-embed.alignleft + p,
img.alignleft + div a.alignright + p,
img.wp-block-embed.alignleft + div a.alignright + p,
img.alignleft + div .alignright.wp-block-file__textlink + p,
img.wp-block-embed.alignleft + div .alignright.wp-block-file__textlink + p,
img.alignleft + div a.wp-block-embed.alignright + p,
img.wp-block-embed.alignleft + div a.wp-block-embed.alignright + p,
img.alignleft + div .wp-block-file__textlink.wp-block-embed.alignright + p,
img.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignright + p,
img.alignleft + div a.alignleft + p,
img.wp-block-embed.alignleft + div a.alignleft + p,
img.alignleft + div .alignleft.wp-block-file__textlink + p,
img.wp-block-embed.alignleft + div .alignleft.wp-block-file__textlink + p,
img.alignleft + div a.wp-block-embed.alignleft + p,
img.wp-block-embed.alignleft + div a.wp-block-embed.alignleft + p,
img.alignleft + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
img.wp-block-embed.alignleft + div .wp-block-file__textlink.wp-block-embed.alignleft + p,
img.alignleft + div img.alignright + p,
img.wp-block-embed.alignleft + div img.alignright + p,
img.alignleft + div img.wp-block-embed.alignright + p,
img.wp-block-embed.alignleft + div img.wp-block-embed.alignright + p,
img.alignleft + div img.alignleft + p,
img.wp-block-embed.alignleft + div img.alignleft + p,
img.alignleft + div img.wp-block-embed.alignleft + p,
img.wp-block-embed.alignleft + div img.wp-block-embed.alignleft + p {
  display: inline-block;
}

.alignright, .wp-block-embed.alignright,
img.alignright {
  float: right;
  margin: 0 0 2.5em 2.5em;
  margin-top: 0 !important;
}
.alignright + *, .wp-block-embed.alignright + *,
img.alignright + * {
  margin-top: 0;
}
@media only screen and (max-width: 960px) {
  .alignright, .wp-block-embed.alignright,
  img.alignright {
    margin: 0 0 2.6em 2.8em;
  }
}
@media only screen and (max-width: 640px) {
  .alignright, .wp-block-embed.alignright,
  img.alignright {
    margin: 0 0 1.6em 2em;
  }
}

.alignleft, .wp-block-embed.alignleft,
img.alignleft {
  float: left;
  margin: 0 2.5em 2.5em 0;
  margin-top: 0 !important;
}
@media only screen and (max-width: 960px) {
  .alignleft, .wp-block-embed.alignleft,
  img.alignleft {
    margin: 0 2.8em 2.6em 0;
  }
}
@media only screen and (max-width: 640px) {
  .alignleft, .wp-block-embed.alignleft,
  img.alignleft {
    margin: 0 2em 1.6em 0;
  }
}

img.aligncenter, img.wp-block-embed.alignwide {
  max-width: 48%;
  margin-inline: auto;
}

img.alignwide {
  margin-inline: auto;
  width: 100%;
}

.wp-block-image figcaption, .wp-block-image .wp-element-caption, .wp-block-gallery.has-nested-images .wp-block-image figcaption, .wp-block-gallery.has-nested-images .wp-block-image .wp-element-caption, figcaption {
  position: relative;
  margin-top: 0.5em !important;
  margin-bottom: 0 !important;
  font-size: 0.75rem;
  color: var(--wp--preset--color--gray);
}
@media only screen and (max-width: 640px) {
  .wp-block-image figcaption, .wp-block-image .wp-element-caption, .wp-block-gallery.has-nested-images .wp-block-image figcaption, .wp-block-gallery.has-nested-images .wp-block-image .wp-element-caption, figcaption {
    margin-top: 0.25em !important;
    padding: 0 0.25em;
  }
}

.image-arrange-section {
  position: relative;
}
.image-arrange-section .image-arrange-inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.image-arrange-section .image-arrange-img {
  position: absolute;
  top: 0;
  width: 70%;
  height: 100%;
  background: no-repeat center center/cover;
}
@media only screen and (max-width: 640px) {
  .image-arrange-section .image-arrange-img {
    position: static;
    width: 100%;
    padding-top: 70%;
    border-radius: 0;
  }
}
.image-arrange-section .image-arrange-content {
  position: relative;
  width: 40%;
}
@media only screen and (max-width: 640px) {
  .image-arrange-section .image-arrange-content {
    width: 100%;
  }
}
.image-arrange-section .image-arrange-content::before {
  content: "";
  position: absolute;
  width: 100vw;
  height: 100%;
  background: rgba(255, 255, 255, 0.8);
}
.image-arrange-section .image-arrange-content .image-arrange-text {
  font-size: 1rem;
  position: relative;
  padding: 2.5em;
  width: 100%;
}

.img_common, .img_r, .img_l {
  opacity: 1;
  left: 0;
}

.img_l .image-arrange-img {
  left: 0;
}
.img_l .image-arrange-content {
  left: calc(100% - 40% + 2.5em);
}
@media only screen and (max-width: 640px) {
  .img_l .image-arrange-content {
    left: 0;
  }
}
.img_l .image-arrange-content::before {
  left: 0;
}

.img_r .image-arrange-img {
  right: 0;
}
.img_r .image-arrange-content {
  left: -2.5em;
}
@media only screen and (max-width: 640px) {
  .img_r .image-arrange-content {
    left: 0;
  }
}
.img_r .image-arrange-content::before {
  right: 0;
}

.ib {
  display: inline-block;
}

ul.notes-mark, ul.is-style-list-notes, .notes-mark, .is-style-list-notes, ul.notes, ul.is-style-notes, .notes, .is-style-notes {
  font-size: 0.875vw;
  line-height: 1.4 !important;
  display: block;
  margin-block: 0.5em;
  color: var(--wp--preset--color--notes);
}
@media screen and (max-width: 1600px) {
  ul.notes-mark, ul.is-style-list-notes, .notes-mark, .is-style-list-notes, ul.notes, ul.is-style-notes, .notes, .is-style-notes {
    font-size: 14px;
  }
}
@media only screen and (max-width: 640px) {
  ul.notes-mark, ul.is-style-list-notes, .notes-mark, .is-style-list-notes, ul.notes, ul.is-style-notes, .notes, .is-style-notes {
    font-size: 0.75rem;
  }
}

.notes + .notes, .notes + .is-style-notes,
.notes + .notes-mark, .notes + .is-style-notes-mark, .is-style-notes + .notes, .is-style-notes + .is-style-notes,
.is-style-notes + .notes-mark, .is-style-notes + .is-style-notes-mark {
  margin-top: 1em;
}

ul.notes, ul.is-style-notes {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.notes li, ul.is-style-notes li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
ul.notes li::marker, ul.is-style-notes li::marker {
  content: none;
}
ul.notes li, ul.is-style-notes li {
  padding-left: 0 !important;
  text-indent: 0;
}
ul.notes li:first-child, ul.is-style-notes li:first-child {
  margin-top: 0;
}
ul.notes li::marker, ul.is-style-notes li::marker {
  content: none !important;
}

.notes-mark, .is-style-list-notes {
  padding-left: 1em;
  text-indent: -1em;
}
.notes-mark + .notes, .notes-mark + .is-style-notes,
.notes-mark + .notes-mark, .notes-mark + .is-style-notes-mark, .is-style-list-notes + .notes, .is-style-list-notes + .is-style-notes,
.is-style-list-notes + .notes-mark, .is-style-list-notes + .is-style-notes-mark {
  margin-top: 1em;
}

ul.notes-mark, ul.is-style-list-notes {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.notes-mark li, ul.is-style-list-notes li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
ul.notes-mark li::marker, ul.is-style-list-notes li::marker {
  content: none;
}
ul.notes-mark li, ul.is-style-list-notes li {
  padding-left: 1em;
  text-indent: -1em;
}
ul.notes-mark li:first-child, ul.is-style-list-notes li:first-child {
  margin-top: 0;
}

.box-area {
  background: var(--wp--preset--color--lightbg);
  padding: 1.5em 2em;
  margin-block: 2em;
}
.box-area strong {
  font-size: 1.125rem;
  font-weight: bold;
}
.box-area strong + p {
  margin-top: 0.5em;
}
.box-area p {
  margin-top: 0.8em;
  line-height: 1.6;
}
.box-area > *:first-child {
  margin-top: 0 !important;
}
.box-area > *:last-child {
  margin-bottom: 0 !important;
}

.scroll-table {
  position: relative;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}

.swipe-img {
  display: none;
  position: relative;
  top: -35px;
  left: 5px;
  width: 30px;
  height: 30px;
  background: url(../img/com/sw_mov.gif) no-repeat center center/contain;
}
@media only screen and (max-width: 960px) {
  .swipe-img {
    display: block;
  }
}

.movie-container, .wp-block-embed .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-container iframe, .wp-block-embed .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.gmap iframe {
  width: 100%;
  height: 400px;
}
@media only screen and (max-width: 640px) {
  .gmap iframe {
    height: 300px;
  }
}

.pagination {
  margin-top: 20px;
  margin-bottom: 20px;
}
.pagination ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-indent: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.pagination ul li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.pagination ul li::marker {
  content: none;
}
.pagination ul li {
  padding-left: 0 !important;
}
.pagination ul li::before {
  content: none !important;
}
.pagination ul li a, .pagination ul li .wp-block-file__textlink,
.pagination ul li span {
  text-decoration: none;
  position: relative;
  display: block;
  padding: 0em 0.5em;
  margin: 0 0.25em;
}
.pagination ul li a::after, .pagination ul li .wp-block-file__textlink::after,
.pagination ul li span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  height: 2px;
  width: calc(100% - 0.5em);
  background: transparent;
  transform: translateX(-50%);
}
.pagination ul li span::after {
  background: var(--wp--preset--color--main);
}
@media (hover: hover) {
  .pagination ul li a:hover, .pagination ul li .wp-block-file__textlink:hover {
    color: var(--wp--preset--color--sub);
  }
  .pagination ul li a:hover::after, .pagination ul li .wp-block-file__textlink:hover::after {
    background: var(--wp--preset--color--sub);
  }
}

html {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  box-sizing: border-box;
  word-wrap: break-word;
  line-height: 1;
  scroll-behavior: auto !important;
  scrollbar-gutter: stable;
}

body {
  font-family: "din-2014", "Noto Sans JP Local", "Noto Sans JP", sans-serif;
  font-feature-settings: "palt";
  letter-spacing: 0.13em;
  font-size: 1vw;
  color: var(--wp--preset--color--text);
  width: 100%;
  position: relative;
  line-height: 1;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  padding-top: 8.75em;
}
@media screen and (max-width: 1600px) {
  body {
    font-size: 16px;
  }
}
@media only screen and (max-width: 1320px) {
  body {
    padding-top: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  body {
    padding-top: 6.25em;
  }
}
@media only screen and (max-width: 640px) {
  body {
    padding-top: 5em;
    font-size: 0.875rem;
  }
}
body.active {
  position: fixed;
  width: 100%;
  height: 100%;
  overflow-y: hidden;
}
body.active main {
  filter: blur(3px);
}

header,
header div,
header span,
header applet,
header object,
header iframe,
header h1,
header h2,
header h3,
header h4,
header h5,
header h6,
header p,
header blockquote,
header pre,
header a,
header abbr,
header acronym,
header address,
header big,
header cite,
header code,
header del,
header dfn,
header em,
header img,
header ins,
header kbd,
header q,
header s,
header samp,
header small,
header strike,
header strong,
header sub,
header sup,
header tt,
header var,
header b,
header u,
header i,
header center,
header dl,
header dt,
header dd,
header ol,
header ul,
header li,
header fieldset,
header form,
header label,
header legend,
header table,
header caption,
header tbody,
header tfoot,
header thead,
header tr,
header th,
header td,
header article,
header aside,
header canvas,
header details,
header embed,
header figure,
header figcaption,
header footer,
header header,
header hgroup,
header menu,
header nav,
header output,
header ruby,
header section,
header summary,
header time,
header mark,
header audio,
header video, nav,
nav div,
nav span,
nav applet,
nav object,
nav iframe,
nav h1,
nav h2,
nav h3,
nav h4,
nav h5,
nav h6,
nav p,
nav blockquote,
nav pre,
nav a,
nav abbr,
nav acronym,
nav address,
nav big,
nav cite,
nav code,
nav del,
nav dfn,
nav em,
nav img,
nav ins,
nav kbd,
nav q,
nav s,
nav samp,
nav small,
nav strike,
nav strong,
nav sub,
nav sup,
nav tt,
nav var,
nav b,
nav u,
nav i,
nav center,
nav dl,
nav dt,
nav dd,
nav ol,
nav ul,
nav li,
nav fieldset,
nav form,
nav label,
nav legend,
nav table,
nav caption,
nav tbody,
nav tfoot,
nav thead,
nav tr,
nav th,
nav td,
nav article,
nav aside,
nav canvas,
nav details,
nav embed,
nav figure,
nav figcaption,
nav footer,
nav header,
nav hgroup,
nav menu,
nav nav,
nav output,
nav ruby,
nav section,
nav summary,
nav time,
nav mark,
nav audio,
nav video, footer,
footer div,
footer span,
footer applet,
footer object,
footer iframe,
footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
footer p,
footer blockquote,
footer pre,
footer a,
footer abbr,
footer acronym,
footer address,
footer big,
footer cite,
footer code,
footer del,
footer dfn,
footer em,
footer img,
footer ins,
footer kbd,
footer q,
footer s,
footer samp,
footer small,
footer strike,
footer strong,
footer sub,
footer sup,
footer tt,
footer var,
footer b,
footer u,
footer i,
footer center,
footer dl,
footer dt,
footer dd,
footer ol,
footer ul,
footer li,
footer fieldset,
footer form,
footer label,
footer legend,
footer table,
footer caption,
footer tbody,
footer tfoot,
footer thead,
footer tr,
footer th,
footer td,
footer article,
footer aside,
footer canvas,
footer details,
footer embed,
footer figure,
footer figcaption,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer output,
footer ruby,
footer section,
footer summary,
footer time,
footer mark,
footer audio,
footer video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
  box-sizing: border-box;
  word-wrap: break-word;
}
header ol,
header ul, nav ol,
nav ul, footer ol,
footer ul {
  list-style: none;
}
header table, nav table, footer table {
  border-collapse: collapse;
  border-spacing: 0;
}
header caption,
header th,
header td, nav caption,
nav th,
nav td, footer caption,
footer th,
footer td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
header q,
header blockquote, nav q,
nav blockquote, footer q,
footer blockquote {
  quotes: none;
}
header q:before,
header q:after,
header blockquote:before,
header blockquote:after, nav q:before,
nav q:after,
nav blockquote:before,
nav blockquote:after, footer q:before,
footer q:after,
footer blockquote:before,
footer blockquote:after {
  content: "";
  content: none;
}
header a img, nav a img, footer a img {
  border: none;
}
header article,
header aside,
header details,
header figcaption,
header figure,
header footer,
header header,
header hgroup,
header menu,
header nav,
header section,
header summary, nav article,
nav aside,
nav details,
nav figcaption,
nav figure,
nav footer,
nav header,
nav hgroup,
nav menu,
nav nav,
nav section,
nav summary, footer article,
footer aside,
footer details,
footer figcaption,
footer figure,
footer footer,
footer header,
footer hgroup,
footer menu,
footer nav,
footer section,
footer summary {
  display: block;
}
header,
header *, nav,
nav *, footer,
footer * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
}
header::before, header::after,
header *::before,
header *::after, nav::before, nav::after,
nav *::before,
nav *::after, footer::before, footer::after,
footer *::before,
footer *::after {
  box-sizing: border-box;
}
header ul, nav ul, footer ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
header ul li, nav ul li, footer ul li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
header ul li::marker, nav ul li::marker, footer ul li::marker {
  content: none;
}

#noscript {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 10px 20px;
  background: #C00;
  color: #fff;
  text-align: center;
  z-index: 100;
  line-height: 1.2;
  z-index: 8000000;
}

#loader {
  position: fixed;
  z-index: 15000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
#loader > div {
  content: "";
  opacity: 0;
  width: 5em;
  height: 5em;
  background: url(../img/com/loader.webp) no-repeat center center;
  background-size: contain;
}

.loader-fix {
  position: fixed;
  overflow-y: scroll;
}

/* コンテンツエリアの設定 **************************/
.common-inner {
  margin-left: auto;
  margin-right: auto;
  padding-left: 140px;
  padding-right: 140px;
}
@media only screen and (max-width: 1320px) {
  .common-inner {
    padding-left: 70px;
    padding-right: 70px;
  }
}
@media only screen and (max-width: 960px) {
  .common-inner {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .common-inner {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media only screen and (min-width: 1601px) {
  .common-inner {
    padding-left: 8.75vw;
    padding-right: 8.75vw;
  }
}
@media screen and (max-width: pc0px) {
  .common-inner {
    padding-left: 8.75vw;
    padding-right: 8.75vw;
  }
}

/* SP時 common-inner内でフル画面表示する例外対応 */
@media only screen and (max-width: 960px) {
  .sp-full {
    margin-left: -40px;
    margin-right: -40px;
    padding-left: 80px;
    padding-right: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .sp-full {
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 40px;
    padding-right: 40px;
  }
}

section {
  margin-top: 10em;
  margin-bottom: 10em;
}
@media only screen and (max-width: 1320px) {
  section {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  section {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  section {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
section:first-child {
  margin-top: 0;
}

#news-box {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
  line-height: 1;
  background-color: var(--wp--preset--color--text);
}
#news-box .news-box-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2em;
  height: 3em;
  gap: 1em;
}
@media only screen and (max-width: 1320px) {
  #news-box .news-box-inner {
    padding: 0 1.5em;
  }
}
@media only screen and (max-width: 960px) {
  #news-box .news-box-inner {
    padding: 0 1.25em;
  }
}
@media only screen and (max-width: 640px) {
  #news-box .news-box-inner {
    height: 2.625em;
    overflow: hidden;
    position: relative;
  }
}
#news-box .news-text {
  width: 100%;
  padding: 0.4em 0;
  display: block;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
}
@media only screen and (max-width: 640px) {
  #news-box .news-text {
    font-size: 0.75em;
  }
}
#news-box .news-text time {
  margin-right: 1em;
}
@media only screen and (max-width: 640px) {
  #news-box .news-text time {
    margin-right: 0.5em;
  }
}
@media (hover: hover) {
  #news-box .news-text:hover {
    color: var(--wp--preset--color--yellow);
  }
}
#news-box .news-track {
  display: flex;
  width: max-content;
  animation: news-scroll linear infinite;
}
#news-box .news-content {
  white-space: nowrap;
  padding-right: 3em;
}

.news-close {
  position: absolute;
  right: 0;
  width: 3.125em;
  height: 100%;
  display: block;
  cursor: pointer;
  border: none;
  background-color: transparent;
  line-height: 1;
  padding: 0;
  margin: 0;
  border-radius: 0;
  background-color: var(--wp--preset--color--text);
}
@media only screen and (max-width: 640px) {
  .news-close {
    width: 2.875em;
  }
}
.news-close span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.news-close span::before, .news-close span::after {
  position: absolute;
  content: "";
  opacity: 0.8;
  width: 1.125em;
  height: 0.0625em;
  background-color: var(--wp--preset--color--white);
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
@media only screen and (max-width: 640px) {
  .news-close span::before, .news-close span::after {
    width: 1em;
  }
}
.news-close span::before {
  margin-top: 0;
  transform: translateY(0) rotate(-45deg);
}
.news-close span::after {
  margin-bottom: 0;
  transform: translateY(0) rotate(45deg);
}
@media (hover: hover) {
  .news-close:hover span::before, .news-close:hover span::after {
    opacity: 1;
  }
  .news-close:hover span::before {
    transform: translateY(0) rotate(-35deg);
  }
  .news-close:hover span::after {
    transform: translateY(0) rotate(35deg);
  }
}

body {
  transition: top 0.3s ease-in-out;
}
body #header {
  transition: top 0.3s ease-in-out;
}
body #sitemap-btn, body .fix-info {
  transition: margin-top 0.3s ease-in-out;
}

body.has-news {
  top: 3em;
}
body.has-news #header {
  top: 3em;
}
@media only screen and (max-width: 640px) {
  body.has-news #header {
    top: 2.625em;
  }
}
body.has-news #sitemap-btn, body.has-news .fix-info {
  margin-top: 3em;
}
@media only screen and (max-width: 640px) {
  body.has-news #sitemap-btn, body.has-news .fix-info {
    margin-top: 2.625em;
  }
}

#header {
  width: 100%;
  position: fixed;
  z-index: 20;
  top: 0;
}

.header-wrap {
  width: 100%;
  height: 8.75em;
  display: flex;
  align-items: center;
  padding: 0 2em;
}
@media only screen and (max-width: 1320px) {
  .header-wrap {
    height: 7.5em;
    padding: 0 1.5em;
  }
}
@media only screen and (max-width: 960px) {
  .header-wrap {
    height: 6.25em;
    padding: 0 1.25em;
  }
}
@media only screen and (max-width: 640px) {
  .header-wrap {
    height: 5em;
  }
}
.header-wrap .header-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em;
}
.header-wrap .header-inner #logo,
.header-wrap .header-inner #gnav,
.header-wrap .header-inner #action-buttons {
  width: 100%;
}

#header,
.header-wrap,
.header-inner,
#gnav,
#gnav.show:not(.showtop) {
  pointer-events: none;
}

.contact_button,
#gnav:not(.hide),
.logo-inner {
  pointer-events: all;
}

#logo {
  height: 100%;
  display: flex;
  align-items: center;
}
#logo .logo-inner {
  display: block;
  width: 5em;
}
@media only screen and (max-width: 640px) {
  #logo .logo-inner {
    width: 4.375em;
  }
}
#logo .logo-inner img {
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transform: translateY(10px);
}
#logo .logo-inner img.show-logo {
  opacity: 1;
  transform: translateY(0);
}
@media (hover: hover) {
  #logo .logo-inner:hover {
    opacity: 0.6;
  }
}

#gnav {
  height: 100%;
  display: flex;
  justify-content: center;
}
@media only screen and (max-width: 960px) {
  #gnav {
    display: none;
  }
}
#gnav ul.gnav-inner {
  position: relative;
  top: 0;
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 0.5em;
  transition: top 0.3s ease;
}
#gnav ul.gnav-inner li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
#gnav ul.gnav-inner li::marker {
  content: none;
}
#gnav ul.gnav-inner li {
  position: relative;
  opacity: 0;
  display: flex;
  align-items: center;
}
#gnav ul.gnav-inner li::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 5px;
  background-color: var(--wp--preset--color--yellow);
  opacity: 0;
}
#gnav ul.gnav-inner li.on::before {
  width: 100%;
  opacity: 1;
}
#gnav ul.gnav-inner li.on a {
  color: var(--wp--preset--color--text);
}
#gnav ul.gnav-inner li.on a::before {
  background-color: var(--wp--preset--color--link);
}
#gnav ul.gnav-inner a {
  position: relative;
  text-decoration: none;
  padding: 1em 0.5em;
  display: block;
  align-items: center;
  letter-spacing: 0.16em;
}
#gnav ul.gnav-inner a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 0;
  background-color: var(--wp--preset--color--main);
  opacity: 0;
  border-radius: 25px;
  transition: opacity 0.3s ease, width 0.3s ease;
}
@media (hover: hover) {
  #gnav ul.gnav-inner a:hover::before {
    width: 100%;
    opacity: 1;
  }
}
#gnav.hide ul.gnav-inner, #gnav.show:not(.showtop) ul.gnav-inner {
  position: absolute;
  top: -150px;
}

body.go #gnav li {
  opacity: 0;
  transform: translateY(0.5em);
  animation: gnavFade__y 0.6s forwards ease-out;
}
body.go #gnav li:nth-child(1) {
  animation-delay: 0.1s;
}
body.go #gnav li:nth-child(2) {
  animation-delay: 0.2s;
}
body.go #gnav li:nth-child(3) {
  animation-delay: 0.3s;
}
body.go #gnav li:nth-child(4) {
  animation-delay: 0.4s;
}
body.go #gnav li:nth-child(5) {
  animation-delay: 0.5s;
}
body.go #gnav li:nth-child(6) {
  animation-delay: 0.6s;
}
body.go #gnav li:nth-child(7) {
  animation-delay: 0.7s;
}
body.go #gnav li:nth-child(8) {
  animation-delay: 0.8s;
}

#action-buttons {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1em;
  height: 100%;
}
@media only screen and (max-width: 640px) {
  #action-buttons {
    gap: 0.8em;
  }
}
#action-buttons::after {
  content: "";
  display: block;
  width: 3em;
  height: 3em;
  pointer-events: none;
}
#action-buttons a {
  display: block;
  text-decoration: none;
  letter-spacing: 0.16em;
}
#action-buttons .contact_button .btn__outline {
  position: relative;
  border-color: var(--wp--preset--color--lightgray);
  border-width: 2px;
  padding-left: 3.2em;
  overflow: hidden;
}
@media only screen and (max-width: 640px) {
  #action-buttons .contact_button .btn__outline {
    padding-block: 0.6em;
    padding-right: 1.6em;
    padding-left: 2.6em;
    border-width: 1.5px;
  }
}
#action-buttons .contact_button .btn__outline::before {
  content: "";
  position: absolute;
  left: 1.8em;
  top: calc(50% - 0.25em);
  width: 0.5em;
  height: 0.5em;
  margin-top: 0.08em;
  background-color: var(--wp--preset--color--gray);
  border-radius: 50px;
  transition: background-color 0.3s ease, width 0.3s ease, height 0.3s ease, left 0.3s ease;
}
@media only screen and (max-width: 640px) {
  #action-buttons .contact_button .btn__outline::before {
    left: 1.4em;
    margin-top: 0.02em;
  }
}
@media (hover: hover) {
  #action-buttons .contact_button .btn__outline:hover {
    border-color: var(--wp--preset--color--main);
  }
  #action-buttons .contact_button .btn__outline:hover::before {
    left: 2em;
    background-color: #fff;
  }
}

#sitemap-btn {
  position: fixed;
  top: 2.875em;
  right: 2em;
  width: 3em;
  height: 3em;
  cursor: pointer;
  z-index: 1000;
  border: none;
  background-color: transparent;
  line-height: 1;
  padding: 0;
}
@media only screen and (max-width: 1320px) {
  #sitemap-btn {
    top: 2.25em;
    right: 1.5em;
  }
}
@media only screen and (max-width: 960px) {
  #sitemap-btn {
    right: 1.25em;
    top: 1.625em;
  }
}
@media only screen and (max-width: 640px) {
  #sitemap-btn {
    top: 1em;
  }
}
#sitemap-btn .sitemap-btn-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
#sitemap-btn .sitemap-btn-inner::before, #sitemap-btn .sitemap-btn-inner::after {
  position: absolute;
  content: "";
  width: 1.875em;
  height: 0.0625em;
  background-color: var(--wp--preset--color--link);
  transition: margin 0.3s ease-in-out, transform 0.3s ease-in-out;
}
#sitemap-btn .sitemap-btn-inner::before {
  margin-top: -0.6em;
}
#sitemap-btn .sitemap-btn-inner::after {
  margin-bottom: -0.6em;
}
@media (hover: hover) {
  #sitemap-btn .sitemap-btn-inner:hover::before {
    margin-top: 0;
  }
  #sitemap-btn .sitemap-btn-inner:hover::after {
    margin-bottom: 0;
  }
}
#sitemap-btn.active .sitemap-btn-inner:before {
  margin-top: 0;
  transform: translateY(0) rotate(-45deg);
}
#sitemap-btn.active .sitemap-btn-inner:after {
  margin-bottom: 0;
  transform: translateY(0) rotate(45deg);
}

body.go .contact_button {
  opacity: 0;
  transform: translateY(0.5em);
  animation: gnavFade__y 0.6s forwards ease-out;
  animation-delay: 0.1s;
}
body.go #sitemap-btn {
  opacity: 0;
  transform: translateY(0.5em);
  animation: gnavFade__y 0.6s forwards ease-out;
  animation-delay: 0.2s;
}

main {
  display: block;
}

.page-navigation {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-top: 10em;
  margin-bottom: 10em;
}
@media only screen and (max-width: 1320px) {
  .page-navigation {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .page-navigation {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .page-navigation {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.page-navigation:first-child {
  margin-top: 0;
}
.page-navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 1.5em;
  margin-right: 1.5em;
}
.page-navigation ul li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.page-navigation ul li::marker {
  content: none;
}
@media only screen and (max-width: 640px) {
  .page-navigation ul {
    order: -1;
    width: 100%;
    margin-bottom: 1.2em;
  }
}
.page-navigation ul a, .page-navigation ul span {
  position: relative;
  display: inline-block;
  margin-left: 0.2em;
  margin-right: 0.2em;
  padding: 0.9em 1.2em;
  color: var(--wp--preset--color--text);
}
.page-navigation ul a {
  text-decoration: none;
  border-bottom: 1px solid #fff;
}
@media (hover: hover) {
  .page-navigation ul a:hover {
    color: var(--wp--preset--color--main);
    border-color: var(--wp--preset--color--border);
  }
}
.page-navigation ul .on span::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  aspect-ratio: 1/1;
  border-radius: 100%;
  width: 100%;
  background-color: var(--wp--preset--color--yellow);
  z-index: -1;
}
.page-navigation .first-page,
.page-navigation .end-page,
.page-navigation .prev-page,
.page-navigation .next-page {
  text-decoration: none;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em 1em;
  border-radius: 0.5em;
  border: 1px solid var(--wp--preset--color--border);
  color: var(--wp--preset--color--text);
  opacity: 0.6;
  position: relative;
}
.page-navigation .first-page::before,
.page-navigation .end-page::before,
.page-navigation .prev-page::before,
.page-navigation .next-page::before {
  margin-top: 0 !important;
}
.page-navigation .first-page span,
.page-navigation .end-page span,
.page-navigation .prev-page span,
.page-navigation .next-page span {
  display: none;
}
@media (hover: hover) {
  .page-navigation .first-page:hover,
  .page-navigation .end-page:hover,
  .page-navigation .prev-page:hover,
  .page-navigation .next-page:hover {
    opacity: 1;
    border: 1px solid var(--wp--preset--color--lightgray);
    background-color: var(--wp--preset--color--lightgray);
  }
}
.page-navigation .first-page,
.page-navigation .next-page {
  margin-right: 0.4em;
}
.page-navigation .first-page::before {
  content: "\e305";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
.page-navigation .end-page::before {
  content: "\e306";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
@media only screen and (max-width: 640px) {
  .page-navigation .prev-page {
    margin-right: 3.7em;
  }
}
.page-navigation .prev-page::before {
  content: "\e303";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
.page-navigation .next-page::before {
  content: "\e304";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
.page-navigation + .back-button {
  border: none;
  padding-top: 0;
}

#others {
  margin-top: 12.5em;
  padding-top: 5em;
  text-align: center;
  border-top: 1px solid var(--wp--preset--color--border);
}
@media only screen and (max-width: 960px) {
  #others {
    padding-top: 4em;
    margin-top: 10em;
  }
}
@media only screen and (max-width: 640px) {
  #others {
    padding-top: 3em;
    margin-top: 5em;
  }
}
#others > *:first-child {
  margin-top: 0 !important;
}
#others h2 {
  font-weight: normal !important;
  margin-bottom: 1.8em !important;
}
@media only screen and (max-width: 960px) {
  #others h2 {
    margin-bottom: 1.6em !important;
  }
}
@media only screen and (max-width: 640px) {
  #others h2 {
    margin-bottom: 1.4em !important;
  }
}
#others .swiper-works {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}
@media only screen and (max-width: 960px) {
  #others .swiper-works .swiper-button-prev {
    left: -2.8125em;
  }
}
@media only screen and (max-width: 960px) {
  #others .swiper-works .swiper-button-next {
    right: -2.8125em;
  }
}

.back-button {
  margin-top: 10em;
  margin-bottom: 10em;
  padding-top: 5em;
  border-top: 1px solid var(--wp--preset--color--border);
  text-align: center;
}
@media only screen and (max-width: 1320px) {
  .back-button {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .back-button {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .back-button {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.back-button:first-child {
  margin-top: 0;
}
.back-button a {
  padding: 0.4em;
}
.back-button > *:first-child {
  margin-top: 0 !important;
}
#cta {
  background-color: var(--wp--preset--color--lightbg);
  margin-top: 12.5em;
}
@media only screen and (max-width: 960px) {
  #cta {
    margin-top: 10em;
  }
}
@media only screen and (max-width: 640px) {
  #cta {
    margin-top: 7.5em;
    padding: 0;
  }
}
#cta .cta-inner {
  position: relative;
  display: grid;
  gap: 0 6em;
  grid-template-columns: repeat(2, 1fr);
  padding-inline: 5em;
}
@media only screen and (max-width: 1320px) {
  #cta .cta-inner {
    gap: 0 5em;
  }
}
@media only screen and (max-width: 640px) {
  #cta .cta-inner {
    gap: 0;
  }
}
@media only screen and (max-width: 1320px) {
  #cta .cta-inner {
    padding-inline: 2.5em;
  }
}
@media only screen and (max-width: 960px) {
  #cta .cta-inner {
    padding-inline: 0;
  }
}
@media only screen and (max-width: 640px) {
  #cta .cta-inner {
    grid-template-columns: repeat(1, 1fr);
  }
}
#cta .cta-inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 0.5px);
  width: 1px;
  height: 100%;
  background-color: #fff;
}
@media only screen and (max-width: 640px) {
  #cta .cta-inner::before {
    display: none;
  }
}
#cta .cta-box {
  padding-block: 6em;
  border-top: 1px solid #fff;
}
@media only screen and (max-width: 1320px) {
  #cta .cta-box {
    padding-block: 4.75em;
  }
}
@media only screen and (max-width: 640px) {
  #cta .cta-box {
    padding: 3.75em 1.875em;
  }
}
#cta .cta-box:nth-child(1) {
  border-top: none;
}
@media only screen and (min-width: 641px) {
  #cta .cta-box:nth-child(2) {
    border-top: none;
  }
}
#cta .cta-title {
  font-size: 1.25em;
  font-weight: bold;
  margin-bottom: 1.6em;
}
#cta p + p {
  margin-top: 1.6em;
}
#cta a {
  margin: 0;
  border: none;
}

.phantom-animation .cta-inner .cta-box {
  opacity: 0;
  transform: translateY(0.5em);
  animation: gnavFade__y 1s forwards ease-out;
}
.phantom-animation .cta-inner .cta-box:nth-child(1) {
  animation-delay: 0.4s;
}
.phantom-animation .cta-inner .cta-box:nth-child(2) {
  animation-delay: 0.8s;
}

.fix-info {
  position: fixed;
  right: -0.7em;
  top: 12.9em;
  transform: rotate(90deg);
}
@media only screen and (max-width: 1320px) {
  .fix-info {
    display: none;
  }
}
.fix-info ul {
  display: flex;
  gap: 0;
}
.fix-info li {
  display: flex;
  align-items: center;
  justify-content: center;
}
.fix-info li + li {
  margin-left: 1.3em;
}
body.go .fix-info .sns-link {
  opacity: 0;
  transform: translateX(-0.5em);
  animation: gnavFade__x 0.6s forwards ease-out;
}

footer {
  margin-top: 5em;
  padding-bottom: 3em;
}
@media only screen and (max-width: 960px) {
  footer {
    margin-top: 4em;
  }
}

.footer-inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  gap: 2em;
}
@media only screen and (max-width: 960px) {
  .footer-inner {
    flex-direction: column;
    gap: 2.5em;
  }
}
.footer-inner .footer-logo {
  width: 100%;
  max-width: 19.625em;
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-logo {
    width: 100%;
    text-align: center;
    margin-inline: auto;
  }
}
.footer-inner .footer-logo .footer-logo-inner {
  width: 100%;
  display: inline-flex;
  justify-content: flex-start;
  gap: 1.5em;
}
@media only screen and (max-width: 640px) {
  .footer-inner .footer-logo .footer-logo-inner {
    flex-direction: column;
    align-items: center;
  }
}
@media (hover: hover) {
  .footer-inner .footer-logo a:hover {
    opacity: 0.6;
  }
}
.footer-inner .footer-logo a.icon-40th::after {
  display: none;
}
.footer-inner .footer-logo a img {
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .footer-inner .footer-logo a img {
    width: 91%;
  }
}
.footer-inner .footer-logo a img:first-child {
  max-width: 13.5em;
  flex: 1;
  transform: translateX(-0.3em);
}
.footer-inner .footer-logo a img.logo-40th {
  max-width: 6.25em;
  margin-inline: auto;
}
.footer-inner .footer-logo p {
  font-size: 0.75em;
  letter-spacing: 0.02em;
  line-height: 1.4;
  margin-top: 2em;
  color: var(--wp--preset--color--gray);
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-logo p {
    margin-top: 1.5em;
  }
}
.footer-inner .footer-logo p span {
  display: inline-block;
}
.footer-inner .footer-logo p a {
  text-decoration: none;
}
.footer-inner .footer-address {
  display: flex;
  gap: 2em;
  line-height: 1.2;
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-address {
    gap: 1.5em;
    justify-content: center;
    text-align: center;
    line-height: 1.4;
  }
}
.footer-inner .footer-address address {
  border-left: 1px solid var(--wp--preset--color--lightgray);
  padding-left: 2em;
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-address address {
    padding-left: 1.5em;
  }
  .footer-inner .footer-address address:first-child {
    border-left: none;
    padding-left: 0;
  }
}
.footer-inner .footer-address strong {
  display: block;
  font-weight: bold;
  margin-bottom: 0.8em;
}
.footer-inner .footer-address a {
  display: inline-block;
  padding: 0.4em 0;
}
.footer-inner .footer-info {
  display: flex;
  justify-content: space-between;
  gap: 2em;
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-info {
    flex-direction: column;
  }
}
@media only screen and (max-width: 960px) {
  .footer-inner .footer-bnrlinks {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5em;
  }
}
.footer-inner .footer-bnrlinks li {
  display: block;
  width: 12.125em;
}
.footer-inner .footer-bnrlinks li + li {
  margin-top: 0.6em;
}
@media screen and (max-width: 680px) {
  .footer-inner .footer-bnrlinks li + li {
    margin-top: 0;
  }
}
.footer-inner .footer-bnrlinks li a {
  display: inline-block;
}
.footer-inner .footer-bnrlinks li a::after {
  display: none;
}
@media (hover: hover) {
  .footer-inner .footer-bnrlinks li a:hover {
    opacity: 0.6;
  }
}

.footer-links {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 3em;
}
@media only screen and (max-width: 960px) {
  .footer-links {
    margin-top: 2em;
  }
}
.footer-links .footer-links__sns, .footer-links .footer-links__txt {
  display: flex;
  align-items: center;
  gap: 0.8em;
}
.footer-links .footer-links__sns small, .footer-links .footer-links__txt small {
  display: inline-block;
  font-size: 0.75em;
}
.footer-links .footer-links__sns {
  transform: translateX(-0.47em);
}

.sns-link a {
  display: inline-block;
  padding: 0.4em;
  filter: invert(34%) sepia(4%) saturate(83%) hue-rotate(172deg) brightness(90%) contrast(85%);
}
.sns-link a img {
  width: auto;
  height: 1.5em;
}
.sns-link a::after {
  display: none;
}
@media (hover: hover) {
  .sns-link a:hover {
    filter: invert(43%) sepia(77%) saturate(1250%) hue-rotate(190deg) brightness(90%) contrast(90%);
  }
}

#sitemap {
  transition: opacity 0.4s ease-in-out, z-index 0.4s ease-in-out;
  opacity: 0;
  z-index: -10;
  pointer-events: none;
}
#sitemap li {
  animation: sitemapClose 0.4s forwards ease-out;
}
#sitemap #sitemap-logo {
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
}
#sitemap.active {
  opacity: 1;
  z-index: 900;
  pointer-events: all;
}
#sitemap.active li {
  opacity: 0;
  transform: translateX(1em);
  animation: sitemapFade 0.6s forwards ease-out;
}
#sitemap.active li:nth-child(1) {
  animation-delay: 0.1s;
}
#sitemap.active li:nth-child(2) {
  animation-delay: 0.2s;
}
#sitemap.active li:nth-child(3) {
  animation-delay: 0.3s;
}
#sitemap.active li:nth-child(4) {
  animation-delay: 0.4s;
}
#sitemap.active li:nth-child(5) {
  animation-delay: 0.5s;
}
#sitemap.active li:nth-child(6) {
  animation-delay: 0.6s;
}
#sitemap.active li:nth-child(7) {
  animation-delay: 0.7s;
}
#sitemap.active li:nth-child(8) {
  animation-delay: 0.8s;
}
#sitemap.active #sitemap-logo {
  opacity: 1;
}
#sitemap.close {
  opacity: 1;
  z-index: 100;
  transition: opacity 0.2s ease-in-out, z-index 0.2s ease-in-out;
}
#sitemap.close li {
  opacity: 1;
  transform: translateX(0);
}

#sitemap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 225, 0, 0.95);
  display: flex;
  overflow-y: auto;
}
@media only screen and (max-width: 960px) {
  #sitemap {
    padding-inline: 4em;
    min-height: auto;
  }
}
@media only screen and (max-width: 640px) {
  #sitemap {
    padding-inline: 2em;
  }
}
#sitemap .sitemap-inner {
  display: flex;
  margin: auto auto auto 0;
  padding: 4em 0;
  gap: 5em;
}
@media only screen and (max-width: 960px) {
  #sitemap .sitemap-inner {
    gap: 3em;
    padding: 3em 0;
  }
}
@media only screen and (max-width: 640px) {
  #sitemap .sitemap-inner {
    flex-direction: column;
    gap: 2em;
    padding: 2em 0;
  }
}
#sitemap ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
#sitemap ul li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
#sitemap ul li::marker {
  content: none;
}
#sitemap a {
  position: relative;
  display: inline-block;
}
#sitemap #sitemap-logo {
  transform: translateY(-1.8em);
  width: 13.75em;
}
@media only screen and (max-width: 960px) {
  #sitemap #sitemap-logo {
    transform: translateY(-1.2em);
    width: 10em;
  }
}
@media only screen and (max-width: 640px) {
  #sitemap #sitemap-logo {
    width: 8.125em;
    transform: translate(-0.5em, 0);
  }
}
#sitemap #sitemap-logo a {
  display: inline-block;
}
#sitemap #sitemap-logo a img {
  filter: brightness(0) invert(1);
  transition: opacity 0.3s ease;
}
@media (hover: hover) {
  #sitemap #sitemap-logo a:hover img {
    opacity: 0.7;
  }
}
#sitemap #sitemap-nav {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
@media only screen and (max-width: 640px) {
  #sitemap #sitemap-nav {
    gap: 2.5em;
  }
}
#sitemap .sitemap-menu {
  display: flex;
  flex-direction: column;
  gap: 1em;
}
@media only screen and (max-width: 640px) {
  #sitemap .sitemap-menu {
    gap: 0.5em;
  }
}
#sitemap .sitemap-menu li {
  display: flex;
  align-items: flex-start;
  gap: 4em;
}
@media only screen and (max-width: 960px) {
  #sitemap .sitemap-menu li {
    gap: 2.5em;
  }
}
#sitemap .sitemap-menu li.on > a {
  color: var(--wp--preset--color--text);
}
#sitemap .sitemap-menu li.on > a::before {
  background-color: var(--wp--preset--color--link);
}
#sitemap .sitemap-menu a {
  position: relative;
  display: block;
  width: 6em;
  font-size: 1.625em;
  text-decoration: none;
  letter-spacing: 0.16em;
  line-height: 1.2;
  padding: 0.5em 0.3em;
}
@media only screen and (max-width: 960px) {
  #sitemap .sitemap-menu a {
    font-size: 1.25em;
  }
}
#sitemap .sitemap-menu a::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 1px;
  width: 0;
  background-color: var(--wp--preset--color--main);
  opacity: 0;
  border-radius: 25px;
  transition: opacity 0.3s ease, width 0.3s ease;
}
@media (hover: hover) {
  #sitemap .sitemap-menu a:hover::before {
    opacity: 1;
    width: 100%;
  }
}
#sitemap .sitemap-menu .sitemap-menu-child {
  flex: 1;
}
#sitemap .sitemap-menu .sitemap-menu-child li {
  width: 100%;
  display: block;
  position: relative;
}
#sitemap .sitemap-menu .sitemap-menu-child li::after {
  content: "";
  position: absolute;
  top: 1.5em;
  left: -4em;
  height: 1px;
  width: 4em;
  background-color: var(--wp--preset--color--link);
}
@media only screen and (max-width: 960px) {
  #sitemap .sitemap-menu .sitemap-menu-child li::after {
    top: 1.3em;
    left: -2.8em;
    width: 2.5em;
  }
}
#sitemap .sitemap-menu .sitemap-menu-child li a {
  width: 100%;
  display: block;
}
#sitemap .sitemap-links__sns {
  display: flex;
  gap: 0.5em;
}
@media only screen and (max-width: 640px) {
  #sitemap .sitemap-links__sns {
    transform: translateX(-0.2em);
  }
}
#go-top {
  position: fixed;
  right: 0.9em;
  bottom: 2em;
  z-index: 50;
  transition: right 0.3s ease-in-out;
}
@media only screen and (max-width: 960px) {
  #go-top {
    display: none;
  }
}
#go-top.active .ball {
  animation: drop-in 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  opacity: 1;
}
#go-top.active .shadow-box {
  animation: shadow-drop 0.9s ease-out forwards;
  opacity: 0.4;
}
#go-top.leave .ball {
  animation: drop-out 0.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
#go-top.leave .shadow-box {
  animation: shadow-out 0.4s ease-in forwards;
}
#go-top a {
  position: relative;
  display: block;
  width: 5em;
  height: 5em;
  text-decoration: none;
}

@media (hover: hover) {
  body.scrolled #go-top a:hover .ball {
    animation: bounce 0.85s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  }
  body.scrolled #go-top a:hover .shadow-box {
    animation: shadow-black 0.85s cubic-bezier(0.25, 0.46, 0.45, 0.94) infinite;
  }
}

.ball {
  display: inline-block;
  position: absolute;
  bottom: 16%;
  left: calc(50% - 0.5em);
  background-color: var(--wp--preset--color--main);
  width: 0.875em;
  height: 0.875em;
  border-radius: 100px;
  z-index: 1;
  opacity: 0;
}

.shadow-box {
  display: inline-block;
  position: absolute;
  bottom: 13%;
  left: calc(50% - 0.5em);
  width: 0.875em;
  height: 0.375em;
  background-color: #888;
  opacity: 0;
  border-radius: 50%;
  filter: blur(3px);
}

.badge::after {
  content: "";
  position: absolute;
  margin-top: -0.3em;
  width: 0.3em;
  height: 0.3em;
  border-radius: 100%;
  background-color: var(--wp--preset--color--red);
}

.phantom {
  transform: translateY(70px);
  transition: opacity 1.5s, transform 1.5s;
  opacity: 0;
}
.phantom.phantom-animation {
  transform: translateY(0);
  opacity: 1;
}

.col-1 {
  grid-column: span 1;
}

.col-2 {
  grid-column: span 2;
}

.col-3 {
  grid-column: span 3;
}

.col-4 {
  grid-column: span 4;
}

.col-5 {
  grid-column: span 5;
}

.col-6 {
  grid-column: span 6;
}

.col-7 {
  grid-column: span 7;
}

.col-8 {
  grid-column: span 8;
}

.col-9 {
  grid-column: span 9;
}

.col-10 {
  grid-column: span 10;
}

.col-11 {
  grid-column: span 11;
}

.col-12 {
  grid-column: span 12;
}

.contents-wrap {
  position: relative;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  align-items: flex-start;
  column-gap: 2em;
}
@media only screen and (max-width: 960px) {
  .contents-wrap {
    display: block;
  }
}
.contents-wrap .contents-bodywrap {
  grid-column: span 12;
}
@media only screen and (min-width: 1601px) {
  .contents-wrap .contents-bodywrap {
    grid-column: 2/span 10;
  }
}
@media screen and (max-width: pc0px) {
  .contents-wrap .contents-bodywrap {
    grid-column: 2/span 10;
  }
}
.contents-wrap .contents-bodywrap > *:last-child {
  margin-bottom: 0 !important;
}

@media only screen and (min-width: 1601px) {
  body.works .contents-wrap .contents-bodywrap {
    grid-column: 1/span 12;
  }
}
@media screen and (max-width: pc0px) {
  body.works .contents-wrap .contents-bodywrap {
    grid-column: 1/span 12;
  }
}

.title-area {
  width: 100%;
  padding-block: 4em;
  margin-bottom: 2em;
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
  overflow: hidden;
}
@media only screen and (max-width: 960px) {
  .title-area {
    margin-bottom: 1.5em;
  }
}
@media only screen and (max-width: 640px) {
  .title-area {
    margin-bottom: 1em;
  }
}
.title-area h1 {
  font-size: 1.25em;
  font-weight: bold;
  transform: translateX(0);
  transition: transform 0.2s ease-in-out, letter-spacing 0.4s ease-in-out;
}
.title-area h2 {
  font-size: 1em;
  transform: translateX(0);
  transition: transform 0.2s ease-in-out, letter-spacing 0.4s ease-in-out;
}
.title-area + .contents-bodywrap {
  margin-top: 2em;
}

.brand-top {
  margin-top: 0;
  padding: 0;
  aspect-ratio: 1600/762;
  overflow: hidden;
  margin-bottom: 4em;
}
@media only screen and (max-width: 960px) {
  .brand-top {
    margin-bottom: 3em;
    aspect-ratio: 3/2;
  }
}
@media only screen and (max-width: 640px) {
  .brand-top {
    margin-bottom: 2em;
  }
}
.brand-top img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

body:not(:has(.brand-top)) .contents-wrap {
  margin-top: 2.5em;
}

body.works h1 {
  margin-top: 0;
  margin-bottom: 0.4em;
  letter-spacing: 0.1em;
  font-size: 2.5em;
}
@media only screen and (max-width: 1320px) {
  body.works h1 {
    font-size: 2.25em;
  }
}
@media only screen and (max-width: 960px) {
  body.works h1 {
    font-size: 2em;
  }
}
@media only screen and (max-width: 640px) {
  body.works h1 {
    font-size: 1.75em;
  }
}
body.works h1 span {
  display: block;
  font-size: 0.4625em;
  margin-bottom: 0.6em;
}

.works-tag {
  position: relative;
  z-index: 10;
  line-height: 1.2 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em 0;
  margin-top: 0.25em;
}
.works-tag span, .works-tag a {
  display: inline-block;
  font-size: 0.75vw;
  margin-right: 0.5em;
  padding-right: 0.5em;
  border-right: 1px solid var(--wp--preset--color--gray);
}
@media screen and (max-width: 1600px) {
  .works-tag span, .works-tag a {
    font-size: 12px;
  }
}
.works-tag span:last-child, .works-tag a:last-child {
  border-right: none;
}

body:not(.go) .title-area {
  opacity: 0;
}
body:not(.go) .title-area h1, body:not(.go) .title-area h2 {
  transform: translateX(1em);
  letter-spacing: 0.15em;
}

body:not(.home):not(.project).scrolled .title-area {
  opacity: 0;
}
body:not(.home):not(.project).scrolled .title-area h1, body:not(.home):not(.project).scrolled .title-area h2 {
  transform: translateX(1em);
  letter-spacing: 0.15em;
}

.side-menu {
  position: relative;
  z-index: 1;
  grid-column: span 3;
  position: sticky;
  top: 10em;
  left: 0;
  margin-right: 3em;
}
@media only screen and (max-width: 960px) {
  .side-menu {
    margin-right: 0;
    position: unset;
  }
}
.side-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.side-menu ul li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.side-menu ul li::marker {
  content: none;
}
.side-menu ul li {
  line-height: 1.4;
}
.side-menu + .contents-bodywrap {
  grid-column: span 9;
}

body.go .anchor-menu li,
body.go .link-menu li,
body.go #category-wrap label,
body.go #category-wrap button {
  opacity: 0;
  transform: translateX(0.5em);
  animation: gnavFade__x 0.6s forwards ease-out;
  will-change: opacity, transform;
}
body.go .anchor-menu li:nth-child(1),
body.go .link-menu li:nth-child(1),
body.go #category-wrap label:nth-child(1),
body.go #category-wrap button:nth-child(1) {
  animation-delay: 0.1s;
}
body.go .anchor-menu li:nth-child(2),
body.go .link-menu li:nth-child(2),
body.go #category-wrap label:nth-child(2),
body.go #category-wrap button:nth-child(2) {
  animation-delay: 0.15s;
}
body.go .anchor-menu li:nth-child(3),
body.go .link-menu li:nth-child(3),
body.go #category-wrap label:nth-child(3),
body.go #category-wrap button:nth-child(3) {
  animation-delay: 0.2s;
}
body.go .anchor-menu li:nth-child(4),
body.go .link-menu li:nth-child(4),
body.go #category-wrap label:nth-child(4),
body.go #category-wrap button:nth-child(4) {
  animation-delay: 0.25s;
}
body.go .anchor-menu li:nth-child(5),
body.go .link-menu li:nth-child(5),
body.go #category-wrap label:nth-child(5),
body.go #category-wrap button:nth-child(5) {
  animation-delay: 0.3s;
}
body.go .anchor-menu li:nth-child(6),
body.go .link-menu li:nth-child(6),
body.go #category-wrap label:nth-child(6),
body.go #category-wrap button:nth-child(6) {
  animation-delay: 0.35s;
}
body.go .anchor-menu li:nth-child(7),
body.go .link-menu li:nth-child(7),
body.go #category-wrap label:nth-child(7),
body.go #category-wrap button:nth-child(7) {
  animation-delay: 0.4s;
}
body.go .anchor-menu li:nth-child(8),
body.go .link-menu li:nth-child(8),
body.go #category-wrap label:nth-child(8),
body.go #category-wrap button:nth-child(8) {
  animation-delay: 0.45s;
}
body.go .anchor-menu li:nth-child(9),
body.go .link-menu li:nth-child(9),
body.go #category-wrap label:nth-child(9),
body.go #category-wrap button:nth-child(9) {
  animation-delay: 0.5s;
}
body.go .anchor-menu li:nth-child(10),
body.go .link-menu li:nth-child(10),
body.go #category-wrap label:nth-child(10),
body.go #category-wrap button:nth-child(10) {
  animation-delay: 0.55s;
}
body.go .anchor-menu li:nth-child(11),
body.go .link-menu li:nth-child(11),
body.go #category-wrap label:nth-child(11),
body.go #category-wrap button:nth-child(11) {
  animation-delay: 0.6s;
}
body.go .anchor-menu li:nth-child(12),
body.go .link-menu li:nth-child(12),
body.go #category-wrap label:nth-child(12),
body.go #category-wrap button:nth-child(12) {
  animation-delay: 0.65s;
}
body.go .anchor-menu li:nth-child(13),
body.go .link-menu li:nth-child(13),
body.go #category-wrap label:nth-child(13),
body.go #category-wrap button:nth-child(13) {
  animation-delay: 0.7s;
}
body.go .anchor-menu li:nth-child(14),
body.go .link-menu li:nth-child(14),
body.go #category-wrap label:nth-child(14),
body.go #category-wrap button:nth-child(14) {
  animation-delay: 0.75s;
}
body.go .anchor-menu li:nth-child(15),
body.go .link-menu li:nth-child(15),
body.go #category-wrap label:nth-child(15),
body.go #category-wrap button:nth-child(15) {
  animation-delay: 0.8s;
}
body.go .anchor-menu li:nth-child(16),
body.go .link-menu li:nth-child(16),
body.go #category-wrap label:nth-child(16),
body.go #category-wrap button:nth-child(16) {
  animation-delay: 0.85s;
}
body.go .anchor-menu li:nth-child(17),
body.go .link-menu li:nth-child(17),
body.go #category-wrap label:nth-child(17),
body.go #category-wrap button:nth-child(17) {
  animation-delay: 0.9s;
}
body.go .anchor-menu li:nth-child(18),
body.go .link-menu li:nth-child(18),
body.go #category-wrap label:nth-child(18),
body.go #category-wrap button:nth-child(18) {
  animation-delay: 1s;
}
body.go .anchor-menu li:nth-child(19),
body.go .link-menu li:nth-child(19),
body.go #category-wrap label:nth-child(19),
body.go #category-wrap button:nth-child(19) {
  animation-delay: 1.1s;
}
body.go .anchor-menu li:nth-child(20),
body.go .link-menu li:nth-child(20),
body.go #category-wrap label:nth-child(20),
body.go #category-wrap button:nth-child(20) {
  animation-delay: 1.15s;
}
body.go .anchor-menu li:nth-child(21),
body.go .link-menu li:nth-child(21),
body.go #category-wrap label:nth-child(21),
body.go #category-wrap button:nth-child(21) {
  animation-delay: 1.2s;
}
body.go .anchor-menu li:nth-child(22),
body.go .link-menu li:nth-child(22),
body.go #category-wrap label:nth-child(22),
body.go #category-wrap button:nth-child(22) {
  animation-delay: 1.25s;
}

ul.anchor-menu,
ul.link-menu {
  display: flex;
  flex-direction: column;
  margin-top: -0.5em;
  margin-bottom: 2em;
  padding-right: 2em;
}
@media screen and (max-width: 1080px) {
  ul.anchor-menu,
  ul.link-menu {
    padding-right: 0;
  }
}
@media only screen and (max-width: 960px) {
  ul.anchor-menu,
  ul.link-menu {
    display: none;
  }
}
ul.anchor-menu li,
ul.link-menu li {
  position: relative;
}
ul.anchor-menu li a,
ul.link-menu li a {
  position: relative;
  display: block;
  text-decoration: none;
  padding-block: 1em;
  display: flex;
  align-items: center;
  gap: 0.3em;
  opacity: 0.7;
}
@media (hover: hover) {
  ul.anchor-menu li:hover,
  ul.link-menu li:hover {
    color: var(--wp--preset--color--text);
    opacity: 1;
  }
  ul.anchor-menu li:hover > a,
  ul.link-menu li:hover > a {
    color: var(--wp--preset--color--text);
    opacity: 1;
  }
}

ul.anchor-menu a::before {
  content: "";
  display: inline-block;
  width: 0.8em;
  height: 1px;
  background-color: var(--wp--preset--color--gray);
  transition: width 0.3s ease-in-out;
}
@media (hover: hover) {
  ul.anchor-menu a:hover::before {
    width: 1.2em;
  }
}
ul.anchor-menu a.here {
  color: var(--wp--preset--color--text);
  opacity: 1;
}

ul.link-menu li::after {
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -0.25em;
  content: "";
  display: inline-block;
  margin-left: auto;
  width: 0.5em;
  height: 0.5em;
  border-radius: 100%;
  opacity: 0;
  background-color: var(--wp--preset--color--gray);
  transition: opacity 0.3s ease-in-out;
}
@media (hover: hover) {
  ul.link-menu li:hover::after {
    opacity: 1;
  }
  ul.link-menu li:hover .link-menu__child {
    display: block;
  }
}
ul.link-menu .link-menu__child {
  list-style: none;
  padding: 0;
  margin: 0;
  padding-block: 0.5em;
  border-radius: 0.5em;
  width: 14.5em;
  position: absolute;
  top: 0;
  left: 100%;
  position: absolute;
  z-index: 2;
  background-color: #fff;
  display: none;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.1);
}
ul.link-menu .link-menu__child li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
ul.link-menu .link-menu__child li::marker {
  content: none;
}
ul.link-menu .link-menu__child li {
  padding-inline: 1.5em;
}
ul.link-menu .link-menu__child li::after {
  right: 1em;
}
ul.link-menu .link-menu__child li a {
  padding-block: 1em;
  font-size: 0.875rem;
}

.result-item-wrap {
  vertical-align: middle;
  text-align: right;
  margin-top: -0.2em;
  margin-bottom: 3em;
}
@media only screen and (max-width: 960px) {
  .result-item-wrap {
    margin-top: 0em;
    margin-bottom: 2em;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1.5em;
  }
}

.result-item {
  flex: 1;
  display: inline-block;
  text-align: left;
  font-size: 0.875em;
  color: var(--wp--preset--color--link);
  transform: translateY(-0.2em);
}
@media only screen and (max-width: 960px) {
  .result-item {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.3em;
  }
}
@media only screen and (max-width: 640px) {
  .result-item {
    flex-direction: column;
  }
}
.result-item .result-count {
  display: inline-block;
  margin-block: 0.5em;
}
@media only screen and (max-width: 960px) {
  .result-item .result-count {
    margin-block: 0;
  }
}
.result-item:has(.result-all) {
  display: inline-block;
}
.result-item .result-all, .result-item .result-select {
  margin-block: 0.5em;
  flex: 1;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.5em 0.5em;
  line-height: 1.2 !important;
}
@media only screen and (max-width: 960px) {
  .result-item .result-all, .result-item .result-select {
    margin-block: 0;
    gap: 0.3em;
  }
}
.result-item .result-all span, .result-item .result-select span {
  display: inline-block;
  padding-right: 0.5em;
  border-right: 1px solid var(--wp--preset--color--lightgray);
}
.result-item .result-all span:first-child, .result-item .result-select span:first-child {
  margin-left: 0;
}
.result-item .result-all span:last-child, .result-item .result-select span:last-child {
  border: none;
  padding-right: 0;
}

.filter-btn {
  width: fit-content;
  margin-block: 0.5em;
  margin-left: 0.5em;
  padding: 0.5em 1.3em;
  background-color: var(--wp--preset--color--lightbg);
  color: var(--wp--preset--color--link);
  border: none;
  border-radius: 0.5em;
  display: inline-flex;
  align-items: center;
  gap: 0.3em;
  cursor: pointer;
}
@media only screen and (max-width: 960px) {
  .filter-btn {
    margin-block: 0;
    margin-left: auto;
  }
}
.filter-btn::before {
  content: "\e605";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  font-size: 1.25em;
}
@media (hover: hover) {
  .filter-btn:hover {
    color: var(--wp--preset--color--text);
    background-color: var(--wp--preset--color--colorgray);
  }
}
.filter-btn span {
  display: inline-block;
  font-size: 0.75rem;
}

#category-wrap {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow-y: scroll;
  scrollbar-width: none;
  background-color: rgba(0, 0, 0, 0.9);
  padding: 4em;
  padding-bottom: 7.5em;
  z-index: 1001;
  transition: opacity 0.4s ease-in-out, z-index 0.4s ease-in-out;
  opacity: 0;
  z-index: -10;
  pointer-events: none;
}
@media only screen and (max-width: 960px) {
  #category-wrap {
    padding: 3em 4em;
    padding-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  #category-wrap {
    padding: 2em;
    padding-bottom: 7.5em;
  }
}
#category-wrap.active {
  display: block;
  opacity: 1;
  z-index: 1001;
  pointer-events: all;
}
#category-wrap form {
  margin: 0;
}

.category-item-wrap a {
  text-decoration: none;
  color: #fff;
}
@media (hover: hover) {
  .category-item-wrap a:hover {
    color: var(--wp--preset--color--hover);
  }
}
.category-item-wrap label, .category-item-wrap .category-all, .category-item-wrap a {
  width: 100%;
  padding-block: 1em;
  margin-left: 0;
  line-height: 1.4;
  cursor: pointer;
  display: flex;
  align-items: center;
  user-select: none;
  gap: 0.4em;
}
.category-item-wrap label span, .category-item-wrap .category-all span, .category-item-wrap a span {
  color: var(--wp--preset--color--white);
  opacity: 0.7;
  transition: color 0.3s ease-in-out, opacity 0.3s ease-in-out;
}
.category-item-wrap label input[type=checkbox], .category-item-wrap label i, .category-item-wrap .category-all input[type=checkbox], .category-item-wrap .category-all i, .category-item-wrap a input[type=checkbox], .category-item-wrap a i {
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 0.875em;
  height: 0.875em;
  background-color: var(--wp--preset--color--link);
  border-radius: 50%;
  position: relative;
  transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}
.category-item-wrap label input[type=checkbox]:checked, .category-item-wrap label input[type=checkbox].checked, .category-item-wrap label i:checked, .category-item-wrap label i.checked, .category-item-wrap .category-all input[type=checkbox]:checked, .category-item-wrap .category-all input[type=checkbox].checked, .category-item-wrap .category-all i:checked, .category-item-wrap .category-all i.checked, .category-item-wrap a input[type=checkbox]:checked, .category-item-wrap a input[type=checkbox].checked, .category-item-wrap a i:checked, .category-item-wrap a i.checked {
  background-color: var(--wp--preset--color--main) !important;
  border-color: var(--wp--preset--color--main) !important;
}
.category-item-wrap label input[type=checkbox]:checked + span, .category-item-wrap label input[type=checkbox].checked + span, .category-item-wrap label i:checked + span, .category-item-wrap label i.checked + span, .category-item-wrap .category-all input[type=checkbox]:checked + span, .category-item-wrap .category-all input[type=checkbox].checked + span, .category-item-wrap .category-all i:checked + span, .category-item-wrap .category-all i.checked + span, .category-item-wrap a input[type=checkbox]:checked + span, .category-item-wrap a input[type=checkbox].checked + span, .category-item-wrap a i:checked + span, .category-item-wrap a i.checked + span {
  opacity: 1;
}
@media (hover: hover) {
  .category-item-wrap label:hover input[type=checkbox], .category-item-wrap .category-all:hover input[type=checkbox], .category-item-wrap a:hover input[type=checkbox] {
    background-color: var(--wp--preset--color--colorgray);
  }
  .category-item-wrap label:hover input[type=checkbox] + span, .category-item-wrap .category-all:hover input[type=checkbox] + span, .category-item-wrap a:hover input[type=checkbox] + span {
    opacity: 1;
  }
}
.category-item-wrap .count {
  font-size: 0.75em;
  font-weight: normal;
  margin-left: 0.2em;
}

.category-item {
  display: flex;
  gap: 3em;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  padding-block: 2em;
}
@media only screen and (max-width: 960px) {
  .category-item {
    display: block;
    padding-block: 1em;
  }
}
.category-item.active .category-child-wrap {
  max-height: 50em;
  opacity: 1;
  transition: max-height 0.8s cubic-bezier(0.77, 0, 0.18, 1), opacity 0.6s ease;
}
.category-item.active .category-name::after {
  transform: translateY(0) rotate(0deg);
}
.category-item:has(.category-child-wrap) .category-name::before, .category-item:has(.category-child-wrap) .category-name::after {
  display: block;
}

.category-name {
  width: 18%;
  min-width: 12em;
  font-weight: bold;
  position: relative;
}
.category-name::before, .category-name::after {
  display: none;
  position: absolute;
  right: 0;
  content: "";
  width: 1em;
  height: 0.0625em;
  background-color: var(--wp--preset--color--white);
  transition: margin 0.3s ease-in-out, transform 0.3s ease-in-out;
}
@media only screen and (min-width: 961px) {
  .category-name::before, .category-name::after {
    display: none !important;
  }
}
.category-name::before {
  transform: translateY(0) rotate(0deg);
}
.category-name::after {
  transform: translateY(0) rotate(-270deg);
}
@media only screen and (max-width: 960px) {
  .category-name {
    width: 100%;
    min-width: 100%;
    display: flex;
    align-items: center;
  }
}

.category-child-wrap {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 1em;
}
@media screen and (max-width: 1400px) {
  .category-child-wrap {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (max-width: 980px) {
  .category-child-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 960px) {
  .category-child-wrap {
    grid-template-columns: repeat(3, 1fr);
    font-size: 0.875em;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: none;
  }
}
@media only screen and (max-width: 640px) {
  .category-child-wrap {
    grid-template-columns: repeat(2, 1fr);
  }
}

.filter-close {
  position: fixed;
  top: 2.875em;
  right: 2em;
  width: 3.5em;
  height: 3.5em;
  min-width: auto;
  cursor: pointer;
  z-index: 1000;
  border: none;
  background-color: transparent;
  line-height: 1;
  padding: 0;
  margin: 0;
  background-color: rgba(0, 0, 0, 0.5);
}
@media only screen and (max-width: 1320px) {
  .filter-close {
    top: 1.625em;
    right: 1.625em;
  }
}
@media only screen and (max-width: 960px) {
  .filter-close {
    width: 3em;
    height: 3em;
    right: 1em;
    top: 1em;
  }
}
@media only screen and (max-width: 640px) {
  .filter-close {
    top: 0.625em;
    right: 0.625em;
  }
}
.filter-close .filter-close-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.filter-close .filter-close-inner::before, .filter-close .filter-close-inner::after {
  position: absolute;
  content: "";
  width: 1.875em;
  height: 0.0625em;
  background-color: var(--wp--preset--color--white);
  transition: transform 0.3s ease-in-out;
}
.filter-close .filter-close-inner::before {
  margin-top: 0;
  transform: translateY(0) rotate(-45deg);
}
.filter-close .filter-close-inner::after {
  margin-bottom: 0;
  transform: translateY(0) rotate(45deg);
}
@media (hover: hover) {
  .filter-close:hover {
    background-color: rgba(0, 0, 0, 0.5);
  }
  .filter-close:hover .filter-close-inner::before {
    transform: translateY(0) rotate(-35deg);
  }
  .filter-close:hover .filter-close-inner::after {
    transform: translateY(0) rotate(35deg);
  }
}

.filter-btnarea {
  position: fixed;
  bottom: 2em;
  right: 2em;
  display: flex;
  gap: 0.5em;
}
@media only screen and (max-width: 1320px) {
  .filter-btnarea {
    bottom: 1.625em;
    right: 1.625em;
  }
}
@media only screen and (max-width: 960px) {
  .filter-btnarea {
    right: 1em;
    bottom: 1em;
  }
}
@media only screen and (max-width: 640px) {
  .filter-btnarea {
    bottom: 0.625em;
    right: 0.625em;
  }
}
.filter-btnarea button {
  border: none;
}
.filter-btnarea .filter-reset {
  background-color: var(--wp--preset--color--link);
  color: #fff;
}
@media (hover: hover) {
  .filter-btnarea .filter-reset:hover {
    background-color: var(--wp--preset--color--gray);
  }
}

.wp-block {
  max-width: 100%;
  clear: both;
}

p:empty::before {
  content: none;
}

.block-library-classic__toolbar * {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
.block-library-classic__toolbar .mce-ico {
  font-family: dashicons, "tinymce", Arial !important;
}

.wp-block-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4em;
  margin-block: 2em;
}
.wp-block-buttons.is-content-justification-left {
  justify-content: flex-start;
}
.wp-block-buttons.is-content-justification-center {
  justify-content: center;
}
.wp-block-buttons.is-content-justification-right {
  justify-content: flex-end;
}
.wp-block-buttons.is-content-justification-space-between {
  justify-content: space-between;
}
.wp-block-buttons.is-vertical {
  flex-direction: column;
}

.wp-block-button {
  min-width: 40px;
}
.wp-block-button .wp-block-button__link {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  margin-block: 0 !important;
}
@media (hover: hover) {
  .wp-block-button .wp-block-button__link:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
.wp-block-button.is-style-btn__outline .wp-block-button__link {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  background: #fff;
  color: var(--wp--preset--color--link);
  border-color: var(--wp--preset--color--lightgray);
}
@media (hover: hover) {
  .wp-block-button.is-style-btn__outline .wp-block-button__link:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
@media (hover: hover) {
  .wp-block-button.is-style-btn__outline .wp-block-button__link:hover {
    background: var(--color--main);
    color: var(--color--white);
  }
}
.wp-block-button.is-style-btn__reset .wp-block-button__link {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
  background: var(--color--btn__reset);
  border-color: var(--color--btn__reset);
  color: var(--color--link);
}
@media (hover: hover) {
  .wp-block-button.is-style-btn__reset .wp-block-button__link:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}
@media (hover: hover) {
  .wp-block-button.is-style-btn__reset .wp-block-button__link:hover {
    background: var(--color--main);
    border-color: var(--color--main);
    color: var(--color--btn__reset);
  }
}
.wp-block-button__width-25 {
  width: calc(25% - var(--wp--style--block-gap, 0.5em) * 0.5);
}
.wp-block-button__width-50 {
  width: calc(50% - var(--wp--style--block-gap, 0.5em) * 0.5);
}
.wp-block-button__width-75 {
  width: calc(75% - var(--wp--style--block-gap, 0.5em) * 0.5);
}
.wp-block-button__width-100 {
  width: 100%;
}

.wp-block-image {
  margin-top: 2em;
}
.wp-block-image img {
  margin: 0 !important;
}
.wp-block-image figcaption, .wp-block-image .wp-element-caption {
  background: none !important;
  color: #000 !important;
}
.wp-block-image.alignleft {
  max-width: 48%;
  margin-inline: 0 auto;
}
.wp-block-image.aligncenter, .wp-block-image.wp-block-embed.alignwide {
  max-width: 48%;
  margin-inline: auto;
}
.wp-block-image.alignright {
  max-width: 48%;
  margin-inline: auto 0;
}

.wp-block-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: 2em;
  --wp--style--gallery-gap-default: var(--wp--preset--spacing--default);
}
.wp-block-gallery.has-nested-images .wp-block-image {
  display: block;
  margin: 0;
  flex-grow: 0;
}
.wp-block-gallery.has-nested-images .wp-block-image img {
  margin: 0;
}
.wp-block-gallery.has-nested-images .wp-block-image figcaption, .wp-block-gallery.has-nested-images .wp-block-image .wp-element-caption {
  background: none !important;
  color: #000 !important;
}
.wp-block-gallery.has-nested-images.is-layout-flex {
  align-items: initial;
}
.wp-block-gallery.has-nested-images.is-layout-flex img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img {
  object-fit: cover;
  width: 100%;
  aspect-ratio: 3/2;
}
.wp-block-gallery.has-nested-images figure.wp-block-image {
  flex-grow: 0;
}
.wp-block-gallery.has-nested-images.columns-default {
  gap: var(--wp--style--unstable-gallery-gap, 15px) !important;
}
.wp-block-gallery.has-nested-images.columns-default .wp-block-image:not(#individual-image) {
  width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 15px)) !important;
}
.wp-block-gallery.has-nested-images.columns-1 .wp-block-image:not(#individual-image) {
  width: 100%;
}
.wp-block-gallery.has-nested-images.columns-2 {
  gap: calc(var(--wp--style--unstable-gallery-gap, 15px));
}
.wp-block-gallery.has-nested-images.columns-2 .wp-block-image:not(#individual-image) {
  width: calc(50% - var(--wp--style--unstable-gallery-gap, 15px) * 0.5);
}
.wp-block-gallery.has-nested-images.columns-3 {
  gap: calc(var(--wp--style--unstable-gallery-gap, 15px));
}
.wp-block-gallery.has-nested-images.columns-3 .wp-block-image:not(#individual-image) {
  width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 15px) * 0.66667);
}
@media only screen and (max-width: 640px) {
  .wp-block-gallery.has-nested-images.columns-3 {
    gap: calc(var(--wp--style--unstable-gallery-gap, 15px));
  }
  .wp-block-gallery.has-nested-images.columns-3 .wp-block-image:not(#individual-image) {
    width: calc(50% - var(--wp--style--unstable-gallery-gap, 15px) * 0.5);
  }
}
.wp-block-gallery.has-nested-images.columns-4 {
  gap: calc(var(--wp--style--unstable-gallery-gap, 15px));
}
.wp-block-gallery.has-nested-images.columns-4 .wp-block-image:not(#individual-image) {
  width: calc(25% - var(--wp--style--unstable-gallery-gap, 15px) * 0.75);
}
@media only screen and (max-width: 640px) {
  .wp-block-gallery.has-nested-images.columns-4 {
    gap: calc(var(--wp--style--unstable-gallery-gap, 15px));
  }
  .wp-block-gallery.has-nested-images.columns-4 .wp-block-image:not(#individual-image) {
    width: calc(50% - var(--wp--style--unstable-gallery-gap, 15px) * 0.5);
  }
}
.wp-block-gallery.alignleft, .wp-block-gallery.wp-block-embed.alignleft {
  max-width: 48%;
  margin-inline: 0 auto;
}
.wp-block-gallery.aligncenter, .wp-block-gallery.wp-block-embed.alignwide {
  max-width: 48%;
  margin-inline: auto;
}
.wp-block-gallery.alignright, .wp-block-gallery.wp-block-embed.alignright {
  max-width: 48%;
  margin-inline: auto 0;
}

.wp-block-group {
  margin-top: 2em;
  gap: 0;
}
.wp-block-group:not(.is-vertical) {
  gap: var(--wp--preset--spacing--default);
}
.wp-block-group:not(.is-vertical) > * {
  margin-top: 0;
  margin-bottom: 0;
}
.wp-block-group.is-content-justification-center {
  display: flex;
  justify-content: center;
}
.wp-block-group.is-content-justification-left {
  display: flex;
  justify-content: flex-start;
}
.wp-block-group.is-content-justification-right {
  display: flex;
  justify-content: flex-end;
}
.wp-block-group.is-vertical {
  display: flex;
  flex-flow: column;
  align-items: flex-start;
}
.wp-block-group.is-vertical > *:first-child {
  margin-top: 0;
}
.wp-block-group.is-vertical > *:last-child {
  margin-bottom: 0;
}
.wp-block-group.is-vertical.is-content-justification-center {
  align-items: center;
}
.wp-block-group.is-vertical.is-content-justification-left {
  align-items: flex-start;
}
.wp-block-group.is-vertical.is-content-justification-right {
  align-items: flex-end;
}

.wp-block-columns {
  display: flex;
  align-items: flex-start;
  gap: var(--spacing--default);
  margin-top: 10em;
  margin-bottom: 10em;
}
@media only screen and (max-width: 1320px) {
  .wp-block-columns {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .wp-block-columns {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .wp-block-columns {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.wp-block-columns:first-child {
  margin-top: 0;
}
.wp-block-columns.is-vertically-aligned-top {
  align-self: start;
}
.wp-block-columns.is-vertically-aligned-center {
  align-self: center;
}
.wp-block-columns.is-vertically-aligned-bottom {
  align-self: end;
}
.wp-block-columns .wp-block-column {
  flex-basis: 0;
  flex-grow: 1;
  align-self: stretch;
}
.wp-block-columns .wp-block-column.is-vertically-aligned-top {
  align-self: start;
}
.wp-block-columns .wp-block-column.is-vertically-aligned-center {
  align-self: center;
}
.wp-block-columns .wp-block-column.is-vertically-aligned-bottom {
  align-self: end;
}
.wp-block-columns .wp-block-column > *:first-child {
  margin-top: 0;
}
.wp-block-columns .wp-block-column > *:last-child {
  margin-bottom: 0;
}
.wp-block-columns .wp-block-column figure {
  margin-top: 0.1em;
}
@media screen and (max-width: 800px) {
  .wp-block-columns:not(.is-not-stacked-on-mobile) {
    flex-wrap: wrap;
  }
  .wp-block-columns:not(.is-not-stacked-on-mobile) .wp-block-column {
    flex-basis: 100% !important;
  }
}
.wp-block-columns + .wp-block-columns {
  margin-bottom: 2em !important;
}

.wp-block-cover {
  position: relative;
  background-position: 50%;
  min-height: 430px;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1em;
  box-sizing: border-box;
  margin-top: 2em;
}
@media only screen and (max-width: 960px) {
  .wp-block-cover {
    min-height: 300px;
  }
}
@media only screen and (max-width: 640px) {
  .wp-block-cover {
    min-height: 200px;
  }
}
.wp-block-cover .wp-block-cover__image-background,
.wp-block-cover video.wp-block-cover__video-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  outline: none;
  border: none;
  box-shadow: none;
}
.wp-block-cover .wp-block-cover__image-background.has-parallax {
  background-attachment: fixed;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center top;
}
.wp-block-cover .wp-block-cover__background {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  opacity: 0.5;
  background-color: #000;
}
.wp-block-cover .wp-block-cover__background.has-background-dim {
  opacity: 0.5;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-10 {
  opacity: 0.1;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-20 {
  opacity: 0.2;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-30 {
  opacity: 0.3;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-40 {
  opacity: 0.4;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-50 {
  opacity: 0.5;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-60 {
  opacity: 0.6;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-70 {
  opacity: 0.7;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-80 {
  opacity: 0.8;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-90 {
  opacity: 0.9;
}
.wp-block-cover .wp-block-cover__background.has-background-dim-100 {
  opacity: 1;
}
.wp-block-cover .wp-block-cover__inner-container {
  width: 100%;
  z-index: 1;
  color: #fff;
  text-align: center;
}

.wp-block-media-text {
  direction: ltr;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto;
  box-sizing: border-box;
  margin-top: 2em;
  gap: var(--wp--preset--spacing--default);
}
.wp-block-media-text .wp-block-media-text__media > *:first-child,
.wp-block-media-text .wp-block-media-text__content > *:first-child {
  margin-top: 0;
}
.wp-block-media-text .wp-block-media-text__media > *:last-child,
.wp-block-media-text .wp-block-media-text__content > *:last-child {
  margin-bottom: 0;
}
.wp-block-media-text .wp-block-media-text__content {
  padding: 0;
}
@media only screen and (max-width: 640px) {
  .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns: 100% !important;
  }
  .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__media {
    grid-column: 1;
    grid-row: 1;
  }
  .wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
    grid-column: 1;
    grid-row: 2;
  }
}
.wp-block-media-text .wp-block-media-text__media,
.wp-block-media-text .wp-block-media-text__content {
  align-self: stretch;
}
.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media,
.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content {
  align-self: start;
}
.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media,
.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content {
  align-self: center;
}
.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media,
.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content {
  align-self: end;
}

.wp-block-video {
  margin-top: 2em;
}
.wp-block-video.alignleft {
  max-width: 48%;
  margin-inline: 0 auto;
}
.wp-block-video.aligncenter, .wp-block-video.wp-block-embed.alignwide {
  max-width: 48%;
  margin-inline: auto;
}
.wp-block-video.alignright {
  max-width: 48%;
  margin-inline: auto 0;
}
.wp-block-video video {
  max-width: 100%;
}

.wp-block-embed {
  margin-block: 2em;
}
.wp-block-embed .wp-block-embed__wrapper::before {
  content: none !important;
}
.wp-block-embed.wp-embed-aspect-21-9 .wp-block-embed__wrapper {
  padding-top: 42.85%;
}
.wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper {
  padding-top: 50%;
}
.wp-block-embed.wp-embed-aspect-18-9 .wp-block-embed__wrapper {
  padding-top: 56.25%;
}
.wp-block-embed.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
  padding-top: 75%;
}
.wp-block-embed.wp-embed-aspect-1-1 .wp-block-embed__wrapper {
  padding-top: 100%;
}
.wp-block-embed.wp-embed-aspect-9-6 .wp-block-embed__wrapper {
  padding-top: 66.66%;
}
.wp-block-embed.wp-embed-aspect-1-2 .wp-block-embed__wrapper {
  padding-top: 200%;
}

.wp-block-embed.aligncenter, .wp-block-embed.alignwide {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.wp-block-embed.alignleft {
  max-width: initial;
}

.wp-block-embed.alignright {
  max-width: initial;
}

.wp-block-embed.alignwide {
  max-width: initial;
}

.wp-block-table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  overflow: hidden;
}

#wp-calendar {
  table-layout: fixed;
}

.wp-block-list {
  list-style-position: outside;
}

.is-style-remarks {
  padding: 2em;
  background: #EFEFE9;
  border-radius: 6px;
  margin-top: 1em;
}
.is-style-remarks h2, .is-style-remarks h3, .is-style-remarks h4, .is-style-remarks h5, .is-style-remarks h6 {
  margin-bottom: 1rem;
}
.is-style-remarks p {
  margin-block-start: 1rem;
}
.is-style-remarks *:first-child {
  margin-top: 0;
}
.is-style-remarks *:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 640px) {
  .is-style-remarks {
    padding: 1em;
  }
}

.wp-block-file__button {
  width: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--color--main);
  border: 1px solid var(--color--main);
  border-radius: 50px;
  padding: 1em 2.2em;
  margin-block: 0.25em;
  text-align: center;
  text-decoration: none;
  line-height: 1.3;
  color: var(--color--white);
  cursor: pointer;
}
@media (hover: hover) {
  .wp-block-file__button:hover {
    background-color: var(--color--white);
    border-color: rgba(54, 132, 198, 0.6);
    color: var(--color--main);
  }
}

.map iframe {
  width: 100%;
}

.contents-body, #others {
  /* ※※ 公開側では [$txtclass]下で展開されます ※※ */
}
.contents-body > *:first-child, #others > *:first-child {
  margin-top: 0 !important;
}
.contents-body [id^=anc-]:first-child + *, #others [id^=anc-]:first-child + * {
  margin-top: 0 !important;
}
.contents-body > *:last-child, #others > *:last-child {
  margin-bottom: 0 !important;
}
.contents-body h2 + ul, .contents-body h2 + ol, .contents-body h2 + div, .contents-body h2 + table, .contents-body h2 + p, .contents-body h2 + figure, .contents-body h2 + img, .contents-body h3 + ul, .contents-body h3 + ol, .contents-body h3 + div, .contents-body h3 + table, .contents-body h3 + p, .contents-body h3 + figure, .contents-body h3 + img, .contents-body h4 + ul, .contents-body h4 + ol, .contents-body h4 + div, .contents-body h4 + table, .contents-body h4 + p, .contents-body h4 + figure, .contents-body h4 + img, .contents-body h5 + ul, .contents-body h5 + ol, .contents-body h5 + div, .contents-body h5 + table, .contents-body h5 + p, .contents-body h5 + figure, .contents-body h5 + img, .contents-body h6 + ul, .contents-body h6 + ol, .contents-body h6 + div, .contents-body h6 + table, .contents-body h6 + p, .contents-body h6 + figure, .contents-body h6 + img, #others h2 + ul, #others h2 + ol, #others h2 + div, #others h2 + table, #others h2 + p, #others h2 + figure, #others h2 + img, #others h3 + ul, #others h3 + ol, #others h3 + div, #others h3 + table, #others h3 + p, #others h3 + figure, #others h3 + img, #others h4 + ul, #others h4 + ol, #others h4 + div, #others h4 + table, #others h4 + p, #others h4 + figure, #others h4 + img, #others h5 + ul, #others h5 + ol, #others h5 + div, #others h5 + table, #others h5 + p, #others h5 + figure, #others h5 + img, #others h6 + ul, #others h6 + ol, #others h6 + div, #others h6 + table, #others h6 + p, #others h6 + figure, #others h6 + img {
  margin-top: 0;
}
.contents-body h2, .contents-body h3, .contents-body h4, .contents-body h5, .contents-body h6, #others h2, #others h3, #others h4, #others h5, #others h6 {
  letter-spacing: 0.2em;
}
.contents-body h2, #others h2 {
  position: relative;
  font-feature-settings: "palt", "kern";
  font-weight: bold;
  line-height: 1.3;
  margin-top: 7.5em;
  margin-bottom: 1.375em;
  font-size: 2.5vw;
}
.contents-body h2 + p, .contents-body h2 + ul, .contents-body h2 + ol, .contents-body h2 + a, .contents-body h2 + div, .contents-body h2 + table, #others h2 + p, #others h2 + ul, #others h2 + ol, #others h2 + a, #others h2 + div, #others h2 + table {
  margin-top: 0 !important;
}
.contents-body h2 + h2, .contents-body h2 + h3, .contents-body h2 + h4, .contents-body h2 + h5, .contents-body h2 + h6, #others h2 + h2, #others h2 + h3, #others h2 + h4, #others h2 + h5, #others h2 + h6 {
  margin-top: -0.5em !important;
}
@media screen and (max-width: 1600px) {
  .contents-body h2, #others h2 {
    font-size: 40px;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h2, #others h2 {
    margin-top: 6.375em;
    margin-bottom: 1.16875em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h2, #others h2 {
    margin-top: 5.625em;
    margin-bottom: 1.03125em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h2, #others h2 {
    font-size: 2.25vw;
    line-height: 1.3;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 960px) and (max-width: 1600px) {
  .contents-body h2, #others h2 {
    font-size: 36px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h2, #others h2 {
    font-size: 1.75vw;
    line-height: 1.4;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 640px) and (max-width: 1600px) {
  .contents-body h2, #others h2 {
    font-size: 28px;
  }
}
.contents-body h2.copy, .contents-body h2.is-style-copy, #others h2.copy, #others h2.is-style-copy {
  line-height: 1.6;
}
.contents-body h3, #others h3 {
  position: relative;
  font-feature-settings: "palt", "kern";
  font-weight: bold;
  line-height: 1.4;
  margin-top: 6em;
  margin-bottom: 1.375em;
  font-size: 1.5vw;
}
.contents-body h3 + p, .contents-body h3 + ul, .contents-body h3 + ol, .contents-body h3 + a, .contents-body h3 + div, .contents-body h3 + table, #others h3 + p, #others h3 + ul, #others h3 + ol, #others h3 + a, #others h3 + div, #others h3 + table {
  margin-top: 0 !important;
}
.contents-body h3 + h2, .contents-body h3 + h3, .contents-body h3 + h4, .contents-body h3 + h5, .contents-body h3 + h6, #others h3 + h2, #others h3 + h3, #others h3 + h4, #others h3 + h5, #others h3 + h6 {
  margin-top: -0.5em !important;
}
@media screen and (max-width: 1600px) {
  .contents-body h3, #others h3 {
    font-size: 24px;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h3, #others h3 {
    margin-top: 5.1em;
    margin-bottom: 1.16875em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h3, #others h3 {
    margin-top: 4.5em;
    margin-bottom: 1.03125em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h3, #others h3 {
    font-size: 1.25vw;
    line-height: 1.4;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 960px) and (max-width: 1600px) {
  .contents-body h3, #others h3 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h3, #others h3 {
    font-size: 1.25vw;
    line-height: 1.4;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 640px) and (max-width: 1600px) {
  .contents-body h3, #others h3 {
    font-size: 20px;
  }
}
.contents-body h3.copy, .contents-body h3.is-style-copy, #others h3.copy, #others h3.is-style-copy {
  line-height: 2;
}
@media only screen and (max-width: 640px) {
  .contents-body h3.copy, .contents-body h3.is-style-copy, #others h3.copy, #others h3.is-style-copy {
    line-height: 1.8;
  }
}
.contents-body h4, #others h4 {
  position: relative;
  font-feature-settings: "palt", "kern";
  font-weight: bold;
  line-height: 1.4;
  margin-top: 3.75em;
  margin-bottom: 1.375em;
  font-size: 1.25vw;
}
.contents-body h4 + p, .contents-body h4 + ul, .contents-body h4 + ol, .contents-body h4 + a, .contents-body h4 + div, .contents-body h4 + table, #others h4 + p, #others h4 + ul, #others h4 + ol, #others h4 + a, #others h4 + div, #others h4 + table {
  margin-top: 0 !important;
}
.contents-body h4 + h2, .contents-body h4 + h3, .contents-body h4 + h4, .contents-body h4 + h5, .contents-body h4 + h6, #others h4 + h2, #others h4 + h3, #others h4 + h4, #others h4 + h5, #others h4 + h6 {
  margin-top: -0.5em !important;
}
@media screen and (max-width: 1600px) {
  .contents-body h4, #others h4 {
    font-size: 20px;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h4, #others h4 {
    margin-top: 3.1875em;
    margin-bottom: 1.16875em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h4, #others h4 {
    margin-top: 2.8125em;
    margin-bottom: 1.03125em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h4, #others h4 {
    font-size: 1.125vw;
    line-height: 1.4;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 960px) and (max-width: 1600px) {
  .contents-body h4, #others h4 {
    font-size: 18px;
  }
}
.contents-body h5, #others h5 {
  position: relative;
  font-feature-settings: "palt", "kern";
  font-weight: bold;
  line-height: 1.4;
  margin-top: 3.75em;
  margin-bottom: 1.375em;
  font-size: 1.125vw;
}
.contents-body h5 + p, .contents-body h5 + ul, .contents-body h5 + ol, .contents-body h5 + a, .contents-body h5 + div, .contents-body h5 + table, #others h5 + p, #others h5 + ul, #others h5 + ol, #others h5 + a, #others h5 + div, #others h5 + table {
  margin-top: 0 !important;
}
.contents-body h5 + h2, .contents-body h5 + h3, .contents-body h5 + h4, .contents-body h5 + h5, .contents-body h5 + h6, #others h5 + h2, #others h5 + h3, #others h5 + h4, #others h5 + h5, #others h5 + h6 {
  margin-top: -0.5em !important;
}
@media screen and (max-width: 1600px) {
  .contents-body h5, #others h5 {
    font-size: 18px;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h5, #others h5 {
    margin-top: 3.1875em;
    margin-bottom: 1.16875em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h5, #others h5 {
    margin-top: 2.8125em;
    margin-bottom: 1.03125em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h5, #others h5 {
    font-size: 1vw;
    line-height: 1.4;
    position: relative;
    font-feature-settings: "palt", "kern";
    font-weight: bold;
  }
}
@media only screen and (max-width: 960px) and (max-width: 1600px) {
  .contents-body h5, #others h5 {
    font-size: 16px;
  }
}
.contents-body h6, #others h6 {
  position: relative;
  font-feature-settings: "palt", "kern";
  font-weight: bold;
  line-height: 1.4;
  margin-top: 3.75em;
  margin-bottom: 1.375em;
  font-size: 1vw;
}
.contents-body h6 + p, .contents-body h6 + ul, .contents-body h6 + ol, .contents-body h6 + a, .contents-body h6 + div, .contents-body h6 + table, #others h6 + p, #others h6 + ul, #others h6 + ol, #others h6 + a, #others h6 + div, #others h6 + table {
  margin-top: 0 !important;
}
.contents-body h6 + h2, .contents-body h6 + h3, .contents-body h6 + h4, .contents-body h6 + h5, .contents-body h6 + h6, #others h6 + h2, #others h6 + h3, #others h6 + h4, #others h6 + h5, #others h6 + h6 {
  margin-top: -0.5em !important;
}
@media screen and (max-width: 1600px) {
  .contents-body h6, #others h6 {
    font-size: 16px;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body h6, #others h6 {
    margin-top: 3.1875em;
    margin-bottom: 1.16875em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body h6, #others h6 {
    margin-top: 2.8125em;
    margin-bottom: 1.03125em;
  }
}
.contents-body p, .contents-body table, .contents-body ul, .contents-body ol, .contents-body img, #others p, #others table, #others ul, #others ol, #others img {
  margin-top: 2em;
}
.contents-body figure > img, #others figure > img {
  margin-top: 0;
  margin-bottom: 0;
}
.contents-body p.copy, .contents-body p.is-style-copy, #others p.copy, #others p.is-style-copy {
  line-height: 2.9;
}
@media only screen and (max-width: 960px) {
  .contents-body p.copy, .contents-body p.is-style-copy, #others p.copy, #others p.is-style-copy {
    line-height: 2.8;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body p.copy, .contents-body p.is-style-copy, #others p.copy, #others p.is-style-copy {
    line-height: 2.7;
  }
}
.contents-body p img:first-child, #others p img:first-child {
  margin-top: 0;
}
.contents-body > *.alignleft:first-child + h1, .contents-body > *.alignleft:first-child + h2, .contents-body > *.alignleft:first-child + h3, .contents-body > *.alignleft:first-child + h4, .contents-body > *.alignleft:first-child + h5, .contents-body > *.alignleft:first-child + h6, .contents-body > *.alignleft:first-child + div, .contents-body > *.alignleft:first-child + p, #others > *.alignleft:first-child + h1, #others > *.alignleft:first-child + h2, #others > *.alignleft:first-child + h3, #others > *.alignleft:first-child + h4, #others > *.alignleft:first-child + h5, #others > *.alignleft:first-child + h6, #others > *.alignleft:first-child + div, #others > *.alignleft:first-child + p {
  margin-top: 0;
}
.contents-body > *.alignlight:first-child + h1, .contents-body > *.alignlight:first-child + h2, .contents-body > *.alignlight:first-child + h3, .contents-body > *.alignlight:first-child + h4, .contents-body > *.alignlight:first-child + h5, .contents-body > *.alignlight:first-child + h6, .contents-body > *.alignlight:first-child + div, .contents-body > *.alignlight:first-child + p, #others > *.alignlight:first-child + h1, #others > *.alignlight:first-child + h2, #others > *.alignlight:first-child + h3, #others > *.alignlight:first-child + h4, #others > *.alignlight:first-child + h5, #others > *.alignlight:first-child + h6, #others > *.alignlight:first-child + div, #others > *.alignlight:first-child + p {
  margin-top: 0;
}
.contents-body div > *.alignleft:first-child + h1, .contents-body div > *.alignleft:first-child + h2, .contents-body div > *.alignleft:first-child + h3, .contents-body div > *.alignleft:first-child + h4, .contents-body div > *.alignleft:first-child + h5, .contents-body div > *.alignleft:first-child + h6, .contents-body div > *.alignleft:first-child + div, .contents-body div > *.alignleft:first-child + p, .contents-body section > *.alignleft:first-child + h1, .contents-body section > *.alignleft:first-child + h2, .contents-body section > *.alignleft:first-child + h3, .contents-body section > *.alignleft:first-child + h4, .contents-body section > *.alignleft:first-child + h5, .contents-body section > *.alignleft:first-child + h6, .contents-body section > *.alignleft:first-child + div, .contents-body section > *.alignleft:first-child + p, .contents-body article > *.alignleft:first-child + h1, .contents-body article > *.alignleft:first-child + h2, .contents-body article > *.alignleft:first-child + h3, .contents-body article > *.alignleft:first-child + h4, .contents-body article > *.alignleft:first-child + h5, .contents-body article > *.alignleft:first-child + h6, .contents-body article > *.alignleft:first-child + div, .contents-body article > *.alignleft:first-child + p, #others div > *.alignleft:first-child + h1, #others div > *.alignleft:first-child + h2, #others div > *.alignleft:first-child + h3, #others div > *.alignleft:first-child + h4, #others div > *.alignleft:first-child + h5, #others div > *.alignleft:first-child + h6, #others div > *.alignleft:first-child + div, #others div > *.alignleft:first-child + p, #others section > *.alignleft:first-child + h1, #others section > *.alignleft:first-child + h2, #others section > *.alignleft:first-child + h3, #others section > *.alignleft:first-child + h4, #others section > *.alignleft:first-child + h5, #others section > *.alignleft:first-child + h6, #others section > *.alignleft:first-child + div, #others section > *.alignleft:first-child + p, #others article > *.alignleft:first-child + h1, #others article > *.alignleft:first-child + h2, #others article > *.alignleft:first-child + h3, #others article > *.alignleft:first-child + h4, #others article > *.alignleft:first-child + h5, #others article > *.alignleft:first-child + h6, #others article > *.alignleft:first-child + div, #others article > *.alignleft:first-child + p {
  margin-top: 0;
}
.contents-body div > *.alignlight:first-child + h1, .contents-body div > *.alignlight:first-child + h2, .contents-body div > *.alignlight:first-child + h3, .contents-body div > *.alignlight:first-child + h4, .contents-body div > *.alignlight:first-child + h5, .contents-body div > *.alignlight:first-child + h6, .contents-body div > *.alignlight:first-child + div, .contents-body div > *.alignlight:first-child + p, .contents-body section > *.alignlight:first-child + h1, .contents-body section > *.alignlight:first-child + h2, .contents-body section > *.alignlight:first-child + h3, .contents-body section > *.alignlight:first-child + h4, .contents-body section > *.alignlight:first-child + h5, .contents-body section > *.alignlight:first-child + h6, .contents-body section > *.alignlight:first-child + div, .contents-body section > *.alignlight:first-child + p, .contents-body article > *.alignlight:first-child + h1, .contents-body article > *.alignlight:first-child + h2, .contents-body article > *.alignlight:first-child + h3, .contents-body article > *.alignlight:first-child + h4, .contents-body article > *.alignlight:first-child + h5, .contents-body article > *.alignlight:first-child + h6, .contents-body article > *.alignlight:first-child + div, .contents-body article > *.alignlight:first-child + p, #others div > *.alignlight:first-child + h1, #others div > *.alignlight:first-child + h2, #others div > *.alignlight:first-child + h3, #others div > *.alignlight:first-child + h4, #others div > *.alignlight:first-child + h5, #others div > *.alignlight:first-child + h6, #others div > *.alignlight:first-child + div, #others div > *.alignlight:first-child + p, #others section > *.alignlight:first-child + h1, #others section > *.alignlight:first-child + h2, #others section > *.alignlight:first-child + h3, #others section > *.alignlight:first-child + h4, #others section > *.alignlight:first-child + h5, #others section > *.alignlight:first-child + h6, #others section > *.alignlight:first-child + div, #others section > *.alignlight:first-child + p, #others article > *.alignlight:first-child + h1, #others article > *.alignlight:first-child + h2, #others article > *.alignlight:first-child + h3, #others article > *.alignlight:first-child + h4, #others article > *.alignlight:first-child + h5, #others article > *.alignlight:first-child + h6, #others article > *.alignlight:first-child + div, #others article > *.alignlight:first-child + p {
  margin-top: 0;
}
.contents-body div, .contents-body p, .contents-body table, .contents-body ul, .contents-body ol, #others div, #others p, #others table, #others ul, #others ol {
  line-height: 2.6;
}
@media only screen and (max-width: 640px) {
  .contents-body div, .contents-body p, .contents-body table, .contents-body ul, .contents-body ol, #others div, #others p, #others table, #others ul, #others ol {
    line-height: 2.5;
  }
}
.contents-body div.has-background, .contents-body p.has-background, .contents-body ul.has-background, .contents-body ol.has-background, #others div.has-background, #others p.has-background, #others ul.has-background, #others ol.has-background {
  padding: 0.5em 1em;
}
.contents-body ul ul, .contents-body ul ol, .contents-body ol ul, .contents-body ol ol, #others ul ul, #others ul ol, #others ol ul, #others ol ol {
  margin-block: 0;
}
.contents-body table, #others table {
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 0.5em;
  overflow: hidden;
  border-top: 1px solid var(--wp--preset--color--border);
  border-left: 1px solid var(--wp--preset--color--border);
}
.contents-body table tr, #others table tr {
  height: auto !important;
}
.contents-body table tr th, #others table tr th {
  width: 25%;
  border-top: none !important;
  border-left: none !important;
  border-bottom: 1px solid var(--wp--preset--color--border);
  border-right: 1px solid var(--wp--preset--color--border);
  background: var(--wp--preset--color--lightbg);
}
.contents-body table tr td, #others table tr td {
  border-top: none !important;
  border-left: none !important;
  border-bottom: 1px solid var(--wp--preset--color--border);
  border-right: 1px solid var(--wp--preset--color--border);
}
.contents-body figure, #others figure {
  position: relative;
}
.contents-body figure figcaption, #others figure figcaption {
  display: block;
  text-align: right;
  font-size: 0.75em;
  margin-top: 0.8em !important;
  line-height: 1.4;
  color: var(--wp--preset--color--notes) !important;
}
.contents-body hr, #others hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  margin-block: 7.5em;
  border-top: 1px solid var(--wp--preset--color--border);
}
@media only screen and (max-width: 960px) {
  .contents-body hr, #others hr {
    margin-block: 5em;
  }
}
.contents-body hr + *, #others hr + * {
  margin-top: 0;
}
.contents-body .anchor-box, #others .anchor-box {
  margin-top: 10em;
  margin-bottom: 10em;
}
@media only screen and (max-width: 1320px) {
  .contents-body .anchor-box, #others .anchor-box {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body .anchor-box, #others .anchor-box {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .anchor-box, #others .anchor-box {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.contents-body .anchor-box:first-child, #others .anchor-box:first-child {
  margin-top: 0;
}
.contents-body .anchor-box p, #others .anchor-box p {
  line-height: 1;
}
.contents-body .anchor-box p:first-child, #others .anchor-box p:first-child {
  font-weight: bold;
  display: none;
  margin-bottom: 1em;
}
@media only screen and (max-width: 640px) {
  .contents-body .anchor-box p:first-child, #others .anchor-box p:first-child {
    display: block;
  }
}
.contents-body .anchor-box p:first-child::before, #others .anchor-box p:first-child::before {
  content: "\e102";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  margin-right: 0.3em;
}
.contents-body .anchor-box ul.anchor-btn, #others .anchor-box ul.anchor-btn {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  flex-wrap: wrap;
  gap: 1em 2em;
  margin-top: -1.5em;
}
.contents-body .anchor-box ul.anchor-btn li, #others .anchor-box ul.anchor-btn li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.contents-body .anchor-box ul.anchor-btn li::marker, #others .anchor-box ul.anchor-btn li::marker {
  content: none;
}
@media only screen and (max-width: 960px) {
  .contents-body .anchor-box ul.anchor-btn, #others .anchor-box ul.anchor-btn {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .anchor-box ul.anchor-btn, #others .anchor-box ul.anchor-btn {
    display: block;
    margin-top: 0;
    padding-inline: 2em !important;
    padding-block: 1em 2em !important;
    border-radius: 0.25em;
    background-color: #fff;
    border: 1px solid var(--wp--preset--color--border);
  }
}
.contents-body .anchor-box ul.anchor-btn li, #others .anchor-box ul.anchor-btn li {
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #C9C9C9;
  line-height: 1.2 !important;
}
.contents-body .anchor-box ul.anchor-btn li li, #others .anchor-box ul.anchor-btn li li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.contents-body .anchor-box ul.anchor-btn li li::marker, #others .anchor-box ul.anchor-btn li li::marker {
  content: none;
}
@media only screen and (max-width: 640px) {
  .contents-body .anchor-box ul.anchor-btn li, #others .anchor-box ul.anchor-btn li {
    width: 100%;
  }
}
.contents-body .anchor-box ul.anchor-btn a, #others .anchor-box ul.anchor-btn a {
  position: relative;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  color: var(--wp--preset--color--link);
  padding-block: 1.5em;
  text-decoration: none;
  gap: 0.2em;
}
@media only screen and (max-width: 960px) {
  .contents-body .anchor-box ul.anchor-btn a, #others .anchor-box ul.anchor-btn a {
    flex-direction: row;
    justify-content: space-between;
    text-align: left;
  }
}
.contents-body .anchor-box ul.anchor-btn a::after, #others .anchor-box ul.anchor-btn a::after {
  content: "\e102";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
  color: rgba(var(--color--text), 0.5);
  padding-top: 0.6em;
  margin-top: auto;
}
@media only screen and (max-width: 960px) {
  .contents-body .anchor-box ul.anchor-btn a::after, #others .anchor-box ul.anchor-btn a::after {
    padding-top: 0;
    margin-top: 0;
  }
}
@media (hover: hover) {
  .contents-body .anchor-box ul.anchor-btn a:hover, #others .anchor-box ul.anchor-btn a:hover {
    top: 3px;
    color: var(--wp--preset--color--hover);
  }
}
.contents-body .link-list, #others .link-list {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 10em;
  margin-bottom: 10em;
}
.contents-body .link-list li, #others .link-list li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.contents-body .link-list li::marker, #others .link-list li::marker {
  content: none;
}
@media only screen and (max-width: 1320px) {
  .contents-body .link-list, #others .link-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body .link-list, #others .link-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .link-list, #others .link-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.contents-body .link-list:first-child, #others .link-list:first-child {
  margin-top: 0;
}
.contents-body .link-list li, #others .link-list li {
  margin-top: 0;
}
.contents-body .link-list li:first-child a, #others .link-list li:first-child a {
  border-top: 1px solid var(--wp--preset--color--border);
}
.contents-body .link-list a, #others .link-list a {
  text-decoration: none;
  color: var(--wp--preset--color--link);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em;
  border-bottom: 1px solid var(--wp--preset--color--border);
  padding-block: 1.5em;
}
@media only screen and (max-width: 960px) {
  .contents-body .link-list a, #others .link-list a {
    padding-block: 1.5em;
  }
}
.contents-body .link-list a::after, #others .link-list a::after {
  vertical-align: unset;
  font-size: 1.125vw;
}
@media screen and (max-width: 1600px) {
  .contents-body .link-list a::after, #others .link-list a::after {
    font-size: 18px;
  }
}
@media (hover: hover) {
  .contents-body .link-list a:hover, #others .link-list a:hover {
    color: var(--wp--preset--color--hover);
  }
}
.contents-body .flow-list, #others .flow-list {
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 10em;
  margin-bottom: 10em;
  display: flex;
  flex-direction: column;
  gap: 3em;
}
.contents-body .flow-list li, #others .flow-list li {
  margin-top: 0;
  padding-left: 0;
  text-indent: 0;
  list-style: none;
}
.contents-body .flow-list li::marker, #others .flow-list li::marker {
  content: none;
}
@media only screen and (max-width: 1320px) {
  .contents-body .flow-list, #others .flow-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body .flow-list, #others .flow-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .flow-list, #others .flow-list {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.contents-body .flow-list:first-child, #others .flow-list:first-child {
  margin-top: 0;
}
.contents-body .flow-list::after, #others .flow-list::after {
  content: "";
  position: absolute;
  left: 10%;
  width: 1px;
  height: 100%;
  background: var(--wp--preset--color--border);
}
.contents-body .flow-list li, #others .flow-list li {
  position: relative;
}
.contents-body .flow-list li::before, #others .flow-list li::before {
  position: absolute;
  top: -0.5em;
  left: -0.25em;
  font-size: 2.875em;
  line-height: 1;
  font-weight: bold;
  z-index: 2;
}
@media only screen and (max-width: 960px) {
  .contents-body .flow-list li::before, #others .flow-list li::before {
    font-size: 2.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .flow-list li::before, #others .flow-list li::before {
    font-size: 2.25em;
  }
}
.contents-body .flow-list li:nth-child(1)::before, #others .flow-list li:nth-child(1)::before {
  content: "1";
}
.contents-body .flow-list li:nth-child(2)::before, #others .flow-list li:nth-child(2)::before {
  content: "2";
}
.contents-body .flow-list li:nth-child(3)::before, #others .flow-list li:nth-child(3)::before {
  content: "3";
}
.contents-body .flow-list li:nth-child(4)::before, #others .flow-list li:nth-child(4)::before {
  content: "4";
}
.contents-body .flow-list li:nth-child(5)::before, #others .flow-list li:nth-child(5)::before {
  content: "5";
}
.contents-body .flow-list li:nth-child(6)::before, #others .flow-list li:nth-child(6)::before {
  content: "6";
}
.contents-body .flow-list li:nth-child(7)::before, #others .flow-list li:nth-child(7)::before {
  content: "7";
}
.contents-body .flow-list li:nth-child(8)::before, #others .flow-list li:nth-child(8)::before {
  content: "8";
}
.contents-body .flow-list li:nth-child(9)::before, #others .flow-list li:nth-child(9)::before {
  content: "9";
}
.contents-body .flow-list li::after, #others .flow-list li::after {
  content: "";
  position: absolute;
  font-size: 2.875em;
  top: 0.5em;
  left: -0.5em;
  width: 2em;
  height: 1px;
  background-color: var(--wp--preset--color--colorgray);
  z-index: 2;
  transform: translateY(0) rotate(-45deg);
}
@media only screen and (max-width: 960px) {
  .contents-body .flow-list li::after, #others .flow-list li::after {
    font-size: 2.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .flow-list li::after, #others .flow-list li::after {
    font-size: 2.25em;
  }
}
.contents-body .flow-list .box-area, #others .flow-list .box-area {
  position: relative;
  margin: 0;
  z-index: 1;
  display: flex;
  gap: 1.5em 2em;
}
@media only screen and (max-width: 640px) {
  .contents-body .flow-list .box-area, #others .flow-list .box-area {
    flex-direction: column;
    padding: 2em;
  }
}
.contents-body .flow-list .box-area .flow-title, .contents-body .flow-list .box-area .flow-txt, #others .flow-list .box-area .flow-title, #others .flow-list .box-area .flow-txt {
  margin: 0;
}
.contents-body .flow-list .box-area .flow-title p:first-child, .contents-body .flow-list .box-area .flow-title div:first-child, .contents-body .flow-list .box-area .flow-title ul:first-child, .contents-body .flow-list .box-area .flow-title ol:first-child, .contents-body .flow-list .box-area .flow-title table:first-child, .contents-body .flow-list .box-area .flow-txt p:first-child, .contents-body .flow-list .box-area .flow-txt div:first-child, .contents-body .flow-list .box-area .flow-txt ul:first-child, .contents-body .flow-list .box-area .flow-txt ol:first-child, .contents-body .flow-list .box-area .flow-txt table:first-child, #others .flow-list .box-area .flow-title p:first-child, #others .flow-list .box-area .flow-title div:first-child, #others .flow-list .box-area .flow-title ul:first-child, #others .flow-list .box-area .flow-title ol:first-child, #others .flow-list .box-area .flow-title table:first-child, #others .flow-list .box-area .flow-txt p:first-child, #others .flow-list .box-area .flow-txt div:first-child, #others .flow-list .box-area .flow-txt ul:first-child, #others .flow-list .box-area .flow-txt ol:first-child, #others .flow-list .box-area .flow-txt table:first-child {
  margin-top: 0;
}
.contents-body .flow-list .flow-txt, #others .flow-list .flow-txt {
  flex: 1;
}
.contents-body .flow-list .flow-txt p, #others .flow-list .flow-txt p {
  line-height: 1.8 !important;
}
.contents-body .flow-list .flow-title, #others .flow-list .flow-title {
  width: 20%;
  min-width: 4.6em;
  font-size: 1.375em;
  font-weight: bold;
}
.contents-body .flow-list .flow-title span, #others .flow-list .flow-title span {
  display: block;
  font-size: 0.75vw;
  font-weight: normal;
}
@media screen and (max-width: 1600px) {
  .contents-body .flow-list .flow-title span, #others .flow-list .flow-title span {
    font-size: 12px;
  }
}
.contents-body .works-pickup, #others .works-pickup {
  margin-bottom: 4em;
}
.contents-body .works-pickup a, #others .works-pickup a {
  text-decoration: none;
}
.contents-body.phantom-animation .works-pickup a.works-data, #others.phantom-animation .works-pickup a.works-data {
  opacity: 0;
  transform: translateY(0.5em);
  animation: gnavFade__y 1s forwards ease-out;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(1), #others.phantom-animation .works-pickup a.works-data:nth-child(1) {
  animation-delay: 0.4s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(2), #others.phantom-animation .works-pickup a.works-data:nth-child(2) {
  animation-delay: 0.5s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(3), #others.phantom-animation .works-pickup a.works-data:nth-child(3) {
  animation-delay: 0.6s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(4), #others.phantom-animation .works-pickup a.works-data:nth-child(4) {
  animation-delay: 0.7s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(5), #others.phantom-animation .works-pickup a.works-data:nth-child(5) {
  animation-delay: 0.8s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(6), #others.phantom-animation .works-pickup a.works-data:nth-child(6) {
  animation-delay: 0.9s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(7), #others.phantom-animation .works-pickup a.works-data:nth-child(7) {
  animation-delay: 1s;
}
.contents-body.phantom-animation .works-pickup a.works-data:nth-child(8), #others.phantom-animation .works-pickup a.works-data:nth-child(8) {
  animation-delay: 1.1s;
}
.contents-body a.works-data, #others a.works-data {
  position: relative;
  top: 0;
  background-color: #fff;
  overflow: hidden;
  display: flex;
  align-items: stretch;
  flex-direction: column;
  text-decoration: none;
  border-radius: 0.25em;
}
.contents-body a.works-data div, #others a.works-data div {
  transition: color 0.3s ease-in-out, filter 0.3s ease-in-out;
}
@media (hover: hover) {
  .contents-body a.works-data:hover div, #others a.works-data:hover div {
    color: var(--wp--preset--color--hover);
    filter: brightness(1.1);
  }
}
.contents-body .works-img, #others .works-img {
  position: relative;
  width: 100%;
  aspect-ratio: 3/2;
  overflow: hidden;
}
.contents-body .works-img img, #others .works-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  margin-top: 0;
}
.contents-body .works-text, #others .works-text {
  display: flex;
  flex-direction: column;
  text-align: left;
  gap: 0.3em;
  margin-top: 1em;
  background-color: #fff;
}
.contents-body .works-client, #others .works-client {
  line-height: 1.4;
  font-size: 0.875vw;
}
@media screen and (max-width: 1600px) {
  .contents-body .works-client, #others .works-client {
    font-size: 14px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .works-client, #others .works-client {
    font-size: 0.8125rem;
  }
}
.contents-body .works-name, #others .works-name {
  line-height: 1.4;
  font-weight: bold;
  color: var(--wp--preset--color--text);
  display: block;
  font-size: 1.25vw;
}
@media screen and (max-width: 1440px) {
  .contents-body .works-name, #others .works-name {
    font-size: 18px;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .works-name, #others .works-name {
    font-size: 1.125rem;
  }
}
.contents-body .works-list, #others .works-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1em;
}
@media only screen and (max-width: 1320px) {
  .contents-body .works-list, #others .works-list {
    gap: 0.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .works-list, #others .works-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.contents-body .works-list a.works-data, #others .works-list a.works-data {
  position: relative;
}
.contents-body .works-list a.works-data works-img, #others .works-list a.works-data works-img {
  transition: filter 0.3s ease-in-out;
}
.contents-body .works-list a.works-data .works-text, #others .works-list a.works-data .works-text {
  position: absolute;
  width: 100%;
  height: 100%;
  margin-top: 0;
  padding: 1.5em;
  background-color: rgba(0, 0, 0, 0.6);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.contents-body .works-list a.works-data .works-text div, #others .works-list a.works-data .works-text div {
  color: #fff;
}
@media (hover: hover) {
  .contents-body .works-list a.works-data:hover div, #others .works-list a.works-data:hover div {
    color: var(--wp--preset--color--white);
    filter: brightness(1.1);
  }
  .contents-body .works-list a.works-data:hover .works-text, #others .works-list a.works-data:hover .works-text {
    opacity: 1;
  }
  .contents-body .works-list a.works-data:hover .works-img, #others .works-list a.works-data:hover .works-img {
    filter: blur(4px);
  }
}
.contents-body .works-brand-list, #others .works-brand-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3em 2em;
}
@media only screen and (max-width: 960px) {
  .contents-body .works-brand-list, #others .works-brand-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .works-brand-list, #others .works-brand-list {
    grid-template-columns: repeat(1, 1fr);
    gap: 4em 2em;
  }
}
.contents-body .open-lists, #others .open-lists {
  margin-top: 2.6em;
}
@media only screen and (max-width: 640px) {
  .contents-body .open-lists, #others .open-lists {
    margin-top: 2.4em;
  }
}
.contents-body .open-lists ul:not(.link-list) li, #others .open-lists ul:not(.link-list) li {
  margin-top: 1em;
}
.contents-body .open-list, #others .open-list {
  margin-top: 0;
  border-radius: 0.25em;
  border-radius: 0.5em;
  overflow: hidden;
}
.contents-body .open-list p, #others .open-list p {
  line-height: 1.8;
  color: var(--wp--preset--color--text);
}
.contents-body .open-list p:first-child, #others .open-list p:first-child {
  margin-top: 0;
}
.contents-body .open-list.on, #others .open-list.on {
  box-shadow: 2px 2px 15px rgba(0, 0, 0, 0.1);
  border: none;
}
.contents-body .open-list.on .open-list-title, #others .open-list.on .open-list-title {
  background-color: #fff;
  border-bottom: 1px dashed var(--wp--preset--color--border);
  color: var(--wp--preset--color--text);
}
.contents-body .open-list.on .open-list-title::before, #others .open-list.on .open-list-title::before {
  transform: rotate(225deg);
}
@media (hover: hover) {
  .contents-body .open-list.on .open-list-title:hover::before, #others .open-list.on .open-list-title:hover::before {
    transform: rotate(245deg);
  }
}
.contents-body .open-list + .open-list, #others .open-list + .open-list {
  margin-top: 0.5em;
}
.contents-body .open-list-title, #others .open-list-title {
  position: relative;
  cursor: pointer;
  padding: 2em 3em;
  transition: color 0.3s, transform 0.3s, background-color 0.3s ease-in-out;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em;
  line-height: 1.7;
  background-color: var(--wp--preset--color--lightbg);
  color: var(--wp--preset--color--link);
  border-radius: 0.5em;
  overflow: hidden;
}
@media only screen and (max-width: 960px) {
  .contents-body .open-list-title, #others .open-list-title {
    padding: 1.5em 2em;
  }
}
.contents-body .open-list-title::after, #others .open-list-title::after {
  content: "+";
  font-weight: normal;
  font-size: 1.875vw;
  line-height: 0;
  transform: rotate(0deg);
  transition: transform 0.7s;
}
@media screen and (max-width: 1600px) {
  .contents-body .open-list-title::after, #others .open-list-title::after {
    font-size: 30px;
  }
}
@media (hover: hover) {
  .contents-body .open-list-title:hover, #others .open-list-title:hover {
    color: var(--wp--preset--color--text);
  }
  .contents-body .open-list-title:hover::after, #others .open-list-title:hover::after {
    transform: rotate(20deg);
  }
}
.contents-body .open-list-text, #others .open-list-text {
  display: none;
  color: var(--wp--preset--color--text);
  padding: 2em 3em;
}
.contents-body .open-list-text:first-child > *, #others .open-list-text:first-child > * {
  margin-top: 0;
}
.contents-body .open-list-text:last-child > *, #others .open-list-text:last-child > * {
  margin-bottom: 0;
}
@media only screen and (max-width: 960px) {
  .contents-body .open-list-text, #others .open-list-text {
    padding: 2em;
  }
}
.contents-body .box-area,
.contents-body .is-style-remarks, #others .box-area,
#others .is-style-remarks {
  margin-top: 2em;
  padding: 3em 3em;
  border-radius: 0.5em;
}
@media only screen and (max-width: 960px) {
  .contents-body .box-area,
  .contents-body .is-style-remarks, #others .box-area,
  #others .is-style-remarks {
    padding: 2em 2em;
  }
}
.contents-body .box-area ul, .contents-body .box-area ol, .contents-body .box-area div, .contents-body .box-area table, .contents-body .box-area p,
.contents-body .is-style-remarks ul,
.contents-body .is-style-remarks ol,
.contents-body .is-style-remarks div,
.contents-body .is-style-remarks table,
.contents-body .is-style-remarks p, #others .box-area ul, #others .box-area ol, #others .box-area div, #others .box-area table, #others .box-area p,
#others .is-style-remarks ul,
#others .is-style-remarks ol,
#others .is-style-remarks div,
#others .is-style-remarks table,
#others .is-style-remarks p {
  line-height: 2.4;
  margin-top: 1em;
}
.contents-body .box-area strong,
.contents-body .is-style-remarks strong, #others .box-area strong,
#others .is-style-remarks strong {
  line-height: 1.4;
}
.contents-body .box-area [class^=btn__],
.contents-body .box-area [class^=is-style-btn__],
.contents-body .is-style-remarks [class^=btn__],
.contents-body .is-style-remarks [class^=is-style-btn__], #others .box-area [class^=btn__],
#others .box-area [class^=is-style-btn__],
#others .is-style-remarks [class^=btn__],
#others .is-style-remarks [class^=is-style-btn__] {
  border-width: 0;
}
.contents-body .linetable-ptn, #others .linetable-ptn {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 1em 2em;
  padding-block: 2em;
  border-top: 1px solid var(--wp--preset--color--border);
  border-bottom: 1px solid var(--wp--preset--color--border);
  margin-block: 3.2em;
}
.contents-body .linetable-ptn .wp-block-column, #others .linetable-ptn .wp-block-column {
  flex-grow: unset;
  margin: 0;
  flex-basis: 0;
}
@media only screen and (max-width: 960px) {
  .contents-body .linetable-ptn, #others .linetable-ptn {
    gap: 1em 2em;
    padding-block: 2em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn, #others .linetable-ptn {
    padding-block: 1.5em;
    margin-block: 2.8em;
  }
}
.contents-body .linetable-ptn .linetable-ptn-th, #others .linetable-ptn .linetable-ptn-th {
  font-weight: bold;
  flex-basis: 8em;
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn .linetable-ptn-th, #others .linetable-ptn .linetable-ptn-th {
    flex-basis: 6em;
  }
}
.contents-body .linetable-ptn .linetable-ptn-td, #others .linetable-ptn .linetable-ptn-td {
  flex: 1;
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn.is-not-stacked-on-mobile, #others .linetable-ptn.is-not-stacked-on-mobile {
    flex-wrap: nowrap;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn:not(.is-not-stacked-on-mobile), #others .linetable-ptn:not(.is-not-stacked-on-mobile) {
    flex-wrap: wrap;
  }
  .contents-body .linetable-ptn:not(.is-not-stacked-on-mobile) .linetable-ptn-th, #others .linetable-ptn:not(.is-not-stacked-on-mobile) .linetable-ptn-th {
    flex-basis: 100% !important;
  }
  .contents-body .linetable-ptn:not(.is-not-stacked-on-mobile) .linetable-ptn-td, #others .linetable-ptn:not(.is-not-stacked-on-mobile) .linetable-ptn-td {
    flex-basis: 100% !important;
  }
}
.contents-body .linetable-ptn .linetable-ptn-th > *:last-child,
.contents-body .linetable-ptn .linetable-ptn-td > *:last-child, #others .linetable-ptn .linetable-ptn-th > *:last-child,
#others .linetable-ptn .linetable-ptn-td > *:last-child {
  margin-bottom: 0 !important;
}
.contents-body .linetable-ptn ul, .contents-body .linetable-ptn ol, .contents-body .linetable-ptn div, .contents-body .linetable-ptn table, .contents-body .linetable-ptn p, #others .linetable-ptn ul, #others .linetable-ptn ol, #others .linetable-ptn div, #others .linetable-ptn table, #others .linetable-ptn p {
  margin-top: 1em;
  margin-bottom: 1em;
  line-height: 2.4;
}
.contents-body .linetable-ptn ul:first-child, .contents-body .linetable-ptn ol:first-child, .contents-body .linetable-ptn div:first-child, .contents-body .linetable-ptn table:first-child, .contents-body .linetable-ptn p:first-child, #others .linetable-ptn ul:first-child, #others .linetable-ptn ol:first-child, #others .linetable-ptn div:first-child, #others .linetable-ptn table:first-child, #others .linetable-ptn p:first-child {
  margin-top: 0;
}
.contents-body .linetable-ptn .box-area, #others .linetable-ptn .box-area {
  margin-block: 2em;
  padding: 2em 3em;
}
@media only screen and (max-width: 960px) {
  .contents-body .linetable-ptn .box-area, #others .linetable-ptn .box-area {
    padding: 1.5em 2em;
  }
}
.contents-body .linetable-ptn ul:not(.list-notes) li:first-child, .contents-body .linetable-ptn ol li:first-child,
.contents-body .linetable-ptn ul:not(.is-style-list-notes) li:first-child, #others .linetable-ptn ul:not(.list-notes) li:first-child, #others .linetable-ptn ol li:first-child,
#others .linetable-ptn ul:not(.is-style-list-notes) li:first-child {
  margin-top: 0 !important;
}
.contents-body .linetable-ptn p, #others .linetable-ptn p {
  display: block;
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn p, #others .linetable-ptn p {
    margin-top: 0.8em;
    margin-bottom: 0.8em;
  }
}
.contents-body .linetable-ptn table, #others .linetable-ptn table {
  margin-block: 2em;
}
.contents-body .linetable-ptn table:first-child, #others .linetable-ptn table:first-child {
  margin-top: 0 !important;
}
.contents-body .linetable-ptn .notes,
.contents-body .linetable-ptn .is-style-notes, #others .linetable-ptn .notes,
#others .linetable-ptn .is-style-notes {
  display: block;
  margin-top: 0.5em;
  padding-left: 1em;
  text-indent: -1em;
}
.contents-body .linetable-ptn + .linetable-ptn, #others .linetable-ptn + .linetable-ptn {
  margin-top: -2em;
  border-top: none;
}
.contents-body .linetable-ptn + .list-notes,
.contents-body .linetable-ptn + .is-style-list-notes, #others .linetable-ptn + .list-notes,
#others .linetable-ptn + .is-style-list-notes {
  margin-top: -1em;
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn + .list-notes,
  .contents-body .linetable-ptn + .is-style-list-notes, #others .linetable-ptn + .list-notes,
  #others .linetable-ptn + .is-style-list-notes {
    margin-top: -0.5em;
  }
}
.contents-body .linetable-ptn hr, #others .linetable-ptn hr {
  border-style: dotted;
  margin-block: 2em;
}
@media only screen and (max-width: 640px) {
  .contents-body .linetable-ptn hr, #others .linetable-ptn hr {
    margin-block: 1.5em;
  }
}
.contents-body .news-data, #others .news-data {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 0.5em 1.5em;
  border-bottom: 1px solid var(--wp--preset--color--border);
  padding-block: 1.5em;
}
@media only screen and (max-width: 640px) {
  .contents-body .news-data, #others .news-data {
    flex-wrap: wrap;
  }
}
.contents-body .news-data time, #others .news-data time {
  width: 8em;
  line-height: 1.4;
  letter-spacing: 0.08em;
}
@media only screen and (max-width: 640px) {
  .contents-body .news-data time, #others .news-data time {
    line-height: 1;
  }
}
.contents-body .news-data a, .contents-body .news-data time, #others .news-data a, #others .news-data time {
  padding-block: 0.5em;
}
.contents-body .news-data a, .contents-body .news-data p, #others .news-data a, #others .news-data p {
  flex: 1;
  display: inline-block;
  line-height: 1.4;
  letter-spacing: 0.08em;
  margin: 0;
}
@media only screen and (max-width: 640px) {
  .contents-body .news-data a, .contents-body .news-data p, #others .news-data a, #others .news-data p {
    flex: none;
    width: 100%;
  }
}
.contents-body .member-list li, #others .member-list li {
  position: relative;
}
.contents-body .member-list li::after, #others .member-list li::after {
  content: "";
  position: absolute;
  top: 0.75em;
  width: 100%;
  border-top: 1px dotted var(--wp--preset--color--gray);
}
.contents-body .member-list li:first-child, #others .member-list li:first-child {
  margin-top: 0.4em;
}
.contents-body .member-list .member-list-inner, #others .member-list .member-list-inner {
  width: 100%;
  display: flex;
  column-gap: 1.5em;
}
.contents-body .member-list strong, .contents-body .member-list span, #others .member-list strong, #others .member-list span {
  position: relative;
  display: inline-block;
  background-color: #fff;
  z-index: 1;
}
.contents-body .member-list span, #others .member-list span {
  width: 3.5em;
  margin-left: auto;
  white-space: nowrap;
  flex-shrink: 0;
  text-align: right;
}
.contents-body .member-list strong, #others .member-list strong {
  padding-right: 1em;
}
.contents-body #anc-company, #others #anc-company {
  padding-right: 2em;
}
@media screen and (max-width: 800px) {
  .contents-body #anc-company, #others #anc-company {
    padding-right: 0;
  }
  .contents-body #anc-company img, #others #anc-company img {
    max-width: 11.25rem;
  }
}
.contents-body .service-list + .btn-area, #others .service-list + .btn-area {
  margin-top: 4em;
}
@media only screen and (max-width: 640px) {
  .contents-body .service-list + .btn-area, #others .service-list + .btn-area {
    margin-top: 3em;
  }
}
.contents-body .service-title, #others .service-title {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 1em 1.5em;
}
@media only screen and (max-width: 460px) {
  .contents-body .service-title, #others .service-title {
    flex-direction: column;
    align-items: flex-start;
  }
}
.contents-body .service-title strong, .contents-body .service-title p, #others .service-title strong, #others .service-title p {
  margin-top: 0;
}
.contents-body .service-title strong, #others .service-title strong {
  width: 100%;
  max-width: 9em;
  display: block;
  color: var(--wp--preset--color--text);
  font-size: 1.375em;
  line-height: 1;
  margin: 0;
  padding: 0;
}
.contents-body .service-title span, #others .service-title span {
  display: block;
  font-size: 0.5em;
  margin-top: 0.8em;
}
.contents-body .service-title p, #others .service-title p {
  font-size: 0.875em;
  line-height: 1.6;
  color: var(--wp--preset--color--link);
  font-weight: normal;
}
.contents-body .service-title p span, #others .service-title p span {
  display: inline-block;
}
.contents-body .service-info, #others .service-info {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em;
  padding-bottom: 1.5em;
}
.contents-body .service-info p, #others .service-info p {
  width: 100%;
}
.contents-body .works-embed, #others .works-embed {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5em;
  padding-bottom: 1.5em;
}
.contents-body .works-embed a, #others .works-embed a {
  width: calc(50% - 0.75em);
}
@media only screen and (max-width: 460px) {
  .contents-body .works-embed a, #others .works-embed a {
    width: 100%;
  }
}
.contents-body .swiper-voice-mask, #others .swiper-voice-mask {
  width: 120%;
  overflow: hidden;
}
@media only screen and (max-width: 960px) {
  .contents-body .swiper-voice-mask, #others .swiper-voice-mask {
    width: 100vw;
    margin-left: -40px;
    padding-inline: 40px;
    overflow: hidden;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .swiper-voice-mask, #others .swiper-voice-mask {
    margin-left: -20px;
    padding-inline: 20px;
  }
}
.contents-body .swiper-voice, #others .swiper-voice {
  width: 83.3%;
  margin-left: 0;
  overflow: visible;
}
@media only screen and (max-width: 960px) {
  .contents-body .swiper-voice, #others .swiper-voice {
    width: 100%;
    height: 60vh;
  }
}
@media only screen and (min-width: 961px) {
  .contents-body .swiper-voice .swiper-button-next::before, #others .swiper-voice .swiper-button-next::before {
    margin-right: 0;
  }
}
.contents-body .swiper-voice .swiper-slide-next, #others .swiper-voice .swiper-slide-next {
  opacity: 0.5;
}
.contents-body .voice-wrap, #others .voice-wrap {
  align-items: flex-start;
}
.contents-body .voice-wrap p, #others .voice-wrap p {
  margin: 0;
}
.contents-body .voice-data, #others .voice-data {
  position: relative;
  border-radius: 0.5em;
  overflow: hidden;
}
@media only screen and (max-width: 960px) {
  .contents-body .voice-data, #others .voice-data {
    height: 60vh;
  }
}
.contents-body .voice-data .voice-txtwrap, #others .voice-data .voice-txtwrap {
  opacity: 1;
  margin-bottom: 0;
  margin-top: 0;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 2em;
  padding-inline: 4em 4em;
  padding-block: 3em 4em;
  background: var(--wp--preset--color--lightbg);
  transition: opacity 0.3s ease-in-out;
}
@media only screen and (max-width: 960px) {
  .contents-body .voice-data .voice-txtwrap, #others .voice-data .voice-txtwrap {
    padding-inline: 2em 2em;
    padding-block: 2em 3em;
    gap: 1.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .voice-data .voice-txtwrap, #others .voice-data .voice-txtwrap {
    height: 60vh;
    overflow-y: auto;
  }
}
.contents-body .voice-data .voice-txtwrap::-webkit-scrollbar, #others .voice-data .voice-txtwrap::-webkit-scrollbar {
  width: 2px;
}
.contents-body .voice-data .voice-txtwrap::-webkit-scrollbar-track, #others .voice-data .voice-txtwrap::-webkit-scrollbar-track {
  background: transparent;
}
.contents-body .voice-data .voice-txtwrap::-webkit-scrollbar-thumb, #others .voice-data .voice-txtwrap::-webkit-scrollbar-thumb {
  background: var(--wp--preset--color--blue);
  border-radius: 5px;
}
.contents-body .voice-data .voice-txtwrap::-webkit-scrollbar-thumb:hover, #others .voice-data .voice-txtwrap::-webkit-scrollbar-thumb:hover {
  background: var(--wp--preset--color--blue);
}
.contents-body .voice-data .fade-bottom, #others .voice-data .fade-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(100% - 2px);
  height: 80px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(241, 245, 246, 0), #f1f5f6);
}
.contents-body .voice-data p, #others .voice-data p {
  line-height: 2.2 !important;
}
.contents-body .voice-data .voice-title, #others .voice-data .voice-title {
  display: flex;
  gap: 2em;
}
@media only screen and (max-width: 640px) {
  .contents-body .voice-data .voice-title, #others .voice-data .voice-title {
    display: block;
  }
}
.contents-body .voice-data .voice-title > *, #others .voice-data .voice-title > * {
  margin-top: 0;
}
.contents-body .voice-data .voice-position, #others .voice-data .voice-position {
  flex: 1;
}
.contents-body .voice-data .voice-position strong, #others .voice-data .voice-position strong {
  font-size: 1.375em;
  line-height: 1.4;
  display: block;
}
.contents-body .voice-data .voice-position span, #others .voice-data .voice-position span {
  display: block;
  font-size: 0.75em;
  line-height: 1.4;
  margin-top: 1em;
}
.contents-body .voice-data .voice-join, #others .voice-data .voice-join {
  display: flex;
  align-items: center;
  color: var(--wp--preset--color--link);
  font-size: 0.875em;
}
.contents-body .voice-data .voice-holiday-title, #others .voice-data .voice-holiday-title {
  display: inline-block;
  font-weight: bold;
  border-bottom: 1px solid var(--wp--preset--color--colorgray);
  margin-bottom: 1em;
}
.contents-body #anc-entry, #others #anc-entry {
  margin-top: 10em;
  margin-bottom: 10em;
}
@media only screen and (max-width: 1320px) {
  .contents-body #anc-entry, #others #anc-entry {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 960px) {
  .contents-body #anc-entry, #others #anc-entry {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body #anc-entry, #others #anc-entry {
    margin-top: 7.5em;
    margin-bottom: 7.5em;
  }
}
.contents-body #anc-entry:first-child, #others #anc-entry:first-child {
  margin-top: 0;
}
.contents-body .project-data_wrap, #others .project-data_wrap {
  display: grid;
  align-items: start;
  grid-template-columns: repeat(12, 1fr);
  margin-block: 5em;
  gap: 2em;
}
@media only screen and (max-width: 960px) {
  .contents-body .project-data_wrap, #others .project-data_wrap {
    display: flex;
    flex-direction: column;
  }
}
.contents-body .project-data_wrap h1, #others .project-data_wrap h1 {
  grid-column: 1/-1;
  margin-top: 0;
  font-size: 1.25em;
  letter-spacing: 0.1em;
  margin-bottom: 0;
}
.contents-body .project-data, #others .project-data {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  line-height: 1.6;
  grid-column: 1/span 5;
}
@media only screen and (max-width: 1320px) {
  .contents-body .project-data, #others .project-data {
    grid-column: 1/span 4;
  }
}
.contents-body .project-data dt, #others .project-data dt {
  width: 6em;
  color: var(--wp--preset--color--notes);
  padding-block: 0.3em;
}
.contents-body .project-data dd, #others .project-data dd {
  width: calc(100% - 6em);
  padding-block: 0.3em;
}
.contents-body .project-txt, #others .project-txt {
  grid-column: 7/span 6;
}
@media only screen and (max-width: 1320px) {
  .contents-body .project-txt, #others .project-txt {
    grid-column: 6/span 7;
  }
}
.contents-body .project-txt p, #others .project-txt p {
  margin-top: 0;
  line-height: 2.26;
}
.contents-body .project-img, #others .project-img {
  display: flex;
  flex-wrap: wrap;
  gap: 7.5em;
}
@media only screen and (max-width: 960px) {
  .contents-body .project-img, #others .project-img {
    gap: 4em;
  }
}
.contents-body .project-img div, .contents-body .project-img img, .contents-body .project-img figure, #others .project-img div, #others .project-img img, #others .project-img figure {
  width: 100%;
}
.contents-body .project-img .project-web, #others .project-img .project-web {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 4em;
}
@media only screen and (max-width: 960px) {
  .contents-body .project-img .project-web, #others .project-img .project-web {
    gap: 2em;
  }
}
.contents-body .project-img .project-web figure, #others .project-img .project-web figure {
  border-radius: 1em;
  box-shadow: 0.3em 0.3em 1.5em rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
@media only screen and (max-width: 960px) {
  .contents-body .project-img .project-web figure, #others .project-img .project-web figure {
    border-radius: 0.5em;
  }
}
.contents-body .project-img .project-web.col-2, #others .project-img .project-web.col-2 {
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 960px) {
  .contents-body .project-img .project-web.col-2, #others .project-img .project-web.col-2 {
    gap: 3em 2em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .project-img .project-web.col-2, #others .project-img .project-web.col-2 {
    gap: 2em 1.5em;
  }
}
.contents-body .project-img .project-web.col-3, #others .project-img .project-web.col-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 4em 5em;
}
@media only screen and (max-width: 960px) {
  .contents-body .project-img .project-web.col-3, #others .project-img .project-web.col-3 {
    gap: 3em 2em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body .project-img .project-web.col-3, #others .project-img .project-web.col-3 {
    gap: 2em 1.5em;
  }
}
.contents-body #project-story, #others #project-story {
  margin-top: 12.5em;
  padding-top: 5em;
  text-align: center;
  border-top: 1px solid var(--wp--preset--color--border);
}
@media only screen and (max-width: 960px) {
  .contents-body #project-story, #others #project-story {
    padding-top: 4em;
    margin-top: 10em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body #project-story, #others #project-story {
    padding-top: 3em;
  }
}
.contents-body #project-story > *:first-child, #others #project-story > *:first-child {
  margin-top: 0 !important;
}
.contents-body #project-story h2, #others #project-story h2 {
  font-weight: normal !important;
  margin-bottom: 1.8em;
}
@media only screen and (max-width: 960px) {
  .contents-body #project-story h2, #others #project-story h2 {
    margin-bottom: 1.6em;
  }
}
@media only screen and (max-width: 640px) {
  .contents-body #project-story h2, #others #project-story h2 {
    margin-bottom: 1.4em;
  }
}
.contents-body #project-story .project-linkarea, #others #project-story .project-linkarea {
  display: flex;
  justify-content: center;
}
.contents-body #project-story .project-linkarea .note-embed, #others #project-story .project-linkarea .note-embed {
  margin: 0 !important;
}
.contents-body .form-wrap, #others .form-wrap {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  margin-top: 5em;
}
.contents-body .form-wrap iframe, #others .form-wrap iframe {
  width: 100%;
  height: 1200px;
  border: 0;
}

.home .title-area {
  display: flex;
  justify-content: space-between;
  gap: 1.5em;
  margin-bottom: 2em;
}
@media only screen and (max-width: 1320px) {
  .home .title-area {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 920px) {
  .home .title-area {
    display: block;
  }
}
.home h1 {
  font-size: 7.5em;
  letter-spacing: 0.2em;
  transform: translate(-0.16em, -0.04em);
  font-weight: normal;
  text-shadow: 1px 0 currentColor, -1px 0 currentColor, 0 1px currentColor, 0 -1px currentColor;
}
@media only screen and (max-width: 1320px) {
  .home h1 {
    font-size: 6.25em;
  }
}
@media screen and (max-width: 1024px) {
  .home h1 {
    font-size: 5.625em;
  }
}
@media only screen and (max-width: 960px) {
  .home h1 {
    font-size: 5em;
  }
}
@media only screen and (max-width: 640px) {
  .home h1 {
    font-size: 3.75em;
    transform: translate(-0.06em, -0.04em);
  }
}
.home .home-title-wrap {
  padding-right: 7em;
  position: relative;
}
@media only screen and (max-width: 1320px) {
  .home .home-title-wrap {
    padding-right: 5em;
  }
}
@media only screen and (max-width: 640px) {
  .home .home-title-wrap {
    padding-right: 0;
  }
}
.home .home-title {
  position: absolute;
  top: 3.5em;
  left: 4.3em;
  width: 35.75em;
  transform: rotate(-6deg);
}
@media only screen and (max-width: 1320px) {
  .home .home-title {
    top: 3em;
    width: 28.75em;
  }
}
@media screen and (max-width: 1024px) {
  .home .home-title {
    width: 25em;
  }
}
@media only screen and (max-width: 960px) {
  .home .home-title {
    top: 2.5em;
    left: 3.4em;
    width: 23.125em;
  }
}
@media only screen and (max-width: 640px) {
  .home .home-title {
    top: 1.7em;
    left: 2.5em;
    width: 17.25em;
  }
}
.home .home-title #home-title__mask path {
  fill: none;
  stroke: white;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 9px;
  stroke-dasharray: 2000px;
  animation: h-written 2.5s forwards;
  animation-delay: 0.8s;
  stroke: #fff;
}
.home .home-title #home-title__base {
  mask: url(#home-title__mask);
}
.home .home-title #home-title__base path {
  fill: #ffe100;
}
.home .top-message {
  position: relative;
  width: 45%;
  margin-top: 3.5em;
  z-index: 1;
  opacity: 0;
  transform: translateX(10px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
@media screen and (max-width: 920px) {
  .home .top-message {
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .home .top-message {
    margin-top: 2.4em;
  }
}
.home .top-message strong {
  display: inline-block;
  font-weight: normal;
}
.home.go .top-message {
  transition-delay: 0.8s;
  transform: translateX(0px);
  opacity: 1;
}
@media only screen and (max-width: 960px) {
  .home .works-text {
    position: relative !important;
    height: auto !important;
    opacity: 1 !important;
    padding: 0 !important;
    background-color: rgba(0, 0, 0, 0) !important;
  }
  .home .works-text .works-tag, .home .works-text .works-client {
    display: none;
  }
  .home .works-text .works-name {
    font-size: 0.625rem;
    font-weight: normal;
    padding: 0.8em 0em;
    color: #555 !important;
  }
}
@media (hover: hover) {
  .home .works-data:hover .works-img {
    filter: blur(0) !important;
    filter: brightness(1.1) !important;
  }
}

/************************************
 * Form
 ***********************************/
form {
  margin-top: 4em;
}
form .form-inner {
  width: 100%;
}
form .form-inner dl {
  display: flex;
  flex-wrap: wrap;
  line-height: 0;
}
form .form-inner dt, form .form-inner dd {
  border-bottom: 1px solid var(--wp--preset--color--lightgray);
  padding: 2em 0;
}
form .form-inner dt {
  align-items: center;
  font-weight: 700;
  line-height: 1.2;
  width: 18em;
  padding-right: 3em;
  display: flex;
  align-items: flex-start;
  column-gap: 0.25em;
}
@media only screen and (max-width: 960px) {
  form .form-inner dt {
    border-bottom: none;
    justify-content: space-between;
    width: 100%;
    padding: 2em 0 0;
  }
}
form .form-inner dt p {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
}
form .form-inner dd {
  line-height: 1.2;
  width: calc(100% - 18em);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media only screen and (max-width: 960px) {
  form .form-inner dd {
    width: 100%;
    padding-block: 1em 2em;
  }
}
form .form-inner dd p {
  width: 100%;
  margin-block: 0 1.5em;
  line-height: 1.4;
  font-size: 0.875em;
}
form .required {
  font-size: 0.625em;
  background-color: var(--wp--preset--color--red);
  color: #fff;
  border-radius: 0.25rem;
  display: inline-block;
  margin-left: auto;
  padding: 0.3em 0.4em;
}
form .form-message {
  margin-block: 5em;
}
@media only screen and (max-width: 640px) {
  form .form-message {
    text-align: left;
    font-size: 0.875em;
    text-indent: -1em;
    padding-left: 1em;
  }
}
form .radio-box,
form .check-box {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  flex-wrap: wrap;
  gap: 0.5em;
  width: 100%;
  margin-bottom: 1.5em;
}
@media only screen and (max-width: 1320px) {
  form .radio-box,
  form .check-box {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  form .radio-box,
  form .check-box {
    grid-template-columns: repeat(2, 1fr);
  }
}
form .radio-box label,
form .check-box label {
  width: 100%;
  line-height: 1.2;
  padding: 1em;
  margin-left: 0;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 0.5em;
  background-color: #fff;
  display: flex;
  align-items: center;
  gap: 0.5em;
  transition: border 0.3s ease-in-out;
}
@media only screen and (max-width: 640px) {
  form .radio-box label,
  form .check-box label {
    width: 100%;
  }
}
@media (hover: hover) {
  form .radio-box label:hover,
  form .check-box label:hover {
    border: 1px solid var(--wp--preset--color--gray);
  }
  form .radio-box label:hover input[type=checkbox] + span,
  form .check-box label:hover input[type=checkbox] + span {
    color: var(--wp--preset--color--text);
    opacity: 1;
  }
}
form .radio-box span,
form .check-box span {
  flex: 1;
  color: var(--wp--preset--color--link);
  transition: color 0.3s ease-in-out;
}
form .radio-box input[type=checkbox],
form .check-box input[type=checkbox] {
  margin: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 10px;
  height: 10px;
  background-color: var(--wp--preset--color--colorgray);
  border-radius: 50%;
  position: relative;
  transition: background-color 0.3s ease-in-out, border-color 0.3s ease-in-out;
}
form .radio-box input[type=checkbox]:checked,
form .check-box input[type=checkbox]:checked {
  background-color: var(--wp--preset--color--main);
  border-color: var(--wp--preset--color--main);
}
form .wpcf7-form-control-wrap {
  width: 100%;
}
form .wpcf7-form-control-wrap .wpcf7-form-control {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}
form .wpcf7-form-control-wrap .wpcf7-list-item {
  margin: 0;
  flex: 1;
}
form .wpcf7-form-control-wrap .wpcf7-list-item label {
  width: 100% !important;
}
form .wpcf7-spinner {
  display: inline-block;
  background-color: #23282d;
  opacity: 0.75;
  width: 24px;
  height: 24px;
  border: none;
  border-radius: 100%;
  padding: 0;
  margin: 0;
  position: absolute;
  bottom: -35px;
  text-align: center;
}
form .wpcf7-spinner::before {
  content: "";
  position: absolute;
  background-color: #fbfbfc;
  top: 4px;
  left: 4px;
  width: 6px;
  height: 6px;
  border: none;
  border-radius: 100%;
  transform-origin: 8px 8px;
  animation-name: spin;
  animation-duration: 1000ms;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}
form input[type=button].wpcf7-previous {
  background-color: rgba(54, 132, 198, 0.4);
}
form textarea,
form input,
form select {
  border-radius: 0.5em;
}
@media only screen and (max-width: 640px) {
  form textarea,
  form input,
  form select {
    width: 100%;
  }
}

/**
 * Swiper 11.2.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 19, 2025
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color:#007aff;
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide {
  transform-style: preserve-3d;
}

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color:#fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color:#000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.swiper-virtual .swiper-slide {
  -webkit-backface-visibility: hidden;
  transform: translateZ(0);
}

.swiper-virtual.swiper-css-mode .swiper-wrapper::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after {
  height: 1px;
  width: var(--swiper-virtual-size);
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after {
  width: 1px;
  height: var(--swiper-virtual-size);
}

:root {
  --swiper-navigation-size:44px;
}

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
  display: none !important;
}

.swiper-button-next svg, .swiper-button-prev svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-next svg, .swiper-rtl .swiper-button-prev svg {
  transform: rotate(180deg);
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
  content: "next";
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 0.3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right;
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1));
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important;
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%));
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

.swiper-scrollbar-lock {
  display: none;
}

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.swiper-slide-zoomed {
  cursor: move;
  touch-action: none;
}

.swiper .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

.swiper-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

.swiper-fade.swiper-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.swiper-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity;
}

.swiper-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper.swiper-cube {
  overflow: visible;
}

.swiper-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%;
}

.swiper-cube .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-cube.swiper-rtl .swiper-slide {
  transform-origin: 100% 0;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  opacity: 0.6;
  z-index: 0;
}

.swiper-cube .swiper-cube-shadow:before {
  content: "";
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  filter: blur(50px);
}

.swiper-cube .swiper-slide-next + .swiper-slide {
  pointer-events: auto;
  visibility: visible;
}

.swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-cube.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper.swiper-flip {
  overflow: visible;
}

.swiper-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
}

.swiper-flip .swiper-slide .swiper-slide {
  pointer-events: none;
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-flip.swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.swiper-creative .swiper-slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  transition-property: transform, opacity, height;
}

.swiper.swiper-cards {
  overflow: visible;
}

.swiper-cards .swiper-slide {
  transform-origin: center bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
}

.add-swiper-bullet {
  padding-bottom: 40px;
}

.swiper-slide {
  text-align: center;
}
.swiper-slide img {
  margin: auto;
}
.swiper-slide ul, .swiper-slide ol, .swiper-slide div, .swiper-slide table, .swiper-slide p {
  line-height: 2.4;
}

.swiper-pagination {
  bottom: 0;
}

.swiper-pagination-bullet {
  border-radius: 0;
  margin: 0 8px;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 8px;
}

.swiper-pagination-bullet-active {
  background: #000;
}

.featherlight .featherlight-content {
  padding: 30px;
  margin: 0;
  max-height: 100%;
  border-bottom: none;
  background: transparent;
}
.featherlight .featherlight-image {
  max-width: 100%;
  max-height: 100%;
}
.featherlight .featherlight-close-icon {
  width: 30px;
  height: 30px;
  text-align: center;
  font-size: 20px;
  line-height: 30px;
  color: #FFF;
  font-weight: bold;
  border-radius: 0;
  top: 0;
  right: 30px;
  background: transparent;
}

:root {
  --swiper-navigation-size: 0px !important;
}

.swiper-slide {
  cursor: pointer;
  height: auto;
}

.swiper-button-prev,
.swiper-button-next {
  top: 0;
  line-height: 0;
  display: flex;
  background: none;
  width: 8.125em;
  height: 100%;
  aspect-ratio: 1/1;
  transition: opacity 0.3s, left 0.3s, right 0.3s;
}
@media only screen and (max-width: 960px) {
  .swiper-button-prev,
  .swiper-button-next {
    width: 5.625em;
  }
}
.swiper-button-prev::after, .swiper-button-prev::before,
.swiper-button-next::after,
.swiper-button-next::before {
  position: absolute;
}
.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  width: 60%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  background-color: rgba(255, 255, 255, 0.4);
}
@media only screen and (max-width: 960px) {
  .swiper-button-prev::after,
  .swiper-button-next::after {
    width: 90%;
  }
}
.swiper-button-prev::before,
.swiper-button-next::before {
  font-size: 1.4375vw;
  color: #9b9b9b;
  z-index: 1;
}
@media screen and (max-width: 1600px) {
  .swiper-button-prev::before,
  .swiper-button-next::before {
    font-size: 23px;
  }
}

.swiper-button-prev {
  left: -4.0625em;
}
@media only screen and (max-width: 960px) {
  .swiper-button-prev {
    left: -4.6875em;
  }
}
@media only screen and (max-width: 640px) {
  .swiper-button-prev {
    left: -4.0625em;
  }
}
.swiper-button-prev::before {
  margin-left: 1em;
  content: "\e103";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
@media (hover: hover) {
  .swiper-button-prev:hover {
    left: -4.375em;
  }
}

.swiper-button-next {
  right: -4.0625em;
}
@media only screen and (max-width: 960px) {
  .swiper-button-next {
    right: -4.6875em;
  }
}
@media only screen and (max-width: 640px) {
  .swiper-button-next {
    right: -4.0625em;
  }
}
.swiper-button-next::before {
  margin-right: 1em;
  content: "\e104";
  font-family: "icon";
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  vertical-align: middle;
  display: inline-block;
}
@media (hover: hover) {
  .swiper-button-next:hover {
    right: -4.375em;
  }
}

.swiper-button-disabled {
  opacity: 0 !important;
}

@keyframes fade {
  0% {
    opacity: 0;
    z-index: -1;
  }
  100% {
    opacity: 1;
    z-index: 1;
  }
}
@keyframes slideLtoR {
  0% {
    left: -100%;
  }
  100% {
    left: 0;
  }
}
@keyframes slideRtoL {
  0% {
    right: -100%;
  }
  100% {
    right: 0;
  }
}
@keyframes resizeWidth {
  0% {
    transform: scale(0, 1);
  }
  100% {
    transform: scale(1, 1);
  }
}
@keyframes gnavFade__y {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes gnavFade__x {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes sitemapFade {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes sitemapClose {
  to {
    opacity: 0;
    transform: translateX(1em);
  }
}
@keyframes drop-in {
  /* 画面上から落下 */
  0% {
    transform: translateY(-160%) scale(1);
    opacity: 0;
  }
  /* 着地（強く潰れる） */
  45% {
    transform: translateY(0%) scale(1.25, 0.7);
    opacity: 1;
  }
  /* 1回目の反動 */
  60% {
    transform: translateY(-18%) scale(0.95, 1.05);
  }
  /* 再着地 */
  72% {
    transform: translateY(0%) scale(1.12, 0.85);
  }
  /* 2回目の小バウンド */
  82% {
    transform: translateY(-8%) scale(0.98, 1.02);
  }
  /* 落ち着く */
  100% {
    transform: translateY(0%) scale(1);
  }
}
@keyframes bounce {
  /* 着地：しっかり潰れる */
  0% {
    transform: translateY(0%) scale(1.22, 0.68);
  }
  /* 蹴り出し：縦に伸びる */
  8% {
    transform: translateY(-10%) scale(0.9, 1.12);
  }
  /* 上昇中：まだ少し縦長 */
  18% {
    transform: translateY(-35%) scale(0.96, 1.05);
  }
  /* 形を戻す */
  30% {
    transform: translateY(-80%) scale(1, 1);
  }
  /* 減速 */
  45% {
    transform: translateY(-185%) scale(1, 1);
  }
  /* 最高点 */
  55% {
    transform: translateY(-205%) scale(1, 1);
  }
  /* 落下 */
  80% {
    transform: translateY(-60%) scale(1, 1);
  }
  /* 着地直前 */
  96% {
    transform: translateY(-8%) scale(1, 1);
  }
  /* 再び着地して潰れる */
  to {
    transform: translateY(0%) scale(1.22, 0.68);
  }
}
@keyframes drop-out {
  /* 静止状態から */
  0% {
    transform: translateY(0%) scale(1);
    opacity: 1;
  }
  /* 落ち始め（重力を感じさせる） */
  30% {
    transform: translateY(20%) scale(1);
    opacity: 1;
  }
  /* 画面下へ */
  100% {
    transform: translateY(160%) scale(0.95);
    opacity: 0;
  }
}
@keyframes shadow-black {
  /* 着地 */
  0% {
    transform: scale(1, 1);
    opacity: 0.5;
  }
  /* 蹴り出し */
  8% {
    transform: scale(0.85, 0.85);
    opacity: 0.4;
  }
  /* 上昇 */
  18% {
    transform: scale(0.7, 0.7);
    opacity: 0.3;
  }
  /* 減速中 */
  30% {
    transform: scale(0.6, 0.6);
    opacity: 0.25;
  }
  /* 高く滞空している時間 */
  45%, 55% {
    transform: scale(0.45, 0.45);
    opacity: 0.2;
  }
  /* 落下 */
  80% {
    transform: scale(0.7, 0.7);
    opacity: 0.3;
  }
  /* 着地直前 */
  96% {
    transform: scale(0.85, 0.85);
    opacity: 0.4;
  }
  /* 着地 */
  to {
    transform: scale(1, 1);
    opacity: 0.5;
  }
}
@keyframes shadow-drop {
  0% {
    transform: scale(0.4);
    opacity: 0;
  }
  45% {
    transform: scale(1.15);
    opacity: 0.45;
  }
  60% {
    transform: scale(0.9);
    opacity: 0.35;
  }
  72% {
    transform: scale(1.05);
    opacity: 0.4;
  }
  82% {
    transform: scale(0.95);
    opacity: 0.35;
  }
  100% {
    transform: scale(1);
    opacity: 0.4;
  }
}
@keyframes shadow-out {
  from {
    transform: scale(1);
    opacity: 0.4;
  }
  to {
    transform: scale(0.6);
    opacity: 0;
  }
}
@keyframes news-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-1 * var(--marquee-width)));
  }
}
@keyframes h-written {
  0% {
    stroke-dashoffset: 2000px;
  }
  100% {
    stroke-dashoffset: 0px;
  }
}

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