@charset "UTF-8";

/**
 * フロント用の追加スタイル
 * （子テーマの style.css に書いてもよいが、長くなる場合はこちらに分ける）
 */

 @charset 'UTF-8';
/* ===== FONTFACE ===== */
@font-face {
  font-family: 'MrDeHavilandRegular';
  src: url('../fonts/MrDeHavilandRegular.eot');
  src: url('../fonts/MrDeHavilandRegular.eot') format('embedded-opentype'), url('../fonts/MrDeHavilandRegular.woff2') format('woff2'), url('../fonts/MrDeHavilandRegular.woff') format('woff'), url('../fonts/MrDeHavilandRegular.ttf') format('truetype'), url('../fonts/MrDeHavilandRegular.svg#MrDeHavilandRegular') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'HannariMincho';
  src: url('../fonts/HannariMincho.eot?#iefix') format('embedded-opentype'), url('../fonts/HannariMincho.otf') format('opentype'), url('../fonts/HannariMincho.woff') format('woff'), url('../fonts/HannariMincho.ttf') format('truetype'), url('../fonts/HannariMincho.svg#HannariMincho') format('svg');
  font-weight: normal;
  font-style: normal;
}

/*===== COMMON =====*/
/* ページ内リンク：インフォバー + ヘッダー高を考慮（--swl-anchor-offset は assets/js/custom.js で計測） */
html {
	scroll-padding-top: var(--swl-anchor-offset, 140px);
}

/* ボディフォント：元サイトに合わせてシステムフォント（ゴシック）に統一 */
body {
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    font-size: 14px;
}

.post_content h2.is-style-section_ttl,
.post_content h2.wp-block-heading.is-style-section_ttl {
    padding: 0 0.714em;
    color: #000000;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
    font-size: 14px!important;
    font-weight: 400;
    letter-spacing: normal;
}

@media only screen and (max-width: 740px) {
    .post_content h2.is-style-section_ttl span,
    .post_content h2.wp-block-heading.is-style-section_ttl span {
        font-size: 14px!important;
        margin-bottom: 10px!important;
        display: inline-block;
    }
}

/* @media only screen and (max-width: 740px) {
    .post_content h2.is-style-section_ttl + p,
    .post_content h2.wp-block-heading.is-style-section_ttl + p {
        font-size: 17px!important;
    }
} */

@media only screen and (min-width: 741px) {
    .post_content h2.is-style-section_ttl,
    .post_content h2.wp-block-heading.is-style-section_ttl {
        font-size: 36px!important;
    }
}


.post_content h2.is-style-section_ttl span {
    font-family: inherit;
    line-height: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    font-size: inherit;
}




@media only screen and (min-width: 741px) {
    .trans:hover {
        opacity: .8;
    }
}


.set-left {
    display: inline-block;
    margin-left: -0.571em;
}

.set-right {
    display: inline-block;
    margin-right: -0.571em;
}

.dot {
    display: inline-block;
}

.text-center {
    text-align: center;
}

a {
    color: #000;
    text-decoration: none;
}

/* モバイル（〜740px）で非表示にする要素に付与 */
@media only screen and (max-width: 740px) {
    .md {
        display: none !important;
    }
}

/* CF7フォームの確認・戻る・送信ボタン共通スタイル */
.link-default {
    display: block;
    width: 13.5em;
    margin: 1.3em auto 0;
    padding: 0.3em 0;
    border-style: solid;
    border-color: #6d787e;
    border-width: 0.1em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    text-align: center;
    background: #ffffff;
    cursor: pointer;
}

.link-default:hover {
    background: #cccccc;
}

@media only screen and (min-width: 741px) {
    .link-default {
        width: 220px;
        padding: 12px 0;
        font-size: 14px;
    }

    .link-default:hover {
        background-color: #cccccc;
    }
}

/*===== 下層ページ入場アニメーション =====*/
/*
 * 表示順：ヘッダー（即時） → MV .l-topTitleArea（0.4s でフェードイン）
 *                           → #main_content（MV 後にスライドアップ）
 */
@keyframes subPageContentIn {
    from {
        opacity: 0;
        transform: translate3d(0, 40px, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@media (prefers-reduced-motion: no-preference) {
    /* MV：背景画像・タイトルを一体でフェードイン（0.4s） */
    body:not(.top) .l-topTitleArea {
        animation: fadeIn 0.4s ease-out both;
    }

    /* SWELL が .l-topTitleArea__img に独自アニメーションを当てている場合をキャンセル
       → 背景画像は親コンテナの fadeIn のみで動くようにする */
    body:not(.top) .l-topTitleArea__img,
    body:not(.top) .l-topTitleArea .c-filterLayer__img {
        animation: none !important;
    }

    /* コンテンツ：MV の後（0.4s 遅延）にスライドアップ + フェードイン */
    body:not(.top) #main_content {
        animation: subPageContentIn 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s both;
    }
}


/*===== HEADER =====*/

@media not all and (min-width: 960px) {
    .w-header.pc_ {
        display: block!important;
    }
}

.l-header__customBtn.sp_{
    display: none;
}

/* 追従（親に overflow:hidden が付いていると効かない場合あり） */
#body_wrap > .c-infoBar {
	display: none;
	position: fixed;
	top: 0;
	z-index: 102;
	width: 100%;
	box-sizing: border-box;
}
@media only screen and (min-width: 741px){
  #body_wrap > .c-infoBar{
    display: block;
    padding: 11px 0 8px;
    background-color: rgba(29, 32, 136, 0.85);
    height: 44px;
  }
}

.c-infoBar:before{
  display: none;
}

.c-infoBar__text.-flow-off{
  animation: none;
  opacity: 1;
  max-width: 1200px;
  margin-inline: auto;
  justify-content: space-between;
}

.c-infoBar__text{
  padding: 0;
        color: white;
        font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
        letter-spacing: 1.4px;
        font-weight: 400;
        font-size: 14px;
        line-height: 1;
}

.c-infoBar__btn::before,
.c-infoBar__btn::after{
  display: none;
}

.c-infoBar .c-infoBar__btn{
  background-color: transparent !important;
  border: 1px solid white;
  padding: 6px 20px 4px;
  line-height: 1;
  border-radius: 0;
  box-shadow: none;
  max-width: 274px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 0;
}

header.l-header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1050;
    height: 50px;
    background-color: #19a9eb;
    opacity: .9;
    animation: none;
}

@media only screen and (min-width: 741px) {
  header.l-header{
    top: 44px;
    left: 0;
    right: 0;
    height: 100px;
  }
}

header.-series .l-header__logo{
  padding:0 1rem;
  margin-right: auto;
}

@media only screen and (min-width: 741px) {
    header.-series .l-header__logo{
        padding: 12px 0;
    }
}

header .c-gnav>.menu-item>a{
  align-items: center;
  padding: 0 1.3rem;
}

header .c-gnav>.menu-item>a .ttl{
  letter-spacing: -2px;
      font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
      font-size: 18px;
      font-weight: 400;
}

/* 960px以上：1200px未満では centering margin が生まれないため左右余白を追加。
   1440px時は container padding 20px + span auto-margin 100px = 合計120px で既存デザインと同一 */
@media only screen and (min-width: 960px) {
  #body_wrap > .c-infoBar {
    padding-inline: 20px;
  }
}

/* 741〜959px：ヘッダーを SP（≤740px）と同じ表示にする */
@media only screen and (min-width: 741px) and (max-width: 959px) {
  /* InfoBar を非表示 */
  #body_wrap > .c-infoBar {
    display: none !important;
  }
  /* ヘッダー高さ・位置を SP と同じに */
  header.l-header {
    top: 0;
    height: 50px;
  }
  /* ロゴ padding を SP と同じに */
  header.-series .l-header__logo {
    padding: 0 1rem;
  }
}

/*
 * PC（960px〜1440px）：gnav をリキッドレイアウトでスケール
 * 960px → font-size: 14px / padding: 1rem
 * 1440px → font-size: 18px / padding: 1.3rem（元サイズ維持）
 *
 * 計算式:
 *   font-size  slope = (18-14)/(1440-960) = 0.833vw  intercept = 14 - 0.00833×960 = 6px
 *   smallTitle slope = (20-16)/(1440-960) = 0.833vw  intercept = 16 - 0.00833×960 = 8px
 */
@media only screen and (min-width: 960px) {
  /* ロゴを gnav に押しつぶされないよう固定。
   * ロゴ画像の高さ: ビューポート 960px で自然高さの 85%、1440px で 100%（線形補間）。レイアウト占有も描画に一致させるため img の max-height で制御 */
  header.-series .l-header__logo {
    flex-shrink: 0;
  }
  header.-series .l-header__logo .c-headLogo__img {
    width: auto;
    height: auto;
    /* 自然高さ 77px の 85%〜100% を線形補間（属性・実ファイルと揃える。差し替え時は 65.45 / 77 / 41.558 を再計算） */
    max-height: clamp(
      65.45px,
      calc(65.45px + (100vw - 960px) / 41.55844155844156),
      77px
    );
  }
  header .c-gnav>.menu-item>a {
    padding: 0 clamp(1rem, calc(0.4rem + 0.875vw), 1.3rem);
  }
  header .c-gnav>.menu-item>a .ttl {
    font-size: clamp(14px, calc(6px + 0.833vw), 18px);
  }
  /* 電話リンクは 741〜959px のみ表示。グローバル定義より後に書かれたルールに負けないよう !important */
  header .link-phone {
    display: none !important;
  }
}

header .c-smallNavTitle{
  display: block;
  margin-top: 10px;
  font-size: 20px;
  font-family: 'MrDeHavilandRegular';
  opacity: .75;
  top: 0;
  width: 110%;
}

/* c-smallNavTitle はグローバル定義の後に書かないと 20px に上書きされるため分離 */
@media only screen and (min-width: 960px) {
  header .c-smallNavTitle {
    font-size: clamp(16px, calc(8px + 0.833vw), 20px);
  }
}

/* ヘッダーウィジェット：アイコンリンクグループ */
.w-header .group-link {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0.5rem;
}

header .link-phone,
.w-header .link-fb {
    display: inline-block;
    vertical-align: middle;
    width: 25px;
    height: 25px;
    background-repeat: no-repeat;
    background-position: center center;
}

header .link-phone {
    margin-right: 0.429em;
    background-image: url('../img/icon_phone.png');
    background-size: 26px 26px;
}

.w-header .link-fb {
    margin-right: 0.929em;
    background-image: url('../img/icon_fb.png');
    background-size: 100% 100%;
}

@media only screen and (min-width: 741px) {
    .w-header .link-fb {
        width: 26px;
        height: 25px;
        margin-right: 0;
        background-size: 100% 100%;
    }
}


/*===== FOOTER =====*/
footer {
    padding-bottom: 0.929em;
    background-color: #03004c;
}

footer .wrapper {
    text-align: center;
}

footer .link-home {
    display: inline-block;
    padding: 1.3em 2em 0.3em;
    color: white;
    font-size: 0.714em;
}

footer .list-menu-footer li {
    display: inline-block;
    vertical-align: middle;
    margin-top: 0.714em;
    border-left: solid 1px white;
}

footer .list-menu-footer li:first-child {
    border-left: 0;
}

footer .list-menu-footer li a {
    display: block;
    padding: 0 0.7em 0 0.9em;
    color: white;
    font-size: 0.714em;
}

