@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
:root{
  scroll-padding-top: 130px;
}
html {font-size: 62.5%;scroll-behavior: smooth;}
body{  
  font-size: 1.6rem;
}
object {pointer-events: none;}
.sp {display: none !important;}
a[href^="tel:"] {pointer-events: none;}
a {
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}
.pcFlex{display: flex;}
.pcFlex.half{
 justify-content: space-between;
}
.pcFlex.half >*{
 width: 47.6%;
}
.img_r {overflow: hidden;}
.img_r>img {float: right;
    width: 33%;
    margin-left: 15px;
    margin-bottom: 15px;
}
p,li,dt,dd,th,td,input{
  font-size: 1.6rem;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 1.6rem;
}

section{
  padding: 100px 0;
}

/*
　テキスト
========================================== */
.note{
  font-size: 1.2rem;
}

/*
　ボタン,リンク
========================================== */
.btn{
	font-size: 1.8rem;
	height: 70px;
	width: 100%;
	max-width: 404px;
}
.btn.bgW{
	height: 60px;
}
.btnWrap{
	 margin-top: 40px;
}

/*-- table --*/
.basicTable >dt{
	padding: 15px 2.5%;
	width: 30%;
}
.basicTable >dd{
	padding: 15px 2.5%;
	width: 70%;
}
.basicTable >dt:last-of-type{
	border-bottom: none;
}
 .basicTable >dd:last-of-type{
	border-bottom: none;
}

table.basicTable thead th{
	font-size: 1.8rem;
}

/* パンくず
========================================== */
#breadcrumb ul li{
	font-size: 1.4rem;
}

/* =======================================
  ページャー
========================================== */
/*-- pageNavi --*/
.pageNavi{
	gap:0 1.5%;
 margin-top: 80px;
}
.pageNavi .current,
.pageNavi .inactive,
.pageNavi a{
	font-size: 1.8rem;
	width: 40px;
	height: 40px;
}
/*-- pager --*/
.pager{
	margin-top: 50px;
}
.pager a{
font-size: 1.6rem;
}
.pager a:hover{
	opacity: 0.7;
}

/* =======================================
  タブ
========================================== */
.tabPanel.pcFlex{
 display: none;
}
.tabPanel.pcFlex.active{
 display: flex;
}

/* =======================================
	header
========================================== */
header{
	height: 130px;
	padding: 20px 158px 20px 0;
}
header > div.inner1200{
	/*margin-right: 0;*/
}
header #logo{
	font-size: min(1.52vw,1.7rem);
}
header #logo span{
	font-size: min(1.22vw,1.4rem);
}
header #logo a{
	margin-top: 14px;
}
header #logo a img{
  max-width: 165px;
}

header .linkWrap{
	align-items: center;
	justify-content: flex-end;
	gap: 0 10px;
	position: absolute;
  right: 0;
  top: 0;
}
header .btn2{
 border-color: var(--base);
 color: var(--base);
	width: 180px;
	height: 40px;
}
#top header:not(.fixed) .btn2{
 border-color: #fff;
 color: #fff;
}

header .gnavi .btnEntry{
	background: var(--wh);
	font-size: 2.4rem;
	position: fixed;
	top: 0;
	right: 0;
	width: 130px;
	height: 130px;
}
header .gnavi .btnEntry a{
	height: 100%;
}
header .gnavi .btnEntry a:hover{
	opacity: .7;
}

/* =======================================
	gnavi
========================================== */
.gnavi{
	flex: 1;
  padding-top: 40px;
  position: relative;
}
#gnaviList{
	height: 100%;
 justify-content: flex-end;
 align-items: center;
 gap: 0 min(1.5vw, 40px);
 margin-top: 20px;
}
#gnaviList li{
	font-size: min(1.3vw,1.5rem);
	white-space: nowrap;
}
#gnaviList li:not(.contact){
	padding: 0 min(0.4vw, 10px);
}
#top header:not(.fixed) #gnaviList li a{
  color: var(--wh);
}
#gnaviList li.current a,
#gnaviList li a:hover{
 opacity: .7;
}

