@charset "UTF-8";
/* CSS Document */

body{background-color: #4dcee4; margin: 0;
/*background-image: url("img/gold_bg.jpg");
background-repeat: repeat; 
background-size: 200px; 
background-position: center;*/
font-family: 'M PLUS Rounded 1c', sans-serif;
}

html {
    scroll-padding-top: 70px;
}

img {
	max-width: inherit!important; 
	height: auto; /* Make sure images are scaled correctly. */
	border: 0;
}

.main{margin: 0 auto;}

/* animate delay*/
.animate__delay-01s {animation-delay: calc(var(--animate-delay) * 0.1);}
.animate__delay-02s {animation-delay: calc(var(--animate-delay) * 0.2);}
.animate__delay-03s {animation-delay: calc(var(--animate-delay) * 0.3);}
.animate__delay-04s {animation-delay: calc(var(--animate-delay) * 0.4);}
.animate__delay-05s {animation-delay: calc(var(--animate-delay) * 0.5);}
.animate__delay-06s {animation-delay: calc(var(--animate-delay) * 0.6);}
.animate__delay-07s {animation-delay: calc(var(--animate-delay) * 0.7);}
.animate__delay-08s {animation-delay: calc(var(--animate-delay) * 0.8);}
.animate__delay-09s {animation-delay: calc(var(--animate-delay) * 0.9);}


/*Google font*/
.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.noto-sans-<uniquifier> {
  font-family: "Noto Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}


.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

.poppins-thin {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.poppins-extralight {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.poppins-light {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.poppins-regular {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.poppins-medium {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.poppins-semibold {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.poppins-bold {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.poppins-extrabold {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.poppins-black {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.poppins-thin-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.poppins-extralight-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 200;
  font-style: italic;
}

.poppins-light-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.poppins-regular-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.poppins-medium-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.poppins-semibold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-style: italic;
}

.poppins-bold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.poppins-extrabold-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 800;
  font-style: italic;
}

.poppins-black-italic {
  font-family: "Poppins", sans-serif;
  font-weight: 900;
  font-style: italic;
}


.pc{ display:inline;}
.mp{ display:none;}
.mpsp{ display:none;}
.mw767{display:none;}
.mw600{ display:none;}
.sp{display:none;}


/*a:link,
a:visited {color:#F36;text-decoration:none;}
a:active,
a:hover {color:#F36;text-decoration:underline;}*/

a img:hover{opacity: 0.72;}


@media screen and (min-width: 1300px) {
}

/*トップエリア*/

#access div ul{z-index: 99;}
#access > div > ul > li, #access > div > ul > li > a{font-family: "Poppins", sans-serif!important;font-weight: 700!important;font-style: normal!important; font-size: 22px; padding: 0 10px; margin-right: 5px;}
 nav#mobile-menu a{font-weight: 700!important; } 

.header-image{background-image: url(img/cropped-index.jpg);}

.header-center{ width: 100%; margin-top: -50px;}
.header-bottom{ width: 100%;position: absolute; bottom: 0%;}

#header-page-title h2.entry-title{font-size: 50px;}
#header-page-title .byline{font-size: 22px;padding-top: 10px;}

#header-page-title h2.entry-title,
#header-page-title .byline {text-align: left!important; margin: 0;
}

.header-icon:first-child{position: absolute; left: 3%; bottom: 20%;}
.header-icon:last-child{ position: absolute; right: 1%; bottom: 7%;height: 250px;}
.header-icon::after { content: " "; display: block; clear: both;}

.fix_icon{position: fixed; display: none; bottom:1.5%; left: 3%;}
.show{display: inline-block; 
  transform: translateY(0);}

.drop_icon{width: 100px; float: left; margin: 0 10px 0px 0;}
.taiken_icon{width: 100px;float: left;margin: 0 0 0 0px;}

.tik_icon{width: 70px; float: left; margin: 0 10px 30px 0;}
.insta_icon{width: 70px; float: left; margin: 0 10px 30px 0;}
.line_icon{width: 70px;float: left;margin: 0 0 30px;}


h2.header-open{font-size: 80px; text-align:right; line-height: 1;font-family: "Poppins", sans-serif;
  font-weight: 700; font-style: italic;float: left; margin: 70px 20px 0 0; color: #fff;}
h2.header-open span{ font-size: 70px; letter-spacing: -0.05em;font-weight: 900; }
.boshu_icon{width: 250px;float: left;}




/*共通*/
h1{ color:#fff; text-align:center;  font-family: "Noto Serif JP", serif; font-weight:900; margin:0; z-index: 10;}
h3{color:#fff; text-align:center; font-family:'M PLUS 1p', sans-serif; font-weight:800;}

/**/
#about,
#trainer,
#price,
#facility,
#contact{width: 100%; padding-top: 50px;}

#about .wrapper,
#trainer .wrapper,
#price .wrapper,
#facility .wrapper,
#contact .wrapper{width: 90%; max-width: 1000px; padding: 0; margin: 0 auto;}



#trainer,
#facility{}

#contact{background-color: #4dcee4;}


#access ul li ul.sub-menu li a {
	font-size: 16px; font-weight: normal;color: #00063a; }
	
#access ul li ul.sub-menu li a:hover {
	font-weight: bold;color: #00063a; }
	
/*ヘッダーサイドメニュー*/
.menu-burger{display: none;}

@media screen and (max-width:900px) {
.menu-burger{display:inline-block;}
ul#top-nav{display: none;}
}

/*共通*/

h1{margin-top: 0!important;}


h1.heading {
  border-bottom: solid 3px #cce4ff;
  position: relative;width: fit-content; margin: 0px auto 30px; padding: 20px 30px 0;
  font-family: "Poppins", sans-serif;
  font-weight: 700; font-size: 50px;
  font-style: normal;
}

h1.heading:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #ed635d;
  bottom: -3px;
  width: 20%;
}

h1.heading span{ font-size: 30px;}




/*plan #about*/
#about{background-color: #00063a; padding-bottom: 100px;
background-image: url("img/plan_bg4.png"),url("img/plan_bg3.png"); background-size:100%,100%; background-repeat: no-repeat; background-position: center top, center bottom;}
#about .wrapper{}


#about .plan::after { content: " "; display: block; clear: both;}

#h-plan,
#p-plan{width: fit-content; margin: 25px auto;}
#h-plan{padding: 50px 0 100px;}
#p-plan{padding-top: 50px;/*background-image: url("img/plan_bg2.png"); background-size:80%; background-repeat: no-repeat; background-position: left top;*/}

#about .fade-hr {
  border: none;
  height: 3px;
  background: linear-gradient(
    to right,
    rgba(204, 228, 255, 0),
    rgba(204, 228, 255, 0.25) 20%,
    rgba(204, 228, 255, 0.5) 50%,
    rgba(204, 228, 255, 0.25) 80%,
    rgba(204, 228, 255, 0)
  );
}


#about .plan h2 {color: #cce4ff;
text-align: center; font-style: italic;}

#about .plan h2 {line-height: 30px;
  font-size: 48px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-align: center;
  margin-bottom: 12px;
}

#about .plan h2 span {
  position: relative;
  display: inline-block;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.3em;
  padding: 0 24px; /* 線と文字の間隔 */
}

#about .plan h2 span::before,
#about .plan h2 span::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 60px;          /* 線の長さ */
  height: 1px;          /* 線の太さ */
  background-color: rgba(242, 242, 242, 0.4);
  transform: translateY(-50%);
}

#about .plan h2 span::before {
  left: -60px;
}

#about .plan h2 span::after {
  right: -60px;
}