footer .copyright {
    margin-top: 1em;
    color: white;
    font-size: 0.714em;
}

@media only screen and (min-width: 741px) {
    footer {
        padding: 0 0 40px;
    }

    footer .link-home {
        font-size: 11px;
    }

    footer .list-menu-footer {
        margin-top: 5px;
    }

    footer .list-menu-footer li a {
        padding: 0 13px;
        font-size: 10px;
        letter-spacing: 2px;
    }

    footer .copyright {
        margin-top: 27px;
        font-size: 10px;
    }

    .w-beforeFooter {
        margin-top: 0;
        background-color: #03004c;
        padding-top: 20px;
        color: #fff;
        text-align: center;
    }
}

.w-beforeFooter .footer__link-home a {
    display: block;
    padding: 1.3em 2em 0.3em;
    color: white;
    font-size: 0.714em;
    background-color: #03004c;
    text-align: center;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

#before_footer_widget.w-beforeFooter {
    display: block !important;
}

@media (min-width: 741px) {
    #before_footer_widget.w-beforeFooter {
        display: block !important;
    }

    .w-beforeFooter .footer__link-home a {
        font-size: 11px;
    }
}

@media (max-width: 740px) {
    #before_footer_widget.w-beforeFooter,
    #before_footer_widget.w-beforeFooter .l-container,
    #before_footer_widget.w-beforeFooter .widget,
    #before_footer_widget.w-beforeFooter .textwidget,
    #before_footer_widget.w-beforeFooter .footer__link-home {
        display: block !important;
    }

    #before_footer_widget.w-beforeFooter .footer__link-home a {
        display: block !important;
        padding: 1.3em 2em 0.3em;
        color: white;
        font-size: 0.714em;
        background-color: #03004c;
    }
}


/*===== HOMEPAFE =====*/
@media (min-width: 741px) { 
    .top #content{
      margin-bottom: 0!important;
    }
}
/*MV*/
.p-mainVisual__scroll.c-plainBtn{
  bottom: 41px;
  left: 50%;
  transform: translateX(-50%);
  opacity: 1;
  padding-bottom: 0;
  transition: all 0.3s ease;
}

.p-mainVisual__scroll:hover {
  opacity: 0.8;
}

@media only screen and (max-width: 740px) {
  .p-mainVisual__scroll.c-plainBtn .myScrollArrow {
    width: 33px;
    height: 33px;
  }
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal{
  bottom: 60px;
  left: 0;
  right: 0;
  width: 100%;
  padding-right: 24px;
  box-sizing: border-box;
  text-align: right;
}

@media only screen and (min-width: 1248px) {
  .swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal{
    left: 0px;
    right: -41px;
    width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 0px;
  }
}

#main_visual .swiper-pagination-bullet{
  width: 9px;
        height: 9px;
        margin: 0 22px 0;
        background-color: #bebdcb;
        border-top-left-radius: 50%;
        border-top-right-radius: 50%;
        border-bottom-left-radius: 50%;
        border-bottom-right-radius: 50%;
        opacity: 1;
}

#main_visual .swiper-pagination-bullet.swiper-pagination-bullet-active{
  width: 14px;
  height: 14px;
  background-color: #ffffff;
}

@media only screen and (max-width: 740px) {
  #main_visual .swiper-pagination-bullet {
    width: 7px;
    height: 7px;
    margin: 0 8px;
  }
  #main_visual .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 9px;
    height: 9px;
  }
}

#main_visual .p-mainVisual__textLayer{
  transform: translate(-50%, -50%);
  top: 48.5%;
  height: auto;
}
@media only screen and (min-width: 741px){
  #main_visual .p-mainVisual__textLayer{
    top: 52%;
  }
}

.p-mainVisual__slideTitle{
  font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  font-size: 1.2rem;
  font-weight: 400;
  text-shadow: 0 0 5px black;
}

@media screen and (min-width: 741px) {
    .p-mainVisual__slideTitle{
        font-size: 43px;
    }
}



/*section diving shop*/
.l-mainContent__inner>.post_content .top-lead {
    position: relative;
    z-index: 1000;
    margin-top: -0.714em !important;
    background-size: 100%;

}

@media only screen and (max-width: 740px) {
    .l-mainContent__inner > .post_content #topmv-lead.top-lead {
        background-image: url("../img/bgd_diving_shop_sm.png") !important;
        aspect-ratio: 375/355;
    }
}

@media only screen and (min-width: 741px){
    .l-mainContent__inner>.post_content .top-lead {
        margin-top: -2% !important;
        aspect-ratio: 1440/810;
    }
}
@media only screen and (min-width: 1441px){
    .l-mainContent__inner>.post_content .top-lead {
        margin-top: -3% !important;
    }
}

.top-lead .swell-block-fullWide__inner.l-container{
  position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
}
@media only screen and (min-width: 741px){
  .top-lead .swell-block-fullWide__inner.l-container{
    top: 49.8%;
  }
}

.post_content .top-lead h2.is-style-section_ttl + p {
  margin-top: 2.1em!important;
  font-size: 0.714em;
  font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
  line-height: 1.8;
  letter-spacing: 0.1em;
}

@media only screen and (min-width: 741px) {
  .post_content .top-lead h2.is-style-section_ttl + p {
    margin-top: 13px!important;
    font-size: 18px;
    line-height: 1.7;
  }
}

/*section top news*/

.p-postListWrap.top-news{
  padding-top: 24px;
}

@media only screen and (min-width: 741px) {
  .p-postListWrap.top-news{
    padding-top: 60px;
  }
}

.p-postList__meta :before,
.c-postThumb__cat:before{
  content: none;
}

.top-news .p-postList__body::after,
.p-homeContent .p-postList__body::after,
.p-archiveContent .p-postList__body::after,
.p-termContent .p-postList__body::after,
.p-searchContent .p-postList__body::after,
.p-authorContent .p-postList__body::after {
	content: "詳しくはこちら >";
	display: inline-flex;
	align-items: center;
	margin-top: 20px;
	font-size: 18px;
	line-height: 1;
  font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 400;
}

/* カード／サムネイル型：ホバー時 SWELL 既定の「詳しく」帯（メイン色＋白文字）を無効化し、本文エリアと同じ opacity のみにする */
.-type-card .p-postList__link:hover .p-postList__body::after,
.-type-thumb .p-postList__link:hover .p-postList__body::after {
	background: none !important;
	background-color: transparent !important;
	box-shadow: none !important;
	color: inherit !important;
}

.top-news .p-postList__item {
	position: relative;
}

/* カード横並び時：行内で最も高いカードに合わせて抜粋エリアの高さを揃える */
@media only screen and (min-width: 600px) {
	.p-postListWrap.top-news .p-postList.-type-card .p-postList__link {
		display: flex;
		flex-direction: column;
	}

	.p-postListWrap.top-news .p-postList.-type-card .p-postList__body {
		display: flex;
		flex-direction: column;
		flex: 1 1 auto;
		min-height: 0;
	}

	.p-postListWrap.top-news .p-postList.-type-card .p-postList__excerpt {
		flex: 1 1 auto;
		min-height: 0;
	}
}

.top-news .p-postList__title,
.p-homeContent .p-postList__title,
.p-archiveContent .p-postList__title,
.p-termContent .p-postList__title,
.p-searchContent .p-postList__title,
.p-authorContent .p-postList__title {
	display: none !important;
}

.top-news .p-postList__excerpt,
.p-homeContent .p-postList__excerpt,
.p-archiveContent .p-postList__excerpt,
.p-termContent .p-postList__excerpt,
.p-searchContent .p-postList__excerpt,
.p-authorContent .p-postList__excerpt {
	background: none;
	border: none;
	color: inherit;
	display: block;
	font-weight: 700;
	line-height: 1.5;
	margin: 0;
	padding: 0;
	font-size: 16px;
	margin-top: 16px;
}

.top-news .p-postList__body,
.p-homeContent .p-postList__body,
.p-archiveContent .p-postList__body,
.p-termContent .p-postList__body,
.p-searchContent .p-postList__body,
.p-authorContent .p-postList__body {
	padding-top: 10px;
}

.top-news .is-style-more_btn a:after{
  content: none;
}



.top-news .p-postList__thumb.c-postThumb{
  padding-top: 50px;
}

.top-news .p-postList__thumb:before{
    background: none;
}

.top-news .c-postThumb__cat {
	position: absolute;
	top: 0;
	left: 50%;
  transform: translateX(-50%);
	z-index: 2;
	display: inline-block;
	padding: 6px 12px;
	background: #D9D9D9;
	font-size: 16px;
	line-height: 1;
  color: #000;
  width: 100%;
  text-align: center;
}

.top-news .c-postTimes__posted,
.p-homeContent .c-postTimes__posted,
.p-archiveContent .c-postTimes__posted,
.p-termContent .c-postTimes__posted,
.p-searchContent .c-postTimes__posted,
.p-authorContent .c-postTimes__posted {
	font-size: 18px;
	line-height: 1;
	color: #000;
}

.top-news .is-style-more_btn a{
    display: inline-block;
    width: 100%;
  font-size: 18px;
  line-height: 1;
  color: #000;
  background-color: #D9D9D9;
}

/* SWELL「もっと見る」ボタン：ホバーは opacity のみ */
.is-style-more_btn a {
	transition: opacity 0.25s ease;
}

.is-style-more_btn a:hover,
.is-style-more_btn a:focus-visible {
	opacity: 0.8;
}

.list-menu-diving {
    margin-top: 0.643em;
}

.list-menu-diving .title-article {
    font-size: 0.857em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    text-align: center;
    margin-top: 10px;
    margin-bottom: 10px;
}

.list-menu-diving .title-article:before{
    content: none;
}

@media only screen and (max-width: 740px) {
    .list-menu-diving .item:not(:first-child) {
        margin-top: 2em;
    }
}

.list-menu-diving .item:first-child {
    margin-top: 0;
}

.list-menu-diving .item01 .inner {
    background-image: url('../img/img_menu_diving01.jpg');
}

.list-menu-diving .item01 .ct-box .text {
    font-size: 0.786em;
}

.list-menu-diving .item02 .inner {
    background-image: url('../img/img_menu_diving02.jpg');
}

@media only screen and (max-width: 740px) {
    .list-menu-diving .item02 .inner {
        height: 250px;
    }
}

.list-menu-diving .item02 .inner li,
.list-menu-diving .item05 .inner li {
    width: 10.714em;
}

.list-menu-diving .item03 .inner {
    background-image: url('../img/img_menu_diving03.jpg');
}

.list-menu-diving .item03 .ct-box .number {
    letter-spacing: -0.045em;
}

.list-menu-diving .item04 .inner {
    background-image: url('../img/img_menu_diving04.jpg');
}

.list-menu-diving .item05 .inner {
    background-image: url('../img/img_menu_diving05.jpg');
}

/*.list-menu-diving .item05 .ct-box .text {
  font-size: 0.786em;
}*/
.list-menu-diving .inner {
    position: relative;
    height: 200px;
    margin-top: 0.357em;
    padding-top: 0.786em;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

.list-menu-diving .inner:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: white;
    background-color: rgba(255, 255, 255, 0.6);
}

.list-menu-diving .inner ul {
    text-align: center;
    padding-left: 0;
}

