@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}



main#main {
    padding: 0;
}

.content {
    margin-top: 0;
}

/*タイトルと日付を非表示*/
.page .entry-title {
  display: none;
}

.page .date-tags {
display: none;
}

/* .logo.logo-header.logo-text {
    display: none;
} */

div#header-container {
    display: none;
}

/* h1#archive-title {
    display: none;
} */



.page .entry-title{
margin-top: 0;
}

.main {
    background: transparent;;
   }

.main {
    border: 0;
}

body.home main#main {
    padding-top: 0;
    padding-bottom: 0;
}

body:not(.home) main#main {
    padding-top: 0;
    padding-bottom: 1em;
}



.content-bottom {
    margin-top: -3px;
}



.entry-content {
    margin-top: -2px;
    margin-bottom: 0;
}


/* header.article-header.entry-header {
    display: none;
} */

/* article#post-8 .entry-content {
    margin-top: -23px;
    z-index: 10;
    position: relative;
} */

article#post-8 {
    margin-bottom: 0;
}


article#post-20 {
    margin-bottom: 0;
}

footer#footer {
    display: none;
}

/*パンくず*/
.breadcrumb {
    margin: 0 1em;
}

/*goto*/
.go-to-top-button {
    width: 58px;
    height: 58px;
    border-radius: 30px;
}

.go-to-top {
    z-index: 2;
}

@media (max-width: 1000px) {
.go-to-top {
    right: 20px;
    bottom: 10px;
}
.go-to-top-button {
    width: 52px;
    height: 52px;
}
}

@media (min-width: 1001px) {
.go-to-top {
    right: 280px;
    bottom: 40px;
}
}




.eye-catch-wrap {
    justify-content: center;
}

/*ブログエントリーカード角丸*/
.widget-entry-cards.card-large-image figure img {
    width: 100%;
    display: block;
    border-radius: 10px;
}

.card-thumb img {
    width: 100%;
    border-radius: 10px;
}




/*投稿ページ*/
.single main#main {
    padding-left: 1em;
    padding-right: 1em;
}




figure.wp-block-image.size-full {
    margin-top: 1em;
}

figure.wp-block-image.aligncenter.size-full {
    margin-bottom: 1em;
}



/*表リセット*/
table:not(.has-border-color) :where(th, td) {
    border: 0;
}

table th {
    background-color: transparent;
}

table tr:nth-of-type(2n+1) {
    background-color: transparent;
}




@media screen and (min-width:1001px){
    .sp{
        display: none !important;
    }
}

@media screen and (max-width:1000px){
    .pc{
        display: none !important;
    }
}






@media screen and (min-width: 1001px){
.sp-br {
display:none;
}}

@media screen and (max-width: 1000px){
.sp-br {
display:inline;
}}





/*コンテンツ位置*/
@media screen and (max-width: 1000px){
    div#content-in {
        margin-top: 0;
    }

    .header-backimg {
        position: relative;
    }

div#content-bottom {
    background: #fff;
	padding: 2em 0 3em 0;
}
	
section.foot {
        position: relative;
        margin-top: -5em;
    }	
}

@media screen and (min-width: 1001px){
div#content-in {
    width: 37%;
    position: relative;
    top: 60px;
    right: 270px;
    margin: 0 0 0 auto;
	min-width: 500px;
}

/* .header-backimg {
        width: 37%;
        position: relative;
        top: 60px;
        right: 270px;
        margin: 0 0 0 auto;
        min-width: 500px;
        background-color: rgb(255 255 255 / 0);
        backdrop-filter: blur(8px);
    }	 */
	
.header-backimg {
    width: 37%;
    position: relative;
    top: 60px;
    right: 270px;
    margin: 0 0 0 auto;
	min-width: 500px;
}

div#content-bottom {
    width: 37%;
    position: relative;
    top: 60px;
    right: 270px;
    margin: -1.1em 0 0 auto;
    padding: 0 0 8em 0;
    background: #fff;
	min-width: 500px;
}
	
section.foot {
    width: 37%;
    position: relative;
    top: 60px;
    right: 270px;
    margin: -5em 0 8em auto;
	min-width: 500px;
}	
}










/*画像サイズ*/
.wp-block-image img {
    display: block;
    width: 85%;
    margin: 0 auto;
    max-width: 500px;
}




.pc-top-img-left {
    position: absolute;
    top: 0;
    left: 0;
}

.pc-top-img-left img {
    width: 55%;
}

@media (max-width: 1000px) {
.pc-top-img-left {
    display: none;
}
}




/*header*/
/* .header-backimg {
    position: relative;
} */

.side-right {
    height: 540px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 0 2em;
    background-color: rgba(116, 191, 247, 0.5);
    backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
	overflow: hidden;
}

.side-right::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background-image: radial-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px);
    background-size: 4px 4px;
    pointer-events: none;
	visibility: visible;
}

.side-right h1 {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 38px;
    margin-bottom: 0;
    z-index: 1;
    color: #fff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    letter-spacing: -2px;
    text-align: center;
}

.side-right h1::after {
    content: '';
    position: absolute;
    top: 1.3em;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0.2em;
    background-color: #74bff7;
    border-radius: 9999px;
    z-index: -1;
}





@media screen and (max-width: 1000px){
}

@media screen and (min-width: 1001px){
	
.side-right-blur-layer {
     border: 1px solid #fff; 
     border-radius: 20px 20px 0 0; 
}	
	
.side-right {
    border-radius: 20px 20px 0 0;
    border: 1px solid #fff;
}	
	
.side-right::after {
    border-radius: 20px 20px 0 0;
}	
}



@media screen and (max-width: 1979px){
.side-right-top {
    height: 85vh;
}
}

@media screen and (min-width: 1980px){
.side-right-top {
    height: 80vh;
}
}







@media screen and (max-width: 1000px){
.side-right.bg-about h1 {
    font-size: clamp(1.313rem, 0.554rem + 3.79vw, 2.375rem); /*21,38*/
}
	
.side-right.bg-schedule h1 {
    font-size: clamp(1.438rem, 0.768rem + 3.35vw, 2.375rem); /*23,38*/
}

.side-right.bg-column h1 {
    font-size: clamp(1.625rem, 1.089rem + 2.68vw, 2.375rem); /*26,38*/
}	
	
.side-right.bg-news h1 {
    font-size: clamp(1.813rem, 1.548rem + 1.32vw, 2.375rem); /*29,38*/
}	
	
.side-right.bg-404 h1 {
    font-size: clamp(1.438rem, 0.768rem + 3.35vw, 2.375rem); /*23,38*/
}	
}

@media screen and (min-width: 1001px){
.side-right.bg-about h1 {
    font-size: clamp(1.5rem, 0.075rem + 2.28vw, 2.125rem); /*24,34*/
}
	
.side-right.bg-schedule h1 {
    font-size: clamp(1.625rem, 0.485rem + 1.82vw, 2.125rem); /*26,34*/
}
.side-right.bg-column h1 {
    font-size: clamp(1.875rem, 1.305rem + 0.91vw, 2.125rem); /*30,34*/
}
	
.side-right.bg-404 h1 {
    font-size: clamp(1.625rem, 0.485rem + 1.82vw, 2.125rem); /*26,34*/
}	
}










/* 🔽 白くて透けたブラー用レイヤー */



/* .side-right-blur-layer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    z-index: 0;
    overflow: hidden;
}

.side-right-blur-layer::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background-image: radial-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px);
    background-size: 4px 4px;
    pointer-events: none;
	visibility: visible;
} */



/* 🔽 メインコンテンツ */
.side-right-content {
  position: relative;
  z-index: 2;
  text-align: center;
}

@media (min-width: 1001px) {
.side-right-content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
}

@media (max-width: 1000px) {
.side-right-content {
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
}
}


.side-right-content img {
    width: 90%;
    max-width: 380px;
    margin: 0em 0 2em 0;
}

.side-right-content p {
    color: #fff;
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    font-style: normal;
    line-height: 1.5em;
}

@media (max-width: 1000px) {
.side-right-content p {
    font-size: clamp(1rem, 0.643rem + 1.79vw, 1.5rem); /*16,24*/
}
}

@media (min-width: 1001px) {
.side-right-content p {
    font-size: clamp(1rem, -0.14rem + 1.82vw, 1.5rem); /*16,24*/
}
}





















/*PC_グローバルメニュー*/

@media screen and (max-width: 1000px){
.menu-1-pc {
    display: none;
}
	
ul.gnav-navi-1 li {
    list-style: none;
    padding: 0;
    margin: 0.5em auto;
    text-align: left;
    display: inline-block;
    width: 80%;
    max-width: 320px;
}	
	
ul.gnav-navi-1 li a {
    color: #fff;
    font-size: clamp(1.188rem, 0.964rem + 1.12vw, 1.5rem); /*19,24*/
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    text-decoration: none;
}	
}

@media screen and (min-width: 1001px){
.menu-1-pc {
    background: #74bff7;
    height: 100vh;
    position: fixed;
    right: 0;
    padding: 1.2em;
	z-index: 5;
}
	
ul.gnav-navi-1 li {
        list-style: none;
        padding: 0;
        margin: 0.8em 0;
        line-height: 1.2em;
    }	
	
ul.gnav-navi-1 li:hover {
opacity:0.5;
	transition:0.3s;
}	
	
ul.gnav-navi-1 li a {
    color: #fff;
    font-size: 16px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    text-decoration: none;
}	
}


ul.gnav-navi-1 {
    padding-left: 0;
    text-align: left;
    display: flex;
    flex-direction: column;
}




div#header-content-s nav {
    padding-top: 3em;
}





/*矢印_PC_menu_btn*/
p.menu-1-pc-btn-in-font-1 {
    font-size: 16px;
    line-height: 1.3em;
    text-align: left;
    margin-left: 5px;
}

p.menu-1-pc-btn-in-font-2 {
    font-size: 14px;
    margin-top: -3px;
	margin-left: 5px;
}


.menu-1-pc-btn-in a {
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}



@media screen and (min-width: 1001px){
.menu-1-pc-btn {
    position: absolute;
    bottom: 50px;
    width: 100%;
}	
	
.menu-1-pc-btn-in {
    /* display: inline-block; */
    position: relative;
    background: #fff;
    margin: 1em 0;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
	width: 80%;
}
}

@media screen and (max-width: 1000px){
.menu-1-pc-btn {
        padding-top: 1em;
        padding-bottom: 1em;
    }	
	
.menu-1-pc-btn-in {
    /* display: inline-block; */
    position: relative;
    background: #fff;
    margin: 1em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 80%;
        max-width: 350px;
}
}

.menu-1-pc-btn-in::before {
    content: '';
    width: 6px;
    height: 6px;
    border: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 45%;
    right: 22px;
    z-index: 2;
}

.menu-1-pc-btn-in::after {
    content: '';
    width: 21px;
    height: 21px;
    background-color: #74bff7;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -10px;
    transform: translateZ(0);
    z-index: 1;
}

.menu-1-pc-btn-in:hover {
opacity:0.5;
	transition:0.3s;
}







/*矢印_btn_main*/

.menu-1-pc-btn-in-2 a {
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}


/*new btn-2*/

.menu-1-pc-btn-in-2 {
    position: relative;
    padding: 0.5em 0em;
    width: 90%;
    margin: 0 auto;
    max-width: 500px;
}

.menu-1-pc-btn-in-2:hover {
opacity:0.5;
	transition:0.3s;
}

.menu-1-pc-btn-in-2.top-news {
    bottom: 0;
    position: absolute;
    right: 6%;
    padding: 0.5em 1em;
    width: 100%;
    margin: 0 auto;
    max-width: 500px;
}