/* =======================================
	footer/#footContact
========================================== */
#footContact{
	padding: 110px 0 100px;
}
#footContact .topTour{
	margin: 0 auto 80px;
	padding: 0 min(11.5%,174px) 65px;
	width: min(79.64%,876px);
}
#footContact .topTour::before{
	width: min(18.2%,158px);
	height: 228px;
	left: min(4.2%,37px);
}
#footContact .topTour .h2Tit{
	margin-top: -32.5px;
}
#footContact .topTour .h2Tit .en.bgBaseC{
	margin-bottom: 50px;
}
#footContact .topTour p:not(.leadTxt){
    margin-right: -2em;
    margin-left: -2em;
}
#footContact .topTour p.leadTxt{
 font-size: 3rem;
	margin-right: -1em;
	margin-left: -1em;
}
#footContact .topTour .btnWrap{
	margin-top: 30px;
}

#footContact .btnArea{
	gap: 0 20px;
}
#footContact .btnArea li{
	font-size: 2.4rem;
	width: calc((100% - 20px) / 2);
	height: 167px;
}
#footContact .btnArea li a{
	padding: 53px 9.8% 53px 36.8%;
}
#footContact .btnArea li .en{
	font-size: 1.6rem;
}
#footContact .btnArea a::before{
	width: 77px;
	height: 77px;
	left: min(12%,65px);
	top: calc(50% - 38.5px);
}

/* =======================================
	footer/#footBottom
========================================== */
footer a:hover{
  opacity: 0.7;
}
#footBottom{
 padding: 80px 0;
}
#footBottom > .pcFlex{
  justify-content: space-between;
  gap: 0 30px;
}
#footerLogo{
	font-size: 2rem;
}
#footerLogo img{
 max-width: 165px;
}
#footBottom .footerLeft{
	width: 400px;
}
#footBottom .footerLeft dl dt{
	font-size: 1.8rem;
}
#footBottom .footerRight{
	flex: 1;
  display: flex;
  justify-content: end;
  gap: 0 min(6.2vw,40px);
 line-height: 1.3;
 margin-top: 63px;
}
.footerNavi li + li{
	margin-top: 21px;
}
.footerNavi li a{
	font-size: min(1.5vw, 1.5rem);
	line-height: 1em;
}
.footerNavi:nth-of-type(2){
	width: 190px;
}
.footerNavi:nth-of-type(2) li + li{
	margin-top: 15px;
}
.footerNavi:nth-of-type(2) li a:not(.icArrow){
	display: grid;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 38px;
}
#footBottom .footerRight li a.bgW{
	color: var(--bk) !important;
}
.footerNavi:nth-of-type(2) li .icArrow{
	display: flex;
	align-items: center;
	padding: 0.5em 0 0.5em 34px;
}
.footerNavi:nth-of-type(2) li .icArrow::before{
	background: #474747;
	width: 30px;
	height: 30px;
	top: calc(50% - 14px);
	left: 0;
}
.footerNavi:nth-of-type(2) li .icArrow::after{
	width: 6px;
	height: 6px;
	top: calc(50% - 2px);
	left: 10px;
}

#footBottomCopy{
  margin-top: 27px;
	margin-bottom: 78px;
}
footer .copy{
  font-size: 1.2rem;
}

#pageTop{
 bottom: 40px;
}
#pageTop a{
  font-size: 1.6rem;
	width: 80px;
	height: 80px;
	padding-top: 10px;
}
#pageTop a::before{
 width: 8px;
 height: 8px;
 top: 15px;
 left: calc(50% - 4px);
}

/* =======================================
	pgs common
========================================== */

/*		anchorLink
-----------------------------*/
.anchorLink{
	padding: 50px 0;
	gap:0 1.8%;
	justify-content: center;
}
.anchorLink ul{
	padding: 35px 0;
	gap:15px 20px;
}
.pageLinks{
	gap:20px 30px;
}
.pageLinks ul{
	gap:15px 20px;
}
.anchorLink li,
.pageLinks li{
	flex: 1;
 min-width: 180px;
 max-width: 200px;
	height: 50px;
}
.anchorLink a,
.pageLinks li a{
	padding: 8px 10px;
}
.anchorLink + section{
	padding-top: 65px;
}

.linkArea .pageLinks li{
 flex:none;
 width: 30%;
 height: 70px;
 min-width:inherit;
 max-width: none;
}


/* =======================================
	top PC
========================================== */
#topCompany .h2Tit.tiBdr,
#topDaily .h2Tit.tiBdr{
	background-position: left 18px, right 18px, left bottom, right bottom;
	background-size: 50px;
	margin-bottom: 1.3em;
	padding-bottom: 34px;
	width: min(64%,768px);
}
#topAboutUs .h2Tit.tiBdr{
	background-size: 30px;
	margin-bottom: 1.2em;
	padding-bottom: 12px;
	width: min(100%,418px);
}
.h2Tit .en{
	font-size: 1.6rem;
	margin-bottom: 5px;
}
.h2Tit .en.bgBaseC{
	margin: 0 auto 25px;
	width: 358px;
	height: 46px;
}

