@charset "UTF-8";
/*================================================

PAGE / HOME

------------------------------------------------*/
html{
  scroll-behavior: smooth;
}
a{
  text-decoration: none;
  color: #000;
}
@media print, screen and (min-width: 960px) {
	a{
    -webkit-text-decoration-skip: objects;
    cursor: pointer;
    transition: all .4s;
  }
}

/*-----------------------------------
改行
-----------------------------------*/
.brPc{
	display: none;
}
@media print, screen and (min-width: 768px) {
	.br375{
		display: none;
	}
}
@media print, screen and (min-width: 1280px) {
	.brPc{
		display: inline;
	}
}
/*-----------------------------------
画像
-----------------------------------*/
.imgPc{
	display: none;
}
@media print, screen and (min-width: 960px) {
  .imgSp{
    display: none;
  }
	.imgPc{
		display: inline;
	}
}
/*-----------------------------------
Brake Point
-----------------------------------*/
.inner-area{
  padding: 0 30px 0;
}
.pb{
  padding-bottom: 70px;
}
@media print, screen and (min-width: 960px) {
	.inner-area{
    padding: 0;
    max-width: 960px;
    margin: auto;
  }
}
@media print, screen and (min-width: 1280px) {
  .pb{
    padding-bottom: 127px;
  }
}
/*-----------------------------------
Font
-----------------------------------*/
.pop-txt{
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}
p {
  font-size: 15px;
  color: #000;
  line-height: 1;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}
.head-txt{
  font-size: 18px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  letter-spacing: 1.5px;
}
@media print, screen and (min-width: 960px) {
  p {
    font-size: 16px;
  }
  .head-txt{
    font-size: 20px;
  }
}

/*-----------------------------------
Button
-----------------------------------*/
.contact-btn{
  border-radius: 10px;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: #FFF;
  background: #F86348;
}
/*---- ページ Index Button  ----*/
.index-btn li{
  border-radius: 20px;
  background-repeat: no-repeat;
  background-position: center;
}
.index-btn li a p{
  color: #FFF;
  font-size: 15px;
  font-weight: 800;
  position: relative;
}
.index-btn li a p span{
  display: block;
  line-height: 1;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}
.index-btn li a .icon_click{
  position: absolute;
  right: 5%;
  bottom: 16%;
}
@media print, screen and (min-width: 768px) {
	.index-btn{
    display: flex;
    gap: 10px;
  }
  .index-btn li{
    display: block;
    flex: 1;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 1280px) {
	.contact-btn{
		height: 97px;
    font-size: 20px;
	}
  .index-btn li{
    transition: all .4s;
  }
  .index-btn li:hover{
    opacity: 0.7;
  }
  .index-btn li a .icon_click {
    right: 9%;
    bottom: 8%;
  }
}
/*------------------------------------------------

Main visual

------------------------------------------------*/
.c-pageTittle {
  height: 213px;
  text-align: center;
  position: relative;
  background-image: url(/contact/assets/img/bg_contact_sp.png);
  background-size: auto 138px;
  background-repeat: no-repeat;
  background-position: center 75px;
}
.c-pageTittle .mainVisual__copy h1{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 18px;
  color: #fff;
  position: absolute;
  top: 70%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  line-height: 1;
  letter-spacing: 1.5px;
}
.c-pageTittle .mainVisual__copy h1 span{
  font-size: 34px;
  display: inline-block;
  color: #fff;
  background-color: #000;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  line-height: 1.1;
  padding: 0 4px 0 ;
  margin-bottom: 10px;
}
@media print, screen and (min-width: 768px) {
  .c-pageTittle{
    background-image: url(/contact/assets/img/bg_contact_pc.png);
    background-size: cover;
  }
}
@media print, screen and (min-width: 960px) {
    .c-pageTittle{
      margin-top: 120px;
      background-image: url(/contact/assets/img/bg_contact_pc.png);
      background-size: cover;
      background-position: center 0;
    }
    .c-pageTittle .mainVisual__copy h1{
      top: 50%;
      font-size: 24px;
    }
    .c-pageTittle .mainVisual__copy h1 span{
      font-size: 60px;
      padding: 0 8px 0 ;
      margin-bottom: 14px;
    }
	}

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

header

------------------------------------------------*/
.secHeader{
	background: #fff;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 9990;
	width: 100%;
	transition: all .4s;
	overflow: hidden;
	/* border-bottom: 1px solid #EDF6FB; */
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.07);
}
.secHeader .hdLogoWrap{
	padding-top: 17px;
	height: 75px;
	overflow: hidden;
}
.secHeader .hdLogo{
  width: 158px;
	margin-left: 17px;
}
.secHeader .hdLogo a{
	display: block;
	height: 100%;
}
.secHeader .subTxt{
	font-size: 10px;
	line-height: 1.3;
	padding-left: 17px;
	padding-top: 3px;
}
.secHeader .subTxt br{
	display: none;
}
.secHeader .hdMenuBtnWrap{
  padding: 20px 20px 18px 0;
  position: absolute;
  right: 0;
  top: 0;
}
#hdMenuBtn{
	width: 32px;
  margin: 0 auto 10px;
}
#hdMenuTxt{
	font-size: 12px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
}
/* クリックする前↓のハンバーガーメニュー */
#hdMenuBtn span{
	display: block;
	background: #707070;
	height: 1px;
	border-radius: 2px;
	margin-bottom: 9px;
	transition: all .4s;
}
#hdMenuBtn span:last-child{
	margin-bottom: 0;
}

