@charset "UTF-8";
/* -----------------------------------------------------------
	スタイルガイド用記述
----------------------------------------------------------- */
/*
_mixins.scss

Styleguide 1.3.0
*/
.view_sp {
  display: none !important;
}
@media (max-width: 767px) {
  .view_sp {
    display: block !important;
  }
}

.view_tab {
  display: none !important;
}
@media (min-width: 768px) and (max-width: 1024px) {
  .view_tab {
    display: block !important;
  }
}

.view_pc {
  display: none !important;
}
@media (min-width: 1025px) {
  .view_pc {
    display: block !important;
  }
}

.view_tab-down {
  display: none !important;
}

/* ===================================================================
CSS information

 file name  : top.css
 author     : Ability Consultant
 style info : 総合TOP
=================================================================== */
@media (min-width: 768px) and (max-width: 1024px) {
  #homepage .gp-p-homepage__box-list li > div.caution_bottom::before {
    bottom: -20%;
  }
}
@media (max-width: 1539px) and (min-width: 1402px) {
  #homepage .gp-p-homepage__box-list li > div.caution_bottom::before {
    bottom: -20%;
  }
}
@media (min-width: 1025px) {
  #homepage .gp-p-homepage__box-list li > a.caution_2::before,
  #homepage .gp-p-homepage__box-list li > div.caution_2::before {
    bottom: -12%;
  }
}
#homepage .press {
  width: 100%;
  text-align: left;
  background: rgba(0, 0, 0, 0.5);
  padding: 1% 2%;
  color: #fff;
}
@media (max-width: 767px) {
  #homepage .press {
    margin-top: 3%;
  }
}
#homepage .press_box:nth-of-type(n+2) {
  margin-top: .5em;
}
#homepage .press_title {
  font-weight: bold;
}
#homepage .press_news {
  margin-left: 0;
}

#terms .gp-c-title--main--center {
  padding-top: clamp(112px, 5vw, 15%);
}
@media (max-width: 767px) {
  #terms .gp-c-title--main--center {
    padding-top: 15%;
  }
}
#terms .gp-privacy-cnt-title {
  position: relative;
  overflow: hidden;
}
#terms .gp-privacy-cnt-title:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 50%;
  margin-left: -704px;
  width: 9999px;
  height: 100%;
  background-color: #f5f1e9;
  z-index: -1;
  pointer-events: none;
}
#terms .terms .terms_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 5%;
}
@media (max-width: 1024px) {
  #terms .terms .terms_flex {
    display: block;
  }
}
#terms .terms .terms_flex li {
  width: 48%;
  font-size: 110%;
  margin-top: 2%;
}
@media (max-width: 1024px) {
  #terms .terms .terms_flex li {
    width: 100%;
  }
}
#terms .terms .terms_flex li a {
  display: block;
  border: 1px solid #dfdfdf;
  padding: 1em 3em;
  text-decoration: none;
  text-align: center;
  position: relative;
  padding-right: 5%;
  background-color: #fff;
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
#terms .terms .terms_flex li a:after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-top: 1px solid #2d3e48;
  border-right: 1px solid #2d3e48;
  position: absolute;
  top: 45%;
  right: 15%;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: right 0.3s ease;
  transition: right 0.3s ease;
}
@media (max-width: 767px) {
  #terms .terms .terms_flex li a:after {
    right: 10%;
  }
}
#terms .terms .terms_flex li a:hover {
  background-color: #f0f0f0;
}
#terms .terms .terms_flex li a:hover:after {
  right: 12%;
}
