@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
/*
  INIT
---------------------------------------------------------------- */
*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  scroll-behavior: smooth;
}
@media only screen and (min-width: 768px) and (max-width: 1300px) {
  html {
    font-size: 0.7692308vw;
    scroll-padding-top: calc(var(--font-size)*12);
  }
}
@media only screen and (max-width: 767px) {
  html {
    font-size: 2.564103vw;
    scroll-padding-top: calc(var(--font-size)*5);
  }
}

body {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, Verdana, sans-serif;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
  line-height: 1.8;
  color: #111111;
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
}
@media only screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

main,
article,
aside,
footer,
header,
nav,
section {
  display: block;
}

div,
dl,
dt,
dd,
ul,
ol,
li,
pre,
form,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

p {
  margin: 0;
}

ul,
ol {
  list-style: none;
}

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

map,
area,
map:active,
area:active {
  border: none;
  outline: none;
}

figure {
  margin: 0;
}

:root {
  --themeColor: #D97757;
}

/*!
	Modaal - accessible modals - v0.4.4
	by Humaan, for all humans.
	http://humaan.com
 */
.modaal-noscroll {
  overflow: hidden;
}

.modaal-accessible-hide {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

.modaal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0;
  background-color: rgba(255, 255, 255, 0.8);
}

.modaal-wrapper {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  overflow: auto;
  opacity: 1;
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
  transition: all 0.3s ease-in-out;
}
.modaal-wrapper * {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
}
.modaal-wrapper .modaal-close {
  border: none;
  background: transparent;
  padding: 0;
  -webkit-appearance: none;
}
.modaal-wrapper.modaal-start_none {
  display: none;
  opacity: 1;
}
.modaal-wrapper.modaal-start_fade {
  opacity: 0;
}
.modaal-wrapper *[tabindex="0"] {
  outline: none !important;
}
.modaal-wrapper.modaal-fullscreen {
  overflow: hidden;
}

.modaal-outer-wrapper {
  display: table;
  position: relative;
  width: 100%;
  height: 100%;
}
.modaal-fullscreen .modaal-outer-wrapper {
  display: block;
}

.modaal-inner-wrapper {
  display: table-cell;
  width: 100%;
  height: 100%;
  position: relative;
  vertical-align: middle;
  text-align: center;
  padding: 80px 25px;
}
.modaal-fullscreen .modaal-inner-wrapper {
  padding: 0;
  display: block;
  vertical-align: top;
}

.modaal-container {
  position: relative;
  display: inline-block;
  width: 100%;
  margin: auto;
  text-align: left;
  color: #000;
  max-width: 1000px;
  border-radius: 0px;
  background: #fff;
  cursor: auto;
}
.modaal-container.is_loading {
  height: 100px;
  width: 100px;
  overflow: hidden;
}
.modaal-fullscreen .modaal-container {
  max-width: none;
  height: 100%;
  overflow: auto;
}

.modaal-close {
  position: fixed;
  right: 20px;
  top: 20px;
  color: #fff;
  cursor: pointer;
  opacity: 1;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border-radius: 100%;
  transition: all 0.2s ease-in-out;
}
.modaal-close:focus, .modaal-close:hover {
  outline: none;
  background: #fff;
}
.modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after {
  background: #004FA0;
}
.modaal-close span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}
.modaal-close:before, .modaal-close:after {
  display: block;
  content: " ";
  position: absolute;
  top: 14px;
  left: 23px;
  width: 4px;
  height: 22px;
  border-radius: 4px;
  background: #fff;
  transition: background 0.2s ease-in-out;
}
.modaal-close:before {
  transform: rotate(-45deg);
}
.modaal-close:after {
  transform: rotate(45deg);
}
.modaal-fullscreen .modaal-close {
  background: #afb7bc;
  right: 10px;
  top: 10px;
}

.modaal-content-container {
  padding: 50px;
}

.modaal-confirm-wrap {
  padding: 30px 0 0;
  text-align: center;
  font-size: 0;
}

.modaal-confirm-btn {
  font-size: 14px;
  display: inline-block;
  margin: 0 10px;
  vertical-align: middle;
  cursor: pointer;
  border: none;
  background: transparent;
}
.modaal-confirm-btn.modaal-ok {
  padding: 10px 15px;
  color: #fff;
  background: #555;
  border-radius: 3px;
  transition: background 0.2s ease-in-out;
}
.modaal-confirm-btn.modaal-ok:hover {
  background: rgb(123.25, 123.25, 123.25);
}
.modaal-confirm-btn.modaal-cancel {
  text-decoration: underline;
}
.modaal-confirm-btn.modaal-cancel:hover {
  text-decoration: none;
  color: rgb(123.25, 123.25, 123.25);
}

@keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-ms-keyframes instaReveal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.modaal-instagram .modaal-container {
  width: auto;
  background: transparent;
  box-shadow: none !important;
}
.modaal-instagram .modaal-content-container {
  padding: 0;
  background: transparent;
}
.modaal-instagram .modaal-content-container > blockquote {
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
}
.modaal-instagram iframe {
  opacity: 0;
  margin: -6px !important;
  border-radius: 0 !important;
  width: 1000px !important;
  max-width: 800px !important;
  box-shadow: none !important;
  animation: instaReveal 1s linear forwards;
}

.modaal-image .modaal-inner-wrapper {
  padding-left: 140px;
  padding-right: 140px;
}
.modaal-image .modaal-container {
  width: auto;
  max-width: 100%;
}

.modaal-gallery-wrap {
  position: relative;
  color: #fff;
}

.modaal-gallery-item {
  display: none;
}
.modaal-gallery-item img {
  display: block;
}
.modaal-gallery-item.is_active {
  display: block;
}

.modaal-gallery-label {
  position: absolute;
  left: 0;
  width: 100%;
  margin: 20px 0 0;
  font-size: 18px;
  text-align: center;
  color: #fff;
}
.modaal-gallery-label:focus {
  outline: none;
}

.modaal-gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  opacity: 1;
  cursor: pointer;
  color: #fff;
  width: 50px;
  height: 50px;
  background: rgba(0, 0, 0, 0);
  border: none;
  border-radius: 100%;
  transition: all 0.2s ease-in-out;
}
.modaal-gallery-control.is_hidden {
  opacity: 0;
  cursor: default;
}
.modaal-gallery-control:focus, .modaal-gallery-control:hover {
  outline: none;
  background: #fff;
}
.modaal-gallery-control:focus:before, .modaal-gallery-control:focus:after, .modaal-gallery-control:hover:before, .modaal-gallery-control:hover:after {
  background: #afb7bc;
}
.modaal-gallery-control span {
  position: absolute !important;
  clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}
.modaal-gallery-control:before, .modaal-gallery-control:after {
  display: block;
  content: " ";
  position: absolute;
  top: 16px;
  left: 25px;
  width: 4px;
  height: 18px;
  border-radius: 4px;
  background: #fff;
  transition: background 0.2s ease-in-out;
}
.modaal-gallery-control:before {
  margin: -5px 0 0;
  transform: rotate(-45deg);
}
.modaal-gallery-control:after {
  margin: 5px 0 0;
  transform: rotate(45deg);
}

.modaal-gallery-next-inner {
  left: 100%;
  margin-left: 40px;
}
.modaal-gallery-next-outer {
  right: 45px;
}

.modaal-gallery-prev:before, .modaal-gallery-prev:after {
  left: 22px;
}
.modaal-gallery-prev:before {
  margin: 5px 0 0;
  transform: rotate(-45deg);
}
.modaal-gallery-prev:after {
  margin: -5px 0 0;
  transform: rotate(45deg);
}
.modaal-gallery-prev-inner {
  right: 100%;
  margin-right: 40px;
}
.modaal-gallery-prev-outer {
  left: 45px;
}

.modaal-video-wrap {
  margin: auto 50px;
  position: relative;
}

