@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
*/

/*----- 余白 --------------------------------------------------*/
#body_wrap .l-content{
	margin-bottom:0;
	padding-bottom: 0;
}
#body_wrap:not(.blog,.archive,.single) .l-content{
	padding-top: 0;
}
#before_footer_widget.w-beforeFooter{
	margin: 0;
}

.p-blogParts + .swell-block-fullWide{
	margin-top: -2em;	
}


/*----- 文字サイズ --------------------------------------------------*/
p,ul,ol,table,dl{
	font-size: clamp(14px, 3vw, 16px);	
}

.fs-14{
	font-size: clamp(12px, 2vw, 14px) !important;
}
.fs-18{
	font-size: clamp(17px, 3.5vw, 18px) !important;	
}
.fs-20{
	font-size: clamp(18px, 3.5vw, 20px) !important;	
}
.fs-24{
	font-size: clamp(22px, 4vw, 24px) !important;	
}
.fs-30{
	font-size: clamp(28px, 4vw, 30px) !important;		
}


@media (max-width: 600px) {
	.sp-left{
		text-align: left !important;
	}
	.sp-center{
		text-align: center !important;		
	}
}




/*----- 見出し --------------------------------------------------*/
.page-title h1.c-pageTitle{
	font-size: clamp(28px, 4vw, 44px);
	line-height: 1.5;
	letter-spacing: 2px;	
	margin-bottom: 2rem;
}
.page-title h1.c-pageTitle .c-pageTitle__subTitle{
    display: block;
    color: var(--color_deep01);
    font-size: 1rem;
    font-style: normal;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0;
}


h2.wp-block-heading{
	font-size: clamp(20px, 3vw, 35px);
	line-height: 1.5;
	letter-spacing: clamp(1px, 0.2vw, 2px);
}

h2.wp-block-heading.is-style-section_ttl{
	font-size: clamp(28px, 3.5vw, 40px);
	margin-bottom: 1.5em;
}
h2.wp-block-heading.is-style-section_ttl small{
	color: var(--color_deep01);
	font-size: clamp(14px, 2vw, 18px);
	letter-spacing: 1px;
	text-transform: uppercase;
}
p.title-num{
	color: #7B7B7B;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 0;
}


h3.wp-block-heading{
    width: fit-content;
    font-size: clamp(22px, 3vw, 24px);
    line-height: 1.5;
    letter-spacing: 2px;
    border-bottom: 3px solid #F0759F;
    padding-bottom: 0.5em;
    margin-bottom: 2rem;
}
h3.wp-block-heading.is-style-section_ttl{
    border-left: 5px solid #F0759F;
    padding-left: 1rem;
    font-size: clamp(22px, 3vw, 28px) !important;	
}


/* 投稿ページ */
.single-post .l-mainContent .post_content h2,
.single-notice .l-mainContent .post_content h2{
	border: none;
	border-bottom: 4px solid var(--color_main);
	background: #F7F7F7;
	padding: 0.75rem 1rem;
	font-size: clamp(22px, 3vw, 28px) !important;	
}
.single-post .l-mainContent .post_content h3,
.single-notice .l-mainContent .post_content h3{
	border: none;
    border-left: 5px solid #F0759F;
	padding: 0;
    padding-left: 1rem;
    font-size: clamp(18px, 3vw, 20px) !important;	
}


/* あしらい */
.wp-block-heading.no-border{
	width: 100% !important;
	border: none !important;
}

.num{
	color: var(--color_deep01);
	font-size: clamp(14px, 2vw, 15px);
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 1px;
	margin-bottom: 0;
}


/*----- ヘッダー --------------------------------------------------*/
#header .l-header__inner,
#fix_header .l-fixHeader__inner{
	padding-left: 0;
    padding-right: 0;
}
#header .c-gnav a::after,
#fix_header .c-gnav a::after,
.c-submenuToggleBtn{
	display: none;
}

#header .c-gnav > li.menu-item-has-children > a, 
#fix_header .c-gnav > li.menu-item-has-children > a{
    padding-right: 1.2rem;
    margin-right: 0.4rem;
}
.c-gnav a:hover,
.c-gnav > .-current > a{
	color: #458AD6;
	transition: color 0.25s;
}
.c-gnav > li.menu-item-has-children > a::after{
	content: "";
    display: block !important;
    width: 1rem;
    height: 1rem;
    background-color: transparent;
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='m22.9 33-13-13.1c-.8-.8-.8-2 0-2.8.8-.8 2-.8 2.8 0L24 28.4l11.3-11.3c.8-.8 2-.8 2.8 0 .8.8.8 2 0 2.8L25.1 33c-.6.6-1.6.6-2.2 0z' fill='%23222222'%3E%3C/path%3E%3C/svg%3E");
    position: absolute;
    top: 50%;
    left: auto;
    right: 0;
    transform: translate(0%, -50%);
    background-size: contain;
    background-repeat: no-repeat;
	transition: background-image 0.25s;
}
.c-gnav > li.menu-item-has-children > a:hover::after,
.c-gnav > li.menu-item-has-children.-current > a::after{
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='m22.9 33-13-13.1c-.8-.8-.8-2 0-2.8.8-.8 2-.8 2.8 0L24 28.4l11.3-11.3c.8-.8 2-.8 2.8 0 .8.8.8 2 0 2.8L25.1 33c-.6.6-1.6.6-2.2 0z' fill='%23458AD6'%3E%3C/path%3E%3C/svg%3E");
	transition: background-image 0.25s;
	    
}
/*
.c-gnav .sub-menu .sub-menu{
	height: auto;
    opacity: 1;
    visibility: visible;
}
*/

