/* common */

@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic&display=swap');

html {
 overflow-y: scroll;
}
@media screen and (max-width: 1080px){
　html {
   　overflow-y: hidden;
　}
}

header{
  position: fixed;
  top: 0;
  z-index: 10000;
}

.l-pcContents__bg {
	position: relative;
}

.bgi01 {
	position:absolute;
	left:0;
	top:250px;
}
.bgi02 {
	position:absolute;
	right:550px;
	top:350px;
}



h1{
  font-size:42px;
  color:#4B3A45;
  position:absolute;
  z-index:11;
  top:482px;
  right:16px;
}
h2{
/*
  font-size:26px;
*/
  font-weight: bold;
  margin-bottom: 32px;
  text-align: center;
}

a:hover img{
  opacity: 0.8;
}

/* Layout */
.l-spContents{
  width:100%;
  background-color:#FFE6E6;
}
.l-pcContents{
  background: url('../img/img-bg.png') no-repeat;
  background-size: cover;
}
.l-spFooter{
  background-color: #F1E5E7;
  color:#4B3A45;
  position: relative;
}
.l-spFooter ul{
  display: flex;
  flex-direction: column;
  gap:8px;
  padding:40px 24px;
}
.l-spFooter a{
  text-decoration: none;
}
.l-spFooter a:hover{
  text-decoration: underline;
}
.l-spFooter small{
  color:#fff;
  background-color: #4B3A45;
  text-align: center;
  font-size: 12px;
  width: 100%;
  display: block;
  padding: 24px 0;
}
.l-footer__illust{
  height:350px;
  left:0;
  right: 0;
  bottom: 0;
}
.l-footer__illust img{
  width: 100%;
  height: auto;
}
.c-header__logo{
  position: relative;
  top: 24px;
  left:24px;
  z-index: 10000;
}
.c-hamburger__wrap{
  position: relative;
  z-index: 1000;
}
.c-hamburger{
  position: fixed;
  right: 180px;
  top: 32px;
  width: 390px;
  cursor: pointer;
}
.c-hamburger__item{
  width: 100%;
}
.c-hamburger__item a{
  display: block;
  padding:4px 24px;
}
.c-hamburger__list{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100vh;
  font-size: 16px;
  gap: 8px 16px;
}
.c-hamburger__list li a{
  text-decoration: none;
}
.c-hamburger__list li a:hover{
  color: rgba(255, 128, 159,1);
  transition: all .4s;
}
.c-hamburger__nav{
  display:none;
}
.c-hamburger__nav.is-active{
  display: block;
  position: fixed;
  width: 100%;
  height: 100vh;
  background: linear-gradient(180deg, #FAEFE1 0%, rgba(255, 192, 181, 1) 100%);
  max-width: 390px;
  z-index: 100;
  top: 0;
}
.c-hamburger__nav.is-active{
  max-width: initial;
}


/* responsive */
@media screen and (max-width: 1080px){
  .l-pcHeader{
    display: none!important;
  }
}
@media screen and (max-width: 768px){
  .l-pcContents{
    display: none;
  }
  .c-hamburger{
    position: fixed;
    right: 20px;
    top: 32px;
    width: max-content;
  }
}
@media screen and (min-width: 769px){
.l-pcContents{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.c-hamburger__nav.is-active{
  max-width: 390px;
  top: 0;
}

.c-hamburger__wrap{
  position: absolute;
  top: 0;
  right: 0;
  width: 390px;
  left: 0;
  margin: 0 auto;
  z-index: 101;
  cursor: pointer;
}

.c-hamburger img{
  margin-left: auto;
  position: relative;
  right: 20px;
}

.l-spContents{
  position:relative;
  background-color:#FFE6E6;
  width:390px;
  height:100%;
  color:#4B3A45;
  z-index: 3;
  margin: 0 180px 0 auto;
}

/* // header */
.l-pcHeader{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: absolute;
  top: 0;
  left: calc((50% - 390px) - 180px);
  height: 100%;
  gap: 54px;
  align-items: center;
  justify-content: center;
}

.l-pcHeader__logo{
  width: max-content;
  margin: 0 auto 24px;
}

.l-pcHeader ul{
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.l-pcHeader ul li a{
  font-size:16px;
  font-weight: bold;
  line-height: 32px;
  color: #4B3A45;
  text-decoration: none;
}


.l-pcHeader ul li a:hover{
  text-decoration: underline;
}

/* // footer */
.l-pcFooter{
  position: absolute;
  bottom: 0;
  right: 20px;
  height: 100%;
  display:flex;
  align-items:flex-end;
}
}


/* swiper */
/* スライドショーの大きさを設定 */
.swiper {
  position: relative;
  width: 100%;
  height: auto;
}
.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  position:absolute;
  right:0;
  margin-top:183px;
}
.swiper-slide img{
  width: 364px;
  height: 364px;
  position: relative;
  right:-56px;
}
.swiper-wrapper{
  max-width: 390px;
  margin: 0 auto;
}

/* component */

.c-button {
  text-align: center;
  margin-top: 40px;
}
.c-button a {
  background-color: #fff;
  font-weight: bold;
  color: #FF809F;
  font-size: 16px;
  padding: 10px 20px;
  border: 1px solid #FF809F;
  border-radius: 24px;
  width:100%;
  display: block;
  text-decoration: none;
  transition: background-color 0.3s ease;
}
.c-button a:hover {
  opacity: 0.7;
}


/* main */

main{
  overflow-x: hidden;
}
.p-top__sns{
  margin-bottom: 24px;
}
.p-top__sns__title{
  text-align: center;
  margin-bottom: 12px;
  letter-spacing: 1px;
  color:#4B3A45;
}
.p-top__sns__block{
  display: flex;
	justify-content: center;
  gap:16px;
}

.p-title{
  background: linear-gradient(180deg, #FAEFE1 0%, rgba(255, 192, 181, 0.1) 100%);
  height: 280px;
	padding-top:50px;
}

/* mainvisual */
.p-mainvisual{
  background: linear-gradient(180deg, #FAEFE1 0%, rgba(255, 192, 181, 0.1) 100%);
  height: 684px;
  position:relative;
}
.p-mainvisual__parts{
  position: relative;
  z-index: 10;
}
.p-mainvisual__parts img{
  position: absolute;
}
.p-mainvisual__parts img:nth-of-type(1){
  top:173px;
  left:60px;
}
.p-mainvisual__parts img:nth-of-type(2){
  top:153px;
  right: -30px;
}
.p-mainvisual__parts img:nth-of-type(3){
  top:236px;
  left: -40px;
}
.p-mainvisual__parts img:nth-of-type(4){
  top:358px;
  left: 7px;
}
.p-mainvisual__parts img:nth-of-type(5){
  top:420px;
  right: -16px;
}
.p-mainvisual__parts img:nth-of-type(6){
  top:480px;
  left: -5px;
}
.p-mainvisual__parts img:nth-of-type(7){
  top:571px;
  right: 29px;
}
.p-mainvisual__parts img:nth-of-type(8){
  top:626px;
  left: 111px;
}

/* お知らせ */
.p-news{
	position: relative;
  background-color: #FFA6A6;
  padding: 40px 20px;
}
.p-news .sakura{
	position: absolute;
	top:-60px;
}
.p-news__title{
  color: #fff;
  display: flex;
  gap: 16px;
  margin-bottom: 16px;
  align-items: center;
  justify-content: flex-start;
  white-space: nowrap;
}
.p-news__list{
  display: flex;
  flex-direction: column;
  gap:24px 16px;
  overflow-y: auto;
  height: 200px;
}
.p-news__item{
  line-height: 24px;
  padding-right: 8px;
}
.p-news__item__top{
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 16px;
}
.p-news__item__top time{
}
.p-news__item__title{
  font-weight: bold;
}
.p-news__item p{
  color: #fff;
  font-size: 16px;
}

/* 園の教育・大切にしている事 */
.p-motto{
  padding: 80px 24px;
}
.p-motto__container {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.p-motto__item {
  width: calc((100% / 2) - 6px);
}
.p-motto__item img {
  width: 100%;
  height: auto;
  display: block;
}

/* 園の1日 */
.p-theday__section{
  background-color: #FAEFE1;
  padding: 64px 0;
}
.p-theday__scroll-container {
  display: flex;
  overflow-x: auto;
  scroll-behavior: none;
  gap: 12px;
}
.p-theday__scroll-item {
  flex: 0 0 342px;
  flex-grow: 1;
  display: flex;
}
.p-theday__scroll-item:first-of-type {
  padding-left: 24px;
}
.p-theday__scroll-item:last-of-type {
  padding-right: 24px;
}
.p-theday__scroll-item img{
  height: 388px;
  width: 342px;
}

/* 年間のおもな行事 */
.p-event__section{
  padding: 80px 0 0;
}
.p-event__img{
  width: 100%;
  margin-top: 16px;
}
.p-event__section p{
  padding:0 24px;
  line-height: 24px;
  text-align: center;
}

/* クラスと先生 */
.p-class__section{
  padding: 80px 0 0;
}
.p-class__img{
  width: 100%;
  margin-top: 16px;
}
.p-class__section p{
  padding:0 24px;
  line-height: 24px;
  text-align: center;
}

/* さくらっこクラブ・さくら学童クラブ */
.p-parentclass__section{
  padding: 80px 0 0;
}
.p-parentclass__img{
  width: 100%;
  margin-top: 16px;
}
.p-parentclass__img + .p-parentclass__img{
  margin-top: 16px;
}
.p-parentclass__section p{
  padding:0 24px;
  line-height: 24px;
  text-align: center;
}

/* 入学案内 */
.p-entry__section{
  padding: 64px 0;
}
.p-entry__img{
  width: 100%;
  margin-bottom: 32px;
}
.p-entry__section p{
  padding:0 24px;
  line-height: 24px;
  text-align: center;
}
.p-entry__button{
  padding:0 24px;
}

/* スクールバス */
.p-schoolbus__section{
  background: url('file:///C|/Users/doi/Desktop/クライアント/桜幼稚園/img/schoolbus-bg.png');
}
.p-schoolbus__section__inner{
  padding: 32px 24px;
  background-image: repeating-linear-gradient(90deg, #ffc471, #ffc471 7px, transparent 7px, transparent 14px), repeating-linear-gradient(90deg, #ffc471, #ffc471 7px, transparent 7px, transparent 14px);
  background-position: left top, left bottom;
  background-repeat: repeat-x, repeat-x;
  background-size: 100% 3px, 100% 3px;
}
.p-schoolbus__img{
  width: 100%;
  margin-top: 16px;
}
.p-schoolbus__section p{
  padding:0 24px;
  line-height: 24px;
  text-align: center;
}

/* よくあるご質問 */
.p-faq__section{
  padding: 64px 24px;
}
.p-faq__accordion {
  border-radius: 8px;
  overflow: hidden;
  margin: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.p-faq__accordion-item {
  border: 1px solid #FF809F;
  border-radius: 16px;
  background-color: #fff;
  font-size: 14px;
}
.p-faq__accordion-header {
  padding: 14px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  user-select: none;
}
.p-faq__accordion-header + .p-faq__accordion-content  {
  border-top: 1px solid #FF809F;
}
.p-faq__accordion-content {
  padding: 16px;
  display: none;
  background-color: #fff;
  user-select: none;
  border-radius: 0 0 16px 16px;
}
.p-faq__accordion-icon {
  font-size: 13px;
  font-weight: bold;
  border: 1px solid #FF809F;
  border-radius: 24px;
  width: 20px;
  height: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #FF809F;
  color: #fff;
}

/* お問い合わせ */
.p-contact__section{
  padding: 40px 24px;
  background-color: #fff;
}
.p-contact__block{
  display: flex;
  align-items: center;
  gap:24px;
  margin-bottom: 20px;
}
.p-contact__block:first-of-type{

}
.p-contact__button{
  margin-top: 0;
  flex: 1;
}
.p-contact__button a{
  position: relative;
  color: #fff;
  background-color: #FF809F;
  letter-spacing: 2px;
}
.p-contact__button a.tel::before{
  content: '';
  background:url('../img/img-tel.svg');
  width: 16px;
  height: 21px;
  display: inline-block;
  margin-right: 8px;
  position: relative;
  top: 4px;
}
.p-contact__button a.mail::before{
  content: '';
  background:url('../img/img-mail.svg');
  width: 24px;
  height: 24px;
  display: inline-block;
  margin-right: 8px;
  position: relative;
  top: 4px;
}

/* 登録団体 */
.p-register-organized__section{
  padding: 40px 24px;
  border-top: 1px solid #F1E5E7;
}
.p-register-organized__title{
  margin-bottom: 24px;
}
.p-register-organized__block{
  text-align: center;
}
.p-register-organized__block a{
  text-decoration: underline;
}

.more-button {
  text-align: center;
  margin-top: 20px;
}
.more-button button {
  background-color: #ffe4e1;
  color: #FF809F;
  font-size: 1.2em;
  padding: 10px 20px;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: background-color 0.3s ease;
}
.more-button button:hover {
  background-color: #FF809F;
  color: #fff;
}


/* animation */
.animate-yurayura1 {
  transform-origin: center bottom;
  animation: yurayura 3s linear infinite, fadeInAnimation 0.5s ease-in forwards;
}
.animate-yurayura2 {
  transform-origin: center bottom;
  animation: yurayura 2.5s linear infinite, fadeInAnimation 1s ease-in forwards;
}
.animate-yurayura3 {
  transform-origin: center bottom;
  animation: yurayura 1.5s linear infinite, fadeInAnimation 2s ease-in forwards;
}
.animate-yurayura4 {
  transform-origin: center bottom;
  animation: yurayura 2s linear infinite, fadeInAnimation 1.5s ease-in forwards;
}
/* keyframes */
@keyframes yurayura {
  0%, 100% {
    transform: rotate(2deg);
  }
  50% {
    transform: rotate(-2deg);
  }
}
@keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* svg */
/***************************************************
 * Generated by SVG Artista on 9/1/2024, 1:14:10 AM
 * MIT license (https://opensource.org/licenses/MIT)
 * W. https://svgartista.net
 **************************************************/

.mainvisual-svg .svg-elem-1 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.8s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.8s;
}

.mainvisual-svg.active .svg-elem-1 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-2 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.9s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 0.9s;
}

.mainvisual-svg.active .svg-elem-2 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-3 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1s;
}

.mainvisual-svg.active .svg-elem-3 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-4 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.1s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.1s;
}

.mainvisual-svg.active .svg-elem-4 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-5 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.2000000000000002s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.2000000000000002s;
}

.mainvisual-svg.active .svg-elem-5 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-6 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.3s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.3s;
}

.mainvisual-svg.active .svg-elem-6 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-7 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.4000000000000001s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.4000000000000001s;
}

