@charset "utf-8";
/*
Theme Name: RotaryMain
Description: 
Author: Sonicgrow×COSMICGEAR
Version: 1.0
*/
/*-root*/ :root {
  --fnt-base: 'Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  --fnt-zen: 'Zen Kaku Gothic New', 'Noto Sans JP', sans-serif;
  --fnt-rbt: 'Roboto', 'Noto Sans JP', sans-serif;
  --fnt-din: 'din-2014', var(--fnt-rbt);
  --head2: clamp(1.5rem, 0.955rem + 2.73vw, 3rem); /*24-48*/
  --head3: clamp(1.25rem, 0.977rem + 1.36vw, 2rem); /*20-32*/
  --fc-base: #333333;
  --clr-wblue: #019FCB;
  --clr-emgrn: #1CC18E;
  --bdr-gry: #D9D9D9;
  --bdr-l-gry: #B5B5B5;
  --bdr-table: #E6E6E6;
  --wall-gry: #F5F5F5;
  --easing: cubic-bezier(0.45, 0.05, 0.55, 0.95);
  --transit: .3s var(--easing);
}
/*base=====*/
body {
  font-family: var(--fnt-base);
  font-size: min(3.6vw, 15px);
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  color: var(--fc-base);
  overflow-wrap: anywhere;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  transition: opacity var(--transit);
  opacity: 1;
  line-height: 1;
}
body.wf-active, body.is-load {
  opacity: 1;
}
.fl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.fl.jc_c {
  justify-content: center;
}
.fl_c {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.fl_c.ai_c {
  -ms-align-items: center;
  align-items: center;
}
.fnt-zen {
  font-family: var(--fnt-zen);
}
.fnt-rbt {
  font-family: var(--fnt-rbt);
}
.fnt-din {
  font-family: var(--fnt-din);
}
figure {
  margin-bottom: 0 !important;
}
.in-text {
  line-height: calc(25/15);
}
.pos-pic {
  position: absolute;
}
/*container
========================================================*/
#container {
  width: 100%;
  min-height: 100dvh;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  overflow-x: hidden;
}
#container > * {
  width: 100%;
}
a.cvr {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
a.udl{
  text-decoration: underline;
  color: var(--clr-main);
  text-underline-offset: 2px;
}
/*hum
=====================================*/
#hum-btn {
  position: fixed;
  top: 10px;
  right: 10px;
  width: min(60px, 12vw);
  aspect-ratio: 1/1;
  background: var(--clr-main);
  display: none;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  z-index: 100;
  cursor: pointer;
  border-radius: 10px;
  transition:all var(--transit);
}
#hum-btn button {
  width: 60%;
  height: 3px;
  background: #fff;
  border-radius: 2px;
  position: relative;
  -webkit-transition: background var(--transit);
  -o-transition: background var(--transit);
  transition: background var(--transit);
}
#hum-btn button::before, #hum-btn button::after {
  content: "";
  width: 100%;
  height: 3px;
  border-radius: 2px;
  position: absolute;
  left: 0;
  background: #fff;
  -webkit-transition: transform var(--transit);
  -o-transition: transform var(--transit);
  transition: transform var(--transit);
  transform-origin: center;
}
#hum-btn button::before {
  top: -9px;
}
#hum-btn button::after {
  bottom: -9px;
}
/*open*/
#hum-btn.open{
  top: 0;
  right: 0;
  border-radius: 0;
}
#hum-btn.open button {
  background: none;
}
#hum-btn.open button::before, #hum-btn.open button::after {
  top: calc(50% - 2px);
}
#hum-btn.open button::before {
  transform: rotate(-45deg);
}
#hum-btn.open button::after {
  transform: rotate(45deg);
}

