@charset "UTF-8";
/* ==================================================
	basic settings
================================================== */
/* ==================================================
	common
================================================== */
/* ▽ PC layout ========== */
/* ========== end △ */

#page_ttl {
  position: relative;
  height: 61.32vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #page_ttl {
    height: 880px;
  }
}
/* ========== end △ */
#page_ttl .inner {
  overflow: hidden;
}
#page_ttl .page_ttl_bg {
  width: auto;
  max-width: none;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#page_ttl .page_ttl {
  width: 100%;
  color: #fff;
  font-size: 11.242vw;
  font-family: "Josefin Sans", serif;
  text-align: center;
  position: absolute;
  top: 22.995vw;
  line-height: 1.8;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #page_ttl .page_ttl {
    font-size: 7.2rem;
    top: 380px;
  }
}
/* ========== end △ */

.u_page {
  margin-top: 15.33vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  .u_page {
    margin-top: 200px;
  }
}
/* ========== end △ */

.txt_mt {
  margin-top: 7.665vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  .txt_mt {
    margin-top: 40px;
  }
}
/* ========== end △ */

.mid_sec {
  margin-top: 12.775vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  .mid_sec {
    margin-top: 100px;
  }
}
/* ========== end △ */

.sec_area {
  padding-top: 20.44vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  .sec_area {
    padding-top: 150px;
  }
}
/* ========== end △ */

.mid_sec02 {
  padding-top: 15.33vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  .mid_sec02 {
    padding-top: 80px;
  }
}
/* ========== end △ */

/* ==================================================
	about
================================================== */
#about #sec_policy .txt_area {
  text-align: center;
}
#about #sec_policy .txt_area .catch {
  font-size: 5.621vw;
  font-weight: 500;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about #sec_policy .txt_area .catch {
    font-size: 3.2rem;
    margin-top: 32px;
  }
}
/* ========== end △ */
#about #sec_policy .txt_area .sub {
  font-size: 5.11vw;
  padding-top: 1.022vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about #sec_policy .txt_area .sub {
    font-size: 3.2rem;
    margin-top: -16px;
  }
}
/* ========== end △ */
#about #sec_policy .txt_area .txt {
  margin-top: 3.066vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about #sec_policy .txt_area .txt {
    margin-top: 32px;
  }
}
/* ========== end △ */
#about .outline_li {
  border-top: 2px solid #707070;
}
#about .outline_li > li {
  border-bottom: 2px dashed #B5B5B5;
}
#about .outline_li > li:last-child {
  border-bottom: 2px solid #707070;
}
#about .outline_li > li dl {
  position: relative;
  padding: 5.11vw 5.11vw 4.088vw 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about .outline_li > li dl {
    max-width: 860px;
    padding: 20px 20px 20px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
}
/* ========== end △ */
#about .outline_li > li dl > dt {
  line-height: 1;
  font-size: 4.088vw;
  font-weight: bold;
  margin-bottom: 2.044vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about .outline_li > li dl > dt {
    line-height: 1.4;
    width: 170px;
    font-size: 2.4rem;
    margin-bottom: 0;
  }
}
/* ========== end △ */
#about .outline_li > li dl > dd {
  font-size: 4.088vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #about .outline_li > li dl > dd {
    width: calc(100% - 180px);
    font-size: 2.4rem;
  }
}
/* ========== end △ */
#about .outline_li > li dl > dd .bold {
  font-weight: bold;
}