.menu-1-pc-btn-in-2.top-news:hover {
opacity:0.5;
	transition:0.3s;
}

.menu-1-pc-btn-in-2-font-1 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5em;
    font-size: 1.2em;
    position: relative;
}

.menu-1-pc-btn-in-2-font-1 p {
    letter-spacing: -1px;
    margin-bottom: 0;
    padding-top: 26px;
    text-align: right;
    padding-right: 10px;
}

.circle-icon {
    display: inline-flex
;
    justify-content: center;
    background-color: #74bff7;
    color: #fff;
    aspect-ratio: 1 / 1;
    padding: 0.5em;
    border-radius: 50%;
    /* align-items: stretch; */
    width: 1.5em;
    height: 1.5em;
}
.menu-1-pc-btn-in-2 .fa-chevron-right:before {
    content: "\f054";
    margin-top: -0.0em;
    margin-right: -0.1em;
    display: block;
}




@media (max-width: 1000px) {
p.menu-1-pc-btn-in-2-font-1 {
    font-size: clamp(1.25rem, 1.071rem + 0.89vw, 1.5rem); /*20,24*/
    margin-bottom: 10px;
	letter-spacing: -1px;
}


.circle-icon {
    font-size: clamp(1rem, 0.643rem + 1.79vw, 1.5rem); /*16,24*/
}
}

@media (min-width: 1001px) {
p.menu-1-pc-btn-in-2-font-1 {
    font-size: clamp(1.25rem, 0.68rem + 0.91vw, 1.5rem); /*20,24*/
    margin-bottom: 10px;
	letter-spacing: -1px;
}
.circle-icon  {
    font-size: clamp(1rem, -0.14rem + 1.82vw, 1.5rem); /*16,24*/
}
}

p.menu-1-pc-btn-in-2-font-1.white {
    color: #fff;
}



.menu-1-pc-btn-in-2.top-news-newlist-btn {
    /* display: inline-block; */
    /* background: #fff; */
    margin: 0 0 0 auto;
    padding: 0em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 100%;
    position: absolute;
    bottom: 0;
}












/*SP_header*/

@media screen and (max-width: 1000px){
#header-fixed-s {
    position: fixed;
    top: 0px;
    width: 100vw;
/*     height: 100vh; */
    text-align: center;
    box-sizing: border-box;
    transition: 1s;
    z-index: 5;
    padding: 0;
/*     border-right: solid 10px #74bff7; */
}
	
.sp-line {
    position: fixed;
    top: 0px;
    right: 0;
    /* width: 100vw; */
    height: 100vh;
    text-align: center;
    box-sizing: border-box;
    transition: 1s;
    z-index: 2;
    padding: 0;
    border-right: solid 10px #74bff7;
}	
}

@media screen and (min-width: 1001px){
#header-fixed-s {
    display: none;
}
}

#header-fixed-s.is-show-s {
  top: 0;
}


.header-fixed-in-s{
    position: relative;
    height: 30px;
}


/* チェックボックスは非表示（ラベルで操作するため） */
#header-hamburger-s{
    display: none;
}

/* ハンバーガーアイコンの位置を指定（右） */
.header-hamburger-icon-s {
    position: absolute;
    top: 30px;
    right: 57px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 30;
    padding-top: 10px;
}

/* @media screen and (min-width: 601px){
.header-hamburger-icon-s {
    right: 5%;
}   
}

@media screen and (max-width: 600px){
.header-hamburger-icon-s {
    right: 10%;
}
} */

.header-hamburger-icon-s:after {
    content: "";
    position: absolute;
    left: -23px;
    top: -30px;
    width: 80px;
    height: 85px;
    background: #74bff7;
    border-radius: 0 0 0 26px;
}

#header-hamburger-s:checked ~ .header-hamburger-icon-s:after {
    content: "";
    position: absolute;
    left: -23px;
    top: -30px;
    width: 80px;
    height: 85px;
    background: #fff;
    border-radius: 0 0 0 26px;
}


/* ハンバーガーメニューのアイコン */
.header-hamburger-icon-s span, .header-hamburger-icon-s span:before, .header-hamburger-icon-s span:after {
    content: '';
    display: block;
    height: 4px;
    width: 38px;
    border-radius: 3px;
    background: #fff;
    transition: 0.5s;
    position: absolute;
    z-index: 20;
}




/* 三本線の一番上の棒の位置調整 */
.header-hamburger-icon-s span:before {
  bottom: 15px;
}

/* 三本線の一番下の棒の位置調整 */
.header-hamburger-icon-s span:after {
  top: 15px;
}


/* 背景を暗くする（デフォルトは非表示） */
#header-close-s{
    display: none;
    position: fixed;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0;
}

/*スライドで表示させるコンテンツ*/
#header-content-s {
    z-index: 10;
    overflow: auto;
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    /* max-width: 300px; */
    box-sizing: border-box;
    transition: .3s;
    background: #75bff7;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
}


/*チェックが入ったらコンテンツを表示*/
#header-hamburger-s:checked ~ #header-content-s{
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
}

/*チェックが入ったらコンテンツ外を暗くする*/
#header-hamburger-s:checked ~ #header-close-s{
    display: block;
    opacity: .7;
}


#header-hamburger-s:checked ~ .header-hamburger-icon-s:before {
position:absolute;
top: -10px;
right: 5px;
content: '';
color: #fff;
font-size: 16px;
letter-spacing: 0.3em;
z-index: 15;
}


/* アイコンがクリックされたら */
#header-hamburger-s:checked ~ .header-hamburger-icon-s span {
    background: #fff;
}

#header-hamburger-s:checked ~ .header-hamburger-icon-s span:before {
    background: #75bff7;
}

#header-hamburger-s:checked ~ .header-hamburger-icon-s span:after {
    background: #75bff7;
}

/* アイコンがクリックされたらアイコンが×印になように上下の線を回転 */
#header-hamburger-s:checked ~ .header-hamburger-icon-s span::before {
  bottom: 0;
  transform: rotate(45deg);
}

#header-hamburger-s:checked ~ .header-hamburger-icon-s span::after {
  top: 0;
  transform: rotate(-45deg);
}



/*ハンバーガーメニュー内-ストローク*/


/*メニュー*/

.hummenu-tel p {
    font-weight: 300;
    font-size: 12px;
    color: #fff;
}

img.humberger-contact-tel {
    width: 78%;
    margin: 2em auto 0 auto;
    display: block;
    max-width: 350px;
}

img.humberger-contact-tel:hover{ 
	opacity:0.5;
	transition:0.3s;
}





body.bg-home .main {
    background: transparent;
}

body.bg-404 div#content-in,
body.bg-about div#content-in,
body.bg-admission div#content-in,
body.bg-schedule div#content-in,
body.bg-contact div#content-in,
body.bg-recruit div#content-in,
body.bg-news div#content-in,
body.bg-column div#content-in,
body.bg-jrclass div#content-in,
body.bg-adultclass div#content-in {
    background: #fff;
}

@media (min-width: 1001px) {
body.bg-404 div#content-in,
body.bg-home div#content-in,
body.bg-about div#content-in,
body.bg-admission div#content-in,
body.bg-schedule div#content-in,
body.bg-contact div#content-in,
body.bg-recruit div#content-in,
body.bg-news div#content-in,
body.bg-column div#content-in,
body.bg-jrclass div#content-in,
body.bg-adultclass div#content-in {
    border: 1px solid #fff;
}
}







/* body.bg-home:before {
  background-image: url(images/top.JPG);
} */

body.bg-about::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/about_bg.jpg);
}

body.bg-admission::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/admission_bg.jpg);
}

body.bg-schedule::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/schedule_bg.jpg);
}

body.bg-contact::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/contact_bg.jpg);
}

body.bg-recruit::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/careers_bg.jpg);
}

body.bg-news::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/news_bg.jpg);
}

body.bg-column::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/columnlist_bg.jpg);
}

body.bg-jrclass::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/jrclass_bg.jpg);
}

body.bg-adultclass::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/08/adultclass_bg.jpg);
}

body.bg-404::before {
  background-image: url(https://ksc-swim.com/main/wp-content/uploads/2025/09/notfound_bg.jpg);
}



@media (min-width: 1001px) {
.side-right-top {
    border-radius: 20px 20px 0 0;
    border: 1px solid #fff;
}
}

.side-right-top {
	position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    padding: 0 2em;
    background-color: rgba(255, 255, 255, 0);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    overflow: hidden;
	z-index: -3;
}

.side-right-top::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100vh;
    background-image: radial-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px);
    background-size: 4px 4px;
    pointer-events: none;
    visibility: visible;
}

@media screen and (max-width: 1000px){
.side-right-top {
    height: 97vh;
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}
}











/* body {
  position: relative;
  z-index: 0;
} */

body::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    z-index: -10;
    width: 100%;
    height: 100vh;
    background-image: radial-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px);
    background-size: 4px 4px;
    pointer-events: none;
	visibility: visible;
}
















@media screen and (max-width: 1000px){
body::before {
        content: "";
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        z-index: -10;
        width: 100%;
        height: 100vh;
        background-size: cover;
        background-repeat: no-repeat;
    }
	
body.bg-home::before {
        background-position: 26% center;
}

body.bg-404::before,
body.bg-about::before,
body.bg-admission::before,
body.bg-schedule::before,
body.bg-contact::before,
body.bg-recruit::before,
body.bg-news::before,
body.bg-column::before,
body.bg-jrclass::before,
body.bg-adultclass::before {
        background-position: 50% center;
}
	
	
.top-sen-title {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.625rem, 1.179rem + 2.23vw, 2.25rem); /*26,36*/
    margin-bottom: 0.5em;
    z-index: 0;
}

.top-sen-title::after {
    content: '';
    position: absolute;
    left: 0;
	bottom: 0.2em;
/*     top: 1.3em; */
    width: 100%;
    height: 0.2em;
    background-color: #fff;
    border-radius: 9999px;
    z-index: -1;
}	
	
.top-sen-title-2 {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.625rem, 1.179rem + 2.23vw, 2.25rem); /*26,36*/
    letter-spacing: -2px;
    margin-bottom: 1em;
    z-index: 1;
}

.top-sen-title-2::after {
        content: '';
        position: absolute;
        left: 0;
	bottom: 0.2em;
/*         top: 1.3em; */
        width: 100%;
        height: 0.2em;
        background-color: #e4f6ff;
        border-radius: 9999px;
        z-index: -1;
    }	
	
	
.top-sen-title-2.little-font {
    font-size: clamp(1.25rem, 0.536rem + 3.57vw, 2.25rem); /*18,36*/
}	
	
.top-sen-title-3 {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.625rem, 1.179rem + 2.23vw, 2.25rem); /*26,36*/
    margin-bottom: 0.5em;
    z-index: 1;
    color: #fff;
}

.top-sen-title-3::after {
    content: '';
    position: absolute;
    left: 0;
	bottom: 0.2em;
/*     top: 1.3em; */
    width: 100%;
    height: 0.2em;
    background-color: #74bff7;
    border-radius: 9999px;
    z-index: -1;
}	
	
}

@media screen and (min-width: 1001px){
body::before {
    content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -20;
	width: 100%;
	height: 100vh;
    text-align: center;
    background-repeat: no-repeat;
    background-size: cover;
/*     margin-top: -10px; */
    margin-bottom: 0;
/*     position: relative; */
    background-position: left center;
}

	
.top-sen-title {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.75rem, 0.61rem + 1.82vw, 2.25rem); /*28,36*/
    margin-bottom: 0.5em;
    z-index: 1;
}

