/*
Theme Name: OSIP
Template: lightning
Author: 株式会社 FEAT.
Version: 0.6.1
*/


	/* font-family: "Zen Kaku Gothic New", sans-serif; 300,400,500,700,900 */
	/* font-family: "Poppins", sans-serif; 300,400,500,700,800,900 */

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


:root {
	--max-width: 1425px;
	--sub-max: 1235px;
	--side-space: calc((100vw - var(--max-width))/2);
	--site-side: 2rem;
	--font-size: 18px;
	--vk-color-text-body: #2d2d2d;
	--main-color: #1d2088;
	--side-border-width: 6px;
}
html {
	scroll-behavior: smooth;
}
body {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: var(--font-size);
	font-weight: 500;
	border-left: var(--side-border-width) solid var(--main-color);
	border-right: var(--side-border-width) solid var(--main-color);
}
@media screen and (max-width: 1500px){
	:root {
		--max-width: 97%;
		--sub-max: 95%;
	}
}
@media screen and (max-width: 1024px){
	:root {
		--font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	:root {
		--sub-max: 100%;
		--font-size: 15px;
	}
}


/* コンテナ */
body .container,
body .container-lg,
body .container-md,
body .container-sm,
body .container-xl,
.vk_outer-width-full.vk_outer-paddingLR-none>div>.vk_outer_container {
	max-width: var(--max-width);
}
.site-body {
	min-height: 100vh;
}
.site-body > .site-body-container {
	width: 100%;
	max-width: 1892px !important;
	padding-left: 15.6rem;
	padding-right: 15.6rem;
}
.sub_max {
	max-width: var(--sub-max);
	margin-left: auto !important;
	margin-right: auto !important;
}
.sub_max > * {
	max-width: unset !important;
}
@media screen and (max-width: 1300px){
	.site-body {
		min-height: unset;
	}
	.site-body > .site-body-container {
		max-width: var(--max-width) !important;
		padding-right: 15px;
		padding-left: 15px;
	}
}


/* -----------------------------------------
 	共通
-----------------------------------------*/
/* ヘッダー */
.site-header {
	background-color: transparent !important;
	box-shadow: none;
}
body.home .site-header {
	position: absolute;
	top: 0;
	left: 0;
	border-left: var(--side-border-width) solid var(--main-color);
	border-right: var(--side-border-width) solid var(--main-color);
}
.site-header .site-header-container {
	max-width: unset !important;
	padding: .5rem 2.9vw;
}
body.home .site-header .site-header-container {
	padding: 1.9rem 2.9vw;
}
.site-header .site-header-logo {
	text-align: left !important;
}
.site-header .site-header-logo a {
	display: inline-block !important;
}
.site-header .site-header-logo img {
	width: 18.5vw;
    max-height: unset;
	margin-left: 0;
	margin-right: 0;
}

.global-nav {
	position: fixed;
    left: 2.1rem;
    bottom: 5.2%;
	opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}
.global-nav.visible {
	opacity: 1;
    visibility: visible;
}
.global-nav-list {
	display: block;
}
.global-nav-list>li,
.global-nav-list>li>a {
	text-align: left !important;
}
.global-nav-list>li {
	display: block;
	line-height: 1;
	margin-bottom: .6em;
	float: none;
}
.global-nav-list>li:before {
	display: none;
	width: 0 !important;
}
.global-nav .global-nav-list>li>a {
	position: relative;
	display: inline-block;
	padding: .4em .6em;
}
.global-nav .global-nav-list>li>a::before {
	position: absolute;
    left: 0;
    bottom: 0;
    content: "";
    width: 0;
    border-bottom: 2px solid var(--main-color);
    transition: all .3s ease-out;
}
.global-nav .global-nav-list>li>a:hover::before {
	width: 100%;
}
.global-nav-list>li .global-nav-name {
	color: var(--main-color);
	font-size: 20px;
	font-weight: 700;
}
.vk-mobile-nav {
	background-color: var(--main-color);
	padding-top: 4.2rem;
}
.vk-mobile-nav nav>ul,
.vk-mobile-nav .widget_nav_menu ul li a,
.vk-mobile-nav nav ul li a {
	color: #fff;
	border-color: #fff;
}
.vk-mobile-nav-menu-btn {
	background: url('../../../wp-content/themes/lightning/_g3/inc/vk-mobile-nav/package/images/vk-menu-btn-white.svg') center 50% no-repeat var(--main-color);
	width: 45px;
	height: 45px;
	border: none !important;
	box-shadow: 0 0 8px rgba(0, 0, 0, .5);
}
.vk-mobile-nav-menu-btn.menu-open {
	background: var(--vk-mobile-nav-menu-btn-close-bg-src) center 50% no-repeat rgba(255,255,255,1);
}
.vk-mobile-nav-menu-btn.position-right {
	top: 10px;
	right: 15px;
}
.page_top_btn {
	right: 15px;
/* 	background-color: rgba(29, 32, 136, .8);
	box-shadow: 0 0 0 1px rgba(255,255,255,.8),0 0 0 2px rgba(29, 32, 136,.8); */
}
@media screen and (max-width: 1300px){
	.global-nav {
		display: none !important;
		visibility: hidden;
	}
	#vk-mobile-nav-menu-btn.vk-mobile-nav-menu-btn {
		display: block;
	}
	.vk-mobile-nav {
		display: block !important;
		box-shadow: 0 0 8px rgba(0,0,0,.4);
	}
	.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-left-in,
	.vk-mobile-nav.vk-mobile-nav-open.vk-mobile-nav-right-in {
		left: calc(100% - 22rem);
	}
}
@media screen and (max-width: 1024px){
	.vk-mobile-nav-menu-btn {
		width: 40px;
		height: 40px;
	}
}
@media screen and (max-width: 767px){
	.site-header .site-header-container {
		padding: .5rem 2vw;
	}
	body.home .site-header .site-header-container {
		padding: .8rem 2vw;
	}
	.site-header .site-header-logo img {
		width: 22.5vw;
	}
}

/* フッター */
.site-footer {
	margin-top: 2rem;
	border: none;
}
body.home .site-footer,
body.page-id-21 .site-footer {
	margin-top: 0;
}
.site-footer .site-footer-content,
.site-footer .site-footer-copyright {
	max-width: 99.3%;
	padding-top: 0;
}
.site-footer .site-footer-content > .row {
	justify-content: space-between;
}
.site-footer .site-footer-content > .row > div {
	flex: 0 1 auto;
	width: auto;
	max-width: 100%;
}
.footer_logo {
	background-color: #fff;
	width: 16.5rem;
	padding: 1rem 1.45rem 1rem 1.1rem;
	margin-left: 2.3rem;
	border-radius: 0 0 20px 20px;
}
.footer_logo img {
	width: 100%;
	vertical-align: bottom;
}
.widget_nav_menu:has(#menu-footer_menu) {
	display: flex;
	justify-content: flex-end;
}
.widget_nav_menu #menu-footer_menu {
	--menu-gap: .7rem;
	display: flex;
	flex-wrap: wrap;
	gap: 0 var(--menu-gap);
	margin-top: 1.5rem;
}
.widget_nav_menu #menu-footer_menu > li {
	position: relative;
}
.widget_nav_menu #menu-footer_menu > li + li::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: calc(var(--menu-gap)/2*-1);
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	background-color: #fff;
	width: 2px;
	height: 1.3em;
}
.widget_nav_menu #menu-footer_menu > li > a {
	font-size: 20px;
	padding: .5em;
	border: none;
}
.site-footer-copyright {
	padding: 0 2rem 0.7rem;
	margin-top: 1.7rem;
}
.site-footer-copyright p {
	font-size: 16px;
	text-align: right;
}
@media screen and (max-width: 1300px){
	.footer_logo {
		width: 14.5rem;
		margin-left: 0;
	}
	.widget_nav_menu #menu-footer_menu > li > a {
		font-size: 18px;
	}
}
@media screen and (max-width: 1024px){
	.site-footer .site-footer-content > .row {
		display: block;
	}
	.widget_nav_menu:has(#menu-footer_menu) {
		display: block;
	}
	.widget_nav_menu #menu-footer_menu > li > a {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	.footer_logo {
		width: 13.5rem;
		padding: .6rem 1rem;
		border-radius: 0 0 10px 10px;
	}
	.widget_nav_menu #menu-footer_menu {
		display: block;
	}
	.widget_nav_menu #menu-footer_menu > li + li::before {
		width: 100%;
		height: 1px;
		left: 0;
		top: 0;
		transform: unset;
		-webkit-transform: unset;
		-ms-transform: unset;
	}
	.widget_nav_menu #menu-footer_menu > li > a {
		font-size: 14px;
		padding: .7em .5em;
	}
	.site-footer-copyright p {
		text-align: center;
		margin-top: 1.3rem;
	}
}

