@charset "UTF-8";
/* CSS Document */

/*--------------------------------------
ページヘッダー
--------------------------------------*/
.page-header_title{
	line-height: 1.32;
	padding: 20px;
	border-bottom: 1px solid red;
	white-space: nowrap;
}
.page-header_title .eng{
	font-size: 1.2rem;/*1.9rem*/
	color: #FFCC00;
}
.page-header_title h1{
	font-size: 3rem;/*4.5rem*/
	font-weight: 500;
	font-feature-settings: "palt" 1;
}

@media (min-width:768px){
	/*左右に入れ替え*/
	/*背景にmマーク挿入*/
	.page-header{
		display: flex;
		flex-direction: row-reverse;
		justify-content: flex-start;
		/*justify-content: space-between;*/
		padding: 0 20px 50px;
		position: relative;
		background-repeat: no-repeat;
		background-image: url("../image/page/header-m.svg");
		background-position: bottom -20px left 16%;
		/*max-width: 1100px;
		margin: 0 auto;*/
	}
	/*タイトル文字が入った箱*/
	.page-header_title{
		margin: 0 0 0;
		padding: 0;
		border-bottom: none;
		/*flex-basis: 30%;*/
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 350px;
		
		/*padding-right: calc( 2vw * 2 ) ;*/
		/*max-width: 400px;*/
	}
	/*フォントサイズ調整*/
	.page-header_title .eng{ font-size: 1.9rem; }
	.page-header_title h1{
		font-size: 4.5rem;
		font-weight: 700;
	}
	/*写真を角丸に*/
	.page-header_img{
		flex-basis: 65%;
		border-radius: 15px;
		overflow: hidden;
	}
	/*ヘッダーの黄色グラデ帯*/
	.page-header::after{
		content: '';
		display: block;
		width: 100%;
		height: 140px;/*190*/
		position: absolute;
		background: #FFE757;
		background: linear-gradient(90deg, rgba(255, 231, 87, 1) 0%, rgba(255, 188, 14, 1) 100%);
		bottom: 0;
		left: 0;
		z-index: -1;
	}
	
}

main a{
	color: #1558d6;
	text-decoration: underline;
}

/*--------------------------------------
セクション（共通・基本）
--------------------------------------*/
.sec{
	padding-top: 100px;
	padding-bottom: 100px;
}

/*--------------------------------------
H2見出し（共通）
--------------------------------------*/
.page_h2{
	font-size: 2.5rem;
	font-weight: 600;
	line-height: 1.4;
	padding: 0 0.05em 0.25em;
	margin: 0 0 2em 0;
}
.page_h2{
	width: fit-content;
	border-bottom: 2px solid #e40018;
	position: relative;
}
.page_h2::after{
	content: '';
	display: block;
	position: absolute;
	bottom: -2px;
	right: 0;
	width: 50%;
	height: 2px;
	background-color: #FFCC00;
	z-index: 0;
}
.page_h2.line-wh{
	border-bottom: 4px solid #FFF;
}