@media (max-width: 959px) {
	.-right .p-spMenu__inner,
	[data-spmenu=opened] .p-spMenu__inner{
		width: 100vw;
		-webkit-transform: translateX(0);
    	transform: translateX(0);	
        padding-top: 0;
		transition: opacity .5s;
	}
	.-right .p-spMenu__inner{
		opacity: 0;
	}
	[data-spmenu=opened] .p-spMenu__inner{
		opacity: 1;
	}
	
	.p-spMenu__inner .p-spMenu_title{
		position: relative;
	}

	.p-spMenu__inner .c-listMenu{
		padding: 2rem 0;
		--swl-color_hov_gray: transparent;
	}
	.p-spMenu__inner .p-spMenu__body a{
		font-size: clamp(14px, 1.2rem, 16px);
        padding: 1.25rem 0.5rem;
	}	
	.p-spMenu__inner .p-spMenu__body .c-listMenu > li > a{
		font-weight: bold;
		border-bottom: 1px solid #1F4F85;
	}
	.p-spMenu__inner .p-spMenu__body .sub-menu > li > a{
		padding-left: 1.5rem;
	} 
	
	
	/* アイコン */
	.p-spMenu__inner .p-spMenu__body li:not(:has(.c-submenuToggleBtn)) > a::before,
	.p-spMenu__inner .c-submenuToggleBtn:before{
		content: "";
        display: block;
		width: 20px;
        height: 20px;
        background-repeat: no-repeat;
        background-size: contain;
	}
	
	.p-spMenu__inner .p-spMenu__body li:not(:has(.c-submenuToggleBtn)) > a::before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' 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='M268 112l144 144-144 144M392 256H100'%3E%3C/path%3E%3C/svg%3E");
        position: absolute;
        top: 50%;
        right: 0.25rem;
        transform: translate(-75%, -50%);
	}
	
	
	.p-spMenu__inner .c-submenuToggleBtn{
		display: block;
	}
	.p-spMenu__inner .c-submenuToggleBtn:before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='M24 40c-1.1 0-2-.9-2-2V10c0-1.1.9-2 2-2s2 .9 2 2v28c0 1.1-.9 2-2 2z'%3E%3C/path%3E%3Cpath d='M8 24c0-1.1.9-2 2-2h28c1.1 0 2 .9 2 2s-.9 2-2 2H10c-1.1 0-2-.9-2-2z'%3E%3C/path%3E%3C/svg%3E");
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
	}
	.p-spMenu__inner .c-submenuToggleBtn.is-opened:before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='M8 24c0-1.1.9-2 2-2h28c1.1 0 2 .9 2 2s-.9 2-2 2H10c-1.1 0-2-.9-2-2z'%3E%3C/path%3E%3C/svg%3E");
	}
	.p-spMenu__inner .c-submenuToggleBtn:after{
		display: none;
	}
	
}


/*----- フッター --------------------------------------------------*/
footer.l-footer{
	margin-top: 2rem;
    border-radius: 2rem 2rem 0 0;
	z-index: 1;
}
footer #menu-footer-menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    list-style: none;
    padding: 0 0 2rem 0;
}
footer #menu-footer-menu > li{
    flex: 0 0 25%;
}

footer #menu-footer-menu > li > a,
footer #menu-footer-menu > li.-last a{
    font-weight: bold;
}
footer #menu-footer-menu .sub-menu,
footer #menu-footer-menu .sub-menu li{
    list-style: none;
	padding: 0.25rem 0;
}
footer #menu-footer-menu li:not(.-last) .sub-menu,
footer #menu-footer-menu li:not(.-last) .sub-menu li{
	font-size: 0.9rem;
    color: #eeeeee;
}

footer #menu-footer-menu li > a:hover{
    color: #7EABDC;
	transition: color .25s;
}

footer #menu-footer-menu::after {
	display: block;
	content:"";
	width: 25%;
	flex-grow: 2;
}

