@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/*------------------------------------------------------------
 * フリーフォント・文字サイズ
 *------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700&display=swap');

body{
	--swl-font_family: "M PLUS Rounded 1c", "游ゴシック体", "Yu Gothic", YuGothic, Meiryo, sans-serif;
	--swl-font_weight: 400;
}


@media (min-width: 960px) {
	:root:has(#body_wrap.text-large){
		--swl-fz--root: 21px;
		--swl-fz--content: 21px;
	}
	:root:has(#body_wrap.text-small){
		--swl-fz--root: 15px;
		--swl-fz--content: 15px;
	}
}
@media (max-width: 959px) {
	.sp-left{
		text-align: left !important;
	}
	.sp-center{
		text-align: center !important;
	}	
}

/*------------------------------------------------------------
 * 余白
 *------------------------------------------------------------*/
#body_wrap:not(.blog, .archive, .single) .l-content {
	padding-top: 0em !important;
	margin-bottom: 0 !important;
}
.btn-block.swell-block-fullWide{ /*ボタンフルワイド*/
	padding-top: 0 !important;
}


/*------------------------------------------------------------
 * ヘッダー
 *------------------------------------------------------------*/
.l-header,.l-fixHeader{
	--logo_size_pc: 70px;
    --logo_size_pcfix: 70px;	
}
.c-gnav>.menu-item>a .ttl{
	font-size: 1rem;
}
.c-gnav a::after{
	background: #ECE931
}
.c-gnav > li:hover > a::after,
.c-gnav > .-current > a::after {
    height: 10px;
}
.p-spMenu .c-widget__title,
.p-spMenu a{
    font-size: clamp(16px, 1.1rem, 18px);	
}

/*------------------------------------------------------------
 * コンテンツヘッダー
 *------------------------------------------------------------*/
.l-topTitleArea__body .c-pageTitle small,
.c-filterLayer.-texture-brushed:after{
	display: none;
}

.c-postTitle__ttl,
.c-pageTitle{
	/*font-family: "Zen Maru Gothic", var(--swl-font_family);
	font-weight: 500 !important;
	font-style: normal;*/
	color: #fff;
	font-size: clamp(28px, 2.5vw, 42px);
    letter-spacing: 0.05em;
	font-weight: bold;
	text-shadow: none;
	margin-bottom: 0.5em;
    position: relative;
}
.l-topTitleArea .c-postTitle__ttl,
.l-topTitleArea .c-pageTitle{
	text-align: center;
	overflow-wrap: break-word;
    word-break: keep-all;
}
.l-topTitleArea .c-postTitle__ttl::after,
.l-topTitleArea .c-pageTitle::after{
	content: "";
	visibility: visible;
    position: absolute;
    bottom: -0.5em;
    left: 50%;
    transform: translateX(-50%);
    /*width: 3em;*/
	width: 2em;
    height: 5px;
    border-radius: 5px;
    background: #fff;
}

.post-type-archive-interview .l-topTitleArea::before,
.single-interview .l-topTitleArea::before,
.l-topTitleArea.green::before{
    background-color: var(--color_main);
}
.l-topTitleArea.gray::before{
    background-color: #999999;
}


/*------------------------------------------------------------
 * フッター
 *------------------------------------------------------------*/
.w-beforeFooter{
	margin-top: 0;
}
.l-footer a:hover{
	opacity: .75;
}

.l-footer .disclaimer{
    border-top: 1px solid var(--color_border);
    border-bottom: 1px solid var(--color_border);
    padding: 1rem 1.5rem;
    margin-bottom: 3rem;
	font-size: 0.85rem;
}


/*メニュー*/
.l-footer ul.wp-block-list{
	gap: 0;
    padding: 0;
	list-style: none;
	font-size: 0.85rem;
}
.l-footer ul.wp-block-list li{
	margin-right: 1.5em;
}
.l-footer ul.wp-block-list li::after{
    content: "/";
    position: absolute;
    margin-left: 0.5em;
}
.l-footer ul.wp-block-list li:last-child::after{
    display: none;
}
.l-footer ul.wp-block-list li a{
	text-decoration: underline;
}

