/* ------------------　全体　------------------ */
.contentout{
  margin: 20px 0;
}
.wysiwyg-editor{
	padding: 0 10% 20px;
	background: #f3faff;
}
.wysiwyg-editor p {
    line-height: 1.7;
	font-weight: normal;
}
@media screen and (min-width:1500px) {
	.wysiwyg-editor{
		padding: 0 20% 20px;
}
}
@media screen and (max-width:782px) {
	.wysiwyg-editor{
		padding: 0 4% 20px;
}
}

a.wp-block-button__link.wp-element-button {
    background-color: #8B4513;
    border: 1px solid #8B4513;
    color: #fff; 
    font-size: 15px; /* フォントサイズ */
    padding: 10px 20px; /* パディングを追加してボタンらしく */
    border-radius: 5px; /* 角丸を追加 */
    text-decoration: none; /* 下線を消す */
    display: inline-block; /* ボタンをインラインブロックに */
    transition: background-color 0.3s ease, color 0.3s ease; /* トランジション */
	margin: 20px 0;
}

a.wp-block-button__link.wp-element-button:hover {
    background-color: #8B4513; /* ホバー時の背景色を茶色に変更 */
    color: #ffffff; /* ホバー時のテキスト色を白に変更 */
}

.img_size{
	width:70%
}
@media screen and (max-width:782px) {
.img_size{
	width:100%
}
}
p {
    line-height: 1.5;
	margin: 0.7em 0px;
}
/* 左寄せ */
.has-text-align-left {
    text-align: left !important;
}

/* 中央寄せ */
.has-text-align-center {
    text-align: center !important;
}

/* 右寄せ */
.has-text-align-right {
    text-align: right !important;
}
/* ------------------リスト------------------ */

.wp-block-list {
	padding: 10px;
}
.simplelist {
	padding-left: 30px;
}
.simplelist li::before {
	content: '●'; 
	color: #4297cf;
	font-size: 1.2em;
	display: inline-block;
	width: 1em;
	margin-left: -1.5em;
	padding-right: 10px;
    line-height: 2;
}

/* ------------------カラー------------------ */
.co0693E3{
	color:#0693E3;
}


/* ------------------2カラム------------------ */
body .is-layout-flex{
	display:flex;
}
@media screen and (max-width:781px) {
	.wp-block-columns.is-layout-flex {
		display: flex;
		flex-direction: column-reverse;
		flex-wrap: nowrap;
	}
	.wp-block-columns.is-layout-flex.no-reverse {
		flex-direction: column; /* 上下逆にしない */
	}
	
}
html :where(img[class*=wp-image-]) {
	height: auto;
	max-width: 100%;
}

/* ------------------　カラムCSS　------------------ */
.wp-block-column.is-layout-flow.wp-block-column-is-layout-flow {
  margin: auto 0;
	width:50%;
	margin:5px;
}
.wp-block-group.bgwhite.hei100 {
    height: 100%;
}
@media screen and (max-width:781px) {
	.wp-block-column.is-layout-flow.wp-block-column-is-layout-flow{
		width:100%;
	}
}
/* ------------------　カラムリストCSS　------------------ */

.wp-block-image img{
  padding: 10px;
}
@media screen and (max-width:781px) {
/*   .wp-block-columns.is-layout-flex.wp-container-core-columns-is-layout-1.wp-block-columns-is-layout-flex{
    flex-direction: column-reverse; 
  } */
}

.menu-item span {
	font-size: 12px;
	color: #b6a379;
	letter-spacing: 0.125em;
}

/* ------------------　アコーディオン　------------------ */
/* FAQ全体 */
details.wp-block-details {
    margin: 10px auto;
    padding: 10px;
    border: 2px solid #5DADE2;
    border-radius: 8px;
    background-color: #f9f9f9;
    transition: background-color 0.3s ease-in-out;
    overflow: hidden;
}

/* 開いたときの背景色変化 */
details.wp-block-details[open] {
    background-color: #eef7ff;
}

/* 見出し（クリックする部分） */
summary {
    padding: 12px;
    cursor: pointer;
    color: #2c3e50;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: background 0.3s ease-in-out;
    position: relative;
}