/* ==================================================
	seavice
================================================== */
#service .service_li {
  margin-top: 10.22vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li {
    margin-top: 80px;
  }
}
/* ========== end △ */
#service .service_li li {
  width: 100%;
}
#service .service_li li + li {
  margin-top: 6.132vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li + li {
    margin-top: 42px;
  }
}
/* ========== end △ */
#service .service_li li:nth-child(2) .top .deco {
  background: #478CDD;
}
/* ▽ SP layout ========== */
@media print, screen and (max-width: 780px) {
  #service .service_li li:nth-child(2) .top .img img {
    left: auto;
    right: -10vw;
    transform: none;
  }
}
/* ========== end △ */
#service .service_li li:nth-child(2) .bottom {
  border: 3px solid #478CDD;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li:nth-child(2) .bottom {
    border: 5px solid #478CDD;
  }
}
/* ========== end △ */
#service .service_li li:nth-child(3) .top .deco {
  background: #67AAED;
}
#service .service_li li:nth-child(3) .bottom {
  border: 3px solid #67AAED;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li:nth-child(3) .bottom {
    border: 5px solid #67AAED;
  }
}
/* ========== end △ */
#service .service_li li:nth-child(4) .top .deco {
  background: #43B6D1;
}
/* ▽ SP layout ========== */
@media print, screen and (max-width: 780px) {
  #service .service_li li:nth-child(4) .top .img img {
    transform: translateX(-35%);
  }
}
/* ========== end △ */
#service .service_li li:nth-child(4) .bottom {
  border: 3px solid #43B6D1;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li:nth-child(4) .bottom {
    border: 5px solid #43B6D1;
  }
}
/* ========== end △ */
#service .service_li li:nth-child(5) .top .deco {
  background: #43BEBE;
}
/* ▽ SP layout ========== */
@media print, screen and (max-width: 780px) {
  #service .service_li li:nth-child(5) .top .img img {
    transform: translateX(-35%);
  }
}
/* ========== end △ */
#service .service_li li:nth-child(5) .bottom {
  border: 3px solid #43BEBE;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li:nth-child(5) .bottom {
    border: 5px solid #43BEBE;
  }
}
/* ========== end △ */
#service .service_li li .top {
  width: 100%;
  background: #ddd;
  display: block;
  position: relative;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .top {
    display: flex;
  }
}
/* ========== end △ */
#service .service_li li .top .deco {
  width: 35.77vw;
  height: 35.77vw;
  position: absolute;
  background: #4752D6;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 2;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .top .deco {
    width: 260px;
    height: auto;
    position: sticky;
  }
}
/* ========== end △ */
#service .service_li li .top .deco img {
  max-width: 10.731vw;
  max-height: 10.731vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .top .deco img {
    max-width: 60px;
    max-height: 60px;
  }
}
/* ========== end △ */
#service .service_li li .top .deco p {
  font-size: 4.088vw;
  font-weight: bold;
  margin-top: 2.044vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .top .deco p {
    font-size: 2.4rem;
    margin-top: 16px;
  }
}
/* ========== end △ */
#service .service_li li .top .img {
  width: 100%;
  height: 35.77vw;
  position: relative;
  overflow: hidden;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .top .img {
    width: calc(100% - 260px);
    height: 260px;
  }
}
/* ========== end △ */
#service .service_li li .top .img img {
  width: auto;
  max-width: none;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
#service .service_li li .bottom {
  box-sizing: border-box;
  padding: 30px 20px;
  border: 3px solid #4752D6;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .bottom {
    font-size: 1.6rem;
    padding: 60px 75px;
    border: 5px solid #4752D6;
  }
}
/* ========== end △ */
#service .service_li li .bottom .catch {
  font-size: 5.11vw;
  font-weight: 400;
  margin-bottom: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #service .service_li li .bottom .catch {
    font-size: 3.2rem;
    margin-bottom: 20px;
  }
}
/* ========== end △ */

