/* reset
---------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

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

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

a {
  color: inherit;
  text-decoration: none;
}

select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border: none;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: none;
  font: inherit;
  color: inherit;
}

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

body {
  padding: 0 !important;
  font-feature-settings: initial;
}

.l-footer::before {
  display: none;
}

:root {
  --color-main: #1883ca;
  --color-main-pale: #d1edff;
  --color-second: #f653ad;
  --color-second-pale: #ffedfa;
  --color-green: #5fcb73;
  --color-gray: #bdbdbd;
}


/* content
---------------------------------------- */
#site-wrapper {
  width: clamp(0px, 100%, 750px);
  margin: 0 auto;
  color: #353333;
  background-color: #fffccf;
}

/* common
---------------------------------------- */
.p-fair__section {
  padding: clamp(0px, 8.75vw, 65.625px) clamp(0px, 2.5vw, 18.75px);
  background-color: #fff;
  border: clamp(0px, 2.5vw, 18.75px) solid #000;
}
.p-fair__section--blue {
  border-color: var(--color-main);
}
.p-fair__section--blue .p-fair__title::before {
  color: var(--color-main);
}
.p-fair__section--blue .p-fair__subtitle {
  color: var(--color-main);
}
.p-fair__section--pink {
  border-color: var(--color-second);
}
.p-fair__section--pink .p-fair__title::before {
  color: var(--color-second);
}
.p-fair__section--pink .p-fair__subtitle {
  color: var(--color-second);
}
.p-fair__section--green {
  border-color: var(--color-green);
}
.p-fair__section--green .p-fair__title::before {
  color: var(--color-green);
}
.p-fair__section--green .p-fair__subtitle {
  color: var(--color-green);
}
.p-fair__section--yellow {
  border-color: #fffccf;
  background-color: #fffccf;
}
.p-fair__section--yellow .p-fair__title::before {
  color: var(--color-main);
}
.p-fair__section--yellow .p-fair__subtitle {
  color: var(--color-main);
}
.p-fair__title {
  font-size: clamp(0px, 5.75vw, 43.125px);
  font-weight: 700;
  text-align: center;
}
.p-fair__title::before {
  display: block;
  font-size: clamp(0px, 3.5vw, 26.25px);
  font-weight: 400;
  font-family: "Chango", sans-serif;
  text-align: center;
  line-height: 1.8;
  content: attr(data-en);
}
.p-fair__subtitle {
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  text-align: center;
  line-height: 1.58;
}
.p-fair__subsection + .p-fair__subsection {
  margin-top: clamp(0px, 10vw, 75px);
}
.p-fair__button {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(0px, 80vw, 600px);
  height: clamp(0px, 13.75vw, 103.125px);
  margin: 0 auto;
  color: #fff;
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  text-align: center;
  border-radius: clamp(0px, 3vw, 22.5px);
  background-color: var(--color-main);
}
.p-fair__button::after {
  position: absolute;
  top: 50%;
  right: clamp(0px, 3.75vw, 28.125px);
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%) rotate(-90deg);
  filter: brightness(0) saturate(100%) invert(86%) sepia(6%) saturate(1679%) hue-rotate(184deg) brightness(104%) contrast(105%);
  content: "";
}

/* hero
---------------------------------------- */
.p-fair-hero {
  position: relative;
}
.p-fair-hero__title {
  display: none;
}

.p-fair-hero__year {
  position: absolute;
  right: clamp(0px, 19.6vw, 147px);
  top: clamp(0px, 22.6vw, 170px);
  font-family: "Chango", sans-serif;
  font-size: clamp(0px, 4vw, 30px);
  font-weight: 400;
  color: #1983ca;
}

