:root{
  --breackpoint-sm: 560px;
  --breackpoint-md: 768px;
  --breackpoint-lg: 1024px;
  --breackpoint-xl: 1366px;
  --inner-base: 1024px;
  --font-family-body: "Zen Old Mincho", serif;
  --font-family-noto: "Noto Serif JP", serif;
  --font-family-latin: "Playfair Display", serif;
  --font-family-kure: "Zen Kurenaido", sans-serif;
  --font-family-cursive: "Authenia";
  --font-size-body: 16px;
  --line-height-body: 2.25;
  --color-text-body: #414141;
  --color-black: #000;
  --color-primary: #f2897c;
  --color-sumi: #414141;
  --color-gold: #bdac80;
  --color-dark-gold: #ae9743;
  --color-pink: #f2897c;
  --color-pale-blue: #c75040;
  --color-dark-blue: #1E5CE3;
  --color-red: #ed3e3e;
  --color-sumi-rgb: 65 65 65;
  --color-gold-rgb: 191 172 104;
  --color-dark-gold-rgb: 174 151 67;
  --color-pink-rgb: 242 137 124;
  --gutter: 20px;
  --header-height: 60px
}
@media(min-width: 768px){
  :root{
  --font-size-body: 18px;
  --line-height-body: 2
}
}
@media(min-width: 1024px){
  :root{
  --header-height: 100px
}
}
*,*::before,*::after{
  box-sizing:border-box
}
html{
  font-size:.625em;
  -moz-text-size-adjust:none;
  -webkit-text-size-adjust:none;
  text-size-adjust:none
}
body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul,ol{
  margin:0
}
ul,ol{
  padding:0;
  list-style:none
}
body{
  min-height:100vh
}
a{
  color:inherit;
  text-decoration:none;
  -webkit-text-decoration-skip:ink;
  text-decoration-skip-ink:auto
}
picture{
  display:block;
  max-width:100%
}
input,button,textarea,select{
  font:inherit
}
button{
  width:100%;
  background-color:inherit;
  border:none;
  border-radius:0;
  font:inherit
}
:target{
  scroll-margin-block:5ex
}
@font-face{
  font-family:Authenia;
  src:url("../font/Authenia.woff") format("woff")
}
body{
  font:var(--font-size-body)/var(--line-height-body) var(--font-family-body);
  color:var(--color-text-body)
}
*{
  outline-color:var(--color-primary)
}
input,select,option,textarea,button{
  box-sizing:border-box;
  font:var(--font-size-body)/var(--line-height-body) var(--font-family-body);
  color:var(--color-text-body)
}
img{
  height:auto;
  max-width:100%;
  vertical-align:bottom;
  image-rendering:smooth
}
svg{
  width:100%
}
:where(button,[type=button],[type=reset],[type=submit]){
  touch-action:manipulation
}
:where(:any-link,button,[type=button],[type=reset],[type=submit],label[for],select,summary,[role=tab],[role=button]){
  cursor:pointer
}
:focus:not(:focus-visible){
  outline:none
}
i:has(>svg){
  line-height:0
}
a:not([class])[href^="tel:"]{
  color:inherit
}
iframe{
  width:100%;
  height:auto
}
iframe[src^="https://www.youtube.com/embed/"]{
  aspect-ratio:16/9
}
table{
  border-collapse:collapse
}
*:has(>wbr){
  white-space:pre-wrap;
  word-break:keep-all
}
.l-footer{
  display:grid;
  height:50px;
  background-color:var(--color-sumi);
  color:#fff;
  place-content:center
}
.l-footer p{
  font-size:10px;
  letter-spacing:.06em
}
@media(min-width: 768px){
  .l-footer{
  height:60px
}
.l-footer p{
  font-size:14px
}
}
.l-header{
  position:fixed;
  top:0;
  left:0;
  z-index:99;
  width:100%;
  padding:0 var(--gutter);
  background-color:#fff
}
.l-header__inner{
  display:flex;
  align-items:center;
  height:var(--header-height);
  max-width:1280px;
  margin-inline:auto
}
.l-header__logo{
  flex:0 1 240px;
  line-height:0
}
.l-header__imgbtn{
  transition:opacity .5s
}
@media(any-hover: hover){
  .l-header__imgbtn:hover{
  opacity:.6
}
}
.l-header__imgbtn:focus-visible{
  opacity:.6
}
@media(min-width: 1024px){
  .l-header__btns{
  display:grid;
  grid-template-columns:120px 120px;
  gap:0 10px;
  margin-left:20px
}
.l-header__menu{
  padding-top:5px;
  margin-left:auto
}
.l-header__imgbtns{
  display:grid;
  position:relative;
  grid-template-columns:40px 40px;
  gap:0 10px;
  padding-top:18px;
  margin-left:20px
}
.l-header__imgbtns::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  translate:-50% 0;
  width:110px;
  aspect-ratio:252/32;
  background:url("../images/hdr-txt.webp") no-repeat center top/contain
}
.l-header__imgbtn{
  flex:0 0 50px
}
.l-header__menubtn{
  display:none
}
}
@media(min-width: 1280px){
  .l-header__imgbtns{
  grid-template-columns:50px 50px;
  padding-top:22px;
  margin-left:40px;
  background-size:125px auto
}
.l-header__imgbtns::before{
  width:125px
}
.l-header__imgbtn{
  flex:0 0 60px
}
.l-header__btns{
  grid-template-columns:150px 150px;
  gap:0 20px;
  margin-left:40px
}
}
@media(max-width: 1023.98px){
  .l-header__inner{
  justify-content:space-between
}
.l-header__btns,.l-header__menu,.l-header__imgbtn{
  display:none
}
}
.l-inner{
  margin-inline:auto;
  --section-gutter: var(--gutter)
}
.l-inner{
  width:min(100% - var(--section-gutter)*2,var(--inner-base))
}
.--nogutter:is(*.l-inner){
  --section-gutter: 0px
}
@media(min-width: 768px){
  .--nogutter-pc:is(*.l-inner){
  --section-gutter: 0px
}
}
@media(max-width: 767.98px){
  .--nogutter-mobile:is(*.l-inner){
  --section-gutter: 0px
}
}
.l-nav{
  position:fixed;
  inset:60px 0 0;
  z-index:99;
  width:100%;
  height:100svh;
  padding:40px 20px;
  background-color:#fdfdef;
  overflow:auto;
  opacity:0;
  visibility:hidden;
  transition-duration:.5s;
  transition-property:visibility,opacity;
  -ms-overflow-style:none;
  scrollbar-width:none
}
.l-nav:is(.l-wrapper.is-open *){
  opacity:1;
  visibility:visible
}
.l-nav::-webkit-scrollbar{
  display:none
}
.l-nav__request{
  padding-top:40px
}
.l-nav__request .c-hdr-btn{
  margin-inline:auto
}
.l-nav__request .c-hdr-btn+.c-hdr-btn{
  margin-top:20px
}
.l-nav__btns{
  display:flex;
  position:relative;
  justify-content:center;
  gap:0 20px;
  padding-top:30px;
  margin-top:40px
}
.l-nav__btns::before{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  translate:-48% 0;
  width:189px;
  aspect-ratio:252/32;
  background:url("../images/hdr-txt.webp") no-repeat center top/contain
}
.l-wrapper{
  position:relative;
  width:100%;
  min-height:100vh;
  padding-top:var(--header-height)
}
.l-wrapper.is-open{
  position:fixed;
  left:0
}
@media(min-width: 768px){
  .u-hide-pc{
  display:none
}
}
@media(max-width: 767.98px){
  .u-hide-mobile{
  display:none
}
}
.js-fadein,.-js-fadein{
  opacity:0;
  visibility:hidden;
  transition-duration:1.5s;
  transition-property:opacity,visibility,translate;
  transition-timing-function:cubic-bezier(0.16, 0.54, 0.46, 1);
  translate:0 30px
}
.js-fadein.is-inview,.-js-fadein.is-inview{
  opacity:1;
  visibility:visible;
  translate:0 0
}
.js-acccont{
  height:0;
  overflow:hidden
}
[class*=u-ofi]{
  width:100%;
  height:100%;
  max-width:none
}
.u-ofi-cover{
  object-fit:cover
}
.u-ofi-contain{
  object-fit:contain
}
.u-ofi-fill{
  object-fit:fill
}
.u-ofi-none{
  object-fit:none
}
.u-ofi-scale-down{
  object-fit:scale-down
}
.u-ofi-left{
  object-position:left
}
.u-ofi-right{
  object-position:right
}
.u-ofi-center{
  object-position:center
}
.u-ofi-top{
  object-position:top
}
.u-ofi-bottom{
  object-position:bottom
}
.u-ofi-center{
  object-position:center
}
.u-ofi-left-top{
  object-position:left top
}
.u-ofi-left-bottom{
  object-position:left bottom
}
.u-ofi-left-center{
  object-position:left center
}
.u-ofi-right-top{
  object-position:right top
}
.u-ofi-right-bottom{
  object-position:right bottom
}
.u-ofi-right-center{
  object-position:right center
}
.u-ofi-center-top{
  object-position:center top
}
.u-ofi-center-bottom{
  object-position:center bottom
}
.u-ofi-center-center{
  object-position:center center
}
.c-hdr-btn{
  display:grid;
  place-content:center;
  width:100%;
  height:40px;
  background-color:var(--color-pale-blue);
  font-size:13px;
  font-weight:900;
  color:#fff;
  transition:background-color .5s
}
@media(any-hover: hover){
  .c-hdr-btn:hover{
  background-color:rgb(var(--color-pale-blue)/60%)
}
}
.c-hdr-btn:focus-visible{
  background-color:rgb(var(--color-pale-blue)/60%)
}
.c-hdr-btn.--gold{
  background-color:var(--color-gold)
}
@media(any-hover: hover){
  .c-hdr-btn.--gold:hover{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
}
.c-hdr-btn.--gold:focus-visible{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
@media(min-width: 1024px){
  .c-hdr-btn{
  width:100%;
  height:50px;
  font-size:13px
}
}
@media(min-width: 1280px){
  .c-hdr-btn{
  font-size:14px
}
}
.c-hdr-btn:is(.l-nav *){
  width:295px;
  height:50px;
  font-size:20px
}
.c-btn{
  display:grid;
  border-radius:100vmax;
  font-size:16px;
  color:#fff;
  place-content:center;
  letter-spacing:.06em;
  transition:background-color .5s
}
.c-btn.--blue{
  background-color:#078ed4
}
@media(any-hover: hover){
  .c-btn.--blue:hover{
  background-color:rgba(46,140,255,.6)
}
}
.c-btn.--blue:focus-visible{
  background-color:rgba(46,140,255,.6)
}
.c-btn.--blue-grey{
  background-color:var(--color-sumi);
  color:#9f9f9f
}
.c-btn.--red{
  background-color:#ef6655
}
@media(any-hover: hover){
  .c-btn.--red:hover{
  background-color:rgba(239,102,85,.6)
}
}
.c-btn.--red:focus-visible{
  background-color:rgba(239,102,85,.6)
}
.c-btn.--pink{
  background-color:var(--color-pink)
}
@media(any-hover: hover){
  .c-btn.--pink:hover{
  background-color:rgb(var(--color-pink-rgb)/60%)
}
}
.c-btn.--pink:focus-visible{
  background-color:rgb(var(--color-pink-rgb)/60%)
}
.c-btn.--grey{
  background-color:var(--color-sumi);
  color:#9f9f9f
}
.c-btn.--line{
  background-color:#00b900
}
@media(any-hover: hover){
  .c-btn.--line:hover{
  background-color:rgba(0,185,0,.6)
}
}
.c-btn.--line:focus-visible{
  background-color:rgba(0,185,0,.6)
}
.c-btn.--gold{
  background-color:var(--color-gold)
}
@media(any-hover: hover){
  .c-btn.--gold:hover{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
}
.c-btn.--gold:focus-visible{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
@media(min-width: 768px){
  .c-btn{
  height:56px;
  font-size:20px
}
.c-btn.--line,.c-btn.--pink,.c-btn.--grey,.c-btn.--gold{
  font-size:24px
}
}
.c-acc-btn{
  display:flex;
  position:relative;
  align-items:center;
  height:100px;
  background-color:#fff;
  border:2px solid var(--color-gold)
}
.c-acc-btn i{
  position:absolute;
  top:50%;
  translate:0 -50%;
  right:17px;
  width:32px;
  height:32px;
  transition:rotate .5s
}
.c-acc-btn span{
  font-size:20px;
  font-weight:bold;
  color:var(--color-gold);
  text-align:left;
  text-decoration:underline;
  letter-spacing:.06em;
  line-height:1.3;
  text-decoration-thickness:1px
}
.c-acc-btn.is-open i{
  rotate:180deg
}
@media(min-width: 768px){
  .c-acc-btn{
  justify-content:center;
  height:80px
}
.c-acc-btn i{
  right:40px
}
.c-acc-btn span{
  font-size:28px;
  text-align:center;
  line-height:1.1
}
}
@media(max-width: 767.98px){
  .c-acc-btn{
  padding:0 20px
}
}
.c-yt-btn{
  display:flex;
  position:relative;
  justify-content:center;
  align-items:center;
  padding:0
}
.c-yt-btn img{
  position:relative;
  z-index:0
}
.c-yt-btn::before{
  content:"";
  position:absolute;
  z-index:1;
  width:23%;
  aspect-ratio:79/55;
  background:url("../images/icon-youtube.svg") no-repeat center center/contain
}
@media(min-width: 768px){
  .c-yt-btn::before{
  width:12%
}
}
.c-menu-btn{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  width:40px;
  height:40px;
  padding:11px 5px;
  background-color:var(--color-sumi)
}
.c-menu-btn i{
  width:30px;
  height:2px;
  background-color:#fff;
  transition-duration:.5s;
  transition-property:scale,translate,rotate
}
.c-menu-btn:is(.l-wrapper.is-open *) i:nth-child(1){
  translate:0 8px;
  rotate:-45deg
}
.c-menu-btn:is(.l-wrapper.is-open *) i:nth-child(2){
  scale:0
}
.c-menu-btn:is(.l-wrapper.is-open *) i:nth-child(3){
  translate:0 -8px;
  rotate:45deg
}
.c-past-card{
  background-color:var(--color-gold);
  border-radius:8px;
  overflow:hidden
}
.c-past-card__date{
  border-bottom:1px solid #fff;
  color:#fff;
  letter-spacing:.06em;
  line-height:1.2
}
.c-past-card__place{
  font-size:14px;
  color:#fff;
  letter-spacing:.06em;
  line-height:1.2
}
@media(min-width: 768px){
  .c-past-card{
  border-radius:10px
}
.c-past-card:is(.about__grid *){
  display:grid;
  grid-row:span 3;
  grid-template-rows:subgrid
}
.c-past-card__date{
  padding:2px 0 7px;
  margin:0 20px
}
.c-past-card__place{
  padding:0px 0 8px;
  margin:0 20px;
  font-size:20px
}
}

@media (min-width: 768px) {
  .c-past-card__date {
    padding: 0 0 10px; /* 上下パディング削除 */
    margin: 0 10px; /* 左右の余白は最小限 */
    font-size: 18px; /* 必要ならサイズ調整 */
    line-height: 1.2; /* 詰めたい場合 */
  }

  .c-past-card__place {
    padding: 0 0 10px; /* 上下パディング削除 */
    margin: 0 10px;
    font-size: 18px;
    line-height: 1.2;
  }
}
@media(max-width: 767.98px){
  .c-past-card{
  display:grid;
  grid-template:"img date" auto "img place" auto/107px 1fr;
  gap:0 20px;
  height:80px;
  padding:0 20px 0 0
}
.c-past-card__img{
  grid-area:img
}
.c-past-card__img img{
  height:100%;
}
	

.c-past-card__date{
  align-self:flex-end;
  grid-area:date;
  padding-bottom:5px;
  font-size:12px
}
.c-past-card__place{
  align-self:flex-start;
  grid-area:place;
  padding-top:5px
}
}
.c-voice-card{
  display:flex;
  gap:0 19px
}
.c-voice-card__icon{
  flex:0 0 100px;
  width:100px
}
.c-voice-card__cont{
  position:relative;
  flex:1 1 auto;
  padding:20px;
  background-color:#fff;
  border-radius:10px;
  font-size:20px
}
.c-voice-card__cont b{
  box-shadow:0 -1px 0 inset var(--color-dark-blue);
  font-size:26px;
  font-weight:inherit;
  color:var(--color-dark-blue)
}
.c-voice-card__cont::before{
  content:"";
  position:absolute;
  top:30px;
  width:19px;
  height:9px;
  background-color:#fff
}
.c-voice-card__txt{
  font-family:var(--font-family-kure)
}
.c-voice-card__tag{
  position:absolute;
  font-family:var(--font-family-cursive);
  font-size:36px;
  font-weight:normal;
  color:var(--color-gold);
  letter-spacing:.06em;
  rotate:-15deg
}
.c-voice-card:is(.voice__list *):nth-child(odd) .c-voice-card__cont::before{
  left:-18px;
  -webkit-clip-path:polygon(100% 0%, 100% 100%, 0% 100%);
  clip-path:polygon(100% 0%, 100% 100%, 0% 100%)
}
.c-voice-card:is(.voice__list *):nth-child(even) .c-voice-card__cont::before{
  right:-19px;
  -webkit-clip-path:polygon(0% 0%, 100% 100%, 0% 100%);
  clip-path:polygon(0% 0%, 100% 100%, 0% 100%)
}
.c-voice-card:is(.voice__list *):nth-child(even) .c-voice-card__icon{
  order:2
}
@media(min-width: 768px){
  .c-voice-card{
  align-items:center;
  gap:0 53px
}
	

  .c-past-card__img {
    width: 100%;
    max-width: 335px; /* 必要に応じて制御 */
  }

  .c-past-card__img img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    border-radius: 8px; /* デザイン調整 */
  }

.c-voice-card__icon{
  flex:0 0 140px;
  width:140px
}
.c-voice-card__cont{
  padding-top:41px;
  padding-bottom:44px;
  padding-right:22px;
  border-radius:20px;
  line-height:1.4
}
.c-voice-card__cont::before{
  width:38px;
  height:20px
}
.c-voice-card__tag{
  top:-6px;
  left:25px;
  font-size:36px
}
.c-voice-card:is(.voice__list *):nth-child(odd) .c-voice-card__cont{
  padding-left:62px
}
.c-voice-card:is(.voice__list *):nth-child(odd) .c-voice-card__cont::before{
  left:-37px
}
.c-voice-card:is(.voice__list *):nth-child(even) .c-voice-card__cont{
  padding-left:86px
}
.c-voice-card:is(.voice__list *):nth-child(even) .c-voice-card__cont::before{
  right:-37px
}
}
@media(max-width: 767.98px){
  .c-voice-card__cont{
  text-align:justify;
  line-height:40px
}
.c-voice-card:is(.voice__list *):nth-child(odd) .c-voice-card__tag{
  top:87px;
  left:-115px
}
.c-voice-card:is(.voice__list *):nth-child(even) .c-voice-card__tag{
  top:87px;
  right:-115px
}
}
.c-movie-card{
  display:grid;
  grid-row:span 2;
  grid-template-rows:subgrid;
  gap:0
}
.c-movie-card__ttl{
  display:grid;
  padding:15px 10px;
  margin-top:12px;
  font-size:20px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  letter-spacing:.06em;
  line-height:1;
  place-content:center
}
.c-movie-card__iframe{
  line-height:0
}
.c-movie-card:is(.voice__movies *) .c-movie-card__ttl{
  background-color:var(--color-gold)
}
.c-movie-card:is(.family__movies *) .c-movie-card__ttl{
  margin-top:0;
  font-size:18px;
  line-height:2;
  color:var(--color-text-body);
  overflow:hidden;
  padding:0;
  height:36px;
  white-space:nowrap;
  place-content:flex-start;
  font-weight:400
}
@media(min-width: 768px){
  .c-movie-card__ttl{
  margin-top:13px
}
}
.c-ba-card__before{
  position:relative;
  padding:44px 10px 28px;
  background-color:#fff;
  border:2px solid #949494;
  border-radius:10px
}
.c-ba-card__before::before{
  content:"Before";
  display:grid;
  position:absolute;
  top:8px;
  left:50%;
  width:120px;
  height:40px;
  background-color:#949494;
  border-radius:100vmax;
  font-size:24px;
  font-weight:bold;
  color:#fff;
  translate:-50% -50%;
  place-content:center
}
.c-ba-card__before p{
  font-size:20px;
  text-align:center;
  line-height:1.6
}
.c-ba-card__arrow{
  width:35px;
  height:15px;
  margin-top:10px;
  background-color:#ae9743;
  -webkit-clip-path:polygon(0% 0%, 100% 0%, 50% 100%);
  clip-path:polygon(0% 0%, 100% 0%, 50% 100%);
  margin-inline:auto
}
.c-ba-card__after{
  position:relative;
  padding:48px 5px 38px;
  margin-top:20px;
  background-color:#fdfbee;
  border:2px solid var(--color-gold);
  border-radius:10px
}
.c-ba-card__after::before{
  content:"After";
  display:grid;
  position:absolute;
  top:8px;
  left:50%;
  width:120px;
  height:40px;
  background-color:var(--color-gold);
  border-radius:100vmax;
  font-size:24px;
  font-weight:bold;
  color:#fff;
  translate:-50% -50%;
  place-content:center
}
.c-ba-card__after p{
  font-size:22px;
  font-weight:inherit;
  color:var(--color-red);
  text-align:center;
  line-height:1.4545454545
}
@media(min-width: 768px){
  .c-ba-card{
  display:grid;
  grid-row:span 3;
  grid-template-rows:subgrid
}
.c-ba-card__arrow{
  width:70px;
  height:30px;
  margin-top:19px
}
.c-ba-card__after{
  margin-top:30px
}
}
.c-h2-hgrp{
  display:flex;
  flex-wrap:wrap
}
.c-h2-hgrp__ttl{
  order:1;
  flex:0 0 100%;
  font-size:36px;
  font-weight:bold;
  text-align:center
}
.c-h2-hgrp__en{
  order:2;
  flex:0 0 100%;
  font-family:var(--font-family-latin);
  font-size:24px;
  font-weight:bold;
  text-align:center;
  line-height:1
}
.c-h2-hgrp__en span{
  color:var(--color-gold)
}
@media(min-width: 768px){
  .c-h2-hgrp__ttl{
  font-size:50px
}
.c-h2-hgrp__ttl:is(.--align-left *){
  text-align:left
}
.c-h2-hgrp__en{
  translate:-3px -8px;
  font-size:30px
}
.c-h2-hgrp__en:is(.--align-left *){
  text-align:left
}
}
@media(max-width: 767.98px){
  .c-h2-hgrp__ttl{
  letter-spacing:0;
  line-height:1.1111111111;
  translate:0 -7px
}
}
.c-hdr-menu__ja{
  display:block;
  text-align:center;
  line-height:1
}
.c-hdr-menu__en{
  display:block;
  font-family:var(--font-family-latin);
  text-align:center;
  line-height:1
}
@media(min-width: 768px){
  .c-hdr-menu{
  display:flex;
  gap:0 12px
}
.c-hdr-menu__link{
  display:block;
  position:relative
}
.c-hdr-menu__link::before{
  content:"";
  position:absolute;
  left:-10px;
  bottom:-5px;
  width:calc(100% + 20px);
  height:10px;
  background-color:rgb(var(--color-pink-rgb)/10%);
  transition:scale .5s;
  transform-origin:right;
  scale:0 1
}
}
@media(min-width: 768px)and (any-hover: hover){
  .c-hdr-menu__link:hover::before{
  scale:1 1;
  transform-origin:left
}
}
@media(min-width: 768px){
  .c-hdr-menu__link:focus-visible::before{
  scale:1 1;
  transform-origin:left
}
.c-hdr-menu__ja{
  position:relative;
  z-index:1;
  font-size:16.5px;
  translate:0 -2px;
  white-space:nowrap
}
.c-hdr-menu__en{
  position:relative;
  z-index:1;
  padding-top:2px;
  font-size:9px
}
}
@media(min-width: 1280px){
  .c-hdr-menu{
  gap:0 20px
}
.c-hdr-menu__ja{
  font-size:22px
}
.c-hdr-menu__en{
  font-size:12px
}
}
.c-nav-menu{
  display:grid;
  gap:19px 0;
  max-width:600px;
  margin-inline:auto
}
.c-nav-menu li{
  display:flex;
  position:relative;
  align-items:baseline;
  height:41px;
  border-bottom:1px solid var(--color-gold);
  cursor:pointer
}
@media(any-hover: hover){
  .c-nav-menu li:hover .c-nav-menu__en,.c-nav-menu li:hover .c-nav-menu__ja{
  color:var(--color-pink)
}
.c-nav-menu li:hover .c-nav-menu__arrow{
  translate:12px -6px
}
}
.c-nav-menu li:focus-visible .c-nav-menu__en,.c-nav-menu li:focus-visible .c-nav-menu__ja{
  color:var(--color-pink)
}
.c-nav-menu li:focus-visible .c-nav-menu__arrow{
  translate:12px -6px
}
.c-nav-menu__en{
  padding-left:15px;
  font-family:var(--font-family-latin);
  font-size:16px;
  line-height:1;
  transition:color .3s
}
.c-nav-menu__ja{
  font-size:26px;
  line-height:1;
  transition:color .3s
}
.c-nav-menu__arrow{
  flex:0 0 53px;
  height:14px;
  margin-left:auto;
  translate:2px -6px;
  line-height:1;
  transition:translate .3s
}
.c-modal{
  position:fixed;
  inset:0;
  z-index:999;
  opacity:0;
  visibility:hidden;
  transition-duration:.5s;
  transition-property:opacity,visibility
}
.c-modal.is-open{
  opacity:1;
  visibility:visible
}
.c-modal__container{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:100%;
  background-color:rgb(var(--color-sumi-rgb)/80%)
}
.c-modal__inner{
  flex:1 1 auto;
  max-width:800px
}
.c-modal__close{
  display:flex;
  position:relative;
  justify-content:center;
  align-items:center;
  width:40px;
  height:40px;
  padding:0;
  margin:0;
  margin-left:auto
}
.c-modal__close::before,.c-modal__close::after{
  content:"";
  position:absolute;
  width:80%;
  height:1px;
  background-color:#fff
}
.c-modal__close::before{
  rotate:30deg
}
.c-modal__close::after{
  rotate:-30deg
}
@media(min-width: 768px){
  .c-modal__close{
  width:60px;
  height:60px
}
}
.fv{
  position:relative
}
.fv__bg{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden
}
.fv__cont{
  position:relative;
  z-index:1
}
.fv__balloon{
  position:absolute;
  z-index:2
}
.fv__txt01{
  color:#fff;
  font-family:var(--font-family-latin);
  font-size:124px;
  text-align:center;
  line-height:1
}
.fv__txt01 span{
  color:var(--color-gold)
}
.fv__txt02{
  color:#fff;
  padding-top:12px;
  font-size:19px;
  text-align:center;
  line-height:1
}
.fv__txt03{
  color:#fff;
  padding-top:10px;
  font-size:16px;
  text-align:center;
  line-height:1
}
.fv__txt04{
  display:flex;
  justify-content:center;
  align-items:center;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  width:335px;
  height:38px;
  margin-top:22px;
  background-image:linear-gradient(90deg, var(--color-gold) 0%, #e1cf8d 50%, var(--color-gold) 100%);
  font-family:var(--font-family-noto);
  font-size:18px;
  font-weight:bold;
  color:#fff;
  margin-inline:auto
}
@media(min-width: 768px){
  .fv{
  /*height:500px*/
}
.fv__bg{
  display:grid;
  grid-template-columns:43fr 27fr;
  height:100%
}
.fv__bg-speaker{
  grid-column:2/span 1;
  grid-row:1/span 1
}
.fv__bg-img{
  grid-column:1/span 1;
  grid-row:1/span 1
}
.fv__cont{
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  margin-inline:auto;
  translate:-19vw -30px;
  scale:.8
}
.fv__balloon{
  left:calc(61.4285714286vw - 20px);
  bottom:30px;
  width:160px;
  height:160px
}
.fv__txt01{
  font-size:200px;
  translate:-5px 0
}
.fv__txt02{
  padding-top:20px;
  font-size:32px
}
.fv__txt03{
  padding-top:18px;
  font-size:26px
}
.fv__txt04{
  width:520px;
  height:60px;
  padding:0;
  margin-top:30px;
  font-size:27px;
  letter-spacing:.02em
}
}
@media(min-width: 1024px){
  .fv{
  /*height:600px*/
}
.fv__cont{
  padding-top:10px;
  scale:1;
  translate:-20vw 0
}
.fv__balloon{
  left:calc(61.4285714286vw - 70px);
  width:200px;
  height:200px
}
}
@media(min-width: 1280px){
  .fv{
  height: auto;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}
	.fv-bg{
		background-color: #fff7e0;
	}
	
.fv__bg{
  grid-template-columns:43fr 27fr
}
.fv__cont{
  padding-top:100px;
  translate:-14.2vw 0
}
.fv__balloon{
  left:calc(61.4285714286vw - 70px);
  width:240px;
  height:240px
}
}
@media(max-width: 767.98px){
  .fv{
  /*padding-top:42.6666666667vw;*/
  padding-bottom:29px
}
.fv__bg{
  inset:0
}
.fv__bg-speaker{
  height:42.6666666667vw
}
.fv__bg-img{
  height:calc(100% - 42.6666666667vw)
}
.fv__cont{
  padding:15px var(--gutter)
}
.fv__balloon{
  top:5vw;
  left:22px;
  width:150px;
  height:150px
}
}
.fv-days{
  display:flex;
  margin-top:-7px;
  color:#fff
}
.fv-days__line{
  align-self:center;
  width:13px;
  height:4px;
  margin:24px 5px 0 8px;
  background-color:var(--color-gold)
}
@media(min-width: 768px){
  .fv-days{
  justify-content:center;
  margin-top:-10px
}
.fv-days__line{
  width:20px;
  height:6px;
  translate:0 18px;
  margin:0 8px 0 11px
}
}
@media(max-width: 767.98px){
  .fv-days{
  justify-content:center
}
}
.fv-day{
  display:flex;
  align-items:flex-end;
  flex:0 0 auto
}
.fv-day__date{
  font-family:var(--font-family-latin);
  font-size:62px;
  line-height:1
}
.fv-day__week{
  display:flex;
  justify-content:center;
  align-items:center;
  flex:0 0 auto;
  width:21px;
  height:37px;
  margin-left:6px;
  border:1px solid #fff;
  font-family:var(--font-family-latin);
  font-size:16px;
  white-space:nowrap;
  writing-mode:vertical-rl;
  line-height:1
}
.fv-day__week.--sun{
  margin-left:2px
}
.fv-day__txt{
  align-self:flex-end;
  margin:0 0 3px 10px;
  font-size:31px;
  line-height:1;
  white-space:nowrap
}
@media(min-width: 768px){
  .fv-day__date{
  font-size:100px
}
.fv-day__week{
  width:34px;
  height:60px;
  margin-left:11px;
  font-size:26px
}
.fv-day__week.--sun{
  margin-left:4px
}
.fv-day__txt{
  margin:0 0 5px 15px;
  font-size:50px;
}
}
.fv-place{
  display:flex;
  justify-content:center;
  align-items:center;
  padding-top:15px
}
.fv-place__txt{
  font-size:17px;
  line-height:1;
  color:#fff
}
.fv-place__tag{
  display:flex;
  justify-content:center;
  align-items:center;
  width:80px;
  height:20px;
  margin:0 0 0 5px;
  background-color:var(--color-pale-blue);
  font-size:9px;
  font-weight:bold;
  color:#fff
}
@media(min-width: 768px){
  .fv-place{
  padding-top:25px
}
.fv-place__txt{
  font-size:27px
}
.fv-place__tag{
  width:130px;
  height:30px;
  margin:0;
  font-size:16px;
  translate:6px 0
}
}
.cta{
  display:flex;
  position:relative;
  position:fixed;
  left:0;
  bottom:0;
  z-index:98;
  justify-content:space-between;
  align-items:center;
  width:100%;
  height:60px;
  padding:0 var(--gutter);
  background-color:var(--color-sumi)
}
.cta__share{
  display:none
}
.cta__txt01{
  display:none
}
.cta__txt02{
  font-weight:bold;
  color:#fff;
  line-height:1
}
.cta__btn{
  display:grid;
  place-content:center;
  width:167px;
  height:36px;
  background-color:var(--color-pale-blue);
  font-family:var(--font-family-latin);
  font-size:24px;
  font-weight:700;
  color:#fff;
  transition:background-color .5s
}
@media(any-hover: hover){
  .cta__btn:hover{
  background-color:rgb(var(--color-pale-blue)/60%)
}
}
.cta__btn:focus-visible{
  background-color:rgb(var(--color-pale-blue)/60%)
}
.cta__line{
  flex:1 1 auto;
  max-width:328px;
  line-height:0
}
.cta__line svg{
  width:100%;
  fill:none;
  stroke:#fff
}
@media(min-width: 768px){
  .cta{
  justify-content:center
}
.cta__txt01{
  display:grid;
  place-content:center;
  flex:0 0 100px;
  width:100px;
  height:36px;
  border:1px solid #fff;
  font-family:var(--font-family-latin);
  font-size:20px;
  color:#fff
}
.cta__txt02{
  flex:0 0 auto;
  margin-left:10px;
  font-size:20px
}
.cta__line{
  margin-left:5px
}
.cta__btn{
  flex:0 0 140px;
  width:140px;
  margin-left:8px
}
.cta__share{
  display:grid;
  flex:0 0 110px;
  width:110px;
  height:36px;
  margin-left:10px;
  background-color:var(--color-gold);
  font-size:14px;
  font-weight:bold;
  color:#fff;
  place-content:center;
  transition:background-color .5s
}
}
@media(min-width: 768px)and (any-hover: hover){
  .cta__share:hover{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
}
@media(min-width: 768px){
  .cta__share:focus-visible{
  background-color:rgb(var(--color-gold-rgb)/60%)
}
}
@media(min-width: 1024px){
  .cta__txt02{
  margin-left:20px;
  font-size:24px
}
.cta__line{
  margin-left:15px
}
.cta__btn{
  flex:0 0 170px;
  width:170px;
  margin-left:40px
}
}
@media(max-width: 767.98px){
  .cta__line{
  position:absolute;
  left:106px;
  bottom:8px;
  right:calc(167px + var(--gutter) + 15px);
  max-width:none
}
.cta__txt02{
  line-height:1.5
}
}
.omoi{
  padding:30px 0;
}
.omoi__inner{
  position:relative;
  padding:73px 13px 80px;
  border-radius:20px
}
.omoi__tag{
  position:absolute;
  top:-3px;
  left:10px;
  font-family:var(--font-family-cursive);
  font-size:46px;
  color:#bdac80;
  letter-spacing:.07em;
  line-height:1;
  rotate:-15deg
}
.omoi__ttl{
  position:relative;
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  font-size:32px;
  text-align:center;
  margin-inline:auto;
  line-height:1.2
}
.omoi__cont{
  padding-top:30px
}
.omoi__cont p{
  text-align:center;
  letter-spacing:.07em
}
.omoi__cont p+p{
  margin-top:2em
}
.omoi__cont p b{
  display:inline-block;
  margin:-0.2em 0;
  font-size:1.625em;
  font-weight:500;
  color:#bdac80;
  letter-spacing:.07em
}
.omoi__cont p em{
  font-style:normal;
  color:#264995;
  letter-spacing:.07em
}
@media(min-width: 768px){
  .omoi{
  padding:100px 0
}
.omoi__inner{
  padding:107px 15px 100px;
  background-image:url("../images/omoi-bg.webp"),url("../images/omoi-top-bg.webp"),url("../images/omoi-bottom-bg.webp");
  background-position:center center,center top,center bottom;
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-size:100% 100%,100% auto,100% auto;
  border-radius:40px
}
.omoi__tag{
  top:-3px;
  left:40px;
  font-size:86px
}
.omoi__ttl{
  box-shadow:0 1px 0 #000;
  font-size:50px
}
.omoi__cont{
  padding-top:45px
}
.omoi__cont p b{
  margin:-0.5em 0 -0.2em;
  font-size:26px
}
}
@media(max-width: 767.98px){
  .omoi__inner{
  background-image:url("../images/omoi-mobile-bg.webp"),url("../images/omoi-mobile-top-bg.webp"),url("../images/omoi-mobile-bottom-bg.webp");
  background-position:center center,center top,center bottom;
  background-repeat:no-repeat,no-repeat,no-repeat;
  background-size:100% 100%,100% auto,100% auto
}
.omoi__ttl{
  text-decoration:underline;
  text-decoration-thickness:2px;
  -webkit-text-decoration-skip:ink;
  text-decoration-skip-ink:auto;
  line-height:1.4
}
.omoi__cont p{
  font-size:16px;
  line-height:36px
}
.omoi__cont p+p{
  margin-top:2.25em
}
}
.about{
  padding:70px 0 80px;
  background:url("../images/about-mobile-bg.webp") no-repeat center top/cover
}
.about__desc{
  padding-top:39px
}
.about__desc p{
  text-align:justify;
  letter-spacing:.06em
}
.about__desc p b{
  font-weight:inherit;
  color:#bdac80;
}
.about__movie{
  max-width:680px;
  padding-top:29px;
  margin-inline:auto
}
.about__past{
  padding-top:43px
}
.about__past h3{
  font-size:20px;
  text-align:center;
  letter-spacing:.06em;
  line-height:1.5
}
.about__grid{
  display:grid;
  grid-template-columns:100%;
  gap:10px 0;
  padding-top:22px
}
@media(min-width: 768px){
  .about{
  padding:70px 0 100px;
  background-image:url("../images/about-bg.webp")
}
.about__desc{
  padding-top:33px
}
.about__desc p{
  text-align:center
}
.about__movie{
  padding-top:41px
}
.about__past{
  padding-top:50px
}
.about__past h3{
  font-size:36px
}
.about__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.c-past-card__img img {
  width: 100%;
  height: 200px; /* 高さを統一（赤ライン基準） */
  object-fit: cover; /* 画像を切り抜いてフィットさせる */
  display: block;
}
}
.merit{
  padding:80px 0;
  background:url("../images/merit-bg.webp") no-repeat center top/cover
}
.merit__hgrp{
  padding:20px 10px;
  background-color:var(--color-sumi);
  color:#fff
}
.merit__hgrp p{
  font-size:24px;
  font-weight:bold;
  text-align:center;
  line-height:1
}
.merit__hgrp h2{
  font-size:28px;
  text-align:center
}
.merit__list{
  display:grid;
  gap:28px 0;
  padding-top:48px;
  counter-reset:list
}
.merit__list li{
  position:relative;
  padding:18px 15px 14px 40px;
  background-color:#fff;
  border:3px solid var(--color-gold);
  border-radius:20px;
  counter-increment:list
}
.merit__list li::before{
  content:counter(list);
  display:grid;
  position:absolute;
  z-index:2;
  width:60px;
  aspect-ratio:1/1;
  background-color:var(--color-gold);
  border-radius:50%;
  font-size:34px;
  font-weight:bold;
  color:#fff;
  line-height:1;
  place-content:center
}
.merit__list li::after{
  content:"";
  position:absolute;
  inset:7px;
  z-index:1;
  border:1px solid var(--color-gold);
  border-radius:14px;
  pointer-events:none
}
.merit__list-ttl{
  font-size:24px;
  color:var(--color-gold);
  letter-spacing:.06em;
  line-height:1.3333333333
}
.merit__list-txt{
  line-height:2
}
@media(min-width: 768px){
  .merit{
  padding:98px 0 100px;
  background-image:url("../images/merit-bg.webp")
}
.merit__hgrp{
  gap:0 26px;
  padding:14px 10px 13px
}
.merit__hgrp p{
  font-size:30px;
  text-align:center
}
.merit__hgrp h2{
  font-size:54px;
  text-align:center;
  line-height:1.2
}
.merit__list{
  grid-auto-flow:column;
  grid-template-rows:repeat(5, 1fr);
  gap:10px 70px;
  padding-top:41px;
  margin-left:30px
}
.merit__list li{
  padding:22px 20px 29px 53px
}
.merit__list li::before{
  top:50%;
  left:-33px;
  translate:0 -50%
}
.merit__list-ttl{
  line-height:1.5
}
.merit__list-txt{
  padding-top:3px;
  line-height:1.5
}
}
@media(max-width: 767.98px){
  .merit__hgrp h2{
  line-height:1
}
.merit__hgrp h2 b{
  display:block;
  font-size:50px;
  line-height:1;
  margin-bottom:8px
}
.merit__list li{
  padding:47px 0
}
.merit__list li::before{
  top:-22px;
  left:50%;
  translate:-50% 0
}
.merit__list-ttl{
  padding:0 30px;
  text-align:left
}
.merit__list-txt{
  padding:14px 37px 0;
  text-align:justify
}
}
.step{
  padding:79px 0 82px;
  background:url("../images/step-mobile-bg.webp") no-repeat center top/cover
}
.step__desc{
  padding-top:28px
}
.step__desc p{
  letter-spacing:.07em
}
.step__desc p b{
  font-weight:inherit;
  color:var(--color-dark-gold)
}
.step__fg{
  padding-top:19px;
  margin:41px 0 0;
  background-color:var(--color-gold);
  border:1px solid var(--color-gold);
  border-radius:20px;
  overflow:hidden
}
.step__fg-ttl{
  font-size:30px;
  color:#fff;
  text-align:center;
  letter-spacing:.058em;
  line-height:1.1333333333
}
.step__fg-txt{
  padding:18px 20px 21px;
  font-size:18px;
  color:#fff;
  text-align:center;
  letter-spacing:.06em;
  line-height:1.3333333333
}
@media(min-width: 768px){
  .step{
  padding:70px 0 100px;
  background-image:url("../images/step-bg.webp")
}
.step__desc{
  padding-top:32px
}
.step__desc p{
  text-align:center
}
.step__fg{
  padding-top:23px;
  margin:40px 0 0
}
.step__fg-ttl{
  padding:0 10px;
  font-size:40px;
  line-height:1.3
}
.step__fg-txt{
  padding:0 10px 32px;
  font-size:22px;
  line-height:1.5
}
}
@media(max-width: 767.98px){
  .step__desc{
  margin:0 -2px
}
.step__desc p{
  text-align:justify
}
}
.program{
  padding:79px 0;
  background:url("../images/program-mobile-bg.webp") no-repeat center top/cover
}
.program__txt{
  padding-top:28px;
  font-size:16px;
  letter-spacing:.06em;
  line-height:2.25
}
.program__copy{
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  font-size:20px;
  color:#908562;
  text-align:justify;
  text-decoration:underline;
  letter-spacing:.06em;
  line-height:1.8;
  text-decoration-thickness:1px;
  margin-inline:auto
}
.program__movie{
  max-width:680px;
  padding-top:40px;
  margin-inline:auto
}
.program__days{
  display:grid;
  grid-template-columns:100%;
  gap:40px 0;
  padding-top:38px
}
@media(min-width: 768px){
  .program{
  padding:80px 0 89px;
  background-image:url("../images/program-bg.webp")
}
.program__txt{
  padding-top:24px;
  text-align:center;
  line-height:1
}
.program__copy{
  padding-top:10px;
  font-size:24px;
  text-align:center;
  line-height:1.3
}
.program__days{
  gap:60px 0;
  padding-top:30px
}
}
.program-day__ttl{
  display:flex;
  position:relative;
  z-index:1;
  justify-content:center;
  align-items:center;
  width:220px;
  height:50px;
  margin-bottom:-30px;
  background-color:var(--color-gold);
  border-radius:100vmax;
  font-size:24px;
  color:#fff;
  letter-spacing:.06em;
  margin-inline:auto
}
.program-day__steps{
  padding:50px 19px 40px;
  background-color:#fff;
  border:1px solid #d2d2d2;
  border-radius:20px
}
@media(min-width: 768px){
  .program-day__steps{
  padding:70px 40px 57px;
  border-radius:20px
}
}
.program-step__hdr{
  padding-top:20px
}
.program-step__hdr span{
  border:1px solid var(--color-gold);
  border-radius:100vmax;
  font-size:18px;
  font-weight:bold;
  color:var(--color-gold);
  letter-spacing:.06em;
  line-height:1
}
.program-step__hdr b{
  padding-top:5px;
  font-size:20px;
  font-weight:bold;
  color:var(--color-gold);
  letter-spacing:.06em;
  line-height:1.5
}
.program-step__txt{
  padding-top:5px;
  font-size:16px;
  font-weight:500;
  text-align:justify;
  letter-spacing:.06em;
  line-height:1.625
}
.program-step+.program-step{
  padding-top:40px;
  margin-top:40px;
  border-top:1px solid #d2d2d2
}
@media(min-width: 768px){
  .program-step{
  display:grid;
  grid-template-columns:340px 1fr;
  gap:0 18px
}
.program-step__hdr{
  display:flex;
  align-items:flex-start;
  gap:0 9px;
  padding-top:0
}
.program-step__hdr span{
  flex:0 0 auto;
  padding:.2em 20px;
  font-size:24px
}
.program-step__hdr b{
  flex:1 1 auto;
  padding-top:0;
  font-size:24px
}
.program-step__txt{
  padding-top:10px;
  line-height:1.7777777778
}
.program-step+.program-step{
  padding-top:30px;
  margin-top:29px
}
}
@media(max-width: 767.98px){
  .program-step__hdr span{
  display:flex;
  justify-content:center;
  align-items:center;
  width:109px;
  height:28px
}
.program-step__hdr b{
  display:block
}
}
.voice{
  padding:79px 0;
  background:url("../images/voice-mobile-bg.webp") no-repeat center top/cover
}
.voice__list{
  display:grid;
  grid-template-columns:100%;
  gap:20px 0;
  padding-top:20px
}
.voice__movies{
  display:grid;
  grid-template-columns:100%;
  gap:40px 0;
  padding-top:40px
}
@media(min-width: 768px){
  .voice{
  padding:70px 0 100px;
  background-image:url("../images/voice-bg.webp")
}
.voice__list{
  gap:26px 0;
  padding-top:58px
}
.voice__movies{
  grid-template-columns:repeat(3, 1fr);
  gap:13.5px 13.4px;
  padding-top:51px
}
}
.fy{
  padding:80px 0;
  background:url("../images/step-mobile-bg.webp") no-repeat center top/cover
}
.fy__grid{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:0 16px;
  padding-top:20px
}
@media(min-width: 768px){
  .fy{
  padding:70px 0 100px;
  background-image:url("../images/step-bg.webp")
}
.fy__grid{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  gap:0 13px;
  padding-top:35px
}
}
@media(max-width: 767.98px){
  .fy__grid figure{
  text-align:center
}
.fy__grid figure:nth-child(3){
  grid-column:span 2
}
.fy__grid figure:nth-child(3) picture{
  width:calc(50% - 8px);
  margin-inline:auto
}
}
.teacher{
  padding:80px var(--gutter)
}
.teacher__profile{
  padding:20px 20px 40.5px;
  background-color:rgba(255,255,255,.9);
  border-radius:20px
}
.teacher__profile h3{
  font-size:32px;
  font-weight:500;
  letter-spacing:.06em
}
.teacher__profile p{
  letter-spacing:.06em;
  line-height:2
}
@media(min-width: 768px){
  .teacher{
  display:grid;
  grid-template-columns:27fr 43fr;
  height:716px;
  padding:0;
  background:url("../images/teacher-parallax.webp") no-repeat center center/cover
}
.teacher:is(.--view-pc *){
  background-attachment:fixed
}
.teacher__cont{
  align-self:center;
  padding:20px var(--gutter)
}
.teacher__profile{
  max-width:612px;
  padding:24px var(--gutter) 40px;
  margin-top:24px
}
.teacher__profile h3{
  padding-bottom:4px
}
.teacher__profile p{
  line-height:1.7777777778
}
}
@media(min-width: 1024px){
  .teacher__cont{
  align-self:start;
  padding:71px 58px 0
}
.teacher__profile{
  padding:24px 40px 40px;
  margin-top:37px
}
}
@media(max-width: 767.98px){
  .teacher{
  background:url("../images/teacher-mobile-bg.webp") no-repeat center top/cover
}
.teacher__thumb{
  padding-top:28px
}
.teacher__profile{
  margin-top:20px
}
}
.price{
  padding:80px 0;
  background-image:url("../images/price-bg.webp")
}
.price__desc{
  padding-top:28px;
  letter-spacing:.06em
}
.price__saleterm{
  padding:10px 10px 7px;
  margin-top:20px;
  background-color:#bdac80;
  font-size:18px;
  font-weight:bold;
  text-align:center;
  line-height:1.5;
  margin-inline:auto;
  color:#fff
}
.price__point{
  text-align:center;
  margin:40px auto 0;
  line-height:1
}
.price__point-text1{
  font-size:36px;
  font-weight:bold;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:10px;
  margin:0 auto 32px
}
.price__point span{
  color:#ed3e3e
}
.price__point-text2{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  font-size:30px;
  line-height:1
}
.price__point-text2::before{
  content:"";
  border-left:solid 3px #414141;
  border-radius:10px;
  height:40px;
  transform:rotate(-30deg)
}
.price__point-text2::after{
  content:"";
  border-right:solid 3px #414141;
  border-radius:10px;
  height:40px;
  transform:rotate(30deg)
}
.price__fg{
  padding:20px;
  margin-top:44px;
  background-color:#fff;
  border-radius:10px;
	margin-bottom: 20px;
}
.price__tabs{
  display:flex;
  justify-content:center
}
.price__tab{
  background-color:#949494;
  border-radius:4px 4px 0 0;
  color:#fff;
  letter-spacing:.06em;
  line-height:1.2
}
.price__tab.is-active{
  background-color:var(--color-gold)
}
.price__tabconts{
  background-color:#fdfbee;
  border:1px solid var(--color-gold);
  border-radius:0 0 10px 10px
}
.price__btns{
  display:grid;
  grid-template-columns:100%;
  gap:20px 0
}
.price__acc{
  padding-top:82px
}
@media(min-width: 768px){
  .price__tabs{
  gap:0 10px;
  padding:30px 30px 0
}
.price__tab{
  padding:10px 5px 12px;
  font-size:24px
}
}
@media(min-width: 1024px){
  .price{
  padding:80px 0 92px
}
.price__desc{
  padding-top:.9em;
  text-align:center
}
.price__saleterm{
  width:-webkit-fit-content;
  width:-moz-fit-content;
  width:fit-content;
  padding:.1em 1.25em .25em;
  margin-top:.4em;
  font-size:24px;
  letter-spacing:.06em
}
.price__fg{
  padding:25px;
  margin-top:40px;
  border-radius:20px
}
.price__btns{
  display:flex;
  justify-content:center;
  gap:0 40px;
  margin-top:39px
}
.price__btns>*{
  flex:0 1 calc(50% - 20px);
  max-width:334px
}
.price__acc{
  padding-top:61px
}
.price__tabconts{
  padding:23px 24px 40px;
  border-radius:0 0 20px 20px
}
}
@media(max-width: 1023.98px){
  .price__desc{
  line-height:1.5
}
.price__btns .c-btn{
  height:56px;
  font-size:20px
}
.price__point{
  text-align:center;
  margin:40px auto 20px;
  line-height:2
}
.price__point-text1{
  font-size:28px;
  margin:0 auto 36px
}
.price__point-text2{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:center;
  font-size:22px;
  line-height:1
}
.price__point-text2::before{
  content:"";
  border-left:solid 3px #414141;
  border-radius:10px;
  height:26px;
  transform:rotate(-30deg)
}
.price__point-text2::after{
  content:"";
  border-right:solid 3px #414141;
  border-radius:10px;
  height:26px;
  transform:rotate(30deg)
}
.price__tab{
  font-size:18px
}
.price__tabconts .swiper-slide{
  padding:20px 20px 40px
}
.price__tabconts .swiper-slide .swiper-slide{
  padding:0
}
.price__acccont{
  padding-top:20px
}
}
@media(max-width: 767.98px){
  .price__tabs{
  gap:0 1px;
  padding:0 7px
}
.price__tab{
  height:56px;
  font-size:14px;
  line-height:18px
}
}
.price-table__hdr-td01,.price-table__hdr-td02{
  display:grid;
  font-size:16px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  place-content:center
}
.price-table__hdr-td01{
  grid-column:2/span 2;
  background-color:#ef6655;
  border-right:1px solid #ef6655
}
.price-table__hdr-td02{
  grid-column:4/span 2;
  background-color:#078ed4
}
.price-table__l1{
  background-color:#f0f2f9;
  border-left:1px solid var(--color-sumi)
}
.price-table__l1-td01{
  grid-column:2/span 1
}
.price-table__l1-td02{
  grid-column:3/span 1
}
.price-table__l1-td03{
  grid-column:4/span 1
}
.price-table__l1-td04{
  grid-column:5/span 1
}
.price-table__l1-td01,.price-table__l1-td02,.price-table__l1-td03,.price-table__l1-td04{
  display:grid;
  font-weight:bold;
  place-content:center
}
.price-table__l1-td01,.price-table__l1-td03{
  color:var(--color-red)
}
.price-table__l2{
  position:relative;
  background:#fff
}
.price-table__l2>*.color-red{
  color:var(--color-red)
}
.price-table__l2-th{
  font-weight:bold
}
.price-table__l2-th small{
  font-size:.7777777778em;
  font-weight:normal
}
.price-table__l2-td:not(:has(.price-dl)){
  display:grid;
  place-content:center
}
.price-table__l2-td:has(.price-dl){
  display:flex;
  align-items:center
}
.price-table__l2-endbg{
  z-index:1;
  grid-column:2/span 4;
  grid-row:0 1;
  background-color:#595959;
  mix-blend-mode:multiply
}
.price-table__l2-end{
  display:grid;
  position:relative;
  z-index:2;
  grid-column:2/span 4;
  grid-row:0 1;
  place-content:center;
  color:#fff
}
.price-table__l2.is-accent{
  background-color:#fdfbee;
  color:var(--color-red)
}
@media(min-width: 1024px){
  .price-table{
  display:grid;
  grid-template-columns:100%;
  border-bottom:1px solid var(--color-sumi)
}
.price-table__l1,.price-table__l2{
  border-top:1px solid var(--color-sumi);
  border-right:1px solid var(--color-sumi)
}
.price-table__l1>*,.price-table__l2>*{
  border-left:1px solid var(--color-sumi);
  letter-spacing:.06em
}
.price-table__hdr,.price-table__l1,.price-table__l2{
  display:grid;
  grid-row:span 1;
  grid-template-columns:33fr 16fr 16fr 16fr 16fr;
  grid-template-rows:subgrid
}
.price-table__hdr-td01,.price-table__hdr-td02{
  height:50px;
  font-size:20px
}
.price-table__l1-td01,.price-table__l1-td02,.price-table__l1-td03,.price-table__l1-td04{
  padding:7px 5px 6px
}
.price-table__l2.is-accent{
  position:relative
}
.price-table__l2.is-accent::before{
  content:"";
  position:absolute;
  inset:0 0 0 1px;
  border:5px solid #f2897c;
  pointer-events:none
}
.price-table__l2-hdr01,.price-table__l2-hdr02,.price-table__l2-hdr03,.price-table__l2-hdr04{
  display:none
}
.price-table__l2-th{
  padding:20px 10px 24px 19px;
  line-height:1.2
}
.price-table__l2-th:is(.is-accent *){
  font-size:22px
}
.price-table__l2-th:is(.is-accent *) small{
  font-size:14px
}
.price-table__l2-td{
  padding:0 10px
}
.price-table__l2-td:is(.is-accent *){
  font-size:24px;
  font-weight:bold
}
.price-table__l2-end{
  font-size:34px
}
}
@media(max-width: 1023.98px){
  .price-table__slider{
  display:block;
  position:relative;
  width:100%;
  margin-bottom:20px;
  --swiper-navigation-sides-offset: -12px;
  --swiper-navigation-color: var(--color-sumi);
  --swiper-navigation-size: 32px
}
.price-table__hdr,.price-table__l1{
  display:none
}
.price-table__l2{
  display:grid;
  grid-template-columns:78fr 106fr 106fr;
  background-color:#fdfbee;
  border-top:1px solid var(--color-sumi);
  border-left:1px solid var(--color-sumi);
  border-right:1px solid var(--color-sumi)
}
.price-table__l2+.price-table__l2{
  margin-top:20px
}
.price-table__l2>*{
  border-bottom:1px solid var(--color-sumi)
}
.price-table__l2>*+*{
  border-left:1px solid var(--color-sumi)
}
.price-table__l2-th{
  grid-column:1/span 3;
  padding:14px 0 17px;
  background-color:var(--color-sumi);
  font-size:24px;
  color:#fff;
  text-align:center;
  line-height:1
}
.price-table__l2-th small{
  font-size:14px
}
.price-table__l2-th:is(.is-accent *){
  background-color:var(--color-pink);
  color:#fff
}
.price-table__l2-hdr01{
  grid-column:2/span 1;
  color:var(--color-red)
}
.price-table__l2-hdr02{
  grid-column:3/span 1
}
.price-table__l2-hdr01,.price-table__l2-hdr02{
  display:grid;
  padding:8px 0;
  background-color:#fdfbee;
  font-size:18px;
  font-weight:500;
  place-content:center
}
.price-table__l2-hdr03,.price-table__l2-hdr04{
  display:grid;
  border-left:none;
  font-size:14px;
  font-weight:bold;
  color:#fff;
  text-align:center;
  place-content:center;
  line-height:1.2
}
.price-table__l2-hdr03{
  grid-column:span 1;
  background-color:#ef6655
}
.price-table__l2-hdr04{
  grid-column:span 1;
  background-color:#2d8cff
}
.price-table__l2-td{
  grid-column:span 1;
  padding:7px 0;
  background-color:#fff;
  font-size:18px
}
.price-table__l2-td:has(.price-dl){
  padding:0
}
}
.price-dl{
  flex:1 1 auto
}
.price-dl dt,.price-dl dd{
  font-size:14px;
  letter-spacing:0;
  line-height:1.5
}
@media(min-width: 1024px){
  .price-dl div{
  display:flex;
  justify-content:space-between
}
}
@media(max-width: 1023.98px){
  .price-dl div{
  padding:8.5px 0 8.7px
}
.price-dl div+div{
  border-top:1px solid #000
}
.price-dl dt,.price-dl dd{
  text-align:center
}
}
.ba{
  padding:80px 0;
  background:url("../images/ba-mobile-bg.webp") no-repeat center top/cover
}
.ba__grid{
  display:grid;
  grid-template-columns:100%;
  gap:50px 0;
  padding-top:38px
}
@media(min-width: 768px){
  .ba{
  padding:70px 0 100px;
  background-image:url("../images/ba-bg.webp")
}
.ba__grid{
  grid-template-columns:repeat(3, 1fr);
  gap:0 20px;
  padding-top:44px
}
}
.family{
  padding:80px 0 78px;
  background:url("../images/family-mobile-bg.webp") no-repeat center top/cover
}
.family__imgbox{
  display:grid;
  grid-template-columns:100%;
  gap:20px 0;
  margin-top:29px
}
.family__imgbox p{
  letter-spacing:.06em
}
.family__imgbox .c-btn{
  margin-top:20px;
  margin-inline:auto
}
.family__movies{
  display:grid;
  gap:16px 0;
  padding-top:60px
}
@media(min-width: 768px){
  .family{
  padding:70px 0 98px;
  background-image:url("../images/family-bg.webp")
}
.family__imgbox{
  grid-template-columns:52fr 48.2fr;
  gap:0 20px;
  margin-top:32px
}
.family__imgbox .c-btn{
  width:280px;
  margin-top:20px
}
.family__movies{
  grid-template-columns:repeat(4, 1fr);
  gap:13.5px 13.4px;
  padding-top:16px
}
}
@media(max-width: 767.98px){
  .family__imgbox p{
  text-align:justify;
  line-height:2.125
}
.family__imgbox .c-btn{
  height:56px;
  font-size:24px
}
}
.special{
  padding:80px 0;
  background:url("../images/special-mobile-bg.webp") no-repeat center top/cover
}
.special__desc{
  padding-top:29px
}
.special__desc h3{
  font-size:32px;
  font-weight:500;
  text-align:center;
  letter-spacing:.055em;
  line-height:1.3125
}
.special__desc p{
  padding-top:20px;
  letter-spacing:.055em
}
.special__desc .c-btn{
  margin-top:40px;
  margin-inline:auto
}
@media(min-width: 768px){
  .special{
  padding:70px 0 100px;
  background:url("../images/special-parallax.webp") no-repeat center center/cover
}
.special:is(.--view-pc *){
  background-attachment:fixed
}
.special__desc{
  padding-top:26px
}
.special__desc h3{
  line-height:1.5
}
.special__desc p{
  padding-top:4px;
  text-align:center
}
.special__desc .c-btn{
  width:280px
}
}
@media(max-width: 767.98px){
  .special__desc p{
  font-size:16px;
  text-align:justify;
  line-height:2.125
}
.special__desc .c-btn{
  height:56px;
  font-size:24px
}
}
.detail{
  padding:80px 0 70px;
  background-color:#fdfbee
}
.detail__grid{
  display:grid;
  grid-template-columns:100%;
  gap:60px 0;
  padding-top:30px
}
.detail__subttl{
  display:grid;
  height:40px;
  background-color:var(--color-gold);
  font-size:18px;
  font-weight:bold;
  color:#fff;
  place-content:center
}
.detail__table{
  width:100%;
  margin-top:2px
}
.detail__table th,.detail__table td{
  padding:24px 0;
  border-bottom:1px solid var(--color-gold)
}
.detail__table th{
  width:78px;
  color:var(--color-gold);
  text-align:left;
  line-height:1.2222222222
}
.detail__table td small{
  font-size:1em
}
.detail__address{
  display:flex;
  align-items:center
}
.detail__address dt{
  display:grid;
  border:1px solid var(--color-gold);
  font-weight:bold;
  color:var(--color-gold);
  place-content:center
}
.detail__address dd{
  line-height:1.4
}
.detail__address dd b{
  font-size:1.3333333333em;
  color:var(--color-gold)
}
.detail__map{
  padding-top:15px
}
.detail__map iframe{
  height:339px
}
@media(min-width: 768px){
  .detail{
  padding:80px 0 100px
}
.detail__grid{
  grid-template-columns:100%;
  gap:30px 20px;
  padding-top:38px
}
.detail__subttl{
  height:50px;
  font-size:24px
}
.detail__table{
  width:100%;
  margin-top:5px
}
.detail__table th,.detail__table td{
  padding:13px 0
}
.detail__table th{
  width:95px;
  font-weight:bold
}
.detail__table td{
  font-weight:500
}
.detail__table td small{
  font-size:.7777777778em
}
.detail__address{
  gap:0 20px;
  padding-top:21px
}
.detail__address dt{
  width:119px;
  height:58px
}
.detail__map{
  padding-top:20px
}
.detail__map iframe{
  height:508px
}
}
@media(min-width: 900px){
  .detail__grid{
  grid-template-columns:1fr 1fr
}
}
@media(max-width: 767.98px){
  .detail__table th,.detail__table td{
  font-size:14px;
  line-height:1.2857142857;
  vertical-align:middle
}
.detail__address{
  gap:0 10px;
  margin-top:18px
}
.detail__address dt{
  flex:0 0 78px;
  width:78px;
  height:38px;
  font-size:14px;
  font-weight:bold
}
.detail__address dd{
  font-size:14px
}
.detail__address dd b{
  font-size:18px
}
}
.newest{
  position:relative
}
.newest__container{
  position:relative;
  z-index:2;
  max-width:600px;
  padding:60px var(--gutter);
  background:url("../images/new-center-bg.webp") no-repeat center top/cover;
  margin-inline:auto
}
.newest__desc{
  padding-top:28px
}
.newest__desc p{
  text-align:center;
  letter-spacing:.06em
}
.newest .c-btn{
  margin-inline:auto
}
@media(min-width: 768px){
  .newest{
  padding:0 var(--gutter)
}
.newest__bgleft{
  top:0;
  left:0
}
.newest__bgright{
  top:0;
  right:0
}
.newest__bgleft,.newest__bgright{
  position:absolute;
  width:calc(50% - 300px);
  height:100%
}
.newest__container{
  padding:80px 20px 100px
}
.newest__desc{
  padding-top:37px
}
.newest .c-btn{
  width:300px;
  margin-top:40px
}
}
@media(max-width: 767.98px){
  .newest__desc p{
  line-height:2
}
.newest .c-btn{
  height:56px;
  margin-top:19px;
  font-size:24px
}
}
.contact{
  padding:80px 0;
  background:url("../images/contact-mobile-bg.webp") no-repeat center top/cover
}
.contact__cont{
  padding-top:6px
}
.contact__table{
  width:100%
}
.contact__table th{
  width:85px;
  font-weight:bold;
  color:var(--color-gold);
  text-align:left
}
.contact__table th,.contact__table td{
  padding:22px 0;
  border-bottom:1px solid var(--color-gold);
  line-height:1.6
}
.contact .c-btn{
  margin-inline:auto
}
@media(min-width: 768px){
  .contact{
  padding:80px 0 100px;
  background-image:url("../images/contact-bg.webp")
}
.contact__inner{
  display:flex;
  justify-content:space-between;
  gap:0 20px
}
.contact__hgrp{
  flex:0 0 auto
}
.contact__cont{
  flex:0 1 512px;
  padding-top:4px
}
.contact__table th{
  width:116px
}
.contact__table th,.contact__table td{
  padding:18px 0
}
.contact .c-btn{
  width:280px;
  margin-top:37px
}
}
@media(max-width: 767.98px){
  .contact__table th,.contact__table td{
  font-size:14px
}
.contact .c-btn{
  height:56px;
  margin-top:40px;
  font-size:24px
}
}
summary{
  display:block;
  list-style:none
}
summary::-webkit-details-marker{
  display:none
}
.faq{
  padding-top:100px;
  padding-bottom:100px;
  position:relative
}
.faq .l-inner{
  position:relative
}
@media(max-width: 768px){
  .faq{
  padding-top:80px;
  padding-bottom:80px
}
}
.faq__bg{
  position:relative;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-image:url(../images/faq-bg.webp)
}
.faq__bg img{
  width:100%;
  height:100%;
  object-fit:cover
}
.faq__body{
  padding-top:38px;
  overflow:hidden
}
@media(max-width: 768px){
  .faq__body{
  padding-top:30px
}
}
.faq__contents-title{
  padding-bottom:13px;
  padding-left:20px;
  border-left:10px solid #414141;
  border-bottom:1px solid #414141;
  margin-bottom:20px
}
.faq__contents{
  margin-bottom:60px
}
@media(max-width: 768px){
  .faq__contents{
  margin-bottom:40px
}
}
.faq__contents:last-child{
  margin-bottom:0
}
@media(max-width: 768px){
  .faq__contents-title{
  padding-left:10px;
  padding-bottom:0
}
}
.faq__contents-title h3{
  font-size:32px;
  font-weight:700
}
@media(max-width: 768px){
  .faq__contents-title h3{
  font-size:20px;
  line-height:1.33
}
}
.faq-box{
  border:1px solid #bdac80;
}
.faq-box+.faq-box{
  margin-top:20px
}
.faq-box__question{
  min-height:60px;
  color:#fff;
  position:relative;
  background:#bdac80;
  display:flex;
  align-items:stretch;
  line-height:1.66;
  padding-right:96px
}
@media(max-width: 768px){
  .faq-box__question{
  padding-right:48px;
  line-height:1.33
}
}
.faq-box[open] .faq-box__question:after{
  transform:translateY(-50%) rotate(0deg)
}
.faq-box__question:before{
  position:absolute;
  top:50%;
  right:28px;
  width:40px;
  height:4px;
  content:"";
  background-size:cover;
  transform:translateY(-50%);
  background:#fff
}
@media(max-width: 768px){
  .faq-box__question:before{
  width:20px;
  height:2px;
  right:14px
}
}
.faq-box__question:after{
  position:absolute;
  top:50%;
  right:28px;
  width:40px;
  height:4px;
  content:"";
  background-size:cover;
  transform:translateY(-50%) rotate(-90deg);
  background:#fff;
  transition:transform .3s ease
}
@media(max-width: 768px){
  .faq-box__question:after{
  width:20px;
  height:2px;
  right:14px
}
}
.faq-box__question-icon{
  width:70px;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:38px;
  font-weight:700;
  color:#fff;
  flex-shrink:0;
  font-family:var(--font-family-latin)
}
@media(max-width: 768px){
  .faq-box__question-icon{
  font-size:28px;
  width:44px
}
}
.faq-box__question-title{
  font-size:24px;
  font-weight:700;
  color:#fff;
  padding-left:20px;
  border-left:1px solid #fff;
  display:flex;
  align-items:center;
  padding-top:5px;
  padding-bottom:5px
}
@media(max-width: 768px){
  .faq-box__question-title{
  font-size:18px;
  line-height:1.33;
  padding:10px 0px 10px 10px
}
}
.faq-box__answer{
  padding:20px 40px 40px 0;
  background:#fff;
  display:flex;
  overflow-x:hidden
}
@media(max-width: 768px){
  .faq-box__answer{
  padding:11px 20px 30px 0;
  font-size:16px;
  line-height:1.625
}
}
.faq-box__answer-icon{
  background:#6a9be5;
  width:70px;
  height:100%;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:38px;
  font-weight:700;
  border-right:1px solid #fff;
  color:#fff;
  flex-shrink:0;
  font-family:var(--font-family-latin)
}
@media(max-width: 768px){
  .faq-box__answer-icon{
  width:44px;
  font-size:28px;
  height:60px
}
}
.faq-box__answer-title{
  padding-left:20px;
  line-height:1.77
}
.faq-box__answer-title span{
  color:#908562
}
@media(max-width: 768px){
  .faq-box__answer-title .pcDisNon{
  display:none
}
}
@media(max-width: 768px){
  .faq-box__answer-title{
  padding-top:10px
}
}
.is-closed{
  position: relative;
}
.is-closed::before{
  content: '';
  position: absolute;
  inset: 0;
  margin: auto;
  background: #484848;
  mix-blend-mode: multiply;
}
.is-closed::after{
  content: '終了しました';
  position: absolute;
  inset: 0;
  margin: auto;
  font-size: 32px;
  color: #fff;
  display: grid;
  align-items: center;
  justify-content: center;
}
@media (max-width: 768px) {
  .is-closed::after{
  font-size: 26px;
}
}
.c-movie-card:is(.voice__movies_2l *) .c-movie-card__ttl_b {
  background-color: var(--color-pink)
}
.c-movie-card:is(.family__movies_2l *) .c-movie-card__ttl_b {
  background-color: #949494
}
.c-movie-card:is(.voice__movies *) .c-movie-card__ttl_b {
  background-color: var(--color-pink)
}
.c-movie-card:is(.family__movies *) .c-movie-card__ttl_b {
  background-color: #949494
}
.family {
  padding: 80px 0 78px;
  background: url("../images/family-mobile-bg.webp") no-repeat center top/cover
}
.family__imgbox {
  display: grid;
  grid-template-columns: 100%;
  gap: 20px 0;
  margin-top: 29px
}
.family__imgbox p {
  letter-spacing: .06em
}
.family__imgbox .c-btn {
  margin-top: 20px;
  margin-inline: auto
}
.family__movies {
  display: grid;
  gap: 40px 0;
  padding-top: 60px
}
.family__movies_2l {
  display: grid;
  gap: 40px 0;
  padding-top: 60px
}
@media(min-width: 768px) {
  .family {
  padding: 70px 0 98px;
  background-image: url("../images/family-bg.webp")
}
	.family__imgbox {
  grid-template-columns: 52fr 48.2fr;
  gap: 0 20px;
  margin-top: 32px
}
	.family__imgbox .c-btn {
  width: 280px;
  margin-top: 20px
}
	.family__movies {
  grid-template-columns: repeat(3, 1fr);
  gap: 13.5px 13.4px;
  padding-top: 60px
}
	.family__movies_2l {
  grid-template-columns: repeat(2, 1fr);
  gap: 13.5px 13.4px;
  padding-top: 60px
}
}
@media(max-width: 767.98px) {
  .family__imgbox p {
  text-align: justify;
  line-height: 2.125
}
	.family__imgbox .c-btn {
  height: 56px;
  font-size: 24px
}
}
.c-movie-card__ttl_b {
  display: grid
;
  padding: 15px 10px;
  margin-top: 12px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  letter-spacing: .06em;
  line-height: 1;
  place-content: center;
}


/**** 20250722追加 ***/
@media(max-width: 1000px) {
.t2s-lp-sp{
	display:block;
	}
	
.t2s-lp-pcs{
	display:none;
	}
	
.t2s-lp-pcb{
	display:none;
	}
}

@media(min-width: 1001px) {
.t2s-lp-sp{
	display:none;
	}
	
.t2s-lp-pcs{
	display:block;
	}
	
.t2s-lp-pcb{
	display:none;
	}
}

@media(min-width: 1281px) {
.t2s-lp-sp{
	display:none;
	}
	
.t2s-lp-pcs{
	display:none;
	}
	
.t2s-lp-pcb{
	display:block;
	}
}
