@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */
:root{
  scroll-padding-top: 90px;
}
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: 48%;
}
.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;
}



/*タイトル
========================================== */
.h2Tit{
 font-size: 3.2rem
}
.h3Tit {
  font-size: 3.2rem;
	margin-bottom: 50px;
}
.h4Tit {
	font-size: 2.6rem;
	margin-bottom: 20px;
}
.h5Tit {  
	font-size: 2rem;
	margin-bottom: 10px;
}
.h6Tit{
	font-size: 1.8rem;
	margin-bottom: 10px;
}

/*
　テキスト
========================================== */

.note{
  font-size: 1.2rem;
}

/*
　ボタン,リンク
========================================== */


/* =======================================
  ページャー
========================================== */
/*-- 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: 50px auto 0;
}
.pager a{
	font-size: 1.6rem;
}

/* =======================================
	header
========================================== */
header{
}
header .inner1300{
	height: 90px;
 align-items: center;
}
/* =======================================
	gnavi
========================================== */
.gnavi{
}
#gnaviList.pcFlex{
	position: relative;
 align-items: center;
	justify-content: space-between;
	padding: 0;
}
#gnaviList > li {
	position: relative;
	font-size: min(1.4vw,1.6rem);
}
#gnaviList > li:not(.contact)::before{
 content: "";
 display: block;
 border-radius: 50%;
 background: var(--pink);
 width: 6px;
 height: 6px;
 position: absolute;
 left: 0;
 top: 0;
 bottom: 0;
 margin: auto;
}
#gnaviList > li:not(.contact) > a{
 display:flex;
 align-items: center;
 justify-content: center;
 height: 50px;
 padding: 0px min(2vw,25px) 0 12px;
 color: var(--base);
 font-weight:700;
 white-space: nowrap;
 letter-spacing: 0.06em;
}
#gnaviList .hasSub > a{
 position: relative;
}
/*
#gnaviList .hasSub > a::after{
	content: "";
	display: inline-block;
	border-bottom: 1px var(--base) solid;
	border-right: 1px var(--base) solid;
	-webkit-transform: rotate(45deg);
transform: rotate(45deg);
	width: 6px;
	height: 6px;
 margin-left: 4px;
}*/
#gnaviList .hasSub:hover >a{
 color: var(--base);
}
#gnaviList .sub li a:hover::after{
}
#gnaviList .hasSub:hover .sub{
	display: block;
	visibility: visible;
}
#gnaviList .sub{
	display: none;
	visibility: hidden;
	position: absolute;
	top: calc(100% - 10px);
	left: 0;
	z-index: 2;
	transition: all 0.6s ease-in-out;
	min-width:100px;
 border-radius: 2px;
 background: #fff;
 box-shadow: 0 0 5px 0 rgba(0,0,0,.25);
}
#gnaviList .sub li{
}
#gnaviList .sub li a{
 position: relative;
	display: block;
	padding: 14px 20px 16px;
	font-weight: 600;
 text-align: left;
	white-space: nowrap;
 line-height: 1.4;
}
/*#gnaviList .sub li a::before{
 content: "";
 display: block;
 border-radius: 50%;
 background:var(--gray) ;
 width: 3px;
 height: 3px;
 position: absolute;
 top: 27px;
 left: 20px;
}*/
#gnaviList .sub li + li{
 border-top: 1px #D9D9D9 solid;
}
.gnavi #gnaviList .contact {
 margin-top: auto;
}
/*-- hover --*/
#gnaviList li a:hover{
 opacity: .7;
}

/* =======================================
	main
========================================== */
main{
 padding-top: 90px;
}
/* =======================================
	footContact
========================================== */
#footContact .pcFlex{
 /*justify-content: space-between;*/
 flex-flow: row wrap;
 gap:50px 0;
}
#footContact .pitat{
 width: 57.3%;
}
#footContact .berry{
 width: 36.4%;
}

/* =======================================
	footer
========================================== */
footer a:hover{
	opacity: .7;
}
.footerBox{
 gap:0 2vw;
}
.footerBox .footerLeft{
	width: min(35%, 320px);
}
.footerBox .footerLeft p{
 white-space: nowrap;
}
.footerBox .footerRight{
	position: relative;
	justify-content: space-between;
	align-items: flex-start;
	flex-flow: row wrap;
	gap: 0 min(2.6vw,40px);
}
.footerNavi > li{
 font-size: min(1.6vw,18px);
 font-weight: 600;
 margin-bottom: 25px;
 line-height: 1.1;
}
.footerNavi > li a{
 position: relative;
 padding-left: 14px;
}
.footerNavi >li >a::before{
 content: "";
 display: inline-block;
 border-radius: 50%;
 height: 6px;
 width: 6px;
 background: var(--pink);
 position: absolute;
 top: 0.7em;
 left: 0;
}


