@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
=================================================================== */
#homepage .gp-p-homepage__box-list ul + .caution_txt {
  margin-top: 4em;
}
#homepage .gp-p-homepage__box-list ul li {
  --margin-bottom: 20px;
  --hash-height: 40px;
}
@media (min-width: 768px) and (max-width: 1024px) {
  #homepage .gp-p-homepage__box-list ul li {
    --margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  #homepage .gp-p-homepage__box-list ul li {
    --margin-bottom: 5%;
  }
}
@media (min-width: 768px) {
  #homepage .gp-p-homepage__box-list ul li:nth-child(n+4) {
    margin-top: calc(var(--hash-height) + var(--margin-bottom));
  }
}
@media (max-width: 767px) {
  #homepage .gp-p-homepage__box-list ul li:nth-child(n+3) {
    margin-top: calc(var(--hash-height) + var(--margin-bottom));
  }
}
#homepage .gp-p-homepage__box-list ul li > a.caution:before, #homepage .gp-p-homepage__box-list ul li > a.caution_2:before, #homepage .gp-p-homepage__box-list ul li > div.caution:before, #homepage .gp-p-homepage__box-list ul li > div.caution_2:before {
  height: var(--hash-height);
  top: 100%;
  bottom: auto;
}
@media (min-width: 768px) and (max-width: 1024px) {
  #homepage .gp-p-homepage__box-list ul li > a.caution_bottom:before, #homepage .gp-p-homepage__box-list ul li > div.caution_bottom:before {
    top: calc(100% + 1.2em);
  }
}
@media (min-width: 1057px) and (max-width: 1280px) {
  #homepage .gp-p-homepage__box-list ul li > a.caution_bottom:before, #homepage .gp-p-homepage__box-list ul li > div.caution_bottom:before {
    top: calc(100% + 1.3em);
  }
}
@media (min-width: 1402px) and (max-width: 1538px) {
  #homepage .gp-p-homepage__box-list ul li > a.caution_bottom:before, #homepage .gp-p-homepage__box-list ul li > div.caution_bottom:before {
    top: calc(100% + 1.5em);
  }
}
#homepage .gp-p-homepage__box-list .caution_txt, #homepage .gp-p-homepage__box-list .caution_txt_2 {
  position: static;
}
@media (max-width: 767px) {
  #homepage .press_height {
    height: calc(-96px + 140vh) !important;
  }
}
#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;
}

#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: flex;
  justify-content: space-between;
  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;
  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%;
  transform: rotate(45deg);
  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%;
}