/*アイコン*/
.l-footer .swell-block-box-menu .swell-block-box-menu__inner{
    justify-content: flex-end;
}
.l-footer .swell-block-box-menu .swell-block-box-menu__item{
	border: none;
	--the-box-width: auto;
}
.l-footer .swell-block-box-menu .swell-block-box-menu__item .swell-block-box-menu__link{
    padding: 1em;	
}
.l-footer .swell-block-box-menu .swell-block-box-menu__item .swell-block-box-menu__text{
	font-size: 0.85rem;
}

@media (min-width: 960px) {
	.l-footer .wp-block-image,
	.l-footer .copyright{
		text-align: right;
	}
}

@media (max-width: 1110px) and (min-width: 960px){
	.l-footer .swell-block-columns .swell-block-column{
		--clmn-w--pc: 60% !important;	
	}
	.l-footer .swell-block-columns .swell-block-column:first-of-type,
	.l-footer .swell-block-columns .swell-block-column:last-of-type{
		--clmn-w--pc: 40% !important;
	}
	.l-footer .swell-block-columns .swell-block-column:last-of-type>*{
		text-align: left !important;
	}
	.l-footer .swell-block-box-menu .swell-block-box-menu__item{
		--the-box-width: 25%;
	}
	.l-footer .swell-block-box-menu .swell-block-box-menu__item .swell-block-box-menu__link{
		padding: 1em 1em;	
	}
}
@media (max-width: 959px) {
	.l-footer .swell-block-box-menu .swell-block-box-menu__item{
		--the-box-width: 50%;
	}
	.l-footer ul.wp-block-list,
    .l-footer .swell-block-box-menu .swell-block-box-menu__inner{
		justify-content: center;
    }
    .l-footer .swell-block-box-menu .swell-block-box-menu__inner{
	    width: 75%;
	    margin: auto;
    }
}

/*------------------------------------------------------------
 * フローボタン
 *------------------------------------------------------------*/
.w-beforeFooter .textsize-btn,
.w-beforeFooter .searchhos-btn{
	display: none;
}

@media (min-width: 960px) {
	.w-beforeFooter .textsize-btn,
	.w-beforeFooter .searchhos-btn{
		display: block;
		width: 75px;
		background: #00BCC8;
		padding: 10px 3px;
		box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
		font-size: 16px;
		text-align: center;
		color: #fff;
		position: fixed !important;
		top: 50%;
		transform: translateY(-25%);
		z-index: 99;
	}
	
	.w-beforeFooter .textsize-btn{
		left: 0;
		right: auto;
		border-radius: 0px 15px 15px 0;
	}
	.w-beforeFooter .textsize-btn .swl-format-1{
		display: block;
		width: 40px;
		padding:3px;
		margin: 5px auto;
		color: #00BCC8;
		font-weight: bold;
		background: #ffffff;
		border-radius: 50%;
		cursor: pointer;
	}
	.w-beforeFooter .textsize-btn .swl-format-1:hover{
		opacity: 0.75;
	}
	
	.w-beforeFooter .textsize-btn .current .swl-format-1{
		background: #FFFF99;
	}	
	
	.w-beforeFooter .searchhos-btn{
		padding: 15px 3px;
		left: auto;
		right: 0;
		border-radius: 15px 0 0 15px;
	}
	.w-beforeFooter .searchhos-btn p{
		margin: 5px auto;
		font-size: 18px;
		letter-spacing: 5px;
		writing-mode: vertical-rl;
	}
}
@media (max-width: 1080px) {
    .w-beforeFooter .textsize-btn,
	.w-beforeFooter .searchhos-btn {
        top: 90%;
        transform: translateY(calc(-100% - 1rem));
    }
}
/*
@media (max-width: 959px) {
    .w-beforeFooter .textsize-btn,
	.w-beforeFooter .searchhos-btn {
		min-height: 85px;
		width: 50%;
        top: 100%;
        transform: translateY(-100%);
		border-radius: 15px 15px 0 0;
    }
	
    .w-beforeFooter .textsize-btn p,
	.w-beforeFooter .searchhos-btn p,
	.w-beforeFooter .searchhos-btn .wp-block-image{
		display: inline-block;
    }
    .w-beforeFooter .textsize-btn p:first-of-type {
		width: 100%;
    }
    .w-beforeFooter .textsize-btn br {
		display: none;
    }	
	.w-beforeFooter .searchhos-btn p{
		writing-mode: unset;
	}
}
*/