/* ==================================================
	contact
================================================== */
#contact {
  padding-bottom: 12.775vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact {
    padding-bottom: 100px;
  }
}
/* ========== end △ */
#contact .ttl01 {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact .ttl01 {
    font-size: 4.2rem;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box {
  box-sizing: border-box;
  font-size: 5.11vw;
  padding: 10.22vw 5.11vw 0vw 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box {
    width: 100%;
    max-width: 980px;
    box-sizing: border-box;
    font-size: 2.4rem;
    padding: 60px 20px 0;
    margin: 0 auto;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form {
  border-bottom: 1px solid #ffffff;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form {
    width: 100%;
  }
}
/* ========== end △ */
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form > dl {
    width: 100%;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form > dl + dl {
  margin-top: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form > dl + dl {
    margin-top: 32px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form > dl > dt {
  font-weight: 500;
  margin-bottom: 2.555vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form > dl > dt {
    position: relative;
    margin-bottom: 10px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form > dl > dt.req p {
  box-sizing: border-box;
  position: relative;
  display: inline-block;
  padding-right: 7.665vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form > dl > dt.req p {
    width: fit-content;
    position: inherit;
    padding-right: 44px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form > dl > dt.req p::after {
  width: 4.599vw;
  height: 4.599vw;
  font-size: 3.066vw;
  content: "！";
  color: #fff;
  background: #4752D6;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 100vw;
  position: absolute;
  top: 1.5vw;
  right: 0;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form > dl > dt.req p::after {
    width: 26px;
    height: 26px;
    font-size: 1.8rem;
    top: 5px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form select,
#contact #sec_contact .form_box .table_form textarea,
#contact #sec_contact .form_box .table_form input {
  width: 100%;
  box-sizing: border-box;
  font-size: 4.088vw;
  padding: 2.555vw 3.8325vw 2.555vw 3.8325vw;
  border: 1px solid #000000;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form select,
  #contact #sec_contact .form_box .table_form textarea,
  #contact #sec_contact .form_box .table_form input {
    font-size: 1.6rem;
    padding: 10px 15px;
    border-radius: 0;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .table_form textarea {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  resize: none;
  height: 45.99vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .table_form textarea {
    height: 150px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .pp_area {
  margin-top: 10.22vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .pp_area {
    width: 100%;
    margin: 80px auto 0;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .pp_area .scrol_box {
  height: 71.54vw;
  background: #fff;
  overflow-y: scroll;
  font-size: 3.577vw;
  padding: 7.665vw 5.11vw 7.665vw 5.11vw;
  border: 1px solid #dbd8d7;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .pp_area .scrol_box {
    height: 150px;
    font-size: 1.2rem;
    padding: 30px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .pp_area .scrol_box .ttl {
  margin-bottom: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .pp_area .scrol_box .ttl {
    margin-bottom: 20px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .pp_area .scrol_box dl {
  margin-top: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .pp_area .scrol_box dl {
    margin-top: 20px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .accept_box {
  font-size: 3.577vw;
  margin-top: 5.11vw;
  text-align: center;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .accept_box {
    font-size: 1.6rem;
    margin-top: 20px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .accept_box a {
  text-decoration: underline;
  color: #4752D6;
}
#contact #sec_contact .form_box .accept_box input {
  width: 5.11vw;
  height: 5.11vw;
  border: 1px solid #dbd8d7;
  accent-color: #4752D6;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.2);
  margin-top: -0.511vw;
  margin-right: 2.555vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .accept_box input {
    width: 18px;
    height: 18px;
    margin-top: 0px;
    margin-right: 8px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .btn_box01 {
  display: block;
  text-align: center;
  margin-top: 10.22vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .btn_box01 {
    margin-top: 80px;
  }
}
/* ========== end △ */
#contact #sec_contact .form_box .btn_box01 input {
  width: fit-content;
  display: block;
  font-size: 4.8545vw;
  letter-spacing: 0.1em;
  background: #fff url(../images/common_img/btn_arrow.svg) right 10.22vw top 4.5vw/8.176vw auto no-repeat;
  color: #4B578B;
  font-weight: bold;
  padding: 3.066vw 22.995vw 3.066vw 10.22vw;
  border: 2px solid #4B578B;
  margin: 0 auto;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #contact #sec_contact .form_box .btn_box01 input {
    background: #fff url(../images/common_img/btn_arrow.svg) right 40px top 20px/30px auto no-repeat;
    font-size: 1.9rem;
    padding: 14px 90px 14px 40px;
    transition: 0.3s ease all;
  }
  #contact #sec_contact .form_box .btn_box01 input:hover {
    background: #fff url(../images/common_img/btn_arrow.svg) right 32px top 20px/30px auto no-repeat;
  }
}
/* ========== end △ */

/* ==================================================
	pp
================================================== */
#pp .pp_area {
  font-size: 3.577vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #pp .pp_area {
    width: 100%;
    font-size: 1.2rem;
    max-width: 900px;
    margin: 0 auto 0;
  }
}
/* ========== end △ */
#pp .pp_area .ttl {
  margin-bottom: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #pp .pp_area .ttl {
    margin-bottom: 20px;
  }
}
/* ========== end △ */
#pp .pp_area dl {
  margin-top: 5.11vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #pp .pp_area dl {
    margin-top: 20px;
  }
}
/* ========== end △ */

/* ==================================================
	news
================================================== */
#news {
  position: relative;
  margin-top: 12.775vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #news {
    margin-top: 105px;
  }
}
/* ========== end △ */
#news #t_news {
  position: relative;
  padding: 15.33vw 0vw 30.66vw 0vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #news #t_news {
    padding: 120px 0 200px;
  }
}
/* ========== end △ */
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #news #t_news .btn_mt {
    margin-top: 60px;
  }
}
/* ========== end △ */
#news .article .ttl {
  font-size: 5.621vw;
  font-weight: bold;
  margin-bottom: 7.665vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #news .article .ttl {
    font-size: 3.6rem;
    margin-bottom: 30px;
  }
}
/* ========== end △ */
#news .article .txt_box {
  margin-top: 7.665vw;
}
/* ▽ PC layout ========== */
@media only screen and (min-width: 781px) {
  #news .article .txt_box {
    margin-top: 30px;
  }
}
/* ========== end △ *//*# sourceMappingURL=content.css.map */