.list-menu-diving .inner li {
    display: inline-block;
    vertical-align: middle;
    width: 6.429em;
    height: 3.571em;
    margin-left: 0.357em;
    border-style: solid;
    border-color: black;
    border-width: 0.071em;
}

.list-menu-diving .inner li:first-child {
    margin-left: 0;
}

.list-menu-diving .ct-box {
    display: table;
    width: 100%;
    height: 100%;
}

.list-menu-diving .ct-box a {
    display: table-cell;
    vertical-align: middle;
}

.list-menu-diving .ct-box a > span {
    display: block;
    font-weight: bold;
}

.list-menu-diving .ct-box .text {
    font-size: 0.644em;
    line-height: 1.6;
}

.list-menu-diving .ct-box .number {
    font-size: 0.786em;
}

.list-menu-diving .content {
    position: relative;
    height: 100%;
    z-index: 10;
}

.list-menu-diving .content > p {
    margin-top: 10px;
    font-size: 0.714em;
    text-align: center;
    line-height: 1.6;
}

.list-menu-diving .label {
    position: absolute;
    right: 0.714em;
    bottom: 0.714em;
    z-index: 1;
    width: 2.857em;
    height: 2.857em;
    background-color: white;
    background-color: rgba(255, 255, 255, 0.85);
    border-top-left-radius: 50%;
    border-top-right-radius: 50%;
    border-bottom-left-radius: 50%;
    border-bottom-right-radius: 50%;
}

.list-menu-diving .label a {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
}

.list-menu-diving .label a span {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 0.714em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    text-align: center;
    letter-spacing: -0.15em;
    line-height: 1.2;
}

@media only screen and (min-width: 741px) {
    .list-menu-diving {
        margin-top: 37px!important;
    }

    .list-menu-diving:before,
    .list-menu-diving:after {
        display: table;
        content: "";
    }

    .list-menu-diving:after {
        clear: both;
        content: " ";
        display: table;
    }

    .list-menu-diving .title-article {
        width: auto;
        font-size: 27px;
        text-align: left;
        letter-spacing: -2px;
        margin-top: 0;
        margin-bottom: 0;
    }

    .list-menu-diving .item {
        width: 50%;
        float: left;
        margin-top: 0;
        margin-bottom: 20px;
    }

    .list-menu-diving .item:nth-child(even) {
        border-left: solid 1px white;
    }

    .list-menu-diving .item:nth-child(even) .title-article {
        float: left;
        margin-left: 19px;
    }

    .list-menu-diving .item:nth-child(even) .label {
        right: 0;
        bottom: 15px;
    }

    .list-menu-diving .item:nth-child(even) .content {
        float: left;
        padding-left: 18px;
    }

    .list-menu-diving .item:nth-child(odd) .title-article {
        float: right;
    }

    .list-menu-diving .item:nth-child(odd) .label {
        right: 16px;
        bottom: 15px;
    }

    .list-menu-diving .item:nth-child(odd) .content {
        float: right;
    }

    .list-menu-diving .item01 .title-article {
        margin-left: -48px;
    }

    .list-menu-diving .item01 .ct-box .text {
        font-size: 16px;
    }

    .list-menu-diving .item02 .inner li,
    .list-menu-diving .item05 .inner li {
        width: 230px;
    }

    .list-menu-diving .item03 .title-article {
        margin-left: -72px;
    }

    .list-menu-diving .item04 .ct-box .text {
        font-size: 16px;
    }

    .list-menu-diving .item05 .title-article {
        margin-left: -123px;
    }

    .post_content h3:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{
        content: none;
    }

    /*.list-menu-diving .item05 .ct-box .text {
    font-size: 16px;
  }*/
    .list-menu-diving .inner {
        clear: both;
        height: 250px;
        margin-top: 41px;
    }
    @media (min-width: 741px) { 
        .list-menu-diving .inner {
            height: 290px;
        }
    }

    .list-menu-diving .inner ul {
        text-align: left;
    }

    .list-menu-diving .inner li {
        flex: 1;
        width: 119px;
        height: 74px;
        margin-left: 0;
        border-width: 1px;
    }

    .list-menu-diving .ct-box {
        text-align: center;
    }

    .list-menu-diving .ct-box a:hover,
    .list-menu-diving .item .label:hover {
        background-color: #00c8ff;
        background-color: rgba(0, 200, 255, 0.5);
    }

    .list-menu-diving .ct-box .text {
        font-size: 14px;
        line-height: 1.4;
    }

    .list-menu-diving .ct-box .number {
        margin-top: 5px;
        font-size: 16px;
    }

    .list-menu-diving .content {
        width: 100%;
    }

    .list-menu-diving .content > p {
        font-size: 15px;
        text-align: left;
    }

    .list-menu-diving .label {
        width: 76px;
        height: 76px;
    }

    .list-menu-diving .label a span {
        font-size: 15px;
        line-height: 1.1;
        letter-spacing: -2px;
    }
}

/* タブレット（741〜1023px）では固定幅・ネガティブマージンを無効化 */
@media only screen and (min-width: 741px) and (max-width: 1023px) {
    .list-menu-diving .title-article {
        font-size: clamp(18px, 2.5vw, 27px);
    }
    .list-menu-diving .item01 .title-article,
    .list-menu-diving .item03 .title-article,
    .list-menu-diving .item05 .title-article {
        margin-left: 0;
    }
    .list-menu-diving .item02 .inner li,
    .list-menu-diving .item05 .inner li {
        width: auto;
        flex: 1 1 160px;
    }
}

/* デスクトップ（1024px以上）では元デザインを完全復元 */
@media only screen and (min-width: 1024px) {
    .list-menu-diving .title-article {
        width: 500px;
    }
    .list-menu-diving .content {
        width: 600px;
    }
    .list-menu-diving .item01 .title-article {
        margin-left: -48px;
    }
    .list-menu-diving .item03 .title-article {
        margin-left: -72px;
    }
    .list-menu-diving .item05 .title-article {
        margin-left: -123px;
    }
}

.table-default {
    position: relative;
    width: 100%;
    margin-top: 0.357em;
    height: 100%;
}

.table-default:before {
    content: '';
    position: absolute;
    top: 3em;
    left: 5em;
    bottom: 0.714em;
    z-index: 1;
    width: 0.071em;
    border-right: dotted 1px #9f9f9f;
    height: calc(100% - 50px);
}


.table-default thead tr {
    border-top: solid 1px #9f9f9f;
    border-bottom: solid 1px #9f9f9f;
}

.table-default thead tr td {
    padding: 0.357em 0;
    font-weight: bold;
}

.table-default tbody p,
.table-default tbody .time {
    font-size: 0.786em;
    line-height: 1.5;
}

.table-default tbody .note {
    font-size: 0.714em;
    color: #000;
}

.table-default tbody tr td {
    padding: 3px 0 3px 20px;
}

.table-default tbody tr td:first-child {
    padding-left: 0;
    width: 70px;
}

.table-default tbody .divider {
    display: inline-block;
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
}

.sub-menu .table-default thead tr{
    border-top: solid 1px #9f9f9f;
    border-bottom: solid 1px #9f9f9f;
}

.sub-menu .table-default thead tr td {
    padding: 8px 0;
    background-color: transparent;
    font-size: 14px;
    color: #000;
    border: none;
}

.sub-menu .table-default tr td{
    border: none;
}

.sub-menu .wp-block-column::has(.col) {
    height: inherit;
}

.sub-menu .wp-block-column .col{
    height: 100%;
    border-bottom: solid 1px #9f9f9f;
}

@media only screen and (min-width: 741px) {
    .table-default {
        margin-top: 0;
    }

    .table-default:before {
        top: 55px;
        left: 78px;
        width: 2px;
        border-right-width: 2px;
        height: calc(100% - 65px);
    }

    .sub-menu .table-default thead tr td {
        font-size: 18px;
    }

    .table-default tbody p,
    .table-default tbody .time {
        font-size: 15px;
    }

    .table-default tbody .note {
        font-size: 13px;
    }

    .sub-menu .table-default tbody tr td {
        padding-top: 11px;
        padding-bottom: 0;
        border: none;
    }

    .table-default tbody tr td:first-child {
        width: 78px;
    }
}

.instagram-feed {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 2rem;
	padding-left: 1rem;
	padding-right: 1rem;
}

.instagram-feed__header {
	text-align: center;
	margin-bottom: 2rem;
}

.instagram-feed__header h2 {
	font-weight: bold;
}

.instagram-feed__header p {
	font-size: 17px;
}

#instafeed {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;	
}

#instafeed p {
	margin-top: 1rem;
	margin-bottom: 2rem;
}

.instagram-feed__image {
	width: 100%;
	display: block;
}

/* For phone only */
@media (max-width: 599px) {
	.instagram-feed__image:not(:first-of-type) {
		display: none !important;
	}
}

/* For tablet landscape up */
@media (min-width: 900px) {
	
	.instagram-feed__image {
		width: 25%;
		padding-left: 1rem;
		padding-right: 1rem;
	}
     
}

.instagram-feed__image a {
	display: block;
	position: relative;
	height: 0;
	padding-top: 100%;
	overflow: hidden;
}

.instagram-feed__image img {
	object-fit: cover;
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0;
	top: 0;
}



.w-header .link-instagram,
.w-header .link-blog {
    display: inline-block;
    vertical-align: middle;
    width: 1.8em;
    height: 1.8em;
    background-repeat: no-repeat;
    background-position: center center;
}

.w-header .link-instagram {
    margin-right: 0.929em;
    background-image: url('../img/icon_instagram.png');
    background-size: 100% 100%;
}

.w-header .link-blog {
    margin-right: 0.929em;
    background-image: url('../img/icon_blog.png');
    background-size: 100% 100%;
}


.content-v2 {
	padding-left: 1rem;
	padding-right: 1rem;
	text-align: center;
}

/* For tablet landscape up */
@media (min-width: 900px) {
	.content-v2 {
		padding-right: 1rem;
	}
}


.equal-width {
	display: flex;
	justify-content: space-between;
}

.equal-width li {
	margin-left: .25rem !important;
	margin-right: .25rem !important;
}

.new-service {
	width: 100% !important;
    margin: 0 !important;
    margin-top: 10px !important;
    height: 3.5em !important;
    text-align: center;
    padding: 15px;
}

.new-service a {
	display: block !important;
	width: 100%;
	text-align: center;
}

.container-new-service {
	padding-left: .25rem;
    padding-right: .25rem;
}

/* For phone only */
@media (max-width: 599px) {
	.container-new-service {
		padding-left: .25rem;
		padding-right: .25rem;
	}
}

.list-menu-diving .item06 .inner {
    background-image: url('../img/img_menu_diving06.jpg');
}

/* For phone only */
@media (max-width: 599px) {
	.list-menu-diving .item06 .inner {   
		height: 12em;
	}    
}

.list-menu-diving .item06 .ct-box .text {
    font-size: 0.786em;
}