/*------------------------------------------------------------
 * ページタイトル
 *------------------------------------------------------------*/
#main_content .c-postTitle__ttl{
	color: #3399cc;
	margin-top: 4rem;
}

.single-interview .c-postTitle__ttl small{
    display: block;
    font-size: 0.75em;	
}


/*------------------------------------------------------------
 * 見出し
 *------------------------------------------------------------*/
/*h2:not(.p-postList__title),
h3:not(.p-postList__title,.swell-block-accordion__label),
h4:not(.p-postList__title){
	font-family: "Zen Maru Gothic", var(--swl-font_family);
	font-weight: 500 !important;
	font-style: normal;
}*/

h2:not(.p-postList__title){
	font-size: clamp(24px, 2.5vw, 36px);
	letter-spacing: 0.05em;
	margin: 2em 0 1em;
}
h2.has-background{
	padding: 1.5rem;
	border-radius: 0.5rem;
}

h3:not(.p-postList__title,.swell-block-accordion__label){
	font-size: clamp(20px, 4vw, 24px);
	margin: 1.5em 0 1em;
}
h3.wp-block-heading:not(.is-style-section_ttl)::before{
    width: 0.75em;
    height: 0.75em;
    background: var(--color_deep02);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}


/*------------------------------------------------------------
 * 投稿リスト
 *------------------------------------------------------------*/

/* お知らせリスト */
.p-postList.-type-simple .p-postList__item:not(.hospital-list) .p-postList__body{
    display: flex;
    justify-content: space-between;	
	align-items: center;
}
.p-postList.-type-simple .p-postList__item:not(.hospital-list) .p-postList__body .p-postList__title{
    flex-grow: 2;
    padding: 0 2em;
}

.p-postList.-type-simple .p-postList__item:not(.hospital-list) .p-postList__meta{
    font-size: 1rem;
	min-width: 8rem;
}

/* カテゴリーラベル */
.p-postList.-type-simple .p-postList__item .p-postList__cat{
	--color_cat: #999999;
	width: 15em;
    display: inline-block;
    text-align: center;
	color: var(--color_cat);
	background: #ffffff;
    border: 2px solid var(--color_cat);
    border-radius: 2em;
	margin-right: 0;
    padding: 0.5em 1em;
	opacity: 1;
}

.p-postList.-type-simple .p-postList__cat[data-cat-id="1"]{/*お知らせ*/
	--color_cat: #009600;
}
.p-postList.-type-simple .p-postList__cat[data-cat-id="127"]{/*テレビ・新聞で紹介*/
	--color_cat: #2BBCC8;
}
.p-postList.-type-simple .p-postList__cat[data-cat-id="128"]{/*治療実績のご紹介*/	
	--color_cat: #2146B4;	
}
.p-postList.-type-simple .p-postList__cat[data-cat-id="129"]{/*患者さん・医師の声*/
	--color_cat: #EDA13F;
}


.p-postList.-type-simple [class*=" icon-"]:before{
    display: none;
}

@media (max-width: 960px) {
	.p-postList.-type-simple .p-postList__item .p-postList__body{
		flex-wrap: wrap;		
	}
	.p-postList.-type-simple .p-postList__item .p-postList__meta{
		flex: 0 0 50%;
	}
	.p-postList.-type-simple .p-postList__item .p-postList__category{
		flex: 1 0 50%;
	}
	.p-postList.-type-simple .p-postList__item .p-postList__category .p-postList__cat{
		width: 100%;
		font-size: 0.9em;
        padding: 5px;
	}
	.p-postList.-type-simple .p-postList__item .p-postList__body .p-postList__title{
		padding: 0.75em 0 0 0;
		flex-basis: 100%;
		order: 3;
	}
}