/* =======================================
	pgs common
========================================== */
/*-- mainTitle --*/
.mainTitle{
	height: 200px;
}
.mainTitle h2{
	font-size: 4rem;
}

/* =======================================
  breadcrumb
========================================== */
#breadcrumb li{
	font-size: 1.4rem;
}

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

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

/*		anchorLink
-----------------------------*/
.anchorLink{
	padding: 35px 0;
	gap:0 30px;
}
.anchorLink ul{
	padding: 35px 0;
	gap:15px 20px;
}
.pageLinks{
	gap:15px 30px;
	padding: 35px 0 ;
}
.pageLinks ul{
	gap:15px 20px;
}
.anchorLink li,
.pageLinks li{
	flex: 1;
	height: 56px;
}
.anchorLink a,
.pageLinks li a{
	padding: 8px 10px;
}
.anchorLink + section{
	padding-top: 65px;
}

/* =======================================
	top PC
========================================== */

/*		#mv PC
-----------------------------*/
#mv .pcFlex{
 align-items: flex-start;
 justify-content: space-between;
}
#mvImg{
 width: 77.5%;
 max-width: 1023px;
}
#mvLinks{
 width: 18.5%;
 max-width: 239px;
}

/*		#topRecommendRental PC
-----------------------------*/
.propertyList{
 gap:40px 38px;
}
.propertyList li{
 width: calc((100% - 38px*2)/3);
}
#top .propertyList li{
 width: calc((100% - 38px*3)/4);
}

#topRecommendRental{
 position: relative;
 padding-top: 93px;
 padding-bottom: 40px;
}
#topRecommendRental .btnWrap{
 position: absolute;
 top: 90px;
 right: 0;
 margin: 0;
 width: 213px;
}

/*		#topRecommendSales  PC
-----------------------------*/
#topRecommendSales {
 position: relative;
 padding-top: 40px;
 padding-bottom: 68px;
}
#topRecommendSales .btnWrap{
 position: absolute;
 top: 40px;
 right: 0;
 margin: 0;
 width: 213px;
}

/*		#topBerry
-----------------------------*/
#topBerry .pcFlex{
 align-items: flex-start;
}
#topBerry .txts{
 width: 30.25%;
 max-width: 363px;
 padding-top: 15px;
}
#topBerry figure{
 position: relative;
 margin-right: -8.3%;
 width: 77.25%;
 max-width: 927px;
}


/*		#topCompany PC
-----------------------------*/
#topCompany ul{
 gap:0 30px;
 justify-content: center;
}


/*		#topNews PC
-----------------------------*/
#topNews ul li:has(.cat) a{
 gap:5px 20px;
}
#topNews ul li p:not(.date){
 width:78%;
 max-width:calc(100% - 40px - 120px - 96px) ;
}
#topNews a:hover{
 opacity: .7;
}

/* =======================================
	#real_estate PC
========================================== */
#real_estateAbout .pcFlex.inner1000{
 justify-content: space-between;
 align-items: center;
}
#real_estateAbout .pcFlex.inner1000 .txts{
 width: 67%;
}
#real_estateAbout .pcFlex.inner1000 figure{
 width: 28.5%;
}
#real_estateAbout ul{
 justify-content: space-between;
}
#real_estateAbout ul li{
 width: 30%;
}
#real_estateAbout h4.slash{
 margin-top: 50px;
}

#real_estateStrength .pcFlex,
#real_estateProcedure .pcFlex{
 justify-content: space-between;
}
#real_estateStrength .pcFlex + .pcFlex{
 margin-top: 60px;
 flex-flow: row-reverse;
}
#real_estateStrength .pcFlex .txts,
#real_estateProcedure .pcFlex .txts{
 width: 50%;
}
#real_estateStrength .pcFlex figure,
#real_estateProcedure .pcFlex figure{
 width: 45%;
}

.bnrSearch a{
 gap:0 30px;
 padding: 30px;
 font-size: 3rem;
}
.bnrSearch a::after{
 width: 54px;
 height: 54px;
}

