@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');

*{
	margin:0;
	padding:0;
	list-style: none;
	box-sizing: border-box;
	text-decoration: none;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

*::before,
*::after{
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	box-sizing: border-box;
}

html {
	-ms-text-size-adjust: none;
	-webkit-text-size-adjust: none;
}

input,
select,
textarea{
	font-family: "Source Han Sans JP" , 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
	color:#00004E;
	-webkit-font-smoothing: antialiased;
	-ms-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	font-feature-settings: 'palt';
	touch-action: manipulation;
	resize: none;
	display: block;
}

button{
	border: none;
	background: none;
	border-radius: 0;
	cursor: pointer;
}

body{
	color: #00004E;
	font-size: 16px;
	font-family: "Source Han Sans JP" , 'Noto Sans CJK JP' , 'Noto Sans JP'  ,sans-serif;
	-webkit-font-smoothing: antialiased;
	-ms-text-size-adjust: none;
	-webkit-text-size-adjust: none;
}

body.fixed {
	width: 100%;
	height: 100%;
	position: fixed;
}


img{
	display: block;
	object-position: center;
	width: 100%;
}

#body_wrap{
	overflow: hidden;
}


a{
	color: #00004E;
}

.fax a{
	pointer-events: none;
}

@media (any-hover:hover){
	a[href^="tel:"] {
		pointer-events: none;
	}
}

main{
	padding-top: 100px;
}
/*
------------------------------------
アニメーション関係
------------------------------------
*/

.common_hover_opa{
	transition: 0.4s;
	transition-property: opacity;
}


@media (any-hover:hover){
	.common_hover_opa:hover{
		opacity: 0.7;
	}
	
}


.common_hover_scale_frame{
	overflow: hidden;
}

.common_hover_scale_item{
	width:100%;
	height:100%;
	object-fit: cover;
	transition-duration: 0.7s;
}

@media(any-hover:hover){
	.common_hover_scale_trigger:hover.common_hover_scale_item,
	.common_hover_scale_trigger:hover .common_hover_scale_item{
		transform: scale(1.1);

	}
}


.anime_fade {
	opacity: 0;
	transform: translate3d(0 , 0 , 0);
	animation-duration: 1.2s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}

.anime_fade_move{
	opacity: 0;
	animation-duration: 1.2s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	/* transform: translateY(25px); */
	transform: translate3d(0 , 25px , 0);
}


.anime_fade.anime_active ,
.anime_active .anime_fade,
.anime_fade_move.anime_active ,
.anime_active .anime_fade_move{
	animation-name:anime_fade;
}


@keyframes anime_fade {
	0% {
		opacity:0;
	}
	100% {
		opacity:1;
		transform: translate3d(0 , 0 , 0);
	}
}
/*
------------------------------------
共通パーツ
------------------------------------
*/

.container{
	max-width: 1240px;
	padding:0 20px;
	margin-inline: auto;
}

/*タイトルセット*/
.common_title_set{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.common_title_set.right{
	align-items: flex-end;
}

.common_title_set .en_title{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 100px;
	line-height: 0.9;
	border-bottom:2px solid #00004E;
	
}

.common_title_set .ja_title{
	font-weight: bold;
	font-size: 27px;
	letter-spacing: 0.05em;
	line-height: 1.3;	
}


/*画像上のテキストボックス*/
.common_text_box{
	position: absolute;
	bottom:115px;
	left:0;
	z-index: 3;
	background-color: rgba(255 , 255 , 255 , 0.8);
	padding:10px 24px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.common_text_box .en_text{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: normal;
	font-size: 20px;
	text-shadow: 10px 3px 10px rgba(255, 255, 255, 0.16);
	border-bottom:1px solid #00004E;
}

.common_text_box .ja_text{
	font-weight: bold;
	font-size: 23px;
	letter-spacing: 0.05em;
	text-shadow: 10px 3px 10px rgba(255, 255, 255, 0.16);

}

/*波線背景画像*/
.common_wave_bg{
	position: absolute;
	width:1920px;
	min-width: 101vw;
	object-fit: cover;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}


/*パンクズ*/
.common_bread_list{
	display: flex;
	align-items: center;
	gap:12px;
	font-weight: bold;
	flex-wrap: wrap;
}

.common_bread_list .border{
	width:1px;
	height:16px;
	background-color: #EEEFEE;
}

.common_bread_list a{
	transition-duration: 0.4s;
}

@media(any-hover:hover){
	.common_bread_list a:hover{
		opacity: 0.7;
	}
}


/*ページ内アンカーリスト*/
.common_anchor_list{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:0 160px;
}

.common_anchor_list a{
	transition-duration: 0.4s;
	display: flex;
	align-items: center;
	font-weight: bold;
	font-size: 25px;
	line-height: 1.3;
}

.common_anchor_list a span{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 30px;
	margin-right: 10px;
	padding-top: 3px;
}

.common_anchor_list a::after{
	content:'';
	width:17px;
	height:20px;
	background-image: url('../img/common/icon_angle_bottom_blue.svg');
	background-position: bottom;
	margin-left: 10px;
}

@media(any-hover:hover){
	.common_anchor_list a:hover{
		opacity: 0.7;
	}
}

/*動画のポップアップ*/
.common_movie_pop {
    position: fixed;
    z-index: 20;
    width: 100%;
	height: 100vh;
    height: calc(var(--vh2, 1vh) * 100);
    background-color: #fff;
    background-color: rgba(0, 0, 0, 0.6);
    top: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition-duration: 0.4s;
    opacity: 0;
    pointer-events: none;
	transition-property: opacity;
}

.common_movie_pop.show{
	opacity: 1;
	pointer-events: auto;
}

.common_movie_pop .movie_frame {
    position: relative;
    width: 980px;
	max-width: 90%;
	aspect-ratio: 1 / 0.5625;
}

.common_movie_pop .movie_frame iframe {
    display: block;
    width: 100%;
    height: 100%;
}

.common_movie_pop .movie_pop_close{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	right:0;
	bottom:calc(100% + 16px);
	cursor: pointer;
}

.common_movie_pop .movie_pop_close::after{
	content:'';
	width:30px;
	height:30px;
	background-image: url('../img/common/icon_close_white.svg');
}

/*
------------------------------------
ヘッダー
------------------------------------
*/

header{
	position: fixed;
	top:0;
	left:0;
	width:100%;
	z-index: 30;
	background-color: #fff;
	transition-duration: 0.4s;
	transition-property:background-color;
}

header .header_inner{

}

header .header_flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
	
}

header .header_logo{
	width: 307px;
	height: 100px;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

header .header_logo_img{
	width:255px;
}

header .header_logo_text{
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.03em;
	padding-left: 16px;
	margin-top: -4px;
}

header .header_right{
	display: flex;
}

header .entry_button{
	width: 240px;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-right: 40px;
	position: relative;
	font-weight: bold;
	font-size: 16px;
	text-align: center;
	color: #fff;
	line-height: 1.5;
}

header .entry_button::after{
	content:'';
	width:30px;
	height:30px;
	background-image: url('../img/common/icon_angle_box_right_white.svg');
	position: absolute;
	right:35px;
	top:0;
	bottom:0;
	margin:auto;
}


header .entry_button.new{
	background-color: #f18c47;
}
header .entry_button.career{
	background-color: #63A7DC;
}

header .drawer_open{
	width:80px;
	height:100px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	background-color: #fff;
}

header .drawer_open_inner{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
}

header .drawer_open .bar{
	width:27px;
	height:1px;
	background-color: #00004E;
	transition-duration: 0.4s;
}

header .drawer_open .bar02{
	margin:9px 0 7px;
}

header .drawer_open .bar03{
	width:16px;
}

header .drawer_open.active .bar01 {
	transform: translateY(0px) rotate(-45deg);
}
header .drawer_open.active .bar02 {
	display: none;
}
header .drawer_open.active .bar03 {
	transform: translateY(-1px) rotate(45deg);
	width:27px;
}

#drawer_menu_bg{
	position: fixed;
	width: 100%;
	height:100%;
	z-index: 25;
	background-color: rgba(0,0,0,0.6);
	top:0;
	left:0;
	transition-duration: 0.5s;
	opacity: 0;
	pointer-events: none;
	transition-property: opacity;
}

#drawer_menu_bg.show{
	opacity: 1;
	pointer-events: auto;
}


#drawer_menu{
	position: fixed;
	width:895px;
	max-width: 100%;
	height: calc(100vh - 100px);
    /* height: calc(calc(var(--vh2, 1vh) * 100) - 100px); */
	top:100px;
	right:0;
    background-color: #fff;
	transform: translateX(100%);
	transition-duration: 0.5s;
	transition-timing-function: ease-out;
	pointer-events: none;
	transition-property: transform;
	z-index: 26;
	overflow-y: auto;
}

#drawer_menu.show{
	transform: translateX(0);
	opacity: 1;
	pointer-events: auto;
}


#drawer_menu a{
	transition: 0.4s;
	transition-property: opacity;
}

@media (any-hover:hover){
	#drawer_menu a:hover{
		opacity: 0.7;
	}
}


#drawer_menu .drawer_menu_inner{
	padding:40px 0;
	min-height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width:600px;
	margin:0 auto;
}

#drawer_menu .drawer_menu_flex{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap:40px 0;
}

#drawer_menu .drawer_menu_block{
	min-width: none;
}

#drawer_menu .drawer_menu_block:nth-child(odd){
	width: 320px;
	margin-right: 16px;
}

#drawer_menu .drawer_menu_head{
	display: block;
	width: fit-content;
	font-weight: bold;
	font-size: 30px;
	padding-left: 30px;
	position: relative;
}

#drawer_menu .drawer_menu_head::before{
	content:'';
	width:18px;
	height:22px;
	background-image: url('../img/common/icon_angle_right_black.svg');
	position: absolute;
	left:0;
	top:14px;
}

#drawer_menu .drawer_menu_head.yellow{
	color: #f8b300;
}
#drawer_menu .drawer_menu_head.orange{
	color: #F18C47;
}
#drawer_menu .drawer_menu_head.pink{
	color: #ED81A9;
}
#drawer_menu .drawer_menu_head.purple{
	color: #BA87B9;
}
#drawer_menu .drawer_menu_head.lightblue{
	color: #63A7DC;
}

#drawer_menu .child_menu_list{
	position: relative;
	padding-left: 30px;
	margin-top: 30px;
}

#drawer_menu .child_menu_list::before{
	content:'';
	width: 3px;
	height: 100%;
	background: #707070;
	position: absolute;
	left:7px;
	top:0;
}

#drawer_menu .child_menu_item + .child_menu_item{
	margin-top: 12px;
}

#drawer_menu .child_menu_link{
	font-weight: bold;
	font-size: 18px;
	line-height: 1.3;
}

#drawer_menu .child_menu_list_interview{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	max-width: 260px;
	gap:12px 0;
}

#drawer_menu .child_menu_item_interview{
	width: 110px;
	padding-right: 6px;
}
#drawer_menu .child_menu_item_interview + .child_menu_item_interview{
	margin-top: 0;
	
}

#drawer_menu .drawer_menu_block_logo{
	padding-top: 72px;
}

#drawer_menu .drawer_logo{
	display: block;
	width:255px;
	margin-left: -10px;
}
/*
------------------------------------
ページ下部のリンクセクション
------------------------------------
*/

.common_link_section{
	position: relative;
	padding:212px 0 245px;
	background-color:#444644 ;
	
}

.common_link_section::before{
	content:'';
	width:100%;
	height:100%;
	background-color:#444644 ;
	position: absolute;
	top:0;
	left:0;
	z-index:1;
	background-image: url('../img/common/link_sec_bg.png');
	background-size: cover;
}