/* 記事（カード） */
.vk_posts.vk_posts-layout-card {
	--date-height: 45px;
	--card-side: 2.5rem;
	overflow: hidden;
}
.vk_posts.vk_posts-layout-card .card {
	position: relative;
	background-color: transparent;
	padding: 0 var(--card-side);
	padding-top: var(--date-height);
	margin-left: 0 !important;
	margin-right: 0 !important;
	border: none;
	border-radius: 0;
}
.vk_posts.vk_posts-layout-card .card::before {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 2px;
	height: calc(100% - var(--date-height));
	background-color: var(--main-color);
}
.vk_posts.vk_posts-layout-card .vk_post_imgOuter {
	width: 100%;
	margin-bottom: 0.65rem;
	border: none;
}
.vk_posts.vk_posts-layout-card .card-body {
	display: contents;
}
.vk_posts.vk_posts-layout-card .card-body .card-date {
	position: absolute;
	top: 0;
	left: calc(var(--card-side) + 2px);
	color: var(--main-color);
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .075em;
}
.vk_posts.vk_posts-layout-card .card-body .card-title {
	width: 100%;
	margin-bottom: 0.2rem;
}
.vk_posts.vk_posts-layout-card .card-body .card-title a {
	display: block;
	color: var(--main-color);
	font-size: 22px;
	font-weight: 700;
	letter-spacing: .05em;
	line-height: 1.28;
	
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.vk_posts.vk_posts-layout-card .card-body .card-text {
	color: #363636;
	font-size: 20px;
	line-height: 1.67;
	margin-bottom: 0;
	
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 5;
}
@media screen and (max-width: 1500px){
	.vk_posts.vk_posts-layout-card {
		--card-side: 1.8rem;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-title a {
		font-size: 20px;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-text {
		font-size: 18px;
	}
}
@media screen and (max-width: 1024px){
	.vk_posts.vk_posts-layout-card {
		--date-height: 35px;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-date,
	.vk_posts.vk_posts-layout-card .card-body .card-text {
		font-size: 16px;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-title a {
		font-size: 18px;
	}
}
@media screen and (max-width: 767px){
	.vk_posts.vk_posts-layout-card {
		--card-side: 1.2rem;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-date,
	.vk_posts.vk_posts-layout-card .card-body .card-text {
		font-size: 14px;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-title a {
		font-size: 16px;
	}
}

/* タイトル */
.title_block {
	color: var(--main-color);
	font-family: "Poppins", sans-serif;
	font-size: 54px;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 2.5rem;
}
.title_block em {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: .74em;
	font-style: normal;
	margin-left: .15em;
}
@media screen and (max-width: 1024px){
	.title_block {
		font-size: 48px;
		margin-bottom: 2rem;
	}
}
@media screen and (max-width: 767px){
	.title_block {
		font-size: 36px;
		margin-bottom: 1.8rem;
	}
}

/* タイトルボックス */
.title_box {
	margin-bottom: 2.5rem;
}
.title_box .wp-block-heading {
	color: var(--main-color);
	font-family: "Poppins", sans-serif;
	font-size: 54px;
	font-weight: 800;
	line-height: 1.2;
}
.title_box_sub {
	color: var(--main-color);
	font-size: 19px;
	line-height: 1.2;
}
@media screen and (max-width: 767px){
	.title_box {
		margin-bottom: 1.8rem;
	}
	.title_box .wp-block-heading {
		font-size: 36px;
	}
	.title_box_sub {
		font-size: 15px;
	}
}

/* ボタン プラス */
.btn_plus {
	--top-gap: 15px;
	--right-side: 4px;
	line-height: 1;
}
.btn_plus .vk_button_link.btn {
	position: relative;
	background-color: transparent !important;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: .07em;
	text-align: left;
	width: 19rem;
	min-width: unset !important;
	padding: var(--top-gap) var(--right-side) 0;
	border: none;
	z-index: 1;
}
.btn_plus .vk_button_link.btn::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	background-color: var(--main-color);
	z-index: -1;
	transition: all .5s;
}
.btn_plus.ani_trigger .vk_button_link.btn .vk_button_link_caption {
	position: relative;
	justify-content: flex-start;
	bottom: -10px;
	width: 100%;
	opacity: 0;
	transition: all .4s;
	transition-delay: .6s;
}
.btn_plus .vk_button_link.btn .vk_button_link_after {
	position: absolute;
	top: 2px;
	right: 0;
	font-size: 22px;
	font-weight: normal;
	margin-left: 0;
	transition: all .3s;
}
.btn_plus.ani_trigger.active .vk_button_link.btn::before {
	width: 100%;
}
.btn_plus.ani_trigger.active .vk_button_link.btn .vk_button_link_caption {
	bottom: 0;
	opacity: 1;
}
.btn_plus .vk_button_link.btn:hover .vk_button_link_after {
	transform: rotate(90deg);
}
@media screen and (max-width: 1500px){
	.btn_plus .vk_button_link.btn {
		width: 16rem;
	}
}
@media screen and (max-width: 767px){
	.btn_plus {
		--top-gap: 10px;
	}
	.btn_plus .vk_button_link.btn {
		font-size: 16px;
		width: 14rem;
	}
	.btn_plus .vk_button_link.btn .vk_button_link_after {
		font-size: 17px;
	}
}



/* -----------------------------------------
 	ローディング
-----------------------------------------*/
.loading_box {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #eaf6ff;
	z-index: 100000;
	transition: opacity 1s 2.7s;
}
.loading_box::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(0);
    -webkit-transform: translate(-50%, -50%) rotate(0);
    -ms-transform: translate(-50%, -50%) rotate(0);
	background-image: url(../../../wp-content/uploads/2025/04/earth.webp);
    background-repeat: no-repeat;
    background-size: contain;
	width: 50vw;
    aspect-ratio: 295 / 282;
	opacity: .3;
	
	transition: all .9s cubic-bezier(.25,1,.5,1);
	animation: circle 150s linear infinite;
}
.loading_box.loaded {
	opacity: 0;
	user-select: none;
	pointer-events: none;
}
.load_title_box {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	opacity: 0;
}
.loading_box .title {
	position: relative;
	width: auto;
	display: flex;
	align-items: center;
	color: #B60005;
	font-size: 4vw;
	line-height: 1;
	transform-origin: center;
}
.loading_box .title span {
	display: inline-block;
	color: var(--main-color);
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
	width: var(--hide-width);
	max-width: 100%;
	margin-bottom: 0;
}
.loading_box.loaded .load_title_box {
	animation: load-ani-fadeIn .7s forwards;
}
.loading_box.loaded .title {
	animation: load-ani2 .6s 1.7s forwards;
}
.loading_box.loaded .title span {
	animation: load-ani .6s .7s linear forwards;
}
@keyframes circle {
	0% {
		transform: translate(-50%, -50%) rotate(0);
	}
	100% {
		transform: translate(-50%, -50%) rotate(360deg);
	}
}
@keyframes load-ani-fadeIn {
	0% {
		opacity: 0;
		transform: translateX(-10px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
@keyframes load-ani {
	0% {
		opacity: 1;
		width: var(--hide-width);
		max-width: 100%;
	}
	100% {
		opacity: 0;
		width: 0;
		max-width: 0;
	}
}
@keyframes load-ani2 {
	0% {
		font-size: 4vw;
		color: #B60005;
	}
	100% {
		font-size: 8vw;
		color: var(--main-color);
	}
}
@media screen and (max-width: 1024px){
	.loading_box::before {
		width: 72vw;
	}
	.loading_box .title {
		font-size: 5.5vw;
	}
	@keyframes load-ani2 {
		0% {
			font-size: 5.5vw;
			color: #B60005;
		}
		100% {
			font-size: 11.5vw;
			color: var(--main-color);
		}
	}
}



/* -----------------------------------------
 	トップページ
-----------------------------------------*/
.fv_container {
	position: relative;
	padding-top: 0;
	padding-bottom: 3.8rem;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.fv_container > div > .vk_outer_container {
	max-width: unset !important;
}
.fv_container .fv_text_box {
	position: absolute;
	top: 37.8%;
    left: 3.9%;
	line-height: 1;
	margin-bottom: 0 !important;
	z-index: 6;
}
.fv_container .fv_text_box p {
	display: inline-block;
	position: relative;
	color: var(--main-color) !important;
	font-family: "Poppins", sans-serif;
	font-size: 5.73vw;
	font-weight: 800;
	letter-spacing: -0.014em;
	line-height: 1;
	-webkit-text-stroke-width: .03vw;
    -webkit-text-stroke-color: #fff;
	margin-bottom: -0.06em !important;
	overflow: hidden;
}
.fv_container .fv_text_box p::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background-color: var(--main-color);
	background-color: #B60005;
	width: 100%;
	height: 100%;
	transform: translate(-103%, 0);
}
.fv_container .fv_text_box p:nth-child(2) {
	margin-left: 4.9vw;
}
.fv_container .fv_text_box p strong {
	line-height: 1;
	opacity: 0;
	transform: translateX(-10px);
	white-space: nowrap;
}
.fv_img {
	width: 71%;
    margin-left: auto;
	border-radius: 0 0 0 1vw;
	overflow: hidden;
}
.fv_img img {
	width: 100%;
	vertical-align: bottom;
}
@media screen and (max-width: 767px){
	.fv_container {
		padding-bottom: 0.8rem;
	}
	.fv_container .fv_text_box {
		top: 71.8%;
	}
	.fv_container .fv_text_box p {
		font-size: 8.5vw;
		margin-bottom: 0.1em !important;
		-webkit-text-stroke-width: .1vw;
	}
	.fv_img {
		border-radius: 0 0 0 5vw;
	}
	.fv_img img {
		min-height: 49vh;
        object-fit: cover;
        object-position: right center;
	}
}

/* about */
.about_container {
	position: relative;
	padding-top: 3.3rem;
	padding-bottom: 0;
	margin-bottom: -2vw;
	overflow: visible;
	z-index: 3;
}
.about_container::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	opacity: .9;
}
.about_container p {
	font-size: 28px;
	line-height: 1.77;
	letter-spacing: .045em;
	text-align: justify;
}
.about_column {
	gap: 2rem 4.6rem;
}
.about_column .btn_plus {
	margin-top: 3.65rem;
}

.about_column_img {
	position: relative;
	margin-top: 7.3rem;
}
.about_column_img figure {
	position: absolute;
	top: 0;
	right: 8%;
	width: 78.2%;
	margin-bottom: 0;
	opacity: 0;
}
.about_column_img figure img {
	width: 100%;
	vertical-align: bottom;
}
.about_column_img figure:nth-child(1) {
	position: relative;
	right: -14%;
	transform: translate(-5%, -7%) rotate(-20deg);
}
.about_column_img figure:nth-child(2) {
	transform: translate(0) rotate(0);
}
.about_column_img figure:nth-child(3) {
	transform: translate(0.4%, 0%) rotate(12deg);
}
@media screen and (max-width: 1500px){
	.about_column {
		gap: 0 2.6rem;
	}
	.about_container p {
		font-size: 22px;
	}
}
@media screen and (max-width: 1024px){
	.about_container {
		padding-top: 1.3rem;
	}
	.about_container p {
		font-size: 20px;
	}
	
	
	.about_column.wp-block-columns.is-not-stacked-on-mobile {
		flex-wrap: wrap !important;
		justify-content: center;
	}
	.about_column.wp-block-columns.is-not-stacked-on-mobile > .wp-block-column {
		display: contents;
		flex-basis: auto;
		flex-grow: 0;
		width: 100%;
	}
	.about_column .title_block {
		order: -2;
		width: 100%;
	}
	.about_column_img {
		order: -1;
		margin-top: 2rem;
		margin-bottom: 4rem;
	}
	.about_column_img figure {
		width: 61.2%;
		right: 19.4%;
	}
	.about_column_img figure:nth-child(1) {
		right: -22.5%;
	}
	
	
	.about_column .btn_plus {
		margin-top: 2rem;
	}
}
@media screen and (max-width: 767px){
	.about_container {
		padding-top: 3.5rem;
	}
	.about_container p {
		font-size: 18px;
		line-height: 1.5;
		letter-spacing: .02em;
	}
	.about_column_img figure {
		width: 78.2%;
		right: 10.9%;
	}
	.about_column_img figure:nth-child(1) {
		right: -14%;
	}
	.about_column .btn_plus {
		margin-top: 1rem;
	}
}

/* news */
.news_container {
	--earth-scale: 0.4;
	position: relative;
	padding-top: calc(11.4vw + 6.45rem);
	padding-bottom: 10.6rem;
}
.news_container::before {
	content: '';
	display: block;
	position: absolute;
	left: 52%;
	top: -56.2vw;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 138.6vw;
	aspect-ratio: 2661 / 1292;
	background-color: #fff;
	border-radius: 50%;
	opacity: .9;
	z-index: 1;
}
.news_container::after{
	content: '';
	display: block;
	position: absolute;
	top: 4.9vw;
	left: 52%;
	transform-origin: center top;
	transform: translateX(-50%) scale(var(--earth-scale, 0.4));
    -webkit-transform: translateX(-50%) scale(var(--earth-scale, 0.4));
    -ms-transform: translateX(-50%) scale(var(--earth-scale, 0.4));
	background-image: url('../../../wp-content/uploads/2025/04/earth.webp');
	background-repeat: no-repeat;
	background-size: contain;
	width: 61%;
	aspect-ratio: 295 / 282;
	transition: all 0s ease;
}
.news_container .title_block {
	margin-bottom: 0.6rem;
}
.news_container .news_box {
	width: calc(100% + 15.6rem);
	max-width: unset !important;
	border-radius: 20px 0 0 20px;
	overflow: hidden;
}
.news_container .news_box > .wp-block-group__inner-container {
	position: relative;
	max-width: unset !important;
	padding-top: 2.45rem;
	padding-left: 18.4rem;
    padding-right: 11.8%;
}
.news_container .news_box .btn_plus {
	margin-top: 1.7rem;
	margin-right: -2.5rem;
	margin-bottom: 0;
}
.news_box .vk_posts.vk_posts-layout-card {
	margin-left: calc((var(--card-side)*-1) - 5px);
	margin-right: calc(var(--card-side)*-1);
}
.news_box .swiper-button-prev,
.news_box .swiper-button-next {
	--btn-size: 61px;
    --btn-side: 1.35rem;
    --btn-gap: 1.3rem;
	right: auto;
	top: auto;
	bottom: 2.4rem;
	background-color: transparent;
	color: var(--main-color);
	width: var(--btn-size);
	height: var(--btn-size);
	margin-top: 0;
	border: 2px solid var(--main-color);
	border-radius: 50%;
	transition: all .3s;
}
.news_box .swiper-button-prev {
	left: var(--btn-side);
}
.news_box .swiper-button-next {
	left: calc(var(--btn-side) + var(--btn-size) + var(--btn-gap));
}
.news_box .swiper-button-prev::after,
.news_box .swiper-button-next::after {
	font-size: calc(var(--btn-size)*.5);
	font-weight: bold;
	transition: all .3s;
}
.news_box .swiper-button-prev:hover,
.news_box .swiper-button-next:hover {
	background-color: var(--main-color);
}
.news_box .swiper-button-prev:hover::after,
.news_box .swiper-button-next:hover::after {
	color: #fff;
}
@media screen and (max-width: 1500px){
	.news_container .news_box {
		width: calc(100% + var(--side-space) - 25px);
	}
	.news_container .news_box > .wp-block-group__inner-container {
		padding-left: 12.4rem;
	}
	.news_box .swiper-button-prev, .news_box .swiper-button-next {
		--btn-size: 50px;
	}
	.news_container .news_box .btn_plus {
		margin-right: -1.8rem;
	}
}
@media screen and (max-width: 1024px){
	.news_container .news_box > .wp-block-group__inner-container {
		padding-left: 3rem;
		padding-right: 3rem;
	}
	.news_box .vk_posts.vk_posts-layout-card {
		margin-right: 0;
	}
	.news_box .swiper-button-prev,
	.news_box .swiper-button-next {
		--btn-size: 45px;
		--btn-side: 2.8rem;
		bottom: 2rem;
	}
	.news_container .news_box .btn_plus {
		margin-right: 0;
	}
}
@media screen and (max-width: 767px){
	.news_container {
		padding-bottom: 4rem;
	}
	.news_container::after {
		width: 96%;
	}
	.news_container .news_box {
		width: calc(100% + var(--side-space) - 10px);
	}
	.news_container .news_box > .wp-block-group__inner-container {
		padding-top: 5rem;
		padding-left: 2rem;
        padding-right: 2rem;
	}
	.news_box .swiper-button-prev,
	.news_box .swiper-button-next {
		--btn-size: 40px;
		--btn-side: 1.8rem;
		--btn-gap: .9rem;
		top: 1.5rem;
		bottom: auto;
	}
	.news_container .news_box .btn_plus {
		text-align: center;
	}
}

/* partner */
.partner_container {
	padding-top: 7.2rem;
}
.partner_container .title_block {
	margin-bottom: 1.2rem;
}
.partner_column {
	--column-side: 0.6rem;
	--column-gap: calc(2.9% + var(--column-side)*2);
	padding: 0 3px;
}
.partner_column > .row {
	gap: 2rem var(--column-gap);
	padding: 0 var(--column-side);
	margin-left: 0;
	margin-right: 0;
}
.partner_column .wp-block-vk-blocks-grid-column-item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--column-gap))/2);
	max-width: unset;
	padding-left: 0;
	padding-right: 0;
}
.partner_column .wp-block-vk-blocks-grid-column-item .vk_gridColumn_item_inner {
	padding-top: 2.7rem;
	border-radius: 20px;
}
.partner_column_title {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: .07em;
	margin-bottom: 2.4rem;
}
.partner_column_title strong {
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	line-height: 1;
}
.partner_column_img {
	width: calc(100% + var(--column-side)*2);
	max-width: unset;
	margin-left: calc(var(--column-side)*-1);
	border-radius: 20px;
	overflow: hidden;
}
.partner_column_img img {
	width: 100%;
	vertical-align: bottom;
	transition: all .4s;
}
.partner_column .btn_plus {
	position: relative;
	margin-top: 2.75rem !important;
	margin-bottom: 0;
	z-index: 11;
}
.partner_column .wp-block-vk-blocks-grid-column-item:hover .partner_column_img img {
	transform: scale(1.1);
}
@media screen and (max-width: 1500px){
	.partner_column_title {
		font-size: 24px;
	}
}
@media screen and (max-width: 1300px){
	.partner_column_title {
		margin-bottom: 1.4rem;
	}
}
@media screen and (max-width: 1024px){
	.partner_container {
		padding-top: 4.5rem;
	}
	.partner_column {
		max-width: 500px;
		margin: 0 auto;
	}
	.partner_column > .row {
		flex-wrap: wrap !important;
	}
	.partner_column .wp-block-vk-blocks-grid-column-item {
		width: 100%;
	}
}
@media screen and (max-width: 767px){
	.partner_container {
		padding-top: 4rem;
	}
	.partner_container .title_block {
		margin-bottom: 2.5rem;
	}
	.partner_column .wp-block-vk-blocks-grid-column-item .vk_gridColumn_item_inner {
		padding-top: 2rem;
		border-radius: 13px;
	}
	.partner_column_img {
		border-radius: 13px;
	}
	.partner_column_title {
		font-size: 20px;
		margin-bottom: 1.25rem;
	}
	.partner_column .btn_plus {
		margin-top: 2rem !important;
	}
}

/* gallery */
.gallery_container {
	padding-top: 7.7rem;
	padding-bottom: 7.3rem;
}
.gallery_container .gallery_title {
	color: #eaf6ff;
	font-family: "Poppins", sans-serif;
	font-size: 200px;
	font-weight: 800;
	line-height: 1.1;
	margin-bottom: -0.41em;
}
.gallery_slider {
	--items-visible: 3.87; /* 画面内に表示したい画像数 */
	--item-count: 4;
	display: flex;
	width: 100vw;
	max-width: unset !important;
	margin: 0 calc(50% - 50vw);
	overflow: hidden;
}
.gallery_slider > .row {
	flex-wrap: nowrap !important;
	width: calc(100vw / var(--items-visible) * var(--item-count) * 2);
	margin-left: 0;
	margin-right: 0;
	animation: scroll-left 30s linear infinite;
}
.gallery_slider .wp-block-vk-blocks-grid-column-item {
	flex: 0 0 calc(100vw / var(--items-visible));
	-webkit-box-flex: unset;
	width: auto;
	max-width: unset;
	padding-left: 1%;
	padding-right: 1%;
}
.gallery_slider .wp-block-vk-blocks-grid-column-item:nth-child(even) {
	margin-top: 4.1%;
}
.gallery_slider .wp-block-vk-blocks-grid-column-item figure {
	width: 100%;
	margin-bottom: 0;
	border-radius: 20px;
    overflow: hidden;
}
.gallery_slider .wp-block-vk-blocks-grid-column-item figure img {
	width: 100%;
	aspect-ratio: 23 / 24;
	object-fit: cover;
	vertical-align: bottom;
}
@keyframes scroll-left {
  from { transform: translateX(0); }
  to { transform: translateX(calc(-100vw / var(--items-visible) * var(--item-count))); }
}
.gallery_container .btn_plus {
	margin-top: 3.7rem;
}
@media screen and (max-width: 1024px){
	.gallery_container {
		padding-top: 2.7rem;
		padding-bottom: 6.3rem;
	}
	.gallery_container .gallery_title {
		font-size: 21vw;
	}
	.gallery_slider {
		--items-visible: 2.87;
	}
	.gallery_slider .wp-block-vk-blocks-grid-column-item {
		padding-left: 2.5vw;
    	padding-right: 2.5vw;
	}
	.gallery_slider .wp-block-vk-blocks-grid-column-item:nth-child(even) {
		margin-top: 4rem;
	}
	.gallery_slider .wp-block-vk-blocks-grid-column-item figure {
		border-radius: 10px;
	}
}
@media screen and (max-width: 767px){
	.gallery_container {
		padding-bottom: 5.3rem;
	}
	.gallery_slider .wp-block-vk-blocks-grid-column-item:nth-child(even) {
		margin-top: 2rem;
	}
	.gallery_container .btn_plus {
		margin-top: 2.7rem;
	}
}


/* -----------------------------------------
 	OSIPについて
-----------------------------------------*/
body.page-id-21 #site-header {
	position: absolute;
	top: 0;
	width: calc(100% - var(--side-border-width)*2);
}

.page_top_header {
	padding: 0 !important;
	overflow: visible;
	z-index: 1;
}
.page_top_header > div > .vk_outer_container {
	max-width: unset !important;
}
.page_top_header_img {
	width: 71vw;
	margin-left: auto;
	margin-bottom: 0;
}
.page_top_header_img img {
	aspect-ratio: 3 / 1.463;
	border-radius: 0 0 0 20px;
	object-fit: cover;
}
.page_top_header_text {
	position: absolute;
    right: 7.7vw;
    bottom: -6.1vw;
	width: 12.4vw;
	margin-bottom: 0;
	animation: rotate 35s linear infinite; /* 5秒間かけて、線形に無限に回転 */
}
.page_top_header_img img,
.page_top_header_text img {
	width: 100%;
	margin-bottom: 0;
	vertical-align: bottom;
}
@keyframes rotate {
	from { transform: rotate(0deg); }
	to { transform: rotate(-360deg); }
}
@media screen and (max-width: 1024px){
	.page_top_header_img img {
		aspect-ratio: 3 / 1.8;
	}
	.page_top_header_text {
		right: 4.7vw;
		bottom: -6.1vw;
		width: 17.4vw;
	}
}
@media screen and (max-width: 767px){
	.page_top_header_img img {
		aspect-ratio: 2.8 / 3;
        object-position: 69% center;
	}
	.page_top_header_text {
        right: 56.7vw;
        bottom: -8.1vw;
        width: 29.4vw;
    }
}

/* page_aobut_container */
.page_aobut_container {
	--mv-overlap-height: 9.6vw;
	padding-top: calc(var(--mv-overlap-height) + 6.6rem);
	padding-bottom: 0;
	margin-top: calc(var(--mv-overlap-height)*-1);
	overflow: hidden;
}
.page_aobut_container .page_aobut_container_inner {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
.page_aobut_container .page_aobut_container_inner p {
	font-size: 24px;
	letter-spacing: .06em;
	line-height: 2.46;
}

.about_flow_box {
	--flow-width: 253vw;
	width: var(--flow-width);
	max-width: unset;
	padding-bottom: 2.3rem;
    margin: auto calc(50% - (var(--flow-width)/2));
	margin-top: 4.216vw;
	pointer-events: none;
	user-select: none;
}
.about_flow_box * {
	max-width: unset !important;
}
.text_scroll_box {
	overflow: visible;
}
.text_scroll_box p {
	font-family: "Poppins", sans-serif;
	font-size: 8.33vw;
	font-weight: 800;
	line-height: 1;
	color: #fff;
	white-space: nowrap;
}
.text_scroll_box .swiper-wrapper {
	transition-timing-function: linear;
}
.text_scroll_box .vk_slider_item_container {
	max-width: unset !important;
	padding: 0 !important;
}
.about_flow_box_img {
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 26.458vw;
	margin-bottom: 0;
	z-index: 1;
}
.about_flow_box_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
@media screen and (max-width: 1500px){
	.page_aobut_container .page_aobut_container_inner p {
		font-size: 23px;
	}
}
@media screen and (max-width: 1024px){
	.page_aobut_container {
		--mv-overlap-height: 12.6vw;
		padding-top: calc(var(--mv-overlap-height) + 4rem);
	}
	.page_aobut_container .page_aobut_container_inner p {
		font-size: 20px;
		line-height: 1.8;
	}
	.about_flow_box_img {
		width: 32.458vw;
	}
}
@media screen and (max-width: 767px){
	.page_aobut_container .page_aobut_container_inner p {
		font-size: 17px;
		line-height: 2;
	}
	.about_flow_box {
		--flow-width: 360vw;
		padding-bottom: 1.3rem;
		margin-top: 3rem;
	}
	.text_scroll_box p {
		font-size: 11.33vw;
	}
	.about_flow_box_img {
		width: 46vw;
	}
}

/* page_output_container */
.page_output_container {
	padding-top: 8.3rem;
	padding-bottom: 12.9rem;
}
.page_output_container .title_block,
.page_pillar_container .title_block {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 60px;
}
.page_output_container .title_block em,
.page_pillar_container .title_block em {
	font-size: .666em;
}
.output_column {
	--gap: 4%;
	margin-top: 5.1rem;
}
.output_column > .row {
	justify-content: center;
	gap: 2.5rem var(--gap);
	margin-left: 0;
	margin-right: 0;
}
.output_column > .row > .wp-block-vk-blocks-grid-column-item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--gap)*2)/3);
	max-width: unset;