/* クリック後 ハンバーガーメニュー*/
#hdMenuBtn.open span:nth-of-type(1){
	transform:rotate(398deg);
	transform-origin: top left;
}
#hdMenuBtn.open span:nth-of-type(2){
	opacity: 0;
}
#hdMenuBtn.open span:nth-of-type(3){
	transform:rotate(-398deg);
	transform-origin: top left;
}

/* クリックする前↓の状態を隠している記述 */
.secHeader .hdMenuBox{
	background: #fff;
	width: 100%;
	transition: all .6s;
	height: 0;
	transform: translateX(100vw);
	opacity: 0;
	visibility: hidden;
}
/* クリック後 */
.secHeader .hdMenuBox.open{
  height: 100vh;
	/* height: calc(100vh - 77px); */
	transform: translateX(0);
	opacity: 1;
	visibility: visible;
}

	/*  ヘッダーボタン */
.secHeader .hdMenuBox .hdNav li{
	font-size: 18px;
  font-weight: 700;
  letter-spacing: 1.5px;
  border-top: 1px #DEDEDE solid;
  background-image: url(/assets/img/arrow-right.svg);
  background-repeat: no-repeat;
  background-position: 90% center;
  background-size: auto 15px;
}
.secHeader .hdMenuBox .hdNav li:last-child{
  border-bottom: 1px #DEDEDE solid;
}
.secHeader .hdMenuBox .hdNav li a{
  display: inline-block;
  padding: 35px 0 23px 30px;
  width: 100%;
}
.secHeader .hdMenuBox .hdNav li span{
  font-size: 28px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  display: block;
  line-height: 1.2;
  letter-spacing: 0;
}
.secHeader .hdMenuBox .hdNav .hdContact{
  width: 80%;
  margin: 35px auto 0;
  display: block;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  border: 1px #F86348 solid;
  color: #F86348;
  letter-spacing: 1.3px;
  line-height: 70px;
  border-radius: 35px;
  background-image: url(/assets/img/arrow-right.svg);
  background-repeat: no-repeat;
  background-position: 90% center;
  background-size: auto 15px;
}
@media print, screen and (min-width: 960px) {
  .secHeader .hdMenuBtnWrap{
    display: none;
  }
  .secHeader {
    padding-top: 0px;
    height: 120px;
  }
  .secHeaderInner{
    height: 100%;
		max-width: 1324px;
		margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
	}
	.secHeader .hdLogoWrap{
		padding-top: 0;
		height: auto;
	}
	.secHeader .hdLogo {
		padding-left: 0;
	}
	.secHeader .hdLogo a:hover{
		opacity: 0.3;
	}
	.secHeader .subTxt{
		padding-left: 0px;
	}
	.secHeader .subTxt br{
		display: inline;
	}
	#hdMenuBtn{
		display: none;
	}
	.secHeader .hdMenuBox{
		/* float: right; */
		width: 76%;
		/* padding-right: 30px; */
		height: auto;
		transform: translateX(0);
		opacity: 1;
		visibility: visible;
    vertical-align: middle;
	}
  .secHeader .hdMenuBox .hdNav{
		display: flex;
    align-items: center;
    gap: 30px;
	}
	.secHeader .hdMenuBox .hdNav ul{
		display: flex;
  	justify-content: space-between;
    flex: 1;
	}
  /*  ヘッダーボタン */
	.secHeader .hdMenuBox .hdNav li{
    text-align: center;
		font-size: 14px;
		margin-bottom: 0;
    border-top: none;
    background-image: none;
	}
  .secHeader .hdMenuBox .hdNav li span {
    font-size: 24px;
  }
  .secHeader .hdMenuBox .hdNav li a {
    padding: 0;
    letter-spacing: 0;
  }
	.secHeader .hdMenuBox .hdNav li .ftEn{
		font-size: 18px;
	}
	.secHeader .hdMenuBox .hdNav li a:hover{
		opacity: 1;
    color: #F86348;
	}
  .secHeader .hdMenuBox .hdNav li:last-child {
    border-bottom: none;
  }
  .secHeader .hdMenuBox .hdNav .hdContact {
    width: 220px;
    margin: 0;
    display: block;
    text-align: center;
    font-size: 18px;
    line-height: 56px;
    background-image: none;
  }
  .secHeader .hdMenuBox .hdNav .hdContact:hover {
    color: #fff;
    background: #F86348;
    opacity: 1;
  }
}
@media print, screen and (min-width: 1080px){
	.secHeader .hdLogo {
    width: 243px;
		/* float: left; */
		padding-left: 0;
    margin-left: 0;
	}
  .secHeader .hdMenuBox .hdNav {
    gap: 84px;
  }
  .secHeader .hdMenuBox {
    max-width: 958px;
}
	.secHeader .subTxt br{
		display: inline;
	}
	.secHeader .hdMenuBox .hdNav li .ftEn{
		font-size: 21px;
	}
}

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