/*		#mv
-----------------------------*/
#mv{
	padding-top: 184px;
}
#mvTxts p{
	font-size: 3rem;
	margin-bottom: 30px;
}
#mvTxts h2{
 font-size: min(10vw,8rem);
}
#mvTxts h2 span{
	margin-right: 8px;
	margin-top: 16px;
	padding: 1px 8px 8px;
}
#mv figure{
	margin-top: 10px;
	max-width: 750px;
}

/*		#topMessage
-----------------------------*/
#topMessage{
	background-image: url("../images/top_message_bg_left.png"), url("../images/top_message_bg_right.png"),linear-gradient(rgba(255,255,255,1) 0%,rgba(255,255,255,1) 46px,rgba(85,82,82,1) 46px,rgba(85,82,82,1) 100%);
	background-size: 368px auto, 368px auto, 100vw;
	height: 856px;
	margin-top: -46px;
}
#topMessage > div{
	width: 976px;
	height: 976px;
}
#topMessage h2{
	font-size: 6rem;
	margin-bottom: 40px;
}
#topMessage p{
	font-size: 1.8rem;
	line-height: 2.5;
	margin-bottom: 45px;
}

/*---- .topSlide ---*/
.topSlide{
}
.topSlide figure{
	width: 320px;
	height: 247px;
 margin-right: 19px;
}

/*		#topCompany
-----------------------------*/
#topCompany .companyBox01{
	align-items: center;
	justify-content: center;
	gap: 0 58px;
	margin-bottom: 56px;
}
#topCompany .companyBox01 > figure{
	width: min(32.2%,386px);
	max-height: 386px;
}
#topCompany .companyBox01 .txts{
	width: 100%;
	max-width: 585px;
}
#topCompany .companyBox01 .txts figure{
	margin-bottom: 22px;
	width: min(18vw,269px);
}
#topCompany .companyBox01 .txts h3{
	font-size: 2.4rem;
	margin-bottom: 26px;
}
#topCompany .companyBox01 .txts p{
	font-size: 1.5rem;
}
#topCompany .companyBox02{
	align-items: flex-start;
	justify-content: center;
}
#topCompany .companyBox02 ul{
	gap:0 2%;
	width: min(50%,596px);
}
#topCompany .companyBox02 ul li{
	width: min(calc(94% / 4),140px);
}
#topCompany .companyBox02 figcaption{
	font-size: 2rem;
	margin-top: 7px;
}
#topCompany .companyBox02 p{
	font-size: min(1.43vw,1.8rem);
	margin-left: 55px;
	padding: 24px 2.5%;
	width: min(36.7%,440px);
}
#topCompany .companyBox02 p::before{
	left: -37px;
	bottom: 20px;
	-webkit-transform: rotate(35deg);
	transform: rotate(-35deg);
}
#topCompany .btnWrap{
	margin-top: 70px;
}

/*		#topDaily
-----------------------------*/
#topDaily .voiceBox{
	align-items: center;
	margin-bottom: 43px;
}
#topDaily .voiceBox figure{
	margin-right: 24px;
	width: min(12.435vw,158px);
}
#topDaily .voiceBox p{
	font-size: 2.4rem;
	padding: 28px 60px;
	width: 653px;
}
#topDaily .voiceBox p::before,
#topDaily .voiceBox p::after{
	clip-path: polygon(0 50%, 100% 0, 100% 100%);
}
#topDaily .voiceBox p::before{
	width: 34px;
	height: 27px;
	top: 84px;
	left: -34px;
}
#topDaily .voiceBox p::after{
	width: 32px;
	height: 25px;
	top: 85px;
	left: -31px;
}
#topDaily ul li{
	width: 140px;
}
#topDaily ul li figcaption{
	font-size: 2rem;
	margin-top: 10px;
}

/*		#topAboutUs
-----------------------------------*/
#topAboutUs{
	justify-content: center;
	gap: 0 80px;
}
#topAboutUs > div{
	width: 40%;
	max-width: 480px;
}
#topAboutUs .h2Tit{
	font-size: min(2.67vw,3.6rem);
	margin-bottom: 30px;
	padding-left: 8%;
	padding-right: 8%;
}
#topAboutUs > div figure{
	margin: 0 auto 30px;
	max-width: 384px;
}