/* =======================================
	#rental PC
========================================== */
#rentalLead .pcFlex figure.pitat,
#salesLead .pcFlex figure.pitat,
#managementLead .pcFlex figure.pitat{
 width: 23.6%;
}
#rentalLead .pcFlex figure.pitat figcaption{
	font-size: 1.8rem;
}
#rentalLead > div.flexCenter{
 gap:0 40px;
 align-items: center;
}
#rentalLead > div.flexCenter + p{
	text-align: center;
}
#rentalLead ul{
 justify-content: space-between;
}
#rentalLead ul li{
 width: 23%;
}
#rentalLead li h5{
 display: grid;
 place-content: center;
 min-height: 3em;
 line-height: 1.4;
}
#rentalLead li figure {
 padding: 20px;
	width: 170px;
	height: 170px;
}
#rentalLead li figure img{
	width: 70px;
}
#rentalLead li:nth-child(1) figure img{
	width: 60px;
}

#rentalArea .pcFlex{
 justify-content: space-between;
 align-items: center;
}
#rentalArea .pcFlex .txts{
 width: 65%;
}
#rentalArea .pcFlex figure{
 width: 35%;
}
#rentalArea .leadTxt{
 font-size: min(2.85vw, 38px);
}

/* =======================================
	#sales PC
========================================== */
#salesLead .flexCenter{
 gap:0 40px;
 align-items: center;
}
#salesLead .h3Tit{
	margin-bottom: 0;
}
#salesBuy ul li{
 width: 30%;
}
#salesBuy li figure {
	width: 170px;
	height: 170px;
	margin: 0 auto 10px;
}
#salesBuy li figure img{
	width: 70px;
}
#salesBuy li:nth-child(1) figure img{
	width: 60px;
}
#salesBuy li:nth-child(3) figure img{
	width: 75px;
}

#buyFlow ul > li{
 width: 100%;
 -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
}
#buyFlow ul > li + li{
 position: relative;
 margin-top: 50px;
}
#buyFlow ul > li + li::before{
 content: "";
 display: block;
 background: var(--LGray);
 width: 100%;
 height: 10px;
 margin-bottom: 20px;
 position: absolute;
 bottom: 100%;
 left: 0;
 z-index: -1;
}
#buyFlow ul h4{
 margin-right: 30px;
}
#buyFlow ul ol {
 margin-top: 20px;
}
#buyFlow ul ol li + li{
 margin-left: min(8.0vw,95px);
}
#buyFlow ul > li + li ol li:first-of-type{
 display: flex;
 align-items: center;
 min-width: 3.6em;
}
#buyFlow ul > li + li ol li:nth-of-type(3){
 margin-left: min(3.0vw,30px);
}
#buyFlow ul > li + li ol li:nth-of-type(4){
 margin-left: min(13.0vw,160px);
}
#buyFlow ul > li + li ol li:nth-of-type(5),
#buyFlow ul > li + li ol li:nth-of-type(6){
 margin-left: min(2.2vw,30px);
}
#buyFlow ul > li + li ol li:last-of-type{
 margin-left: min(9.5vw,110px);
}

#salesSent .pcFlex{
 justify-content: space-between;
}
#salesSent .pcFlex .txts{
 width: 50%;
}
#salesSent .pcFlex figure{
 width: 45%;
}

#salesFlow .h3Tit + p{
	text-align: center;
}
#salesFlow ol{
 position: relative;
 justify-content: space-between;
}
#salesFlow ol::before{
 content: "";
 display: block;
 width:99%;
 height: 5px;
 background: var(--gray);
 position: absolute;
 left: 0;
 top: 65px;
 z-index: -1;
}

#salesArea .pcFlex{
 justify-content: space-between;
 align-items: center;
}
#salesArea .pcFlex .txts{
 width: 65%;
}
#salesArea .pcFlex figure{
 width: 35%;
}
#salesArea .leadTxt{
 font-size: min(2.85vw, 38px);
}

/* =======================================
#management PC
========================================== */
#managementLead .flexCenter{
 gap:0 40px;
 align-items: center;
}
#managementLead > div.flexCenter + p{
	text-align: center;
}
#managementLead .h3Tit{
	margin-bottom: 0;
}
#managementLead .txt{
 margin-top: 1em;
 gap:0 10px;
 align-items: center;
}
#managementLead .pcFlex.box{
 justify-content: space-between;
}
#managementLead .pcFlex.box .txts{
 width: 55%;
}
#managementLead .pcFlex.box figure{
 width: 40%;
}
#managementLead ul.flexWrap li{
 width: calc((100% - 20px*2)/3);
}
#managementStrength .pcFlex{
 justify-content: space-between;
}
#managementStrength .pcFlex .txts{
 width: 40%;
}
#managementStrength .pcFlex figure{
 width: 55%;
}