/*l nav*/
#l-nav {
  position: fixed;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  background-color: var(--wall-gry);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 99;
  visibility: hidden;
  overflow-y: scroll;
  opacity: 0;
  -webkit-transition: all var(--transit);
  -o-transition: all var(--transit);
  transition: all var(--transit);
}
#l-nav.is-view {
  opacity: 1;
  visibility: visible;
}
.l-nav_inner {
  width: 100%;
  min-height: 100%;
  padding: min(100px, 20vw) min(30px,5vw) min(100px, 20vw);
  display: grid;
  grid-template-columns: min(600px,100%);
  justify-content: center;
  align-content: flex-start;
  -ms-align-items: center;
  align-items: center;
  gap:min(40px,5.13vw);
  
}
.l-nav_menu > li{
  font-size: min(17px,3.7vw);
  border-bottom: 2px solid var(--bdr-gry);
  padding: .95em; 
}
.l-nav_menu a{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  padding-right: 2em;
}
.l-nav_menu a .arw{
  position: absolute;
  right: 0;
  top: 50%;
  translate:0 -50%;
  width: min(14px,3vw);
  fill:var(--clr-main);
}
.l-nav_menu > li > a {
  gap:.5em;
  -ms-align-items: flex-end;
  align-items: flex-end;
  padding-top: .25em;
  padding-bottom: .25em;
}
.l-nav_menu > li > a .ja{
  font-size: 1.125em;
  font-weight: 700;
}
.l-nav_menu > li > a .en{
  color: var(--clr-main);
  font-size: min(14px,3vw);
}
.nav-menu_child{
  margin-top: 1em;
  display: grid;
  grid-template-columns: 1fr;
  gap:1em;
  padding-left: .85em;
}
.l-nav_button{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  gap:min(30px,5vw);
}
.l-nav_button .round-button{
  width: min(320px,100%);
}
.l-nav_button .round-button a{
  height: min(55px,12vw);
}
.l-nav_other{
  display: grid;
  grid-template-columns: 1fr;
  gap:1em;
  color: #6B6B6B;
}
/*header
=====================================*/
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background-color: #fff;
}
.head-inner {
  width: min(1360px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding: min(20px, 2.5vw) min(40px, 4vw);
  min-height: 80px;
  -ms-align-items: center;
  align-items: center;
  justify-content: space-between;
}
.head-logo.text {
  display: grid;
  grid-template-columns: min(120px, 15vw) auto;
  align-items: center;
  letter-spacing: .05em;
  gap: 5px;
}
.head-logo.img {
  display: block;
  height: min(60px, 10vw);
  width: auto;
  max-width: 50vw;
}
.head-logo.img img {
  object-fit: contain;
  height: 100%;
  object-position: left center;
}
.head-logo .site-title {
  white-space: nowrap;
  line-height: calc(18/14);
}
.head-logo .site-title .main {
  font-weight: 700;
  font-size: min(20px, 3.8vw);
}
.head-logo .site-title .en {
  font-size: min(12px, 2.5vw);
}
.head-nav {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-end;
  align-items: flex-end;
  gap: min(25px, 5vw);
}
.head-inquiry {
  gap: min(20px, 5vw);
}
.head-inquiry a {
  border-radius: 100vmax;
  border: 1px solid var(--clr-main);
  padding: 5px 1.5em;
  font-weight: 500;
}
.head-inquiry a.nav-inquiry {
  color: var(--clr-main);
}
.head-inquiry a.nav-member {
  color: #fff;
  background: var(--clr-main);
}
.g-nav {
  gap: 10px min(50px, 5vw);
}
.g-nav a {
  font-size: min(15px, 3.6vw);
  font-weight: 500;
  color: #5E717D;
}
/*main
=====================================*/
main {
  flex: 1;
}
.index-wrapper {
  padding-bottom: min(150px, 20vw);
}
.inner {
  width: min(1200px, 100%);
  margin-left: auto;
  margin-right: auto;
  padding-left: min(50px, 5vw);
  padding-right: min(50px, 5vw);
}
/*title setting*/
.sec-title {
  font-weight: 700;
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: min(10px, 3vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
}
.sec-title:has(.arw-link-btn) {
  display: grid;
  grid-template-columns: auto max-content;
  grid-template-rows: auto;
  grid-column-gap: min(15px, 5vw);
  grid-row-gap: min(10px, 3vw);
}
.sec-title .fkds {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.sec-title .fkds p {
  font-size: min(12px, 3.4vw);
  border: 2px solid currentColor;
  padding: .5em 1.5em;
  border-radius: 0 100vmax 100vmax;
  letter-spacing: .1em;
}
.sec-title .main {
  font-size: var(--head2);
  line-height: calc(64/48);
}
.sec-title:has(.arw-link-btn) .fkds {
  grid-area: 1 / 1 / 2 / 2;
}
.sec-title:has(.arw-link-btn) .main {
  grid-area: 2 / 1 / 3 / 2;
}
.sec-title:has(.arw-link-btn) .arw-link-btn {
  grid-area: 1 / 2 / 3 / 3;
}
/*button setting*/
.btn-wrap {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}
.btn-wrap.cnt {
  -ms-align-items: center;
  align-items: center;
}
.arw-link-btn {
  font-size: min(15px, 3.6vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  gap: 10px;
  font-weight: 500;
}
.arw-link-btn.jc_fe {
  justify-content: flex-end;
}
.arw-link-btn .arw {
  width: min(4em, 10vw);
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  place-items: center;
  border-radius: 100vmax;
  background: var(--clr-sub);
}
.arw-link-btn .arw.min {
  width: 2.5em;
}
.arw-link-btn .arw svg {
  width: 30%;
  --arw-clr: var(--clr-base);
  fill: var(--arw-clr);
  transition: translate var(--transit);
  translate: 0 0;
}
.arw-link-btn .arw.wht {
  background: #fff;
}
.round-button {
  width: min(210px, 100%);
}
.round-button.min {
  width: min(165px, 100%);
}
.round-button a {
  width: 100%;
  height: min(40px, 12vw);
  border-radius: 100vmax;
  background-color: var(--clr-main);
  color: #fff;
  font-weight: 500;
  padding-left: 1.5em;
  padding-right: 1.5em;
  display: grid;
  place-content: center;
}
.round-button.l-wht a{
  background-color: #fff;
  border: 1px solid var(--clr-main);
  color: var(--clr-main);
}
.round-button.min a{
  height: min(40px, 10vw);
} 
.readmore-button {
}
.readmore-button a {
  width: 100%;
  height: min(24px, 10vw);
  background: var(--fc-base);
  color: #fff;
  font-weight: 600;
  border-radius: 100vmax;
  font-size: min(12px,3.2vw);
  padding: 5px min(20px, 3.5vw) 6px;
}
@media(hover) {
  .arw-link-btn:hover .arw svg {
    translate: 20% 0;
  }
}
/*#hero
============================*/
.hero-main {
  /*  aspect-ratio:1/.54;*/
  height: 620px;
}
.hero_wall {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  translate: -50% 0;
}
.img-hero_main {
  object-fit: cover;
  height: 100%;
  object-position: center;
}
.hero_inner {
  width: min(1360px, 100%);
  padding-left: min(50px, 4vw);
  padding-right: min(50px, 4vw);
  margin-left: auto;
  margin-right: auto;
  display: grid;
  -ms-align-items: center;
  align-items: center;
  height: 100%;
}
.hero-title {
  color: #fff;
  font-weight: 700;
  gap: 10px;
  text-shadow: 4px 4px 26px rgba(0, 0, 0, .25);
}
.hero-title .sub {
  font-size: min(22px, calc(100vw/20));
}
.hero-title .main {
  font-weight: 900;
  font-size: min(70px, calc(100vw/11));
  line-height: calc(90/70);
}
.hero-title .main span::before, .hero-title .main span::after {
  content: "";
  font-weight: 400;
}
.hero-title .main span::before {
  content: "｢";
}
.hero-title .main span::after {
  content: "｣";
}
/*reikai 案内*/
.hero-next-event {
  position: absolute;
  right: 0;
  bottom: 0;
  background: var(--clr-main);
  color: #fff;
  padding: min(25px, 5vw) 10px min(20px, 3vw) min(35px, 5vw);
  clip-path: inset(0 0 round 50px 0 0 0);
}
.hero-next-event .in-title {
  gap: min(70px, 10vw);
  -ms-align-items: center;
  align-items: center;
}
.hero-next-event .in-title h2 {
  font-size: var(--head2);
  font-weight: 700;
}
.hero-next-event .event-date {
  margin-top: min(20px, 4vw);
  font-size: min(32px, 6vw);
  font-weight: 500;
}
.hero-next-event .event-date .date {
  gap: 5px;
}
.hero-next-event .event-date .date span {
  font-weight: 700;
  font-size: 1.5em;
}
.hero-next-event .event-date:has(.soon) {
  font-size: min(16px, 3.8vw);
}
/*index contents
============================*/
.reikai-archive-area {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(40px, 5vw);
}
/*イベント紹介*/
.index-event-info {
  display: grid;
  grid-template-columns: min(50%, calc(1100px/2)) 50vw;
  gap: min(50px, 4vw);
  -ms-align-items: flex-start;
  align-items: flex-start;
  padding-left: max(calc((100vw - 1200px)/2), 5vw);
  margin-top: min(100px, 15vw);
  padding-bottom: min(100px, 15vw);
}
.acv_reikai-item {
  border-top: 1px solid var(--bdr-gry);
  padding-top: min(22px, 5vw);
  padding-bottom: min(22px, 5vw);
  line-height: calc(25/15);
}
.acv_reikai-item .acv_head {
  font-weight: 700;
}
.acv_reikai-item .acv_head .date-time {
  gap: 1em;
}
.acv_reikai-item .venue {
  padding-top: 10px;
}
.acv_reikai-item .venue .in-text a{
  text-decoration: underline;
  color: var(--clr-main);
  text-underline-offset: 2px;
}
.acv_reikai-item .venue strong {
  font-weight: 600;
}
.acv-reikai-list.grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(60px, 5vw) min(70px, 4vw);
}
.acv-reikai-list.grid .acv_reikai-item .acv_head{
  padding-bottom: min(15px, 3vw);
}
.acv-reikai-list.grid .acv_reikai-item .venue{
  padding-top: min(15px, 3vw);
  border-top: 1px dashed var(--bdr-table);
}
/*イベントpickup*/
.event-pickup-area {
  padding: min(80px, 8vw) 0 min(80px, 8vw) min(60px, 8vw);
}
.event-pickup-area::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50px 0 0 50px;
  background: var(--wall-main);
}
.pic-slide-wrap {
  margin-top: min(30px, 8vw);
}
#pickup-slider {
  /*  width: 50vw;*/
  width: 100%;
  overflow: hidden;
}
#pickup-slider .picup-slide-item {
  width: min(245px, calc(50vw/3.5));
}
.picup-slide-item .thumb {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  isolation: isolate;
  border-radius: 5px;
}
.picup-slide-item .thumb img {
  object-fit: cover;
  height: 100%;
}
.picup-slide-item .data {
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 3px .5em;
  font-weight: 500;
  margin-top: min(15px, 4vw);
  line-height: calc(20/14);
  font-size: min(13px, 3.4vw);
}
.pickup-navgation {
  width: 80px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  -ms-align-items: center;
  align-items: center;
  place-content: center;
  gap: 10px;
  background: #333;
  border-radius: 100vmax;
  margin-top: min(50px, 8vw);
}
.pickup-navgation button {
  display: grid;
  height: 30px;
  align-items: center;
}
.pick-button-prev {
  scale: -1 -1;
  -ms-align-items: center;
}
.pickup-navgation button svg {
  fill: #fff;
  width: 12px;
}
/*about*/
.index-about-blc {
  margin-top: min(100px, 10vw);
}
.index-about-blc::before {
  content: "";
  width: 100vw;
  height: min(100px, 10vw);
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -100%;
  background: var(--wall-main);
}
.index-about__thumb {
  position: absolute;
  right: 50%;
  top: 0;
  width: 50vw;
  height: 100%;
  overflow: hidden;
  isolation: isolate;
  border-radius: 0 0 0 min(150px, 15vw);
}
.index-about__thumb img {
  object-fit: cover;
  height: 100%;
  object-position: right center;
}
.index-about__detail {
  margin-left: auto;
  width: 50%;
  padding-top: min(50px, 10vw);
  padding-left: min(60px, 5vw);
  padding-bottom: min(50px, 10vw);
}
.index-about__detail::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--wall-main);
}
.index-about__detail .comment {
  margin-top: min(40px, 5vw);
}
.index-about__detail .arw-link-btn {
  margin-top: min(50px, 8vw);
}
/*news*/
.sec-news-blc {
  margin-top: min(120px, 15vw);
}
.sec-news-box {
  margin-top: min(30px, 10vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  gap: min(40px, 5vw);
}
.tab-list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: min(27px, 5vw);
}
.tab-list li {
  cursor: pointer;
}
.tab-list li p {
  background: var(--wall-gry);
  font-weight: 500;
  padding: .755em 1.5em;
  border-radius: 100vmax;
}
.tab-list li.active p {
  background: var(--clr-main);
  color: #fff;
}
.tab-container {
  width: 100%;
}
.tab-panel {
  display: none;
}
.tab-panel.active {
  display: block;
}
.acv-info-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: auto;
  gap: min(60px, 8vw) min(40px, 4vw);
}
.acv_post-item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 15px;
}
.acv_post-item.stick .thumb::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  background: url("images/icon/icn_pin.svg") no-repeat top right/100%;
  width: min(45px, 15vw);
  aspect-ratio: 1/1;
  z-index: 1;
  pointer-events: none;
}
.acv_post-item .thumb {
  width: 100%;
}
.acv_post-item .thumb .tag {
  position: absolute;
  top: 10px;
  left: 10px;
  background: var(--clr-sub);
  font-weight: 700;
  border-radius: 100vmax;
  height: min(30px, 8vw);
  display: grid;
  place-content: center;
  place-items: center;
  font-size: 10px;
  width: 6em;
  z-index: 1;
  pointer-events: none;
}
.acv_post-item .thumb figure {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.acv_post-item .thumb img {
  object-fit: cover;
  height: 100%;
  object-position: center;
}
.acv_post-item .acv_title {
  font-weight: 700;
  line-height: calc(20/15);
}
.acv_post-item .post-data {
  font-weight: 500;
}
.acv_post-item .post-data .category {
  padding-left: .85em;
}
.acv_post-item .post-data .category::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  border-radius: 100vw;
  width: 5px;
  aspect-ratio: 1/1;
  background: var(--clr-sub);
  translate: 0 -50%;
}
.acv_post-item .post-data > * + * {
  margin-top: 10px;
}
/*message
============================*/
.index-message-blc {
  margin-top: min(120px, 15vw);
}
.index-message-box {
  padding-top: min(100px, 10vw);
  padding-bottom: min(100px, 10vw);
  display: grid;
  grid-template-columns: 50% auto;
  grid-template-rows: auto auto;
  gap: min(40px, 4vw) min(100px, 5vw);
}
.index-message-box::before {
  content: "";
  background: var(--wall-sub);
  width: 100vw;
  height: 100%;
  border-radius: 0 min(150px, 15vw) 0 0;
  position: absolute;
  right: min(15px, 2vw);
  top: 0;
}
.index-message-box .detail {
  grid-area: 1 / 1 / 2 / 2;
}
.index-message-box .detail .comment {
  margin-top: min(15px, 3vw);
}
.index-message-box .detail .comment .in-text {
  width: min(32em, 100%);
}
.index-message-box .detail .comment .readmore {
  margin-top: min(20px, 3vw);
  display: flex;
  justify-content: flex-end;
  width: min(32em, 100%);
}
.index-message-box .detail .comment .readmore a {
  background: var(--fc-base);
  color: #fff;
  padding: 5px min(20px, 3.5vw) 6px;
  font-weight: 700;
  border-radius: 100vmax;
}
.index-message-box .thumb {
  grid-area: 1 / 2 / 2 / 3;
}
.index-message-box .thumb figure {
  width: min(245px, 100%);
}
.index-message-box .thumb .data {
  margin-top: min(10px, 3vw);
  font-weight: 500;
  line-height: calc(25/15);
}
.message-link-list {
  grid-area: 2 / 1 / 3 / 3;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.message-link-list li {
  overflow: hidden;
  display: grid;
  grid-template-columns: 40% auto;
  padding: min(20px, 5vw) min(20px, 4vw);
  gap: min(20px, 3vw);
}
.message-link-list li .pic-area img {
  scale: 1.125;
}
.message-link-list li .comment {
  padding-top: 1em;
  padding-bottom: 1em;
}
.message-link-list li .comment .in-title {
  font-weight: 700;
}
.message-link-list li .comment .in-text {
  margin-top: 1.5em;
}
.message-link-list li .comment .arrow {
  width: min(40px, 10vw);
  display: grid;
  grid-template-columns: 30%;
  place-content: center;
  background: #fff;
  aspect-ratio: 1/1;
  border-radius: 100vmax;
  position: absolute;
  bottom: -5px;
  right: 0;
  transition: translate var(--transit);
}
.message-link-list li.link-greeting {
  background: #fff;
  border-radius: 20px 0 0 20px;
}
.message-link-list li.link-greeting .comment .arrow {
  background: var(--clr-sub);
}
.message-link-list li.link-regist {
  background: var(--clr-sub);
  border-radius: 0 20px 20px 0;
}
@media(hover) {
  .message-link-list li:hover .arrow {
    translate: 5px 0;
  }
}
/*Activity
============================*/
.index-activity-blc {
  display: grid;
  grid-template-columns: min(270px, 30%) auto;
  padding-top: min(120px, 10vw);
  padding-bottom: min(120px, 10vw);
  gap: min(40px, 5vw);
}
.index-activity-intro .comment {
  margin-top: min(40px, 8vw);
}
.arrow-title {
  display: grid;
  grid-template-columns: min(40px, 15vw) auto;
  -ms-align-items: center;
  align-items: center;
  gap: 10px;
}
.arrow-title .arrow {
  display: grid;
  grid-template-columns: 30%;
  place-content: center;
  aspect-ratio: 1 / 1;
  border-radius: 100vmax;
  background: var(--clr-sub);
}
.arrow-title .arrow svg {
  transition: translate var(--transit);
}
.arrow-title .title {
  font-size: var(--head3);
  font-weight: 700;
}
.activity-detail-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(20px, 5vw);
}
.activity-detail-list li {
  display: grid;
  grid-template-columns: auto min(240px, calc(100%/3));
  background: var(--wall-sub);
  border-radius: min(40px, 10vw);
  padding: min(45px, 8vw) min(30px, 4vw) min(45px, 8vw) min(80px, 4vw);
  gap: min(32px, 5vw);
}
.activity-detail-list li .summary-area {
  display: flex;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: min(20px, 3vw);
}
.activity-detail-list li .summary-area .tag {
  font-weight: 700;
  background: var(--clr-main);
  border-radius: 100vmax;
  font-size: 10px;
  width: 4em;
  padding: 5px 10px;
  color: #fff;
  font-family: sans-serif;
}
.activity-detail-list li .thumb-area {
  overflow: hidden;
  isolation: isolate;
  border-radius: 10px;
}
.activity-detail-list li .thumb-area img {
  object-fit: cover;
  height: 100%;
}
@media(hover) {
  .activity-detail-list li:hover .arrow-title .arrow svg {
    translate: 25% 0;
  }
}
/*inquiry
============================*/
.sec-inquiry-blc {
  padding-top: min(90px, 10vw);
  padding-bottom: min(90px, 10vw);
  background: var(--wall-sub);
}
.sec-inquiry-box {
  padding-top: min(120px, 15vw);
  padding-bottom: min(65px, 6vw);
  display: grid;
  grid-template-columns: min(400px, calc(50% - min(30px, 5vw))) 50%;
  gap: min(30px, 5vw);
  justify-content: flex-end;
  -ms-align-items: flex-start;
  align-items: flex-start;
}
.sec-inquiry-box::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  left: min(15px, 2vw);
  top: 0;
  background: var(--clr-sub);
  border-radius: min(150px, 15vw) 0 0 min(150px, 15vw);
}
.inquiry-summary-area > * + * {
  margin-top: min(18px, 3vw);
}
.inquiry-summary-area .club-name {
  font-weight: 700;
}
.inquiry-summary-area .in-text {
  margin-top: 10px;
  font-weight: 500;
}
.inquiry-summary-area .in-text .map-link {
  font-size: min(12px, 3.2vw);
  text-decoration: underline;
  margin-left: .5em;
}
.inquiry-summary-area .dial-list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
  margin-top: min(30px, 5vw);
  gap: min(16px, 3vw);
}
.dial-list li {
  display: grid;
  grid-template-columns: 2.5em auto;
  gap: 6px;
  -ms-align-items: center;
  align-items: center;
  border-radius: 30px;
  background: #fff;
  height: 66px;
  padding: 5px min(25px, 4vw);
}
.dial-list li .icon {
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  grid-template-columns: 75%;
}
.dial-list li .icon svg {
  fill: var(--fc-base);
}
.dial-list li .dial {
  font-weight: 700;
  word-break: keep-all;
  font-size: min(32px, calc(100vw/15));
}
.inquiry-makeup-area {
  border-radius: 40px;
  background: #fff;
  padding: min(80px, 15vw) min(45px, 4vw) min(30px, 4vw);
}
.inquiry-makeup-area .pic-hum {
  width: min(233px, 50%);
  top: 0;
  right: min(45px, 4vw);
  translate: 0 -42%;
}
.inquiry-makeup-area .in-title {
  font-weight: 700;
}
.inquiry-makeup-area .in-text {
  margin-top: 1.5em;
}
.inquiry-makeup-area .btn-wrap {
  margin-top: min(35px, 5vw);
}
.inquiry-btn {
  display: grid;
  grid-template-columns: min(30px, 10vw) auto;
  width: min(390px, 100%);
  height: 76px;
  -ms-align-items: center;
  align-items: center;
  place-content: center;
  gap: min(12px, 3vw);
  background: var(--clr-sub);
  border-radius: min(30px, 10vw);
  font-weight: 700;
}
.inquiry-btn.mid {
  width: min(350px, 100%);
}
.inquiry-btn svg {
  fill: var(--fc-base);
}
.back-button{
  width: min(196px,100%);
}
.back-button a{
  width: 100%;
  height: min(76px,15vw);
  display: grid;
  place-content:center;
  background: var(--clr-sub);
    border-radius: min(30px, 6vw);
    font-weight: 700;
}
/*footer
=====================================*/
footer {}
.footer_inner {
  padding-top: min(120px, 10vw);
  padding-bottom: min(80px, 8vw);
  display: grid;
  grid-template-columns: 1fr 1fr;
  color: #fff;
  -ms-align-items: flex-end;
  align-items: flex-end;
}
.footer_inner::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  right: min(15px, 2vw);
  background: var(--clr-main);
  border-radius: 0 min(150px, 15vw) 0 0;
}
.foot-nav > li.top-nav a {
  font-weight: 700;
}
.foot-nav > li:not(.top-nav) > a
,.foot-nav > li:not(.top-nav) > p
, .foot-nav_child > li > a{
  font-weight: 700;
}
.foot-nav > li.contents-nav {
  margin-top: min(24px, 5vw);
}
.foot-nav > li.relation-nav {
  margin-top: min(100px, 15vw);
}
.foot-nav_child {
  display: grid;
  grid-template-columns: repeat(4, auto);
  justify-content: space-between;
  gap: min(15px, 3vw);
}
.foot-nav .link-area {
  display: grid;
  grid-template-columns: 1fr;
  gap: min(18px, 4vw);
  margin-top: min(18px, 4vw);
  font-size: min(12px, 3.4vw);
}
/*foot about*/
.foot-about-area .in-title {
  display: grid;
  grid-template-columns: min(180px, 25%) auto;
  align-items: center;
  gap: 10px;
  line-height: calc(20/14);
}
.foot-about-area .site-title .main {
  font-weight: 700;
  font-size: min(24px, 4vw);
}
.foot-about-area .site-title .en {
  font-size: min(13px, 3.4vw);
}
.foot-about-address {
  font-weight: 500;
  margin-top: min(20px, 5vw);
}
.foot-about-address > * + * {
  margin-top: 10px;
}
.foot-about-address .map-link {
  font-size: min(12px, 3.2vw);
  text-decoration: underline;
  margin-left: .5em;
}
footer p.copy {
  font-size: min(10px, 3vw);
  font-weight: 500;
  margin-top: min(50px, 15vw);
}