/* 	min-width: 423px; */
	padding-top: 2rem;
	padding-left: 0;
	padding-right: 0;
}
.output_item_num {
	position: relative;
	top: -1.55rem;
	margin-bottom: .65rem;
}
.output_item {
	overflow: hidden;
}
.output_item p.output_item_num_num,
.output_item p.output_item_num_en {
	font-family: "Poppins", sans-serif;
	color: var(--main-color);
}
.output_item p.output_item_num_num {
	position: relative;
	font-size: 50px;
	line-height: 1;
}
.output_item_num_num strong {
	position: relative;
	font-weight: 500;
}
.output_item_num_num::before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	width: 1.25em;
	height: 1.25em;
	background-color: #fff;
	border: 2px solid var(--main-color);
	border-radius: 50%;
}
.output_item p.output_item_num_en {
	font-size: 20px;
	letter-spacing: .07em;
    line-height: 1;
    margin-top: .6rem;
}
.output_item p {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.8;
	color: var(--main-color);
	letter-spacing: .08em;
    text-indent: .08em;
}
.output_item > .vk_gridColumn_item_inner {
	position: relative;
	padding: 0 1rem 3.2rem;
	border-radius: 25px;
}
.output_item > .vk_gridColumn_item_inner > * {
	position: relative;
	z-index: 3;
}
.output_item > .vk_gridColumn_item_inner > *:last-child {
	margin-bottom: 0;
}
.output_item_img {
	position: absolute !important;
	right: 0;
	bottom: 0;
	margin-bottom: 0;
	opacity: .35;
	z-index: 1 !important;
}
.output_item_img.num1 {
	width: 6.8rem;
    right: 1.3rem;
    bottom: -1.4rem;
}
.output_item_img.num2 {
	width: 6.1rem;
    right: 1.5rem;
    bottom: 0;
}
.output_item_img.num3 {
	width: 5.9rem;
    right: 1rem;
    bottom: 0;
}
.output_item_img img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
@media screen and (max-width: 1650px){
	.output_column {
		--gap: 2.5%;
	}
	.output_item p {
		font-size: 20px;
	}
}
@media screen and (max-width: 1550px){
	.output_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: calc((100% - var(--gap))/2);
		min-width: unset;
	}
}
@media screen and (max-width: 1024px){
	.page_output_container {
		padding-top: 4.3rem;
        padding-bottom: 5.9rem;
	}
	.page_output_container .title_block,
	.page_pillar_container .title_block {
		font-size: 50px;
	}
	.output_column {
		margin-top: 2.1rem;
	}
	.output_column > .row {
		justify-content: center;
	}
	.output_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: calc((100% - var(--gap))/2);
		min-width: unset;
		padding-top: 1.6rem;
	}
	.output_item > .vk_gridColumn_item_inner {
		max-width: 450px;
		padding: 0 1rem 3.2rem;
		margin: 0 auto;
		border-radius: 15px;
	}
	.output_item p {
		font-size: 18px;
	}
	.output_item_num {
		top: -1rem;
	}
	.output_item p.output_item_num_num {
		font-size: 40px;
	}
	.output_item p.output_item_num_en {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	.page_output_container .title_block,
	.page_pillar_container .title_block {
		font-size: 38px;
	}
	.output_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: 100%;
	}
	.output_item p {
		font-size: 16px;
	}
}