.feature-list { border: 1px solid #fff; border-radius: 30px;
  list-style: none;
  padding: 30px 20px 20px;
  margin: 0 auto;width: fit-content; background-color: #cce4ff; 
}
.feature-list::after { content: " "; display: block; clear: both;}
.feature-list li {
  position: relative;
  padding-left: 25px;
  margin: 0 10px 10px; 
  font-size: 18px;
   color: #00063a;
  letter-spacing: 0.05em; 
}

.feature-list {
  display: grid; 
  grid-template-columns: repeat(2, auto);
  justify-content: center;
  gap: 0px 20px;
}

@media (max-width: 768px) {
  .feature-list { padding: 25px 20px 10px;grid-template-columns: 1fr;gap: 6px; }
}
@media (max-width: 600px) {
  .feature-list { padding: 25px 10px 10px 10px;}
}

/* 丸 */
.feature-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 20px;
  height: 20px;
  border: 2px solid #00063a;
  border-radius: 50%;
  transform: translateY(-50%);
}

/* チェック */
.feature-list li::after {
  content: "✓";
  position: absolute;
  left: 4px;
  top: 50%;
  font-size: 14px;
   color: #00063a;
  transform: translateY(-55%);
}


#about .plan h3 {color:#fff; text-align: center; font-size: 24px; line-height: 1.2; margin-bottom: 20px;}
#about .plan p{color: #fff; padding: 20px;}
#about .plan p span{display: inline-block; margin: 0 10px; color:  #cce4ff; font-size: 25px;font-style: italic;}

#about .plan #p-plan p{text-align: center; font-size: 1.2em;}


