@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Montserrat:wght@500;600;700&family=Manrope:wght@200;400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Bungee&display=swap");
:root {
  /*===================== Color =====================*/
  --color-toyopet: #005952;
  --color-hac-base: #005952;
  --color-chubase-red: #F40013;
  --color-hac-base: #0F5E75;
  --color-kinto: #20A5C0;
  --color-main: #1F1F1F;
  --color-light-blue: #44A0BE;
  --color-blue: #178BD2;
  --color-red: #DB0011;
  --color-red02: #E54956;
  --color-pink: #EB6B76;
  --color-orange: #F28212;
  --color-gold: #B18B31;
  --color-light-gray: #C8C8C8;
  --color-white-blue: #E1ECEF;
  --color-gray: #DEE4E8;
  --color-blue-gray-light: rgba(235, 241, 245, 0.9);
  --color-blue-gray: #8E9FA4;
  --color-used: #EC1223;
  --color-light-green: #46B41E;
  --color-dark-green: #3A4246;
  --color-green: #00A941;
  --color-green02: #46B196;
  --color-green03: #00CDA4;
  --color-02: #556168;
  --color-03: #2970C0;
  --color-navy: #38405C;
  --color-sub-txt: #818181;
  --color-sub-txt-v02: #6F6F6F;
  --color-sub: #9D9D9D;
  --color-sub-line05: #d6d6d6;
  /*表*/
  --color-table: #494949;
  /*Table*/
  --color-table-bg: #F2F2F2;
  --color-table-menu: #79888D;
  /*===================== Gradient =====================*/
  --gradient-green-blue: linear-gradient(90deg,#78B50F 1%,#69D04D 35%,#38B5CE 72%,#3C64A1 100%);
  --gradient-red-yellow: linear-gradient(90deg,#F05353,#E7B500);
  /*===================== Font =====================*/
  --font-montserrat: "Montserrat", sans-serif;
  --font-manrope: "Manrope", sans-serif;
  --font-bungee: "Bungee", sans-serif;
  /*===================== CONT radius =====================*/
  --ease-bounce-s:linear(0, 0.271 8.8%, 0.542 19.9%, 0.837 34.2%, 1 44.7%, 0.943 51.1%, 0.925 57.5%, 0.937 63.1%, 1 77.4%, 0.991 84.2%, 1);
  --ease-bounce:linear(0, 0.247 13.2%, 0.415 20.5%, 0.624 27.4%, 1 37.8%, 0.794 44.9%, 0.747 47.9%, 0.731 50.8%, 0.744 53.5%, 0.785 56.4%, 0.999 65.5%, 0.927 69.6%, 0.904 73.4%, 0.921 77%, 1 84.5%, 0.981 89.4%, 1);
}

/*================================= 見出し =================================*/
/*======================= SP-VW =======================*/
/*======================= PC-VW =======================*/
/*------ 使用例 ------
.text {
	font-size: spvw(16);
}
*/
/*======================= PCLG-VW =======================*/
/*================================= マウスオーバー =================================*/
/*================================= コンテンツ 角丸 =================================*/
/*================================= アニメーション =================================*/
@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-out {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes big {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes flipcard01 {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(180deg);
  }
}
@keyframes flipcard02 {
  0% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}
/*================================= メニュー左寄せ =================================*/
body {
  width: 100%;
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  color: #1F1F1F;
  font-weight: 400;
  font-size: 3.8vw;
  font-feature-settings: "palt";
  line-height: 1.8em;
  letter-spacing: 0;
  overflow-x: hidden;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background-image: linear-gradient(180deg, rgb(239, 242, 244) 5%, rgb(206, 212, 216) 52%, rgb(239, 242, 244) 100%);
  background-size: 100% 5400px;
  background-position: top;
  background-repeat: repeat;
}
@media screen and (min-width: 768px) {
  body {
    font-size: 16px;
    position: relative;
  }
}

a[href*="tel:"] {
  color: #1F1F1F;
}
@media screen and (min-width: 768px) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

.smp-block {
  display: block;
}
@media screen and (min-width: 768px) {
  .smp-block {
    display: none;
  }
}

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

.pcm-block {
  display: none;
}
@media screen and (min-width: 1000px) {
  .pcm-block {
    display: block;
  }
}

button {
  cursor: pointer;
  font: inherit;
  color: #1F1F1F;
}

.ast {
  font-size: 0.6em;
  vertical-align: 0.44em;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  display: block;
  pointer-events: none;
}

@media screen and (min-width: 768px) {
  .inline-block {
    display: inline-block;
  }
}

svg {
  display: block;
  width: 100%;
}

a {
  color: #1F1F1F;
}

.montserrat {
  font-family: "Montserrat", sans-serif;
}

.bungee {
  font-family: "Bungee", sans-serif;
}

/*================================= サイドメニュー =================================*/
@media screen and (min-width: 1000px) {
  .l-side-menu {
    position: sticky;
    top: 0;
    left: 0;
    z-index: 100000;
    display: block;
    width: 180px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu {
    width: 225px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu::after {
    content: "";
    display: block;
    width: 100%;
    height: 70px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(31, 31, 31, 0), var(--color-main));
    z-index: 100;
    pointer-events: none;
  }
}
.l-side-menu.is-active nav.side-menu-inner ul, .l-side-menu.is-active nav.side-menu-inner div.others-link-wrap, .l-side-menu.is-active nav.side-menu-inner .menu-btn-wrap::after {
  opacity: 0;
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .l-side-menu.is-active nav.side-menu-inner div.menu-btn-wrap button.menu-btn span.line:nth-of-type(1) {
    top: 50%;
    transform: rotate(45deg);
  }
  .l-side-menu.is-active nav.side-menu-inner div.menu-btn-wrap button.menu-btn span.line:nth-of-type(2) {
    opacity: 0;
  }
  .l-side-menu.is-active nav.side-menu-inner div.menu-btn-wrap button.menu-btn span.line:nth-of-type(3) {
    top: 50%;
    transform: rotate(-45deg);
  }
}
.l-side-menu.is-active .side-menu-mega-wrap {
  pointer-events: fill;
  opacity: 1;
}
.l-side-menu a {
  color: #fff;
}
.l-side-menu nav.side-menu-inner {
  z-index: 30;
  position: relative;
}
.l-side-menu nav.side-menu-inner::-webkit-scrollbar {
  display: none;
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner {
    padding: 53px 26px;
    display: block;
    box-sizing: border-box;
    max-height: 100vh;
    overflow-y: scroll;
    white-space: nowrap;
    scrollbar-width: none;
    -ms-overflow-style: none;
    position: relative;
    background: var(--color-main);
  }
}
.l-side-menu nav.side-menu-inner .hd-logo {
  position: fixed;
  top: 0;
  left: 0;
  padding: calc(35 / 750 * 100vw) calc(30 / 750 * 100vw);
  box-sizing: border-box;
  z-index: 10;
  width: calc(238 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .hd-logo {
    position: relative;
    width: 86.2%;
    margin: 0 auto 30px;
    padding: 0;
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .hd-logo {
    display: block;
  }
}
.l-side-menu nav.side-menu-inner .hd-logo a {
  display: block;
  width: 100%;
}
.l-side-menu nav.side-menu-inner ul {
  font-weight: 500;
  line-height: 1.2em;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner ul {
    font-size: 12px;
    margin-bottom: 20px;
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner ul {
    display: block;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner ul {
    font-size: 14px;
  }
}
.l-side-menu nav.side-menu-inner ul li:last-child a {
  border: none;
}
.l-side-menu nav.side-menu-inner ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-bottom: solid 1px var(--color-table);
  padding: 1.28em 0;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner ul li a {
    transition: all 0.3s;
  }
  .l-side-menu nav.side-menu-inner ul li a:hover {
    color: var(--color-light-green);
  }
  .l-side-menu nav.side-menu-inner ul li a:hover .arrow svg:nth-of-type(1) {
    transform: translate(100%, 0);
  }
  .l-side-menu nav.side-menu-inner ul li a:hover .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  .l-side-menu nav.side-menu-inner ul li a:hover .arrow svg path {
    stroke: var(--color-light-green);
  }
}
.l-side-menu nav.side-menu-inner ul li a span {
  display: block;
}
.l-side-menu nav.side-menu-inner ul li a span.arrow {
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner ul li a span.arrow {
    width: 9px;
  }
}
.l-side-menu nav.side-menu-inner ul li a span.arrow svg {
  transition: all 0.3s;
}
.l-side-menu nav.side-menu-inner ul li a span.arrow svg:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-120%, 0);
}
.l-side-menu nav.side-menu-inner div.others-link-wrap {
  transition: all 0.3s;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner div.others-link-wrap {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner div.others-link-wrap {
    display: block;
  }
}
.l-side-menu nav.side-menu-inner .calendar-link {
  display: block;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  border: solid 1px #fff;
  line-height: 1em;
  padding: 1.1em 0;
  color: #fff;
  width: 100%;
  border-radius: 0.3em;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .calendar-link {
    transition: all 0.3s;
    font-size: 11px;
  }
  .l-side-menu nav.side-menu-inner .calendar-link:hover {
    color: var(--color-light-green);
    border: solid 1px var(--color-light-green);
  }
  .l-side-menu nav.side-menu-inner .calendar-link.is-active {
    background: #fff;
    color: var(--color-main);
    border: solid 1px #fff;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner .calendar-link {
    font-size: 13px;
  }
}
.l-side-menu nav.side-menu-inner a.inst-link {
  display: block;
  text-align: center;
  font-family: "Montserrat", sans-serif;
  line-height: 1.4em;
  padding: 0.8em 0;
  border-radius: 0.3em;
  margin-top: 0.4em;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner a.inst-link {
    transition: all 0.3s;
    font-size: 12px;
  }
  .l-side-menu nav.side-menu-inner a.inst-link:hover {
    color: var(--color-light-green);
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner a.inst-link {
    font-size: 14px;
  }
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap {
  position: fixed;
  z-index: 10;
  bottom: 5vw;
  left: 0;
  right: 0;
  margin: auto;
  width: 48%;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap {
    width: 100px;
    bottom: 28px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap {
    width: 100%;
    margin: 0;
    bottom: 0;
    position: relative;
    padding-top: 20px;
    margin-top: 20px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap {
    padding-top: 34px;
    margin-top: 25px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--color-table);
  }
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn {
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  font-weight: 500;
  line-height: 1em;
  width: 100%;
  padding: calc(47 / 750 * 100vw) calc(85 / 750 * 100vw);
  border-radius: 50em;
  background-color: #333333;
  font-size: calc(30 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn {
    width: 150px;
    padding: 20px 30px;
    font-size: 15px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn {
    background: none;
    font-size: 12px;
    width: 80px;
    padding: 1em 0;
    border-radius: 0;
  }
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn:hover .line-wrap .line {
    background: var(--color-light-green);
  }
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn:hover .line-wrap .line:nth-of-type(1) {
    top: 50%;
  }
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn:hover .line-wrap .line:nth-of-type(2) {
    opacity: 0;
  }
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn:hover .line-wrap .line:nth-of-type(3) {
    top: 50%;
  }
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn:hover .txt {
    color: var(--color-light-green);
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn {
    font-size: 13px;
    width: 90px;
  }
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap {
  display: block;
  width: 38.4%;
  position: relative;
  height: calc(26 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap {
    width: 1em;
    height: 0.7em;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap {
    height: 14px;
    width: 40%;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap {
    width: 45%;
  }
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap .line {
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  left: 0;
  transition: top 0.3s, transform 0.3s, background-color 0.3s;
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap .line:nth-of-type(1) {
  top: 0;
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap .line:nth-of-type(2) {
  top: 50%;
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .line-wrap .line:nth-of-type(3) {
  top: 100%;
}
.l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .txt {
  width: 45%;
  color: #fff;
  font-family: "Montserrat", sans-serif;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .txt {
    width: 70%;
    line-height: 1em;
    transform: translate(0, 0.08em);
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-inner .menu-btn-wrap .menu-btn .txt {
    width: 45%;
    transform: translate(0);
  }
}
.l-side-menu {
  /*カレンダー*/
}
.l-side-menu div.side-calendar-box {
  display: none;
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box {
    display: block;
    position: absolute;
    width: 350px;
    height: 335px;
    top: 144px;
    left: 187px;
    background: var(--color-main);
    border-radius: 10px;
    box-sizing: border-box;
    padding: 45px 45px 40px 45px;
    transform: scale(0);
    transform-origin: bottom left;
    transition: all cubic-bezier(0.072, 0.88, 0.165, 1) 0.35s;
  }
  .l-side-menu div.side-calendar-box.is-active {
    transform: scale(1);
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu div.side-calendar-box {
    width: 419px;
    height: 386px;
    top: 157px;
    left: 233px;
    padding: 47px 50px 40px 50px;
  }
}
.l-side-menu div.side-calendar-box .calendar-close-btm {
  position: absolute;
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box .calendar-close-btm {
    width: 10px;
    height: 10px;
    top: 20px;
    right: 20px;
  }
  .l-side-menu div.side-calendar-box .calendar-close-btm:hover .line {
    background-color: var(--color-light-green);
  }
}
.l-side-menu div.side-calendar-box .calendar-close-btm .line {
  position: absolute;
  width: 100%;
  height: 1px;
  background: #fff;
  border-radius: 50em;
  top: 50%;
  left: 50%;
  transition: all 0.3s;
}
.l-side-menu div.side-calendar-box .calendar-close-btm .line:nth-last-of-type(1) {
  transform: translate(-50%, -50%) rotate(45deg);
}
.l-side-menu div.side-calendar-box .calendar-close-btm .line:nth-last-of-type(2) {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box .splide__arrows {
    margin-top: 35px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu div.side-calendar-box .splide__arrows {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box div.month-box .month {
    font-size: 21px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu div.side-calendar-box div.month-box .month {
    font-size: 24px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box div.month-box .color-wrap {
    font-size: 10px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu div.side-calendar-box div.month-box .color-wrap {
    font-size: 11px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box .m-calendar-wrap th {
    font-size: 10px;
    padding-bottom: 1.4em;
  }
}
.l-side-menu div.side-calendar-box .m-calendar-wrap td {
  padding-bottom: 0.4em;
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-calendar-box .m-calendar-wrap td {
    font-size: 14px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu div.side-calendar-box .m-calendar-wrap td {
    font-size: 18px;
  }
}
.l-side-menu div.side-menu-mega-wrap {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100dvh;
  background-color: var(--color-main);
  opacity: 0;
  pointer-events: none;
  transition: all 0.5s;
  z-index: 40;
}
@media screen and (min-width: 768px) {
  .l-side-menu div.side-menu-mega-wrap {
    z-index: 20;
  }
}
.l-side-menu nav.side-menu-mega {
  background-color: var(--color-main);
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  transition: all 0.5s;
  overflow-y: auto;
  white-space: nowrap;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.l-side-menu nav.side-menu-mega::-webkit-scrollbar {
  display: none;
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega {
    width: calc(100% - 180px);
    margin-left: 180px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-mega {
    width: calc(100% - 225px);
    margin-left: 225px;
  }
}
.l-side-menu nav.side-menu-mega .close-btn {
  display: block;
  width: calc(130 / 750 * 100vw);
  height: calc(30 / 750 * 100vw);
  color: #fff;
  font-family: var(--font-montserrat);
  font-size: calc(24 / 750 * 100vw);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega .close-btn {
    display: none;
  }
}
.l-side-menu nav.side-menu-mega .close-btn.top {
  margin: 0 0 calc(34 / 750 * 100vw) auto;
}
.l-side-menu nav.side-menu-mega .close-btn.bottom {
  margin: calc(65 / 750 * 100vw) auto 0;
  width: calc(138 / 750 * 100vw);
  height: calc(38 / 750 * 100vw);
}
.l-side-menu nav.side-menu-mega .close-btn.bottom .cross {
  width: calc(38 / 750 * 100vw);
  height: calc(38 / 750 * 100vw);
}
.l-side-menu nav.side-menu-mega .close-btn.bottom .cross .line {
  width: calc(53 / 750 * 100vw);
}
.l-side-menu nav.side-menu-mega .close-btn .cross {
  display: block;
  width: calc(30 / 750 * 100vw);
  height: calc(30 / 750 * 100vw);
  position: relative;
}
.l-side-menu nav.side-menu-mega .close-btn .cross .line {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #fff;
  width: calc(42 / 750 * 100vw);
  height: calc(2 / 750 * 100vw);
}
.l-side-menu nav.side-menu-mega .close-btn .cross .line:nth-of-type(1) {
  transform: translate(-50%, -50%) rotate(45deg);
}
.l-side-menu nav.side-menu-mega .close-btn .cross .line:nth-of-type(2) {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.l-side-menu nav.side-menu-mega .close-btn .txt {
  display: block;
  line-height: 1.2em;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-inner {
  background-color: var(--color-main);
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  display: block;
  padding: calc(36 / 750 * 100vw) calc(20 / 750 * 100vw) calc(120 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-inner {
    display: flex;
    padding: 53px 18px;
    gap: 8px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-inner {
    padding: 53px 18px 53px 0;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area-wrap {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area-wrap {
    width: 69%;
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area-wrap {
    width: calc(100% - 319px);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area {
  border: solid 1px var(--color-table);
  box-sizing: border-box;
  height: 100%;
  padding: calc(80 / 750 * 100vw) calc(33 / 750 * 100vw);
  border-radius: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-radius: 5px;
    padding: 40px 39px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box-wrap {
    width: 30%;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box-wrap:nth-of-type(1) div.side-menu-mega-main-area-box:nth-of-type(1) {
  padding-top: 0;
  border-top: none;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box-wrap:nth-of-type(2) div.side-menu-mega-main-area-box:nth-last-of-type(1) {
  border-bottom: solid 1px var(--color-table);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box-wrap:nth-of-type(2) div.side-menu-mega-main-area-box:nth-last-of-type(1) {
    border-bottom: none;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box {
  box-sizing: border-box;
  border-top: solid 1px var(--color-table);
  padding: 1.4em 0 1.4em 1em;
  font-size: calc(32 / 750 * 100vw);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box {
    display: block;
    font-size: clamp(0px, 18 / 1366 * 100vw, 18px);
    padding: 1.6em 0 1.6em 1em;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box:nth-of-type(1) {
    border-top: none;
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box:nth-last-of-type(1) {
    padding-bottom: 0;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 {
  line-height: 1.2em;
  font-weight: 500;
  position: relative;
  margin-bottom: 1.2em;
  width: 50%;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 {
    width: auto;
    margin-bottom: 0.9em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2.mr-btm-none {
  margin-bottom: 0;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a {
    transition: all 0.3s;
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a:hover {
    color: var(--color-light-green);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a:hover .dots {
    transform: scale(0.5);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a:hover .dots::after {
    width: 300%;
    height: 300%;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a .dots {
  display: block;
  width: 0.35em;
  height: 0.35em;
  border-radius: 50em;
  position: absolute;
  top: 0.48em;
  left: -1em;
  background-color: var(--color-light-green);
  transition: all 0.3s ease;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box h2 a .dots::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  border-radius: 50em;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
  box-sizing: border-box;
  border: solid 0.15em var(--color-light-green);
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul {
  line-height: 1.2em;
  font-size: calc(23 / 750 * 100vw);
  width: 50%;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul {
    width: 100%;
    font-size: clamp(0px, 13 / 1366 * 100vw, 13px);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li {
    margin-bottom: 1em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li:last-child {
  margin-bottom: 0;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li a {
  position: relative;
  display: inline-block;
  color: var(--color-sub);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li a {
    transition: all 0.3s;
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li a:hover {
    color: var(--color-light-green);
    margin-left: 0.6em;
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-box ul li a:hover::after {
    background-color: var(--color-light-green);
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box-wrap {
    width: 27%;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box-wrap {
    width: 25%;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box {
  width: 100%;
  box-sizing: border-box;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box div.others-l-link-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: calc(80 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box div.others-l-link-wrap {
    margin-top: 0;
    display: block;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-l-link {
  line-height: 1.2em;
  font-weight: 500;
  font-size: calc(26 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-l-link {
    font-size: clamp(8px, 14 / 1366 * 100vw, 14px);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-l-link:last-child li:last-child {
  margin-bottom: 0;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-l-link li {
  margin-bottom: 1.4em;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-l-link li {
    margin-bottom: 1.7em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link {
  font-size: calc(23 / 750 * 100vw);
  line-height: 1.2em;
  font-weight: 400;
  margin-top: calc(50 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link {
    font-size: clamp(8px, 10 / 1366 * 100vw, 10px);
    margin-top: 4.5em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link li {
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link li {
    margin-bottom: 1.4em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link a {
  color: var(--color-sub);
  display: block;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box ul.others-s-link a:hover {
    color: var(--color-light-green);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box a {
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-main-area div.side-menu-mega-main-area-others-box a:hover {
    color: var(--color-light-green);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area {
    width: 31%;
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area {
    width: 310px;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box {
  display: block;
  border: solid 1px var(--color-table);
  box-sizing: border-box;
  padding: 0 calc(65 / 750 * 100vw);
  line-height: 1.2em;
  font-weight: 500;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  font-size: calc(32 / 750 * 100vw);
  margin-top: calc(10 / 750 * 100vw);
  overflow: hidden;
  border-radius: calc(10 / 750 * 100vw);
  height: calc(195 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box {
    font-size: clamp(0px, 16 / 1366 * 100vw, 16px);
    margin-top: 0;
    margin-bottom: 8px;
    transition: all 0.3s;
    padding: 0 2em;
    border-radius: 5px;
    height: calc(100 / 1366 * 100vw);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box:hover {
    background-color: var(--color-light-green);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box:hover .arrow svg:nth-of-type(1) {
    transform: translate(100%, 0);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box:hover .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box {
    height: calc(85 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box {
    height: 80px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.small {
    height: calc(80 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.small {
    height: calc(65 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.small {
    height: 65px;
  }
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.small p {
    transform: translate(0, -0.03em);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand {
  background-color: #3BB961;
  justify-content: center;
  position: relative;
  height: calc(195 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand {
    height: calc(100 / 1366 * 100vw);
    padding: 0 2em;
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand:hover div.brand-bg img {
    transform: scale(1.1);
  }
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand:hover p {
    transform: scale(0.94);
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand {
    height: calc(85 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand {
    height: 80px;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand p {
  text-align: center;
  font-family: var(--font-montserrat);
  font-weight: bold;
  line-height: 1em;
  transition: all 0.3s;
  font-size: calc(65 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand p {
    transform: translate(0);
    font-size: clamp(15px, 28 / 1366 * 100vw, 28px);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand div.brand-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box.brand div.brand-bg img {
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box p {
    transform: translate(0, -0.2em);
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box p .small {
  font-weight: 300;
  display: block;
  font-size: calc(22 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box p .small {
    font-size: 0.75em;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box .arrow {
  display: block;
  overflow: hidden;
  position: relative;
  width: calc(23 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box .arrow {
    width: 10px;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box .arrow svg {
  transition: all 0.3s;
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area a.side-menu-mega-others-box .arrow svg:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-120%, 0);
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-calendar-box {
  display: block;
  border: solid 1px var(--color-table);
  border-radius: 5px;
  box-sizing: border-box;
  margin-top: calc(10 / 750 * 100vw);
  padding: calc(80 / 750 * 100vw) calc(65 / 750 * 100vw);
  border-radius: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-calendar-box {
    border-radius: 5px;
    margin-top: 0;
    padding: 37px 34px;
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-calendar-box {
    padding: 30px 34px;
  }
}
@media screen and (min-width: 1280px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-calendar-box {
    padding: 37px 34px;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box {
  border: solid 1px var(--color-table);
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  font-family: var(--font-montserrat);
  gap: 4em;
  line-height: 1.2em;
  font-size: calc(32 / 750 * 100vw);
  padding: calc(70 / 750 * 100vw) 0;
  margin-top: calc(10 / 750 * 100vw);
  border-radius: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box {
    border-radius: 5px;
    font-size: clamp(0px, 15 / 1366 * 100vw, 15px);
    padding: 0;
    margin-top: 0;
    gap: 2em;
    height: calc(80 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1000px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box {
    height: calc(65 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1360px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box {
    height: 65px;
  }
}
.l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box a {
  display: block;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-side-menu nav.side-menu-mega div.side-menu-mega-others-area .side-menu-mega-others-sns-box a:hover {
    color: var(--color-light-green);
  }
}

/*============================================== カレンダー ==============================================*/
.m-calendar-slider .splide__arrows {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 50em;
  box-sizing: border-box;
  margin-top: calc(80 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-slider .splide__arrows {
    margin-top: 30px;
  }
}
.m-calendar-slider .splide__arrows div.pagination-holder {
  width: auto;
  height: auto;
  box-sizing: border-box;
  padding: 0 calc(115 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-slider .splide__arrows div.pagination-holder {
    padding: 0 2.8vw;
  }
}
@media screen and (min-width: 1280px) {
  .m-calendar-slider .splide__arrows div.pagination-holder {
    padding: 0 47px;
  }
}
.m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination {
  position: relative;
  bottom: 0;
  left: 0;
  padding: 0;
  align-items: center;
  gap: calc(38 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination {
    gap: 1.6vw;
  }
}
@media screen and (min-width: 1280px) {
  .m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination {
    gap: 21px;
  }
}
.m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination li {
  height: auto;
  line-height: 0;
}
.m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination .splide__pagination__page {
  margin: 0;
  background: none;
  opacity: 1;
  display: block;
  font-size: 1em;
  width: calc(8 / 750 * 100vw);
  height: calc(8 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination .splide__pagination__page {
    width: 4px;
    height: 4px;
  }
}
.m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination .splide__pagination__page::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #DAE0E5;
  transform: scale(1);
  border-radius: 50em;
}
.m-calendar-slider .splide__arrows div.pagination-holder .splide__pagination .splide__pagination__page.is-active::after {
  background-color: #fff;
  transform: scale(1.3);
}
.m-calendar-slider .splide__arrows .splide__arrow {
  display: block;
  position: relative;
  top: 0;
  left: 0;
  background: none;
  transform: scale(1);
  width: calc(12 / 750 * 100vw);
  height: auto;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .m-calendar-slider .splide__arrows .splide__arrow {
    width: 6px;
  }
}
.m-calendar-slider .splide__arrows .splide__arrow:hover path {
  stroke: var(--color-light-green);
}
.m-calendar-slider .splide__arrows .splide__arrow svg {
  width: 100%;
  height: auto;
  fill: none;
  transform: translate(0);
}
.m-calendar-slider .splide__arrows .splide__arrow svg path {
  transition: stroke 0.3s;
}

.m-calendar-wrap div.month-box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: solid 1px var(--color-table);
  margin-bottom: calc(45 / 750 * 100vw);
  padding-bottom: calc(25 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap div.month-box {
    margin-bottom: 19px;
    padding-bottom: 10px;
  }
}
.m-calendar-wrap div.month-box .month {
  line-height: 1.2em;
  font-family: var(--font-manrope);
  font-weight: bold;
  color: #fff;
  font-size: calc(50 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap div.month-box .month {
    font-size: clamp(0px, 20 / 1366 * 100vw, 20px);
  }
}
.m-calendar-wrap div.month-box .color-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.2em;
  gap: 1em;
  font-size: calc(22 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap div.month-box .color-wrap {
    font-size: clamp(9px, 9 / 1366 * 100vw, 9px);
  }
}
.m-calendar-wrap div.month-box .color-wrap p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em;
  font-weight: 500;
  color: #fff;
}
.m-calendar-wrap div.month-box .color-wrap p span.color {
  display: block;
  width: calc(32 / 750 * 100vw);
  height: calc(15 / 750 * 100vw);
  border-radius: 50em;
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap div.month-box .color-wrap p span.color {
    width: 2.4em;
    height: 1em;
  }
}
.m-calendar-wrap div.month-box .color-wrap p span.color.closed {
  background: #E54956;
}
.m-calendar-wrap div.month-box .color-wrap p span.color.event {
  background: var(--color-light-green);
}
.m-calendar-wrap table {
  width: 108%;
  text-align: center;
  position: relative;
  left: 50%;
  transform: translate(-50%, 0);
}
.m-calendar-wrap table th {
  line-height: 1.2em;
  font-size: calc(19 / 750 * 100vw);
  padding-bottom: 1.4em;
  color: var(--color-light-gray);
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap table th {
    padding-bottom: 1em;
    font-size: clamp(9px, 9 / 1366 * 100vw, 9px);
  }
}
.m-calendar-wrap table td {
  font-size: calc(32 / 750 * 100vw);
  font-weight: 600;
  line-height: 1.2em;
  padding-bottom: 0.6em;
  font-family: var(--font-manrope);
  color: #fff;
}
@media screen and (min-width: 768px) {
  .m-calendar-wrap table td {
    font-size: clamp(10px, 14 / 1366 * 100vw, 14px);
  }
}
.m-calendar-wrap table td.gray {
  color: var(--color-sub-txt-v02);
}
.m-calendar-wrap table td.closed {
  color: var(--color-red02);
}
.m-calendar-wrap table td.event {
  color: var(--color-light-green);
}

/*============================================== fotter ==============================================*/
.l-btm-bk-area {
  background: var(--color-main);
  box-sizing: border-box;
  padding: calc(120 / 750 * 100vw) calc(20 / 750 * 100vw) calc(80 / 750 * 100vw) calc(20 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-btm-bk-area {
    padding: calc(120 / 1366 * 100vw) 18px 110px 18px;
  }
}
@media screen and (min-width: 1000px) {
  .l-btm-bk-area {
    padding: calc(120 / 1366 * 100vw) 18px 56px 18px;
  }
}
.l-btm-bk-area .m-pan-nav {
  margin-bottom: calc(28 / 750 * 100vw);
  padding-top: 0;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-btm-bk-area .m-pan-nav {
    margin-bottom: 23px;
  }
}
@media screen and (min-width: 768px) {
  .l-btm-bk-area .m-pan-nav ul li {
    font-size: 10px;
  }
}
@media screen and (min-width: 1000px) {
  .l-btm-bk-area .m-pan-nav ul li {
    font-size: 12px;
  }
}
.l-btm-bk-area .m-pan-nav ul li::before {
  border-top: solid 0.12em #fff;
  border-right: solid 0.12em #fff;
}

.l-footer {
  color: #fff;
  box-sizing: border-box;
  padding: calc(110 / 750 * 100vw) calc(33 / 750 * 100vw) calc(120 / 750 * 100vw);
  border-top: solid calc(2 / 750 * 100vw) var(--color-table);
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .l-footer {
    display: block;
    border-top: solid 1px var(--color-table);
    padding: 60px 20px 0 20px;
  }
}
@media screen and (min-width: 1280px) {
  .l-footer {
    padding: 70px 38px 0 38px;
  }
}
.l-footer div.l-footer-inner {
  display: contents;
}
@media screen and (min-width: 768px) {
  .l-footer div.l-footer-inner {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
  }
}
.l-footer div.l-footer-inner.btm {
  margin-top: calc(80 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer div.l-footer-inner.btm {
    align-items: flex-end;
    margin-top: calc(80 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1360px) {
  .l-footer div.l-footer-inner.btm {
    margin-top: 80px;
  }
}
.l-footer div.ft-box {
  display: contents;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-box {
    width: 19.3%;
    display: block;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer div.ft-box {
    width: 243px;
  }
}
.l-footer div.ft-box a.ft-logo {
  display: block;
  width: calc(308 / 750 * 100vw);
  order: 0;
  margin-bottom: calc(120 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-box a.ft-logo {
    width: 100%;
    margin-bottom: 0;
    order: 0;
  }
}
.l-footer div.ft-box div.ft-sns-box {
  font-family: var(--font-montserrat);
  font-weight: 600;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  -moz-column-gap: 1em;
       column-gap: 1em;
  line-height: 1.2em;
  font-size: calc(28 / 750 * 100vw);
  margin-top: calc(70 / 750 * 100vw);
  order: 4;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-box div.ft-sns-box {
    height: 100%;
    font-size: calc(18 / 1366 * 100vw);
    margin-top: 0;
    order: 0;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer div.ft-box div.ft-sns-box {
    font-size: 16px;
  }
}
.l-footer div.ft-box div.ft-sns-box a {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-box div.ft-sns-box a {
    transition: color 0.3s;
  }
  .l-footer div.ft-box div.ft-sns-box a:hover {
    color: var(--color-light-green);
  }
}
.l-footer div.ft-link-box-wrap {
  box-sizing: border-box;
  height: 100%;
  border-radius: calc(10 / 750 * 100vw);
  order: 2;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    border-radius: 5px;
    width: 72%;
    order: 0;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer div.ft-link-box-wrap {
    width: calc(100% - 350px);
  }
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box-wrap {
    width: 30%;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box-wrap:nth-of-type(1) div.ft-link-box-main-area-box:nth-of-type(1) {
  padding-top: 0;
  border-top: none;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box-wrap:nth-of-type(2) div.ft-link-box-main-area-box:nth-last-of-type(1) {
  border-bottom: solid 1px var(--color-table);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box-wrap:nth-of-type(2) div.ft-link-box-main-area-box:nth-last-of-type(1) {
    border-bottom: none;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box {
  box-sizing: border-box;
  border-top: solid 1px var(--color-table);
  padding: 1.4em 0 1.4em 1em;
  font-size: calc(32 / 750 * 100vw);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box {
    display: block;
    font-size: clamp(0px, 18 / 1366 * 100vw, 18px);
    padding: 1.7em 0 1.7em 1em;
  }
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box:nth-of-type(1) {
    border-top: none;
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box:nth-last-of-type(1) {
    padding-bottom: 0;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 {
  line-height: 1.2em;
  font-weight: 500;
  position: relative;
  margin-bottom: 1.2em;
  width: 50%;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 {
    width: auto;
    margin-bottom: 1em;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2.mr-btm-none {
  margin-bottom: 0;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a {
  display: inline-block;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a {
    transition: all 0.3s;
  }
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a:hover {
    color: var(--color-light-green);
  }
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a:hover .dots {
    transform: scale(0.5);
  }
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a:hover .dots::after {
    width: 300%;
    height: 300%;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a .dots {
  display: block;
  width: 0.35em;
  height: 0.35em;
  border-radius: 50em;
  position: absolute;
  top: 0.48em;
  left: -1em;
  background-color: var(--color-light-green);
  transition: all 0.3s ease;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box h2 a .dots::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  border-radius: 50em;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.3s;
  box-sizing: border-box;
  border: solid 0.15em var(--color-light-green);
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul {
  line-height: 1.2em;
  font-size: calc(23 / 750 * 100vw);
  width: 50%;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul {
    width: 100%;
    font-size: clamp(0px, 13 / 1366 * 100vw, 13px);
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li {
  position: relative;
  box-sizing: border-box;
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li {
    margin-bottom: 1.2em;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li:last-child {
  margin-bottom: 0;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li a {
  position: relative;
  display: inline-block;
  color: var(--color-sub);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li a {
    transition: all 0.3s;
  }
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li a:hover {
    color: var(--color-light-green);
    margin-left: 0.6em;
  }
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-box ul li a:hover::after {
    background-color: var(--color-light-green);
  }
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box-wrap {
    width: 27%;
  }
}
@media screen and (min-width: 1000px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box-wrap {
    width: 25%;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box {
  width: 100%;
  box-sizing: border-box;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box div.others-l-link-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: calc(80 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box div.others-l-link-wrap {
    margin-top: 0;
    display: block;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box a {
  color: #fff;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-l-link {
  line-height: 1.2em;
  font-weight: 400;
  font-size: calc(26 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-l-link {
    font-size: clamp(8px, 16 / 1366 * 100vw, 16px);
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-l-link:last-child li:last-child {
  margin-bottom: 0;
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-l-link li {
  margin-bottom: 1.4em;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-l-link li {
    margin-bottom: 1.4em;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link {
  font-size: calc(23 / 750 * 100vw);
  line-height: 1.2em;
  font-weight: 400;
  margin-top: calc(50 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link {
    font-size: clamp(8px, 12 / 1366 * 100vw, 12px);
    margin-top: 3.2em;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link li {
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link li {
    margin-bottom: 1em;
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link a {
  color: var(--color-sub);
  display: block;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box ul.others-s-link a:hover {
    color: var(--color-light-green);
  }
}
.l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box a {
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .l-footer div.ft-link-box-wrap div.ft-link-box-main-area-others-box a:hover {
    color: var(--color-light-green);
  }
}
.l-footer {
  /*div.ft-link-box-wrap{
  	order: -1;
  	display: flex;
  	flex-wrap: wrap;
  	justify-content: space-between;
  	@include mq(pc) {
  		width: pcvw(768);
  		line-height: 1.2em;
  		order: 0;
  		margin-top: pcvw(30);
  	}
  	@include mq(pc-xlarge) {
  		width: 786px;
  		margin-top: 30px;
  	}
  	.ft-link-box-lg{
  		width: 50%;
  		font-size: spvw(35);
  		@include mq(pc) {
  			width: pcvw(375);
  			font-size: pcvw(20);
  		}
  		@include mq(pc-xlarge) {
  			width: 375px;
  			font-size: 20px;
  		}
  		li{
  			margin-bottom: 0.6em;
  			@include mq(pc) {
  				margin-bottom: 1em;
  			}
  			@include mq(pc-middle) {
  				margin-bottom: 1.2em;
  			}
  			@include mq(pc-xlarge) {
  				margin-bottom: 1.4em;
  			}
  		}
  	}
  	.ft-link-box-sm{
  		width: 50%;
  		font-size: spvw(26);
  		@include mq(pc) {
  			width: pcvw(337);
  			font-size: pcvw(16);
  		}
  		@include mq(pc-xlarge) {
  			width: 337px;
  			font-size: 16px;
  		}
  		li{
  			margin-bottom: 0.2em;
  			@include mq(pc) {
  				margin-bottom: 1em;
  			}
  			@include mq(pc-xlarge) {
  				margin-bottom: 1.6em;
  			}
  		}
  	}
  	.ft-link-box-lg,.ft-link-box-sm{
  		a{
  			display: block;
  			color: #fff;
  			display: flex;
  			flex-wrap: wrap;
  			justify-content: space-between;
  			align-items: center;
  			font-weight: 500;
  			@include mq(pc) {
  				transition: all 0.3s;
  				&:hover{
  					color: var(--color-light-green);
  					.arrow{
  						svg{
  							&:nth-of-type(1){
  								transform: translate(100%,0);
  							}
  							&:nth-of-type(2){
  								transform: translate(0,0);
  							}
  							path{
  								stroke: var(--color-light-green);
  							}
  						}
  					}
  				}
  			}
  			.arrow{
  				display: none;
  				@include mq(pc) {
  					width: 30%;
  					position: relative;
  					overflow: hidden;
  					width: 10px;
  					display: block;
  				}
  				svg{
  					transition: all 0.3s;
  					&:nth-of-type(2){
  						position: absolute;
  						top: 0;
  						left: 0;
  						transform: translate(-120%,0);
  					}
  					path{
  						transition: all 0.3s;
  					}
  				}
  			}
  		}
  	}
  }*/
}
.l-footer .ft-others-link-box-wrap {
  width: 100%;
  order: 4;
  margin-top: calc(70 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer .ft-others-link-box-wrap {
    width: calc(310 / 1366 * 100vw);
    margin-top: 0;
    order: 0;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-others-link-box-wrap {
    width: 310px;
  }
}
.l-footer .ft-others-link-box-wrap div.ft-others-link-box {
  font-family: var(--font-montserrat);
  line-height: 1.2em;
  font-size: calc(24 / 750 * 100vw);
  margin-bottom: calc(15 / 750 * 100vw);
  margin-top: calc(85 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-footer .ft-others-link-box-wrap div.ft-others-link-box {
    font-size: clamp(9px, 13 / 1366 * 100vw, 1000px);
    margin-bottom: calc(18 / 1366 * 100vw);
    margin-top: 0;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-others-link-box-wrap div.ft-others-link-box {
    font-size: 13px;
    margin-bottom: 18px;
  }
}
.l-footer .ft-others-link-box-wrap div.ft-others-link-box a {
  color: #fff;
  display: block;
  margin-bottom: 0.6em;
}
@media screen and (min-width: 768px) {
  .l-footer .ft-others-link-box-wrap div.ft-others-link-box a {
    display: block;
    margin-bottom: 0.4em;
    transition: color 0.3s;
  }
  .l-footer .ft-others-link-box-wrap div.ft-others-link-box a:hover {
    color: var(--color-light-green);
  }
}
.l-footer .ft-others-link-box-wrap p.ft-txt {
  font-size: calc(18 / 750 * 100vw);
  font-weight: 200;
  line-height: 1.2em;
  letter-spacing: 0;
  margin-bottom: 0.6em;
  color: var(--color-sub);
}
@media screen and (min-width: 768px) {
  .l-footer .ft-others-link-box-wrap p.ft-txt {
    font-size: calc(10 / 1366 * 100vw);
    margin-bottom: 0.8em;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-others-link-box-wrap p.ft-txt {
    font-size: 10px;
    margin-bottom: 0.6em;
  }
}
.l-footer .ft-btn-wrap {
  order: 3;
  margin-top: calc(70 / 750 * 100vw);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .l-footer .ft-btn-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 72%;
    order: 0;
    margin-top: 0;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-btn-wrap {
    width: 900px;
  }
}
.l-footer .ft-btn-wrap a.m-btn-base {
  background-color: #333333;
  color: #fff;
  width: 100%;
  border-radius: calc(5 / 750 * 100vw);
  margin-bottom: calc(5 / 750 * 100vw);
  padding: 0 1.2em;
}
@media screen and (min-width: 768px) {
  .l-footer .ft-btn-wrap a.m-btn-base {
    font-size: calc(14 / 1366 * 100vw);
    border-radius: 50em;
    width: 22%;
    height: calc(56 / 1366 * 100vw);
    padding: 0 1.8em 0 2.2em;
    margin-bottom: 0;
  }
  .l-footer .ft-btn-wrap a.m-btn-base:hover {
    color: #fff;
    background: var(--color-light-green);
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-btn-wrap a.m-btn-base {
    font-size: 14px;
    width: 204px;
    height: 50px;
  }
}
.l-footer .ft-btn-wrap a.m-btn-base.white {
  background: #fff;
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  .l-footer .ft-btn-wrap a.m-btn-base.white {
    width: 29%;
  }
  .l-footer .ft-btn-wrap a.m-btn-base.white:hover {
    color: #fff;
    background: var(--color-light-green);
  }
  .l-footer .ft-btn-wrap a.m-btn-base.white:hover svg path {
    stroke: #fff;
  }
}
@media screen and (min-width: 1360px) {
  .l-footer .ft-btn-wrap a.m-btn-base.white {
    width: 262px;
  }
}

/*============================================================================================*/
.l-main-cont-wrap {
  position: relative;
  width: 100%;
}
@media screen and (min-width: 1000px) {
  .l-main-cont-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}
@media screen and (min-width: 1000px) {
  .l-main-cont-wrap::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 180px;
    background: var(--color-main);
    z-index: -1;
  }
}
@media screen and (min-width: 1280px) {
  .l-main-cont-wrap::after {
    width: 225px;
  }
}

.l-main-cont {
  /*background-image: linear-gradient(
  	180deg,
  	rgba(239, 242, 244, 1) 5%,
  	rgba(206, 212, 216, 1) 52%,
  	rgba(239, 242, 244, 1) 100%
  );*/
}
@media screen and (min-width: 1000px) {
  .l-main-cont {
    width: calc(100% - 180px);
  }
}
@media screen and (min-width: 1280px) {
  .l-main-cont {
    width: calc(100% - 225px);
  }
}

/*============================================== 下層 タイトル ==============================================*/
.l-lower-title-area {
  padding: calc(211 / 750 * 100vw) 0 calc(29 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-title-area {
    padding: 114px 0 53px;
  }
}
.l-lower-title-area h1 {
  box-sizing: border-box;
  padding: 0 calc(53 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-title-area h1 {
    padding: 0 50px;
    margin-bottom: calc(17 / 1366 * 100vw);
  }
}
@media screen and (min-width: 1000px) {
  .l-lower-title-area h1 {
    padding: 0 60px;
  }
}
@media screen and (min-width: 1280px) {
  .l-lower-title-area h1 {
    padding: 0 74px;
  }
}
.l-lower-title-area h1.ani-none .large, .l-lower-title-area h1.ani-none .large.en {
  letter-spacing: 0;
}
.l-lower-title-area h1 .large {
  display: block;
  font-weight: 700;
  font-size: calc(50 / 750 * 100vw);
  line-height: 1.4em;
  letter-spacing: -0.2em;
}
@media screen and (min-width: 768px) {
  .l-lower-title-area h1 .large {
    font-size: clamp(40px, 40 / 1366 * 100vw, 1000px);
  }
}
.l-lower-title-area h1 .large.en {
  font-family: var(--font-montserrat);
  line-height: 1em;
  letter-spacing: -0.4em;
}
.l-lower-title-area h1 .large.sp-60 {
  font-size: calc(60 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-title-area h1 .large.sp-60 {
    font-size: clamp(40px, 40 / 1366 * 100vw, 1000px);
  }
}
.l-lower-title-area h1 .large .wrap {
  display: inline-block;
  position: relative;
  letter-spacing: 0;
}
.l-lower-title-area h1 .large .wrap.mr-right {
  margin-right: 0.4em;
}
.l-lower-title-area h1 .large .wrap .img {
  display: block;
  width: 70%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.l-lower-title-area h1 .large .wrap:nth-of-type(1) .cardface__front {
  animation: flipcard01 3s 0.6s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(1) .cardface__back {
  animation: flipcard02 3s 0.6s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(3) .cardface__front {
  animation: flipcard01 3s 0.8s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(3) .cardface__back {
  animation: flipcard02 3s 0.8s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(5) .cardface__front {
  animation: flipcard01 3s 1s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(5) .cardface__back {
  animation: flipcard02 3s 1s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(7) .cardface__front {
  animation: flipcard01 3s 1.2s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(7) .cardface__back {
  animation: flipcard02 3s 1.2s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(9) .cardface__front {
  animation: flipcard01 3s 1.4s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(9) .cardface__back {
  animation: flipcard02 3s 1.4s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(11) .cardface__front {
  animation: flipcard01 3s 1.6s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(11) .cardface__back {
  animation: flipcard02 3s 1.6s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(13) .cardface__front {
  animation: flipcard01 3s 1.8s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(13) .cardface__back {
  animation: flipcard02 3s 1.8s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(15) .cardface__front {
  animation: flipcard01 3s 2s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .wrap:nth-of-type(15) .cardface__back {
  animation: flipcard02 3s 2s linear(0, 0.013 0.5%, 0.05 1%, 0.109 1.5%, 0.204 2.1%, 0.429 3.2%, 1.04 5.8%, 1.301 7.2%, 1.395 7.9%, 1.454 8.5%, 1.491 9.1%, 1.508 9.7%, 1.503 10.2%, 1.488 10.8%, 1.453 11.4%, 1.405 12%, 1.29 13.1%, 0.98 15.7%, 0.847 17.1%, 0.799 17.8%, 0.769 18.4%, 0.75 19%, 0.742 19.6%, 0.752 20.7%, 0.794 21.9%, 1.01 25.6%, 1.078 27%, 1.118 28.3%, 1.131 29.5%, 1.126 30.6%, 1.105 31.8%, 0.995 35.5%, 0.96 36.9%, 0.941 38.1%, 0.933 39.3%, 0.942 41.3%, 1.016 46.4%, 1.034 49.2%, 1.029 51.2%, 0.992 56.3%, 0.983 59%, 1.009 68.9%, 0.996 78.5%, 1.002 88.5%, 1) forwards;
}
.l-lower-title-area h1 .large .card {
  position: relative;
  perspective: 1000px;
  transform-style: preserve-3d;
}
@keyframes base {
  0% {
    transform: scale(1, 1) translate(0%, 0%);
  }
  10% {
    transform: scale(0.94, 0.94) translate(0%, 5%);
  }
  20% {
    transform: scale(1.2, 0.8) translate(0%, 7%);
  }
  35% {
    transform: scale(0.8, 1.1) translate(0%, -10%);
  }
  58% {
    transform: scale(1.04, 0.8) translate(0%, 5%);
  }
  70% {
    transform: scale(1, 1) translate(0%, 0%);
  }
}
.l-lower-title-area h1 .large .cardface {
  display: block;
  position: relative;
  bottom: 0;
  left: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-size: 1em;
  font-weight: bold;
  border-radius: 1vw;
  backface-visibility: hidden;
  transform-origin: center center;
}
.l-lower-title-area h1 .large .cardface__front {
  transform: none;
  position: absolute;
}
.l-lower-title-area h1 .large .cardface__front img {
  animation: base 0.9s 0.4s infinite;
  transform-origin: bottom center;
}
.l-lower-title-area h1 .large .cardface__back {
  transform: rotateY(180deg);
}
.l-lower-title-area h1 .small {
  display: block;
  font-weight: 600;
  letter-spacing: -0.02em;
  line-height: 1.2em;
  margin-top: 0.5em;
  font-size: calc(22 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-title-area h1 .small {
    font-size: clamp(10px, 16 / 1366 * 100vw, 100px);
  }
}
.l-lower-title-area h1 .small.green {
  color: var(--color-light-green);
}
.l-lower-title-area h1 .small.used {
  color: var(--color-used);
}
.l-lower-title-area h1 .small.time {
  font-family: var(--font-manrope);
  font-size: 14px;
  color: var(--color-sub-txt);
}
.l-lower-title-area h1 .small.en {
  font-family: var(--font-montserrat);
}
.l-lower-title-area h1 .small.weight-500 {
  font-weight: 500;
}

/*============================================== 下層 コンテンツボックス ==============================================*/
.l-lower-cont-area {
  box-sizing: border-box;
  padding: 0 calc(20 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-cont-area {
    padding: 0 18px;
  }
}

/*============================================== 下層 sticky コンテンツ ==============================================*/
.l-lower-sticky-area {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: calc(90 / 1366 * 100vw);
  }
}
.l-lower-sticky-area div.sticky-left-box {
  padding-left: calc(33 / 750 * 100vw);
  padding-bottom: calc(130 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box {
    padding: 0;
    position: sticky;
    top: 0;
    left: 0;
    width: 224px;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: end;
    z-index: 2;
  }
}
.l-lower-sticky-area div.sticky-left-box.pc-block {
  display: none;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box.pc-block {
    display: flex;
  }
}
.l-lower-sticky-area div.sticky-left-box p {
  font-size: calc(22 / 750 * 100vw);
  font-family: var(--font-manrope);
  font-weight: 600;
  line-height: 1.2em;
  margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav {
    margin-left: 24px;
    margin-bottom: 20px;
  }
}
.l-lower-sticky-area div.sticky-left-box nav li {
  position: relative;
}
.l-lower-sticky-area div.sticky-left-box nav li:last-child a {
  border: none;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav li.is-up .arrow {
    transform: rotate(-90deg);
  }
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav li.is-active a {
    font-size: 14px;
    font-weight: 500;
    color: var(--color-main);
  }
  .l-lower-sticky-area div.sticky-left-box nav li.is-active a::after {
    transform: scale(1);
  }
  .l-lower-sticky-area div.sticky-left-box nav li.is-active a .arrow {
    transform: scale(0);
  }
}
.l-lower-sticky-area div.sticky-left-box nav li.w120 {
  width: 120%;
  letter-spacing: -0.03em;
}
.l-lower-sticky-area div.sticky-left-box nav li a {
  display: block;
  padding: 0.5em 0 0.5em 1em;
  box-sizing: border-box;
  position: relative;
  line-height: 1.2em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav li a {
    padding: 0.7em 0 0.7em 1.2em;
    font-size: 11px;
    color: var(--color-sub-txt);
    transition: all 0.3s;
  }
  .l-lower-sticky-area div.sticky-left-box nav li a:hover {
    color: var(--color-light-green);
  }
}
.l-lower-sticky-area div.sticky-left-box nav li a::after {
  content: "";
  display: block;
  width: 0.4em;
  height: 0.4em;
  position: absolute;
  top: 0.9em;
  left: 0.02em;
  border-radius: 50em;
  background-color: var(--color-light-green);
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav li a::after {
    top: 1.1em;
    width: 6px;
    height: 6px;
    transform: scale(0);
  }
}
.l-lower-sticky-area div.sticky-left-box nav li a .arrow {
  display: none;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-left-box nav li a .arrow {
    display: inline-block;
    position: absolute;
    left: -0.2em;
    top: 0.9em;
    width: 1em;
    height: 1em;
    transform: rotate(90deg);
  }
}
.l-lower-sticky-area div.sticky-left-box nav li a .arrow::before, .l-lower-sticky-area div.sticky-left-box nav li a .arrow::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.12em;
  background: var(--color-sub-txt);
  position: absolute;
  top: 50%;
  right: 0.25em;
  border-radius: 100px;
  transform: translate(0, -50%) rotate(45deg);
  transform-origin: calc(100% - 0.1em) 50%;
  transition: 0.3s;
}
.l-lower-sticky-area div.sticky-left-box nav li a .arrow::after {
  transform: rotate(-45deg);
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area div.sticky-right-box {
    width: calc(100% - 250px);
  }
}
@media screen and (min-width: 1280px) {
  .l-lower-sticky-area div.sticky-right-box {
    width: calc(100% - 280px);
  }
}
.l-lower-sticky-area .sticky-area-cont-title-wrap {
  font-size: calc(40 / 750 * 100vw);
  line-height: 1.28em;
  padding-left: 0.6em;
  margin-bottom: calc(60 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area .sticky-area-cont-title-wrap {
    padding-left: 0;
    font-size: clamp(10px, 35 / 1366 * 100vw, 1000px);
    margin-bottom: 2.14em;
    transform: translate(-240px, 0);
    width: 100%;
  }
}
@media screen and (min-width: 1000px) {
  .l-lower-sticky-area .sticky-area-cont-title-wrap {
    width: calc(100% + 224px);
    transform: translate(-230px, 0);
  }
}
@media screen and (min-width: 1280px) {
  .l-lower-sticky-area .sticky-area-cont-title-wrap {
    transform: translate(-240px, 0);
    width: 100%;
  }
}
.l-lower-sticky-area .sticky-area-cont-title-wrap .sticky-area-cont-title {
  font-weight: 500;
}
.l-lower-sticky-area .sticky-area-cont-title-wrap .small {
  font-size: 0.57em;
  margin-left: 0.4em;
}
.l-lower-sticky-area .sticky-area-cont-title-wrap .note {
  margin-top: 1em;
  font-weight: 400;
  font-size: calc(18 / 750 * 100vw);
  line-height: 1.5em;
  letter-spacing: 0.04em;
  text-indent: -1em;
  padding-left: 1em;
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area .sticky-area-cont-title-wrap .note {
    font-weight: 400;
    font-size: clamp(10px, 10 / 1366 * 100vw, 100px);
    line-height: 1.4em;
    letter-spacing: 0.02em;
  }
}
.l-lower-sticky-area section {
  position: relative;
  padding: calc(60 / 750 * 100vw) 0 calc(110 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area section {
    padding: calc(50 / 1366 * 100vw) 0 calc(100 / 1366 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area section:nth-last-of-type(1) {
    padding-bottom: 0;
  }
}
.l-lower-sticky-area section::after {
  content: "";
  display: block;
  width: 100%;
  height: calc(2 / 750 * 100vw);
  position: absolute;
  top: 0;
  right: 0;
  background: var(--color-main);
}
@media screen and (min-width: 768px) {
  .l-lower-sticky-area section::after {
    width: calc(100% + 250px);
    height: 1px;
  }
}
@media screen and (min-width: 1280px) {
  .l-lower-sticky-area section::after {
    width: calc(100% + 280px);
  }
}

/*============================================== パンくずリスト ==============================================*/
.m-pan-nav {
  box-sizing: border-box;
  padding: calc(65 / 750 * 100vw) calc(20 / 750 * 100vw) 0;
}
@media screen and (min-width: 768px) {
  .m-pan-nav {
    padding: 0 18px;
  }
}
.m-pan-nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.m-pan-nav ul li {
  display: inline-block;
  line-height: 1.4em;
  position: relative;
  font-size: 3.2vw;
  line-height: 1.2em;
  font-weight: 500;
  font-size: calc(18 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-pan-nav ul li {
    font-size: clamp(10px, 12 / 1366 * 100vw, 100px);
  }
}
.m-pan-nav ul li:last-child::before {
  content: none;
}
.m-pan-nav ul li::before {
  content: "";
  width: 0.4em;
  height: 0.4em;
  border-top: solid 0.12em var(--color-sub-txt);
  border-right: solid 0.12em var(--color-sub-txt);
  position: absolute;
  right: 0.8em;
  top: 0.35em;
  transform: rotate(45deg);
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .m-pan-nav ul li::before {
    top: 0.4em;
  }
}
.m-pan-nav ul li a {
  color: var(--color-sub-txt);
  padding: 0 2em 0 0;
  transition: color 0.3s;
}
@media screen and (min-width: 768px) {
  .m-pan-nav ul li a:hover {
    color: var(--color-light-green);
  }
}

/*============================================== ボタン（260px*60px ベース）  ==============================================*/
a.m-btn-base, .m-btn-base {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  border-radius: 50em;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  margin: auto;
  font-size: calc(24 / 750 * 100vw);
  line-height: 1.2em;
  width: 14.9em;
  height: 3.7em;
  padding: 0 1.6em;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  a.m-btn-base, .m-btn-base {
    width: 18.6em;
    height: 4.3em;
    font-size: clamp(10px, 14 / 1366 * 100vw, 1000px);
    padding: 0 1.8em 0 2.2em;
    transition: all 0.3s;
  }
  a.m-btn-base:hover .arrow svg:nth-of-type(1), .m-btn-base:hover .arrow svg:nth-of-type(1) {
    transform: translate(100%, 0);
  }
  a.m-btn-base:hover .arrow svg:nth-of-type(2), .m-btn-base:hover .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  a.m-btn-base.no-arrow:hover .arrow svg:nth-of-type(1), .m-btn-base.no-arrow:hover .arrow svg:nth-of-type(1) {
    transform: translate(0, 0);
  }
  a.m-btn-base.no-arrow:hover .arrow svg:nth-of-type(2), .m-btn-base.no-arrow:hover .arrow svg:nth-of-type(2) {
    transform: translate(-120%, 0);
  }
}
a.m-btn-base.black, .m-btn-base.black {
  background: var(--color-main);
  color: #fff;
}
@media screen and (min-width: 768px) {
  a.m-btn-base.black:hover, .m-btn-base.black:hover {
    background: var(--color-light-green);
  }
}
a.m-btn-base.white, .m-btn-base.white {
  background: #fff;
  color: var(--color-main);
}
@media screen and (min-width: 768px) {
  a.m-btn-base.white:hover, .m-btn-base.white:hover {
    color: #fff;
    background: var(--color-light-green);
  }
  a.m-btn-base.white:hover svg path, .m-btn-base.white:hover svg path {
    stroke: #fff;
  }
}
a.m-btn-base.blue, .m-btn-base.blue {
  background: #0B5CFF;
  color: #fff;
}
@media screen and (min-width: 768px) {
  a.m-btn-base.blue:hover, .m-btn-base.blue:hover {
    background: #0040ff;
  }
}
a.m-btn-base.green03, .m-btn-base.green03 {
  background-color: var(--color-green03);
  color: #fff;
}
@media screen and (min-width: 768px) {
  a.m-btn-base.green03:hover, .m-btn-base.green03:hover {
    background-color: #00dcb0;
  }
}
a.m-btn-base.dark-green, .m-btn-base.dark-green {
  background-color: var(--color-dark-green);
  color: #fff;
}
@media screen and (min-width: 768px) {
  a.m-btn-base.dark-green:hover, .m-btn-base.dark-green:hover {
    background-color: #576369;
  }
}
a.m-btn-base.kinto, .m-btn-base.kinto {
  background-color: var(--color-kinto);
  color: #fff;
}
@media screen and (min-width: 768px) {
  a.m-btn-base.kinto:hover, .m-btn-base.kinto:hover {
    background-color: #16bcdd;
  }
}
a.m-btn-base.down .arrow, .m-btn-base.down .arrow {
  transform: rotate(90deg);
}
@media screen and (min-width: 768px) {
  a.m-btn-base.hover-red:hover, .m-btn-base.hover-red:hover {
    background-color: var(--color-used);
    color: #fff;
  }
  a.m-btn-base.hover-red:hover .arrow svg path, .m-btn-base.hover-red:hover .arrow svg path {
    stroke: #fff;
  }
}
a.m-btn-base span, .m-btn-base span {
  display: block;
}
a.m-btn-base .arrow, .m-btn-base .arrow {
  overflow: hidden;
  position: relative;
  width: 1em;
}
a.m-btn-base .arrow svg, .m-btn-base .arrow svg {
  transition: all 0.3s;
}
a.m-btn-base .arrow svg:nth-of-type(2), .m-btn-base .arrow svg:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-120%, 0);
}
a.m-btn-base .arrow svg path, .m-btn-base .arrow svg path {
  transition: all 0.3s;
}

/*============================================== 下層 リード ==============================================*/
@media screen and (min-width: 768px) {
  .m-media-lead {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.m-media-lead div.lead-img {
  overflow: hidden;
  isolation: isolate;
  border-radius: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-media-lead div.lead-img {
    width: 44%;
    border-radius: 5px;
  }
}
.m-media-lead div.lead-txt-wrap {
  background: #fff;
  box-sizing: border-box;
  position: relative;
  border-radius: calc(10 / 750 * 100vw);
  padding: calc(80 / 750 * 100vw) calc(60 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-media-lead div.lead-txt-wrap {
    width: calc(56% - 8px);
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 5%;
  }
}
@media screen and (min-width: 1360px) {
  .m-media-lead div.lead-txt-wrap {
    padding: 66px 20px 66px 66px;
  }
}
.m-media-lead div.lead-txt-wrap .lead-txt {
  font-weight: 700;
  font-size: calc(36 / 750 * 100vw);
  line-height: 1.44em;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 768px) {
  .m-media-lead div.lead-txt-wrap .lead-txt {
    font-weight: 700;
    font-size: clamp(17px, 26 / 1366 * 100vw, 35px);
    line-height: 1.46em;
    letter-spacing: 0.02em;
  }
}
.m-media-lead div.lead-txt-wrap .lead-body-txt {
  color: var(--color-sub-txt-v02);
  margin-top: 1em;
  font-weight: 400;
  font-size: calc(24 / 750 * 100vw);
  line-height: 1.75em;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .m-media-lead div.lead-txt-wrap .lead-body-txt {
    font-weight: 400;
    line-height: 2em;
    letter-spacing: 0.03em;
    font-size: clamp(10px, 18 / 1366 * 100vw, 24px);
  }
}

/*============================================== 四角ボタン（40px*40px ベース） ==============================================*/
.m-btm-square, button.m-btm-square, span.m-btm-square {
  width: calc(69 / 750 * 100vw);
  height: calc(69 / 750 * 100vw);
  border-radius: calc(5 / 750 * 100vw);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: all 0.3s;
  position: relative;
}
@media screen and (min-width: 768px) {
  .m-btm-square, button.m-btm-square, span.m-btm-square {
    border-radius: 5px;
    width: clamp(0px, 40 / 1366 * 100vw, 1000px);
    height: clamp(0px, 40 / 1366 * 100vw, 1000px);
    opacity: 1;
  }
}
.m-btm-square.black, button.m-btm-square.black, span.m-btm-square.black {
  background-color: var(--color-main);
}
.m-btm-square.white, button.m-btm-square.white, span.m-btm-square.white {
  background-color: #fff;
}
.m-btm-square.gray, button.m-btm-square.gray, span.m-btm-square.gray {
  background-color: var(--color-sub);
}
.m-btm-square.used, button.m-btm-square.used, span.m-btm-square.used {
  background-color: var(--color-used);
}
.m-btm-square:disabled, button.m-btm-square:disabled, span.m-btm-square:disabled {
  opacity: 1;
  background-color: var(--color-sub);
  pointer-events: none;
}
.m-btm-square.splide__arrow, button.m-btm-square.splide__arrow, span.m-btm-square.splide__arrow {
  transform: translate(0);
  top: 0;
  left: 0;
}
.m-btm-square.prev .arrow svg:nth-of-type(2), button.m-btm-square.prev .arrow svg:nth-of-type(2), span.m-btm-square.prev .arrow svg:nth-of-type(2) {
  left: auto;
  right: 0;
  transform: translate(120%, 0);
}
.m-btm-square.down .arrow svg:nth-of-type(2), button.m-btm-square.down .arrow svg:nth-of-type(2), span.m-btm-square.down .arrow svg:nth-of-type(2) {
  left: auto;
  right: 0;
  transform: translate(0, -120%);
}
.m-btm-square .arrow, button.m-btm-square .arrow, span.m-btm-square .arrow {
  display: block;
  width: 30%;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .m-btm-square .arrow, button.m-btm-square .arrow, span.m-btm-square .arrow {
    width: 27%;
  }
}
.m-btm-square .arrow svg, button.m-btm-square .arrow svg, span.m-btm-square .arrow svg {
  transition: all 0.3s;
}
.m-btm-square .arrow svg:nth-of-type(2), button.m-btm-square .arrow svg:nth-of-type(2), span.m-btm-square .arrow svg:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-120%, 0);
}
.m-btm-square .arrow svg path, button.m-btm-square .arrow svg path, span.m-btm-square .arrow svg path {
  transition: all 0.3s;
}
.m-btm-square svg, button.m-btm-square svg, span.m-btm-square svg {
  display: block;
  width: auto;
  height: auto;
  transform: scaleX(1);
}

/*============================================== 四角ボタン スライド矢印 ==============================================*/
@media screen and (min-width: 768px) {
  .m-btn-square-slide-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: calc(86 / 1366 * 100vw);
  }
}
@media screen and (min-width: 768px) {
  .m-btn-square-slide-wrap .m-btm-square:hover {
    background-color: var(--color-light-green);
  }
  .m-btn-square-slide-wrap .m-btm-square:hover .arrow svg:nth-of-type(1) {
    transform: translate(120%, 0);
  }
  .m-btn-square-slide-wrap .m-btm-square:hover .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
}
@media screen and (min-width: 768px) {
  .m-btn-square-slide-wrap .m-btm-square.prev:hover {
    background-color: var(--color-light-green);
  }
  .m-btn-square-slide-wrap .m-btm-square.prev:hover .arrow svg:nth-of-type(1) {
    transform: translate(-120%, 0);
  }
  .m-btn-square-slide-wrap .m-btm-square.prev:hover .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
}

/*============================================== YouTube ==============================================*/
.m-youtube-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.m-youtube-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*============================================== アイテムリスト ==============================================*/
.m-panel-list li {
  background: #fff;
  box-sizing: border-box;
  border-radius: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-panel-list li {
    border-radius: 10px;
  }
}
.m-panel-list li {
  position: relative;
}
@media screen and (min-width: 768px) {
  .m-panel-list li {
    padding: 45px 40px;
    margin-bottom: 8px;
  }
}
.m-panel-list li::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 50em;
}
@media screen and (min-width: 768px) {
  .m-panel-list li::after {
    width: 8px;
    height: 8px;
    top: 13px;
    left: 13px;
  }
}
.m-panel-list li.used::after {
  background-color: var(--color-used);
}
.m-panel-list li.gold::after {
  background-color: var(--color-gold);
}
.m-panel-list li.blue::after {
  background-color: var(--color-light-blue);
}
.m-panel-list li.pink::after {
  background-color: var(--color-pink);
}
.m-panel-list li.lightgreen::after {
  background-color: var(--color-light-green);
}
.m-panel-list li.green02::after {
  background-color: var(--color-green02);
}
.m-panel-list li.hacbase::after {
  background-color: var(--color-hac-base);
}
.m-panel-list li:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .m-panel-list dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
.m-panel-list dt {
  font-weight: bold;
  line-height: 1.2em;
}
@media screen and (min-width: 768px) {
  .m-panel-list dt {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 280px;
    font-size: 22px;
  }
}
@media screen and (min-width: 768px) {
  .m-panel-list dd {
    width: calc(100% - 300px);
  }
}
.m-panel-list p.panel-body-txt {
  color: var(--color-sub-txt-v02);
}
@media screen and (min-width: 768px) {
  .m-panel-list p.panel-body-txt {
    font-weight: 400;
    font-size: clamp(10px, 16 / 1366 * 100vw, 20px);
    line-height: 1.8em;
    letter-spacing: 0.02em;
  }
}
.m-panel-list p.panel-note {
  font-weight: 400;
  font-size: clamp(10px, 10 / 1366 * 100vw, 100px);
  line-height: 1.4em;
  letter-spacing: 0.02em;
  color: var(--color-sub-txt-v02);
  margin-top: 1em;
}

/*============================================== NEWS ==============================================*/
.m-news-card {
  position: relative;
  margin-bottom: calc(10 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-news-card {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) {
  .m-news-card.newcar a:hover {
    background: var(--color-pink);
  }
}
.m-news-card.newcar a .category-txt {
  color: var(--color-pink);
}
@media screen and (min-width: 768px) {
  .m-news-card.event a:hover {
    background: var(--color-03);
  }
}
.m-news-card.event a .category-txt {
  color: var(--color-03);
}
.m-news-card a {
  display: block;
  background: #fff;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  border-radius: calc(10 / 750 * 100vw);
  padding: calc(35 / 750 * 100vw) calc(25 / 750 * 100vw);
  -moz-column-gap: 5%;
       column-gap: 5%;
}
@media screen and (min-width: 768px) {
  .m-news-card a {
    border-radius: 5px;
    padding: calc(35 / 1366 * 100vw) calc(35 / 1366 * 100vw) calc(35 / 1366 * 100vw) 35px;
    transition: all 0.3s;
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .m-news-card a:hover {
    background: var(--color-light-green);
    color: #fff;
  }
  .m-news-card a:hover span.m-btm-square .arrow svg:nth-of-type(1) {
    transform: translate(120%, 0);
  }
  .m-news-card a:hover span.m-btm-square .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  .m-news-card a:hover time {
    color: #fff;
  }
  .m-news-card a:hover .news-img img {
    transform: scale(1.06);
  }
  .m-news-card a:hover .category-txt {
    color: #fff;
  }
}
@media screen and (min-width: 1000px) {
  .m-news-card a {
    padding: calc(35 / 1366 * 100vw) calc(35 / 1366 * 100vw) calc(35 / 1366 * 100vw) 56px;
  }
}
.m-news-card .news-img {
  overflow: hidden;
  isolation: isolate;
  width: 48%;
  border-radius: calc(5 / 750 * 100vw);
  margin: 0 0 auto 0;
}
@media screen and (min-width: 768px) {
  .m-news-card .news-img {
    width: 21.6%;
    border-radius: 5px;
  }
}
.m-news-card .news-img img {
  transition: all 0.3s;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 321/220;
}
@media screen and (min-width: 768px) {
  .m-news-card .news-img img {
    aspect-ratio: 204/140;
  }
}
.m-news-card .news-txt-wrap {
  width: 48%;
  min-height: calc(218 / 750 * 100vw);
  flex: 1;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .m-news-card .news-txt-wrap {
    flex: none;
    width: 64%;
    min-height: auto;
  }
}
@media screen and (min-width: 768px) {
  .m-news-card .news-txt-inner {
    min-height: calc(15vw - 50px);
  }
}
@media screen and (min-width: 1000px) {
  .m-news-card .news-txt-inner {
    min-height: calc(11vw - 40px);
  }
}
@media screen and (min-width: 1280px) {
  .m-news-card .news-txt-inner {
    min-height: calc(11vw - 50px);
  }
}
.m-news-card .news-title {
  font-weight: 500;
  line-height: 1.4em;
  font-size: calc(26 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-news-card .news-title {
    font-size: clamp(14px, 18 / 1366 * 100vw, 1000px);
  }
}
.m-news-card time {
  display: block;
  font-family: var(--font-manrope);
  font-weight: 500;
  line-height: 1.2em;
  color: var(--color-sub-txt);
  margin-top: 0.6em;
  margin-bottom: 0.8em;
  transition: all 0.3s;
  font-size: calc(20 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-news-card time {
    font-size: clamp(0px, 12 / 1366 * 100vw, 1000px);
  }
}
.m-news-card .category-txt {
  line-height: 1.2em;
  color: var(--color-light-green);
  transition: all 0.3s;
  font-size: calc(20 / 750 * 100vw);
  width: 50%;
  margin-top: auto;
}
@media screen and (min-width: 768px) {
  .m-news-card .category-txt {
    width: 100%;
    margin-top: 1em;
    font-size: clamp(0px, 12 / 1366 * 100vw, 1000px);
  }
}
.m-news-card .category-txt span {
  border: solid 1px;
  display: inline-block;
  padding: 0.2em 1.2em;
  border-radius: 50em;
}
.m-news-card .m-btm-square {
  position: absolute;
  bottom: calc(20 / 750 * 100vw);
  right: calc(20 / 750 * 100vw);
  width: calc(52 / 750 * 100vw);
  height: calc(52 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  .m-news-card .m-btm-square {
    position: relative;
    right: 0;
    bottom: 0;
    width: clamp(0px, 40 / 1366 * 100vw, 1000px);
    height: clamp(0px, 40 / 1366 * 100vw, 1000px);
  }
}

/*============================================== メディアリンク ==============================================*/
a.m-media-cta {
  background: #fff;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: calc(15 / 750 * 100vw);
  border-radius: calc(10 / 750 * 100vw);
  margin-bottom: calc(8 / 750 * 100vw);
}
@media screen and (min-width: 768px) {
  a.m-media-cta {
    border-radius: 5px;
    padding: 10px;
    transition: all 0.3s;
    margin-bottom: 8px;
  }
  a.m-media-cta:hover {
    background-color: var(--color-light-green);
  }
  a.m-media-cta:hover.red {
    background-color: var(--color-used);
  }
  a.m-media-cta:hover.red div.media-cta-txt-wrap p.small-txt {
    color: #fff;
  }
  a.m-media-cta:hover.online {
    background-color: #0AC791;
  }
  a.m-media-cta:hover.online div.media-cta-txt-wrap p.small-txt {
    color: #fff;
  }
  a.m-media-cta:hover.line {
    background-color: #46B41E;
  }
  a.m-media-cta:hover.line div.media-cta-txt-wrap p.small-txt {
    color: #fff;
  }
  a.m-media-cta:hover div.media-cta-txt-wrap {
    color: #fff;
  }
  a.m-media-cta:hover div.media-cta-txt-wrap .green {
    color: #fff;
  }
  a.m-media-cta:hover div.media-cta-txt-wrap p.small-txt {
    color: #fff;
  }
  a.m-media-cta:hover div.media-cta-img img {
    transform: scale(1.06);
  }
  a.m-media-cta:hover .m-btm-square {
    background: #fff;
  }
  a.m-media-cta:hover .m-btm-square .arrow svg:nth-of-type(1) {
    transform: translate(120%, 0);
  }
  a.m-media-cta:hover .m-btm-square .arrow svg:nth-of-type(2) {
    transform: translate(0, 0);
  }
  a.m-media-cta:hover .m-btm-square path {
    stroke: #000;
  }
}
a.m-media-cta.red div.media-cta-txt-wrap p.small-txt {
  color: var(--color-used);
}
a.m-media-cta.online div.media-cta-txt-wrap p.small-txt {
  color: #0AC791;
}
a.m-media-cta.line div.media-cta-txt-wrap p.small-txt {
  color: #46B41E;
}
a.m-media-cta div.media-cta-img {
  width: 42%;
  border-radius: calc(5 / 750 * 100vw);
  overflow: hidden;
  isolation: isolate;
}
@media screen and (min-width: 768px) {
  a.m-media-cta div.media-cta-img {
    border-radius: 5px;
    width: 30%;
  }
}
a.m-media-cta div.media-cta-img img {
  transition: all 0.3s;
}
a.m-media-cta div.media-cta-txt-wrap {
  text-align: left;
  font-weight: bold;
  display: flex;
  flex-direction: column;
  justify-content: center;
  transition: all 0.3s;
  width: 52%;
  margin: 0;
  font-size: calc(30 / 750 * 100vw);
  line-height: 1.42em;
  margin-bottom: 0.4em;
}
@media screen and (min-width: 768px) {
  a.m-media-cta div.media-cta-txt-wrap {
    width: 56%;
    font-size: clamp(10px, 30 / 1366 * 100vw, 1000px);
    margin-bottom: 0.4em;
  }
}
a.m-media-cta div.media-cta-txt-wrap span, a.m-media-cta div.media-cta-txt-wrap p {
  transition: all 0.3s;
}
a.m-media-cta div.media-cta-txt-wrap .green {
  color: var(--color-green);
}
a.m-media-cta div.media-cta-txt-wrap p.small-txt {
  color: var(--color-green);
  line-height: 1.4em;
  font-size: calc(22 / 750 * 100vw);
  font-weight: 500;
  margin: 0.2em 0 0;
}
@media screen and (min-width: 768px) {
  a.m-media-cta div.media-cta-txt-wrap p.small-txt {
    margin: 0.2em 0;
    font-size: clamp(10px, 16 / 1366 * 100vw, 1000px);
  }
}
a.m-media-cta span.m-btm-square {
  display: none;
  margin: auto 0 0;
}
@media screen and (min-width: 768px) {
  a.m-media-cta span.m-btm-square {
    display: flex;
  }
}/*# sourceMappingURL=common.css.map */