#managementFlow .h3Tit + p{
	text-align: center;
}
#managementFlow ol{
 position: relative;
 justify-content: space-between;
}
#managementFlow ol::before{
 content: "";
 display: block;
 width:99%;
 height: 5px;
 background: var(--gray);
 position: absolute;
 left: 0;
 top: 65px;
 z-index: -1;
}

/* =======================================
	#property CMS PC
========================================== */
.column2{
 justify-content: space-between;
}
.column2 >nav{
 width: 200px;
}
.column2 >section{
 width: calc(100% - 200px - 50px);
}

/* =======================================
	#reform CMS PC
========================================== */
#reformAbout ul{
	gap: 0 3%;
	margin-top: 30px;
}
#reformAbout ul li{
	width: calc((100% - 20px) / 2);
	padding: 30px;
}
#reformAbout ul li h4{
	font-size: 2rem;
	margin-bottom: 20px;
}
#reformAbout ul li h4 span{
	display: inline-block;
	margin-right: 15px;
}
#reformAbout ul li dl dt{
	align-items: center;
}

#reformCounterpart .flex{
	gap: 0 min(2%,20px);
}
#reformCounterpart figure{
	width: calc((100% - 40px) / 5);
	height: 184px;
}
#reformCounterpart figure img{
	margin-top: 10px;
	height: 60px;
}
#reformCounterpart figure:last-child img{
	height: 50px;
}
#reformCounterpart figcaption{
	font-size: 1.8rem;
	margin-bottom: 5px;
}

#reformMenu ul{
	gap: 40px min(4%,40px);
}
#reformMenu ul li{
	width: calc(92% / 3);
}
#reformMenu ul li h4{
	font-size: 1.8rem;
	padding: 7px 16px;
}

#reformArea .txts{
	width: 65%;
}
#reformArea .txts .leadTxt{
	font-size: min(2.85vw, 38px);
}
#reformArea figure{
	width: 35%;
}

#reformCaseList .caseSlide .btnForward,
#reformCaseList .caseSlide .btnNext{
	width: 29px;
	height: 29px;
	top: calc(50% + 29px);
}
#reformCaseList .caseSlide .btnForward{
	left: -50px;
}
#reformCaseList .caseSlide .btnNext{
	right: -50px;
}
#reformCaseList .caseSlide li{
	width: calc((100% - 60px) / 3);
}
#reformCaseList .caseSlide li dl{
	margin-top: -20px;
}
#reformCaseList .caseSlide li .category{
	font-size: 1.3rem;
}
#reformCaseList .caseSlide li dt span.bold{
	font-size: 1.8rem;
}
#reformCaseList .caseSlide li .addTxt{
	font-size: 1.4rem;
}

/* =======================================
	#case CMS PC
========================================== */




/* =======================================
	berrydaysgoi PC
========================================== */
#berryMvArea{
	height: 700px;
	position: relative;
}
#berryMvArea .berryMvImg{
	overflow: hidden;
	height: 100%;
	margin: 0 auto;
  position: relative;
	border-radius: 0 0 50px 50px;
	max-width: 1300px !important;
}
#berryMvArea .berryMvImg img{
	border-radius: 0 !important;
}
#berryMvArea .berryMvTxts{
	position: absolute;
	left: 0;
	top: 20%;
	text-align: center;
}
#berryMvArea .berryMvTxts figure{
	margin: 0 auto 30px;
	max-width: 363px;
}
#berryMvArea .berryMvTxts p{
	font-size: 3.6rem;
	letter-spacing: 0.25em;
	text-shadow: 0 0 15px rgba(0,0,0,.5);
}
#berryMvArea .berryOpeningDay{
	position: absolute;
	left: 80%;
	bottom: 60px;
	width: 200px;
	height: 200px;
}

#berrydaysgoi .anchorLink{
	gap: 0 3%;
	margin-top: -40px;
}
#berrydaysgoi .anchorLink li{
	width: calc((85% - 220px) / 4);
	height: 80px;
}
#berrydaysgoi .anchorLink a{
	padding: 8px 8px 12px;
}
#berrydaysgoi .anchorLink li:nth-child(5),
#berrydaysgoi .anchorLink li:nth-child(6){
	width: 110px;
}

