@charset "UTF-8";
/*
Theme Name: Fukuyama Neuvola
Author:
*/
:root {
  --responsive--alignwide-width: calc(100vw - var(--responsive--spacing-horizontal));
  --responsive--content-width: calc(100vw - var(--responsive--spacing-horizontal));
}

@media only screen and (min-width: 320px) {
  :root {
    --responsive--alignwide-width: calc(100vw - 2 * var(--global--spacing-horizontal));
    --responsive--content-width: calc(100vw - 2 * var(--global--spacing-horizontal));
  }
}
@media only screen and (min-width: 1200px) {
  :root {
    --responsive--alignwide-width: min(calc(100vw - 4 * var(--global--spacing-horizontal)), 1200px);
    --responsive--content-width: min(calc(100vw - 4 * var(--global--spacing-horizontal)), 1000px);
  }
}
:root {
  /* Spacing */
  --global--spacing-horizontal: 16px;
  --global--spacing-vertical: 16px;
  /* Font Family */
  --global--font-primary: "Zen Kaku Gothic New", sans-serif;
  /* Line Height */
  --global--line-height-body: 1.75;
  --global--line-height-heading: 1.5;
  --global--line-height-content: 1.45;
}

/* Colors */
.tag-event {
  --category-color: #f6a01e;
}

.tag-oshirase {
  --category-color: #13b3cc;
}

.tag-for-company {
  --category-color: #009693;
}

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

@media only screen and (min-width: 600px) {
  .sp {
    display: none;
  }
}

.under-line-wave {
  display: inline;
  background: url(img/common/line-wave.png) repeat-x left 0 bottom 0px/auto 4px;
  padding-bottom: 1rem;
}
@media only screen and (min-width: 1024px) {
  .under-line-wave {
    background: url(img/common/line-wave.png) repeat-x bottom/auto 7px;
  }
}
.under-line-wave--narrow {
  padding-bottom: 0.5rem;
}

.line-fukidashi {
  font-weight: 700;
  position: relative;
}
.line-fukidashi::before {
  content: "";
  background: url(img/common/line-fukidashi1.png) no-repeat center/contain;
  width: 1.7rem;
  height: 2rem;
  display: inline-block;
  margin-right: 1em;
  margin-bottom: -0.5em;
  position: absolute;
  left: -3rem;
  bottom: 0.3em;
}
@media only screen and (min-width: 600px) {
  .line-fukidashi::before {
    width: 2.1rem;
    height: 3.3rem;
  }
}
.line-fukidashi::after {
  content: "";
  background: url(img/common/line-fukidashi2.png) no-repeat center/contain;
  width: 1.7rem;
  height: 2rem;
  display: inline-block;
  margin-left: 1em;
  margin-bottom: -0.5em;
  position: absolute;
  right: -3rem;
  bottom: 0.3em;
}
@media only screen and (min-width: 600px) {
  .line-fukidashi::after {
    width: 2.1rem;
    height: 3.3rem;
  }
}

.content-inner {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
}

html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-font-smoothing: antialiased;
  letter-spacing: 0.04em;
}

body {
  margin: 0;
  color: #494949;
}

body * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

a {
  background-color: transparent;
  color: #494949;
  -webkit-transition: all 0.5s 0s ease;
  transition: all 0.5s 0s ease;
}

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

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

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  /*line-height: 1.15;*/
  /* 1 */
  margin: 0;
  /* 2 */
}

button,
input {
  /* 1 */
  overflow: visible;
}

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

input,
input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

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

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

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

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

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

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

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

