@charset "utf-8";

/* home
-------------------------------------------------------------------*/
.home [class$="_wrap"] {
	position: relative;
	z-index: 0;
}
:root [lang="en"]{
	font-family: "Work Sans", sans-serif;
}
:root .ttl-set{
	display:flex;
	flex-direction:column-reverse;
	font-size:1.25rem;
	margin-bottom:2.0em;
	gap: 0;
	letter-spacing: 0.01em;
}
:root .ttl-set [lang="ja"]{
	font-weight:600;
}
:root .ttl-set [lang="en"]{
	color: var(--key);
	font-size: 5rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 0.1em;
}
@media screen and (max-width:767px){
	:root .ttl-set{
		font-size:1.125rem;
		margin-bottom:1.5em;
	}
	:root .ttl-set [lang="en"]{
		font-size: 3.5rem;
	}
}
.home .mv_wrap {
	position: relative;
	z-index: 0;
}
.home .mv_wrap::before{
	display: block;
	position: absolute;
	z-index: 1;
	content: "";
	width: 43%;
	height: 100%;
	clip-path: polygon(0 0, 100% 0, 70% 100%, 0% 100%);
	background-image: linear-gradient(130deg, rgb(0 201 219) 0%, rgb(9 92 177)100%);
	will-change: clip-path;
}
.home .mv_wrap .title_area {
	position: absolute;
	z-index: 10;
	width: 60%;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	padding-left: 6%;
	text-align: left;
}
.home .mv_wrap .title_area::before{
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	inset: -2% auto auto -10%;
	margin: auto;
	width: 80%;
	height: 692px;
	background: url(../img/top/img_mv02.png) no-repeat;
	background-size: contain;
}
.home .mv_wrap .title_area .mv_ttl {
	color: #0961ba;
	font-size: min(3rem , 3vw);
	font-weight: 700;
	font-style: italic;
	margin-block: 1.5em 0.5em;
}
.home .mv_wrap .title_area .mv_ttl span{
	position: relative;
	display: inline-block;
	z-index: 0;
	padding: 0 0 0.15em 0.5em;
	margin-bottom: 0.25em;
	transform: translate(-6em, 0px);
	transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 1.5s;
	opacity: 0;
}
.home .mv_wrap .title_area .mv_ttl span.once{
    transform: translate(0px, 0px);
	opacity: 1;
}
.home .mv_wrap .title_area .mv_ttl span::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transform: skewX(-14deg);
  z-index: -1;
}
.home .mv_wrap .title_area .mv_ttl span.ttl1{
	margin-left: 0.48em;
}
.home .mv_wrap .title_area .mv_ttl span.ttl2{
	transition-delay: 0.2s;
}
.home .mv_wrap .title_area .mv_ttl span.ttl3{
	transition-delay: 0.4s;
	margin-left: -0.48em;
}
.home .mv_wrap .title_area .mv_sub {
	font-size: 1.125rem;
	color: #fff;
	line-height: 2;
	margin-bottom: 1em;
	filter: drop-shadow(2px 2px 3px rgb(0 0 0 / 50%));
	/**/
	font-size: 1.05rem;
	width: 53%;
	line-height: 1.8;
	word-break: auto-phrase;
}
.home .mv_wrap .title_area .btn_area {
	display: flex;
	gap: 1em;
	width: fit-content;
}
.home .mv_wrap .title_area .btn_area .common_btn a {
	min-width: 320px;
	min-height: 80px;
	font-size: 1.125rem;
}
.home .mv_wrap .bg_area {
	padding-top: 96px;
	margin-inline: auto 0;
	width: 73.25%;
	pointer-events: none;
	height: 100%;
}
.home .mv_wrap .bg_area img{
	min-height: 700px;
	max-width: 100%;
	object-fit: cover;
}

