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

      mixin.scss

=======================*/
/*=================

      common.scss

=======================*/
.common_wrap {
  padding: 0 16px;
}

.common_inner {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
}

.common_inner_s {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.common_right_wrap {
  max-width: calc(100% - (50% - (1100px / 2)));
  width: calc(100% - 16px);
  margin-left: auto;
  margin-right: 0;
}

.common_left_wrap {
  max-width: calc(100% - (50% - (1100px / 2)));
  width: calc(100% - 16px);
  margin-left: 0;
  margin-right: auto;
}

/* フェードイン(初期値) */
.scroll_up {
  opacity: 0;
  /* 最初は非表示 */
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
  /* 下に50pxの位置から */
  -webkit-transition: opacity .8s, -webkit-transform .8s;
  transition: opacity .8s, -webkit-transform .8s;
  transition: opacity .8s, transform .8s;
  transition: opacity .8s, transform .8s, -webkit-transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* フェードイン(スクロールした後) */
.scroll_up.is-show {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  -webkit-transform: translateY(0);
  transform: translateY(0);
  /* 30px上に移動する */
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  /* フェード開始を0.2秒遅らせる */
}

/*common btn*/
.common_btn_wrap {
  margin: 80px 0 0;
}

@media only screen and (max-width: 640px) {
  .common_btn_wrap {
    margin: 40px 0 0;
  }
}

.common_more_btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  height: 64px;
  border-radius: 40px;
  background-color: #3CB7D5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
  padding: 8px 32px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .common_more_btn {
    height: 56px;
    font-size: 16px;
  }
}

.common_more_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 7px;
  height: 12px;
  background-image: url(../images/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.common_more_btn.link {
  padding: 8px 48px;
}

.common_more_btn.link:after {
  width: 16px;
  height: 16px;
  background-image: url(../images/common/icon_link.svg);
}

.common_back_btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  height: 64px;
  border-radius: 40px;
  background-color: #3CB7D5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
  padding: 8px 32px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .common_back_btn {
    height: 56px;
    font-size: 16px;
  }
}

.common_back_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 24px;
  width: 7px;
  height: 12px;
  background-image: url(../images/common/icon_arrow_back.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.common_contact_btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  height: 64px;
  border-radius: 40px;
  background-color: #1A1A1A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
  padding: 8px 32px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .common_contact_btn {
    height: 56px;
    font-size: 16px;
  }
}

.common_contact_btn.mt_24 {
  margin: 24px auto 0;
}

.common_contact_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 7px;
  height: 12px;
  background-image: url(../images/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

/*common_title*/
.common_sec_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .common_sec_title_wrap {
    display: block;
    margin: 0 0 40px;
  }
}

.common_sec_title_wrap.mb_32 {
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .common_sec_title_wrap.mb_32 {
    margin: 0 0 24px;
  }
}

.common_sec_title_wrap.mb_48 {
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .common_sec_title_wrap.mb_48 {
    margin: 0 0 32px;
  }
}

.common_sec_title_wrap.mb_0 {
  margin: 0 0 0;
}

.common_sec_title_wrap .common_sec_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 16px 0 0;
}

@media only screen and (max-width: 640px) {
  .common_sec_title_wrap .common_sec_title_ja {
    font-size: 24px;
    margin: 0 0 8px 0;
  }
}

.common_sec_title_wrap .common_sec_title_en {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .common_sec_title_wrap .common_sec_title_en {
    font-size: 15px;
  }
}

.common_center_title_wrap {
  margin: 0 0 72px;
}

@media only screen and (max-width: 640px) {
  .common_center_title_wrap {
    margin: 0 0 32px;
  }
}

.common_center_title_wrap .common_center_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 40px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 8px;
}

@media only screen and (max-width: 640px) {
  .common_center_title_wrap .common_center_title_ja {
    font-size: 32px;
    margin: 0 0 4px;
  }
}

.common_center_title_wrap .common_center_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .common_center_title_wrap .common_center_title_en {
    font-size: 18px;
  }
}

.common_center_title_wrap .common_center_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 56px 0 0;
}

@media only screen and (max-width: 640px) {
  .common_center_title_wrap .common_center_text {
    margin: 32px 0 0;
  }
}

/*common_contact_block*/
.common_contact_link_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 840px) {
  .common_contact_link_wrap {
    display: block;
  }
}

.common_contact_link_wrap .common_contact_tel_block {
  width: 50%;
  border: 1px solid #1A1A1A;
  border-left: none;
  background-color: #FFF;
  padding: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 840px) {
  .common_contact_link_wrap .common_contact_tel_block {
    width: 100%;
    border-right: none;
  }
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_tel_block {
    padding: 32px 24px;
  }
}

.common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content {
  width: 100%;
}

.common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_title {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_title {
    font-size: 18px;
  }
}

.common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_title img {
  width: 16px;
  margin: 0 8px 0 0;
}

.common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_link {
  display: block;
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 44px;
  color: #3CB7D5;
  line-height: 1.2;
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_link {
    font-size: 38px;
  }
}

.common_contact_link_wrap .common_contact_tel_block .common_contact_tel_block_content .common_contact_tel_block_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  color: #1A1A1A;
  line-height: 1.5;
}

.common_contact_link_wrap .common_contact_form_block {
  width: 50%;
  background-color: #1A1A1A;
  padding: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 840px) {
  .common_contact_link_wrap .common_contact_form_block {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_form_block {
    padding: 32px 24px;
  }
}

.common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content {
  width: 100%;
}

.common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #FFF;
  line-height: 1.5;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_title {
    font-size: 18px;
  }
}

.common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_title img {
  width: 16px;
  margin: 0 8px 0 0;
}

.common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_link {
  width: 100%;
  max-width: 400px;
  height: 64px;
  border-radius: 40px;
  background-color: #FFF;
  margin: 0 auto;
  padding: 8px 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_link {
    height: 56px;
  }
}

.common_contact_link_wrap .common_contact_form_block .common_contact_form_block_content .common_contact_form_block_link:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 7px;
  height: 12px;
  background-image: url(../images/common/icon_arrow_b.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

/*pankuzu*/
.pankuzu_wrap {
  background-color: #FFF;
  padding: 12px 0;
  overflow-x: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
}

@media only screen and (max-width: 640px) {
  .pankuzu_wrap {
    padding: 8px 0;
  }
}

.pankuzu_wrap::-webkit-scrollbar {
  display: none;
}

.pankuzu_wrap .pankuzu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pankuzu_wrap .pankuzu_list .pankuzu_item {
  margin: 0 44px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
  white-space: nowrap;
}

@media only screen and (max-width: 640px) {
  .pankuzu_wrap .pankuzu_list .pankuzu_item {
    font-size: 11px;
  }
}

.pankuzu_wrap .pankuzu_list .pankuzu_item:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: -24px;
  width: 5px;
  height: 9px;
  background-image: url(../images/common/icon_arrow_g.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.pankuzu_wrap .pankuzu_list .pankuzu_item:last-child:after {
  content: none;
}

.pankuzu_wrap .pankuzu_list .pankuzu_item .pankuzu_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 12px;
  color: #1A1A1A;
  line-height: 1.5;
  text-decoration: underline;
}

.pankuzu_wrap .pankuzu_list .pankuzu_item .pankuzu_link img {
  width: 14px;
  margin: 0 4px 0 0;
}

/*common_page_title_block*/
.common_page_title_block {
  padding: 56px 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media only screen and (max-width: 640px) {
  .common_page_title_block {
    padding: 24px 0;
  }
}

.common_page_title_block.about {
  background-image: url(../images/about/bg_title.jpg);
}

.common_page_title_block.service {
  background-image: url(../images/service/bg_title.jpg);
}

.common_page_title_block.price {
  background-image: url(../images/price/bg_title.jpg);
}

.common_page_title_block.area {
  background-image: url(../images/area/bg_title.jpg);
}

.common_page_title_block.faq {
  background-image: url(../images/faq/bg_title.jpg);
}

.common_page_title_block.achievements {
  background-image: url(../images/achievements/bg_title.jpg);
}

.common_page_title_block.news {
  background-image: url(../images/news/bg_title.jpg);
}

.common_page_title_block.company {
  background-image: url(../images/company/bg_title.jpg);
}

.common_page_title_block.contact {
  background-image: url(../images/contact/bg_title.jpg);
}

.common_page_title_block .common_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  min-height: 266px;
}

@media only screen and (max-width: 640px) {
  .common_page_title_block .common_inner {
    min-height: 200px;
  }
}

.common_page_title_block .common_inner .common_page_title_content {
  text-align: center;
}

.common_page_title_block .common_inner .common_page_title_content .common_page_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 40px;
  color: #FFF;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .common_page_title_block .common_inner .common_page_title_content .common_page_title_ja {
    font-size: 32px;
    margin: 0 0 8px;
  }
}

.common_page_title_block .common_inner .common_page_title_content .common_page_title_en {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #3CB7D5;
  line-height: 1.2;
  margin: 0 0 48px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .common_page_title_block .common_inner .common_page_title_content .common_page_title_en {
    font-size: 18px;
    margin: 0 0 32px;
  }
}

.common_page_title_block .common_inner .common_page_title_content .common_page_title_en:after {
  content: "";
  position: absolute;
  bottom: -32px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 48px;
  height: 2px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .common_page_title_block .common_inner .common_page_title_content .common_page_title_en:after {
    bottom: -16px;
  }
}

.common_page_title_block .common_inner .common_page_title_content .common_page_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
  line-height: 2;
}