footer

------------------------------------------------*/
footer .footer_vision{
  position: relative;
  text-align: center;
  height: 325px;
  background-image: url(/assets/common/img/footer-vision_sp.png);
  background-size: auto 163px;
  background-repeat: no-repeat;
  background-position: center bottom;
  padding-top: 45px;
}
footer .footer_vision .footer_catch{
  margin: auto;
  width: 248px;
}
footer .footer_vision .footer_slash{
  width: 100%;
  display: block;
  position: absolute;
  bottom: 0;
}
footer .footer_bottom{
  background: #1D2128;
  width: 100%;
  /* position: absolute; */
  bottom: 0;
  left: 0;
  width: 100%;
  /* height: 403px; */
}
footer .footer_bottom .footer_body{
  width: 90%;
  margin: auto;
  padding: 0 0 10px;
  /* position: relative; */
}
footer .footer_bottom .footer_bodyside{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 6px;
}
footer .footer_bottom .footer_body img{
  width: 309px;
  margin: auto;
  display: block;
  padding-top: 11px;
}
footer .footer_bottom .footer_body nav{
  margin-top: 20px;
}
footer .footer_bottom .footer_body nav ul li a{
  color: #fff;
  line-height: 2;
  font-size: 13px;
  font-weight: 600;
  letter-spacing:1.5px;
}
footer .footer_bottom .footer_body nav ul li a span{
  font-size: 22px;
  font-family: "Poppins", sans-serif;
  font-weight: 700;
  margin-right: 12px;
  letter-spacing:0px;
  vertical-align: -2.5px;
}
footer .footer_copyright{
  border-top: 1px #707070 solid;
  padding: 27px 0;
  margin: auto;
}
footer .footer_copyright p{
  width: 90%;
  margin: auto;
  color: #fff;
  font-size: 14px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}