.modaal-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  background: #000;
  max-width: 1300px;
  margin-left: auto;
  margin-right: auto;
}
.modaal-video-container iframe,
.modaal-video-container object,
.modaal-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modaal-iframe .modaal-content {
  width: 100%;
  height: 100%;
}

.modaal-iframe-elem {
  width: 100%;
  height: 100%;
  display: block;
}

@media only screen and (min-width: 1400px) {
  .modaal-video-container {
    padding-bottom: 0;
    height: 731px;
  }
}
@media only screen and (max-width: 1140px) {
  .modaal-image .modaal-inner-wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
  .modaal-gallery-control {
    top: auto;
    bottom: 20px;
    transform: none;
    background: rgba(0, 0, 0, 0.7);
  }
  .modaal-gallery-control:before, .modaal-gallery-control:after {
    background: #fff;
  }
  .modaal-gallery-next {
    left: auto;
    right: 20px;
  }
  .modaal-gallery-prev {
    left: 20px;
    right: auto;
  }
}
@media screen and (max-width: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
}
@media screen and (max-height: 1100px) {
  .modaal-instagram iframe {
    width: 700px !important;
  }
}
@media screen and (max-height: 1000px) {
  .modaal-inner-wrapper {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .modaal-instagram iframe {
    width: 600px !important;
  }
}
@media screen and (max-height: 900px) {
  .modaal-instagram iframe {
    width: 500px !important;
  }
  .modaal-video-container {
    max-width: 900px;
    max-height: 510px;
  }
}
@media only screen and (max-width: 600px) {
  .modaal-instagram iframe {
    width: 280px !important;
  }
}
@media only screen and (max-height: 820px) {
  .modaal-gallery-label {
    display: none;
  }
}
.modaal-loading-spinner {
  background: none;
  position: absolute;
  width: 200px;
  height: 200px;
  top: 50%;
  left: 50%;
  margin: -100px 0 0 -100px;
  transform: scale(0.25);
}

@-ms-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-moz-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-o-keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes modaal-loading-spinner {
  0% {
    opacity: 1;
    -ms-transform: scale(1.5);
    -moz-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    -o-transform: scale(1.5);
    transform: scale(1.5);
  }
  100% {
    opacity: 0.1;
    -ms-transform: scale(1);
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
.modaal-loading-spinner > div {
  width: 24px;
  height: 24px;
  margin-left: 4px;
  margin-top: 4px;
  position: absolute;
}

.modaal-loading-spinner > div > div {
  width: 100%;
  height: 100%;
  border-radius: 15px;
  background: #fff;
}

.modaal-loading-spinner > div:nth-of-type(1) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0s;
  -moz-animation-delay: 0s;
  -webkit-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
}

.modaal-loading-spinner > div:nth-of-type(2) > div, .modaal-loading-spinner > div:nth-of-type(3) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(1) {
  -ms-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(45deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(2) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.12s;
  -moz-animation-delay: 0.12s;
  -webkit-animation-delay: 0.12s;
  -o-animation-delay: 0.12s;
  animation-delay: 0.12s;
}

.modaal-loading-spinner > div:nth-of-type(2) {
  -ms-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(90deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(3) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.25s;
  -moz-animation-delay: 0.25s;
  -webkit-animation-delay: 0.25s;
  -o-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

.modaal-loading-spinner > div:nth-of-type(4) > div, .modaal-loading-spinner > div:nth-of-type(5) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(3) {
  -ms-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(135deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(4) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.37s;
  -moz-animation-delay: 0.37s;
  -webkit-animation-delay: 0.37s;
  -o-animation-delay: 0.37s;
  animation-delay: 0.37s;
}

.modaal-loading-spinner > div:nth-of-type(4) {
  -ms-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(180deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(5) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.5s;
  -moz-animation-delay: 0.5s;
  -webkit-animation-delay: 0.5s;
  -o-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.modaal-loading-spinner > div:nth-of-type(6) > div, .modaal-loading-spinner > div:nth-of-type(7) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
}

.modaal-loading-spinner > div:nth-of-type(5) {
  -ms-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(225deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(6) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.62s;
  -moz-animation-delay: 0.62s;
  -webkit-animation-delay: 0.62s;
  -o-animation-delay: 0.62s;
  animation-delay: 0.62s;
}

.modaal-loading-spinner > div:nth-of-type(6) {
  -ms-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(270deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(7) > div {
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.75s;
  -moz-animation-delay: 0.75s;
  -webkit-animation-delay: 0.75s;
  -o-animation-delay: 0.75s;
  animation-delay: 0.75s;
}

.modaal-loading-spinner > div:nth-of-type(7) {
  -ms-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(315deg) translate(70px, 0);
}

.modaal-loading-spinner > div:nth-of-type(8) > div {
  -ms-animation: modaal-loading-spinner 1s linear infinite;
  -moz-animation: modaal-loading-spinner 1s linear infinite;
  -webkit-animation: modaal-loading-spinner 1s linear infinite;
  -o-animation: modaal-loading-spinner 1s linear infinite;
  animation: modaal-loading-spinner 1s linear infinite;
  -ms-animation-delay: 0.87s;
  -moz-animation-delay: 0.87s;
  -webkit-animation-delay: 0.87s;
  -o-animation-delay: 0.87s;
  animation-delay: 0.87s;
}

.modaal-loading-spinner > div:nth-of-type(8) {
  -ms-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -moz-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -webkit-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  -o-transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
  transform: translate(84px, 84px) rotate(360deg) translate(70px, 0);
}

a {
  text-decoration: none;
  outline: none;
  color: inherit;
}
@media only screen and (min-width: 768px) {
  a.alpha {
    transition: 200ms;
  }
  a.alpha:hover {
    opacity: 0.7;
  }
}

@media only screen and (min-width: 768px) {
  .alpha a {
    transition: 200ms;
  }
  .alpha a:hover {
    opacity: 0.7;
  }
}

/** Small Text
==============================================*/
small.small {
  padding-left: 1.5em;
}

small.small::before {
  content: "※";
  display: inline-block;
  text-indent: -1.5em;
}

/** Text alignment
==============================================*/
.text-center, .text-center--pc, .text-center--sm {
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .text-center--sm {
    text-align: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .text-center--pc {
    text-align: inherit;
  }
}

.text-left, .text-left--pc, .text-left--sm {
  text-align: left;
}
@media only screen and (min-width: 768px) {
  .text-left--sm {
    text-align: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .text-left--pc {
    text-align: inherit;
  }
}

.text-right, .text-right--pc, .text-right--sm {
  text-align: right;
}
@media only screen and (min-width: 768px) {
  .text-right--sm {
    text-align: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .text-right--pc {
    text-align: inherit;
  }
}

/** Font Weight
==============================================*/
.bold {
  font-weight: bold;
}

.font-normal {
  font-weight: normal;
}

/** Hide & Show
==============================================*/
.show-small {
  display: none !important;
}
@media only screen and (max-width: 767px) {
  .show-small {
    display: inherit !important;
  }
}

@media only screen and (max-width: 767px) {
  .hide-small {
    display: none !important;
  }
}

/** Margin Bottom
==============================================*/
/** Margin Top
==============================================*/
.next-toggle {
  cursor: pointer;
}

.row {
  margin: 0 auto;
  padding: 0 4rem;
  max-width: 128rem;
}
.row .row {
  padding: 0;
}
.row.nopad {
  padding: 0;
}
.row2 {
  margin: 0 auto;
  padding: 0;
  max-width: 145rem;
}
@media only screen and (max-width: 767px) {
  .row {
    padding: 0 1.4rem;
  }
  .row2 {
    width: 100%;
    max-width:100%;
  }
}
@media only screen and (max-width: 767px) {
  .row.sp-nopad {
    padding: 0;
  }
}

.w1200 {
  max-width: 128rem;
}

.btn button, .btn--none button, .btn--line button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
  border-radius: 0;
  font-family: inherit;
  font-size: 1em;
  color: inherit;
  letter-spacing: inherit;
  text-align: inherit;
}
.btn > a, .btn--none > a, .btn--line > a,
.btn > span,
.btn--none > span,
.btn--line > span,
.btn > button,
.btn--none > button,
.btn--line > button {
  position: relative;
  background: #104fa1;
  color: #fff;
  border-radius: 50vw;
  border: 1px solid #fff;
  min-height: 6rem;
  display: inline-flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding-left: 4rem;
  padding-right: 4rem;
  box-shadow: 0px 0.6rem 0.2rem rgba(0, 0, 0, 0.1215686275);
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .btn > a, .btn--none > a, .btn--line > a,
  .btn > span,
  .btn--none > span,
  .btn--line > span,
  .btn > button,
  .btn--none > button,
  .btn--line > button {
    min-height: 5.6rem;
    box-shadow: 0px 0.3rem 0.2rem rgba(0, 0, 0, 0.1215686275);
  }
}
@media only screen and (min-width: 768px) {
  .btn > a, .btn--none > a, .btn--line > a,
  .btn > button,
  .btn--none > button,
  .btn--line > button {
    transition: 200ms;
  }
  .btn > a:hover, .btn--none > a:hover, .btn--line > a:hover,
  .btn > button:hover,
  .btn--none > button:hover,
  .btn--line > button:hover {
    background: #fff;
    border-color: #104fa1;
    color: #104fa1;
  }
  .btn > a:hover::after, .btn--none > a:hover::after, .btn--line > a:hover::after,
  .btn > button:hover::after,
  .btn--none > button:hover::after,
  .btn--line > button:hover::after {
    opacity: 0;
  }
  .btn > a:hover > span::after, .btn--none > a:hover > span::after, .btn--line > a:hover > span::after,
  .btn > button:hover > span::after,
  .btn--none > button:hover > span::after,
  .btn--line > button:hover > span::after {
    opacity: 0;
  }
}
.btn.icon--arrow a, .icon--arrow.btn--none a, .icon--arrow.btn--line a,
.btn.icon--arrow button,
.icon--arrow.btn--none button,
.icon--arrow.btn--line button {
  padding-left: 5rem;
  padding-right: 5rem;
}
.btn.icon--arrow a::before, .icon--arrow.btn--none a::before, .icon--arrow.btn--line a::before, .btn.icon--arrow a::after, .icon--arrow.btn--none a::after, .icon--arrow.btn--line a::after,
.btn.icon--arrow button::before,
.icon--arrow.btn--none button::before,
.icon--arrow.btn--line button::before,
.btn.icon--arrow button::after,
.icon--arrow.btn--none button::after,
.icon--arrow.btn--line button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 2.4rem;
  width: 2.4rem;
  height: 1.4rem;
  position: absolute;
  top: 50%;
  right: 2.5rem;
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 767px) {
  .btn.icon--arrow a::before, .icon--arrow.btn--none a::before, .icon--arrow.btn--line a::before, .btn.icon--arrow a::after, .icon--arrow.btn--none a::after, .icon--arrow.btn--line a::after,
  .btn.icon--arrow button::before,
  .icon--arrow.btn--none button::before,
  .icon--arrow.btn--line button::before,
  .btn.icon--arrow button::after,
  .icon--arrow.btn--none button::after,
  .icon--arrow.btn--line button::after {
    background-size: 1.8rem;
    width: 1.8rem;
    height: 1.1rem;
  }
}
.btn.icon--arrow a::before, .icon--arrow.btn--none a::before, .icon--arrow.btn--line a::before,
.btn.icon--arrow button::before,
.icon--arrow.btn--none button::before,
.icon--arrow.btn--line button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1250.922,947.914h-22a1,1,0,0,1,0-2h22a1,1,0,0,1,0,2Z' transform='translate(-1228.922 -940.914)' fill='%23104fa1'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(22 0) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media only screen and (max-width: 767px) {
  .btn.icon--arrow a::before, .icon--arrow.btn--none a::before, .icon--arrow.btn--line a::before,
  .btn.icon--arrow button::before,
  .icon--arrow.btn--none button::before,
  .icon--arrow.btn--line button::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.387' height='11.261' viewBox='0 0 18.387 11.261'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1245.2,947.914h-16.278a1,1,0,0,1,0-2H1245.2a1,1,0,0,1,0,2Z' transform='translate(-1228.921 -942.284)' fill='%23fff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M9.261,5.63a1,1,0,0,1-.707-.293L4.63,1.414.707,5.338a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l4.63-4.63a1,1,0,0,1,1.414,0l4.63,4.63A1,1,0,0,1,9.261,5.63Z' transform='translate(16.387 0) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
  }
}
.btn.icon--arrow a::after, .icon--arrow.btn--none a::after, .icon--arrow.btn--line a::after,
.btn.icon--arrow button::after,
.icon--arrow.btn--none button::after,
.icon--arrow.btn--line button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1250.922,947.914h-22a1,1,0,0,1,0-2h22a1,1,0,0,1,0,2Z' transform='translate(-1228.922 -940.914)' fill='%23ffffff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(22 0) rotate(90)' fill='%23ffffff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn.icon--arrow--back a, .icon--arrow--back.btn--none a, .icon--arrow--back.btn--line a,
.btn.icon--arrow--back button,
.icon--arrow--back.btn--none button,
.icon--arrow--back.btn--line button {
  padding-left: 5rem;
  padding-right: 5rem;
}
@media only screen and (max-width: 767px) {
  .btn.icon--arrow--back a, .icon--arrow--back.btn--none a, .icon--arrow--back.btn--line a,
  .btn.icon--arrow--back button,
  .icon--arrow--back.btn--none button,
  .icon--arrow--back.btn--line button {
    padding-left: 4rem;
    padding-right: 2.9rem;
  }
}
.btn.icon--arrow--back a::before, .icon--arrow--back.btn--none a::before, .icon--arrow--back.btn--line a::before, .btn.icon--arrow--back a::after, .icon--arrow--back.btn--none a::after, .icon--arrow--back.btn--line a::after,
.btn.icon--arrow--back button::before,
.icon--arrow--back.btn--none button::before,
.icon--arrow--back.btn--line button::before,
.btn.icon--arrow--back button::after,
.icon--arrow--back.btn--none button::after,
.icon--arrow--back.btn--line button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 2.4rem;
  width: 2.4rem;
  height: 1.4rem;
  position: absolute;
  top: 50%;
  left: 2.5rem;
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 767px) {
  .btn.icon--arrow--back a::before, .icon--arrow--back.btn--none a::before, .icon--arrow--back.btn--line a::before, .btn.icon--arrow--back a::after, .icon--arrow--back.btn--none a::after, .icon--arrow--back.btn--line a::after,
  .btn.icon--arrow--back button::before,
  .icon--arrow--back.btn--none button::before,
  .icon--arrow--back.btn--line button::before,
  .btn.icon--arrow--back button::after,
  .icon--arrow--back.btn--none button::after,
  .icon--arrow--back.btn--line button::after {
    background-size: 1.8rem;
    width: 1.8rem;
    height: 1.1rem;
    left: 1.6rem;
  }
}
.btn.icon--arrow--back a::before, .icon--arrow--back.btn--none a::before, .icon--arrow--back.btn--line a::before,
.btn.icon--arrow--back button::before,
.icon--arrow--back.btn--none button::before,
.icon--arrow--back.btn--line button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1252.921,947.914h-24a1,1,0,0,1,0-2h24a1,1,0,0,1,0,2Z' transform='translate(-1226.922 -940.914)' fill='%23104fa1'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M6,7a1,1,0,0,1-.707-.293l-6-6a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L6,4.586,11.293-.707a1,1,0,0,1,1.414,0,1,1,0,0,1,0,1.414l-6,6A1,1,0,0,1,6,7Z' transform='translate(6 0) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn.icon--arrow--back a::after, .icon--arrow--back.btn--none a::after, .icon--arrow--back.btn--line a::after,
.btn.icon--arrow--back button::after,
.icon--arrow--back.btn--none button::after,
.icon--arrow--back.btn--line button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='14' viewBox='0 0 28 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1252.921,947.914h-24a1,1,0,0,1,0-2h24a1,1,0,0,1,0,2Z' transform='translate(-1226.922 -940.914)' fill='%23fff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M6,7a1,1,0,0,1-.707-.293l-6-6a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L6,4.586,11.293-.707a1,1,0,0,1,1.414,0,1,1,0,0,1,0,1.414l-6,6A1,1,0,0,1,6,7Z' transform='translate(6 0) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn.icon--bottom a, .icon--bottom.btn--none a, .icon--bottom.btn--line a,
.btn.icon--bottom button,
.icon--bottom.btn--none button,
.icon--bottom.btn--line button {
  flex-flow: column;
  min-height: 5.6rem;
  padding-bottom: 1.5rem;
}
.btn.icon--bottom a::before, .icon--bottom.btn--none a::before, .icon--bottom.btn--line a::before, .btn.icon--bottom a::after, .icon--bottom.btn--none a::after, .icon--bottom.btn--line a::after,
.btn.icon--bottom button::before,
.icon--bottom.btn--none button::before,
.icon--bottom.btn--line button::before,
.btn.icon--bottom button::after,
.icon--bottom.btn--none button::after,
.icon--bottom.btn--line button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 1.3rem;
  width: 1.3rem;
  height: 0.7rem;
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translate(-50%, 0%);
}
.btn.icon--bottom a::before, .icon--bottom.btn--none a::before, .icon--bottom.btn--line a::before,
.btn.icon--bottom button::before,
.icon--bottom.btn--none button::before,
.icon--bottom.btn--line button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='7' viewBox='0 0 13 7'%3E%3Cg id='arrow' transform='translate(0.5 -0.5)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,6,6,0,0,6Z' transform='translate(12 7) rotate(180)' fill='%23104fa1'/%3E%3Cpath id='パス_144_-_アウトライン' data-name='パス 144 - アウトライン' d='M12,6.5H0a.5.5,0,0,1-.462-.309.5.5,0,0,1,.108-.545l6-6A.5.5,0,0,1,6-.5a.5.5,0,0,1,.354.146l6,6A.5.5,0,0,1,12,6.5ZM1.207,5.5h9.586L6,.707Z' transform='translate(12 7) rotate(180)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn.icon--bottom a::after, .icon--bottom.btn--none a::after, .icon--bottom.btn--line a::after,
.btn.icon--bottom button::after,
.icon--bottom.btn--none button::after,
.icon--bottom.btn--line button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='7' viewBox='0 0 13 7'%3E%3Cg id='arrow' transform='translate(0.5 -0.5)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,6,6,0,0,6Z' transform='translate(12 7) rotate(180)' fill='%23fff'/%3E%3Cpath id='パス_144_-_アウトライン' data-name='パス 144 - アウトライン' d='M12,6.5H0a.5.5,0,0,1-.462-.309.5.5,0,0,1,.108-.545l6-6A.5.5,0,0,1,6-.5a.5.5,0,0,1,.354.146l6,6A.5.5,0,0,1,12,6.5ZM1.207,5.5h9.586L6,.707Z' transform='translate(12 7) rotate(180)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn.icon--pdf a, .icon--pdf.btn--none a, .icon--pdf.btn--line a,
.btn.icon--pdf button,
.icon--pdf.btn--none button,
.icon--pdf.btn--line button {
  padding-left: 5rem;
  padding-right: 5rem;
  min-width: 24rem;
}
@media only screen and (max-width: 767px) {
  .btn.icon--pdf a, .icon--pdf.btn--none a, .icon--pdf.btn--line a,
  .btn.icon--pdf button,
  .icon--pdf.btn--none button,
  .icon--pdf.btn--line button {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.btn.icon--pdf a::before, .icon--pdf.btn--none a::before, .icon--pdf.btn--line a::before, .btn.icon--pdf a::after, .icon--pdf.btn--none a::after, .icon--pdf.btn--line a::after,
.btn.icon--pdf button::before,
.icon--pdf.btn--none button::before,
.icon--pdf.btn--line button::before,
.btn.icon--pdf button::after,
.icon--pdf.btn--none button::after,
.icon--pdf.btn--line button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 1.6rem;
  width: 1.6rem;
  height: 2.117rem;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 767px) {
  .btn.icon--pdf a::before, .icon--pdf.btn--none a::before, .icon--pdf.btn--line a::before, .btn.icon--pdf a::after, .icon--pdf.btn--none a::after, .icon--pdf.btn--line a::after,
  .btn.icon--pdf button::before,
  .icon--pdf.btn--none button::before,
  .icon--pdf.btn--line button::before,
  .btn.icon--pdf button::after,
  .icon--pdf.btn--none button::after,
  .icon--pdf.btn--line button::after {
    background-size: 1.4rem;
    width: 1.4rem;
    height: 1.85rem;
    right: 1.6rem;
  }
}
.btn.icon--pdf a::before, .icon--pdf.btn--none a::before, .icon--pdf.btn--line a::before,
.btn.icon--pdf button::before,
.icon--pdf.btn--none button::before,
.icon--pdf.btn--line button::before {
  background-image: url("../img/common/icon-pdf-w.svg");
}
.btn.icon--pdf a::after, .icon--pdf.btn--none a::after, .icon--pdf.btn--line a::after,
.btn.icon--pdf button::after,
.icon--pdf.btn--none button::after,
.icon--pdf.btn--line button::after {
  background-image: url("../img/common/icon-pdf.svg");
}
.btn.icon--recruit a, .icon--recruit.btn--none a, .icon--recruit.btn--line a,
.btn.icon--recruit button,
.icon--recruit.btn--none button,
.icon--recruit.btn--line button {
  padding-left: 5rem;
  padding-right: 5rem;
  min-width: 24rem;
}
@media only screen and (max-width: 767px) {
  .btn.icon--recruit a, .icon--recruit.btn--none a, .icon--recruit.btn--line a,
  .btn.icon--recruit button,
  .icon--recruit.btn--none button,
  .icon--recruit.btn--line button {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.btn.icon--recruit a > span, .icon--recruit.btn--none a > span, .icon--recruit.btn--line a > span,
.btn.icon--recruit button > span,
.icon--recruit.btn--none button > span,
.icon--recruit.btn--line button > span {
  position: relative;
  line-height: 1;
}
.btn.icon--recruit a > span::before, .icon--recruit.btn--none a > span::before, .icon--recruit.btn--line a > span::before, .btn.icon--recruit a > span::after, .icon--recruit.btn--none a > span::after, .icon--recruit.btn--line a > span::after,
.btn.icon--recruit button > span::before,
.icon--recruit.btn--none button > span::before,
.icon--recruit.btn--line button > span::before,
.btn.icon--recruit button > span::after,
.icon--recruit.btn--none button > span::after,
.icon--recruit.btn--line button > span::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 2.143rem;
  width: 2.143rem;
  height: 2.1rem;
  position: absolute;
  top: calc(50% + 0.2rem);
  left: -0.7rem;
  transform: translate(-100%, -50%);
  transition: 200ms;
}
@media only screen and (max-width: 767px) {
  .btn.icon--recruit a > span::before, .icon--recruit.btn--none a > span::before, .icon--recruit.btn--line a > span::before, .btn.icon--recruit a > span::after, .icon--recruit.btn--none a > span::after, .icon--recruit.btn--line a > span::after,
  .btn.icon--recruit button > span::before,
  .icon--recruit.btn--none button > span::before,
  .icon--recruit.btn--line button > span::before,
  .btn.icon--recruit button > span::after,
  .icon--recruit.btn--none button > span::after,
  .icon--recruit.btn--line button > span::after {
    background-size: 1.5rem;
    width: 1.5rem;
    height: 1.5rem;
    right: 1.6rem;
  }
}
.btn.icon--recruit a > span::before, .icon--recruit.btn--none a > span::before, .icon--recruit.btn--line a > span::before,
.btn.icon--recruit button > span::before,
.icon--recruit.btn--none button > span::before,
.icon--recruit.btn--line button > span::before {
  background-image: url("../img/common/icon-recruit.svg");
}
.btn.icon--recruit a > span::after, .icon--recruit.btn--none a > span::after, .icon--recruit.btn--line a > span::after,
.btn.icon--recruit button > span::after,
.icon--recruit.btn--none button > span::after,
.icon--recruit.btn--line button > span::after {
  background-image: url("../img/common/icon-recruit-w.svg");
}
.btn.icon--play a, .icon--play.btn--none a, .icon--play.btn--line a,
.btn.icon--play button,
.icon--play.btn--none button,
.icon--play.btn--line button {
  padding-left: 3.6rem;
  padding-right: 3.6rem;
  min-width: 24rem;
}
@media only screen and (max-width: 767px) {
  .btn.icon--play a, .icon--play.btn--none a, .icon--play.btn--line a,
  .btn.icon--play button,
  .icon--play.btn--none button,
  .icon--play.btn--line button {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.btn.icon--play a::before, .icon--play.btn--none a::before, .icon--play.btn--line a::before, .btn.icon--play a::after, .icon--play.btn--none a::after, .icon--play.btn--line a::after,
.btn.icon--play button::before,
.icon--play.btn--none button::before,
.icon--play.btn--line button::before,
.btn.icon--play button::after,
.icon--play.btn--none button::after,
.icon--play.btn--line button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 0.66rem 50%;
  background-size: 0.7rem;
  width: 1.8rem;
  height: 1.8rem;
  position: absolute;
  top: 50%;
  right: 1.2rem;
  transform: translate(0%, -50%);
  border-radius: 50vw;
}
.btn.icon--play a::before, .icon--play.btn--none a::before, .icon--play.btn--line a::before,
.btn.icon--play button::before,
.icon--play.btn--none button::before,
.icon--play.btn--line button::before {
  background-color: #104FA1;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.739' height='8.845' viewBox='0 0 7.739 8.845'%3E%3Cpath id='tri' d='M4.423,0,8.845,7.739H0Z' transform='translate(7.739) rotate(90)' fill='%23fff'/%3E%3C/svg%3E%0A");
}
.btn.icon--play a::after, .icon--play.btn--none a::after, .icon--play.btn--line a::after,
.btn.icon--play button::after,
.icon--play.btn--none button::after,
.icon--play.btn--line button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.739' height='8.845' viewBox='0 0 7.739 8.845'%3E%3Cpath id='tri' d='M4.423,0,8.845,7.739H0Z' transform='translate(7.739) rotate(90)' fill='%23104FA1'/%3E%3C/svg%3E%0A");
  background-color: #fff;
  transition: 200ms;
}
@media only screen and (min-width: 768px) {
  .btn.icon--play a, .icon--play.btn--none a, .icon--play.btn--line a,
  .btn.icon--play button,
  .icon--play.btn--none button,
  .icon--play.btn--line button {
    transition: 200ms;
  }
  .btn.icon--play a:hover, .icon--play.btn--none a:hover, .icon--play.btn--line a:hover,
  .btn.icon--play button:hover,
  .icon--play.btn--none button:hover,
  .icon--play.btn--line button:hover {
    background: #fff;
    color: #104FA1;
  }
  .btn.icon--play a:hover::after, .icon--play.btn--none a:hover::after, .icon--play.btn--line a:hover::after,
  .btn.icon--play button:hover::after,
  .icon--play.btn--none button:hover::after,
  .icon--play.btn--line button:hover::after {
    opacity: 0;
  }
}
.btn--line a,
.btn--line button {
  background: #fff;
  color: #104FA1;
  border-color: #104FA1;
}
@media only screen and (min-width: 768px) {
  .btn--line a:hover,
  .btn--line button:hover {
    background: #104fa1;
    color: #fff;
  }
}
.btn--line.icon--more a::before, .btn--line.icon--more a::after,
.btn--line.icon--more button::before,
.btn--line.icon--more button::after, .btn--line.icon--close a::before, .btn--line.icon--close a::after,
.btn--line.icon--close button::before,
.btn--line.icon--close button::after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 1.4rem;
  width: 1.4rem;
  height: 0.8rem;
  position: absolute;
  top: 50%;
  right: 2.5rem;
  transform: translate(0%, -50%);
}
@media only screen and (max-width: 767px) {
  .btn--line.icon--more a::before, .btn--line.icon--more a::after,
  .btn--line.icon--more button::before,
  .btn--line.icon--more button::after, .btn--line.icon--close a::before, .btn--line.icon--close a::after,
  .btn--line.icon--close button::before,
  .btn--line.icon--close button::after {
    right: 1.6rem;
    background-size: 1.1rem;
    width: 1.1rem;
    height: 0.65rem;
  }
}
.btn--line.icon--more a::before,
.btn--line.icon--more button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cg id='arrow' transform='translate(22 -3)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(-9 10) rotate(180)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn--line.icon--more a::after,
.btn--line.icon--more button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cg id='arrow' transform='translate(22 -3)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(-9 10) rotate(180)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn--line.icon--close a::before,
.btn--line.icon--close button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M6,7a1,1,0,0,1-.707-.293l-6-6a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L6,4.586,11.293-.707a1,1,0,0,1,1.414,0,1,1,0,0,1,0,1.414l-6,6A1,1,0,0,1,6,7Z' transform='translate(12 6) rotate(180)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn--line.icon--close a::after,
.btn--line.icon--close button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='8' viewBox='0 0 14 8'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_144' data-name='パス 144' d='M6,7a1,1,0,0,1-.707-.293l-6-6a1,1,0,0,1,0-1.414,1,1,0,0,1,1.414,0L6,4.586,11.293-.707a1,1,0,0,1,1.414,0,1,1,0,0,1,0,1.414l-6,6A1,1,0,0,1,6,7Z' transform='translate(12 6) rotate(180)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn--line.icon--arrow a::before,
.btn--line.icon--arrow button::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1250.922,947.914h-22a1,1,0,0,1,0-2h22a1,1,0,0,1,0,2Z' transform='translate(-1228.922 -940.914)' fill='%23ffffff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(22 0) rotate(90)' fill='%23ffffff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.btn--line.icon--arrow a::after,
.btn--line.icon--arrow button::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='14' viewBox='0 0 24 14'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1250.922,947.914h-22a1,1,0,0,1,0-2h22a1,1,0,0,1,0,2Z' transform='translate(-1228.922 -940.914)' fill='%23104fa1'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(22 0) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media only screen and (max-width: 767px) {
  .btn--line.icon--arrow a::after,
  .btn--line.icon--arrow button::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.387' height='11.261' viewBox='0 0 18.387 11.261'%3E%3Cg id='arrow' transform='translate(1 1)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1245.2,947.914h-16.278a1,1,0,0,1,0-2H1245.2a1,1,0,0,1,0,2Z' transform='translate(-1228.921 -942.284)' fill='%23104fa1'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M9.261,5.63a1,1,0,0,1-.707-.293L4.63,1.414.707,5.338a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l4.63-4.63a1,1,0,0,1,1.414,0l4.63,4.63A1,1,0,0,1,9.261,5.63Z' transform='translate(16.387 0) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
  }
}
.btn--none > span {
  cursor: not-allowed;
  background: #999999;
  box-shadow: none;
  border: none;
}
.btn.no-shadow a, .no-shadow.btn--line a, .no-shadow.btn--none a,
.btn.no-shadow button,
.no-shadow.btn--line button,
.no-shadow.btn--none button {
  box-shadow: none;
}

.siblings-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
}
.siblings-inner .next-arrow a,
.siblings-inner .prev-arrow a,
.siblings-inner .prev a,
.siblings-inner .next a {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  color: var(--themeColor);
  font-weight: bold;
  letter-spacing: 0;
}
@media only screen and (min-width: 768px) {
  .siblings-inner .next-arrow a:hover,
  .siblings-inner .prev-arrow a:hover,
  .siblings-inner .prev a:hover,
  .siblings-inner .next a:hover {
    border-color: transparent;
  }
}
.siblings-inner .prev a,
.siblings-inner .next a {
  border-bottom: 1px solid var(--themeColor);
  padding: 0.3rem 0;
}
@media only screen and (min-width: 768px) {
  .siblings-inner .prev a:hover,
  .siblings-inner .next a:hover {
    border-color: transparent;
  }
}
.siblings-inner .prev-arrow a,
.siblings-inner .next-arrow a {
  border: 1px solid var(--themeColor);
  padding: 1.8rem 2.4rem;
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  .siblings-inner .prev-arrow a,
  .siblings-inner .next-arrow a {
    padding: 0.8rem 1rem;
  }
}
.siblings-inner .next-arrow,
.siblings-inner .next {
  margin-left: auto;
}
.siblings-all {
  text-align: center;
  margin-top: 6rem;
}
@media only screen and (max-width: 767px) {
  .siblings-all {
    margin-top: 4rem;
  }
}
.siblings-all a {
  text-decoration: underline;
  color: var(--themeColor);
  font-weight: 700;
}
@media only screen and (min-width: 768px) {
  .siblings-all a:hover {
    text-decoration: none;
  }
}

.pager {
  margin-top: 6rem !important;
}
@media only screen and (max-width: 767px) {
  .pager {
    margin-top: 3rem !important;
  }
}
.pager-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
}
.pager-list__item {
  margin: 0.4rem;
}
.pager-list__item .pager-inr {
  width: 30px;
  height: 30px;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  font-size: 1.4rem;
  line-height: 1;
}
.pager-list__item span {
  background: #DDDDDD;
  color: #333;
  border-color: #DDDDDD;
}
.pager-list__item a {
  background: #fff;
  border: 1px solid var(--themeColor);
  color: var(--themeColor);
}
@media only screen and (min-width: 768px) {
  .pager-list__item a {
    transition: 200ms;
  }
  .pager-list__item a:hover {
    background: var(--themeColor) !important;
    color: #fff !important;
  }
}

.breadcrumbs {
  padding: 2.9rem 0 2.4rem;
}
@media only screen and (max-width: 767px) {
  .breadcrumbs {
    display: none;
  }
}

.pkz {
  display: flex;
  flex-flow: row;
  justify-content: flex-start;
  align-items: center;
  overflow: auto;
  word-break: keep-all;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.pkz::-webkit-scrollbar {
  display: none;
}
.pkz ol {
  font-size: 1.2rem;
  font-weight: 400;
}
.pkz ol li {
  display: inline;
}
.pkz ol li a {
  font-weight: bold;
  color: #104FA1;
}
@media only screen and (min-width: 768px) {
  .pkz ol li a:hover {
    text-decoration: underline;
  }
}
.pkz ol li > span {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.masthead {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 1.6rem;
}
.masthead .brand-logo img {
  height: 4.8rem;
}
@media only screen and (max-width: 767px) {
  .masthead .brand-logo img {
    height: 2.5rem;
  }
}
.masthead .inner-logo img {
  height: 4.8rem;
}
@media only screen and (max-width: 767px) {
  .masthead .inner-logo img {
    height: 2.5rem;
  }
}

.globalnav {
  flex: 1;
}
@media only screen and (min-width: 768px) {
  .globalnav {
    align-self: flex-end;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav {
    opacity: 0;
    visibility: hidden;
    transition: 400ms;
    position: absolute;
    top: 5rem;
    left: 0;
    background: #104FA1;
    width: 100%;
    height: calc(100dvh - 5rem);
    z-index: 9999;
    overflow: auto;
    padding-bottom: 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav {
    color: #104FA1;
  }
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-end;
    align-items: center;
  }
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    position: relative;
  }
  .globalnav .gnav-list > li:hover > ul {
    opacity: 1;
    visibility: inherit;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li:not(:last-of-type) > a {
    border-bottom: 1px solid #104FA1;
  }
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li:not(:last-of-type)::after {
    content: "";
    display: block;
    width: 1px;
    height: 2.7rem;
    background: #6C92C5;
    margin-left: 0.6rem;
    margin-right: 0.6rem;
  }
}
.globalnav .gnav-list > li a {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  min-height: 5.6rem;
  font-size: 1.8rem;
  font-weight: bold;
  padding-left: 1.6rem;
  padding-right: 1.6rem;
  position: relative;
  overflow: hidden;
  transition: 200ms;
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li a {
    border-radius: 1.2rem 1.2rem 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li a {
    justify-content: flex-start;
    padding-left: 1.6rem;
    padding-right: 1.6rem;
    background: #fff;
    min-height: 5.2rem;
    font-size: 1.4rem;
  }
}
.globalnav .gnav-list > li a::after {
  content: "";
  display: block;
  width: 1.2rem;
  height: 1.2rem;
  background: #104FA1;
  border-radius: 50vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 100%);
  transition: 200ms;
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li a::after {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li a::before {
    content: "";
    display: block;
    width: 1.4rem;
    height: 1.09rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10.888' viewBox='0 0 14 10.888'%3E%3Cpath id='arrow' d='M-1599.994-60.339a.774.774,0,0,1-.228-.549.774.774,0,0,1,.228-.55l3.339-3.339h-10.566a.777.777,0,0,1-.778-.778.777.777,0,0,1,.778-.778h10.566l-3.339-3.339a.777.777,0,0,1,0-1.1.777.777,0,0,1,1.1,0l4.667,4.666h0a.789.789,0,0,1,.053.059h0a.774.774,0,0,1,.175.491.773.773,0,0,1-.175.491h0l-.013.015h0c-.013.015-.026.03-.041.044h0l-4.667,4.666a.774.774,0,0,1-.55.228A.775.775,0,0,1-1599.994-60.339Z' transform='translate(1608 71)' fill='%23104fa1'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 1.4rem;
    position: absolute;
    top: 2.6rem;
    right: 1.3rem;
    transform: translateY(-50%);
  }
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li a:hover {
    background: #EBF3FF;
    color: #104FA1;
  }
  .globalnav .gnav-list > li a:hover::after {
    transform: translate(-50%, 50%);
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li a.sp-toggle::before {
    width: 1.09rem;
    height: 0.622rem;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.889' height='6.222' viewBox='0 0 10.889 6.222'%3E%3Cpath id='arrow_b' d='M-1600.222-60.889a.775.775,0,0,1,.228-.55l4.117-4.117-4.117-4.117a.778.778,0,0,1,0-1.1.778.778,0,0,1,1.1,0l4.667,4.667a.778.778,0,0,1,0,1.1l-4.667,4.667a.778.778,0,0,1-1.1,0A.775.775,0,0,1-1600.222-60.889Z' transform='translate(-60.111 1600.222) rotate(90)' fill='%23104fa1'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 1.09rem;
    transition: 200ms;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li a.sp-toggle.is-active::before {
    transform: translateY(-50%) rotateX(180deg);
  }
}
.globalnav .gnav-list > li .gnav-list-sub {
  display: none;
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li .gnav-list-sub {
    display: none !important;
  }
  .gnav-mobile,.gnav-mobile .gnav-mobile-list{
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .globalnav .gnav-list > li .gnav-list-sub > li > a {
    border-bottom: 1px solid #104FA1;
    background: #E9F3FF;
    padding-left: 2.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-list > li.current a {
    background: #EBF3FF;
    color: #104FA1;
  }
  .globalnav .gnav-list > li.current a::after {
    transform: translate(-50%, 50%);
  }
}
.globalnav .gnav-mobile-list {
  padding: 1.4rem 1.5rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
@media only screen and (min-width: 768px) {
  .globalnav .gnav-mobile-list {
    display: none;
  }
}
.globalnav .gnav-mobile-list {
  gap: 1px;
}
.globalnav .gnav-mobile-list__item {
  flex: 0 0 calc((100% - 1px) / 2);
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.globalnav .gnav-mobile-list__item a {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  gap: 0.3rem;
  background: #fff;
  height: 5rem;
  width: 100%;
  font-size: 1.4rem;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .globalnav.is-active {
    opacity: 1;
    visibility: inherit;
  }
}

.site-header {
  height: 12rem;
  padding: 0 1.6rem 0 2.5rem;
  position: relative;
  position: sticky;
  top: 0;
  left: 0;
  z-index: 9999;
  background: #fff;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: stretch;
  border-bottom: 1px solid #104FA1;
}
@media only screen and (max-width: 767px) {
  .site-header {
    height: 5rem;
    padding: 0.5rem 1.5rem;
  }
}
.site-header-contact {
  position: absolute;
  top: 0;
  right: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .site-header-contact {
    display: none;
  }
}
.site-header-contact a {
  background: #104FA1;
  border-radius: 0 0 1.2rem 1.2rem;
  color: #fff;
  font-size: 1.4rem;
  font-weight: bold;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  min-width: 11.2rem;
  min-height: 5.6rem;
  padding-top: 2rem;
}
.site-header-contact a::before, .site-header-contact a::after {
  content: "";
  display: block;
  width: 2.4rem;
  height: 1.6rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 2.4rem;
  position: absolute;
  top: 1rem;
  left: 50%;
  transform: translate(-50%, 0%);
  z-index: 1;
}
.site-header-contact a::before {
  background-image: url(../img/common/icon-mail-top-w.svg);
}
.site-header-contact a::after {
  transition: 200ms;
  background-image: url(../img/common/icon-mail-top.svg);
}
@media only screen and (min-width: 768px) {
  .site-header-contact a {
    transition: 200ms;
  }
  .site-header-contact a:hover {
    background: #EBF3FF;
    color: inherit;
  }
  .site-header-contact a:hover::after {
    opacity: 0;
  }
}
.site-header .inner {
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: stretch;
  align-items: center;
}
.site-header .hamburger {
  width: 5rem;
  height: 5rem;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 999;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .site-header .hamburger {
    display: none;
  }
}
.site-header .hamburger::before {
  content: "";
  display: block;
  width: 3.6rem;
  height: 3.6rem;
  background: #104FA1;
  position: absolute;
  top: 50%;
  left: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0.8);
  opacity: 0;
  transition: 400ms;
}
.site-header .hamburger__inner {
  width: 2rem;
  height: 2rem;
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
.site-header .hamburger__inner span {
  width: 100%;
  height: 1px;
  background: #104FA1;
  transition: 400ms;
}
.site-header .hamburger__inner span:nth-of-type(2) {
  margin: 1rem 0;
}
@media only screen and (max-width: 767px) {
  .site-header .hamburger__inner span:nth-of-type(2) {
    margin: 0.6rem 0;
  }
}
.site-header .hamburger.def.is-active span:nth-of-type(1) {
  transform: rotate(45deg);
}
.site-header .hamburger.def.is-active span:nth-of-type(2) {
  margin: -1px 0;
  opacity: 0;
}
.site-header .hamburger.def.is-active span:nth-of-type(3) {
  transform: rotate(-45deg);
}
.site-header .hamburger.anim span:nth-of-type(1) {
  transition-delay: 0ms;
}
.site-header .hamburger.anim span:nth-of-type(2) {
  transition-delay: 400ms;
}
.site-header .hamburger.anim span:nth-of-type(3) {
  transition-delay: 0ms;
}
.site-header .hamburger.anim.is-active::before {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}
.site-header .hamburger.anim.is-active span {
  background: #fff;
}
.site-header .hamburger.anim.is-active span:nth-of-type(1) {
  transform: rotate(45deg);
  transition-delay: 400ms;
}
.site-header .hamburger.anim.is-active span:nth-of-type(2) {
  margin: -1px 0;
  opacity: 0;
  transition-delay: 0ms;
}
.site-header .hamburger.anim.is-active span:nth-of-type(3) {
  transform: rotate(-45deg);
  transition-delay: 400ms;
}

@media only screen and (max-width: 767px) {
  .page--top .site-footer,
  .page--ariake .site-footer {
    padding-bottom: 5rem;
  }
}

@media only screen and (max-width: 767px) {
  .page--e-learning .site-footer {
    padding-bottom: 9rem;
  }
}

.site-footer {
  overflow: hidden;
  margin-top: auto;
}
.page-top {
  position: fixed;
  right:8rem;
  width: 9rem;
  margin-bottom: 4rem;
  z-index: 999;
}
@media only screen and (max-width: 767px) {
  .page-top {
    width: 4.6rem;
    right:1.2rem;
    margin-bottom: 6.2em;
  }
}
.page-top a {
  display: block;
  width: 9rem;
  height: 9rem;
  border: 1px solid #104FA1;
  border-radius: 50vw;
  position: relative;
  background: #fff;
}
@media only screen and (min-width: 768px) {
  .page-top a {
    transition: 200ms;
  }
  .page-top a:hover {
    background: #104FA1;
    border:1px solid #fff
  }
  .page-top a:hover::after {
    opacity: 0;
  }
}
@media only screen and (max-width: 767px) {
  .page-top a {
    background: #104FA1;
    width: 4.6rem;
    height: 4.6rem;
  }
  .page-top a::after {
    opacity: 0;
  }
}
.page-top a span {
  display: none;
}
.page-top a::before, .page-top a::after {
  content: "";
  display: block;
  width: 2.3rem;
  height: 3.9rem;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 2.3rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 767px) {
  .page-top a::before, .page-top a::after {
    width: 1rem;
    height: 1.9rem;
    background-size: 1rem;
  }
}
.page-top a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='39' viewBox='0 0 23 39'%3E%3Cg id='arrow' transform='translate(1.767 41.353) rotate(-90)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M36,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H36A1.5,1.5,0,0,1,37.5,0,1.5,1.5,0,0,1,36,1.5Z' transform='translate(3.853 9.733)' fill='%23ffffff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M20,11.5a1.5,1.5,0,0,1-1.061-.439L10,2.121,1.061,11.061a1.5,1.5,0,0,1-2.121,0,1.5,1.5,0,0,1,0-2.121l10-10a1.5,1.5,0,0,1,2.121,0l10,10A1.5,1.5,0,0,1,20,11.5Z' transform='translate(39.853 -0.267) rotate(90)' fill='%23ffffff'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.page-top a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23' height='39' viewBox='0 0 23 39'%3E%3Cg id='arrow' transform='translate(1.767 41.353) rotate(-90)'%3E%3Cpath id='パス_143' data-name='パス 143' d='M36,1.5H0A1.5,1.5,0,0,1-1.5,0,1.5,1.5,0,0,1,0-1.5H36A1.5,1.5,0,0,1,37.5,0,1.5,1.5,0,0,1,36,1.5Z' transform='translate(3.853 9.733)' fill='%23104fa1'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M20,11.5a1.5,1.5,0,0,1-1.061-.439L10,2.121,1.061,11.061a1.5,1.5,0,0,1-2.121,0,1.5,1.5,0,0,1,0-2.121l10-10a1.5,1.5,0,0,1,2.121,0l10,10A1.5,1.5,0,0,1,20,11.5Z' transform='translate(39.853 -0.267) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media only screen and (min-width: 768px) {
  .page-top a::after {
    transition: 200ms;
  }
}
.site-footer .fnav {
  background: #104FA1;
  color: #fff;
  position: relative;
  z-index: 0;
  padding-top: 5.3rem;
  padding-left: 7.4rem;
  padding-bottom: 7.4rem;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  .site-footer .fnav {
    display: none;
  }
}
.site-footer .fnav::before {
  content: "";
  display: block;
  width: 6.7rem;
  height: 100%;
  background: #104FA1;
  position: absolute;
  top: 0;
  left: 1px;
  transform: translateX(-100%);
  border-radius: 2.4rem 0 0 2.4rem;
}
.site-footer .fnav::after {
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  background: #104FA1;
  position: absolute;
  top: 0;
  right: 1px;
  z-index: -1;
  transform: translateX(100%);
}
.site-footer .fnav-list, .site-footer .fnav-list--sub, .site-footer .fnav-list--main {
  font-weight: bold;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
.site-footer .fnav-list--main {
  font-size: 2.4rem;
  gap: 8rem;
}
.site-footer .fnav-list--sub {
  font-size: 2rem;
  gap: 2rem 6.4rem;
  margin-top: 5.3rem;
}
.site-footer .fnav-list--sub > li > a {
  padding-right: 3rem;
}
@media only screen and (min-width: 768px) and (max-width: 1250px) {
  .site-footer .fnav-list--sub {
    gap: 2rem 4.5rem;
  }
}
.site-footer .fnav-list__item {
  position: relative;
}
.site-footer .fnav-list__item > a {
  padding: 0.5rem 0 0.5rem;
  display: block;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  gap: 1.2rem;
  border-bottom: 1px solid #fff;
  position: relative;
  padding-right: 3.6rem;
}
.site-footer .fnav-list__item > a::before, .site-footer .fnav-list__item > a::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  border-radius: 50vw;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translate(0%, -50%);
}
.site-footer .fnav-list__item > a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='ic_cicle_arrow' transform='translate(-1)'%3E%3Cg id='bg' transform='translate(1)' fill='%23fff' stroke='%23fff' stroke-width='1'%3E%3Ccircle cx='12' cy='12' r='12' stroke='none'/%3E%3Ccircle cx='12' cy='12' r='11.5' fill='none'/%3E%3C/g%3E%3Cpath id='パス_289' data-name='パス 289' d='M9.1,5.551a1,1,0,0,1-.707-.293L4.551,1.414.707,5.258a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414L3.844-.707a1,1,0,0,1,1.414,0L9.808,3.844A1,1,0,0,1,9.1,5.551Z' transform='translate(16.073 7.897) rotate(90)' fill='%23104fa1'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.site-footer .fnav-list__item > a::after {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg id='ic_cicle_arrow' transform='translate(-1)'%3E%3Cg id='bg' transform='translate(1)' fill='%23114fa1'%3E%3Cpath d='M 12 23.5 C 8.928239822387695 23.5 6.040329933166504 22.30378913879395 3.868269920349121 20.13172912597656 C 1.696210026741028 17.95966911315918 0.5 15.0717601776123 0.5 12 C 0.5 8.928239822387695 1.696210026741028 6.040329933166504 3.868269920349121 3.868269920349121 C 6.040329933166504 1.696210026741028 8.928239822387695 0.5 12 0.5 C 15.0717601776123 0.5 17.95966911315918 1.696210026741028 20.13172912597656 3.868269920349121 C 22.30378913879395 6.040329933166504 23.5 8.928239822387695 23.5 12 C 23.5 15.0717601776123 22.30378913879395 17.95966911315918 20.13172912597656 20.13172912597656 C 17.95966911315918 22.30378913879395 15.0717601776123 23.5 12 23.5 Z' stroke='none'/%3E%3Cpath d='M 12 1 C 9.061790466308594 1 6.299449920654297 2.144199371337891 4.221820831298828 4.221820831298828 C 2.144199371337891 6.299449920654297 1 9.061790466308594 1 12 C 1 14.93820953369141 2.144199371337891 17.7005500793457 4.221820831298828 19.77817916870117 C 6.299449920654297 21.85580062866211 9.061790466308594 23 12 23 C 14.93820953369141 23 17.7005500793457 21.85580062866211 19.77817916870117 19.77817916870117 C 21.85580062866211 17.7005500793457 23 14.93820953369141 23 12 C 23 9.061790466308594 21.85580062866211 6.299449920654297 19.77817916870117 4.221820831298828 C 17.7005500793457 2.144199371337891 14.93820953369141 1 12 1 M 12 0 C 18.62742042541504 0 24 5.372579574584961 24 12 C 24 18.62742042541504 18.62742042541504 24 12 24 C 5.372579574584961 24 0 18.62742042541504 0 12 C 0 5.372579574584961 5.372579574584961 0 12 0 Z' stroke='none' fill='%23fff'/%3E%3C/g%3E%3Cpath id='パス_289' data-name='パス 289' d='M9.1,5.551a1,1,0,0,1-.707-.293L4.551,1.414.707,5.258a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414L3.844-.707a1,1,0,0,1,1.414,0L9.808,3.844A1,1,0,0,1,9.1,5.551Z' transform='translate(16.073 7.897) rotate(90)' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
  opacity: 0;
}
@media only screen and (min-width: 768px) {
  .site-footer .fnav-list__item > a::after {
    transition: 200ms;
  }
}
@media only screen and (min-width: 768px) {
  .site-footer .fnav-list__item > a:hover::after {
    opacity: 1;
  }
}
.site-footer .fnav-list__item .fnav-sub-list {
  font-size: 2rem;
  margin-top: 1.2rem;
}
.site-footer .fnav-list__item .fnav-sub-list > li:not(:last-of-type) {
  margin-bottom: 1.1rem;
}
.site-footer .fnav-list__item .fnav-sub-list > li > a {
  position: relative;
  padding-left: 2.7rem;
  display: block;
}
.site-footer .fnav-list__item .fnav-sub-list > li > a::before {
  content: "";
  display: block;
  width: 1.8rem;
  height: 1.4rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='14' viewBox='0 0 18 14'%3E%3Cpath id='パス_143' data-name='パス 143' d='M1244.922,947.914h-16a1,1,0,0,1,0-2h16a1,1,0,0,1,0,2Z' transform='translate(-1227.922 -939.914)' fill='%23fff'/%3E%3Cpath id='パス_144' data-name='パス 144' d='M12,7a1,1,0,0,1-.707-.293L6,1.414.707,6.707a1,1,0,0,1-1.414,0,1,1,0,0,1,0-1.414l6-6a1,1,0,0,1,1.414,0l6,6A1,1,0,0,1,12,7Z' transform='translate(17 1) rotate(90)' fill='%23fff'/%3E%3C/svg%3E%0A");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 1.8rem;
  position: absolute;
  top: 0.8rem;
  left: 0;
  transition: 300ms;
}
.site-footer .fnav-list__item .fnav-sub-list > li > a > span {
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
}
.site-footer .fnav-list__item .fnav-sub-list > li > a > span > span {
  position: relative;
  line-height: 1.4;
}
.site-footer .fnav-list__item .fnav-sub-list > li > a > span > span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: 300ms;
}
@media only screen and (min-width: 768px) {
  .site-footer .fnav-list__item .fnav-sub-list > li > a:hover::before {
    transform: translateX(0.7rem);
  }
  .site-footer .fnav-list__item .fnav-sub-list > li > a:hover span::after {
    opacity: 1;
  }
}
.site-footer .logo-area {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  gap: 3.2rem;
}
@media only screen and (min-width: 768px) {
  .site-footer .logo-area {
    padding-top: 3.2rem;
    padding-bottom: 6rem;
  }
}
@media only screen and (max-width: 767px) {
  .site-footer .logo-area {
    padding-bottom: 3.5rem;
  }
}
.site-footer .logo-area .brand-logo img {
  height: 4.8rem;
}
@media only screen and (max-width: 767px) {
  .site-footer .logo-area .brand-logo img {
    height: 3.08rem;
  }
}
.site-footer .logo-area .inner-logo img {
  height: 4.8rem;
}
@media only screen and (max-width: 767px) {
  .site-footer .logo-area .inner-logo img {
    height: 3.08rem;
  }
}
.site-footer .copyright {
  font-size: 1.2rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  min-height: 8.2rem;
  border-top: 1px solid #D5E0F3;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  .site-footer .copyright {
    font-size: 1rem;
    text-align: center;
    line-height: 1.2;
    min-height: 6rem;
  }
}/*# sourceMappingURL=common.css.map */


@media only screen and (max-width: 767px) {
  .pc-show {
    display:none
  }
}
@media only screen and (min-width: 768px) {
  .sp-show {
    display:none
  }
}