.common_link_section .link_list{
	position: relative;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.common_link_section .link_item{
	width:377px;
} 

.common_link_section .link_card{
	padding:8px 64px;
	min-height: 113px;
	background-color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
	font-size: 30px;
	line-height: 1.3;
	color: #00004e;

}

.common_link_section .link_card::after{
	content:'';
	flex-shrink: 0;
	width:28px;
	height:28px;
	margin-left: 6px;
	background-image: url('../img/common/icon_angle_box_right_blue.svg');
}

/*
------------------------------------
フッター
------------------------------------
*/

footer{
	padding-top: 115px;
	padding-bottom: 40px;
	background-color: #292828;
	color:#fff;
}

footer a{
	color:#fff;
	transition-duration: 0.4s;
}

@media(any-hover){
	footer a:hover{
		opacity: 0.7;
	}
}


footer .footer_flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-left: 60px;
	padding-right: 20px;
}

footer .footer_left,
footer .footer_right{
	max-width: 49%;
}

footer .footer_parent_item + .footer_parent_item{
	margin-top: 56px;
}

footer .footer_parent_link{
	position: relative;
	font-weight: bold;
	font-size: 40px;
	line-height: 1.3;
}

footer .footer_parent_link::before{
	content:'';
	width:18px;
	height:22px;
	background-position: right;
	background-image: url('../img/common/icon_angle_right_white.svg');
	position: absolute;
	top:16px;
	right:calc(100% + 20px);
}

footer .footer_child_menu{
	display: flex;
	align-items: flex-start;
	gap:20px;
	margin-top: 28px;
}

footer .footer_child_item{
	position: relative;
	padding-right: 20px;
}

footer .footer_child_item::after{
	content:'';
	width:2px;
	height:20px;
	border-radius: 1px;
	background-color: #707070;
	transform: rotateZ(25deg);
	position: absolute;
	right:0;
	top:6px;
}

footer .footer_child_item:last-child::after{
	content:none;
}

footer .footer_child_item.slash:last-child::after{
	content:'';
}

footer .footer_child_link{
	font-weight: bold;
	font-size: 20px;
}

footer .min_menu{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap:8px 0;
	width: 180px;
	margin-top: 8px;
}

footer .min_menu li{
	width: 50%;
	padding-right: 4px;
}

footer .min_menu a{
	font-weight: bold;
	font-size: 15px;
}

footer .entry_area{
	margin-top: 72px;
}

footer .entry_head{
	font-weight: bold;
	font-size: 30px;
}

footer .entry_button_list{
	margin-top: 20px;
}

footer .entry_button + .entry_button{
	margin-top: 18px;
}

footer .entry_button{
	width: 405px;
	height: 103px;
	padding-left: 72px;
	padding-right: 56px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
	font-size: 25px;
	line-height: 1.2;

}

footer .entry_button:after{
	content:'';
	width:24px;
	height:24px;
	background-image:url('../img/common/icon_angle_box_right_white.svg');
}

footer .entry_button p{
	display: flex;
	align-items: center;
}

footer .entry_button span{
	margin-left: 16px;
	font-size: 15px;
	font-weight: bold;
}

footer .entry_button.new{
	background: #f18c47;
}
footer .entry_button.career{
	background: #63A7DC;
}
footer .entry_button.contact{
	background: #292828;
	border:1px solid #FFE3E3;
}

footer .foote_copy{
	margin-top: 88px;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
}

/*
------------------------------------
トップページ
------------------------------------
*/


body.top_body{

}

body.top_body header{
	background-color: transparent;
}

body.top_body header.white{
	background-color: #fff;
}

main.top_main{
	padding-top: 0;
}

.top_section{

}

.top_fv_section{
	position: relative;
	height:100vh;
	min-height: 600px;
}

.top_fv_section video{
	display: block;
	width:100%;
	height:100%;
	object-fit: cover;
}

.top_fv_section .fv_title{
	position: absolute;
	width:calc(1052 / 1920 * 100%);
	max-width: 1052px;
	left:56px;
	bottom:calc(280 / 1080 * 100%);
}

.top_company_section{
	padding-top: 140px;
	padding-bottom: 334px;
	position: relative;
}


.top_company_section .company_bg{
	position: absolute;
	width:1920px;
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
	object-position: top;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -6;
}



.top_company_section .company_frame{
	position: relative;
	margin-top: 124px;
}

.top_company_section .company_list{
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}

.top_company_section .company_item{
	width:362px;
}

.top_company_section .company_card{
	display: block;
	aspect-ratio: 1 / 1.78;
	position: relative;
}


.top_company_section .company_title{
	position: absolute;
	width:2240px;
	top:104px;
	left:calc(50% - 1010px);
}


.top_work_section{
	/* padding-top: 334px; */
	position: relative;
}

.top_work_section .work_bg{
	position: absolute;
	width:1920px;
	min-width: 100%;
	object-fit: cover;
	object-position: top;
	position: absolute;
	top: -270px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -4;
}

.top_work_section .work_frame{
	position: relative;
	margin-top: 124px;
}

.top_work_section .work_list{
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}

.top_work_section .work_item{
	width:555px;
}

.top_work_section .work_card{
	display: block;
	aspect-ratio: 1 / 1;
	position: relative;
}


.top_work_section .work_title{
	position: absolute;
	width:1276px;
	bottom:-210px;
	left:calc(50% - 286px);
}

.top_work_section .slide_area{
	margin-top: 367px;
	position: relative;
	z-index: 4;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap:1px 0;
}


.top_work_section .slide_line{
	display: flex;
	align-items: flex-start;
	gap:0 1px;
}

.top_work_section .slide_list{
	flex-shrink: 0;
	display: flex;
	align-items: flex-start;
	gap:0 1px;
}

.top_work_section .slide_list li{
	flex-shrink: 0;
	width: 278px;
	aspect-ratio: 1/1;
	position: relative;
}