#berryNews{
	display: flex;
	align-items: stretch;
	margin: 60px auto 100px;
}
#berryNews h3{
	border-radius: 5px 0 0 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	width: 15%;
}
#berryNews p{
	display: flex;
	align-items: center;
}
#berryNews .articleTxt{
	padding: 20px;
	width: 75%;
}
#berryNews .btnBox{
	gap: 0 10px;
	justify-content: flex-end;
	padding: 20px;
	width: 10%;
}
#berryNews .btnBox a:hover{
	opacity: .7;
}

#berryAbout .aboutBox{
	padding: 60px 4%;
}{
	width: 180px;
#berryAbout .aboutBox::before
	height: 151px;
	right: -60px;
	bottom: -80px;
}
#berryAbout .leadTxt{
	font-size: 2.8rem;
}

#berryFeatures ul{
	gap: 0 4%;
}
#berryFeatures ul li{
	width: calc(92% / 3);
}
#berryFeatures ul li p{
	margin: -20px auto 0;
	padding: 20px 6px;
	width: 85%;
}

#berryInformation .h3Tit{
	margin-bottom: 50px;
}
#berryInformation ul{
	gap: 0 5%;
}
#berryInformation ul li{
	padding: 0 30px 30px;
	width: calc(95% / 2);
}
#berryInformation ul li h4{
	font-size: 2.4rem;
	margin: -30px auto 15px;
	padding: 5px 1em;
}
#berryInformation ul li p{
	margin-top: 15px;
}
#berryInformation .infoTxt{
	text-align: center;
}

.berryTable{
	flex-wrap: wrap;
	margin-top: 50px;
}
.berryTable > dt{
	border-bottom: 1px solid var(--wh);
	display: flex;
	align-items: center;
	padding: 15px 30px;
	width: 30%;
}
.berryTable > dd{
	display: flex;
	align-items: center;
	padding: 15px 30px;
	width: 70%;
}
.berryTable .blockBox{
	display: block !important;
}
.berryTable dd p{
	font-size: 1.4rem;
}
.berryTable dl.flexWrap dt{
	width: 50%;
}
.berryTable dl.flexWrap dd{
	width: 50%;
}

.berryReservation{
	margin-top: 80px;
	padding: 0 30px 30px;
}
.berryReservation h4{
	font-size: 3rem;
  width: 300px;
  height: 70px;
  margin: -39px auto 30px;
}
.berryReservation p{
	font-size: 2rem;
}
.berryReservation .tel a{
	font-size: 4rem;
	padding-left: 65px;
}
.berryReservation .tel a::before{
 width: 50px;
 height: 50px;
 top: calc(50% - 20px);
}
.berryReservation .tel span{
	font-size: 1.6rem;
}

#berryKind ul{
	gap:0 4%;
}
#berryKind ul li{
	width: calc(92% / 3);
}
#berryKind ul li h4{
	font-size: 2.4rem;
	width: 100%;
	height: 100px;
}
#berryKind ul li figure{
	margin-top: -52px;
}
#berryKind ul li dl{
	margin-top: 15px;
}
#berryKind ul li dl dt{
	margin-bottom: 15px;
}

#berryInitiatives .txtImgBox{
	padding: 40px;
}
#berryInitiatives .txtImgBox::before{
	width: 160px;
	height: 134px;
	left: -40px;
}
#berryInitiatives .txtImgBox.flexRowReverse::before{
	width: 114px;
	height: 110px;
	right: -10px;
}
#berryInitiatives .txts p{
	font-size: 1.8rem;
}

#berryAccess .map{
	height: 450px;
	margin-bottom: 30px;
}
#berryAccess .pcFlex{
	gap: 0 4%;
}
#berryAccess .addressTxt{
	padding: 30px 3%;
	width: min(40%,400px);
}
#berryAccess .addressTxt dl dt{
	font-size: 1.8rem;
	margin-top: 30px;
}
#berryAccess .addressTxt dl dt img{
	width: 30px;
}
#berryAccess figure{
	width: min(55%,550px);
}

/* =======================================
	company PC
========================================== */
#companyMessage .leadTxt{
 font-size: 3.6rem;
	margin-top: 70px;
}
#companyMessage .pcFlex{
 justify-content: flex-start;
 align-items: flex-end;
 gap: 0 20px;
 margin-top: 50px;
}
#companyMessage .pcFlex figure{
 width: 50%;
}
#companyMessage div .name{
	font-size: 1.6rem;
	text-align: right;
	flex:0 1 auto;
}
#companyMessage div .name span{
	font-size: 2.2rem;
}