.about-desktop-only {
	display: none;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.about-desktop-only img {
	margin-left: auto;
	margin-right: auto;
}

.about-mobile-only {
	display: none;
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.about-mobile-only img {
	margin-left: auto;
	margin-right: auto;
}


/* For tablet portrait up */
@media (min-width: 600px) {
	.about-desktop-only {
		display: block;

	}
}


/* For phone only */
@media (max-width: 599px) {
	.about-mobile-only {
		display: block;
		margin-left: auto;
		margin-right: auto;
	}    
}


    .boat-section {
        max-width: 1200px;
        margin-left: auto;
        margin-right: auto;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }
    
    .boat-section__wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    .boat-section__header {
	    width: 100%;
        text-align: center;
        padding-bottom: 2rem;
    }
    
    .boat-section__text {
        width: 100%;
        padding-bottom: 2rem;
    }
    
    /* For tablet portrait up */
    @media (min-width: 600px) {
        .boat-section__text {
            width: 45%;
        }
    }
    
    .boat-section__text p {
	    margin-bottom: 0px;
    }
    
    .boat-section__image {
        width: 100%;
    }
    
    /* For tablet portrait up */
    @media (min-width: 600px) {
        .boat-section__image {
            width: 45%;
        }
    }    
    
    .boat-section__image img {
        max-width: 100%;
        height: auto;
    }
   

/* For tablet portrait up */
@media (min-width: 600px) {
    .row01-flex-special {
	    display: flex;
	    justify-content: center;
    }  
}
/* For tablet portrait up */
@media (min-width: 600px) {
	
	.left-space-desktop {
		margin-left: 30px;
	}
     
}

.map-link {
	color: red;
	letter-spacing: 2px;
	font-weight: bold;
	text-transform: uppercase;
	text-decoration: underline;
	vertical-align: inherit !important;
	margin-left: inherit !important;
	margin-right: inherit !important;
}

.description-mobile-only {
	display: none;
	padding: 1rem;
	text-align: center;
	font-size: 0.714em;
	line-height: 1.2;
}

/* For phone only */
@media (max-width: 599px) {
	.description-mobile-only {
		display: block;
	}
}

.description-desktop-only {
	display: none;
}

/* For tablet portrait up */
@media (min-width: 600px) {
	.description-desktop-only {
		display: block;
	}	
}

/* For phone only */
@media (max-width: 599px) {
	.list-leave-shop .desc {
		min-height: 12em;
	}
}

.container-mobile-only {
	display: none;
	position: relative;
}

/* For phone only */
@media (max-width: 599px) {
	.container-mobile-only {
		display: block;
	}
}

.label-desktop-only {
	display: none;
}

/* For tablet portrait up */
@media (min-width: 600px) {
	.label-desktop-only {
		display: block;
	}	
}

.label-mobile-only {
	display: none;
	position: absolute;
	right: 0;
	background-color: #949494 !important;
}

/* For phone only */
@media (max-width: 599px) {
	.label-mobile-only {
		display: block;
	}
}

.inner-map img {
	width: 100%;
}

/* News関連 */
/* カテゴリー表示4列- */
@media (min-width: 960px) {
  .-sidebar-off .-type-card.-pc-col3 .p-postList__item, .-sidebar-off .-type-thumb.-pc-col3 .p-postList__item {
  width: 25%!important;
  }
  }



/* ========================================
   SWELL お知らせバー（ヘッダー上）: スクロール追従 ＋ FIXヘッダー位置
   カスタマイザー「表示位置：ヘッダーの上」想定
   ======================================== */
:root {
	/* バー実高とずれる場合は数値だけ調整（1行・ボタン有無で変わる） */
	--swl-child-infoBar-h: 52px;
}

/* 管理画面プレビュー／ログイン時の管理バー分 */
body.admin-bar #body_wrap > .c-infoBar {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.admin-bar #body_wrap > .c-infoBar {
		top: 46px;
	}
}

/* ========================================
TOP:価格変更のお知らせ
   ======================================== */
   .top-priceinfo h2.is-style-section_ttl span{
    font-size: 1em;
    font-weight: 600;
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
   }

   @media (min-width: 741px) {
    .top-priceinfo h2.is-style-section_ttl span{
        font-size: 24px;
        line-height: calc(42 / 24);
        font-weight: 600;
    }
   }

   .top-priceinfo h2.is-style-section_ttl + p{
    font-size: 0.714em;
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    line-height: 1.6;
    letter-spacing: normal;
    margin-top: 10px!important;
   }

   @media (min-width: 741px) {
    .top-priceinfo h2.is-style-section_ttl + p{
        font-size: 15px;
    }
   }

/* ========================================
   料金表（ダイビング）— 外側のグループブロックに class「diving-price-list」を追加
   ======================================== */
.diving-price-list{
    margin-top: 20px!important;
}

@media (min-width: 741px) {
    .diving-price-list{
        max-width: 570px;
        width: 100%;
        margin-inline: auto;
    }
}

.diving-price-list .swell-block-columns {
	margin-top: 0;
	margin-bottom: 0;
}

.diving-price-list .swell-block-columns__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	box-sizing: border-box;
	column-gap: 0;
	row-gap: 0;
	padding: 10px 0;
	border-bottom: 1px solid #231815;
    margin-inline: auto;
}

.diving-price-list .swell-block-columns:first-of-type .swell-block-columns__inner {
	border-top: 1px solid #231815;
}

.diving-price-list .swell-block-column.swl-has-mb--s {
	margin-bottom: 0 !important;
}

.diving-price-list .swell-block-column p {
	margin: 0;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.6;
	color: #000;
	letter-spacing: normal;
}

/* 左列：○ ＋ コース名 */
.diving-price-list .swell-block-columns__inner > .swell-block-column:first-child {
	flex: 0 0 230px;
	max-width: 230px;
    width: 100%;
	display: flex;
	align-items: center;
	box-sizing: border-box;
    margin-left: 0;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:first-child p {
	display: flex;
	align-items: center;
	column-gap: 10px;
	font-size: 18px;
	font-weight: 700;
	color: #000;
	letter-spacing: normal;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:first-child p::before {
	content: "";
	flex-shrink: 0;
	width: 15px;
	height: 15px;
	box-sizing: border-box;
	border: 2px solid currentColor;
	border-radius: 50%;
	margin-top: 2px;
}

@media (min-width: 741px) {
    .diving-price-list .swell-block-columns__inner > .swell-block-column:first-child p::before {
        width: 20px;
        height: 20px;
    }
}

/* 3カラム：プラン名 … 点線 … 価格（別カラム） */
.diving-price-list .swell-block-columns__inner:has(> .swell-block-column:nth-child(3)) {
	align-items: stretch;
}

.diving-price-list .swell-block-columns__inner:has(> .swell-block-column:nth-child(3)) > .swell-block-column:first-child {
	align-self: center;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):not(:last-child) {
	flex: 1 1 0;
	min-width: 0;
    max-width:150px ;
    width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	row-gap: 0;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):not(:last-child) p {
	display: flex;
	align-items: baseline;
	column-gap: 0;
	margin-bottom: 5px;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):not(:last-child) p:last-child {
	margin-bottom: 0;
}
.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(3) {
	flex: 0 0 7.5em;
	max-width: 7.5em;
	text-align: left;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(3) p {
	margin-bottom: 5px;
	font-weight: 400;
	white-space: nowrap;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(3) p:last-child {
	margin-bottom: 0;
}

/* 2カラム行（右列は本文そのまま） */
.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):last-child {
	flex: 1 1 0;
	min-width: 0;
}

.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):last-child p {
	display: block;
}

@media screen and (max-width: 740px) {
	.diving-price-list .swell-block-columns__inner {
		flex-direction: column;
		align-items: baseline;
		row-gap: 10px;
		column-gap: 0;
		padding: 5px 0;
        margin-left: 0;
	}

	.diving-price-list .swell-block-columns__inner > .swell-block-column:first-child {
		flex: none;
		max-width: none;
	}

	.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(2):not(:last-child) p::after {
		display: none;
	}

	.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(3) {
		flex: none;
		max-width: none;
		text-align: left;
	}

	.diving-price-list .swell-block-columns__inner > .swell-block-column:nth-child(3) p {
		white-space: normal;
	}
}

.diving-price-list + p.text-wrap,
.diving-price-list + p.text-wrap span{
    line-height: 1.6;
    font-size: 10px!important;
}

@media screen and (min-width: 741px) {
    .diving-price-list + p.text-wrap,
    .diving-price-list + p.text-wrap span{
        font-size: 15px!important;
    }
}

.is-style-section_ttl.mt0.mb0{
    margin-bottom: 0!important;
    margin-top: 0!important;
}

/* ========================================
   leave-shop feature section
   ======================================== */
.swell-block-fullWide.feature {
	position: relative;
	background-position: center center;
	background-size: cover;
    aspect-ratio: 1440/895;
}

.swell-block-fullWide.feature::before {
	content: none;
}

.swell-block-fullWide.feature > .swell-block-fullWide__inner {
	position: relative;
	z-index: 1;
	max-width: 1200px;
	padding-top: 56px;
	padding-bottom: 56px;
    padding-inline: 100px;
}
@media (min-width: 741px) {
    .swell-block-fullWide.feature > .swell-block-fullWide__inner {
        padding-top: 34px;
        padding-bottom: 34px;
    }
}

.swell-block-fullWide.feature .swell-block-columns {
	margin-top: 22px;
}

.swell-block-fullWide.feature .swell-block-columns:first-child {
	margin-top: 0;
}

.swell-block-fullWide.feature .swell-block-columns__inner {
	display: flex;
	column-gap: 40px;
}

.swell-block-fullWide.feature .swell-block-column.swl-has-mb--s {
	flex: 1 1 0;
	margin: 0 !important;
	padding:0;
    width: 50%;
}

.swell-block-fullWide.feature .feature-title {
    padding: 0.3em 0;
    color: white;
    font-size: 0.714em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.2;
    display: block;
    width: 100%;
    min-height: 2.143em;
    padding: 0 0.714em;
    background-color: rgba(29, 32, 136, 0.5);
    text-align: center;
    margin-bottom: 0;
}

@media (min-width: 741px) {
    .swell-block-fullWide.feature .feature-title {
        padding: 8px 0 5px;
        font-size: 21px;
        white-space: nowrap;
    }
    }

.swell-block-fullWide.feature .feature-text {
    min-height: 9.743em;
    margin-top: 0.143em;
    padding: 0.286em 0.429em;
    background-color: rgba(29, 32, 136, 0.3);
    color: white;
    font-size: 0.714em;
    line-height: 1.6;
}

@media (min-width: 741px) {
    .swell-block-fullWide.feature .feature-text {
        min-height: 150px;
        margin-top: 3px;
        padding: 9px 11px;
        font-size: 14px;
        line-height: 1.75;
    }
}

.swell-block-fullWide.feature .feature-text br {
	display: block;
	content: "";
	margin-top: 8px;
}

@media screen and (max-width: 960px) {
	.swell-block-fullWide.feature > .swell-block-fullWide__inner {
		max-width: 760px;
		padding-top: 42px;
		padding-bottom: 42px;
	}

	.swell-block-fullWide.feature .swell-block-columns__inner {
		column-gap: 16px;
	}

	.swell-block-fullWide.feature .swell-block-column.swl-has-mb--s {
		padding: 14px 14px 12px;
	}

	.swell-block-fullWide.feature .feature-title {
		font-size: 18px;
	}

	.swell-block-fullWide.feature .feature-text {
		font-size: 13px;
	}
}

@media screen and (max-width: 740px) {
    .swell-block-fullWide.feature .swell-block-column.swl-has-mb--s{
		padding: 0;
	}

	.swell-block-fullWide.feature > .swell-block-fullWide__inner {
		padding-top: 28px;
		padding-bottom: 28px;
                max-width: 100%;
        padding-inline: 15px;
	}

	.swell-block-fullWide.feature .swell-block-columns {
		margin-top: 12px;
	}

	.swell-block-fullWide.feature .swell-block-columns__inner {
		row-gap: 12px;
        margin-left: 0;
        column-gap: 10px;
	}

	.swell-block-fullWide.feature .feature-title {
		font-size: 10px;
        padding: 0;
        min-height: 35px;
        display: flex;
        align-items: center;
        justify-content: center;
	}

	.swell-block-fullWide.feature .feature-text {
		margin-top: 10px;
		font-size: 10px;
		letter-spacing: 0.03em;
        min-height: 18em;
		line-height: 1.6;
	}
}

/* ========================================
   ショップ案内
   ======================================== */

   .wp-block-group.is-stack.about-title{
    width: 100%;
    height: 9em;
    background: url(../img/img_about.jpg) no-repeat center center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
   }

@media (min-width: 741px) {
    .wp-block-group.is-stack.about-title{
        height: 300px;
    }
}

.wp-block-group.is-stack.about-title > h2.is-style-section_ttl{
    color: white;
    font-size: 0.714em;
    line-height: 1.2;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

@media (min-width: 741px) {
    .wp-block-group.is-stack.about-title > h2.is-style-section_ttl{
        font-size: 37px;
    }
}

.wp-block-group.is-stack.about-title > h3.is-style-section_ttl{
    margin-top: 0.357em;
    font-family: 'MrDeHavilandRegular';
    color: white;
}

@media (min-width: 741px) {
    .wp-block-group.is-stack.about-title > h3.is-style-section_ttl{
        margin-top: 13px;
        font-size: 33px;
        opacity: .75;
    }
}

h3.wp-block-heading.has-text-align-center.is-style-section_ttl {
    font-family: 'MrDeHavilandRegular', serif;
}

#shop h3.is-style-section_ttl{
    margin-top: 0.357em;
    font-family: 'MrDeHavilandRegular';
    color: white;
}

@media (min-width: 741px) {
    #shop h3.is-style-section_ttl{
        margin-top: 13px;
        font-size: 33px;
        opacity: .75;
        font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    }

    #shop h3.wp-block-heading.has-text-align-center.is-style-section_ttl {
        font-family: 'MrDeHavilandRegular', serif;
    }
}