.common_rakuposu_link {
  background-image: url(../images/common/bg_rakuposu_link.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding: 48px 0;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link {
    padding: 32px 0;
    background-position: center right;
  }
}

.common_rakuposu_link .common_rakuposu_link_bg_top {
  position: absolute;
  top: 0;
  left: 0;
  width: 220px;
}

.common_rakuposu_link .common_rakuposu_link_bg_top img {
  width: 100%;
  vertical-align: top;
}

.common_rakuposu_link .common_rakuposu_link_bg_bottom {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 220px;
}

.common_rakuposu_link .common_rakuposu_link_bg_bottom img {
  width: 100%;
  vertical-align: bottom;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content {
    padding: 24px 16px;
    background-color: rgba(255, 255, 255, 0.6);
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 28px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title {
    font-size: 22px;
    margin: 0 0 24px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title .t_big {
  font-size: 44px;
  color: #3CB7D5;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title .t_big {
    font-size: 34px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title .t_small {
  font-size: 24px;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_title .t_small {
    font-size: 20px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_text {
  padding: 0 0 0 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_text {
    margin: 0 0 32px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_text:before {
  content: "";
  position: absolute;
  left: 2px;
  top: 10px;
  width: 6px;
  height: 10px;
  background-image: url(../images/common/icon_rakuposu_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_text span {
    font-size: 18px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_btn {
  width: 100%;
  max-width: 400px;
  height: 64px;
  border-radius: 40px;
  background-color: #3CB7D5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  padding: 8px 48px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_btn {
    height: 56px;
    font-size: 16px;
  }
}

.common_rakuposu_link .common_rakuposu_link_content .common_rakuposu_link_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 16px;
  height: 16px;
  background-image: url(../images/common/icon_link.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

/*common_page_link_menu_list*/
.common_page_link_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 56px;
}

@media only screen and (max-width: 640px) {
  .common_page_link_menu_list {
    margin: 0 0 24px;
  }
}

.common_page_link_menu_list .common_page_link_menu_item {
  width: calc((100% - 144px) / 4);
  margin: 0 48px 24px 0;
}

@media only screen and (max-width: 840px) {
  .common_page_link_menu_list .common_page_link_menu_item {
    width: auto;
  }
}

@media only screen and (max-width: 640px) {
  .common_page_link_menu_list .common_page_link_menu_item {
    margin: 0 24px 12px 0;
  }
}

.common_page_link_menu_list .common_page_link_menu_item:nth-of-type(4n) {
  margin: 0 0 24px 0;
}

@media only screen and (max-width: 640px) {
  .common_page_link_menu_list .common_page_link_menu_item:nth-of-type(4n) {
    margin: 0 0 12px 0;
  }
}

.common_page_link_menu_list .common_page_link_menu_item .common_page_link_menu_link {
  display: block;
  width: 100%;
  position: relative;
  padding: 0 32px 16px 0;
  border-bottom: 1px solid #E2E2E2;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .common_page_link_menu_list .common_page_link_menu_item .common_page_link_menu_link {
    font-size: 14px;
  }
}

.common_page_link_menu_list .common_page_link_menu_item .common_page_link_menu_link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 1px;
  background-color: #3CB7D5;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.common_page_link_menu_list .common_page_link_menu_item .common_page_link_menu_link:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background-image: url(../images/common/icon_arrow_dot_bottom.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (min-width: 960px) {
  .common_page_link_menu_list .common_page_link_menu_item .common_page_link_menu_link:hover::before {
    width: 100%;
  }
}

/*paging*/
.page_list {
  margin: 80px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 640px) {
  .page_list {
    margin: 40px 0 0;
  }
}

.page_list .page_item {
  margin: 0 4px;
}

.page_list .page_item .page_link_prev {
  display: block;
  width: 40px;
}

@media only screen and (max-width: 640px) {
  .page_list .page_item .page_link_prev {
    width: 32px;
  }
}

.page_list .page_item .page_link_prev img {
  width: 100%;
}

.page_list .page_item .page_link {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 640px) {
  .page_list .page_item .page_link {
    width: 32px;
    height: 32px;
  }
}

.page_list .page_item .page_link span {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .page_list .page_item .page_link span {
    font-size: 16px;
  }
}

.page_list .page_item .page_link.active {
  background-color: #3CB7D5;
}

.page_list .page_item .page_link.active span {
  color: #FFF;
}

@media only screen and (min-width: 960px) {
  .page_list .page_item .page_link:hover {
    background-color: #9EDBEA;
  }
}

.page_list .page_item .dot {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .page_list .page_item .dot {
    font-size: 16px;
  }
}

/*404*/
.error_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .error_page {
    padding: 48px 0 64px;
  }
}

.error_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 40px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .error_title_ja {
    font-size: 32px;
    margin: 0 0 8px;
  }
}

.error_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .error_title_en {
    font-size: 18px;
    margin: 0 0 40px;
  }
}

.error_page_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .error_page_text {
    line-height: 2;
  }
}

/*=================

      header.scss

=======================*/
.header_wrap {
  width: 100%;
  height: 88px;
}

@media only screen and (max-width: 1400px) {
  .header_wrap {
    height: 72px;
  }
}

.pc_header_wrap {
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: 100%;
  height: 88px;
  background-color: #3CB7D5;
}

@media only screen and (max-width: 1400px) {
  .pc_header_wrap {
    display: none;
  }
}

.pc_header_wrap .pc_header_inner {
  padding: 8px 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: 88px;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_logo {
  display: block;
  width: 180px;
  margin: 0 48px 0 0;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_logo img {
  width: 100%;
  vertical-align: middle;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item {
  margin: 0 40px 0 0;
  position: relative;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_menu_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
  line-height: 1.5;
  padding: 24px 0;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_menu_link img {
  width: 12px;
  margin: 0 0 0 4px;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_menu_item_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
  line-height: 1.5;
  padding: 24px 0;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_menu_item_btn img {
  width: 8px;
  margin: 0 0 0 4px;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_sub_menu_wrap {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  display: none;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_sub_menu_wrap .pc_header_sub_menu_list {
  width: 206px;
  padding: 24px 24px;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_sub_menu_wrap .pc_header_sub_menu_list .pc_header_sub_menu_item {
  margin: 0 0 20px;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_sub_menu_wrap .pc_header_sub_menu_list .pc_header_sub_menu_item:last-child {
  margin: 0 0 0;
}

.pc_header_wrap .pc_header_inner .pc_header_logo_menu .pc_header_menu_list .pc_header_menu_item .pc_header_sub_menu_wrap .pc_header_sub_menu_list .pc_header_sub_menu_item .pc_header_sub_menu_link {
  display: block;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 13px;
  color: #3CB7D5;
  line-height: 1.5;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap .pc_header_tel_btn {
  display: block;
  text-align: center;
  margin: 0 32px 0 0;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap .pc_header_tel_btn .pc_header_tel_btn_num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 26px;
  color: #FFF;
  line-height: 1.5;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap .pc_header_tel_btn .pc_header_tel_btn_num img {
  width: 18px;
  margin: 0 8px 0 0;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap .pc_header_tel_btn .pc_header_tel_btn_content_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 11px;
  color: #FFF;
  line-height: 1.5;
}

.pc_header_wrap .pc_header_inner .pc_header_btn_wrap .pc_header_contact_btn {
  width: 160px;
  height: 48px;
  border-radius: 30px;
  background-color: #1A1A1A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
}

.sp_header {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 72px;
  background-color: #3CB7D5;
  z-index: 1000;
}

@media only screen and (max-width: 1400px) {
  .sp_header {
    display: block;
  }
}

.sp_header .sp_header_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 72px;
}

.sp_header .sp_header_content .sp_header_logo {
  display: block;
  width: 160px;
}

.sp_header .sp_header_content .sp_header_logo img {
  display: block;
  width: 100%;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 0 32px 0 0;
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list {
    margin: 0 16px 0 0;
  }
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item {
  margin: 0 0 0 16px;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_tel_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 160px;
  height: 40px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 15px;
  color: #FFF;
  line-height: 1.5;
  border: 2px solid #FFF;
  border-radius: 40px;
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_tel_link {
    width: 32px;
    height: 32px;
    border-radius: 50%;
  }
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_tel_link img {
  width: 12px;
  margin: 0 4px 0 0;
  vertical-align: middle;
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_tel_link img {
    width: 16px;
    margin: 0 0 0 0;
  }
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_tel_link span {
    display: none;
  }
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_contact_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 160px;
  height: 40px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 15px;
  color: #FFF;
  line-height: 1.5;
  border: 2px solid #1A1A1A;
  background-color: #1A1A1A;
  border-radius: 40px;
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_contact_link {
    width: 32px;
    height: 32px;
    border-radius: 50%;
  }
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_contact_link img {
  width: 12px;
  margin: 0 4px 0 0;
  vertical-align: middle;
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_contact_link img {
    width: 16px;
    margin: 0 0 0 0;
  }
}

@media only screen and (max-width: 640px) {
  .sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_icon_menu_list .sp_header_icon_menu_item .sp_header_icon_menu_contact_link span {
    display: none;
  }
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn {
  width: 48px;
  height: 40px;
  border-radius: 3px;
  background-color: #FFF;
  position: relative;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn span {
  display: inline-block;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  position: absolute;
  height: 2px;
  background-color: #3CB7D5;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn span:nth-of-type(1n) {
  left: 12px;
  top: 16px;
  width: 24px;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn span:nth-of-type(2n) {
  left: 12px;
  top: 22px;
  width: 24px;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn.active span:nth-of-type(1n) {
  top: 13px;
  left: 12px;
  -webkit-transform: translateY(6px) rotate(-32deg);
  transform: translateY(6px) rotate(-32deg);
  width: 24px;
}

.sp_header .sp_header_content .sp_header_menu_btn_wrap .sp_header_menu_btn.active span:nth-of-type(2n) {
  top: 25px;
  left: 12px;
  -webkit-transform: translateY(-6px) rotate(32deg);
  transform: translateY(-6px) rotate(32deg);
  width: 24px;
}

.sp_header_menu {
  display: none;
}

.sp_header_menu.active {
  display: block;
}

.sp_header_menu .sp_header_menu_inner {
  position: fixed;
  z-index: 1000;
  top: 72px;
  left: 0;
  width: 100%;
  height: calc(100vh - 72px);
  overflow-y: scroll;
  padding: 16px 0;
  background-color: #3CB7D5;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list {
  margin: 0 0 24px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item {
  border-bottom: 1px solid #1A1A1A;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_menu_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: 16px 20px 16px 20px;
  position: relative;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_menu_link::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #1A1A1A;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_menu_link:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 14px;
  height: 9px;
  background-image: url(../images/common/icon_arrow_b.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_menu_item_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: 16px 20px 16px 20px;
  position: relative;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_menu_item_text::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #1A1A1A;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_sub_menu_list {
  padding: 0 0 8px 20px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_sub_menu_list .sp_header_sub_menu_item .sp_header_sub_menu_link {
  display: block;
  padding: 12px 0 12px 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.sp_header_menu .sp_header_menu_inner .sp_header_menu_list .sp_header_menu_item .sp_header_sub_menu_list .sp_header_sub_menu_item .sp_header_sub_menu_link::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 8px;
  height: 2px;
  background-color: #1A1A1A;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0 24px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list .sp_header_btn_menu_item {
  margin: 0 8px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list .sp_header_btn_menu_item .sp_header_btn_menu_tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 160px;
  height: 40px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 15px;
  color: #FFF;
  line-height: 1.5;
  border: 2px solid #FFF;
  border-radius: 40px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list .sp_header_btn_menu_item .sp_header_btn_menu_tel img {
  width: 12px;
  margin: 0 4px 0 0;
  vertical-align: middle;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list .sp_header_btn_menu_item .sp_header_btn_menu_contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 160px;
  height: 40px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 15px;
  color: #FFF;
  line-height: 1.5;
  border: 2px solid #1A1A1A;
  background-color: #1A1A1A;
  border-radius: 40px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_btn_menu_list .sp_header_btn_menu_item .sp_header_btn_menu_contact img {
  width: 12px;
  margin: 0 4px 0 0;
  vertical-align: middle;
}

.sp_header_menu .sp_header_menu_inner .sp_header_sns_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.sp_header_menu .sp_header_menu_inner .sp_header_sns_menu_list .sp_header_sns_menu_item {
  margin: 0 16px;
}

.sp_header_menu .sp_header_menu_inner .sp_header_sns_menu_list .sp_header_sns_menu_item .sp_header_sns_menu_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background-color: #1A1A1A;
}

.sp_header_menu .sp_header_menu_inner .sp_header_sns_menu_list .sp_header_sns_menu_item .sp_header_sns_menu_link img {
  width: 16px;
}

/*=================

      footer.scss

=======================*/
.footer_wrap {
  background-color: #FFF;
  padding: 80px 0 64px;
}

@media only screen and (max-width: 640px) {
  .footer_wrap {
    padding: 64px 0 48px;
  }
}

.footer_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 840px) {
  .footer_content {
    display: block;
  }
}

.footer_content .footer_company_info_block {
  width: 320px;
  margin: 0 48px 0 0;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block {
    width: 100%;
    margin: 0 0 48px;
  }
}

.footer_content .footer_company_info_block .footer_company_logo {
  display: block;
  width: 180px;
  margin: 0 0 40px 0;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_logo {
    margin: 0 auto 24px;
  }
}

.footer_content .footer_company_info_block .footer_company_logo img {
  width: 100%;
}

.footer_content .footer_company_info_block .footer_company_address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 12px;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_address {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
}

.footer_content .footer_company_info_block .footer_company_address .footer_company_address_img {
  width: 12px;
  margin: 0 4px 0 0;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_address .footer_company_address_img {
    display: none;
  }
}

.footer_content .footer_company_info_block .footer_company_address .footer_company_address_img img {
  width: 100%;
}

.footer_content .footer_company_info_block .footer_company_address .footer_company_address_text {
  width: calc(100% - 16px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 13px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_address .footer_company_address_text {
    width: 100%;
  }
}

.footer_content .footer_company_info_block .footer_company_tel_contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 16px;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_tel_contact {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.footer_content .footer_company_info_block .footer_company_tel_contact .footer_company_tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 24px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 13px;
  color: #1A1A1A;
  line-height: 1.5;
}

.footer_content .footer_company_info_block .footer_company_tel_contact .footer_company_tel img {
  width: 12px;
  margin: 0 4px 0 0;
}

.footer_content .footer_company_info_block .footer_company_tel_contact .footer_company_contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 13px;
  color: #1A1A1A;
  line-height: 1.5;
}

.footer_content .footer_company_info_block .footer_company_tel_contact .footer_company_contact img {
  width: 12px;
  margin: 0 4px 0 0;
}

.footer_content .footer_company_info_block .footer_company_privacy_link {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 13px;
  color: #1A1A1A;
  line-height: 1.5;
  text-decoration: underline;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_company_info_block .footer_company_privacy_link {
    text-align: center;
  }
}

.footer_content .footer_company_info_block .footer_company_privacy_link img {
  width: 12px;
  margin: 0 0 0 4px;
}

.footer_content .footer_menu_block {
  width: calc(100% - 368px);
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_menu_block {
    width: 100%;
  }
}

.footer_content .footer_menu_block .footer_menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 -32px;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_menu_block .footer_menu_list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item {
  margin: 0 32px 32px 0;
}

@media only screen and (max-width: 840px) {
  .footer_content .footer_menu_block .footer_menu_list .footer_menu_item {
    margin: 0 16px 32px 16px;
  }
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item .footer_menu_link {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item .footer_sub_menu_list {
  margin: 16px 0 0;
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item .footer_sub_menu_list .footer_sub_menu_item {
  margin: 0 0 8px;
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item .footer_sub_menu_list .footer_sub_menu_item:last-child {
  margin: 0 0 0;
}

.footer_content .footer_menu_block .footer_menu_list .footer_menu_item .footer_sub_menu_list .footer_sub_menu_item .footer_sub_menu_link {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  color: #1A1A1A;
  line-height: 1.5;
}

.footer_copy {
  padding: 12px 0;
  background-color: #4C4C4C;
}

.footer_copy .footer_copy_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 12px;
  color: #FFF;
  line-height: 1.5;
}

/*=================

      top.scss

=======================*/
.fv_video_block .fv_video_wrap {
  width: 100%;
  height: calc(100vh - 88px);
  position: relative;
}

@media only screen and (max-width: 1400px) {
  .fv_video_block .fv_video_wrap {
    height: calc(100vh - 72px);
  }
}

@media only screen and (max-width: 840px) {
  .fv_video_block .fv_video_wrap {
    height: 400px;
  }
}

@media only screen and (max-width: 500px) {
  .fv_video_block .fv_video_wrap {
    height: 240px;
  }
}

.fv_video_block .fv_video_wrap .fv_video_title_block {
  padding: 16px;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fv_video_block .fv_video_wrap .fv_video_title_block .fv_video_title_block_inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.fv_video_block .fv_video_wrap .fv_video_title_block .fv_video_title_block_inner .fv_title {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 48px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.28);
}

@media only screen and (max-width: 640px) {
  .fv_video_block .fv_video_wrap .fv_video_title_block .fv_video_title_block_inner .fv_title {
    font-size: 30px;
  }
}

.fv_video_block .fv_video_wrap .fv_video_bg_block {
  width: 100%;
  height: calc(100vh - 88px);
  background: url(../images/top/bg_fv.png) no-repeat center/cover;
}

@media only screen and (max-width: 1400px) {
  .fv_video_block .fv_video_wrap .fv_video_bg_block {
    height: calc(100vh - 72px);
    top: 72px;
  }
}

@media only screen and (max-width: 840px) {
  .fv_video_block .fv_video_wrap .fv_video_bg_block {
    height: 400px;
  }
}

@media only screen and (max-width: 500px) {
  .fv_video_block .fv_video_wrap .fv_video_bg_block {
    height: 240px;
  }
}

.fv_video_block .fv_video_wrap .fv_video_bg_block video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

/*top_news*/
.top_news {
  padding: 80px 0;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .top_news {
    padding: 40px 0;
  }
}

.top_news_box {
  width: 100%;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  padding: 24px 60px 48px;
}

@media only screen and (max-width: 640px) {
  .top_news_box {
    padding: 16px 16px 24px;
  }
}

/*top_philosophy*/
.top_philosophy {
  padding: 180px 0 200px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .top_philosophy {
    padding: 60px 0 80px;
  }
}

@media only screen and (max-width: 840px) {
  .top_philosophy_title_block {
    margin: 0 0 40px;
  }
}

@media only screen and (max-width: 640px) {
  .top_philosophy_title_block {
    margin: 0 0 32px;
  }
}

.top_philosophy_title_block .top_philosophy_title_en {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_title_block .top_philosophy_title_en {
    font-size: 18px;
    margin: 0 0 16px;
  }
}

.top_philosophy_title_block .top_philosophy_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 80px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_title_block .top_philosophy_title_ja {
    font-size: 48px;
  }
}

.top_philosophy_title_block .top_philosophy_title_ja span {
  font-size: 64px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_title_block .top_philosophy_title_ja span {
    font-size: 36px;
  }
}

.top_philosophy_img_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 150px;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_img_text {
    display: block;
  }
}

@media only screen and (max-width: 640px) {
  .top_philosophy_img_text {
    margin: 0 0 40px;
  }
}

.top_philosophy_img_text .top_philosophy_img {
  margin: 64px 40px 0;
  width: 440px;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_img_text .top_philosophy_img {
    margin: 0 auto 80px auto;
    max-width: 440px;
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .top_philosophy_img_text .top_philosophy_img {
    margin: 0 auto 48px auto;
  }
}

.top_philosophy_img_text .top_philosophy_img img {
  width: 100%;
}

.top_philosophy_img_text .top_philosophy_text_wrap {
  width: calc(100% - 520px);
  position: relative;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_img_text .top_philosophy_text_wrap {
    width: 100%;
    text-align: center;
  }
}

.top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 2.5;
  max-width: 480px;
  margin: 0 0 0 auto;
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text {
    display: inline-block;
    max-width: 100%;
    margin: 0 0 0 0;
  }
}

@media only screen and (max-width: 640px) {
  .top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text {
    font-size: 16px;
  }
}

.top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text .top_philosophy_text_bg {
  position: absolute;
  top: -23px;
  right: 0;
  width: 60px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text .top_philosophy_text_bg {
    width: 48px;
  }
}

.top_philosophy_img_text .top_philosophy_text_wrap .top_philosophy_text .top_philosophy_text_bg img {
  width: 100%;
}

.top_philosophy_point_box_wrap .top_philosophy_point_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0 0 120px;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box {
    display: block;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box:last-child {
  margin: 0 0 0;
}

.top_philosophy_point_box_wrap .top_philosophy_point_box:nth-of-type(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.top_philosophy_point_box_wrap .top_philosophy_point_box:nth-of-type(2n) .top_philosophy_point_box_img {
  margin: 0 0 0 64px;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box:nth-of-type(2n) .top_philosophy_point_box_img {
    margin: 0 auto 32px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box:first-child:after {
  content: "";
  position: absolute;
  left: 40%;
  bottom: -120px;
  width: 58px;
  height: 104px;
  background-image: url(../images/top/img_arrow_point01.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box:first-child:after {
    bottom: -82px;
    width: 36px;
    height: 65px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box:nth-child(2):after {
  content: "";
  position: absolute;
  right: 40%;
  bottom: -120px;
  width: 58px;
  height: 104px;
  background-image: url(../images/top/img_arrow_point02.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box:nth-child(2):after {
    bottom: -82px;
    width: 36px;
    height: 65px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_img {
  width: 428px;
  margin: 0 64px 0 0;
}

@media only screen and (max-width: 840px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 32px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_img img {
  width: 100%;
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail {
  width: calc(100% - 492px);
}

@media only screen and (max-width: 840px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail {
    width: 100%;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 40px;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap {
    margin: 0 0 24px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num {
  width: 64px;
  margin: 0 48px 0 0;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num {
    width: 42px;
    margin: 0 32px 0 0;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: -24px;
  width: 1px;
  height: 32px;
  background-color: #E2E2E2;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num:after {
    right: -16px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num .top_philosophy_point_box_title_num_title {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num .top_philosophy_point_box_title_num_title {
    font-size: 14px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num .top_philosophy_point_box_num {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 60px;
  color: #1A1A1A;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title_num .top_philosophy_point_box_num {
    font-size: 40px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title {
  width: calc(100% - 112px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_title_wrap .top_philosophy_point_box_title {
    width: calc(100% - 74px);
    font-size: 24px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_text {
    line-height: 2;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img {
  margin: 0 0 0 auto;
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point01 {
  width: 248px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point01 {
    width: 168px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point02 {
  width: 372px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point02 {
    width: 280px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point03 {
  width: 310px;
}

@media only screen and (max-width: 640px) {
  .top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img.point03 {
    width: 234px;
  }
}

.top_philosophy_point_box_wrap .top_philosophy_point_box .top_philosophy_point_box_detail .top_philosophy_point_box_img img {
  width: 100%;
}

/*top_service*/
.top_service {
  padding: 0 0 220px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .top_service {
    padding: 0 0 100px;
  }
}

.top_service_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 12px;
}

@media only screen and (max-width: 640px) {
  .top_service_title_ja {
    font-size: 22px;
  }
}

.top_service_title_ja span {
  position: relative;
  font-size: 38px;
}

@media only screen and (max-width: 640px) {
  .top_service_title_ja span {
    font-size: 28px;
  }
}

.top_service_title_ja span::before {
  content: "";
  position: absolute;
  top: -4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #3CB7D5;
}

.top_service_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .top_service_title_en {
    font-size: 14px;
    margin: 0 0 80px;
  }
}

.top_service_text {
  position: relative;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 88px;
}

@media only screen and (max-width: 640px) {
  .top_service_text {
    line-height: 2;
    margin: 0 0 56px;
  }
}

.top_service_text::before {
  content: "";
  position: absolute;
  top: -48px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 1px;
  height: 32px;
  background-color: #1A1A1A;
}

.top_service_step_block_wrap {
  background-color: #F7F7F7;
}

.top_service_step_block_wrap .top_service_step_block {
  margin: 0 0 120px;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block {
    margin: 0 0 48px;
  }
}

.top_service_step_block_wrap .top_service_step_block:last-child {
  margin: 0 0 0;
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg {
  width: 100%;
  height: 400px;
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 840px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg {
    height: 300px;
  }
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg {
    height: 200px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap {
  bottom: -30px;
  left: 80px;
  position: absolute;
  z-index: 3;
  width: 61px;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap {
    left: 16px;
    width: 42px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap .top_service_step_block_num_title {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap .top_service_step_block_num_title {
    font-size: 14px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap .top_service_step_block_num {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 60px;
  color: #3CB7D5;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_bg .top_service_step_block_num_wrap .top_service_step_block_num {
    font-size: 40px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail {
  margin: -250px 0 0;
  position: relative;
  z-index: 1;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail {
    margin: -176px 0 0;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .common_left_inner {
  padding: 310px 16px 48px 0;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .common_left_inner {
    padding: 220px 16px 32px 0;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text {
  width: 100%;
  max-width: 1100px;
  margin: 0 0 0 auto;
  padding: 0 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 840px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text {
    display: block;
  }
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text {
    padding: 0 0 0 16px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block {
  width: 360px;
  margin: 0 40px 0 0;
}

@media only screen and (max-width: 840px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block {
    width: 100%;
    margin: 0 0 32px 0;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_title {
    font-size: 24px;
    margin: 0 0 24px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step01 {
  width: 295px;
  margin: 0 auto 0 0;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step01 {
    width: 220px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step02 {
  width: 168px;
  margin: 0 auto 0 56px;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step02 {
    width: 140px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step03 {
  width: 260px;
  margin: 0 auto 0 24px;
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img.step03 {
    width: 200px;
  }
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_title_block .top_service_step_block_img img {
  width: 100%;
}

.top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_text {
  width: calc(100% - 400px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 840px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_text {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .top_service_step_block_wrap .top_service_step_block .top_service_step_block_detail .top_service_step_block_title_text .top_service_step_block_text {
    line-height: 2;
  }
}

/*top_rakuposu*/
.top_rakuposu {
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b00F), to(#45bfe70F));
  background: linear-gradient(#27a8b00F 0%, #45bfe70F 100%);
  position: relative;
}

.top_rakuposu::before {
  content: "";
  width: 100%;
  height: 36px;
  background-color: #FFF;
  position: absolute;
  top: 0;
  left: 0;
}

.top_rakuposu_title_block {
  max-width: calc(100% - 156px);
  display: inline-block;
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0B3), to(#45bfe7B3));
  background: linear-gradient(#27a8b0B3 0%, #45bfe7B3 100%);
  padding: 32px 140px 32px 32px;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block {
    max-width: 100%;
    padding: 24px 24px 48px 24px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_block_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
}

.top_rakuposu_title_block .top_rakuposu_title_block_bg img {
  width: 100%;
  vertical-align: top;
}

.top_rakuposu_title_block .top_rakuposu_title_block_bg_img {
  position: absolute;
  right: -156px;
  bottom: -40px;
  width: 254px;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block .top_rakuposu_title_block_bg_img {
    right: 8px;
    bottom: -80px;
    width: 180px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_block_bg_img img {
  width: 100%;
}

.top_rakuposu_title_block .top_rakuposu_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block .top_rakuposu_title_ja {
    font-size: 18px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_ja span {
  font-size: 26px;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block .top_rakuposu_title_ja span {
    font-size: 22px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_ja img {
  width: 116px;
  -webkit-filter: drop-shadow(0 0 20px rgba(255, 255, 255, 0.9));
  filter: drop-shadow(0 0 20px rgba(255, 255, 255, 0.9));
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block .top_rakuposu_title_ja img {
    width: 100px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_en {
  padding: 0 0 0 26px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_title_block .top_rakuposu_title_en {
    font-size: 14px;
  }
}

.top_rakuposu_title_block .top_rakuposu_title_en::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 16px;
  height: 1px;
  background-color: #1A1A1A;
}

.top_rakuposu_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .top_rakuposu_text {
    margin: 0 0 56px;
  }
}

.top_rakuposu_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.rakuposu_feature_box_wrap {
  margin: 0 0 120px;
}

@media only screen and (max-width: 640px) {
  .rakuposu_feature_box_wrap {
    margin: 0 0 40px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box {
  margin: 0 0 64px;
  width: 100%;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box {
    background-color: #FFF;
    padding: 24px;
    -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  }
}

@media only screen and (max-width: 640px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box {
    padding: 16px;
    margin: 0 0 32px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box:last-child {
  margin: 0 0 0;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num {
  position: absolute;
  z-index: 3;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num {
    position: static;
    -webkit-transform: none;
    transform: none;
    top: auto;
    left: auto;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_img {
  width: 400px;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 32px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_img::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 50px;
  height: 59px;
  background-image: url(../images/top/img_triangle_l_b.svg);
  background-size: contain;
  background-repeat: no-repeat;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_img::after {
    content: none;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_img img {
  width: 100%;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_num {
  position: absolute;
  top: -16px;
  left: -4px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 60px;
  color: #1A1A1A;
  line-height: 1;
}

@media only screen and (max-width: 640px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_img_num .rakuposu_feature_box_num {
    font-size: 40px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail {
  margin: 0 0 0 267px;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  padding: 56px 40px 56px 172px;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_detail_img {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 72px;
}

@media only screen and (max-width: 840px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_detail_img {
    top: -64px;
    right: -10px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_detail_img img {
  width: 100%;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding: 0 0 16px;
  margin: 0 0 16px;
  border-bottom: 1px solid #1A1A1A;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap .rakuposu_feature_box_title_icon {
  width: 24px;
  margin: 0 10px 0 0;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap .rakuposu_feature_box_title_icon img {
  width: 100%;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap .rakuposu_feature_box_title {
  width: calc(100% - 34px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
  .rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap .rakuposu_feature_box_title {
    font-size: 20px;
  }
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_title_wrap .rakuposu_feature_box_title span {
  color: #3CB7D5;
}

.rakuposu_feature_box_wrap .rakuposu_feature_box .rakuposu_feature_box_detail .rakuposu_feature_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
}

.rakuposu_link_box {
  width: 100%;
  position: relative;
  background-image: url(../images/top/bg_rakuposu.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 64px;
}

@media only screen and (max-width: 640px) {
  .rakuposu_link_box {
    padding: 24px 16px;
  }
}

.rakuposu_link_box .rakuposu_link_box_img_left {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

.rakuposu_link_box .rakuposu_link_box_img_left img {
  height: 100%;
  width: auto;
}

.rakuposu_link_box .rakuposu_link_box_img_right {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}

.rakuposu_link_box .rakuposu_link_box_img_right img {
  height: 100%;
  width: auto;
}

.rakuposu_link_box .rakuposu_link_box_content {
  position: relative;
  z-index: 2;
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_logo {
  width: 142px;
  margin: 0 auto 16px;
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_logo img {
  width: 100%;
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 22px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_text {
    font-size: 18px;
    margin: 0 0 24px;
  }
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 840px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap {
    display: block;
  }
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_site_btn {
  width: calc(50% - 40px);
  max-width: 400px;
  margin: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 64px;
  position: relative;
  padding: 8px 48px;
  border-radius: 40px;
  background-color: #3CB7D5;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 840px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_site_btn {
    width: 100%;
    margin: 0 auto 16px;
  }
}

@media only screen and (max-width: 640px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_site_btn {
    height: 56px;
    font-size: 14px;
  }
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_site_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 16px;
  height: 16px;
  background-image: url(../images/common/icon_link.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_btn_contact_wrap {
  width: calc(50% - 40px);
  max-width: 400px;
  margin: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 64px;
  position: relative;
  padding: 8px 48px;
  border-radius: 40px;
  background-color: #1A1A1A;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 840px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_btn_contact_wrap {
    width: 100%;
    margin: 0 auto;
  }
}

@media only screen and (max-width: 640px) {
  .rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_btn_contact_wrap {
    height: 56px;
    font-size: 14px;
  }
}

.rakuposu_link_box .rakuposu_link_box_content .rakuposu_link_box_btn_wrap .rakuposu_link_box_btn_contact_wrap:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 16px;
  height: 16px;
  background-image: url(../images/common/icon_link.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

/*top_business_partner*/
.top_business_partner {
  padding: 100px 0;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .top_business_partner {
    padding: 64px 0;
  }
}

.top_business_partner_logo {
  padding: 32px 0;
  background-color: #FFF;
}

.top_business_partner_logo .top_business_partner_logo_company {
  margin: 0 0 32px;
}

.top_business_partner_logo .p-infinite-slider__lists .p-infinite-slider__list {
  height: 60px;
  margin: 0 16px;
}

@media only screen and (max-width: 640px) {
  .top_business_partner_logo .p-infinite-slider__lists .p-infinite-slider__list {
    height: 48px;
  }
}

.top_business_partner_logo .p-infinite-slider__lists .p-infinite-slider__list img {
  height: 100%;
  width: auto;
}

/*top_recruit*/
.top_recruit {
  padding: 100px 0;
  background-image: url(../images/top/bg_joinus.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

@media only screen and (max-width: 640px) {
  .top_recruit {
    padding: 64px 0;
  }
}

.top_recruit .top_recruit_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 40px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  margin: 0 0 8px;
}

@media only screen and (max-width: 640px) {
  .top_recruit .top_recruit_title_ja {
    font-size: 32px;
  }
}

.top_recruit .top_recruit_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  margin: 0 0 56px;
}

@media only screen and (max-width: 640px) {
  .top_recruit .top_recruit_title_en {
    font-size: 18px;
    margin: 0 0 32px;
  }
}

.top_recruit .top_recruit_message_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 98px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  margin: 0 0 12px;
}

@media only screen and (max-width: 640px) {
  .top_recruit .top_recruit_message_en {
    font-size: 60px;
  }
}

.top_recruit .top_recruit_message_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width: 640px) {
  .top_recruit .top_recruit_message_ja {
    font-size: 18px;
  }
}

/*=================

      about.scss

=======================*/
/*about_thoughts*/
.about_thoughts {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .about_thoughts {
    padding: 48px 0 64px;
  }
}

.about_thoughts_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 840px) {
  .about_thoughts_content {
    display: block;
  }
}

.about_thoughts_content .about_thoughts_img_block {
  width: 320px;
  margin: 0 120px 0 0;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_img_block {
    width: 220px;
    margin: 0 auto 48px;
  }
}

.about_thoughts_content .about_thoughts_img_block .about_thoughts_img {
  width: 100%;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_img_block .about_thoughts_img {
    margin: 0 0 16px;
  }
}

.about_thoughts_content .about_thoughts_img_block .about_thoughts_img img {
  width: 100%;
}

.about_thoughts_content .about_thoughts_img_block .about_thoughts_name {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_img_block .about_thoughts_name {
    font-size: 14px;
    margin: 0 0 16px;
    line-height: 2;
  }
}

.about_thoughts_content .about_thoughts_img_block .about_thoughts_name_img {
  width: 200px;
}

.about_thoughts_content .about_thoughts_img_block .about_thoughts_name_img img {
  width: 100%;
}

.about_thoughts_content .about_thoughts_detail {
  width: calc(100% - 440px);
}

@media only screen and (max-width: 840px) {
  .about_thoughts_content .about_thoughts_detail {
    width: 100%;
  }
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img {
  position: relative;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img {
    margin: 0 0 32px;
  }
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 26px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_ja {
    font-size: 22px;
  }
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_ja span {
  color: #3CB7D5;
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_en {
  padding: 0 0 0 36px;
  position: relative;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_en {
    font-size: 14px;
  }
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_en span {
  color: #3CB7D5;
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_title_wrap .about_thoughts_detail_title_en:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 24px;
  height: 1px;
  background-color: #1A1A1A;
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_img {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 10px;
  width: 138px;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_img {
    top: -40px;
    right: -5px;
    width: 72px;
  }
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_title_img .about_thoughts_detail_img img {
  width: 100%;
}

.about_thoughts_content .about_thoughts_detail .about_thoughts_detail_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .about_thoughts_content .about_thoughts_detail .about_thoughts_detail_text {
    line-height: 2;
  }
}

/*about_strengths*/
.about_strengths {
  padding: 180px 0;
  background-color: #F7F7F7;
  background-image: url(../images/about/bg_strengths.svg);
  background-repeat: repeat;
  background-size: 400px auto;
}

@media only screen and (max-width: 640px) {
  .about_strengths {
    padding: 64px 0;
  }
}

.about_strengths_main_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0 0 100px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block {
    display: block;
    margin: 0 0 32px;
  }
}

.about_strengths_main_block .about_strengths_main_block_title_img {
  width: 50%;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block .about_strengths_main_block_title_img {
    width: 100%;
    margin: 0 0 40px;
  }
}

.about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 48px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 80px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_title {
    text-align: center;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_title {
    font-size: 34px;
    margin: 0 0 32px;
  }
}

.about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_title span {
  font-size: 36px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_title span {
    font-size: 24px;
  }
}

.about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_img {
  width: 100%;
  max-width: 430px;
  margin: 0 auto 0 0;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_img {
    margin: 0 auto 0 auto;
  }
}

.about_strengths_main_block .about_strengths_main_block_title_img .about_strengths_main_block_img img {
  width: 100%;
}

.about_strengths_main_block .about_strengths_main_block_detail {
  width: 50%;
  padding: 0 0 0 72px;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .about_strengths_main_block .about_strengths_main_block_detail {
    width: 100%;
    padding: 0 0 0 0;
    margin: 0 0 32px;
    text-align: center;
  }
}

.about_strengths_main_block .about_strengths_main_block_detail .about_strengths_main_block_detail_text {
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 2.5;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .about_strengths_main_block .about_strengths_main_block_detail .about_strengths_main_block_detail_text {
    font-size: 16px;
  }
}

.about_strengths_main_block .about_strengths_main_block_detail .about_strengths_main_block_detail_bg {
  position: absolute;
  z-index: 0;
  top: -24px;
  right: 0;
  width: 60px;
}

@media only screen and (max-width: 640px) {
  .about_strengths_main_block .about_strengths_main_block_detail .about_strengths_main_block_detail_bg {
    width: 48px;
  }
}

.about_strengths_main_block .about_strengths_main_block_detail .about_strengths_main_block_detail_bg img {
  width: 100%;
}

.about_strengths_point_block_wrap .about_strengths_point_block {
  margin: 0 0 230px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block {
    margin: 0 0 150px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block:after {
  content: "";
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -150px;
  width: 80px;
  height: 100px;
  background-image: url(../images/about/img_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block:after {
    bottom: -100px;
    width: 60px;
    height: 75px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block_wrap .about_strengths_point_block:last-child:after {
  content: none;
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_img {
  width: 100%;
  margin: 0 0 56px;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_img {
    margin: 0 0 24px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_img img {
  width: 100%;
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 56px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text {
    display: block;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text {
    margin: 0 0 24px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block {
  width: 430px;
  margin: 0 56px 0 0;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block {
    width: 100%;
    margin: 0 0 40px 0;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block {
    margin: 0 0 24px 0;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 12px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap {
    margin: 0 0 24px;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap {
    display: block;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap .about_strengths_point_block_main_title_num {
  width: 84px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap .about_strengths_point_block_main_title_num {
    width: 100%;
    margin: 0 0 8px;
    font-size: 16px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap .about_strengths_point_block_main_title {
  width: calc(100% - 84px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_wrap .about_strengths_point_block_main_title {
    width: 100%;
    font-size: 24px;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point01 {
  width: 196px;
  margin: 0 0 0 auto;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point01 {
    margin: 0 0 0 0;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point02 {
  width: 266px;
  margin: 20px auto 0 20px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point02 {
    margin: 0 0 0 0;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point03 {
  width: 250px;
  margin: 30px auto 0 72px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img.point03 {
    margin: 0 0 0 0;
  }
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_title_block .about_strengths_point_block_main_title_img img {
  width: 100%;
}

.about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_text {
  width: calc(100% - 486px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_text {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_wrap .about_strengths_point_block .about_strengths_point_block_main_title_text .about_strengths_point_block_main_text {
    line-height: 2;
  }
}

.about_strengths_point_block_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap {
    display: block;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box {
  width: calc((100% - 80px) / 2);
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box {
    width: calc((100% - 40px) / 2);
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box {
    width: 100%;
    margin: 0 0 32px 0;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box:nth-of-type(2n) {
  margin: 80px 0 0;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box:nth-of-type(2n) {
    margin: 0 0 32px 0;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box:last-child {
    margin: 0 0 0 0;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_img {
  width: 100%;
  height: 330px;
  margin: 0 0 40px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_img {
    height: 240px;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_img {
    height: 200px;
    margin: 0 0 24px;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_title {
  padding: 0 0 0 24px;
  border-left: 2px solid #3CB7D5;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 26px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_title {
    font-size: 22px;
    margin: 0 0 16px;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_text {
    line-height: 2;
  }
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list {
  margin: 32px 0 0;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list .about_strengths_point_block_box_item {
  padding: 0 0 0 20px;
  position: relative;
  margin: 0 0 16px;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list .about_strengths_point_block_box_item:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list .about_strengths_point_block_box_item::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: rgba(60, 183, 213, 0.5);
  border-radius: 50%;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list .about_strengths_point_block_box_item .about_strengths_point_block_box_item_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 8px;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_list .about_strengths_point_block_box_item .about_strengths_point_block_box_item_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_link_list {
  margin: 24px 0 0;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_link_list .about_strengths_point_block_box_link_item {
  margin: 0 0 24px;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_link_list .about_strengths_point_block_box_link_item:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_link_list .about_strengths_point_block_box_link_item .about_strengths_point_block_box_link_link {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #0A7BBB;
  text-decoration: underline;
}

.about_strengths_point_block_box_wrap .about_strengths_point_block_box .about_strengths_point_block_box_link_list .about_strengths_point_block_box_link_item .about_strengths_point_block_box_link_link img {
  width: 20px;
  margin: 0 0 0 8px;
  vertical-align: middle;
}

.about_strengths_point_block02_gps {
  margin: 80px 0 0;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps {
    margin: 40px 0 0;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_icon {
  width: 40px;
  margin: 0 auto 16px;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_icon img {
  width: 100%;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 26px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_title_ja {
    font-size: 22px;
    margin: 0 0 8px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_title_en {
    font-size: 14px;
    margin: 0 0 32px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 40px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box {
    display: block;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block {
  width: 400px;
  margin: 0 24px 0 0;
  border-radius: 20px;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0), to(#45bfe7));
  background: linear-gradient(#27a8b0 0%, #45bfe7 100%);
  padding: 48px 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block {
    width: 100%;
    margin: 0 0 8px;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block {
    padding: 24px 24px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block .about_strengths_point_block02_gps_box_title_content .about_strengths_point_block02_gps_box_title_ja {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 16px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #FFF;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block .about_strengths_point_block02_gps_box_title_content .about_strengths_point_block02_gps_box_title_ja {
    font-size: 20px;
    margin: 0 0 8px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block .about_strengths_point_block02_gps_box_title_content .about_strengths_point_block02_gps_box_title_ja img {
  width: 32px;
  margin: 0 8px 0 0;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block .about_strengths_point_block02_gps_box_title_content .about_strengths_point_block02_gps_box_title_en {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_title_block .about_strengths_point_block02_gps_box_title_content .about_strengths_point_block02_gps_box_title_en {
    font-size: 13px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block {
  width: calc(100% - 424px);
  border-radius: 20px;
  background-color: #FFF;
  padding: 48px 56px;
}

@media only screen and (max-width: 840px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block {
    padding: 24px 24px;
  }
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item {
  padding: 0 0 0 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 16px;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: rgba(60, 183, 213, 0.5);
  border-radius: 50%;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list {
  margin: 20px 0 0;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list .about_strengths_point_block02_gps_box_sub_item {
  margin: 0 0 16px;
  position: relative;
  padding: 0 0 0 16px;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list .about_strengths_point_block02_gps_box_sub_item:before {
  content: "";
  position: absolute;
  top: 20px;
  left: 0;
  width: 8px;
  height: 2px;
  background-color: #3CB7D5;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list .about_strengths_point_block02_gps_box_sub_item:last-child {
  margin: 0 0 0;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list .about_strengths_point_block02_gps_box_sub_item .about_strengths_point_block02_gps_box_sub_item_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 8px;
}

.about_strengths_point_block02_gps .about_strengths_point_block02_gps_box_wrap .about_strengths_point_block02_gps_box .about_strengths_point_block02_gps_box_detail_block .about_strengths_point_block02_gps_box_list .about_strengths_point_block02_gps_box_item .about_strengths_point_block02_gps_box_sub_list .about_strengths_point_block02_gps_box_sub_item .about_strengths_point_block02_gps_box_sub_item_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 2;
}

/*=================

      service.scss

=======================*/
.service_step {
  padding: 120px 0 200px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .service_step {
    padding: 48px 0 64px;
  }
}

.service_step_title {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .service_step_title {
    font-size: 22px;
    margin: 0 0 32px;
  }
}

.service_step_title span {
  font-size: 38px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .service_step_title span {
    font-size: 28px;
  }
}

.service_step_title span::before {
  content: "";
  position: absolute;
  top: -8px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background-color: #3CB7D5;
}

.service_step_flow_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list {
    margin: 0 0 32px;
  }
}

.service_step_flow_list .service_step_flow_item {
  margin: 0 80px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  padding: 10px;
  background-color: #FFF;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
}

@media only screen and (max-width: 1200px) {
  .service_step_flow_list .service_step_flow_item {
    margin: 0 40px;
  }
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item {
    width: 144px;
    height: 144px;
    padding: 6px;
    margin: 0 24px;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list .service_step_flow_item {
    width: 112px;
    height: 112px;
    padding: 4px;
    margin: 0 1px;
  }
}

.service_step_flow_list .service_step_flow_item:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: -134px;
  width: 96px;
  height: 72px;
  background-image: url(../images/service/img_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 1200px) {
  .service_step_flow_list .service_step_flow_item:after {
    right: -70px;
    width: 56px;
    height: 42px;
  }
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item:after {
    right: -50px;
    width: 50px;
    height: 36px;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list .service_step_flow_item:after {
    content: none;
  }
}

.service_step_flow_list .service_step_flow_item:last-child:after {
  content: none;
}

.service_step_flow_list .service_step_flow_item .service_step_flow_item_inner {
  display: block;
  background-color: #FFF;
  border: 2px solid #3CB7D5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.service_step_flow_list .service_step_flow_item .service_step_flow_item_content {
  text-align: center;
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content {
    padding: 0 0 16px;
  }
}

.service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 4px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num {
    font-size: 14px;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num {
    font-size: 12px;
    margin: 0 0 0;
  }
}

.service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num span {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  margin: 0 0 0 4px;
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num span {
    font-size: 20px;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_num span {
    font-size: 16px;
  }
}

.service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 1.2;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media only screen and (max-width: 960px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_title {
    font-size: 14px;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_flow_list .service_step_flow_item .service_step_flow_item_content .service_step_flow_item_title {
    font-size: 12px;
    line-height: 1.1;
  }
}

.service_step_flow_list .service_step_flow_item.active {
  background-color: #DBF2F8;
}

.service_step_flow_list .service_step_flow_item.active .service_step_flow_item_inner {
  background-color: #3CB7D5;
}

.service_step_flow_list .service_step_flow_item.active .service_step_flow_item_num {
  color: #FFF;
}

.service_step_flow_list .service_step_flow_item.active .service_step_flow_item_title {
  color: #FFF;
}

.service_step_block_wrap .service_step_block {
  margin: 0 0 180px;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block {
    margin: 0 0 40px;
  }
}

.service_step_block_wrap .service_step_block:last-child {
  margin: 0 0 0;
}

.service_step_block_wrap .service_step_block .service_step_block_main_img {
  width: 100%;
  margin: 0 0 56px;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_img {
    margin: 0 0 24px;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_img img {
  width: 100%;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 64px;
}

@media only screen and (max-width: 840px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text {
    display: block;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text {
    margin: 0 0 24px;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block {
  width: 440px;
  margin: 0 40px 0 0;
}

@media only screen and (max-width: 840px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block {
    width: 100%;
    margin: 0 0 40px 0;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block {
    margin: 0 0 24px 0;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin: 0 0 30px;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap {
    display: block;
    margin: 0 0 24px;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap .service_step_block_main_title_num {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 16px 0 0;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap .service_step_block_main_title_num {
    font-size: 16px;
    margin: 0 0 8px;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap .service_step_block_main_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_wrap .service_step_block_main_title {
    font-size: 24px;
  }
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_img {
  margin: 0 auto 0 24px;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_img.point01 {
  width: 192px;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_img.point02 {
  width: 168px;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_img.point03 {
  width: 226px;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_title_block .service_step_block_main_title_img img {
  width: 100%;
}

.service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_text {
  width: calc(100% - 480px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 840px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_text {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_block_main_title_text .service_step_block_main_text {
    line-height: 2;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item {
  padding: 0 0 80px 40px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item {
    display: block;
    padding: 0 0 24px 40px;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 10px;
  width: 4px;
  height: 100%;
  background-color: #DBF2F8;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item:after {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 24px;
  height: 24px;
  background-image: url(../images/service/icon_check.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item:first-child::before {
  top: 6px;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item:last-child::before {
  top: 0;
  height: 6px;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail {
  width: calc(100% - 288px);
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail {
    width: 100%;
    margin: 0 0 24px;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 22px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_title {
    font-size: 20px;
    margin: 0 0 16px;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_text {
    line-height: 2;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(39, 168, 176, 0.2)), to(rgba(69, 191, 231, 0.2)));
  background: linear-gradient(transparent 60%, rgba(39, 168, 176, 0.2) 60%, rgba(69, 191, 231, 0.2) 100%);
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_link {
  display: block;
  margin: 24px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #0A7BBB;
  text-decoration: underline;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_link {
    margin: 16px 0 0;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_item_link img {
  width: 20px;
  margin: 0 0 0 4px;
  vertical-align: middle;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_sub_list {
  margin: 24px 0 0;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_sub_list .service_step_sub_item {
  padding: 0 0 0 18px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 16px;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_sub_list .service_step_sub_item:last-child {
  margin: 0 0 0;
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_sub_list .service_step_sub_item::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: rgba(60, 183, 213, 0.5);
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_detail .service_step_sub_list .service_step_sub_item span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(39, 168, 176, 0.2)), to(rgba(69, 191, 231, 0.2)));
  background: linear-gradient(transparent 60%, rgba(39, 168, 176, 0.2) 60%, rgba(69, 191, 231, 0.2) 100%);
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_img {
  width: 248px;
  margin: 0 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_img {
    width: 200px;
  }
}

.service_step_block_wrap .service_step_block .service_step_list .service_step_item .service_step_item_img img {
  display: block;
  width: 210px;
  margin: 0 auto;
}

.service_scene {
  padding: 0 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .service_scene {
    padding: 0 0 64px;
  }
}

.service_scene_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .service_scene_text {
    line-height: 2;
    margin: 0 0 40px;
  }
}

.service_scene_block_wrap .service_scene_block {
  padding: 0 0 120px;
  border-bottom: 1px solid #E2E2E2;
  margin: 0 0 120px;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block {
    padding: 0 0 32px;
    margin: 0 0 32px;
  }
}

.service_scene_block_wrap .service_scene_block:last-child {
  padding: 0 0 0;
  border-bottom: none;
  margin: 0 0 0;
}

.service_scene_block_wrap .service_scene_block.scene01 {
  background-image: url(../images/service/bg_jicjitai.svg);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: 65% auto;
}

.service_scene_block_wrap .service_scene_block.scene02 {
  background-image: url(../images/service/bg_giin.svg);
  background-position: top right;
  background-repeat: no-repeat;
  background-size: 30% auto;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap {
    margin: 0 0 24px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title_num {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
  line-height: 1;
  margin: 0 24px 0 0;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title_num {
    font-size: 14px;
    margin: 0 16px 0 0;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title_num span {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 34px;
  margin: 0 0 0 8px;
  vertical-align: text-bottom;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title_num span {
    font-size: 28px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 26px;
  color: #1A1A1A;
  line-height: 1;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_title_wrap .service_scene_block_title {
    font-size: 22px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_text {
    line-height: 2;
    margin: 0 0 40px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_title {
  text-align: center;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_title {
    font-size: 20px;
    margin: 0 0 48px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_title:after {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 48px;
  height: 2px;
  background-color: #3CB7D5;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_title:after {
    bottom: -12px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 -40px;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap {
    display: block;
    margin: 0 0 0;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box {
  width: calc((100% - 96px) / 3);
  margin: 0 48px 40px 0;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box {
    width: 100%;
    margin: 0 0 24px 0;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box:nth-of-type(3n) {
  margin: 0 0 40px 0;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box:nth-of-type(3n) {
    margin: 0 0 24px 0;
  }
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box:last-child {
    margin: 0 0 0 0;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_img {
  width: 100%;
  height: 220px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_img {
    height: 180px;
  }
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_img:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.42)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.42) 100%);
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_num {
  position: absolute;
  top: 12px;
  left: -6px;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_num .service_scene_block_example_box_num_inner {
  width: 36px;
  height: 36px;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0), to(#45bfe7));
  background: linear-gradient(#27a8b0 0%, #45bfe7 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_num .service_scene_block_example_box_num_inner span {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #FFF;
  line-height: 1.5;
}

.service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_title {
  position: absolute;
  left: 12px;
  bottom: 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #FFF;
  line-height: 1.5;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width: 840px) {
  .service_scene_block_wrap .service_scene_block .service_scene_block_example .service_scene_block_example_box_wrap .service_scene_block_example_box .service_scene_block_example_box_title {
    font-size: 18px;
  }
}

.service_menu {
  padding: 100px 0 180px;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .service_menu {
    padding: 48px 0 64px;
  }
}

.service_menu_title {
  text-align: center;
  position: relative;
  margin: 0 0 72px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 36px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .service_menu_title {
    font-size: 26px;
    margin: 0 0 40px;
  }
}

.service_menu_title::after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 48px;
  height: 2px;
  background-color: #1A1A1A;
}

@media only screen and (max-width: 640px) {
  .service_menu_title::after {
    bottom: -12px;
  }
}

.service_menu_box_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

@media only screen and (max-width: 840px) {
  .service_menu_box_wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 0 -24px;
  }
}

.service_menu_box_wrap .service_menu_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc((100% - 96px) / 5);
  margin: 0 24px 24px 0;
  position: relative;
}

@media only screen and (max-width: 840px) {
  .service_menu_box_wrap .service_menu_box {
    width: 120px;
    height: 120px;
    margin: 0 12px 24px 12px;
  }
}

.service_menu_box_wrap .service_menu_box:nth-of-type(5n) {
  margin: 0 0 24px 0;
}

@media only screen and (max-width: 840px) {
  .service_menu_box_wrap .service_menu_box:nth-of-type(5n) {
    margin: 0 12px 24px 12px;
  }
}

.service_menu_box_wrap .service_menu_box .service_menu_box_top_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
}

.service_menu_box_wrap .service_menu_box .service_menu_box_top_img img {
  width: 100%;
  vertical-align: top;
}

.service_menu_box_wrap .service_menu_box .service_menu_box_bottom_img {
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 20px;
}

@media only screen and (max-width: 840px) {
  .service_menu_box_wrap .service_menu_box .service_menu_box_bottom_img {
    bottom: 8px;
    right: 8px;
  }
}

.service_menu_box_wrap .service_menu_box .service_menu_box_bottom_img img {
  width: 100%;
}

.service_menu_box_wrap .service_menu_box .service_menu_box_title_wrap {
  text-align: center;
}

.service_menu_box_wrap .service_menu_box .service_menu_box_title_wrap .service_menu_box_title_ja {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 8px;
}

@media only screen and (max-width: 840px) {
  .service_menu_box_wrap .service_menu_box .service_menu_box_title_wrap .service_menu_box_title_ja {
    font-size: 16px;
    margin: 0 0 4px;
  }
}

.service_menu_box_wrap .service_menu_box .service_menu_box_title_wrap .service_menu_box_title_en {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 15px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .service_menu_box_wrap .service_menu_box .service_menu_box_title_wrap .service_menu_box_title_en {
    font-size: 13px;
  }
}

/*=================

      price.scss

=======================*/
.price_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .price_page {
    padding: 48px 0 64px;
  }
}

.price_block_wrap .price_block {
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .price_block_wrap .price_block {
    margin: 0 0 40px;
  }
}

.price_block_wrap .price_block:last-child {
  margin: 0 0 0;
}

.price_block_table_title_wrap {
  margin: 0 0 16px;
}

.price_block_table_title_wrap .price_block_table_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .price_block_table_title_wrap .price_block_table_title {
    font-size: 16px;
  }
}

.price_block_table_title_wrap .price_block_table_title_note {
  margin: 8px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 2;
}

@media only screen and (max-width: 640px) {
  .price_block_table_title_wrap .price_block_table_title_note {
    font-size: 13px;
  }
}

.price_table {
  width: 100%;
  border: 1px solid #E2E2E2;
}

.price_table tr th {
  background-color: #3CB7D5;
  padding: 16px;
  border-right: 1px solid #E2E2E2;
  vertical-align: middle;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .price_table tr th {
    padding: 16px 8px;
  }
}

.price_table tr th .price_table_head {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .price_table tr th .price_table_head {
    font-size: 14px;
  }
}

.price_table tr th .price_table_copy {
  display: inline-block;
  padding: 2px 20px;
  border-radius: 40px;
  background-color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 4px;
}

@media only screen and (max-width: 640px) {
  .price_table tr th .price_table_copy {
    padding: 2px 12px;
    font-size: 13px;
    margin: 0 0 2px;
  }
}

.price_table tr td {
  padding: 16px;
  background-color: #FFF;
  border-right: 1px solid #E2E2E2;
  text-align: center;
}

@media only screen and (max-width: 640px) {
  .price_table tr td {
    padding: 16px 8px;
  }
}

.price_table tr td.title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .price_table tr td.title {
    font-size: 14px;
  }
}

.price_table tr td.pickup {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .price_table tr td.pickup {
    font-size: 14px;
  }
}

.price_table tr td.text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .price_table tr td.text {
    font-size: 14px;
  }
}

.price_table tr.bg_gray td {
  background-color: #F7F7F7;
}

.price_table_note_list {
  margin: 40px 0 0;
}

@media only screen and (max-width: 640px) {
  .price_table_note_list {
    margin: 24px 0 0;
  }
}

.price_table_note_list .price_table_note_item {
  padding: 0 0 0 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .price_table_note_list .price_table_note_item {
    margin: 0 0 8px;
  }
}

.price_table_note_list .price_table_note_item:last-child {
  margin: 0 0 0;
}

.price_table_note_list .price_table_note_item span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(39, 168, 176, 0.2)), to(rgba(69, 191, 231, 0.2)));
  background: linear-gradient(transparent 60%, rgba(39, 168, 176, 0.2) 60%, rgba(69, 191, 231, 0.2) 100%);
}

.price_table_note_list .price_table_note_item a {
  color: #0A7BBB;
  text-decoration: underline;
}

.price_table_note_list .price_table_note_item::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: rgba(60, 183, 213, 0.5);
}

/*=================

      area.scss

=======================*/
.area_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .area_page {
    padding: 48px 0 64px;
  }
}

.area_block_wrap .area_block {
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .area_block_wrap .area_block {
    margin: 0 0 32px;
  }
}

.area_block_wrap .area_block:last-child {
  margin: 0 0 0;
}

.area_block_wrap .area_block .area_block_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .area_block_wrap .area_block .area_block_title {
    font-size: 24px;
    margin: 0 0 24px;
  }
}

.area_block_wrap .area_block .area_block_list .area_block_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 40px 0;
  border-top: 1px solid #E2E2E2;
}

@media only screen and (max-width: 640px) {
  .area_block_wrap .area_block .area_block_list .area_block_item {
    display: block;
    padding: 16px 0;
  }
}

.area_block_wrap .area_block .area_block_list .area_block_item:last-child {
  border-bottom: 1px solid #E2E2E2;
}

.area_block_wrap .area_block .area_block_list .area_block_item .area_block_item_title {
  width: 200px;
  margin: 0 40px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .area_block_wrap .area_block .area_block_list .area_block_item .area_block_item_title {
    width: 100%;
    margin: 0 0 16px 0;
  }
}

.area_block_wrap .area_block .area_block_list .area_block_item .area_block_item_text {
  width: calc(100% - 240px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
}

@media only screen and (max-width: 640px) {
  .area_block_wrap .area_block .area_block_list .area_block_item .area_block_item_text {
    width: 100%;
  }
}

/*=================

      achievements.scss

=======================*/
.achievements_voice {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .achievements_voice {
    padding: 48px 0 64px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box {
  margin: 0 0 80px;
  position: relative;
  border-radius: 30px;
  border: 2px solid #3CB7D5;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  background-color: #FFF;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 48px;
}

@media only screen and (max-width: 960px) {
  .achievements_voice_box_wrap .achievements_voice_box {
    display: block;
  }
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box {
    padding: 32px 16px 16px;
    margin: 0 0 32px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box:last-child {
  margin: 0 0 0;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_num {
  position: absolute;
  top: -16px;
  left: 48px;
  display: inline-block;
  padding: 2px 16px;
  background-color: #3CB7D5;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #FFF;
  line-height: 1.3;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_num {
    font-size: 14px;
    left: 16px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_num span {
  font-size: 24px;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_num span {
    font-size: 20px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail {
  width: calc(100% - 484px);
}

@media only screen and (max-width: 960px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail {
    width: 100%;
    margin: 0 0 32px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title {
    margin: 0 0 24px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_icon {
  width: 90px;
  margin: 0 24px;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_icon {
    width: 60px;
    margin: 0 16px 0 0;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_icon img {
  width: 100%;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title {
  width: calc(100% - 114px);
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title {
    width: calc(100% - 76px);
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_type {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 12px;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_type {
    font-size: 14px;
    margin: 0 0 8px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_title {
    font-size: 18px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_title::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: -12px;
  right: -18px;
  width: 36px;
  height: 28px;
  background-image: url(../images/achievements/img_quotation.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_icon_title .achievements_voice_box_type_title .achievements_voice_box_title::before {
    top: -32px;
    right: -8px;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 2;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_detail .achievements_voice_box_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(39, 168, 176, 0.2)), to(rgba(69, 191, 231, 0.2)));
  background: linear-gradient(transparent 60%, rgba(39, 168, 176, 0.2) 60%, rgba(69, 191, 231, 0.2) 100%);
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan {
  width: 420px;
  margin: 0 0 0 64px;
}

@media only screen and (max-width: 960px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan {
    width: 100%;
    margin: 0 0 0 0;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_title {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 22px;
  color: #1A1A1A;
  line-height: 1.5;
  padding: 0 0 6px;
  margin: 0 0 24px;
  border-bottom: 1px solid #1A1A1A;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0 0 10px;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item:last-child {
  margin: 0 0 0;
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item .achievements_voice_box_plan_item_title {
  width: 140px;
  height: 36px;
  background-color: #F7F7F7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 32px 0 0;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item .achievements_voice_box_plan_item_title {
    width: 120px;
    margin: 0 16px 0 0;
  }
}

.achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item .achievements_voice_box_plan_item_text {
  width: calc(100% - 172px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .achievements_voice_box_wrap .achievements_voice_box .achievements_voice_box_plan .achievements_voice_box_plan_list .achievements_voice_box_plan_item .achievements_voice_box_plan_item_text {
    width: calc(100% - 136px);
  }
}

.achievements_partner_companies {
  padding: 120px 0 180px;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .achievements_partner_companies {
    padding: 48px 0 64px;
  }
}

.achievements_logo_box_wrap .achievements_logo_box {
  margin: 0 0 64px;
  position: relative;
  background-color: #FFF;
  padding: 56px 48px 48px;
  border-radius: 30px;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 640px) {
  .achievements_logo_box_wrap .achievements_logo_box {
    margin: 0 0 40px;
    padding: 32px 16px 16px;
  }
}

.achievements_logo_box_wrap .achievements_logo_box:last-child {
  margin: 0 0 0;
}

.achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_title {
  position: absolute;
  top: -20px;
  left: 48px;
  display: inline-block;
  padding: 4px 32px;
  background-color: #3CB7D5;
  border-radius: 10px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_title {
    left: 16px;
    font-size: 16px;
    padding: 2px 16px;
  }
}

.achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0 -40px;
}

@media only screen and (max-width: 640px) {
  .achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_list {
    margin: 0 0 -16px;
  }
}

.achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_list .achievements_logo_box_item {
  margin: 0 16px 40px 16px;
  height: 56px;
}

@media only screen and (max-width: 640px) {
  .achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_list .achievements_logo_box_item {
    height: 40px;
    margin: 0 12px 16px 12px;
  }
}

.achievements_logo_box_wrap .achievements_logo_box .achievements_logo_box_list .achievements_logo_box_item img {
  height: 100%;
  width: auto;
}

.achievements_municipal_partners {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners {
    padding: 48px 0 64px;
  }
}

.achievements_municipal_partners_detail {
  margin: 100px 0 0;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail {
    margin: 56px 0 0;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_title {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
  margin: 0 0 72px;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_title {
    font-size: 20px;
    margin: 0 0 40px;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_title:after {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 48px;
  height: 2px;
  background-color: #3CB7D5;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_title:after {
    bottom: -16px;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_text {
    line-height: 2;
    margin: 0 0 32px;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 840px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item {
    display: block;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item:last-child .achievements_municipal_partners_detail_item_title {
  padding: 32px 40px 0 0;
}

@media only screen and (max-width: 840px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item:last-child .achievements_municipal_partners_detail_item_title {
    padding: 32px 0 32px 0;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item:last-child .achievements_municipal_partners_detail_item_detail {
  padding: 32px 0 0;
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_title {
  width: 240px;
  padding: 32px 40px 32px 0;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 840px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_title {
    width: 100%;
    padding: 32px 0 32px 0;
  }
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_title {
    padding: 16px 0 16px 0;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0), to(#45bfe7));
  background: linear-gradient(#27a8b0 0%, #45bfe7 100%);
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail {
  width: calc(100% - 240px);
  padding: 32px 0;
  border-top: 2px solid #E2E2E2;
}

@media only screen and (max-width: 840px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail {
    width: 100%;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item {
    display: block;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item:last-child {
  margin: 0 0 0;
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_month_city {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 280px;
  margin: 0 24px 0 0;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_month_city {
    width: 100%;
    margin: 0 0 8px;
  }
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_month_city .achievements_municipal_partners_detail_sub_item_month {
  width: 84px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
  padding: 0 0 0 20px;
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_month_city .achievements_municipal_partners_detail_sub_item_month::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #9EDBEA;
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_month_city .achievements_municipal_partners_detail_sub_item_city {
  width: 176px;
  padding: 4px 16px;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  border: 1px solid #9EDBEA;
}

.achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_text {
  width: calc(100% - 304px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
}

@media only screen and (max-width: 640px) {
  .achievements_municipal_partners_detail .achievements_municipal_partners_detail_list .achievements_municipal_partners_detail_item .achievements_municipal_partners_detail_item_detail .achievements_municipal_partners_detail_sub_list .achievements_municipal_partners_detail_sub_item .achievements_municipal_partners_detail_sub_item_text {
    width: 100%;
  }
}

/*=================

      faq.scss

=======================*/
.faq_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .faq_page {
    padding: 48px 0 64px;
  }
}

.faq_block_wrap .faq_block {
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .faq_block_wrap .faq_block {
    margin: 0 0 40px;
  }
}

.faq_block_wrap .faq_block:last-child {
  margin: 0 0 0;
}

.faq_block_title_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .faq_block_title_link {
    margin: 0 0 24px;
  }
}

.faq_block_title_link .faq_block_link {
  width: 200px;
  height: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 14px;
  color: #FFF;
  line-height: 1.5;
  background-color: #3CB7D5;
  border-radius: 20px;
}

@media only screen and (max-width: 640px) {
  .faq_block_title_link .faq_block_link {
    width: 160px;
    height: 36px;
    font-size: 14px;
  }
}

.faq_block_title_link .faq_block_link:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 12px;
  width: 4px;
  height: 8px;
  background-image: url(../images/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.faq_block_title_link .faq_block_link.link:after {
  width: 12px;
  height: 12px;
  background-image: url(../images/common/icon_link.svg);
}

.faq_list .faq_item {
  border-top: 1px solid #E2E2E2;
}

.faq_list .faq_item:last-child {
  border-bottom: 1px solid #E2E2E2;
}

.faq_list .faq_item .faq_q_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding: 40px 48px 40px 0;
  position: relative;
  cursor: pointer;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_q_block {
    padding: 16px 40px 16px 0;
  }
}

.faq_list .faq_item .faq_q_block:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background-image: url(../images/faq/icon_plus.svg);
  background-repeat: no-repeat;
  background-size: contain;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.faq_list .faq_item .faq_q_block.active:after {
  background-image: url(../images/faq/icon_minus.svg);
}

.faq_list .faq_item .faq_q_block .faq_q_icon {
  width: 64px;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  color: #3CB7D5;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_q_block .faq_q_icon {
    font-size: 26px;
    width: 40px;
  }
}

.faq_list .faq_item .faq_q_block .faq_q_title {
  width: calc(100% - 64px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 18px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_q_block .faq_q_title {
    width: calc(100% - 40px);
    font-size: 16px;
  }
}

.faq_list .faq_item .faq_a_block {
  display: none;
}

.faq_list .faq_item .faq_a_block .faq_a_block_inner {
  padding: 0 0 40px 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_a_block .faq_a_block_inner {
    padding: 0 0 16px 40px;
  }
}

.faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_icon {
  width: 64px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_icon {
    width: 40px;
    font-size: 26px;
  }
}

.faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_text {
  width: calc(100% - 64px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_text {
    width: calc(100% - 40px);
    font-size: 14px;
    line-height: 2;
  }
}

.faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_text span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(39, 168, 176, 0.2)), to(rgba(69, 191, 231, 0.2)));
  background: linear-gradient(transparent 60%, rgba(39, 168, 176, 0.2) 60%, rgba(69, 191, 231, 0.2) 100%);
}

.faq_list .faq_item .faq_a_block .faq_a_block_inner .faq_a_text a {
  color: #0A7BBB;
  text-decoration: underline;
}

/*=================

      news.scss

=======================*/
.news_list .news_item {
  border-bottom: 1px solid #E2E2E2;
}

.news_list .news_item .news_link {
  padding: 24px 32px 24px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .news_list .news_item .news_link {
    display: block;
    padding: 16px 24px 16px 0;
  }
}

.news_list .news_item .news_link:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background-image: url(../images/common/icon_arrow_dot.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.news_list .news_item .news_link .news_item_date_category {
  width: 240px;
  padding: 0 24px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

@media only screen and (max-width: 840px) {
  .news_list .news_item .news_link .news_item_date_category {
    width: 100%;
    padding: 0 0 0 0;
    margin: 0 0 16px;
  }
}

.news_list .news_item .news_link .news_item_date_category .news_item_date {
  width: 100px;
  padding: 0 16px 0 0;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #727272;
  line-height: 1.5;
}

.news_list .news_item .news_link .news_item_date_category .news_item_category {
  display: inline-block;
  max-width: 116px;
  padding: 3px 8px;
  border: 1px solid #3CB7D5;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 13px;
  color: #3CB7D5;
  line-height: 1.5;
  background-color: #FFF;
}

@media only screen and (max-width: 840px) {
  .news_list .news_item .news_link .news_item_date_category .news_item_category {
    max-width: calc(100% - 100px);
  }
}

.news_list .news_item .news_link .news_item_title {
  width: calc(100% - 240px);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  word-break: break-all;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  line-height: 24px;
  max-height: calc(24px*1);
}

@media only screen and (max-width: 840px) {
  .news_list .news_item .news_link .news_item_title {
    width: 100%;
  }
}

@media only screen and (max-width: 640px) {
  .news_list .news_item .news_link .news_item_title {
    font-size: 14px;
    line-height: 21px;
    max-height: calc(21px*1);
  }
}

.news_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .news_page {
    padding: 48px 0 64px;
  }
}

.news_category_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .news_category_list {
    margin: 0 0 24px;
  }
}

.news_category_list .news_category_item {
  margin: 0 16px 16px 0;
}

@media only screen and (max-width: 640px) {
  .news_category_list .news_category_item {
    margin: 0 8px 8px 0;
  }
}

.news_category_list .news_category_item .news_category_link {
  display: inline-block;
  padding: 12px 24px;
  border-radius: 40px;
  border: 1px solid #3CB7D5;
  background-color: #FFF;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #3CB7D5;
  line-height: 1.2;
}

@media only screen and (max-width: 640px) {
  .news_category_list .news_category_item .news_category_link {
    padding: 6px 12px;
    font-size: 16px;
  }
}

.news_category_list .news_category_item .news_category_link.active {
  background-color: #3CB7D5;
  color: #FFF;
}

.news_page_box {
  border: 1px solid #E2E2E2;
  padding: 48px 60px;
}

@media only screen and (max-width: 640px) {
  .news_page_box {
    padding: 16px 16px 24px;
  }
}

.news_detail_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .news_detail_page {
    padding: 48px 0 64px;
  }
}

.news_detail_category_date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .news_detail_category_date {
    margin: 0 0 24px;
  }
}

.news_detail_category_date .news_detail_category {
  display: inline-block;
  padding: 4px 16px;
  border: 1px solid #3CB7D5;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  color: #3CB7D5;
  font-size: 20px;
  line-height: 1.5;
  margin: 0 32px 0 0;
}

@media only screen and (max-width: 640px) {
  .news_detail_category_date .news_detail_category {
    padding: 3px 12px;
    font-size: 18px;
    margin: 0 16px 0 0;
  }
}

.news_detail_category_date .news_detail_date {
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 18px;
  color: #727272;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .news_detail_category_date .news_detail_date {
    font-size: 16px;
  }
}

.news_detail_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 32px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
  margin: 0 0 72px;
}

@media only screen and (max-width: 640px) {
  .news_detail_title {
    font-size: 26px;
    margin: 0 0 40px;
  }
}

.news_detail_title:after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 0;
  width: 100%;
  height: 2px;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0), to(#45bfe7));
  background: linear-gradient(#27a8b0 0%, #45bfe7 100%);
}

@media only screen and (max-width: 640px) {
  .news_detail_title:after {
    bottom: -8px;
  }
}

.editor_wrap p {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap p {
    font-size: 2;
    margin: 0 0 40px;
  }
}

.editor_wrap p a {
  color: #0A7BBB;
  text-decoration: underline;
}

.editor_wrap div {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap div {
    line-height: 2;
    margin: 0 0 40px;
  }
}

.editor_wrap div a {
  color: #0A7BBB;
  text-decoration: underline;
}

.editor_wrap img {
  display: block;
  max-width: 100% !important;
  max-height: auto !important;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap img {
    margin: 0 0 40px;
  }
}

.editor_wrap ul {
  padding: 32px 24px;
  border: 1px solid #3CB7D5;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap ul {
    padding: 16px 16px;
    margin: 0 0 40px;
  }
}

.editor_wrap ul li {
  padding: 0 0 0 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap ul li {
    margin: 0 0 24px;
  }
}

.editor_wrap ul li:last-child {
  margin: 0 0 0;
}

.editor_wrap ul li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #9EDBEA;
}

.editor_wrap ol {
  padding: 32px 24px 32px 44px;
  border: 1px solid #E2E2E2;
  list-style: decimal;
  margin: 0 0 64px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap ol {
    padding: 16px 16px 16px 36px;
  }
}

.editor_wrap ol li {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap ol li {
    margin: 0 0 24px;
  }
}

.editor_wrap ol li:last-child {
  margin: 0 0 0;
}

.editor_wrap h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 28px;
  color: #1A1A1A;
  line-height: 1.5;
  padding: 0 0 0 16px;
  border-left: 3px solid #3CB7D5;
  margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap h2 {
    font-size: 28px;
    margin: 0 0 32px;
  }
}

.editor_wrap h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  padding: 0 0 0 32px;
  position: relative;
  margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap h3 {
    font-size: 20px;
    margin: 0 0 32px;
  }
}

.editor_wrap h3::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  width: 16px;
  height: 2px;
  background-color: #727272;
}

.editor_wrap h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 40px;
}

@media only screen and (max-width: 640px) {
  .editor_wrap h4 {
    font-size: 20px;
    margin: 0 0 32px;
  }
}

.relation_news {
  padding: 120px 0 180px;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .relation_news {
    padding: 48px 0 64px;
  }
}

.relation_news_box {
  padding: 24px 60px 48px;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 640px) {
  .relation_news_box {
    padding: 16px 16px 24px;
  }
}

/*=================

      company.scss

=======================*/
.company_overview {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .company_overview {
    padding: 48px 0 64px;
  }
}

.company_overview_img {
  width: 100%;
  margin: 0 0 80px;
}

@media only screen and (max-width: 640px) {
  .company_overview_img {
    margin: 0 0 32px;
  }
}

.company_overview_img img {
  width: 100%;
}

.company_list .company_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .company_list .company_item {
    display: block;
  }
}

.company_list .company_item:last-child .company_item_title {
  padding: 32px 24px 0 0;
}

@media only screen and (max-width: 840px) {
  .company_list .company_item:last-child .company_item_title {
    padding: 32px 0 32px 0;
  }
}

.company_list .company_item:last-child .company_item_detail {
  padding: 32px 0 0 0;
}

.company_list .company_item .company_item_title {
  padding: 32px 24px 32px 0;
  width: 240px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 840px) {
  .company_list .company_item .company_item_title {
    width: 100%;
    padding: 32px 0 32px 0;
  }
}

@media only screen and (max-width: 640px) {
  .company_list .company_item .company_item_title {
    padding: 16px 0 16px 0;
  }
}

.company_list .company_item .company_item_title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: -webkit-gradient(linear, left top, left bottom, from(#27a8b0), to(#45bfe7));
  background: linear-gradient(#27a8b0 0%, #45bfe7 100%);
}

.company_list .company_item .company_item_title a {
  color: #0A7BBB;
  text-decoration: underline;
  position: relative;
}

.company_list .company_item .company_item_title a img {
  width: 12px;
  margin: 0 0 0 4px;
}

.company_list .company_item .company_item_detail {
  width: calc(100% - 240px);
  padding: 32px 0;
  border-top: 2px solid #E2E2E2;
}

@media only screen and (max-width: 840px) {
  .company_list .company_item .company_item_detail {
    width: 100%;
  }
}

.company_list .company_item .company_item_detail .company_item_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
}

.company_list .company_item .company_item_detail .company_item_text a {
  color: #0A7BBB;
  text-decoration: underline;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item {
  margin: 0 0 40px;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item:last-child {
  margin: 0 0 0;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_item_title {
  padding: 0 0 0 24px;
  position: relative;
  margin: 0 0 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_item_title::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #9EDBEA;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 12px;
}

@media only screen and (max-width: 640px) {
  .company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item {
    margin: 0 0 8px;
  }
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item:last-child {
  margin: 0 0 0;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item a {
  color: #0A7BBB;
  text-decoration: underline;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item .compnay_address_map_link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-decoration: none;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  font-size: 14px;
  color: #3CB7D5;
  line-height: 1.5;
  border: 1px solid #3CB7D5;
  padding: 2px 8px;
  margin: 0 0 0 12px;
}

.company_list .company_item .company_item_detail .compnay_address_list .compnay_address_item .compnay_address_sub_list .compnay_address_sub_item .compnay_address_map_link img {
  width: 12px;
  margin: 0 4px 0 0;
}

.company_list .company_item .company_item_detail .company_item_sub_list .company_item_sub_item {
  margin: 0 0 12px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 2;
}

.company_list .company_item .company_item_detail .company_item_sub_list .company_item_sub_item a {
  color: #0A7BBB;
  text-decoration: underline;
}

.company_list .company_item .company_item_detail .company_item_sub_list .company_item_sub_item img {
  width: 12px;
  margin: 0 0 0 4px;
}

.company_list .company_item .company_item_detail .company_item_sub_list .company_item_sub_item:last-child {
  margin: 0 0 0;
}

.company_list .company_item .company_item_detail .company_item_detail_note {
  margin: 16px 0 0;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 2;
}

.company_list .company_item .company_item_detail .company_item_note_list {
  margin: 16px 0 0;
}

.company_list .company_item .company_item_detail .company_item_note_list .company_item_note_item {
  margin: 0 0 12px;
  padding: 0 0 0 20px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
}

.company_list .company_item .company_item_detail .company_item_note_list .company_item_note_item::before {
  content: "";
  position: absolute;
  top: 11px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #9EDBEA;
}

.company_list .company_item .company_item_detail .company_item_note_list .company_item_note_item:last-child {
  margin: 0 0 0;
}

.company_privacy_mark {
  padding: 120px 0 180px;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark {
    padding: 48px 0 64px;
  }
}

.company_privacy_mark_box {
  background-color: #FFF;
  padding: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box {
    padding: 24px;
    display: block;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block {
  width: 50%;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box .company_privacy_mark_box_detail_block {
    width: 100%;
    margin: 0 0 24px;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item {
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item {
    margin: 0 0 24px;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item:last-child {
  margin: 0 0 0;
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item .company_privacy_mark_box_item_title {
  padding: 0 0 0 24px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 12px;
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item .company_privacy_mark_box_item_title::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #9EDBEA;
}

.company_privacy_mark_box .company_privacy_mark_box_detail_block .company_privacy_mark_box_list .company_privacy_mark_box_item .company_privacy_mark_box_item_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

.company_privacy_mark_box .company_privacy_mark_box_img_block {
  width: 50%;
  padding: 0 0 0 40px;
  text-align: right;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box .company_privacy_mark_box_img_block {
    width: 100%;
    padding: 0 0 0 0;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_img {
  width: 240px;
  margin: 0 0 24px auto;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_img {
    width: 200px;
    margin: 0 auto 16px auto;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_img img {
  width: 100%;
}

.company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_link {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 13px;
  color: #1A1A1A;
  line-height: 1.5;
}

@media only screen and (max-width: 640px) {
  .company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_link {
    text-align: center;
  }
}

.company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_link a {
  color: #0A7BBB;
  text-decoration: underline;
}

.company_privacy_mark_box .company_privacy_mark_box_img_block .company_privacy_mark_box_link img {
  width: 12px;
  margin: 0 0 0 10px;
}

.company_recruit {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .company_recruit {
    padding: 48px 0 64px;
  }
}

.company_member_organization {
  padding: 120px 0 180px;
  background-color: #F7F7F7;
}

@media only screen and (max-width: 640px) {
  .company_member_organization {
    padding: 48px 0 64px;
  }
}

.company_relation {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .company_relation {
    padding: 48px 0 64px;
  }
}

/*=================

      contact.scss

=======================*/
.contact_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .contact_page {
    padding: 48px 0 64px;
  }
}

.contact_tel_box {
  max-width: 600px;
  margin: 0 auto 80px;
  border: 1px solid #3CB7D5;
  padding: 32px;
}

@media only screen and (max-width: 640px) {
  .contact_tel_box {
    margin: 0 auto 32px;
    padding: 24px;
  }
}

.contact_tel_box .contact_tel_box_title {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 24px;
}

@media only screen and (max-width: 640px) {
  .contact_tel_box .contact_tel_box_title {
    font-size: 18px;
    margin: 0 0 16px;
  }
}

.contact_tel_box .contact_tel_box_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
  font-size: 44px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 20px;
}

@media only screen and (max-width: 640px) {
  .contact_tel_box .contact_tel_box_link {
    font-size: 36px;
  }
}

.contact_tel_box .contact_tel_box_link img {
  width: 32px;
  margin: 0 12px 0 0;
}

@media only screen and (max-width: 640px) {
  .contact_tel_box .contact_tel_box_link img {
    width: 28px;
    margin: 0 8px 0 0;
  }
}

.contact_tel_box .contact_tel_box_note {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
}

.contact_form_box {
  width: 100%;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(60, 183, 213, 0.2);
  box-shadow: 0 0 20px rgba(60, 183, 213, 0.2);
  padding: 40px 24px;
}

@media only screen and (max-width: 640px) {
  .contact_form_box {
    padding: 24px 16px;
  }
}

.contact_form_box .contact_form_box_inner {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
}

.contact_form_box .contact_form_box_inner .contact_form_box_icon {
  width: 20px;
  margin: 0 auto 10px;
}

.contact_form_box .contact_form_box_inner .contact_form_box_icon img {
  width: 100%;
}

.contact_form_box .contact_form_box_inner .contact_form_box_title {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #1A1A1A;
  line-height: 1.5;
  padding: 0 0 24px;
  border-bottom: 1px solid #1A1A1A;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_title {
    font-size: 18px;
    padding: 0 0 16px;
    margin: 0 0 24px;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2;
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_text {
    margin: 0 0 32px;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_text a {
  color: #0A7BBB;
  text-decoration: underline;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list {
  margin: 0 0 48px;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_list {
    margin: 0 0 40px;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item {
  margin: 0 0 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item {
    margin: 0 0 24px;
    display: block;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item:last-child {
  margin: 0 0 0;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_title {
  width: 220px;
  margin: 0 40px 0 0;
  padding: 0 0 0 20px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_title {
    width: 100%;
    margin: 0 0 8px 0;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_title::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: #9EDBEA;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_title span {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 12px;
  color: #FA7F7F;
  margin: 4px 0 0;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block {
  width: calc(100% - 260px);
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block {
    width: 100%;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_input {
  width: 100%;
  padding: 16px 10px;
  border: 1px solid #E2E2E2;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_input::-webkit-input-placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_input::-ms-input-placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_input::placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_select {
  width: 100%;
  padding: 16px 32px 16px 10px;
  border: 1px solid #E2E2E2;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  background-image: url(../images/contact/icon_arrow_select.svg);
  background-repeat: no-repeat;
  background-position: center right 10px;
  background-size: 10px auto;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_textarea {
  width: 100%;
  height: 320px;
  resize: none;
  padding: 16px 10px;
  border: 1px solid #E2E2E2;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_textarea::-webkit-input-placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_textarea::-ms-input-placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_form_box_list .contact_form_box_item .contact_form_box_item_input_block .contact_form_box_item_textarea::placeholder {
  color: #727272;
}

.contact_form_box .contact_form_box_inner .contact_privacy_text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 16px;
}

.contact_form_box .contact_form_box_inner .contact_privacy_text a {
  color: #0A7BBB;
  text-decoration: underline;
}

.contact_form_box .contact_form_box_inner .contact_form_box_submit_btn {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  height: 64px;
  border-radius: 40px;
  background-color: #1A1A1A;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  color: #FFF;
  line-height: 1.5;
  padding: 8px 32px;
  position: relative;
}

@media only screen and (max-width: 640px) {
  .contact_form_box .contact_form_box_inner .contact_form_box_submit_btn {
    height: 56px;
    font-size: 16px;
  }
}

.contact_form_box .contact_form_box_inner .contact_form_box_submit_btn:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 24px;
  width: 7px;
  height: 12px;
  background-image: url(../images/common/icon_arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.contact_form_box .contact_form_box_inner .contact_submit_note {
  margin: 10px 0 0;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  color: #1A1A1A;
  line-height: 1.5;
}

/*=================

      privacy.scss

=======================*/
.privacy_page {
  padding: 120px 0 180px;
  background-color: #FFF;
}

@media only screen and (max-width: 640px) {
  .privacy_page {
    padding: 48px 0 64px;
  }
}

.privacy_title_ja {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 40px;
  color: #1A1A1A;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .privacy_title_ja {
    font-size: 32px;
    margin: 0 0 8px;
  }
}

.privacy_title_en {
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 20px;
  color: #3CB7D5;
  line-height: 1.5;
  margin: 0 0 100px;
}

@media only screen and (max-width: 640px) {
  .privacy_title_en {
    font-size: 18px;
    margin: 0 0 40px;
  }
}

.privacy_box_wrap .privacy_box {
  width: 100%;
  margin: 0 0 80px;
  padding: 64px 24px;
  background-color: #FFF;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box {
    padding: 24px 16px;
    margin: 0 0 40px;
  }
}

.privacy_box_wrap .privacy_box:last-child {
  margin: 0 0 0;
}

.privacy_box_wrap .privacy_box .privacy_box_content {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_title {
  padding: 0 0 0 16px;
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_title {
    font-size: 20px;
    margin: 0 0 24px;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_title::before {
  content: "";
  position: absolute;
  top: 15px;
  left: 0;
  width: 8px;
  height: 8px;
  background-color: #3CB7D5;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block {
  margin: 0 0 56px;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block {
    margin: 0 0 32px;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block:last-child {
  margin: 0 0 0;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_text {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_text span {
  font-size: 14px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_text.right {
  text-align: right;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_decimal_list {
  list-style: decimal;
  padding: 0 0 0 20px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_decimal_list .privacy_decimal_item {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
  margin: 0 0 16px;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_decimal_list .privacy_decimal_item {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_decimal_list .privacy_decimal_item:last-child {
  margin: 0 0 0;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_contact_box {
  border: 1px solid #E2E2E2;
  padding: 24px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_contact_box .privacy_contact_box_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  padding: 0 0 12px;
  border-bottom: 1px solid #E2E2E2;
  margin: 0 0 20px;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_contact_box .privacy_contact_box_title {
    margin: 0 0 16px;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_contact_box .privacy_contact_box_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_contact_box .privacy_contact_box_text {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_block_title {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 1.5;
  margin: 0 0 32px;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_block_title {
    margin: 0 0 24px;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_block_text {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_block_text {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_block_text span {
  font-size: 14px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item {
  margin: 0 0 24px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item:last-child {
  margin: 0 0 0;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item .privacy_box_sub_list {
  margin: 16px 0 0;
  list-style: disc;
  padding: 0 0 0 40px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item .privacy_box_sub_list .privacy_box_sub_item {
  margin: 0 0 8px;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  color: #1A1A1A;
  line-height: 2.5;
}

@media only screen and (max-width: 640px) {
  .privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item .privacy_box_sub_list .privacy_box_sub_item {
    line-height: 2;
  }
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item .privacy_box_sub_list .privacy_box_sub_item span {
  font-size: 14px;
}

.privacy_box_wrap .privacy_box .privacy_box_content .privacy_box_block_wrap .privacy_box_block .privacy_box_list .privacy_box_item .privacy_box_sub_list .privacy_box_sub_item:last-child {
  margin: 0 0 0;
}

/* ======================= BASE ====== */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-break: break-word;
}

html, body {
  margin: 0;
  height: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.mb_0 {
  margin-bottom: 0;
}

.mb_10 {
  margin-bottom: 10px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_30 {
  margin-bottom: 30px;
}

.mb_50 {
  margin-bottom: 50px;
}

.mt_0 {
  margin-top: 0;
}

.mt_10 {
  margin-top: 10px;
}

.mt_20 {
  margin-top: 20px;
}

.mt_30 {
  margin-top: 30px;
}

.mt_40 {
  margin-top: 40px;
}

.mt_50 {
  margin-top: 50px;
}

.mt_80 {
  margin-top: 80px;
}

.mr_5 {
  margin-right: 5px;
}

.mr_20 {
  margin-right: 20px;
}

@media only screen and (max-width: 999px) {
  .sp_mb_10 {
    margin-bottom: 10px;
  }
}

.common_pc {
  display: block;
}

@media only screen and (max-width: 960px) {
  .common_pc {
    display: none;
  }
}

.common_sp {
  display: none;
}

@media only screen and (max-width: 960px) {
  .common_sp {
    display: block;
  }
}

@media only screen and (max-width: 840px) {
  .common_pc840 {
    display: none;
  }
}

.common_sp840 {
  display: none;
}

@media only screen and (max-width: 840px) {
  .common_sp840 {
    display: block;
  }
}

.common_pc640 {
  display: block;
}

.common_pc640.height_100 {
  height: 100%;
}

@media only screen and (max-width: 640px) {
  .common_pc640 {
    display: none;
  }
}

.commom_pc1200 {
  display: block;
}

@media only screen and (max-width: 1200px) {
  .commom_pc1200 {
    display: none;
  }
}

.common_sp640 {
  display: none;
}

@media only screen and (max-width: 640px) {
  .common_sp640 {
    display: block;
  }
}

.mb_0 {
  margin-bottom: 0;
}

body {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh;
}

footer {
  margin-top: auto;
}

body ul {
  list-style: none;
}

body a {
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

@media only screen and (min-width: 960px) {
  body a:hover {
    opacity: 0.7;
  }
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