.top_work_section .slide_list li::before{
	content:'';
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    background: linear-gradient(to top, #000 0%, #9b9999 100%);
    opacity: 0.1;
}

.top_work_section .slide_list li img{
	width:100%;
	height:100%;
	object-fit: cover;
	transform: calc(1.01);
}

@keyframes slide_line01 {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

.top_work_section .slide_line01{
	animation: slide_line01 90s infinite linear .5s both;
}

@keyframes slide_line02 {
	from {
		transform: translateX(-50%);
	}
	to {
		transform: translateX(0);
	}
}

.top_work_section .slide_line02{
	animation: slide_line02 90s infinite linear .5s both;
}

.top_work_section .work_bg_bottom{
	position: absolute;
	width:1920px;
	min-width: 100%;
	object-fit: cover;
	object-position: bottom;
	position: absolute;
	bottom: -220px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}

.top_pink_gra_area{
	position: relative;
	background-image: url('../img/top/top_people_bg.jpg');
	background-position: top;
}

.top_people_section{
	padding-top: 342px;
	padding-bottom: 340px;
	position: relative;
}

.top_people_section .people_frame{
	position: relative;
	margin-top: 124px;
}

.top_people_section .people_list{
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
}

.top_people_section .people_item{
	width:555px;
}

.top_people_section .people_card{
	display: block;
	aspect-ratio: 1 / 1;
	position: relative;
	cursor: pointer;
}

.top_people_section .people_card img{
	transform: scale(1.02);
}


.top_people_section .people_title{
	position: absolute;
	width:1433px;
	bottom:-242px;
	right:calc(50% - 425px);
}


.top_style_section{
	position: relative;
	padding-bottom: 400px;
}

.top_style_section .style_area{
	position: relative;
	z-index: 1;
	padding-top:72px;
	padding-bottom: 104px;
}

.top_style_section .style_area::before{
	content:'';
	width:1405px;
	height:100%;
	background-color: #fff;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.top_style_section .style_contents{
	position: relative;
	z-index: 3;
}

.top_style_section .style_frame{
	margin-top: 124px;
}

.top_style_section .style_list{
	display: flex;
	justify-content: space-between;
	position: relative;
}

.top_style_section .style_item{
	width:555px;
}

.top_style_section .style_card{
	display: block;
	aspect-ratio: 1 / 1;
	position: relative;
}


.top_style_section .style_title{
	position: absolute;
	width:2487px;
	bottom:92px;
	left:calc(50% - 1380px);
}

.top_news_section{
	padding-top: 126px;
	padding-bottom: 126px;
	background-color: #00004E;
} 

.top_news_section .news_area{
	width: fit-content;
	margin-inline: auto;
	display: flex;
	align-items: center;
}

.top_news_section .sec_title{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 500;
	font-size: 30px;
	color: #fff;
	line-height: 1;
}

.top_news_section .news_left{
	min-width: 250px;
	flex-shrink: 0;
}

.top_news_section .news_line + .news_line{
	margin-top: 20px;
}

.top_news_section .news_item{
	display: flex;
	align-items: flex-start;
	color:#fff;
} 

.top_news_section a.news_item{
	transition-duration: 0.4s;
	transition-property: opacity;
}

@media(any-hover:hover){
	.top_news_section a.news_item:hover{
		opacity: 0.7;
	}
}


.top_news_section .news_date{
	flex-shrink: 0;
	min-width:140px;
	padding-right: 8px;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 500;
	font-style: italic;
	font-size: 20px;
	line-height: 1.3;
	padding-top: 6px;
}

.top_news_section .news_title{
	font-weight: 500;
	font-size: 25px;
	line-height: 1.3;
}

/*
------------------------------------
下層mv
------------------------------------
*/

.page_mv_section{
	position: relative;
	height:700px;
	padding-top: 252px;
	/* padding-bottom: 365px; */
}

.page_mv_section .page_mv_bg{
	position: absolute;
	width:100%;
	height:100%;
	object-fit: cover;
	top:0;
	left:0;
	z-index: -10;
}

.page_mv_section .page_title{
	font-weight: bold;
	font-size: 60px;
	text-align: center;
	color: #fff;

}

.page_mv_section .mv_bread_area{
	position: absolute;
	width:100%;
	top:540px;
	left:0;
}

.page_mv_section .mv_bread_inner{
	max-width: 1400px;
	padding:0 20px;
	margin-inline:auto;
}

/*
------------------------------------
会社案内
------------------------------------
*/

body.company_body{
	
}

main.company_main{

}

main.company_main .sec_num{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 109px;
	line-height: 1;
	text-align: center;
	width:100%;
	position: absolute;
	top:-56px;
	left:0;
	z-index: 5;
}

main.company_main .gra_sec_title{
	display: flex;
	justify-content: center;
	align-items: center;
}

main.company_main .gra_sec_title img{
	width: auto;
	height:56px;
}

main.company_main .sub_head{
	position: relative;
	width: fit-content;
	font-weight: bold;
	font-size: 60px;
	line-height: 1;
	margin:40px auto 0;
	padding:0 50px;
}
main.company_main .sub_head::after{
	content:'';
	position: absolute;
	top:calc(100% + 10px);
	left: 50%;
	transform: translateX(-50%);
	width:100%;
	height:3px;
	background: linear-gradient(to right ,#f8b300 0%, #f18c47 20.85%, #ed81a9 51.27%, #ba87b9 72.25%, #63a7dc 92.02%, #00004e 100%);

}

.company_feature_section{
	position: relative;
	padding-top: 120px;
	padding-bottom: 200px;
}

.company_feature_section .sec_bg{
	object-position: top;
}

.company_feature_section .bg_gray{
	top:-252px;
	height:calc(100% + 252px);
	z-index: -4;
}

.company_feature_section .bg_gra{
	top:-230px;
	z-index: -3;
}

.company_feature_section .feature_box{
	margin-top: 222px;
	position: relative;
	padding:100px 0;
}

.company_feature_section .feature_box::before{
	content:'';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width:1430px;
	height:100%;
	background-color: #FFFFFF;
	border-radius: 5px;
}

.company_feature_section .feature_contents{
	position: relative;
	z-index:1;
}


.company_feature_section .feature_list{
	margin-top: 180px;
}

.company_feature_section .feature_block{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.company_feature_section .feature_block .feature_text_area{
	width:495px;
}

.company_feature_section .feature_block .feature_img{
	width:644px;
}	

.company_feature_section .feature_block .feature_img p{
	margin-top: 20px;
	font-size: 10px;
	letter-spacing: 0.05em;
}

.company_feature_section .feature_block .feature_title{
	font-weight: bold;
	font-size: 30px;
	line-height: 1.2;
}

.company_feature_section .feature_block .feature_title .min{
	font-size: 25px;
}

.company_feature_section .feature_block .feature_title .num{
	font-size: 60px;
	color:#F18C47;
	margin:0 4px;
}

.company_feature_section .feature_block .feature_text{
	margin-top: 48px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.9;
}

.company_feature_section .feature_block02{
	flex-direction: row-reverse;
	margin-top: 180px;
}

.company_feature_section .feature_block02 .feature_text_area{
	width: 475px;
}

.company_feature_section .feature_block03{
	margin-top: 162px;
}

.company_customer_section{
	padding-top: 206px;
}

.company_customer_section .customer_box{
	position: relative;
	padding-top: 106px;
	padding-bottom: 128px;
}

.company_customer_section .customer_box::before{
	content:'';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width:1430px;
	height:100%;
	background-image: url('../img/company/company02_bg.png');
	background-size: cover;
}

.company_customer_section .customer_text{
	margin-top: 136px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.9;
	text-align: center;
}

.company_customer_section .slide_area{
	margin-top: 120px;
	position: relative;
	z-index: 4;
}

.company_customer_section .slide_area + .slide_area{
	margin-top: 40px;
}

.company_customer_section .slide_head{
	font-weight: bold;
	font-size: 25px;
	line-height: 1.3;
}

.company_customer_section .slide_frame{
	margin-top: 18px;
	overflow: hidden;
}

.company_customer_section .slide_nav_area{
	max-width: 630px;
	margin:16px auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.company_customer_section .slide_nav{
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
}

.company_customer_section .slide_nav::after{
	content:'';
	width:28px;
	height:28px;
	background-image: url('../img/common/icon_angle_box_right_blue.svg');
}

.company_customer_section .slide_nav.prev::after{
	transform: rotateZ(180deg);
}

.company_customer_section .swiper-slide{
	width: auto;
}


.company_customer_section .famous_card{
	position: relative;
	width:300px;
	aspect-ratio: 1 / 0.56;
}

.company_customer_section .famous_card img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.company_customer_section .famous_card::before{
	content:'';
	width:100%;
	height:100%;
	position: absolute;
	z-index: 1;
	background: linear-gradient(to top , #000 0%, #9b9999 100%);
	opacity: 0.1;
}

.company_customer_section .sports_card{
	position: relative;
	width:200px;
	aspect-ratio: 1 / 1.435;
}

.company_customer_section .sports_card img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.company_customer_section .sports_card::before{
	content:'';
	width:100%;
	height:100%;
	position: absolute;
	z-index: 1;
	background: linear-gradient(to top , #000 0%, #9b9999 100%);
	opacity: 0.1;
}

.company_difference_section{
	padding-top: 413px;
	padding-bottom: 400px;
	position: relative;
}

.company_difference_section .sec_bg{
	object-position: top;
	object-fit: cover;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	width: 1920px;
	min-width: 100%;
	z-index: -4;
	top:180px;
	min-height:calc(100% - 180px);
}

.company_difference_section .difference_box{
	position: relative;
	padding-top: 104px;
	padding-bottom: 226px;
}

.company_difference_section .difference_box::after{
	content:'';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width:1430px;
	height:100%;
	background-color: #FFFFFF;
	border-radius: 5px;
}

.company_difference_section .difference_contents{
	position: relative;
	z-index: 1;
}


.company_difference_section .difference_list{
	margin-top: 186px;
}


.company_difference_section .difference_block{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.company_difference_section .difference_block:nth-child(odd){
	flex-direction: row-reverse;
}

.company_difference_section .difference_block + .difference_block{
	margin-top: 210px;
}

.company_difference_section .difference_block .difference_img{
	width:645px;
}

.company_difference_section .difference_block .difference_text_area{
	width:475px;
}

.company_difference_section .difference_block .difference_title{
	font-weight: bold;
	font-size: 30px;
	line-height: 1.3;
}

.company_difference_section .difference_block .difference_text{
	margin-top: 40px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.9;
}

.company_difference_section .difference_block .emphasis{
	font-size: 25px;
	font-weight: bold;
}

.company_difference_section .difference_block .num{
	font-size: 50px;
	color:#F18C47;
	font-weight: bold;
	padding:0 4px;
}

/*
------------------------------------
数字でわかるSADA
------------------------------------
*/

body.data_body{
	
}

main.data_main{
	position: relative;
}

main.data_main::before{
	content:'';
	width:100%;
	height:100%;
	background-color: #EEEFEE;
	position: absolute;
	top:0;
	left:0;
	z-index:-15;
}

.data_section .data_list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:1px;
	margin-top: 50px;
}

.data_section .data_box{
	/* width:calc(400 / 1200 * 100%); */
	padding:20px 8px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	position: relative;
	min-height: 286px;
}

.data_section .data_box .data_head{
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 21px;
	letter-spacing: 0.1em;
	line-height: 1.2;
	color: #17181a;
	position: relative;
	z-index: 4;
}

.data_section .data_box .data_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height:100px;
}

.data_section .data_box .data_num_frame{
	width: fit-content;
	margin-inline: auto;
	position: relative;
	z-index: 4;
}

.data_section .data_box .data_num_text{
	font-size: 30px;
	font-weight: bold;

}

.data_section .data_box .data_num{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-size: 80px;
	font-weight: bold;
}

.data_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	color: #000;
	text-align: left;
}

.data_about_section{
	padding-top:160px ;
	position: relative;
}


.data_about_section .bg_gray{
	top:-252px;
	z-index: -4;
	object-position: top;
}

.data_about_section .bg_gra{
	top:-230px;
	z-index: -3;
	object-position: top;
}

.data_about_section .about_area{
	margin-top: 160px;
}

.data_about_section .data_list{
	margin-top: 50px;
}

.data_about_section .data_box:nth-child(4){
	grid-column: 1 / -1; 
}

.data_about_section .data_icon01_01{
	width:58px;
}
.data_about_section .data_icon01_02{
	width:221px;
	left:0;
	right:0;
	top:30px;
	margin:auto;
	position: absolute;
}
.data_about_section .data_icon01_03{
	width:102px;
}
.data_about_section .data_icon01_04{
	width:74px;
	margin-left: 15px;
}

.data_about_section .production_list{
	width: fit-content;
	margin:30px auto 0;
	
}

.data_about_section .production_line{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.data_about_section .production_line .data_num_frame{
	margin: 0;
}

.data_about_section .production_line + .production_line{

}

.data_about_section .production_title{
	font-weight: bold;
	font-size: 30px;
	margin-right: 72px;
}


.data_job_section{
	padding-top: 365px;

}

.data_job_section .data_box .data_icon{
	min-height: 80px;
	padding-top: 16px;
}

.data_job_section .data_box .data_num{
	font-size: 100px;
}

.data_job_section .data_icon02_01{
	width:96px;
}
.data_job_section .data_icon02_02{
	width:51px;
}
.data_job_section .data_icon02_03{
	width:38px;
}

.data_human_section{
	position: relative;
	padding-top: 365px;
	padding-bottom: 390px;
}

.data_human_section .bg_gra{
	top:134px;
	height:calc(100% - 134px);
	object-position: top;
	z-index: -2;
}

.data_human_section .data_box .data_icon{
	min-height: 80px;
	padding-top: 16px;
}

.data_human_section .data_box .data_num{
	font-size: 100px;
}

.data_human_section .data_icon03_01{
	width:74px;
}
.data_human_section .data_icon03_02{
	width:31px;
}
.data_human_section .data_icon03_03{
	width:61px;
}
.data_human_section .data03_04_01{
	width: 41px;
	margin-right: 9px;
}
.data_human_section .data03_04_02{
	width: 48px;
	margin-left: 9px;
}
.data_human_section .data03_05_01{
	width: 24px;
	margin-right: 9px;
}
.data_human_section .data03_05_02{
	width: 25px;
	margin-left: 9px;
}

.data_human_section .data_list + .data_list{
	margin-top: 1px;
	grid-template-columns: repeat(2, 1fr);
}

.data_human_section .ratio_flex{
	display: flex;
	align-items: flex-start;
	gap:0 48px;
	margin-top: 24px;
}

.data_human_section .ratio_head{
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 25px;
	line-height: 1.3;
	color: #333;
	padding-right: 24px;
}


/*
------------------------------------
社長メッセージ
------------------------------------
*/

body.message_body{
	
}

main.message_main{

}

.message_section .blue_head{
	width: fit-content;
	margin-inline: auto;
	/* white-space: nowrap; */
	padding:10px 50px;
	min-height: 98px;
	background: #00004E;
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	color: #fff;
	line-height: 1.2;
	display: flex;
	justify-content: center;
	align-items: center;
}

.message_section .blue_head.min{
	min-height: 80px;
}

.message_section .message_text{
	margin-top: 32px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 2.2;
}

.message_section01{
	position: relative;
	padding-top: 72px;
	padding-bottom: 170px;
}

.message_section01 .mv_area{
	max-width: 1640px;
	padding:0 20px;
	margin-inline: auto;
	
}

.message_section01 .mv_area_inner{
	position: relative;
}

.message_section01 .movie_area{
	display: flex;
	justify-content: flex-end;
	margin-top: 60px;
	position: relative;
}

.message_section01 .title_set{
	position: absolute;
	/* top:137px; */
	top:calc(137 / 740 * 100%);
	left:0;
	z-index: 6;
}

.message_section01 .title_set .en_title{
	width:410px;
}

.message_section01 .title_set .ja_title{
	margin-top: 8px;
	font-weight: bold;
	font-size: 23px;
	letter-spacing: 0.05em;	color: #333;
	/* text-shadow: 10px 3px 10px rgba(255, 255, 255, 0.16); */

}

.movie_frame{
	position: relative;
	max-width: 100%;
}

.movie_thumb{
	position: relative;
	z-index: 4;
	width: 1280px;
	max-width: 100%;
}

.movie_text{
	position: absolute;
	right:40px;
	bottom:100px;
	z-index: 6;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 500;
	font-size: 80px;
	color: #fff;
	width:160px;
}

.play_icon{
	width: 118px;
	height: 118px;
	border-radius: 50%;
	background-color: #fff;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
	cursor: pointer;
}

.play_icon::after{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 18.5px 0 18.5px 26px;
	border-color: transparent transparent transparent #F18C47;
}


.message_section01 .page_catch{
	position: absolute;
	left:0;
	z-index: 10;
	bottom:115px;
}

.message_section01 .page_catch span{
	font-family: "Source Han Serif" , "Noto Serif JP", serif;
	font-weight: 900;
	font-size: 50px;
	letter-spacing: 0.05em;
    font-weight: bold;
    line-height: 1.7;
    background-color: #fff;
    padding: 0 6px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}


.message_section01 .sec_bg{
	top:400px;
	z-index: -3;
}


.message_section01 .message_block01{
	margin-top: 208px;
}

.message_section01 .message_block02{
	display: flex;
	align-items: flex-start;
	margin-top: 160px;
}

.message_section01 .message_block02 .text_area{
	/* width: calc(742 / 1920 * 100vw); */
	width: 742px;
	max-width: 742px;
	min-width: 500px;
	flex-shrink: 0;
	margin-right: 8.2%;
}

.message_section01 .message_block02 .message_img{
	width: 100%;
}

.message_section01 .message_block02 .message_img img{
	width:720px;
}

.message_section01 .message_block03{
	margin-top: 440px;
	display: flex;
	justify-content: space-between;
	justify-content: flex-end;
	align-items: flex-start;
}

.message_section01 .message_block03 .text_area{
	/* width: calc(815 / 1920 * 100vw); */
	width: 815px;
	max-width: 815px;
	min-width: 500px;
	margin-left: 56px;
	flex-shrink: 0;
}


.message_section01 .message_block03 .message_img{
	display: flex;
	justify-content: flex-end;
	width: 100%;
}

.message_section01 .message_block03 .message_img img{
	width: calc(712 / 1920 * 100vw);
	max-width: 712px;
	object-fit: cover;
	height:416px;
}

.message_section02{
	padding-top: 200px;
	padding-bottom: 160px;
	background-image: url('../img/message/message02_bg_gra.png');
}

.message_section02 .president_block{
	width: fit-content;
	margin-inline: auto;
}

.message_section02 .president_text{
	margin-top: 32px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 2.2;
	text-align: center;
}

.message_section02 .president_sign{
	margin-top: 56px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

.message_section02 .president_sign01 img{
	height:20px;
	width:auto;
}

.message_section02 .president_sign02{
	margin-top: 16px;
}
.message_section02 .president_sign02 img{
	height:50px;
	width:auto;
}

/*
------------------------------------
ある社員の1日
------------------------------------
*/

body.schedule_body{
	
}

main.schedule_main{
	position: relative;
}

.schedule_section01{
	position: relative;
	padding-top: 170px;
}

.schedule_section01 .bg_gra{
	z-index: -4;
	top:-220px;
	object-position: top;
}

.schedule_section01 .flex{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:0 2px;
}

.schedule_section01 .flex .thumb{
	width:400px;
	aspect-ratio: 1/1;

}

.schedule_section01 .flex .thumb img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.schedule_section02{
	position: relative;
	padding-top: 110px;
	padding-bottom: 372px;
}

.schedule_section02 .bg_white{
	z-index: -2;
	top:-150px;
	height: calc(100% + 150px);
	object-position: top;
}

.schedule_section02 .sec_title{
	display: flex;
	justify-content: center;
}

.schedule_section02 .sec_title p{
	white-space: nowrap;
	flex-shrink: 0;
	font-weight: bold;
	font-size: 55px;
	letter-spacing: 0.05em;
	text-align: center;
	position: relative;
}

.schedule_section02 .sec_title p::after{
	content:'';
	width: 100%;
	height: 14px;
	background: linear-gradient(to right , #f8b300 0%, #f18c47 20.85%, #ed81a9 51.27%, #ba87b9 72.25%, #63a7dc 92.02%, #00004e 100%);
	position: absolute;
	left:0;
	top:100%;
}

.schedule_section02 .link_list{
	max-width: 960px;
	margin:200px auto 0;
}

.schedule_section02 .link_line + .link_line{
	margin-top: 150px;
}

.schedule_section02 .link_block{
	display: flex;
	align-items: center;
} 

.schedule_section02 .link_thumb{
	flex-shrink: 0;
	width:300px;
	aspect-ratio: 1 / 1;
	margin-right: 48px;
	border:4px solid;
	border-radius: 50%;
}

.schedule_section02 .link_thumb img{
	width:100%;
	height:100%;
	object-fit: cover;
	border-radius: 50%;
}

.schedule_section02 .link_right{
	position: relative;
	width:100%;
} 

.schedule_section02 .link_right::after{
	content:'';
	width:65px;
	height:65px;
	position: absolute;
	bottom:0;
	right:0;
}

.schedule_section02 .link_title{
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	color: #f8b300;
}

.schedule_section02 .link_name{
	margin-top: 36px;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

.schedule_section02 .link_history{
	margin-top: 8px;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.3;
	color: #2b2145;
}

.schedule_section02 .link_block01 .link_thumb{
	border-color: #F8B300;
}
.schedule_section02 .link_block01 .link_title{
	color: #f8b300;
}
.schedule_section02 .link_block01 .link_right::after{
	background-image: url('../img/common/icon_angle_box_right_yellow.svg');
}


.schedule_section02 .link_block02 .link_thumb{
	border-color: #ED81A9;
}
.schedule_section02 .link_block02 .link_title{
	color: #ED81A9;
}
.schedule_section02 .link_block02 .link_right::after{
	background-image: url('../img/common/icon_angle_box_right_pink.svg');
}

/*
------------------------------------
社員の1日　詳細
------------------------------------
*/

main.schedule01_main .page_bg{
	position: absolute;
	top:0;
	height:100%;
	object-position: top;
	z-index: -2;
}
main.schedule02_main .page_bg{
	position: absolute;
	top:0;
	height:100%;
	object-position: top;
	z-index: -2;
}

main.schedule01_main .common_bread_list .border{
	background-color: #00004E;
}


.schedule_head_section{
	position: relative;
	padding-top: 72px;
}

.schedule_head_section .schedule_head_area{
	max-width: 1640px;
	padding:0 20px;
	margin-inline: auto;
}


.schedule_head_section .schedule_thumb_area{
	position: relative;
	margin-top: 64px;
}

.schedule_head_section .schedule_thumb_frame{
	max-width: 1107px;
	margin-inline: auto;
	position: relative;
}

.schedule_head_section .schedule_thumb_frame::before,
.schedule_head_section .schedule_thumb_frame::after{
	content:'';
	position: absolute;
	width:392px;
	height:7px;
	background: linear-gradient(to right , #f8b300 0%, #f18c47 20.85%, #ed81a9 51.27%, #ba87b9 72.25%, #63a7dc 92.02%, #00004e 100%);
}

.schedule_head_section .schedule_thumb_frame::before{
	top:0;
	left:-80px;
	transform-origin: top right;
	transform: rotateZ(-20deg);
}
.schedule_head_section .schedule_thumb_frame::after{
	bottom:166px;
	right:-100px;
	transform-origin: top right;
	transform: rotateZ(-20deg);
}

.schedule_head_section .schedule_thumb{
	aspect-ratio: 1 / 0.56;
}

.schedule_head_section .schedule_thumb img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.schedule_head_section .title_box{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 530px;
	min-height: 202px;
	bottom:64px;
	left:-32px;
	padding:24px 12px;
	color:#fff;
	font-weight: bold;
}

.schedule_head_section .title_box.yellow{
	background: linear-gradient(to right , #f18c47 0%, #f8b300 100%);
}
.schedule_head_section .title_box.pink{
	background: linear-gradient(to right , #ed81a9 0%, #faafcb 100%);
}

.schedule_head_section .page_title{
	font-size: 40px;
	line-height: 1.5;
}

.schedule_head_section .staff_name{
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1.2;
	display: flex;
	justify-content: flex-end;
}

.schedule_head_section .staff_history{
	display: flex;
	justify-content: flex-end;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	margin-top: 6px;
}

.schedule_detail_section{
	position: relative;
	padding-top: 204px;
	padding-bottom: 150px;
} 

.schedule_detail_section .bg_gra{
	top:-330px;
	object-position: top;
	z-index: -7;
}

.schedule_detail_section::before{
	content:'';
	width:100%;
	height:50%;
	background-color:#fff ;
	position: absolute;
	bottom:0;
	left:0;
	z-index:-5;
}

.schedule_detail_section .bg_white{
	top:-32px;
	/* height:calc(100% + 32px); */
	object-position: top;
	z-index: -4;
}

.schedule_detail_section .sec_title{
	display: flex;
	justify-content: center;
	align-items: center;
}

.schedule_detail_section .sec_title span{
	flex-shrink: 0;
	margin:0 40px;
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	color: #333;
	line-height: 1.5;
}

.schedule_detail_section .sec_title::before,
.schedule_detail_section .sec_title::after{
	content:'';
	width:100%;
	height: 2px;
	background: linear-gradient(to right, #00004E 10px, transparent 10px) repeat-x;
	background-size: 20px 2px;
	margin-top: 4px;
}


.schedule_detail_section .schedule_list{
	margin-top: 154px;
	padding-left: 24px;
}

.schedule_detail_section .schedule_line{
	position: relative;
	padding-bottom: 115px;
	display: flex;
	align-items: flex-start;
}

.schedule_detail_section .schedule_line:last-child{
	padding-bottom: 0;
}

.schedule_detail_section .schedule_time{
	flex-shrink: 0;
	width: 150px;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-size: 50px;
	line-height: 1;
	margin-top: -10px;
}

.schedule_detail_section .schedule_border{
	width:3px;
	height:calc(100% - 10px);
	bottom:0;
	left:159px;
	position: absolute;
}

.schedule_detail_section .schedule_radi{
	position: relative;
	z-index: 3;
	flex-shrink: 0;
	width:21px;
	height:21px;
	border-radius: 50%;
	background-color: #fff;
	border:4px solid;
	margin-right: 32px;
}

.schedule_detail_section .schedule_contents{
	width: 100%;
	margin-top: -12px;
}

.schedule_detail_section .schedule_title{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	color: #333;
}

.schedule_detail_section .schedule_text{
	margin-top: 20px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.7;
}

.schedule_detail_section .schedule_box_frame{
	margin-top: 20px;
	padding-left: 70px;
}

.schedule_detail_section .schedule_box{
	position: relative;
	width:100%;
	padding:56px 64px 64px;
	border-radius: 5px;
}

.schedule_detail_section .schedule_box::before{
	content:'';
	width:40px;
	height:51px;
	position: absolute;
	z-index: -1;
	top:110px;
	right:calc(100% - 1px);
}

.schedule_detail_section .schedule_box.yellow{
	background: linear-gradient(-45deg , #f8b300 0%, #f5d277 100%);
}
.schedule_detail_section .schedule_box.yellow::before{
	background-image: url('../img/schedule01/tri_yellow.png');
}

.schedule_detail_section .schedule_box.pink{
	background: linear-gradient(-45deg , #ed81a9 0%, #faafcb 100%);
}
.schedule_detail_section .schedule_box.pink::before{
	background-image: url('../img/schedule02/tri_pink.png');
}

.schedule_detail_section .schedule_box_head{
	font-weight: bold;
	font-size: 45px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #fff;
}

.schedule_detail_section .schedule_box_flex{
	display: flex;
	align-items: flex-start;
	margin-top: 24px;
}

.schedule_detail_section .schedule_box_img{
	width:245px;
	flex-shrink: 0;
	margin-right: 36px;
}

.schedule_detail_section .schedule_box_text{
	width:100%;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.7;
}


.schedule_detail_section .yellow_line .schedule_time{
	color:#F8B300;
}
.schedule_detail_section .yellow_line .schedule_radi{
	border-color:#F8B300;
}

.schedule_detail_section .orange_line .schedule_time{
	color:#F5A120;
}
.schedule_detail_section .orange_line .schedule_radi{
	border-color:#F5A120;
}

.schedule_detail_section .red_line .schedule_time{
	color:#EF8586;
}
.schedule_detail_section .red_line .schedule_radi{
	border-color:#EF8586;
}

.schedule_detail_section .pink_line .schedule_time{
	color:#ED80A7;
}
.schedule_detail_section .pink_line .schedule_radi{
	border-color:#ED80A7;
}

.schedule_detail_section .purple_line .schedule_time{
	color:#D983AF;
}
.schedule_detail_section .purple_line .schedule_radi{
	border-color:#D983AF;
}

.schedule_detail_section .lightblue_line .schedule_time{
	color:#73A2D6;
}
.schedule_detail_section .lightblue_line .schedule_radi{
	border-color:#73A2D6;
}

.schedule_detail_section .blue_line .schedule_time{
	color:#00004E;
}
.schedule_detail_section .blue_line .schedule_radi{
	border-color:#00004E;
}



.schedule_detail_section .orange02_line .schedule_time{
	color:#F5A21D;
}
.schedule_detail_section .orange02_line .schedule_radi{
	border-color:#F5A21D;
}

.schedule_detail_section .pink02_line .schedule_time{
	color:#EE839D;
}
.schedule_detail_section .pink02_line .schedule_radi{
	border-color:#EE839D;
}

.schedule_detail_section .pink03_line .schedule_time{
	color:#ED81A9;
}
.schedule_detail_section .pink03_line .schedule_radi{
	border-color:#ED81A9;
}

.schedule_detail_section .purple02_line .schedule_time{
	color:#DF81AD;
}
.schedule_detail_section .purple02_line .schedule_radi{
	border-color:#DF81AD;
}

.schedule_detail_section .purple03_line .schedule_time{
	color:#C886B6;
}
.schedule_detail_section .purple03_line .schedule_radi{
	border-color:#C886B6;
}




.schedule_detail_section .schedule_border.yellow_orange{
	background: linear-gradient(to bottom , #f8b300 , #f18c47 );
}

.schedule_detail_section .schedule_border.orange_red{
	background: linear-gradient(to bottom , #f18c47 , #EF8586 );
}

.schedule_detail_section .schedule_border.red_pink{
	background: linear-gradient(to bottom , #EF8586 , #ED80A7 );
}

.schedule_detail_section .schedule_border.pink_purple{
	background: linear-gradient(to bottom , #ED80A7 , #D983AF );
}

.schedule_detail_section .schedule_border.purple_lightblue{
	background: linear-gradient(to bottom , #D983AF , #73A2D6 );
}

.schedule_detail_section .schedule_border.lightblue_blue{
	background: linear-gradient(to bottom , #73A2D6 , #00004E );
}

.schedule_detail_section .schedule_border.yellow_orange02{
	background: linear-gradient(to bottom , #f8b300 , #F5A21D );
}



.schedule_detail_section .schedule_border.orange02_pink02{
	background: linear-gradient(to bottom , #F5A21D , #EE839D );
}

.schedule_detail_section .schedule_border.pink02_orange{
	background: linear-gradient(to bottom , #EE839D , #f18c47 );
}

.schedule_detail_section .schedule_border.orange_pink03{
	background: linear-gradient(to bottom , #f18c47 , #ED81A9 );
}

.schedule_detail_section .schedule_border.pink03_purple02{
	background: linear-gradient(to bottom , #ED81A9 , #DF81AD );
}

.schedule_detail_section .schedule_border.purple02_purple03{
	background: linear-gradient(to bottom , #DF81AD , #C886B6 );
}

.schedule_detail_section .schedule_border.purple03_lightblue{
	background: linear-gradient(to bottom , #C886B6 , #73A2D6 );
}




.schedule_link_section{
	padding-top: 96px;
	padding-bottom: 208px;
	background-color: #ACACAC;
	position: relative;
	z-index: 1;
} 

.schedule_link_section .flex{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap:2px;
}

.schedule_link_section .link_card{
	min-height:592px;
	display: flex;
	justify-content: center;
	padding:90px 24px 64px;
	background-color: #fff;
}

.schedule_link_section .link_card.pink{
	background-color: #FFF8FB;
}

.schedule_link_section .card_head{
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	color: #2b2145;
	text-align: center;
}

.schedule_link_section .thumb_area{
	min-height: 320px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.schedule_link_section .thumb{
	width:260px;
}

.schedule_link_section .thumb{
	aspect-ratio: 1 / 1;
}

.schedule_link_section .thumb.square{
	
}
.schedule_link_section .thumb.square.yellow{
	box-shadow: 10px 10px 0 #F8B300;
}
.schedule_link_section .thumb.square.pink{
	box-shadow: 10px 10px 0 #ED81A9;
}

.schedule_link_section .thumb.radi{
	border-radius: 50%;
	border: 4px solid ;
}
.schedule_link_section .thumb.radi.yellow{
	border-color:#F8B300;
}
.schedule_link_section .thumb.radi.pink{
	border-color:#ED81A9;
}

.schedule_link_section .card_text{
	/* margin-top: 40px; */
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

.schedule_link_section .card_text::after{
	content:'';
	width:34px;
	height:34px;
	margin-left: 20px;
}

.schedule_link_section .card_text.yellow::after{
	background-image: url('../img/common/icon_angle_box_right_yellow.svg');
}
.schedule_link_section .card_text.pink::after{
	background-image: url('../img/common/icon_angle_box_right_pink.svg');
}

/*
------------------------------------
スーツがお客様に届くまで
------------------------------------
*/

body.process_body{
	
}

main.process_main{

}

.process_section01{
	padding-top: 60px;
	position: relative;
}

.process_section01 .bg_gra{
	object-position: top;
	top:-210px;
	z-index: -7;
}

.process_section01 .sec_title{
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #333;

}

.process_section01 .guide_frame{
	margin-top:48px;
	max-width: 1120px;
	margin-inline: auto;
}

.process_section01 .guide_list{
	display: flex;
	gap:14px;
}	

.process_section01 .guide_list .angle{
	display: flex;
	justify-content: center;
	align-items: center;
}

.process_section01 .guide_list .angle::after{
	content:'';
	width:15px;
	height:18px;
	background-image: url('../img/common/icon_angle_right_white.svg');
	background-position: right;
}

.process_section01 .card_line{
	width:150px;
}

.process_section01 .card{
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	min-height: 207px;
	padding:12px 8px;
}


.process_section01 .card_num{
	font-size: 45px;
	text-align: center;
	line-height: 1.3;
}

.process_section01 .card_icon{
	min-height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.process_section01 .card_name{
	font-weight: 500;
	font-size: 23px;
	letter-spacing: 0.05em;
	text-align: center;
}

.process_section01 .card01{
	color:#F8B300;
}
.process_section01 .card01 .card_icon img{
	width:42px;
}

.process_section01 .card02{
	color:#F18C47;
}
.process_section01 .card02 .card_icon img{
	width:57px;
}

.process_section01 .card03{
	color:#ED81A9;
}
.process_section01 .card03 .card_icon img{
	width:72px;
}

.process_section01 .card04{
	color:#BA87B9;
}
.process_section01 .card04 .card_icon img{
	width:51px;
}

.process_section01 .card05{
	color:#63A7DC;
}
.process_section01 .card05 .card_icon img{
	width:61px;
}

.process_section01 .card06{
	color:#00004E;
}
.process_section01 .card06 .card_icon img{
	width:61px;
}

.process_section01 .process_list{
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	margin-top: 110px;
}

.process_section01 .process_block{
	min-height:710px;
	position: relative;
	max-width: 1920px;
	margin-inline: auto;
}

.process_section01 .process_block::before{
	content:'';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width:100vw;
	height:100%;
	z-index: -5;
	position: absolute;
}

.process_section01 .process_block::after{
	content:'';
	left:0;
	right:0;
	top:calc(100% - 10px);
	position: absolute;
	margin:auto;
	width:0;
	height:0;
	border-style:solid;
	border-width: 54px 45px 0 45px;
	z-index: -2;
}

.process_section01 .process_block:last-child{
	min-height: 880px;
}
.process_section01 .process_block:last-child::after{
	content:none;
}

.process_section01 .process_contents{
	max-width: 1200px;
	padding:0;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.process_section01 .process_img{
	width:445px;
	aspect-ratio: 1 / 1;
}

.process_section01 .process_img img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.process_section01 .process_text_area{
	width: 445px;
}

.process_section01 .process_title{
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.process_section01 .process_text{
	margin-top: 16px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 2.2;
	color: #333;
}

.process_section01 .process_deco{
	position: absolute;
	z-index: -1;
}

.process_section01 .process_num_area{
	position: absolute;
	top:240px;
	width:134px;
	left:0;
	right:0;
	margin:auto;
}

.process_section01 .process_num_inner{
	position: relative;
}

.process_section01 .process_num{
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 1/1;
	position: relative;
	z-index: 3;
	border-radius: 50%;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: normal;
	font-size: 50px;
	line-height: 1;
	color: #fff;

}

.process_section01 .process_border{
	z-index: -1;
	width:10px;
	height:600px;
	top:calc(100% - 4px);
	left:0;
	right:0;
	margin:auto;
	position: absolute;
}

.process_section01 .process_block:nth-child(odd):before{
	background-color: #fff;
}
.process_section01 .process_block:nth-child(odd):after{
	border-color: #fff transparent transparent transparent;
}
.process_section01 .process_block:nth-child(odd) .process_contents{
	padding-left: 18px;
	padding-right: 32px;
}

.process_section01 .process_block:nth-child(even):before{
	background-color: #EEEFEE;
}
.process_section01 .process_block:nth-child(even):after{
	border-color: #EEEFEE transparent transparent transparent;
}
.process_section01 .process_block:nth-child(even) .process_contents{
	flex-direction: row-reverse;
	padding-right: 18px;
	padding-left: 32px;
}


/*process01*/
.process_section01 .process01_block{
	padding-top: 124px;
}

.process_section01 .process01_block .process_text_area{
	padding-top: 60px;
}

.process_section01 .process01_block  .process_title{
	color: #f8b300;
}

.process_section01 .process01_block .process_num{
	background-color: #f8b300;
}

.process_section01 .process01_block .process_img{
	box-shadow: -18px -18px 0 #f8b300;
}

.process_section01 .process01_block .process_border{
	background: linear-gradient(to bottom , #f8b300 , #f18c47);
}

.process_section01 .process01_block .process_deco{
	width:292px;
	bottom:32px;
	right:60px;
}

/*process02*/
.process_section01 .process02_block{
	padding-top: 114px;
}

.process_section01 .process02_block .process_text_area{

}

.process_section01 .process02_block  .process_title{
	color: #F18C47;
}

.process_section01 .process02_block .process_num{
	background-color: #F18C47;
}

.process_section01 .process02_block .process_img{
	box-shadow: 18px -18px 0 #F18C47;
}

.process_section01 .process02_block .process_border{
	background: linear-gradient(to bottom , #f18c47 , #ED81A9);
}

.process_section01 .process02_block .process_deco{
	width:295px;
	bottom:32px;
	left:60px;
}

/*process03*/
.process_section01 .process03_block{
	padding-top: 140px;
}

.process_section01 .process03_block .process_text_area{
	padding-top: 60px;
}

.process_section01 .process03_block  .process_title{
	color: #ED81A9;
}

.process_section01 .process03_block .process_num{
	background-color: #ED81A9;
}

.process_section01 .process03_block .process_img{
	box-shadow: -18px -18px 0 #ED81A9;
}

.process_section01 .process03_block .process_border{
	background: linear-gradient(to bottom , #ED81A9 , #BA87B9);
}

.process_section01 .process03_block .process_deco{
	width:168px;
	bottom:22px;
	right:124px;
}

/*process04*/
.process_section01 .process04_block{
	padding-top: 130px;
}

.process_section01 .process04_block .process_text_area{
	padding-top: 60px;
}

.process_section01 .process04_block  .process_title{
	color: #BA87B9;
}

.process_section01 .process04_block .process_num{
	background-color: #BA87B9;
}

.process_section01 .process04_block .process_img{
	box-shadow: 18px -18px 0 #BA87B9;
}

.process_section01 .process04_block .process_border{
	background: linear-gradient(to bottom , #BA87B9 , #63A7DC);
}

.process_section01 .process04_block .process_deco{
	width:295px;
	bottom:36px;
	left:56px;
}

/*process05*/
.process_section01 .process05_block{
	padding-top: 140px;
}

.process_section01 .process05_block .process_contents{
	align-items: flex-end;
}

.process_section01 .process05_block .process_text_area{

}

.process_section01 .process05_block  .process_title{
	color: #63A7DC;
}

.process_section01 .process05_block .process_num{
	background-color: #63A7DC;
}

.process_section01 .process05_block .process_img{
	box-shadow: -18px -18px 0 #63A7DC;
}

.process_section01 .process05_block .process_border{
	background: linear-gradient(to bottom , #63A7DC , #00004E);
}

.process_section01 .process05_block .process_deco{
	width:255px;
	bottom:30px;
	right:80px;
}

/*process06*/
.process_section01 .process06_block{
	padding-top: 145px;
}

.process_section01 .process06_block .process_contents{
	align-items: flex-end;
}

.process_section01 .process06_block .process_text_area{

}

.process_section01 .process06_block  .process_title{
	color: #00004E;
}

.process_section01 .process06_block .process_num{
	background-color: #00004E;
}

.process_section01 .process06_block .process_img{
	box-shadow: 18px -18px 0 #00004E;
}

.process_section01 .process06_block .process_deco{
	width:324px;
	bottom:205px;
	left:36px;
}



/*
------------------------------------
社員インタビュー
------------------------------------
*/

body.interview_body{
	
}

main.interview_main{

}

.interview_card_section{
	padding-top: 312px;
	padding-bottom: 160px;
	position: relative;
}

.interview_card_section .bg_gra{
	top:-240px;
	z-index: -6;
	height:calc(100% + 240px);
	object-position: top;
}

.interview_card_section .interview_card_list{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap:88px 0;
}

.interview_card_section .interview_card_item{
	width: 355px;
}

.interview_card_section .interview_card{
	display: block;

}

.interview_card_section .interview_card .interview_thumb_area{
	padding-bottom: 10px;
	position: relative;
}

.interview_card_section .interview_card .interview_thumb{
	aspect-ratio: 1 / 1.775;
}

.interview_card_section .interview_card .interview_num{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.05em;
	line-height: 1.1;
	color: #fff;
	position: absolute;
	z-index: 3;
	right:15px;
	top:10px;
}

.interview_card_section .interview_card .interview_shop{
	position: absolute;
	bottom:-10px;
	left:0;
	min-height: 58px;
	max-width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #fff;
	padding:8px 16px;
	font-weight: bold;
	font-size: 20px;
}

.interview_card_section .interview_card .interview_card_textarea{
	padding:24px 0 0 16px ;
}

.interview_card_section .interview_card .interview_card_text{
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.7;
	color: #333;
	white-space: nowrap;
}

.interview_card_section .interview_card .interview_card_prof{
	margin-top: 36px;
	display: flex;
	align-items: center;
}

.interview_card_section .interview_card .interview_card_prof::after{
	content:'';
	width:51px;
	height:51px;
	margin-left: 24px;
	flex-shrink: 0;
}

.interview_card_section .interview_card .interview_card_year{
	color:#333333;
	font-size: 15px;
	font-weight: bold;
}

.interview_card_section .interview_card .interview_card_name{
	font-size: 25px;
	font-weight: bold;
	line-height: 1.5;
}

.interview_card_section .interview_card .interview_thumb.yellow{
	box-shadow: 10px 10px 0 #F8B300;
}
.interview_card_section .interview_card .interview_shop.yellow{
	color:#F8B300;
}
.interview_card_section .interview_card .interview_card_prof.yellow::after{
	background-image: url('../img/common/icon_angle_box_right_yellow.svg');
}

.interview_card_section .interview_card .interview_thumb.orange{
	box-shadow: 10px 10px 0 #F18C47
}
.interview_card_section .interview_card .interview_shop.orange{
	color:#F18C47
}
.interview_card_section .interview_card .interview_card_prof.orange::after{
	background-image: url('../img/common/icon_angle_box_right_orange.svg');
}

.interview_card_section .interview_card .interview_thumb.pink{
	box-shadow: 10px 10px 0 #ED81A9;
}
.interview_card_section .interview_card .interview_shop.pink{
	color:#ED81A9;
}
.interview_card_section .interview_card .interview_card_prof.pink::after{
	background-image: url('../img/common/icon_angle_box_right_pink.svg');
}

.interview_card_section .interview_card .interview_thumb.purple{
	box-shadow: 10px 10px 0 #9065A2;
}
.interview_card_section .interview_card .interview_shop.purple{
	color:#9065A2;
}
.interview_card_section .interview_card .interview_card_prof.purple::after{
	background-image: url('../img/common/icon_angle_box_right_purple.svg');
}

.interview_card_section .interview_card .interview_thumb.lightblue{
	box-shadow: 10px 10px 0 #63A7DC;
}
.interview_card_section .interview_card .interview_shop.lightblue{
	color:#63A7DC;
}
.interview_card_section .interview_card .interview_card_prof.lightblue::after{
	background-image: url('../img/common/icon_angle_box_right_light_blue.svg');
}

.interview_card_section .interview_card .interview_thumb.blue{
	box-shadow: 10px 10px 0 #00004E;
}
.interview_card_section .interview_card .interview_shop.blue{
	color:#00004E;
}
.interview_card_section .interview_card .interview_card_prof.blue::after{
	background-image: url('../img/common/icon_angle_box_right_blue.svg');
}


.interview_card_section .interview02_card_item,
.interview_card_section .interview05_card_item{
	transform: translateY(-50px);
}

.interview_card_section .interview03_card_item,
.interview_card_section .interview06_card_item{
	transform: translateY(-100px);
}

/*
------------------------------------
社員インタビュー 詳細
------------------------------------
*/

body.interview_detail_body{
	
}
main.interview_detail_main{

}

.interview_detail_section{

}

.interview_detail_section .yellow{
	color: #f8b300;
}
.interview_detail_section .orange{
	color: #F18C47;
}
.interview_detail_section .pink{
	color: #ED81A9;
}
.interview_detail_section .purple{
	color: #9065A2;
}
.interview_detail_section .lightblue{
	color: #63A7DC;
}
.interview_detail_section .blue{
	color: #00004E;
}

.interview_detail_mv_section{
	position: relative;
	min-height: 768px;
	padding-top: 72px;
	padding-bottom: 240px;
}


.interview_detail_mv_section .interview_detail_mv_inner{
	max-width: 1640px;
	padding:0 20px;
	margin-inline: auto;
}
.interview_detail_mv_section .page_mv_bg{
	width:100%;
	height:100%;
	object-fit: cover;
	top:0;
	left:0;
	position: absolute;
	z-index: -10;
}

.interview_detail_mv_section  .common_bread_list span,
.interview_detail_mv_section  .common_bread_list a{
	color:#fff;
}

.interview_detail_mv_section  .common_bread_list .border{
	background-color: #fff;
}

.interview_detail_mv_section  .interview_catch{
	margin-top: 108px;
}

.interview_detail_mv_section  .interview_catch span{
	font-family: "Source Han Serif", "Noto Serif JP", serif;
    font-weight: 900;
    font-size: 50px;
    letter-spacing: 0.05em;
    font-weight: bold;
    line-height: 1.7;
    background-color: #fff;
    padding: 0 6px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.interview_detail_section01{
	margin-top: -220px;
	padding-top: 110px;
	position: relative;
	padding-bottom: 80px;
	min-height: 400px;
}

.interview_detail_section01 .gra_bg01{
	top:0;
	z-index: -8;

}

.interview_detail_section01 .page_title{
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-align: left;
	color: #000;
}

.interview_detail_section01 .name_flex{
	display: flex;
	align-items: center;
	font-size: 31px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.interview_detail_section01 .interview_shop{
	font-weight: 500;
	margin-right: 40px;
}



.interview_detail_section01 .interview_name{
	font-weight: bold;
}

.interview_detail_section01 .interview_year{
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #000;
	line-height: 1.5;
}

.interview_detail_section01 .interview_movie{
	position: relative;
	border:15px solid;
	margin-top: 80px;
	min-height: 400px;
}

.interview_detail_section01 .movie_text{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 80px;
	line-height: 1;
	position: absolute;
	z-index: 3;
}

.interview_detail_section01 .movie_text01{
	top:0;
	left:20px;
}
.interview_detail_section01 .movie_text02{
	bottom:0;
	right:20px;
}

.interview_detail_section01 .play_icon{
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	z-index: 4;
	cursor: pointer;
	width: 120px;
	height:120px;
	border-radius: 50%;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.interview_detail_section01 .play_icon::after{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 18.5px 0 18.5px 26px;
	
}

.interview_detail_section01 .interview_movie.yellow{
	border-color: #f8b300;
}
.interview_detail_section01 .interview_movie.orange{
	border-color: #F18C47;
}
.interview_detail_section01 .interview_movie.pink{
	border-color: #ED81A9;
}
.interview_detail_section01 .interview_movie.purple{
	border-color: #9065A2;
}
.interview_detail_section01 .interview_movie.lightblue{
	border-color: #63A7DC;
}
.interview_detail_section01 .interview_movie.blue{
	border-color: #00004E;
}

.interview_detail_section01 .interview_movie.yellow .play_icon::after{
	border-color: transparent transparent transparent #f8b300;
}
.interview_detail_section01 .interview_movie.orange .play_icon::after{
	border-color: transparent transparent transparent #F18C47;
}
.interview_detail_section01 .interview_movie.pink .play_icon::after{
	border-color: transparent transparent transparent #ED81A9;
}
.interview_detail_section01 .interview_movie.purple .play_icon::after{
	border-color: transparent transparent transparent #9065A2;
}
.interview_detail_section01 .interview_movie.lightblue .play_icon::after{
	border-color: transparent transparent transparent #63A7DC;
}
.interview_detail_section01 .interview_movie.blue .play_icon::after{
	border-color: transparent transparent transparent #00004E;
}



.interview_detail_section .interview_block{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.interview_detail_section .interview_block .interview_text_area{
	width:534px;
}

.interview_detail_section .interview_question{
	display: flex;
	align-items: flex-start;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1.3;
	margin-bottom: 48px;
}

.interview_detail_section .interview_question span{
	flex-shrink: 0;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 50px;
	margin-top: -12px;
	margin-right: 4px;
}

.interview_detail_section .interview_answer{
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;
}

.interview_detail_section .interview_img{
	position: relative;
	
}

.interview_detail_section .interview_img img{
	position: absolute;
	height:100%;
	object-fit: cover;
	top:0;
}



.interview_detail_section02{
	position: relative;
	padding-top: 102px;
}

.interview_detail_section02::before{
	content:'';
	width: 100%;
	height:calc(100% + 500px);
	top:0;
	left:0;
	z-index: -6;
	background-color: #fff;
	position: absolute;
}

.interview_detail_section03{
	padding-top: 210px;
	padding-bottom: 156px;
	position: relative;
	overflow: hidden;
}

.interview_detail_section03 .gray_bg{
	top:23px;
	z-index: -4;
	height:100%;
	object-position: top;
}

.interview_detail_section04{
	padding-top: 105px;
	padding-bottom: 170px;
	position: relative;
}

.interview_detail_section04 .gra_bg02{
	bottom:0;
	z-index: -1;
	height:100%;
	object-position: bottom;
}


/*インタビューブロック01*/
.interview_detail_section .interview_block01{
	padding-left: 80px;
}


.interview_detail_section .interview_block01 .interview_img{
	width:492px;
	height:380px;
	margin-top: 100px;
}

.interview_detail_section .interview_block01 .interview_img img{
	left:0;
	width: min(calc(628 / 1920 * 100vw) , calc(628 / 1920 * 1920px));
}


/*インタビューブロック02*/
.interview_detail_section .interview_block02{
	padding-left: 80px;
	margin-top: 24px;
}


/*インタビューブロック03*/
.interview_detail_section .interview_block03{
	flex-direction: row-reverse;
}

.interview_detail_section .interview_block03 .interview_img{
	width:523px;
	height:495px;
}

.interview_detail_section .interview_block03 .interview_img img{
	right:0;
	width: min(calc(826 / 1920 * 100vw) , calc(826 / 1920 * 1920px));
}

/*インタビューブロック04*/
.interview_detail_section .interview_block04{
	margin-top: 160px;
}

.interview_detail_section .interview_block04 .interview_img{
	width:523px;
	height:495px;
}

.interview_detail_section .interview_block04 .interview_img img{
	left:0;
	width: min(calc(826 / 1920 * 100vw) , calc(826 / 1920 * 1920px));
}

/*インタビューブロック05*/
.interview_detail_section .interview_block05{
	flex-wrap: wrap;
}

.interview_detail_section .interview_block05 .interview_img{
	width:500px;
	height:381px;
}

.interview_detail_section .interview_block05 .interview_img img{
	left:0;
	width: min(calc(624 / 1920 * 100vw) , calc(624 / 1920 * 1920px));
}

/*インタビューブロック06*/
.interview_detail_section .interview_block06{
	flex-direction: row-reverse;
	margin-top: 170px;
}

.interview_detail_section .interview_block06 .interview_question{
	width: 100%;
}

.interview_detail_section .interview_block06 .interview_img{
	width:580px;
	height:495px;
}

.interview_detail_section .interview_block06 .interview_img img{
	right:0;
	width: min(calc(826 / 1920 * 100vw) , calc(826 / 1920 * 1920px));
}


/*今後の目標ブロック*/
.interview_detail_section .goal_block{
	margin-top: 170px;
	background-color: #F5F5F5;
	padding:70px 140px 64px;
}

.interview_detail_section .goal_block .goal_img{
	max-width: 630px;
	margin-inline: auto;
}

.interview_detail_section .goal_block .goal_head{
	margin-top: 40px;
	text-align: center;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	text-align: center;
}

.interview_detail_section .goal_block .goal_text{
	margin-top: 40px;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;

}


.interview_other_section{
	padding-top: 210px;
	padding-bottom: 210px;
}

.interview01_other_section{
	background-color: #FDF9ED;
}
.interview02_other_section{
	background-color: #FCF6F2;
}
.interview03_other_section{
	background-color: #FDF5F8;
}
.interview04_other_section{
	background-color: #FFFAFF;
}
.interview05_other_section{
	background-color: #F0F9FF;
}
.interview06_other_section{
	background-color: rgba(0 , 0 , 78 , 0.07);
}

.interview_other_section .container{
	max-width: 1440px;
}

.interview_other_section .sec_title{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #00004e;
}

.interview_other_section .other_area{
	margin-top: 72px;
}

.interview_other_section .other_list{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.interview_other_section .other_item{
	width: 19.2%;
}

.interview_other_section .other_card{
	display: block;
	padding-right: 10px;
}

.interview_other_section .other_thumb_area{
	position: relative;
}

.interview_other_section .other_thumb{
	aspect-ratio: 1/1;
}

.interview_other_section .other_thumb img{
	width:100%;
	height:100%;
	object-fit: cover;
}

.interview_other_section .other_shop{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 40px;
	padding:3px 10px;
	background-color: #fff;
	position: absolute;
	bottom:-18px;
	left:0;
	z-index: 4;
	font-weight: bold;
	font-size: 20px;
}

.interview_other_section .other_card_textarea{
	padding-top: 28px;
	padding-left: 10px;
}

.interview_other_section .other_card_prof{
	display: flex;
	align-items: flex-end;
}

.interview_other_section .other_card_prof::after{
	content:'';
	width:38px;
	height:38px;
	flex-shrink: 0;
	margin-left: 12px;
}

.interview_other_section .other_card_year{
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.3;
	color: #333333;
}

.interview_other_section .other_card_name{
	font-size: 20px;
	font-weight: bold;
}

.interview_other_section .other_card .other_thumb.yellow{
	box-shadow: 10px 10px 0 #F8B300;
}
.interview_other_section .other_card .other_shop.yellow{
	color:#F8B300;
}
.interview_other_section .other_card .other_card_prof.yellow::after{
	background-image: url('../img/common/icon_angle_box_right_yellow.svg');
}

.interview_other_section .other_card .other_thumb.orange{
	box-shadow: 10px 10px 0 #F18C47
}
.interview_other_section .other_card .other_shop.orange{
	color:#F18C47
}
.interview_other_section .other_card .other_card_prof.orange::after{
	background-image: url('../img/common/icon_angle_box_right_orange.svg');
}

.interview_other_section .other_card .other_thumb.pink{
	box-shadow: 10px 10px 0 #ED81A9;
}
.interview_other_section .other_card .other_shop.pink{
	color:#ED81A9;
}
.interview_other_section .other_card .other_card_prof.pink::after{
	background-image: url('../img/common/icon_angle_box_right_pink.svg');
}

.interview_other_section .other_card .other_thumb.purple{
	box-shadow: 10px 10px 0 #9065A2;
}
.interview_other_section .other_card .other_shop.purple{
	color:#9065A2;
}
.interview_other_section .other_card .other_card_prof.purple::after{
	background-image: url('../img/common/icon_angle_box_right_purple.svg');
}

.interview_other_section .other_card .other_thumb.lightblue{
	box-shadow: 10px 10px 0 #63A7DC;
}
.interview_other_section .other_card .other_shop.lightblue{
	color:#63A7DC;
}
.interview_other_section .other_card .other_card_prof.lightblue::after{
	background-image: url('../img/common/icon_angle_box_right_light_blue.svg');
}

.interview_other_section .other_card .other_thumb.blue{
	box-shadow: 10px 10px 0 #00004E;
}
.interview_other_section .other_card .other_shop.blue{
	color:#00004E;
}
.interview_other_section .other_card .other_card_prof.blue::after{
	background-image: url('../img/common/icon_angle_box_right_blue.svg');
}



main.interview02_detail_main .interview_detail_mv_section .page_mv_bg{
	object-position: 24%;
}

main.interview06_detail_main .interview_detail_mv_section .page_mv_bg{
	object-position: 24%;
}

/*
------------------------------------
福利厚生
------------------------------------
*/

body.welfare_body{
	
}
main.welfare_main{

}

.welfare_section{
	padding-top: 96px;
	padding-bottom: 208px;
	position: relative;
}

.welfare_section .bg_gra{
	object-position: top;
	top:-240px;
	min-height: calc(100% + 240px);
	z-index: -4;
}

.welfare_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #000;
}

.welfare_section .welfare_frame{
	margin-top: 170px;
}

.welfare_section .welfare_list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap:40px 48px;
}

.welfare_section .welfare_block{
	min-height: 330px;
	background-color: #fff;
	padding:28px 32px 24px;
}

.welfare_section .welfare_icon{
	min-height: 128px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.welfare_section .welfare_icon img{
	width: auto;
}

.welfare_section .welfare_icon01{
	height:112px;
}
.welfare_section .welfare_icon02{
	height:128px;
}
.welfare_section .welfare_icon03{
	height:108px;
}
.welfare_section .welfare_icon04{
	height:109px;
}
.welfare_section .welfare_icon05{
	height:115px;
}
.welfare_section .welfare_icon06{
	height:106px;
}

.welfare_section .welfare_title{
	text-align: center;
	margin-top: 10px;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
}

.welfare_section .welfare_text{
	margin-top: 16px;
	display: flex;
	justify-content: center;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

/*
------------------------------------
募集要項
------------------------------------
*/

body.description_body{
	
}
main.description_main{

}

.description_section{
	padding-top: 96px;
	padding-bottom: 208px;
	position: relative;
}

.description_section .bg_gra{
	object-position: top;
	top:-240px;
	min-height: calc(100% + 240px);
	z-index: -4;
}

.description_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #000;
}

.description_section .description_area{
	max-width: 1100px;
	margin:148px auto 0;
}

.description_section .description_list{

}

.description_section .description_line{
	display: flex;
	align-items: flex-start;
	padding:32px 0;
	border-bottom:1px solid #707070;
}

.description_section .description_head{
	width:230px;
	padding-left: 24px;
	padding-right: 24px;
	font-weight: bold;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.description_section .description_contents{
	font-weight: bold;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;
	width:100%;
	padding-right: 44px;
}

.description_section .description_flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	max-width: 760px;
}

.description_section .description_button{
	width: 230px;
	min-height: 62px;
	padding:4px 30px;
	background: #333;
	border: 1px solid #333;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #fff;
}

.description_section .description_button::after{
	content:'';
	width:10px;
	height:12px;
	background-image: url('../img/common/icon_angle_right_white.svg');
	background-position: right;
	flex-shrink: 0;
	margin-left: 8px;
}

/*
------------------------------------
人材育成
------------------------------------
*/

body.growth_body{
	
}
main.growth_main{

}

.growth_section{
	padding-top: 136px;
	padding-bottom: 206px;
	position: relative;
}

.growth_section .bg_gra{
	object-position: top;
	top:-240px;
	min-height: calc(100% + 240px);
	z-index: -4;
}

.growth_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #000;
}

.growth_section .training_area{
	margin-top: 148px;
}

.growth_section .growth_box{
	background-color: #fff;
	padding:108px 24px 120px;
	margin-top: 80px;
}

.growth_section .growth_head{
	font-weight: bold;
	font-size: 40px;
	text-align: center;
	color: #000;
}

.growth_section .growth_flex{
	display: flex;
	justify-content: center;
	align-items: center;
	gap:0 25px;
	position: relative;
	margin-top: 48px;
}

.growth_section .growth_flex:after{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 17px 19.5px 0 19.5px;
	border-color: #00004E transparent transparent transparent;
	position: absolute;
	top:100%;
	left:0;
	right:0;
	margin:auto;
}

.growth_section .growth_block{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 435px;
	min-height: 125px;
	border-radius:125px;
	border-radius: 125px;
	padding:4px 12px;
	color:#fff;
}
.growth_section .growth_block01{
	background-image: url('../img/growth/button01.jpg');
}
.growth_section .growth_block02{
	background-image: url('../img/growth/button02.jpg');
}

.growth_section .cross{
	width:40px;
	height:40px;
	background-image: url('../img/growth/cross.svg');
	background-size:contain;
}

.growth_section .growth_text01{
	font-weight: bold;
	font-size: 30px;
	text-align: center;
}


.growth_section .growth_text02{
	font-size: 15px;
	letter-spacing: 0.05em;
}

.growth_section .growth_result{
	margin-top: 48px;
	font-weight: bold;
	font-size: 30px;
	text-align: center;
}

.growth_section .training_area{
	margin-top: 148px;
}

.growth_section .training_frame{
	margin-top: 48px;
}

.growth_section .training_list{
	display: flex;
	justify-content: space-between;
}

.growth_section .training_block{
	width: 370px;
	min-height: 392px;
	background: #fff;
	padding:80px 56px 40px;
}

.growth_section .training_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 115px;
}

.growth_section .training_icon img{
	width: auto;
}

.growth_section .training_icon01{
	height:111px;
}
.growth_section .training_icon02{
	height:114px;
}
.growth_section .training_icon03{
	height:49px;
}


.growth_section .training_head{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin-top: 12px;
	min-height: 50px;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
}

.growth_section .training_head span{
	font-size: 15px;
	font-weight: 500;
	line-height: 1.3;
}

.growth_section .training_text{
	margin-top: 16px;
	font-size: 15px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}


/*
------------------------------------
よくある質問
------------------------------------
*/

body.faq_body{
	
}
main.faq_main{

}

.faq_section{
	padding-top: 100px;
	padding-bottom: 210px;
	position: relative;
}

.faq_section .bg_gra{
	object-position: top;
	top:-240px;
	min-height: calc(100% + 240px);
	z-index: -4;
}

.faq_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #000;
}

.faq_section .faq_area{
	margin-top: 180px;
}

.faq_section .faq_area + .faq_area{
	margin-top: 240px;
}

.faq_section .faq_head{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	text-align: center;
}

.faq_section .faq_list{
	margin-top: 24px;
}

.faq_section .faq_block{
	cursor: pointer;
	position: relative;
	border-bottom: 2px solid;
}

.faq_section .faq_block::after{
	content:'';
	width:22px;
	height:18px;
	position: absolute;
	bottom:24px;
	right:24px;
}

.faq_section .faq_block.active::after{
	transform: rotateZ(180deg);
}

.faq_section .faq_block + .faq_block{
	margin-top: 32px;
} 

.faq_section .faq_question{
	padding:24px 64px;
	position: relative;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #333;
	line-height: 1.5;
}

.faq_section .faq_question::before{
	content:'Q';
	width: 35px;
	height: 35px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top:20px;
	left:10px;
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 500;
	font-size: 20px;
	text-align: center;
	line-height: 1;
	color: #fff;
}

.faq_section .faq_answer{
	padding:24px 64px 24px 100px;
	position: relative;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #333;
	line-height: 1.5;
	display: none;
}

.faq_section .faq_answer::before{
	content:'A';
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 400;
	font-size: 30px;
	position: absolute;
	top:18px;
	left:64px;
}


.faq_section .faq_area_yellow .faq_block{
	border-color: #F8B300;
}
.faq_section .faq_area_yellow .faq_question::before{
	background-color: #f8b300;
}
.faq_section .faq_area_yellow .faq_answer::before{
	color: #f8b300;
}
.faq_section .faq_area_yellow .faq_block::after{
	background-image: url('../img/common/icon_angle_bottom_yellow.svg');
}

.faq_section .faq_area_orange .faq_block{
	border-color: #F18C47;
}
.faq_section .faq_area_orange .faq_question::before{
	background-color: #F18C47;
}
.faq_section .faq_area_orange .faq_answer::before{
	color: #F18C47;
}
.faq_section .faq_area_orange .faq_block::after{
	background-image: url('../img/common/icon_angle_bottom_orange.svg');
}

/*
------------------------------------
採用フロー
------------------------------------
*/

body.flow_body{
	
}
main.flow_main{

}

.flow_section{
	padding-top: 100px;
	padding-bottom: 256px;
	position: relative;
}

.flow_section .bg_gra{
	object-position: top;
	top:-240px;
	min-height: calc(100% + 240px);
	z-index: -4;
}

.flow_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	text-align: center;
	color: #000;
}

.flow_section .flow_flex{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 180px;
}

.flow_section .flow_box{
	width:560px;
}

.flow_section .flow_head{
	font-weight: bold;
	font-size: 35px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #2b2145;
}

.flow_section .flow_list{
	margin-top: 38px;
}

.flow_section .flow_block{
	position: relative;
	border:5px solid;
	background-color: #fff;
	padding:50px 24px 20px;
	min-height: 232px;
}	

.flow_section .flow_block + .flow_block{
	margin-top: 50px;
}

.flow_section .flow_block::after{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 15px 22.5px 0 22.5px;
	position: absolute;
	top:100%;
	left:0;
	right:0;
	margin:auto;
}

.flow_section .flow_block:last-child::after{
	content:none;
}

.flow_section .flow_step{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 600;
	font-size: 20px;
	text-align: center;
}

.flow_section .flow_title{
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;
}

.flow_section .flow_text{
	margin-top: 14px;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;
	line-height: 1.5;
}

.flow_section .flow_list_orange .flow_block{
	border-color: #F18C47;
}
.flow_section .flow_list_orange .flow_block::after{
	border-color: #F18C47 transparent transparent transparent;
}
.flow_section .flow_list_orange .flow_step{
	color: #F18C47;
}


.flow_section .flow_list_lightblue .flow_block{
	border-color: #63A7DC;
}
.flow_section .flow_list_lightblue .flow_block::after{
	border-color: #63A7DC transparent transparent transparent;
}
.flow_section .flow_list_lightblue .flow_step{
	color: #63A7DC;
}

/*
------------------------------------
勤務地一覧
------------------------------------
*/

body.place_body{
	
}

main.place_main{

}

.place_section{

}

.place_section .sec_title{
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;
}

.place_map_section{
	padding-top: 135px;
	padding-bottom: 246px;
	position: relative;
}

.place_map_section .bg_gra{
	z-index: -4;
	top:-240px;
}


.place_map_section .flex{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 130px;
}

.place_map_section .map_text01{
	text-align: center;
	font-family: "Source Han Serif" , "Noto Serif JP", serif;
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;
	white-space: nowrap;
	padding-left: 16px;
}

.place_map_section .map_text01 span{
	color:#63A7DC;
}

.place_map_section .map_text02{
	
	text-align: center;
	/* color:#000; */
	
	
}

.place_map_section .map_text02 span{
	display: inline-block;
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.05em;
	background: linear-gradient(45deg ,#f8b300 0%, #f18c47 20.85%, #ed81a9 51.27%, #ba87b9 72.25%, #63a7dc 92.02%, #00004e 100%);

	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
/* 
	background: linear-gradient(90deg, #58c6ff 0%, #076ad9 40%, #ff3bef 80%); */

}

.place_map_section .map{
	width:420px;
}

.place_map_section .prefecture_list{
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap:1px;
	margin-top: 140px;	
}

.place_map_section .prefecture_list a{
	min-height: 52px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding:4px 8px;
	transition-duration: 0.4s;
	background-color: #fff;
	font-weight: 500;
	font-size: 15px;
	letter-spacing: 0.05em;
	color: #2b2145;
}

@media(any-hover:hover){
	.place_map_section .prefecture_list a:hover{
		color:#fff;
		background-color: #63A7DC;
	}
}


.place_detail_section{
	padding-top: 100px;
	padding-bottom: 214px;
	position: relative;
}

.place_detail_section .bg_gra{
	top:-240px;
	z-index: -4;
}

.place_detail_section .no_result{
	text-align: center;
	margin-top: 32px;
}

.place_detail_section .place_list{
	margin-top: 180px;
}

.place_detail_section .place_block + .place_block{
	margin-top: 180px;
}

.place_detail_section .place_guide{
	font-weight: bold;
	font-size: 25px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;

}

.place_detail_section .place_head{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 138px;
	background: #00004e;
	padding:12px 12px;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #fff;
	margin-top: 40px;
}

.place_detail_section .place_table_frame{
	margin-top: 48px;
}

.place_detail_section table{
	border-collapse: collapse;
	width: 100%;
}

.place_detail_section table th,
.place_detail_section table td{
	padding:24px 20px;
}

.place_detail_section table th{
	width:calc(390 / 1200 * 100%);
	background-color: #00004E;
	font-weight: bold;
	font-size: 18px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #fff;
	border-bottom: 1px solid #fff;;
}

.place_detail_section table td{
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;
	border:1px solid #00004E;
}

.place_detail_section .place_flex{
	margin-top: 52px;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap:0 16px;
}

.place_detail_section .place_img_area{
	flex-shrink: 0;
	width: 584px;
}

.place_detail_section .place_img_list li + li{
	margin-top: 16px;
}

.place_detail_section .place_info_area{
	width: 100%;
	color:#333333;
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.5;

}

.place_detail_section .button_area{
	max-width: 550px;
	margin: 210px auto 0;
}

.place_detail_section .button{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 80px;
	font-weight: bold;
	font-size: 15px;
	padding: 12px;
}

.place_detail_section .button + .button{
	margin-top: 46px;
}

.place_detail_section .button.entry{
	background-color: #BA87B9;
	color:#fff;
}

.place_detail_section .button.entry::after{
	content:'';
	width: 23px;
	height: 23px;
	flex-shrink: 0;
	background-image: url('../img/common/icon_angle_box_right_white.svg');
	margin-left: 48px;
}

.place_detail_section .button.back{
	border:1px solid #333333;
	color:#333333
}

.place_detail_section .button.back::before{
	content:'';
	width: 23px;
	height: 23px;
	flex-shrink: 0;
	background-image: url('../img/common/icon_angle_box_right_black.svg');
	margin-right: 48px;
	transform: rotateZ(180deg);
}


/*
------------------------------------
NEWS 一覧
------------------------------------
*/

body.news_archive_body{
	
}
main.news_archive_main{

}

.news_section{
	position: relative;
	
}

.news_section .bread_inner{
	max-width: 1400px;
	padding:0 20px;
	margin-inline:auto;
	padding-bottom: 228px;
}

.news_section .page_title{
	font-weight: bold;
	font-size: 50px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #000;
}

.news_section .news_bg{
	z-index: -7;
	top:0;
	height:100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	
}

.news_section .news_bg .news_bg_head{
	width: 100%;
	flex-shrink: 0;
}

.news_section .news_bg .news_bg_bottom{
	width: 100%;
	height:100%;
	position: relative;
}

.news_section .news_bg .news_bg_bottom::before{
	content:'';
	width:100%;
	height:100%;
	min-height: 3445px;
	position: absolute;
	top:0;
	left:0;
	z-index:-4;
	background: linear-gradient(135deg , #f8b300 0%, #f18c47 20.85%, #ed81a9 51.27%, #ba87b9 72.25%, #63a7dc 92.02%, #00004e 100%);
}

.news_section .news_bg .news_bg_bottom::after{
	content:'';
	width:100%;
	height:100%;
	position: absolute;
	top:0;
	left:0;
	z-index:-2;
	background-color: rgba(255,255,255,0.93);
}

.news_archive_section{
	position: relative;
	padding-top: 80px;
	padding-bottom: 250px;
}

.news_archive_section .news_frame{
	max-width: 1120px;
	margin-inline: auto;
}


.news_archive_section .category_area{
	display: flex;
	align-items: flex-start;
	margin-top: 102px;
}

.news_archive_section .category_head{
	
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-weight: 900;
	font-size: 35px;
	letter-spacing: 0.05em;
	text-align: center;
	color: #2b2145;
	flex-shrink: 0;
}

.news_archive_section .category_list_area{
	width: 100%;
	display: flex;
	justify-content: center;
	padding:0 60px;
}

.news_archive_section .category_list{
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap:20px 80px;
	padding-top: 9px;
}

.news_archive_section .category_list a{
	display: flex;
	align-items: center;
	font-family: "Source Han Sans JP";
	font-weight: bold;
	font-size: 25px;
	line-height: 1.2;
	color: #00004e;
}

.news_archive_section .category_list a.active span{
	border-bottom: 2px solid;
}

.news_archive_section .category_list a::after{
	content:'';
	width: 21px;
	height: 16px;
	background-image: url('../img/common/icon_angle_bottom_blue.svg');
	margin-left: 10px;
	margin-top: 4px;
}

.news_archive_section .no_result{
	text-align: center;
	margin-top: 32px;
}

.news_archive_section .news_list{
	margin-top: 96px;
}

.news_archive_section .news_line{
	border-bottom: 2px solid #ED81A9;
}

.news_archive_section .news_line:first-child{
	border-top: 2px solid #ED81A9;
}

.news_archive_section .news_card{
	display: block;
	padding:36px 0;
}

.news_archive_section .news_info{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap:10px;
}

.news_archive_section .news_date{
	font-family: 'Futura PT', 'Jost' , sans-serif;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #333;
	display: flex;
	align-items: center;
}

.news_archive_section .news_date::after{
	content:'';
	width: 1px;
	height: 17px;
	background: #707070;
	margin-left: 10px;
}

.news_archive_section .news_category{
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	color: #ed81a9;
}

.news_archive_section .news_card .news_title{
	margin-top: 32px;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.news_archive_section .news_card .news_title::after{
	content:'';
	width:18px;
	height:22px;
	background-image: url('../img/common/icon_angle_right_pink.svg');
	flex-shrink: 0;
	margin-left: 12px;
	margin-top: 4px;
}

.news_archive_section .pagenation{
	margin-top: 48px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap:12px 24px;
}

.news_archive_section .pagenation a{
	transition-duration: 0.4s;
	transition-timing-function: opacity;
}

@media(any-hover:hover){
	.news_archive_section .pagenation a:hover{
		opacity: 0.7;
	}
}

.news_archive_section .pagenation .current{
	border-bottom:1px solid;
}


.news_archive_section .single_frame{
	margin-top: 88px;

}

.news_archive_section .single_frame .news_title{
	margin-top: 12px;
	font-weight: bold;
	font-size: 40px;
	letter-spacing: 0.05em;
	text-align: left;
	color: #333;
	line-height: 1.5;
}


.news_archive_section .single_block{
	margin-top: 16px;
	padding:16px 0;
	border-top: 2px solid #ED81A9;
	border-bottom: 2px solid #ED81A9;
	font-weight: 500;
	font-size: 20px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	color: #333;

}

.news_archive_section .news_button_frame{
	display: flex;
	justify-content: flex-end;
	margin-top: 40px;
}


.news_archive_section .news_button{
	width: 547px;
	max-width: 100%;
	min-height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #ED81A9;
	font-weight: bold;
	font-size: 25px;
	line-height: 1;
	color: #fff;
	padding:8px 10px;
}

.news_archive_section .news_button::after{
	content:'';
	width:21px;
	height:21px;
	flex-shrink: 0;
	background-image: url('../img/common/icon_angle_box_right_white.svg');
	margin-left: 52px;
}

.news_archive_section .back_button{
	max-width: 547px;
	min-height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: 1px solid #333333;
	font-weight: bold;
	font-size: 25px;
	line-height: 1;
	color:#333333;
	padding:8px 10px;
	margin: 136px auto 0;
}

.news_archive_section .back_button::before{
	content:'';
	width:21px;
	height:21px;
	flex-shrink: 0;
	background-image: url('../img/common/icon_angle_box_right_black.svg');
	transform: rotateZ(180deg);
	margin-right: 64px;
}
/*
------------------------------------
404
------------------------------------
*/

body.page404_body{
	
}
main.page404_main{

}

.page404_section{
	padding-top: 80px;
	padding-bottom: 100px;
}

.page404_section .p01{
	font-size: 32px;
	text-align: center;
	font-weight: bold;
}

.page404_section .p02{
	width: fit-content;
	margin:32px auto 0;
	text-align: center;
}