a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block
}
body {
  line-height: 1
}
ol,
ul {
  list-style: none
}
blockquote,
q {
  quotes: none
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
:root {
  --text-color: #0e3767;
  --base-color: #ffffff;
  --bg-gray: #f5f5f5;
  --bg-light-gray: #f9f9f9;
  --bg-light-cream: #fffbf5;
  --bg-cream: #fbf9f1;
  --bg-light-blue: #e9f9ff;
  --gray: #888888;
  --light-gray: #aaaaaa;
  --border-light: #efefef;
  --border-gray: #cccccc;
  --bg-purple: #f8f3fa;
  --accent-color-yellow: #f8cd77;
  --accent-color-green: #67b47e;
  --accent-color-blue: #57c3ea;
  --accent-color-purple: #d5c4dd;
  --circle-yellow: #fbf9dd;
  --circle-green: #d6f1de;
  --circle-blue: #c5ecf9;
  --circle-purple: #f4eaf9;
  --gradient-color: linear-gradient(
    90deg,
    rgba(213, 196, 221, 0.25) 0%,
    rgba(87, 195, 234, 0.25) 38.94%,
    rgba(248, 205, 119, 0.25) 71.15%,
    rgba(103, 180, 126, 0.25) 100%
  );
  --white: #ffffff;
  --black: #000000;
  --red: #ff0000;
  --font-ja: "Zen Kaku Gothic New",sans-serif;
  --font-en: "Red Hat Display",sans-serif;
  --hover-transition: 0.3s;
  --line-height-base: 1.8;
  --line-height-1dot5: 1.5;
  --line-height-2dot1: 2.1
}
*,
:after,
:before {
  box-sizing: border-box
}
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
  block-size: 100%;
  scroll-padding-top: 100px
}
body {
  background: var(--base-color);
  color: var(--text-color);
  font-family: var(--font-ja);
  font-feature-settings: "palt";
  font-size: 1.6rem;
  font-weight: 500;
  line-break: strict;
  line-height: var(--line-height-base);
  max-inline-size: 100vw;
  min-block-size: 100vh;
  min-block-size: 100svb;
  min-inline-size: 0;
  overflow-wrap: anywhere;
  overflow-x: clip;
  word-break: normal
}
a {
  color: inherit;
  text-decoration: none;
  transition: var(--hover-transition)
}
a:focus-visible {
  cursor: pointer;
  text-decoration: none
}
:where(:-moz-any-link) {
  text-decoration-color: color-mix(in srgb,currentcolor,transparent 40%);
  text-underline-offset: .25em
}
:where(:any-link) {
  text-decoration-color: color-mix(in srgb,currentcolor,transparent 40%);
  text-underline-offset: .25em
}
a,
span {
  display: inline-block
}
svg {
  block-size: 100%;
  inline-size: 100%;
  vertical-align: bottom
}
picture {
  block-size: 100%;
  inline-size: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
img {
  block-size: 100%;
  font-style: italic;
  inline-size: 100%;
  vertical-align: bottom;
  -o-object-fit: cover;
  object-fit: cover
}
input {
  margin: 0;
  padding: 0
}
textarea {
  color: inherit;
  font: inherit;
  padding: 0
}
button {
  background: 0 0;
  border: none;
  color: inherit;
  cursor: pointer;
  font: inherit;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  padding: 0;
  touch-action: manipulation;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none
}
:focus-visible {
  outline: auto solid oklch(60% .4 240deg);
  outline-offset: 2px
}
:focus:not(:focus-visible) {
  outline: 0
}
a[href^="tel:"] {
  pointer-events: none
}
:where(button,[type=button],[type=reset],[type=submit]) {
  touch-action: manipulation
}
:where(ul,ol) {
  list-style-type: "";
  padding: unset
}
:where(:-moz-any-link,button,[type=button],[type=reset],[type=submit],label[for],select,summary,[role=tab],[role=button]) {
  cursor: pointer
}
:where(:any-link,button,[type=button],[type=reset],[type=submit],label[for],select,summary,[role=tab],[role=button]) {
  cursor: pointer
}
:where(dialog) {
  background-color: unset;
  block-size: unset;
  border: unset;
  color: unset;
  inline-size: unset;
  max-block-size: unset;
  max-inline-size: unset;
  overflow: unset;
  padding: unset
}
:where([popover]) {
  background-color: unset;
  block-size: unset;
  border: unset;
  color: unset;
  inline-size: unset;
  overflow: unset;
  padding: unset
}
.scroller {
  overflow: auto;
  overscroll-behavior-block: contain
}
html:has(dialog[open]) {
  overflow: hidden
}
summary {
  display: block
}
summary::-webkit-details-marker {
  display: none
}
.c-loading {
  z-index: calc(infinity)
}
:focus,
[id] {
  scroll-margin-block-start: 100px
}
:where(:root) {
  text-spacing-trim: trim-start;
  text-autospace: normal;
  line-break: strict;
  overflow-wrap: anywhere
}
:where(:root):lang(ja) {
  font-kerning: none
}
:where(:root):lang(en) {
  font-kerning: normal;
  text-wrap: pretty
}
:where(pre) {
  text-spacing-trim: space-all
}
:where(pre,time,input,textarea) {
  text-autospace: no-autospace
}
.p-esd-vision__container,
.p-membership-list__contents {
  scrollbar-width: none;
  -ms-overflow-style: none
}
.p-esd-vision__container::-webkit-scrollbar,
.p-membership-list__contents::-webkit-scrollbar {
  display: none!important;
  height: 0!important;
  width: 0!important;
  -webkit-appearance: none!important;
  appearance: none!important
}
.p-esd-vision__container::-webkit-scrollbar-track,
.p-membership-list__contents::-webkit-scrollbar-track {
  display: none!important;
  height: 0!important;
  width: 0!important
}
.p-esd-vision__container::-webkit-scrollbar-thumb,
.p-membership-list__contents::-webkit-scrollbar-thumb {
  display: none!important;
  height: 0!important;
  width: 0!important
}
.p-esd-vision__container .simplebar-content,
.p-esd-vision__container .simplebar-content-wrapper,
.p-membership-list__contents .simplebar-content,
.p-membership-list__contents .simplebar-content-wrapper {
  scrollbar-width: none;
  -ms-overflow-style: none
}
.p-esd-vision__container .simplebar-content-wrapper::-webkit-scrollbar,
.p-esd-vision__container .simplebar-content::-webkit-scrollbar,
.p-membership-list__contents .simplebar-content-wrapper::-webkit-scrollbar,
.p-membership-list__contents .simplebar-content::-webkit-scrollbar {
  display: none!important;
  height: 0!important;
  width: 0!important;
  -webkit-appearance: none!important;
  appearance: none!important
}
.p-esd-vision__container .simplebar-content-wrapper::-webkit-scrollbar-track,
.p-esd-vision__container .simplebar-content::-webkit-scrollbar-track,
.p-membership-list__contents .simplebar-content-wrapper::-webkit-scrollbar-track,
.p-membership-list__contents .simplebar-content::-webkit-scrollbar-track {
  display: none!important;
  height: 0!important;
  width: 0!important
}
.p-esd-vision__container .simplebar-content-wrapper::-webkit-scrollbar-thumb,
.p-esd-vision__container .simplebar-content::-webkit-scrollbar-thumb,
.p-membership-list__contents .simplebar-content-wrapper::-webkit-scrollbar-thumb,
.p-membership-list__contents .simplebar-content::-webkit-scrollbar-thumb {
  display: none!important;
  height: 0!important;
  width: 0!important
}
.l-drawer__icon {
  position: fixed;
  right: 20px;
  top: 22px;
  z-index: 40
}
.l-drawer__icon.-active .l-drawer__icon--bar:nth-of-type(1) {
  rotate: -15deg;
  top: 10px
}
.l-drawer__icon.-active .l-drawer__icon--bar:nth-of-type(2) {
  rotate: 15deg;
  top: 10px
}
.l-drawer__icon--text {
  display: block;
  font-family: var(--font-en);
  font-size: 1.2rem;
  letter-spacing: .05em;
  line-height: 1;
  margin-inline: 5px;
  text-align: center;
  text-transform: uppercase
}
.l-drawer__icon--bars {
  block-size: 21px;
  display: block;
  inline-size: 48px;
  margin-block-start: 7px;
  margin-inline: auto;
  position: relative;
  z-index: 41
}
.l-drawer__icon--bar {
  background: var(--text-color);
  block-size: 1.5px;
  inline-size: 48px;
  left: 0;
  position: absolute;
  top: 0;
  transition: rotate var(--hover-transition) linear,top var(--hover-transition) linear
}
.l-drawer__icon--bar:nth-of-type(2) {
  top: 10px
}
.l-drawer__content {
  background: var(--bg-light-gray);
  block-size: 100vh;
  block-size: 100dvh;
  inline-size: 100%;
  max-inline-size: 480px;
  position: fixed;
  right: 0;
  top: 74px;
  transition: translate .6s ease-in-out,visibility .6s ease-in-out;
  translate: 100% 0;
  visibility: hidden;
  z-index: 39
}
.l-drawer__content.-active {
  translate: 0 0;
  visibility: visible
}
.l-drawer__inner {
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 48px;
  overflow: scroll;
  padding: 46px 24px 80px
}
.l-drawer__list {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 32px;
  justify-content: center
}
.l-drawer__list li {
  font-family: var(--font-en);
  font-size: 2.2rem;
  font-weight: 600;
  letter-spacing: .08em
}
.l-drawer__linkWrap {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.l-drawer__sns {
  align-items: center;
  display: flex;
  gap: 24px;
  justify-content: right
}
.l-drawer__sns a {
  display: block
}
.l-drawer__sns--icon {
  aspect-ratio: 1;
  display: block;
  inline-size: 29px
}
.l-drawer__sns--icon:nth-child(2) {
  inline-size: 30px
}
.l-drawer__banner {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.l-drawer__banner--img {
  aspect-ratio: 342/110;
  border-radius: 4px;
  inline-size: 100%;
  overflow: hidden
}
.l-drawer__bottom--links {
  align-items: center;
  border-block-start: 1px solid var(--border-light);
  display: flex;
  gap: 32px;
  padding-block-start: 17px
}
.l-drawer__background {
  background: var(--gray);
  block-size: 100%;
  inline-size: 100%;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 74px;
  visibility: hidden;
  z-index: 21
}
.l-drawer__background.-active {
  opacity: .6;
  visibility: visible
}
.l-footer {
  background: var(--bg-light-gray);
  padding-block: clamp(12rem,10.514rem + 3.81vw,16rem) clamp(4.8rem,4.503rem + .762vw,5.6rem)
}
.l-footer__inner {
  padding-inline: clamp(2.4rem,.32rem + 5.333vw,8rem)
}
.l-footer__content {
  display: flex;
  flex-direction: column;
  gap: 48px
}
.l-footer__logo {
  aspect-ratio: 82/38;
  inline-size: clamp(15.8rem,14.24rem + 4vw,20rem);
  margin-inline: auto
}
.l-footer__logo a {
  display: block;
  inline-size: inherit;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-footer__logo a:focus-visible {
  opacity: .6
}
.l-footer__linkWrap {
  display: flex;
  flex-direction: column;
  gap: 28px
}
.l-footer__banner--link {
  display: flex;
  flex-direction: column;
  gap: 8px;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-footer__banner--link:focus-visible {
  opacity: .6
}
.l-footer__banner--img {
  aspect-ratio: 342/110;
  border-radius: 4px;
  inline-size: 100%;
  max-width: 342px;
  overflow: hidden;
  position: relative
}
.l-footer__banner--text {
  color: var(--gray);
  font-size: 1.2rem;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: 1.8;
  padding-inline-end: 20px;
  position: relative
}
.l-footer__banner--text::after {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/common/ico-external.svg);
  mask-image: url(../img/common/ico-external.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 11/8;
  background: var(--gray);
  inline-size: 12px;
  mask-size: contain;
  right: 0;
  top: 50%;
  translate: 0 -50%
}
.l-footer__sns {
  align-items: center;
  display: flex;
  gap: 16px
}
.l-footer__sns--item {
  color: var(--gray);
  display: block;
  font-size: 1.4rem;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-footer__sns--item:focus-visible {
  opacity: .6
}
.l-footer__sns--separator {
  color: var(--gray);
  font-size: 1.4rem
}
.l-footer__bottom {
  border-block-start: 1px solid var(--border-light);
  display: flex;
  flex-direction: column;
  gap: 17px;
  padding-block-start: 16px
}
.l-footer__bottom--links {
  align-items: center;
  display: flex;
  gap: 32px
}
.l-footer__bottom--links a {
  color: var(--gray);
  display: block;
  font-size: 1.2rem;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-footer__bottom--links a:focus-visible {
  opacity: .6
}
.l-footer__copyright {
  color: var(--light-gray);
  font-size: 1rem;
  line-height: var(--line-height-1dot5)
}
.l-header {
  background: var(--white);
  block-size: 74px;
  border-block-end: 1px solid var(--border-light);
  inline-size: 100%;
  left: 0;
  padding-inline: 20px;
  position: fixed;
  top: 0;
  z-index: 20
}
.l-header__wrap {
  align-items: center;
  block-size: inherit;
  display: flex;
  justify-content: space-between
}
.l-header__logo {
  aspect-ratio: 81/38;
  display: block;
  inline-size: 81px;
  margin-block-start: 7px;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-header__logo:focus-visible {
  opacity: .6
}
.l-header__menu {
  display: none
}
.l-header__list {
  align-items: center;
  display: flex;
  -moz-column-gap: 4px;
  column-gap: 4px
}
.l-header__item {
  position: relative
}
.l-header__link {
  align-items: center;
  display: flex;
  gap: 10px;
  padding: 8px 8px;
  text-decoration: none;
  transition: opacity var(--hover-transition) ease-in-out
}
.l-header__link:focus-visible {
  opacity: .6
}
.l-header__link--title {
  display: flex;
  flex-direction: column;
  gap: 4px
}
.l-header__link--jp {
  font-size: 1.4rem;
  line-height: 1
}
.l-header__link--en {
  font-family: var(--font-en);
  font-size: 1.1rem;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.l-header__item--has-submenu {
  position: relative
}
.l-header__item--has-submenu .l-header__link:focus-visible,
.l-header__item--has-submenu .l-header__link:hover {
  opacity: 1
}
.l-header__item--has-submenu:focus-visible .l-header__submenu {
  opacity: 1;
  transform: translateY(0);
  visibility: visible
}
.l-header__item--has-submenu .l-header__link {
  position: relative
}
.l-header__submenu {
  background: var(--white);
  border: 1px solid var(--border-light);
  border-radius: 8px;
  left: 0;
  margin-block-start: 24px;
  opacity: 0;
  padding: 12px 20px 20px;
  position: absolute;
  top: 100%;
  transition: all var(--hover-transition) ease-in-out;
  visibility: hidden;
  z-index: 30
}
.l-header__submenu.--about {
  left: -92px
}
.l-header__submenu--mainLink {
  align-items: center;
  display: flex;
  gap: 16px;
  transition: opacity var(--hover-transition) ease-in-out
}
.l-header__submenu--mainLink:focus-visible {
  opacity: .6
}
.l-header__submenu--title {
  display: flex;
  flex-direction: column;
  gap: 0
}
.l-header__submenu--title-jp {
  font-size: 1.4rem;
  line-height: 1.8
}
.l-header__submenu--title-en {
  font-family: var(--font-en);
  font-size: 1.1rem;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.l-header__link--arrow,
.l-header__submenu--arrow {
  align-items: center;
  background: var(--text-color);
  block-size: 18px;
  border-radius: calc(infinity * 1px);
  display: flex;
  inline-size: 18px;
  justify-content: center;
  position: relative
}
.l-header__link--arrow.--blue,
.l-header__submenu--arrow.--blue {
  background: var(--accent-color-blue)
}
.l-header__link--arrow.--yellow,
.l-header__submenu--arrow.--yellow {
  background: var(--accent-color-yellow)
}
.l-header__link--arrow.--green,
.l-header__submenu--arrow.--green {
  background: var(--accent-color-green)
}
.l-header__link--arrow.--purple,
.l-header__submenu--arrow.--purple {
  background: var(--accent-color-purple)
}
.l-header__submenu--cards {
  align-items: center;
  display: flex;
  gap: 8px;
  margin-block-start: 16px
}
.l-header__submenu--card {
  align-items: center;
  aspect-ratio: 165/108;
  border-radius: 6px;
  display: flex;
  inline-size: 165px;
  justify-content: center;
  overflow: hidden;
  position: relative;
  transition: opacity var(--hover-transition) ease-in-out
}
.l-header__submenu--card::after {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  inset: 0;
  position: absolute;
  transition: scale var(--hover-transition) ease-in-out;
  z-index: -1
}
.l-header__submenu--card.--consume::after {
  background-image: url(../img/header/header-start-01.png)
}
.l-header__submenu--card.--concierge-seminar::after {
  background-image: url(../img/header/header-start-02.png)
}
.l-header__submenu--card.--seminar::after {
  background-image: url(../img/header/header-start-03.png)
}
.l-header__submenu--card.--sustainable-education::after {
  background-image: url(../img/header/header-start-04.png)
}
.l-header__submenu--card.--concierge-directory::after {
  background-image: url(../img/header/header-connect-01.png)
}
.l-header__submenu--card.--concierge-group::after {
  background-image: url(../img/header/header-connect-02.png)
}
.l-header__submenu--card.--ethical-supporter::after {
  background-image: url(../img/header/header-support-01.png)
}
.l-header__submenu--card.--donate::after {
  background-image: url(../img/header/header-support-02.png)
}
.l-header__submenu--card.--corporate-membership::after {
  background-image: url(../img/header/header-support-03.png)
}
.l-header__submenu--card.--history::after {
  background-image: url(../img/header/header-about-01.png)
}
.l-header__submenu--card.--team::after {
  background-image: url(../img/header/header-about-02.png)
}
.l-header__submenu--card.--government::after {
  background-image: url(../img/header/header-about-03.png)
}
.l-header__submenu--card:focus-visible {
  opacity: .6
}
.l-header__submenu--card:focus-visible::after {
  scale: 1.06
}
.l-header__submenu--card-text {
  color: var(--white);
  font-size: 1.4rem;
  line-height: var(--line-height-1dot5);
  position: relative;
  text-align: center;
  z-index: 1
}
.l-header__link--icon,
.l-header__submenu--icon {
  aspect-ratio: 2/1;
  inline-size: 6px;
  transition: transform var(--hover-transition) ease
}
.l-header__line {
  background: var(--border-light);
  block-size: 28px;
  inline-size: 1px
}
.l-header__sns {
  align-items: center;
  display: flex;
  gap: 4px
}
.l-header__sns--item {
  align-items: center;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  padding: 8px;
  transition: opacity var(--hover-transition) ease-in-out
}
.l-header__sns--item:nth-child(1) {
  block-size: 45px;
  inline-size: 45px
}
.l-header__sns--item:nth-child(2) {
  block-size: 46px;
  inline-size: 46px
}
.l-header__sns--item:focus-visible {
  opacity: .6
}
.l-inner {
  height: inherit;
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 640px;
  padding: 0 6.154vw;
  position: relative
}
.l-main {
  overflow: clip
}
.l-nav__wrap {
  display: grid;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem);
  grid-template-columns: repeat(2,1fr)
}
.l-nav__wrap:not(:first-child) {
  margin-block-start: 32px
}
.l-nav__lists {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.l-nav__item {
  position: relative
}
.l-nav__link {
  color: inherit;
  display: block;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-nav__link:focus-visible {
  opacity: .6
}
.l-nav__titleWrap {
  align-items: center;
  border-block-end: 1px solid var(--border-light);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  min-inline-size: 159px;
  padding-block-end: 10px
}
.l-nav__title {
  display: flex;
  flex-direction: column;
  gap: 4px
}
.l-nav__title-jp {
  font-size: 1.4rem;
  line-height: 1;
  white-space: nowrap
}
.l-nav__title-en {
  font-family: var(--font-en);
  font-size: 1.1rem;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.l-nav__icon {
  align-items: center;
  background: var(--text-color);
  block-size: 16px;
  border-radius: calc(infinity * 1px);
  display: flex;
  inline-size: 16px;
  justify-content: center;
  position: relative
}
.l-nav__icon svg {
  aspect-ratio: 2/1;
  inline-size: 6px
}
.l-nav__icon.--blue {
  background: var(--accent-color-blue)
}
.l-nav__icon.--yellow {
  background: var(--accent-color-yellow)
}
.l-nav__icon.--green {
  background: var(--accent-color-green)
}
.l-nav__icon.--purple {
  background: var(--accent-color-purple)
}
.l-nav__submenu {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-block-start: 12px
}
.l-nav__submenu a {
  color: var(--gray);
  display: block;
  font-size: 1.3rem;
  line-height: 1.3;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.l-nav__submenu a:focus-visible {
  opacity: .6
}
.l-nav__submenu a.is-external {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  padding-inline-end: 19px;
  position: relative
}
.l-nav__submenu a.is-external::after {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/common/ico-external.svg);
  mask-image: url(../img/common/ico-external.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 11/8;
  background: var(--gray);
  inline-size: 12px;
  mask-size: contain;
  right: 0;
  top: calc(50% + 1px);
  translate: 0 -50%
}
.l-nav__submenu .l-nav__separator {
  display: block
}
.l-nav__submenu .l-nav__separator::before {
  content: ""
}
.l-nav__submenu .l-nav__separator-none {
  display: block
}
.l-nav__submenu .l-nav__separator-none::before {
  content: ""
}
.l-nav__submenu--zen {
  margin-inline-start: 1em
}
.l-section {
  margin-block-start: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.l-section-mb {
  margin-block: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.l-section-mb-wide {
  margin-block: clamp(6.4rem,2.834rem + 9.143vw,16rem)
}
.l-section-mbe {
  margin-block-end: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.l-section-mbe-wide {
  margin-block-end: clamp(6.4rem,2.834rem + 9.143vw,16rem)
}
.l-section-narrow {
  margin-block-start: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.l-breadcrumb {
  inline-size: 100%
}
.l-breadcrumb__lists {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  vertical-align: middle
}
.l-breadcrumb__list {
  color: var(--light-gray);
  font-size: 1.2rem;
  line-height: normal;
  padding-inline-end: 17px;
  position: relative
}
.l-breadcrumb__list:not(:last-child)::after {
  aspect-ratio: 8/1;
  background-color: var(--light-gray);
  content: "";
  inline-size: 8px;
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%
}
.l-breadcrumb__list a {
  transition: color var(--hover-transition) ease 0s
}
.l-breadcrumb__list a:focus-visible {
  color: var(--border-gray)
}
.l-breadcrumb__list > span:nth-child(n):not(:last-child) {
  color: var(--text-color)
}
.l-lower-page {
  padding-block-end: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block-start: clamp(16rem,11.766rem + 10.857vw,27.4rem);
  position: relative
}
.l-lower-page::before {
  background: var(--border-light);
  block-size: 1px;
  bottom: 0;
  content: "";
  inline-size: var(--before-inline-size,0);
  left: 0;
  opacity: 1;
  position: absolute
}
.l-lower-page::after {
  aspect-ratio: 1;
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(20.5rem,5.829rem + 37.619vw,60rem);
  position: absolute;
  right: -47px;
  top: 56px;
  z-index: -1
}
.l-lower-page.--blue::after {
  background: var(--circle-blue)
}
.l-lower-page.--green::after {
  background: var(--circle-green)
}
.l-lower-page.--purple::after {
  background: var(--circle-purple)
}
.l-lower-page.--yellow::after {
  background: var(--circle-yellow)
}
.l-lower-page__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem)
}
.l-lower-page__section {
  padding-block-start: clamp(8rem,5.029rem + 7.619vw,16rem)
}
.l-lower-page__mb {
  padding-block: clamp(8rem,5.029rem + 7.619vw,16rem) clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.l-lower-page__esd-program {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.l-lower-page__logo {
  aspect-ratio: 141/124;
  block-size: -moz-fit-content;
  block-size: fit-content;
  inline-size: clamp(10.7rem,9.437rem + 3.238vw,14.1rem)
}
.l-lower-page__logo img {
  block-size: 100%;
  inline-size: 100%;
  -o-object-fit: contain;
  object-fit: contain
}
.l-column {
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.l-column__narrow {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.l-flex {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.c-accordion {
  background: var(--bg-light-gray);
  border-radius: 8px
}
.c-accordion__summary {
  align-items: center;
  display: inline-flex;
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem);
  gap: 24px;
  inline-size: 100%;
  line-height: var(--line-height-1dot5);
  padding: 24px 64px 24px 24px;
  position: relative;
  text-align: left
}
.c-accordion__summary .is-q {
  color: var(--accent-color-blue);
  font-family: var(--font-en);
  font-size: 2.4rem;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap
}
.c-accordion__summary::after,
.c-accordion__summary::before {
  background: var(--accent-color-blue);
  block-size: 2px;
  content: "";
  display: block;
  inline-size: 14px;
  position: absolute;
  right: 25px;
  top: calc(50% + 1px);
  translate: 0 -50%
}
.c-accordion__summary::after {
  rotate: -90deg;
  transition: rotate .5s
}
.c-accordion[open]:not([data-accordion-before-close]) .c-accordion__summary::after {
  rotate: 0deg
}
.c-accordion__content {
  display: grid;
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  grid-template-columns: auto 1fr;
  inline-size: 100%;
  line-height: var(--line-height-1dot5);
  overflow: hidden
}
.c-accordion__content .is-a {
  color: var(--accent-color-blue);
  flex-shrink: 0;
  font-family: var(--font-en);
  font-size: 2.4rem;
  line-height: 1;
  line-height: var(--line-height-1dot5);
  margin-inline-start: 24px;
  text-transform: uppercase
}
.c-accordion__content > p {
  max-inline-size: 79.69%;
  padding: 6px 0 32px 26px
}
.c-accordion__answer p {
  max-inline-size: 79.69%;
  padding: 0 64px 20px 24px
}
.c-accordion__answer p + p {
  max-inline-size: 79.69%;
  padding: 0 64px 20px 24px
}
.c-btn {
  align-items: center;
  display: flex;
  gap: 12px;
  inline-size: -moz-fit-content;
  inline-size: fit-content
}
.c-btn span {
  display: inline-block;
  font-size: 1.6rem;
  padding-block-end: 6px;
  position: relative
}
.c-btn span::before {
  background: var(--text-color);
  block-size: 1px;
  bottom: 0;
  content: "";
  inline-size: 100%;
  left: 0;
  position: absolute
}
.c-btn span::after {
  background: var(--border-gray);
  block-size: 1px;
  bottom: 0;
  content: "";
  inline-size: 100%;
  left: 0;
  position: absolute;
  transform: scale(0,1);
  transform-origin: right top;
  transition: transform var(--hover-transition) ease-in-out
}
.c-btn:focus-visible span::after {
  transform: scale(1,1);
  transform-origin: left top
}
.c-btn:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.c-btn:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.c-btn.--white span {
  color: var(--white)
}
.c-btn.--white span::before {
  background: var(--white)
}
.c-btn.--white .c-btn__arrowWrap {
  background: var(--white)
}
.c-btn.--white .c-btn__arrow {
  color: var(--text-color)
}
.c-btn--return .c-btn__arrowWrap .c-btn__arrow {
  transform: scaleX(-1)
}
.c-btn--return .c-btn__arrowWrap .c-btn__arrow.--hover {
  opacity: 0;
  transform: translateX(10px) scaleX(-1)
}
.c-btn--return:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(-10px) scaleX(-1)
}
.c-btn--return:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0) scaleX(-1)
}
.c-btn__arrowWrap {
  align-items: center;
  background: var(--text-color);
  block-size: 30px;
  border-radius: calc(infinity * 1px);
  display: flex;
  inline-size: 30px;
  justify-content: center;
  overflow: hidden;
  position: relative
}
.c-btn__arrow {
  aspect-ratio: 13/11;
  color: var(--white);
  inline-size: 13px;
  opacity: 1;
  position: absolute;
  transform: translateX(0);
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
}
.c-btn__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.c-btn__arrow path {
  fill: currentColor
}
.c-line-btn {
  display: inline grid;
  grid-template-columns: 1fr auto 1fr;
  -moz-column-gap: clamp(1.4rem,.546rem + 2.19vw,3.7rem);
  align-items: center;
  background: 0 0;
  border: 1px solid var(--white);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  column-gap: clamp(1.4rem,.546rem + 2.19vw,3.7rem);
  cursor: pointer;
  inline-size: 100%;
  max-inline-size: 342px;
  padding: 13px 16px 15px;
  text-decoration: none;
  text-wrap: pretty;
  transition-duration: var(--hover-transition);
  transition-property: color,background-color,transform;
  transition-timing-function: ease-in-out;
  vertical-align: middle
}
.c-line-btn:focus-visible {
  background: var(--white);
  color: var(--text-color)
}
.c-line-btn:focus-visible .c-line-btn__arrowWrap,
.c-line-btn:focus-visible .c-line-btn__iconWrap {
  border-color: var(--text-color)
}
.c-line-btn:focus-visible .c-line-btn__arrow {
  color: var(--text-color);
  opacity: 0;
  transform: translateX(10px)
}
.c-line-btn:focus-visible .c-line-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.c-line-btn:focus-visible .c-line-btn__linkIcon {
  border-color: var(--text-color)
}
.c-line-btn:focus-visible .c-line-btn__linkIcon svg {
  color: var(--text-color);
  scale: 1.1
}
.c-line-btn.--small {
  padding: 12px 16px 14px 16px
}
.c-line-btn.--small .c-line-btn__text {
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem)
}
.c-line-btn.--blue {
  background: var(--accent-color-blue);
  border: 1.5px solid var(--accent-color-blue);
  color: var(--white);
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 464px;
  padding: 10px 14px 13px 2px
}
.c-line-btn.--blue .c-line-btn__arrowWrap,
.c-line-btn.--blue .c-line-btn__iconWrap {
  border-color: var(--white)
}
.c-line-btn.--blue .c-line-btn__arrow {
  color: var(--white)
}
.c-line-btn.--blue .c-line-btn__linkIcon {
  border-color: var(--white);
  border-width: 1.5px
}
.c-line-btn.--blue .c-line-btn__linkIcon svg {
  color: var(--white)
}
.c-line-btn.--blue .c-line-btn__text {
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem)
}
.c-line-btn.--blue:focus-visible {
  background: var(--white);
  color: var(--accent-color-blue)
}
.c-line-btn.--blue:focus-visible .c-line-btn__arrowWrap,
.c-line-btn.--blue:focus-visible .c-line-btn__iconWrap {
  border-color: var(--accent-color-blue)
}
.c-line-btn.--blue:focus-visible .c-line-btn__arrow {
  color: var(--accent-color-blue)
}
.c-line-btn.--blue:focus-visible .c-line-btn__linkIcon {
  border-color: var(--accent-color-blue)
}
.c-line-btn.--blue:focus-visible .c-line-btn__linkIcon svg {
  color: var(--accent-color-blue)
}
.c-line-btn.--text {
  background: 0 0;
  border-color: var(--text-color);
  color: var(--text-color);
  grid-template-columns: auto 1fr;
  -moz-column-gap: 16px;
  border-width: 1.5px;
  column-gap: 16px;
  inline-size: 100%;
  max-inline-size: 368px;
  padding: 12px 14px 12px 38px
}
.c-line-btn.--text.--pd {
  padding: 11px 14px 10px 48px
}
.c-line-btn.--text .c-line-btn__text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  text-align: left
}
.c-line-btn.--text .c-line-btn__arrowWrap,
.c-line-btn.--text .c-line-btn__iconWrap {
  border-color: var(--text-color)
}
.c-line-btn.--text .c-line-btn__arrow {
  color: var(--text-color)
}
.c-line-btn.--text .c-line-btn__linkIcon {
  border-color: var(--text-color);
  border-width: 1.5px
}
.c-line-btn.--text .c-line-btn__linkIcon svg {
  color: var(--text-color)
}
.c-line-btn.--text:focus-visible {
  background: var(--text-color);
  color: var(--white)
}
.c-line-btn.--text:focus-visible .c-line-btn__arrowWrap,
.c-line-btn.--text:focus-visible .c-line-btn__iconWrap {
  border-color: var(--white)
}
.c-line-btn.--text:focus-visible .c-line-btn__arrow {
  color: var(--white)
}
.c-line-btn.--text:focus-visible .c-line-btn__linkIcon {
  border-color: var(--white)
}
.c-line-btn.--text:focus-visible .c-line-btn__linkIcon svg {
  color: var(--white)
}
.c-line-btn.--bg-text {
  background: var(--text-color);
  border-color: var(--text-color)
}
.c-line-btn.--bg-text:focus-visible {
  background: var(--white);
  color: var(--text-color)
}
.c-line-btn.--bg-text:focus-visible .c-line-btn__linkIcon {
  border-color: var(--text-color)
}
.c-line-btn.--bg-text:focus-visible .c-line-btn__linkIcon svg {
  color: var(--text-color)
}
.c-line-btn__arrowWrap,
.c-line-btn__iconWrap,
.c-line-btn__linkIcon {
  align-items: center;
  block-size: 40px;
  border: 1px solid var(--white);
  border-radius: calc(infinity * 1px);
  display: flex;
  inline-size: 40px;
  justify-content: center;
  justify-self: end;
  overflow: hidden;
  position: relative;
  transition: border-color var(--hover-transition) ease-in-out
}
.c-line-btn__arrow {
  aspect-ratio: 14/12;
  color: var(--white);
  inline-size: 14px;
  position: absolute;
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.c-line-btn__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.c-line-btn__arrow path {
  fill: currentColor
}
.c-line-btn__linkIcon svg {
  aspect-ratio: 16/12;
  color: var(--white);
  inline-size: 16px;
  transition: color var(--hover-transition) ease-in-out,scale var(--hover-transition) ease-in-out
}
.c-line-btn__text {
  color: currentColor;
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem);
  line-height: var(--line-height-base);
  text-align: center
}
.c-small-btn {
  display: inline grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: 8px;
  align-items: center;
  background: var(--text-color);
  border: 1px solid var(--text-color);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  column-gap: 8px;
  cursor: pointer;
  padding: 1px 20px 2px;
  text-decoration: none;
  text-wrap: pretty;
  transition-duration: var(--hover-transition);
  transition-property: color,background-color,transform;
  transition-timing-function: ease-in-out;
  vertical-align: middle
}
.c-small-btn:focus-visible {
  background: var(--white);
  color: var(--text-color)
}
.c-small-btn:focus-visible .c-small-btn__arrow {
  color: var(--text-color);
  opacity: 0;
  transform: translateX(10px)
}
.c-small-btn:focus-visible .c-small-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.c-small-btn:focus-visible .c-small-btn__linkIcon {
  border-color: var(--text-color)
}
.c-small-btn:focus-visible .c-small-btn__linkIcon svg {
  color: var(--text-color);
  scale: 1.1
}
.c-small-btn__arrowWrap,
.c-small-btn__linkIcon {
  align-items: center;
  display: flex;
  justify-content: center;
  justify-self: end;
  overflow: hidden;
  transition: border-color var(--hover-transition) ease-in-out
}
.c-small-btn__arrowWrap {
  aspect-ratio: 13/11;
  inline-size: 13px;
  overflow: hidden;
  position: relative
}
.c-small-btn__arrow {
  block-size: 100%;
  color: var(--white);
  inline-size: 100%;
  opacity: 1;
  position: absolute;
  transform: translateX(0);
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
}
.c-small-btn__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.c-small-btn__arrow path {
  fill: currentColor
}
.c-small-btn__linkIcon svg {
  aspect-ratio: 1;
  color: var(--white);
  inline-size: 11px;
  transition: color var(--hover-transition) ease-in-out,scale var(--hover-transition) ease-in-out
}
.c-small-btn__text {
  color: currentColor;
  font-size: 1.2rem;
  line-height: var(--line-height-base)
}
.c-card:not(:last-child) {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: 24px
}
.c-card.--line-index:not(:last-child) {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: 24px
}
.c-card__link {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  margin-inline: auto;
  max-inline-size: 480px;
  transition: opacity var(--hover-transition) ease-in-out
}
.c-card__link:focus-visible {
  opacity: .6
}
.c-card__link:focus-visible .c-card__thumbnail img {
  scale: 1.04
}
.c-card__link:focus-visible .c-card__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.c-card__link:focus-visible .c-card__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.c-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-width: 0;
  order: 2
}
.c-card__title {
  block-size: min(100%,2lh);
  display: -webkit-box;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 2;
  font-size: 1.6rem;
  order: 2
}
.c-card__publish {
  color: var(--light-gray);
  font-family: var(--font-en);
  font-size: 1.2rem;
  line-height: var(--line-height-2dot1);
  order: 1
}
.c-card__categories {
  margin-block-start: 8px;
  order: 3
}
.c-card__category {
  background: var(--base-color);
  border: 1px solid var(--border-light);
  border-radius: calc(infinity * 1px);
  display: inline-flex;
  font-size: 1.2rem;
  line-height: var(--line-height-2dot1);
  padding: 1px 12px;
  white-space: nowrap
}
.c-card__thumbnail {
  aspect-ratio: 342/247;
  border-radius: 8px;
  display: block;
  flex-shrink: 0;
  inline-size: 100%;
  order: 1;
  overflow: hidden;
  position: relative
}
.c-card__thumbnail img {
  transition: scale var(--hover-transition) ease-in-out
}
.c-card__noPost {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem)
}
.c-card__arrowWrap {
  display: none
}
.c-card__arrow {
  aspect-ratio: 13/11;
  inline-size: 100%;
  opacity: 1;
  position: absolute;
  transform: translateX(0);
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
}
.c-card__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.c-card__arrow path {
  fill: currentColor
}
.c-section-titleWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(1rem,.777rem + .571vw,1.6rem)
}
.c-section-titleWrap.--center {
  align-items: center
}
.c-section-titleWrap.--row {
  align-items: baseline;
  flex-direction: row-reverse;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  justify-content: left
}
.c-section-titleWrap.--tate {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl
}
.c-section-titleWrap.--wide {
  gap: 26px
}
.c-section-titleWrap.--narrow {
  gap: 8px
}
.c-section-titleWrap.--line {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: 24px
}
.c-section-title--en {
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-1dot5);
  text-transform: capitalize
}
.c-section-title--en.--big {
  font-size: clamp(1.4rem,1.177rem + .571vw,2rem)
}
.c-section-title--en.--lh-1 {
  line-height: 1
}
.c-section-title--en.--ls {
  letter-spacing: .05em;
  line-height: 1
}
.c-section-title {
  font-size: clamp(2.8rem,2.354rem + 1.143vw,4rem);
  line-height: var(--line-height-1dot5)
}
.c-section-title.--lh {
  line-height: var(--line-height-base)
}
.c-section-title__small {
  display: block;
  font-size: 2rem;
  line-height: var(--line-height-1dot5)
}
.c-section-title__small.--ls {
  letter-spacing: .05em
}
.c-subTitle {
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  line-height: var(--line-height-2dot1)
}
.c-enTitle-wrap {
  align-items: baseline;
  display: flex;
  gap: 19px
}
.c-enTitle-wrap.--column {
  flex-direction: column;
  gap: 0
}
.c-enTitle-wrap.--row {
  align-items: baseline;
  justify-content: center
}
.c-enTitle {
  font-family: var(--font-en);
  font-size: clamp(4.8rem,4.206rem + 1.524vw,6.4rem);
  letter-spacing: .009em;
  line-height: var(--line-height-1dot5);
  text-transform: capitalize
}
.c-enTitle.--text-trans-none {
  text-transform: none
}
.c-enTitle.--lh-1 {
  line-height: 1
}
.c-enTitle.--lh-1dot1 {
  line-height: 1.1
}
.c-enTitle-ja {
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  line-height: var(--line-height-1dot5)
}
.c-lower-titleWrap {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.c-lower-titleWrap.--center {
  align-items: center
}
.c-lower-title--en {
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.177rem + .571vw,2rem);
  letter-spacing: .05em;
  line-height: 1;
  padding-inline-start: 48px;
  position: relative;
  text-transform: capitalize
}
.c-lower-title--en::before {
  background-color: var(--text-color);
  block-size: 1px;
  content: "";
  inline-size: 4rem;
  left: 0;
  position: absolute;
  top: 50%;
  translate: 0 -50%
}
.c-lower-title--en.--text-trans-none {
  text-transform: none
}
.c-lower-title {
  font-size: clamp(2.8rem,2.057rem + 1.905vw,4.8rem);
  line-height: var(--line-height-1dot5)
}
.c-lower-title span {
  display: inline-block;
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  line-height: var(--line-height-1dot5);
  padding-block-end: clamp(.4rem,.177rem + .571vw,1rem);
  padding-inline-end: clamp(.8rem,.503rem + .762vw,1.6rem)
}
.c-lower-title__sub {
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  line-height: var(--line-height-1dot5);
  text-align: center
}
.c-lower-title__sub .is-big,
.c-lower-title__sub .is-middle,
.c-lower-title__sub .is-small {
  color: var(--accent-color-blue);
  line-height: var(--line-height-1dot5)
}
.c-lower-title__sub .is-big,
.c-lower-title__sub .is-middle {
  font-family: var(--font-en)
}
.c-lower-title__sub .is-big {
  font-size: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.c-lower-title__sub .is-middle {
  font-size: clamp(2.4rem,1.509rem + 2.286vw,4.8rem)
}
.c-lower-title__sub .is-small {
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.c-lower-title__sub.--left {
  text-align: left
}
.c-lower-title__subJa {
  font-size: clamp(1.8rem,1.577rem + .571vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.c-lower-heading {
  font-size: 2rem;
  line-height: var(--line-height-1dot5)
}
.c-lower-heading.--center {
  text-align: center
}
.c-heading__tateWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem)
}
.c-heading__tateWrap.--left {
  align-items: flex-start
}
.c-heading__tateWrap.--tate {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  align-items: flex-start;
  justify-content: left
}
.c-heading__tateWrap.--tate .c-heading__tate--en {
  letter-spacing: 0
}
.c-heading__tateWrap.--tate .c-heading__tate {
  letter-spacing: .1em
}
.c-heading__tate--en {
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  letter-spacing: .05em;
  line-height: var(--line-height-1dot5);
  text-align: center;
  text-transform: capitalize
}
.c-heading__tate--en.--lh-1 {
  line-height: 1
}
.c-heading__tate {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1.1
}
.c-heading__tate.--big {
  font-size: clamp(2.8rem,2.354rem + 1.143vw,4rem)
}
.c-numTitle__header {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.c-numTitle__header.--support {
  align-items: flex-start;
  flex-direction: row;
  gap: 16px
}
.c-numTitle__number {
  flex-shrink: 0;
  font-family: var(--font-en);
  font-size: 1.6rem;
  letter-spacing: .05em;
  line-height: var(--line-height-1dot5)
}
.c-numTitle__subTitle {
  font-size: clamp(2.4rem,2.251rem + .381vw,2.8rem);
  line-height: var(--line-height-1dot5)
}
.c-numTitle__subTitle span {
  display: inline;
  font-size: 1.4rem
}
.c-numTitle__subTitle span.is-inline {
  display: block;
  line-height: 1.9
}
.c-numTitle__subTitle span.is-mbs {
  display: block
}
.c-hero-link {
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  display: block;
  inline-size: 100%;
  overflow: hidden;
  padding-block: clamp(6.6rem,3.109rem + 8.952vw,16rem) clamp(6.4rem,2.091rem + 11.048vw,18rem);
  position: relative
}
.c-hero-link::after {
  content: "";
  inset: 0;
  position: absolute;
  transition: scale var(--hover-transition) ease-in-out;
  z-index: -1
}
.c-hero-link:focus-visible::after {
  scale: 1.02
}
.c-hero-link:focus-visible .c-btn span::after {
  transform: scale(1,1);
  transform-origin: left top
}
.c-hero-link:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.c-hero-link:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.c-hero-link__inner {
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.c-pagination {
  align-items: center;
  display: flex;
  justify-content: center
}
.c-pagination__list {
  align-items: center;
  display: flex;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem);
  justify-content: center
}
.c-pagination__item a {
  aspect-ratio: 1;
  background: var(--bg-gray);
  border-radius: calc(infinity * 1px);
  color: var(--text-color);
  display: block;
  display: grid;
  font-family: var(--font-en);
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  inline-size: clamp(4.4rem,4.177rem + .571vw,5rem);
  letter-spacing: -.02em;
  line-height: 1;
  place-content: center;
  text-decoration: none;
  transition: color var(--hover-transition) ease-in-out,background-color var(--hover-transition) ease-in-out
}
.c-pagination__item a:focus-visible {
  background: var(--text-color);
  color: var(--white)
}
.c-pagination__item.is-current span {
  aspect-ratio: 1;
  background: var(--text-color);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  display: block;
  display: grid;
  font-family: var(--font-en);
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  inline-size: clamp(4.4rem,4.177rem + .571vw,5rem);
  letter-spacing: -.02em;
  line-height: 1;
  place-content: center;
  pointer-events: none
}
.c-read-more {
  margin-block-start: 32px
}
.c-read-more[open] .c-read-more__icon {
  rotate: 180deg
}
.c-read-more__summary {
  align-items: center;
  border-block-end: 1px solid var(--border-gray);
  cursor: pointer;
  display: flex;
  gap: 40px;
  justify-content: space-between;
  margin-block-end: 32px;
  padding-block-end: 16px;
  padding-inline: 4px
}
.c-read-more__summary::-webkit-details-marker {
  display: none
}
.c-read-more__summary::marker {
  display: none
}
.c-read-more__text {
  color: var(--gray);
  font-size: 1.4rem;
  line-height: 1
}
.c-read-more__icon svg {
  aspect-ratio: 8/4;
  color: var(--light-gray);
  inline-size: 14px;
  transition: rotate var(--hover-transition) ease-in-out;
  vertical-align: middle
}
.c-read-more__content {
  opacity: 1;
  overflow: hidden
}
.c-read-more__content p {
  margin-block-end: 16px
}
.c-read-more__content p:last-child {
  margin-block-end: 0
}
.c-side-menu {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: 16px;
  column-gap: 16px;
  flex-shrink: 0;
  row-gap: 4px
}
.c-side-menu.--ja {
  row-gap: 8px
}
.c-side-menu.--ja .c-side-menu__link {
  font-family: var(--font-ja);
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem)
}
.c-side-menu__link {
  color: var(--border-gray);
  display: block;
  font-family: var(--font-en);
  font-size: 1.6rem;
  transform: translate3d(0,0,0);
  transition: opacity var(--hover-transition) ease-in-out
}
.c-side-menu__link.is-active {
  color: var(--text-color)
}
.c-side-menu__link:focus-visible {
  opacity: .6
}
.c-check-icon {
  aspect-ratio: 34/33;
  flex-shrink: 0;
  inline-size: 28px;
  position: relative
}
.c-check-icon::after,
.c-check-icon::before {
  content: "";
  position: absolute
}
.c-check-icon::before {
  background: #f0f0f0;
  border-radius: calc(infinity * 1px);
  inset: 0;
  z-index: 1
}
.c-check-icon::after {
  aspect-ratio: 28/21;
  inline-size: 22px;
  left: 6px;
  top: 3px;
  -webkit-mask-image: url(../img/common/ico-check.svg);
  mask-image: url(../img/common/ico-check.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  background: var(--text-color);
  mask-size: contain;
  z-index: 2
}
.c-external-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}
.c-external-link {
  display: inline-flex;
  font-size: 1.2rem;
  gap: 7px;
  line-height: var(--line-height-1dot5);
  padding: 4px 20px 6px;
  position: relative;
  transition: opacity var(--hover-transition) ease-in-out
}
.c-external-link:focus-visible {
  opacity: .6
}
.c-external-linkIcon {
  display: block;
  position: relative;
  -webkit-mask-image: url(../img/common/ico-link.svg);
  mask-image: url(../img/common/ico-link.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 1;
  inline-size: 13px;
  margin-block-start: 2px;
  mask-size: contain
}
.c-external-link--gray {
  background: var(--bg-gray);
  border-radius: calc(infinity * 1px);
  color: var(--text-color)
}
.c-external-link--gray .c-external-linkIcon {
  background: var(--text-color)
}
.c-external-link--light-gray {
  background: var(--light-gray);
  border-radius: calc(infinity * 1px);
  color: var(--white)
}
.c-external-link--light-gray .c-external-linkIcon {
  background: var(--white)
}
.c-link__limitText {
  align-items: center;
  background-color: var(--white);
  border-radius: calc(infinity * 1px);
  display: inline-flex;
  gap: 8px;
  padding: 3px 20px 5px;
  transition: background-color var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.c-link__limitText span {
  display: inline-block;
  overflow: hidden;
  position: relative;
  text-overflow: ellipsis;
  white-space: nowrap;
  --max-chars: 17;
  font-size: 1.2rem;
  line-height: var(--line-height-1dot5);
  max-inline-size: calc(var(--max-chars) * 1em);
  padding-inline-end: 19px
}
.c-link__limitText span::after {
  aspect-ratio: 1;
  content: "";
  inline-size: 12px;
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  -webkit-mask-image: url(../img/common/ico-link.svg);
  mask-image: url(../img/common/ico-link.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  background: var(--text-color);
  mask-size: contain;
  transition: background-color var(--hover-transition) ease-in-out
}
.c-link__limitText.--line {
  border: 1px solid var(--text-color)
}
.c-link__limitText:focus-visible {
  opacity: .6
}
.p-conDire-single__content .c-link-card,
.p-corporate-single__content .c-link-card,
.p-news-single__content .c-link-card {
  block-size: auto;
  inline-size: 100%;
  margin-block-start: 16px
}
.p-conDire-single__content .c-link-card__link,
.p-corporate-single__content .c-link-card__link,
.p-news-single__content .c-link-card__link {
  background: var(--bg-gray);
  border: none;
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  margin: 0;
  padding: 0;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-conDire-single__content .c-link-card__link:focus-visible,
.p-corporate-single__content .c-link-card__link:focus-visible,
.p-news-single__content .c-link-card__link:focus-visible {
  opacity: .6
}
.p-conDire-single__content .c-link-card__image,
.p-corporate-single__content .c-link-card__image,
.p-news-single__content .c-link-card__image {
  aspect-ratio: 342/180;
  background-color: #d9d9d9;
  block-size: auto;
  flex-shrink: 0;
  inline-size: 100%;
  min-height: 180px;
  overflow: hidden
}
.p-conDire-single__content .c-link-card__image img,
.p-corporate-single__content .c-link-card__image img,
.p-news-single__content .c-link-card__image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.p-conDire-single__content .c-link-card__image img:not([src]),
.p-conDire-single__content .c-link-card__image img[src=""],
.p-conDire-single__content .c-link-card__image img[src=undefined],
.p-corporate-single__content .c-link-card__image img:not([src]),
.p-corporate-single__content .c-link-card__image img[src=""],
.p-corporate-single__content .c-link-card__image img[src=undefined],
.p-news-single__content .c-link-card__image img:not([src]),
.p-news-single__content .c-link-card__image img[src=""],
.p-news-single__content .c-link-card__image img[src=undefined] {
  display: none
}
.p-conDire-single__content .c-link-card__image img[style*="display: none"],
.p-corporate-single__content .c-link-card__image img[style*="display: none"],
.p-news-single__content .c-link-card__image img[style*="display: none"] {
  display: none!important
}
.p-conDire-single__content .c-link-card__textWrap,
.p-corporate-single__content .c-link-card__textWrap,
.p-news-single__content .c-link-card__textWrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0 24px 24px;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word
}
.p-conDire-single__content .c-link-card__headWrap,
.p-corporate-single__content .c-link-card__headWrap,
.p-news-single__content .c-link-card__headWrap {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-conDire-single__content .c-link-card__title,
.p-corporate-single__content .c-link-card__title,
.p-news-single__content .c-link-card__title {
  block-size: min(100%,3lh);
  color: #555;
  display: -webkit-box;
  font-size: 1.6rem;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 3;
  margin: 0;
  padding: 0
}
.p-conDire-single__content .c-link-card__title::before,
.p-corporate-single__content .c-link-card__title::before,
.p-news-single__content .c-link-card__title::before {
  content: none
}
.p-conDire-single__content .c-link-card__excerpt,
.p-corporate-single__content .c-link-card__excerpt,
.p-news-single__content .c-link-card__excerpt {
  block-size: min(100%,2lh);
  color: var(--gray);
  display: -webkit-box;
  font-size: 1.3rem;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 2;
  margin: 0;
  padding: 0
}
.p-conDire-single__content .c-link-card__url-wrapper,
.p-corporate-single__content .c-link-card__url-wrapper,
.p-news-single__content .c-link-card__url-wrapper {
  align-items: center;
  display: flex;
  gap: 8px;
  margin-block-start: auto
}
.p-conDire-single__content .c-link-card__favicon,
.p-corporate-single__content .c-link-card__favicon,
.p-news-single__content .c-link-card__favicon {
  aspect-ratio: 1;
  display: block;
  flex-shrink: 0;
  inline-size: 25px;
  order: 1
}
.p-conDire-single__content .c-link-card__url,
.p-corporate-single__content .c-link-card__url,
.p-news-single__content .c-link-card__url {
  block-size: min(100%,1lh);
  color: var(--gray);
  display: -webkit-box;
  font-size: 1.3rem;
  line-height: 180%;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 1;
  margin: 0;
  min-width: 0;
  order: 2;
  overflow-wrap: anywhere;
  padding: 0;
  word-break: break-all
}
.p-about-header__contents {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.309rem + 2.286vw,5.6rem);
  margin-inline: auto;
  max-inline-size: 860px
}
.p-about-menu {
  margin-block-start: clamp(6.4rem,1.349rem + 12.952vw,20rem)
}
.p-about-menu__title {
  color: var(--light-gray);
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  text-transform: capitalize
}
.p-about-menu__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(1.8rem,.983rem + 2.095vw,4rem)
}
.p-about-menu__nav {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  row-gap: clamp(.8rem,-.166rem + 2.476vw,3.4rem);
  -moz-column-gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  column-gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  flex: 1;
  inline-size: 100%;
  max-inline-size: 864px
}
.p-about-menu__link {
  align-items: center;
  border-bottom: 1px solid var(--border-gray);
  display: flex;
  gap: 16px;
  inline-size: 100%;
  justify-content: space-between;
  padding: 0 5px 12px 4px;
  transition: opacity var(--hover-transition) ease-in-out;
  white-space: nowrap
}
.p-about-menu__link:focus-visible {
  opacity: .6
}
.p-about-menu__text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: 1
}
.p-about-menu__icon svg {
  aspect-ratio: 8/4;
  color: var(--light-gray);
  inline-size: 14px;
  transition: color var(--hover-transition) ease-in-out;
  vertical-align: middle
}
.p-about-history {
  background-image: url(../img/about/history-bg-sp.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  display: block;
  inline-size: 100%;
  margin-block-start: clamp(6.4rem,2.834rem + 9.143vw,16rem);
  overflow: hidden;
  padding-block: clamp(6.6rem,3.109rem + 8.952vw,16rem) clamp(6.4rem,2.091rem + 11.048vw,18rem)
}
.p-about-history__inner {
  position: relative
}
.p-about-history__text {
  color: var(--white);
  flex: 1
}
.p-about-team {
  position: relative
}
.p-about-team__photo {
  margin-block-start: clamp(5.6rem,4.709rem + 2.286vw,8rem)
}
.p-about-team__photo .p-loop__track img {
  border-radius: 8px;
  overflow: hidden
}
.p-about-overview__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.109rem + 2.286vw,6.4rem);
  margin-block-start: clamp(4rem,3.109rem + 2.286vw,6.4rem)
}
.p-about-overview__section {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(1,1fr)
}
.p-about-overview__sectionTitle {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.p-about-overview__items {
  display: flex;
  flex-direction: column;
  gap: 15px;
  inline-size: 100%
}
.p-about-overview__item {
  background: var(--bg-light-gray);
  border-radius: 8px;
  display: grid;
  grid-template-columns: 90px 1fr;
  padding: 24px
}
.p-about-overview__item.--column {
  gap: 10px;
  grid-template-columns: 1fr
}
.p-about-overview__item .c-accordion {
  grid-column: 1/-1;
  margin-block-start: 0
}
.p-about-overview__item .c-accordion__summary {
  padding: 0
}
.p-about-overview__item .c-accordion__summary::after,
.p-about-overview__item .c-accordion__summary::before {
  background: var(--text-color);
  inline-size: 12px;
  right: 0
}
.p-about-overview__item .c-accordion__content > div,
.p-about-overview__item .c-accordion__content > p {
  max-inline-size: 100%;
  padding: 24px 0 0 0
}
.p-about-overview__label {
  font-size: 1.4rem
}
.p-about-overview__value {
  font-size: 1.4rem;
  line-height: var(--line-height-base)
}
.p-about-overview__value.--name {
  overflow-wrap: break-word;
  word-break: keep-all
}
.p-about-overview__nameItem {
  background: var(--bg-light-gray);
  padding: 24px
}
.p-about-overview__nameLists {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-about-overview__nameList {
  display: grid;
  grid-template-columns: 90px 1fr
}
.p-about-overview__numbered--list {
  counter-reset: item-counter;
  margin-inline-start: .5em
}
.p-about-overview__numbered--list li {
  counter-increment: item-counter;
  line-height: var(--line-height-base);
  padding-left: 1em;
  position: relative
}
.p-about-overview__numbered--list li::before {
  content: counter(item-counter) ".";
  left: 0;
  position: absolute;
  top: 0
}
.p-about-books {
  background: var(--bg-cream);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.4rem,4.654rem + 4.476vw,11.1rem)
}
.p-about-books__inner {
  padding-inline: 45px
}
.p-about-books__items {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  place-items: center;
  row-gap: clamp(3rem,1.886rem + 2.857vw,6rem);
  -moz-column-gap: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  align-items: start;
  column-gap: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  justify-content: center;
  margin-block-start: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.p-about-books__item {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  height: 100%;
  inline-size: 100%
}
.p-about-books__img {
  aspect-ratio: 140/200;
  box-shadow: 2px 2px 10px rgba(0,0,0,.1);
  inline-size: 21.538vw;
  margin-inline: auto;
  max-inline-size: 200px;
  overflow: hidden
}
.p-about-books__info {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: 2px
}
.p-about-books__title {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-1dot5);
  text-align: center;
  white-space: nowrap
}
.p-about-books__publisher {
  color: var(--gray);
  font-size: 1.2rem;
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-about-books__link {
  align-items: center;
  background: var(--accent-color-blue);
  border: 1px solid var(--accent-color-blue);
  border-radius: calc(infinity * 1px);
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-block-start: auto;
  padding: 6px 18px 8px;
  transition: background-color var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.p-about-books__link span {
  color: var(--white);
  font-size: clamp(1.3rem,1.189rem + .286vw,1.6rem);
  line-height: 1;
  text-align: center;
  white-space: nowrap
}
.p-about-books__link:focus-visible {
  background: var(--white)
}
.p-about-books__link:focus-visible span {
  color: var(--accent-color-blue)
}
.p-about-books__link:focus-visible .p-about-books__link--icon {
  color: var(--accent-color-blue);
  scale: 1.1
}
.p-about-books__link--icon {
  aspect-ratio: 16/12;
  color: var(--white);
  inline-size: 1.5rem;
  transition: color var(--hover-transition) ease-in-out,scale var(--hover-transition) ease-in-out
}
.p-conDire__wrap {
  display: flex;
  flex-direction: column;
  gap: clamp(5.6rem,3.223rem + 6.095vw,12rem)
}
.p-conDire__lists {
  display: grid;
  gap: 40px;
  grid-template-columns: repeat(1,1fr)
}
.p-conDire__item {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  inline-size: 100%
}
.p-conDire__item:has(.p-conDire__btn:focus-visible) .p-conDire__thumbnail img {
  scale: 1.04
}
.p-conDire__itemHeader {
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-conDire__numberWrap {
  background: var(--text-color);
  border-radius: 8px 8px 0 0;
  display: flex;
  gap: 2px;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  padding: 8px 16px
}
.p-conDire__numberHash {
  color: var(--white);
  font-family: var(--font-en);
  font-size: 1.2rem;
  line-height: 1.3
}
.p-conDire__number {
  color: var(--white);
  font-family: var(--font-en);
  font-size: 2rem;
  line-height: 1
}
.p-conDire__thumbnail {
  aspect-ratio: 342/190;
  background: var(--border-gray);
  border-radius: 0 8px 8px 8px;
  inline-size: 100%;
  overflow: hidden
}
.p-conDire__thumbnail img {
  transition: scale var(--hover-transition) ease-in-out
}
.p-conDire__itemContent {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-conDire__textWrap {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-conDire__nameWrap {
  display: flex;
  flex-direction: column;
  gap: 4px
}
.p-conDire__nameGroup {
  align-items: flex-end;
  display: flex;
  gap: 4px
}
.p-conDire__name {
  font-size: 2.4rem;
  line-height: 1.3
}
.p-conDire__nameSuffix {
  font-size: 1.6rem;
  line-height: 1.3
}
.p-conDire__romaji {
  font-family: var(--font-en);
  font-size: 1.6rem;
  line-height: 1.3
}
.p-conDire__lead {
  block-size: min(100%,2lh);
  color: var(--gray);
  display: -webkit-box;
  font-size: 1.2rem;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 2;
  flex-grow: 1
}
.p-conDire__btn {
  align-items: center;
  background: var(--bg-gray);
  border-radius: 8px;
  color: inherit;
  display: flex;
  gap: 40px;
  justify-content: space-between;
  margin-block-start: auto;
  padding: 9px 9px 9px 16px;
  text-decoration: none;
  transition: background-color var(--hover-transition) ease-in-out
}
.p-conDire__btn:focus-visible {
  background: var(--text-color)
}
.p-conDire__btn:focus-visible .p-conDire__btnText {
  color: var(--white)
}
.p-conDire__btn:focus-visible .p-conDire__btnIcon {
  color: var(--white)
}
.p-conDire__btnText {
  color: var(--text-color);
  font-size: 1.4rem;
  transition: color var(--hover-transition) ease-in-out
}
.p-conDire__btnIcon {
  aspect-ratio: 16/8;
  color: var(--text-color);
  inline-size: 20px;
  position: relative
}
.p-conDire__btnIcon::after {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/common/arrow.svg);
  mask-image: url(../img/common/arrow.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  background: currentColor;
  inset: 0;
  mask-size: contain;
  transition: background-color var(--hover-transition) ease-in-out
}
.p-conDire-single {
  margin-block-start: 74px;
  position: relative
}
.p-conDire-single::after {
  aspect-ratio: 1;
  background: var(--circle-green);
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(20.5rem,5.829rem + 37.619vw,60rem);
  opacity: .8;
  position: absolute;
  right: -52px;
  top: -54px;
  z-index: -1
}
.p-conDire-single__breadcrumb {
  padding-block-start: clamp(2.2rem,.046rem + 5.524vw,8rem)
}
.p-conDire-single__article {
  margin-block-start: clamp(5.6rem,4.709rem + 2.286vw,8rem)
}
.p-conDire-single__header {
  display: flex;
  flex-direction: column-reverse;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem)
}
.p-conDire-single__headerWrap {
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-conDire-single__numberWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,.206rem + 1.524vw,2.4rem)
}
.p-conDire-single__number {
  font-family: var(--font-en);
  font-size: clamp(2.8rem,2.354rem + 1.143vw,4rem);
  line-height: 1
}
.p-conDire-single__number span {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: 1.3;
  padding-inline-end: 4px;
  vertical-align: top
}
.p-conDire-single__nameWrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
  order: 2
}
.p-conDire-single__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1.3
}
.p-conDire-single__title span {
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  line-height: 1.3;
  padding-inline-start: 4px
}
.p-conDire-single__romaji {
  font-family: var(--font-en);
  font-size: 1.6rem;
  line-height: 1.3
}
.p-conDire-single__img {
  aspect-ratio: 342/266;
  border-radius: 0 8px 8px 8px;
  flex-shrink: 0;
  inline-size: 100%;
  overflow: hidden
}
.p-conDire-single__headerText,
.p-conDire-single__profileCategory,
.p-conDire-single__profileText {
  font-size: 1.4rem
}
.p-conDire-single__profile {
  margin-block-start: clamp(3.8rem,.754rem + 7.81vw,12rem)
}
.p-conDire-single__profileTitle {
  background: var(--text-color);
  border-radius: 8px 8px 0 0;
  color: var(--white);
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.177rem + .571vw,2rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  letter-spacing: .05em;
  line-height: 1;
  padding: 10px 24px 8px 24px;
  text-transform: uppercase
}
.p-conDire-single__profileContent {
  border: 2px solid;
  border-radius: 0 8px 8px 8px;
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.717rem + 1.238vw,4.5rem);
  padding: clamp(3.8rem,2.314rem + 3.81vw,7.8rem) clamp(2.2rem,.12rem + 5.333vw,7.8rem)
}
.p-conDire-single__profileItem {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.137rem + 3.238vw,5.8rem)
}
.p-conDire-single__profileItem:not(:last-child) {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: clamp(3.1rem,2.654rem + 1.143vw,4.3rem)
}
.p-conDire-single__profileBody {
  display: flex;
  flex-direction: column;
  gap: 15px
}
.p-conDire-single__profileSubTitle {
  background: var(--text-color);
  block-size: -moz-fit-content;
  block-size: fit-content;
  border-radius: calc(infinity * 1px) calc(infinity * 1px) 0 calc(infinity * 1px);
  color: var(--white);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: var(--line-height-1dot5);
  padding: 4px 32px 6px 32px;
  white-space: nowrap
}
.p-conDire-single__profileWrap {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-conDire-single__ethical {
  display: flex;
  gap: clamp(1.6rem,1.006rem + 1.524vw,3.2rem);
  justify-content: space-between
}
.p-conDire-single__ethicalWrap {
  display: flex;
  flex-direction: column;
  gap: 14px
}
.p-conDire-single__ethicalImg {
  aspect-ratio: 1;
  block-size: clamp(11.2rem,9.343rem + 4.762vw,16.2rem);
  border-radius: calc(infinity * 1px);
  display: block;
  flex-shrink: 0;
  inline-size: clamp(11.2rem,9.343rem + 4.762vw,16.2rem);
  overflow: hidden
}
.p-conDire-single__content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-block-start: clamp(5.6rem,3.223rem + 6.095vw,12rem)
}
.p-conDire-single__meta {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-block-start: 32px
}
.p-conDire-single__author,
.p-conDire-single__publish {
  color: var(--gray);
  font-size: 1.2rem;
  line-height: var(--line-height-1dot5)
}
.p-conDire-single__btn {
  display: grid;
  margin-block-start: clamp(5.6rem,5.229rem + .952vw,6.6rem);
  place-content: center
}
.p-group-merit__inner {
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-group-merit__contents {
  align-items: center;
  block-size: 100%;
  display: flex;
  gap: clamp(1.6rem,.709rem + 2.286vw,4rem);
  inline-size: 100%;
  justify-content: space-between;
  margin-inline: auto;
  max-inline-size: 1120px
}
.p-group-merit__frame {
  align-self: stretch;
  flex: 0 0 12px;
  position: relative
}
.p-group-merit__frame::before {
  content: "";
  inset: 0;
  position: absolute;
  -webkit-mask-image: url(../img/group/frame-sp.svg);
  mask-image: url(../img/group/frame-sp.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  background: var(--text-color);
  mask-size: contain
}
.p-group-merit__frame.--02::before {
  scale: -1 1
}
.p-group-merit__textWrap {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-block: 16px 32px
}
.p-group-merit__titleWrap {
  align-items: baseline;
  display: flex;
  gap: 24px
}
.p-group-merit__title--en {
  font-family: var(--font-en);
  font-size: 4rem;
  letter-spacing: .05em;
  line-height: var(--line-height-1dot5);
  text-transform: capitalize
}
.p-group-merit__title {
  font-size: 1.6rem;
  line-height: var(--line-height-1dot5)
}
.p-group-merit__lists {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(1,minmax(0,460px))
}
.p-group-merit__list {
  align-items: flex-start;
  display: flex;
  gap: 8px
}
.p-group-merit__text {
  font-size: 1.6rem;
  line-height: var(--line-height-1dot5)
}
.p-group-community {
  margin-block: clamp(7.2rem,2.669rem + 11.619vw,19.4rem) clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-group-community__inner {
  max-inline-size: 1212px!important
}
.p-group-community__items {
  display: grid;
  gap: 64px;
  grid-template-columns: repeat(1,1fr);
  margin-inline: auto
}
.p-group-community__item {
  background-color: var(--bg-light-gray);
  border-radius: 8px;
  display: grid;
  gap: clamp(3.1rem,2.766rem + .857vw,4rem);
  grid-row: span 3;
  grid-template-rows: subgrid;
  padding: clamp(5.6rem,5.451rem + .381vw,6rem) clamp(2.4rem,1.806rem + 1.524vw,4rem) clamp(2.4rem,2.103rem + .762vw,3.2rem);
  position: relative
}
.p-group-community__titleWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-inline: -5px
}
.p-group-community__subTitle {
  font-size: 1.6rem;
  letter-spacing: .05em;
  line-height: var(--line-height-1dot5)
}
.p-group-community__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1
}
.p-group-community__icon {
  aspect-ratio: 1;
  inline-size: 94px;
  left: 50%;
  position: absolute;
  top: -47px;
  translate: -50%
}
.p-group-community__icon.--02 {
  top: -35px
}
.p-group-community__body {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-group-community__text {
  flex-grow: 1;
  font-size: 1.4rem
}
.p-group-community__text p + p {
  margin-block-start: 24px
}
.p-group-community__btnWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 8px;
  inline-size: 100%
}
.p-group-community__btn {
  display: block;
  inline-size: 100%;
  text-align: center
}
.p-group-community__note {
  color: var(--light-gray);
  font-size: 1.2rem;
  line-height: var(--line-height-2dot1)
}
.p-conSemi {
  block-size: 747px;
  margin-block-start: 74px;
  position: relative
}
.p-conSemi::after,
.p-conSemi::before {
  aspect-ratio: 1;
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  position: absolute;
  z-index: -1
}
.p-conSemi::before {
  background: var(--circle-green);
  inline-size: clamp(21.4rem,12.189rem + 23.619vw,46.2rem);
  left: 2.821vw;
  top: -22.308vw
}
.p-conSemi::after {
  background: var(--circle-purple);
  inline-size: clamp(27.7rem,15.703rem + 30.762vw,60rem);
  right: -38.718vw;
  top: 55.385vw
}
.p-conSemi__inner {
  max-inline-size: 1920px;
  position: relative
}
.p-conSemi__inner::after {
  aspect-ratio: 1;
  background: var(--circle-blue);
  border-radius: calc(infinity * 1px);
  bottom: 31.795vw;
  content: "";
  filter: blur(90px);
  inline-size: clamp(15.4rem,8.714rem + 17.143vw,33.4rem);
  left: -9.744vw;
  position: absolute;
  z-index: -1
}
.p-conSemi__breadcrumbs {
  background: 0 0;
  padding-block-start: clamp(2.2rem,1.829rem + .952vw,3.2rem);
  position: relative;
  z-index: 2
}
.p-conSemi__titleWrap {
  display: grid;
  gap: 4.103vw;
  margin-block-start: clamp(13.8rem,10.271rem + 9.048vw,23.3rem);
  place-content: center;
  position: relative;
  z-index: 2
}
.p-conSemi__title--en {
  font-family: var(--font-en);
  font-size: clamp(6.8rem,5.76rem + 2.667vw,9.6rem);
  letter-spacing: .01em;
  line-height: 1.2;
  text-align: center;
  text-transform: capitalize;
  text-wrap: balance
}
.p-conSemi__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  text-align: center
}
.p-conSemi__imgWrap {
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 1920px
}
.p-conSemi__img {
  position: absolute
}
.p-conSemi__img:nth-child(1),
.p-conSemi__img:nth-child(4),
.p-conSemi__img:nth-child(5) {
  filter: blur(10px)
}
.p-conSemi__img:nth-child(2),
.p-conSemi__img:nth-child(3),
.p-conSemi__img:nth-child(6),
.p-conSemi__img:nth-child(7) {
  border-radius: 8px;
  overflow: hidden
}
.p-conSemi__img:nth-child(1) {
  aspect-ratio: 187/138;
  inline-size: clamp(18.7rem,13.314rem + 13.81vw,33.2rem);
  left: -18.974vw;
  top: 12.821vw
}
.p-conSemi__img:nth-child(2) {
  aspect-ratio: 163/108;
  inline-size: clamp(16.3rem,11.546rem + 12.19vw,29.1rem);
  right: -13px;
  top: 63px
}
.p-conSemi__img:nth-child(3) {
  aspect-ratio: 1;
  inline-size: clamp(11rem,7.806rem + 8.19vw,19.6rem);
  left: -7.436vw;
  top: 233px
}
.p-conSemi__img:nth-child(4) {
  aspect-ratio: 120/148;
  inline-size: clamp(12rem,8.509rem + 8.952vw,21.4rem);
  right: 69px;
  top: 150px;
  z-index: -1
}
.p-conSemi__img:nth-child(5) {
  aspect-ratio: 138/104;
  inline-size: clamp(13.8rem,9.714rem + 10.476vw,24.8rem);
  right: 93px;
  top: 413px
}
.p-conSemi__img:nth-child(6) {
  aspect-ratio: 139/185;
  bottom: 0;
  inline-size: clamp(13.9rem,10.297rem + 9.238vw,23.6rem);
  left: 34px
}
.p-conSemi__img:nth-child(7) {
  aspect-ratio: 162/120;
  bottom: 26.41vw;
  inline-size: clamp(16.2rem,9.886rem + 16.19vw,33.2rem);
  right: 5.128vw
}
.p-conSemi__loopContents {
  display: block;
  margin-block-start: -51px;
  overflow: hidden;
  position: relative
}
.p-conSemi__loopWrap {
  display: flex;
  gap: clamp(6rem,4.886rem + 2.857vw,9rem);
  inline-size: 100%;
  white-space: nowrap;
  z-index: 1
}
.p-conSemi__loopWrap li {
  -webkit-text-stroke: 1px var(--text-color);
  color: var(--white);
  flex: 0 0 auto;
  font-family: var(--font-en);
  font-size: clamp(8rem,6.217rem + 4.571vw,12.8rem);
  line-height: var(--line-height-1dot5);
  opacity: .2;
  text-transform: capitalize;
  white-space: nowrap;
  text-stroke: 1px var(--text-color);
  animation: loop 20s -30s linear infinite;
  z-index: -1
}
.p-conSemi__loopWrap.loopWrap--left li {
  animation-name: loop-left
}
.p-conSemi-header {
  margin-block-start: 5px
}
.p-conSemi-header__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-conSemi-header__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-conSemi-header__subTitle {
  font-size: clamp(3.2rem,2.903rem + .762vw,4rem);
  line-height: var(--line-height-1dot5)
}
.p-conSemi-header__wrap {
  display: flex;
  flex-direction: column;
  gap: clamp(3rem,1.143rem + 4.762vw,8rem)
}
.p-conSemi-directory .p-parts-directory {
  padding-block: clamp(10rem,6.063rem + 10.095vw,20.6rem) 302px
}
.p-conSemi-voice {
  background-color: var(--bg-light-gray);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem)
}
.p-conSemi-voice__inner {
  display: flex;
  flex-direction: column
}
.p-conSemi-voice__title--en {
  letter-spacing: .05em;
  line-height: 1
}
.p-conSemi-voice__swiper,
.p-conSemi-voice__swiper-container,
.p-conSemi-voice__swiper-slide,
.p-conSemi-voice__swiper-wrapper {
  position: relative
}
.p-conSemi-voice__swiper-container {
  inline-size: 100vw;
  margin-block-start: clamp(4rem,3.406rem + 1.524vw,5.6rem);
  margin-inline: calc(50% - 50vw)
}
.p-conSemi-voice__swiper-slide {
  block-size: auto;
  padding-block-end: clamp(3.1rem,2.803rem + .762vw,3.9rem);
  position: relative
}
.p-conSemi-voice__card {
  block-size: 100%;
  border-radius: 80px;
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-block-size: 310px;
  max-inline-size: 488px;
  padding: 40px 8.205vw
}
.p-conSemi-voice__card::before {
  bottom: 5px;
  content: "";
  left: calc(50% + 36px);
  position: absolute;
  -webkit-mask-image: url(../img/concierge-seminar/fukidashi-parts.svg);
  mask-image: url(../img/concierge-seminar/fukidashi-parts.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 31/27;
  block-size: clamp(2.7rem,2.44rem + .667vw,3.4rem);
  inline-size: clamp(3.1rem,2.803rem + .762vw,3.9rem);
  mask-size: contain
}
.p-conSemi-voice__card.--blue {
  background: var(--accent-color-blue)
}
.p-conSemi-voice__card.--blue::before {
  background: var(--accent-color-blue)
}
.p-conSemi-voice__card.--blue .p-conSemi-voice__name {
  color: var(--accent-color-blue)
}
.p-conSemi-voice__card.--yellow {
  background: var(--accent-color-yellow)
}
.p-conSemi-voice__card.--yellow::before {
  background: var(--accent-color-yellow)
}
.p-conSemi-voice__card.--yellow .p-conSemi-voice__name {
  color: var(--accent-color-yellow)
}
.p-conSemi-voice__card.--green {
  background: var(--accent-color-green)
}
.p-conSemi-voice__card.--green::before {
  background: var(--accent-color-green)
}
.p-conSemi-voice__card.--green .p-conSemi-voice__name {
  color: var(--accent-color-green)
}
.p-conSemi-voice__card.--purple {
  background: var(--accent-color-purple)
}
.p-conSemi-voice__card.--purple::before {
  background: var(--accent-color-purple)
}
.p-conSemi-voice__card.--purple .p-conSemi-voice__name {
  color: var(--accent-color-purple)
}
.p-conSemi-voice__text {
  font-size: clamp(1.28rem,1.161rem + .305vw,1.6rem)
}
.p-conSemi-voice__name {
  background: var(--white);
  border-radius: calc(infinity * 1px);
  display: inline-block;
  font-size: clamp(1.1rem,.989rem + .286vw,1.4rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin-block-start: auto;
  padding: 3px 16px
}
.swiper-button-next,
.swiper-button-prev {
  bottom: unset;
  left: unset;
  margin: 0;
  padding: 0;
  right: unset;
  top: unset
}
.swiper-button-next::after,
.swiper-button-prev::after {
  content: ""
}
.swiper-button-next.p-conSemi-voice__swiper-button-next,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev {
  aspect-ratio: 1;
  background: rgba(255,255,255,.5);
  block-size: clamp(4.4rem,3.954rem + 1.143vw,5.6rem);
  border-radius: calc(infinity * 1px);
  color: var(--light-gray);
  display: block;
  display: grid;
  inline-size: clamp(4.4rem,3.954rem + 1.143vw,5.6rem);
  overflow: hidden;
  place-content: center;
  position: absolute;
  top: 50%;
  translate: 0 -50%
}
.swiper-button-next.p-conSemi-voice__swiper-button-next .c-swiper__arrowWrap,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev .c-swiper__arrowWrap {
  aspect-ratio: 23/20;
  inline-size: clamp(1.5rem,1.203rem + .762vw,2.3rem);
  overflow: hidden;
  position: relative
}
.swiper-button-next.p-conSemi-voice__swiper-button-next .c-btn__arrow,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev .c-btn__arrow {
  color: var(--light-gray);
  left: 0;
  position: absolute;
  top: 0;
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
}
.swiper-button-next.p-conSemi-voice__swiper-button-next .c-btn__arrow.--hover,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev .c-btn__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.swiper-button-next.p-conSemi-voice__swiper-button-next:focus-visible .c-btn__arrow,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.swiper-button-next.p-conSemi-voice__swiper-button-next:focus-visible .c-btn__arrow.--hover,
.swiper-button-prev.p-conSemi-voice__swiper-button-prev:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.p-conSemi-voice__swiper-button-prev {
  left: 4.103vw;
  rotate: 180deg
}
.p-conSemi-voice__swiper-button-next {
  right: 4.103vw
}
.p-conSemi-voice__btn {
  display: grid;
  margin-block-start: clamp(4rem,3.443rem + 1.429vw,5.5rem);
  place-content: center
}
.p-connect-group {
  background-image: url(../img/connect/connect-bg-sp.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.7rem,3.246rem + 8.857vw,16rem) clamp(6.4rem,2.091rem + 11.048vw,18rem);
  position: relative;
  z-index: 2
}
.p-connect-group__inner {
  position: relative
}
.p-connect-group__text {
  color: var(--white);
  flex: 1
}
.p-connect-director {
  margin-block-start: -16px
}
.p-consume-consider {
  display: grid;
  place-content: center;
  place-items: center;
  position: relative
}
.p-consume-consider__inner {
  display: flex;
  flex-direction: column;
  gap: clamp(3.6rem,2.3rem + 3.333vw,7.1rem)
}
.p-consume-consider__items {
  display: flex;
  flex-direction: column;
  gap: 48px;
  position: relative
}
.p-consume-consider__item {
  inline-size: -moz-fit-content;
  inline-size: fit-content
}
.p-consume-consider__item:nth-child(1),
.p-consume-consider__item:nth-child(3),
.p-consume-consider__item:nth-child(5) {
  margin-inline-start: 7.179vw
}
.p-consume-consider__item:nth-child(1) .p-consume-consider__img,
.p-consume-consider__item:nth-child(3) .p-consume-consider__img,
.p-consume-consider__item:nth-child(5) .p-consume-consider__img {
  margin-inline-start: -6.667vw
}
.p-consume-consider__item:nth-child(1) .p-consume-consider__textWrap,
.p-consume-consider__item:nth-child(3) .p-consume-consider__textWrap,
.p-consume-consider__item:nth-child(5) .p-consume-consider__textWrap {
  margin-inline-start: 28px
}
.p-consume-consider__item:nth-child(1) .p-consume-consider__title,
.p-consume-consider__item:nth-child(3) .p-consume-consider__title,
.p-consume-consider__item:nth-child(5) .p-consume-consider__title {
  text-align: right
}
.p-consume-consider__item:nth-child(2),
.p-consume-consider__item:nth-child(4) {
  margin-inline-start: 14.359vw
}
.p-consume-consider__item:nth-child(1) {
  display: flex;
  flex-direction: column;
  gap: 25px
}
.p-consume-consider__item:nth-child(1) .p-consume-consider__title::before {
  background-color: var(--circle-blue);
  right: -14px;
  top: -186px
}
.p-consume-consider__item:nth-child(1) .p-consume-consider__img {
  aspect-ratio: 342/220
}
.p-consume-consider__item:nth-child(2) {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-consume-consider__item:nth-child(2) .p-consume-consider__title::before {
  background-color: var(--circle-yellow);
  left: -64px;
  top: -118px
}
.p-consume-consider__item:nth-child(2) .p-consume-consider__img {
  aspect-ratio: 340/212;
  margin-inline-start: 58px
}
.p-consume-consider__item:nth-child(3) {
  display: flex;
  flex-direction: column;
  gap: 22px
}
.p-consume-consider__item:nth-child(3) .p-consume-consider__title::before {
  background-color: var(--circle-green);
  right: -24px;
  top: -186px
}
.p-consume-consider__item:nth-child(3) .p-consume-consider__img {
  aspect-ratio: 340/220
}
.p-consume-consider__item:nth-child(4) {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin-block-start: 10px
}
.p-consume-consider__item:nth-child(4) .p-consume-consider__title::before {
  background-color: var(--circle-purple);
  left: 10px;
  top: -122px
}
.p-consume-consider__item:nth-child(4) .p-consume-consider__img {
  aspect-ratio: 350/202;
  inline-size: 89.744vw;
  margin-inline-start: 47px
}
.p-consume-consider__item:nth-child(5) {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-block-start: 8px;
  margin-inline-start: 54px
}
.p-consume-consider__item:nth-child(5) .p-consume-consider__textWrap {
  margin-inline-start: 0
}
.p-consume-consider__item:nth-child(5) .p-consume-consider__title::before {
  background-color: var(--circle-blue);
  right: 2px;
  top: -150px
}
.p-consume-consider__item:nth-child(5) .p-consume-consider__img {
  aspect-ratio: 340/210;
  margin-inline-start: -62px
}
.p-consume-consider__textWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.117rem + 1.238vw,2.9rem);
  max-inline-size: 342px
}
.p-consume-consider__title {
  display: block;
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: 1;
  position: relative
}
.p-consume-consider__title span {
  display: inline-block;
  font-size: clamp(3.2rem,2.903rem + .762vw,4rem);
  line-height: 1;
  margin-inline-end: 8px
}
.p-consume-consider__title::before {
  aspect-ratio: 1;
  content: "";
  display: block;
  filter: blur(50px);
  inline-size: 174px;
  position: absolute;
  z-index: -1
}
.p-consume-consider__text {
  font-size: 1.4rem
}
.p-consume-consider__img {
  display: block;
  inline-size: 87.179vw;
  max-inline-size: 520px
}
.p-consume-casestudy {
  margin-block-start: 128px
}
.p-consume-casestudy__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.p-consume-casestudy__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-consume-casestudy__mainTitle {
  font-size: clamp(1.7rem,1.589rem + .286vw,2rem);
  line-height: 1
}
.p-consume-casestudy__items {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-consume-casestudy__item {
  align-items: center;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.471rem + 2.381vw,4.9rem);
  padding: clamp(3.2rem,2.606rem + 1.524vw,4.8rem) clamp(2rem,.663rem + 3.429vw,5.6rem)
}
.p-consume-casestudy__item.--company {
  background: var(--bg-light-blue)
}
.p-consume-casestudy__item.--company .p-consume-casestudy__badge {
  background: var(--accent-color-blue)
}
.p-consume-casestudy__item.--company .p-consume-casestudy__point--label {
  border-color: var(--accent-color-blue);
  color: var(--accent-color-blue)
}
.p-consume-casestudy__item.--region {
  background: #e9f7ed
}
.p-consume-casestudy__item.--region .p-consume-casestudy__badge {
  background: var(--accent-color-green)
}
.p-consume-casestudy__item.--region .p-consume-casestudy__point--label {
  border-color: var(--accent-color-green);
  color: var(--accent-color-green)
}
.p-consume-casestudy__body {
  display: flex;
  flex: 0 1 48.57%;
  flex-direction: column;
  gap: clamp(1.6rem,1.006rem + 1.524vw,3.2rem)
}
.p-consume-casestudy__header {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-consume-casestudy__badge {
  border-radius: calc(infinity * 1px);
  color: var(--white);
  display: grid;
  font-size: 1.6rem;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: var(--line-height-1dot5);
  padding: 2px 20px 4px 20px;
  place-content: center
}
.p-consume-casestudy__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.p-consume-casestudy__point {
  align-self: stretch;
  background: var(--base-color);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(1.4rem,1.029rem + .952vw,2.4rem) clamp(1.6rem,1.006rem + 1.524vw,3.2rem) clamp(2rem,1.257rem + 1.905vw,4rem)
}
.p-consume-casestudy__point--label {
  border-block-end: 1px solid;
  display: inline-flex;
  font-size: 1.4rem;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  letter-spacing: .05em;
  line-height: 1.6
}
.p-consume-casestudy__point--text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem)
}
.p-consume-casestudy__img {
  aspect-ratio: 1;
  border-radius: calc(infinity * 1px);
  flex-shrink: 0;
  inline-size: 100%;
  max-inline-size: clamp(21.6rem,14.766rem + 17.524vw,40rem)
}
.p-contact-attention__contents {
  background: var(--bg-cream);
  border-radius: 16px;
  display: grid;
  gap: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  inline-size: 100%;
  padding: clamp(3.2rem,2.606rem + 1.524vw,4.8rem) clamp(2.4rem,.617rem + 4.571vw,7.2rem);
  place-content: center
}
.p-contact-attention__titleWrap {
  align-items: center;
  display: flex;
  gap: 16px;
  justify-content: center
}
.p-contact-attention__titleIcon {
  aspect-ratio: 55/48;
  flex-shrink: 0;
  inline-size: 55px
}
.p-contact-attention__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-contact-attention__text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-2dot1)
}
.p-contact-qa {
  margin-block-start: -8px
}
.p-contact-qa__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-contact-qa__lists {
  display: flex;
  flex-direction: column;
  gap: 16px;
  inline-size: 100%
}
.p-contact-qa__lists .c-accordion__answer p {
  max-inline-size: 712px;
  padding: 5px 61px 15px 26px
}
.p-contact-qa__lists .c-accordion__answer p:last-child {
  padding: 10px 27px 30px 26px
}
.p-contact-qa__lists .c-small-btn {
  margin-block: 8px 30px;
  margin-inline-start: 24px;
  -moz-column-gap: 15px;
  column-gap: 15px;
  padding: 1px 14px 2px
}
.p-contact-qa__lists .c-small-btn__text {
  font-size: 1.4rem
}
.p-contact-form__contents {
  display: flex;
  flex-direction: column;
  gap: 52px
}
.p-contact-form__textWrap {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: clamp(4.6rem,4.526rem + .19vw,4.8rem)
}
.p-contact-form__text {
  font-size: clamp(1.4rem,1.177rem + .571vw,2rem)
}
.p-contact-form__btn {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-donate-how__btn--info {
  color: var(--light-gray);
  font-size: 1.2rem
}
.p-contact-mail {
  margin-block-end: 104px
}
.p-corporate__wrap {
  display: flex;
  flex-direction: column;
  gap: clamp(5.6rem,3.223rem + 6.095vw,12rem)
}
.p-corporate__lists {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  justify-content: center;
  row-gap: clamp(3.2rem,1.714rem + 3.81vw,7.2rem);
  -moz-column-gap: 32px;
  column-gap: 32px
}
.p-corporate__item:not(:last-child) {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: 32px
}
.p-corporate__link {
  background-color: var(--base-color);
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: opacity var(--hover-transition) ease-in-out
}
.p-corporate__link:focus-visible {
  opacity: .6
}
.p-corporate__link:focus-visible .p-corporate__img img {
  scale: 1.04
}
.p-corporate__img {
  aspect-ratio: 346/190;
  border-radius: 8px;
  overflow: hidden
}
.p-corporate__img img {
  transition: scale var(--hover-transition) ease-in-out
}
.p-corporate__img.--no-image {
  background: var(--border-gray)
}
.p-corporate__content {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-corporate__title {
  block-size: min(100%,2lh);
  display: -webkit-box;
  font-size: 2rem;
  line-height: var(--line-height-1dot5);
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 2;
  flex-grow: 1
}
.p-corporate__initiative {
  block-size: min(100%,3lh);
  color: var(--gray);
  display: -webkit-box;
  font-size: 1.2rem;
  overflow: clip;
  text-overflow: ellipsis;
  -webkit-box-orient: block-axis;
  -webkit-line-clamp: 3;
  flex-grow: 1
}
.p-corporate-single {
  margin-block-end: clamp(8rem,5.029rem + 7.619vw,16rem);
  margin-block-start: 74px
}
.p-corporate-single__hero {
  inline-size: 100%;
  overflow: hidden;
  position: relative
}
.p-corporate-single__hero .l-breadcrumb__list > span:nth-child(n):not(:last-child) {
  color: var(--white)
}
.p-corporate-single__hero--no-image {
  background: var(--border-gray)
}
.p-corporate-single__hero--no-image .p-corporate-single__heroContent {
  background: 0 0
}
.p-corporate-single__heroImg {
  inset: 0;
  position: absolute;
  z-index: 1
}
.p-corporate-single__heroContent {
  align-items: center;
  background: rgba(0,0,0,.7);
  display: flex;
  inline-size: 100%;
  justify-content: center;
  padding-block: clamp(2.2rem,.046rem + 5.524vw,8rem) clamp(3.9rem,3.269rem + 1.619vw,5.6rem);
  position: relative;
  z-index: 2
}
.p-corporate-single__heroInner {
  display: flex;
  flex-direction: column;
  gap: clamp(7.4rem,1.123rem + 16.095vw,24.3rem)
}
.p-corporate-single__heroText {
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-corporate-single__heroTitle {
  font-size: clamp(1.8rem,1.577rem + .571vw,2.4rem);
  text-align: justify
}
.p-corporate-single__heroCompany {
  color: var(--border-gray);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: 1.45
}
.p-corporate-single__content {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-block-start: clamp(4.6rem,3.337rem + 3.238vw,8rem)
}
.p-corporate-list__contents {
  display: grid;
  gap: clamp(3.2rem,2.383rem + 2.095vw,5.4rem);
  grid-template-areas: "title" "slider" "btn";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto
}
.p-corporate-list__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
  grid-area: title;
  padding-block-end: 20px
}
.p-corporate-list__btn {
  display: grid;
  grid-area: btn;
  place-content: center
}
.p-corporate-list__lists {
  grid-area: slider
}
.p-corporate-list__swiper:not(.swiper-initialized) {
  padding: 0
}
.p-corporate-list__swiper:not(.swiper-initialized) .p-corporate-list__swiper-button-next,
.p-corporate-list__swiper:not(.swiper-initialized) .p-corporate-list__swiper-button-prev {
  display: none
}
.p-corporate-list__swiper:not(.swiper-initialized) .swiper-wrapper {
  display: grid;
  gap: 32px;
  grid-template-columns: repeat(1,1fr);
  place-items: center
}
.p-corporate-list__swiper:not(.swiper-initialized) .swiper-slide {
  max-inline-size: 480px
}
.p-corporate-list__swiper {
  overflow: visible;
  position: relative
}
.p-corporate-list__swiper-slide,
.p-corporate-list__swiper-wrapper {
  position: relative
}
.p-corporate-list__swiper-slide:not(:last-child) {
  border-block-end: 1px solid var(--border-light);
  padding-block-end: 32px
}
.swiper-button-next.p-corporate-list__swiper-button-next,
.swiper-button-prev.p-corporate-list__swiper-button-prev {
  display: none
}
.p-corporate-single__start .l-section-mb {
  margin-block: clamp(8rem,5.029rem + 7.619vw,16rem) clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-membership-benefits {
  background-color: var(--bg-purple);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.4rem,4.209rem + 5.619vw,12.3rem)
}
.p-membership-benefits__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(4.2rem,3.531rem + 1.714vw,6rem)
}
.p-membership-benefits__items {
  display: flex;
  flex-direction: column;
  gap: clamp(3.8rem,2.574rem + 3.143vw,7.1rem);
  max-inline-size: 928px
}
.p-membership-benefits__item {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-membership-benefits__body {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-membership-benefits__titleWrap {
  align-items: center;
  display: flex;
  gap: 16px
}
.p-membership-benefits__number {
  aspect-ratio: 1;
  background-color: var(--text-color);
  border-radius: calc(infinity * 1px);
  display: grid;
  flex-shrink: 0;
  inline-size: clamp(4.6rem,4.303rem + .762vw,5.4rem);
  place-content: center
}
.p-membership-benefits__number span {
  color: var(--white);
  font-family: var(--font-en);
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem);
  line-height: var(--line-height-1dot5)
}
.p-membership-benefits__wrap {
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-membership-benefits__wrap span {
  color: var(--light-gray);
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  line-height: var(--line-height-base)
}
.p-membership-benefits__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.p-membership-benefits__body {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-membership-benefits__imgWrap {
  display: flex;
  flex-direction: column;
  gap: 13px
}
.p-membership-benefits__img {
  aspect-ratio: 342/200;
  border-radius: 8px;
  flex-shrink: 0;
  inline-size: 100%;
  overflow: hidden
}
.p-membership-benefits__lists {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px
}
.p-membership-benefits__list {
  background: var(--white);
  border-radius: 8px;
  display: flex;
  flex: 1;
  flex-direction: column;
  font-size: 1.4rem;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem);
  padding: 20px 20px 20px 58px;
  position: relative
}
.p-membership-benefits__list::before {
  aspect-ratio: 1;
  background-image: url(../img/common/ico-line-check.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  inline-size: 24px;
  left: 19px;
  position: absolute;
  top: 21px
}
.p-membership-benefits__list p {
  color: var(--light-gray);
  display: block;
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  line-height: var(--line-height-1dot5)
}
.p-membership-member {
  margin-block: clamp(8.8rem,7.611rem + 3.048vw,12rem) clamp(8rem,6.514rem + 3.81vw,12rem)
}
.p-membership-cta {
  background-image: url(../img/common/start-bg.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 80px;
  padding-block: 120px;
  position: relative
}
.p-membership-cta__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-membership-cta__textWrap {
  align-items: center;
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-membership-cta__title {
  font-family: var(--font-en);
  font-size: 64px;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.p-membership-cta__text {
  font-size: 20px;
  line-height: var(--line-height-1dot5)
}
.p-membership-list__header {
  align-items: flex-end;
  display: flex;
  gap: 14px
}
.p-membership-list__title {
  font-size: 2rem;
  line-height: var(--line-height-1dot5)
}
.p-membership-list__date {
  color: var(--light-gray);
  font-size: 1.4rem
}
.p-membership-list__contents {
  background-color: var(--bg-gray);
  block-size: 392px;
  border-radius: 8px;
  margin-block-start: 24px;
  overflow-y: scroll;
  padding: 24px 32px 32px 22px
}
.p-membership-list__contents .simplebar-track.simplebar-vertical {
  background-color: var(--border-gray);
  inline-size: 7px!important
}
.p-membership-list__contents .simplebar-scrollbar {
  inline-size: 6px!important
}
.p-membership-list__contents .simplebar-scrollbar::before {
  background-color: var(--gray);
  block-size: auto;
  border-radius: calc(infinity * 1px);
  inline-size: 6px;
  left: 50%;
  translate: -50% 0
}
.p-membership-list__contents .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1
}
.p-membership-list__items {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(1,1fr)
}
.p-membership-list__item {
  border-block-end: 1px solid #e0e0e0;
  font-size: 1.4rem;
  gap: 40px;
  inline-size: 100%;
  line-height: var(--line-height-2dot1);
  min-inline-size: 286px;
  padding-block-end: 5px
}
.p-membership-list__item a {
  display: block;
  position: relative;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-membership-list__item a::after {
  content: "";
  position: absolute;
  right: 0;
  top: calc(50% - 3px);
  translate: 0 -50%;
  -webkit-mask-image: url(../img/common/ico-link.svg);
  mask-image: url(../img/common/ico-link.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 1;
  background: var(--text-color);
  inline-size: 13px;
  mask-size: contain
}
.p-membership-list__item a:focus-visible {
  opacity: .6
}
.p-donate-actions {
  background-color: var(--bg-light-cream);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(5.6rem,3.817rem + 4.571vw,10.4rem) clamp(5.6rem,3.223rem + 6.095vw,12rem)
}
.p-donate-actions__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-donate-actions__title span {
  display: block;
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-1dot5);
  margin-block-start: -2px
}
.p-donate-actions__lists {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center
}
.p-donate-actions__list {
  align-items: center;
  border-radius: calc(infinity * 1px) calc(infinity * 1px) 0 calc(infinity * 1px);
  color: var(--white);
  display: flex;
  font-size: 1.6rem;
  justify-content: center;
  line-height: var(--line-height-1dot5);
  padding: 8px 32px 10px
}
.p-donate-actions__list.--blue {
  background-color: var(--accent-color-blue)
}
.p-donate-actions__list.--green {
  background-color: var(--accent-color-green)
}
.p-donate-actions__list.--purple {
  background-color: var(--accent-color-purple)
}
.p-donate-actions__list.--yellow {
  background-color: var(--accent-color-yellow)
}
.p-donate-how__header {
  display: flex;
  flex-direction: column;
  gap: 35px
}
.p-donate-how__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-donate-how__contents .p-donate-how__items {
  margin-block-start: 0
}
.p-donate-how__contents .p-donate-how__textWrap {
  max-inline-size: 100%
}
.p-donate-how__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: var(--line-height-1dot5)
}
.p-donate-how__textWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-donate-how__btnWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-donate-how__btnText {
  color: var(--light-gray);
  font-size: 1.4rem;
  margin-block-start: 4px
}
.p-donate-how__items {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.954rem + 1.143vw,3.6rem);
  margin-block-start: clamp(3.2rem,1.417rem + 4.571vw,8rem)
}
.p-donate-how__item {
  align-items: stretch;
  block-size: 100%;
  display: flex;
  flex-direction: column
}
.p-donate-how__item:nth-child(2) .p-donate-how__cardBody {
  gap: 16px;
  padding: clamp(2.3rem,2.077rem + .571vw,2.9rem) clamp(2.3rem,1.669rem + 1.619vw,4rem)
}
.p-donate-how__cardHeader {
  background-color: var(--text-color);
  border-radius: 8px 8px 0 0;
  padding: 10px 20px
}
.p-donate-how__cardTitle {
  color: var(--white);
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-donate-how__cardBody {
  background: var(--bg-light-gray);
  border: 1px solid var(--border-light);
  border-radius: 0 0 8px 8px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem);
  padding: clamp(2.3rem,2.077rem + .571vw,2.9rem) clamp(1.5rem,.571rem + 2.381vw,4rem)
}
.p-donate-how__tags {
  display: flex;
  flex-wrap: wrap;
  row-gap: 9px;
  -moz-column-gap: 9px;
  column-gap: 9px
}
.p-donate-how__tag {
  background: var(--base-color);
  border: 1.5px solid var(--text-color);
  border-radius: calc(infinity * 1px);
  color: var(--text-color);
  display: block grid;
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  padding: 0 16px 1px 19px;
  place-content: center;
  transition: background-color var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.p-donate-how__tag:focus-visible {
  background: var(--text-color);
  color: var(--white)
}
.p-donate-how__info {
  color: var(--light-gray);
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  margin-block-start: 8px
}
.p-donate-how__cardText {
  border-block-end: 1px solid var(--border-light);
  color: var(--gray);
  font-size: 1.4rem;
  padding-block-end: 16px
}
.p-donate-how__cardInfo {
  font-size: 1.4rem;
  white-space: pre-line
}
.p-ethicalSupp-benefits {
  background-color: var(--bg-light-cream);
  border-radius: 80px;
  padding-block: clamp(5.6rem,3.817rem + 4.571vw,10.4rem) clamp(5.6rem,2.48rem + 8vw,14rem)
}
.p-ethicalSupp-benefits__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.703rem + .762vw,4.8rem)
}
.p-ethicalSupp-benefits__title {
  font-size: 3.2rem;
  line-height: 1
}
.p-ethicalSupp-benefits__title .is-big,
.p-ethicalSupp-benefits__title .is-small {
  color: var(--accent-color-blue);
  font-family: var(--font-en);
  line-height: 1
}
.p-ethicalSupp-benefits__title .is-big {
  font-size: 4.8rem
}
.p-ethicalSupp-benefits__title .is-small {
  font-size: 3.2rem
}
.p-ethicalSupp-benefits__items {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  inline-size: 100%
}
.p-ethicalSupp-benefits__item {
  background-color: var(--circle-blue);
  border-radius: 16px;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 32px 24px 40px 24px
}
.p-ethicalSupp-benefits__text {
  font-size: 1.4rem
}
.p-findOut-header__headWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-findOut-header__titleWrap {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: 8px
}
.p-findOut-header__title--en {
  color: var(--border-gray);
  font-family: var(--font-en);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-1dot5);
  text-transform: capitalize
}
.p-findOut-header__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.p-findOut-header__subTitle {
  flex-shrink: 0;
  font-size: clamp(3.2rem,2.606rem + 1.524vw,4.8rem);
  line-height: var(--line-height-1dot5)
}
.p-findOut-header__subTitle span {
  color: var(--accent-color-blue);
  font-size: clamp(3.2rem,2.606rem + 1.524vw,4.8rem);
  line-height: var(--line-height-1dot5)
}
.p-findOut-header__text {
  flex: 1;
  inline-size: 100%
}
.p-findOut-illust {
  padding-block: clamp(6.4rem,4.32rem + 5.333vw,12rem) clamp(6.4rem,4.023rem + 6.095vw,12.8rem)
}
.p-findOut-illust__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.p-findOut-illust__img {
  display: grid;
  gap: clamp(2rem,.96rem + 2.667vw,4.8rem);
  grid-template-columns: repeat(5,1fr)
}
.p-findOut-illust__img img {
  aspect-ratio: 1;
  inline-size: clamp(4.9rem,4.046rem + 2.19vw,7.2rem)
}
.p-findOut-illust__img .row-1,
.p-findOut-illust__img .row-4 {
  display: contents
}
.p-findOut-illust__img .row-2,
.p-findOut-illust__img .row-3 {
  display: contents
}
.p-findOut-tips {
  background-color: var(--bg-cream);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  margin-block-end: clamp(6.4rem,2.834rem + 9.143vw,16rem);
  padding-block: 200px clamp(8rem,6.217rem + 4.571vw,12.8rem);
  position: relative
}
.p-findOut-tips__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem);
  justify-content: center
}
.p-findOut-tips__video {
  aspect-ratio: 798/451;
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 798px;
  position: relative
}
.p-findOut-tips__video--container {
  block-size: 100%;
  inline-size: 100%;
  overflow: hidden;
  position: relative
}
.p-findOut-tips__video--iframe {
  block-size: 100%;
  inline-size: 100%;
  inset: 0;
  position: absolute
}
.p-findOut-tips__tagsWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 34px;
  translate: -50%
}
.p-findOut-tips__tags {
  display: flex;
  gap: 12px;
  inline-size: 100%;
  justify-content: space-between;
  margin-inline: auto
}
.p-findOut-tips__tags.--01 {
  margin-inline-start: 35px;
  max-inline-size: 74.359vw
}
.p-findOut-tips__tags.--02 {
  margin-block-start: -18px;
  max-inline-size: 88.205vw
}
.p-findOut-tips__tags.--02 .p-findOut-tips__tag:nth-child(2) {
  margin-block-start: 32px
}
.p-findOut-tips__tag {
  background-color: rgba(255,255,255,.95);
  block-size: -moz-fit-content;
  block-size: fit-content;
  display: inline-block;
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: var(--line-height-1dot5);
  padding: 10px 24px;
  text-align: center;
  white-space: nowrap
}
.p-findOut-tips__tag.--left {
  border-radius: 80px 80px 0 80px
}
.p-findOut-tips__tag.--right {
  border-radius: 80px 80px 80px 0;
  margin-block-start: 28px
}
.p-government {
  margin-block: clamp(4rem,-.457rem + 11.429vw,16rem) clamp(10.3rem,9.669rem + 1.619vw,12rem)
}
.p-government__wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-government__items {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.183rem + 2.095vw,6.2rem)
}
.p-government__item {
  display: flex;
  flex-direction: column;
  gap: clamp(2.6rem,2.08rem + 1.333vw,4rem)
}
.p-government__item:not(:first-child) {
  border-block-start: 1px solid var(--border-light);
  padding-block-start: clamp(4rem,3.109rem + 2.286vw,6.4rem)
}
.p-government__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(2rem,1.257rem + 1.905vw,4rem)
}
.p-government__textWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem)
}
.p-government__text {
  flex: 1
}
.p-government__img {
  aspect-ratio: 342/234;
  border-radius: 8px;
  flex-shrink: 0;
  inline-size: 100%;
  overflow: hidden
}
.p-government__linkWrap {
  background-color: var(--bg-gray);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px 16px 24px
}
.p-government__linkTitle {
  color: var(--light-gray);
  font-size: 1.4rem;
  line-height: var(--line-height-2dot1)
}
.p-government__linkList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}
.p-greeting {
  margin-block-start: clamp(7rem,5.366rem + 4.19vw,11.4rem);
  padding-block-end: clamp(6.4rem,4.32rem + 5.333vw,12rem);
  position: relative
}
.p-greeting.--conSemi {
  margin-block-start: clamp(6.2rem,4.046rem + 5.524vw,12rem)
}
.p-greeting::before {
  background: var(--bg-light-blue);
  block-size: 98.974vw;
  content: "";
  inline-size: 100%;
  left: 50%;
  position: absolute;
  top: 28.205vw;
  translate: -50%;
  z-index: 1
}
.p-greeting__contents {
  display: grid;
  grid-template-areas: "title img" "text text";
  grid-template-columns: 1fr auto;
  grid-template-rows: auto auto;
  position: relative;
  row-gap: 32px;
  -moz-column-gap: clamp(2rem,1.257rem + 1.905vw,4rem);
  align-items: start;
  column-gap: clamp(2rem,1.257rem + 1.905vw,4rem);
  justify-content: space-between;
  z-index: 2
}
.p-greeting__titleWrap {
  grid-area: title
}
.p-greeting__textWrap {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: clamp(4.3rem,3.817rem + 1.238vw,5.6rem);
  grid-area: text;
  inline-size: 100%
}
.p-greeting__profile {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-greeting__nameWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-greeting__degree {
  font-size: 1.6rem;
  line-height: 1
}
.p-greeting__name {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1
}
.p-greeting__link {
  align-items: center;
  background: var(--accent-color-blue);
  border: 1px solid var(--accent-color-blue);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  display: inline-flex;
  font-size: 1.6rem;
  gap: 16px;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: var(--line-height-2dot1);
  padding: 2px 16px 4px 24px;
  transition: background-color var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.p-greeting__link:focus-visible {
  background: var(--white);
  color: var(--accent-color-blue)
}
.p-greeting__link:focus-visible .p-greeting__link--icon {
  color: var(--accent-color-blue)
}
.p-greeting__link__arrowWrap {
  align-items: center;
  aspect-ratio: 13/11;
  display: flex;
  inline-size: 13px;
  justify-content: center;
  justify-self: end;
  overflow: hidden;
  position: relative;
  transition: border-color var(--hover-transition) ease-in-out
}
.p-greeting__link__arrow {
  block-size: 100%;
  color: var(--white);
  display: block;
  inline-size: 100%;
  opacity: 1;
  position: absolute;
  transform: translateX(0);
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
}
.p-greeting__link__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.p-greeting__link__arrow path {
  fill: currentColor
}
.p-greeting__img {
  aspect-ratio: 265/385;
  border-radius: calc(infinity * 1px);
  grid-area: img;
  inline-size: 67.949vw;
  overflow: hidden
}
.p-history-header {
  background: var(--base-color);
  border-radius: 0 0 clamp(4rem,2.514rem + 3.81vw,8rem) clamp(4rem,2.514rem + 3.81vw,8rem);
  position: relative;
  z-index: 2
}
.p-history-header__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,1.417rem + 4.571vw,8rem)
}
.p-history-header__title {
  color: var(--text-color);
  font-size: 40px;
  line-height: var(--line-height-1dot5)
}
.p-history-timeline {
  background: var(--base-color);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem) clamp(4rem,2.514rem + 3.81vw,8rem) 0 0;
  margin-block-start: calc(-1 * clamp(9.4rem,7.617rem + 4.571vw,14.2rem));
  padding-block-start: clamp(6.4rem,4.32rem + 5.333vw,12rem);
  position: relative;
  z-index: 2
}
.p-history-timeline__inner {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,1.417rem + 4.571vw,8rem)
}
.p-history-timeline__wrapper {
  display: flex;
  flex-direction: column;
  gap: 32px;
  position: relative;
  z-index: 2
}
.p-history-timeline__contents {
  max-inline-size: 928px;
  position: relative
}
.p-history-timeline__line {
  background: var(--border-light);
  block-size: 100%;
  inline-size: 1px;
  left: clamp(.4rem,.251rem + .381vw,.8rem);
  position: absolute;
  top: 30px;
  z-index: 1
}
.p-history-timeline__items {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,.411rem + 3.048vw,4.8rem);
  position: relative;
  position: relative;
  z-index: 2
}
.p-history-timeline__item {
  align-items: flex-start;
  display: grid;
  gap: clamp(1.6rem,-.963rem + 6.571vw,8.5rem);
  grid-template-columns: clamp(6.2rem,4.566rem + 4.19vw,10.6rem) 1fr;
  justify-content: space-between;
  position: relative
}
.p-history-timeline__year {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  gap: clamp(.8rem,.354rem + 1.143vw,2rem);
  white-space: nowrap
}
.p-history-timeline__circle {
  aspect-ratio: 1;
  background: var(--text-color);
  border-radius: calc(infinity * 1px);
  flex-shrink: 0;
  inline-size: clamp(1rem,.777rem + .571vw,1.6rem)
}
.p-history-timeline__year--text {
  font-family: var(--font-en);
  font-size: clamp(1.8rem,1.28rem + 1.333vw,3.2rem)
}
.p-history-timeline__content {
  display: flex;
  flex: 0 1 65.71%;
  flex-direction: column;
  gap: 16px;
  inline-size: 100%
}
.p-history-timeline__card {
  background: var(--bg-light-gray);
  border-radius: 8px;
  padding: 16px 16px 18px 16px;
  position: relative;
  z-index: 2
}
.p-history-timeline__date {
  color: var(--light-gray);
  font-family: var(--font-en);
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem)
}
.p-history-timeline__text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem)
}
.p-history-timeline__text.--book {
  max-inline-size: 39.487vw
}
.p-history-timeline__img {
  aspect-ratio: 233/150;
  border-radius: 8px;
  inline-size: clamp(23.3rem,17.431rem + 15.048vw,39.1rem);
  margin-block-start: 16px;
  overflow: hidden;
  position: relative
}
.p-history-timeline__bookImg {
  aspect-ratio: 93/133;
  inline-size: clamp(6.7rem,5.734rem + 2.476vw,9.3rem);
  position: absolute;
  right: clamp(1.6rem,1.08rem + 1.333vw,3rem);
  rotate: 7deg;
  top: calc(50% - 3px);
  translate: 0 -50%
}
.p-history-footer {
  padding-block: clamp(9.6rem,7.817rem + 4.571vw,14.4rem) clamp(6.4rem,2.834rem + 9.143vw,16rem);
  position: relative;
  z-index: 1
}
.p-history-footer::after {
  aspect-ratio: 1;
  background: var(--circle-yellow);
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(41.3rem,34.354rem + 17.81vw,60rem);
  left: -207px;
  opacity: .8;
  position: absolute;
  top: -155px;
  z-index: -1
}
.p-history-footer__contents {
  position: relative;
  z-index: 1
}
.p-history-footer__text {
  flex: 1
}
.p-index-fv {
  margin-block-start: 74px;
  position: relative
}
.p-index-fv::after {
  aspect-ratio: 1;
  background: var(--circle-yellow);
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(36rem,27.086rem + 22.857vw,60rem);
  position: absolute;
  right: -140px;
  top: 147px;
  z-index: -1
}
.p-index-fv__inner {
  display: flex;
  flex-direction: column;
  gap: 70px;
  margin-block-start: clamp(14.6rem,11.703rem + 7.429vw,22.4rem)
}
.p-index-fv__contents {
  display: flex;
  flex-direction: column;
  gap: 40px;
  position: relative;
  z-index: 2
}
.p-index-fv__title {
  font-size: clamp(4rem,3.406rem + 1.524vw,5.6rem);
  line-height: var(--line-height-1dot5)
}
.p-index-fv__subTitle {
  font-family: var(--font-en);
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  letter-spacing: .055em;
  line-height: var(--line-height-1dot5);
  white-space: nowrap
}
.p-index-fv__imgContent {
  block-size: clamp(36.3rem,25.863rem + 26.762vw,64.4rem);
  inline-size: 100%;
  inline-size: 100vw;
  margin-inline: calc(50% - 50vw);
  overflow: hidden;
  position: relative
}
.p-index-fv__imgWrap {
  block-size: 100%;
  inline-size: 100%;
  left: 50%;
  position: absolute;
  top: clamp(11.6rem,7.217rem + 11.238vw,23.4rem);
  translate: -50% 0
}
.p-index-fv__img {
  aspect-ratio: 1;
  border-radius: 8px;
  inline-size: clamp(19.5rem,13.817rem + 14.571vw,34.8rem);
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  transform: translate3d(0,0,0);
  translate: -50% -50%
}
.p-index-topics {
  margin-block-start: 29px
}
.p-index-topics__link {
  border: 2px solid var(--border-light);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  margin-inline: auto;
  max-inline-size: 560px;
  overflow: hidden;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-index-topics__link:focus-visible {
  opacity: .6
}
.p-index-topics__link:focus-visible .p-index-topics__img img {
  scale: 1.02
}
.p-index-topics__link:focus-visible .c-btn span::after {
  transform: scale(1,1);
  transform-origin: left top
}
.p-index-topics__link:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.p-index-topics__link:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.p-index-topics__img {
  aspect-ratio: 342/241;
  border-radius: 8px 8px 0 0;
  flex-shrink: 0;
  inline-size: 100%;
  overflow: hidden
}
.p-index-topics__img img {
  transition: scale var(--hover-transition) ease-in-out
}
.p-index-topics__contents {
  background: var(--base-color);
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 32px;
  justify-content: space-between;
  padding: 24px 24px 32px
}
.p-index-topics__header {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-index-topics__label {
  align-items: center;
  background-color: var(--base-color);
  border: 1px solid var(--border-light);
  border-radius: calc(infinity * 1px);
  display: inline-flex;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  justify-content: center;
  padding: 8px 14px
}
.p-index-topics__label span {
  font-family: var(--font-en);
  font-size: 1.2rem;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: uppercase
}
.p-index-topics__title {
  color: var(--text-color);
  display: -webkit-box;
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3
}
.p-index-topics__text {
  display: -webkit-box;
  font-size: 1.4rem;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3
}
.p-index-topics__btn {
  align-items: flex-end;
  display: flex;
  margin-block-start: auto
}
.p-index-about {
  padding-block: clamp(10.2rem,9.383rem + 2.095vw,12.4rem) clamp(10.2rem,9.68rem + 1.333vw,11.6rem);
  position: relative
}
.p-index-about::after {
  aspect-ratio: 1;
  background: var(--circle-yellow);
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(32.6rem,22.423rem + 26.095vw,60rem);
  position: absolute;
  right: -160px;
  top: 14px;
  z-index: -1
}
.p-index-about__contents {
  display: flex;
  flex-direction: column;
  gap: 76px;
  position: relative;
  z-index: 2
}
.p-index-about__textWrap {
  inline-size: 100%
}
.p-index-about__title {
  font-size: clamp(3.6rem,3.154rem + 1.143vw,4.8rem);
  line-height: var(--line-height-1dot5)
}
.p-index-about__imgWrap {
  block-size: clamp(38rem,26.857rem + 28.571vw,68rem);
  display: block;
  flex-shrink: 0;
  inline-size: clamp(30.8rem,21.44rem + 24vw,56rem);
  margin-inline: auto;
  position: relative
}
.p-index-about__img {
  aspect-ratio: 219/283;
  border-radius: 4px;
  inline-size: clamp(21.9rem,15.66rem + 16vw,38.7rem);
  overflow: hidden;
  position: absolute
}
.p-index-about__img:nth-child(1) {
  left: clamp(5.6rem,4.894rem + 1.81vw,7.5rem);
  top: 0;
  z-index: 3
}
.p-index-about__img:nth-child(2) {
  left: 0;
  rotate: -6deg;
  top: clamp(3.2rem,2.309rem + 2.286vw,5.6rem);
  z-index: 2
}
.p-index-about__img:nth-child(3) {
  right: 0;
  rotate: 6deg;
  top: clamp(7.3rem,5.257rem + 5.238vw,12.8rem);
  z-index: 1
}
.p-index-directory .p-parts-directory {
  padding-block: clamp(13.1rem,9.051rem + 10.381vw,24rem) 302px
}
.p-index-seminar .p-parts-seminar {
  margin-block: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-index-government .c-section-title {
  font-size: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-index-news {
  background: var(--base-color);
  border-radius: clamp(6rem,5.257rem + 1.905vw,8rem) clamp(6rem,5.257rem + 1.905vw,8rem) 0 0;
  margin-block-start: calc(-1 * clamp(6.4rem,1.423rem + 12.762vw,19.8rem));
  padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem) 24px;
  position: relative;
  z-index: 2
}
.p-index-news__contents {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-index-news__menuWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.p-index-news__header {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-index-news__items {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr
}
.p-index-news .p-tabPost__tabList {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  inline-size: 100%
}
.p-index-news .p-tabPost__tab {
  background: 0 0;
  border: 1px solid var(--border-gray);
  border-radius: calc(infinity * 1px);
  color: var(--border-gray);
  display: block grid;
  font-size: 1.2rem;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  line-height: normal;
  padding: 4px 20px 5px 20px;
  place-content: center;
  transition: color var(--hover-transition) ease-in-out 0s,background-color var(--hover-transition) ease-in-out 0s,border-color var(--hover-transition) ease-in-out 0s
}
.p-index-news .p-tabPost__tab[role=tab][aria-selected=true] {
  background: var(--accent-color-blue);
  border-color: var(--accent-color-blue);
  color: var(--white)
}
.p-index-news .p-tabPost__tab:focus-visible {
  background: var(--border-gray);
  color: var(--white)
}
.p-index-news .p-tabPost__tabpanelWrapper {
  margin-block-start: 40px
}
.p-index-news .p-tabPost__cards {
  display: grid;
  gap: 30px;
  grid-template-columns: 1fr;
  width: 100%
}
.p-index-news .p-tabPost__noPost {
  display: grid;
  font-size: clamp(1.6rem,1.526rem + .19vw,1.8rem);
  place-content: center
}
.hidden-tab {
  display: none!important
}
.p-tabPost__tabpanel {
  display: block
}
.p-tabPost__tabpanel:target {
  display: revert
}
.p-loop {
  --gap: 1.6rem;
  --duration: 40s;
  --item-w: 13rem;
  --count: 8;
  inline-size: 100%;
  overflow: hidden
}
.p-loop.--illust {
  inline-size: 100vw;
  margin-inline: calc(50% - 50vw);
  --item-w: 49px;
  --gap: 2rem;
  --duration: 100s;
  --count: 30
}
.p-loop.--seminar {
  --item-w: 140px;
  --duration: 40s;
  --count: 6
}
.p-loop__track {
  display: grid;
  grid-auto-columns: var(--item-w);
  grid-auto-flow: column;
  -moz-column-gap: var(--gap);
  align-items: center;
  column-gap: var(--gap);
  --loop-to: calc(var(--item-w) * var(--count) + var(--gap) * (var(--count) - 1));
  animation: loop-rl var(--duration) linear infinite;
  transform: translateX(0);
  will-change: transform
}
.p-loop__track > img {
  block-size: var(--item-w);
  inline-size: auto;
  -o-object-fit: contain;
  flex: 0 0 auto;
  object-fit: contain
}
.p-loop__track[data-direction=lr] {
  animation-direction: reverse
}
.p-loop__track[data-direction=rtl] {
  animation-name: loop-rtl
}
.p-news__wrap {
  display: flex;
  flex-direction: column;
  gap: clamp(5.6rem,2.257rem + 8.571vw,14.6rem)
}
.p-news__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.6rem,1.966rem + 4.19vw,8rem)
}
.p-news__menus {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  overflow: hidden
}
.p-news__menu--link {
  background: 0 0;
  border: 1px solid var(--border-gray);
  border-radius: calc(infinity * 1px);
  color: var(--border-gray);
  display: grid;
  font-size: clamp(1.2rem,1.126rem + .19vw,1.4rem);
  line-height: normal;
  padding: 4px 20px 5px 20px;
  place-content: center;
  transition: color var(--hover-transition) ease-in-out 0s,background-color var(--hover-transition) ease-in-out 0s
}
.p-news__menu--link:not(.is-current):focus-visible {
  background: var(--border-gray);
  color: var(--white)
}
.p-news__menu--link.is-current {
  background: var(--accent-color-blue);
  border-color: var(--accent-color-blue);
  color: var(--white)
}
.p-news__items {
  display: grid;
  gap: 24px
}
.p-pull-news.--cream {
  background: var(--bg-cream);
  border-radius: 40px;
  padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem)
}
.p-pull-news.--esd {
  margin-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem) clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-pull-news.--news {
  margin-block-start: clamp(8rem,4.434rem + 9.143vw,17.6rem)
}
.p-pull-news__header {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-pull-news__titleWrap {
  align-items: baseline;
  display: flex;
  gap: 19px
}
.p-pull-news__items {
  display: grid;
  gap: 24px;
  margin-block-start: 40px
}
.p-pull-news__items.--news {
  margin-block-start: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.p-news-single__headerWrap {
  margin-block-start: 74px;
  padding-block-start: clamp(2.2rem,.046rem + 5.524vw,8rem);
  position: relative
}
.p-news-single__headerWrap::before {
  background: var(--border-light);
  block-size: 1px;
  bottom: 0;
  content: "";
  inline-size: var(--before-inline-size,0);
  left: 0;
  opacity: 1;
  position: absolute
}
.p-news-single__headerWrap::after {
  aspect-ratio: 1;
  background: var(--circle-blue);
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(20.5rem,5.829rem + 37.619vw,60rem);
  opacity: var(--after-opacity,0);
  position: absolute;
  right: -76px;
  top: -11px;
  z-index: -1
}
.p-news-single__inner {
  display: flex;
  flex-direction: column;
  gap: clamp(4.8rem,3.611rem + 3.048vw,8rem)
}
.p-news-single__header {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-news-single__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-news-single__title {
  font-size: clamp(1.8rem,1.577rem + .571vw,2.4rem);
  order: 2
}
.p-news-single__publish {
  order: 1
}
.p-news-single__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 8px
}
.p-news-single__category {
  background: var(--base-color);
  border: 1px solid var(--border-light);
  border-radius: calc(infinity * 1px);
  display: inline-block;
  font-size: clamp(1rem,.851rem + .381vw,1.4rem);
  font-style: normal;
  font-weight: 500;
  line-height: var(--line-height-2dot1);
  padding: 0 12px 2px 12px;
  transition: color var(--hover-transition) ease-in-out 0s,background-color var(--hover-transition) ease-in-out 0s,border-color var(--hover-transition) ease-in-out 0s;
  white-space: nowrap
}
.p-news-single__category:focus-visible {
  background: var(--text-color);
  border-color: var(--text-color);
  color: var(--white)
}
.p-news-single__body {
  margin-block-start: clamp(5.2rem,4.754rem + 1.143vw,6.4rem)
}
.p-news-single__content {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-numCard {
  background-color: var(--bg-light-blue);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(5.6rem,3.223rem + 6.095vw,12rem)
}
.p-numCard.--esd {
  background: var(--bg-light-cream);
  padding-block: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-numCard.--esd .p-numCard__items {
  gap: 48px
}
.p-numCard.--esd .p-numCard__number {
  background: var(--bg-light-cream);
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  inline-size: clamp(8.8rem,8.354rem + 1.143vw,10rem)
}
.p-numCard.--esd .p-numCard__img {
  aspect-ratio: 342/260
}
.p-numCard__inner {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-numCard__items {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  row-gap: clamp(4rem,2.737rem + 3.238vw,7.4rem);
  -moz-column-gap: clamp(2.4rem,.023rem + 6.095vw,8.8rem);
  column-gap: clamp(2.4rem,.023rem + 6.095vw,8.8rem);
  counter-reset: point-counter
}
.p-numCard__item {
  align-items: center;
  counter-increment: point-counter;
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-numCard__imgWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  inline-size: 100%
}
.p-numCard__img {
  aspect-ratio: 342/210;
  border-radius: 8px;
  inline-size: 100%;
  overflow: hidden
}
.p-numCard__number {
  aspect-ratio: 1;
  background-color: var(--bg-light-blue);
  border-radius: calc(infinity * 1px);
  display: grid;
  font-family: var(--font-en);
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  inline-size: clamp(8rem,7.257rem + 1.905vw,10rem);
  line-height: var(--line-height-1dot5);
  margin-block-start: -32px;
  place-content: center;
  position: relative;
  z-index: 1
}
.p-numCard__number::before {
  content: counter(point-counter,decimal-leading-zero)
}
.p-numCard__content {
  display: grid;
  gap: 16px;
  margin-block-start: -22px;
  place-content: center;
  position: relative;
  z-index: 1
}
.p-numCard__heading {
  font-size: 2rem;
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-numCard__text {
  font-size: 1.4rem
}
.p-numCard__tateWrap {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-numCard__tate--en {
  font-family: var(--font-en);
  font-size: 1.6rem;
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.p-numCard__tate {
  font-size: 3.2rem;
  line-height: 1.2
}
.p-parts-conSemi {
  background-color: var(--bg-gray);
  border-radius: 80px 0 0 80px;
  margin-inline-start: 6.154vw;
  position: relative;
  z-index: 3
}
.p-parts-conSemi::after,
.p-parts-conSemi::before {
  content: "";
  display: block;
  position: absolute
}
.p-parts-conSemi::before {
  aspect-ratio: 1;
  background: url(../img/illust/gif/heart_2.gif) no-repeat center center/contain;
  inline-size: clamp(6.5rem,5.571rem + 2.381vw,9rem);
  right: 90px;
  top: -30px
}
.p-parts-conSemi::after {
  aspect-ratio: 1;
  background: url(../img/illust/gif/plant.gif) no-repeat center center/contain;
  inline-size: clamp(5.8rem,5.131rem + 1.714vw,7.6rem);
  right: 30px;
  top: 17px
}
.p-parts-conSemi__inner {
  padding-block: clamp(5.6rem,3.817rem + 4.571vw,10.4rem) clamp(5.6rem,2.926rem + 6.857vw,12.8rem);
  padding-inline-start: 32px
}
.p-parts-conSemi__contents {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem);
  position: relative;
  z-index: 2
}
.p-parts-conSemi__wrap {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.p-parts-conSemi__header {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-parts-conSemi__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 13px
}
.p-parts-conSemi__title {
  line-height: 1.2
}
.p-parts-conSemi__tags {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 7px
}
.p-parts-conSemi__tag {
  align-items: center;
  background-color: var(--base-color);
  border: 1px solid var(--border-gray);
  border-radius: 4px;
  display: inline-flex;
  font-size: 1.2rem;
  justify-content: center;
  padding: 2px 12px 3px;
  white-space: nowrap
}
.p-parts-conSemi__stats {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.88rem + 1.333vw,3.8rem)
}
.p-parts-conSemi__stats.--text {
  flex-direction: row;
  gap: 34px
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--label {
  background: var(--text-color);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  padding: 4px 20px 6px 20px
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--number {
  gap: 6px
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--unit,
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--value {
  color: var(--text-color)
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--value {
  font-size: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--value .is-comma {
  margin-inline: -.02em
}
.p-parts-conSemi__stats.--text .p-parts-conSemi__stat--unit {
  font-size: clamp(1.8rem,1.577rem + .571vw,2.4rem)
}
.p-parts-conSemi__stat {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-parts-conSemi__stat--line {
  display: contents
}
.p-parts-conSemi__stat--label {
  align-items: center;
  background-color: var(--accent-color-blue);
  border-radius: 15px 15px 15px 0;
  color: var(--white);
  display: inline-flex;
  font-size: 1.6rem;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  justify-content: center;
  line-height: 1.45;
  padding: 4px 24px;
  white-space: nowrap
}
.p-parts-conSemi__stat--number {
  align-items: flex-end;
  display: flex;
  gap: 8px
}
.p-parts-conSemi__stat--value {
  color: var(--accent-color-blue);
  font-family: var(--font-en);
  font-size: clamp(5.6rem,5.303rem + .762vw,6.4rem);
  letter-spacing: -.05em;
  line-height: 1;
  white-space: nowrap
}
.p-parts-conSemi__stat--value .is-comma {
  display: inline-block;
  margin-inline: -.16em -.02em
}
.p-parts-conSemi__stat--unit {
  color: var(--accent-color-blue);
  font-size: 2.4rem;
  line-height: 1;
  padding-block-end: 8px;
  white-space: nowrap
}
.p-parts-conSemi__enText {
  bottom: 6px;
  color: var(--white);
  font-family: var(--font-en);
  font-size: 64px;
  letter-spacing: .02em;
  line-height: .9;
  position: absolute;
  right: 0;
  text-align: right;
  z-index: 1
}
.p-parts-contact {
  background-image: url(../img/common/contact-bg-sp.jpg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  margin-block-end: -80px;
  margin-block-start: clamp(4rem,1.623rem + 6.095vw,10.4rem);
  margin-inline: auto;
  padding-inline: 6.154vw;
  position: relative
}
.p-parts-contact__container {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-inline: auto;
  max-inline-size: 1040px;
  padding-block: clamp(7.2rem,5.417rem + 4.571vw,12rem);
  position: relative;
  z-index: 2
}
.p-parts-contact__content {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-parts-contact__titleWrap {
  color: var(--white);
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-parts-contact__title--en {
  font-family: var(--font-en);
  font-size: clamp(4.8rem,4.206rem + 1.524vw,6.4rem);
  letter-spacing: .05em;
  line-height: 1;
  text-transform: capitalize
}
.p-parts-contact__title {
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem);
  line-height: var(--line-height-1dot5)
}
.p-parts-contact__text {
  color: var(--white);
  font-size: 1.6rem
}
.p-parts-contact__btnWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.006rem + 1.524vw,3.2rem);
  inline-size: 100%;
  max-inline-size: 442px
}
.p-parts-directory {
  margin-block-start: calc(clamp(4rem,2.514rem + 3.81vw,8rem) * -1);
  overflow: hidden;
  padding-block: clamp(12rem,7.543rem + 11.429vw,24rem) 302px;
  perspective: 500px;
  position: relative
}
.p-parts-directory__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.271rem + 2.381vw,5.7rem);
  position: relative;
  z-index: 3
}
.p-directory__container {
  bottom: 0;
  display: block;
  overflow: hidden;
  position: absolute;
  right: 0;
  z-index: 1
}
.p-directory__gradient {
  display: block;
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 2
}
.p-directory__gradient::after,
.p-directory__gradient::before {
  content: "";
  inline-size: 100%;
  left: 50%;
  position: absolute;
  translate: -50%;
  z-index: 1
}
.p-directory__gradient::before {
  background: linear-gradient(180deg,#fff 35.58%,rgba(255,255,255,.7) 73.08%,rgba(255,255,255,0) 100%);
  block-size: calc(271px + clamp(4rem,2.514rem + 3.81vw,8rem));
  top: -1px
}
.p-directory__gradient::after {
  background: linear-gradient(180deg,rgba(255,255,255,.95) 10%,rgba(255,255,255,.6) 60%,rgba(255,255,255,0) 100%);
  block-size: 92px;
  bottom: -1px;
  rotate: 180deg
}
.p-directory__sliderRotate {
  block-size: -moz-fit-content;
  block-size: fit-content;
  display: block;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin-inline-start: 106px;
  rotate: 10deg;
  transform-origin: center
}
.is-safari .p-directory__container {
  top: 353px
}
.is-safari .p-directory__sliderRotate {
  margin-inline-end: 150px;
  margin-inline-start: revert
}
.is-safari .p-conSemi-directory .p-directory__container {
  top: 253px
}
.p-directory__sliderWrap {
  aspect-ratio: 390/679;
  display: flex;
  gap: 10px;
  inline-size: 100%;
  justify-content: center;
  overflow: visible;
  position: relative
}
.p-directory__sliderWrap .p-directory__infinity-carousel {
  --row: 133px;
  --gap: 10px;
  --count: 7;
  aspect-ratio: 133/271;
  inline-size: 133px
}
.p-directory__sliderWrap .p-directory__infinity-carousel[data-count="7"] {
  --count: 7
}
.p-directory__sliderWrap .p-directory__infinity-carousel[data-count="8"] {
  --count: 8
}
.p-directory__sliderWrap .p-directory__infinity-carousel .p-directory__scroller {
  animation: dir-scroll linear infinite;
  display: grid;
  grid-auto-rows: var(--row);
  row-gap: var(--gap);
  will-change: transform
}
.p-directory__sliderWrap .p-directory__infinity-carousel > img {
  aspect-ratio: 1;
  block-size: 100%;
  display: block;
  inline-size: 100%;
  -o-object-fit: cover;
  border-radius: 8px;
  object-fit: cover
}
.p-directory__sliderWrap .p-directory__infinity-carousel[data-direction=bt] .p-directory__scroller {
  animation-direction: normal;
  animation-duration: 42s
}
.p-directory__sliderWrap .p-directory__infinity-carousel[data-direction=tb] .p-directory__scroller {
  animation-direction: reverse;
  animation-duration: 42s
}
.p-parts-government {
  background-color: var(--bg-cream);
  border-radius: clamp(6rem,5.257rem + 1.905vw,8rem);
  padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem);
  position: relative;
  z-index: 2
}
.p-parts-government__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(4rem,3.406rem + 1.524vw,5.6rem)
}
.p-parts-government__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(3.3rem,2.446rem + 2.19vw,5.6rem);
  inline-size: 100%
}
.p-parts-government__textWrap {
  display: flex;
  flex: 0 1 66.07%;
  flex-direction: column;
  gap: 32px
}
.p-parts-government__btn {
  flex-shrink: 0
}
.p-parts-government__items {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  justify-content: center;
  row-gap: 6px
}
.p-parts-government__item {
  align-items: center;
  display: flex;
  flex-direction: column
}
.p-parts-government__item:not(:first-child) {
  margin-inline-start: -8px
}
.p-parts-government__img {
  aspect-ratio: 1;
  inline-size: clamp(11.9rem,8.891rem + 7.714vw,20rem);
  position: relative;
  z-index: 1
}
.p-parts-government__name {
  background: var(--accent-color-blue);
  border: 1px solid var(--accent-color-blue);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: 1;
  margin-top: -20px;
  padding: 6px 18px 8px 18px;
  position: relative;
  white-space: nowrap;
  z-index: 2
}
.p-mail {
  background: var(--accent-color-blue);
  border-radius: 80px 0 0 80px;
  margin-block-start: clamp(4.2rem,1.897rem + 5.905vw,10.4rem);
  margin-inline-start: 4.615vw;
  padding-block: clamp(5.6rem,3.817rem + 4.571vw,10.4rem);
  padding-inline: 8.205vw 6.154vw;
  position: relative
}
.p-mail::after,
.p-mail::before {
  content: "";
  position: absolute
}
.p-mail::before {
  aspect-ratio: 61/60;
  background: url(../img/illust/gif/sun.gif) no-repeat center center/contain;
  inline-size: clamp(4.8rem,4.317rem + 1.238vw,6.1rem);
  right: 82px;
  top: -19px
}
.p-mail::after {
  aspect-ratio: 75/70;
  background: url(../img/illust/gif/bird.gif) no-repeat center center/contain;
  inline-size: clamp(5.9rem,5.306rem + 1.524vw,7.5rem);
  right: 19px;
  top: 7px
}
.p-mail__container {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-inline: auto
}
.p-mail__textWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.606rem + 1.524vw,4.8rem)
}
.p-mail__title {
  color: var(--white);
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  line-height: var(--line-height-1dot5)
}
.p-mail__text {
  color: var(--white);
  font-size: 1.6rem
}
.p-mail__form {
  inline-size: 100%
}
.p-mail__input--wrapper {
  position: relative
}
.p-mail__input--wrapper input[type=email] {
  align-items: center;
  background: var(--white);
  border: none;
  border: 2px solid var(--accent-color-blue);
  border-radius: calc(infinity * 1px);
  display: flex;
  font-family: var(--font-ja);
  font-size: 1.6rem;
  gap: 10px;
  inline-size: 100%;
  justify-content: space-between;
  line-height: var(--line-height-base);
  outline: 0;
  padding: 24px 16px 20px
}
.p-mail__input--wrapper input[type=email]::-moz-placeholder {
  color: var(--light-gray);
  font-size: 1.4rem
}
.p-mail__input--wrapper input[type=email]::placeholder {
  color: var(--light-gray);
  font-size: 1.4rem
}
.p-mail__input--wrapper input[type=email]:focus-visible {
  border: 2px solid oklch(60% .4 240deg)
}
.p-mail__submit {
  align-items: center;
  background-color: var(--accent-color-blue);
  block-size: 40px;
  border-radius: calc(infinity * 1px);
  cursor: pointer;
  display: flex;
  inline-size: 40px;
  justify-content: center;
  overflow: hidden;
  position: absolute;
  right: 16px;
  top: 50%;
  transition: var(--hover-transition);
  translate: 0 -50%
}
.p-mail__submit:focus-visible .p-mail__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.p-mail__submit:focus-visible .p-mail__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.p-mail__arrow {
  aspect-ratio: 14/12;
  inline-size: 14px;
  position: absolute
}
.p-parts-seminar {
  margin-block: clamp(6.4rem,4.32rem + 5.333vw,12rem) clamp(8rem,6.514rem + 3.81vw,12rem);
  position: relative
}
.p-parts-seminar__wrap {
  display: flex;
  flex-direction: column;
  gap: 34px
}
.p-parts-seminar__img {
  aspect-ratio: 358/262;
  border-radius: 0 1000px 1000px 0;
  inline-size: calc(100vw - 8.205vw);
  margin-inline-start: calc(50% - 50vw);
  overflow: hidden;
  position: relative
}
.p-parts-seminar__credit {
  bottom: 8px;
  font-size: 1rem;
  font-weight: 300;
  left: 20px;
  line-height: var(--line-height-1dot5);
  position: absolute
}
.p-parts-seminar__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(2.8rem,1.76rem + 2.667vw,5.6rem)
}
.p-parts-seminar__titleWrap {
  align-items: baseline;
  display: flex;
  gap: 16px
}
.p-parts-seminar__subtitle {
  color: var(--text-color);
  font-size: 2rem;
  line-height: var(--line-height-1dot5)
}
.p-parts-seminar__title {
  color: var(--text-color);
  font-size: clamp(2.4rem,1.806rem + 1.524vw,4rem);
  line-height: var(--line-height-1dot5)
}
.p-parts-seminar__text {
  color: var(--text-color);
  font-size: 1.6rem;
  line-height: 2.1
}
.p-parts-seminar__btn {
  display: flex;
  justify-content: flex-start
}
.p-step {
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(7.2rem,6.903rem + .762vw,8rem) clamp(7.2rem,6.011rem + 3.048vw,10.4rem);
  position: relative;
  z-index: 2
}
.p-step::after,
.p-step::before {
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  content: "";
  inset: 0;
  position: absolute
}
.p-step::before {
  background: var(--gradient-color);
  z-index: 1
}
.p-step::after {
  background: var(--white);
  z-index: -1
}
.p-step__container {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3rem,1.291rem + 4.381vw,7.6rem);
  position: relative;
  z-index: 2
}
.p-step__titleWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 18px;
  text-align: center
}
.p-step__title--en {
  font-family: var(--font-en);
  font-size: clamp(5.2rem,4.457rem + 1.905vw,7.2rem);
  letter-spacing: .05em;
  line-height: 110%;
  text-align: center;
  text-transform: capitalize;
  text-wrap: balance
}
.p-step__title {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: var(--line-height-1dot5)
}
.p-step__list {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  row-gap: 16px;
  -moz-column-gap: 16px;
  column-gap: 16px;
  max-inline-size: 1000px
}
.p-step__link {
  display: inline grid;
  grid-template-columns: 1fr auto 1fr;
  -moz-column-gap: 23px;
  align-items: center;
  border: 2px solid;
  border-radius: calc(infinity * 1px);
  color: var(--white);
  column-gap: 23px;
  cursor: pointer;
  inline-size: min(100%,492px);
  padding: 9px 14px 13px;
  text-wrap: pretty;
  transition-duration: var(--hover-transition);
  transition-property: color,background-color,transform;
  transition-timing-function: ease-in-out;
  vertical-align: middle
}
.p-step__link:focus-visible .p-step__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.p-step__link:focus-visible .p-step__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.p-step__link.--blue {
  background-color: var(--accent-color-blue);
  border-color: var(--accent-color-blue)
}
.p-step__link.--blue:focus-visible {
  background-color: var(--white);
  color: var(--accent-color-blue)
}
.p-step__link.--blue:focus-visible .p-step__large,
.p-step__link.--blue:focus-visible .p-step__small {
  color: var(--accent-color-blue)
}
.p-step__link.--blue:focus-visible .p-step__arrow {
  color: var(--accent-color-blue)
}
.p-step__link.--blue:focus-visible .p-step__arrowWrap {
  border-color: var(--accent-color-blue)
}
.p-step__link.--yellow {
  background-color: var(--accent-color-yellow);
  border-color: var(--accent-color-yellow)
}
.p-step__link.--yellow:focus-visible {
  background-color: var(--white);
  color: var(--accent-color-yellow)
}
.p-step__link.--yellow:focus-visible .p-step__large,
.p-step__link.--yellow:focus-visible .p-step__small {
  color: var(--accent-color-yellow)
}
.p-step__link.--yellow:focus-visible .p-step__arrow {
  color: var(--accent-color-yellow)
}
.p-step__link.--yellow:focus-visible .p-step__arrowWrap {
  border-color: var(--accent-color-yellow)
}
.p-step__link.--green {
  background-color: var(--accent-color-green);
  border-color: var(--accent-color-green)
}
.p-step__link.--green:focus-visible {
  background-color: var(--white);
  color: var(--accent-color-green)
}
.p-step__link.--green:focus-visible .p-step__large,
.p-step__link.--green:focus-visible .p-step__small {
  color: var(--accent-color-green)
}
.p-step__link.--green:focus-visible .p-step__arrow {
  color: var(--accent-color-green)
}
.p-step__link.--green:focus-visible .p-step__arrowWrap {
  border-color: var(--accent-color-green)
}
.p-step__link.--purple {
  background-color: var(--accent-color-purple);
  border-color: var(--accent-color-purple)
}
.p-step__link.--purple:focus-visible {
  background-color: var(--white);
  color: var(--accent-color-purple)
}
.p-step__link.--purple:focus-visible .p-step__large,
.p-step__link.--purple:focus-visible .p-step__small {
  color: var(--accent-color-purple)
}
.p-step__link.--purple:focus-visible .p-step__arrow {
  color: var(--accent-color-purple)
}
.p-step__link.--purple:focus-visible .p-step__arrowWrap {
  border-color: var(--accent-color-purple)
}
.p-step__content {
  align-items: center;
  display: flex;
  flex: 1;
  gap: 8px;
  justify-content: center
}
.p-step__small {
  color: var(--white);
  font-size: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  text-align: center;
  transition: color var(--hover-transition) ease-in-out
}
.p-step__large {
  color: var(--white);
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  text-align: center;
  transition: color var(--hover-transition) ease-in-out
}
.p-step__arrowWrap {
  align-items: center;
  block-size: 40px;
  border: 2px solid var(--white);
  border-radius: calc(infinity * 1px);
  display: flex;
  inline-size: 40px;
  justify-content: center;
  justify-self: end;
  overflow: hidden;
  position: relative
}
.p-step__arrow {
  block-size: 12px;
  color: var(--white);
  inline-size: 14px;
  position: absolute;
  transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out,color var(--hover-transition) ease-in-out
}
.p-step__arrow.--hover {
  opacity: 0;
  transform: translateX(-10px)
}
.p-step__arrow path {
  fill: currentColor
}
.p-photo {
  aspect-ratio: 390/465;
  block-size: auto;
  inline-size: 100%;
  margin-block-start: calc(-1 * clamp(16.4rem,14.32rem + 5.333vw,22rem));
  overflow: hidden;
  position: relative;
  transform: translate3d(0,0,0);
  will-change: transform;
  z-index: 1
}
.p-photo__credit {
  bottom: 31.282vw;
  color: var(--white);
  font-size: 1rem;
  font-weight: 300;
  left: clamp(1rem,-.114rem + 2.857vw,4rem);
  line-height: var(--line-height-1dot5);
  position: absolute
}
.p-photo__credit.--seminar {
  color: var(--gray)
}
.p-photo__credit.--history {
  bottom: 148px
}
.p-qa__contents {
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem);
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 1120px;
  padding-block: clamp(10.4rem,9.509rem + 2.286vw,12.8rem) clamp(4.8rem,4.206rem + 1.524vw,6.4rem);
  position: relative
}
.p-qa__badge {
  align-items: center;
  background-color: var(--circle-blue);
  border-radius: 0 calc(infinity * 1px) calc(infinity * 1px) 0;
  display: flex;
  gap: 10px;
  left: -6.154vw;
  padding: 8px 24px;
  position: absolute;
  top: 40px
}
.p-qa__badge--text {
  font-family: var(--font-en);
  font-size: clamp(1.8rem,1.577rem + .571vw,2.4rem);
  letter-spacing: .05em;
  line-height: var(--line-height-1dot5);
  text-transform: capitalize
}
.p-qa__badge--icon {
  aspect-ratio: 41/36;
  width: clamp(3.3rem,3.003rem + .762vw,4.1rem)
}
.p-qa__items {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.006rem + 1.524vw,3.2rem)
}
.p-qa__item {
  align-items: flex-start;
  display: flex;
  gap: clamp(.8rem,-.091rem + 2.286vw,3.2rem)
}
.p-qa__label {
  color: var(--accent-color-blue);
  flex-shrink: 0;
  font-family: var(--font-en);
  font-size: clamp(2.8rem,2.354rem + 1.143vw,4rem);
  line-height: 1
}
.p-qa__bigText {
  font-size: clamp(2rem,1.777rem + .571vw,2.6rem);
  line-height: var(--line-height-1dot5)
}
.p-qa__text {
  flex: 1;
  font-size: 1.4rem
}
.p-qa__text p + p {
  margin-block-start: 2.4rem
}
.p-qa__profile {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  gap: 24px
}
.p-qa__img {
  aspect-ratio: 1;
  border-radius: calc(infinity * 1px);
  flex-shrink: 0;
  inline-size: clamp(18rem,14.657rem + 8.571vw,27rem);
  overflow: hidden
}
.p-qa__info {
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,.317rem + 1.238vw,2.1rem)
}
.p-qa__position {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: 1
}
.p-qa__name {
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  line-height: 1
}
.p-seminar-achieve {
  background: var(--bg-light-cream);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(5rem,4.146rem + 2.19vw,7.3rem) clamp(5.4rem,2.949rem + 6.286vw,12rem);
  position: relative;
  z-index: 2
}
.p-seminar-achieve__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: clamp(3rem,1.737rem + 3.238vw,6.4rem)
}
.p-seminar-achieve__titleWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-seminar-achieve__title--en {
  letter-spacing: .05em
}
.p-seminar-achieve__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1.2
}
.p-seminar-achieve__contents {
  display: flex;
  flex-direction: column;
  gap: 49px;
  inline-size: 100%
}
.p-seminar-achieve__textWrap {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-seminar-achieve__text {
  font-size: 1.4rem;
  max-inline-size: 600px
}
.p-seminar-achieve__totalWrap {
  display: flex;
  flex-direction: column;
  gap: 32px;
  inline-size: -moz-fit-content;
  inline-size: fit-content
}
.p-seminar-achieve__total {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-seminar-achieve__total--title {
  font-size: 1.8rem
}
.p-seminar-achieve__total--content {
  align-items: baseline;
  display: flex;
  gap: 5px;
  justify-content: center;
  padding: 3px 55px 3px 48px;
  position: relative
}
.p-seminar-achieve__total--content::after,
.p-seminar-achieve__total--content::before {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/seminar/award.svg);
  mask-image: url(../img/seminar/award.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 32/80;
  background: var(--accent-color-yellow);
  inline-size: 32px;
  mask-size: contain;
  top: 50%;
  translate: 0 -50%
}
.p-seminar-achieve__total--content::before {
  left: 0
}
.p-seminar-achieve__total--content::after {
  right: 0;
  scale: -1 1
}
.p-seminar-achieve__total--label {
  font-size: 1.8rem;
  line-height: 1.1;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl
}
.p-seminar-achieve__total--number {
  font-size: 2.4rem;
  line-height: 1;
  padding-inline-end: 7px;
  white-space: nowrap
}
.p-seminar-achieve__total--number span {
  display: inline-block;
  font-family: var(--font-en);
  font-size: 7.2rem;
  line-height: 1;
  padding-inline-end: 4px;
  white-space: nowrap
}
.p-seminar-achieve__info {
  color: var(--light-gray);
  font-size: 1.2rem;
  line-height: var(--line-height-1dot5);
  margin-block-start: -8px
}
.p-seminar-achieve__itemWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(1.2rem,.754rem + 1.143vw,2.4rem);
  inline-size: 100%;
  margin-inline: auto;
  max-inline-size: 687px
}
.p-seminar-achieve__accordion {
  background: var(--base-color);
  background: var(--base-color);
  border-radius: 8px;
  inline-size: 100%;
  overflow: hidden;
  padding: 20px 24px
}
.p-seminar-achieve__accordion.--government .p-seminar-achieve__item--number,
.p-seminar-achieve__accordion.--government .p-seminar-achieve__item--title {
  color: var(--accent-color-green)
}
.p-seminar-achieve__accordion.--government .p-seminar-achieve__item--icon {
  background: var(--accent-color-green)
}
.p-seminar-achieve__accordion.--education .p-seminar-achieve__item--number,
.p-seminar-achieve__accordion.--education .p-seminar-achieve__item--title {
  color: var(--accent-color-blue)
}
.p-seminar-achieve__accordion.--education .p-seminar-achieve__item--icon {
  background: var(--accent-color-blue)
}
.p-seminar-achieve__accordion.--corporate .p-seminar-achieve__item--number,
.p-seminar-achieve__accordion.--corporate .p-seminar-achieve__item--title {
  color: var(--accent-color-purple)
}
.p-seminar-achieve__accordion.--corporate .p-seminar-achieve__item--icon {
  background: var(--accent-color-purple)
}
.p-seminar-achieve__summary {
  align-items: center;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  position: relative
}
.p-seminar-achieve__item--content {
  display: flex;
  flex-direction: column;
  gap: 0;
  inline-size: 100%;
  max-inline-size: 472px
}
.p-seminar-achieve__item--title {
  font-size: clamp(1.6rem,1.526rem + .19vw,1.8rem);
  inline-size: 162px
}
.p-seminar-achieve__item--number {
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  inline-size: 192px;
  line-height: 1;
  padding-block-end: 7px;
  white-space: nowrap
}
.p-seminar-achieve__item--number span {
  font-family: var(--font-en);
  font-size: clamp(4.8rem,3.611rem + 3.048vw,8rem);
  line-height: 1;
  margin-inline-end: 5px
}
.p-seminar-achieve__item--icon {
  aspect-ratio: 1;
  border-radius: calc(infinity * 1px);
  inline-size: 24px;
  position: relative;
  transition: rotate var(--hover-transition) ease-in-out
}
.p-seminar-achieve__item--icon::after {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/common/arrow.svg);
  mask-image: url(../img/common/arrow.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 8px;
  background: var(--base-color);
  border-radius: calc(infinity * 1px);
  inset: 0;
  mask-size: 8px;
  rotate: 90deg;
  transition: rotate var(--hover-transition) ease-in-out
}
.p-seminar-achieve__accordion[open] .p-seminar-achieve__item--icon {
  rotate: 180deg
}
.p-seminar-achieve__accordion--content {
  inline-size: 100%
}
.p-seminar-achieve__accordion--text {
  color: var(--gray);
  font-size: 12px;
  line-height: var(--line-height-2dot1);
  padding-block-start: 24px
}
.p-seminar-achieve__photo {
  margin-block-start: clamp(3.7rem,2.771rem + 2.381vw,6.2rem)
}
.p-seminar-points {
  background: var(--bg-light-blue);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  margin-block-start: calc(-1 * clamp(6.4rem,1.646rem + 12.19vw,19.2rem));
  padding-block: clamp(5.6rem,3.223rem + 6.095vw,12rem);
  position: relative;
  z-index: 2
}
.p-seminar-points__inner {
  display: flex;
  flex-direction: column;
  gap: 60px
}
.p-seminar-points__items {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  max-inline-size: 968px;
  row-gap: clamp(4.8rem,3.611rem + 3.048vw,8rem)
}
.p-seminar-points__item {
  background: var(--base-color);
  border-radius: 8px;
  padding: 52px 24px 24px;
  position: relative
}
.p-seminar-points__content {
  display: grid;
  gap: 16px;
  place-content: center;
  place-items: center
}
.p-seminar-points__text {
  font-size: 1.4rem
}
.p-seminar-points__number {
  aspect-ratio: 1;
  background: var(--accent-color-blue);
  border-radius: calc(infinity * 1px);
  color: var(--white);
  display: grid;
  font-family: var(--font-en);
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  inline-size: clamp(6.4rem,5.806rem + 1.524vw,8rem);
  left: 50%;
  line-height: var(--line-height-1dot5);
  place-content: center;
  position: absolute;
  top: calc(-1 * clamp(3.2rem,2.903rem + .762vw,4rem));
  translate: -50%
}
.p-seminar-cta {
  margin-block: clamp(6.4rem,5.249rem + 2.952vw,9.5rem) clamp(6.4rem,2.834rem + 9.143vw,16rem)
}
.p-sitemap {
  margin-block: clamp(8rem,5.029rem + 7.619vw,16rem) clamp(8rem,6.106rem + 4.857vw,13.1rem)
}
.p-sitemap__nav .l-nav__wrap:not(:first-child) {
  margin-block-start: clamp(3.2rem,1.789rem + 3.619vw,7rem)
}
.p-sitemap__nav .l-nav__lists {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-sitemap__nav .l-nav__title-jp {
  font-size: clamp(1.4rem,1.251rem + .381vw,1.8rem)
}
.p-sitemap__nav .l-nav__title-en {
  font-size: clamp(1.1rem,1.026rem + .19vw,1.3rem)
}
.p-sitemap__nav .l-nav__icon {
  block-size: 18px;
  inline-size: 18px
}
.p-sitemap__nav .l-nav__submenu a {
  font-size: clamp(1.3rem,1.263rem + .095vw,1.4rem)
}
.p-start-cta {
  position: relative;
  z-index: 3
}
.p-start-cta__link {
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  display: block;
  inline-size: 100%;
  overflow: hidden;
  padding-block: clamp(5.6rem,3.223rem + 6.095vw,12rem) clamp(4.8rem,2.126rem + 6.857vw,12rem);
  position: relative
}
.p-start-cta__link::after {
  background: url(../img/concierge-seminar/start-bg-sp.jpg) no-repeat center center/cover;
  content: "";
  inset: 0;
  position: absolute;
  transition: scale var(--hover-transition) ease-in-out;
  z-index: -1
}
.p-start-cta__link.--contact::after {
  background: url(../img/common/start-bg-sp.jpg) no-repeat center center/cover
}
.p-start-cta__link:focus-visible::after {
  scale: 1.02
}
.p-start-cta__link:focus-visible .c-line-btn {
  background: var(--white);
  color: var(--text-color)
}
.p-start-cta__link:focus-visible .c-line-btn .c-line-btn__linkIcon {
  border-color: var(--text-color)
}
.p-start-cta__link:focus-visible .c-line-btn .c-line-btn__linkIcon svg {
  color: var(--text-color)
}
.p-start-cta__inner {
  display: block grid;
  gap: clamp(4rem,3.703rem + .762vw,4.8rem);
  place-content: center;
  place-items: center
}
.p-start-cta__textWrap {
  color: var(--white);
  display: grid;
  gap: 16px;
  place-content: center;
  place-items: center
}
.p-start-cta__title {
  font-family: var(--font-en);
  font-size: clamp(4rem,3.109rem + 2.286vw,6.4rem);
  letter-spacing: .06em;
  line-height: 1;
  text-align: center;
  text-transform: capitalize;
  text-wrap: balance
}
.p-start-cta__text {
  font-size: 2rem;
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-cta {
  position: relative
}
.p-cta__link {
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  display: block;
  inline-size: 100%;
  overflow: hidden;
  padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem) clamp(5.6rem,3.817rem + 4.571vw,10.4rem);
  position: relative
}
.p-cta__link::after {
  content: "";
  inset: 0;
  position: absolute;
  transition: scale var(--hover-transition) ease-in-out;
  z-index: -1
}
.p-cta__link.--seminar::after {
  background: url(../img/seminar/flow-bg-sp.jpg) no-repeat center center/cover
}
.p-cta__link.--support::after {
  background: url(../img/support/cta-bg-sp.jpg) no-repeat center center/cover
}
.p-cta__link:focus-visible::after {
  scale: 1.02
}
.p-cta__link:focus-visible .c-line-btn {
  background: var(--white);
  color: var(--text-color)
}
.p-cta__link:focus-visible .c-line-btn .c-line-btn__linkIcon {
  border-color: var(--text-color)
}
.p-cta__link:focus-visible .c-line-btn .c-line-btn__linkIcon svg {
  color: var(--text-color);
  scale: 1.1
}
.p-cta__inner {
  display: block grid;
  gap: clamp(3rem,2.034rem + 2.476vw,5.6rem);
  place-content: center;
  place-items: center
}
.p-cta__textWrap {
  display: grid;
  gap: 24px;
  place-content: center;
  place-items: center
}
.p-cta__title {
  color: var(--white);
  font-size: clamp(2.4rem,1.954rem + 1.143vw,3.6rem);
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-cta__text {
  color: var(--white);
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem)
}
.p-start-header__text {
  inline-size: 100%
}
.p-start-consume {
  background-color: var(--bg-light-blue);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-start-consume__inner {
  display: flex;
  flex-direction: column;
  gap: 70px
}
.p-start-consume__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-start-consume__subTitle {
  font-size: 2.4rem;
  line-height: 1
}
.p-start-consume__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1
}
.p-start-consume__title .is-big {
  color: var(--accent-color-blue);
  font-family: var(--font-en);
  font-size: 4.8rem;
  line-height: 1
}
.p-start-consume__title .is-small {
  color: var(--accent-color-blue);
  font-size: 3.2rem;
  line-height: 1
}
.p-start-consume__items {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  -moz-column-gap: clamp(2rem,1.257rem + 1.905vw,4rem);
  column-gap: clamp(2rem,1.257rem + 1.905vw,4rem);
  row-gap: clamp(3rem,1.886rem + 2.857vw,6rem)
}
.p-start-consume__item {
  align-items: flex-start;
  display: flex;
  gap: 6px;
  position: relative
}
.p-start-consume__action {
  align-items: center;
  aspect-ratio: 1;
  display: flex;
  flex-shrink: 0;
  inline-size: clamp(13rem,9.583rem + 8.762vw,22.2rem);
  justify-content: center;
  position: relative
}
.p-start-consume__action svg {
  block-size: 100%;
  inline-size: 100%;
  overflow: visible
}
.p-start-consume__actionText {
  font-family: var(--font-en);
  font-size: 22px;
  fill: var(--accent-color-blue);
  letter-spacing: .05em;
  text-transform: capitalize
}
.p-start-consume__icon {
  block-size: clamp(7.1rem,5.949rem + 2.952vw,10.2rem);
  inline-size: clamp(7.1rem,5.949rem + 2.952vw,10.2rem);
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  -o-object-fit: contain;
  object-fit: contain
}
.p-start-consume__iconWrap {
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%
}
.p-start-consume__iconWrap.--04 {
  block-size: 130px;
  inline-size: 140px
}
.p-start-consume__iconWrap.--04 .p-start-consume__icon {
  display: block
}
.p-start-consume__iconWrap.--04 .p-start-consume__icon:nth-child(1) {
  block-size: clamp(2.6rem,1.82rem + 2vw,4.7rem);
  inline-size: clamp(2.6rem,1.82rem + 2vw,4.7rem);
  left: 50px;
  position: absolute;
  rotate: -23deg;
  top: 48px
}
.p-start-consume__iconWrap.--04 .p-start-consume__icon:nth-child(2) {
  block-size: clamp(5.8rem,4.017rem + 4.571vw,10.6rem);
  inline-size: clamp(5.8rem,4.017rem + 4.571vw,10.6rem);
  left: 80px;
  position: absolute;
  rotate: 6deg;
  top: 70px
}
.p-start-consume__iconWrap.--06 {
  block-size: 130px;
  inline-size: 140px
}
.p-start-consume__iconWrap.--06 .p-start-consume__icon {
  display: block
}
.p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(1) {
  block-size: clamp(3.7rem,2.474rem + 3.143vw,7rem);
  inline-size: clamp(3.7rem,2.474rem + 3.143vw,7rem);
  left: 90px;
  position: absolute;
  top: 47px;
  z-index: 2
}
.p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(2) {
  block-size: clamp(4.8rem,3.091rem + 4.381vw,9.4rem);
  inline-size: clamp(4.8rem,3.091rem + 4.381vw,9.4rem);
  left: 55px;
  position: absolute;
  top: 72px;
  z-index: 1
}
.p-start-consume__actionText-probe {
  font-size: clamp(1.2rem,1.051rem + .381vw,1.6rem);
  inset: -9999px auto auto -9999px;
  pointer-events: none;
  position: absolute;
  visibility: hidden
}
.p-start-consume__content {
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,.503rem + .762vw,1.6rem);
  margin-block-start: 10px
}
.p-start-consume__itemTitle {
  color: var(--text-color);
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  line-height: var(--line-height-1dot5)
}
.p-start-consume__itemText {
  font-size: 1.4rem
}
.p-start-seminar {
  margin-block-start: clamp(6.4rem,4.914rem + 3.81vw,10.4rem)
}
.p-start-education {
  margin-block-end: clamp(6.4rem,2.834rem + 9.143vw,16rem)
}
.p-start-education__inner {
  align-items: center;
  display: flex;
  gap: 80px
}
.p-start-education__wrapper {
  display: grid;
  gap: 26px;
  grid-template-columns: repeat(1,1fr)
}
.p-start-education__content {
  display: flex;
  flex: 0 0 501px;
  flex-direction: column;
  gap: clamp(3.2rem,2.309rem + 2.286vw,5.6rem);
  margin-block-start: 8px
}
.p-start-education__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-start-education__img {
  aspect-ratio: 761/714;
  inline-size: 100vw;
  margin-inline: calc(50% - 50vw)
}
.p-support-header__text {
  flex: 0 1 53.57%
}
.p-support-method {
  background-color: var(--bg-purple);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  margin-inline: auto;
  max-inline-size: 1920px;
  padding-block: clamp(5.4rem,2.949rem + 6.286vw,12rem)
}
.p-support-method__contents {
  display: flex;
  flex-direction: column;
  gap: 40px
}
.p-support-method__title {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: var(--line-height-1dot5);
  text-align: center
}
.p-support-method__lists {
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-support-method__link {
  align-items: center;
  background-color: #f1e7f5;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,.709rem + 2.286vw,4rem);
  padding: clamp(2.4rem,1.806rem + 1.524vw,4rem);
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-support-method__link:focus-visible {
  opacity: .6
}
.p-support-method__link:focus-visible .c-btn__arrow {
  opacity: 0;
  transform: translateX(10px)
}
.p-support-method__link:focus-visible .c-btn__arrow.--hover {
  opacity: 1;
  transform: translateX(0)
}
.p-support-method__icon {
  background-color: var(--base-color);
  block-size: clamp(12rem,11.629rem + .952vw,13rem);
  border-radius: calc(infinity * 1px);
  display: grid;
  flex-shrink: 0;
  inline-size: clamp(12rem,11.629rem + .952vw,13rem);
  place-content: center;
  position: relative
}
.p-support-method__icon img {
  aspect-ratio: 1;
  block-size: clamp(7.2rem,6.68rem + 1.333vw,8.6rem);
  inline-size: clamp(7.2rem,6.68rem + 1.333vw,8.6rem)
}
.p-support-method__body {
  align-items: end;
  display: flex;
  flex-direction: column;
  gap: clamp(.8rem,-.389rem + 3.048vw,4rem)
}
.p-support-method__textWrap {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px
}
.p-support-method__text {
  font-size: 1.4rem
}
.p-support-method__btn .c-btn__arrowWrap {
  block-size: 40px;
  inline-size: 40px
}
.p-support-method__btn .c-btn__arrow {
  inline-size: 14px
}
.p-support-method__linkIcon {
  background: var(--text-color);
  block-size: 40px;
  border-radius: calc(infinity * 1px);
  display: grid;
  inline-size: 40px;
  overflow: hidden;
  place-content: center;
  position: relative
}
.p-support-method__linkIcon svg {
  aspect-ratio: 16/12;
  color: var(--white);
  inline-size: 18px;
  transition: color var(--hover-transition) ease-in-out,scale var(--hover-transition) ease-in-out
}
.p-support-cta {
  margin-block-start: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-support-qa__inner {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-support-qa__lists {
  display: flex;
  flex-direction: column;
  gap: 16px;
  inline-size: 100%
}
.p-esd-leader {
  inline-size: 100%;
  margin-block: clamp(6.4rem,5.806rem + 1.524vw,8rem) clamp(6.4rem,4.209rem + 5.619vw,12.3rem);
  margin-inline: auto;
  max-inline-size: 1920px;
  position: relative
}
.p-esd-leader::after {
  aspect-ratio: 1;
  background: #e9f7ed;
  border-radius: calc(infinity * 1px);
  content: "";
  filter: blur(90px);
  inline-size: clamp(37.8rem,29.554rem + 21.143vw,60rem);
  left: -95px;
  position: absolute;
  top: 247px;
  z-index: -1
}
.p-esd-leader__contents {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem)
}
.p-esd-leader__textWrap {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: clamp(2.4rem,1.806rem + 1.524vw,4rem)
}
.p-esd-leader__imgWrap {
  display: flex;
  gap: clamp(1.2rem,.903rem + .762vw,2rem);
  justify-content: flex-start
}
.p-esd-leader__img {
  aspect-ratio: 165/241;
  block-size: -moz-fit-content;
  block-size: fit-content;
  border-radius: calc(infinity * 1px);
  display: block;
  flex: 1;
  inline-size: 42.308vw;
  max-inline-size: 278px;
  overflow: hidden
}
.p-esd-leader__img:first-child {
  margin-block-start: clamp(8.7rem,6.434rem + 5.81vw,14.8rem)
}
.p-esd-vision {
  overflow: hidden;
  padding-block: clamp(6.4rem,3.949rem + 6.286vw,13rem) clamp(6.4rem,4.989rem + 3.619vw,10.2rem);
  position: relative
}
.p-esd-vision__inner {
  display: flex;
  flex-direction: column;
  gap: 64px
}
.p-esd-vision__header {
  display: flex;
  flex-direction: column;
  gap: 32px
}
.p-esd-vision__titleWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-esd-vision__map {
  aspect-ratio: 388/452;
  inline-size: 100%;
  inline-size: 388px;
  left: 50%;
  position: absolute;
  top: 48px;
  translate: -50%;
  z-index: -1
}
.p-esd-vision__timeline {
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-esd-vision__head {
  color: var(--light-gray);
  font-size: 1.4rem;
  margin-inline-start: auto;
  padding-inline-end: 23px;
  position: relative;
  text-transform: uppercase
}
.p-esd-vision__head::after {
  content: "";
  position: absolute;
  -webkit-mask-image: url(../img/education/three-arrow.svg);
  mask-image: url(../img/education/three-arrow.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  aspect-ratio: 15/7;
  background: var(--light-gray);
  inline-size: 17px;
  mask-size: contain;
  right: 0;
  top: 50%;
  translate: 0 -50%
}
.p-esd-vision__container {
  inline-size: 100vw;
  margin-inline: calc(50% - 50vw + 6.1538461538vw);
  overflow-x: auto;
  overflow-y: hidden;
  padding-block-end: 20px;
  padding-inline-end: calc(50vw - 50% + 24px);
  position: relative
}
.p-esd-vision__container .simplebar-track.simplebar-horizontal {
  background-color: transparent;
  block-size: 6px!important
}
.p-esd-vision__container .simplebar-scrollbar {
  block-size: 4px!important
}
.p-esd-vision__container .simplebar-scrollbar::before {
  background-color: var(--border-gray);
  block-size: 4px;
  border-radius: calc(infinity * 1px);
  inline-size: auto;
  top: 50%;
  translate: 0 -50%
}
.p-esd-vision__container .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1
}
.p-esd-vision__line {
  background-color: var(--border-gray);
  background-image: repeating-linear-gradient(to right,var(--border-gray) 0,var(--border-gray) 4px,transparent 4px,transparent 8px);
  height: 2px;
  inline-size: 100%;
  left: 84px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%)
}
.p-esd-vision__items {
  display: flex;
  gap: 0;
  inline-size: -moz-max-content;
  inline-size: max-content;
  position: relative
}
.p-esd-vision__items::before {
  background-image: repeating-linear-gradient(to right,var(--border-gray) 0,var(--border-gray) 4px,transparent 4px,transparent 8px);
  content: "";
  height: 2px;
  left: 73px;
  position: absolute;
  right: 0;
  top: 7px;
  z-index: 0
}
.p-esd-vision__item {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  inline-size: 160px;
  position: relative
}
.p-esd-vision__item:nth-child(2) {
  inline-size: 80px
}
.p-esd-vision__dot {
  aspect-ratio: 1;
  background: currentColor;
  border-radius: calc(infinity * 1px);
  color: var(--accent-color-blue);
  inline-size: 14px;
  margin-block-end: 19px;
  position: relative;
  z-index: 1
}
.p-esd-vision__dot::after {
  background-color: currentColor;
  block-size: 19px;
  bottom: -19px;
  content: "";
  inline-size: 3px;
  left: 50%;
  position: absolute;
  translate: -50%
}
.p-esd-vision__item.--current .p-esd-vision__dot {
  color: var(--accent-color-yellow)
}
.p-esd-vision__item.--future .p-esd-vision__dot {
  color: #ea5757
}
.p-esd-vision__content {
  align-items: center;
  display: flex;
  flex-direction: column;
  text-align: center
}
.p-esd-vision__year {
  font-family: var(--font-en);
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: var(--line-height-1dot5)
}
.p-esd-vision__item.--current .p-esd-vision__year {
  color: var(--accent-color-yellow)
}
.p-esd-vision__item.--future .p-esd-vision__year {
  color: #ea5757
}
.p-esd-vision__text {
  font-size: 1.4rem;
  text-align: center
}
.p-esd-project {
  background-color: var(--bg-light-gray);
  border-radius: clamp(4rem,2.514rem + 3.81vw,8rem);
  padding-block: clamp(6.4rem,4.32rem + 5.333vw,12rem)
}
.p-esd-project__contents {
  display: flex;
  flex-direction: column;
  gap: 73px
}
.p-esd-project__titleWrap {
  align-items: baseline;
  display: flex;
  gap: 16px
}
.p-esd-project .p-tabPost__tabList {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  inline-size: 100%
}
.p-esd-project .p-tabPost__tab {
  border-block-end: 1.5px solid transparent;
  color: var(--border-gray);
  font-family: var(--font-en);
  font-size: 1.6rem;
  line-height: 1;
  padding-block-end: 8px;
  text-transform: uppercase;
  transition: color var(--hover-transition) ease-in-out 0s,border-color var(--hover-transition) ease-in-out 0s
}
.p-esd-project .p-tabPost__tab[role=tab][aria-selected=true] {
  border-color: var(--text-color);
  color: var(--text-color)
}
.p-esd-project .p-tabPost__tab:focus-visible {
  border-color: var(--border-gray)
}
.p-esd-project .p-tabPost__tabpanelWrapper {
  margin-block-start: 28px
}
.p-esd-project__items {
  display: flex;
  flex-direction: column;
  gap: 24px
}
.p-esd-project__item {
  display: flex;
  flex-direction: column
}
.p-esd-project__itemHeader {
  background: var(--text-color);
  border-radius: 8px 8px 0 0;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  padding: 2px 16px
}
.p-esd-project__itemYear {
  color: var(--white);
  font-family: var(--font-en);
  font-size: 1.6rem;
  line-height: 1
}
.p-esd-project__itemBody {
  background-color: var(--base-color);
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 8.205vw 6.154vw 10.256vw 6.154vw
}
.p-esd-project__itemMain {
  display: flex;
  flex-direction: column;
  gap: clamp(3.2rem,2.903rem + .762vw,4rem)
}
.p-esd-project__itemContent {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem)
}
.p-esd-project__itemTitle {
  font-size: 2rem;
  line-height: var(--line-height-1dot5)
}
.p-esd-project__itemText {
  font-size: 1.4rem
}
.p-esd-project__itemImg {
  aspect-ratio: 294/231;
  border-radius: 8px;
  flex-shrink: 0;
  inline-size: 100%;
  overflow: hidden
}
.p-esd-project__itemLinks {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-esd-project__linksLabel {
  color: var(--light-gray);
  font-size: 1.2rem;
  line-height: var(--line-height-1dot5)
}
.p-esd-project__link {
  align-items: center;
  background-color: var(--white);
  border: 1px solid var(--text-color);
  border-radius: 100px;
  color: var(--text-color);
  display: flex;
  font-size: 12px;
  gap: 8px;
  line-height: 1.5;
  padding: 4px 20px 6px;
  text-decoration: none;
  transition: all .3s ease
}
.p-esd-project__link:hover {
  background-color: var(--text-color);
  color: var(--white)
}
.p-esd-project__linkText {
  font-size: 12px;
  line-height: 1.5
}
.p-esd-project__link svg {
  block-size: 16px;
  inline-size: 16px
}
.p-team-director__profile {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0
}
.p-team-director__img {
  aspect-ratio: 288/443;
  flex-shrink: 0;
  inline-size: 73.846vw;
  margin-block-start: -24px;
  margin-inline: auto;
  max-inline-size: 300px
}
.p-team-director__info {
  display: flex;
  flex-direction: column;
  gap: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  inline-size: 100%;
  max-inline-size: 656px
}
.p-team-director__head {
  align-items: flex-end;
  display: flex;
  gap: 40px;
  margin-block-start: 24px
}
.p-team-director__nameWrap {
  display: flex;
  flex-direction: column;
  gap: 16px
}
.p-team-director__degree {
  font-size: 1.6rem;
  line-height: 1
}
.p-team-director__name {
  font-size: clamp(2.8rem,2.651rem + .381vw,3.2rem);
  line-height: 1
}
.p-team-director__link {
  aspect-ratio: 1;
  block-size: 29px;
  display: block;
  flex-shrink: 0;
  inline-size: 29px;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-team-director__link:focus-visible {
  opacity: .6
}
.p-team-director__text {
  flex: 1;
  min-inline-size: 0
}
.p-team-director .c-accordion .c-accordion__summary {
  background: var(--bg-gray);
  border-radius: 8px;
  color: var(--light-gray);
  font-size: 1.4rem;
  line-height: var(--line-height-2dot1);
  padding: 16px 24px 18px 24px
}
.p-team-director .c-accordion .c-accordion__summary::after,
.p-team-director .c-accordion .c-accordion__summary::before {
  background: var(--light-gray);
  inline-size: 12px;
  right: 24px;
  top: calc(50% - 1px)
}
.p-team-director .c-accordion .c-accordion__content {
  background: var(--bg-gray);
  border-radius: 0 0 8px 8px;
  margin-block-start: -1px
}
.p-team-director .c-accordion .c-accordion__content ul {
  display: grid;
  gap: 8px;
  padding: 6px 24px 24px 24px
}
.p-team-director .c-accordion .c-accordion__content ul li {
  display: grid;
  gap: clamp(1.2rem,.754rem + 1.143vw,2.4rem);
  grid-template-columns: 63px 1fr
}
.p-team-director .c-accordion .c-accordion__content ul li .is-year {
  font-family: var(--font-en);
  font-size: 1.4rem
}
.p-team-director .c-accordion .c-accordion__content ul li .is-text {
  font-size: 1.2rem
}
.p-team-members {
  margin-block: clamp(5.6rem,1.737rem + 9.905vw,16rem)
}
.p-team-members__lists {
  display: grid;
  grid-template-columns: repeat(1,1fr);
  justify-content: space-between;
  -moz-column-gap: 40px;
  column-gap: 40px;
  row-gap: 32px
}
.p-team-members__list {
  background: var(--white);
  border-block-end: 1px solid var(--border-light);
  display: block grid;
  gap: 8px;
  grid-row: span 2;
  grid-template-rows: subgrid
}
.p-team-members__head {
  align-items: flex-start;
  display: flex;
  gap: clamp(.8rem,.28rem + 1.333vw,2.2rem);
  margin-inline-start: -6px
}
.p-team-members__circular {
  align-items: center;
  aspect-ratio: 1;
  display: flex;
  flex-shrink: 0;
  inline-size: clamp(16.1rem,12.869rem + 8.286vw,24.8rem);
  justify-content: center;
  position: relative
}
.p-team-members__circular svg {
  block-size: 100%;
  inline-size: 100%;
  overflow: visible
}
.p-team-members__romaji {
  font-size: 2.2rem;
  fill: var(--accent-color-blue);
  letter-spacing: .05em
}
.p-team-members__img {
  block-size: clamp(14.3rem,11.44rem + 7.333vw,22rem);
  inline-size: clamp(14.3rem,11.44rem + 7.333vw,22rem);
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  -o-object-fit: cover;
  border-radius: calc(infinity * 1px);
  object-fit: cover;
  overflow: hidden
}
.p-team-members__infoWrap {
  display: flex;
  flex-direction: column;
  gap: clamp(1.6rem,1.303rem + .762vw,2.4rem);
  padding-block-start: 16px
}
.p-team-members__info {
  display: flex;
  flex-direction: column;
  gap: 8px
}
.p-team-members__position {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  line-height: var(--line-height-1dot5)
}
.p-team-members__name {
  font-size: clamp(2.4rem,2.103rem + .762vw,3.2rem);
  line-height: 1
}
.p-team-members__job {
  color: var(--light-gray);
  font-size: 1.2rem
}
.p-conDire-single__content h2,
.p-corporate-single__content h2,
.p-news-single__content h2 {
  background: var(--bg-gray);
  font-size: clamp(2rem,1.851rem + .381vw,2.4rem);
  padding: 8px 0 9px 24px
}
.p-conDire-single__content h3,
.p-corporate-single__content h3,
.p-news-single__content h3 {
  font-size: clamp(1.8rem,1.726rem + .19vw,2rem);
  padding-block: 16px 7px
}
.p-conDire-single__content h4,
.p-corporate-single__content h4,
.p-news-single__content h4 {
  font-size: clamp(1.6rem,1.526rem + .19vw,1.8rem);
  padding-block: 16px 8px
}
.p-conDire-single__content p,
.p-corporate-single__content p,
.p-news-single__content p {
  color: #333;
  font-size: 1.4rem;
  padding-block: 10px 16px
}
.p-conDire-single__content p + p,
.p-corporate-single__content p + p,
.p-news-single__content p + p {
  margin-block-start: -9px
}
.p-conDire-single__content hr,
.p-corporate-single__content hr,
.p-news-single__content hr {
  background: var(--border-light);
  block-size: 1px;
  border-top: none!important;
  inline-size: 100%;
  margin-block: 22px
}
.p-conDire-single__content blockquote,
.p-corporate-single__content blockquote,
.p-news-single__content blockquote {
  font-size: 1.4rem;
  margin-block: 11px 16px;
  padding-inline-start: 20px;
  position: relative
}
.p-conDire-single__content blockquote p,
.p-corporate-single__content blockquote p,
.p-news-single__content blockquote p {
  color: var(--text-color);
  font-size: 1.4rem;
  padding: 0!important
}
.p-conDire-single__content blockquote::before,
.p-corporate-single__content blockquote::before,
.p-news-single__content blockquote::before {
  background: var(--text-color);
  block-size: 100%;
  content: "";
  inline-size: 4px;
  left: 0;
  position: absolute;
  top: 50%;
  translate: 0 -50%
}
.p-conDire-single__content p a,
.p-corporate-single__content p a,
.p-news-single__content p a {
  color: var(--accent-color-blue);
  display: inline;
  font-size: 1.4rem;
  margin-block-end: 0;
  padding-block: 0;
  position: relative;
  text-decoration: underline;
  transition: opacity var(--hover-transition) ease-in-out 0s
}
.p-conDire-single__content p a:focus-visible,
.p-corporate-single__content p a:focus-visible,
.p-news-single__content p a:focus-visible {
  opacity: .6
}
.p-conDire-single__content p > a:first-child:last-child,
.p-corporate-single__content p > a:first-child:last-child,
.p-news-single__content p > a:first-child:last-child {
  display: inline-block;
  margin-block-end: 16px;
  padding-block: 4px 0
}
.p-conDire-single__content p:has(>a):not(:has(>:not(a,br))),
.p-corporate-single__content p:has(>a):not(:has(>:not(a,br))),
.p-news-single__content p:has(>a):not(:has(>:not(a,br))) {
  margin-block: 0!important;
  padding-block: 0!important
}
.p-conDire-single__content p:has(>a):not(:has(>:not(a,br))) > a,
.p-corporate-single__content p:has(>a):not(:has(>:not(a,br))) > a,
.p-news-single__content p:has(>a):not(:has(>:not(a,br))) > a {
  display: inline-block;
  margin-block-end: 16px;
  padding-block: 4px 0
}
.p-conDire-single__content figcaption,
.p-corporate-single__content figcaption,
.p-news-single__content figcaption {
  color: var(--gray);
  font-size: 1.2rem
}
.p-conDire-single__content .wp-block-image,
.p-corporate-single__content .wp-block-image,
.p-news-single__content .wp-block-image {
  block-size: auto;
  inline-size: 100%
}
.p-conDire-single__content ol,
.p-conDire-single__content ul,
.p-corporate-single__content ol,
.p-corporate-single__content ul,
.p-news-single__content ol,
.p-news-single__content ul {
  color: var(--text-color);
  padding-inline-start: 40px
}
.p-conDire-single__content li,
.p-corporate-single__content li,
.p-news-single__content li {
  font-size: 1.4rem;
  list-style-type: disc;
  margin-block: 4px
}
.p-conDire-single__content table,
.p-corporate-single__content table,
.p-news-single__content table {
  color: var(--text-color);
  display: block;
  inline-size: 100%;
  overflow-x: scroll
}
.p-conDire-single__content table tbody,
.p-corporate-single__content table tbody,
.p-news-single__content table tbody {
  display: block;
  margin-inline: auto;
  max-inline-size: 800px
}
.p-conDire-single__content table tr,
.p-corporate-single__content table tr,
.p-news-single__content table tr {
  border-block-start: 1px solid var(--border-gray);
  display: flex;
  justify-content: space-between
}
.p-conDire-single__content table tr:last-of-type,
.p-corporate-single__content table tr:last-of-type,
.p-news-single__content table tr:last-of-type {
  border-block-end: 1px solid --border-gray
}
.p-conDire-single__content table th,
.p-corporate-single__content table th,
.p-news-single__content table th {
  background: var(--gray);
  flex: 1;
  font-size: clamp(1.6rem,1.451rem + .381vw,2rem);
  padding-block: 14px
}
.p-conDire-single__content table td,
.p-corporate-single__content table td,
.p-news-single__content table td {
  align-self: center;
  flex: 1;
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  padding-block: 16px;
  text-align: center
}
.p-conDire-single__content p.is-style-callout,
.p-corporate-single__content p.is-style-callout,
.p-news-single__content p.is-style-callout {
  background: var(--bg-gray);
  color: var(--text-color);
  font-size: 1.4rem;
  margin-block: 16px;
  padding: 24px 24px 32px 24px
}
.p-conDire-single__content p.is-style-annotation,
.p-corporate-single__content p.is-style-annotation,
.p-news-single__content p.is-style-annotation {
  color: var(--gray);
  font-size: 1.2rem;
  padding-block: 10px 0!important
}
.p-conDire-single__content p > img,
.p-corporate-single__content p > img,
.p-news-single__content p > img {
  block-size: auto;
  inline-size: 100%
}
.p-conDire-single__content figure,
.p-corporate-single__content figure,
.p-news-single__content figure {
  margin-block: 0
}
.p-conDire-single__content table,
.p-corporate-single__content table,
.p-news-single__content table {
  margin-block: 16px
}
.p-conDire-single__content h2 + figure,
.p-conDire-single__content ol + p,
.p-conDire-single__content ol + ul,
.p-conDire-single__content p + figure,
.p-conDire-single__content p + ol,
.p-conDire-single__content p + ul,
.p-conDire-single__content ul + ol,
.p-conDire-single__content ul + p,
.p-corporate-single__content h2 + figure,
.p-corporate-single__content ol + p,
.p-corporate-single__content ol + ul,
.p-corporate-single__content p + figure,
.p-corporate-single__content p + ol,
.p-corporate-single__content p + ul,
.p-corporate-single__content ul + ol,
.p-corporate-single__content ul + p,
.p-news-single__content h2 + figure,
.p-news-single__content ol + p,
.p-news-single__content ol + ul,
.p-news-single__content p + figure,
.p-news-single__content p + ol,
.p-news-single__content p + ul,
.p-news-single__content ul + ol,
.p-news-single__content ul + p {
  margin-block-start: 16px
}
.p-conDire-single__content figure + h2,
.p-conDire-single__content ol + h2,
.p-conDire-single__content p + h2,
.p-conDire-single__content table + h2,
.p-conDire-single__content ul + h2,
.p-corporate-single__content figure + h2,
.p-corporate-single__content ol + h2,
.p-corporate-single__content p + h2,
.p-corporate-single__content table + h2,
.p-corporate-single__content ul + h2,
.p-news-single__content figure + h2,
.p-news-single__content ol + h2,
.p-news-single__content p + h2,
.p-news-single__content table + h2,
.p-news-single__content ul + h2 {
  margin-block-start: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.p-conDire-single__content figure + h3,
.p-conDire-single__content ol + h3,
.p-conDire-single__content p + h3,
.p-conDire-single__content table + h3,
.p-conDire-single__content ul + h3,
.p-corporate-single__content figure + h3,
.p-corporate-single__content ol + h3,
.p-corporate-single__content p + h3,
.p-corporate-single__content table + h3,
.p-corporate-single__content ul + h3,
.p-news-single__content figure + h3,
.p-news-single__content ol + h3,
.p-news-single__content p + h3,
.p-news-single__content table + h3,
.p-news-single__content ul + h3 {
  margin-block-start: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.p-conDire-single__content figure + h4,
.p-conDire-single__content ol + h4,
.p-conDire-single__content p + h4,
.p-conDire-single__content table + h4,
.p-conDire-single__content ul + h4,
.p-corporate-single__content figure + h4,
.p-corporate-single__content ol + h4,
.p-corporate-single__content p + h4,
.p-corporate-single__content table + h4,
.p-corporate-single__content ul + h4,
.p-news-single__content figure + h4,
.p-news-single__content ol + h4,
.p-news-single__content p + h4,
.p-news-single__content table + h4,
.p-news-single__content ul + h4 {
  margin-block-start: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.p-conDire-single__content table + table,
.p-corporate-single__content table + table,
.p-news-single__content table + table {
  margin-block-start: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.p-404__text {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem);
  margin-block-start: clamp(2.4rem,2.103rem + .762vw,3.2rem)
}
.p-404__btn {
  margin-block-start: clamp(5.6rem,4.709rem + 2.286vw,8rem)
}
.u-visually-hidden {
  block-size: 4px!important;
  border: none!important;
  contain: strict!important;
  display: block!important;
  inline-size: 4px!important;
  inset: 0!important;
  margin: 0!important;
  opacity: 0!important;
  padding: 0!important;
  pointer-events: none!important;
  position: fixed!important;
  visibility: visible!important
}
.u-inline-block {
  display: inline-block;
  font-weight: inherit
}
.u-manual-br {
  display: contents
}
.u-manual-br:lang(ja) {
  display: block flow-root
}
.u-manual-wbr {
  display: contents
}
.u-manual-wbr:lang(ja) {
  display: inline flow-root
}
.u-text {
  font-size: 1.4rem;
  line-height: var(--line-height-2dot1)
}
.u-text p + p {
  margin-block-start: 2.8rem
}
.u-text-base {
  font-size: clamp(1.4rem,1.326rem + .19vw,1.6rem)
}
.u-text-base p + p {
  margin-block-start: 2.6rem
}
.u-text-base-16 {
  font-size: 1.6rem
}
.u-text-base-16 p + p {
  margin-block-start: 2.4rem
}
.u-text-16 {
  font-size: 1.6rem
}
.u-text-16 p + p {
  margin-block-start: 2.9rem
}
.u-text-16-lh {
  font-size: 1.6rem;
  line-height: var(--line-height-2dot1)
}
.u-text-16-lh p + p {
  margin-block-start: 3.8rem
}
.u-text-small {
  color: var(--gray);
  font-size: 1.2rem
}
.u-color-white {
  color: var(--white)
}
@media (any-hover:hover) {
  a:hover {
    cursor: pointer;
    text-decoration: none
  }
  .l-footer__logo a:hover {
    opacity: .6
  }
  .l-footer__banner--link:hover {
    opacity: .6
  }
  .l-footer__sns--item:hover {
    opacity: .6
  }
  .l-footer__bottom--links a:hover {
    opacity: .6
  }
  .l-header__logo:hover {
    opacity: .6
  }
  .l-header__link:hover {
    opacity: .6
  }
  .l-header__item--has-submenu:hover .l-header__submenu {
    opacity: 1;
    transform: translateY(0);
    visibility: visible
  }
  .l-header__submenu--mainLink:hover {
    opacity: .6
  }
  .l-header__submenu--card:hover {
    opacity: .6
  }
  .l-header__submenu--card:hover::after {
    scale: 1.06
  }
  .l-header__sns--item:hover {
    opacity: .6
  }
  .l-nav__link:hover {
    opacity: .6
  }
  .l-nav__submenu a:hover {
    opacity: .6
  }
  .l-breadcrumb__list a:hover {
    color: var(--border-gray)
  }
  .c-btn:hover span::after {
    transform: scale(1,1);
    transform-origin: left top
  }
  .c-btn:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .c-btn:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .c-btn--return:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(-10px) scaleX(-1)
  }
  .c-btn--return:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0) scaleX(-1)
  }
  .c-line-btn:hover {
    background: var(--white);
    color: var(--text-color)
  }
  .c-line-btn:hover .c-line-btn__arrowWrap,
  .c-line-btn:hover .c-line-btn__iconWrap {
    border-color: var(--text-color)
  }
  .c-line-btn:hover .c-line-btn__arrow {
    color: var(--text-color);
    opacity: 0;
    transform: translateX(10px)
  }
  .c-line-btn:hover .c-line-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .c-line-btn:hover .c-line-btn__linkIcon {
    border-color: var(--text-color)
  }
  .c-line-btn:hover .c-line-btn__linkIcon svg {
    color: var(--text-color);
    scale: 1.1
  }
  .c-line-btn.--no-hover:hover {
    background: inherit;
    color: inherit
  }
  .c-line-btn.--no-hover:hover .c-line-btn__arrowWrap,
  .c-line-btn.--no-hover:hover .c-line-btn__iconWrap {
    border-color: inherit
  }
  .c-line-btn.--no-hover:hover .c-line-btn__arrow {
    color: inherit;
    opacity: inherit;
    transform: inherit
  }
  .c-line-btn.--no-hover:hover .c-line-btn__arrow.--hover {
    opacity: inherit;
    transform: inherit
  }
  .c-line-btn.--no-hover:hover .c-line-btn__linkIcon {
    border-color: inherit
  }
  .c-line-btn.--no-hover:hover .c-line-btn__linkIcon svg {
    color: inherit;
    scale: inherit
  }
  .c-line-btn.--blue:hover {
    background: var(--white);
    color: var(--accent-color-blue)
  }
  .c-line-btn.--blue:hover .c-line-btn__arrowWrap,
  .c-line-btn.--blue:hover .c-line-btn__iconWrap {
    border-color: var(--accent-color-blue)
  }
  .c-line-btn.--blue:hover .c-line-btn__arrow {
    color: var(--accent-color-blue)
  }
  .c-line-btn.--blue:hover .c-line-btn__linkIcon {
    border-color: var(--accent-color-blue)
  }
  .c-line-btn.--blue:hover .c-line-btn__linkIcon svg {
    color: var(--accent-color-blue)
  }
  .c-line-btn.--text:hover {
    background: var(--text-color);
    color: var(--white)
  }
  .c-line-btn.--text:hover .c-line-btn__arrowWrap,
  .c-line-btn.--text:hover .c-line-btn__iconWrap {
    border-color: var(--white)
  }
  .c-line-btn.--text:hover .c-line-btn__arrow {
    color: var(--white)
  }
  .c-line-btn.--text:hover .c-line-btn__linkIcon {
    border-color: var(--white)
  }
  .c-line-btn.--text:hover .c-line-btn__linkIcon svg {
    color: var(--white)
  }
  .c-line-btn.--bg-text:hover {
    background: var(--white);
    color: var(--text-color)
  }
  .c-line-btn.--bg-text:hover .c-line-btn__linkIcon {
    border-color: var(--text-color)
  }
  .c-line-btn.--bg-text:hover .c-line-btn__linkIcon svg {
    color: var(--text-color)
  }
  .c-small-btn:hover {
    background: var(--white);
    color: var(--text-color)
  }
  .c-small-btn:hover .c-small-btn__arrow {
    color: var(--text-color);
    opacity: 0;
    transform: translateX(10px)
  }
  .c-small-btn:hover .c-small-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .c-small-btn:hover .c-small-btn__linkIcon {
    border-color: var(--text-color)
  }
  .c-small-btn:hover .c-small-btn__linkIcon svg {
    color: var(--text-color);
    scale: 1.1
  }
  .c-card__link:hover {
    opacity: .6
  }
  .c-card__link:hover .c-card__thumbnail img {
    scale: 1.04
  }
  .c-card__link:hover .c-card__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .c-card__link:hover .c-card__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .c-hero-link:hover::after {
    scale: 1.02
  }
  .c-hero-link:hover .c-btn span::after {
    transform: scale(1,1);
    transform-origin: left top
  }
  .c-hero-link:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .c-hero-link:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .c-pagination__item a:hover {
    background: var(--text-color);
    color: var(--white)
  }
  .c-side-menu__link:hover {
    opacity: .6
  }
  .c-external-link:hover {
    opacity: .6
  }
  .c-link__limitText:hover {
    background: var(--text-color);
    color: var(--white)
  }
  .c-link__limitText:hover span::after {
    background: var(--white)
  }
  .p-conDire-single__content .c-link-card__link:hover,
  .p-corporate-single__content .c-link-card__link:hover,
  .p-news-single__content .c-link-card__link:hover {
    opacity: .6
  }
  .p-about-menu__link:hover {
    opacity: .6
  }
  .p-about-books__link:hover {
    background: var(--white)
  }
  .p-about-books__link:hover span {
    color: var(--accent-color-blue)
  }
  .p-about-books__link:hover .p-about-books__link--icon {
    color: var(--accent-color-blue);
    scale: 1.1
  }
  .p-conDire__item:has(.p-conDire__btn:hover) .p-conDire__thumbnail img {
    scale: 1.04
  }
  .p-conDire__btn:hover {
    background: var(--text-color)
  }
  .p-conDire__btn:hover .p-conDire__btnText {
    color: var(--white)
  }
  .p-conDire__btn:hover .p-conDire__btnIcon {
    color: var(--white)
  }
  .swiper-button-next.p-conSemi-voice__swiper-button-next:hover .c-btn__arrow,
  .swiper-button-prev.p-conSemi-voice__swiper-button-prev:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .swiper-button-next.p-conSemi-voice__swiper-button-next:hover .c-btn__arrow.--hover,
  .swiper-button-prev.p-conSemi-voice__swiper-button-prev:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-corporate__link:hover {
    opacity: .6
  }
  .p-corporate__link:hover .p-corporate__img img {
    scale: 1.04
  }
  .p-membership-list__item a:hover {
    opacity: .6
  }
  .p-donate-how__tag:hover {
    background: var(--text-color);
    color: var(--white)
  }
  .p-greeting__link:hover:focus-visible {
    background: var(--white);
    color: var(--accent-color-blue)
  }
  .p-greeting__link:hover:focus-visible .p-greeting__link__arrow {
    color: var(--accent-color-blue);
    opacity: 0;
    transform: translateX(10px)
  }
  .p-greeting__link:hover:focus-visible .p-greeting__link__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-index-topics__link:hover {
    opacity: .6
  }
  .p-index-topics__link:hover .p-index-topics__img img {
    scale: 1.02
  }
  .p-index-topics__link:hover .c-btn span::after {
    transform: scale(1,1);
    transform-origin: left top
  }
  .p-index-topics__link:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .p-index-topics__link:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-index-news .p-tabPost__tab:not([aria-selected=true]):hover {
    background: var(--border-gray);
    color: var(--white)
  }
  .p-news__menu--link:not(.is-current):hover {
    background: var(--border-gray);
    color: var(--white)
  }
  .p-news-single__category:hover {
    background: var(--text-color);
    border-color: var(--text-color);
    color: var(--white)
  }
  .p-mail__input--wrapper input[type=email]:hover {
    border: 2px solid oklch(60% .4 240deg)
  }
  .p-mail__submit:hover .p-mail__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .p-mail__submit:hover .p-mail__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-step__link:hover .p-step__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .p-step__link:hover .p-step__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-step__link.--blue:hover {
    background-color: var(--white);
    color: var(--accent-color-blue)
  }
  .p-step__link.--blue:hover .p-step__large,
  .p-step__link.--blue:hover .p-step__small {
    color: var(--accent-color-blue)
  }
  .p-step__link.--blue:hover .p-step__arrow {
    color: var(--accent-color-blue)
  }
  .p-step__link.--blue:hover .p-step__arrowWrap {
    border-color: var(--accent-color-blue)
  }
  .p-step__link.--yellow:hover {
    background-color: var(--white);
    color: var(--accent-color-yellow)
  }
  .p-step__link.--yellow:hover .p-step__large,
  .p-step__link.--yellow:hover .p-step__small {
    color: var(--accent-color-yellow)
  }
  .p-step__link.--yellow:hover .p-step__arrow {
    color: var(--accent-color-yellow)
  }
  .p-step__link.--yellow:hover .p-step__arrowWrap {
    border-color: var(--accent-color-yellow)
  }
  .p-step__link.--green:hover {
    background-color: var(--white);
    color: var(--accent-color-green)
  }
  .p-step__link.--green:hover .p-step__large,
  .p-step__link.--green:hover .p-step__small {
    color: var(--accent-color-green)
  }
  .p-step__link.--green:hover .p-step__arrow {
    color: var(--accent-color-green)
  }
  .p-step__link.--green:hover .p-step__arrowWrap {
    border-color: var(--accent-color-green)
  }
  .p-step__link.--purple:hover {
    background-color: var(--white);
    color: var(--accent-color-purple)
  }
  .p-step__link.--purple:hover .p-step__large,
  .p-step__link.--purple:hover .p-step__small {
    color: var(--accent-color-purple)
  }
  .p-step__link.--purple:hover .p-step__arrow {
    color: var(--accent-color-purple)
  }
  .p-step__link.--purple:hover .p-step__arrowWrap {
    border-color: var(--accent-color-purple)
  }
  .p-start-cta__link:hover::after {
    scale: 1.02
  }
  .p-start-cta__link:hover .c-line-btn {
    background: var(--white);
    color: var(--text-color)
  }
  .p-start-cta__link:hover .c-line-btn .c-line-btn__arrowWrap {
    border-color: var(--text-color)
  }
  .p-start-cta__link:hover .c-line-btn .c-line-btn__arrow {
    color: var(--text-color);
    opacity: 0;
    transform: translateX(10px)
  }
  .p-start-cta__link:hover .c-line-btn .c-line-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-start-cta__link:hover .c-line-btn .c-line-btn__linkIcon {
    border-color: var(--text-color)
  }
  .p-start-cta__link:hover .c-line-btn .c-line-btn__linkIcon svg {
    color: var(--text-color)
  }
  .p-cta__link:hover::after {
    scale: 1.02
  }
  .p-cta__link:hover .c-line-btn {
    background: var(--white);
    color: var(--text-color)
  }
  .p-cta__link:hover .c-line-btn .c-line-btn__linkIcon {
    border-color: var(--text-color)
  }
  .p-cta__link:hover .c-line-btn .c-line-btn__linkIcon svg {
    color: var(--text-color);
    scale: 1.1
  }
  .p-support-method__link:hover {
    opacity: .6
  }
  .p-support-method__link:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .p-support-method__link:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-support-method__link:hover .p-support-method__linkIcon svg {
    scale: 1.1
  }
  .p-esd-project .p-tabPost__tab:not([aria-selected=true]):hover {
    border-color: var(--border-gray)
  }
  .p-team-director__link:hover {
    opacity: .6
  }
  .p-conDire-single__content p a:hover,
  .p-corporate-single__content p a:hover,
  .p-news-single__content p a:hover {
    opacity: .6
  }
}
@media (pointer:coarse) {
  a[href^="tel:"] {
    pointer-events: auto
  }
}
@media (prefers-reduced-motion:reduce) {
  *,
  ::after,
  ::backdrop,
  ::before {
    animation-delay: 0s!important;
    animation-duration: 1ms!important;
    animation-iteration-count: 1!important;
    background-attachment: scroll!important;
    scroll-behavior: auto!important;
    transition-delay: 0s!important;
    transition-duration: 1ms!important
  }
  .p-loop__track {
    animation: none;
    transform: none;
    translate: 0
  }
}
@media (scripting:none) {
  .c-loading {
    display: none
  }
}
@media (any-hover:hover) and (any-hover:hover) {
  .p-greeting__link:hover:hover {
    background: var(--white);
    color: var(--accent-color-blue)
  }
  .p-greeting__link:hover:hover .p-greeting__link__arrow {
    color: var(--accent-color-blue);
    opacity: 0;
    transform: translateX(10px)
  }
  .p-greeting__link:hover:hover .p-greeting__link__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
}
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-width:768px) {
  .c-heading__tate,
  ::i-block-chrome {
    letter-spacing: 0;
    white-space: nowrap
  }
}
@media (min-width:420px) {
  .p-conSemi__img:nth-child(7) {
    bottom: 20px
  }
}
@media screen and (min-width:576px) {
  .l-nav__submenu .l-nav__separator {
    display: inline
  }
  .l-nav__submenu .l-nav__separator::before {
    content: "・"
  }
  .l-nav__submenu .l-nav__separator-none {
    display: inline
  }
  .l-nav__submenu--zen {
    margin-inline-start: 0
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__img,
  .p-consume-consider__item:nth-child(3) .p-consume-consider__img,
  .p-consume-consider__item:nth-child(5) .p-consume-consider__img {
    margin-inline-start: -82px
  }
  .p-findOut-header__headWrap {
    flex-direction: row
  }
  .p-findOut-illust__img {
    grid-template-columns: repeat(6,1fr)
  }
  .p-parts-conSemi__stats {
    align-items: center;
    flex-direction: row
  }
  .p-parts-conSemi__stat--line {
    background: var(--border-gray);
    block-size: 80px;
    display: block;
    inline-size: 1px;
    position: relative
  }
}
@media screen and (min-width:768px) {
  .l-footer__logo {
    margin-inline: revert
  }
  .l-footer__logo a {
    grid-area: logo
  }
  .l-footer__menuWrap {
    grid-area: menu
  }
  .l-footer__linkWrap {
    display: contents
  }
  .l-footer__banner--link {
    align-self: end;
    grid-area: banner
  }
  .l-footer__banner--img {
    inline-size: 218px
  }
  .l-footer__banner--text {
    font-size: 1rem;
    margin-inline: auto
  }
  .l-footer__sns {
    align-self: end;
    grid-area: sns;
    justify-content: flex-end
  }
  .l-footer__sns--item {
    font-size: 1.2rem
  }
  .l-footer__bottom {
    align-items: center;
    flex-direction: row;
    grid-area: bottom;
    justify-content: space-between;
    margin-block-start: 40px
  }
  .l-footer__bottom--links {
    justify-content: flex-start
  }
  .l-footer__copyright {
    text-align: right
  }
  .l-header__logo {
    margin-block-start: 0
  }
  .l-inner {
    max-inline-size: 1200px;
    padding-inline: 40px
  }
  .l-nav__wrap:not(:first-child) {
    margin-block-start: 40px
  }
  .l-nav__lists {
    max-inline-size: 300px
  }
  .l-nav__icon {
    block-size: 18px;
    inline-size: 18px
  }
  .l-nav__submenu {
    gap: 4px;
    margin-block-start: 8px
  }
  .l-nav__submenu a {
    font-size: 1.2rem;
    line-height: var(--line-height-base)
  }
  .l-lower-page::after {
    opacity: var(--after-opacity,.8);
    right: -135px;
    top: -185px
  }
  .l-lower-page__esd-program {
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between
  }
  .l-lower-page__esd-program .l-breadcrumb {
    padding-block-end: 16px
  }
  .l-flex {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .c-accordion__summary {
    line-height: var(--line-height-2dot1);
    padding: 24px 64px 24px 40px
  }
  .c-accordion__summary::after,
  .c-accordion__summary::before {
    right: 40px;
    top: calc(50% - 4px)
  }
  .c-accordion__content .is-a {
    margin-inline-start: 40px
  }
  .c-accordion__content > p {
    max-inline-size: 88.7%
  }
  .c-line-btn {
    max-inline-size: 442px;
    padding: 16px 24px 17px
  }
  .c-line-btn.--small {
    padding: 16px 24px 18px
  }
  .c-line-btn.--blue {
    padding: 10px 13px 13px
  }
  .c-line-btn.--text {
    padding: 11px 14px 12px 38px
  }
  .c-line-btn.--text.--pd {
    padding: 11px 14px 12px 55px
  }
  .c-small-btn {
    padding: 2px 20px 4px
  }
  .c-card:not(:last-child) {
    border-block-end: none;
    padding-block-end: 0
  }
  .c-card__link {
    flex-direction: row;
    justify-content: space-between;
    max-inline-size: none
  }
  .c-card__body {
    gap: 8px
  }
  .c-card__categories {
    margin-block-start: 4px
  }
  .c-card__thumbnail {
    max-inline-size: 202px
  }
  .c-card__arrowWrap {
    display: block;
    inline-size: 13px;
    order: 3;
    position: relative
  }
  .c-enTitle-wrap {
    gap: 24px
  }
  .c-enTitle-wrap.--row {
    align-items: revert;
    flex-direction: column;
    gap: 0
  }
  .c-enTitle.--lh-1dot1 {
    line-height: var(--line-height-1dot5)
  }
  .c-lower-title--en {
    padding-inline-start: 56px
  }
  .c-lower-title__subJa {
    line-height: 1
  }
  .c-heading__tateWrap {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    align-items: flex-start;
    justify-content: left
  }
  .c-heading__tate {
    letter-spacing: .24em
  }
  .c-heading__tate.--big {
    letter-spacing: .12em
  }
  _::-webkit-full-page-media,
  _:future,
  :root .c-heading__tate {
    letter-spacing: 0;
    white-space: nowrap
  }
  .c-numTitle__header {
    gap: 0
  }
  .c-numTitle__header.--support {
    flex-direction: column;
    gap: 0
  }
  .c-numTitle__subTitle span {
    display: block;
    line-height: 1;
    margin-block-start: 4px
  }
  .c-numTitle__subTitle span.is-inline {
    display: inline;
    line-height: var(--line-height-1dot5)
  }
  .c-hero-link__inner {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .c-check-icon {
    inline-size: 34px
  }
  .c-check-icon::after {
    inline-size: 28px;
    top: 1px
  }
  .p-conDire-single__content .c-link-card__link,
  .p-corporate-single__content .c-link-card__link,
  .p-news-single__content .c-link-card__link {
    flex-direction: row-reverse;
    justify-content: space-between
  }
  .p-conDire-single__content .c-link-card__image,
  .p-corporate-single__content .c-link-card__image,
  .p-news-single__content .c-link-card__image {
    aspect-ratio: 245/185;
    max-inline-size: 245px;
    min-height: 185px
  }
  .p-conDire-single__content .c-link-card__textWrap,
  .p-corporate-single__content .c-link-card__textWrap,
  .p-news-single__content .c-link-card__textWrap {
    margin: 32px 0 32px 24px
  }
  .p-conDire-single__content .c-link-card__title,
  .p-corporate-single__content .c-link-card__title,
  .p-news-single__content .c-link-card__title {
    -webkit-line-clamp: 1;
    block-size: min(100%,1lh)
  }
  .p-conDire-single__content .c-link-card__excerpt,
  .p-corporate-single__content .c-link-card__excerpt,
  .p-news-single__content .c-link-card__excerpt {
    font-size: 1.2rem
  }
  .p-conDire-single__content .c-link-card__url,
  .p-corporate-single__content .c-link-card__url,
  .p-news-single__content .c-link-card__url {
    font-size: 1.2rem
  }
  .p-about-menu__contents {
    flex-direction: row;
    justify-content: space-between
  }
  .p-about-menu__link {
    max-inline-size: 272px;
    padding: 0 12px 19px
  }
  .p-about-history {
    background-image: url(../img/about/history-bg.jpg)
  }
  .p-about-history__text {
    margin-block-start: 45px;
    max-inline-size: 640px
  }
  .p-about-team:before {
    aspect-ratio: 1;
    background: var(--circle-yellow);
    border-radius: calc(infinity * 1px);
    content: "";
    filter: blur(90px);
    inline-size: clamp(20.5rem,5.829rem + 37.619vw,60rem);
    left: -180px;
    opacity: .8;
    position: absolute;
    top: -200px
  }
  .p-about-team__text {
    flex: 0 1 44.28%;
    margin-block-start: 45px
  }
  .p-about-overview__item {
    display: grid;
    grid-template-columns: 120px 1fr;
    justify-content: space-between;
    padding: 40px 48px
  }
  .p-about-overview__item.--column {
    gap: 0;
    grid-template-columns: 120px 1fr
  }
  .p-about-overview__nameItem {
    padding: 40px 48px
  }
  .p-about-overview__nameList {
    grid-template-columns: 120px 1fr
  }
  .p-about-books__items {
    grid-template-columns: repeat(3,1fr);
    justify-content: space-between
  }
  .p-about-books__info {
    gap: 4px
  }
  .p-about-books__link {
    padding: 2px 22px 4px
  }
  .p-about-books__link span {
    line-height: var(--line-height-2dot1)
  }
  .p-conDire-header__text {
    flex: 1;
    max-inline-size: 640px
  }
  .p-conDire__lists {
    grid-template-columns: repeat(auto-fit,minmax(256px,1fr));
    row-gap: 80px;
    -moz-column-gap: 32px;
    column-gap: 32px
  }
  .p-conDire__thumbnail {
    aspect-ratio: 256/190
  }
  .p-conDire__lead {
    -webkit-line-clamp: 3;
    block-size: min(100%,3lh)
  }
  .p-conDire__btn {
    padding: 6px 9px 10px 16px
  }
  .p-conDire-single::after {
    right: -148px;
    top: -260px
  }
  .p-conDire-single__img {
    aspect-ratio: 534/396;
    inline-size: 47.68%
  }
  .p-conDire-single__profileTitle {
    padding: 12px 32px
  }
  .p-conDire-single__profileContent {
    border: 3px solid
  }
  .p-group-header__text {
    flex: 0 1 76%
  }
  .p-group-merit__inner {
    gap: 16px
  }
  .p-group-merit__frame::before {
    -webkit-mask-image: url(../img/group/frame.svg);
    mask-image: url(../img/group/frame.svg)
  }
  .p-group-merit__textWrap {
    gap: 19px;
    max-inline-size: 952px;
    padding-block: 16px 24px
  }
  .p-group-merit__list {
    gap: 16px
  }
  .p-group-community__titleWrap {
    margin-inline: 0
  }
  .p-group-community__icon {
    top: -54px
  }
  .p-group-community__icon.--02 {
    top: -39px
  }
  .p-conSemi {
    block-size: 1038px;
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1920px
  }
  .p-conSemi::before {
    left: -177px;
    top: -253px
  }
  .p-conSemi::after {
    right: -154px;
    top: -55px
  }
  .p-conSemi__inner::after {
    bottom: 151px;
    left: 403px
  }
  .p-conSemi__title {
    line-height: var(--line-height-1dot5);
    margin-block-start: -8px
  }
  .p-conSemi__img:nth-child(1) {
    aspect-ratio: 332/246;
    left: 86px;
    top: -57px
  }
  .p-conSemi__img:nth-child(2) {
    aspect-ratio: 291/191;
    right: -20px;
    top: 32px
  }
  .p-conSemi__img:nth-child(3) {
    left: 528px;
    top: 75px
  }
  .p-conSemi__img:nth-child(4) {
    aspect-ratio: 214/264;
    right: 382px;
    top: 202px
  }
  .p-conSemi__img:nth-child(5) {
    aspect-ratio: 248/185;
    left: 376px;
    top: 476px
  }
  .p-conSemi__img:nth-child(6) {
    aspect-ratio: 236/313;
    bottom: 246px;
    left: -32px
  }
  .p-conSemi__img:nth-child(7) {
    aspect-ratio: 332/246;
    bottom: 280px;
    right: 173px
  }
  .p-conSemi__loopContents {
    margin-block-start: -234px
  }
  .p-conSemi-header {
    margin-block-start: -86px
  }
  .p-conSemi-directory .p-parts-directory {
    padding-block: clamp(10rem,6.063rem + 10.095vw,20.6rem) 126px
  }
  .p-conSemi-voice__card {
    border-radius: 1000px;
    padding: 40px 88px
  }
  .p-conSemi-voice__card::before {
    bottom: 7px;
    left: revert;
    right: 32%
  }
  .p-conSemi-voice__swiper-button-prev {
    left: 8.6805555556vw
  }
  .p-conSemi-voice__swiper-button-next {
    right: 8.6805555556vw
  }
  .p-connect-header__text {
    flex: 1;
    max-inline-size: 600px
  }
  .p-connect-group {
    background-image: url(../img/connect/connect-bg.jpg)
  }
  .p-connect-group__text {
    margin-block-start: 43px;
    max-inline-size: 600px
  }
  .p-connect-director {
    margin-block-start: 0
  }
  .p-consume-header__text {
    flex: 1;
    max-inline-size: 640px
  }
  .p-consume-consider__inner {
    inline-size: 100vw;
    margin-inline: calc(50% - 50vw)
  }
  .p-consume-consider__contents {
    margin-inline: auto
  }
  .p-consume-consider__item:nth-child(1),
  .p-consume-consider__item:nth-child(3),
  .p-consume-consider__item:nth-child(5) {
    margin-inline-start: -100px
  }
  .p-consume-consider__item:nth-child(2),
  .p-consume-consider__item:nth-child(4) {
    margin-inline-end: -193px
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__textWrap {
    margin-inline-start: 0
  }
  .p-consume-casestudy {
    margin-block-start: 120px
  }
  .p-consume-casestudy__titleWrap {
    align-items: baseline;
    flex-direction: row;
    gap: 24px
  }
  .p-consume-casestudy__mainTitle {
    line-height: var(--line-height-1dot5)
  }
  .p-consume-casestudy__items {
    gap: 28px
  }
  .p-consume-casestudy__item {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-consume-casestudy__body {
    flex: 0 1 65%
  }
  .p-consume-casestudy__badge {
    padding: 4px 24px 6px
  }
  .p-consume-casestudy__point {
    gap: 16px
  }
  .p-contact-attention__text {
    max-inline-size: 976px
  }
  .p-contact-qa {
    margin-block-start: 0
  }
  .p-contact-qa__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-contact-qa__lists {
    flex: 1;
    gap: 18px;
    max-inline-size: 832px
  }
  .p-contact-qa__lists .c-accordion__answer p {
    padding: 5px 27px 15px 26px
  }
  .p-contact-qa__lists .c-accordion__answer p {
    max-inline-size: 94%
  }
  .p-contact-qa__lists .c-small-btn {
    margin-block-start: 10px;
    padding: 2px 16px 2px
  }
  .p-donate-how__btn--info {
    font-size: 1.4rem
  }
  .p-corporate__lists {
    grid-template-columns: repeat(2,1fr)
  }
  .p-corporate__item:not(:last-child) {
    border-block-end: none;
    padding-block-end: 0
  }
  .p-corporate-list__contents {
    grid-template-areas: "title . btn" "slider slider slider";
    grid-template-columns: 1fr auto auto;
    grid-template-rows: auto auto
  }
  .p-corporate-list__btn {
    place-content: flex-end
  }
  .p-corporate-list__lists {
    inline-size: 100vw;
    margin-inline: calc(50% - 50vw);
    overflow: visible;
    position: relative
  }
  .p-corporate-list__swiper {
    overflow: visible
  }
  .p-corporate-list__swiper-slide:not(:last-child) {
    border-block-end: none;
    padding-block-end: 0
  }
  .p-corporate-list__swiper-button-prev {
    left: 8.6805555556vw;
    rotate: 180deg
  }
  .p-corporate-list__swiper-button-next {
    right: 8.6805555556vw
  }
  .swiper-button-next.p-corporate-list__swiper-button-next,
  .swiper-button-prev.p-corporate-list__swiper-button-prev {
    aspect-ratio: 1;
    background: rgba(170,170,170,.2);
    block-size: 56px;
    border-radius: calc(infinity * 1px);
    color: var(--gray);
    display: block;
    display: grid;
    inline-size: 56px;
    overflow: hidden;
    place-content: center;
    position: absolute;
    top: 50%;
    translate: 0 -50%
  }
  .swiper-button-next.p-corporate-list__swiper-button-next .c-swiper__arrowWrap,
  .swiper-button-prev.p-corporate-list__swiper-button-prev .c-swiper__arrowWrap {
    aspect-ratio: 23/20;
    inline-size: 23px;
    overflow: hidden;
    position: relative
  }
  .swiper-button-next.p-corporate-list__swiper-button-next .c-btn__arrow,
  .swiper-button-prev.p-corporate-list__swiper-button-prev .c-btn__arrow {
    color: var(--light-gray);
    left: 0;
    position: absolute;
    top: 0;
    transition: opacity var(--hover-transition) ease-in-out,transform var(--hover-transition) ease-in-out
  }
  .swiper-button-next.p-corporate-list__swiper-button-next .c-btn__arrow.--hover,
  .swiper-button-prev.p-corporate-list__swiper-button-prev .c-btn__arrow.--hover {
    opacity: 0;
    transform: translateX(-10px)
  }
  .swiper-button-next.p-corporate-list__swiper-button-next:focus-visible .c-btn__arrow,
  .swiper-button-prev.p-corporate-list__swiper-button-prev:focus-visible .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .swiper-button-next.p-corporate-list__swiper-button-next:focus-visible .c-btn__arrow.--hover,
  .swiper-button-prev.p-corporate-list__swiper-button-prev:focus-visible .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
  .p-membership-header__text {
    flex: 1;
    max-inline-size: 520px
  }
  .p-membership-benefits__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-membership-benefits__wrap {
    align-items: flex-end;
    flex-direction: row;
    gap: 16px
  }
  .p-membership-benefits__body {
    flex-direction: row;
    justify-content: space-between
  }
  .p-membership-benefits__imgWrap {
    gap: 20px
  }
  .p-membership-benefits__img {
    aspect-ratio: 328/222;
    inline-size: 328px
  }
  .p-membership-benefits__list {
    padding: 24px 24px 24px 61px
  }
  .p-membership-benefits__list::before {
    inline-size: 26px;
    left: 22px;
    top: 23px
  }
  .p-membership-benefits__list p {
    line-height: var(--line-height-base)
  }
  .p-membership-list__contents {
    block-size: 275px;
    padding: 40px 40px 48px 40px
  }
  .p-membership-list__items {
    grid-template-columns: repeat(2,minmax(271px,1fr));
    -moz-column-gap: clamp(3.2rem,1.306rem + 4.857vw,8.3rem);
    column-gap: clamp(3.2rem,1.306rem + 4.857vw,8.3rem);
    row-gap: 8px
  }
  .p-membership-list__item {
    font-size: 1.2rem;
    min-inline-size: 240px
  }
  .p-donate-header__text {
    flex: 1;
    max-inline-size: 600px
  }
  .p-donate-header__text {
    max-inline-size: 53.57%
  }
  .p-donate-actions__inner {
    gap: 49px
  }
  .p-donate-actions__title span {
    display: inline;
    margin-block-start: 0
  }
  .p-donate-how__items {
    display: grid;
    grid-template-columns: repeat(2,1fr)
  }
  .p-donate-how__tags {
    row-gap: 15px
  }
  .p-donate-how__tag {
    padding: 0 22px 1px
  }
  .p-donate-how__info {
    margin-block-start: 11px
  }
  .p-ethicalSupp-header__text {
    flex: 1;
    max-inline-size: 600px
  }
  .p-ethicalSupp-header__text {
    max-inline-size: 53.57%
  }
  .p-ethicalSupp-benefits__items {
    align-items: stretch;
    block-size: 100%;
    flex-direction: row
  }
  .p-ethicalSupp-benefits__item {
    gap: 16px;
    padding: 40px
  }
  .p-findOut-header__headWrap {
    flex-direction: column
  }
  .p-findOut-header__text {
    max-inline-size: 514px
  }
  .p-findOut-illust__img {
    display: flex;
    flex-direction: column;
    gap: clamp(2rem,.96rem + 2.667vw,4.8rem)
  }
  .p-findOut-illust__img .row-1,
  .p-findOut-illust__img .row-4 {
    display: flex;
    flex-wrap: nowrap;
    gap: clamp(2rem,.96rem + 2.667vw,4.8rem);
    justify-content: center
  }
  .p-findOut-illust__img .row-2,
  .p-findOut-illust__img .row-3 {
    display: flex;
    flex-wrap: nowrap;
    gap: clamp(2rem,.96rem + 2.667vw,4.8rem);
    justify-content: center
  }
  .p-findOut-tips__tagsWrap {
    inline-size: calc(100% - 80px)
  }
  .p-findOut-tips__tags.--01 {
    max-inline-size: 100%
  }
  .p-findOut-tips__tags.--02 {
    margin-block-start: 0
  }
  .p-government__item {
    max-inline-size: 894px
  }
  .p-government__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-government__textWrap {
    max-inline-size: 480px
  }
  .p-government__img {
    aspect-ratio: 346/400;
    inline-size: 36.4583333333vw;
    max-inline-size: 346px
  }
  .p-government__linkWrap {
    gap: 14px;
    padding: 24px 40px 32px
  }
  .p-greeting {
    margin-block-end: clamp(6.4rem,3.577rem + 7.238vw,14rem)
  }
  .p-greeting.--conSemi::before {
    block-size: 63%
  }
  .p-greeting::before {
    block-size: 56%;
    bottom: 0;
    top: revert
  }
  .p-greeting__img {
    aspect-ratio: 385/560;
    flex-shrink: 0;
    inline-size: 100%;
    max-inline-size: 385px
  }
  .p-history-header__text {
    flex: 1;
    max-inline-size: 560px;
    min-inline-size: 380px
  }
  .p-history-header__text-full {
    margin-block-start: 38px
  }
  .p-history-timeline__card {
    padding: 24px 32px
  }
  .p-history-timeline__text.--book {
    max-inline-size: 100%
  }
  .p-history-timeline__img {
    aspect-ratio: 391/263
  }
  .p-history-timeline__bookImg {
    right: 70px;
    top: 50%
  }
  .p-history-footer::after {
    left: -267px;
    top: 50%;
    translate: 0 -50%
  }
  .p-history-footer__contents {
    margin-inline-start: 60px
  }
  .p-history-footer__text {
    max-inline-size: 637px
  }
  .p-index-fv::after {
    right: -220px;
    top: 69px
  }
  .p-index-fv__contents {
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between
  }
  .p-index-fv__subTitle {
    text-align: right
  }
  .p-index-topics__text {
    -webkit-line-clamp: 4;
    line-clamp: 4
  }
  .p-index-topics__btn {
    justify-content: flex-end
  }
  .p-index-about__img {
    aspect-ratio: 387/500;
    border-radius: 8px;
    max-inline-size: 387px
  }
  .p-index-about__img:nth-child(3) {
    right: 37px
  }
  .p-index-directory .p-parts-directory {
    padding-block: clamp(12rem,7.543rem + 11.429vw,24rem) 160px
  }
  .p-index-news {
    padding-block: clamp(6.4rem,4.914rem + 3.81vw,10.4rem) 0
  }
  .p-index-news__contents {
    align-items: flex-start;
    flex-direction: row;
    gap: 48px;
    justify-content: space-between
  }
  .p-index-news__menuWrap {
    max-inline-size: 265px
  }
  .p-index-news .p-tabPost__tabContents {
    flex: 1;
    inline-size: 100%;
    max-inline-size: 736px;
    min-height: 730px
  }
  .p-index-news .p-tabPost__tabList {
    flex-direction: column;
    inline-size: -moz-fit-content;
    inline-size: fit-content;
    left: 40px;
    position: absolute;
    top: 204px
  }
  .p-index-news .p-tabPost__tab {
    font-size: 1.2rem
  }
  .p-index-news .p-tabPost__tabpanelWrapper {
    margin-block-start: 0
  }
  .p-index-news .p-tabPost__cards {
    grid-template-columns: repeat(2,1fr);
    max-width: 1120px;
    -moz-column-gap: 28px;
    column-gap: 28px;
    row-gap: 44px
  }
  .p-loop {
    --item-w: 21rem
  }
  .p-loop.--illust {
    --item-w: 72px;
    --gap: 4rem
  }
  .p-loop.--seminar {
    --item-w: 260px
  }
  .p-pull-news__header {
    align-items: flex-end;
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-pull-news__titleWrap {
    flex-direction: column;
    gap: 0;
    padding-block-end: 20px
  }
  .p-pull-news__items.--news {
    -moz-column-gap: clamp(2.4rem,1.806rem + 1.524vw,4rem);
    column-gap: clamp(2.4rem,1.806rem + 1.524vw,4rem);
    row-gap: 24px
  }
  .p-news-single__headerWrap::after {
    right: -220px;
    top: -270px
  }
  .p-news-single__category {
    border-color: var(--border-gray);
    line-height: normal;
    padding: 4px 20px 5px 20px
  }
  .p-numCard.--esd .p-numCard__items {
    gap: 40px;
    max-inline-size: 920px
  }
  .p-numCard.--esd .p-numCard__img {
    aspect-ratio: 44/26
  }
  .p-numCard__inner {
    flex-direction: row;
    justify-content: space-between
  }
  .p-numCard__items {
    grid-template-columns: repeat(2,1fr);
    max-inline-size: 968px
  }
  .p-numCard__item {
    gap: 2px
  }
  .p-numCard__img {
    aspect-ratio: 44/26
  }
  .p-numCard__tateWrap {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    align-items: flex-start;
    gap: 18px;
    justify-content: left
  }
  .p-numCard__tate {
    letter-spacing: .26em
  }
  .p-parts-conSemi__header {
    gap: 30px
  }
  .p-parts-conSemi__titleWrap {
    gap: 16px
  }
  .p-parts-conSemi__tag {
    padding: 2px 11px 3px
  }
  .p-parts-conSemi__stats.--text .p-parts-conSemi__stat--label {
    padding: 4px 24px
  }
  .p-parts-conSemi__stats.--text .p-parts-conSemi__stat--value .is-comma {
    margin-inline: -.16em -.02em
  }
  .p-parts-conSemi__enText {
    bottom: -8px
  }
  .p-parts-directory {
    padding-block: clamp(12rem,7.543rem + 11.429vw,24rem) 160px
  }
  .p-parts-directory__contents {
    max-inline-size: clamp(35.2rem,27.92rem + 18.667vw,54.8rem)
  }
  .p-directory__container {
    top: 0
  }
  .is-safari .p-directory__container {
    top: 0
  }
  .is-safari .p-conSemi-directory .p-directory__container {
    top: 0
  }
  .p-parts-government__inner {
    max-inline-size: 1360px
  }
  .p-parts-government__contents {
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between;
    max-inline-size: 1120px
  }
  .p-parts-government__items {
    gap: 24px
  }
  .p-parts-government__item:not(:first-child) {
    margin-inline-start: 0
  }
  .p-parts-government__name {
    block-size: 36px;
    line-height: 2.1;
    padding: 0 24px
  }
  .p-mail {
    border-radius: calc(infinity * 1px);
    margin-inline: 5.5555555556vw;
    max-inline-size: 1280px;
    padding-inline: 0
  }
  .p-mail::before {
    right: 194px;
    top: -38px
  }
  .p-mail::after {
    right: 106px;
    top: 3px
  }
  .p-mail__textWrap {
    max-inline-size: 540px
  }
  .p-mail__form {
    max-inline-size: 448px
  }
  .p-mail__input--wrapper input[type=email] {
    padding: 22px 16px 22px 24px
  }
  .p-parts-seminar__titleWrap {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px
  }
  .p-step__inner {
    max-inline-size: 1120px
  }
  .p-step__titleWrap {
    gap: 0
  }
  .p-step__title--en {
    line-height: var(--line-height-1dot5)
  }
  .p-step__list {
    grid-template-columns: repeat(2,1fr);
    row-gap: 22px
  }
  .p-photo {
    aspect-ratio: 1440/904
  }
  .p-photo__credit {
    bottom: 323px;
    color: var(--white)
  }
  .p-photo__credit {
    font-size: 1.2rem
  }
  .p-photo__credit.--seminar {
    bottom: 313px;
    color: var(--white)
  }
  .p-photo__credit.--history {
    bottom: 280px
  }
  .p-qa__contents {
    align-items: flex-start;
    background: var(--bg-light-cream);
    flex-direction: row-reverse;
    justify-content: space-between;
    padding: clamp(10.4rem,9.509rem + 2.286vw,12.8rem) clamp(2.4rem,1.323rem + 2.762vw,5.3rem) clamp(4.8rem,4.206rem + 1.524vw,6.4rem) clamp(2.4rem,1.137rem + 3.238vw,5.8rem)
  }
  .p-qa__badge {
    left: 0;
    padding: 10px 32px 10px 60px
  }
  .p-qa__items {
    flex: 1;
    inline-size: 100%;
    max-inline-size: 658px
  }
  .p-qa__profile {
    flex-direction: column
  }
  .p-qa__info {
    align-items: flex-end;
    flex-direction: row
  }
  .p-seminar-header__text {
    flex: 1;
    max-inline-size: 720px
  }
  .p-seminar-achieve__titleWrap {
    gap: 6px
  }
  .p-seminar-achieve__title {
    line-height: var(--line-height-1dot5)
  }
  .p-seminar-achieve__total--content {
    padding: 4px 45px 4px 52px
  }
  .p-seminar-achieve__total--number {
    font-size: 2.8rem
  }
  .p-seminar-achieve__info {
    margin-block-start: 0
  }
  .p-seminar-achieve__accordion {
    align-items: center;
    padding: 32px 40px 22px
  }
  .p-seminar-achieve__item--content {
    align-items: center;
    flex-direction: row;
    gap: 32px;
    justify-content: space-between
  }
  .p-seminar-achieve__item--number {
    text-align: right
  }
  .p-seminar-points__inner {
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-seminar-points__items {
    -moz-column-gap: 28px;
    column-gap: 28px;
    grid-template-columns: repeat(2,1fr)
  }
  .p-seminar-points__item {
    padding: 56px 24px 24px
  }
  .p-sitemap__nav .l-nav__item {
    max-inline-size: 400px
  }
  .p-sitemap__nav .l-nav__titleWrap {
    padding-block-end: 16px
  }
  .p-sitemap__nav .l-nav__title {
    gap: 8px
  }
  .p-sitemap__nav .l-nav__icon {
    block-size: 21px;
    inline-size: 21px
  }
  .p-sitemap__nav .l-nav__submenu a.is-external {
    padding-inline-end: 22px
  }
  .p-sitemap__nav .l-nav__submenu a.is-external::after {
    inline-size: 15px
  }
  .p-start-cta__link::after {
    background: url(../img/concierge-seminar/start-bg.jpg) no-repeat center center/cover
  }
  .p-start-cta__link.--contact::after {
    background: url(../img/common/start-bg.jpg) no-repeat center center/cover
  }
  .p-cta__link.--seminar::after {
    background: url(../img/seminar/flow-bg.jpg) no-repeat center center/cover
  }
  .p-cta__link.--support::after {
    background: url(../img/support/cta-bg.jpg) no-repeat center center/cover
  }
  .p-cta__title {
    line-height: var(--line-height-base)
  }
  .p-cta__text {
    text-align: center
  }
  .p-start-header__text {
    flex: 1;
    max-inline-size: 720px
  }
  .p-start-consume__items {
    grid-template-columns: repeat(3,1fr);
    margin-block-start: -16px;
    max-inline-size: 922px
  }
  .p-start-consume__item {
    align-items: center;
    flex-direction: column;
    max-inline-size: 224px
  }
  .p-start-consume__actionText {
    font-size: 16px
  }
  .p-start-consume__iconWrap.--04 .p-start-consume__icon:nth-child(1) {
    left: 41px;
    top: 32px
  }
  .p-start-consume__iconWrap.--04 .p-start-consume__icon:nth-child(2) {
    left: 83px;
    top: 74px
  }
  .p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(1) {
    left: 100px;
    top: 37px
  }
  .p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(2) {
    left: 53px;
    top: 84px
  }
  .p-start-consume__content {
    align-items: center;
    justify-content: center
  }
  .p-start-consume__itemTitle {
    text-align: center
  }
  .p-start-education__img {
    margin-inline: auto;
    max-inline-size: 500px
  }
  .p-support-method__link {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-support-method__body {
    align-items: center;
    flex-direction: row;
    justify-content: space-between
  }
  .p-support-qa__inner {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-support-qa__lists {
    gap: 18px;
    max-inline-size: 74.29%
  }
  .p-esd-header__text {
    flex: 1;
    max-inline-size: 440px
  }
  .p-esd-leader::after {
    bottom: -276px;
    left: -291px;
    top: revert
  }
  .p-esd-leader__imgWrap {
    justify-content: space-around
  }
  .p-esd-leader__img {
    inline-size: 100%
  }
  .p-esd-vision__titleWrap {
    margin-block-end: 20px
  }
  .p-esd-vision__map {
    aspect-ratio: 649/755;
    inline-size: 649px;
    left: revert;
    margin-inline-start: 649px;
    right: -48px;
    top: -80px;
    translate: revert
  }
  .p-esd-vision__item:nth-child(2) {
    inline-size: 160px
  }
  .p-esd-vision__dot {
    inline-size: 16px
  }
  .p-esd-project__contents {
    align-items: flex-start;
    flex-direction: row;
    gap: 48px;
    justify-content: space-between
  }
  .p-esd-project__titleWrap {
    align-items: revert;
    flex-direction: column;
    gap: 0
  }
  .p-esd-project .p-tabPost__tabContents {
    flex: 1;
    inline-size: 100%;
    max-inline-size: 820px
  }
  .p-esd-project .p-tabPost__tabList {
    flex-direction: column;
    inline-size: -moz-fit-content;
    inline-size: fit-content;
    left: 40px;
    position: absolute;
    top: 216px
  }
  .p-esd-project .p-tabPost__tabpanelWrapper {
    margin-block-start: 0
  }
  .p-esd-project__itemBody {
    padding: 32px 40px 40px
  }
  .p-esd-project__itemImg {
    aspect-ratio: 325/255;
    max-inline-size: 325px
  }
  .p-esd-project__itemLinks {
    gap: 8px
  }
  .p-team-director__profile {
    align-items: flex-start;
    flex-direction: row;
    gap: clamp(2.4rem,.32rem + 5.333vw,8rem);
    justify-content: space-between
  }
  .p-team-director__img {
    aspect-ratio: 384/589;
    inline-size: 26.6666666667vw;
    max-inline-size: 384px;
    min-inline-size: 240px
  }
  .p-team-director__head {
    margin-block-start: 5px
  }
  .p-team-director .c-accordion .c-accordion__summary {
    padding: 24px 40px
  }
  .p-team-director .c-accordion .c-accordion__summary::after,
  .p-team-director .c-accordion .c-accordion__summary::before {
    right: 40px
  }
  .p-team-director .c-accordion .c-accordion__content ul {
    gap: 4px;
    margin-block-start: -6px;
    padding: 0 40px 32px 40px
  }
  .p-team-director .c-accordion .c-accordion__content ul li {
    grid-template-columns: 70px 1fr
  }
  .p-team-director .c-accordion .c-accordion__content ul li .is-year {
    line-height: var(--line-height-2dot1)
  }
  .p-team-director .c-accordion .c-accordion__content ul li .is-text {
    line-height: var(--line-height-2dot1)
  }
  .p-team-members__lists {
    grid-template-columns: repeat(auto-fit,minmax(400px,1fr));
    -moz-column-gap: clamp(4rem,2.514rem + 3.81vw,8rem);
    column-gap: clamp(4rem,2.514rem + 3.81vw,8rem);
    row-gap: 80px
  }
  .p-team-members__list {
    padding-block-end: 44px
  }
  .p-team-members__romaji {
    font-size: 2rem
  }
  .p-team-members__infoWrap {
    padding-block-start: 22px
  }
  .p-conDire-single__content h2,
  .p-corporate-single__content h2,
  .p-news-single__content h2 {
    padding: 5px 0 5px 24px
  }
  .p-conDire-single__content blockquote,
  .p-corporate-single__content blockquote,
  .p-news-single__content blockquote {
    padding-block: 0
  }
  .p-404__title {
    text-align: center
  }
  .p-404__text {
    text-align: center
  }
  .p-404__btn {
    display: grid;
    place-content: center
  }
  .u-hidden-pc {
    display: none
  }
  .u-text-base p + p {
    margin-block-start: 2.9rem
  }
  .u-text-16 {
    line-height: var(--line-height-2dot1)
  }
  .u-text-16 p + p {
    margin-block-start: 3.4rem
  }
}
@media screen and (min-width:768px) and (any-hover:hover) {
  .swiper-button-next.p-corporate-list__swiper-button-next:hover .c-btn__arrow,
  .swiper-button-prev.p-corporate-list__swiper-button-prev:hover .c-btn__arrow {
    opacity: 0;
    transform: translateX(10px)
  }
  .swiper-button-next.p-corporate-list__swiper-button-next:hover .c-btn__arrow.--hover,
  .swiper-button-prev.p-corporate-list__swiper-button-prev:hover .c-btn__arrow.--hover {
    opacity: 1;
    transform: translateX(0)
  }
}
@media (min-width:910px) {
  .p-group-community__items {
    gap: clamp(2rem,1.071rem + 2.381vw,4.5rem);
    grid-template-columns: repeat(2,1fr)
  }
}
@media screen and (min-width:1024px) {
  .l-drawer__icon {
    display: none
  }
  .l-footer__content {
    display: grid;
    -moz-column-gap: clamp(4rem,-2.76rem + 17.333vw,22.2rem);
    column-gap: clamp(4rem,-2.76rem + 17.333vw,22.2rem);
    grid-template-areas: "logo menu" "banner sns" "bottom bottom";
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto;
    row-gap: 0
  }
  .l-header {
    padding: 0 2.5rem
  }
  .l-header__menu {
    align-items: center;
    display: flex;
    -moz-column-gap: 6px;
    block-size: inherit;
    column-gap: 6px
  }
  .l-nav__lists {
    max-inline-size: revert
  }
  .l-nav__item {
    max-inline-size: 182px
  }
  .c-card.--line {
    border-block-end: 1px solid var(--border-light);
    padding-block-end: 24px
  }
  .c-side-menu {
    flex-direction: column;
    gap: 4px;
    position: sticky;
    top: 120px
  }
  .c-side-menu.--ja {
    gap: 8px
  }
  .p-about-menu__nav {
    grid-template-columns: repeat(3,minmax(0,1fr));
    margin-block-start: -8px
  }
  .p-about-overview__section {
    gap: clamp(1.6rem,-3.266rem + 12.476vw,14.7rem);
    grid-template-columns: 144px 1fr
  }
  .p-about-overview__items {
    max-inline-size: 829px
  }
  .p-conDire__lists {
    grid-template-columns: repeat(4,1fr);
    justify-content: space-between
  }
  .p-conDire-single__header {
    flex-direction: row-reverse;
    justify-content: space-between
  }
  .p-conDire-single__headerWrap {
    max-inline-size: 501px
  }
  .p-conDire-single__profileItem {
    display: grid;
    grid-template-columns: 240px 1fr
  }
  .p-group-header__text {
    flex: 0 1 42.86%
  }
  .p-group-merit__lists {
    gap: 8px;
    grid-template-columns: repeat(2,minmax(0,460px));
    padding-inline-end: 24px
  }
  .p-conSemi__breadcrumbs .l-breadcrumb__list {
    color: var(--white)
  }
  .p-conSemi__breadcrumbs .l-breadcrumb__list:not(:last-child)::after {
    background-color: var(--white)
  }
  .p-conSemi__breadcrumbs .l-breadcrumb__list a:focus-visible {
    color: var(--border-gray)
  }
  .p-conSemi__titleWrap {
    inline-size: 100vw;
    margin-inline: calc(50% - 50vw)
  }
  .p-conSemi__title--en {
    padding-inline: 40px
  }
  .p-conSemi-header__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-conSemi-header__text {
    flex: 1;
    max-inline-size: 578px
  }
  .p-conSemi-directory .p-directory__sliderWrap {
    aspect-ratio: 472/701;
    max-block-size: 701px;
    max-inline-size: 472px
  }
  .p-consume-consider__textWrap {
    max-inline-size: 545px
  }
  .p-contact-form__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-contact-form__textWrap {
    max-inline-size: 562px
  }
  .p-corporate-list__titleWrap {
    gap: 0
  }
  .p-membership-benefits__body {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-membership-list__items {
    grid-template-columns: repeat(3,minmax(240px,1fr))
  }
  .p-donate-how__header {
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-donate-how__contents {
    flex: 1;
    max-inline-size: 744px
  }
  .p-donate-how__textWrap {
    max-inline-size: 744px
  }
  .p-findOut-header__headWrap {
    display: contents
  }
  .p-findOut-tips {
    padding-block: 140px 128px
  }
  .p-findOut-tips__tagsWrap {
    gap: 9px;
    inline-size: 90.1388888889vw;
    max-inline-size: 1298px;
    top: clamp(3.4rem,2.211rem + 3.048vw,6.6rem)
  }
  .p-findOut-tips__tags {
    inline-size: 100vw;
    margin-inline: calc(50% - 50vw)
  }
  .p-findOut-tips__tags.--01 {
    max-inline-size: 71.1111111111vw
  }
  .p-findOut-tips__tags.--02 {
    margin-block-start: 0;
    max-inline-size: 1298px
  }
  .p-findOut-tips__tags.--02 .p-findOut-tips__tag:nth-child(1) {
    margin-inline-start: 34px
  }
  .p-findOut-tips__tags.--02 .p-findOut-tips__tag:nth-child(2) {
    margin-block-start: 21px
  }
  .p-findOut-tips__tag.--right {
    margin-block-start: 20px
  }
  .p-government__wrapper {
    align-items: flex-start;
    flex-direction: row;
    gap: 72px;
    justify-content: space-between
  }
  .p-government__img {
    inline-size: 346px
  }
  .p-greeting__contents {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    row-gap: 40px
  }
  .p-history-timeline__wrapper {
    align-items: flex-start;
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-index-topics__link {
    align-items: stretch;
    flex-direction: row;
    max-inline-size: 1120px
  }
  .p-index-topics__img {
    aspect-ratio: 560/395;
    border-radius: 8px 0 0 8px;
    max-inline-size: 560px
  }
  .p-index-topics__contents {
    gap: 6px;
    padding: 32px 38px
  }
  .p-index-about::after {
    left: -278px;
    right: revert;
    top: -24.3055555556vw
  }
  .p-index-about__inner {
    margin-inline: auto 51px!important;
    max-inline-size: 1270px
  }
  .p-index-about__contents {
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-index-about__textWrap {
    margin-block-start: 88px;
    max-inline-size: 585px
  }
  .p-index-about__imgWrap {
    margin-block-start: 20px
  }
  .p-index-about__img:nth-child(2) {
    left: 26px
  }
  .p-index-news .p-tabPost__cards {
    grid-template-columns: repeat(3,1fr)
  }
  .p-news__items {
    grid-template-columns: repeat(2,1fr);
    row-gap: clamp(2.4rem,1.546rem + 2.19vw,4.7rem);
    -moz-column-gap: 40px;
    column-gap: 40px
  }
  .p-pull-news__items {
    grid-template-columns: repeat(2,1fr);
    justify-content: space-between;
    margin-block-start: 48px;
    row-gap: 32px;
    -moz-column-gap: clamp(2.4rem,1.063rem + 3.429vw,6rem);
    column-gap: clamp(2.4rem,1.063rem + 3.429vw,6rem)
  }
  .p-pull-news__items.--news .c-card__body {
    max-inline-size: 276px
  }
  .p-pull-news__items .c-card__body {
    max-inline-size: 267px
  }
  .p-news-single__headerWrap {
    padding-block-end: 64px
  }
  .p-parts-conSemi__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-parts-conSemi__wrap {
    max-inline-size: 500px
  }
  .p-parts-conSemi__textWrap {
    max-inline-size: 400px
  }
  .p-parts-conSemi__enText {
    bottom: -24px;
    font-size: clamp(6.4rem,5.211rem + 3.048vw,9.6rem);
    line-height: 1.2;
    right: 5vw;
    text-align: left
  }
  .p-parts-conSemi__enText {
    right: 72px
  }
  .p-parts-contact {
    background-image: url(../img/common/contact-bg.jpg)
  }
  .p-parts-contact__container {
    flex-direction: row;
    justify-content: space-between
  }
  .p-parts-contact__content {
    inline-size: 100%;
    max-inline-size: 479px
  }
  .p-directory__gradient::before {
    background: linear-gradient(180deg,rgba(255,255,255,.95) 10%,rgba(255,255,255,.6) 60%,rgba(255,255,255,0) 100%);
    block-size: calc(186px + clamp(4rem,2.514rem + 3.81vw,8rem))
  }
  .p-directory__gradient::after {
    block-size: 186px
  }
  .p-directory__sliderRotate {
    margin-inline-start: 0;
    rotate: 0deg
  }
  .is-safari .p-directory__sliderRotate {
    margin-inline-end: 0
  }
  .p-directory__sliderWrap {
    aspect-ratio: 472/871;
    gap: 18px;
    inline-size: 472px;
    max-block-size: 871px;
    max-inline-size: 472px
  }
  .p-directory__sliderWrap .p-directory__infinity-carousel {
    aspect-ratio: 227/791;
    inline-size: 227px;
    --row: 227px;
    --gap: 18px
  }
  .p-mail__container {
    flex-direction: row;
    justify-content: space-between;
    margin-inline: 11.1111111111vw;
    max-inline-size: 960px
  }
  .p-mail__textWrap {
    max-inline-size: 463px
  }
  .p-parts-seminar__wrap {
    align-items: center;
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-parts-seminar__img {
    aspect-ratio: 732/536;
    flex-shrink: 0;
    inline-size: 50.8333333333vw
  }
  .p-parts-seminar__credit {
    bottom: 10px
  }
  .p-parts-seminar__contents {
    flex: 1;
    max-inline-size: 501px
  }
  .p-step__link {
    padding: 14px 24px 15px;
    -moz-column-gap: clamp(2.3rem,1.149rem + 2.952vw,5.4rem);
    column-gap: clamp(2.3rem,1.149rem + 2.952vw,5.4rem)
  }
  .p-seminar-achieve__contents {
    flex-direction: row;
    justify-content: space-between
  }
  .p-seminar-achieve__textWrap {
    align-items: flex-start;
    max-inline-size: 388px
  }
  .p-start-consume__inner {
    align-items: flex-start;
    flex-direction: row;
    gap: 40px;
    justify-content: space-between
  }
  .p-start-consume__header {
    max-inline-size: 25.54%
  }
  .p-start-consume__iconWrap.--04 .p-start-consume__icon:nth-child(1) {
    left: 33px
  }
  .p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(1) {
    left: 110px
  }
  .p-start-consume__iconWrap.--06 .p-start-consume__icon:nth-child(2) {
    left: 43px
  }
  .p-start-education {
    margin-block-start: -86px
  }
  .p-start-education__wrapper {
    align-items: center;
    grid-template-areas: "title img" "text img";
    grid-template-columns: 44.74% auto;
    grid-template-rows: 240px auto;
    row-gap: 0;
    -moz-column-gap: 18px;
    column-gap: 18px
  }
  .p-start-education__content {
    align-self: start;
    grid-area: text;
    margin-block-start: 0
  }
  .p-start-education__titleWrap {
    grid-area: title;
    margin-block-start: 28px
  }
  .p-start-education__img {
    grid-area: img;
    inline-size: 100vw;
    margin-inline: revert;
    margin-inline-end: calc(50% - 50vw);
    max-inline-size: 52.8472222222vw
  }
  .p-support-method__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-support-method__title {
    text-align: left
  }
  .p-support-method__lists {
    max-inline-size: 71.43%
  }
  .p-esd-leader__contents {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between
  }
  .p-esd-leader__textWrap {
    max-inline-size: 474px
  }
  .p-esd-leader__imgWrap {
    inline-size: 100%;
    justify-content: space-around;
    max-inline-size: 578px
  }
  .p-esd-vision__container {
    margin-inline-start: calc(50% - 50vw + 9.7222222222vw);
    padding-inline-end: calc(50vw - 50% + 36px)
  }
  .p-esd-vision__line {
    left: 220px;
    right: 0
  }
  .p-esd-vision__items {
    gap: 24px;
    inline-size: -moz-max-content;
    inline-size: max-content
  }
  .p-esd-vision__items::before {
    left: 73px;
    right: 0
  }
  .p-esd-vision__item {
    flex: none;
    inline-size: 160px
  }
  .p-esd-project__itemMain {
    align-items: flex-start;
    flex-direction: row
  }
  .p-team-members__lists {
    grid-template-columns: repeat(2,1fr)
  }
}
@media screen and (min-width:1024px) and (any-hover:hover) {
  .p-conSemi__breadcrumbs .l-breadcrumb__list a:hover {
    color: var(--border-gray)
  }
}
@media screen and (min-width:1024px) and (min-width:1920px) {
  .p-donate-how__textWrap {
    max-inline-size: 66.43%
  }
}
@media (min-width:1179px) {
  .p-conSemi__titleWrap {
    gap: 0
  }
  .p-conSemi__title--en {
    line-height: var(--line-height-1dot5)
  }
}
@media screen and (min-width:1280px) {
  .l-header {
    padding-inline: 68px 60px
  }
  .l-header__menu {
    -moz-column-gap: 19px;
    column-gap: 19px
  }
  .l-header__list {
    -moz-column-gap: 10px;
    column-gap: 10px
  }
  .l-nav__lists {
    display: grid;
    grid-template-columns: repeat(2,1fr)
  }
  .p-about-books__inner {
    max-inline-size: 1266px
  }
  .p-about-books__items {
    grid-template-columns: repeat(6,1fr)
  }
  .p-about-books__item {
    max-inline-size: 176px
  }
  .p-about-books__img {
    inline-size: 140px
  }
  .p-consume-consider__inner {
    inline-size: 1628px;
    margin-inline: calc(50% - 50vw);
    max-inline-size: 1628px
  }
  .p-consume-consider__contents {
    margin-inline-start: 30px
  }
  .p-consume-consider__items {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
    inline-size: 1628px;
    margin-inline: auto;
    max-inline-size: 1628px
  }
  .p-consume-consider__item:nth-child(1),
  .p-consume-consider__item:nth-child(3),
  .p-consume-consider__item:nth-child(5) {
    margin-inline-start: revert
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__img,
  .p-consume-consider__item:nth-child(3) .p-consume-consider__img,
  .p-consume-consider__item:nth-child(5) .p-consume-consider__img {
    margin-inline-start: revert
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__title,
  .p-consume-consider__item:nth-child(3) .p-consume-consider__title,
  .p-consume-consider__item:nth-child(5) .p-consume-consider__title {
    text-align: left
  }
  .p-consume-consider__item:nth-child(2),
  .p-consume-consider__item:nth-child(4) {
    margin-inline-start: revert
  }
  .p-consume-consider__item:nth-child(1) {
    block-size: 327px;
    flex-direction: row;
    gap: 40px;
    inline-size: 840px
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__textWrap {
    margin-block-start: 92px
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__title::before {
    left: -64px;
    right: revert;
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__item:nth-child(1) .p-consume-consider__img {
    aspect-ratio: 510/327;
    inline-size: 510px
  }
  .p-consume-consider__item:nth-child(2) {
    block-size: 524px;
    gap: 24px;
    inline-size: 510px;
    margin-block-start: 87px;
    margin-inline-start: 62px;
    right: 51px;
    top: 85px
  }
  .p-consume-consider__item:nth-child(2) .p-consume-consider__textWrap {
    margin-inline-start: 42px
  }
  .p-consume-consider__item:nth-child(2) .p-consume-consider__title::before {
    left: revert;
    right: -95px;
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__item:nth-child(2) .p-consume-consider__img {
    aspect-ratio: 510/307;
    margin-inline-start: revert
  }
  .p-consume-consider__item:nth-child(3) {
    block-size: 531px;
    gap: 35px;
    inline-size: 549px;
    left: 308px;
    margin-block-start: -216px;
    margin-inline-start: 331px;
    top: 396px
  }
  .p-consume-consider__item:nth-child(3) .p-consume-consider__textWrap {
    margin-inline-start: 259px
  }
  .p-consume-consider__item:nth-child(3) .p-consume-consider__title::before {
    left: -118px;
    right: revert;
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__item:nth-child(3) .p-consume-consider__img {
    aspect-ratio: 510/327
  }
  .p-consume-consider__item:nth-child(4) {
    block-size: 600px;
    bottom: 26px;
    gap: 20px;
    inline-size: 596px;
    margin-block-start: 58px;
    margin-inline-start: 91px;
    right: -104px
  }
  .p-consume-consider__item:nth-child(4) .p-consume-consider__textWrap {
    margin-inline-start: -24px
  }
  .p-consume-consider__item:nth-child(4) .p-consume-consider__title::before {
    left: revert;
    right: -90px;
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__item:nth-child(4) .p-consume-consider__img {
    aspect-ratio: 523/300;
    inline-size: 523px
  }
  .p-consume-consider__item:nth-child(5) {
    block-size: 486px;
    bottom: 8px;
    gap: 0;
    inline-size: 788px;
    left: -81px;
    margin-block-start: -467px;
    margin-inline-start: -56px
  }
  .p-consume-consider__item:nth-child(5) .p-consume-consider__textWrap {
    margin-block-start: -45px;
    margin-inline-start: 498px
  }
  .p-consume-consider__item:nth-child(5) .p-consume-consider__title::before {
    left: -63px;
    right: revert;
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__item:nth-child(5) .p-consume-consider__img {
    aspect-ratio: 510/313
  }
  .p-consume-consider__textWrap {
    max-inline-size: 290px
  }
  .p-consume-consider__title::before {
    top: 50%;
    translate: 0 -50%
  }
  .p-consume-consider__img {
    inline-size: 510px
  }
  .p-corporate__lists {
    grid-template-columns: repeat(3,1fr)
  }
  .p-findOut-tips__tags.--01 {
    max-inline-size: 1024px
  }
  .p-greeting__textWrap {
    max-inline-size: 558px
  }
  .p-index-about::after {
    top: 350px
  }
  .p-parts-conSemi {
    border-radius: 1000px 0 0 1000px;
    margin-inline-start: 5.5555555556vw
  }
  .p-parts-conSemi::before {
    left: 113px;
    right: revert;
    top: -10px
  }
  .p-parts-conSemi::after {
    left: 42px;
    right: revert;
    top: 65px
  }
  .p-parts-conSemi__inner {
    padding-inline: 9.7222222222vw 5.5555555556vw
  }
  .p-parts-directory__inner {
    padding-inline: 11.111pxvw 8.333pxvw
  }
  .p-directory__container {
    bottom: revert;
    right: 8.6805555556vw;
    top: 0
  }
  .p-directory__container {
    right: 125px
  }
  .p-parts-government__items {
    gap: 16px;
    grid-template-columns: repeat(6,1fr)
  }
  .p-mail {
    margin-inline: auto
  }
  .p-sitemap__nav .l-nav__lists {
    display: grid;
    grid-template-columns: repeat(2,1fr)
  }
  .p-start-education {
    margin-block-end: 44px
  }
  .p-start-education__img {
    max-inline-size: 761px
  }
}
@media (min-width:1280px) and (max-width:1419px) {
  .l-nav__submenu .l-nav__separator.--lecture {
    display: block
  }
  .l-nav__submenu .l-nav__separator.--lecture::before {
    content: ""
  }
  .l-nav__submenu--zen.--lecture {
    margin-inline-start: 1em
  }
}
@media (min-width:1390px) {
  .p-esd-vision__head {
    display: none
  }
  .p-esd-vision__container {
    overflow-x: hidden
  }
}
@media (min-width:1420px) {
  .l-nav__submenu .l-nav__separator.--lecture {
    display: inline
  }
  .l-nav__submenu .l-nav__separator.--lecture::before {
    content: "・"
  }
  .l-nav__submenu--zen.--lecture {
    margin-inline-start: 0
  }
}
@media screen and (min-width:1440px) and (max-width:1600px) {
  .p-greeting__inner {
    margin-inline-end: 2.7777777778vw;
    max-inline-size: 88.8888888889vw
  }
}
@media screen and (min-width:1500px) {
  .p-index-about__inner {
    margin-inline: auto!important
  }
}
@media (min-width:1628px) {
  .p-consume-consider__inner {
    margin-inline: auto
  }
  .p-consume-consider__contents {
    margin-inline-start: 0
  }
}
@media screen and (min-width:1920px) {
  body {
    font-size: 1.6rem
  }
  .l-footer__inner {
    margin-inline: auto;
    max-inline-size: 1680px;
    padding-inline: 0
  }
  .l-footer__banner--text {
    font-size: 1.2rem
  }
  .l-footer__sns--item {
    font-size: 1.4rem
  }
  .l-header {
    padding-inline: 0
  }
  .l-header__wrap {
    margin-inline: auto;
    max-inline-size: 1680px
  }
  .l-inner {
    max-inline-size: 1680px
  }
  .l-inner__narrow {
    margin-inline: auto;
    max-inline-size: 1200px;
    padding-inline: 40px
  }
  .l-lower-page {
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1920px
  }
  .l-lower-page::before {
    inline-size: calc(var(--before-inline-size,0%) * 100vw / 100%);
    left: calc(50% - 50vw)
  }
  .c-accordion__answer p {
    max-inline-size: 86%
  }
  .c-accordion__answer p + p {
    max-inline-size: 86%
  }
  .c-card__publish {
    font-size: 1.4rem
  }
  .c-side-menu.--ja .c-side-menu__link {
    font-size: 1.6rem
  }
  .c-external-link {
    font-size: 1.4rem
  }
  .c-link__limitText span {
    font-size: 1.4rem
  }
  .p-conDire-single__content .c-link-card__excerpt,
  .p-corporate-single__content .c-link-card__excerpt,
  .p-news-single__content .c-link-card__excerpt {
    font-size: 1.3rem
  }
  .p-conDire-single__content .c-link-card__url,
  .p-corporate-single__content .c-link-card__url,
  .p-news-single__content .c-link-card__url {
    font-size: 1.3rem
  }
  .p-about-header__contents {
    max-inline-size: 1000px
  }
  .p-about-menu__nav {
    max-inline-size: 77.14%
  }
  .p-about-menu__link {
    max-inline-size: 300px
  }
  .p-about-history__text {
    max-inline-size: 57.14%
  }
  .p-about-overview__items {
    max-inline-size: 74.01%
  }
  .p-about-overview__label {
    font-size: 1.6rem
  }
  .p-about-overview__value {
    font-size: 1.6rem
  }
  .p-about-books__publisher {
    font-size: 1.4rem
  }
  .p-conDire-header__text {
    max-inline-size: 760px
  }
  .p-conDire__lists {
    -moz-column-gap: 80px;
    column-gap: 80px
  }
  .p-conDire__numberHash {
    font-size: 1.4rem
  }
  .p-conDire__lead {
    font-size: 1.4rem
  }
  .p-conDire-single__headerWrap {
    max-inline-size: 44.73%
  }
  .p-conDire-single__headerText,
  .p-conDire-single__profileCategory,
  .p-conDire-single__profileText {
    font-size: 1.6rem
  }
  .p-group-community__inner {
    max-inline-size: 1680px!important
  }
  .p-group-community__items {
    max-inline-size: 1600px
  }
  .p-group-community__text {
    font-size: 1.6rem
  }
  .p-group-community__note {
    font-size: 1.4rem
  }
  .p-conSemi__loopWrap li {
    font-size: 140px
  }
  .p-conSemi-header__text {
    max-inline-size: 51.61%
  }
  .p-connect-header__text {
    max-inline-size: 53.57%
  }
  .p-connect-group__text {
    max-inline-size: 53.57%
  }
  .p-consume-header__text {
    max-inline-size: 57.14%
  }
  .p-consume-casestudy__item {
    padding: 56px 80px
  }
  .p-contact-attention__text {
    margin-inline: auto;
    max-inline-size: 87.14%
  }
  .p-contact-qa__lists {
    max-inline-size: 74.29%
  }
  .p-contact-form__textWrap {
    max-inline-size: 50.18%
  }
  .p-corporate__lists {
    grid-template-columns: repeat(4,1fr)
  }
  .p-corporate__initiative {
    font-size: 1.3rem
  }
  .p-membership-header__text {
    max-inline-size: 46.43%
  }
  .p-membership-benefits__items {
    max-inline-size: 82.86%
  }
  .p-membership-benefits__img {
    inline-size: 22.7777777778vw;
    max-inline-size: 468px
  }
  .p-membership-benefits__list {
    font-size: 1.6rem
  }
  .p-membership-list__item {
    font-size: 1.4rem;
    max-inline-size: 400px
  }
  .p-donate-actions__lists {
    gap: 24px;
    max-inline-size: 1120px
  }
  .p-donate-how__contents {
    max-inline-size: 58%
  }
  .p-ethicalSupp-benefits__text {
    font-size: 1.6rem
  }
  .p-findOut-header__text {
    max-inline-size: 45.9%
  }
  .p-findOut-tips__tags.--01 {
    margin-inline: auto
  }
  .p-government__item {
    max-inline-size: 79.82%
  }
  .p-government__textWrap {
    max-inline-size: 53.69%
  }
  .p-government__img {
    inline-size: 24.0277777778vw;
    max-inline-size: 40.75%
  }
  .p-greeting__textWrap {
    max-inline-size: 38.75vw
  }
  .p-greeting__img {
    max-inline-size: 34.375%
  }
  .p-history-header__text {
    max-inline-size: 50%
  }
  .p-history-timeline__contents {
    max-inline-size: 82.86%
  }
  .p-history-footer__text {
    max-inline-size: 60.09%
  }
  .p-index-fv {
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1920px
  }
  .p-index-about__inner {
    max-inline-size: 1680px
  }
  .p-index-about__textWrap {
    max-inline-size: 700px
  }
  .p-index-news .p-tabPost__tabContents {
    max-inline-size: 65.71%
  }
  .p-index-news .p-tabPost__tab {
    font-size: 1.4rem
  }
  .p-news__menu--link {
    font-size: 1.6rem
  }
  .p-pull-news__items.--news .c-card__body {
    max-inline-size: revert
  }
  .p-pull-news__items .c-card__body {
    max-inline-size: revert
  }
  .p-news-single__headerWrap {
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1920px
  }
  .p-news-single__headerWrap::before {
    inline-size: calc(var(--before-inline-size,0%) * 100vw / 100%);
    left: calc(50% - 50vw)
  }
  .p-numCard.--esd .p-numCard__items {
    max-inline-size: 82.14%
  }
  .p-numCard__items {
    max-inline-size: 86.43%
  }
  .p-numCard__text {
    font-size: 1.6rem
  }
  .p-parts-conSemi__inner {
    padding-inline: 140px
  }
  .p-parts-conSemi__wrap {
    max-inline-size: 51.02%
  }
  .p-parts-conSemi__tag {
    font-size: 1.4rem
  }
  .p-parts-conSemi__textWrap {
    max-inline-size: 40.81%
  }
  .p-parts-contact__container {
    max-inline-size: 1120px
  }
  .p-parts-contact__content {
    max-inline-size: 46.15%
  }
  .p-parts-directory {
    inline-size: 100%;
    margin-inline: auto;
    max-inline-size: 1920px
  }
  .p-parts-directory__contents {
    max-inline-size: 48.93%
  }
  .p-parts-government__inner {
    max-inline-size: 1680px
  }
  .p-parts-government__contents {
    max-inline-size: revert
  }
  .p-parts-government__items {
    gap: 40px
  }
  .p-mail {
    max-inline-size: 1600px;
    padding-inline: 80px
  }
  .p-mail__container {
    max-inline-size: 85.8%
  }
  .p-mail__textWrap {
    max-inline-size: 41.34%
  }
  .p-mail__form {
    max-inline-size: 40.28%
  }
  .p-parts-seminar__contents {
    max-inline-size: 44.73%
  }
  .p-qa__contents {
    max-inline-size: 1200px
  }
  .p-qa__items {
    max-inline-size: 746px
  }
  .p-qa__text {
    font-size: 1.6rem
  }
  .p-seminar-header__text {
    max-inline-size: 64.29%
  }
  .p-seminar-achieve__textWrap {
    max-inline-size: 34.64%
  }
  .p-seminar-achieve__text {
    font-size: 1.6rem
  }
  .p-seminar-achieve__info {
    font-size: 1.4rem
  }
  .p-seminar-achieve__itemWrap {
    margin-inline: revert;
    max-inline-size: 860px
  }
  .p-seminar-points__items {
    max-inline-size: 86.43%
  }
  .p-seminar-points__text {
    font-size: 1.6rem
  }
  .p-start-cta__link {
    padding-block: 140px
  }
  .p-start-header__text {
    max-inline-size: 64.29%
  }
  .p-start-consume__items {
    gap: 80px;
    max-inline-size: 67.41%
  }
  .p-start-consume__item {
    max-inline-size: 292px
  }
  .p-start-education__wrapper {
    justify-content: space-between
  }
  .p-start-education__img {
    inline-size: 100%;
    margin-inline-end: 0
  }
  .p-support-method__text {
    font-size: 1.6rem
  }
  .p-esd-header__text {
    max-inline-size: 39.29%
  }
  .p-esd-leader__textWrap {
    max-inline-size: 42.32%
  }
  .p-esd-leader__imgWrap {
    max-inline-size: 51.61%
  }
  .p-esd-leader__img {
    max-inline-size: 48.26%
  }
  .p-esd-project .p-tabPost__tabContents {
    max-inline-size: 73.21%
  }
  .p-esd-project__itemText {
    font-size: 1.6rem
  }
  .p-esd-project__linksLabel {
    font-size: 1.4rem
  }
  .p-team-director__info {
    max-inline-size: 58.57%
  }
  .p-team-director .c-accordion .c-accordion__summary {
    font-size: 1.6rem
  }
  .p-team-director .c-accordion .c-accordion__content ul li .is-year {
    font-size: 1.6rem
  }
  .p-team-director .c-accordion .c-accordion__content ul li .is-text {
    font-size: 1.4rem
  }
  .p-team-members__job {
    font-size: 1.4rem
  }
  .p-conDire-single__content p,
  .p-corporate-single__content p,
  .p-news-single__content p {
    font-size: 1.6rem
  }
  .p-conDire-single__content blockquote,
  .p-corporate-single__content blockquote,
  .p-news-single__content blockquote {
    font-size: 1.6rem
  }
  .p-conDire-single__content blockquote p,
  .p-corporate-single__content blockquote p,
  .p-news-single__content blockquote p {
    font-size: 1.6rem
  }
  .p-conDire-single__content p a,
  .p-corporate-single__content p a,
  .p-news-single__content p a {
    font-size: 1.6rem
  }
  .p-conDire-single__content figcaption,
  .p-corporate-single__content figcaption,
  .p-news-single__content figcaption {
    font-size: 1.4rem
  }
  .p-conDire-single__content li,
  .p-corporate-single__content li,
  .p-news-single__content li {
    font-size: 1.6rem
  }
  .p-conDire-single__content p.is-style-callout,
  .p-corporate-single__content p.is-style-callout,
  .p-news-single__content p.is-style-callout {
    font-size: 1.6rem
  }
  .p-conDire-single__content p.is-style-annotation,
  .p-corporate-single__content p.is-style-annotation,
  .p-news-single__content p.is-style-annotation {
    font-size: 1.4rem
  }
  .u-text {
    font-size: 1.6rem
  }
}
@media screen and (max-width:767px) {
  .l-lower-page::after {
    opacity: var(--after-opacity,1)
  }
  .p-donate-actions__lists {
    inline-size: 100vw;
    margin-inline: calc(50% - 50vw);
    padding-inline: 19px
  }
  .p-qa {
    background-color: var(--bg-light-cream)
  }
  .p-start-consume__items {
    inline-size: 100vw;
    margin-inline-start: calc(50% - 50vw);
    padding-inline: 3.59vw 6.154vw
  }
  .p-team-members__list:first-child {
    padding-block-end: 29px
  }
  .p-team-members__list:not(:first-child) {
    padding-block: 9px 32px
  }
  .u-hidden-sp {
    display: none
  }
}
@keyframes loop-left {
  0% {
    translate: 0 0
  }
  100% {
    translate: -100% 0
  }
}
@keyframes loop-rl {
  0% {
    transform: translateX(0)
  }
  100% {
    transform: translateX(calc(var(--loop-to) * -1))
  }
}
@keyframes loop-rtl {
  0% {
    transform: translateX(0)
  }
  100% {
    transform: translateX(calc(var(--loop-to) * -1))
  }
}
@keyframes dir-scroll {
  to {
    transform: translateY(calc(-1 * (var(--row) + var(--gap)) * var(--count)))
  }
}