#companyEsg .h3Tit + p{
	text-align: center;
}
.esgBox{
	padding: 40px 0;
}
.esgBox ul {
 flex-flow: row wrap;
 justify-content: center;
 gap: 30px;
}
.esgBox ul li{
 width: calc((100% - 30px*2)/3);
}
.esgBox .h4Tit{
	font-size: 2.8rem;
	margin-bottom: 40px;
}
#esgEnvironment{
	margin-top: 40px;
}

#companyAccess .h4Tit{
	font-size: 2.6rem;
}
#companyAccess .pcFlex{
 justify-content: space-between;
}
#companyAccess .pcFlex .txts{
 width: 38%;
}
#companyAccess .txts p{
	margin-bottom: 15px;
}
#companyAccess #access03 span{
	font-size: 2.2rem;
}
#companyAccess .pcFlex .map{
 width: 58%;
}

/* =======================================
	recruit PC
========================================== */
#recruitMv{
 height: 700px;
 margin: 100px auto 40px;
}
#recruitMv .txts{
 width: max(50%,500px);
 padding: 0 0 40px 20px;
}
#recruitMv .txts h2{
 margin-bottom: 20px;
}

#recruitAttraction ul{
 justify-content: space-between;
}
#recruitAttraction ul li{
 width: 30%;
}
#recruitAttraction li h4{
 font-size: 2.6rem;
}
#recruitAttraction li h4 span{
font-size: 120%;
}
#recruitAttraction li p{
 min-height: 12.25em;
}

#recruitEducation .pcFlex{
 justify-content: space-between;
 margin-top: 60px;
}
#recruitEducation .pcFlex .txts{
 width: 40%;
}
#recruitEducation .pcFlex figure{
 width: 55%;
}

#recruitBenefit ul{
 margin-top: 40px;
 justify-content: center;
 gap:30px 40px;
}
#recruitBenefit ul li{
	font-size: 1.6rem;
 width: 180px;
 height: 180px;
}
#recruitBenefit ul li figure img{
	height: 55px;
}
#recruitBenefit ul li span{
	font-size: 1.2rem;
	padding: 5px 20px 15px;
}
#recruitBenefit ul li:nth-child(3) figure img,
#recruitBenefit ul li:nth-child(5) figure img,
#recruitBenefit ul li:nth-child(8) figure img{
	height: 60px;
}
#recruitBenefit ul li:nth-child(7) figure img,
#recruitBenefit ul li:nth-child(9) figure img{
	height: 50px;
}

#recruitApply ul{
 padding: 20px 5%;
}
#recruitApply .mail{
 width: 35%;
 min-width: 240px;
}

/* =======================================
	news
========================================== */
/*		一覧
-----------------------------*/

ul#newsList{
 padding: 0 40px;
}
ul#newsList li{
	padding: 20px 10px 20px 80px;
}
ul#newsList li p:not(.date){
 width:68%;
 padding-left: 14px;
 max-width:calc(100% - 72px - 120px - 52px) ;
}
ul#newsList a:hover{
 opacity: .7;
}

/*	詳細　single
-----------------------------*/
article{
 padding: 100px 0;
}
#newsDetail h3{
	font-size: 2.4rem;
}
#newsDetail .newsInfo{
	font-size: 1.6rem;
}
.pcFlex.newsDetailCont{
	flex-direction: row-reverse;
	gap: 40px;
}
.pcFlex.newsDetailCont figure{
	width: 400px;
	text-align: center;
}
.pcFlex.newsDetailCont figure img{
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.pcFlex.newsDetailCont .txts{
	flex: 1;
}

/* =======================================
	contact
========================================== */

#contactTel div.flex p{
 font-size: 17px;
}

/* =======================================
	form
========================================== */
#contactForm .basicTable > dt{
	padding: 20px 2.5%;
	width: 25%;
}
#contactForm .basicTable > dd{
	padding: 20px 2.5%;
	width: 75%;
}
#contactForm .basicTable dd h4{
	margin-bottom: 5px;
}
#contactForm .basicTable dd h4:nth-of-type(2),
#contactForm .basicTable dd p{
	margin-top: 10px;
}
#contactForm .basicTable input[type=text],
#contactForm .basicTable input[type=email],
#contactForm .basicTable input[type=tel]{
	padding: 8px;
	width: 80%;
}
#contactForm .basicTable textarea{
	padding: 8px;
	width: 100% !important;
}
#contactForm .basicTable .hissu{
	padding: 3px 3% 4px;
}
.confirm {
  margin-top: 40px;
}

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