#shop p{
    margin-top: 1.182em;
    font-size: 0.786em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.3;
}

@media (min-width: 741px) {
    #shop p{
        font-size: 21px;
        line-height: 1.4;
    }
}

#shop .logo-img{
    margin-top: 35px;
    margin-bottom: 50px!important;
}

@media (min-width: 741px) {
    #shop .logo-img{
        margin-top: 70px;
        margin-bottom: 38px!important;
    }
}

#shop .mt-mb0{
    margin-top: 0!important;
    margin-bottom: 0!important;
}

#shop .mt-mb2rem{
    margin-top: 2rem!important;
    margin-bottom: 2rem!important;
}

@media (min-width: 741px) {
    #shop .mt-mb2rem{
        margin-top: 40px!important;
        margin-bottom: 40px!important;
    }
}

#shop .mt72mb18{
    margin-top: 50px!important;
    margin-bottom: 14px!important;
}

@media (min-width: 741px) {
    #shop .mt72mb18{
        margin-top: 72px!important;
        margin-bottom: 18px!important;
    }
}

/* 当日までの流れセクション */
#flow{
    padding-top: 30px!important;
    padding-bottom: 30px!important;
}

@media (min-width: 741px) {
    #flow{
        padding-top: 25px!important;
        padding-bottom: 42px!important;
    }
}

#flow h2.is-style-section_ttl {
    padding: 0 0.714em;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
    font-size: 26px;
}

#flow h4.is-style-section_ttl{
    margin-top: 0.7em!important;
    font-size: 0.714em;
    font-weight: bold;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}

@media (min-width: 741px) {
    #flow h4.is-style-section_ttl{
        margin-bottom: 14px;
        font-size: 18px;
    }
}

#flow p {
    margin-top: 0.4em;
    color: #404040;
    font-size: 0.714em;
    line-height: 1.6;
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
}

@media (min-width: 741px) {
    #flow p{
        font-size: 14px;
        line-height: 1.9;
    }
}

#flow p.has-text-align-center {
	text-align: center;
}

#flow .wp-block-list {
    margin-top: 0.5em;
}

@media (min-width: 741px) {
    #flow .wp-block-list {
        margin-top: 22px;
        max-width: 500px;
        width: 100%;
        margin-inline: auto;
        padding: 0 20px;
    }
}

#flow .wp-block-list > li {
    position: relative;
    padding-left: 0;
    color: #404040;
    font-size: 0.714em;
    line-height: 1.8;
}
@media (min-width: 741px) {
    #flow .wp-block-list > li {
        font-size: 14px;
        line-height: 2;
    }
}

#flow .wp-block-list > li:first-child {
	margin-top: 0;
}

#flow .wp-block-buttons {
	margin-top: 26px;
	margin-bottom: 0;
}

#flow .wp-block-button .wp-block-button__link {
    display: block;
    width: 13.5em;
    margin: 1.3em auto 0;
    padding: 0.3em 0;
    border-style: solid;
    border-color: #6d787e;
    border-width: 0.1em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    text-align: center;
    background: #ffffff;
}

@media (min-width: 741px) {
    #flow .wp-block-button .wp-block-button__link {
        width: 220px;
        padding: 6px 0;
        font-size: 14px;
                margin-top: 39px;
    }
}

#flow .wp-block-image {
	margin-top: 32px;
	margin-bottom: 0;
}
@media (min-width: 741px) {
    #flow .wp-block-image {
        margin-top: 52px;
        max-width: 1002px;
        margin-inline: auto;
    }
}
#flow .wp-block-image img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

#flow .wp-block-image + h2.is-style-section_ttl {
	margin-top: 30px;
}

#flow .wp-block-image + h2.is-style-section_ttl + p {
	margin-top: 16px;
}

@media (min-width: 741px) {
    #flow .wp-block-image + h2.is-style-section_ttl + p {
        margin-top: 22px;
        max-width: 484px;
        margin-inline: auto;
    }
}

/* ========================================
   集合場所セクション
   ======================================== */
#access {
	position: relative;
	text-align: center;
}

@media (min-width: 741px) {
    #access{
        padding-top: 24px!important;
        padding-bottom: 0!important;
    }
}

#access h2.is-style-section_ttl {
    padding: 0 0.714em;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
}

@media (min-width: 741px) {
    #access h2.is-style-section_ttl {
        font-size: 26px;
        letter-spacing: 0.1em;
    }
}

#access p.has-text-align-center {
    margin-top: 0.6em;
    font-size: 0.714em;
    line-height: 1.5;
    margin-bottom: 0!important;
}

@media (min-width: 741px) {
    #access p.has-text-align-center {
        margin-top: 10px!important;
        font-size: 14px;
        line-height: 1.7;
    }
}
#access p.has-text-align-center a {
	color: #d40000;
	text-decoration: underline;
    letter-spacing: 2px;
    font-weight: bold;
    text-transform: uppercase;

}

#access .wp-block-image {
	margin-bottom: 0;
}

#access .wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/* ========================================
   スタッフ紹介・ボート紹介（#staff）
   ======================================== */
#staff{
    padding-top: 30px!important;
    padding-bottom: 30px!important;
}

@media (min-width: 741px) {
    #staff{
        padding-top: 86px!important;
        padding-bottom: 0!important;
    }
}

#staff > .swell-block-fullWide__inner {
    max-width: 1100px;
    margin-inline: auto;
    padding-inline: 50px;
}

#staff h2.is-style-section_ttl {
    padding: 0 0.714em;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
}

@media (min-width: 741px) {
    #staff h2.is-style-section_ttl {
        font-size: 36px;
    }
}

/* スタッフ行：左 名前 / 中央 本文 / 右 写真 */
#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) {
	margin-top: 28px;
	margin-bottom: 0;
	gap: 24px 32px;
	align-items: flex-start;
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column {
	margin-top: 0;
}

@media screen and (max-width: 740px) {
	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-start;
        justify-content: space-between;
	}

	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 {
		order: 1;
		flex: 1 1 calc(50% - 8px) !important;
		min-width: 0;
		max-width: calc(55% - 8px);
	}

	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column3 {
		order: 2;
		flex: 1 1 calc(50% - 8px) !important;
		min-width: 0;
		max-width: calc(40% - 8px);
	}

	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column2 {
		order: 3;
		flex: 1 1 100% !important;
		min-width: 100%;
		max-width: 100%;
	}

	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column3 .wp-block-image img,
	#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column3 img {
		max-width: 100%;
	}
}

@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) {
        margin-top: 48px!important;
        column-gap: 20px!important;
    }
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name,
#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name-en {
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    font-weight: normal;
    line-height: 1;
}
@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name {
        font-size: 25px;
    }
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name + .staff-name-en,
#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name-en + .staff_profile {
	margin-top: 8px;
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name-en {
    display: block;
    margin-top: 0.545em;
    font-size: 0.786em;
}
@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff-name-en {
        margin-top: 6px;
        font-size: 17px;
        line-height: 1;
    }
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff_profile{
    margin-top: 1.1em!important;
    font-size: 0.714em;
    line-height: 1.8;
    font-family: Meiryo, YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
}
@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column1 .staff_profile{
        margin-top: 29px!important;
        font-size: 14px;
        line-height: 2.1;
    }
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column2 .wp-block-group {
	margin: 0;
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column2 p {
    font-size: 0.714em;
    line-height: 1.9;
}
@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column2 p {
        font-size: 14px;
    }
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column3 .wp-block-image {
	margin: 0;
}

#staff > .swell-block-fullWide__inner > .wp-block-columns:nth-of-type(1) > .wp-block-column.column3 img {
	display: block;
	width: 100%;
	max-width: 280px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

/* 区切り画像 */
#staff > .swell-block-fullWide__inner > .wp-block-image {
	margin-top: 36px;
	margin-bottom: 0;
}

@media (min-width: 741px) {
    #staff > .swell-block-fullWide__inner > .wp-block-image {
        margin-top: 43px;
    }
}
#staff > .swell-block-fullWide__inner > .wp-block-image img {
	display: block;
	width: 100%;
	max-width: 1002px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	object-fit: cover;
}

/* ボート紹介（.staff__boat グループ内） */
#staff .staff__boat {
	margin-top: 32px;
}
@media (min-width: 741px) {
    #staff .staff__boat {
        margin-top: 32px;
        margin-bottom: 32px;
    }
}

#staff .staff__boat .wp-block-columns {
	margin-top: 28px;
	margin-bottom: 0;
	gap: 28px 40px;
	align-items: flex-start;
}

#staff .staff__boat .wp-block-columns > .wp-block-column:first-child .boat_name {
	font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	font-weight: normal;
	font-size: 25px;
	margin-bottom: 29px;
}

#staff .staff__boat .wp-block-columns > .wp-block-column:first-child .boat_name + .boat_detail {
    margin-top: 1.1em;
    font-size: 0.714em;
    line-height: 1.8;
}

@media (min-width: 741px) {
    #staff .staff__boat .wp-block-columns > .wp-block-column:first-child .boat_name + .boat_detail {
        margin-top: 29px;
        font-size: 14px;
        line-height: 2.1;
    }
}