@media (max-width: 959px) {
	footer.l-footer{
		margin-top: 0.5rem;
	}	
	footer #menu-footer-menu{
        flex-direction: column;
	}

	footer #menu-footer-menu li a{
		display: block;
        padding: 0.5rem 0;
        margin: 0;
		border-bottom: 1px solid var(--color_border);
		position: relative;
	}
	footer #menu-footer-menu > li > a,
	footer #menu-footer-menu li.-last .sub-menu li > a{
		font-size: clamp(14px, 1.25rem, 16px);
		padding-bottom: 1rem;
	}
	
	footer #menu-footer-menu .sub-menu li{
		padding: 0;
		margin: 0;
	}
	footer #menu-footer-menu li:not(.-last) .sub-menu li > a{
		font-size: clamp(14px, 1.1rem, 16px);
		padding: 1rem 0.5rem 1rem 1.5rem;
		background: #184374;
	}

	/* 開閉 */
	footer #menu-footer-menu .sub-menu{
		padding: 0;
		height: 0;
		margin: 0;
		opacity: 0;
		overflow: hidden;
		position: relative;
		transition: .25s;
	}	
	footer #menu-footer-menu .sub-menu.is-opened,
	footer #menu-footer-menu li.-last .sub-menu{
		height: auto;
		opacity: 1;
		visibility: visible;
	}
	

	/* アイコン */
	footer #menu-footer-menu .c-submenuToggleBtn:before,
	footer #menu-footer-menu li:not(.-last) .sub-menu li > a::before{
		content: "";
        display: block;
		width: 20px;
        height: 20px;
        background-repeat: no-repeat;
        background-size: contain;
	}	
	
	footer #menu-footer-menu li:not(.-last) .c-submenuToggleBtn{
		display: block;
	}
	footer #menu-footer-menu .c-submenuToggleBtn:before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='M24 40c-1.1 0-2-.9-2-2V10c0-1.1.9-2 2-2s2 .9 2 2v28c0 1.1-.9 2-2 2z'%3E%3C/path%3E%3Cpath d='M8 24c0-1.1.9-2 2-2h28c1.1 0 2 .9 2 2s-.9 2-2 2H10c-1.1 0-2-.9-2-2z'%3E%3C/path%3E%3C/svg%3E");
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
	}
	footer #menu-footer-menu .c-submenuToggleBtn.is-opened:before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' aria-hidden='true' viewBox='0 0 48 48'%3E%3Cpath d='M8 24c0-1.1.9-2 2-2h28c1.1 0 2 .9 2 2s-.9 2-2 2H10c-1.1 0-2-.9-2-2z'%3E%3C/path%3E%3C/svg%3E");
	}	
	
	footer #menu-footer-menu li:not(.-last) .sub-menu li > a::before{
		background-image: url("data:image/svg+xml,%3Csvg class='__icon' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 512 512'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='48' d='M268 112l144 144-144 144M392 256H100'%3E%3C/path%3E%3C/svg%3E");
        position: absolute;
        top: 50%;
        right: 0.5rem;
        transform: translate(-75%, -50%);
	}
}


footer .foot-content{
	background: #fff;
	max-width: 920px;
    margin: auto;
    padding: 2rem;
}
footer .foot-content .swell-block-columns__inner{
    display: grid;
    grid-template-columns: 1fr 50%;
    grid-template-rows: auto;
    gap: 0 1.5rem;
    margin-left: 0;
}
footer .foot-content .swell-block-columns__inner .swell-block-column{
	width: 100%;
	margin: 0;
}

footer .foot-content .swell-block-columns__inner .swell-block-column.foot-logo{
	grid-column: 1;
    grid-row: 1;
	padding-top: 1.5rem;
	border-bottom: 2px solid #D5D5D5;
}
footer .foot-content .swell-block-columns__inner .swell-block-column.foot-map{
	grid-column: 2;
    grid-row: 1 / 3;
}
footer .foot-content .swell-block-columns__inner .swell-block-column.foot-award{
	grid-column: 1;
    grid-row: 2;
	align-self: self-end;
	padding-bottom: 0.5rem;
}

footer .logo{
	max-width: 300px;	
}


@media (max-width: 959px) {
	footer .foot-content .swell-block-columns__inner{
		grid-template-columns: 100%;
		gap: 2rem 0;
		font-size: 15px;
	}
	footer .foot-content .swell-block-columns__inner .swell-block-column.foot-logo{
		padding-top: 0;
		border-bottom: none;
	}
	footer .foot-content .swell-block-columns__inner .swell-block-column.foot-map{
		grid-column: 1;
		grid-row: 2;
	}
	footer .foot-content .swell-block-columns__inner .swell-block-column.foot-award{
		grid-column: 1;
		grid-row: 3;
	}
	footer .logo{
		max-width: 85%;
		margin: auto;
	}
}



/*----- パンくずリスト --------------------------------------------------*/
#breadcrumb {
	padding: 2rem 0;
}
#breadcrumb .p-breadcrumb__list{
	font-size: 1rem;
}
#breadcrumb .icon-home::before{
	display: none;
}



/*----- コンテンツヘッダー --------------------------------------------------*/
/* 固定ページ */
#header .l-header__inner,
#fix_header .l-fixHeader__inner{
	padding-left: 0;
    padding-right: 0;
}

.l-topTitleArea{
	max-width: calc(var(--container_size) + ((100vw - var(--container_size)) / 2));
	min-height: 100px;
	border-radius: 1rem 0 0 1rem;
    margin-left: auto;
}

@media (max-width: 1200px) and (min-width: 960px) {
	.l-topTitleArea{
		max-width: calc(var(--container_size) + (100vw - var(--container_size)) - var(--swl-pad_container,0));
	}
}
@media (min-width: 600px) {
	#body_wrap:not(.single-post,.single-notice) .l-topTitleArea{
        aspect-ratio: 66 / 25;
    }
}
@media (max-width: 959px) {
	.l-topTitleArea{
		max-width: calc(var(--container_size) + ((100vw - var(--container_size)) / 2) - var(--swl-pad_container,0));
		margin-left: 1rem;
    	aspect-ratio: 1.2 / 1;
	}
}

/* 投稿ページ */
.single-post .l-topTitleArea,
.single-notice.l-topTitleArea{
    min-height: 150px;	
}