/* インタビューリスト */
.post-type-archive-interview .p-postList__item .p-postList__title,
.interview-list .p-postList__item .p-postList__title{
	font-size: 1.1rem;
    overflow-wrap: break-word;
    word-break: keep-all;
}

.post-type-archive-interview .p-postList__item .p-postList__excerpt,
.interview-list .p-postList__item .p-postList__excerpt{
    font-size: 1rem;
}

@media (min-width: 1020px) {
	.post-type-archive-interview .-type-card.-pc-col3 .p-postList__item,
    .interview-list .-type-card.-pc-col3 .p-postList__item{
        width: 25%;
    }
}
@media (max-width: 600px) {
    .post_content .info-column .interview-list{
        margin-bottom: -2.5em !important;
    }
    .info-column .interview-list .p-postList__item{
        margin-bottom: 1.5em;
    }
}


/*------------------------------------------------------------
 * SWELLボタン
 *------------------------------------------------------------*/
.swell-block-button{
    /*--the-fz: 1.3rem;*/
	--the-fz: 1.5rem;
}
.swell-block-button .swell-block-button__link[data-has-icon]{
    justify-content: space-between;
    --the-padding: 1em 1.5em 1em 3em;
}
.swell-block-button .swell-block-button__link[data-has-icon] span{
    flex-grow: 2;
    letter-spacing: 2px;	
}
.swell-block-button .__icon{
	--the-icon-size: 1.25em;
}


/*------------------------------------------------------------
 * キャプション
 *------------------------------------------------------------*/
.wp-block-image figcaption,
.wp-block-embed>figcaption{
    font-size: .9em;
    line-height: 1.6;
    opacity: 1;
}

/*------------------------------------------------------------
 * Q&A
 *------------------------------------------------------------*/
.swell-block-faq .faq_q,
.swell-block-faq .faq_a{
    padding-left: 4em;
}

.swell-block-faq .faq_q:before,
.swell-block-faq .faq_a:before{
    font-size: 1.5em;
    top: 25%;
    transform: translateY(-25%);
}

/*------------------------------------------------------------
 * 検索フォーム
 *------------------------------------------------------------*/
.hospital-box{
	max-width: var(--article_size);
    margin: auto;
}

.hospital-box .hospital-search,
.hospital-box .search-type .swell-block-box-menu__item{
	border-radius: 1rem;
	overflow: hidden;
}

.hospital-box .hospital-search .hospital-type,
.hospital-box .hospital-search .hospital-area{
	display: flex;
	gap: 0 2rem;
	list-style: none;
	--swl-list-padding--left: 0;
}

.hospital-box .hospital-search label{
	cursor: pointer;
}

.hospital-box .search-type{
    max-width: clamp(200px, 100%, 800px);
    margin: auto;	
}
.hospital-box .search-type .swell-block-box-menu__item{
	margin-top: 1rem !important;
}
.hospital-box .search-type .swell-block-box-menu__link::after{
	content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 2rem;
    height: 2rem;
    background-image: url("data:image/svg+xml,%3Csvg height='1.5em' width='1.5em' fill='%2399CC33' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 512 512'%3E%3Cpath d='M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-252 74.14V181.86a16 16 0 0126.23-12.29l89.09 74.13a16 16 0 010 24.6l-89.09 74.13A16 16 0 01212 330.14z'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

/*検索ボタン・メニュー*/
#body_wrap:not(.home) .hospital-box a{
	pointer-events: none;
}

.hospital-box #search-btn{
	margin-top: 3rem;
	cursor: pointer;
}
.hospital-box #search-btn:hover .swell-block-button__link{
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 12px 24px -12px rgba(0, 0, 0, .2);
    opacity: 1;
}
.hospital-box .search-type .swell-block-box-menu__item:hover a{
	background-color: var(--swl-color_hov_gray);
}