#staff .staff__boat .wp-block-columns .wp-block-image {
	margin: 0;
}

#staff .staff__boat .wp-block-columns img {
	display: block;
	width: 100%;
	height: auto;
}

/* ========================================
   Facebook セクション
   ======================================== */

.swell-block-fullWide__inner:has(> .fb-page) > h2.is-style-section_ttl {
    padding: 0 0.714em;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
}

@media (min-width: 741px) { 
    .swell-block-fullWide__inner:has(> .fb-page) > h2.is-style-section_ttl {
        font-size: 36px;
    }
}

.swell-block-fullWide__inner:has(> .fb-page) > p.has-text-align-center {
    font-size: 0.714em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    margin-top: 0.7em;
    line-height: 1.4;
}

@media (min-width: 741px) { 
    .swell-block-fullWide__inner:has(> .fb-page) > p.has-text-align-center {
        margin-top: 2px;
        font-size: 20px;
        margin-bottom: 31px;
    }
}

.swell-block-fullWide__inner:has(> .fb-page) > .wp-block-buttons {
	margin-top: 22px;
	margin-bottom: 0;
	justify-content: center;
}

.swell-block-fullWide__inner:has(> .fb-page) > .wp-block-buttons .wp-block-button .wp-block-button__link {
	display: block;
	width: 13.5em;
	margin: 1.3em auto 0;
	padding: 0.3em 0;
	border-style: solid;
	border-color: #6d787e;
	border-width: 0.1em;
	font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
	text-align: center;
	background: #ffffff;
}

.swell-block-fullWide__inner:has(> .fb-page) > .fb-page {
	margin-top: 28px;
	margin-left: auto;
	margin-right: auto;
	max-width: 480px;
	text-align: center;
}

@media (min-width: 741px) { 
    .swell-block-fullWide__inner:has(> .fb-page) > .fb-page {
        margin-top: 40px;
    }
}
.swell-block-fullWide__inner:has(> .fb-page) > .fb-page iframe {
	max-width: 100%;
}

/* ========================================
   下層ページ：MV
   ======================================== */

.l-topTitleArea{
    height: 300px;
    position: relative;
}
@media (min-width: 741px) { 
    .l-topTitleArea{
        height: 530px;
    }
}

.l-topTitleArea__body.l-container{
    position: absolute;
    top: 36%;
    left: 0;
    right: 0;
    z-index: 1;
    padding-top: 3.143em;
    color: white;
}

@media (min-width: 741px) { 
    .l-topTitleArea__body.l-container{
       top: 43%;
    }
}

.c-pageTitle{
    display: block;
    font-size: 1.429em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    text-align: center;
    line-height: 1;
}
@media (min-width: 741px) { 
    .c-pageTitle{
        font-size: 42px;
        letter-spacing: -2px;
    }
}

.c-pageTitle__subTitle{
    display: block;
    margin-top: 0.429em;
    font-family: 'MrDeHavilandRegular';
    margin-left: 0;
    text-align: center;
    opacity: 1;
    font-style: normal;
    line-height: 1;
    letter-spacing: normal;
}
@media (min-width: 741px) { 
    .c-pageTitle__subTitle{
        margin-top: 10px;
        font-size: 34px;
    }
}

/* ========================================
   投稿一覧（投稿ページ）上部カテゴリナビ
   ======================================== */