.single-post .l-topTitleArea__body,
.single-notice .l-topTitleArea__body{
	color: var(--color_text);
	font-size: clamp(24px, 3vw, 28px);
	max-width: calc((var(--container_size, 0px) - var(--swl-sidebar_width) - var(--swl-sidebar_margin)));
	margin: 0;
    padding: 0;
	text-shadow: none;
}
.l-topTitleArea__body .p-articleMetas.-top{
    flex-direction: column;
    align-items: flex-start;
	margin-bottom: 1.25rem;
	font-size: 1rem;
}
.l-topTitleArea__body .c-postTimes__posted::before,
.l-topTitleArea__body .c-categoryList::before{
	display: none;
}
.l-topTitleArea__body .c-categoryList{
	pointer-events: none;	
}

@media (max-width: 959px) {
	.single-post .l-topTitleArea,
	.single-notice .l-topTitleArea{
		max-width: calc(100% - 2rem);
		aspect-ratio: auto; 
	}
}


/*----- サイドバー --------------------------------------------------*/
#sidebar .side-menu{
    background: #F5F5F5;
    padding: 2rem 1.5rem;
    border-radius: 1rem;
	--swl-color_hov_gray: transparent;
}

#sidebar .side-menu .wp-block-heading{
	font-size: 14px;
	text-transform: uppercase;
    padding: 0.5rem 0;
    border-bottom: 1px solid #D5D5D5;
}

#sidebar .side-menu a{
	display: block;
	font-size:1rem;
	font-weight: bold;
	color: #7B7B7B;
	padding: 0.5em 0.5em 0.5em 2rem;
	border-bottom: none;
	transition: color .25s;
	position: relative;
}

#sidebar .side-menu .active,
#sidebar .side-menu a:hover{
	color: #202050;
	transition: color .25s;
}


#sidebar .side-menu .wp-block-categories a::before,
#sidebar .side-menu .wp-block-archives a::before{
	display: none;
}


@media (min-width: 600px) {
	#sidebar .side-menu .active::before{
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
		display: block !important;
		width: 1.25rem;
		aspect-ratio: 1 / 1;
		border: 4px solid var(--color_deep01);
		border-radius: 50%;	
	}
}

@media (max-width: 959px) {
	.blog #content,
	.archive #content{
		display: flex;
		flex-direction: column-reverse;
	}
	.blog #content #sidebar,
	.archive #content #sidebar{
		margin-top: 1rem;
		margin-bottom: 4rem;
	}
}

@media (max-width: 599px) {
	#sidebar .side-menu h2.wp-block-heading{
		font-size: 14px;
		margin-top: 2rem;
		border-bottom: 1px solid #ffffff;
	}
	#sidebar .side-menu .category-menu,
	#sidebar .side-menu .archive-menu{
		overflow-x: scroll;
	}
	#sidebar .side-menu .category-menu .wp-block-group__inner-container,
	#sidebar .side-menu .archive-menu .wp-block-group__inner-container{
		display: flex;
        width: fit-content;
	}
	#sidebar .side-menu .category-menu .wp-block-group__inner-container > *,
	#sidebar .side-menu .archive-menu .wp-block-group__inner-container > *{
		display: flex;
		white-space: nowrap;
	}
	#sidebar .side-menu a{
		font-size: 16px;
		line-height: 1.5;
		padding: 0.5em 0.5em 1rem;
		border-bottom: 2px solid #D5D5D5;
	}
	#sidebar .side-menu .active{
		border-bottom: 2px solid var(--color_main);
	}
}


/*----- 404ページ --------------------------------------------------*/
.error404 main{
	margin-top: 4rem;
    margin-bottom: 6rem;
}
.error404 .page-title{
    padding: 0;
    text-align: center;
}



/*----- フルワイド・ブロック背景 --------------------------------------------------*/
.swell-block-fullWide.has-bg-img{
    background-size: contain;	
}

/*マージンフルワイド*/
.fullwide-margin{
	--fullwide_margin: 2rem;
	width: calc(100vw - var(--swl-scrollbar_width, 0px) - (var(--fullwide_margin) * 2));
	margin-left: var(--fullwide_margin);
	margin-right: var(--fullwide_margin);
}
@media (max-width: 600px) {
	.fullwide-margin{
		--fullwide_margin: 0rem;
	}
}

/*角丸/シャドウ */
.round-block{
	border-radius: 1rem;
	overflow: hidden;
}
.shadow-block{
	box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
}

/* ハーフサイズ */
.post_content .half-block > div{
    max-width: calc((var(--container_size, 0px) + var(--swl-pad_container, 0px)*2) / 2);
    margin: 4em auto !important;	
}


/* ライン＋白ブロック */
.post_content .line-block{
    overflow: visible;
    margin-bottom: 100px !important;
}
.line-block .back-line{
    position: absolute;
    top: 35%;
    right: 0;
	height: 300px;
    max-height: calc(100% + 100px);
    overflow: hidden;
	z-index: -1;
}

.line-block .back-line img{
    height: 100%;
}

.line-block .blur-group{
    backdrop-filter: blur(5px);
}
.line-block .wp-block-group .swell-block-columns__inner{
    width: fit-content;
    margin: auto;
    gap: 3rem;
}
.line-block .wp-block-group .swell-block-column{
    width: fit-content;
}

.line-block + .swell-block-fullWide{
    margin-top: -6em !important;
}