@media (max-width: 959px) {
	.hospital-box .hospital-search .hospital-type,
	.hospital-box .hospital-search .hospital-area{
		flex-wrap: wrap;
	}
	.hospital-box .hospital-search .hospital-type li{
		flex: 1 0 100%;
		padding-left: 1.5rem;
	}
	.hospital-box .hospital-search .hospital-type input{
		position: absolute;
		top: 0;
		left: 0;
		transform: translateY(50%);
	}
	
	.hospital-box .hospital-search .hospital-area li{
		flex: 1 0 30%;
	}
	
	.hospital-box .search-type .swell-block-box-menu__link{
		padding-right: 4rem;
	}
}


/*------------------------------------------------------------
 * 病院一覧
 *------------------------------------------------------------*/
#result .p-postList.-type-simple{
	border-top: none;
}

/*検索結果*/
#result .p-blogParts:has(.hidden):not(:has(.active)),
#result .noresult{
	display: none !important;
}
#result:has(.hidden):not(:has(.active)) .noresult{
	display: block !important;
}

/*病院リスト*/
.hospital-list{
    padding: 1.5rem 1rem;
    margin-bottom: 1rem !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
	border-radius: 1rem;
}
.hospital-list .p-postList__title{
	font-size: 1.25rem;
	margin-bottom: 0.5rem;
}
.hospital-list .p-postList__title > small{
	display: block;
	font-size: 1.25rem;
	opacity: 1;
}

.hospital-list .hospital-name{
	position: relative;
}
.hospital-list .hospital-name:nth-of-type(2){
	margin-top: 1.25rem;
}

.hospital-list p{
	line-height: 1.75;
}
.hospital-list img{
	width: 1.5rem;
	height: 1.5rem;
	object-fit: contain;
	margin-right: 5px;
}

.hospital-list .address{
	display: flex;
	align-items: center;
	margin: 0.5rem 0 0.25rem;
}
.hospital-list .address img.map-icon{
	width: 2.5rem;
	height: 2.5rem;
}
.hospital-list .address img.map-icon:hover{
	opacity: 0.7;
}

.hospital-list .contact-info{
	display: flex;
	align-items: center;
	gap: 0 1.5rem;
}
.hospital-list .contact-info > span{
	display: flex;
	align-items: center;
}

/* アイコン */
.hospital-list .hospital-icon{
	display: flex;
    gap: 0 10px;
	position: absolute;
    top: 0;
    right: 0;
	transform: translateY(25%);
}
.hospital-list .hospital-icon img{
	width: 50px;
	height: 50px;
}

@media (max-width: 600px) {
	.hospital-list .p-postList__title,
	.hospital-list .hospital-name,
	.hospital-list p{
		overflow-wrap: break-word;
		word-break: keep-all;
	}
	.hospital-list .p-postList__title{
		padding-right: 50px !important;
	}
	.hospital-list .contact-info{
        flex-direction: column;
        align-items: flex-start;
	}
}


/*------------------------------------------------------------
 * インタビュー
 *------------------------------------------------------------*/
.single-interview .l-topTitleArea .p-articleMetas,
.single-interview .w-singleBottom{
	display: none;
}

@media (max-width: 959px) and (min-width: 769px) {
    .single-interview #content{
		display: flex;
    	flex-wrap: wrap;
    	justify-content: space-between;
    }
    .single-interview #content main{
		width: calc(100% - var(--swl-sidebar_width) - var(--swl-sidebar_margin));
    }	
    .single-interview #content aside{
		width: var(--swl-sidebar_width);
    }	
}

@media (max-width: 768px) {
    .single-interview #content{
        display: flex;
    	flex-direction: column;
    }
}

/*医師プロフィール*/
.doctor_list_block .dr_profile{
	text-align: center;
	margin-bottom: 2em;
}

.doctor_list_block .dr_img{
	/*position: relative;
	padding-top: 100%;
	max-width: 85%;
	margin: 0 auto;*/
}

.doctor_list_block .dr_img_inner{
    /*position: absolute;
    top: 0;
    right: 0;
    margin-left: 1em;*/
    margin-bottom: 2em;   
}
.doctor_list_block .dr_img_src{
    position: relative;
    z-index: 2;
	width: fit-content;
    margin: auto;
}
.doctor_list_block .dr_img_src::after {
    content: "";
    position: absolute;
    background: var(--color_main);
    left: -1.5em;
    bottom: -1em;
	z-index: -1;
    max-width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
}