footer .footer_copyright a{
  display: block;
  width: 90%;
  margin:7px auto 0;
  color: #fff;
  font-size: 14px;
}
/* ページトップボタン */
.pagetop-btn {
    /* position: absolute;
    bottom: 128px;
    right: 30px; */
    position: relative;
    width: 60px;
    height: 60px;
    font-weight: bold;
    padding: 0.7em;
    text-align: center;
    background: #040C1C;
    border: 1px solid #fff;
    transition: 0.3s;
  }
  .pagetop-btn p {
    font-size: 15px;
    color: #fff;
    line-height: 1;
    font-family: "Poppins", sans-serif;
    font-weight: 700;
    padding-top: 19px;
    background-image: url(/assets/common/img/scroll-arrow.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center 1px;
}

@media print, screen and (min-width: 768px) {
  footer .footer_vision{
    height: 430px;
    background-image: url(/assets/common/img/footer-vision_sp.png);
    background-size: auto 300px;;
    padding-top: 60px;
  }
  footer .footer_bottom .footer_body {
    padding-top: 20px;
  }
  footer .footer_bottom .footer_body nav ul{
    display: flex;
    gap: 20px;
  }
  footer .footer_bottom .footer_body nav ul li a span{
    font-size: 24px;
    display: block;
    line-height: 1;
  }
  footer .footer_copyright{
    display: flex;
    width: 90%;
    justify-content: space-between;
  }
  footer .footer_copyright p,
  footer .footer_copyright a{
    width: auto;
    margin: 0;
  }
  footer .footer_bottom .footer_body img {
    margin: 0;
  }
}
@media print, screen and (min-width: 960px) {
  footer .footer_vision {
    background-image: url(/assets/common/img/footer-vision_pc.png);
    background-size: cover;
    padding-top: 40px;
  }
  .pagetop-btn {
    width: 108px;
    height: 108px;
  }
  .pagetop-btn p {
    font-size: 16px;
    padding-top: 63px;
    background-position: center;
  }
}
@media print, screen and (min-width: 1280px) {
  footer .footer_vision .footer_catch{
    width: 446px;
  }
  footer .footer_vision {
    height: 700px;
    background-size: 1440px;
    background-position: center bottom;
    background-image: url(/assets/common/img/footer-vision_pc2.png);
    padding-top: 92px;
  }

  footer .footer_bottom .footer_body img {
    width: 528px;
    margin: 0;
}
  footer .footer_bottom .footer_body,
  footer .footer_bottom .footer_copyright
  {
    width: auto;
    max-width: 1280px;
    margin: auto;
  }
  footer .footer_bottom .footer_body nav ul{
    gap: 80px;
  }
}

/* @media print, screen and (min-width: 1680px) {
  footer .footer_vision {
    height: 740px;
    background-size: 1440px;
    background-position: center bottom;
  }
} */

/*------------------------------------------------
  intro
------------------------------------------------*/
.intro {
  padding: 35px 0;
}
.intro  p{
  text-align: center;
  line-height: 1.8;
}

/*------------------------------------------------
  RECRUIT・CONTACTページの問い合わせ情報
------------------------------------------------*/
.contact-info{
  border: 1px #DEDEDE solid;
  border-radius: 20px;
  text-align: center;
}
.contact-info .info-box {
  padding: 30px 20px;
}
.contact-info .info-tell span{
  display: block;
}
/*----  電話問い合わせ  ---*/
.contact-info .info-tellnumber a img{
  height: 35px;
  vertical-align: -7px;
  margin-right: 12px;
}
.contact-info .info-tellnumber a{
  margin-top: 10px;
  font-size: 29px;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  display: inline-block;
}
.contact-info .info-servicetime{
  display: inline-block;
  margin-top: 14px;
}
.contact-info .info-servicetime p:nth-child(2){
  margin-top: 14px;
}

@media print, screen and (min-width: 768px) {
  .contact-info{
    display: flex;
  }
  .contact-info .info-box{
    flex: 1;
  }
  /*----  電話問い合わせ  ---*/
  .contact-info .info-tellnumber .tel-link{
    pointer-events: none;
    color: inherit; /* 必要に応じて装飾も変更 */
    text-decoration: none;
    cursor: default;
  }
}
@media print, screen and (min-width: 960px) {
  .contact-info .info-tellnumber .a{
    pointer-events: none
  }
}

/*------------------------------------------------
 全ページ共通の問い合わせ情報
------------------------------------------------*/
.common-contact{
  background: #E6E6E6;
  background-image: url(/assets/common/img/common-contact-bg_sp.png);
  background-size: auto 206px;
  background-repeat: no-repeat;
  background-position: right bottom;
  padding: 45px 0 170px;
}
.common-contact h2{
  color: #040C1C;
  font-size: 18px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 800;
}
.common-contact h2 span{
  font-size: 42px;
  display: block;
  line-height: 1;
}
.common-contact p{
  line-height: 1.8;
  margin-top: 26px;
}
.common-contact .common-contact-btn{
  line-height: 72px;
  display: block;
  padding-left: 43px;
  margin-top: 7px;
  position: relative;
}
.common-contact .common-contact-btn .icon_click{
  position: absolute;
  right: 10%;
  top: 30%;
}
@media print, screen and (min-width: 768px) {
  .common-contact{
    background-image: url(/assets/common/img/common-contact-bg_sp.png);
    background-size: auto 317px;
    background-position: 140% 50%;
    padding: 45px 0 0;
    height: 317px;
  }
  .common-contact .contents-box{
    width: 380px;
  }
}
@media print, screen and (min-width: 960px) {
  .common-contact {
    background-image: url(/assets/common/img/common-contact-bg_pc.png);
    background-position: 100% 50%;
  }
  .common-contact .contents-box{
    width: 422px;
  }
  .common-contact .contents-box .brPc {
    display: inline-block;
  }
  .common-contact .contact-btn:hover{
    color: #fff;
    background: #000 ;
    opacity: 1;
  }
  /* .common-contact .contact-btn .icon_click:hover{
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(4275%) hue-rotate(295deg) brightness(109%) contrast(126%);
    opacity: 1;
  } */
}

@media print, screen and (min-width: 1280px) {
  .common-contact{
    background-size: auto 505px;
    background-position: 100% 50%;
    padding: 102px 0 0;
    height: 505px;
  }
  .common-contact .inner-area{
    max-width: 1280px;
  }
  .common-contact .contents-box{
    margin-left: 40px;
  }
  .common-contact h2 {
    font-size: 20px;
  }
  .common-contact h2 span {
    font-size: 65px;
  }
  .common-contact p {
    margin-top: 30px;
  }
  .common-contact .common-contact-btn {
    line-height: 97px;
    padding-left: 36px;
    margin-top: 34px;
    font-size: 24px;
  }
  .common-contact .common-contact-btn .icon_click{
    width: 40px;
  }
}