/* page_pillar_container */
.page_pillar_container {
	position: relative;
	padding-top: 6.9rem;
	padding-bottom: 7rem;
}
.page_pillar_container::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
/* 	height: 91vw; */
	background-color: #eaf6ff;
}
.page_pillar_container::after {
	content: '';
	display: block;
	position: absolute;
/* 	top: 35%; */
	top: calc(50% - 30.8vw);
/* 	top: 72vw; */
	left: 0;
	width: 100%;
	aspect-ratio: 1280 / 887;
	background-image: url('../../../wp-content/uploads/2025/05/about-bg-scaled.webp');
	background-repeat: no-repeat;
	background-size: contain;
}
.page_pillar_container > div > .vk_outer_container {
	position: static !important;
}
.page_pillar_container > div > .vk_outer_container > * {
	position: relative;
	z-index: 2;
}
.page_pillar_container_bg_img {
	position: absolute !important;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	width: 87rem;
	margin-bottom: 0;
	opacity: .4;
	user-select: none;
	pointer-events: none;
	z-index: 1 !important;
}
.page_pillar_container_bg_img img {
	width: 100%;
	vertical-align: bottom;
}
.pillar_column {
	--gap: 10.2%;
	--side: 2.5rem;
	max-width: 1150px;
    margin-left: auto;
    margin-right: auto;
	margin-top: 7.1rem;
}
.pillar_column > .row {
	justify-content: center;
	gap: 5rem var(--gap);
	margin: 0;
}
.pillar_column .pillar_item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--gap))/2);
	min-width: 470px;
	max-width: unset;
	padding: 0 !important;
}
.pillar_column .pillar_item > .vk_gridColumn_item_inner {
	padding: 0 var(--side) 3.4rem;
}
.pillar_column .pillar_item > .vk_gridColumn_item_inner > *:last-child {
	margin-bottom: 0;
}
.pillar_column .pillar_item > .vk_gridColumn_item_inner > p {
	line-height: 1.74;
	letter-spacing: .1em;
	text-align: justify;
}
.pillar_item .pillar_item_num {
	color: var(--main-color);
	font-family: "Poppins", sans-serif;
	font-size: 24px;
	font-weight: 600;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	position: absolute;
	top: -1.69em;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	margin-bottom: 0;
}
.pillar_item_box_top {
	width: calc(100% + var(--side)*2);
	padding: .5rem .8rem;
	margin-left: calc(var(--side)*-1);
	margin-bottom: 1.85rem;
}
.pillar_item_box_top_text {
	letter-spacing: .07em;
	text-indent: .07em;
	padding: .1rem .2rem;
	margin-bottom: 0;
}
.pillar_item_box_top_title {
	font-size: 28px;
    letter-spacing: .06em;
    text-indent: .06em;
    margin-top: .55rem;
	margin-bottom: 0;
}

.pillar_white_box {
	padding: 5.45rem 3rem 4.6rem;
	margin-top: 5.75rem;
    border: 2px solid var(--main-color);
}
.pillar_white_box > .wp-block-group__inner-container {
	max-width: 995px !important;
}
.pillar_white_box_title {
	font-size: 40px;
	font-weight: 800;
	margin-bottom: .75rem;
}
.pillar_white_box_subtitle {
	font-size: 22px;
	font-weight: 700;
	letter-spacing: .07em;
	text-indent: .07em;
}
.pillar_white_box_leader_maker {
	margin-top: 5.2rem;
}
.pillar_white_box_leader_maker_title {
	font-family: "Poppins", sans-serif;
	font-size: 44px;
	font-weight: 700;
	letter-spacing: .075em;
	text-indent: .075em;
	margin-bottom: .95rem;
}
.pillar_white_box_leader_maker p {
	font-weight: 600;
	letter-spacing: .075em;
	text-indent: .075em;
}
.pillar_white_box_leader_maker_column {
	--gap: 6%;
	margin-top: 3.3rem;
}
.pillar_white_box_leader_maker_column > .row {
	gap: 2rem var(--gap);
	margin-left: 0;
	margin-right: 0;
}
.pillar_white_box_leader_maker_column > .row > .wp-block-vk-blocks-grid-column-item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--gap)*2)/3);
	max-width: unset;
	padding-left: 0;
	padding-right: 0;
}
.pillar_white_box_leader_maker_column figure,
.pillar_white_box_leader_maker_column figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}

.pillar_white_box_international {
	margin-top: 4.5rem;
}
.pillar_white_box_international_list {
	padding: 1.75rem 1.5rem;
	margin-top: 3.15rem;
}
.pillar_white_box_international_list ul,
.pillar_white_box_international_list ul li {
	margin: 0;
}
.pillar_white_box_international_list ul {
	list-style: none;
	padding: 0;
	text-align: center;
}
.pillar_white_box_international_list ul li {
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .074em;
	text-indent: .074em;
}
.pillar_white_box_international_list ul li + li {
	margin-top: 8px;
}
.pillar_white_box_international_task {
	text-align: center;
	margin-top: 3.95rem;
}
.pillar_white_box_international_task_title {
	display: inline-block;
	font-size: 22px;
    font-weight: 500;
    line-height: 1;
	letter-spacing: .07em;
	text-indent: .07em;
	padding: .3em 1.2em .45em !important;
}
.pillar_white_box_international_task_column {
	--gap: 6%;
	--title-height: 5.6rem;
	--border-radius: 25px;
	margin-top: 1rem;
}
.pillar_white_box_international_task_column > .row {
	justify-content: center;
	gap: 2.5rem var(--gap);
	margin-left: 0;
	margin-right: 0;
}
.pillar_white_box_international_task_column > .row > .wp-block-vk-blocks-grid-column-item {
	-webkit-box-flex: 0;
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: auto;
	min-width: 18rem;
	max-width: unset;
	padding-left: 0;
	padding-right: 0;
}
.pillar_white_box_international_task_item_title {
	display: flex;
	align-items: center;
	height: var(--title-height);
	padding: .8rem 1.6rem 1rem;
	border: 2px solid var(--main-color);
	border-radius: var(--border-radius) var(--border-radius) 0 0;
}
.pillar_white_box_international_task_item_title .wp-block-heading {
	font-size: 22px;
	letter-spacing: .07em;
	text-indent: .07em;
}
.pillar_white_box_international_task_item_title p {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.3;
	letter-spacing: .03em;
	text-indent: .03em;
	margin-top: .55rem;
}
.pillar_white_box_international_task_item_body {
	display: flex;
	align-items: center;
	font-size: 22px;
	height: calc(100% - var(--title-height));
	padding: 1.1rem 1rem 1.55rem;
	border: 2px solid var(--main-color);
	border-top: none;
	border-radius: 0 0 var(--border-radius) var(--border-radius);
}
.pillar_white_box_international_task_item_body p {
	line-height: 1.4;
	letter-spacing: .08em;
	text-indent: .08em;
}
.pillar_white_box_international_task_item_body .pillar_white_box_international_task_item_title_sub {
	font-size: 18px;
	letter-spacing: .07em;
	text-indent: .07em;
	margin-bottom: 1rem;
}
.pillar_white_box_international_task_item_body ul,
.pillar_white_box_international_task_item_body ul li {
	margin: 0;
}
.pillar_white_box_international_task_item_body ul {
	list-style: none;
	padding: 0;
	padding-right: .6rem;
}
.pillar_white_box_international_task_item_body ul li {
	line-height: 1.3;
	letter-spacing: 0.075em;
	text-indent: 0.075em;
}
.pillar_white_box_international_task_item_body ul li + li {
	margin-top: 3px;
}
.pillar_white_box_international_task_item_body ul + .pillar_white_box_international_task_item_title_sub {
	margin-top: .95rem;
	margin-bottom: .5rem;
}

