@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700,800&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,500,700,900&display=swap');

html {
  font-size: 14px;
}
body {
  font-family: 'Open Sans',"Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック体", "メイリオ", Meiryo, Sans-Serif;
  color: #000;
  letter-spacing: .05em;
}
body.is-menu-open {
    position: fixed;
    width: 100%;
    height: 100%;
}
body.is-menu-open::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 200;
    background-color: rgba(17, 19, 29, 0.3);
}
  a {
    transition: all .3s ease;
    text-decoration: none;
    
  } 
a.txt-link {
    text-decoration: underline;
    
  }

.header-sp {
  display: flex;
  justify-content: space-between;
      position: fixed;
    top: 0;
  left: 0;
  right: 0;
    z-index: 10;
}
.header__logo-area {
  width: 80px;
  height: 80px;
  z-index: 100;
}

img {
  max-width: 100%;
}
/* 単指示 */
.pc, .pc-in, .pc-inbl {
  display: none;
}
.sp {
  display: block;
}
.sp-in {
  display: inline;
}
.sp-inbl {
  display: inline-block;
}
/* 簡易モジュール */
.sub-ttl {
  text-align: center;
  margin: 0 auto;
}
.sub-ttl span {
  margin: 11px auto 0;
      display: block;
	color: #22c5ee;
	font-weight: 700;
    letter-spacing: .2em;
  font-size: .855rem;
}

.sub-ttl.wht span {
  color: #ffffff;
}
.label {
  color: #fff;
  background-color: #f33;
  padding: 4px 8px;
  font-size: .68rem;
}
.emphasis {
  font-size: .855rem;
	line-height: 2;
	color: #f69100;
	font-weight: 700;
}
/*ボタン*/
.btn {
  text-align:center;
    max-width: 270px;
  margin: auto;
}
.btn >a {
  display: inline-block;
  background-color: #ffa200;
  border: none;
  border-radius: 42.5px;
  color: #fff;
  font-size: 1rem;
	font-weight: 700;
	line-height: 1.071;
    letter-spacing: .05em;
  width: 100%;
  padding: 14px 0;
  cursor: pointer;
}
.btn >a.right-arrow {
  position: relative;
}
.btn >a.right-arrow::after {
  position: absolute;
  content: "";
  width: 7px;
  height: 8px;
      border: none;
       border-left: 6px solid #ff7800;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all .3s ease-in;
}

/*PDFボタン*/
.pdfbtn {
  text-align:center;
  max-width: 160px;
  margin: auto;
  text-decoration: none !important;
}
.pdfbtn{
  margin-left: 10px;
}

.pdfbtn {
  display: inline-block;
  background-color: #22c5ee;
  border: none;
  border-radius: 42.5px;
  color: #fff;
  font-size: 1rem;
	font-weight: 700;
	line-height: 1.071;
    letter-spacing: .05em;
  width: 100%;
  padding: 14px 0;
  cursor: pointer;
}
.pdfbtn.right-arrow {
  position: relative;
}
.pdfbtn.right-arrow::after {
  position: absolute;
  content: "";
  width: 7px;
  height: 8px;
      border: none;
       border-left: 6px solid #f9f9ec;
    border-bottom: 4px solid transparent;
    border-top: 4px solid transparent;
    right: 15px;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: all .3s ease-in;
}