.doctor_list_block .dr_name{
    font-size: 1.75em;
    margin: 0.25rem 0 1rem;
}

.doctor_list_block .dr_degree{
    font-size: 1.1em;
    overflow-wrap: break-word;
    word-break: keep-all;
}

.doctor_list_block .dr_license h4{
    border-bottom: 2px solid #99CC33;
    padding-bottom: 0.5rem;
    margin: 1rem 0;
    font-size: 1.25em;
}

/* Q&A */
.single-interview [data-q=fill-custom] .faq_q:before{
    background-color: #FFC200;
}
.single-interview [data-q=fill-custom] .faq_a:before{
    top: 0.5em;
    transform: translateY(0);
}

/* カラーボックス */
.color-box.wp-block-group{
    background: var(--color_main);
    padding: 2em;
    --the-border-color: transparent;
}
.color-box.wp-block-group .wp-block-group__inner-container{
    background: #ffffff;
    padding: 2em;
}

/* 病院一覧 */
.single-interview #interview_hospital,
.single-interview #after_article{
    width: 100%;
	padding: 0;
}
#foot-hospital .wp-block-heading{
    margin: 0;
}
#foot-hospital .wp-block-media-text{
    width: fit-content;
    margin: auto;
	grid-template-columns: 4.5em auto !important;
}
#foot-hospital .p-postList{
	border-top: none;
}
@media (max-width: 960px) {
	#foot-hospital .wp-block-media-text{
    	width: 100%;
	}
}
@media (max-width: 600px) {
	#foot-hospital .wp-block-media-text{
		grid-template-columns: auto !important;
	}
	#foot-hospital .wp-block-media-text .wp-block-media-text__media{
		width: 5em;
		margin: auto;
	}
}



/*------------------------------------------------------------
 * お知らせ記事
 *------------------------------------------------------------*/

.single-post h1.c-postTitle__ttl{
    font-size: clamp(24px, 2vw, 36px);	
}
.single-post h2.wp-block-heading{
    font-size: clamp(18px, 1.5vw, 24px);
}

.single-post .p-articleMetas{
	justify-content: flex-end;
}
.single-post .p-articleMetas [class*=" icon-"]:before{
    display: none;
}






/*------------------------------------------------------------
 * TOP
 *------------------------------------------------------------*/
/* ヘッダー */
@media (min-width: 960px) {
    .l-header__inner.l-container {
        max-width: calc(var(--container_size, 0px) + var(--swl-pad_container, 0px)* 2);
        padding-left: var(--swl-pad_container, 0);
        padding-right: var(--swl-pad_container, 0);
    }
}

/* 見出し */
.home h2:not(.p-postList__title){
    font-size: clamp(24px, 2.25vw, 48px);
    line-height: 1;
}

/* スライダー */
.top-swiper ~ .swiper-button-prev,
.top-swiper ~ .swiper-button-next{
	--slider_page: 3;
	--swiper-nav-size: 50px;
    background: #fff;
    color: var(--color_text);
    border-radius: 50%;
	height: var(--swiper-nav-size);
	box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
}

.top-swiper ~ .swiper-button-prev{
	left: calc((100svw / var(--slider_page)) * 0.25);
    transform: translateX(-100%);	
}
.top-swiper ~ .swiper-button-next{
    right: calc((100svw / var(--slider_page)) * 0.25);
    transform: translateX(100%);	
}
.top-swiper ~ .swiper-button-next:after,
.top-swiper ~ .swiper-button-prev:after{
	width: calc(var(--swiper-nav-size) * .3);
	height: calc(var(--swiper-nav-size) * .3);
}