@media screen and (max-width:1450px){
	.home .mv_wrap .title_area .mv_sub {
		font-size: 0.985rem;
		width: 55%;
		line-height: 1.6;		
	}

}
@media screen and (max-width:1120px){
	.home .mv_wrap .bg_area {
		padding-top: 0px;
		width: 100%;
	}
	.home .mv_wrap .title_area {
		justify-content: flex-end;
		padding-left: 4%;
	}
}
@media screen and (max-width:767px){
	.home .mv_inner{
		display: flex;
		flex-direction: column-reverse;
	}
	.home .mv_wrap::before{
		width: 100%;
		height: 100%;
		clip-path: polygon(0 37%, 100% 47%, 100% 100%, 0% 100%);
		inset: auto 0 0;
	}
	.home .mv_wrap .title_area {
		position: relative;
		width: 100%;
		padding: 0 20px 3em;
	}
	.home .mv_wrap .title_area::before{
		height: 400px;
	}
	.home .mv_wrap .title_area .mv_ttl {
		color: #0961ba;
		font-size: min(2.5rem , 5.75vw);
		margin-top: -2.5em;
	}
	.home .mv_wrap .title_area .mv_sub {
		font-size: 1rem;
		line-height: 1.8;
		/**/
		font-size: 0.9rem;
		width: 100%;
	}
	.home .mv_wrap .title_area .btn_area {
		gap: 0.5em;
		flex-direction: column;
	}
	.home .mv_wrap .title_area .btn_area .common_btn{
		margin: auto;
	}
	.home .mv_wrap .title_area .btn_area .common_btn a {
		min-width: 240px;
		min-height: 50px;
		font-size: 1rem;
	}
	.home .mv_wrap .bg_area {
		margin-inline: auto 0;
		margin-top: 60px;
	}
	.home .mv_wrap .bg_area img{
		min-height: 290px;
		object-position: 50% 0%;
	}
}
.home .about_wrap{
	position: relative;
	z-index: 0;
	padding-block: 10em 8em;
}
.home .about_wrap .bg_text{
	color: #f7f7f7;
	font-size: min(14.375rem , 15vw);
	font-weight: 600;
	line-height: 1;
	position: absolute;
	z-index: -10;
	margin: auto;
	inset: auto auto 0 -0.15em;
	white-space: nowrap;
}
.home .about_wrap .about_inner{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 5% 1em;
}
.home .about_wrap .img_area {
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: 15% auto auto 56%;
}
.home .about_wrap .img_area .ol_text{
  background: linear-gradient(90deg, #162343, #126ebb, #6fbdf9);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-weight: bold;
  font-size: min(3.75rem , 4vw);
  line-height: 1.3;
  text-align: center;
}
.home .about_wrap .img_area .ol_text strong{
	font-weight: 1000;
	font-size: min(13.5rem , 15vw);
}
.home .about_wrap .img_area .ol_text strong span{
	font-size: 0.7em;
}
.home .about_wrap .img_area .ol_text em{
	font-size: .9em;
	text-align: center;
}
.home .about_wrap .text_area{
	width: 50%;
}
.home .about_wrap .text_area .about_lead{
	font-size: 1.125rem;
	font-weight: 600;
	margin-bottom: 2em;
	line-height: 1.8;
	word-break: auto-phrase;
}
.home .about_wrap .text_area .about_lead em{
	font-size: 1.75rem;
	font-weight: 700;
}
.home .about_wrap .text_area .sec_text{
	line-height: 2;
	margin-bottom: 3em;
}
@media screen and (max-width:767px) {
	.home .about_wrap{
		padding-block: 4em 4em;
	}
	.home .about_wrap .bg_text{
		font-size: min(14.375rem , 21vw);
	}
	.home .about_wrap .about_inner{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		gap: 5% 1em;
		flex-direction: column;
	}
	.home .about_wrap .img_area {
		position: relative;
		margin: 0 auto 2em;
		inset: unset;
	}
	.home .about_wrap .img_area .ol_text{
		font-size: min(3.75rem , 6vw);
		line-height: 1.3;
		width: fit-content;
		margin: auto;
		padding-right: 0.25em;
	}
	.home .about_wrap .img_area .ol_text strong{
		font-size: min(13.5rem , 22vw);
	}
	.home .about_wrap .text_area{
		width: 100%;
		text-align: center;
	}
	.home .about_wrap .text_area .lang-set{
		text-align: ce;
	}
	.home .about_wrap .text_area .about_lead{
		line-height: 1.8;
		margin-bottom: 0;
	}
	.home .about_wrap .text_area .about_lead em{
		font-size: 1.5rem;
	}
	.home .about_wrap .text_area .sec_text{
		line-height: 1.8;
		margin-bottom: 2em;
		text-align: left;
	}
}
.message_wrap {
	text-align: left;
	padding-block: 8em 10em;
}
.home .message_wrap .message_inner{
	max-width: 1680px;
	padding-inline: 20px;
	margin-inline: auto;
	position: relative;
	z-index: 0;
}
.home .message_wrap .text_area {
	margin-inline: auto 0;
	width: 52%;
	padding: 3.5em 6% 1em 9%;
	color: #fff;
	background-image: linear-gradient(120deg, rgb(23 128 203), rgb(10 96 186));
}
.home .message_wrap .text_area .lang-set [lang="en"]{
	color: #fff;
}
.home .message_wrap .text_area .message_text {
    margin-bottom: 3em;
}
.home .message_wrap .img_area {
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: 14% auto auto 20px;
	filter: drop-shadow(3px 3px 8px rgb(0 0 0 / 10%));
	width: 50%;
}
.home .message_wrap .img_area img {
	height: 592px;
	object-fit: cover;
	object-position: center;
}
.home .message_wrap .img_area .img_text {
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: auto auto 0 0;
	background: #0961ba;
	color: #fff;
	font-size: 1.25rem;
	padding: 1.75em;
}
@media screen and (max-width:1200px){
	.home .message_wrap .text_area .lang-set  [lang="en"]{
		font-size: 4rem;
	}
}
@media screen and (max-width:767px){
	.message_wrap {
		padding-block: 4em 0em;
	}
	.home .message_wrap .message_inner{
		padding-inline: 15px;
	}
	.home .message_wrap .text_area {
		margin-inline: auto -15px;
		width: calc(100% + 15px);
		padding: 3em 1em 2em 1.5em;
	}
	.home .message_wrap .text_area .lang-set  [lang="en"]{
		font-size: 3.5rem;
	}
	.home .message_wrap .text_area .message_text {
	    margin-bottom: 2em;
	}
	.home .message_wrap .img_area {
		position: relative;
		margin: 0 auto -20px -15px;
		inset: unset;
		width: 100%;
	}
	.home .message_wrap .img_area img {
		height:auto;
	}
	.home .message_wrap .img_area .img_text {
		inset: auto auto 0 0;
		font-size: 0.9rem;
		padding: 0.5em;
	}
}
.home .owner_wrap{
	padding-block: 8em 6em;
	padding-block: 10em 6em;
}
.home .owner_wrap::before{
	display: block;
	position: absolute;
	z-index: -1;
	content: "";
	inset: 10% auto auto 0;
	width: 80%;
	height: 86%;
	background: #f3f7fe;
}
.home .owner_inner{
	max-width: 1680px;
	padding-inline: 20px;
	margin-inline: auto;
	position: relative;
	z-index: 0;
}
.home .owner_wrap .ttl_area {
	text-align: right;
	margin-bottom: 10em;
}
.home .owner_wrap .ttl_area .owner_sub {
	font-size: 2.125rem;
	font-weight: 600;
}
.home .owner_wrap .ttl_area .owner_ttl {
	font-size: 4.375rem;
	font-weight: 600;
	color: var(--key);
}
.home .owner_wrap .bg_text{
	color: #f3f7fe;
	font-size: min(14.375rem , 18vw);
	font-weight: 600;
	line-height: 1;
	position: absolute;
	z-index: -10;
	margin: auto;
	inset: -0.6em 0 auto auto ;
}
.home .owner_wrap .col_area .col_lead {
	margin-bottom: 4em;
	text-align: left;
}
.home .owner_wrap .col_area .col_lead .lead_sub {
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--key);
}
.home .owner_wrap .col_area .col_lead .lead_ttl {
	font-size: 2.625rem;
	font-weight: 600;
}
.home .owner_wrap .col_area .col_item {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 1em 4%;
	margin-bottom: 6em;
}
.home .owner_wrap .col_area .col_item.rev{
	flex-direction: row-reverse;
}
.home .owner_wrap .col_area .col_item .text_area {
	width: 41%;
	text-align: left;
	font-size: 1.1rem;
}
.home .owner_wrap .col_area .col_item .text_area .item_ttl {
	font-size: 1.75rem;
	font-weight: 700;
	margin-bottom: 1em;
	word-break: auto-phrase;
}
.home .owner_wrap .col_area .col_item .text_area .item_ttl em {
	font-size: 4.375rem;
	font-family: "Work Sans", sans-serif;
	font-weight: 600;
	color: var(--key);
	display: block;
}
.home .owner_wrap .col_area .col_item .text_area .item_text {
	line-height: 1.8;
	margin-bottom: 0.5em;
}
.home .owner_wrap .col_area .col_item .text_area .last{
	margin-bottom: 3em;
}
.home .owner_wrap .col_area .col_item .text_area ul{
	margin-bottom: 0.5em;
}
.home .owner_wrap .col_area .col_item .text_area ul li{
	position: relative;
	z-index: 1;
	padding-left: 1em;
}
.home .owner_wrap .col_area .col_item .text_area ul.point li::before{
	position: absolute;
	z-index: 0;
	inset: 0.4em auto auto 0;
  content: "";
  display: inline-block;
  margin: auto;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #0961ba;
}
.home .owner_wrap .col_area .col_item .text_area ul.nomal li::before{
	position: absolute;
	z-index: 0;
	inset: 0.65em auto auto 0em;
	content: "";
	display: inline-block;
	margin: auto;
	width: 5px;
	height:5px;
	margin-left: 2px;
	border-radius: 50%;
	background-color: #343434;
}