/*SNS*/
.sns-content {
  background-color: #f5f5f5; 
  padding: 22px 0;
}
.sns-warp {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sns-ttl {
  color: #999999;
	font-size: .855rem;
	font-weight: 900;
  margin-right: 19px;
}
.sns-box {
  display: flex;
  width: 90px;
  justify-content: space-between;
  align-items: center;
}
.sns-box a {
  width: 40px;
}
/*footer*/
footer {
}
.footer-content {
  background-image: url("/images/footer-bg-sp.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  padding: 51px 20px;
}
.footer-ttl {
  background-color: #fff;
  font-size: .645rem;
	font-weight: 700;
	line-height: 1.444;
  padding: 9px 17px;
  text-align: center;
  border-radius: 25px;
  position: relative;
  margin-bottom: 13px;
}
.footer-ttl::after {
    position: absolute;
    content: "";
    border: none;
    border-right: 8px solid transparent;
    border-top: 6px solid #fff;
    border-left: 8px solid transparent;
    width: 12px;
    height: 7px;
    left: 0;
    right: 0;
    bottom: -6px;
    margin: auto;
}
.footer-sub__ttl {
  color: #fff;
  font-size: .645rem;
	font-weight: 700;
	line-height: 1.444;
  margin-bottom: 10px;
  text-align: center;
}
.footer-info__box li:first-child {
  position: relative;
}
.footer-info__box li:first-child::after {
  position: absolute;
  content: "";
  bottom: 0;
  width: 70px;
  height: 1px;
  background: #fff;
  right: 0;
  left: 0;
  margin: auto;
}
.footer-info__box .footer-info__ttl {
  color: #fff;
	font-weight: 900;
	font-size: 1rem;
	line-height: 1.429;
  padding-bottom: 19px;
  margin-bottom: 20px;
  text-align: center;
}
.footer-info__box .footer-info__ttl span {
  font-size: .785rem;
	line-height: 1.818;
  display: block;
}
.footer-info__detail {
  text-align: center;
}
.footer-info__tel {
  margin-bottom: 12px;
}
.footer-info__tel .tel-link {
  color: #fff ;
	font-size: 2.13rem;
	font-weight: 700;
  padding-left: 30px;
  position: relative;
}
/*IOS対策*/
.footer-info__tel .tel-link a{
  color: #fff;
}
.footer-info__tel .tel-link::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-image: url("/images/footer-tel_icon.png");
  height: 23px;
  width: 23px;
  background-repeat: no-repeat;
  background-size: contain;
}
.footer-info__time {
  color: #ffffff;
	font-size: .645rem;
	font-weight: 700;
	line-height: 1.444;
  margin-bottom: 18px;
}
.footer-info__mail .meil-icon {
  position: relative;
  color: #fff;
  text-decoration: underline;
  font-size: .85rem;
	font-weight: 700;
  padding-left: 22px;
  letter-spacing: 1px;
}
.footer-info__mail .meil-icon::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-image: url("/images/footer-mail_icon.png");
  background-size: contain;
  background-repeat: no-repeat;
  width: 15px;
	height: 11px;
}
.footer-credit {
  border-top: 1px solid #DDDDDD;
  padding: 26px 0;
  text-align: center;
}
.credit-txt {
  color: #666666;
	font-size: .645rem;
	font-weight: 700;
	line-height: 1.889;
  margin-bottom: 17px;
}
.footer-credit .logo-img {
  width: 50.1%;
 margin:0 auto 10px;
  display: inline-block;
}
.copyright {
  color: #999;
	font-size: .645rem;
	font-weight: 700;
}
/*ページTOPに戻る*/
#toTop {
  display: none;
  position: absolute;
  bottom: 40px;
  right: 14px;
  z-index: 500;
  width: 49px;
	height: 66px;
  cursor: pointer;
  text-align: center;
}
#toTop.toTop_fixed {
  position: fixed;
  top: auto;
  bottom: 22px;
}
#toTop .toTop-img {
  width: 49px;
  margin: 0 auto 10px;
}
#toTop span {
  font-size: 0.709rem;
	font-weight: 700;
   text-align: center;
}



@media screen and (max-width:1200px) {
  .btnArea span { display: block; margin-top: 10px; }
  .btnArea span a:first-child { margin-left: 0;}
}