/*		#topInterview
-----------------------------*/
#topInterview h2{
	font-size: 2rem;
	margin-bottom: 25px;
}
#topInterview h2 .en{
	font-size: 6rem;
}
#topInterview ul{	
	margin: 40px auto 0;
 padding: 0 75px;
}

#topInterview ul li.slick-slide{
 margin: 0 15px;
}
#topInterview ul li a::before{
	width: 40px;
	height: 40px;
	bottom: 30px;
	right: 30px;
}
#topInterview ul li a::after{
  bottom: 47px;
  right: 47px;
}
#topInterview ul li .txts{
	padding: 25px 30px 35px;
}
#topInterview ul li h3{
	font-size: 1.8rem;
	margin-bottom: 35px;
}
#topInterview ul li p{
	font-size: 1.5rem;
}
#topInterview .btnWrap{
	margin-top: 70px;
}


/* =======================================
   company PC
========================================== */
#companyLead{
	padding-bottom: 50px;
}
#companyLead .flex p a:hover{
 opacity: .7;
}
#companyLead .flex p{
margin-bottom: 50px;
 padding: 50px 30px;
 font-size: min(2.38vw,2.4rem);
}
#companyLead .flex figure{
 width: 19.2%;
 max-width: 230px;
}


.jobArea .pcFlex{
 align-items: flex-start;
 justify-content: space-between;
}
.jobArea .pcFlex .txts{
 width: 50%;
}
.jobArea .pcFlex .txts h3{
	background-size: 25px;
  padding:12px 4.5%;
}
.jobArea .box{
	padding: 0px 4% 30px;
}
.jobArea .box h4{
padding: 2px 20px;
 margin-top: -1em;
}

.companyJobSlide{
 width: 46%;
}
.pcGrid{
 display: grid;
 grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, auto);
grid-column-gap: 6%;
grid-row-gap: 30px;
}
.jobArea .pcGrid .h4Tit{
	font-size: 2.2rem !important;
}
.pcGrid .schedule { grid-area: 1 / 1 / 3 / 2;}
.pcGrid .schedule .h4Tit{
	width: max(70%, 300px);
}
.pcGrid .box{ grid-area: 1 / 2 / 2 / 3; }
.pcGrid .box +.box { grid-area: 2 / 2 / 3 / 3; }

.schedule dd{
 padding: 0 0 3px 50px;
 margin-bottom: 6px;
}

.companyInterview li{
 display: flex;
 justify-content: space-between;
}
.companyInterview li figure{
 width: 48%;
}
.companyInterview li .txts{
 width: 49% !important;
}
.companyInterview li .txts .h5Tit{
	font-size:min(1.69vw, 2rem)
}
.companyInterview li .btn{
	height: 40px;
	width: min(100%,200px);
	margin-top: 10px;
}
.companyInterview li a.btn:hover{
 opacity: .7;
}

/* =======================================
   daily PC
========================================== */
#dailyMain ul {
 display: flex;
 flex-flow: row wrap;
 justify-content: flex-start;
 align-items: flex-start;
}
#dailyMain ul li{
/* margin-left: min(6.58vw,79px);*/
}
#dailyMain li:not(.imgBg){
 width: 21.3%;
 max-width: 230px;
}

#dailyMain ul li:nth-of-type(1) {
 width: 22.7%;
 margin-left: min(2.68vw,29px);
}
#dailyMain ul li:nth-of-type(1)::after{
top: 70%;
transform: rotate(15deg);
}
#dailyMain ul li:nth-of-type(2) { 
 margin: auto 0 0 min(7.31vw,79px);
}
#dailyMain ul li:nth-of-type(2)::after{
 top: 20%;
transform: rotate(-10deg);
}
#dailyMain ul li:nth-of-type(3) {
 width:33.9% ;
 margin: 0 auto 60px min(7.31vw,79px);
}
#dailyMain ul li:nth-of-type(3)::after{
top: 90%;
 left: 20%;
transform: rotate(60deg);
}
#dailyMain ul li:nth-of-type(4) {
 width: 26.9%;
margin: -100px -18px 0 calc(100% - 290px);
}
#dailyMain ul li:nth-of-type(4)::after{
top: 100%;
left: 0%;
transform: rotate(100deg);
}
#dailyMain ul li:nth-of-type(5) {
 order:7;
 width: 30.9%;
 margin: 30px min(3.24vw,14px) 0 0;
}
#dailyMain ul li:nth-of-type(5)::after{
top: 20%;
 right: 60%;