.mainvisual-svg.active .svg-elem-7 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-8 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.5s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.5s;
}

.mainvisual-svg.active .svg-elem-8 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-9 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.6s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.6s;
}

.mainvisual-svg.active .svg-elem-9 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-10 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.7000000000000002s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.7000000000000002s;
}

.mainvisual-svg.active .svg-elem-10 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-11 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.8s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.8s;
}

.mainvisual-svg.active .svg-elem-11 {
  fill: rgb(75, 58, 69);
}

.mainvisual-svg .svg-elem-12 {
  fill: transparent;
  -webkit-transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.9000000000000001s;
          transition: fill 2.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) 1.9000000000000001s;
}

.mainvisual-svg.active .svg-elem-12 {
  fill: rgb(75, 58, 69);
}


/* fadein animation */
.fade-in {
  opacity: 0;
  transition-duration: 800ms;
  transition-property: opacity, transform;
}

.fade-in-up {
  transform: translate(0, 50px);
}

.fade-in-down {
  transform: translate(0, -50px);
}

.fade-in-left {
  transform: translate(-50px, 0);
}

.fade-in-right {
  transform: translate(50px, 0);
}

.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}


/* 下層ページ */
.main-section {
  padding: 150px 24px 64px;
  border-top: 1px solid #F1E5E7;
}
.main-section-title {
  margin-bottom: 24px;
}
.main-section-block {
  text-align: left;
}
.main-section-block h4{
	font-size:1.25em;
	line-height:1.4;
	margin:0.7em 0 0.5em;
}
.main-section-block h4 span{
	font-size:16px;
}
.main-section-block p{
	margin:0.5em 0;
}
.main-section-block a {
  text-decoration: underline;
}