.page_h2.center{
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.page_h2::before{
	content:'';
	display: block;
	color: #FFCC00;
	font-size: 1.2rem;
	/*フォントファミリーはstyleで一括*/
}

@media (min-width:768px){
	.page_h2{
		font-size: 4.5rem;
		padding: 0 0.05em 0.1em;
		border-bottom: 4px solid #e40018;
	}
	.page_h2::after{
		bottom: -4px;
		height: 4px;
	}
	.page_h2::before{
		font-size: 1.6rem;
	}
}

.page_h2.CompanyProfile::before{
	content:'Company Profile';
}
.page_h2.Philosophy::before{
	content:'Philosophy';
}
.page_h2.History::before{
	content:'History';
}
.page_h2.Message::before{
	content:'Message';
}
.page_h2.Benefits::before{
	content:'Employee Benefits';
}
.page_h2.Number::before{
	content:'Inside Tom Second: In Numbers';
}
.page_h2.Community::before{
	content:'Community Engagement';
}

.page_h2.voice::before{
	content:'Voices of Our Employees';
	color: #FFF;
}
.page_h2.voice::after{
	background-color: #333;
}
.page_h2.Careerstep::before{
	content:'Career Step';
}

.page_h2.JobDetails::before{
	content:'Job Details';
}


/* Page Separator------------------------------------------------------------

お知らせ一覧

----------------------------------------------------------------------------*/
.news__info-list{
	margin: 50px auto;
}








/* Page Separator------------------------------------------------------------

会社情報

----------------------------------------------------------------------------*/
.sec-profile{
	padding-top: 100px;
	padding-bottom: 100px;
}

/*--------------------------------------
会社概要
--------------------------------------*/
.tb-profile{
	width: 100%;
	font-feature-settings: "palt" 1;
}
.tb-profile tr{
	border-top: 1px solid #e6e6e6;	
}
.tb-profile th,
.tb-profile td{
	padding: 1.5em 0;
	box-sizing: content-box;
	color: #6D6D6D;
}
.tb-profile th{
	width: 5em;
	padding-right: 1em;
	color: #000;
	font-weight: 400;
}

.tb-profile:last-child tr:last-child{
	border-bottom: 1px solid #e6e6e6;	
}

@media (min-width:768px){
	.profile-flex{
		display:flex;
		align-items: flex-start;
		letter-spacing: 0.2em;
		gap: 0 5em;
	}
	.tb-profile:first-child tr:last-child{
		border-bottom: 1px solid #e6e6e6;	
	}
	.tb-profile th{
		width: 6em;
		padding-right: 3em;
	}
}

/*--------------------------------------
経営理念
--------------------------------------*/
.sec-philosophy{
	background-color: #fcf8ec;
	padding-top: 100px;
	padding-bottom: 100px;
}
.philo-flex{
	display: flex;
	flex-direction: column;
	gap: 50px 0;
}
.philo-flex img{
	border-radius: 50%;
	overflow: hidden;
	width: 70%;
	max-width: 300px;
	margin: 0 auto;
	display: block;
}
.philo-flex h3{
	text-align: center;
	font-size: 2.0rem;
	margin: 30px 0;
}
.philo-flex p{
	font-size: 1.4rem;
	text-align: center;
	line-height: 2;
	font-feature-settings: "palt" 1;
}
@media (min-width:768px){
	.philo-flex{
		flex-direction: row;
		gap: 0 50px;
	}
	.philo-flex > div{
		flex-basis: 50%;
	}
	.philo-flex h3{
		font-size: 2.4rem;
	}
}
/*--------------------------------------
会社沿革
--------------------------------------*/
.sec-history{
	padding-top: 100px;
	padding-bottom: 100px;
}
.tb-history{
	width: 100%;
}
.tb-history tr{
	border-top: 1px solid #e6e6e6;
	display: block;
	padding: 20px 0;
}
.tb-history th,.tb-history td{
	display: block;
	font-weight: 400;
}
.tb-history th{
	margin: 0 0 0.25em;
}
.tb-history td{
	color: #6D6D6D;
}
@media (min-width:768px){
	.tb-history th,.tb-history td{
		display: table-cell;
		
	}
	.tb-history tr{
		padding: 30px 0;
	}
	.tb-history th{
		white-space: nowrap;
		width: 9em;
		padding-right: 3em;
	}
}


/* Page Separator------------------------------------------------------------

私たちについて

----------------------------------------------------------------------------*/
.sec-message{
	font-size: 1.4rem;
	display: grid;
	grid-row-gap: 1em;
}
.sec-message h2{
	margin-bottom: 1em;
}
.sec-message p{
	line-height: 2;
	margin: 1em 0;
}
.messea-ph{
	margin: 0 auto;
	max-width: 400px;
}
.messea-ph img{
	border-radius: 5%;
	overflow: hidden;
}
@media (min-width:768px){
	.sec-message{
		font-size: 1.6rem;
		display: grid;
		grid-template-columns: 55% 1fr;
		column-gap: 10%;
	}
	.messea-ph{
		grid-column-start: 2;
		grid-row-start: 1;
		grid-row-end: 3;
	}
}

.sec-benefits{
	font-size: 1.4rem;
	line-height: 1.8;
	background: #fafafa;
}

.benefits-chart{
	max-width: 800px;
	margin: 0 auto;
}
@media (min-width:1068px){
	.sec-benefits h2{
		white-space: nowrap;
	}
	.sec-benefits,
	.sec-benefits .wp-block-group__inner-container{
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
}

.sec-benefits h3{
	font-size: 2rem;
	font-weight: 400;
	border-bottom: 1px solid #ABABAB;
	padding: 0 0 0.5em;
	margin: 2em 0 0.5em;
	font-feature-settings: "palt" 1;
}
.sec-benefits h4{
	font-weight: 600;
	margin: 1.5em 0 0;
}
@media (min-width:768px){
	.sec-benefits{
		font-size: 1.6rem;
	}
}
.tb-01{
	margin: 1em 0;
}
.tb-01 table{
	line-height: 1.2;
	font-feature-settings: "palt" 1;
	font-size: 95%;
	margin: 0.5em 0;
}
.tb-01 th,.tb-01 td{
	border: 1px solid #dedede;
	padding: 0.5em;
}
.tb-01 th{
	background: #f6f6f6;
}
.tb-01 td{
	background: #fff;
}

/*========================================
	数字で見るトムセカンド
========================================*/
.infograph{
	display: flex;
	text-align: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px 5%;
}

/*インフォグラフィックの枠*/
.ig-block{
	flex-basis:47.5%;
	padding: 40px 5%;
	background: #F7F7F7;
	border-radius: 15px;
	text-align: center;
}

.ig-block figure{
	margin: 20px auto;
	font-size: 1.2rem;
	color: #BFBFBF;
}
/*00年00月現在*/
.ig-block_date{
	font-size: 1rem;
	color:#888888;
	margin-top: 15px;
}
.number{
	font-size: 1.2rem;
	line-height: 1;
	font-weight: 600;
}

@media (max-width:767px){
	.number .sp{
		display: inline!important;
	}
}
@media (min-width:768px){
	.number .pc{
		display: inline!important;
	}
}


/*カウント数字スタイル*/
.counter{
	font-family: "Oswald", serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
}
/*見出し文字*/
.ig-block h3{
	font-size: 1.8rem;
	margin: 0 -10%;
}
/*カウント数字*/
.counter{ font-size: 5.5rem; }

@media (min-width:768px){
	.infograph{
		gap: 30px 2%;
	}
	.ig-block{
		flex-basis:32.0%;
		padding: 40px 10px;
	}
	.ig-block.half{
		flex-basis:49%;
	}
	.ig-block figure{
		margin: 40px auto 20px;
	}
	.number{
		font-size: 1.4rem;
	}
	/*見出し文字*/
	.ig-block h3{ font-size: 2.6rem;}
	/*カウント数字*/
	.counter{ font-size: 7.5rem; }
}

/*========================================
	地域貢献
========================================*/
.sec-community{
	font-size: 1.4rem;
}
@media (min-width:768px){
	.sec-community{
		font-size: 1.6rem;
	}
}
.cc-block + .cc-block{
	margin-top: 50px;
}
.cc-block{
	display: flex;
	flex-direction: column;
	gap: 20px 0;
}
.cc-block figure{
	border-radius: 20px;
	overflow: hidden;
}
.cc-block h3{
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.4;
	margin: 0 0 1em ;
}
.cc-block p{
	margin: 1em 0;
	line-height: 1.8;
}
@media (min-width:768px){
	.cc-block + .cc-block{
		margin-top: 100px;
	}
	.cc-block{
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
		gap: 0 50px;
	}
	.cc-block h3{
		font-size: 2.2rem;
	}
	.cc-block figure{
		flex-basis: 35%;
	}
	.cc-block .inner{
		flex-basis: 65%;
	}
}

/* Page Separator------------------------------------------------------------

採用情報

----------------------------------------------------------------------------*/
.sec-recruit-intro p{
	font-size: 1.6rem;
	line-height: 2;
}

.recruit-intro-photos{
	position: relative;
	display: flex;
	justify-content: space-around;
	margin: 0 0 30px;
}
.recruit-intro-photos img{
	width: 50%;
}
.recruit-intro-photos img:nth-child(1){
	rotate: -3deg;
}
.recruit-intro-photos img:nth-child(2){
	rotate: 2deg;
	transform: translateY( 20px );
}
@media (min-width:768px){
	.recruit-intro-flex{
		display: flex;
		align-items: flex-start;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
	.recruit-intro-flex .inner{
		width: 55%;
		/*width: 550px;*/
	}
	.recruit-intro-photos{
		display: block;
		width: 35%;
		margin: 0 0;
		/*width: calc(100% - 650px);*/
	}
	.recruit-intro-photos img{
		width: 100%;
		rotate: 0deg!important;
	}
	.recruit-intro-photos img:nth-child(2){
		transform: translate( -10% , -25px);
	}
	
}

.recruit-catchcopy{
	font-size: 2.4rem;
	font-weight: 600;
	margin-bottom: 20px;
}

@media (min-width:768px){
	.recruit-catchcopy{
		font-size: 3.0rem;
		font-feature-settings: "palt" 1;
	}
}

/* Section Separator---------------------------------------------------------

　先輩社員の声

----------------------------------------------------------------------------*/

.sec-voice{
	background: #FFCC00;
}
.page_h2 voice{
	
}
/*wrap*/
.voice-flex{
	
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	gap: 50px 0;
}
/*コマ*/
.voice-child{
	flex-basis: 40%;
	text-align: center;
}
.voice-child img{
	border-radius: 20px;
}
/*役職・入社年*/
.voice-child figcaption,
.vs-child figcaption{
	margin: 10px 0 0;
	font-size: 1.4rem;
	line-height: 1.6;
}
.voice-child figcaption div,
.vs-child figcaption div{
	font-size: 1.2rem;
}

.voice-swiper{
	margin: 0 -20px!important;
}

.vs-child{
	text-align: center;
}
.vs-child img{
	border-radius: 20px;
}

.voice-swiper .swiper-pagination{
	display: block;
	position: relative!important;
	margin: 10px 0 0;
}
.voice-swiper .swiper-pagination-bullet{
	background: #FFFFFF;
	opacity: 0.7;
}
.voice-swiper .swiper-pagination-bullet.swiper-pagination-bullet-active{
	background: #F90000;
}

@media (min-width: 768px) {
  .voice-swiper .swiper-pagination {
    display: none !important;
  }
	.voice-swiper{
		margin: 0 20px!important;
	}
}


@media (min-width:768px){
	.voice-flex{
		gap: 0 0;
	}
	.voice-child{
		flex-basis: 27.5%;
	}
	.voice-child img{
		border-radius: 30px;
	}
	/*役職・入社年*/
	.voice-child figcaption{
		margin: 10px 0 0;
		font-size: 1.6rem;
	}
}

/* 顔写真スタイル */
.profile-pic {

  cursor: pointer;

}


@media (max-width:767px){
	/* モーダル */
	.modal {
		display: none;
		position: fixed;
		z-index: 1000;
		left: 0; top: 0;
		width: 100%; height: 100%;
		background: rgba(0,0,0,0.6);
		opacity: 0;
		transition: opacity 0.3s ease;
	}
	.modal.active {
		display: block;
		opacity: 1;
	}
	.modal-content {
	 	background: #fff;
	 	margin: 20px auto;/*5% auto*/
	 	padding: 0px;
	 	width: 90%;/*80*/
	 	height: 93vh;/*90*/
	 	overflow-y: auto;
	 	border-radius: 10px;/*5*/
	 	/* transform: translateY(-20px);*/
	 	transition: transform 1s ease;
	}
	.modal.active .modal-content {
	  /*transform: translateY(0);*/
	}
	.close-top {
		position: fixed;
		top: 10px;
		right: 10px;
		cursor: pointer;
		padding: 20px;
		font-size: 15px;
		line-height: 1;
		background: #D90107;
		color:#FFF;
		z-index: 999;
		border-radius: 30px;
	}
}
.close-bottom{
	margin: 50px 0 ;
	text-align: center;
}
.btn-end{
	
	background: #D90107;
	color: #FFF;
	padding: 10px;
	border-radius: 30px;
	display: inline-block;
	aspect-ratio: 1 / 1;
	line-height: 1;
}
.close-bottom .close{
	cursor: pointer;
}

@media (min-width:768px){
	/* モーダル */
	.modal {
		display: none;
		position: fixed;
		z-index: 1000;
		left: 0; top: 0;
		width: 100%; height: 100%;
		background: rgba(0,0,0,0.6);
		opacity: 0;
		transition: opacity 0.3s ease;
	}
	.modal.active {
		display: block;
		opacity: 1;
	}
	.modal-content {
		background: #fff;
		margin: 5vh auto;
		padding: 50px;
		width: 95%;
		max-width: 1200px;
		max-height: 90vh;
		overflow-y: auto;
		border-radius: 10px;
		/*transform: translateY(-20px);*/
		transition: transform 0.3s ease;
		
	}
	.modal.active .modal-content {
		transform: translateY(0);
	}
	
	/*========================================
	モーダルのフレックスレイアウト設定
	========================================*/
	.modal-content{
		display: flex;
		gap: 0 5%;
		align-items: flex-start;
		
	}
	.intv-header{
		flex-basis: 40%;/*450px*/
		position: relative;
	}
	.intv-body{
		flex-basis: 60%;/*calc( 100% - 450px)*/
		overflow-y: auto; /* 右だけスクロール */
		max-height: 80vh;
	}
	
	
	.close-top {
		position: fixed;
		top: 10px;
		right: 10px;
		cursor: pointer;
		padding: 20px;
		font-size: 15px;
		line-height: 1;
		background: #D90107;
		color:#FFF;
		z-index: 999;
		border-radius: 30px;
	}
}

/*.modal{
	font-size: 1.4rem;
	line-height: 1.4;
}

.modal h3{
	margin: 2em 0 1em;
	font-size: 1.8rem;
	font-weight: 500;
}
.modal p{
	line-height: 2;
	margin: 1em 0;
}*/




.intv-header{
	position: relative;
	overflow: hidden;
}
/*ネームカードのキャッチ*/
.intv-namecard{
	position: absolute;
	width: 100%;
	bottom: 50px;
	right: -20px;
	background: #FFF;
	padding: 20px;
	border-radius: 10px 0 0 10px;
	font-feature-settings: "palt" 1;
}
.intv-catch{
	font-size: 4.7vw;
	font-weight: 700;
}
.intv-role{
	font-size: 3vw;
	font-weight: 500;
	margin: 1em 0 0;
}
.intv-body{
	padding: 0px 40px;
}

/*赤文字*/
.intv-body h4{
	color: #D90107;
	position: relative;
	margin: 4em 0 1em;
	font-size: 3.5vw;
}
/*赤文字 疑似要素 Q */
.intv-body h4::before{
	content: 'Q.';
	position: absolute;
	left: -1.3em;
}
/*段落キャッチ*/
.intv-body h3{
	font-size: 5vw;
	margin: 1em 0;
	font-feature-settings: "palt" 1;
}
/*本文*/
.intv-body p{
	font-size: 3.3vw;
	line-height: 2;
	margin: 1em 0;
}

@media (min-width:768px){

	.intv-body{
		padding: 0px 0px;
	}
	/*ネームカードのキャッチ*/
	.intv-catch{
		font-size: 2.1rem;
		font-weight: 700;
	}
	/*yakuwari*/
	.intv-role{
		font-size: 1.4rem;
		font-weight: 500;
		margin: 1em 0 0;
	}
	
	/*赤文字*/
	.intv-body h4{
		color: #D90107;
		position: relative;
		margin: 4em 0 1em;
		font-size: 1.6rem;
	}
	/*赤文字 疑似要素 Q */
	.intv-body h4::before{
		left: -1.3em;
	}
	/*段落キャッチ*/
	.intv-body h3{
		font-size: 2.4rem;
		margin: 1em 0;
	}
	/*本文*/
	.intv-body p{
		font-size: 1.5rem;
		line-height: 2;
		margin: 1em 0;
	}
}


/* Section Separator---------------------------------------------------------

　キャリアステップ

----------------------------------------------------------------------------*/
.sec-career p{
	line-height: 2;
}
.step-image{
	margin: 50px 0;
}

/*========================================
	アコーディオン
========================================*/
.career-acd{
	border-top: 1px solid #d3d3d3;/*区切り線*/
	counter-reset: number 0;
}
.career-acd dl{
	border-bottom: 1px solid #d3d3d3;/*区切り線*/
}
.career-acd dt{
	padding: 1em 0 1em 30px;
	position: relative;
}
/*カッコ書きを小さく*/
.career-acd dt span{font-size: 85%;}

/*通し番号*/
.career-acd dl dt::before{
	content: '1';
	display: block;
	width: 20px;
	font-size: 3rem;
	color: #e4e4e4;
	text-align: center;
	line-height: 1;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.career-acd dl:nth-child(2) dt::before{content: '2';}
.career-acd dl:nth-child(3) dt::before{content: '3';}
.career-acd dl:nth-child(4) dt::before{content: '4';}
.career-acd dl:nth-child(5) dt::before{content: '5';}
.career-acd dl:nth-child(6) dt::before{content: '6';}
.career-acd dl:nth-child(7) dt::before{content: '7';}

.career-acd dl dt::after{
	content: '＋';
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	font-weight: 100;
	font-size: 1.7rem;
	line-height: 0;
	transition-duration: 0.3s;
}
.career-acd dl dt.on::after{
	transform: rotate(135deg);
	
}
.career-acd dd{
	padding: 0 0 1.25em 30px;
}

@media (min-width:768px){
	.career-acd dt{
		font-size: 1.8rem;
		padding: 2em 0 2em 70px;
	}
	/*通し番号*/
	.career-acd dl dt::before{
		font-size: 5rem;
		width: 60px;
	}
	.career-acd dd{
		font-size: 1.6rem;
		padding: 0 0 2.5em 70px;
	}
}


.acd-toggle{
	cursor: pointer;
}
.acd-content{
	display: none;
}

/* Section Separator---------------------------------------------------------

　募集要項

----------------------------------------------------------------------------*/
.h3-job{
	font-size:min(5vw,2.4rem);
	font-weight: 500;
	margin: 3em 0 1em
}
.job-d{
	margin: 0;
	border-bottom: 1px solid #d3d3d3;/*区切り線*/
}
.tb-recruit{
	margin: 0px 0;
	width: 100%;
}
.tb-recruit th,
.tb-recruit td{
	display: block;
	line-height: 1.6;
}
.tb-recruit tr{
	border-top: 1px solid #d3d3d3;/*区切り線*/
	padding: 0 20px;
	display: block;
}

.tb-recruit th{
	padding: 2em 0 1em;
	font-size:min(5vw,1.6rem);
	font-weight: 600;
	letter-spacing: 0.15em;
}
.tb-recruit td{
	padding: 0 0 2em;
	font-size:min(4.5vw,1.5rem);
	letter-spacing: 0.1em;
}
.tb-recruit ul{
	list-style-type: disc;
	margin: 0 0 0.5em 1.2em;
	font-feature-settings: "palt" 1;
}
.tb-recruit p + ul{
	margin-top: 0.5em;
}
.tb-recruit ul li{
	line-height: 1.4;
	margin: 0 0 0.3em 0;
}
.tb-recruit dl{
	font-feature-settings: "palt" 1;
}
.tb-recruit dl dt{
	color: rgba(0,0,0,0.7)
}
.tb-recruit dl dd + dt,
.tb-recruit ul + dl,
.tb-recruit p + dl{
	margin: 0.75em 0 0;
}
.tb-recruit .small{
	font-size: 95%
}


@media (min-width:768px){
	.job-d{
		display: flex;
		gap: 0 5%;
		border-bottom: none;
		align-items: flex-start;
	}
	.tb-recruit{
		flex-basis: 50%;
		border-bottom: 1px solid #d3d3d3;/*区切り線*/
	}
	.tb-recruit tr{
		padding: 30px 10px;
	}
	.tb-recruit th,
	.tb-recruit td{
		display: table-cell;
		font-size: 1.4rem;
		padding: 0;
	}
	.tb-recruit th{
		white-space: nowrap;
		width: 7em;
	}
}

.recruit-flow{
	font-size: 1.6rem;
}
.recruit-flow ol{
	list-style-type: decimal;
	margin: 0 0 1.5em 1.5em;
}
.recruit-flow ol li{
	margin: 0.5em 0;
}
.recruit-flow p{
	font-size: 1.4rem;
	margin: 0.5em 0 0.5em 1em;
	text-indent: -1em
}
.recruit-flow p::before{
	content: '※';
	font-family: "Osaka-mono", "MS Gothic", "monospace";
}



/* Page Separator------------------------------------------------------------

店舗紹介

----------------------------------------------------------------------------*/
.store-wrap{
	display: flex;
	flex-wrap: wrap;
	gap: 75px 0;
}
.store-block h3{
	color: #D90107;
	font-size: 1.8rem;
	margin: 1em 0;
	letter-spacing: 0.1em;
}
.store-block{
	min-width: 0;
}

.store-slider{
}
.store-slider .swiper-pagination{
	background: #FFF;
	margin: 0 auto!important;
	display: block;
	width: fit-content!important;
	border-radius: 15px 15px 0 0;
	padding: 8px 10px 0;
	left: 50%!important;
	transform: translateX( -50% );
	line-height: 0;
	bottom: 0px!important;
	z-index: 10;
}




.store-block img{
	border-radius: 10px;
}
ul.addr{
	font-size: 1.4rem;
	letter-spacing: 0.1em;
	margin: 0 0 20px;
}
ul.addr li{
	line-height: 1.4;
	margin: 0.5em 0;
}
ul.addr li::before{
	font-family: "Material Icons";
	font-size: 1.6rem;
	margin-right: 0.25em;
	vertical-align: -2px;
}
ul.addr li:nth-child(1)::before{
	content:'\e0c8';
}
ul.addr li:nth-child(2)::before{
	content:'\e0cd';
}

ul.link{
	display: flex;
	font-size: 1.2rem;
	background: #FBB90D;
	border-radius: 30px;
	overflow: hidden;
}
ul.link a{
	display: block;
	padding: 10px 5px;
	color: #FFF;
	font-weight: 500;
	letter-spacing: 0.1em;
}
ul.link li{
	flex-basis: 50%;
	text-align: center;
}
ul.link li:nth-child(1){
	background: #D90107;
	border-radius: 30px;
}
ul.link li:nth-child(2){
	background: #FBB90D;
}


@media (min-width:768px){
	.store-wrap{
		gap: 75px 0;
		justify-content: space-around
	}
	.store-block{
		flex-basis: 40%;
	}
}

/* Page Separator------------------------------------------------------------

応募フォーム

----------------------------------------------------------------------------*/
.mform{
	font-size: 1.6rem;
}
.mform th, .mform td{
	display: block;
}
.mform tr{
	display: block;
	padding: 0 0 1em 0;
}
.mform th{
	background: #EEEEEE;
	border-top: 2px solid #FFD000;
	padding: 0.75em;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
	position: relative;
}
.mform td{
	padding: 1em 0.5em 1.5em 0.5em;
}

.mform td p{
	margin: 0.5em 0;
	line-height: 1.6;
	font-size: 1.2rem;
}


@media (min-width:768px){
	.mform th, .mform td{
		display: table-cell;
		padding: 0;
		padding: 1em;
		border: 1px solid #d3d3d3;
	}
	.mform tr{
		display: table-row;
	}
	.mform th{
		width: 250px;
		letter-spacing: 0;
		padding: 1.6em 1em 0 1em;
		font-size: 1.4rem;
	}

}
/* Page Separator------------------------------------------------------------

サンクスページ

----------------------------------------------------------------------------*/
.thanks-head{
	text-align: center;
	margin: 0 auto 50px;
}
.thanks-head p{
	font-size: 1.4rem;
	line-height: 2;
	color: #FFBB00;
}
.thanks-head h1{
	font-size: min(4.5vw, 3rem);
	font-weight: 500;
}
.thanks-body{
	max-width: 700px;
	padding: 0 10px;
	font-size: 1.6rem;
}
.thanks-body p{
	line-height: 2em;
	margin: 1em 0;
}
.btn_wh-round.center a{
	margin: 0 auto;
}
@media (min-width:768px){
	.thanks-body{
		text-align: center;
		margin: 0 auto;
	}
}