@media (max-width: 600px) {
	.line-block .back-line{
		height: 50vw;	
		transform: translateY(35%);
	}
}

/* ラインアニメーション */
.line-svg{
    width: 100vw;
    position: absolute;
    left: calc(50% - 50vw + var(--swl-scrollbar_width, 0px) / 2);
    z-index: -1;
}
.line-svg .line-path{   
    stroke-dasharray: 3000;
    stroke-dashoffset: 3000;
}
.line-svg .line-path.show{
    stroke-dashoffset: 0;
	transition-delay: 0.5s;
    transition: stroke-dashoffset 1.5s linear;
}
@media (max-width: 599px) {
    .line-svg .line-path{
        stroke-width: 12;
    }
}



/*----- アンカーメニュー --------------------------------------------------*/
.anchor-menu .swell-block-columns__inner{
	justify-content: center;
}
.anchor-menu .swell-block-column{
	max-width: 220px;
	margin: 0;
	border-left: 2px solid #D5D5D5;
	position: relative;
	transition: background-color 0.3s;
}
.anchor-menu .swell-block-column:hover{
	background-color: var(--swl-color_hov_gray);
	transition: background-color 0.3s;
}
.anchor-menu .swell-block-column:first-of-type{
	border-left: none;
}
.anchor-menu .swell-block-column::after{
	content: "";
	display: block;
	width: 1rem;
	aspect-ratio: 1 / 1;
	background-image: url("data:image/svg+xml,%3Csvg width='14' height='9' viewBox='0 0 14 9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6.22234 8.18192L0 2.03617L1.55531 0.5L7 5.87767L12.4447 0.5L14 2.03617L7.77766 8.18192C7.57139 8.38559 7.29166 8.5 7 8.5C6.70834 8.5 6.42861 8.38559 6.22234 8.18192Z' fill='%23ED4A82'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 10%);
	transition: transform 0.3s;
}
.anchor-menu .swell-block-column:hover::after{
	transform: translate(-50%, 25%);
	transition: transform 0.3s;
}

.anchor-menu .swell-block-column .wp-block-group.ek-linked-block{
	height: 100%;
	padding-bottom: 1.5rem;
}

.anchor-menu .swell-block-column .anchor-num{
	color: #7B7B7B;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 0;
	transition: transform 0.3s;
}
.anchor-menu .swell-block-column .anchor-title{
	display: flex;
	flex-direction: column;
    justify-content: center;	
    height: 100%;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 1.4;
	transition: transform 0.3s;
}

.anchor-menu .swell-block-column:hover .anchor-num,
.anchor-menu .swell-block-column:hover .anchor-title{
	transform: translate(0%, 10%);
	transition: transform 0.3s;
}

@media (max-width: 959px) {
	.anchor-menu .swell-block-columns__inner{
		flex-direction: column;
		margin-left: 0;
	}
	.anchor-menu .swell-block-column{
		width: 100%;
		max-width: 100%;
		border-left: none;
	}
	.anchor-menu .swell-block-column .wp-block-group.ek-linked-block{
		flex-direction: row;
		gap: 1rem;
		padding-left: 2.5rem;
    	padding-bottom: 0;
	}
	.anchor-menu .swell-block-column:hover .anchor-num,
	.anchor-menu .swell-block-column:hover .anchor-title{
		transform: translate(0%, 0%);
	}
	.anchor-menu .swell-block-column::after,
	.anchor-menu .swell-block-column:hover::after{
	    bottom: 50%;
    	left: 0;
    	transform: translate(50%, 75%);	
	}
}

/*----- お問い合わせCTA --------------------------------------------------*/
.post_content .contact .swell-block-fullWide{
	margin-bottom: 4rem !important;
}

@media (max-width: 959px) {
	.contact .back-line{
		height: 100% !important;
		top: 75%;
	}
	.contact .back-line img{
    	object-fit: cover;
		object-position: right;
	}
	.contact .swell-block-column{
		margin: auto;
	}
}
@media (max-width: 599px) {
	.contact .is-style-btn_normal.blue_ > a[data-has-icon]{
		width: 100%;
	}
}



/*----- ボタン --------------------------------------------------*/
/* ノーマルボタン */
.is-style-btn_normal.blue_ > a {
	transition: box-shadow .25s,background .25s;
}
.is-style-btn_normal.blue_ > a[data-has-icon]{
	justify-content: space-between;
	--the-min-width: 220px;
    --the-padding: 0.5em 0.5em 0.5em 1.75em;
}
.is-style-btn_normal.blue_ > a[data-has-icon] span{
	flex-grow: 2;
	letter-spacing: 2px;
}
.is-style-btn_normal.blue_ > a:hover {
	background: var(--the-btn-color2);
	transition: box-shadow .25s,background .25s;
}

/* ラインボタン */
.is-style-btn_line.blue_ > a{
	border: 3px solid;
	transition: color .25s;
}
.is-style-btn_line.blue_ > a[data-has-icon]{
    justify-content: space-between;
    --the-min-width: 350px;
    --the-padding: 0.75em 1.75em 0.75em 0.75em;
}
.is-style-btn_line.blue_ > a[data-has-icon] span{
	flex-grow: 2;
	letter-spacing: 2px;
}
.is-style-btn_line.blue_ > a:hover{
	background-color: #fff;
	color: var(--the-btn-color2) !important;
	transition: color .25s;
}

@media (max-width: 959px) {
	.swell-block-button[data-align=left]{
		text-align: center
	}
}
@media (max-width: 599px) {
	.is-style-btn_normal.blue_ > a[data-has-icon]{
		width: 80%;
		
	}
}



/* メディアテキスト ------------------------------------------------------*/
@media (max-width: 768px) and (min-width: 600px) {
    .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns:100%!important
    }
    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1
    }
    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2
    }
}