.p-newsCatNav {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.p-newsCatNav__list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	align-items: stretch;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.p-newsCatNav__item {
	margin: 0;
	padding: 0;
	min-width: 0;
}

.p-newsCatNav__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid #a3a7aa;
	border-radius: 2px;
	background-color: #ffffff;
	text-decoration: none;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.p-newsCatNav__btn:hover {
	border-color: #3C8aff;
    background-color: #3C8aff;
    color: #fff;
}

.p-newsCatNav__btn:hover .p-newsCatNav__label {
	color: #fff;
}

.p-newsCatNav__btn.is-active {
	border-color: #3C8aff;
	background-color: #3C8aff;
	pointer-events: none;
}

.p-newsCatNav__label {
	font-size: 14px;
	font-weight: 500;
	color: #000;
	letter-spacing: 0.04em;
	line-height: 1.4;
	text-align: center;
    transition: color 0.2s ease;
}

.p-newsCatNav__btn.is-active .p-newsCatNav__label {
	color: #ffffff;
}

@media (max-width: 599px) {
	.p-newsCatNav__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* 投稿リスト：テキスト型ページネーション（< 1. 2. 3. >） */
.c-pagination--type-text {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: center;
	column-gap: 1.35em;
	row-gap: 0.5em;
	margin-top: 40px;
	margin-bottom: 0;
	padding: 0;
	border: none;
	background: none;
	box-shadow: none;
	font-family: 'Times New Roman', Times, '游明朝', YuMincho, 'Hiragino Mincho ProN', 'メイリオ', Meiryo, serif;
	font-size: 18px;
	font-weight: 400;
	color: #000000;
	letter-spacing: 0.06em;
	line-height: 1.4;
}

.c-pagination--type-text .c-pagination__angle {
	display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
	background: none;
	box-shadow: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
	color: #000000;
	letter-spacing: inherit;
	line-height: inherit;
	text-decoration: none;
	vertical-align: baseline;
}

.c-pagination--type-text a.c-pagination__angle:hover {
	opacity: 0.55;
}

.c-pagination--type-text .c-pagination__angle.-is-disabled {
	opacity: 1;
	cursor: default;
}

.c-pagination--type-text .page-numbers {
	display: inline-block;
	margin: 0;
	padding: 0;
	border: none;
	border-radius: 0;
	background: none;
	box-shadow: none;
	min-width: 0;
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
	color: #000000;
	letter-spacing: inherit;
	line-height: inherit;
	text-decoration: none;
	vertical-align: baseline;
}

.c-pagination--type-text .page-numbers::after {
	content: '.';
}

.c-pagination--type-text .page-numbers.current {
	font-weight: 700;
}

.c-pagination--type-text .c-pagination__dot {
	display: inline-block;
	margin: 0;
	padding: 0 0.15em;
	border: none;
	background: none;
	font-family: inherit;
	font-size: inherit;
	font-weight: 400;
	color: #000000;
	letter-spacing: 0.12em;
	line-height: inherit;
	vertical-align: baseline;
}


.-type-card .p-postList__item{
    margin-bottom: 5rem;
}

/* 投稿詳細：MV 直下の記事タイトル（post_head） */
.p-singleMvBelowHead {
	margin-top: 0;
	padding-top: 2rem;
	padding-bottom: 0;
}

@media (min-width: 960px) {
	.p-singleMvBelowHead {
		padding-top: 2.5rem;
	}
}

/* 投稿詳細：日付・ターム左 / タイトル中央（post_head 子テーマ） */
.p-articleHead.c-postTitle.p-articleHead--stacked {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	row-gap: 1rem;
}

.p-articleHead--stacked .p-articleHead__titleCenter {
	width: 100%;
	text-align: center;
}

.p-articleHead--stacked .p-articleHead__titleCenter .c-postTitle__ttl {
	width: 100%;
	margin: 0;
    font-size: 24px;
    line-height: 1.3;
    color: #000000;
    text-align: left;
}

@media (min-width: 741px) { 
    .p-articleHead--stacked .p-articleHead__titleCenter .c-postTitle__ttl {
        font-size: 36px;
    }
}

.p-articleHead--stacked .p-articleHead__postedRight {
	width: 100%;
	margin-top: 0.5em;
	text-align: right;
}
@media (min-width: 741px) { 
    .p-articleHead--stacked .p-articleHead__postedRight {
        margin-top: 20px;
    }
}

.p-articleHead--stacked .p-articleHead__postedRight .c-postTimes__posted {
	display: inline-block;
}

.p-articleMetas.-top.p-articleMetas--afterTitle {
	justify-content: center;
	margin-top: 0.75em;
}

.c-postTimes__posted:before{
    content: none;
}

.c-postTimes__posted{
    font-size: 18px;
    line-height: 1;
    color: #000000;
}

/* 投稿詳細：NEWS一覧へ戻る（トップ「過去のNEWS一覧」と同デザイン） */
.p-singleBackToNewsList {
	margin-top: 2.5rem;
	margin-bottom: 2rem;
}

@media (min-width: 741px) { 
    .p-singleBackToNewsList {
        margin-top: 100px;
    }
}
.p-singleBackToNewsList.is-style-more_btn a {
	display: inline-block;
	width: 50%;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1;
	color: #000000;
	background-color: #d9d9d9;
	text-align: center;
	text-decoration: none;
}

.p-singleBackToNewsList.is-style-more_btn a::after {
	content: none;
}

.is-style-more_btn a:after{
    content: none;
}

/* #news 以降のブロック：スクロールで下からフェードイン（assets/js/custom.js） */
@media (prefers-reduced-motion: no-preference) {
	html.js-has-scrollReveal .js-scrollReveal:not(.is-inview) {
		opacity: 0;
		transform: translate3d(0, 56px, 0);
	}

	html.js-has-scrollReveal .js-scrollReveal.is-inview {
		opacity: 1;
		transform: translate3d(0, 0, 0);
		transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1),
			transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.js-scrollReveal {
		opacity: 1;
		transform: none;
	}
}

/* =============================================================================
   お問い合わせフォーム（Contact Form 7・入力 / 確認 / 送信完了）
   .js-cf7-confirm-wrap 内の .form-block / .form01 / .confirmation-block 等
   ============================================================================= */

.js-cf7-confirm-wrap .js-confirm-message,
.js-cf7-confirm-wrap .js-confirm-memo {
	white-space: pre-wrap;
	word-break: break-word;
}

/* 予約フォーム STEP3：バナー md / sm（.banner-default 共通スタイルと併用） */
.js-step-complete .banner-default img.sm {
	display: none;
	width: 100%;
}

@media only screen and (max-width: 740px) {
	.js-step-complete .banner-default img.md {
		display: none;
	}

	.js-step-complete .banner-default img.sm {
		display: block;
	}
}

.js-cf7-confirm-wrap .js-confirm-btn:disabled {
	opacity: 0.45;
	cursor: not-allowed;
}

/*section form block*/
.form-block {
    margin-top: 1.214em!important;
    padding-bottom: 1.786em;
    max-width: 1200px;
    width: 100%;
    margin-inline: auto;
}

.form-block-contact .wrapper {
    width: 100%;
    padding-inline: 0;
}

.form-block .wrapper > p {
    font-size: 0.714em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.7;
}

.form-block .wrapper > p + p {
    margin-top: 1.7em;
}

.form-block .title{
    margin-top: 2.357em;
    background: none;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    font-size: 14px;
    margin-bottom: 0!important;
    padding-bottom: 0!important;
}

@media only screen and (min-width: 741px) {
.form-block .title {
    margin-top: 2.357em;
    line-height: 1.4;
    font-size: 36px;
}
}

.form-block .title::before{
    content: none;
}

.form-note{
    margin-inline: auto;
    color: #ff0000;
    font-size: 0.714em;
    text-align: right;
}
@media only screen and (min-width: 741px) {
.form-note{
    max-width: 1000px;
    font-size: 20px;
    text-align: right;
}
}
@media only screen and (min-width: 741px) {
    .form-block {
        margin-top: 41px;
        padding-bottom: 64px;
    }

    .form-block .wrapper > p {
        font-size: 20px;
        line-height: 1.8;
    }

    .form-block .wrapper > p + p {
        margin-top: 37px;
    }

    .form-block .title {
        margin-top: 75px;
        margin-bottom: 0!important;
        padding-bottom: 0!important;
    }

    .form-block .link-default {
        background: #ffffff;
        margin-top: 43px;
    }

    .form-block .link-default:hover {
        background: #cccccc;
    }
}

.form01 {
    position: relative;
    margin-top: 0.357em;
    border: solid 1px #a3a7aa;
    max-width: 1000px;
    width: 100%;
    margin-inline: auto;
}

.form01 p {
    font-size: 0.714em;
    line-height: 1.5;
}
.form01 .form-group {
    display: flex;
    border-top: solid 1px #a3a7aa;
}

.form01 .form-group .col01{
    background-color: #f0f7fd;
    width: 30%;
}

@media only screen and (min-width: 741px) {
    .form01 .form-group .col01{
        max-width: 220px;
        width: 100%;
    }
}

.form01 .form-group.form-group-first {
    border-top: 0;
}

/*.form01 .form-group span {*/
/*font-size: 0.714em;*/
/*}*/

.form01 .form-group input[type="text"],
.form01 .form-group input[type="email"],
.form01 .form-group input[type="number"],
.form01 .form-group textarea {
    display: inline-block;
    vertical-align: middle;
    width: 21em;
    padding: 0.3em 0.5em;
    border: solid 1px #a3a7aa;
    height: 24px;
    font-size: 0.714em;
    background-color: #ffffff;
}

@media only screen and (min-width: 741px) {
.form01 .form-group input[type="text"],
.form01 .form-group input[type="email"],
.form01 .form-group input[type="number"],
.form01 .form-group textarea {
    display: inline-block;
    vertical-align: middle;
    width: 15em;
    padding: 0.3em 0.5em;
    border: solid 1px #a3a7aa;
    height: 24px;
    font-size: 0.714em;
}
}

.form01 .form-group textarea {
    height: 7.143em;
}

.form01 .form-group .label-after,
.form01 .form-group .label-before,
.form01 .form-group .input01,
.form01 .form-group .input02 {
    display: inline-block;
    vertical-align: middle;
}

.form01 .form-group .label-after {
    margin-left: 0.5em;
    font-size: 0.714em;
}

@media only screen and (min-width: 741px) {
    .form01 .form-group .label-after {
        font-size: 0.714em;
    }
}

.form01 .form-group .label-before {
    margin-right: 0.5em;
    font-size: 0.714em;
}

.form01 .form-group .col01 sup {
    top: -0.3em;
    font-size: 1em;
    color: #ff0000;
}

.form01 .form-group .col01 p {
    padding: 0.8em;
}

.form01 .form-group .col01 p span {
    font-size: 1em;
}

.form01 .form-group .col01 .type01 {

    padding-top: 1.2em;
}

.form01 .form-group .col01 .type02 {
    padding-top: 1em;
}

.form01 .form-group .col02 {
    width: 70%;
    padding: 0.571em;
    border-left: solid 1px #a3a7aa;
}

.form01 .form-group .col02 p{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.form01 .form-group .col02 .note {
    position: relative;
    margin-top: 0.8em;
    padding-left: 1em;
    color: #000;
}

.form01 .form-group .col02 .note + .note {
    margin-top: 0;
}

.form01 .form-group .col02 .note:before {
    content: '※';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.form01 .form-group .col02 .input02 {
    margin-bottom: 0.357em;
}

.form01 .form-group .col02 .input02:first-child {
    margin-right: 1.071em;
}

.form01 .form-group li {
    display: inline-block;
    vertical-align: top;
}

.form01 .form-group li:first-child {
    margin-right: 2.143em;
}

.form01 .form-group li .wpcf7-form-control-wrap {
    display: inline-block;
    margin-top: 0.5em;
    margin-right: 0.5em;
}

.form01 .form-group li .wpcf7-form-control-wrap:first-child {
    margin-top: 0;
}

.form01 .form-group li .wpcf7-form-control-wrap .wpcf7-list-item {
    margin: 0;
}

.form01 .form-group li .wpcf7-form-control-wrap .wpcf7-list-item-label {
    font-size: 0.714em;
    margin-left: 0.5em;
    display: inline-block;
    vertical-align: middle;
}

.form01 .form-group label input[type="radio"],
.form01 .form-group label span {
    display: inline-block;
    vertical-align: middle;
}

.form01 .form-group label span {
    margin-left: 0.5em;
}

.form01 .form-group01 input[type="text"],
.form01 .form-group01 input[type="email"],
.form01 .form-group01 input[type="number"] {
    width: 6em;
}

.form01 .form-email input[type="text"],
.form01 .form-email input[type="email"],
.form01 .form-email input[type="number"] {
    width: 21em;
}

.form01 .form-choice .col02 {
    padding: 1.071em 0.571em;
}

.form01 .form-desired .col02 .note {
    margin-top: 0;
}

.form01 .form-desired ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.form01 .form-desired li {
    margin-bottom: 0;
    margin-right: 0;
}

.form01 .form-desired li:first-child {
    margin-right: 0;
}

.form01 .form-desired ul > li > p {
    margin: 0;
}

/* ご希望コース（CF7）：ラジオを横並び2件ずつ */
.form01 .form-desired .wpcf7-form-control-wrap[data-name="course"] .wpcf7-radio {
    display: grid;
    column-gap: 16px;
    row-gap: 10px;
    align-items: start;
}

.form01 .form-desired .wpcf7-form-control-wrap[data-name="course"] .wpcf7-list-item {
    margin: 0;
}

.form01 .form-desired .wpcf7-form-control-wrap[data-name="course"] .wpcf7-list-item label {
    display: flex;
    align-items: flex-start;
}

@media only screen and (min-width: 741px) {

    .form01 p {
        font-size: 15px;
        line-height: 1.4;
    }

    .form01 > span {
        top: -25px;
        font-size: 20px;
    }

    .form01 .form-group input[type="text"],
    .form01 .form-group input[type="number"],
    .form01 .form-group input[type="email"],
    .form01 .form-group textarea {
        width: 437px;
        font-size: 17px;
        height: 39px;
        background-color: #fff;
    }

    .form01 .form-group textarea {
        height: 90px;
    }

    .form01 .form-group .label-after {
        margin-left: 15px;
        padding-top: 5px;
        font-size: 22px;
    }

    .form01 .form-group .label-before {
        padding-top: 5px;
        margin-right: 5px;
        font-size: 22px;
    }

    .form01 .form-group .col01 {
        width: 220px;
    }

    .form01 .form-group .col01 sup {
        top: 0;
        font-size: 24px;
    }

    .form01 .form-group .col01 p {
        padding: 33px 20px 30px;
        font-size: 18px;
        letter-spacing: 3px;
    }

    .form01 .form-group .col01 .type01,
    .form01 .form-group .col01 .type01 span {
        font-size: 18px;
        padding-top: 36px !important;
    }

    .form01 .form-group .col01 .type02 {
        padding-top: 34px;
    }

    .form01 .form-group .col02 {
        width: 778px;
        padding: 30px 21px 32px;
    }

    .form01 .form-group .col02 .note {
        margin-top: 15px;
    }

    .form01 .form-group .col02 .input01 {
        margin-bottom: 13px;
    }

    .form01 .form-group .col02 .input01:first-child {
        margin-right: 21px;
    }

    .form01 .form-group .col02 .input02 {
        margin-bottom: 0;
    }

    .form01 .form-group .col02 .input02:first-child {
        margin-right: 65px;
    }

    .form01 .form-group .col02 li {
        width: 420px;
        margin: 3px 0 0;
    }

    .form01 .form-group .col02 li:first-child {
        width: 308px;
    }

    .form01 .form-group .col02 li .wpcf7-form-control-wrap {
        display: block;
        margin-top: 18px;
    }

    .form01 .form-group .col02 li .wpcf7-form-control-wrap .wpcf7-list-item {
        margin: 0;
    }

    .form01 .form-group .col02 li .wpcf7-form-control-wrap:first-child {
        margin: 0;
    }

    .form01 .form-group .col02 .wpcf7-form-control-wrap input[type="radio"],
    .form01 .form-group .col02 .wpcf7-form-control-wrap input[type="checkbox"] {
        width: 24px;
        height: 24px;
    }

    .form01 .form-group .col02 .wpcf7-form-control-wrap .wpcf7-list-item-label {
        margin-left: 15px;
        font-size: 17px;
        letter-spacing: 2px;
        display: inline-block;
        vertical-align: middle;
    }

    .form01 .form-group01 input[type="number"],
    .form01 .form-group01 input[type="text"] {
        width: 110px;
    }

    .form01 .form-email .col02 {
        padding-bottom: 11px;
    }

    .form01 .form-acc .col02 .note {
        display: inline-block;
        vertical-align: middle;
        margin-top: 26px;
    }

    .form01 .form-acc .col02 .note + .note {
        margin-top: 26px;
    }

    .form01 .form-choice .col02 {
        padding: 43px 21px 46px;
    }

    .form01 .form-desired .col02 .note {
        margin-top: 23px;
    }

    /* ご希望コース：汎用 .col02 li 幅指定を打ち消し（2列グリッド用） */
    .form01 .form-desired .col02 li,
    .form01 .form-desired .col02 li:first-child {
        width: auto;
        max-width: 100%;
    }

    .form01 .form-desired .col02 li .wpcf7-form-control-wrap {
        margin-top: 0;
    }
}

@media only screen and (max-width: 740px) {
    .form01 .form-desired .wpcf7-form-control-wrap[data-name="course"] .wpcf7-radio {
        grid-template-columns: 1fr;
    }
}

/* =============================================================================
   .reserve-lead 内のみ（予約前の注意書き・2カラム）
   グループブロック等に「追加 CSS クラス」で reserve-lead を指定してください。
   ============================================================================= */
.reserve-lead {
    box-sizing: border-box;
}

.reserve-lead .swell-block-columns__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 1.5em;
    margin-left: 0!important;
}

.reserve-lead .swell-block-column {
    flex: 0 0 48%;
    width: 48%;
    max-width: 48%;
    box-sizing: border-box;
    margin-left: 0!important;
}

.reserve-lead h3.is-style-section_ttl,
.reserve-lead h3.wp-block-heading.is-style-section_ttl {
    background-color: rgb(3, 0, 76);
    color: #ffffff;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    font-weight: normal;
    font-size: 0.714em;
    line-height: 1.4;
    padding: 0.3em 0;
    text-align: center;
}

.reserve-lead .swell-block-column h3 + p {
    margin-top: 12px!important;
}

@media only screen and (min-width: 741px) {
    .reserve-lead .swell-block-fullWide__inner.l-container {
        max-width: 1100px;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }

    .reserve-lead h3.is-style-section_ttl,
    .reserve-lead h3.wp-block-heading.is-style-section_ttl {
        padding: 8px 0;
        font-size: 19px;
    }
}

@media only screen and (max-width: 740px) {
    .reserve-lead .swell-block-column {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }
}

/*===== CONTACT =====*/

.contact__leadtext p + p{
    margin-top:16px!important;
}

@media only screen and (min-width: 741px) { 
    .contact__leadtext p + p{
        margin-top:37px!important;
    }
}

.contact__leadtext p{
    line-height: 1!important;
}
.contact__leadtext span{
    font-size: 0.714em!important;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.7!important;
}

@media only screen and (min-width: 741px) {
    .contact__leadtext p,
    .contact__leadtext span{
        font-size: 20px!important;
        line-height: 1.8!important;
    }
}

.banner-contact {
    background-image: url('../img/img_banner_contact.jpg');
}

.form-block-contact {
    margin-top: 1.857em;
}

.wpcf7-list-item.last{
    margin-left: 5em;
}

@media only screen and (min-width: 741px) {
    .form-block-contact {
        margin-top: 35px!important;
        padding-bottom: 0!important;
    }

    .form-block-contact .form01 .form-group textarea {
        height: 184px;
    }
}

/*===== CONFIRMATION =====*/
.banner-confirmation {
    background-image: url('../img/img_banner_confirmation.jpg');
}

.confirmation-block {
    margin-top: 1.643em;
    padding-bottom: 2.643em;
}

.confirmation-block .form01 {
    margin-top: 1.143em;
    border: 0;
}

.confirmation-block .form01 .form-group:first-child {
    border-top: solid 1px #a3a7aa;
}

.confirmation-block .form01 .form-group:last-child {
    border-bottom: solid 1px #a3a7aa;
}

.confirmation-block .form01 .col01 {
    background-color: transparent;
}

.confirmation-block .form01 .col01 p {
    padding-left: 0;
}

.confirmation-block .form01 .col02 {
    border-left: 0;
}

.confirmation-block .group-link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 15px;
    margin-top: 2.3em;
    text-align: center;
}

.confirmation-block .group-link > p {
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.confirmation-block .group-link .link-default,
.confirmation-block .group-link input[type="submit"],
.confirmation-block .group-link input.wpcf7-submit {
    width: 220px;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0;
    flex: 0 0 auto;
}

.confirmation-block .group-link input[type="submit"],
.confirmation-block .group-link input.wpcf7-submit {
    background: #ffffff;
    display: block;
}

.confirmation-block .group-link input[type="submit"]:hover,
.confirmation-block .group-link input.wpcf7-submit:hover {
    background: #cccccc;
}

.wpcf7-spinner{
    display: none;
}

@media only screen and (min-width: 741px) {
    .confirmation-block {
        margin-top: 32px;
        padding-bottom: 64px;
    }

    .confirmation-block .form01 {
        margin-top: 48px;
    }

    .confirmation-block .form01 span,
    .confirmation-block .form01 p {
        font-size: 18px;
    }

    .confirmation-block .form01 .col02 {
        padding-left: 0;
    }

    .confirmation-block .form01 .form-email .col02 {
        padding-bottom: 32px;
    }

    .confirmation-block .group-link {
        margin-top: 45px;
    }
}

.confirmation-block h2.title{
    padding: 0 0.714em;
    color: black;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.4;
    background: none;
}

.confirmation-block h2.title::before{
    content: none;
}

@media only screen and (min-width: 741px) {
    .confirmation-block h2.title{
        font-size: 36px;
    }
}

/*===== COMPLETION =====*/
.banner-completion {
    background-image: url('../img/img_banner_completion.jpg');
}

.completion-block {
    margin-top: 1.714em;
    padding-bottom: 10.857em;
}

.completion-block p {
    margin-top: 1.4em;
    font-size: 0.714em;
    font-family: 'HannariMincho', "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
    line-height: 1.7;
}

.completion-block .link-default {
    margin-top: 2.3em;
}

@media only screen and (min-width: 741px) {
    .completion-block {
        margin-top: 32px;
    }

    .completion-block p {
        margin-top: 23px;
        font-size: 19px;
        line-height: 1.9;
    }

    .completion-block .link-default {
        margin-top: 51px;
    }
}

/* ========================================
   Menu Course (Block Editor)
   ======================================== */
.main .about-course > .wrapper > .title {
    margin-top: 20px;
    margin-bottom: 10px;
}

.main .block-default > .title {
    margin-top: 20px;
    margin-bottom: 10px;
}

.main .media-body .item > .title-article {
    margin-top: 0;
}

.main .media-body .item > p {
    margin-top: 0;
    margin-bottom: 0;
}

.main .media-body .item > p + p {
    margin-top: 0.5em;
}

.main .media-body .item .note {
    margin-top: 0.5em;
}

.main .media-body .item br + p {
    margin-top: 1em;
}

.main .media-body .group-table {
    margin-top: 0.714em;
}

.main .media-body .group-table .col {
    margin-top: 0;
}

.main .media-body table {
    margin-top: 0;
    margin-bottom: 0;
}

.main .media-body .table-default td {
    vertical-align: top;
}

.main .media-body .table-default tbody td > p {
    margin-top: 0;
    margin-bottom: 0;
}

.main .media-body .table-default tbody td > p + p {
    margin-top: 0.429em;
}

.main .media-body .row03 > .col {
    margin-bottom: 0;
}

.main .media-body .row03 > .col > p {
    margin-bottom: 0;
}

@media only screen and (min-width: 741px) {
    .main .about-course > .wrapper > .title,
    .main .block-default > .title {
        margin-top: 32px;
        margin-bottom: 18px;
    }

    .main .media-body .item > p + p {
        margin-top: 10px;
    }

    .main .media-body .group-table {
        margin-top: 22px;
    }

    .main .media-body .table-default tbody td > p + p {
        margin-top: 8px;
    }
}

.sub-menu h3.is-style-section_ttl{
    font-family: HannariMincho, "Times New Roman", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", メイリオ, Meiryo, serif;
    padding: 9px 0;
        background-color: #03014c!important;
}

.sub-menu .wp-block-button{
max-width: 220px;
width: 100%;
} 

.sub-menu .wp-block-button__link {
    width: 100%;
    box-sizing: border-box;
    padding: 5px 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border:1.5px solid rgb(109, 120, 126);
}

.sub-menu .swell-block-fullWide__inner{
    max-width: 1080px;
    width: 100%;
    margin-inline: auto;
}

.sub-menu .swell-block-columns__inner:has(.wp-block-button) {
    max-width: 750px;
    margin-inline: auto;

}

.sub-menu .menu-btn-wrap p span{
    display: block;
    line-height: 1.7;
}

.menu-fv .swell-block-columns__inner{
    max-width: 1000px;
    width: 100%;
    margin-inline: auto;
}

.menu-fv p{
    font-family: HannariMincho, "Times New Roman", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", メイリオ, Meiryo, serif;
    line-height: 1.7;
    letter-spacing: 1.5px;
}

.sub-menu .swell-block-column p{
    font-size:0.7rem ;
    line-height: 1.7;
}
@media only screen and (min-width: 741px) {
    .sub-menu .swell-block-column p{
       font-size: 14px;
       text-align: left;
    }
}

.sub-menu .p-center .swell-block-columns__inner{
    justify-content: center;
}

.sub-menu .wp-block-group.p-center{
    width: 50%;
    margin-inline: auto;
}

.sub-menu .wp-block-group.p-center .table-default tbody tr td:first-child{
    width: 130px;
}

.sub-menu .wp-block-group.p-center .table-default:before{
    left: 130px;
}

.swell-block-fullWide__inner h2.is-style-section_ttl + p {
    font-family: HannariMincho, "Times New Roman", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", メイリオ, Meiryo, serif;
    line-height: 1.4;

}

.swell-block-fullWide__inner h2.is-style-section_ttl + p span{
    display: inline-block;
    font-size: 1em!important;
}

@media only screen and (min-width: 741px) {
    .swell-block-fullWide__inner h2.is-style-section_ttl + p {
        font-size: 21px;
    }
}

@media only screen and (max-width: 740px) {
    .sub-menu #menu01 .menu-fv {
        background-image: url("../img/img_fan_course_sm.jpg") !important;
    }

    .sub-menu #menu02 .menu-fv {
        background-image: url("../img/img_experience_diving_sm.jpg") !important;
    }

    .sub-menu #menu03 .menu-fv {
        background-image: url("../img/img_scuba_diver_sm.jpg") !important;
    }

    .sub-menu #menu04 .menu-fv {
        background-image: url("../img/img_advance_scuba_sm.jpg") !important;
    }

    .sub-menu #menu05 .menu-fv {
        background-image: url("../img/img_snorkel_course_sm.jpg") !important;
    }

    .sub-menu #menu06 .menu-fv {
        background-image: url("../img/img_charter_boat_sm.jpg") !important;
    }

    .sub-menu .menu-fv p span{
        font-size: 11px!important;
        line-height: 1.3;
        display: inline-block;
        letter-spacing: normal;
    }

    .sub-menu .menu-fv .swell-block-column{
        margin: 0;
    }

    .sub-menu .menu-fv{
        height: 245px;
        margin-bottom: 10px;
    }

    .sub-menu .menu-fv + .wp-block-group {
        padding-inline: 4vw;
        gap: 10px;
        margin-bottom: 0;
    }

    .sub-menu .menu-fv + .wp-block-group img{
        max-width: 250px;
        width: 100%;
        margin-inline: auto;
    }
    .sub-menu h3.is-style-section_ttl{
        padding: 0;
    }
    .swell-block-columns.menu-btn-wrap .swell-block-column{
        margin: 0;
        width: 100%;
    }

    .swell-block-columns.menu-btn-wrap .swell-block-column:first-child .wp-block-buttons{
        margin-bottom: 5px;
    }

    .sub-menu .wp-block-group.p-center{
        width: 100%;
    }
    .sub-menu .wp-block-group.p-center .table-default tbody tr td:first-child {
        width: 100px;
    }
    .sub-menu .wp-block-group.p-center .table-default:before {
        left: 100px;
    }
    .sub-menu .swell-block-columns__inner:has(.wp-block-button) {
        row-gap: 10px;
    }
}