.pillar_white_box_program {
	margin-top: 6.7rem;
}
.program_column {
	font-size: 20px;
	margin-top: 1.6rem;
}
.program_column > .row {
	margin-left: 0;
	margin-right: 0;
}
.program_column > .row > .program_item {
	padding: 3.7rem 0 3.3rem;
	border-bottom: 2px solid var(--main-color);
}
.program_column > .row > .program_item:first-child {
	padding-top: 2rem;
}
.program_column > .row > .program_item:last-child {
	border-bottom: none;
}
.program_item > p {
	line-height: 1.95;
	letter-spacing: .08em;
	text-align: justify;
}
.program_item_title {
	position: relative;
	padding: 1.1rem 1.5rem 0;
	margin-bottom: 2.4rem;
}
.program_item_title::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 5rem;
	aspect-ratio: 1/1;
	background-image: url('../../../wp-content/uploads/2025/05/title-tri.webp');
	background-repeat: no-repeat;
	background-size: contain;
	z-index: -1;
}
.program_item_title > .wp-block-group__inner-container {
	display: flex;
	align-items: flex-start;
	gap: .5rem 1.55rem;
}
.program_item_title_numBox {
	font-family: "Poppins", sans-serif;
	font-size: 18px;
	font-weight: 500;
	text-align: center;
}
.program_item_title_numBox p {
	line-height: 1;
}
.program_item_title_numBox .program_item_title_numBox_num {
	font-size: 2.22em;
	margin-top: .13em;
}
.program_item_title_title {
	font-size: 24px;
	letter-spacing: .07em;
	margin-top: .5rem;
	margin-bottom: 0;
}
.pillar_white_box_international_list br.br_pc {
	display: none;
}
.program_detail_content,
.attention_item {
	padding: 2rem;
}
.program_detail_content > .wp-block-group__inner-container,
.attention_item > .wp-block-group__inner-container {
	max-width: unset !important;
}
.program_detail {
	margin-top: 3rem;
}
.program_detail_content {
	font-size: 18px;
	overflow: hidden;
    max-height: 0;
	padding: 0 2rem;
	margin-top: 0;
	border-left: 3px solid #b5972a;
	opacity: 0;
	transition: all 0.4s ease;
}
.program_detail_content.open {
    max-height: 1000px;
	padding: 2rem;
	margin-top: 2rem;
	opacity: 1;
}
.attention_item {
	margin-top: 3rem;
}
.attention_item .vk_button {
	font-size: 18px;
}
.vk_button .has-text-color.vk_button_link-type-text {
	cursor: pointer;
	transition: all .3s;
}
.vk_button .has-text-color.vk_button_link-type-text:hover {
	opacity: .6;
}
.vk_button .has-text-color.vk_button_link-type-text:hover .vk_button_link_txt {
	text-decoration: none;
}
@media screen and (min-width: 1400px) and (max-width: 1570px) {
	.pillar_white_box_international_list br.br_pc {
		display: block;
	}
}
@media screen and (max-width: 1680px){
	.pillar_column {
		--gap: 5.2%;
	}
	.pillar_item_box_top_text {
		font-size: 16px;
	}
}
@media screen and (max-width: 1500px){
	.pillar_white_box_international_task_column {
		--gap: 4%;
	}
	.pillar_white_box_international_task_column > .row > .wp-block-vk-blocks-grid-column-item {
		min-width: 16rem;
	}
	.pillar_white_box_international_list {
		margin-top: 2rem;
	}
	.pillar_white_box_international_task_item_body {
		font-size: 20px;
	}
}
@media screen and (max-width: 1200px){
	.pillar_white_box_international_list ul li + li {
		margin-top: 12px;
	}
}
@media screen and (max-width: 1024px){
	.page_pillar_container {
		padding-top: 5.9rem;
		padding-bottom: 3rem;
	}
	.page_pillar_container_bg_img {
		width: 93%;
	}
	.pillar_column {
		--side: 1.8rem;
		max-width: 500px;
		margin-top: 4.1rem;
	}
	.pillar_column .pillar_item {
		width: 100%;
		min-width: unset;
	}
	.pillar_column .pillar_item > .vk_gridColumn_item_inner {
		padding: 0 var(--side) 2.4rem;
	}
	.pillar_column .pillar_item > .vk_gridColumn_item_inner > p {
		line-height: 1.65;
	}
	.pillar_item .pillar_item_num {
		font-size: 20px;
		top: -1.45em;
	}
	.pillar_item_box_top_text {
		font-size: 15px;
	}
	.pillar_item_box_top_title {
		font-size: 22px;
	}
	
	.pillar_white_box {
		padding: 3.4rem 3rem 1.5rem;
	}
	.pillar_white_box_title {
		font-size: 26px;
	}
	.pillar_white_box_subtitle {
		font-size: 18px;
	}
	.pillar_white_box_leader_maker_title {
		font-size: 30px;
	}
	.pillar_white_box_leader_maker_column {
		margin-top: 2.3rem;
	}
	.pillar_white_box_leader_maker {
		margin-top: 3.5rem;
	}
	
	.pillar_white_box_international_list {
		margin-top: 1.3rem;
	}
	
	.pillar_white_box_international_task_column {
		--gap: 3%;
		--border-radius: 15px;
	}
	.pillar_white_box_international_task_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: calc((100% - var(--gap))/2);
		min-width: unset;
	}
	.pillar_white_box_international_task_title,
	.pillar_white_box_international_task_item_title .wp-block-heading {
		font-size: 20px;
	}
	.pillar_white_box_international_task_item_body {
		font-size: 16px;
	}
	.pillar_white_box_international_task_item_body .pillar_white_box_international_task_item_title_sub {
		font-size: 15px;
		margin-bottom: .5rem;
	}
	.pillar_white_box_international_task_item_body ul + .pillar_white_box_international_task_item_title_sub {
		margin-top: .5rem;
	}
	.pillar_white_box_international_task_item_title p {
		font-size: 14px;
		margin-top: .3rem;
	}
	
	.program_column {
		font-size: 16px;
		margin-top: 0;
	}
	.program_column > .row > .program_item {
		padding: 2.3rem 0;
	}
	.program_item_title {
		padding: .6rem .7rem 0;
		margin-bottom: .7rem;
	}
	.program_item_title::before {
		width: 4rem;
	}
	.program_item_title_title {
		font-size: 20px;
	}
	.program_item_title_numBox {
		font-size: 14px;
	}
	
	.program_detail_content {
		font-size: 14px;
		padding: 0 1.5rem;
	}
	.program_detail_content.open {
		padding: 1.5rem;
	}
	.attention_item {
		font-size: 14px;
		padding: 1.5rem;
	}
	.attention_item .vk_button {
		font-size: 14px;
	}
}
@media screen and (max-width: 767px){
	.pillar_white_box {
		padding: 3.4rem 1.5rem 1.5rem;
	}
	.pillar_white_box_title {
		font-size: 22px;
	}
	.pillar_white_box_leader_maker_title {
		font-size: 24px;
	}
	.pillar_white_box_subtitle {
		font-size: 16px;
	}
	.pillar_white_box_leader_maker_column {
		--gap: 3%;
		width: 80%;
		margin-left: auto;
		margin-right: auto;
	}
	.pillar_white_box_leader_maker_column > .row {
		justify-content: center;
	}
	.pillar_white_box_leader_maker_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: 100%;
		max-width: 300px;
	}
	
	.pillar_white_box_international_task_column {
		margin-top: 0;
	}
	.pillar_white_box_international_task_column > .row {
		gap: 1.5rem var(--gap);
	}
	.pillar_white_box_international_task_column > .row > .wp-block-vk-blocks-grid-column-item {
		width: 100%;
	}
	.pillar_white_box_international_task_title,
	.pillar_white_box_international_task_item_title .wp-block-heading {
		font-size: 18px;
	}
	.pillar_white_box_international_task_item_body ul {
		text-align: left;
		padding-right: 0;
	}
	.pillar_white_box_international_task_item_body ul li {
		text-indent: 0;
	}
	
	.pillar_white_box_program {
		margin-top: 4.7rem;
	}
	.program_column > .row > .program_item:first-child {
		padding-top: 0;
	}
	.program_item_title > .wp-block-group__inner-container {
		flex-wrap: wrap;
		gap: 0 1.55rem;
	}
	.program_item_title {
		width: calc(100% + 1.4rem);
		max-width: unset;
		margin-left: -0.7rem;
	}
	.program_item_title::before {
		width: 3.5rem;
	}
	.pillar_item_box_top_text {
		font-size: 14px;
	}
	.program_item_title_title {
		line-height: 1.3;
		width: 100%;
	}
	.program_item_title_numBox {
		font-size: 12px;
	}
	.program_item > p {
		font-size: 15px;
		line-height: 1.6;
	}
	.pillar_white_box_international_task_item_title,
	.pillar_white_box_international_task_item_body {
		height: auto;
	}
	
	.program_detail_content {
		padding: 0 1rem;
	}
	.program_detail_content.open {
		padding: 1rem;
	}
	.attention_item {
		padding: 1rem;
	}
}