left: auto;
transform: rotate(40deg);
}
#dailyMain ul li:nth-of-type(6) {
 order:6;
 width: 27.8%;
 margin: -200px min(3.24vw,35px) 0 0;
}
#dailyMain ul li:nth-of-type(6)::after{
top: 48%;
 right: 60%;
left: auto;
transform: rotate(-5deg);
}
#dailyMain ul li:nth-of-type(7) {
 order:5;
 width: 23.2%;
 margin: -180px min(9.81vw,106px) 0 auto;
}
#dailyMain ul li:nth-of-type(7)::after{
top: 110%;
right: 10%;
left: auto;
transform: rotate(100deg);
}
#dailyMain ul li:nth-of-type(8) {
 order:8;
 width: 23.2%;
 margin: -130px min(7.77vw,84px) 0 0;
}
#dailyMain ul li:nth-of-type(8)::after{
 top: 65%;
transform: rotate(15deg);
}
#dailyMain ul li:nth-of-type(9) {
 order:9;
 width: 26.8%;
 margin: -63px min(13.24vw,143px) 0 0;
}
#dailyMain ul li:nth-of-type(9)::after{
 left: 65%;
transform: rotate(-5deg);
}
#dailyMain ul li:nth-of-type(10) {
 order:10;
 margin: 35px 0 0 0;
}
#dailyMain ul li:nth-of-type(10)::after{
top: 90%;
 left: 20%;
transform: rotate(70deg);
}
#dailyMain ul li:nth-of-type(11) {
 order:13;
 width: 24.1%;
 margin: -40px 0 0 0;
}
#dailyMain ul li:nth-of-type(11) .dailyBtn{
 position: absolute;
 top: 30px;
right: 82%;
 white-space: nowrap;
 z-index: 1;
}
#dailyMain ul li:nth-of-type(11) .dailyBtn::after{
 left: 78%;
 height: 70%;
}
#dailyMain ul li:nth-of-type(11) dl{
 margin-top: 0;
 top: 32%;
}
#dailyMain ul li:nth-of-type(11)::after{
top: 55%;
 right: 50%;
left: auto;
transform: rotate(-35deg);
}
#dailyMain ul li:nth-of-type(12) {
 order:12;
 width: 24.2%;
 margin: 38px min(5.46vw,59px) 0 0;
}
#dailyMain ul li:nth-of-type(12)::after{
top: 40%;
right: 50%;
left: auto;
transform: rotate(5deg);
}
#dailyMain ul li:nth-of-type(13) {
 order:11;
 width: 26%;
 margin: 0 min(8.88vw,96px) 0 auto;
}
#dailyMain ul li:nth-of-type(13)::after{
top: 110%;
right: 15%;
left: auto;
transform: rotate(100deg);
}
#dailyMain ul li:nth-of-type(14) {
 order:14;
 width: 26%;
 margin: -29px 0 0 min(3.24vw,35px);
}
#dailyMain ul li:nth-of-type(14)::after{
 top: 72%;
transform: rotate(25deg);
}
#dailyMain ul li:nth-of-type(15) {
 order:15;
 width: 24.1%;
 margin: 130px 0 0 min(5.37vw,58px);
}
#dailyMain ul li:nth-of-type(15)::after{
 top: 45%;
 left: 80%;
transform: rotate(-20deg);
}
#dailyMain ul li:nth-of-type(16) {
 order:16;
 width: 25.7%;
 margin: 35px 0 0 min(12.96vw,140px);
}

#dailyMain li dl dd{
	font-size: min(1.4vw, 1.6rem);
}

.modalBox .pcFlex{
 justify-content: space-between;
}
.modalBox .pcFlex figure{
 width: 50%;
}
.modalBox .pcFlex .txts{
 width: 45%;
 display: flex;
 flex-flow: column;
 justify-content: space-between;
}


/* =======================================
   working PC
========================================== */
#workingEducation .h4Tit:not(:first-of-type){
	margin-top: 100px;
}
#workingEducation .educationBox{
	gap: 0 2%;
}
#workingEducation .educationBox li{
  padding: 30px;
	width: calc(96% / 3);
}
#workingEducation .educationBox li h5{
	font-size: 1.8rem;
}

.growthSteps{
	margin-top: 80px;
}
.growthSteps h5{
font-size: 2.6rem;
margin-bottom: 20px;
}
.growthSteps h5 span::after{
	width: 116px;
	height: 89px;
	right: -160px;
	bottom: -6px;
}
.growthSteps ul{
	gap: 4.5%;
}
.growthSteps ul li{
	width: calc(86.5% / 4);
	padding: 15px;
}
.growthSteps ul li:not(:last-of-type)::after{
	width: 15px;
	height: 20px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	left: calc(100% + 7.5%);
	top: calc(50% - 10px);
}