/* 吹き出し ------------------------------------------------------*/
.is-style-balloon_box2{
    border: 2px solid var(--color_main);
    border-radius: 4px;	
    font-size: 1.1rem;
}
.is-style-balloon_box2:before{
	background: var(--color_main);
    border-bottom: 1px solid var(--color_main);
    border-right: 1px solid var(--color_main);
	z-index: -1;
}

/* スライダー ------------------------------------------------------*/
.mammys-swiper{
    overflow: hidden;
}
.mammys-swiper .swiper-slide{
    width: calc(var(--container_size) / 3);
	height: 100% !important;
	padding: 0;
	/*overflow: hidden;*/
}



/* お知らせ ------------------------------------------------------*/
/*ラベル・カテゴリーリスト*/
.news-tab{
	display: flex;
}

.news-tab .newsList-tab{
	width: fit-content;
    max-width: 35%;
    height: fit-content;
    margin-right: 50px;
    padding: 3rem 1rem;
    background: #F5F5F5;
    flex-shrink: 0;
    border-radius: 1rem;
}
.news-tab .c-tabList{
    display: block;
    margin: 0 1rem 2rem !important;
}

.news-tab .c-tabList__button{
    background-color: transparent;
	padding-left: 2rem;
	text-align: left;
	color: #7B7B7B;
	font-size: 1rem;
	font-weight: bold;
	transition: color .25s;
}

.news-tab .c-tabList .c-tabList__button[aria-selected=true],
.news-tab .c-tabList__button:hover{
	color: #202050;
	transition: color .25s;
}

.news-tab .c-tabList .c-tabList__button[aria-selected=true]::before{
    content: "";
    position: absolute;
    left: 0;
    display: block;
    width: 1.25rem;
    aspect-ratio: 1 / 1;
    border: 4px solid var(--color_deep01);
    border-radius: 50%;
}

.news-tab .c-tabBody{
    width: 50%;
	flex-grow: 1;
}

@media (max-width: 959px) {
	.news-tab{
		flex-direction: column;
	}
	.news-tab .newsList-tab{
		width: 100%;
		padding: 1rem;
		max-width: 100%;
		margin-right: 0;
	}
	.news-tab .c-tabList{
		margin: 0 1rem !important;
	}
	.news-tab .newsList-tab .swell-block-button{
		display: none !important;
	}
	.news-tab .c-tabBody{
		width: 100%;
	}
}


/* 投稿リスト */
.p-postList.-type-simple{
	border-top: none;
}

.p-postList.-type-simple .p-postList__link{
	padding: 1em 5em 1em 2em;
}
.p-postList.-type-simple .p-postList__link:hover{
	--swl-color_hov_gray: transparent;
}
.p-postList.-type-simple .p-postList__link:hover .p-postList__title{
	color: #458AD6;
	transition: color .25s;	
}

.p-postList.-type-simple .p-postList__link::before,
.p-postList.-type-simple .p-postList__link::after{
	content: "";
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: transform .25s;
    display: block;
    aspect-ratio: 1 / 1;
}

.p-postList.-type-simple .p-postList__link::before{
    right: 1.5rem;
    width: 2rem;
    border-radius: 50%;
    background: #fff;
}