.top-sen-title::after {
    content: '';
    position: absolute;
/*     top: 1.3em; */
    left: 0;
    bottom: 0.25em;
    width: 100%;
    height: 0.2em;
    background-color: #fff;
    border-radius: 9999px;
    z-index: -1;
}	
	
.top-sen-title-2 {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.75rem, 0.61rem + 1.82vw, 2.25rem); /*28,36*/
    letter-spacing: -2px;
    margin-bottom: 0.5em;
    z-index: 1;
}

.top-sen-title-2::after {
    content: '';
    position: absolute;
/*     top: 1.3em; */
    left: 0;
    bottom: 0.25em;
    width: 100%;
    height: 0.2em;
    background-color: #e4f6ff;
    border-radius: 9999px;
    z-index: -1;
}
	
.top-sen-title-2.little-font {
    font-size: clamp(1.5rem, 0.36rem + 1.82vw, 2rem); /*24,32*/
}	
	
.top-sen-title-3 {
    position: relative;
    display: inline-block;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: clamp(1.75rem, 0.61rem + 1.82vw, 2.25rem); /*28,36*/
    margin-bottom: 0.5em;
    z-index: 1;
    color: #fff;
}

.top-sen-title-3::after {
    content: '';
    position: absolute;
/*     top: 1.3em; */
    left: 0;
    bottom: 0.25em;
    width: 100%;
    height: 0.2em;
    background-color: #74bff7;
    border-radius: 9999px;
    z-index: -1;
}	
	
}















.top-1-in-1 {
    text-align: center;
    margin-bottom: 1em;
}





































/*波線背景*/

.container-1 {
    position: relative;
    background: #2c3e50;
    height: 50vh;
    overflow: hidden;
    display: flex
;
    align-items: center;
    margin-bottom: 0;
}

.wave {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 80px;
  z-index: 0;
}

.wave svg {
  width: 100%;
  height: 100%;
  display: block;
}


.wave-2 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 0;
    overflow: hidden;
}

.wave-2 svg {
    display: block;
    height: 100%;
    width: 100%;
}

.wave-3 {
    margin-bottom: 0;
}

.wave-4 {
    transform: rotate(3.142rad);
    margin-top: -10px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1;
    overflow: hidden;
}

.wave-4 svg {
    display: block;
    height: 100%;
    width: 100%;
}

.wave-5 {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 0;
    overflow: hidden;
}

.wave-5 svg {
    display: block;
    height: 100%;
    width: 100%;
}

.wave-6 {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 0;
    overflow: hidden;
}

.wave-6 svg {
    width: 100%;
    height: 100%;
    display: block;
}

















.top-1 {
    background: #e4f6ff;
    margin-bottom: 0;
    margin-top: -22px;
    text-align: center;
    padding-bottom: 5em;
    padding-top: 3em;
    position: relative;
}

p.swipe-font-1 {
    font-size: 17px;
    text-align: center;
	margin-top:6px;
}

.top-1-in-news {
    background: url('images/kounomiyaswimmingclub_img-70.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 2%, center;
    padding: 0 1em;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .top-1-in-news {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.container-2 {
    background: url(images/kounomiyaswimmingclub_img-71.png) no-repeat, #fff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
    margin-bottom: 0;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .container-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



section.container-3 {
    margin-bottom: 0;
}

.top-1-2 {
    background: url('images/kounomiyaswimmingclub_img-72.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
/*     margin-top: -10px; */
    margin-bottom: 0;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
/*     position: relative; */
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .top-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.top-3 {
    background-image: 
      url('images/kounomiyaswimmingclub_img-72.png'), 
      url('images/kounomiyaswimmingclub_pc_img_8.jpg');
    background-repeat: no-repeat, no-repeat;
    background-size: 19% auto, cover;
    background-position: left 10%, center;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
    margin-bottom: 0;
    position: relative;
}



@media screen and (min-width: 620px) and (max-width: 1000px) {
  .top-3 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}





.container-5{
    background: url('images/kounomiyaswimmingclub_img-74.png') no-repeat, #fff;
/*     padding-bottom: 3em; */
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .container-5 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

@media (max-width: 1000px) {
    .container-5 {
/*         padding-bottom: 8em; */
        padding-right: 1em;
        padding-left: 1em;
    }
}


@media (min-width: 1001px) {
.container-5 {
        padding-bottom: 1em;
        padding-left: 1em;
        padding-right: 1em;
    }
}

















.top-2-in-1 {
    text-align: center;
}


@media (max-width: 1000px) {
p.top-2-in-1-in-font-1 {
    font-size: clamp(1.125rem, 0.857rem + 1.34vw, 1.5rem);/*18,24*/
    margin-bottom: 0.7em;
}
	
p.top-2-in-1-in-font-2 {
    font-size: clamp(1rem, 0.911rem + 0.45vw, 1.125rem); /*16,18*/
}	
}

@media (min-width: 1001px) {
p.top-2-in-1-in-font-1 {
    font-size: clamp(1.25rem, 0.68rem + 0.91vw, 1.5rem); /*20,24*/
    margin-bottom: 0.7em;
}
	
p.top-2-in-1-in-font-2 {
    font-size: clamp(1rem, 0.715rem + 0.46vw, 1.125rem); /*16,18*/
}	
}


p.top-2-in-1-in-font-3 {
    font-size: 16px;
    margin-top: -1em;
    font-weight: 300;
}

p.top-2-in-1-in-font-4 {
    margin-bottom: 1em;
    color: #4898ff;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    margin-top: -1em;
}

p.top-2-in-1-in-font-5 {
    font-size: 14px;
    font-weight: 300;
    text-align: left;
    margin-top: -1em;
}


/*通常*/
.top-2-in-1-in {
    padding: 0 2em;
    text-align: left;
    margin: 1em auto;
    max-width: 560px;
}

/*入会案内のmargin4em*/
.top-2-in-1-in-2 {
    padding: 0 2em;
    text-align: left;
    margin: 0 auto 3em auto;
    max-width: 560px;
}















/*教室案内*/

@media (max-width: 1000px) {
.top-class-flex-in p {
    position: absolute;
    width: 100%;
    bottom: 0;
    margin-bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    color: #fff;
    font-size: clamp(0.75rem, 0.348rem + 2.01vw, 1.313rem); /*12,21*/
    line-height: 1.2em;
}
}


@media (min-width: 1001px) {
.top-class-flex-in p {
    position: absolute;
    width: 100%;
    bottom: 0;
    margin-bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    font-family: "Zen Maru Gothic", serif;
    font-weight: 400;
    font-style: normal;
    color: #fff;
    font-size: clamp(0.75rem, -0.533rem + 2.05vw, 1.313rem); /*12,21*/
    line-height: 1.2em;
}
}


/* section.container-3 {
    margin-bottom: 0;
    position: relative;
} */

.top-class-flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 90%;
    max-width: 500px;
    margin: 0 auto;
}

.top-class-flex-in {
    width: calc(100% / 3 - 1em);
    margin: 0.5em;
    position: relative;
}

/* 4つ目以降だけ幅を変える */
.top-class-flex-in:nth-child(n+4) {
    width: calc(100% / 3 - 1em); /* 折り返した2段目は2分割にする */
}




































/*アピールエリア*/

@media (max-width: 1000px) {
.top-class-appeal-in-1 {
    display: flex;
    justify-content: center;
    font-size: clamp(1.25rem, 0.938rem + 1.56vw, 1.688rem); /*20,27*/
    font-weight: 500;
    color: #3e3a39;
}
}


@media (min-width: 1001px) {
.top-class-appeal-in-1 {
    display: flex;
    justify-content: center;
    font-size: clamp(1.438rem, 0.867rem + 0.91vw, 1.688rem); /*23,27*/
    font-weight: 500;
    color: #3e3a39;
}
}


.top-class-appeal {
    background: #fff;
    border-radius: 30px;
    margin: 3em auto;
    padding: 2.5em 1em 2.5em 1em;
    max-width: 700px;
    width: 85%;
}


p.top-class-appeal-font-1 {
    color: #ff8883;
    margin-bottom: 0.5em;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-weight: 500;
}

p.top-class-appeal-font-3 {
    letter-spacing: -1px;
    margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    /* line-height: 1.2em; */
}

p.top-class-appeal-font-4 {
    margin: 1em 0 2em 0;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

a.top-class-appeal-btn-1 {
    background: #74bff7;
    text-decoration: none;
    color: #fff;
    padding: 7px 2em;
    border-radius: 26px;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-weight: 600;
    letter-spacing: -1px;
}

a.top-class-appeal-btn-1:hover {
opacity:0.5;
	transition:0.3s;
}


p.top-class-appeal-font-2 {
    position: relative;
    display: inline-block;
    z-index: 0;
	margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.top-class-appeal-font-2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0.1em;
    width: 100%;
    height: 1.5em;
    background: #fff2b2;
    z-index: -1;
}


p.top-class-appeal-font-2-2 {
    position: relative;
    display: inline-block;
    z-index: 0;
    margin-bottom: 0;
}

p.top-class-appeal-font-2-2::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0.1em;
    width: 100%;
    height: 1.5em;
    background: #fff2b2;
    z-index: -1;
}



p.top-class-appeal-font-5 {
    background: #fff2b2;
    color: #ff8883;
    border-radius: 50%;
    display: inline-flex; /* サイズに合わせるため inline-flex */
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1em; /* 内側の余白でサイズ調整 */
    line-height: 1.2em;
    font-weight: 500;
    aspect-ratio: 1 / 1; /* 正円を保つ */
	margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.top-class-appeal-font-6 {
    margin-bottom: 0;
    font-weight: 300;
}

.top-class-appeal-in-1-flex {
    display: flex;
    margin: 1em auto 2em auto;
    align-items: center;
    width: 100%;
    justify-content: center;
}

.top-class-appeal-in-1-flex-right {
    width: 70%;
    padding-left: 5px;
}

@media (max-width: 1000px) {
p.top-class-appeal-font-1 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-font-2 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}

p.top-class-appeal-font-3 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}
	
	
p.top-class-appeal-font-5 {
    font-size: clamp(0.75rem, 0.482rem + 1.34vw, 1.125rem); /*12,18*/
}

p.top-class-appeal-font-6 {
    font-size: clamp(0.813rem, 0.5rem + 1.56vw, 1.25rem); /*13,20*/
}
}

@media (min-width: 1001px) {
p.top-class-appeal-font-1 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-font-2 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}

p.top-class-appeal-font-3 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-font-5 {
    font-size: clamp(0.75rem, -0.105rem + 1.37vw, 1.125rem); /*12,18*/
}

p.top-class-appeal-font-6 {
    font-size: clamp(0.75rem, -0.105rem + 1.37vw, 1.125rem); /*13,20*/
}
}





/*2*/
.top-class-appeal-2 {
    background: #fff;
    border-radius: 30px;
    margin: 3em 1.5em;
    padding: 2.5em 1em 2.5em 1em;
}

.top-class-appeal-2 p {
    margin: 0 auto;
    max-width: 560px;
}

p.top-class-appeal-2-font-1 {
    color: #ff8883;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.top-class-appeal-2-font-2 {
    letter-spacing: -3px;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}


img.top-class-appeal-2-img-1 {
    max-width: 250px;
    width: 70%;
    margin: 1em auto;
}

@media (max-width: 1000px) {
p.top-class-appeal-2-font-1 {
    font-size: clamp(1.313rem, 1.179rem + 0.67vw, 1.5rem) /*21,24*/
}	
	
p.top-class-appeal-2-font-2 {
    font-size: clamp(1.313rem, 0.911rem + 2.01vw, 1.875rem); /*21,30*/
}

p.top-class-appeal-2-font-3 {
    font-size: clamp(0.938rem, 0.67rem + 1.34vw, 1.313rem); /*15,21*/
}
}

@media (min-width: 1001px) {
p.top-class-appeal-2-font-1 {
    font-size: clamp(1.313rem, 0.885rem + 0.68vw, 1.5rem); /*21,24*/
}	
	
p.top-class-appeal-2-font-2 {
    font-size: clamp(1.313rem, 0.03rem + 2.05vw, 1.875rem); /*21,30*/
}

p.top-class-appeal-2-font-3 {
    font-size: clamp(0.938rem, 0.082rem + 1.37vw, 1.313rem); /*15,21*/
}
}




/*5*/
.top-class-appeal-5 {
    background: #fff;
    border-radius: 30px;
    margin: 3em 1.5em;
    padding: 2.5em 1em 2.5em 1em;
}

.top-class-appeal-5 p {
    margin: 0 auto;
    max-width: 560px;
}

p.top-class-appeal-5-font-1 {
    color: #ff8883;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.top-class-appeal-5-font-2 {
    letter-spacing: -2px;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}



@media (max-width: 1000px) {
p.top-class-appeal-5-font-1 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-5-font-2 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}

}

@media (min-width: 1001px) {
p.top-class-appeal-5-font-1 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-5-font-2 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}

}


/*6*/
.top-class-appeal-6 {
    background: #f0f3f3;
    border-radius: 30px;
    margin: 3em 1.5em;
    padding: 2.5em 1em 2.5em 1em;
}

.top-class-appeal-6 p {
    margin: 0 auto;
    max-width: 560px;
}

p.top-class-appeal-6-font-1 {
    color: #ff8883;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
	letter-spacing: -2px;
}

p.top-class-appeal-6-font-2 {
    letter-spacing: -1px;
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}



@media (max-width: 1000px) {
p.top-class-appeal-6-font-1 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-6-font-2 {
    font-size: clamp(1.125rem, 0.991rem + 0.67vw, 1.313rem); /*18,21*/
}

}

@media (min-width: 1001px) {
p.top-class-appeal-6-font-1 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}	
	
p.top-class-appeal-6-font-2 {
    font-size: clamp(1.125rem, 0.697rem + 0.68vw, 1.313rem); /*18,21*/
}

}



























/*インスタグラム*/

.container-4 {
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    /* padding: 0 2em; */
    background-color: rgba(255, 255, 255, 0);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    overflow: hidden;
    margin-bottom: 0;
	    z-index: 0;
}

.container-4::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 200vh;
    background-image: radial-gradient(rgba(255, 255, 255, 0.6) 1px, transparent 1px);
    background-size: 4px 4px;
    pointer-events: none;
    visibility: visible;
}