#workingBenefit ul.pcFlex {
	gap: 0 5%;
    justify-content: center;
}
#workingBenefit ul.pcFlex li{
	width: min(25vw,360px);
	max-width: 360px;
}
#workingBenefit ul.pcFlex li h4 figure{
	width: min(25vw,300px);
	height: min(25vw,300px);
}
#workingBenefit ul.pcFlex li h4{
	font-size: 2rem;
}
#workingBenefit ul.flex {
	justify-content: center;
	gap: 30px 3%;
	margin: 50px 0;
}
#workingBenefit ul.flex li{
	padding: 15px 0.84%;
	width: min(25vw,200px);
}

#educationpop{
 min-width: 400px;
}

#workingGallery .anchorLink{
	gap: 15px 1%;
	margin: 0 auto;
	padding-top: 0;
	max-width: calc(800px + 3%);
}
#workingGallery div.pcFlex{
	flex-wrap: wrap;
	gap: 16px 1.6%;
}
#workingGallery div.pcFlex figure{
	max-width: calc((100% - 1.6% * 2) / 3);
}

/* =======================================
   numbers PC
========================================== */
#numbersUnraveled .pcFlex,
#numbersQuestion .pcFlex{
	flex-wrap: wrap;
	gap:20px;
}

#numbersUnraveled .pcFlex > div,
#numbersQuestion .pcFlex > div{
	width: calc(50% - 10px);
		padding: 30px;
}

#numbersQuestion .pcFlex > div.large{
	width: 100%;
}
/* =======================================
   interview PC
========================================== */
#interviewList ul.flexWrap{
 gap:50px 40px;
}
#interviewList ul.flexWrap li{
 width: calc((100% - 40px*2)/3)
}

#interviewList li h3{
 display: flex;
 align-items: center;
 justify-content: flex-start; 
 min-height: 3.8em;
 line-height: 1.4;
}
#interviewList li a:hover{
 opacity: .7;
}
/** single**/
#interviewMain .inner1100 .pcFlex:nth-of-type(even){
 flex-flow: row-reverse;
}
#interviewMain .pcFlex{
 justify-content: space-between;
 margin-bottom: 60px;
}
#interviewMain .pcFlex >figure{
 width: 42%;
}
#interviewMain .pcFlex .txts{
 width: 52%;
}
#interviewMain h4{
 font-size: 2.6rem;
}

/* =======================================
   tour PC
========================================== */
#tourLead .flex{
}
#tourLead .flex figure {
 width: 19.2%;
}
#tourPlan .schedule{
 justify-content: space-between;
 align-items: center;
}
#tourPlan .schedule figure{
 width: 50%;
}
#tourPlan .schedule dl{
 width: 45%;
}
#tourPlan .schedule dl dt,
#tourPlan .schedule dl dd{
 font-size: 1.8rem;
}

/* =======================================
   recruit PC
========================================== */

/* =======================================
	news PC
========================================== */
/*		一覧
-----------------------------*/
.contCol2{
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.contCol2 .contMain{
	width: 75%;
}
.contCol2 .contSide{
	width: 17%;
}
.newsBox.pcFlex{
 justify-content: space-between;
}
.newsBox.pcFlex figure{
 width: 30%;
}
.newsBox.pcFlex .txts{
 width: 66%;
}

/*	詳細　single
-----------------------------*/
article{
 padding: 100px 0;
}
#newsDetail h3{
	font-size: 2.4rem;
}
.newsDetailCont:has(figure) figure{
	width: 100%;
	text-align: center;
}
.newsDetailCont:has(figure) figure img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* =======================================
	contact
========================================== */
#contactTel .h3Tit{
	margin-bottom: 20px;
}
#contactTel ul li{
	padding: 25px 20px 30px;
}
#contactTel a{
 font-size: 4rem;
}
#contactTel a span{
	padding-left: 80px;
}
#contactTel a span::before{
	width: 60px;
	height: 60px;
	top: calc(50% - 30px);
}

/* =======================================
	thanks
========================================== */
#thanks p{
  font-size: 1.8rem;
}

/* =======================================
	privacypolicy
========================================== */
#privacyPolicy{
	margin-top: 50px;
}
.policyBox{
	padding: 20px 2%;
}
.policyBox .h5Tit{
	margin-top: 40px;
}