.p-postList.-type-simple .p-postList__link::after{
    right: 2rem;
    width: 1.5rem;
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 448 512' fill='%230B2665'%3E%3Cpath d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}
.p-postList.-type-simple .p-postList__link:hover::before{
	transform: translate(-10%, -50%);
	transition: transform .25s;	
}
.p-postList.-type-simple .p-postList__link:hover::after {
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 448 512' fill='%23458AD6'%3E%3Cpath d='M438.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L338.8 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l306.7 0L233.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160z'%3E%3C/path%3E%3C/svg%3E");
	transform: translate(0%, -50%);
	transition: transform .25s, background-image .25s;
}

.p-postList.-type-simple .p-postList__meta{
	font-size: 14px;
}
.p-postList.-type-simple .p-postList__meta .c-postTimes__posted::before,
.p-postList.-type-simple .p-postList__meta .p-postList__cat::before{
	display: none;
}

.p-postList.-type-simple .p-postList__title{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

@media (max-width: 959px) {
	.p-postList.-type-simple .p-postList__link{
		padding: 1em 3em 1em 0.5em;
	}
	.p-postList.-type-simple .p-postList__link::before{
		top: 100%;
    	transform: translate(20%, -105%);
	}
	.p-postList.-type-simple .p-postList__link::after{
		top: 100%;
		transform: translate(50%, -125%);
	}
	.p-postList.-type-simple .p-postList__link:hover::before{
		transform: translate(65%, -105%);
	}
	.p-postList.-type-simple .p-postList__link:hover::after {
		transform: translate(100%, -125%);
	}
}

/*カテゴリーラベル*/
.p-articleMetas__termList .c-categoryList__link,
.p-postList.-type-simple .p-postList__meta .p-postList__cat{
    font-size: 1rem;
	background: #fff;
    color: var(--color_text);
    border: 1px solid var(--color_main);
    border-radius: 1rem;
    opacity: 1;
    padding: 0.25rem 1rem;
}

.p-articleMetas__termList .c-categoryList__link[data-cat-id="1"],
.p-postList.-type-simple .p-postList__meta .p-postList__cat[data-cat-id="1"]{/*お知らせ*/
	border-color: #7EABDC;
}
.p-articleMetas__termList .c-categoryList__link[data-cat-id="8"],
.p-postList.-type-simple .p-postList__meta .p-postList__cat[data-cat-id="8"]{/*海外支援・社会貢献活動*/
	border-color: #FFB5AC;
}
.p-articleMetas__termList .c-categoryList__link[data-cat-id="9"],
.p-postList.-type-simple .p-postList__meta .p-postList__cat[data-cat-id="9"]{/*研修紹介*/
	border-color: #8CC63F;
}


/* 関連記事リスト ------------------------------------------------------*/
.l-articleBottom__section.-related:has(p.list-none){
	display: none;
}

.l-articleBottom__section.-related .swell-block-fullWide__inner{
    margin: 2rem auto 3.5rem;	
}
.l-articleBottom__section.-related .swell-block-fullWide__inner::before{
	content: "";
    display: block;
    width: clamp(55px, 10vw, 110px);
    height: clamp(55px, 10vw, 80px);
	background-image: url(/wp-content/uploads/2025/10/global_pict02.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
	left: 0%;
    transform: translateX(-50%);
}


/* 見出し */
.l-articleBottom__section.-related h2{
	position: relative;
    text-align: center;
}
.l-articleBottom__section.-related h2 > small{
    display: block;
    padding-top: .25em;
}
/* リスト */
.p-relatedPosts{
	max-width: 720px;
	margin: auto;
}
.p-relatedPosts .p-postList__item{
	width: 100%;
}

@media (max-width: 1400px) and (min-width: 960px) {
	.l-articleBottom__section.-related .swell-block-fullWide__inner::before{
		transform: translateX(50%);
	}
}
@media (max-width: 959px) {
	.l-articleBottom__section.-related .swell-block-fullWide__inner::before{
		transform: translate(50%, -50%);
	}
}



/* メールフォーム ------------------------------------------------------*/
.snow-monkey-form{
    max-width: 640px;
    margin: auto;	
}
.snow-monkey-form .smf-form{
	margin-bottom: 3rem;
}

.snow-monkey-form .smf-item{
	margin-bottom: 1.5rem;
}

.snow-monkey-form input[type="text"],
.snow-monkey-form input[type="email"],
.snow-monkey-form input[type="tel"],
.snow-monkey-form select,
.snow-monkey-form textarea,
.snow-monkey-form .smf-select-control{
	width: 100%;
}

/* 郵便番号 */
.snow-monkey-form .zip-group .smf-item__controls{
    width: 70%;
    display: flex;
    justify-content: space-between;
}
.snow-monkey-form .zip-group .search-zip{
    color: var(--color_deep02);
	background: #fff;
    border: 1px solid;
    border-radius: 2rem;
    padding: 0.25rem 2rem;
    letter-spacing: 1px;
	transition: color .25s;
}
.snow-monkey-form .zip-group .search-zip:hover{
    color: #458AD6;
	transition: color .25s;	
}


@media (max-width: 959px) {
	.snow-monkey-form .zip-group .smf-item__controls{
    	width: 100%;
		gap: 1rem;
	}
	.snow-monkey-form .accept-group .smf-placeholder[data-name="accept"]{
		width: fit-content;
    	margin: auto;
	}
}


/* ラベル */
.snow-monkey-form .smf-item:not(.accept-group) .smf-item__col--label{
    font-weight: bold;
    margin-bottom: 0.75rem;
}
.snow-monkey-form .smf-item.accept-group .smf-item__col--label{
    margin-bottom: 1rem;
}

.snow-monkey-form .smf-item__col--label .swl-format-1{
	font-weight: normal;
    background: #CD3E3E;
	margin-left: 0.5rem;
}


/* ボタン */
.smf-action .smf-button-control__control[data-action="confirm"],
.smf-action .smf-button-control__control[data-action="back"],
.smf-action .smf-button-control__control[data-action="complete"]{
    display: block;
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
    padding: 0.75em 0.5em 0.75em 0.5em;
    position: relative;
    font-size: clamp(18px, 2vw, 20px);
    font-weight: bold;
    text-align: center;
    border-radius: 2rem;
    letter-spacing: 1px;
    line-height: 1.5;
}

.smf-action .smf-button-control__control[data-action="confirm"]::before,
.smf-action .smf-button-control__control[data-action="back"]::before,
.smf-action .smf-button-control__control[data-action="complete"]::before{
	content: "";
    position: absolute;
    top: 50%;
    display: block;
    width: 1.75em;
    aspect-ratio: 1 / 1;
	background-repeat: no-repeat;
	background-size: contain;
	transition: background-image .25s;
}


/* 確認ボタン */
.smf-action .smf-button-control__control[data-action="confirm"],
.smf-action .smf-button-control__control[data-action="back"]{
    background: none;
    color: var(--color_deep02);
    border: 3px solid;
    transition: color .25s;
}

.smf-action .smf-button-control__control[data-action="confirm"]::before,
.smf-action .smf-button-control__control[data-action="back"]::before{
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 256 256'%3E%3Crect width='256' height='256' fill='none'%3E%3C/rect%3E%3Cpath d='M128,24A104,104,0,1,0,232,128,104.2,104.2,0,0,0,128,24Zm47.4,107.1a8.7,8.7,0,0,1-1.8,2.6l-33.9,33.9a7.6,7.6,0,0,1-5.6,2.3,7.8,7.8,0,0,1-5.7-2.3,8,8,0,0,1,0-11.3L148.7,136H88a8,8,0,0,1,0-16h60.7L128.4,99.7a8,8,0,0,1,11.3-11.3l33.9,33.9a8.7,8.7,0,0,1,1.8,2.6A8.3,8.3,0,0,1,175.4,131.1Z' fill='%230b2665'%3E%3C/path%3E%3C/svg%3E");
}
.smf-action .smf-button-control__control[data-action="confirm"]::before,
.smf-action .smf-button-control__control[data-action="complete"]::before{
    right: 0;
    transform: translate(-50%, -50%);	
}
.smf-action .smf-button-control__control[data-action="back"]::before{
    left: 0;
    transform: translate(50%, -50%) rotate(180deg);		
}

.smf-action .smf-button-control__control[data-action="confirm"]:hover,
.smf-action .smf-button-control__control[data-action="back"]:hover{
    color: #458AD6;
	transition: color .25s;		
}
.smf-action .smf-button-control__control[data-action="confirm"]:hover::before,
.smf-action .smf-button-control__control[data-action="back"]:hover::before{
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 256 256'%3E%3Crect width='256' height='256' fill='none'%3E%3C/rect%3E%3Cpath d='M128,24A104,104,0,1,0,232,128,104.2,104.2,0,0,0,128,24Zm47.4,107.1a8.7,8.7,0,0,1-1.8,2.6l-33.9,33.9a7.6,7.6,0,0,1-5.6,2.3,7.8,7.8,0,0,1-5.7-2.3,8,8,0,0,1,0-11.3L148.7,136H88a8,8,0,0,1,0-16h60.7L128.4,99.7a8,8,0,0,1,11.3-11.3l33.9,33.9a8.7,8.7,0,0,1,1.8,2.6A8.3,8.3,0,0,1,175.4,131.1Z' fill='%23458AD6'%3E%3C/path%3E%3C/svg%3E");
	transition: background-image .25s;	
}


/* 送信ボタン */
.smf-action .smf-button-control__control[data-action="complete"]{
    background: var(--color_deep02);
    color: #fff;
	border: none;
    transition: background .25s;
}
.smf-action .smf-button-control__control[data-action="complete"]::before{
	background-image: url("data:image/svg+xml,%3Csvg class='__icon -right' height='1em' width='1em' xmlns='http://www.w3.org/2000/svg' aria-hidden='true' viewBox='0 0 256 256'%3E%3Crect width='256' height='256' fill='none'%3E%3C/rect%3E%3Cpath d='M128,24A104,104,0,1,0,232,128,104.2,104.2,0,0,0,128,24Zm47.4,107.1a8.7,8.7,0,0,1-1.8,2.6l-33.9,33.9a7.6,7.6,0,0,1-5.6,2.3,7.8,7.8,0,0,1-5.7-2.3,8,8,0,0,1,0-11.3L148.7,136H88a8,8,0,0,1,0-16h60.7L128.4,99.7a8,8,0,0,1,11.3-11.3l33.9,33.9a8.7,8.7,0,0,1,1.8,2.6A8.3,8.3,0,0,1,175.4,131.1Z' fill='%23ffffff'%3E%3C/path%3E%3C/svg%3E");
}
.smf-action .smf-button-control__control[data-action="complete"]:hover{
    background: #458AD6;
    transition: background .25s;
}


/* 確認画面 */
.snow-monkey-form[data-screen="confirm"] .smf-form .smf-placeholder{
	min-width: 50%;
    max-width: 100%;
	min-height: 2.5rem;
	padding: 0.25rem 1rem;
    border: 1px solid #D5D5D5;
	border-radius: 5px;
}
.snow-monkey-form[data-screen="confirm"] .smf-form .smf-placeholder[data-name="message"]{
	min-height: 10rem;
}

.snow-monkey-form[data-screen="confirm"] .accept-group,
.snow-monkey-form[data-screen="confirm"] .search-zip{
	display: none;
}
.snow-monkey-form[data-screen="confirm"] .smf-action{
    display: flex;	
	flex-direction: row-reverse;
	max-width: calc(100% + 200px);
	margin: 0 -100px;
}
.snow-monkey-form[data-screen="confirm"] .smf-action .smf-button-control{
    flex: 2 0 40%;
}

@media (max-width: 959px) {
	.snow-monkey-form[data-screen="confirm"] .smf-action{
		flex-direction: column-reverse;
		gap: 2.5rem;
		max-width: 100%;
		margin: 0;
	}
}

/* 完了画面 */
.snow-monkey-form[data-screen="complete"]{
	max-width: 100%;
}