@media (max-width: 1000px) {
    .container-4 {
/*         padding-bottom: 8em; */
        padding-right: 1em;
        padding-left: 1em;
    }
}


@media (min-width: 1001px) {
.container-4 {
        padding-bottom: 1em;
        padding-left: 1em;
        padding-right: 1em;
    }
}





.top-3 {
    background-image: url(images/kounomiyaswimmingclub_img-73.png);
    padding: 5em 0em 5em 0em;
    text-align: center;
    background-repeat: no-repeat;
    background-size: 19%;
    margin-bottom: 0;
    position: relative;
    background-position: left;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .top-3 {
    background-size: 11% auto, cover;
	background-position: left 3%, center;  
  }
}





p.top-3-font-1 {
    color: #fff;
}



div#sbi_images div {
    border-radius: 20px;
}
































/*フッター*/

.foot-2-contact {
    background: url('images/kounomiyaswimmingclub_img-39.png') no-repeat, #e4f6ff;
    padding: 3em 1em 6em 1em;
    text-align: center;
    margin-top: -9px;
/*     margin-bottom: -4em; */
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .foot-2-contact {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

p.foot-2-contact-font-1 {
    margin-top: -21px;
}




.menu-1-pc-btn-in-4 {
    /* display: inline-block; */
    position: relative;
    background: #fff;
    margin: 2em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 85%;
    max-width: 360px;
}

.menu-1-pc-btn-in-4::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 48%;
    right: 24px;
    z-index: 2;
}

.menu-1-pc-btn-in-4::after {
    content: '';
    width: 26px;
    height: 26px;
    background-color: #74bff7;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 14px;
    margin-top: -10px;
    transform: translateZ(0);
    z-index: 1;
}

.menu-1-pc-btn-in-4 a {
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}

.menu-1-pc-btn-in-4:hover {
opacity:0.5;
	transition:0.3s;
}


img.foot-2-contact-tel {
    width: 78%;
    margin: 0 auto;
    display: block;
    max-width: 430px;
}

img.foot-2-contact-tel:hover{ 
	opacity:0.5;
	transition:0.3s;
}



p.foot-2-contact-font-2 {
    margin: 0.7em auto;
    font-size: 16px;
}

.foot-1 {
    background: #fff;
    padding: 3em 2em;
    margin-top: -9px;
}

@media (min-width: 1001px) {
.foot-1 {
    border: 1px solid #fff;
    border-radius: 0 0 20px 20px;
}
}

img.foot-1-logo-1 {
    width: 27%;
    max-width: 200px;
    margin: 0 auto;
    display: block;
}

img.foot-1-logo-2 {
    width: 90%;
    max-width: 580px;
    margin: 1em auto 1em auto;
    display: block;
}



p.foot-1-font-2 {
    text-align: center;
    margin-top: 5em;
    color: #3e3a39;
}

@media (max-width: 1000px) {
p.menu-1-pc-btn-in-4-font-1 {
    font-size: clamp(1.25rem, 1.071rem + 0.89vw, 1.5rem); /*20,24*/
    line-height: 1.3em;
    text-align: left;
    margin-left: 5px;
    margin-bottom: 0;
}
}


@media (min-width: 1001px) {
p.menu-1-pc-btn-in-4-font-1 {
    font-size: clamp(1.25rem, 0.68rem + 0.91vw, 1.5rem); /*20,24*/
    line-height: 1.3em;
    text-align: left;
    margin-left: 5px;
    margin-bottom: 0;
}
}


@media screen and (max-width: 1000px){
p.foot-1-font-1 {
    text-align: center;
    font-size: clamp(0.875rem, 0.563rem + 1.56vw, 1.313rem); /*14,21*/
}
}

@media screen and (min-width: 1001px){
p.foot-1-font-1 {
    text-align: center;
    font-size: clamp(0.938rem, 0.082rem + 1.37vw, 1.313rem); /*15,21*/
}
}






























/*ページ内リンク*/

ul.menu-ul {
    list-style: none;
    text-align: center;
    padding-left: 0;
    margin-bottom: 3em;
    margin-top: 3em;
}

ul.menu-ul li {
    margin: 1em;
}

ul.menu-ul li a {
    color: #3e3a39;
}

ul.menu-ul li a:hover {
opacity:0.5;
	transition:0.3s;
}


































/*入会案内*/

.membership-1 {
    background: url('images/kounomiyaswimmingclub_img-49.png') no-repeat, #e4f6ff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}



@media screen and (min-width: 620px) and (max-width: 1000px) {
  .membership-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.membership-2 {
    background: url('images/kounomiyaswimmingclub_img-50.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .membership-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.membership-1-2 {
    background: url('images/kounomiyaswimmingclub_img-51.png') no-repeat, #e4f6ff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 3%, center;
    position: relative;
}



@media screen and (min-width: 620px) and (max-width: 1000px) {
  .membership-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.membership-2-2 {
    background: url('images/kounomiyaswimmingclub_img-52.png') no-repeat, #fff;
    padding-bottom: 0em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .membership-2-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


/* @media (max-width: 1000px) {
    .membership-2-2 {
        padding-bottom: 4em;
    }
} */



img.line-img {
    width: 90%;
    max-width: 560px;
    margin: 1.5em auto;
}

.membership-1-img-1 img {
    display: block;
    width: 85%;
    margin: 0 auto;
    max-width: 500px;
}

.membership-2-sen-1 {
    padding: 0 1em;
    max-width: 560px;
    width: 85%;
    margin: 0 auto;
}

.membership-2-sen-1-flex {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.membership-2-sen-1-flex-left-circle {
    background: #74bff7;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    aspect-ratio: 1 / 1;
    text-align: center;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-top: 7px;
}

p.membership-2-sen-1-flex-left-circle-font-1 {
    margin-bottom: 0;
    font-size: 19px;
}

p.membership-2-sen-1-flex-left-circle-font-2 {
    margin-bottom: 0;
    margin-top: -0.4em;
    font-weight: 700;
}

.membership-2-in-1-flex-right p {
    color: #74bff7;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin-bottom: 0;
    margin-left: 15px;
    line-height: 1.5em;
    text-align: left;
}

@media (max-width: 1000px) {
.membership-2-in-1-flex-right p {
    font-size: clamp(1.125rem, 0.857rem + 1.34vw, 1.5rem); /*18,24*/
}

.membership-2-sen-1-font-1 p {
    font-size: clamp(1rem, 0.911rem + 0.45vw, 1.125rem); /*16,18*/
}
	
p.membership-2-sen-1-flex-left-circle-font-2 {
    font-size: clamp(2rem, 1.732rem + 1.34vw, 2.375rem); /*32,38*/
}	
}

@media (min-width: 1001px) {
.membership-2-in-1-flex-right p {
    font-size: clamp(1.125rem, 0.27rem + 1.37vw, 1.5rem); /*18,24*/
}

.membership-2-sen-1-font-1 p {
    font-size: clamp(1rem, 0.715rem + 0.46vw, 1.125rem); /*16,18*/
}
	
p.membership-2-sen-1-flex-left-circle-font-2 {
    font-size: clamp(2rem, 1.145rem + 1.37vw, 2.375rem); /*32,38*/
}	
}


.membership-2-sen-1-font-1 {
    margin: 1em 0em;
    text-align: left;
}






.membership-2-sen-2 {
    background: #f0f3f3;
    border-radius: 30px;
    margin: 3em 1.5em 1em 1.5em;
    padding: 2.5em 0em 2.5em 0em;
}

.membership-2-sen-2-title-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1em;
}

.membership-2-sen-2-title-1 img {
    width: 30px;
    aspect-ratio: 1 / 1;
}

.membership-2-sen-2-title-1 p {
    color: #ff8883;
    margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin-left: 5px;
}

@media (max-width: 1000px) {
.membership-2-sen-2-title-1 p {
    font-size: clamp(1.063rem, 0.75rem + 1.56vw, 1.5rem); /*17,24*/
}
}

@media (min-width: 1001px) {
.membership-2-sen-2-title-1 p {
    font-size: clamp(1.25rem, 0.68rem + 0.91vw, 1.5rem); /*20,24*/
}
}

.membership-2-sen-2-sen-1 {
    margin: 2em 1em;
}

p.membership-2-sen-2-sen-1-font-1 {
    color: #74bff7;
    margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}






@media (max-width: 1000px) {
p.membership-2-sen-2-sen-1-font-1 {
    font-size: clamp(1.125rem, 1.036rem + 0.45vw, 1.25rem); /*18,20*/
    text-align: left;
}

p.membership-2-sen-2-sen-1-font-2 {
    font-size: clamp(1rem, 0.911rem + 0.45vw, 1.125rem); /*16,18*/
    text-align: left;
}
	
span.membership-2-sen-2-sen-1-font-2 {
    font-size: clamp(1rem, 0.911rem + 0.45vw, 1.125rem); /*16,18*/
    text-align: left;
}	
	
.membership-2-sen-3 p {
    font-size: clamp(0.75rem, 0.571rem + 0.89vw, 1rem); /*12,16*/
}	
}

@media (min-width: 1001px) {
p.membership-2-sen-2-sen-1-font-1 {
    font-size: clamp(1.125rem, 0.84rem + 0.46vw, 1.25rem); /*18,20*/
    text-align: left;
}

p.membership-2-sen-2-sen-1-font-2 {
    font-size: clamp(1rem, 0.715rem + 0.46vw, 1.125rem); /*16,18*/
    text-align: left;
}
	
span.membership-2-sen-2-sen-1-font-2 {
    font-size: clamp(1rem, 0.715rem + 0.46vw, 1.125rem); /*16,18*/
    text-align: left;
}	
	
.membership-2-sen-3 p {
    font-size: clamp(0.75rem, 0.18rem + 0.91vw, 1rem); /*12,16*/
}	
}






.membership-2-sen-2-flex {
    display: flex;
    align-items: stretch;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: -1em;
}

.membership-2-sen-1-flex-in {
    text-align: center;
    background: #fff;
    border-radius: 10px;
    padding: 10px 10px 15px 10px;
    margin: 5px;
}

@media screen and (max-width: 425px) {
.membership-2-sen-1-flex-in {
    max-width: 83px;
    /* width: 17vw; */
}
}

@media screen and (min-width: 426px) and (max-width: 1000px) {
.membership-2-sen-1-flex-in {
    max-width: 100px;
    width: 17vw;
}
}

@media screen and (min-width: 1001px) {
.membership-2-sen-1-flex-in {
        width: 100px;
    }
}



p.membership-2-sen-1-flex-in-font-1 {
    margin-bottom: 0;
    font-size: 16px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: -1px;
}

p.membership-2-sen-1-flex-in-font-2 {
    margin-bottom: 0;
    color: #ff8883;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0px;
    line-height: 1.2em;
    font-size: 15px;
}

.membership-2-sen-3 p {
    font-weight: 300;
    margin: 0 2em;
    text-align: left;
}

p.membership-2-sen-1-flex-in-font-2.ms-sub-font-1 {
    font-size: 12px;
}
.membership-2-sen-1-flex-in-font-1.bottom-space{
	margin-bottom:4px;
}



.menu-1-pc-btn-in-5 {
    position: relative;
    background: #fff;
    margin: 1.5em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 95%;
    max-width: 360px;
}

.menu-1-pc-btn-in-5 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin: 0 1em 0 0.5em;
}

.menu-1-pc-btn-in-5:hover {
opacity:0.5;
	transition:0.3s;
}

p.menu-1-pc-btn-in-5-font-1 {
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 0;
    letter-spacing: -1px;
}

@media (max-width: 1000px) {
p.menu-1-pc-btn-in-5-font-1 {
    font-size: clamp(1.1rem, 0.696rem + 0.89vw, 1.125rem); /*14,18*/
}
}

@media (min-width: 1001px) {
p.menu-1-pc-btn-in-5-font-1 {
    font-size: clamp(0.938rem, 0.51rem + 0.68vw, 1.125rem); /*15,18*/
}
}

.menu-1-pc-btn-in-5 img {
    width: 30px;
}


































/*国府宮スイミングクラブとは*/

.about-1 {
    background: #e4f6ff;
    margin-bottom: 0;
    margin-top: -10px;
    text-align: center;
    padding-bottom: 3em;
    padding-top: 3em;
    position: relative;
}

.about-1-directorname {
    text-align: right;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    margin-top: 3em;
}

p.about-1-directorname-font-1 {
    margin-bottom: 0;
}

p.about-1-directorname-font-2 {
    font-size: 33px;
    font-weight: 500;
}

.about-1-img-1 img {
    display: block;
    width: 85%;
    margin: 0 auto;
    max-width: 500px;
}

.about-1-in-1 {
    background: url('images/kounomiyaswimmingclub_img-44.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 2%, center;
	padding: 0 1em;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .about-1-in-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.about-1-in-2 {
    background: url('images/kounomiyaswimmingclub_img-45.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 2%, center;
	padding: 0 1em;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .about-1-in-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}






/*クラブの特徴*/

.features-flex {
    margin: 0 0 4em 0;
}

.features-flex-in {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 550px;
    margin: 0 auto;
}

.features-flex-in-left {
    text-align: center;
    color: #4898ff;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    margin-right: 5px;
    width: calc(100% / 2 - 0px);
}

.features-flex-in-left img {
    width: 50px;
    margin: 0 auto;
    display: block;
}

p.Features-flex-in-left-font-1 {
    margin-bottom: 0;
    margin-top: 5px;
    letter-spacing: -1px;
}

p.Features-flex-in-left-font-2 {
    margin-bottom: 0;
    letter-spacing: -2px;
    line-height: 1.3em;
    margin-top: 0px;
    font-weight: 500;
}

@media (max-width: 1000px) {
p.Features-flex-in-left-font-1 {
    font-size: clamp(0.688rem, 0.375rem + 1.56vw, 1.125rem); /*11,18*/
}	
	
p.Features-flex-in-left-font-2 {
    font-size: clamp(1.188rem, 0.786rem + 2.01vw, 1.75rem);
}
	
p.features-flex-font-1 {
    font-size: clamp(0.875rem, 0.696rem + 0.89vw, 1.125rem); /*14,18*/
}	
}


@media (min-width: 1001px) {
p.Features-flex-in-left-font-1 {
    font-size: clamp(0.75rem, -0.105rem + 1.37vw, 1.125rem); /*12,18*/
}	
	
p.Features-flex-in-left-font-2 {
    font-size: clamp(1.438rem, 0.725rem + 1.14vw, 1.75rem); /*23,28*/
}
	
p.features-flex-font-1 {
    font-size: clamp(0.938rem, 0.51rem + 0.68vw, 1.125rem); /*15,18*/
}	
}

.features-flex-in-right {
    width: calc(100% / 2 - 0px);
}

.features-flex-in-right img {
    width: 200px;
    max-width: 90%;
    margin: 0 auto;
    display: block;
}

p.features-flex-font-1 {
    max-width: 550px;
    margin: 1em auto;
    text-align: left;
}



































/*施設紹介*/

.about-2 {
    background: url('images/kounomiyaswimmingclub_img-46.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .about-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.flow-1 {
    width: 900px;
    margin: 0 auto;
    display: block;
    padding: 1.5em;
}

p.floormap-font-1 {
    margin-bottom: 0;
    text-align: left;
    margin-top: 3em;
    margin-left: 1em;
    font-size: 22px;
}

.floormap-1-flex-in-left img {
    width: 5%;
}

.floormap-1-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    max-width: 700px;
}

.floormap-1-flex-in {
    display: flex;
    width: calc(100% / 2 - 1em);
    align-items: center;
    margin: 5px 0;
}

.floormap-1-flex-in-left {
    display: block;
    width: 21px;
    margin: 0 7px 0 0;
    /* flex-grow: 1; */
}

.floormap-1-flex-in-left img {
    width: 30px;
    /* margin: 0 auto; */
    /* display: block; */
}

.floormap-1-flex-in-right {
    flex-grow: 2;
    text-align: left;
}

@media (max-width: 1000px) {
.floormap-1-flex-in-right p {
    margin-bottom: 0;
    font-size: clamp(0.75rem, 0.482rem + 1.34vw, 1.125rem); /*12,18*/
}
}

@media (min-width: 1001px) {
.floormap-1-flex-in-right p {
    margin-bottom: 0;
    font-size: clamp(0.875rem, 1.949rem + -1.72vw, 1.125rem); /*14,18*/
}
}

img.drink-img {
    width: 14px;
}

img.space-img {
    width: 18px;
}




.top-class-appeal-3 {
    background: #f0f3f3;
    border-radius: 30px;
    margin: 3em auto;
    padding: 2.5em 1em 2.5em 1em;
    max-width: 700px;
    width: 85%;
}

p.top-class-appeal-3-font-3 {
    margin-bottom: 0;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.top-class-appeal-3-font-1 {
    color: #ff8883;
    text-align: center;
	font-family: "Zen Maru Gothic", serif;
    font-style: normal;
	font-weight: 500;
}

@media (max-width: 1000px) {
p.top-class-appeal-3-font-1 {
        font-size: clamp(1.125rem, 0.857rem + 1.34vw, 1.5rem); /*18,24*/
        letter-spacing: -2px;
    }
}

@media (min-width: 1001px) {
    p.top-class-appeal-3-font-1 {
        font-size: clamp(1.313rem, 0.885rem + 0.68vw, 1.5rem); /*21,24*/
    }
}


.top-class-appeal-3-flex {
    display: flex;
    align-items: center;
    margin: 2em 0;
}

.top-class-appeal-3-flex div {
    width: 100%;
}

img.top-class-appeal-3-img-1 {
    width: 220px;
    margin: 0 1em 0 auto;
    display: block;
}

.top-class-appeal-3-flex-right-in {
    display: flex;
}

@media (max-width: 1000px) {
.top-class-appeal-3-flex-right {
    padding-left: 15px;
    font-size: clamp(0.625rem, 0.134rem + 2.46vw, 1.313rem); /*10,21*/
}

p.top-class-appeal-3-font-4 {
    font-size: clamp(0.875rem, 0.563rem + 1.56vw, 1.313rem); /*14,21*/
}
}

@media (min-width: 1001px) {
.top-class-appeal-3-flex-right {
        padding-left: 15px;
        font-size: clamp(0.875rem, 0.305rem + 0.91vw, 1.125rem); /*14,18*/
    }

p.top-class-appeal-3-font-4 {
    font-size: clamp(0.875rem, -0.123rem + 1.59vw, 1.313rem); /*14,21*/
    line-height: 1.5em;
}
}



p.top-class-appeal-3-font-2 {
    color: #74bff7;
    margin-bottom: 0;
}

p.top-class-appeal-3-font-3::before {
    content: '･････';
    letter-spacing: -1px;
    font-size: 10px;
}

p.top-class-appeal-3-font-4 {
    line-height: 1.5em;
    margin-bottom: 0;
}






/*インストラクターご紹介*/
.about-1-2 {
    background: url('images/kounomiyaswimmingclub_img-47.png') no-repeat, #e4f6ff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .about-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


p.top-class-appeal-4-font-1 {
    color: #ff8883;
    text-align: center;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    margin: 0 auto;
    /* letter-spacing: -2px; */
}

@media (max-width: 1000px) {
p.top-class-appeal-4-font-1 {
    font-size: clamp(0.938rem, 0.67rem + 1.34vw, 1.313rem); /*15,21*/
}
}

@media (min-width: 1001px) {
p.top-class-appeal-4-font-1 {
    font-size: clamp(0.938rem, 0.082rem + 1.37vw, 1.313rem); /*15,21*/
}
}



.menu-1-pc-btn-in-6 {
    position: relative;
    background: #e4f6ff;
    margin: 2em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 80%;
}

.menu-1-pc-btn-in-6 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin: 0 1em;
}

.menu-1-pc-btn-in-6:hover {
opacity:0.5;
	transition:0.3s;
}

p.menu-1-pc-btn-in-6-font-1 {
    font-size: 20px;
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 0;
    letter-spacing: -1px;
}

.menu-1-pc-btn-in-6 img {
    width: 30px;
}






.about-2-2 {
    background: url('images/kounomiyaswimmingclub_img-48.png') no-repeat, #fff;
/*     padding-bottom: 3em; */
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .about-2-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

/* @media (max-width: 1000px) {
    .about-2-2 {
        padding-bottom: 8em;
    }
} */




/*アクセス_sns*/
.accece-sns-flex {
    display: flex;
    margin: 2em auto;
    width: 70%;
    max-width: 250px;
    justify-content: center;
}

.accece-sns-flex a {
    margin: 0 20px;
}


.accece-sns-flex a:hover {
opacity:0.5;
	transition:0.3s;
}

.accece-sns-flex a img {
    max-width: 60px;
    width: 90%;
    margin: 0 auto;
    display: block;
}



































/*年間イベントスケジュール*/

.schedule-1 {
    background: url('images/kounomiyaswimmingclub_img-53.png') no-repeat, #e4f6ff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}



@media screen and (min-width: 620px) and (max-width: 1000px) {
  .schedule-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.schedule-font-1 {
    padding: 0 2em;
    text-align: left;
    margin: 1em auto;
    max-width: 560px;
}

p.schedule-font-2 {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 28px;
    text-align: center;
}

.schedule-1-2 {
    background: url('images/kounomiyaswimmingclub_img-55.png') no-repeat, #e4f6ff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}



@media screen and (min-width: 620px) and (max-width: 1000px) {
  .schedule-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}









.schedule-2{
    background: url('images/kounomiyaswimmingclub_img-54.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .schedule-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.schedule-2-2{
    background: url('images/kounomiyaswimmingclub_img-56.png') no-repeat, #fff;
/*     padding-bottom: 3em; */
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .schedule-2-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


/* @media (max-width: 1000px) {
    .schedule-2-2 {
        padding-bottom: 8em;
    }
} */



/*Googleカレンダー*/
iframe.calendar {
    width: 85%;
    max-width: 500px;
    height: 60vh;
    display: block;
    margin: 0 auto;
}

p.note-1 {
    font-size: clamp(0.5rem, 0.321rem + 0.89vw, 0.75rem);
    margin: 10px auto;
    max-width: 500px;
    width: 85%;
    text-align: left;
}









/*プライス表*/
.price-hyou-1 {
    margin: 4em 0;
}

.price-box {
    display: flex;
    border: 2px solid #c9caca;
    border-radius: 15px;
    overflow: hidden;
    width: 85%;
    max-width: 560px;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    margin: 0 auto;
}

.price-label {
    background-color: #dcdddd;
    padding: 0.5em 0.8em;
    color: #333;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex: 1;
}

.price-label p {
    margin-bottom: 0;
    line-height: 1.4em;
}

.price-value {
    background-color: #fff;
    padding: 0.5em 0.8em;
    display: flex;
    align-items: center;
    color: #f28c8c;
    font-weight: bold;
    flex: 1;
    justify-content: center;
}

p.price-hyou-font-1 {
    width: 85%;
    max-width: 560px;
    text-align: left;
    margin: 5px auto;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.5em;
}

@media (max-width: 1000px) {
.price-label p {
    font-size: clamp(0.875rem, 0.607rem + 1.34vw, 1.25rem); /*14,20*/
}

.price-value span {
    font-size: clamp(1.313rem, 0.821rem + 2.46vw, 1.25rem); /*21,32*/
}
}

@media (min-width: 1001px) {
.price-label p {
    font-size: clamp(0.875rem, 0.02rem + 1.37vw, 1.25rem); /*14,20*/
}


.price-value span {
    font-size: clamp(1.313rem, -0.255rem + 2.51vw, 1.5rem); /*21,32*/
}
}

































/*採用情報*/
.careers-1 {
    background: url('images/kounomiyaswimmingclub_img-40.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .careers-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.careers-1-2 {
    background: url('images/kounomiyaswimmingclub_img-42.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .careers-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.careers-2 {
    background: url('images/kounomiyaswimmingclub_img-41.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .careers-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.careers-2-2 {
    background: url('images/kounomiyaswimmingclub_img-43.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
/*     text-align: center; */
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .careers-2-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

/* @media (max-width: 1000px) {
    .careers-2-2 {
        padding-bottom: 8em;
         padding-right: 1em;
        padding-left: 1em; 
    }
} */





















/*企業・勤務先情報*/

.company-hyo {
    margin-bottom: 2em;
}

.company-hyo-in {
    width: 90%;
    margin: 1.2em auto;
    max-width: 460px;
    border-bottom-color: #9fa0a0;
    border-bottom-style: dotted;
    border-bottom-width: 2px;
}

.company-hyo-in-2 {
    width: 90%;
    margin: 1.2em auto;
    max-width: 460px;
}

.company-hyo-in p {
    margin-bottom: 0.5em;
}

.company-hyo-in-2 p {
    margin-bottom: 0.5em;
}

p.company-hyo-in-font-1 {
    font-weight: 500;
}

iframe.map-1 {
    width: 90%;
    margin: 0 auto;
    display: block;
    aspect-ratio: 9 / 6;
}

p.requirements-1-font-1 {
    font-weight: 400;
    font-size: 20px;
    margin-bottom: -0.5em;
}














/*アコーディオン*/
 
 @media screen and (min-width:1001px){
.accordion-item {
    margin-bottom: 10px;
    position: relative;
    width: 90%;
	max-width: 580px;
    margin-right: auto;
    margin-left: auto;
    letter-spacing: 1px;
}

.requirements-1 {
    text-align: center;
    margin: 0 auto 4em auto;
    padding: 0 0.5em;
}

.qa-1 {
    text-align: center;
    margin: 1em auto 4em auto;
    padding: 0 0.5em;
}}

@media screen and (max-width:1000px){
.accordion-item {
    margin: 1em auto;
    position: relative;
    width: 100%;
    letter-spacing: 0.5px;
    font-size: 1em;
}

.requirements-1 {
    text-align: center;
    margin: 0 auto 4em auto;
    padding: 0px 1em;
    max-width: 660px;
}

.qa-1 {
    text-align: center;
    margin: 1em auto 4em auto;
    padding: 0px 1em;
    max-width: 660px;
}}

.accordion-header {
    background-color: #ffffff;
    padding: 15px 10px;
    cursor: pointer;
    position: relative;
    border-radius: 10px;
/*     border: 2px #fff solid; */
    color: #3e3a39;
    text-align: left;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    letter-spacing: -1px;
/*     max-width: 430px; */
    margin: 0 auto;
}

.accordion-header.blue {
    background: #e4f6ff;
}

.accordion-header.blue.answer-flex {
    display: flex;
    align-items: center;
}

@media (max-width: 1000px) {
.accordion-header {
    font-size: clamp(0.875rem, 0.696rem + 0.89vw, 1.125rem); /*14,18*/
}
}

@media (min-width: 1001px) {
.accordion-header {
    font-size: clamp(0.875rem, 0.305rem + 0.91vw, 1.125rem); /*14,18*/
}
}

.accordion-header.active {
  border-radius: 10px 10px 0 0;
}




.accordion-header .arrow {
    display: inline-block;
    margin-left: 5px;
    transition: transform 0.3s ease-in-out;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    background: #74bff7;
    color: #fff;
    border-radius: 20px;
    aspect-ratio: 1 / 1;
    width: 29px;
    font-size: 16px;
    text-align: center;
    padding-right: 1px;
}

.accordion-header .arrow::before {
    content: '+';
    font-weight: 900;
}

.accordion-header .arrow.up::before {
    content: '-';
    font-weight: 900;
    margin-top: -2px;
    display: block;
}

.accordion-content {
  padding: 10px;
  display: none;
}

.accordion-content.active {
    display: block;
/*     max-width: 430px; */
    margin: 0 auto;
/*     display: flex; */
}

.accordion-content.answer-flex.active {
    display: flex
;
}

.accordion-content.active {
    background: #fff;
    border: 1px solid #c9caca;
    text-align: left;
}

.accordion-content.active p.company-hyo-in-font-2 {
    font-weight: 300;
    margin-bottom: 2em;
}

p.answer-font-1 {
    color: #ff8883;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-weight: 600;
    margin-right: 3px;
}

p.answer-font-2 {
    margin-bottom: 0;
    padding-right: 30px;
}


p.question-font-1 {
    color: #74bff7;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-weight: 600;
    margin-right: 10px;
    margin-bottom: 0;
}




























/*お問合せ*/
.contact-1 {
    margin-bottom: 0;
    margin-top: -10px;
    text-align: center;
    padding-bottom: 3em;
    padding-top: 3em;
    position: relative;
    background: url('images/kounomiyaswimmingclub_img-36.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .contact-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.contact-2 {
    background: url('images/kounomiyaswimmingclub_img-37.png') no-repeat, #fff;
    background-size: 19% auto, auto;
    background-position: left 5%, center;
    margin-bottom: 0;
    padding-top: 3em;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .contact-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

@media (max-width: 1000px) {
    .contact-2 {
        padding-bottom: 8em;
        padding-right: 1em;
        padding-left: 1em;
    }
}


@media (min-width: 1001px) {
.contact-2 {
        padding-bottom: 1em;
        padding-left: 1em;
        padding-right: 1em;
    }
}

.contact-1-2 {
    background: #e4f6ff;
    margin-bottom: 0;
    margin-top: -10px;
    text-align: center;
    padding-bottom: 4em;
    padding-top: 3em;
}

.contact-btn-list {
    max-width: 560px;
    margin: 0 auto;
}

p.contact-font-1 {
    width: 80%;
    text-align: left;
    margin: -1.5em auto 5px auto;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.5em;
}






.menu-1-pc-btn-in-7 {
    position: relative;
    background: #fff;
    margin: 1em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 80%;
}

.menu-1-pc-btn-in-7 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin: 0 1em;
}

p.menu-1-pc-btn-in-7-font-1 {
    font-size: 20px;
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 0;
    letter-spacing: -1px;
}

.menu-1-pc-btn-in-7 img {
    width: 30px;
}










.menu-1-pc-btn-in-8 {
    position: relative;
    background: #e4f6ff;
    margin: 1.5em auto;
    padding: 1em 0.5em;
    font-weight: bold;
    transition-duration: 0.3s;
    border-radius: 6px;
    width: 95%;
    max-width: 360px;
}

.menu-1-pc-btn-in-8 a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    margin: 0 1em;
}

.menu-1-pc-btn-in-8:hover {
opacity:0.5;
	transition:0.3s;
}

p.menu-1-pc-btn-in-8-font-1 {
    font-size: 20px;
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 0;
    letter-spacing: -1px;
}

.menu-1-pc-btn-in-8 img {
    width: 30px;
}












input.wpcf7-form-control.wpcf7-submit.has-spinner.send-btn {
    display: block;
    position: relative;
    background: #e4f6ff;
    border: 1px solid #e4f6ff;
    margin: 2em auto;
    padding: 1em 0.5em;
    transition-duration: 0.3s;
    border-radius: 6px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    /* font-style: normal; */
    font-size: 20px;
    line-height: 1.3em;
    text-align: left;
    margin-bottom: 0;
}


.submit-wrapper {
    position: relative;
    display: block;
    width: 80%;
    max-width: 460px;
    margin: 0 auto;
}

.btn-icon {
  content: '';
  width: 26px;
  height: 26px;
  background-color: #74bff7;
  border-radius: 50%;
  position: absolute;
  top: 35%;
  right: 14px;
  margin-top: -13px;
  z-index: 1;
}

.btn-icon::after {
    content: '';
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    position: absolute;
    top: 8px;
    left: 7px;
    z-index: 2;
}



/*コンタクトフォーム*/
/* .contact-1 {
    width: 100%;
    margin: 20px 0;
} */

span.required {
    vertical-align: top;
    font-weight: 500;
    margin-right: 2em;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

.required::after {
    content: "必須";
    color: #ffffff;
    background: #ff8883;
    border-radius: 5px;
    font-size: 14px;
    padding: 0.2em 0.4em 0.2em 0.4em;
    margin-left: 10px;
    font-weight: 400;
}
	

span.required-2 {
        vertical-align: top;
        font-weight: 500;
        margin-right: 2em;
}

	
span.required-3 {
        vertical-align: top;
        font-weight: 500;
        width: 20%;
        position: relative;
        text-align: left;
}

.required-3::after {
        content: "必須";
        color: #ffffff;
        background: #ff8883;
    border-radius: 5px;
        font-size: 14px;
        padding: 0.2em 0.4em 0.2em 0.4em;
        margin-left: 0;
        font-weight: 400;
    }
	

.contact-right {
    width: 100%;
    text-align: left;
    margin-top: -1em;
    margin-bottom: 2em;
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0;
}

.wp-block-contact-form-7-contact-form-selector {
    width: 95%;
    margin: 0 auto;
}


span.required2 {
    vertical-align: top;
    font-weight: 300;
    width: 16%;
    margin-right: 2em;
    position: relative;
    text-align: left;
}



.btn-submit {
    width: 100%;
    text-align: center;
    border: solid 0.5px #000;
}









.wpcf7-form-control-wrap {
    position: relative;
    vertical-align: top;
}


	
.contact-all {
    max-width: 1000px;
    margin: 0 auto 35px auto;
}


.contact-box {
    padding: 1.5em;
    margin: 1em auto 2em auto;
    color: #000;
    text-align: left;
    background-color: #EFEFEF;
    border-radius: 20px;
}

p.contact-box-font-1 {
    text-align: center;
    margin-bottom: 0;
}

p.contact-box-font-2 {
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 22px;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
}

p.contact-box-font-3 {
    font-size: 14px;
    line-height: 1.45em;
    margin-bottom: 0;
}


































/*ブログ一覧*/

.list {
    display: flex;
    flex-direction: initial;
    gap: 1em;
    flex-wrap: wrap;
    justify-content: flex-start;
    max-width: 560px;
    margin: 0 auto;
    padding: 0 10px;
}

.entry-card {
    display: flex;
    flex-direction: column;
}

.entry-card-content {
        margin-left: 0;
    }

.entry-card-snippet.card-snippet.e-card-snippet {
    display: none;
}

.entry-card-thumb {
        width: 100%;
    }

.entry-card-meta {
    left: 0;
    text-align: left;
}

span.far.fa-clock {
    display: none;
}

.entry-date {
    margin-left: 0px;
}

.entry-card-title {
    margin: 0 0 0 0;
    font-size: 16px;
    font-weight: 500;
}

/* .cat-label {
    position: absolute;
    top: 18.5em;
    left: 110px;
} */

.e-card-info {
    justify-content: left;
/*     padding-left: 1em; */
}

a.entry-card-wrap.a-wrap.border-element.cf {
    width: calc(100% / 2 - 3%);
}

.cat-label-re1 .cat-label {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
}

/* .post {
    padding: 1em;
} */

.under-entry-content {
    padding: 0 1em;
}



/*本文*/
.date-cat-wrap {
    display: flex;
    align-items: center;
    gap: 0.5em;
    flex-wrap: wrap;
    margin: 10px 0;
}

.date-cat-wrap .date-tags {
    line-height: 1;
    text-align: right;
    margin-bottom: 0;
}

/*下部分*/
.under-entry-content {
/*     padding: 1em auto 0 auto; */
    background: #f0f3f3;
    margin: 1em auto 0 auto;
    border-radius: 20px;
    width: 95%;
}

div#pager-post-navi {
    margin-bottom: 0;
   }

.widget h2 {
    font-size: 24px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    text-align: center;
    border-bottom-color: #9fa0a0;
    border-bottom-style: dotted;
    border-bottom-width: 2px;
}

.widget_categories ul li a {
    text-decoration: underline;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-size: 21px;
    margin-left: 10px;
    padding: 5px 0;
}



/*コンテンツ下*/

body.single div#content-bottom-in,
body.category div#content-bottom-in {
  padding: 1em 1em;
  background: #f0f3f3;
  margin: 1em auto 3em auto;
  border-radius: 20px;
  width: 90%;
  position: relative;
  /* top: 60px; */
}

.home div#content-bottom-in {
    display: none;
}

.widget-entry-card-date {
	display:block;
}


















/* ウィジェットは非表示となっておるので日付を表示に編変更 */
.new-entry-card-date {
display:block; 
}


/* カテゴリーラベル基準変更 */
.new-entry-cards .cat-label {
position: unset;
}


/* タイトル、日付の並び順変更 */
/* .new-entry-card-content {
display: flex;
flex-direction: column-reverse;
} */

.new-entry-card-content {
    display: flex
;
    flex-direction: column-reverse;
    align-items: flex-start;
}



















.swiper {
    padding-left: 30px !important;
    padding-right: 30px !important;
}

.swiper-slide {
  width: 90%;
  margin: 0 auto; /* 中央寄せ */
}

a.swipe-link {
    text-decoration: none;
    color: #3e3a39;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    font-size: 24px;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
color: #3e3a39;
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    color: #3e3a39;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    color: #3e3a39;
}


































/*スライドショー自動*/

.slideshow1 {
    display: flex;
    margin: 1em auto;
    width: 100%;
    /* height: 375px; */
    overflow: hidden;
}

.slideshow1 ul {
  display: flex;
  padding: 0;
  margin: 0;
}

.slideshow1 li {
  width: 180px;
  list-style: none;
}

.slideshow1 ul:first-child {
  animation: slideshow1 150s -75s linear infinite;
}

.slideshow1 ul:last-child {
  animation: slideshow2 150s linear infinite;
}

@keyframes slideshow1 {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes slideshow2 {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-200%);
  }
}



































/*年間イベント関連ブログ*/

.event-newlist .wp-block-latest-posts__featured-image {
    width: 150px;
    margin: 0 auto;
}

.event-newlist .article ul li {
    margin: 0.5em;
}

.new-entry-cards.widget-entry-cards.no-icon.cf.card-large-image.large-thumb.event-newlist {
    display: flex;
    width: 1000px;
}

a.new-entry-card-link.widget-entry-card-link.a-wrap {
    padding: 1em 0.5em;
}

.new-entry-card-title.widget-entry-card-title.card-title {
    text-align: left;
}



/*TOP_NEWS*/

.top-news-newlist-all {
    position: relative;
}

.top-news-newlist {
    padding: 1em 1em;
    background: #fff;
    margin: 1em auto;
    border-radius: 20px;
    width: 96%;
    position: relative;
}

.top-news-newlist .post {
     padding: 0; 
}

.top-news-newlist .new-entry-card.widget-entry-card {
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.top-news-newlist figure.new-entry-card-thumb.widget-entry-card-thumb.card-thumb {
    width: 20%;
    max-width: 130px;
    order: 1;
    margin: 0 0 0 auto;
}

.top-news-newlist .widget-entry-card-content {
     margin-left: 0px; 
}

.new-entry-cards.widget-entry-cards.no-icon.cf.border-partition.top-news-newlist {
    padding-bottom: 4em;
}





















/*こども教室*/

.jrclass-1 {
    background: url('images/kounomiyaswimmingclub_img-59.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
    margin-bottom: 0;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.jrclass-1-sen-1-flex {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 600;
    font-style: normal;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    padding: 0 1em;
}

.jrclass-1-sen-1-flex p {
    margin-bottom: 0;
}

.jrclass-1-sen-1-flex-left {
    background: #74bff7;
    color: #fff;
    margin-right: 10px;
    padding: 0.2em 1em;
    border-radius: 30px;
}

.jrclass-1-img-1 {
    margin: 1em auto 2em auto;
    position: relative;
    width: 85%;
    max-width: 500px;
}

img.jrclass-1-img-1-sen1 {
}

img.jrclass-1-img-1-sen2 {
    position: absolute;
    max-width: 120px;
    width: 25%;
    right: -6px;
    bottom: -12px;
}

img.jrclass-1-img-1-sen3 {
    position: absolute;
    max-width: 150px;
    width: 36%;
    right: -17px;
    bottom: -12px;
}

img.jrclass-1-img-1-sen4 {
    position: absolute;
    max-width: 135px;
    width: 30%;
    right: -18px;
    bottom: -15px;
}

img.jrclass-1-img-1-sen5 {
    position: absolute;
    max-width: 150px;
    width: 33%;
    right: -9px;
    bottom: -7px;
}



.jrclass-2{
    background: url('images/kounomiyaswimmingclub_img-60.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.jrclass-1-2 {
    background: url('images/kounomiyaswimmingclub_img-61.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
    margin-bottom: 0;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-1-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.jrclass-2-2{
    background: url('images/kounomiyaswimmingclub_img-62.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-2-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}


.jrclass-1-3 {
    background: #e4f6ff;
    margin-bottom: 0;
    margin-top: -10px;
    text-align: center;
    padding-bottom: 3em;
    padding-top: 3em;
    position: relative;
}

.jrclass-1-3-in-2-img-1 img {
    display: block;
    width: 85%;
    margin: 0 auto;
    max-width: 500px;
}



.jrclass-1-3-in-1 {
    background: url('images/kounomiyaswimmingclub_img-63.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 2%, center;
	padding: 0 1em;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-1-3-in-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}

.jrclass-1-3-in-2 {
    background: url('images/kounomiyaswimmingclub_img-64.png') no-repeat, #e4f6ff;
    background-size: 19% auto, auto;
    background-position: left 2%, center;
	padding: 0 1em;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-1-3-in-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.jrclass-2-3{
    background: url('images/kounomiyaswimmingclub_img-65.png') no-repeat, #fff;
    padding-bottom: 0;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .jrclass-2-3 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}





































/*料金表_こども教室*/

p.price-title {
    margin-bottom: -1em;
    text-align: left;
    margin-left: 2em;
    font-size: 1.1em;
}

.table-wrapper {
	padding: 2em;
    width: 1000px;
  border-radius: 10px;       /* ← 角丸は wrapper に */
  overflow: hidden;          /* ← 内部のはみ出しを防ぐ */
/*   box-shadow: 0 2px 8px rgba(0,0,0,0.1); */
  display: inline-block;
}

.class-schedule {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    text-align: center;
    background: #fff;
    border-radius: 10px;
}

.class-schedule th,
.class-schedule td {
  border: 1px solid #ccc;
  padding: 7px;
  box-sizing: border-box;
}

.class-schedule thead th {
  background-color: #eee;
}

.class-schedule th {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}

.class-schedule td {
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
	background: #fff;
}

.small-text {
    font-size: 0.85em;
    color: #555;
    font-family: 'Noto Sans JP';
    font-weight: 300;
    margin-top: -3px;
    display: block;
}

td.bold-text {
    font-weight: 600;
}

@media screen and (max-width: 834px) {
    table th, table td {
        padding: 0;
        font-size: 1em;
    }
}


.class-schedule td:first-child {
    font-family: "Zen Maru Gothic", serif;
/*     font-weight: 600; */
    font-style: normal;
    font-size: 1.1em;
}
.class-schedule td:nth-child(2) {
    font-size: 1em;
}

.class-schedule td:nth-child(3) {
    font-size: 1em;
    font-family: 'Noto Sans JP';
    font-weight: 400;
}

.tag {
    display: inline-block;
    background-color: #e4f6ff;
    color: #333;
    font-size: 0.85em;
    border-radius: 5px;
    padding: 0px 8px;
    margin-right: 6px;
    margin-top: 5px;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 600;
}

.note {
    color: #74bff7;
    font-size: 0.85em;
    margin-top: 0px;
    font-family: "Zen Maru Gothic", serif;
}

/* .price span {
  display: block;
} */

td.price {
    font-family: 'Noto Sans JP';
    font-size: 1em;
}

/* .price .yen {
    font-size: 1.8em;
    font-weight: bold;
    color: #f08080;
    font-family: "Zen Maru Gothic", serif;
    margin-top: -7px;
    display: block;
    line-height: 1.2em;
} */

span.yen {
    font-size: 1.5em;
    font-weight: bold;
    color: #f08080;
    font-family: "Zen Maru Gothic", serif;
    margin-top: -5px;
    display: block;
    line-height: 1.2em;
}


/* 上左 */
.class-schedule thead tr:first-child th:first-child {
  border-top-left-radius: 10px;
}

/* 上右 */
.class-schedule thead tr:first-child th:last-child {
  border-top-right-radius: 10px;
}

/* 下左 */
.class-schedule tbody tr:last-child td:first-child {
  border-bottom-left-radius: 10px;
}



/* 右下 */
.class-schedule tbody tr:first-child td:last-child {
  border-bottom-right-radius: 10px;
}





/* 上左 */
.class-schedule.ad thead tr:first-child th:first-child {
  border-top-left-radius: 10px;
}

/* 上右 */
.class-schedule.ad thead tr:first-child th:last-child {
  border-top-right-radius: 10px;
}

/* 下左 */
.class-schedule.ad tbody tr:last-child td:first-child {
    border-bottom-left-radius: 0px;
}
.class-schedule.ad tbody tr:first-child td:first-child {
    border-bottom-left-radius: 10px;
}

/* 右下 */
.class-schedule.ad tbody tr:first-child td:last-child {
    border-bottom-right-radius: 0px;
}
.class-schedule.ad tbody tr:last-child td:last-child {
    border-bottom-right-radius: 10px;
}


tr.price-3 td.price {
    padding: 1em 0;
    line-height: 1.2em;
}
























/*大人教室*/

.adultclass-1 {
    background: url('images/kounomiyaswimmingclub_img-76.png') no-repeat, #e4f6ff;
    padding-bottom: 5em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
    margin-bottom: 0;
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .adultclass-1 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.adultclass-2{
    background: url('images/kounomiyaswimmingclub_img-77.png') no-repeat, #fff;
    padding-bottom: 3em;
    padding-top: 3em;
    text-align: center;
    margin-top: -10px;
     margin-bottom: 0; 
    background-size: 19% auto, auto;
    background-position: left 10%, center;
    position: relative;
}

@media screen and (min-width: 620px) and (max-width: 1000px) {
  .adultclass-2 {
    background-size: 11% auto, auto;
	background-position: left 3%, center;  
  }
}



.top-class-appeal-6-in {
    margin: 10px 0;
}

.top-class-appeal-6-in-flex {
    display: flex;
    margin: 5px 0;
    align-items: center;
    justify-content: center;
}

.top-class-appeal-6-in-flex-left {
    background: #fff;
/*     flex-grow: 1; */
    padding: 5px;
    margin-right: 5px;
	border-radius: 5px;
}

.top-class-appeal-6-in-flex-right {
    display: flex;
    background: #fff;
    padding: 5px;
    align-items: center;
	border-radius: 5px;
}

p.top-class-appeal-6-in-flex-left-font-1 {
    font-weight: 500;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    padding: 3px;
    font-size: 0.8em;
	line-height: 1.2em;
}

p.top-class-appeal-6-in-flex-right-font-1 {
    font-size: 0.8em;
	line-height: 1.2em;
}

p.top-class-appeal-6-in-flex-right-font-2 {
    font-size: 1em;
    font-weight: 700;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    color: #74bff7;
	line-height: 1.2em;
}


.top-class-appeal-6-in-flex-left.yellow {
    background: #fff2b2;
}

.top-class-appeal-6-in-flex-right.yellow {
   background: #fff2b2;
}

p.price-hyou-font-2 {
    max-width: 560px;
    margin: 5px auto;
    font-weight: 300;
    font-size: 16px;
    line-height: 1.5em;
}


































/*ローディング*/
  
/* ローディング背景 */
.loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #74bff7;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}

.loading.is-active {
  opacity: 0;
  visibility: hidden;
}

/* アニメーション領域 */
.loading-animation {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #74bff7;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
}

.loading-animation.is-active {
  opacity: 1;
  visibility: visible;
}

/* コンテンツを縦に並べる */
.loading-content {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* テキストのスタイル */
.loading-text {
  margin-top: 20px;
  font-size: 16px;
  color: #fff;
  letter-spacing: 1px;
}

/* 下部中央に配置されるテキスト */
.loading-footer {
  position: absolute;
  bottom: 30px;
  width: 100%;
  text-align: center;
  font-size: 14px;
  color: #ffffff;
  letter-spacing: 2px;
  line-height: 1.2em;
}



/* ロゴ画像の左右スイングアニメーション */
.swing {
  animation: swing 1s infinite alternate ease-in-out;
  transform-origin: center bottom;
}

/* スイングアニメーションの定義 */
@keyframes swing {
  0% {
    transform: rotate(-10deg);
  }
  100% {
    transform: rotate(10deg);
  }
}



































/*目次・見出し*/

div#toc {
    padding: 1em;
    background: #f0f3f3;
    margin: 1em auto;
    border-radius: 20px;
    width: 95%;
    border: 0;
}

.toc-title {
    font-size: 1.1em;
    text-align: center;
    display: block;
    padding: 2px 16px;
    /* font-size: 24px; */
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
    text-align: center;
    border-bottom-color: #9fa0a0;
    border-bottom-style: dotted;
    border-bottom-width: 2px;
}

h2.wp-block-heading {
    background: #fff;
    color: #74bff7;
    font-family: "Zen Maru Gothic", serif;
    font-weight: 500;
    font-style: normal;
}



































/*LINEボタン*/
.contact-foot {
    position: fixed;
/*     display: none; */
    z-index: 1;
}


@media (max-width: 1000px) {
    .line-btn {
        width: 50%;
        max-width: 170px;
        display: flex;
        position: fixed;
        bottom: 10px;
        right: 80px;
        background-color: #4cc764;
        justify-content: center;
        padding: 10px;
        border-radius: 30px;
        z-index: 1;
        align-items: center;
    }

.line-btn img {
    width: 30px;
    margin-right: 10px;
}
}


@media (min-width: 1001px) {
.line-btn {
        width: 20%;
        max-width: 250px;
        display: flex;
        position: fixed;
        bottom: 40px;
        left: 15px;
        background-color: #4cc764;
        justify-content: center;
        padding: 10px;
        border-radius: 30px;
        overflow: hidden;
    }

.line-btn img {
    width: 40px;
    margin-right: 10px;
}
}


@media screen and (min-width: 1001px) and (max-width: 1280px) {
.line-btn {
        margin-left: calc(100% - 38% - 270px - 20em);
    }
   }
   
@media screen and (min-width: 1281px) {
.line-btn {
        margin-left: calc(100% - 38% - 270px - 17em);
    }
   }  


.line-btn p{
    font-family: "Zen Maru Gothic", serif;
    font-weight: 600;
    font-style: normal;
}

a .line-btn {
    color: #fff;
}

.line-btn:hover {
background: #81e291;
	transition:0.3s;
}































/*カテゴリー別カスタム*/
ul.custom-cat-list.type1 {
    padding: 0;
    margin: 0;
    list-style: none;
}

ul.custom-cat-list.type1 li {
    margin: 5px 0;
}
  
ul.custom-cat-list.type1 li a {
    text-decoration: underline;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-size: 21px;
    margin-left: 10px;
    padding: 5px 0;
    color: #3e3a39;
}




ul.custom-cat-list.type2 {
    padding: 0;
    margin: 0;
    list-style: none;
}

ul.custom-cat-list.type2 li {
    margin: 5px 0;
}
  
ul.custom-cat-list.type2 li a {
    text-decoration: underline;
    font-family: "Zen Maru Gothic", serif;
    font-style: normal;
    font-size: 21px;
    margin-left: 10px;
    padding: 5px 0;
    color: #3e3a39;
}


































/*ループアニメーション*/
@media (min-width: 1001px) {
.scroll-container {
    width: 150px;
    height: 100vh;
    overflow: hidden;
    position: fixed;
}
}

@media (max-width: 1000px) {
body.bg-home .scroll-container {
    width: 19%;
    height: 100vh;
    overflow: hidden;
    position: absolute;
}
}

@media (max-width: 1000px) {
    body.bg-404 .scroll-container, body.bg-about .scroll-container, body.bg-admission .scroll-container, body.bg-schedule .scroll-container, body.bg-contact .scroll-container, body.bg-recruit .scroll-container, body.bg-news .scroll-container, body.bg-column .scroll-container, body.bg-jrclass .scroll-container, body.bg-adultclass .scroll-container {
        display: none;
    }
}

@media (max-width: 1000px) {
    body.bg-404 .scroll-container, body.bg-about .scroll-indicator, body.bg-admission .scroll-indicator, body.bg-schedule .scroll-indicator, body.bg-contact .scroll-indicator, body.bg-recruit .scroll-indicator, body.bg-news .scroll-indicator, body.bg-column .scroll-indicator, body.bg-jrclass .scroll-indicator, body.bg-adultclass .scroll-indicator {
        display: none;
    }
}

@media (max-width: 1000px) {
body.bg-404.scroll-content,
body.bg-about.scroll-content,
body.bg-admission.scroll-content,
body.bg-schedule.scroll-content,
body.bg-contact.scroll-content,
body.bg-recruit.scroll-content,
body.bg-news.scroll-content,
body.bg-column.scroll-content,
body.bg-jrclass.scroll-content,
body.bg-adultclass.scroll-content {
    display; none;
}
}


.scroll-content {
  display: flex;
  flex-direction: column;
  animation: scroll-loop 15s linear infinite;
}

.scroll-content img {
  width: 100%;
  height: auto;
}

@keyframes scroll-loop {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-50%);
  }
}

.scroll-content {
  will-change: transform;
  backface-visibility: hidden;
  transform: translateZ(0);
}
































/* 外枠を回転して縦方向に */
.scroll-indicator {
    display: flex;
    align-items: center;
    transform: rotate(90deg);
    transform-origin: left center;
    color: white;
    font-family: sans-serif;
    position: absolute;
}

@media screen and (max-width: 1000px){
.scroll-indicator {
    display: none;
}
}

@media screen and (min-width: 1001px) and (max-width: 1140px) {
.scroll-indicator {
    left: 50px;
    bottom: 34%;
}
}

@media screen and (min-width: 1141px){
.scroll-indicator {
    left: 50px;
    bottom: 20%;
}
}




/* テキスト部分 */
.scroll-text {
  margin-right: 10px;
  font-size: 1rem;
}

/* 線 */
.scroll-line {
  height: 2px;
  width: 60px;
  background-color: white;
  margin-right: 10px;
}

/* 青丸（あなたの指定コードに準拠） */
.circle-icon {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #74bff7;
  color: #fff;
  aspect-ratio: 1 / 1;
  padding: 0.5em;
  border-radius: 50%;
  width: 1.65em;
  height: 1.65em;
}

/* 矢印（Font Awesome 使用） */
.menu-1-pc-btn-in-2 .fa-chevron-right:before,
.fa-chevron-right:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
}














/* 共通設定：動画はまず非表示 */
#bg-video {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -20;
  object-fit: cover;
}

/* トップページだけ表示 */
body.home #bg-video {
  display: block;
}

































.sen-blogarea {
    width: 85%;
    max-width: 560px;
    margin: 0 auto;
}

h1#archive-title {
    width: 85%;
    max-width: 560px;
    margin: 1em auto;
}

.posts-not-found {
    width: 85%;
    max-width: 560px;
    margin: 0 auto;
}





.error404 article.post.article {
    padding: 1em;
    max-width: 560px;
    width: 85%;
    margin: 0 auto 6em auto;
}