/* Misc
  ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

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, 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, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: var(--global--line-height-body);
  font-size: 62.5%;
  font-family: var(--global--font-primary);
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

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

a img {
  border: none;
}

a, a:hover, a:visited {
  text-decoration: none;
}

a:hover,
button:hover {
  opacity: 0.8;
}

b,
strong {
  font-weight: 700;
}

button {
  padding: 0;
  cursor: pointer;
  background: none;
  border: none;
  outline: none;
}

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

h1, h2, h3, h4, h5 {
  font-weight: 700;
  line-height: 1em;
  letter-spacing: 0.04em;
}

body, a, button, b, p {
  font-weight: 400;
  letter-spacing: 0.04em;
}

body, a, button, b, p {
  font-size: 1.4rem;
  font-weight: 400;
}

header {
  padding: 2rem;
  background-color: #fff9e7;
  position: relative;
  height: 80px;
}
@media only screen and (min-width: 1300px) {
  header {
    padding-top: 40px;
    height: auto;
  }
}
header .logo_wrap {
  width: 17.5rem;
  z-index: 30;
  position: absolute;
}
@media only screen and (min-width: 600px) {
  header .logo_wrap {
    width: 24rem;
  }
}
header .menu_button {
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 5rem;
  z-index: 30;
}
@media only screen and (min-width: 1300px) {
  header .menu_button {
    display: none;
  }
}
header .menu_button .close {
  display: none;
}
header .menu_button[aria-expanded=true] .close {
  display: block;
}
header .menu_button[aria-expanded=true] .open {
  display: none;
}
header .menu_items {
  display: flex;
  flex-direction: column;
  gap: 3.5rem;
  width: 29.5rem;
  margin: 0 auto;
  padding-top: 13rem;
}
@media only screen and (min-width: 1300px) {
  header .menu_items {
    width: auto;
    flex-direction: row;
    justify-content: flex-end;
    padding-top: 0;
    gap: 50px;
    margin: 0;
  }
}
header .menu_items__link {
  display: flex;
  align-items: center;
  gap: 1.75rem;
  transition: none;
}
@media only screen and (min-width: 1300px) {
  header .menu_items__link {
    flex-direction: column;
    gap: 15px;
  }
}
@media only screen and (min-width: 1300px) {
  header .menu_items__link:hover {
    border-bottom: dotted 4px #ff92be;
  }
}
header .menu_items__icon {
  width: 3rem;
}
@media only screen and (min-width: 1300px) {
  header .menu_items__icon {
    width: 4rem;
  }
}
header .menu_items__text {
  font-size: 1.8rem;
  font-weight: 700;
  border-bottom: dotted 4px #ff92be;
}
@media only screen and (min-width: 1300px) {
  header .menu_items__text {
    text-align: center;
    border-bottom: none;
  }
}
header .menu_items__text br {
  display: none;
}
@media only screen and (min-width: 1300px) {
  header .menu_items__text br {
    display: block;
  }
}
header .menu {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  scroll-behavior: smooth;
  z-index: 20;
  padding-bottom: 3rem;
  display: none;
}
@media only screen and (min-width: 1300px) {
  header .menu {
    background-color: transparent;
    display: block;
    position: static;
  }
}
header .menu__inner {
  overflow-y: auto;
  overscroll-behavior-y: contain;
  display: flex;
  flex-direction: column;
  gap: 7rem;
}
@media only screen and (min-width: 1300px) {
  header .menu__inner {
    flex-direction: row;
    justify-content: flex-end;
  }
}
header .menu__btn-area {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  width: 29.5rem;
  margin: 0 auto;
}
@media only screen and (min-width: 1300px) {
  header .menu__btn-area {
    width: 244px;
    margin: 0;
  }
}
header .menu__onsei-btn {
  width: 100%;
  cursor: pointer;
  height: 5.3rem;
  border-radius: 100vh;
  background-color: #ff92be;
  position: relative;
}
header .menu__onsei-btn::before {
  content: "";
  background: url(img/header/icon_onsei.png) no-repeat center/contain;
  width: 5.3rem;
  height: 5.3rem;
  position: absolute;
  left: 0;
  top: 0;
}
header .menu__onsei-btn-text {
  color: #fff;
  font-weight: 700;
  text-align: center;
  font-size: 1.6rem;
  line-height: 5.3rem;
}
header .menu__search-form {
  position: relative;
}
header .menu__search-form #search-form-box {
  height: 5.3rem;
  border-radius: 100vh;
  line-height: 5.3rem;
  font-size: 1.6rem;
  position: relative;
  border: solid 2px #ff92be;
  width: 100%;
  padding: 0 1em;
}
header .menu__search-form #search-btn-area {
  width: 5.3rem;
  position: absolute;
  right: 0;
  top: 0;
}

.section-ttl {
  margin-bottom: 3.5rem;
  text-align: center;
}
@media only screen and (min-width: 1024px) {
  .section-ttl {
    margin-bottom: 6rem;
    text-align: left;
  }
}
.section-ttl__en {
  margin: 0 auto 1.5rem;
  display: block;
  max-width: 100%;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__en {
    margin: 0 0 1.5rem 0;
  }
}
.section-ttl__en--center {
  margin: 0 auto 1.5rem;
  text-align: center;
}
.section-ttl__en--top-news {
  width: 15.65rem;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__en--top-news {
    width: 23rem;
  }
}
.section-ttl__en--top-about {
  width: 18.5rem;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__en--top-about {
    width: 27.8rem;
  }
}
.section-ttl__en--top-supporter {
  width: 31.5rem;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__en--top-supporter {
    width: 47.4rem;
  }
}
.section-ttl__en--top-neuvola {
  width: 26.4rem;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__en--top-neuvola {
    width: 36.9rem;
  }
}
.section-ttl__jp {
  font-size: 1.4rem;
  font-weight: 700;
}
@media only screen and (min-width: 1024px) {
  .section-ttl__jp {
    font-size: 1.8rem;
  }
}
.section-ttl__jp .circle {
  color: #ff92be;
}
.section-ttl--center {
  text-align: center;
}

.cat-tag-list {
  display: flex;
  justify-content: center;
  gap: 1.3rem;
  margin-bottom: 3.2rem;
  flex-wrap: wrap;
}
@media only screen and (min-width: 1024px) {
  .cat-tag-list {
    gap: 2.2rem;
    margin-bottom: 3.5rem;
  }
}
.cat-tag-list__item {
  background-color: #b5b5b5;
  padding: 0 1rem;
  border-radius: 100vh;
  transition: background-color 0.2s linear, color 0.2s linear;
}
.cat-tag-list__item.current {
  background-color: #ff92be;
}
.cat-tag-list__item.current[data-term=oshirase] {
  background-color: #13b3cc;
}
.cat-tag-list__item.current[data-term=event] {
  background-color: #f6a01e;
}
.cat-tag-list__item.current[data-term=for-company] {
  background-color: #009693;
}
.cat-tag-list__link {
  color: #fff;
  font-size: 1.2rem;
  font-weight: 700;
}
@media only screen and (min-width: 1024px) {
  .cat-tag-list__link {
    font-size: 1.6rem;
  }
}

.news-list {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media only screen and (min-width: 1024px) {
  .news-list::after {
    content: "";
    display: block;
    width: 30%;
  }
}
@media only screen and (min-width: 1024px) {
  .news-list {
    justify-content: space-between;
    gap: 0;
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 1024px) {
  .news-list--archive {
    gap: 6rem 0;
  }
}
@media only screen and (min-width: 1024px) {
  .news-list__item {
    width: 30%;
  }
}
.news-list__link {
  display: block;
}
.news-list__img {
  aspect-ratio: 3/2;
  border-radius: 1rem;
  overflow: hidden;
  margin-bottom: 1rem;
}
@media only screen and (min-width: 1024px) {
  .news-list__img {
    margin-bottom: 1rem;
  }
}
.news-list__img img {
  width: 100%;
  object-fit: cover;
}
.news-list__date-cat {
  display: flex;
  gap: 1.2rem;
  margin-bottom: 1.2rem;
}
@media only screen and (min-width: 1024px) {
  .news-list__date-cat {
    gap: 1rem;
  }
}
.news-list__date {
  font-size: 1.2rem;
  font-weight: 700;
}
@media only screen and (min-width: 1024px) {
  .news-list__date {
    font-size: 1.4rem;
  }
}
.news-list__term-group {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.news-list__cat {
  background-color: var(--category-color);
  padding: 0 1rem;
  border-radius: 100vh;
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
  display: inline;
}
@media only screen and (min-width: 1024px) {
  .news-list__cat {
    font-size: 1.4rem;
  }
}
.news-list__title {
  font-size: 1.4rem;
  line-height: var(--global--line-height-body);
  font-weight: 500;
}
@media only screen and (min-width: 1024px) {
  .news-list__title {
    font-size: 1.6rem;
  }
}

@keyframes loopBg {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -100% 0;
  }
}
@keyframes loopBgReverce {
  0% {
    background-position: -100% 0;
  }
  100% {
    background-position: 0 0;
  }
}
.logo-flow {
  position: relative;
  width: 5300px;
  background: url(img/home/logo-flow1.png) repeat-x center/auto 100%;
  animation: loopBg 30s linear infinite;
  overflow: hidden;
}
.logo-flow::before {
  display: block;
  content: "";
  padding-top: 11.8666666667vw;
}
@media only screen and (min-width: 600px) {
  .logo-flow::before {
    padding-top: 6.4rem;
  }
}
@media only screen and (min-width: 600px) {
  .logo-flow {
    width: 10600px;
    animation: loopBg 60s linear infinite;
  }
}
.logo-flow__wrapper {
  overflow: hidden;
  width: 100%;
}
.logo-flow--reverce {
  background: url(img/home/logo-flow2.png) repeat-x center/auto 100%;
  animation: loopBgReverce 30s linear infinite;
  margin-top: 1.5rem;
}
@media only screen and (min-width: 600px) {
  .logo-flow--reverce {
    animation: loopBgReverce 60s linear infinite;
  }
}

.more-btn {
  position: relative;
  width: 29.5rem;
  margin: 0 auto;
}
.more-btn__wrapper {
  width: 100%;
  text-align: center;
}
.more-btn__lead {
  font-size: 1.3rem;
  text-align: center;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 600px) {
  .more-btn__lead {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 600px) {
  .more-btn {
    width: 42rem;
  }
}
.more-btn__link {
  display: block;
  background-color: #fff;
  border: solid 2px #ff92be;
  border-radius: 100vh;
  font-size: 1.6rem;
  color: #ff92be;
  font-weight: 700;
  text-align: center;
  padding: 1rem 0;
  line-height: 1.2;
  position: relative;
  transition: background-color 0.2s linear, color 0.2s linear;
}
@media only screen and (min-width: 600px) {
  .more-btn__link {
    font-size: 1.8rem;
    padding: 1.5rem 0;
  }
}
.more-btn__link::after {
  content: "";
  background: url(img/common/arw-btn.png) no-repeat center/contain;
  width: 2.6rem;
  height: 0.8rem;
  position: absolute;
  right: 2.6rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
}
.more-btn__link:hover {
  background-color: #ff92be;
  color: #fff;
  opacity: 1;
}
.more-btn__link:hover::after {
  background: url(img/common/arw-btn-wh.png) no-repeat center/contain;
}
.more-btn__link--out::after {
  background: url(img/common/icon-link.png) no-repeat center/contain;
  width: 1.6rem;
  height: 1.6rem;
}
.more-btn__link--out:hover::after {
  background: url(img/common/icon-link-wh.png) no-repeat center/contain;
}
.more-btn__link--footer {
  line-height: 14.1333333333vw;
  padding: 0;
  font-size: 4.2666666667vw;
}
@media only screen and (min-width: 768px) {
  .more-btn__link--footer {
    font-size: 1.6rem;
    line-height: 5.8rem;
    width: 26.4rem;
    margin: 0 0 0 auto;
    border: solid 4px #ff92be;
  }
}
.more-btn .line-fukidashi {
  font-size: 1.3rem;
}
@media only screen and (min-width: 600px) {
  .more-btn .line-fukidashi {
    width: 1.6rem;
  }
}

#pauseBtn {
  position: fixed;
  bottom: 5.5rem;
  right: 2rem;
  font-size: 1.4rem;
  color: #ff92be;
  font-weight: 700;
  background-color: #fff;
  padding: 0.5rem;
  border: solid 2px #ff92be;
}
@media only screen and (min-width: 768px) {
  #pauseBtn {
    font-size: 1.6rem;
  }
}

#stopBtn {
  position: fixed;
  bottom: 1rem;
  right: 2rem;
  font-size: 1.4rem;
  color: #ff92be;
  font-weight: 700;
  background-color: #fff;
  padding: 0.5rem;
  border: solid 2px #ff92be;
}
@media only screen and (min-width: 768px) {
  #stopBtn {
    font-size: 1.6rem;
  }
}

.footer {
  padding-top: 28.8vw;
  height: 266.6666666667vw;
  background: url(img/footer/footer-bg-sp.webp) no-repeat center/cover;
  background-color: #ffeff5;
  position: relative;
}
@media only screen and (min-width: 768px) {
  .footer {
    padding-top: 15rem;
    height: 68rem;
    background: url(img/footer/footer-bg.webp) no-repeat center/cover;
    background-color: #ffeff5;
  }
}
.footer__banner-area {
  display: flex;
  flex-direction: column;
  gap: 6.6666666667vw;
  width: 80%;
  margin: 0 auto 13.3333333333vw;
}
@media only screen and (min-width: 768px) {
  .footer__banner-area {
    flex-direction: row;
    width: 90%;
    max-width: 102.4rem;
    justify-content: space-between;
    gap: 0;
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 768px) {
  .footer__banner-item {
    width: 30%;
  }
}
.footer__info-area {
  display: flex;
  flex-direction: column;
  gap: 13.3333333333vw;
}
@media only screen and (min-width: 768px) {
  .footer__info-area {
    flex-direction: row;
    gap: 0;
    justify-content: space-between;
    width: 90%;
    max-width: 102.4rem;
    margin: 0 auto;
  }
}
.footer__department-logo {
  width: 57.3333333333vw;
  margin: 0 auto 4vw;
}
@media only screen and (min-width: 768px) {
  .footer__department-logo {
    width: 21.5rem;
    margin: 0 auto 1rem 0;
  }
}
.footer__address {
  font-size: 3.7333333333vw;
  text-align: center;
  line-height: 1.5;
}
@media only screen and (min-width: 768px) {
  .footer__address {
    font-size: 1.6rem;
    text-align: left;
  }
}
.footer__btn-area {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .footer__btn-area {
    align-items: flex-end;
  }
}
.footer__btn-sns {
  display: flex;
  justify-content: center;
  gap: 4.9333333333vw;
  margin-bottom: 7.3333333333vw;
}
@media only screen and (min-width: 768px) {
  .footer__btn-sns {
    justify-content: flex-end;
    margin-bottom: 2.5rem;
    gap: 1.8rem;
  }
}
.footer__sns-icon {
  width: 12vw;
}
@media only screen and (min-width: 768px) {
  .footer__sns-icon {
    width: 4.2rem;
  }
}

.copyright {
  background: url(img/footer/copyright-bg.png) repeat;
  text-align: center;
  font-size: 2.6666666667vw;
  color: #fff;
  line-height: 2;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .copyright {
    font-size: 1.2rem;
  }
}

.to-top-btn {
  width: 17.0666666667vw;
  margin: 0 auto 11.2vw;
  display: block;
}
@media only screen and (min-width: 768px) {
  .to-top-btn {
    width: 9.5rem;
    margin: 0 auto 6rem;
  }
}

.archive footer, .single footer, .search footer {
  background-color: #fff9e7;
}

.fade-up {
  opacity: 0;
}
.fade-up.is-active {
  transition: all 0.5s 0s linear;
  animation: fadeInUp 0.6s ease-out forwards;
}
.fade-up.delay01 {
  animation-delay: 0.5s;
}
.fade-up.delay02 {
  animation-delay: 0.8s;
}
.fade-up.delay03 {
  animation-delay: 1s;
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fade-in {
  opacity: 0;
}
.fade-in.is-active {
  transition: all 0.7s 0s linear;
  animation: fadeIn 0.6s linear forwards;
}
.fade-in.delay01 {
  animation-delay: 0.5s;
}
.fade-in.delay02 {
  animation-delay: 0.8s;
}
.fade-in.delay03 {
  animation-delay: 1s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fade-in-para {
  opacity: 0;
}
.fade-in-para.is-active {
  animation: fadeIn 1s linear forwards;
}

.pagination {
  padding: 3rem 0;
}
@media only screen and (min-width: 600px) {
  .pagination {
    padding: 6rem 0;
  }
}
.pagination .nav-links .page-numbers {
  display: flex;
  gap: 3rem;
  justify-content: center;
  align-items: center;
}
.pagination .nav-links .page-numbers .page-numbers {
  font-size: 1.6rem;
  color: #ff92be;
  font-weight: 700;
}
@media only screen and (min-width: 600px) {
  .pagination .nav-links .page-numbers .page-numbers {
    font-size: 1.8rem;
  }
}
.pagination .nav-links .page-numbers .page-numbers.current {
  color: #fff;
  background-color: #ff92be;
  border-radius: 100%;
  width: 2.5rem;
  height: 2.5rem;
}
@media only screen and (min-width: 600px) {
  .pagination .nav-links .page-numbers .page-numbers.current {
    width: 4rem;
    height: 4rem;
  }
}
.pagination .nav-links .page-numbers .prev img {
  width: 2rem;
  transform: rotateY(180deg);
}
@media only screen and (min-width: 600px) {
  .pagination .nav-links .page-numbers .prev img {
    width: 3rem;
  }
}
.pagination .nav-links .page-numbers .next img {
  width: 2rem;
}
@media only screen and (min-width: 600px) {
  .pagination .nav-links .page-numbers .next img {
    width: 3rem;
  }
}

.breadcrumbs {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  font-size: 1.2rem;
}
.breadcrumbs a {
  font-size: 1.2rem;
}

.pagination-single {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  padding: 2rem;
  border-radius: 5px;
  max-width: 522px;
  margin: 0 auto;
}
.pagination-single__link {
  font-size: 1.4rem;
  font-weight: 700;
  color: #ff92be;
}
@media only screen and (min-width: 768px) {
  .pagination-single__link {
    font-size: 1.6rem;
  }
}
.pagination-single__icon {
  width: 2.25rem;
  vertical-align: middle;
  padding-bottom: 0.5rem;
  margin-left: 0.5rem;
}
.pagination-single__icon.reverce {
  transform: rotateY(-180deg);
  margin-left: 0;
  margin-right: 0.5rem;
}

.mv-block {
  width: 100%;
}
.mv-block .wrap {
  position: relative;
  max-width: 1200px;
  width: 89.3333333333%;
  margin: auto;
}
.mv-block .mv-txt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  row-gap: 1.5rem;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}
.mv-block .mv-bg {
  border-radius: min(5.3333333333vw, 40px);
  overflow: hidden;
}
.mv-block .mv-icon {
  width: min(18.6666666667vw, 88px);
}
.mv-block .mv-title {
  width: min(61.2vw, 404px);
}
.mv-block .mv-title--news {
  width: min(33vw, 229px);
}
.mv-block .mv-title--event {
  width: min(50vw, 344px);
}

/*
  home
*/
.home .mv {
  height: 112.1333333333vw;
  position: relative;
  background-color: #fff9e7;
}
@media only screen and (min-width: 600px) {
  .home .mv {
    height: 41.1428571429vw;
    padding: 0 0 2.7857142857vw;
  }
}
.home .mv__catchphrase {
  width: 34.6666666667vw;
  position: absolute;
  top: 0;
  left: 3.2vw;
}
@media only screen and (min-width: 600px) {
  .home .mv__catchphrase {
    width: 29.1428571429vw;
    left: 10vw;
    top: 0.7142857143vw;
  }
}
.home .mv__bg-area {
  position: relative;
  background: url(img/home/mv_bg_sp.webp) no-repeat center/contain;
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 600px) {
  .home .mv__bg-area {
    background: url(img/home/mv_bg_pc.webp) no-repeat center/contain;
  }
}
.home .mv__fukidashi {
  width: 74.5333333333vw;
  position: absolute;
  top: 20.6666666667vw;
  left: 0;
  right: 0;
  margin: auto;
}
@media only screen and (min-width: 600px) {
  .home .mv__fukidashi {
    width: 31vw;
    top: 5.9285714286vw;
  }
}
.home .mv__title {
  width: 73.7333333333vw;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 49.8666666667vw;
}
@media only screen and (min-width: 600px) {
  .home .mv__title {
    width: 56.2857142857vw;
    top: 17.6428571429vw;
  }
}
.home .mv__date {
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 89.3333333333vw;
}
@media only screen and (min-width: 600px) {
  .home .mv__date {
    width: 41.4285714286vw;
  }
}
.home .mv__decoration-area {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.home .mv__decoration-area .item {
  position: absolute;
}
@media only screen and (min-width: 600px) {
  .home .mv__decoration-area--sp {
    display: none;
  }
}
.home .mv__decoration-area--sp .item01 {
  width: 11.3333333333vw;
  left: 0;
  top: 32vw;
}
.home .mv__decoration-area--sp .item02 {
  width: 4.4vw;
  left: 16vw;
  top: 55.3333333333vw;
}
.home .mv__decoration-area--sp .item03 {
  width: 8.4vw;
  left: 1.8666666667vw;
  top: 81.3333333333vw;
}
.home .mv__decoration-area--sp .item04 {
  width: 3.4666666667vw;
  right: 0;
  top: 29.2vw;
}
.home .mv__decoration-area--sp .item05 {
  width: 12.1333333333vw;
  right: 5.0666666667vw;
  top: 47.2vw;
}
.home .mv__decoration-area--sp .item06 {
  width: 13.6vw;
  right: 3.3333333333vw;
  top: 81.3333333333vw;
}
.home .mv__decoration-area--pc {
  display: none;
}
@media only screen and (min-width: 600px) {
  .home .mv__decoration-area--pc {
    display: block;
  }
}
.home .mv__decoration-area--pc .item01 {
  width: 7.7142857143vw;
  top: 14.0714285714vw;
  left: 5.8571428571vw;
}
.home .mv__decoration-area--pc .item02 {
  width: 1.8571428571vw;
  top: 16.5714285714vw;
  left: 26.1428571429vw;
}
.home .mv__decoration-area--pc .item03 {
  width: 3.4285714286vw;
  top: 26.5714285714vw;
  left: 2vw;
}
.home .mv__decoration-area--pc .item04 {
  width: 5.1428571429vw;
  top: 34.9285714286vw;
  left: 12.8571428571vw;
}
.home .mv__decoration-area--pc .item05 {
  width: 5.0714285714vw;
  top: 14.7857142857vw;
  right: 29.2857142857vw;
}
.home .mv__decoration-area--pc .item06 {
  width: 3.5vw;
  top: 13.3571428571vw;
  right: 2.8571428571vw;
}
.home .mv__decoration-area--pc .item07 {
  width: 2vw;
  top: 23.7857142857vw;
  right: 9.4285714286vw;
}
.home .mv__decoration-area--pc .item08 {
  width: 5.5vw;
  top: 33.4285714286vw;
  right: 11.7142857143vw;
}
.home .top-banner {
  padding-top: 4rem;
  background-color: #fff9e7;
}
@media only screen and (min-width: 1024px) {
  .home .top-banner {
    padding-top: 8rem;
  }
}
.home .top-banner .banner {
  display: block;
  margin: auto;
  width: min(1000px, 90%);
  background: #fff;
  transition: all 0.2s ease-out;
}
.home .top-banner .banner img {
  transition: all 0.2s ease-out;
}
.home .top-banner .banner:hover img {
  opacity: 0.7;
}
.home .top-news {
  padding-top: 5rem;
  background-color: #fff9e7;
  padding-bottom: 13.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-news {
    padding-top: 10rem;
    padding-bottom: 28.5rem;
  }
}
.home .top-news__content {
  background-color: #fff;
  border-radius: 4rem;
  padding: 3.7rem 2.2rem;
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .home .top-news__content {
    padding: 7rem 10rem;
    border-radius: 8rem;
  }
}
.home .top-news .news-list {
  margin-bottom: 3rem;
}
@media only screen and (min-width: 600px) {
  .home .top-news .news-list {
    margin-bottom: 6rem;
  }
}
.home .top-about {
  background-color: #fff9e7;
  margin-top: -7.5rem;
  border-radius: 7.5rem 0 0 0;
  padding-bottom: 13.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-about {
    margin-top: -16rem;
    border-radius: 16rem 0 0 0;
  }
}
.home .top-about .section-ttl {
  margin-bottom: 2.5rem;
}
.home .top-about__content {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 5.8rem 0;
  padding: 5.85rem 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__content {
    padding: 13.5rem 0;
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .home .top-about__text-area {
    width: 46%;
  }
}
.home .top-about__lead {
  text-align: center;
  line-height: 2.5;
  color: #ff92be;
  font-weight: 700;
  font-size: 1.6rem;
  margin-bottom: 2.75rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__lead {
    text-align: left;
    margin-bottom: 3rem;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-about__lead {
    font-size: 2.4rem;
  }
}
.home .top-about__desc {
  font-size: 1.4rem;
  margin-bottom: 3rem;
}
@media only screen and (min-width: 1200px) {
  .home .top-about__desc {
    font-size: 1.6rem;
    margin-bottom: 4rem;
  }
}
@media only screen and (min-width: 1024px) {
  .home .top-about__white-box {
    display: inline-block;
  }
}
.home .top-about__white-box-content {
  background-color: #fff;
  display: flex;
  justify-content: center;
  gap: 1.2rem;
  align-items: center;
  border-radius: 1rem;
  padding: 1rem 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__white-box-content {
    justify-content: flex-start;
    gap: 0.8rem;
    padding: 1.8rem 1.5rem;
    border-radius: 2rem;
  }
}
.home .top-about__white-box-ttl {
  color: #ff92be;
  font-weight: 700;
  font-size: 1.6rem;
  border: solid 2px #ff92be;
  border-radius: 0.25rem;
  padding: 0 0.3em;
}
@media only screen and (min-width: 1200px) {
  .home .top-about__white-box-ttl {
    font-size: 2rem;
    border-radius: 0.5rem;
  }
}
.home .top-about__white-box-date {
  font-size: 1.9rem;
  font-weight: 700;
}
.home .top-about__img-area {
  position: relative;
  height: 103.3333333333vw;
}
.home .top-about__img-area figure {
  position: absolute;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__img-area {
    height: auto;
    width: 50%;
    max-width: auto;
  }
}
.home .top-about__img-area--img01 {
  width: 72vw;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__img-area--img01 {
    width: 31.4285714286vw;
    position: absolute;
    top: -1.0714285714vw;
    left: 1.6428571429vw;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-about__img-area--img01 {
    width: 44rem;
    position: absolute;
    top: -1.5rem;
    left: 2.3rem;
  }
}
.home .top-about__img-area--img02 {
  width: 33.8666666667vw;
  position: absolute;
  top: 39.3333333333vw;
  right: 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__img-area--img02 {
    width: 14.2857142857vw;
    position: absolute;
    top: 13.4285714286vw;
    right: 0;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-about__img-area--img02 {
    width: 20rem;
    position: absolute;
    top: 18.8rem;
    right: 0;
  }
}
.home .top-about__img-area--img03 {
  width: 35.3333333333vw;
  position: absolute;
  top: 60.6666666667vw;
  left: 7.6vw;
}
@media only screen and (min-width: 1024px) {
  .home .top-about__img-area--img03 {
    width: 14.7142857143vw;
    position: absolute;
    top: 26.2142857143vw;
    right: 5.5vw;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-about__img-area--img03 {
    width: 20.6rem;
    position: absolute;
    top: 36.7rem;
    right: 7.7rem;
  }
}
@media only screen and (min-width: 1024px) {
  .home .top-about__img-area .deco {
    transform: translateY(50px);
  }
}
.home .top-about__img-area--deco01 {
  width: 10.45%;
  top: 1.19%;
  left: -2.17%;
}
.home .top-about__img-area--deco02 {
  width: 15%;
  top: 3.5%;
  right: 12.37%;
}
.home .top-about__img-area--deco03 {
  width: 12.79%;
  top: 40.29%;
  left: 28.7%;
}
.home .top-about__img-area--deco04 {
  width: 11.28%;
  top: 70.5%;
  left: -4.1%;
}
.home .top-about__img-area--deco05 {
  width: 4.68%;
  top: 75.56%;
  left: 58.8%;
}
.home .top-about__img-area--deco06 {
  width: 16.3%;
  top: 95.1%;
  right: 8.19%;
}
.home .top-about__img-area--deco07 {
  width: 8.86%;
  top: 110%;
  left: 31.4%;
}
.home .top-supporter {
  background-color: #fff9e7;
  margin-top: -7.5rem;
  border-radius: 0 7.5rem 0 0;
  padding: 5.85rem 0 13.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter {
    margin-top: -16rem;
    border-radius: 0 16rem 0 0;
    padding-bottom: 28.5rem;
  }
}
.home .top-supporter__content {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 5.8rem 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__content {
    padding: 13.5rem 0;
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__text-area {
    width: 46%;
  }
}
.home .top-supporter__desc {
  font-size: 1.4rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__desc {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.home .top-supporter__box-area {
  display: flex;
  flex-direction: column;
  gap: 2.1rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-area {
    gap: 2.4rem;
  }
}
.home .top-supporter__box-link {
  background-color: #fff;
  border-radius: 1rem;
  padding: 2rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-link {
    border-radius: 2rem;
    padding: 1.6rem;
    gap: 1.4rem;
  }
}
.home .top-supporter__box-upper {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.home .top-supporter__box-img {
  width: 6.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-img {
    width: 8.6rem;
  }
}
.home .top-supporter__box-textarea {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  flex: 1;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-textarea {
    gap: 2.4rem;
  }
}
.home .top-supporter__box-ttl {
  font-size: 1.6rem;
  color: #ff92be;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-ttl {
    font-size: 2.4rem;
  }
}
.home .top-supporter__box-desc {
  font-size: 1.4rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__box-desc {
    font-size: 1.6rem;
  }
}
.home .top-supporter__img-area {
  position: relative;
  height: 100.5333333333vw;
  margin-bottom: 3rem;
}
.home .top-supporter__img-area figure {
  position: absolute;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__img-area {
    width: 50%;
    height: auto;
    margin-bottom: 0;
  }
}
.home .top-supporter__img-area--img01 {
  width: 36.4vw;
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__img-area--img01 {
    width: 16.7857142857vw;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-supporter__img-area--img01 {
    width: 23.5rem;
  }
}
.home .top-supporter__img-area--img02 {
  width: 77.3333333333vw;
  position: absolute;
  top: 30.1333333333vw;
  right: 0;
}
@media only screen and (min-width: 1024px) {
  .home .top-supporter__img-area--img02 {
    width: 35.4285714286vw;
    top: 13.9285714286vw;
    right: 1.7142857143vw;
  }
}
@media only screen and (min-width: 1200px) {
  .home .top-supporter__img-area--img02 {
    width: 49.6rem;
    top: 19.5rem;
    right: 2.4rem;
  }
}
.home .top-supporter__img-area .deco {
  transform: translateY(100px);
}
.home .top-supporter__img-area--deco01 {
  width: 3.67%;
  top: -4.84%;
  left: -3.6%;
}
.home .top-supporter__img-area--deco02 {
  width: 9.44%;
  top: -2.3%;
  left: 70.9%;
}
.home .top-supporter__img-area--deco03 {
  width: 15.55%;
  top: 22%;
  left: 47.3%;
}
.home .top-supporter__img-area--deco04 {
  width: 5.51%;
  top: 50.6%;
  left: 8.19%;
}
.home .top-supporter__img-area--deco05 {
  width: 10.95%;
  top: 74.2%;
  left: -8%;
}
.home .top-supporter__img-area--deco06 {
  width: 13.2%;
  top: 82.2%;
  left: 72.2%;
}
.home .top-supporter__img-area--deco07 {
  width: 9%;
  top: 97%;
  left: 34.4%;
}
.home .top-supporter .more-btn__wrapper {
  margin-bottom: 2rem;
}
@media only screen and (min-width: 600px) {
  .home .top-supporter .more-btn__wrapper {
    margin-bottom: 4rem;
  }
}
.home .logo-flow__wrapper {
  margin-bottom: 4.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .logo-flow__wrapper {
    margin-bottom: 7rem;
  }
}
.home .top-neuvola {
  background-color: #ffeff5;
  margin-top: -7.5rem;
  border-radius: 7.5rem 0 0 0;
  padding-top: 5.8rem;
  padding-bottom: 9.25rem;
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola {
    margin-top: -16rem;
    border-radius: 16rem 0 0 0;
    padding-top: 13.5rem;
    padding-bottom: 12.3rem;
  }
}
.home .top-neuvola__content {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  position: relative;
}
.home .top-neuvola__rose-area {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  transform: translateY(100px);
}
.home .top-neuvola__rose-area .item {
  position: absolute;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__rose-area--sp {
    display: none;
  }
}
.home .top-neuvola__rose-area--sp .item01 {
  width: 12.5333333333vw;
  top: 24.85rem;
  left: 4vw;
}
.home .top-neuvola__rose-area--sp .item02 {
  width: 20vw;
  top: 28.35rem;
  right: 2vw;
}
.home .top-neuvola__rose-area--sp .item03 {
  width: 20vw;
  top: 63.65rem;
  left: 3.0666666667vw;
}
.home .top-neuvola__rose-area--sp .item04 {
  width: 12.2666666667vw;
  top: 70.1rem;
  right: 17.3333333333vw;
}
.home .top-neuvola__rose-area--sp .item05 {
  width: 12.8vw;
  top: 86.3rem;
  left: -13.3333333333vw;
}
.home .top-neuvola__rose-area--sp .item06 {
  width: 19.0666666667vw;
  top: 89.9rem;
  right: -15.3333333333vw;
}
.home .top-neuvola__rose-area--sp .item07 {
  width: 19.0666666667vw;
  top: 112.65rem;
  left: -13.0666666667vw;
}
.home .top-neuvola__rose-area--sp .item08 {
  width: 12.6666666667vw;
  top: 121.1rem;
  right: -4vw;
}
.home .top-neuvola__rose-area--sp .item09 {
  width: 12.6666666667vw;
  top: 140.2rem;
  left: -4vw;
}
.home .top-neuvola__rose-area--sp .item10 {
  width: 20.1333333333vw;
  top: 145.35rem;
  right: -5.3333333333vw;
}
.home .top-neuvola__rose-area--sp .item11 {
  width: 20.1333333333vw;
  bottom: 33.1rem;
  left: 6.4vw;
}
.home .top-neuvola__rose-area--sp .item12 {
  width: 12.2666666667vw;
  bottom: 30rem;
  right: 13.8666666667vw;
}
.home .top-neuvola__rose-area--sp .item13 {
  width: 12.6666666667vw;
  bottom: 15.5rem;
  left: -8.9333333333vw;
}
.home .top-neuvola__rose-area--sp .item14 {
  width: 12.6666666667vw;
  bottom: 6.15rem;
  right: -6.6666666667vw;
}
.home .top-neuvola__rose-area--sp .item15 {
  width: 19.0666666667vw;
  bottom: 0;
  left: 26.4vw;
}
.home .top-neuvola__rose-area--pc {
  display: none;
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  left: 0;
  right: 0;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__rose-area--pc {
    display: block;
  }
}
.home .top-neuvola__rose-area--pc .item01 {
  width: 9.3rem;
  top: 17.9rem;
  left: 6.5rem;
}
.home .top-neuvola__rose-area--pc .item02 {
  width: 14.6rem;
  top: 25rem;
  right: 5rem;
}
.home .top-neuvola__rose-area--pc .item03 {
  width: 9.1rem;
  top: 52.6rem;
  right: 28.8rem;
}
.home .top-neuvola__rose-area--pc .item04 {
  width: 14.6rem;
  top: 52.6rem;
  left: 28.8rem;
}
.home .top-neuvola__rose-area--pc .item05 {
  width: 9.2rem;
  top: 91.4rem;
  left: -5.4rem;
}
.home .top-neuvola__rose-area--pc .item06 {
  width: 13.9rem;
  top: 90.4rem;
  right: -16.3rem;
}
.home .top-neuvola__rose-area--pc .item07 {
  width: 14.6rem;
  top: 124.2rem;
  left: -18.7rem;
}
.home .top-neuvola__rose-area--pc .item08 {
  width: 9.3rem;
  top: 129.9rem;
  right: -6.2rem;
}
.home .top-neuvola__rose-area--pc .item09 {
  width: 9.4rem;
  bottom: 18.8rem;
  left: 26.9rem;
}
.home .top-neuvola__rose-area--pc .item10 {
  width: 13.9rem;
  bottom: 49.2rem;
  right: 24rem;
}
.home .top-neuvola__rose-area--pc .item11 {
  width: 14.6rem;
  bottom: 15rem;
  left: -4.6rem;
}
.home .top-neuvola__rose-area--pc .item12 {
  width: 9.2rem;
  bottom: 17.5rem;
  right: 0;
}
.home .top-neuvola__rose-area--pc .item13 {
  width: 13.9rem;
  bottom: -2.8rem;
  right: 42.8rem;
}
.home .top-neuvola__rose-area--pc .item14 {
  width: 9.3rem;
  bottom: -5rem;
  left: 11.8rem;
}
.home .top-neuvola__fukidashi-area {
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
  justify-content: center;
  align-items: center;
  width: 34.5rem;
  max-width: 100%;
  margin: 0 auto 7rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__fukidashi-area {
    flex-direction: row;
    gap: 1.5rem;
    margin-bottom: 7rem;
    width: 100%;
  }
}
.home .top-neuvola__text-img {
  width: 13.15rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__text-img {
    width: 25%;
    max-width: 21rem;
  }
}
.home .top-neuvola__text-area {
  padding: 8.5rem 4.75rem 6.1rem;
  background: url(img/home/neuvola_fukidashi_sp.png) no-repeat center/contain;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__text-area {
    padding: 6rem 8.4rem 6rem 11.9rem;
    background: url(img/home/neuvola_fukidashi.png) no-repeat center/contain;
    width: 75%;
    max-width: 77rem;
  }
}
.home .top-neuvola__text {
  font-size: 1.4rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__text {
    font-size: 1.6rem;
  }
}
.home .top-neuvola__box-area {
  background: url(img/home/box-bg.webp) no-repeat center/cover;
  border-radius: 4rem;
  overflow: hidden;
  padding: 3.85rem 0;
  margin-bottom: 6rem;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__box-area {
    padding: 4rem;
    border-radius: 8rem;
    margin-bottom: 12.5rem;
  }
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__box-area {
    padding: 8rem;
    border-radius: 8rem;
    margin-bottom: 12.5rem;
  }
}
.home .top-neuvola__box-list {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__box-list {
    flex-direction: row;
    gap: 0;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.home .top-neuvola__box {
  width: 85%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  border-radius: 1rem;
  background-color: #fff;
  padding: 1.8rem 2.15rem;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__box {
    width: 48%;
    padding: 4rem;
  }
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__box {
    width: 46%;
  }
}
.home .top-neuvola__box-link {
  display: block;
}
.home .top-neuvola__box-img {
  margin-bottom: 1.5rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__box-img {
    margin-bottom: 3rem;
  }
}
.home .top-neuvola__box-title {
  text-align: center;
  color: #ff92be;
  font-weight: 700;
  font-size: 1.6rem;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__box-title {
    margin-bottom: 3rem;
    font-size: 2.4rem;
  }
}
.home .top-neuvola__box-text {
  font-size: 1.4rem;
  margin-bottom: 1.6rem;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__box-text {
    margin-bottom: 3rem;
    font-size: 1.6rem;
  }
}
.home .top-neuvola__more-text {
  color: #ff92be;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 0.5em;
  font-size: 1.4rem;
  font-weight: 700;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__more-text {
    font-size: 1.6rem;
  }
}
.home .top-neuvola__more-text .icon {
  width: 2.5rem;
  display: block;
}
@media only screen and (min-width: 1024px) {
  .home .top-neuvola__more-text .icon {
    width: 3.3rem;
  }
}
.home .top-neuvola__movie-lead {
  font-size: 1.3rem;
  text-align: center;
  margin-bottom: 1.6rem;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__movie-lead {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}
.home .top-neuvola__movie-area {
  position: relative;
  width: 100%;
  max-width: 80rem;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 1rem;
  margin: 0 auto;
  border: solid 3px #fff;
}
.home .top-neuvola__movie-area:hover {
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__movie-area {
    border-radius: 2rem;
  }
}
.home .top-neuvola__movie-area #ytPlayer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100.5%;
  height: 100.5%;
}
.home .top-neuvola__play-btn {
  width: 25%;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  margin: auto;
  transform: translateY(-50%);
}
@media only screen and (min-width: 768px) {
  .home .top-neuvola__play-btn {
    width: 14rem;
  }
}

.archive,
.search {
  background-color: #fff9e7;
}

.archive-page .cat-tag-area {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  margin-top: 2rem;
}
@media only screen and (min-width: 1024px) {
  .archive-page .cat-tag-area {
    margin-top: 10rem;
  }
}
.archive-page .content-inner {
  background-color: #fff;
  border-radius: 4rem;
  padding: 3.7rem 2.2rem;
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
}
@media only screen and (min-width: 1024px) {
  .archive-page .content-inner {
    padding: 7rem 10rem;
    border-radius: 8rem;
  }
}

.search h1 {
  margin-bottom: 2rem;
}

.single-news {
  background-color: #fff9e7;
}

.single-article {
  max-width: var(--responsive--alignwide-width);
  margin: 0 auto;
  padding-bottom: 4rem;
}
@media only screen and (min-width: 768px) {
  .single-article {
    padding-bottom: 8rem;
  }
}

.entry {
  max-width: var(--responsive--content-width);
  margin: 0 auto;
}

.entry-header {
  padding: 3rem 0;
}
@media only screen and (min-width: 600px) {
  .entry-header {
    padding: 6rem 0;
  }
}

.entry-date {
  font-size: 1.4rem;
  font-weight: 700;
  margin-bottom: 2rem;
}
@media only screen and (min-width: 600px) {
  .entry-date {
    font-size: 1.4rem;
  }
}

.entry-title {
  font-size: 2.2rem;
  font-weight: 700;
  padding-bottom: 0.75rem;
  border-bottom: dotted 2px #ff92be;
  margin-bottom: 3.2rem;
  line-height: 1.5;
}
@media only screen and (min-width: 600px) {
  .entry-title {
    font-size: 2.4rem;
    border-bottom: dotted 4px #ff92be;
    margin-bottom: 6.4rem;
  }
}

.post-thumbnail {
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 3/2;
  width: 100%;
  max-width: 628px;
  margin: 0 auto;
}
.post-thumbnail img {
  width: 100%;
  object-fit: cover;
}

.entry-content {
  padding-bottom: 4rem;
}
.entry-content h2 {
  font-size: 2.2rem;
  color: #fff;
  background-color: #ff92be;
  border-radius: 5px;
  padding: 0.5em;
  line-height: 1.5;
  margin-bottom: 2.4rem;
}
@media only screen and (min-width: 600px) {
  .entry-content h2 {
    font-size: 2.4rem;
    margin-bottom: 3.6rem;
  }
}
.entry-content h3 {
  font-size: 2rem;
  line-height: 1.5;
  color: #ff92be;
  border-bottom: solid 2px #ff92be;
  padding-bottom: 0.3em;
  margin-bottom: 1em;
}
@media only screen and (min-width: 600px) {
  .entry-content h3 {
    font-size: 2.2rem;
  }
}
.entry-content h4 {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #ff92be;
  margin-bottom: 1em;
}
.entry-content h4::before {
  content: "●";
}
.entry-content p {
  margin-bottom: 2em;
  line-height: 1.8;
  font-size: 1.4rem;
}
@media only screen and (min-width: 600px) {
  .entry-content p {
    font-size: 1.6rem;
  }
}
.entry-content p a {
  font-size: 1.4rem;
  color: #ff92be;
  text-decoration: underline;
}
@media only screen and (min-width: 600px) {
  .entry-content p a {
    font-size: 1.6rem;
  }
}
.entry-content .wp-block-media-text {
  margin-bottom: 2em;
}
.entry-content .wp-block-media-text__content p {
  font-size: 1.4rem;
  margin-bottom: 0;
}
@media only screen and (min-width: 600px) {
  .entry-content .wp-block-media-text__content p {
    font-size: 1.6rem;
  }
}
.entry-content .wp-block-media-text__content p a {
  font-size: 1.4rem;
  color: #ff92be;
  text-decoration: underline;
}
@media only screen and (min-width: 600px) {
  .entry-content .wp-block-media-text__content p a {
    font-size: 1.6rem;
  }
}
.entry-content .wp-block-media-text > .wp-block-media-text__content {
  padding: 0;
  padding-top: 1em;
}
@media only screen and (min-width: 600px) {
  .entry-content .wp-block-media-text__media {
    padding-right: 3rem;
  }
}
.entry-content ul {
  padding: 0.5em 0 0.5em 1.5em;
}
.entry-content ul li {
  margin-bottom: 0.3em;
  position: relative;
}
@media only screen and (min-width: 600px) {
  .entry-content ul li {
    font-size: 1.6rem;
  }
}
.entry-content ul li::before {
  content: "●";
  color: #ff92be;
  font-size: 1.2rem;
  margin-right: 0.5em;
  position: absolute;
  left: -1.5em;
  top: 0.2em;
}
.entry-content ul li:last-child {
  margin-bottom: 0;
}
.entry-content ul.abc-list {
  list-style-type: upper-alpha;
}
.entry-content ul.abc-list li::before {
  content: none;
}
.entry-content ol {
  padding: 0.5em 0 0.5em 1.3em;
  counter-reset: number;
}
.entry-content ol li {
  margin-bottom: 0.3em;
  position: relative;
}
@media only screen and (min-width: 600px) {
  .entry-content ol li {
    font-size: 1.6rem;
  }
}
.entry-content ol li::before {
  counter-increment: number;
  content: counter(number);
  width: 1.4rem;
  height: 1.4rem;
  display: block;
  color: #ff92be;
  border-radius: 100%;
  border: solid 1px #ff92be;
  text-align: center;
  line-height: 1;
  font-size: 1.2rem;
  margin-right: 0.5em;
  position: absolute;
  left: -1.5em;
  top: 0.5em;
}
.entry-content ol li:last-child {
  margin-bottom: 0;
}
.entry-content .wp-block-button {
  position: relative;
  margin: 2rem 0;
  min-width: 29.5rem;
}
@media only screen and (min-width: 600px) {
  .entry-content .wp-block-button {
    min-width: 30rem;
  }
}
.entry-content .wp-block-button__link {
  display: block;
  background-color: #fff;
  border: solid 2px #ff92be;
  border-radius: 100vh;
  font-size: 1.6rem;
  color: #ff92be;
  font-weight: 700;
  text-align: center;
  padding: 1rem 3em 1rem 1rem;
  line-height: 1.2;
  position: relative;
  transition: background-color 0.2s linear, color 0.2s linear;
}
@media only screen and (min-width: 600px) {
  .entry-content .wp-block-button__link {
    font-size: 1.8rem;
    padding: 1.5rem 3em 1.5rem 1.5rem;
    border: solid 4px #ff92be;
  }
}
.entry-content .wp-block-button__link::after {
  content: "";
  background: url(img/common/arw-btn.png) no-repeat center/contain;
  width: 2.6rem;
  height: 0.8rem;
  position: absolute;
  right: 2.6rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
}
.entry-content .wp-block-button__link:hover {
  background-color: #ff92be;
  color: #fff;
  opacity: 1;
}
.entry-content .wp-block-button__link:hover::after {
  background: url(img/common/arw-btn-wh.png) no-repeat center/contain;
}
.entry-content .text-link-btn a {
  text-decoration: none;
  font-size: 1.4rem;
  font-weight: 700;
}
.entry-content .text-link-btn a::after {
  content: "";
  background: url(img/common/arw-btn.png) no-repeat center/contain;
  width: 2.6rem;
  height: 0.8rem;
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.5rem;
}
@media only screen and (min-width: 600px) {
  .entry-content .text-link-btn a {
    font-size: 1.6rem;
  }
}