.p-fair-hero__navi {
  position: absolute;
  left: 50%;
  bottom: clamp(0px, 3.75vw, 28.125px);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(0px, 1.25vw, 9.375px);
  transform: translateX(-50%);
}
.p-fair-hero__navi-button {
  position: relative;
  width: clamp(0px, 30vw, 225px);
  height: clamp(0px, 13.75vw, 103.125px);
  padding-top: clamp(0px, 2.5vw, 18.75px);
  font-size: clamp(0px, 2.875vw, 21.5625px);
  font-weight: 700;
  text-align: center;
  border: clamp(0px, 1vw, 7.5px) solid #000;
  border-radius: clamp(0px, 3vw, 22.5px);
}
.p-fair-hero__navi-button::after {
  position: absolute;
  left: 50%;
  bottom: clamp(0px, 0.625vw, 4.6875px);
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateX(-50%);
  content: "";
}
.p-fair-hero__navi-button:hover {
  transition: filter 0.5s;
  filter: brightness(1.1);
  opacity: 1;
}
.p-fair-hero__navi-button--search {
  border-color: var(--color-main);
  background-color: var(--color-main-pale);
}
.p-fair-hero__navi-button--search::after {
  filter: brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(678%) hue-rotate(165deg) brightness(96%) contrast(91%);
}
.p-fair-hero__navi-button--about {
  padding-top: clamp(0px, 1.25vw, 9.375px);
  line-height: 1.2;
  border-color: var(--color-second);
  background-color: var(--color-second-pale);
}
.p-fair-hero__navi-button--about::after {
  filter: brightness(0) saturate(100%) invert(65%) sepia(63%) saturate(6082%) hue-rotate(301deg) brightness(104%) contrast(93%);
}
.p-fair-hero__navi-button--faq {
  border-color: #faed01;
  background-color: #fffccf;
}
.p-fair-hero__navi-button--faq::after {
  filter: brightness(0) saturate(100%) invert(84%) sepia(99%) saturate(5886%) hue-rotate(351deg) brightness(96%) contrast(104%);
}

/* search
---------------------------------------- */
.p-fair-search__title {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-search__select {
  position: relative;
  margin-bottom: clamp(0px, 5vw, 37.5px);
  padding: 0 clamp(0px, 1.25vw, 9.375px);
}
.p-fair-search__select::before {
  position: absolute;
  bottom: clamp(0px, 11.875vw, 89.0625px);
  left: clamp(0px, 11.25vw, 84.375px);
  aspect-ratio: 116/143;
  width: clamp(0px, 14.5vw, 108.75px);
  background: url(../images/fair/top/img_search.png) no-repeat center center/contain;
  content: "";
}
.p-fair-search__select::after {
  position: absolute;
  top: 50%;
  right: clamp(0px, 6.25vw, 46.875px);
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%);
  filter: brightness(0) saturate(100%) invert(97%) sepia(0%) saturate(1879%) hue-rotate(152deg) brightness(92%) contrast(62%);
  pointer-events: none;
  z-index: 2;
  content: "";
}
.p-fair-search__select select {
  position: relative;
  width: 100%;
  height: clamp(0px, 13.75vw, 103.125px);
  padding: 0 clamp(0px, 3.75vw, 28.125px);
  font-size: clamp(0px, 3.75vw, 28.125px);
  border: clamp(0px, 0.375vw, 2.8125px) solid var(--color-gray);
  border-radius: clamp(0px, 2.75vw, 20.625px);
  background-color: #fff;
  z-index: 2;
}
.p-fair-search__select select option {
  color: #353333;
}
.p-fair-search__select select:invalid,
.p-fair-search__select select option:first-child {
  color: var(--color-gray);
}
.p-fair-search__result-title {
  margin-bottom: clamp(0px, 3.75vw, 28.125px);
  color: var(--color-main);
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  text-align: center;
}
.p-fair-search__result-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(0px, 2.5vw, 18.75px);
}
.p-fair-search__card {
  display: block;
  padding: clamp(0px, 3.75vw, 28.125px) clamp(0px, 3.75vw, 28.125px) clamp(0px, 2.5vw, 18.75px) clamp(0px, 3.75vw, 28.125px);
  background-color: #faed01;
  border-radius: clamp(0px, 3vw, 22.5px);
}
.p-fair-search__card-area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: clamp(0px, 35vw, 262.5px);
  height: clamp(0px, 9.375vw, 70.3125px);
  margin: 0 auto clamp(0px, 2.5vw, 18.75px) auto;
  font-size: clamp(0px, 3.75vw, 28.125px);
  font-weight: 700;
  text-align: center;
  border-radius: clamp(0px, 4.75vw, 35.625px);
  background-color: #fffccf;
}
.p-fair-search__card-date {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
  font-size: clamp(0px, 3.375vw, 25.3125px);
  font-weight: 700;
  text-align: center;
}
.p-fair-search__card-date strong {
  font-size: clamp(0px, 7vw, 52.5px);
}
.p-fair-search__card-venue {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
  min-height: clamp(0px, 10.625vw, 79.6875px);
  padding-left: clamp(0px, 6.25vw, 46.875px);
  font-size: clamp(0px, 3.125vw, 23.4375px);
  background: url(../images/fair/top/icon_map.svg) no-repeat left top/clamp(0px, 4.625vw, 34.6875px) clamp(0px, 5.625vw, 42.1875px);
}
.p-fair-search__card-link {
  position: relative;
  display: block;
  color: var(--color-main);
  font-size: clamp(0px, 2.875vw, 21.5625px);
  text-align: center;
}
.p-fair-search__card-link:after {
  position: absolute;
  right: 0;
  top: 50%;
  display: inline-block;
  width: clamp(0px, 2.5vw, 18.75px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%) rotate(-90deg);
  filter: brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(678%) hue-rotate(165deg) brightness(96%) contrast(91%);
  content: "";
}
.p-fair-search__button {
  margin-top: clamp(0px, 7.5vw, 56.25px);
  padding: 0 clamp(0px, 7.5vw, 56.25px);
}
.p-fair-search__button a {
  position: relative;
  display: block;
  color: var(--color-main);
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  text-align: center;
  line-height: clamp(0px, 10vw, 75px);
  border-radius: clamp(0px, 5.625vw, 42.1875px);
  background-color: #fff;
  border: clamp(0px, 0.5vw, 3.75px) solid var(--color-main);
}
.p-fair-search__button a::after {
  position: absolute;
  top: 50%;
  right: clamp(0px, 2.5vw, 18.75px);
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%) rotate(-90deg);
  filter: brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(678%) hue-rotate(165deg) brightness(96%) contrast(91%);
  content: "";
}
.p-fair-search .js-sort-target {
  transition: opacity 0.5s ease;
  opacity: 1;
}
.p-fair-search .js-sort-target.is-hide {
  opacity: 0;
  display: none;
}
.p-fair-search .js-sort-target:hover {
  opacity: .5;
}