.price-link {
  display: flex;
  align-items: center;
  gap: 12px;
margin: 50px auto 0; width: fit-content;
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: #ffffff;
  text-decoration: none;

  padding-bottom: 6px;
  border-bottom: 2px solid rgba(200, 40, 40, 0.8);

  transition: opacity 0.3s ease;
}

.price-link:hover {
  opacity: 0.8;
}

/* 矢印 */
.price-link .arrow {
  color: #c82828;
  font-size: 22px;
  line-height: 1;
}

.price-link .arrow {
  transition: transform 0.3s ease;
}

.price-link:hover .arrow {
  transform: translateX(4px);
}


/*TRAINER*/
#trainer .wrapper{}
#trainer .wrapper::after { content: " "; display: block; clear: both;}

.t-main::after { content: " "; display: block; clear: both;}
.t-main{background-image: url("img/takahashi2.jpg"); background-size: 500px; background-repeat: no-repeat; background-position: 0 50px;pointer-events: none; min-height: 800px;}
.takahashi_ph{display: none;}

.t-box{background-color: #ed635d; border-radius: 50px 50px 0 50px; padding: 0px 30px 30px 40px; color: #000; float: right; width: 45%; margin-top: 150px; }

.t-name{background-color: #fff; color: #000; padding: 20px 30px;position: absolute; margin: -50px 0 0 -150px; font-style: italic; width: 400px;}
.t-name span{ font-size: 30px;}

.t-box p{line-height: 1.5;}
.t-box p:first-of-type{margin-top: 140px;}
.t-box p span{font-size: 0.8em;}

.l-box{background-color: #000; margin: 70px auto 100px;width: fit-content; border-radius: 0 50px; }
.l-box::after { content: " "; display: block; clear: both;}
.l-box-left { width: fit-content;  padding: 25px; color: #fff; float: left;padding-top: 12%; text-align: center; font-size: 1.35em; 
font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: italic;}
.licence{width: 350px; float: right; margin: 25px 35px 25px 0;}
.lpc{}
.lsp{display: none;}


/*price*/
#price{background-color: #fff; padding-bottom: 50px;}
#price h1{color: #00063a; }

#price table{ border: 1px solid #00063a;}
#price table tr:first-child td{ background-color: #00063a; color: #fff; text-align: center;
border-right: 1px solid rgba(255,255,255,0.5);}
#price table tr td{border-right: 1px solid rgba(1,11,109,0.3);}
#price table tr td:last-child{border-right: none;}

#price .wrapper::after { content: " "; display: block; clear: both;}

.option,
.others{width: 40%; float: left;}
.option{ margin-right: 50px;}
.option table,
.others table
{}

#price h2{font-size: 20px; }
#price h2 span{font-size: 30px;font-family: "Poppins", sans-serif;
  font-weight: 700;
  font-style: normal;}
#price p{text-align: center;}



/*facility*/
#facility{ padding-bottom: 50px;}
#facility .wrapper{text-align: center;}
#facility h1.heading,
#facility h2,
#facility p,
#facility .contact-text{color: #00063a;}

#facility h2{text-align: center!important;font-size: 30px;font-family: "Poppins", sans-serif;
  font-weight: 700; font-style: normal; width: 100%; line-height: 1.1; margin: 0 auto;}
#facility p{width: fit-content; margin:20px auto 40px; text-align: left;}
#facility iframe{width: 100%;}

img.map_logo{width: 100%; max-width:600px!important;}

/*contact*/
#contact{background-color: #00063a; padding-bottom: 50px;}
#policy {margin: 50px auto;}

#contact,
#contact .contact-text{color: #fff;}

#contact .contact-text{width: fit-content; margin: 0 auto;}
#contact a{display: inline-block; margin: 0 7px;}
#policy h2{color: #ed635d;}

#policy .lp-text-content p:last-child{font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";text-align: right; font-size: 1.2em; margin: 25px 20px 0 0;;}

/*footer*/
#footer{background-color: #000;}
.footer-inside img{width: 50px; margin: 0 5px;}
.footer-inside img:hover{opacity: 0.7;}
#site-copyright{font-style: normal; font-weight: normal;}
#site-copyright p{text-align: center;}
#site-copyright p:last-child{margin-top: 20px;}
#site-copyright p a{color: #fff;}
#site-copyright p a:hover{color: #ed635d;}

/*フォームスタイルのリセット*/

 input,textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-appearance: none;
    max-width: 100%; margin-top: 5px;
  }

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 200px;
    margin: 0;
    border: 0;
    outline: none;
    padding: 0;
    background: transparent;
}