/* page_org_container */
.page_org_container {
	position: relative;
	padding-top: 7.2rem;
	padding-bottom: 9.25rem;
}
.page_org_container::before {
	content: '';
	display: block;
	position: absolute;
	width: 59.1vw;
    right: -8.58vw;
    bottom: -7.75vw;
	background-image: url('../../../wp-content/uploads/2025/04/earth.webp');
	background-repeat: no-repeat;
	background-size: contain;
	aspect-ratio: 295 / 282;
}
.org_inner {
	margin-top: 3rem;
}
.org_inner > .wp-block-group__inner-container {
	max-width: 995px !important;
}
.org_sub_title {
	font-size: 22px;
	font-weight: 600;
	line-height: 1.2;
	letter-spacing: .076em;
	text-indent: .076em;
	padding: .3rem 2rem;
}
.org_sub_title strong {
	font-family: "Poppins", "Zen Kaku Gothic New", sans-serif;
	font-weight: 600;
}
.org_sub_title em {
	font-style: normal;
	font-size: .72em;
	margin-left: 14px;
}
.org_item {
	position: relative;
	padding-top: 1.1rem;
	margin-bottom: 0;
}
.org_item + .org_item {
	margin-top: 2.1rem;
}
.org_sub_title + .org_item {
	margin-top: 3.1rem;
}
.org_item .vk_borderBox_title_container {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	background-color: #fff !important;
	padding: 0 1.4em;
}
.org_item .vk_borderBox_title_container i {
	display: none;
}
.org_item .vk_borderBox_title_container .vk_borderBox_title {
	color: var(--main-color);
	font-family: "Poppins", "Zen Kaku Gothic New", sans-serif;
	font-size: 22px;
	letter-spacing: .08em;
}
.org_item.community2 .vk_borderBox_title_container .vk_borderBox_title {
	color: #c9a82a;
}
.org_item.community3 .vk_borderBox_title_container .vk_borderBox_title {
	color: #b60005;
}
.org_item.academia .vk_borderBox_title_container .vk_borderBox_title {
	color: #754dd1;
}
.org_item .vk_borderBox_title_container .vk_borderBox_title strong {
	font-size: 1.55em;
    font-weight: 600;
	line-height: 1;
}
.org_item .vk_borderBox_body {
	background-color: #fff;
	text-align: center;
	padding: 2.35rem 2rem 2rem;
	border-width: 2px;
	border-radius: 20px;
}
.org_item_sub {
    display: inline-block;
    line-height: 1;
    letter-spacing: .06em;
	padding: .1em .5em .25em;
	margin: 0 auto 1.36rem;
}
.org_item_list,
.org_item_list li {
	list-style: none;
	padding: 0;
	margin: 0;
}
.org_item_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.2em .73em;
}
.org_item_list li {
	position: relative;
	line-height: 1;
    letter-spacing: .08em;
	padding-left: 1em;
	text-align: left;
}
.org_item_list li::before {
	content: '・';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.org_item_logo,
.org_item_logo.wp-block-image figure,
.org_item_logo.wp-block-image figure img,
.org_item_logo_top,
.org_item_logo_top.wp-block-image figure,
.org_item_logo_top.wp-block-image figure img {
	width: 100%;
	vertical-align: bottom;
	margin-bottom: 0;
}
.org_item_logo {
	margin: 1.6rem auto 0;
}
.org_item.community1 .org_item_logo {
	width: 77%;
}
.org_item.community2 .org_item_logo {
	width: 91.8%;
}
.org_item.community3 .org_item_logo {
	width: 97%;
}
.org_item.academia .org_item_logo {
	width: 100%;
	margin-top: 0;
}
.org_item.academia .org_item_sub {
	margin-bottom: .7rem;
}
.org_item_logo_top {
    width: 22rem;
	max-width: 100%;
	margin: 1rem auto 1.5rem !important;
}
@media screen and (max-width: 1024px){
	.page_org_container {
		padding-top: 3.2rem;
	}
	.org_item .vk_borderBox_body {
		border-radius: 15px;
	}
	.org_sub_title {
		font-size: 18px;
	}
}
@media screen and (max-width: 767px){
	.page_org_container {
		padding-bottom: 6.25rem;
	}
	.org_inner {
		margin-top: 2rem;
	}
	.org_item .vk_borderBox_title_container {
		text-align: center;
		width: 80%;
		padding: 0 1em;
	}
	.org_item .vk_borderBox_title_container .vk_borderBox_title strong {
		font-size: 1.3em;
	}
	.org_item .vk_borderBox_body {
		padding: 2.35rem 1.5rem 2rem;
	}
	.org_item_sub {
		line-height: 1.3;
	}
	.org_item_list {
		justify-content: flex-start;
		gap: .5em .73em;
	}
	.org_item_list li {
		line-height: 1.3;
	}
	.org_item .org_item_logo {
		width: 100% !important;
	}
	.org_item.community1 .org_item_logo {
		width: 80% !important;
	}
}

/* page_staff_container */
.page_staff_container {
	padding-top: 7.3rem;
	padding-bottom: 11.3rem;
}
.page_staff_inner > .wp-block-group__inner-container {
	max-width: 995px !important;
}
.page_staff_column {
	--gap: 6.5%;
	margin-top: 4.15rem;
}
.page_staff_column > .row {
	gap: 1.85rem var(--gap);
	margin-left: 0;
	margin-right: 0;
}
.page_staff_column .staff_item {
	-ms-flex: 0 1 auto;
	flex: 0 1 auto;
	width: calc((100% - var(--gap)*3)/4);
	max-width: unset;
	padding: 0;
}
.staff_item_img,
.staff_item_img img {
	width: 100%;
	margin-bottom: 0;
	vertical-align: bottom;
}
.staff_item_name {
	font-size: 18px;
	padding: 0 .7rem;
	margin-top: .55rem;
}
.staff_item_name > .wp-block-group__inner-container {
	display: flex;
	flex-wrap: wrap;
	gap: .6rem .8rem;
}
.staff_item_name_role {
    font-size: .77em;
	line-height: 1;
    letter-spacing: .09em;
    padding: .4em .5em .25em;
}
.staff_item_name_text {
	color: var(--main-color);
	font-weight: 600;
	line-height: 1.3;
}
@media screen and (max-width: 1024px){
	.page_staff_container {
		padding-top: 3.3rem;
		padding-bottom: 6.3rem;
	}
	.page_staff_column {
		margin-top: 2.15rem;
	}
	.page_staff_column .staff_item {
		width: calc((100% - var(--gap)*2)/3);
	}
	.staff_item_name {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px){
	.page_staff_column .staff_item {
		width: calc((100% - var(--gap))/2);
	}
	.staff_item_name {
		padding: 0 .3rem;
	}
}



/* -----------------------------------------
 	アーカイブページ
-----------------------------------------*/
body.blog .site-body,
body.archive .site-body {
	padding-top: 0;
}
body.blog .main-section,
body.archive .main-section {
    max-width: 1200px;
	margin-left: auto;
    margin-right: auto;
}
body.blog .title_box,
body.archive .title_box {
	margin-bottom: 3.84rem;
}
body.blog .vk_posts.vk_posts-layout-card,
body.archive .vk_posts.vk_posts-layout-card {
	margin-left: 0;
	margin-right: 0;
}
body.blog .vk_posts.vk_posts-layout-card .card,
body.archive .vk_posts.vk_posts-layout-card .card {
	width: calc(100%/3);
	margin-bottom: 3.3rem;
}
body.blog .vk_posts.vk_posts-layout-card .card::after,
body.archive .vk_posts.vk_posts-layout-card .card::after {
	content: '';
	display: none;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 2px;
	background-color: var(--main-color);
}
body.blog .vk_posts.vk_posts-layout-card .card:nth-child(3n-2)::after,
body.blog .vk_posts.vk_posts-layout-card .card:nth-child(3n+1)::after,
body.archive .vk_posts.vk_posts-layout-card .card:nth-child(3n-2)::after,
body.archive .vk_posts.vk_posts-layout-card .card:nth-child(3n+1)::after {
	display: block;
}
body.blog .vk_posts.vk_posts-layout-card .card::before,
body.blog .vk_posts.vk_posts-layout-card .card::after,
body.archive .vk_posts.vk_posts-layout-card .card::before,
body.archive .vk_posts.vk_posts-layout-card .card::after {
	height: 100%;
}
.archive-header .archive-header-title {
	color: var(--main-color) !important;
	text-align: center;
}
.pagination {
	margin-top: 2.75rem;
	margin-bottom: 1.7rem;
}
ul.page-numbers li {
	margin: 0 5px;
	overflow: visible;
}
ul.page-numbers li .page-numbers {
	font-family: "Poppins", sans-serif;
	color: var(--main-color);
	background-color: transparent;
	line-height: 1;
	border: none;
}
ul.page-numbers li span.page-numbers.current {
	color: var(--main-color);
	background-color: #D8E3FF;
}
ul.page-numbers li a,
ul.page-numbers li span.page-numbers {
	display: flex;
    justify-content: center;
    align-items: center;
	font-size: 22px;
    width: 35px;
    height: 35px;
	border: none;
	border-radius: 50% !important;
}
ul.page-numbers li a.next,
ul.page-numbers li a.prev {
	font-size: 1.6em;
}
@media screen and (max-width: 1024px){
	ul.page-numbers li a,
	ul.page-numbers li span.page-numbers {
		font-size: 20px;
		width: 33px;
		height: 33px;
	}
}
@media screen and (max-width: 991px){
	body.blog .vk_posts.vk_posts-layout-card .card,
	body.archive .vk_posts.vk_posts-layout-card .card {
		width: calc(100%/2);
	}
	body.blog .vk_posts.vk_posts-layout-card .card:nth-child(3n-2)::after,
	body.blog .vk_posts.vk_posts-layout-card .card:nth-child(3n+1)::after,
	body.archive .vk_posts.vk_posts-layout-card .card:nth-child(3n-2)::after,
	body.archive .vk_posts.vk_posts-layout-card .card:nth-child(3n+1)::after {
		display: none;
	}
	body.blog .vk_posts.vk_posts-layout-card .card:nth-child(odd)::after,
	body.archive .vk_posts.vk_posts-layout-card .card:nth-child(odd)::after {
		display: block;
	}
}
@media screen and (max-width: 767px){
	body.blog .title_box,
	body.archive .title_box {
		margin-bottom: 1.84rem;
	}
	.vk_posts.vk_posts-layout-card {
		--card-side: 1.2rem;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-date,
	.vk_posts.vk_posts-layout-card .card-body .card-text {
		font-size: 14px;
	}
	.vk_posts.vk_posts-layout-card .card-body .card-title a {
		font-size: 16px;
	}
	body.blog .vk_posts.vk_posts-layout-card .card,
	body.archive .vk_posts.vk_posts-layout-card .card {
		width: 100%;
		padding-bottom: 25px;
		margin-bottom: 20px;
	}
	body.blog .vk_posts.vk_posts-layout-card .card::before,
	body.archive .vk_posts.vk_posts-layout-card .card::before {
		right: auto;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 2px;
	}
	body.blog .vk_posts.vk_posts-layout-card .card:nth-child(odd)::after,
	body.archive .vk_posts.vk_posts-layout-card .card:nth-child(odd)::after {
		display: none;
	}
	ul.page-numbers li {
		margin: 0 3px;
	}
	ul.page-numbers li a,
	ul.page-numbers li span.page-numbers {
		font-size: 18px;
		width: 30px;
		height: 30px;
	}
}



/* -----------------------------------------
 	アーカイブページ（ギャラリー）
-----------------------------------------*/
body.post-type-archive,
body.post-type-alumni,
body.post-type-ambassador {
	position: relative;
	overflow: hidden;
}
body.post-type-archive::before,
body.post-type-alumni::before,
body.post-type-ambassador::before {
	content: '';
    display: block;
    position: absolute;
    width: 59.1vw;
    right: -8.58vw;
    top: 0;
    background-image: url(../../../wp-content/uploads/2025/04/earth.webp);
    background-repeat: no-repeat;
    background-size: contain;
    aspect-ratio: 295 / 282;
	opacity: .4;
}
body.post-type-alumni.single-alumni::before,
body.post-type-ambassador.single-ambassador::before {
	display: none;
}



/* -----------------------------------------
 	投稿
-----------------------------------------*/
body.single .main-section {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.thumbnail_box,
.thumbnail_box img {
	width: 100%;
	vertical-align: bottom;
}
.thumbnail_box img {
	object-fit: cover;
	aspect-ratio: 44 / 25;
}
.thumbnail_box {
	margin-bottom: 2.1rem;
}
body.single .entry-header {
	display: flex;
	flex-direction: column;
	color: var(--main-color);
	margin-bottom: 2.65rem;
}
body.single .entry-header .entry-title {
	font-size: 22px;
    line-height: 1.3;
    letter-spacing: .035em;
/*     margin-top: 1.6rem; */
    margin-top: .6rem;
	margin-bottom: 0;
}
body.single .entry-header .entry-meta {
	order: -1;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: .125em;
}
body.single .entry-header .entry-meta i {
	display: none;
}
body.single .entry-body p {
	line-height: 1.98;
}
.entry-footer {
	display: none !important;
}
.single_navigation {
	display: flex;
	justify-content: space-between;
    padding-top: 1.15rem;
	margin-top: 2rem;
	margin-bottom: 2rem !important;
	border-top: 2px solid var(--main-color);
}
.single_navigation .prev_post_link,
.single_navigation .next_post_link {
	font-size: 17px;
	letter-spacing: -0.06em;
}
.single_navigation .prev_post_link span,
.single_navigation .next_post_link span {
	position: relative;
}
.single_navigation .arrow_img {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	width: 1.2em;
	margin: 0;
	user-select: none;
	pointer-events: none;
	transition: all .3s;
}
.single_navigation .prev_post_link .arrow_img {
	transform: translateY(-50%) scale(-1, 1);
    -webkit-transform: translateY(-50%) scale(-1, 1);
    -ms-transform: translateY(-50%) scale(-1, 1);
}
.single_navigation span a {
	color: var(--main-color);
	transition: all .3s;
}
.single_navigation span:hover a,
.single_navigation span:hover .arrow_img {
	opacity: .5;
}
.single_navigation .prev_post_link span:hover .arrow_img {
	left: -5px;
}
.single_navigation .next_post_link span:hover .arrow_img {
	right: -5px;
}
.single_navigation .prev_post_link span a {
	padding-left: 1.9em;
}
.single_navigation .prev_post_link span .arrow_img {
	left: 0;
}
.single_navigation .next_post_link span a {
	padding-right: 1.9em;
}
.single_navigation .next_post_link span .arrow_img {
	right: 0;
}
.veu_relatedPosts.veu_contentAddSection {
	display: none !important;
}
@media screen and (max-width: 1024px){
	body.single .entry-header {
		margin-bottom: 1.8rem;
	}
	body.single .entry-header .entry-title {
		font-size: 20px;
		margin-top: .7rem;
	}
	.single_navigation .prev_post_link,
	.single_navigation .next_post_link {
		font-size: 15px;
	}
	.single_navigation .arrow_img {
		top: 60%;
		width: 1em;
	}
	.single_navigation .prev_post_link span a {
		padding-left: 1.5em;
	}
	.single_navigation .next_post_link span a {
		padding-right: 1.5em;
	}
}
@media screen and (max-width: 767px){
	h1.entry-title {
		font-size: 22px;
	}
	.single_navigation .prev_post_link,
	.single_navigation .next_post_link {
		font-size: 13px;
	}
}



/* -----------------------------------------
 	お問い合わせ
-----------------------------------------*/
.page_contact_container {
	padding-top: 0;
	padding-bottom: 4rem;
}
.page_contact_container .title_box {
	margin-bottom: 2.2rem;
}
.page_contact_box {
/* 	max-width: 713px; */
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
.contact_form_list {
	list-style: none;
	padding-left: 0;
	margin: 0;
	margin-block-end: 0 !important;
}
.contact_form_list > li {
	margin: 0;
}
.contact_form_list > li.type {
	margin-bottom: 2.3rem;
}
.contact_form_list > li + li {
	margin-top: 1.35rem;
}
.contact_form_list .form_title {
	display: flex;
	align-items: center;
	font-weight: 600;
	letter-spacing: .03em;
	margin-block-end: .8rem !important;
}
.contact_form_list li.type .form_title {
	margin-block-end: 1.2rem !important;
}
.contact_form_list .form_title .imp {
	display: block;
	color: #fff;
	background-color: #e60012;
	font-size: .78em;
	font-weight: 500;
	line-height: 1;
	padding: .2em .45em .3em;
    margin-left: 1.6em;
	border-radius: 5px;
}
.contact_form_list .wpcf7-radio {
	display: flex;
	flex-wrap: wrap;
	gap: 5px 3.2rem;
}
.contact_form_list .wpcf7-list-item {
	font-size: .89em;
	line-height: 1.5;
	letter-spacing: .025em;
	margin-left: 0;
}
.contact_form_list .wpcf7-list-item > label {
	display: flex;
	align-items: flex-start;
}
.contact_form_list .wpcf7-list-item input[type="radio"] {
	flex-shrink: 0;
	width: 1.6em;
	height: 1.6em;
	margin: 0;
	margin-top: .2em;
	margin-right: .9em;
}
input[type=date],
input[type=email],
input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=url],
select,
textarea {
	background-color: #f1f9fa;
	font-size: 1em;
	padding: 1.14em .8em;
	margin-bottom: 0;
	border: 1px solid #7d7d7d;
}
textarea {
	resize: none;
}
.wpcf7-not-valid-tip {
	font-size: .88em;
}
.privacy_policy {
	font-size: 13.5px;
	margin-top: 1.65rem;
	text-align: center;
}
.privacy_policy p {
	margin-bottom: 0;
	margin-block-end: 1.6rem !important;
}
.privacy_policy p:last-child {
	margin-block-end: 0 !important;
}
.privacy_policy .wpcf7-form-control-wrap {
	display: block;
}
.privacy_policy .wpcf7-acceptance {
	font-size: 18px;
}
.privacy_policy .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}
.privacy_policy .wpcf7-acceptance .wpcf7-list-item > label {
	display: flex;
	align-items: flex-start;
	gap: .6em;
}
.privacy_policy .wpcf7-acceptance .wpcf7-list-item input[type="checkbox"] {
	width: 1.55em;
    height: 1.55em;
	margin: 0;
	border-radius: 0;
}
.privacy_policy .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label {
	line-height: 1;
}
.submit_btn {
	text-align: center;
	margin-top: 1rem;
}
.submit_btn input.wpcf7-submit {
	background-color: var(--main-color);
	font-size: 18px;
    font-weight: 300;
    letter-spacing: .07em;
    min-width: 14.3em;
	padding: .67em 1em;
	border: none;
	border-radius: 100px;
	transition: all .3s;
}
.submit_btn input.wpcf7-submit:not([disabled]):hover {
	background-color: var(--main-color);
	opacity: .7;
}
.submit_btn input.wpcf7-submit[disabled] {
	opacity: .3;
}
.submit_btn .wpcf7-spinner {
	display: none !important;
}

.grecaptcha-badge,
body.page-id-27 .page_top_btn {
	display: none !important;
}
body.page-id-27 .grecaptcha-badge {
	display: block !important;
}
@media screen and (max-width: 1024px){
	.white_box.contact_box {
		padding: 3.15rem 3.3rem 3.7rem;
	}
	input[type=date],
	input[type=email],
	input[type=number],
	input[type=password],
	input[type=tel],
	input[type=text],
	input[type=url],
	select,
	textarea {
		padding: .7em .8em;
	}
}
@media screen and (max-width: 767px){
	.page_contact_container {
		padding-bottom: 6rem;
	}
	.contact_form_list .form_title,
	.contact_form_list li.type .form_title {
		margin-block-end: .7rem !important;
	}
	.contact_form_list .form_title .imp {
		margin-left: .9em;
	}
	.contact_form_list .wpcf7-radio {
		flex-direction: column;
	}
}



/* -----------------------------------------
 	プライバシーポリシー
-----------------------------------------*/
.privacy_container {
	padding-top: 0;
}
.privacy_container > div > .vk_outer_container {
	max-width: 1000px !important;
}



/* -----------------------------------------
 	アニメーション
-----------------------------------------*/
/* FVテキスト */
.fv_container .fv_text_box.active p::before {
	animation: text-mask-bg 1.6s cubic-bezier(0.8, 0, 0.170, 1);
	animation-delay: .5s;
}
.fv_container .fv_text_box.active p:nth-child(2)::before {
	animation-delay: .8s;
}
.fv_container .fv_text_box.active p strong {
	display: inline-block;
	animation: text-opacity 1s cubic-bezier(0.8, 0, 0.170, 1);
	animation-fill-mode: forwards;
	animation-delay: 1.7s;
}
.fv_container .fv_text_box.active p:nth-child(2) strong {
	animation-delay: 2s;
}
@keyframes text-mask-bg {
	0% { transform: translate(-103%, 0) }
	40%, 60% { transform: translate(0%, 0) }
	100% { transform: translate(103%, 0) }
}
@keyframes text-opacity {
	0% { opacity: 0; transform: translateX(-7px); }
	100% { opacity: 1; transform: translateX(0); }
}

/* FV画像アニメーション */
.ani_trigger.img_ani,
.ani_trigger.img_ani figure {
	position: relative;
	overflow: hidden;
}
.ani_trigger.img_ani img,
.ani_trigger.img_ani figure img {
	opacity: 0;
	transition: opacity 0ms 450ms;
}
.ani_trigger.img_ani::before,
.ani_trigger.img_ani figure::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--main-color);
	transform: translate(-103%, 0);
	z-index: 5;
}
.ani_trigger.active.img_ani img,
.ani_trigger.active.img_ani figure img {
	opacity: 1;
}
.ani_trigger.active.img_ani::before,
.ani_trigger.active.img_ani figure::before {
	animation: img-mask-bg 1.6s cubic-bezier(0.8, 0, 0.170, 1);
}
@keyframes img-mask-bg {
	0% { transform: translate(-103%, 0) }
	40%, 60% { transform: translate(0%, 0) }
	100% { transform: translate(103%, 0) }
}

/* About画像アニメーション */
.about_column_img.ani_trigger.active figure:nth-child(1) {
	animation: fadeIn1 1s ease-out 0.3s forwards;
}
.about_column_img.ani_trigger.active figure:nth-child(2) {
	animation: fadeIn2 1s ease-out 1.1s forwards;
}
.about_column_img.ani_trigger.active figure:nth-child(3) {
	animation: fadeIn3 1s ease-out 2s forwards;
}
@keyframes fadeIn1 {
  0% {
    opacity: 0;
    transform: translate(-5%, -15%) rotate(-30deg);
  }
  100% {
    opacity: 1;
    transform: translate(-5%, -7%) rotate(-20deg);
  }
}
@keyframes fadeIn2 {
  0% {
    opacity: 0;
    transform: translate(0%, -15%) rotate(-10deg);
  }
  100% {
    opacity: 1;
    transform: translate(0%, 0%) rotate(0deg);
  }
}
@keyframes fadeIn3 {
  0% {
    opacity: 0;
    transform: translate(0.4%, -15%) rotate(25deg);
  }
  100% {
    opacity: 1;
    transform: translate(0.4%, 0%) rotate(12deg);
  }
}

/* フワッとアニメーション */
.ani_trigger.ani_fadeUp {
	opacity: 0;
}
.ani_fadeUp.active {
	animation: fadeUp .75s ease-in-out 1 normal forwards;
}
.ani_fade.active {
	animation: fade .7s ease-out 1 normal forwards;
}
@keyframes fade {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes fadeUp {
  from { opacity: 0; transform: translateY(150px); }
  to { opacity: 1; transform: translateY(0); }
}



/* -----------------------------------------
 	アルムナイ
-----------------------------------------*/
/* アーカイブページ */
.alumni_search_box .vkfs__labels {
	gap: 15px;
}
.alumni_search_box button[type="submit"] {
	display: none !important;
}
.alumni_search_box .vkfs__outer-wrap {
	margin: 0;
	display: flex;
	gap: 15px 25px;
}
.alumni_search_box .vkfs__label-name {
	min-width: 120px;
	flex-shrink: 0;
	font-size: 20px;
    padding-left: 10px;
    border-left: 5px solid var(--main-color);
}
#vkfs_program,
#vkfs_appointment-year,
#vkfs_case-cat {
	justify-content: flex-start;
	gap: 5px 10px;
}
#vkfs_program li,
#vkfs_appointment-year li,
#vkfs_case-cat li {
	flex-basis: auto !important;
	padding: 0;
}
#vkfs_program.vkfs__input-wrap li:last-child,
#vkfs_appointment-year.vkfs__input-wrap li:last-child,
#vkfs_case-cat.vkfs__input-wrap li:last-child {
	flex-grow: 0;
}
#vkfs_program li label,
#vkfs_appointment-year li label,
#vkfs_case-cat li label {
	padding: 3px 15px;
    border: 1px solid var(--main-color);
    border-radius: 999px;
    font-weight: bold;
    background: #fff;
	color: var(--main-color);
	transition: all .3s;
	overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