.sub-section {
  padding: 150px 24px 64px;
  border-top: 1px solid #F1E5E7;
  background-color: #FAEFE1;
}
.sub-section-title {
  margin-bottom: 24px;
}
.sub-section-block {
  text-align: left;
}
.sub-section-block h4{
	font-size:1.05em;
	line-height:1.3;
	margin:0.7em 0 0;
}
.sub-section-block p{
	margin:0.5em 0;
}
.sub-section-block a {
  text-decoration: underline;
}


/* contact */

.ctt_box01 {
	text-align:center;
	height:763px;
	margin:0 auto;
	background-size:cover;
	width: 100%;
}

.ctt_box01 dl{
	max-width:800px;
  	width: 100%;
	margin:0 auto;
	text-align:left;
	padding:25px 0 0 0;
}


.ctt_box01 dt{
	text-align:center;
	display:block;
	clear:both;
	float:left;
	width:180px;
	height:24px;
	color:#FFF;
	margin:0 0 45px 0;
	padding:2px 0px 2px 0px;
	background-color: #FF809F;
	border-radius: 11px;
}

.ctt_box01 dd{
	display:block;
	max-width:720px;
  width: 100%;
	height:26px;
	padding:0px 0 2px 0;
	margin: 0 0 45px 120px;
}