/* about
---------------------------------------- */
.p-fair-about {
  padding-bottom: clamp(0px, 18.75vw, 140.625px);
}
.p-fair-about__title {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-about__text {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
  font-size: clamp(0px, 3.25vw, 24.375px);
  text-align: center;
  line-height: 1.38;
}
.p-fair-about__subtitle {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
}
.p-fair-about__image {
  text-align: center;
}
.p-fair-about__section:nth-of-type(1) .p-fair-about__subtitle {
  margin-bottom: clamp(0px, 1.875vw, 14.0625px);
}
.p-fair-about__section:nth-of-type(2) {
  padding-bottom: clamp(0px, 5vw, 37.5px);
}
.p-fair-about__section:nth-of-type(2) .p-fair-about__subtitle {
  position: relative;
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-about__section:nth-of-type(2) .p-fair-about__subtitle::before {
  position: absolute;
  top: clamp(-37.5px, -5vw, 0px);
  right: clamp(0px, 11.25vw, 84.375px);
  aspect-ratio: 83/141;
  width: clamp(0px, 6.875vw, 51.5625px);
  background: url(../images/fair/top/icon_about.svg) no-repeat center center/contain;
  transform: rotate(10deg);
  content: "";
}
.p-fair-about__section:nth-of-type(2) .p-fair-about__image img {
  width: clamp(0px, 90.625vw, 679.6875px);
}
.p-fair-about__section:nth-of-type(3) .p-fair-about__subtitle {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-about__section:nth-of-type(4) {
  margin-top: clamp(0px, 16.25vw, 121.875px);
  padding-bottom: 0;
}
.p-fair-about__section:nth-of-type(4) .p-fair-about__subtitle {
  margin-bottom: clamp(0px, 3.75vw, 28.125px);
}
.p-fair-about__section:nth-of-type(4) .p-fair-about__subtitle img {
  width: clamp(0px, 61.75vw, 463.125px);
}
.p-fair-about__section:nth-of-type(5) {
  margin: 0;
}
.p-fair-about__section:nth-of-type(5) .p-fair-about__subtitle {
  margin: clamp(-56.25px, -7.5vw, 0px) clamp(-18.75px, -2.5vw, 0px) 0 clamp(-18.75px, -2.5vw, 0px);
}
.p-fair-about__section:nth-of-type(5) .p-fair-about__text {
  margin-top: clamp(-168.75px, -22.5vw, 0px);
}
.p-fair-about__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: clamp(0px, 2.5vw, 18.75px);
       column-gap: clamp(0px, 2.5vw, 18.75px);
  row-gap: clamp(0px, 1.875vw, 14.0625px);
  margin-bottom: clamp(0px, 3.75vw, 28.125px);
  padding: 0 clamp(0px, 2.5vw, 18.75px);
}
.p-fair-about__list li {
  display: flex;
  justify-content: center;
  align-items: center;
  height: clamp(0px, 11.25vw, 84.375px);
  color: #fff;
  font-size: clamp(0px, 2.875vw, 21.5625px);
  text-align: center;
  background-color: var(--color-main);
  border-radius: clamp(0px, 2.25vw, 16.875px);
}
.p-fair-about__list-caption {
  font-size: clamp(0px, 2.875vw, 21.5625px);
  text-align: center;
}

/* event
---------------------------------------- */
.p-fair-event {
  padding-bottom: clamp(0px, 21.25vw, 159.375px);
}
.p-fair-event__title {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-event__text {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
  padding: 0 clamp(0px, 5vw, 37.5px);
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-event__subtitle {
  margin-bottom: clamp(0px, 5vw, 37.5px);
}
.p-fair-event__image {
  margin-bottom: clamp(0px, 5vw, 37.5px);
  text-align: center;
}
.p-fair-event__image img {
  width: clamp(0px, 85vw, 637.5px);
}
.p-fair-event__section + .p-fair-event__section {
  margin-top: clamp(0px, 13.75vw, 103.125px);
}
.p-fair-event__section:nth-of-type(1) .p-fair-event__subtitle {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
}
.p-fair-event__section:nth-of-type(1) .p-fair-event__text {
  margin-bottom: clamp(0px, 5.625vw, 42.1875px);
  padding: 0;
  text-align: center;
}
.p-fair-event__section:nth-of-type(1) .p-fair-event__image:nth-of-type(1) {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-event__section:nth-of-type(1) .p-fair-event__image:nth-of-type(2) {
  margin-left: clamp(-4.6875px, -0.625vw, 0px);
  text-align: left;
}
.p-fair-event__section:nth-of-type(1) .p-fair-event__image:nth-of-type(2) img {
  width: clamp(0px, 84.25vw, 631.875px);
}
.p-fair-event__section:nth-of-type(2) {
  margin-top: clamp(0px, 10vw, 75px);
}
.p-fair-event__section:nth-of-type(2) .p-fair-event__text {
  margin-bottom: clamp(0px, 4.375vw, 32.8125px);
  text-align: center;
}
.p-fair-event__section:nth-of-type(3) .p-fair-event__text {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-event__section:nth-of-type(6) .p-fair-event__text {
  margin-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-event__movie-title {
  margin-bottom: clamp(0px, 3.125vw, 23.4375px);
  font-size: clamp(0px, 3.75vw, 28.125px);
  font-weight: 700;
  text-align: center;
}
.p-fair-event__movie-content {
  aspect-ratio: 16/9;
  margin: 0 clamp(0px, 2.5vw, 18.75px);
}
.p-fair-event__movie-content iframe {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* audience
---------------------------------------- */
.p-fair-audience {
  padding-bottom: clamp(0px, 20vw, 150px);
}
.p-fair-audience__title {
  margin-bottom: clamp(0px, 7.5vw, 56.25px);
}
.p-fair-audience__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0px, 8.75vw, 65.625px);
  padding: 0 clamp(0px, 2.5vw, 18.75px);
}
.p-fair-audience__item {
  position: relative;
  padding: clamp(0px, 5vw, 37.5px);
  border-radius: clamp(0px, 2.25vw, 16.875px);
  background-color: var(--color-main-pale);
}
.p-fair-audience__item::after {
  position: absolute;
  right: clamp(0px, 11.25vw, 84.375px);
  bottom: clamp(-18.75px, -2.5vw, 0px);
  width: clamp(0px, 5.625vw, 42.1875px);
  height: clamp(0px, 3.5vw, 26.25px);
  background: url(../images/fair/top/bg_hukidashi-blue.png) no-repeat center center/contain;
  content: "";
}
.p-fair-audience__item-text {
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-audience__item-icon {
  position: absolute;
  right: clamp(-4.6875px, -0.625vw, 0px);
  bottom: clamp(-37.5px, -5vw, 0px);
}
.p-fair-audience__item:nth-child(1) .p-fair-audience__item-icon img {
  width: clamp(0px, 10.25vw, 76.875px);
}
.p-fair-audience__item:nth-child(2) {
  padding-bottom: clamp(0px, 7.5vw, 56.25px);
}
.p-fair-audience__item:nth-child(2)::after {
  right: auto;
  left: clamp(0px, 11.25vw, 84.375px);
  transform: scaleX(-1);
}
.p-fair-audience__item:nth-child(2) .p-fair-audience__item-icon {
  right: auto;
  left: clamp(-4.6875px, -0.625vw, 0px);
  bottom: clamp(-28.125px, -3.75vw, 0px);
}
.p-fair-audience__item:nth-child(2) .p-fair-audience__item-icon img {
  width: clamp(0px, 9.625vw, 72.1875px);
}
.p-fair-audience__item:nth-child(3) .p-fair-audience__item-icon img {
  width: clamp(0px, 9.625vw, 72.1875px);
}

/* teacher
---------------------------------------- */
.p-fair-teacher {
  padding-bottom: clamp(0px, 20vw, 150px);
}
.p-fair-teacher__title {
  margin-bottom: clamp(0px, 7.5vw, 56.25px);
}
.p-fair-teacher__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0px, 8.75vw, 65.625px);
  padding: 0 clamp(0px, 2.5vw, 18.75px);
}
.p-fair-teacher__item {
  position: relative;
  padding: clamp(0px, 5vw, 37.5px);
  border-radius: clamp(0px, 2.25vw, 16.875px);
  background-color: var(--color-second-pale);
}
.p-fair-teacher__item::after {
  position: absolute;
  right: clamp(0px, 11.25vw, 84.375px);
  bottom: clamp(-18.75px, -2.5vw, 0px);
  width: clamp(0px, 5.625vw, 42.1875px);
  height: clamp(0px, 3.5vw, 26.25px);
  background: url(../images/fair/top/bg_hukidashi-pink.png) no-repeat center center/contain;
  content: "";
}
.p-fair-teacher__item-text {
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-teacher__item-icon {
  position: absolute;
  right: clamp(-4.6875px, -0.625vw, 0px);
  bottom: clamp(-37.5px, -5vw, 0px);
}
.p-fair-teacher__item:nth-child(1) .p-fair-teacher__item-icon img {
  width: clamp(0px, 9.375vw, 70.3125px);
}
.p-fair-teacher__item:nth-child(2) {
  padding-bottom: clamp(0px, 6.25vw, 46.875px);
}
.p-fair-teacher__item:nth-child(2)::after {
  right: auto;
  left: clamp(0px, 11.25vw, 84.375px);
  transform: scaleX(-1);
}
.p-fair-teacher__item:nth-child(2) .p-fair-teacher__item-icon {
  right: auto;
  left: clamp(-4.6875px, -0.625vw, 0px);
}
.p-fair-teacher__item:nth-child(2) .p-fair-teacher__item-icon img {
  width: clamp(0px, 10.5vw, 78.75px);
}
.p-fair-teacher__item:nth-child(3) .p-fair-teacher__item-icon img {
  width: clamp(0px, 10.5vw, 78.75px);
}

/* faq
---------------------------------------- */
.p-fair-faq {
  padding-top: clamp(0px, 10vw, 75px);
  padding-bottom: clamp(0px, 10vw, 75px);
}
.p-fair-faq__title {
  margin-bottom: clamp(0px, 7.5vw, 56.25px);
}
.p-fair-faq__list {
  margin: 0 clamp(0px, 1.25vw, 9.375px);
  background-color: #fff;
  border-radius: clamp(0px, 2.25vw, 16.875px);
  overflow: hidden;
}
.p-fair-faq__item {
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-faq__item + .p-fair-faq__item::before {
  display: block;
  width: clamp(0px, 80vw, 600px);
  height: clamp(0px, 0.5vw, 3.75px);
  margin: 0 auto;
  background-image: radial-gradient(circle, #405a70 clamp(0px, 0.25vw, 1.875px), transparent clamp(0px, 0.25vw, 1.875px));
  background-size: clamp(0px, 1.5vw, 11.25px) clamp(0px, 0.5vw, 3.75px);
  content: "";
}
.p-fair-faq__item-q {
  position: relative;
  padding: clamp(0px, 5vw, 37.5px) clamp(0px, 3.75vw, 28.125px) clamp(0px, 5vw, 37.5px) clamp(0px, 10vw, 75px);
  list-style: none;
  cursor: pointer;
}
.p-fair-faq__item-q::-webkit-details-marker {
  display: none;
}
.p-fair-faq__item-q::before {
  position: absolute;
  top: clamp(0px, 3.75vw, 28.125px);
  left: clamp(0px, 3.75vw, 28.125px);
  color: #909397;
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  content: "Q.";
}
.p-fair-faq__item-q::after {
  position: absolute;
  top: 50%;
  right: clamp(0px, 3.75vw, 28.125px);
  display: inline-block;
  width: clamp(0px, 3vw, 22.5px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%);
  filter: brightness(0) saturate(100%) invert(97%) sepia(0%) saturate(1879%) hue-rotate(152deg) brightness(92%) contrast(62%);
  pointer-events: none;
  content: "";
}
.p-fair-faq__item-a {
  position: relative;
  padding: clamp(0px, 5vw, 37.5px) clamp(0px, 3.75vw, 28.125px) clamp(0px, 5vw, 37.5px) clamp(0px, 10vw, 75px);
  background-color: var(--color-main-pale);
}
.p-fair-faq__item-a::before {
  position: absolute;
  top: clamp(0px, 3.75vw, 28.125px);
  left: clamp(0px, 3.75vw, 28.125px);
  color: var(--color-main);
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  content: "A.";
}
.p-fair-faq__item[open] .p-fair-faq__item-q::after {
  transform: translateY(-50%) rotate(-180deg);
}
.p-fair-faq__button {
  margin-top: clamp(0px, 5vw, 37.5px);
}

/* column
---------------------------------------- */
.p-fair-column {
  padding-top: clamp(0px, 5.625vw, 42.1875px);
}
.p-fair-column__title {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
}
.p-fair-column__list {
  padding: 0 clamp(0px, 1.25vw, 9.375px);
}
.p-fair-column__list li + li::before {
  display: block;
  width: 100%;
  height: clamp(0px, 0.5vw, 3.75px);
  background-image: radial-gradient(circle, #405a70 clamp(0px, 0.25vw, 1.875px), transparent clamp(0px, 0.25vw, 1.875px));
  background-size: clamp(0px, 1.5vw, 11.25px) clamp(0px, 0.5vw, 3.75px);
  content: "";
}
.p-fair-column__list a {
  position: relative;
  display: block;
  padding: clamp(0px, 4.375vw, 32.8125px) clamp(0px, 5vw, 37.5px) clamp(0px, 4.375vw, 32.8125px) 0;
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-column__list a::after {
  position: absolute;
  top: 50%;
  right: 0;
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%) rotate(-90deg);
  filter: brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(678%) hue-rotate(165deg) brightness(96%) contrast(91%);
  content: "";
}

/* banner
---------------------------------------- */
.p-fair-banner {
  padding: clamp(0px, 2.5vw, 18.75px) clamp(0px, 6.25vw, 46.875px) clamp(0px, 17.5vw, 131.25px) clamp(0px, 6.25vw, 46.875px);
}
.p-fair-banner__inner {
  aspect-ratio: 700/364;
  padding: clamp(0px, 7.5vw, 56.25px) clamp(0px, 5vw, 37.5px) clamp(0px, 3.75vw, 28.125px) clamp(0px, 5vw, 37.5px);
  background: url(../images/fair/top/bg_banner.png) no-repeat center center/contain;
}
.p-fair-banner__title {
  margin-bottom: clamp(0px, 2.5vw, 18.75px);
  padding: 0 clamp(0px, 1.875vw, 14.0625px);
  color: #fff;
  font-size: clamp(0px, 5.75vw, 43.125px);
  font-weight: 700;
}
.p-fair-banner__text {
  margin-bottom: clamp(0px, 5vw, 37.5px);
  padding: 0 clamp(0px, 1.875vw, 14.0625px);
  color: #fff;
  font-size: clamp(0px, 3.25vw, 24.375px);
  line-height: 1.38;
}
.p-fair-banner__button a {
  position: relative;
  display: block;
  color: var(--color-main);
  font-size: clamp(0px, 4.25vw, 31.875px);
  font-weight: 700;
  text-align: center;
  line-height: clamp(0px, 10vw, 75px);
  border-radius: clamp(0px, 5vw, 37.5px);
  background-color: #fff;
}
.p-fair-banner__button a::after {
  position: absolute;
  top: 50%;
  right: clamp(0px, 2.5vw, 18.75px);
  display: inline-block;
  width: clamp(0px, 3.75vw, 28.125px);
  background: url(../images/fair/top/icon_arrow.svg) no-repeat center center/contain;
  aspect-ratio: 3/2;
  transform: translateY(-50%) rotate(-90deg);
  filter: brightness(0) saturate(100%) invert(38%) sepia(87%) saturate(678%) hue-rotate(165deg) brightness(96%) contrast(91%);
  content: "";
}/*# sourceMappingURL=fair-top.css.map */