#vkfs_program li label:hover,
#vkfs_appointment-year li label:hover,
#vkfs_case-cat li label:hover {
	color: #fff;
	background: var(--main-color);
}
#vkfs_program li input,
#vkfs_appointment-year li input,
#vkfs_case-cat li input {
	display: none;
}
.alumni_year_box #vkfs_graduation-year {
	max-width: 250px;
    border-radius: 9999px;
    border: 1px solid var(--main-color);
    color: var(--main-color);
    font-weight: bold;
    text-align: center;
}
.post-type-alumni .archive-header,
.post-type-ambassador .archive-header,
.post-type-case .archive-header {
	display: none;
}

/* 記事 */
.post-type-alumni .vk_post_title,
.post-type-alumni .vk_post_taxonomies,
.post-type-ambassador .vk_post_title,
.post-type-ambassador .vk_post_taxonomies {
	display: none;
}
.vk_post-postType-alumni {
	padding: 16px 10px !important;
	border: 2px solid var(--main-color) !important;
	border-radius: 10px !important;
	cursor: pointer;
	transition: box-shadow 0.25s, transform 0.2s;
	background: #fff !important;
}
.vk_post-postType-alumni:hover {
/* 	opacity: .7; */
	box-shadow: 0 6px 24px rgba(26, 35, 126, 0.10);
    transform: translateY(-3px);
}
.vk_post-postType-alumni .vk_post_body {
	padding-top: 0;
}
.alumni_card {
	display: flex;
	gap: 16px;
}
.alumni_img {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: 72px;
	height: 72px;
	background: var(--main-color);
	border-radius: 50%;
	border: 1px solid var(--main-color);
	overflow: hidden;
}
.alumni_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}
.alumni_content {
	flex: 100%;
}
.alumni_img_name {
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 0.05em;
	margin-bottom: 0;
}
.alumni_name_box p {
	margin-bottom: 0;
}
.alumni_name {
	font-size: 24px;
    font-weight: bold;
    color: var(--main-color);
    line-height: 1.3;
}
.alumni_name_en {
	font-size: 12px;
    color: #666;
    letter-spacing: 0.04em;
}
.alumni_tags {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	padding: 10px 0;
/* 	border-top: 1px solid #ddd; */
	border-bottom: 1px solid #ddd;
	margin-bottom: 10px;
}
.alumni_tags.case {
	padding-top: 0;
	margin-top: 0;
	border: none;
}
.alumni_tag {
	font-size: 12px;
	color: var(--main-color) !important;
	background: #e8eaf6;
	padding: 2px 8px;
	border-radius: 999px;
	
	overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.alumni_tags.case .alumni_tag {
	background: #fce4ec;
    color: #8c1a3a !important;
}
.alumni_tag_year {
	background: #f5edcc;
    color: #7b5c00 !important;
}
.alumni_about_table {
	border: none;
}
.alumni_about_table th,
.alumni_about_table td {
	display: block;
	font-size: 14px;
	width: 100%;
	padding: 6px 0;
    text-align: left;
	border: none;
	vertical-align: top;
}
.alumni_about_table th {
	font-weight: bold;
	padding-bottom: 0;
}
.alumni_about_table td {
	color: #666;
	padding-top: 3px;
}

/* 詳細ページ */
body.single.single-alumni,
body.single.single-ambassador,
body.single.single-case {
	overflow: visible;
}
body.single.single-alumni .thumbnail_box,
body.single.single-alumni .entry-header,
body.single.single-ambassador .thumbnail_box,
body.single.single-ambassador .entry-header,
body.single.single-case .thumbnail_box,
body.single.single-case .entry-header {
	display: none;
}
body.single.single-alumni .entry-body p,
body.single.single-ambassador .entry-body p {
	line-height: 1.6;
}
.alumni_single_box {
	display: flex;
	align-items: flex-start;
	gap: 40px;
	margin-bottom: 6rem;
}
.alumni_profile_box {
	position: sticky;
	top: 30px;
	left: 0;
	max-width: 260px;
	width: 100%;
	flex-shrink: 0;
}
.alumni_single_box.case .alumni_profile_box {
	padding: 1.2rem;
    border: 1px solid #ddd;
    border-radius: 8px;
}
.alumni_profile_img {
	position: relative;
	width: 100%;
	aspect-ratio: 1 / 1;
	background: linear-gradient(135deg, #e8eaf6 0%, #c5cae9 100%);
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 10px;
}
.alumni_profile_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}
.alumni_profile_img_name {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
    height: 80px;
	background: var(--main-color);
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.05em;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 0;
	border-radius: 50%;
}
.alumni_sns_box {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #ddd;
}
.alumni_sns_box a {
	display: block;
	width: 40px;
	transition: opacity .3s;
}
.alumni_sns_box a:hover {
	opacity: .7;
}
.alumni_item + .alumni_item {
	padding-top: 2.5rem;
	margin-top: 2.5rem;
	border-top: 1px solid #ddd;
}
.alumni_title {
	border-bottom: none;
	padding: 0 0 0 10px;
	font-size: 24px;
	color: var(--main-color);
	border-left: 3px solid #b5972a;
	margin-bottom: 15px;
}
.alumni_title::after {
	display: none;
}
.alumni_text {
	margin-bottom: 0;
	font-size: 16px;
}
.alumni_list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 15px;
	list-style: none;
	padding-left: 0;
	padding-top: .5rem;
}
.alumni_list li {
	color: var(--main-color) !important;
    background: #e8eaf6;
    padding: 2px 15px;
	margin: 0;
    border-radius: 999px;
}
.alumni_message {
	padding: 1.25rem;
	background: #f0f2ff;
	border-left: 3px solid var(--main-color);
}
.alumni_img_list {
	display: flex;
	gap: 1rem 3.5%;
	padding-left: 0;
	padding-top: .5rem;
	list-style: none;
}
.alumni_img_list li {
	width: 31%;
	margin: 0;
}
.alumni_img_list li img {
	background: #f0f2ff;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	vertical-align: bottom;
	border: 2px solid var(--main-color);
    border-radius: 10px;
}
@media screen and (max-width: 1600px) {
	.vk_post.vk_post-postType-alumni {
		width: calc(50% - 30px);
	}
}
@media screen and (max-width: 1024px) {
	.alumni_search_box .vkfs__label-name {
		font-size: 18px;
		min-width: 110px;
	}
	.alumni_card {
		flex-direction: column;
		gap: 6px;
	}
	.alumni_img {
		width: 120px;
		height: 120px;
		margin: 0 auto;
	}
	.alumni_name {
		font-size: 20px;
	}
	
	/* 詳細 */
	.alumni_single_box {
		gap: 25px;
		margin-bottom: 4rem;
	}
	.alumni_profile_box {
		max-width: 230px;
	}
	.alumni_profile_img {
		margin-bottom: 15px;
	}
	.alumni_sns_box a {
		width: 35px;
	}
	.alumni_item + .alumni_item {
		padding-top: 1.8rem;
		margin-top: 1.8rem;
	}
	.alumni_title {
		font-size: 20px;
	}
	.alumni_about_table th,
	.alumni_about_table td {
		font-size: 12px;
		padding: 4px 0;
	}
	.alumni_about_table th {
		padding-bottom: 0;
	}
	.alumni_about_table td {
		padding-top: 2px;
	}
	
	.alumni_list {
		gap: 8px 5px;
	}
	.alumni_list li {
		font-size: 13px;
		padding: 2px 10px;
	}
	
	.alumni_img_list {
		flex-wrap: wrap;
	}
	.alumni_img_list li {
		width: 48.25%;
	}
	.alumni_img_list li img {
		border-radius: 7px;
	}
}
@media screen and (max-width: 767px) {
	#vkfs_program,
	#vkfs_appointment-year,
	#vkfs_case-cat {
		gap: 3px 5px;
	}
	.vk_post.vk_post-postType-alumni {
		width: 100%;
	}
	.alumni_search_box .vkfs__labels {
		gap: 20px;
	}
	.alumni_search_box .vkfs__outer-wrap {
		flex-wrap: wrap;
		gap: 5px;
	}
	.alumni_year_box #vkfs_graduation-year {
		width: 100%;
		max-width: unset;
	}
	.alumni_search_box .vkfs__label-name {
		width: 100%;
	}
	.vk_post-postType-alumni {
		margin-bottom: 2rem !important;
		border-radius: 5px !important;
	}
	
	/* 詳細 */
	.alumni_single_box {
		flex-wrap: wrap;
		margin-bottom: 3rem;
	}
	.alumni_profile_box {
		position: relative;
		top: 0;
		width: 100%;
		max-width: unset;
		margin-bottom: 1rem;
	}
	.ambassador_side_box,
	.alumni_single_box.case .alumni_profile_box {
		order: 1;
		padding: .7rem;
		margin-bottom: 0;
		border-radius: 5px;
	}
	.alumni_profile_img {
		max-width: 450px;
		margin: 0 auto;
		margin-bottom: 15px;
	}
	.alumni_title {
		font-size: 18px;
	}
	.alumni_text {
		font-size: 14px;
	}
	.alumni_message {
		padding: 1rem;
	}
}