.ctt_box01 dd.dd_a{
	display:block;
	max-width:720px;
	width: 100%;
	height:26px;
	padding:0px 0 2px 0;
	margin: 0 0 95px 120px;
}

.ctt_box01 dd.dd_b{
	display:block;
	max-width:720px;
	width: 100%;
	height:133px;
	padding:0px 0 2px 0;
	margin: 0 0 45px 120px;
}

.ctt_box01 dd input.inp01{
	background:#FFFFFF;
	border-radius:11px;
	height:32px;
	border:none;
	max-width:590px;
	width: 100%;
	padding-left:20px;
}

.ctt_box01 dd input.inp02{
	background:#FFFFFF;
	border-radius:11px;
	height:32px;
	border:none;
	max-width:590px;
	width: 100%;
	padding-left:20px;
}
.ctt_box01 dd input.inp03{
	background:#FFFFFF;
	border-radius:11px;
	height:32px;
	border:none;
	max-width:590px;
	width: 100%;
	padding-left:20px;
	margin-bottom:15px;
}
.ctt_box01 dd input.inp04{
	background:#FFFFFF;
	border-radius:11px;
	height:32px;
	border:none;
	max-width:200px;
	width: 100%;
	padding-left:20px;
	margin-bottom:15px;
}

.ctt_box01 dd input.inp05{
	background:#FFFFFF;
	border-radius:11px;
	height:32px;
	border:none;
	width:90px;
	padding-left:20px;
	margin-bottom:15px;
}