#sb_instagram #sbi_load .sbi_load_btn{
    margin-top: 5px!important;
}

.p-spMenu .p-spMenu__inner{
    padding-top: 60px;
}

@media only screen and (max-width: 959px) {
    .-img .c-headLogo__link {
        padding: 5px 0;
    }

    /* ドロワーをヘッダーより前面に表示 */
    .p-spMenu {
        margin-top: 0;
        height: 100dvh;
        z-index: 1300;
    }

    /* 開いたらヘッダーのハンバーガーを非表示にする */
    html[data-spmenu="opened"] .l-header__menuBtn {
        display: none;
    }

    /* 開いたら×ボタンをヘッダー右上に固定表示 */
    html[data-spmenu="opened"] .p-spMenu__closeBtn {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 1200;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        height: 50px;
        margin-top: 0;
    }
}

.wp-block-button__link.wp-element-button[href$="/reservation/"]:hover,
.wp-block-button__link.wp-element-button[href$="/contact/"]:hover,
.wp-block-button__link.wp-element-button[href^="tel:0980-87-0424"]:hover {
    background-color: #ccc;
}
.wp-block-button__link.wp-element-button[href$="/reservation/"],
.wp-block-button__link.wp-element-button[href$="/contact/"],
.wp-block-button__link.wp-element-button[href^="tel:0980-87-0424"] {
    background-color: #ffffff;
    transition: background-color 0.3s ease;
    font-family: HannariMincho, "Times New Roman", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", メイリオ, Meiryo, serif;
}