/* -----------------------------------------
 	アンバサダー
-----------------------------------------*/
/* 記事 */
.vk_post-postType-ambassador {
	border-radius: 12px !important;
	border: 2px solid var(--main-color) !important;
	padding-bottom: 30px !important;
	cursor: pointer;
	transition: box-shadow 0.25s, transform 0.2s;
	background: #fff !important;
}
.vk_post-postType-ambassador:hover {
	box-shadow: 0 6px 24px rgba(26, 35, 126, 0.10);
    transform: translateY(-3px);
}
.vk_post-postType-ambassador .vk_post_body {
	padding-top: 0;
}
.ambassador_profile_img {
	position: relative;
	aspect-ratio: 1 / .6;
	margin-bottom: 16px;
	background: linear-gradient(135deg, #e8eaf6 0%, #c5cae9 100%);
}
.ambassador_profile_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}
.ambassador_img_name {
	width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--main-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    letter-spacing: 0.05em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.ambassador_tags {
	position: absolute;
	top: 12px;
	right: 12px;
}
.ambassador_tag {
	font-size: 12px;
	font-weight: bold;
	padding: 3px 10px;
	border-radius: 9999px;
	background: #b5972a;
	color: #fff !important;
	letter-spacing: 0.05em;
	text-indent: 0.05em;
	overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.ambassador_text_box {
	padding: 0 15px;
}
.ambassador_name_box p {
	margin-bottom: 0;
}
.ambassador_name {
	font-size: 24px;
    font-weight: bold;
    color: var(--main-color);
    line-height: 1.3;
}
.ambassador_name_en {
	font-size: 12px;
    color: #666;
    letter-spacing: 0.04em;
}
.ambassador_catchphrase {
	font-size: 15px;
	font-weight: bold;
	color: var(--main-color);
	padding-left: 5px;
	border-left: 3px solid #b5972a;
	margin: 10px 0 15px;
}
.ambassador_activities {
	font-size: 12px;
	color: #666;
	line-height: 1.5;
	margin-bottom: 0;
	border-top: 1px solid #ddd;
    padding-top: 10px;
}

/* 詳細ページ */
.ambassador_profile_content {
	background: linear-gradient(135deg, #1a237e 0%, #4a148c 100%);
	padding: 4rem 0;
	margin-bottom: 3rem;
}
.ambassador_profile_inner {
	max-width: 800px;
	width: 90%;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 3rem;
}
.ambassador_profile_content .ambassador_profile_img {
	max-width: 160px;
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	flex-shrink: 0;
	overflow: hidden;
	margin-bottom: 0;
	background: linear-gradient(135deg, #ede7f6 0%, #ce93d8 100%);
	border: 4px solid rgba(255, 255, 255, 0.3);
}
.ambassador_profile_img_name {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	color: var(--main-color);
	margin-bottom: 0;
}
.ambassador_profile_year {
	display: inline-block;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 14px;
    border-radius: 999px;
    background: #b5972a;
    color: #fff;
    letter-spacing: 0.08em;
    margin-bottom: 0;
}
.ambassador_year_box a {
    color: #fff !important;
}
.ambassador_profile_content .ambassador_name {
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.2;
	color: #fff;
}
.ambassador_profile_content .ambassador_name_en {
	font-size: 14px;
    font-weight: bold;
    opacity: 0.75;
    letter-spacing: 0.08em;
    margin-bottom: 16px;
    color: #fff;
}
.ambassador_profile_content .ambassador_catchphrase {
	font-size: 20px;
	color: #fff;
}
.ambassador_profile_content .ambassador_activities {
	font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.08em;
    color: #fff;
	border-top: none;
	padding-top: 0;
    opacity: 0.75;
}
.ambassador_single_box {
	display: flex;
    align-items: flex-start;
    gap: 40px;
    margin-bottom: 6rem;
}
.ambassador_side_box {
    position: sticky;
    top: 30px;
    left: 0;
    max-width: 260px;
    width: 100%;
    flex-shrink: 0;
	padding: 1.2rem;
	border: 1px solid #ddd;
	border-radius: 8px;
}
.ambassador_side_title {
	font-weight: bold;
	margin-bottom: 0;
}
.ambassador_side_box .ambassador_profile_year {
	font-size: 15px;
	background: transparent;
	padding: 0;
	color: #000;
	border-radius: 0;
    font-weight: 500;
}
.ambassador_awards {
	font-size: 16px;
}
@media screen and (max-width: 1600px) {
	.vk_post.vk_post-postType-ambassador {
		width: calc(50% - 30px);
	}
	.ambassador_name {
		font-size: 20px;
	}
	.ambassador_catchphrase {
		font-size: 14px;
	}
}
@media screen and (max-width: 1024px) {
	.vk_post-postType-ambassador {
		padding-bottom: 20px !important;
	}
	.ambassador_profile_content {
		padding: 2.5rem 0;
		margin-bottom: 2.5rem;
	}
	.ambassador_profile_inner {
		gap: 2rem;
	}
	.ambassador_profile_content .ambassador_profile_img {
		max-width: 140px;
	}
	.ambassador_profile_year {
		padding: 2px 10px;
	}
	.ambassador_profile_content .ambassador_name {
		font-size: 22px;
	}
	.ambassador_profile_content .ambassador_name_en {
		font-size: 12px;
	}
	.ambassador_profile_content .ambassador_catchphrase {
		font-size: 18px;
	}
	.ambassador_single_box {
		gap: 25px;
        margin-bottom: 4rem;
	}
	.ambassador_side_box {
		max-width: 230px;
	}
	.ambassador_side_box .ambassador_profile_year {
		font-size: 14px;
	}
}
@media screen and (max-width: 767px) {
	.ambassador_profile_content {
		padding: 1.3rem 1rem;
		margin-bottom: 2.5rem;
	}
	.ambassador_profile_inner {
		flex-wrap: wrap;
		justify-content: center;
		gap: 15px;
		width: 100%;
	}
	.ambassador_year_box {
		margin-bottom: 5px;
	}
	.ambassador_profile_content .ambassador_name {
		font-size: 20px;
	}
	.ambassador_profile_text_box {
		width: 100%;
	}
	.ambassador_profile_content .ambassador_catchphrase {
		font-size: 16px;
		margin-bottom: 8px;
	}
	.vk_post.vk_post-postType-ambassador {
		width: 100%;
		margin-bottom: 2rem !important;
        border-radius: 5px !important;
	}
	.ambassador_single_box {
		flex-wrap: wrap;
        margin-bottom: 3rem;
	}
	.ambassador_side_box {
		position: relative;
        top: 0;
        width: 100%;
        max-width: unset;
        margin-bottom: 1rem;
		border-radius: 5px;
	}
}

/* -----------------------------------------
 	事例
-----------------------------------------*/
body.post-type-archive-case .vk_posts.vk_posts-postType-case {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.vk_posts.vk_posts-layout-card-horizontal .vk_post {
	padding: 0 !important;
}
.vk_posts.vk_posts-layout-card-horizontal .vk_post.vk_post-postType-case {
	cursor: pointer;
	transition: box-shadow 0.25s, transform 0.2s;
}
.vk_posts.vk_posts-layout-card-horizontal .vk_post.vk_post-postType-case:hover {
	box-shadow: 0 6px 24px rgba(26, 35, 126, 0.10);
    transform: translateY(-3px);
}
.vk_post.card-horizontal {
	border: 2px solid var(--main-color);
}
.vk_post.card-horizontal .card-horizontal-inner-row > div {
	width: 70%;
	flex: 0 0 70%;
    max-width: 70%;
}
.vk_post.card-horizontal .card-horizontal-inner-row > div.card-img-outer {
	width: 30%;
	flex: 0 0 30%;
    max-width: 30%;
	aspect-ratio: 4 / 3;
}
.vk_post.card-horizontal .card-body {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	height: auto;
	padding: 1.25rem;
}
.vk_post.card-horizontal.vk_post-btn-display .card-body {
	padding-bottom: 65px;
}
.vk_post.card-horizontal .card-body > *:not(.vk_post_btnOuter) {
	width: 100%;
}
.vk_post.card-horizontal .card-title {
	font-size: 18px;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}
.vk_post.card-horizontal .card-title,
.vk_post.card-horizontal .card-title a {
	color: var(--main-color);
	transition: all .3s;
}
.vk_post.card-horizontal .card-title a:hover {
	opacity: .6;
}
.vk_post.card-horizontal .card-text {
	font-size: 14px;
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.vk_post.card-horizontal .card-date,
.vk_post.card-horizontal .vk_post_taxonomies {
	width: auto !important;
}
.vk_post.card-horizontal .card-date {
	order: -2;
	color: #2D2D2D;
	font-size: 14px;
	line-height: 1;
	margin-top: 5px;
	margin-right: .7rem;
	margin-bottom: .5rem;
}
.vk_post.card-horizontal .vk_post_taxonomies {
	order: -1;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 0;
	margin-bottom: .5rem;
}
.vk_post.card-horizontal .vk_post_taxonomies .vk_post_taxonomy_title {
	display: none;
}
.vk_post.card-horizontal .vk_post_taxonomies .vk_post_taxonomy_terms {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	padding: 0;
	margin-bottom: 0;
}
.vk_post.card-horizontal .vk_post_taxonomies .vk_post_taxonomy_terms a {
	background: #fce4ec;
    color: #8c1a3a;
	font-size: 12px;
	padding: 2px 8px;
	border-radius: 999px;
	overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.vk_post.card-horizontal .btn-primary {
	background-color: var(--main-color);
	border-color: var(--main-color);
	font-weight: 500;
    padding: .4rem 2rem;
	transition: all .3s;
}
.vk_post.card-horizontal .btn-primary:hover,
.vk_posts.vk_posts-layout-card-horizontal .vk_post.vk_post-postType-case:hover .btn-primary {
	color: var(--main-color);
	background-color: #fff;
}
.vkfs {
	margin-bottom: 2rem !important;
}


.case_thumbnail {
	margin-bottom: 1.5rem;
}
.case_thumbnail img {
	display: block;
	background: #f0f2ff;
	width: 100%;
	max-width: 700px;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 1024px){
	.vk_post.card-horizontal .card-date {
		font-size: 12px;
	}
	.vk_post.card-horizontal .card-date,
	.vk_post.card-horizontal .vk_post_taxonomies {
		margin-bottom: .35rem;
	}
	.vk_post.card-horizontal .vk_post_taxonomies .vk_post_taxonomy_terms a {
		font-size: 10px;
	}
	.vk_post.card-horizontal .card-title {
		font-size: 14px;
	}
	.vk_post.card-horizontal .card-text {
		font-size: 12px;
	}
}
@media screen and (max-width: 767px){
	.vk_post .card-horizontal-inner-row {
		flex-wrap: wrap;
	}
	.vk_post.card-horizontal .card-horizontal-inner-row > div,
	.vk_post.card-horizontal .card-horizontal-inner-row > div.card-img-outer {
		width: 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.vk_post.card-horizontal .card-horizontal-inner-row > div.card-img-outer .vk_post_imgOuter {
		border: none;
	}
	.vk_post.card-horizontal .card-body {
		padding: 1rem;
	}
	.vk_post.card-horizontal.vk_post-btn-display .card-body {
		padding-bottom: 50px;
	}
	.vk_post.card-horizontal .card-date {
		width: 100% !important;
		margin-top: 0;
		margin-right: 0;
	}
	.vk_post.card-horizontal .vk_post_taxonomies {
		order: -3;
		margin-bottom: .5rem;
	}
	.vk_post.card-horizontal .card-title {
		-webkit-line-clamp: 2;
	}
	.vk_post.card-horizontal .vk_post_btnOuter {
		bottom: 1rem;
		width: calc(100% - 2rem);
	}
	.vkfs {
		margin-bottom: 1.5rem !important;
	}
}