@media screen and (min-width:768px) {
  /*hover*/
    a:hover {
    transition: all .3s ease;
      opacity: .7;
    
  }
  /*header*/
  .header__logo-area {
    width: 130px;
    height: 130px;
  }
  /* 単指示 pc */
  .pc {
    display: block;
  }
  .pc-in {
    display: inline;
  }
  .pc-inbl, .tabpc-inbl {
    display: inline-block;
  }
  .sp, .sp-in, .sp-inbl {
    display: none;
  }
  /*簡易モジュール*/
  .label {
  font-size: 12px;
}
  .sub-ttl span {
    font-size: 18px;
    margin-top: 29px;
  }
   .btn {
    max-width: 540px;
  }
  .btn > a {
    padding: 30px 0;
        font-size: 24px;
  }
  .btn > a.right-arrow::after {
        right: 35px;
   border-left: 15px solid #ff7800;
    border-bottom: 9px solid transparent;
    border-top: 9px solid transparent;
  }
  
  /*PDFボタン*/
  .pdfbtn {
    max-width: 220px;
     border: 1px solid #22c5ee;
  }
  .pdfbtn {
    padding: 16px 0;
        font-size: 14px;
  }
  .pdfbtn.right-arrow::after {
        right: 10px;
   border-left: 8px solid #f9f9ec;
    border-bottom: 5px solid transparent;
    border-top: 5px solid transparent;
  }
  
  .emphasis {
    font-size: 16px;
  }

  /*SNS*/
  .sns-content {
    padding: 54px 0;
  }
  .sns-ttl {
    font-size: 20px;
    margin-right: 50px;
  }
  .sns-box {
    width: 150px;
  }
  .sns-box a {
    width: 60px;
  }
  /*footer*/
  .footer-content {
    padding: 142px 0 132px;
        background-image: url(/images/footer-bg-pc.jpg);
  }
  .footer-ttl {
    max-width: 522px;
    font-size: 15px;
    text-align: center;
    padding: 12px 26px;
    margin: 0 auto 22px;
  }
  .footer-sub__ttl {
  font-size: 12px;
  margin-bottom: 20px;
  text-align: center;
}
  .footer-info__box {
    display: flex;
    align-items: center;
    max-width: 687px;
    margin: auto;
  }
  .footer-info__box .footer-info__ttl {
    padding-right: 57px;
    font-size: 18px;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .footer-info__box .footer-info__ttl span {
    font-size: 13px;
  }
  .footer-info__box li:first-child::after {
    background-color: transparent;
  }
    .footer-info__box .footer-info__detail {
    padding-left: 57px;
    border-left: 1px dotted #fff;
  }
  .footer-info__tel .tel-link {
    font-size: 40px;
    margin-bottom: 20px;
    padding-left: 40px;
  }
  .footer-info__tel .tel-link::before {
    width: 30px;
	height: 30px;
  }
  .footer-info__time {
    font-size: 14px;
    margin-bottom: 25px;
  }
  .footer-info__mail .meil-icon {
    font-size: 14px;
  }
  .footer-credit {
    border-top: 1px solid #DDDDDD;
    padding: 57px 0 65px;
  }
  .credit-txt {
    font-size: 13px;
    margin-bottom: 8px;
  }
  .footer-credit .logo-img {
    max-width: 265px;
    margin: 0 auto 11px;
  }
  .copyright {
    font-size: 10px;
  }
  /*ページTOPに戻る*/
  #toTop {
    right: 44px;
    z-index: 500;
    width: 60px;
    height: 60px;
  }
  #toTop.toTop_fixed {
   bottom: 85px;
  }
  #toTop .toTop-img {
    width: 60px;
  }
  #toTop span {
    font-size: 15.57px;
  }
}


@media screen and (max-width:768px) {
  .pdfbtn {
    max-width: inherit;
    width: 100%;
    margin: 10px 0;
  }
  .pdfbtn:last-child {
    margin: 0 0 10px;
  }
}


@media all and (orientation: landscape) and (max-width: 896px){
  .header__logo-area {
    width: 90px;
    height: 90px;
  }
}