.home .owner_wrap .col_area .col_item .img_area {
	width: 55%;
}
.home .owner_wrap .col_area .col_item .img_area .img {
	height: 540px;
}
.home .owner_wrap .col_area .col_item .img_area .img img {
	object-fit: cover;
	height: 100%;
}
@media screen and (max-width:767px){
	.home .owner_wrap{
		padding-block: 6em 4em;
	}
	.home .owner_wrap::before{
		inset: 6% auto auto 0;
		width: 86%;
		height: 35%;
		height: 90%;
	}
	.home .owner_inner{
		padding-inline: 15px;
	}
	.home .owner_wrap .ttl_area {
		text-align: right;
		margin-bottom: 4em;
	}
	.home .owner_wrap .ttl_area .owner_sub {
		font-size: 1.25rem;
	}
	.home .owner_wrap .ttl_area .owner_ttl {
		font-size: 2.35rem;
	}
	.home .owner_wrap .col_area .col_lead {
		margin-bottom: 2em;
		text-align: left;
	}
	.home .owner_wrap .col_area .col_lead .lead_sub {
		font-size: 1.25rem;
	}
	.home .owner_wrap .col_area .col_lead .lead_ttl {
		font-size: 1.65rem;
	}
	.home .owner_wrap .col_area .col_item {
		margin-bottom: 2em;
		flex-direction: column;
	}
	.home .owner_wrap .col_area .col_item.rev{
		flex-direction: column;
	}
	.home .owner_wrap .col_area .col_item .text_area {
		width: 100%;
		font-size: 1rem;
	}
	.home .owner_wrap .col_area .col_item .text_area .item_ttl {
		font-size: 1.5rem;
		margin-bottom: 1em;
		line-height: 1.2;
		text-indent: -1.25em;
		padding-left: 2.5em;
	}
	.home .owner_wrap .col_area .col_item .text_area .item_ttl em {
		font-size: 2.25rem;
		padding-right: 0.25em;
		display: inline-block;
	}
	.home .owner_wrap .col_area .col_item .text_area .item_text {
		line-height: 1.6;
		/* margin-bottom: 0.5em; */
	}
	.home .owner_wrap .col_area .col_item .img_area {
		width: 100%;
		margin-inline: -15px auto;
	}
	.home .owner_wrap .col_area .col_item.rev  .img_area {
		margin-inline: auto -15px;
	}
	.home .owner_wrap .col_area .col_item .img_area .img {
		height: auto;
	}
	.home .owner_wrap .col_area .col_item .img_area .img img {
		height: auto;
	}
}
.home .voice_wrap {
	padding-block: 4em 6em;
}
.home .voice_wrap .voice_inner .lang-set {
	text-align: center;
}
.home .voice_wrap .voice_inner .lang-set h3 {
	font-size: 2.625rem;
	font-weight: 500;
}
.home .voice_wrap .voice_inner .lang-set p {
	font-size: 1.5rem;
	margin-bottom: 0.5em;
}
.home .voice_wrap .voice_inner .voice_list {
	display: flex;
	gap: 1em 4%;
}
.home .voice_wrap .voice_inner .voice_list .voice_item {
	width: calc(92% / 3);
	background: #f7f7f7;
	padding: 1em;
}
.home .voice_wrap .voice_inner .voice_list .voice_item .img {
	margin-bottom: 1em;
}
.home .voice_wrap .voice_inner .voice_list .voice_item .img img {}
.home .voice_wrap .voice_inner .voice_list .voice_item .voice_ttl {
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--key);
	margin-bottom: 1em;
}
.home .voice_wrap .voice_inner .voice_list .voice_item .voice_ttl em {
	font-weight: 800;
}
.home .voice_wrap .voice_inner .voice_list .voice_item .voice_text {
	margin-bottom: 1em;
}
@media screen and (max-width:767px){
	.home .voice_wrap {
		padding-block: 2em 4em;
	}
	.home .voice_wrap .voice_inner{
		padding: 0;
	}
	.home .voice_wrap .voice_inner .lang-set h3 {
		font-size: 1.75rem;
	}
	.home .voice_wrap .voice_inner .lang-set p {
		font-size: 1.25rem;
	}
	.home .voice_wrap .voice_inner .voice_list {
		gap: 1.5em 4%;
		flex-direction: column;
	}
	.home .voice_wrap .voice_inner .voice_list .voice_item {
		width: 100%;
		padding: 1.5em;
	}
	.home .voice_wrap .voice_inner .voice_list .voice_item .voice_ttl em {
		display: block;
		font-size: 1.35rem;
	}
}
.home .owner_wrap .flow_wrap {
	background: #162141;
	padding: 6em 1.5em 7em;
}
.home .owner_wrap .flow_wrap .lang-set {
	margin-bottom: 2.5em;
}
.home .owner_wrap .flow_wrap .lang-set h3 {
	font-size: 2.625rem;
	font-weight: 500;
	color: #fff;
}
.home .owner_wrap .flow_wrap .lang-set p {
	font-size: 1.5rem;
	color: #fff;
	margin-bottom: 0.5em;
}
.home .owner_wrap .flow_wrap .sitewrap{
	width: auto;
	min-width: auto;
	max-width: 1200px;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list {
	display: flex;
	gap: 4.5%;
	margin-bottom: 4em;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item {
	color: #fff;
	width: calc((100% - 18%) / 5);
	position:relative;
	z-index: 0;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item:not(:last-child)::after {
  content: "";
  position: absolute;
  margin: auto;
  inset: 8em -36px auto auto;
  width: 50px;
  height: 50px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg) skew(20deg, 20deg);
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_img {
	text-align: center;
	margin-bottom: 1em;
	min-height: 66px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_img img {
	max-width: 70px;
	max-height: 66px;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_ttl {
	font-size: 1.25rem;
	text-align: center;
	margin-bottom: 0.5em;
}
.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_text {
	font-size: 0.875rem;
}
.home .owner_wrap .flow_wrap .btn_area {
	display: flex;
	justify-content: center;
	gap: 4%;
}
.home .owner_wrap .flow_wrap .btn_area .common_btn {
	width: fit-content;
	margin: 0;
}
@media screen and (max-width:767px) {
	.home .owner_wrap .flow_wrap {
		padding: 3em 1em 4em;
	}
	.home .owner_wrap .flow_wrap .lang-set {
		margin-bottom: 2em;
	}
	.home .owner_wrap .flow_wrap .lang-set h3 {
		font-size: 1.5rem;
	}
	.home .owner_wrap .flow_wrap .lang-set p {
		font-size: 1.25rem;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list {
		gap: 4em;
		margin-bottom: 3em;
		flex-direction: column;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item {
		width: 100%;
		display: flex;
		gap: 4%;
		text-align: left;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_img{
		width: 66px;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .text_area{
		width: calc(96% - 70px);
		text-align: left;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .text_area .item_ttl{
		text-align: left;
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item:not(:last-child)::after {
		inset: auto 0 -5em;
		transform: translateY(-50%) rotate(135deg) skew(20deg, 20deg);
	}
	.home .owner_wrap .flow_wrap .flow_area .flow_list .flow_item .item_text {
		font-size: 0.875rem;
	}
	.home .owner_wrap .flow_wrap .btn_area {
		gap: 1em;
		flex-direction: column;
		align-items: center;
	}
}
.home .media_wrap {
	padding-bottom: 2em;
}
.home .media_wrap .lang-set{
	text-align: center;
}
:root .media_list{
	display: flex;
	gap: 8%;
	margin-bottom: 4em;
	position: relative;
	z-index: 0;
}
.home .media_wrap .media_list::before,
.home .media_wrap .media_list::after{
	position: absolute;
	z-index: 1;
	margin: auto;
	height: 100%;
	width: 1px;
	background: #808080;
	display: block;
	content: "";
	inset: 0 auto 0 32%;
}
.home .media_wrap .media_list::after{
	inset: 0 auto 0 68%;
}
:root .media_list,:root .media_list *{
	margin:0;
	padding:0;
	line-height:inherit;
}
:root .media_list .media_item{
	width: calc(92% / 3);
}
:root .media_list .media_item article a {
	display: block;
	text-decoration: none;
}
:root .media_list .media_item article a .img_area .media_img {
	aspect-ratio: 330/220;
	width: 100%;
	overflow: hidden;
	margin-bottom: 1em;
}
:root .media_list .media_item article a .img_area .media_img img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	transition: var(--hover);
}
:root .media_list .media_item article a .text_area .news_title {
	font-size:1rem;
	margin-bottom: 1em;
}
:root .media_list .media_item article a .text_area time{
	font-size: 0.875rem;
	color: #808080;
}
.home .media_wrap .common_btn a{
	margin-inline: auto;
}
@media (any-hover: hover) {
	:root .media_list .media_item article a:hover .img_area .media_img img{
		transform: scale(1.05);
	}
}
@media screen and (max-width:767px){
	.home .media_wrap {
		padding-bottom: 3em;
	}
	:root .media_list{
		gap: 2em;
		margin-bottom: 4em;
		flex-direction: column;
	}
	.home .media_wrap .media_list::before,
	.home .media_wrap .media_list::after{
		content: none;
	}
	:root .media_list .media_item{
		width: 80%;
		margin-inline: auto;
	}
	:root .media_list .media_item article a .text_area .news_title {
			margin-bottom: 0.5em;
	}
	:root .media_list .media_item article a .text_area time{
		font-size: 1rem;
	}
}
.home .news_wrap {
    background: #f7f7f7;
    padding-block: 5em;
    min-height: 27em;
}
.home .news_inner{
	display: flex;
	gap: 6%;
	position: relative;
	z-index: 0;
}
.home .news_wrap .title_area {
	width: 18em;
}
.home .news_wrap .news_area {
	width: calc(94% - 18em);
}
:root .news_list,:root .news_list *{
	margin:0;
	padding:0;
	line-height:inherit;
}
:root .news_list li article a {
	padding: 2em 0.1em 2em 1em;
	display: block;
	color: inherit;
	border-bottom: 1px solid;
	text-decoration: none;
}
@media (any-hover: hover){
	:root .news_list li article a:hover{
		background: #e9f4ff;
	}
}
:root .news_list li article a .data {
	display: flex;
}
:root .news_list li article a .data .data_head {
	display: flex;
	gap: 1.5em;
	min-width: 14em;
}
:root .news_list li article a .data .data_head time {
	font-size: 0.875rem;
	color: #808080;
}
:root .news_list li article a .data .data_head .news_cat_wrap span {
	display: block;
	color: #fff;
	background: #0961ba;
	margin-bottom: 0.5em;
	display: flex;
	justify-content: center;
	align-items: center;
	min-height:2em;
	font-size: 0.875rem;
	font-weight:500;
	border-radius: 0.25em;
	text-decoration: none;
	padding: 0em 0.25em;
	min-width: 8em;
}
:root .news_list li article a .data .data_head .news_cat_wrap span.cat-membership{
	background: #b18d69;
}
.home .news_wrap .news_area .common_btn {
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: 12em auto auto 0;
	width: fit-content;
}
@media screen and (max-width: 1240px){
	.home .news_inner{
		display: flex;
		padding-inline: 0;
		margin-inline: 2%;
	}
	.home .news_wrap .title_area {
		width: 18em;
	}
	.home .news_wrap .news_area {
		width: calc(94% - 18em);
	}
}
@media screen and (max-width:767px){
	.home .news_wrap {
	    padding-block: 3em;
	}
	.home .news_inner{
		padding-inline: 15px;
		flex-direction: column;
		margin-inline: 0;
	}
	.home .news_wrap .title_area {
		width: 100%;
	}
	.home .news_wrap .news_area {
		width: 100%;
	}
	.home .news_wrap .news_area .news_list{
		margin-bottom: 2em;
	}
	:root .news_list li article a {
		padding: 1.5em 0.5em;
	}
	:root .news_list li article a .data {
		flex-direction: column;
		gap: 0.5em;
	}
	:root .news_list li article a .data .data_head .news_cat_wrap{
		display: flex;
		gap: 0 0.5em;
	}
	:root .news_list li article a .data .data_head time {
		font-size: 1rem;
	}
	:root .news_list li article a .data .data_head .news_cat_wrap span {
		font-size: 0.75rem;
	}
	.home .news_wrap .news_area .common_btn {
		position: relative;
		inset: unset;
	}
}
.home .search_wrap {
	padding-block: 6em;
	background: url(../img/top/img_search01.jpg) no-repeat;
	background-position: 20%;
	background-size: cover;
}
.home .search_wrap .bg_text{
	color: #f3f7fe;
	opacity: 0.2;
	font-size: min(14.375rem , 18vw);
	font-weight: 600;
	line-height: 1;
	position: absolute;
	z-index: -10;
	margin: auto;
	inset: auto -0.1em -0.175em auto;
}
.home .search_wrap .search_inner {
	background: #fff;
	width: min(1000px, 100% - 40px);
	margin-inline: auto;
	padding: 4em 2em 1em;
	text-align: center;
	position: relative;
	background-image: 
	  linear-gradient(#364d97, #364d97),
	  linear-gradient(#364d97, #364d97),
	  linear-gradient(#364d97, #364d97),
	  linear-gradient(#364d97, #364d97);
	background-size: 
	  6px 100px,
	  100px 6px,
	  100px 6px,
	  6px 100px;
	background-repeat: no-repeat;
	background-position: 
	  top right,
	  top right,
	  bottom left,
	  bottom left;
}
.home .search_wrap .search_inner .img {
	margin-bottom: 1em;
}
.home .search_wrap .search_inner .img img {}
.home .search_wrap .search_inner .search_ttl {
	font-size: 2rem;
	font-weight: 600;
}
.home .search_wrap .search_inner .common_btn a {
	margin-inline: auto;
	font-size: 1.125rem;
	min-height: 90px;
	min-width: 400px;
}

@media screen and (max-width:767px){
	.home .search_wrap {
		padding-block: 3em;
		background: url(../img/top/img_search01.jpg) no-repeat;
		background-position: 20%;
		background-size: cover;
	}
	.home .search_wrap .search_inner {
		width: min(1000px, 100% - 30px);
		padding: 4em 1em 3em;
		background-size: 
		  4px 100px,
		  100px 4px,
		  100px 4px,
		  4px 100px;
	}
	.home .search_wrap .search_inner .search_ttl {
		font-size: 1.5rem;
	}
	.home .search_wrap .search_inner .common_btn a {
		font-size: 1rem;
		min-height: 60px;
		min-width: 260px;
	}
}
.home .insta_wrap {
	padding-block: 6em;
}
.home .insta_wrap .insta_inner {
	display: flex;
	gap: 4.5%;
	position: relative;
	z-index: 0;
}
.home .insta_wrap .insta_inner .title_area {
	width: 16em;
}
.home .insta_wrap .insta_inner .insta_area {
	width: calc(95.5% - 16em);
	margin-top: 0.5em;
}
.home .insta_wrap .insta_inner .insta_area .insta_list {
	display: flex;
	gap: 1em 2.5%;
}
.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item a{
	display: block;
	aspect-ratio: 206/258;
	width: 100%;
	overflow: hidden;
}
.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item a img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	transition: var(--hover);
}
@media (any-hover: hover) {
 .home .insta_wrap .insta_inner .insta_area .insta_list .insta_item a:hover img {
		transform: scale(1.05);
	}
}
.home .insta_wrap .insta_inner .insta_area .common_btn {
	position: absolute;
	z-index: 1;
	margin: auto;
	inset: 14em auto auto 0;
	width: fit-content;
}
.home .insta_wrap .insta_inner .insta_area .common_btn a {
	min-width: 240px;
}
@media screen and (max-width: 1240px){
	.home .insta_wrap .insta_inner{
		padding-inline: 0;
		margin-inline: 2%;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list {
		gap: 1em  2%;
	}
}
@media screen and (max-width: 1000px){
	.home .insta_wrap .insta_inner .insta_area .insta_list {
		flex-wrap: wrap;
		gap: 1em  4%;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item{
		width: 40%;
	}
}
@media screen and (max-width: 767px){
	.home .insta_wrap {
		padding-block: 3em;
	}
	.home .insta_wrap .insta_inner {
		flex-direction: column;
	}
	.home .insta_wrap .insta_inner .title_area {
		width: 100%;
		text-align: center;
	}
	.home .insta_wrap .insta_inner .insta_area {
		width: 84%;
		margin: 0 auto;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list {
		display: flex;
		gap: 1em 4%;
		justify-content: center;
		margin-bottom: 2em;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item{
		width: 48%;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item a{
		display: block;
		aspect-ratio: 206/273;
		width: 100%;
		overflow: hidden;
	}
	.home .insta_wrap .insta_inner .insta_area .insta_list .insta_item a img {

	}
	.home .insta_wrap .insta_inner .insta_area .common_btn {
		position: relative;
		inset: unset;
	}
	.home .insta_wrap .insta_inner .insta_area .common_btn a {
		min-width: 240px;
	}
}



.home .rec_wrap {
	padding-block: 6em 7em;
	color: #fff;
	background-image: linear-gradient(120deg, rgb(24 129 203), rgb(10 96 186));
}
.home .rec_wrap .rec_inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.home .rec_wrap .rec_inner .title_area .lang-set p {
	color: #fff;
}
.home .rec_wrap .rec_inner .title_area .rec_text {
	max-width: 30em;
}
.home .rec_wrap .rec_inner .btn_area .common_btn{
	margin-bottom: 0;
}
.home .rec_wrap .rec_inner .btn_area .common_btn a {
	font-size: 1.125rem;
	min-height: 90px;
	min-width: 400px;
}
@media screen and (max-width:767px) {
	.home .rec_wrap {
		padding-block: 3em;
	}
	.home .rec_wrap .rec_inner .title_area .rec_text {
		margin-bottom: 2em;
	}
	.home .rec_wrap .rec_inner .btn_area .common_btn a {
		font-size: 1rem;
		min-height: 60px;
		min-width: 240px;
	}
}

/* kaso
-------------------------------------------------------------------*/
/* header */
.site-body {
	padding-top: 0 !important;
}
.kaso .page-header {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  height: 21.375em;
  background-position: right center;
}
.kaso .page-header .page-header-inner {
	max-width: 1230px;
}
.kaso .page-header .page-header-inner .page-header-title {
  font-size: 3.125rem;
  font-weight: bold;
  line-height: inherit;
}
@media screen and (max-width:767px) {
	.kaso .page-header {
	  height: 12.375em;
	  background-position: 85% center;
	  background-size: 300%;
	}
	.kaso .page-header .page-header-inner .page-header-title {
	  font-size: 2rem;
	}
}

/* ttl */
.entry-body h2:not(.is-style-vk-heading-plain),
.section-wrap h2:not(.is-style-vk-heading-plain),
.archive-header-title:not(.is-style-vk-heading-plain){
	font-size: 2rem;
	font-weight: 600;
	padding-bottom: .25em;
	margin-bottom: 1.25em;
	letter-spacing: 0.05em;
	border-image: linear-gradient(to right, #0961ba 0%, #0961ba 30%, #d8d8d8 30%, #d8d8d8 100%);
	border-image-slice: 2;
	border-bottom: 2px solid transparent;
}
.entry-body h3:not(.is-style-vk-heading-plain),
.main-section h3:not(.is-style-vk-heading-plain){
	font-size: 1.75rem;
	font-weight: 600;
	margin-bottom: 1em;
	padding: 0.35em 0.75rem 0.35em;
	background: #f3f7fe;
}
.entry-body h4,
.main-section h4{
	font-size: 1.5rem;
	font-weight: 500;
	color: var(--key02);
	margin-bottom: 0.5em;
}
.entry-body h5,
.main-section h5{
	font-size: 1.25rem;
	font-weight: 500;
}
.entry-body h6,
.main-section h6{
	font-size: 1.125rem;
	font-weight: 500;
	color: var(--key02);
}
@media screen and (max-width:767px) {
	.entry-body h2:not(.is-style-vk-heading-plain),
	.section-wrap h2:not(.is-style-vk-heading-plain),
	.archive-header-title:not(.is-style-vk-heading-plain){
		font-size: 1.75rem;
		padding-bottom: .35em;
	}
	.entry-body h3:not(.is-style-vk-heading-plain),
	.main-section h3:not(.is-style-vk-heading-plain){
		font-size: 1.5rem;
	}
}

/* btn */
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
	width: auto;
	max-width: 300px;
	min-width: 220px;
	color: #ffffff !important;
	background: #43b9d7 !important;
	background-size: 200% 100% !important;
	font-size: 1.125rem !important;
	font-weight: 600;
	padding: 10px 3em;
	min-height: 60px;
	display: flex !important;
	align-items:center;
	justify-content:center;
	position:relative;
	z-index: 0;
	text-decoration:none;
	border-radius: 3em;
	margin-block: 1em;
	transition: var(--hover);
}
.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text)::after {
	position: absolute;
	z-index: 10;
	display: inline-block;
	content: "\2192";
	font-size: 1.125rem;
	font-weight: 600;
	color: #ffffff;
	margin: auto;
	inset: 0 1em 0 auto;
	width: 1.125rem;
	height: 1rem;
	line-height: 1;
}
@media (any-hover: hover) {
	.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text):hover{
		filter: none !important;
		transform: translateY(3px);
		opacity: 1;
		box-shadow: none;
	}
}
@media screen and (max-width: 767px) {
	.wp-block-vk-blocks-button .vk_button_link:not(.vk_button_link-type-text) {
		min-width: 160px;
		padding: 10px 2em 10px 0 !important;
		min-height: 50px;
		
	}
}

.entry-body ul li {
  list-style-type: disc;
	font-weight: 500;
}
.entry-body ul li ul li{
  list-style-type: circle;
  font-weight: 500;
}

/* single-locations
-------------------------------------------------------------------*/
body.single-locations{
	margin: 0;
}
.single-locations .entry-body{
	text-align: left;
	color: #282828;
}
.single-locations .site-body,
.single-locations .main-section{
	padding: 0;
	margin: 0;
}
.single-locations .main-area{
	margin-bottom: -12%;
	min-height: 44em;
	aspect-ratio: 1920 / 870;
}
.single-locations .main-ttl{
	font-size: min(3.5em, 4vw) !important;
	font-weight: 600;
	color: #fff;
	position: absolute;
	margin: auto !important;
	height: fit-content;
	inset: 0 auto 0 12%;
	inset: 0 auto 0 calc(50% - 13em);
	max-width: 9em;
	padding-bottom: 2em;
}
.single-locations .smf-action .smf-button-control__control {
	display: flex !important;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 0;
	width: auto;
	max-width: 300px;
	min-width: 220px;
	min-height: 60px;
	padding: 10px 3em;
	margin: 1em auto;
	font-size: 1.125rem !important;
	font-weight: 600;
	color: #fff!important;
	text-decoration: none;
	background: #43b9d7 !important;
	background-size: 200% 100% !important;
	border: 1px solid #43b9d7 !important;
	border-radius: 3em; 
	transition: var(--hover) !important;
}
.single-locations .smf-action .smf-button-control__control:after {
	content: "\2192";
	position: absolute;
	z-index: 10;
	inset: 0 1em 0 auto;
	margin: auto;
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 600;
	color: #ffffff;
	width: 1.125rem;
	height: 1.125rem;
	line-height: 1;
	background-color: transparent;
	-webkit-mask: none;
	mask: none;
}
.single-locations .smf-action .smf-button-control__control[data-action="back"]:after {
	inset: 0 auto 0 1em;
	background-color: transparent !important;
	color: #ffffff;
	transform: rotate(180deg);
}
@media (any-hover: hover) {
	.single-locations .smf-action .smf-button-control__control:hover,
	.single-locations .smf-action .smf-button-control__control[data-action="back"]:hover{
		transform: translateY(5px);
		background:#43b9d7  !important;
	}
}
.single-locations .vk_outer_container:has(#form-link) iframe{
	width: 100%;
	height: 700px;
}

@media screen and (max-width:1500px) {
	.single-locations .main-ttl{
		inset: 0 auto 0 5%;
		font-size: min(3.25em, 4vw) !important;
	}
}
@media screen and (max-width:767px) {
	.single-locations .main-area{
		margin-top: 65px;
		margin-bottom: -15%;
		min-height: 40em;
		aspect-ratio: 750 / 1200;
	}
	.single-locations .main-ttl{
		font-size: min(2em, 7vw) !important;
		height: fit-content;
		inset: 12% auto auto 15px;
		max-width: 12em;
		padding-bottom: 0;
	}
	.single-locations .wp-block-vk-blocks-outer.vk_outer .vk_outer_container:has(.main-ttl){
		position: unset;
	}
	.single-locations .smf-action .smf-button-control__control {
		display: flex !important;
		justify-content: center;
		align-items: center;
		position: relative;
		z-index: 0;
		width: auto;
		max-width: 300px;
		min-width: 220px;
		min-height: 60px;
		padding: 10px 3em;
		margin: 1em auto;
		font-size: 1.125rem !important;
		font-weight: 600;
		color: #fff!important;
		text-decoration: none;
		background: #43b9d7 !important;
		background-size: 200% 100% !important;
		border: 1px solid #43b9d7 !important;
		border-radius: 3em; 
		transition: var(--hover) !important;
	}
	.single-locations .vk_outer_container:has(#form-link) iframe{
		height: 400px;
	}
}