/* アイコン（▶ 初期状態）を疑似要素で追加 */
summary::after {
	content: "▶";
	font-size: 18px;
	color: #5DADE2;
	font-weight: bold;
    transition: transform 0.3s ease, color 0.3s ease;
}

/* 開いたときのアイコンの回転と変更 */
details[open] summary::after {
	content: "▼";
	transform: rotate(90deg); 
    color: #1a73e8;
}

/* FAQコンテンツのアニメーション */
.faq-content {
	padding: 12px;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, opacity 0.3s ease;
}

/* 開いたとき */
details[open] .faq-content {
    opacity: 1;
}


/* ------------------　メインビジュアル　------------------ */
#custom_banner {
    height: 450px;
    width: 100%;
    position: relative;
    margin: 0;
}

#custom_banner .banner_image {
    display: flex;
    align-items: flex-end;
    background-position: center center;
    background-size: cover;
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

#custom_banner .banner_image::before {
    content: "";
/*     background: linear-gradient(120deg, #6BA4E7 0%, #76D4BE 50%, #C1E59D 100%); */
    background: repeating-linear-gradient(-45deg, #FFFFFF, #FFFFFF 10px, rgb(255 255 255) 10px, rgb(255 255 255 / 24%) 20px);
    opacity: 0.35;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}

#custom_banner .banner_image .banner_title {
    letter-spacing: 2px;
    display: flex;
    position: relative;
    padding: 35px 65px;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    border-radius: 0px 25px 25px 0px;
    background: #FFFFFF;
    min-width: 620px;
    max-width: 820px;
    word-break: keep-all;
}

#custom_banner .banner_image .banner_title .title_prefix {
    color: #4297CF;
    font-family: "Montserrat", sans-serif;
    font-weight: 700;
    letter-spacing: 7.2px;
    text-transform: uppercase;
    display: flex;
}
.banner_title {
    font-size: 1.5em;
}
#custom_banner .banner_image .banner_title p{
	margin:0;
}
@media screen and (max-width:820px) {
	#custom_banner {
		height:400px;
	}
	#custom_banner .banner_image .banner_title{
		min-width: 50%;
		max-width: 50%;
		padding:10px 15px;
	}
	#custom_banner .banner_image .banner_title p{
		font-size:20px;
	}
}


/* ------------------　パンくずリストCSS　------------------ */
.breadcrumb {
    padding: 20px 15px; 
    list-style: none;
    border-radius: 5px; 
}
.breadcrumb li {
    display: inline;
    color: #0275d8; 
}
.breadcrumb a {
    color: #0275d8; 
    text-decoration: none; 
}
.breadcrumb li:last-child {
    color: #666 !important; 
}
.breadcrumb li + li:before {
    content: "›"; 
    padding: 0 5px; 
    color: #666;
}

/* ------------------　見出しCSS　------------------ */
/* h2見出し */
h2.wp-block-heading {
    padding: 17px 0;
	font-weight:600;
	margin: 40px 0 0;
}

@media screen and (max-width:782px) {
	h2.wp-block-heading {
		padding: 17px 5px;
		font-size: 23px;
}
}


/* 　これはh2です　 */
.section01 {
 width: 100%;
 margin: 100px auto 0 auto!important;
}

.read {
	width: 100%;
	margin: 20px auto!important;
}

.readText {
	color: #4297CF;
	text-align: center;
	font-size: 30px;
    margin-bottom: 15px;
}
@media (max-width: 768px) {
	.readText {
		font-size: 20px;
	}
}