@media (min-width: 1400px) {
	.top-swiper ~ .swiper-button-prev,
	.top-swiper ~ .swiper-button-next{
    	--slider_page: 1.5;
	}
}
@media (min-width: 768px) and (max-width: 959px) {
	.top-swiper ~ .swiper-button-prev,
	.top-swiper ~ .swiper-button-next{
    	--slider_page: 1.5;
	}
}
@media (max-width: 959px) {
	.top-swiper .swiper-slide{
		aspect-ratio: 1 / 1.2;
	}
	.top-swiper .wp-block-video{
		display: flex;
        background: #E0F9F8;
	}
}
@media (max-width: 600px) {
	.top-swiper ~ .swiper-button-prev,
	.top-swiper ~ .swiper-button-next{
    	--slider_page: 2.5;
	}
}


/* 紹介 */
.fus-text{
    max-width: clamp(200px, 90vw, 600px);
    margin-left: auto;
    margin-right: auto;
}


/* 新着情報 */
.info-column .news-column{
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
}
.info-column .news-column .wp-block-heading{
    padding: 0.5em 1.5em;
}
.info-column .news-column .news-list a{
    padding: 1em 2.5em;
}

@media (max-width: 960px) {
    .info-column .news-column .news-list a{
        padding: 1em 1.5em;
    }
}

@media (max-width: 600px) {
    .info-column .last-column{
        order: 3;
    }
    .post_content .info-column .interview-list{
        margin-bottom: -2.5em !important;
    }
    .info-column .interview-list .p-postList__item{
        margin-bottom: 1.5em;
    }
}


/* 情報を探す */
@media (min-width: 1020px) {
    .find .-type-card.-pc-col3 .p-postList__item,
	.find .-type-thumb.-pc-col3 .p-postList__item{
        width: 25%;
    }
}

.find .p-postList__item .p-postList__link{
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
}

.find .p-postList__item .p-postList__thumb{
    border-radius: 0;
    box-shadow: none;
}
/*
.find .p-postList__item .p-postList__thumb .c-postThumb__figure::before{
    padding-top: 31.25%;
}
*/