.ctt_box01 dd textarea{
	background:#FFFFFF;
	border-radius:11px;
	height:135px;
	border:none;
	max-width:590px;
	width: 100%;
	padding-left:20px;
	margin-bottom:15px;
}

.ctt_box01 dd span{
	color:#6f6e6a;}

.ctt_box01 dd span.sp1{
	color:#fff;
	padding:0 15px;}

	
.ctt_box01 .btn{
	margin:0 auto;
	max-width:735px;
	width: 100%;
	text-align:right;
	padding:0 65px 0 0;
}

.msg_main {
	width: 620px;
	margin: 0 auto;
	padding: 24px 0 12px;
	line-height: 1.6;
	text-align:left;
}

.buttons input{
    background-color: #4B3A45 !important;
    background-color: #fff;
    border: 1px solid #ccc;
    color: #fff;
    line-height: 2;
    width: 500px;
    margin: 0 auto;
    display: block;
    margin-top: 60px;
    padding: 10px 0;
}

    .ctt_box01 {
        height: auto;
        padding: 0 0 40px 0;
    }

    .ctt_box01 dl {
        width: 96%;
    }

    .ctt_box01 dt {
        float: initial;
        margin: 0;
        margin-bottom: 10px;
        margin-top: 30px;
    }

    .ctt_box01 dd {
        margin: 0;
        max-width: 720px;
        width: 100%;
    }

    .ctt_box01 dd input.inp01 {
        padding: 0;
    }

    .ctt_box01 dd input.inp02 {
        padding: 0;
    }

    .ctt_box01 dd input.inp03 {
        padding: 0;
    }

    .ctt_box01 dd.dd_a {
        margin-bottom: 80px;
        margin-left: 0;
    }

    .ctt_box01 dd.dd_b {
        margin: 0;
        padding: 0;
    }

    .ctt_box01 dd span.sp1 {
        padding: 0 5px;
    }

    .ctt_box01 dd input.inp05 {
        padding: 0;
        width: 25%;
    }

    .ctt_box01 dd textarea {
        margin: 0;
        padding: 0;
    }

    .ctt_box01 .btn {
        margin-top: 20px;
        padding: 0;
        text-align: center;
    }
    .buttons input{
        width: 300px;
        margin-top: 30px;
    }


.next {
	margin:30px 0 ;
	border-top:#f00 2px dotted;
	border-bottom:#f00 2px dotted;
	padding:8px;
}
.next dt{
	font-weight:bold;
	font-size:1.05em;
	line-height:1.6;
	padding-top:0.8px;
}
.next dd{
	margin:0.1em;
	padding-left:1em;
}


.guide {
	margin:18px 0 36px;
}
.guide dt{
	font-weight:bold;
	font-size:1.05em;
	line-height:1.6;
	padding-top:0.75em;
}
.guide dd{
	margin:0.1em;
	padding-left:0.5em;
}

table.tbl {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 14px;
}
table.tbl th {
  width: 22%;
  background: #FF809F;
  color:#fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 0.5em;
  vertical-align: middle;
  font-size: 1.1em;
  font-weight: bold;
  text-align: center;
}
table.tbl td {
  background: #fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 0.5em;
  vertical-align: top;
  text-align: left;
}

table.tbl th, table.tbl td {
display: block;
width: 100%;
border-bottom: none;
}
table.tbl tr:last-child td:last-child {
border-bottom: 1px solid #ccc;
}

.info-add {
	padding:0 1em 0.5em;
	margin:0;
	line-height:1.4;
}
.info-add b{
	font-size:1.2em;
}
.info-add a{
	color:#00f;
}

.sample08 .box {
  display: flex;
  flex-direction: column;
  margin-bottom:30px;
}
 
.sample08 .box .img {
  padding:10px 20px;
  flex-shrink: 0;
	margin-bottom:30px;
}

.sample08 .box img {
  width:100%;
  height:auto;
}

/* ❷ */
.sample08 .box .desc {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
}
 
 .sample08 .box .desc .ttl {
         font-size: 20px;
        font-weight: bold;
        line-height: 32px;
}

.illust {
	padding:0;
}
.illust img{
	max-width:200px;
	height:auto;
}

.club-leaflet {
	display: block;
	width:80%;
	max-width:320px;
	height:auto;
	margin:10px auto;
	border:#aaa 1px solid;
}

.history {
	font-family: "Zen Maru Gothic", sans-serif;
	margin:0 auto 24px;
}

.history dt{
	position: relative;
	margin:0.75em 0 0 0;
	padding:0;
	line-height:1.6;
	font-size:18px;
	font-weight:bold;
	letter-spacing: 0.12em;
}
.history dt:before{
	width:40px;
	height:40px;
	position:absolute;
	content: url("../img/sakura.svg");
	left:-20px;
	top:-10px;
	z-index: -1;
}
.history dd{
	margin:0;
	padding:0.25em 0.25em 0.5em 0.75em;
	line-height:1.6;
	font-size:15px;
	font-weight:400;
}

.sp-txt {
	font-weight:bold;
	font-size:17px;
	margin:0 0 0.75em;
	text-align: center;
}
.sp-txt a{
	color:#fff;
}

.icon-center a{
	text-align: center;
}
.icon-center a img{
	margin:0 auto;
}

.c-carousel {
  position: relative;
  width: 290px;
  margin: 0 auto;
}
.c-carousel__activator-main {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__main {
  overflow: hidden;
  position: relative;
}
.c-carousel__main-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__main-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__main-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__main-control-item {
  display: none;
}
.c-carousel__btn-prev-main, .c-carousel__btn-next-main {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-main {
  right: auto;
  left: 0;
}

.c-carousel__activator-main:nth-child(1):checked ~ .c-carousel__main .c-carousel__main-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-main:nth-child(2):checked ~ .c-carousel__main .c-carousel__main-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-main:nth-child(3):checked ~ .c-carousel__main .c-carousel__main-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-main:nth-child(4):checked ~ .c-carousel__main .c-carousel__main-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-main:nth-child(1):checked ~ .c-carousel__main .c-carousel__main-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-main:nth-child(2):checked ~ .c-carousel__main .c-carousel__main-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-main:nth-child(3):checked ~ .c-carousel__main .c-carousel__main-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-main:nth-child(4):checked ~ .c-carousel__main .c-carousel__main-track {
  transform: translateX(calc(-100% * 3));
}

/* en */

.c-carousel__activator-en {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__en {
  overflow: hidden;
  position: relative;
}
.c-carousel__en-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__en-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__en-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__en-control-item {
  display: none;
}
.c-carousel__btn-prev-en, .c-carousel__btn-next-en {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-en {
  right: auto;
  left: 0;
}

.c-carousel__activator-en:nth-child(1):checked ~ .c-carousel__en .c-carousel__en-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-en:nth-child(2):checked ~ .c-carousel__en .c-carousel__en-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-en:nth-child(3):checked ~ .c-carousel__en .c-carousel__en-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-en:nth-child(4):checked ~ .c-carousel__en .c-carousel__en-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-en:nth-child(1):checked ~ .c-carousel__en .c-carousel__en-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-en:nth-child(2):checked ~ .c-carousel__en .c-carousel__en-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-en:nth-child(3):checked ~ .c-carousel__en .c-carousel__en-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-en:nth-child(4):checked ~ .c-carousel__en .c-carousel__en-track {
  transform: translateX(calc(-100% * 3));
}

/* music */
.c-carousel__activator-music {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__music {
  overflow: hidden;
  position: relative;
}
.c-carousel__music-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__music-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__music-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__music-control-item {
  display: none;
}
.c-carousel__btn-prev-music, .c-carousel__btn-next-music {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-music {
  right: auto;
  left: 0;
}

.c-carousel__activator-music:nth-child(1):checked ~ .c-carousel__music .c-carousel__music-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-music:nth-child(2):checked ~ .c-carousel__music .c-carousel__music-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-music:nth-child(3):checked ~ .c-carousel__music .c-carousel__music-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-music:nth-child(4):checked ~ .c-carousel__music .c-carousel__music-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-music:nth-child(1):checked ~ .c-carousel__music .c-carousel__music-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-music:nth-child(2):checked ~ .c-carousel__music .c-carousel__music-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-music:nth-child(3):checked ~ .c-carousel__music .c-carousel__music-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-music:nth-child(4):checked ~ .c-carousel__music .c-carousel__music-track {
  transform: translateX(calc(-100% * 3));
}

/* rhythm */
.c-carousel__activator-rhythm {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__rhythm {
  overflow: hidden;
  position: relative;
}
.c-carousel__rhythm-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__rhythm-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__rhythm-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__rhythm-control-item {
  display: none;
}
.c-carousel__btn-prev-rhythm, .c-carousel__btn-next-rhythm {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-rhythm {
  right: auto;
  left: 0;
}

.c-carousel__activator-rhythm:nth-child(1):checked ~ .c-carousel__rhythm .c-carousel__rhythm-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-rhythm:nth-child(2):checked ~ .c-carousel__rhythm .c-carousel__rhythm-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-rhythm:nth-child(3):checked ~ .c-carousel__rhythm .c-carousel__rhythm-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-rhythm:nth-child(4):checked ~ .c-carousel__rhythm .c-carousel__rhythm-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-rhythm:nth-child(1):checked ~ .c-carousel__rhythm .c-carousel__rhythm-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-rhythm:nth-child(2):checked ~ .c-carousel__rhythm .c-carousel__rhythm-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-rhythm:nth-child(3):checked ~ .c-carousel__rhythm .c-carousel__rhythm-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-rhythm:nth-child(4):checked ~ .c-carousel__rhythm .c-carousel__rhythm-track {
  transform: translateX(calc(-100% * 3));
}

/* yamameayu */
.c-carousel__activator-yamameayu {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__yamameayu {
  overflow: hidden;
  position: relative;
}
.c-carousel__yamameayu-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__yamameayu-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__yamameayu-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__yamameayu-control-item {
  display: none;
}
.c-carousel__btn-prev-yamameayu, .c-carousel__btn-next-yamameayu {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-yamameayu {
  right: auto;
  left: 0;
}

.c-carousel__activator-yamameayu:nth-child(1):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-yamameayu:nth-child(2):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-yamameayu:nth-child(3):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-yamameayu:nth-child(4):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-yamameayu:nth-child(1):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-yamameayu:nth-child(2):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-yamameayu:nth-child(3):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-yamameayu:nth-child(4):checked ~ .c-carousel__yamameayu .c-carousel__yamameayu-track {
  transform: translateX(calc(-100% * 3));
}

/* uma */
.c-carousel__activator-uma {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__uma {
  overflow: hidden;
  position: relative;
}
.c-carousel__uma-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__uma-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__uma-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__uma-control-item {
  display: none;
}
.c-carousel__btn-prev-uma, .c-carousel__btn-next-uma {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-uma {
  right: auto;
  left: 0;
}

.c-carousel__activator-uma:nth-child(1):checked ~ .c-carousel__uma .c-carousel__uma-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-uma:nth-child(2):checked ~ .c-carousel__uma .c-carousel__uma-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-uma:nth-child(3):checked ~ .c-carousel__uma .c-carousel__uma-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-uma:nth-child(4):checked ~ .c-carousel__uma .c-carousel__uma-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-uma:nth-child(1):checked ~ .c-carousel__uma .c-carousel__uma-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-uma:nth-child(2):checked ~ .c-carousel__uma .c-carousel__uma-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-uma:nth-child(3):checked ~ .c-carousel__uma .c-carousel__uma-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-uma:nth-child(4):checked ~ .c-carousel__uma .c-carousel__uma-track {
  transform: translateX(calc(-100% * 3));
}

/* chinowa */
.c-carousel__activator-chinowa {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__chinowa {
  overflow: hidden;
  position: relative;
}
.c-carousel__chinowa-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__chinowa-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__chinowa-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__chinowa-control-item {
  display: none;
}
.c-carousel__btn-prev-chinowa, .c-carousel__btn-next-chinowa {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-chinowa {
  right: auto;
  left: 0;
}

.c-carousel__activator-chinowa:nth-child(1):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(2):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(3):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(4):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(4) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(5):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(5) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(6):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(6) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(7):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(7) {
  display: block;
}
.c-carousel__activator-chinowa:nth-child(8):checked ~ .c-carousel__chinowa .c-carousel__chinowa-control-item:nth-child(8) {
  display: block;
}

.c-carousel__activator-chinowa:nth-child(1):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-chinowa:nth-child(2):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-chinowa:nth-child(3):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-chinowa:nth-child(4):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 3));
}
.c-carousel__activator-chinowa:nth-child(5):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 4));
}
.c-carousel__activator-chinowa:nth-child(6):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 5));
}
.c-carousel__activator-chinowa:nth-child(7):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 6));
}
.c-carousel__activator-chinowa:nth-child(8):checked ~ .c-carousel__chinowa .c-carousel__chinowa-track {
  transform: translateX(calc(-100% * 7));
}

/* undou */
.c-carousel__activator-undou {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__undou {
  overflow: hidden;
  position: relative;
}
.c-carousel__undou-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__undou-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__undou-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__undou-control-item {
  display: none;
}
.c-carousel__btn-prev-undou, .c-carousel__btn-next-undou {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-undou {
  right: auto;
  left: 0;
}

.c-carousel__activator-undou:nth-child(1):checked ~ .c-carousel__undou .c-carousel__undou-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-undou:nth-child(2):checked ~ .c-carousel__undou .c-carousel__undou-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-undou:nth-child(3):checked ~ .c-carousel__undou .c-carousel__undou-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-undou:nth-child(4):checked ~ .c-carousel__undou .c-carousel__undou-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-undou:nth-child(1):checked ~ .c-carousel__undou .c-carousel__undou-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-undou:nth-child(2):checked ~ .c-carousel__undou .c-carousel__undou-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-undou:nth-child(3):checked ~ .c-carousel__undou .c-carousel__undou-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-undou:nth-child(4):checked ~ .c-carousel__undou .c-carousel__undou-track {
  transform: translateX(calc(-100% * 3));
}

/* karate */
.c-carousel__activator-karate {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__karate {
  overflow: hidden;
  position: relative;
}
.c-carousel__karate-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__karate-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__karate-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__karate-control-item {
  display: none;
}
.c-carousel__btn-prev-karate, .c-carousel__btn-next-karate {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-karate {
  right: auto;
  left: 0;
}

.c-carousel__activator-karate:nth-child(1):checked ~ .c-carousel__karate .c-carousel__karate-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-karate:nth-child(2):checked ~ .c-carousel__karate .c-carousel__karate-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-karate:nth-child(3):checked ~ .c-carousel__karate .c-carousel__karate-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-karate:nth-child(4):checked ~ .c-carousel__karate .c-carousel__karate-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-karate:nth-child(1):checked ~ .c-carousel__karate .c-carousel__karate-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-karate:nth-child(2):checked ~ .c-carousel__karate .c-carousel__karate-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-karate:nth-child(3):checked ~ .c-carousel__karate .c-carousel__karate-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-karate:nth-child(4):checked ~ .c-carousel__karate .c-carousel__karate-track {
  transform: translateX(calc(-100% * 3));
}

/* birthday */
.c-carousel__activator-birthday {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.c-carousel__birthday {
  overflow: hidden;
  position: relative;
}
.c-carousel__birthday-track {
  display: flex;
  white-space: nowrap;
  transition: transform 0.3s ease-out;
}
.c-carousel__birthday-item {
  flex-shrink: 0;
  width: 100%;
}
.c-carousel__birthday-image {
  display: block;
  width: 100%;
	max-width:290px;
	height:auto;
}

.c-carousel__birthday-control-item {
  display: none;
}
.c-carousel__btn-prev-birthday, .c-carousel__btn-next-birthday {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  background-color: #000;
  border-radius: 50%;
  transition: opacity 0.3s;
  cursor: pointer;
}
.c-carousel__btn-prev-birthday {
  right: auto;
  left: 0;
}

.c-carousel__activator-birthday:nth-child(1):checked ~ .c-carousel__birthday .c-carousel__birthday-control-item:nth-child(1) {
  display: block;
}
.c-carousel__activator-birthday:nth-child(2):checked ~ .c-carousel__birthday .c-carousel__birthday-control-item:nth-child(2) {
  display: block;
}
.c-carousel__activator-birthday:nth-child(3):checked ~ .c-carousel__birthday .c-carousel__birthday-control-item:nth-child(3) {
  display: block;
}
.c-carousel__activator-birthday:nth-child(4):checked ~ .c-carousel__birthday .c-carousel__birthday-control-item:nth-child(4) {
  display: block;
}

.c-carousel__activator-birthday:nth-child(1):checked ~ .c-carousel__birthday .c-carousel__birthday-track {
  transform: translateX(calc(-100% * 0));
}
.c-carousel__activator-birthday:nth-child(2):checked ~ .c-carousel__birthday .c-carousel__birthday-track {
  transform: translateX(calc(-100% * 1));
}
.c-carousel__activator-birthday:nth-child(3):checked ~ .c-carousel__birthday .c-carousel__birthday-track {
  transform: translateX(calc(-100% * 2));
}
.c-carousel__activator-birthday:nth-child(4):checked ~ .c-carousel__birthday .c-carousel__birthday-track {
  transform: translateX(calc(-100% * 3));
}

.ttlimg {
	width:100%;
	max-width:50px;
	height:auto;
	display: inline-block;
	margin:0 5px;
	vertical-align: bottom;
}

.ttlimgh {
	height:100% !important;
	max-height:90px !important;
	width:auto !important;
	display: inline-block;
	margin:0 5px;
	vertical-align: bottom;
}

.flex-edge {
	width:90%;
	margin:0 auto;
	display:flex;
	justify-content: space-between;
}

.list-img {
	display: flex;
	justify-content: center;
	gap:5px;
}
.list-img img{
	display: inline-block;
	vertical-align: bottom;
	height:80px;
	width:auto;
}

.sec-annai {
	position: relative;
}

.img-foot {
}

.root-info {
	margin:1em 0;
}
.root-info dt{
	font-size:18px;
	font-weight:600;
}
.root-info dd{
	padding:0.5em;
}

.root-info-foot {
	margin:0.25em 1em;
}
.root-info-foot dt{
	font-size:15px;
	font-weight:600;
}
.root-info-foot dd{
	font-size:14px;
	padding:0.5em;
}

.map {
	width:100%;
	height:auto;
	margin:5px;
}