.h2{
  width: 100%;
  height: auto;
  background: linear-gradient(90deg, #4297CF, #A7E9B4);
  font-size: 25px;
  color: #fff;
  text-align: center;
  margin-bottom: 15px;
}

.buttom {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: #4297CF;
    text-align: center;
    border-radius: 50px;
    display: inline-block; /* インラインブロックで中央寄せ可能に */
}

.h2Text01 {
    display: flex;
    justify-content: center;
    gap: 50px;
    margin-top: 20px !important;
}

.buttom02 {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn02 {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    text-align: center;
    border-radius: 50px;
    display: inline-block; 
}

/* ------------------　これはh2のリストです　------------------ */

.h2List {
    width: 60%;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 50px;
    margin: 30px auto!important;
    font-size: 16px;
}
}

.h2-li::before {
    content: "";
    width: 5px!important;
    height: 10px!important;
    background: #4297CF;
    border-radius: 50%;
}

.h2-li {
	padding: 0!important;
    margin: 10px auto 0 auto !important;
    color: #000000;
	display: flex;
	flex-wrap: wrap;
}

/* ------------------　これはh3です　------------------ */

.h3 {
    text-align: center;
    font-size: 20px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    display: flex;
	gap: 30px;
    align-items: center;
    justify-content: center;
    margin: 60px 0 40px;
}

.page h3{
	font-size:23px;
	font-weight:600;
}

.h3::before {
    content: "";
    background: linear-gradient(90deg, #4297CF, #A7E9B4);
    flex: 1;
    height: 1px;
    position: relative;
    display: block;
    left: inherit;
    right: inherit;
    transform: none;
}

.h3::after {
    content: "";
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    flex: 1;
    height: 1px;
    position: relative;
    display: block;
    left: inherit;
    right: inherit;
    transform: none;
}

.h3Text01 {
    display: flex;
    justify-content: center;
    gap: 50px;
    margin-top: 20px !important;
}

.wp-image-48 {
    width: 300px;
    height: 200px;
	padding: 0!important;
	display: block;
}

.h3Text02 {
	text-align: center;
	margin: 30px auto!important;
	
}
@media screen and (max-width:780px) {
	.h3{
		gap:0;
	}
	.page h3{
	font-size:20px;
	font-weight:600;
}
}

/* ------------------　これはh3その2です　------------------ */


.h3-2 {
    text-align: center;
    font-size: 20px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: center;
    margin: 60px 0 40px;
}


.h3-2::before {
    content: "";
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    flex: 1;
    height: 1px;
    position: relative;
    display: block;
    left: inherit;
    right: inherit;
    transform: none;
}

.h3-2::after {
    content: "";
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    flex: 1;
    height: 1px;
    position: relative;
    display: block;
    left: inherit;
    right: inherit;
    transform: none;
}

.h3Flex {
	display: flex;
	gap: 30px;
	padding: 20px 40px;
    border: none;
    margin-bottom: 1.2em;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
    background: #fff;
    border-radius: 10px;
}



.h3Flex-right {
	margin:auto 0
}

/* ------------------　これはh4その1です　------------------ */
.section03 {
    width: 70%;
	margin: 100px auto 0 auto!important;
}

.h4{
	font-size: 19px;
	border-left: 5px solid #4297CF;
	background: rgba(66, 151, 207, .1);
	margin: 16px 0;
	border-radius: 4px;
	padding: 5px 12px;
}


.wp-image-48 {
	display: block;
	margin: 0 auto!important;
}


/* ------------------　これはh4その2です　------------------ */
.section03-2 {
    width: 70%;
	margin: 100px auto 0 auto!important;
}

.h4-2{
	font-size: 17px;
    border-left: 5px solid #4297CF;
    background: rgba(66, 151, 207, .1);
    margin: 16px 0;
    border-radius: 4px;
	padding: 5px 12px;
}

.h4-2Text {
	border: 1px dotted #4297CF;
	padding: 20px;
}


/* ------------------　これはh4その3です　------------------ */
.h4-3 {
	font-size: 17px;
	border-bottom: 2px solid #4297CF;
}

.h4Text01-3 {
	
}

.h4-p {
	font-size: 16px;
 color: #4297CF;
}

.h4-list {
	width: 95%;
    margin: 15px auto 0 auto !important;
}

.h4List01 {
	margin: 0!important;
}

.h4List02 {
	margin: 20px auto 0 auto!important;
}

.h4-li::before {
    content: "";
    width: 5px!important;
    height: 10px!important;
    background: #4297CF;
    border-radius: 50%;
}

.h4-li {
	padding: 0!important;
    margin: 10px auto 0 auto !important;
    color: #000000;
}

.h4Flex {
	width: 100%;
	display: flex;
	gap: 50px;
}


/* ------------------タブレット　------------------
 ------------------これはh2です--------------------- */
@media screen and (max-width:768px) {
.section01 {
 width: 100%;
 margin: 100px auto 0 auto!important;
}

.h2{
  width: 100%;
  height: auto;
  background: linear-gradient(90deg, #4297CF, #A7E9B4);
  font-size: 25px;
  color: #fff;
  text-align: center;
}

.buttom {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: #4297CF;
    text-align: center;
    border-radius: 50px;
    display: inline-block; /* インラインブロックで中央寄せ可能に */
}

.h2Text01 {
    display: grid;
    justify-content: none;
    gap: 30px;
    margin-top: 20px !important;
}

.buttom02 {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn02 {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    text-align: center;
    border-radius: 50px;
    display: inline-block; /* インラインブロックで中央寄せ可能に */
}
	
	.h2left {
		order: 2;
	}
	.h2Img {
      order: 1;
	}
	
	/* ------------------タブレット　------------------
 ------------------これはh3です--------------------- */
.h3Text01 {
    display: grid;
    justify-content: center;
    gap: 30px;
    margin-top: 20px !important;
}

.wp-image-48 {
    width: 300px;
    height: 200px;
	padding: 0!important;
	display: block;
	order: 1;
}	
	.h3-p-left {
		order: 2;
	}
	
	/* ------------------タブレット　----------------------
	------------------　これはh3その2です　------------------ */
  .section02-2 {
        width: 100%;
/*         margin: 60px auto 40px auto !important; */
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 30px;
        align-items: center;
        justify-content: center;
    }

    .h3Flex {
        width: 100%;
        flex-direction: column;
        gap: 5px;
        margin: 30px auto !important;
    }

    .h3Flex-left, .h3Flex-right {
        width: 100%;
        padding: 15px;
		margin: 0 auto!important;
    }

    .h3Flex-right-img {
        width: 100% !important;
        height: auto !important;
        object-fit: cover;
    }


    .h3-2 {
        text-align: center;
        font-size: 18px;
        margin: 0 auto;
    }

    .h3-2::before,
    .h3-2::after {
        content: "";
        background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
        height: 1px;
        width: 30%;
        margin: 10px auto;
    }
	
	    /* 順番を入れ替え */
    .mobile-top {
        order: 1; /* 下に移動 */
    }

    .mobile-bottom {
        order: 2; /* 上に移動 */
    }
	
		/* ------------------タブレット　----------------------
	------------------　これはh4その1です　------------------ */
.section03 {
    width: 100%;
	margin: 100px auto 0 auto!important;
}

.h4{
	font-size: 16px;
    border-left: 5px solid #4297CF;
    background: rgba(66, 151, 207, .1);
    margin: 16px 0;
    border-radius: 4px;
	padding: 5px 12px;
}


.wp-image-48 {
	display: block;
	margin: 0 auto!important;
}


		/* ------------------タブレット　----------------------
	------------------　これはh4その2です　------------------ */
.section03-2 {
    width: 100%;
	margin: 100px auto 0 auto!important;
}

.h4-2{
	font-size: 16px;
    border-left: 5px solid #4297CF;
    background: rgba(66, 151, 207, .1);
    margin: 16px 0;
    border-radius: 4px;
	padding: 5px 12px;
}

.h4-2Text {
	border: 1px dotted #4297CF;
	padding: 20px;
}


/* ------------------タブレット　----------------------
------------------　これはh4その3です　------------------ */
.h4-3 {
	font-size: 17px;
	border-bottom: 2px solid #4297CF;
}

.h4Text01-3 {
	
}

.h4-p {
font-size: 17px!important;
 color: #4297CF;
}

.h4-list {
	width: 100%;
    margin: 15px auto 0 auto !important;
}

.h4List01 {
	margin: 0!important;
}

.h4List02 {
	margin: 20px auto 0 auto!important;
}

.h4-li::before {
    content: "";
    width: 5px!important;
    height: 10px!important;
    background: #4297CF;
    border-radius: 50%;
}

.h4-li {
	padding: 0!important;
    margin: 10px auto 0 auto !important;
    color: #000000;
	font-size: 16px!important;
}

    .h4Flex {
        width: 100%;
        display: flex;
        flex-wrap: nowrap; /* 横並びを維持 */
        gap: 20px; /* 要素間のスペースを調整 */
    }

    .h4Flex img {
        width: 200px !important;
        height: 100px !important;
        object-fit: cover; /* 画像を枠に収めつつ比率を保つ */
    }
}

/* ------------------スマホ　----------------------
------------------　これはh2です　------------------ */
@media screen and (max-width:480px) {
	.section01 {
 width: 100%;
 margin: 100px auto 0 auto!important;
}

.h2{
  width: 100%;
  height: auto;
  background: linear-gradient(90deg, #4297CF, #A7E9B4);
  font-size: 25px;
  color: #fff;
  text-align: center;
}

.buttom {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: #4297CF;
    text-align: center;
    border-radius: 50px;
    display: inline-block; /* インラインブロックで中央寄せ可能に */
}

.h2Text01 {
	
    display: grid;
    justify-content: none;
    gap: 30px;
    margin-top: 20px !important;
}

.buttom02 {
    display: block;
    width: 100%; 
    text-align: center; 
}

.btn02 {
    margin-top: 30px!important;
    width: 300px;
    padding: 15px;
    font-size: 16px;
    color: #ffffff;
    background: linear-gradient(96deg, #4CA7E2 0%, #63D2B1 48.73%, #ABE490 90.84%);
    text-align: center;
    border-radius: 50px;
    display: inline-block; /* インラインブロックで中央寄せ可能に */
}
	
	.h2left {
		order: 2;
	}
	.h2Img {
      order: 1;
	}
	
	.h2Img img {
  width: 100%!important;
	}

	
	/* ------------------スマホ　----------------------
------------------　　これはh3です------------------ */
	.section02 {
   width: 100%;
/* 	margin: 100px auto ; */
}
	}
/* h5デザイン */
.depth-heading {
	font-weight: bold;
	border-bottom: 2px solid #5DADE2; 
	padding-bottom: 5px;
	display: inline-block;
}

/* ------------------　背景装飾CSS　------------------ */
/* 白背景 */
.bgwhite {
    padding: 20px 40px;
    border: none;
    margin-bottom: 1.2em;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
    background: #fff;
    border-radius: 10px;
}
@media screen and (max-width:782px) {
.bgwhite {
	padding: 20px 15px;
}
}

/* 白背景点線ボーダー */
.box_left {
    background: #fff;
    border-radius: 15px;
	padding: 10px 25px;
    position: relative; 
	height: 100%;
}

.box_left:before {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    right: 10px;
    bottom: 10px;
	border: 2px dashed #add9e2; 
    border-radius: 13px; 
    pointer-events: none; 
}

/* ------------------　料金CSS　------------------ */
.zihi,
.hoken{
    position: relative; /* 擬似要素の基準 */
    padding: 20px 40px;
    border: none;
    margin-bottom: 1.2em;
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.05);
    background: #fff;
    border-radius: 10px;
}
.zihi::before {
    content: ''; /* 表示するテキストはなし */
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(135deg, #4197CF, #85c6f4); /* グラデーション背景 */
	border-radius:10px 0 0 0;
	width: 130px; /* 三角形の幅 */
	height: 120px; /* 三角形の高さ */
    clip-path: polygon(0 0, 100% 0, 0 100%); /* 左上角の三角形を作成 */
    z-index: 1; /* 背景の上に表示 */
}

.zihi::after {
	content: '自費'; 
	position: absolute;
	top: 15px; 
	left: 10px;
	color: #fff; 
	font-size: 1.5rem;align-content;
	z-index: 2; 
}
.hoken::before {
    content: ''; /* 表示するテキストはなし */
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(135deg, #4197CF, #85c6f4); /* グラデーション背景 */
	border-radius:10px 0 0 0;
	width: 130px; /* 三角形の幅 */
	height: 120px; /* 三角形の高さ */
    clip-path: polygon(0 0, 100% 0, 0 100%); /* 左上角の三角形を作成 */
    z-index: 1; /* 背景の上に表示 */
}

.hoken::after {
	content: '保険'; 
	position: absolute;
	top: 15px; 
	left: 10px;
	color: #fff; 
	font-size: 1.5rem;align-content;
	z-index: 2; 
}


/* ------------------　リスト系CSS　------------------ */
	ul.wp-block-list.syouzyou {
		margin: 20px 0 !important;
/* 		box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important; */
	}
	ul.wp-block-list.syouzyou li {
		color: #555 !important;
		margin-bottom: 15px !important;
		padding: 10px 20px 10px 40px !important;
		border-radius: 8px !important;
		display: flex !important;
		align-items: center !important;
		position: relative !important;
		background: #ffffff !important;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
	}
	ul.wp-block-list.syouzyou li::before {
		content: '';
		width: 12px;
		height: 12px;
		background: linear-gradient(135deg, #4197CF, #85c6f4) !important;
		border-radius: 50% !important;
		margin-right: 15px !important;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
		flex-shrink: 0 !important;
		position: absolute !important;
		left: 15px !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
	}
	/* チェックリストCSS */
	.checklist ul {
		margin: 30px 0;
	}
.checklist li {
    position: relative;
    padding-left: 28px;
    box-sizing: border-box;
    margin-top: 15px;
}
.checklist li::before {
    content: '';
    position: absolute;
    top: 4px;
    left: 0;
    width: 17px;
    height: 15px;
    background: url(https://www.woc.or.jp/cms/wp-content/themes/woc/img/common/ico_check01.png) no-repeat center / 17px;
}



/* ------------------　流れCSS　------------------ */
.page_flow h3{
	position: relative;
    padding-left: 65px;
    box-sizing: border-box;
    margin-top: 15px;
}
.page_flow h3::before {
	content: '';
    position: absolute;
    top: -10px;
    left: 0;
    width: 50px;
    height: 50px;
}
.page_flow .wp-block-group:nth-of-type(1) .wp-block-heading::before {
	background: url(../images/page/1.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(2) .wp-block-heading::before{
	    background: url(../images/page/2.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(3) .wp-block-heading::before{
	    background: url(../images/page/3.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(4) .wp-block-heading::before{
	    background: url(../images/page/4.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(5) .wp-block-heading::before{
	    background: url(../images/page/5.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(6) .wp-block-heading::before{
	    background: url(../images/page/6.png) no-repeat center / 50px;
}
.page_flow .wp-block-group:nth-of-type(7) .wp-block-heading::before{
	    background: url(../images/page/7.png) no-repeat center / 50px;
}
.page_flow .wp-block-group::after {
	content: "";
    display: block;
    background-image: url('../images/page/arrow.png');
    background-repeat: no-repeat;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
	width: 40px;
  height: 40px;
}
.page_flow .wp-block-group:last-child::after {
	display:none
}
/* ------------------　特徴番号CSS　------------------ */

.hlist1 h4 {
	position: relative;
    padding-left: 65px;
    box-sizing: border-box;
    margin-top: 15px;
}
.hlist1 h4::before {
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50px;
    height: 50px;
}
.hlist1 .wp-block-group:nth-of-type(1) .wp-block-heading::before {
	background: url(../images/page/1.png) no-repeat center / 50px;
}
.hlist1 .wp-block-group:nth-of-type(2) .wp-block-heading::before {
	background: url(../images/page/2.png) no-repeat center / 50px;
}
.hlist1 .wp-block-group section{
    background: #f4edda5c;
    margin-top: 30px;
	padding:10px;
}
/* ------------------　背景追加　------------------ */
.bg_cer{
	background: #f4edda5c;
    margin-top: 30px;
    padding: 10px 20px;
	border-radius:20px;
}

/* ------------------　院長紹介CSS　------------------ */
.intyouwap {
    position: relative;
	margin:30px 0;
}

.wp-block-group.intyoubox {
    position: absolute;
    bottom: -15px;
    right: 26px;
    background: #fff;
    padding: 20px 30px;
}
.clinic_name {
	font-family: Noto Serif JP; 
	margin-bottom: 0;
}
.intyou_name {
	font-size: 30px;
	font-family: Noto Serif JP; 
	margin-top: 10px;
}
.intyou_en {
	color: #4a9fe38c;
    font-size: 20px;
	margin-top: -25px;
}
@media screen and (max-width:780px) {
	.wp-block-group.intyoubox {
		left: 0;
		width: 100%;
		padding: 10px 20px;
		bottom: 26px;
		background: #ffffffb3;
	}
.intyou_name {
    font-size: 20px;
}
.intyou_en {
    font-size: 18px;

}
}


/* ------------------　医院紹介CSS　------------------ */

.wp-block-group.hitokoto {
    background: #f1e1bb3d;
    border-radius: 30px;
	box-shadow: 0 12px 26px -2px rgba(153, 139, 11, 0.17);
	padding:10px 20px;
}
/* ------------------　設備紹介CSS　------------------ */
.wp-block-column.margin0.is-layout-flow.wp-block-column-is-layout-flow{
	margin:0;
}
.setubidiv img{
	width:90%;
}

/* ------------------　診療の流れCSS　------------------ */
.flowpage_section h3{
	color: #f18200;
	border:none;
	padding: 20px 0;
}
section.wp-block-group.flow_bk {
	background: url(../images/page/flowbg.png) no-repeat center top;    margin: 20px;
    padding: 20px;
    border-radius: 20px;
	box-shadow: 0px 0px 20px 20px #fff6c8;
	margin: 88px 0;
}
.pageflow_sec h3 {
	position: relative;
    padding-left: 65px;
    box-sizing: border-box;
    margin-top: 15px;
	line-height:2;
}
.pageflow_sec h3::before {
    content: '';
    position: absolute;
	top: -25px;
    left: -5px;
    width: 60px;
    height: 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(1) .wp-block-heading::before {
	background: url(../images/page/step1.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(2) .wp-block-heading::before {
	background: url(../images/page/step2.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(3) .wp-block-heading::before {
	background: url(../images/page/step3.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(4) .wp-block-heading::before {
	background: url(../images/page/step4.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(5) .wp-block-heading::before {
	background: url(../images/page/step5.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(6) .wp-block-heading::before {
	background: url(../images/page/step6.png) no-repeat center / 60px;
}
.pageflow_sec .wp-block-group:nth-of-type(7) .wp-block-heading::before {
	background: url(../images/page/step7.png) no-repeat center / 60px;
}

.kyoutyou{
	font-size:17px;
}
.kyoutyou strong {
    font-size: 40px;
    color: #ffb45d;
    font-weight: 600;
}
/* ------------------　インビザラインCSS　------------------ */
.grid-container {
            display: grid;
            grid-template-columns: repeat(6, 1fr);
            gap: 30px;
        }

        .grid-container img {
            width: 100%;
            height: auto;
        }
.grid-item p{
	    text-align: center;
	font-size:14px;
}

        @media screen and (max-width: 768px) {
            .grid-container {
                grid-template-columns: repeat(2, 1fr);
            }
        }

.feature_section h3{
	color: #f18200;
	border:none;
	padding: 20px 0;
}
section.wp-block-group.feature_bk {
	background: url(../images/page/flowbg.png) no-repeat center top;    margin: 20px;
    padding: 20px;
    border-radius: 20px;
	box-shadow: 0px 0px 20px 20px #fff6c8;
	margin: 88px 0;
}
.feature_sec h3 {
	position: relative;
    padding-left: 65px;
    box-sizing: border-box;
    margin-top: 15px;
}
.feature_sec h3::before {
	content: '';
    position: absolute;
    top: -7px;
    left: -10px;
    width: 40px;
    height: 40px;
}
.feature_sec .wp-block-group:nth-of-type(1) .wp-block-heading::before {
	background: url(../images/one.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(2) .wp-block-heading::before {
	background: url(../images/two.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(3) .wp-block-heading::before {
	background: url(../images/three.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(4) .wp-block-heading::before {
	background: url(../images/four.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(5) .wp-block-heading::before {
	background: url(../images/five.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(6) .wp-block-heading::before {
	background: url(../images/six.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(7) .wp-block-heading::before {
	background: url(../images/seven.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(8) .wp-block-heading::before {
	background: url(../images/eight.png) no-repeat center / 40px;
}
.feature_sec .wp-block-group:nth-of-type(9) .wp-block-heading::before {
	background: url(../images/nine.png) no-repeat center / 40px;
}


.flow_box {
	background: #fff;
	border-radius: 70px;
	padding: 20px 15px;
	margin: 30px 0;
}


/* Styling for the table wrapper */
.wp-block-table {
    overflow-x: auto;
}

/* Styling for the table itself */
.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
    font-family: Arial, sans-serif;
    font-size: 1em;
    color: #333;
}

/* Header Row */
.wp-block-table thead {
    border-bottom: 3px solid #573d23;
    background-color: #e4d4c4;
    color: #573d23;
    text-transform: uppercase;
    font-weight: bold;
}

/* Body Rows */
.wp-block-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

.wp-block-table tbody tr:nth-child(odd) {
    background-color: #ffffff;
}

/* Cells */
.wp-block-table td, .wp-block-table th {
    border: 1px solid #e0e0e0;
    padding: 10px;
    text-align: center;
}

/* Fixed Layout */
.wp-block-table .has-fixed-layout {
    table-layout: fixed;
    width: 100%;
	margin:10px 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .wp-block-table table {
        font-size: 0.9em;
    }
}
.col_e4d4c4{
	background-color: #e4d4c4;
}

/* ------------------　accessページCSS　------------------ */
.gmap {
	width: 100%;
    padding: 0 3%;
    margin: 0 auto;
}
@media (max-width: 768px) {
	.gmap {
		width:100%;
	}
}

/* ---------ジャンプbutton--------- */

.jump-button {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2列配置 */
  gap: 20px; 
  justify-content: center;
  margin: 40px auto;
  max-width: 800px;
}

.jump {
  display: block;
  padding: 15px 20px;
  text-align: center;
  text-decoration: none;
  color: #333;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 8px;
  font-size: 14px;
  font-weight: bold;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); 
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}

.jump:hover {
	background-color: #e1edf0;
	color: #6a4c42; 
	transform: translateY(-3px); 
}

.jump:active {
	background-color: #e1edf0;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); 
	transform: translateY(0);
}

/* モバイル対応: 幅768px以下の時に1列配置に変更 */
@media screen and (max-width: 768px) {
  .jump-button {
    grid-template-columns: 1fr; /* 1列配置 */
  }
}
section {
	scroll-margin-top: 70px;
}
/* ---------リスクポップアップ--------- */
    .popup {
      background: linear-gradient(135deg, #1e90ff, #87cefa);
      color: white;
      padding: 12px 24px;
      margin: 20px auto;
      border: none;
      border-radius: 25px;
      font-size: 16px;
      cursor: pointer;
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
      transition: all 0.3s ease;
    }

    .popup:hover {
      background: linear-gradient(135deg, #1c86ee, #7ec0ee);
      box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
    }

    .popup-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 50, 0.5);
      display: none;
      justify-content: center;
      align-items: center;
      z-index: 999;
    }

    .popup-content {
      background: white;
      padding: 20px;
      border-radius: 15px;
      max-width: 50%;
      width: 90%;
      box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
      animation: fadeIn 0.3s ease;
    }

    .popup-title {
      font-size: 20px;
      color: #1e90ff;
      margin-bottom: 15px;
      font-weight: 600;
    }

    .popup-close {
      margin-top: 20px;
      color: #1e90ff;
      font-weight: bold;
      cursor: pointer;
      transition: color 0.3s ease;
    }

    .popup-close:hover {
      color: #104e8b;
    }

    @keyframes fadeIn {
      from {
        opacity: 0;
        transform: scale(0.95);
      }
      to {
        opacity: 1;
        transform: scale(1);
      }
    }