.find .p-postList__item .p-postList__body{
    padding: 1em;
    height: 5em;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.find .p-postList__item .p-postList__title{
    position: relative;
    padding-right: 1.5em;
}
.find .p-postList__item .p-postList__title::after{
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    background-image: url("data:image/svg+xml,%3Csvg height='1.5em' width='1.5em' fill='%2399CC33' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 512 512'%3E%3Cpath d='M464 256c0-114.87-93.13-208-208-208S48 141.13 48 256s93.13 208 208 208 208-93.13 208-208zm-252 74.14V181.86a16 16 0 0126.23-12.29l89.09 74.13a16 16 0 010 24.6l-89.09 74.13A16 16 0 01212 330.14z'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

@media (min-width: 960px) {
	.find .p-postList__item .p-postList__title{
        font-size: inherit;
	}
}

/* タブ */
.learn .c-tabBody{
    border: none;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
}

.learn .c-tabList{
    justify-content: space-between;
    counter-reset: number 0;  
}
.learn .c-tabList .c-tabList__item{
   --the-tab-flex: 1 0 50%;
}

.learn .c-tabList .c-tabList__button{
    background: #F4F6F7;
    color: var(--color_text);
    padding: 1em;
    border-radius: 12px 12px 0 0;
    opacity: 1;
    box-shadow: 1px -4px 8px rgba(0, 0, 0, .1);
}
.learn .c-tabList .c-tabList__button::before{
    counter-increment: number 1;
    content: counter(number) " ";
    position: absolute;
    left: 1.5em;
    top: 50%;
    transform: translateY(-50%);
    width: 2em;
    height: 2em;
    background: #FFFF99;
    border-radius: 50%;
    line-height: 2em;
    z-index: 1;
}
.learn .c-tabList .c-tabList__button::after{
    content: "";
    position: absolute;
    right: 1.5em;
    top: 50%;
    transform: translateY(-50%);
    display: inline-block;
    width: 1em;
    height: 1em;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 512 512'%3E%3Cpath fill='none' stroke='currentColor' stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M112 184l144 144 144-144'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 1;
}

.learn .c-tabList .c-tabList__button:hover{
    background: #F4F6F7;
    color: var(--color_text);
    opacity: 0.5;
}
.learn .c-tabList .c-tabList__button[aria-selected=true]{
    background-color: #FFFFFF !important;
    color: var(--color_text) !important;
}

@media (min-width: 960px) {
	.learn .c-tabList .c-tabList__button{
        font-size: inherit;
	}
}

@media (max-width: 768px) {
    .learn .c-tabList .c-tabList__item{
        --the-tab-flex: 0 1 100%;
        margin-bottom: 0.75em;
    }
    .learn .c-tabList .c-tabList__button{
        border-radius: 12px;
        padding: 1.5em 1em;
    }
    .learn .c-tabBody{
        margin-top: 1.5em;
    }
}
@keyframes tabFade {
    0% {
        display: block;
        opacity: 0;
        z-index: 0;
    }
    50% {
        display: block;
        opacity: 0.5;
    }
    100% {
        display: block;
        opacity: 1;
        z-index: 1;
    }
}

.learn .c-tabBody .wp-block-image{
    max-width: clamp(200px, 90vw, 600px);
    margin-left: auto;
    margin-right: auto;
}
.learn .c-tabBody .swell-block-columns{
    border-top: 1px dotted #999;
    margin-top: 2em;
    padding-top: 2em;
}


/* ピックアップ */
.pick{
    border-radius: 12px;
    overflow: hidden;
	aspect-ratio: 1920 / 600 !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
}
.pick .wp-block-cover__background{
    transition: background .25s, opacity .25s;
}
.pick:hover .wp-block-cover__background{
    background: linear-gradient(45deg, var(--color_gradient1), var(--color_gradient2)) !important;
}
.pick .wp-block-cover__image-background{
    transform: scale(1);
    transition: transform .25s;
}
.pick:hover .wp-block-cover__image-background{
    transform: scale(1.06);
    opacity: 0.5;
    transition: transform .25s;
}

.home .pick .wp-block-heading{	
	display: inline-block;
    padding: 1rem 1.5rem;
    background: #ffffff;
    border-radius: 1rem;
    font-size: clamp(24px, 3vw, 32px);
	font-family: "Zen Maru Gothic", var(--swl-font_family);
	font-weight: 500 !important;
	font-style: normal;
}
@media (max-width: 959px) {
	.pick {
		min-height: clamp(100px, 15vw, 250px) !important;
	}	
}
@media (max-width: 600px) {
    .pick{
        min-height: 50px !important;
		aspect-ratio: 2 / 1 !important;
        padding: 1em;
		align-items: flex-start;
    }
    .pick .wp-block-cover__image-background{
		object-fit: contain;
		object-position: bottom;
    }
    .pick .wp-block-cover__background{
		background-color: #ECF7FD !important;
        opacity: 1 !important;
        z-index: -1 !important;
    }
	.home .pick .wp-block-heading{
		background: none;
	}
}


/*sitemap*/
#menu-sitemap-menu,
#menu-sitemap-menu li{
    list-style: none;
}
#menu-sitemap-menu{
	--swl-list-padding--left: 0;
}
#menu-sitemap-menu li{
    padding: 0.5rem 2rem;
}

#menu-sitemap-menu,
#menu-sitemap-menu > li.home,
#menu-sitemap-menu > li.bold-content{
    border-bottom: 1px solid #ccc;
}

#menu-sitemap-menu li + li{
	padding-top: 0.15rem;
}

#menu-sitemap-menu li:before {
    content: "";
	display: inline-block;
	width: 1rem;
	height: 1rem;
	background-image: url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' %3E%3Cpath d='M5.88 4.12L13.76 12l-7.88 7.88L8 22l10-10L8 2z'%3E%3C/path%3E%3Cpath fill='none' d='M0 0h24v24H0z'%3E%3C/path%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
	position: relative;
    left: -0.5rem;
    vertical-align: middle;
}

#menu-sitemap-menu li a{
    color: #666;
}
#menu-sitemap-menu li a:hover{
    text-decoration: underline;
}
#menu-sitemap-menu > li.bold-content >a{
    font-weight: bold;
}



/*/fus/*/
@media (max-width: 599px) {
    .swell-block-box-menu.is-style-fill{
        --the-icon-size: auto !important;
    }
}