@charset "UTF-8";
/* googlefont　*/
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,900;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@500&display=swap");
/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
サイト固有の追加項目
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/* base設定　*/
html, body {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  position: relative;
  font-size: 62.5%;
  overflow-x: hidden;
  font-weight: 400;
}

body {
  -webkit-text-size-adjust: 100%;
  position: relative;
  overflow-y: hidden;
  position: relative;
  font-family: "Lato", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
  line-height: 1.8;
}
@media print {
  body {
    zoom: 0.6;
  }
  body .print_break {
    -webkit-column-break-before: page;
       -moz-column-break-before: page;
            break-before: page;
  }
  body * {
    -webkit-print-color-adjust: exact;
  }
}
body a {
  color: #070303;
  text-decoration: none;
  -webkit-transition: all 0.2s linear !important;
  transition: all 0.2s linear !important;
}
body a:hover {
  -webkit-transition: all 0.2s linear !important;
  transition: all 0.2s linear !important;
}

p, ul, li, a, dl, dt, dd, th, td, input {
  font-size: 1.4rem;
  line-height: 1.8;
}
@media print, screen and (min-width: 768px) {
  p, ul, li, a, dl, dt, dd, th, td, input {
    font-size: 1.6rem;
  }
}

::-moz-selection {
  background: #D8E9E9;
  color: #177475;
}

::selection {
  background: #D8E9E9;
  color: #177475;
}

img {
  border: none;
  vertical-align: bottom;
  max-width: 100%; /*for responsive*/
  height: auto; /*for responsive*/
  width: auto; /* IE8のみ */
}

.opacity:hover {
  opacity: 70%;
  -moz-opacity: 0.7;
  opacity: 0.7;
  filter: alpha(opacity=70);
}

/*  module  */
/*==================================

width

==================================*/
.g_common_width_750 {
  width: 96%;
  max-width: 750px;
  margin: 0 auto;
}

.g_common_width_1000 {
  width: 96%;
  max-width: 1000px;
  margin: 0 auto;
}

.g_common_width_s {
  width: 86%;
  max-width: 1140px;
  margin: 0 auto;
}

.g_common_width_m {
  width: 90%;
  max-width: 1140px;
  margin: 0 auto;
}

.g_common_width_l {
  width: 96%;
  max-width: 1140px;
  margin: 0 auto;
}

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

余白

==================================*/
.mt_0 {
  margin-top: 0;
}

.mt_5 {
  margin-top: 5px;
}

.mt_10 {
  margin-top: 10px;
}

.mt_15 {
  margin-top: 15px;
}

.mt_20 {
  margin-top: 20px;
}

.pt_0 {
  padding-top: 0;
}

.pt_5 {
  padding-top: 5px;
}

.pt_10 {
  padding-top: 10px;
}

.pt_15 {
  padding-top: 15px;
}

.pt_20 {
  padding-top: 20px;
}

.mb_0 {
  margin-bottom: 0;
}

.mb_5 {
  margin-bottom: 5px;
}

.mb_10 {
  margin-bottom: 10px;
}

.mb_15 {
  margin-bottom: 15px;
}

.mb_20 {
  margin-bottom: 20px;
}

.pb_0 {
  padding-bottom: 0;
}

.pb_5 {
  padding-bottom: 5px;
}

.pb_10 {
  padding-bottom: 10px;
}

.pb_15 {
  padding-bottom: 15px;
}

.pb_20 {
  padding-bottom: 20px;
}

.pb_1r {
  padding-bottom: 1rem;
}

.pb_2r {
  padding-bottom: 2rem;
}

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

lazyload ふわっと表示

==================================*/
.fade img {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: 2s;
  transition: 2s;
}

.fade img.lazyloaded {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
}

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

マウスオーバー で画像拡大

==================================*/
.g_img_mouseover {
  display: block;
  overflow: hidden;
  width: 100%;
}
.g_img_mouseover img {
  display: block;
  -webkit-transition-duration: 0.8s;
          transition-duration: 0.8s;
}
.g_img_mouseover img:hover {
  -webkit-transform: scale(1.1, 1.1);
          transform: scale(1.1, 1.1);
  -webkit-transition-duration: 0.8s;
          transition-duration: 0.8s;
  -webkit-filter: brightness(70%);
          filter: brightness(70%);
}

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

.g_lead_text

==================================*/
.g_lead_text {
  text-align: left;
  font-size: 1.4rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
  .g_lead_text {
    width: auto;
    text-align: center;
    font-size: 1.8rem;
  }
}
@media print {
  .g_lead_text {
    margin: 0 auto;
    text-align: center;
  }
}

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

.g_lead_box

==================================*/
.g_lead_box {
  width: 86%;
  max-width: 1140px;
  margin: 5rem auto;
}
.g_lead_box p {
  text-align: left;
  font-size: 1.4rem;
  width: 90%;
  margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
  .g_lead_box p {
    width: auto;
    text-align: center;
    line-height: 2.4;
    font-size: 1.8rem;
  }
}
@media print {
  .g_lead_box p {
    text-align: center;
  }
}

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

.g_sub_layer_title

==================================*/
.g_sub_layer_title {
  width: 96%;
  text-align: center;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 2px;
  margin: 0 auto 2rem auto;
  font-size: 1.8rem;
}
@media print, screen and (min-width: 576px) {
  .g_sub_layer_title {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .g_sub_layer_title {
    letter-spacing: 3px;
    font-size: 2.4rem;
    margin: 0 auto 4rem auto;
  }
}
@media print, screen and (min-width: 992px) {
  .g_sub_layer_title {
    font-size: 3rem;
  }
}
.g_sub_layer_title:after {
  content: "";
  display: block;
  width: 90px;
  height: 5px;
  margin: 1rem auto 0 auto;
  background-color: #283980;
}

.g_normal_text {
  padding-bottom: 1rem;
  max-width: 770px;
  margin: 0 auto;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .g_normal_text {
    font-size: 1.6rem;
  }
}

.g_bottom_border_title {
  text-align: left;
  font-weight: bold;
  border-bottom: 1px solid #707070;
  margin: 5rem 0 2rem 0;
  padding: 0 0 0.5rem 0;
  color: #283980;
  line-height: 1.6;
  font-size: 1.8rem;
}
@media print, screen and (min-width: 768px) {
  .g_bottom_border_title {
    text-align: center;
    font-size: 2.5rem;
  }
}
@media print {
  .g_bottom_border_title {
    text-align: center;
  }
}

.g_blue_back_title {
  line-height: 1.7;
  color: white;
  background-color: #283980;
  border-radius: 50px;
  margin: 3rem 0 1rem 0;
  padding: 0.1rem 0;
  text-align: center;
  font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
  .g_blue_back_title {
    font-size: 2.3rem;
  }
}

.g_left_border_title {
  font-size: 1.8rem;
  font-weight: bold;
  padding: 0 0 0 1rem;
  border-left: 6px solid #283980;
  margin: 3rem 0 1rem 0;
  line-height: 1.4;
}
@media print, screen and (min-width: 576px) {
  .g_left_border_title {
    font-size: 2.2rem;
    padding: 0 0 0 2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .g_left_border_title {
    font-size: 2.6rem;
    margin: 8rem 0 2rem 0;
    padding: 0 0 0 3rem;
  }
}

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

リンク

==================================*/
.g_anotherwindow:after {
  content: "";
  display: inline-block;
  background-image: url(../../../img/service/common/icon_black_anotherwindow.svg);
  background-position: right center;
  background-size: 10px;
  background-repeat: no-repeat;
  padding-right: 1.5rem;
  width: 10px;
  height: 10px;
}

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

簡易class

==================================*/
.al_right {
  text-align: right;
}

.al_left {
  text-align: left;
}

.al_center {
  text-align: center;
}

.al_md_center {
  text-align: left;
}
@media print, screen and (min-width: 768px) {
  .al_md_center {
    text-align: center;
  }
}

.bold {
  font-weight: bold;
}

.normal_weight {
  font-weight: normal;
}

.blue {
  color: #283980;
}

.f_52 {
  font-size: 3.8rem;
}
@media print, screen and (min-width: 768px) {
  .f_52 {
    font-size: 5.2rem;
  }
}

.f_38 {
  font-size: 2.2rem;
}
@media print, screen and (min-width: 768px) {
  .f_38 {
    font-size: 3.8rem;
  }
}

.f_21 {
  font-size: 1.7rem;
}
@media print, screen and (min-width: 768px) {
  .f_21 {
    font-size: 2.1rem;
  }
}

.f_20 {
  font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
  .f_20 {
    font-size: 2rem;
  }
}

.f_19 {
  font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
  .f_19 {
    font-size: 1.9rem;
  }
}

.f_16 {
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .f_16 {
    font-size: 1.6rem;
  }
}

.f_14 {
  font-size: 1rem;
}
@media print, screen and (min-width: 768px) {
  .f_14 {
    font-size: 1.4rem;
  }
}

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

基本ボタン

==================================*/
.g_btn {
  display: block;
  width: 86%;
  max-width: 500px;
  margin: 4rem auto 0 auto;
  background-color: #ec9039;
  border-bottom: 5px solid #b16b29;
  color: white;
  text-align: center;
  position: relative;
  border-radius: 10px;
  line-height: 1.3;
  font-size: 1.8rem;
  padding: 1.2rem 3rem 1.2rem 1.5rem;
}
@media print, screen and (min-width: 768px) {
  .g_btn {
    display: table;
    font-size: 2.2rem;
    padding: 2rem 6.5rem 2rem 4rem;
  }
}
.g_btn:hover {
  -webkit-transform: translate3d(0, 5px, 0);
          transform: translate3d(0, 5px, 0);
}
.g_btn:after {
  content: " ";
  background-image: url(../../../img/service/common/icon_next.svg);
  position: absolute;
  width: 8px;
  height: 13px;
  background-repeat: no-repeat;
  top: 40%;
  right: 5%;
}

.g_s_btn {
  display: table;
  max-width: 86%;
  margin: 4rem auto 0 auto;
  background-color: #D00605;
  border-bottom: 3px solid #A3182A;
  color: white;
  text-align: center;
  border-radius: 10px;
  line-height: 1.4;
  font-size: 1.4rem;
  padding: 0.5rem 2rem;
}
@media print, screen and (min-width: 768px) {
  .g_s_btn {
    font-size: 1.6rem;
    padding: 1rem 4rem;
  }
}
.g_s_btn:hover {
  -webkit-transform: translate3d(0, 5px, 0);
          transform: translate3d(0, 5px, 0);
  -webkit-transition: all 0.2s linear !important;
  transition: all 0.2s linear !important;
}

.g_yellow_s_btn {
  display: block;
  background-color: #F8B700;
  border-bottom: 2px solid #B98800;
  color: white;
  padding: 1rem 1.5rem;
  line-height: 1.4;
  font-size: 1.6rem;
  text-align: center;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .g_yellow_s_btn {
    padding: 1.5rem;
    font-size: 1.7rem;
  }
}
.g_yellow_s_btn:hover {
  -webkit-transform: translate3d(0, 3px, 0);
          transform: translate3d(0, 3px, 0);
}

.g_text_s_btn {
  display: block;
  font-size: 1.6rem;
  text-align: center;
  font-weight: bold;
  text-decoration: underline;
  color: #1c7ae0;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  border-radius: 10px;
}
@media print, screen and (min-width: 768px) {
  .g_text_s_btn {
    padding: 0 1.5rem 1.5rem;
    font-size: 1.7rem;
  }
}
.g_text_s_btn:hover {
  -webkit-transform: translate3d(0, 3px, 0);
          transform: translate3d(0, 3px, 0);
}
.g_text_s_btn br {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .g_text_s_btn br {
    display: block;
  }
}

.red_btn {
  background-color: #D00605;
  border-bottom: 5px solid #A3182A;
}
.red_btn:after {
  content: none;
  background-image: none;
}

.white_btn {
  background-color: white;
  color: #283980;
}

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

アイコン付きボタン

==================================*/
.g_anotherwindow:after {
  content: "";
  display: inline-block;
  background-image: url(../../../img/service/common/icon_white_anotherwindow.svg);
  background-position: right center;
  background-size: 20px;
  background-repeat: no-repeat;
  padding-right: 3rem;
  width: 20px;
  height: 20px;
}

.g_white_btn {
  display: block;
  max-width: 86%;
  background-color: white;
  color: #283980;
  font-weight: bold;
  text-align: center;
  margin: 4rem auto 0 auto;
  border-radius: 10px;
  padding: 1.5rem 3rem;
  font-size: 1.6rem;
}
.g_white_btn:after {
  content: "";
  display: inline-block;
  background-image: url(../../../img/service/common/icon_blue_anotherwindow.svg);
  background-position: right center;
  background-size: 20px;
  background-repeat: no-repeat;
  padding-right: 3rem;
  width: 20px;
  height: 20px;
}
@media print, screen and (min-width: 768px) {
  .g_white_btn {
    display: table;
    font-size: 2.2rem;
    padding: 2rem 4rem;
    min-width: 500px;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_white_btn {
    font-size: 2.4rem;
    padding: 2.5rem 4rem;
  }
}
.g_white_btn:hover {
  -webkit-transform: translate3d(0, 5px, 0);
          transform: translate3d(0, 5px, 0);
}

.g_label_btn {
  display: block;
  margin: 2rem auto 1rem auto;
  width: 100%;
  text-align: center;
  border-top: none;
  border-right: none;
  border-left: none;
  background-color: #D00605;
  border-bottom: 5px solid #A3182A;
  color: white;
  padding: 1.7rem 1.5rem 1.1rem 2.5rem;
  position: relative;
  font-size: 1.6rem;
  letter-spacing: 2px;
  font-weight: bold;
  border-radius: 10px;
  cursor: pointer;
  background-position: left 10% top 55%;
  background-repeat: no-repeat;
  max-width: 350px;
  -webkit-transition: all 0.2s linear !important;
  transition: all 0.2s linear !important;
}
@media print, screen and (min-width: 576px) {
  .g_label_btn {
    margin: 1.5rem auto 1rem auto;
    padding: 1.8rem 2rem 1rem 4rem;
    background-position: left 20% top 55%;
  }
}
@media print, screen and (min-width: 768px) {
  .g_label_btn {
    font-size: 2rem;
    background-position: left 10% top 55%;
  }
}
@media print, screen and (min-width: 992px) {
  .g_label_btn {
    font-size: 2.2rem;
    margin: 2rem auto 0 auto;
    padding: 1.7rem 2.5rem 1.3rem 5rem;
  }
}
.g_label_btn:hover {
  -webkit-transform: translate3d(0, 5px, 0);
          transform: translate3d(0, 5px, 0);
  -webkit-transition: all 0.2s linear !important;
  transition: all 0.2s linear !important;
}
.g_label_btn span {
  position: absolute;
  top: -0.5rem;
  background-color: white;
  border: 1px solid #A3182A;
  color: #A3182A;
  font-size: 1rem;
  border-radius: 20px;
  padding: 0 2rem;
  letter-spacing: normal;
  right: 10%;
  left: 10%;
}
@media print, screen and (min-width: 576px) {
  .g_label_btn span {
    top: -1rem;
    font-size: 1.2rem;
    right: 5%;
    left: 5%;
  }
}
@media print, screen and (min-width: 768px) {
  .g_label_btn span {
    right: 10%;
    left: 10%;
  }
}
@media print, screen and (min-width: 992px) {
  .g_label_btn span {
    right: 15%;
    left: 15%;
  }
}

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

wrap_cost
料金事例

==================================*/
.wrap_cost {
  background-image: url(../../../img/service/common/bg_shape1.png), url(../../../img/service/common/bg_shape2.png);
  background-repeat: no-repeat;
  background-position: left top, right top;
  background-size: 20%;
  background-color: #E9EBF7;
  padding: 4rem 0;
}
@media print, screen and (min-width: 768px) {
  .wrap_cost {
    background-size: auto;
  }
}
.wrap_cost .wrap_cost_title {
  font-weight: bold;
  text-align: center;
  margin-bottom: 2rem;
  font-size: 1.8rem;
  line-height: 1.4;
  color: black;
  letter-spacing: 3px;
}
@media print, screen and (min-width: 576px) {
  .wrap_cost .wrap_cost_title {
    font-size: 2rem;
    margin-bottom: 3rem;
  }
}
@media print, screen and (min-width: 768px) {
  .wrap_cost .wrap_cost_title {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 992px) {
  .wrap_cost .wrap_cost_title {
    font-size: 3rem;
  }
}
.wrap_cost .wrap_cost_title:before {
  content: "Cost";
  font-family: "Zen Maru Gothic", sans-serif;
  color: #283980;
  display: block;
  letter-spacing: 2px;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 576px) {
  .wrap_cost .wrap_cost_title:before {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 992px) {
  .wrap_cost .wrap_cost_title:before {
    font-size: 2rem;
  }
}

.wrap_cost_width {
  width: 86%;
  max-width: 750px;
  margin: 0 auto;
}

.cost_case {
  max-width: 740px;
  margin: 0 auto;
}
@media print, screen and (min-width: 576px) {
  .cost_case {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
  }
}
.cost_case li {
  width: 100%;
  background-color: white;
  border-radius: 2rem;
  padding: 4%;
  margin: 2rem auto;
}
@media screen and (min-width: 992px) {
  .cost_case li {
    border-radius: 3.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .cost_case li {
    border-radius: 4rem;
  }
}
@media print, screen and (min-width: 576px) {
  .cost_case li {
    width: 45%;
  }
}
.cost_case .cost_case_title {
  background-color: #283980;
  color: white;
  text-align: center;
  border-radius: 2rem;
}
@media screen and (min-width: 992px) {
  .cost_case .cost_case_title {
    border-radius: 3.5rem;
  }
}
@media screen and (min-width: 1200px) {
  .cost_case .cost_case_title {
    border-radius: 4rem;
  }
}
.cost_case .cost_case_price {
  font-weight: bold;
  text-align: center;
}
.cost_case .cost_case_price span {
  color: #283980;
  font-size: 3rem;
}
.cost_case .yellow_box {
  background-color: #FDF8EC;
  border-radius: 10px;
  padding: 4% 8%;
  margin: 0 auto;
}
.cost_case .cost_case_overview {
  text-align: center;
  font-weight: bold;
  margin-bottom: 0.5rem;
  font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
  .cost_case .cost_case_overview {
    font-size: 1.6rem;
  }
}
.cost_case .cost_case_detail {
  width: 100%;
}
.cost_case .cost_case_detail:before, .cost_case .cost_case_detail:after {
  content: " ";
  display: table;
}
.cost_case .cost_case_detail:after {
  clear: both;
}
.cost_case .cost_case_detail {
  *zoom: 1;
}
.cost_case .cost_case_detail dt {
  float: left;
  color: #283980;
  width: 30%;
  padding: 0 0 1rem 0;
  font-weight: bold;
  line-height: 1.4;
  font-size: 1.2rem;
}
.cost_case .cost_case_detail dt:before, .cost_case .cost_case_detail dt:after {
  content: " ";
  display: table;
}
.cost_case .cost_case_detail dt:after {
  clear: both;
}
.cost_case .cost_case_detail dt {
  *zoom: 1;
}
@media print, screen and (min-width: 768px) {
  .cost_case .cost_case_detail dt {
    font-size: 1.5rem;
  }
}
.cost_case .cost_case_detail dd {
  float: left;
  width: 70%;
  padding: 0 0 1rem 0;
  line-height: 1.4;
  font-size: 1.2rem;
}
.cost_case .cost_case_detail dd:before, .cost_case .cost_case_detail dd:after {
  content: " ";
  display: table;
}
.cost_case .cost_case_detail dd:after {
  clear: both;
}
.cost_case .cost_case_detail dd {
  *zoom: 1;
}
@media print, screen and (min-width: 768px) {
  .cost_case .cost_case_detail dd {
    font-size: 1.5rem;
  }
}

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

wrap_download_section
資料ダウンロード

==================================*/
.wrap_download_section {
  background: #283980;
  padding: 3rem 0;
  text-align: center;
  position: relative;
}
@media print, screen and (min-width: 768px) {
  .wrap_download_section {
    padding: 4rem 0;
  }
}
.wrap_download_section .kv_text3 {
  text-align: center;
  font-weight: bold;
  line-height: 1.2;
  color: white;
  margin: 0 0 1rem 0;
  font-size: 2rem;
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .kv_text3 {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 992px) {
  .wrap_download_section .kv_text3 {
    font-size: 3.1rem;
  }
}
.wrap_download_section .kv_text3 span {
  display: block;
  font-size: 1.3rem;
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .kv_text3 span {
    font-size: 1.5rem;
  }
}
@media print, screen and (min-width: 992px) {
  .wrap_download_section .kv_text3 span {
    font-size: 1.8rem;
  }
}
.wrap_download_section .g_white_box {
  width: 86%;
  padding: 7% 5% 5% 5%;
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .g_white_box {
    padding: 2% 5%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .g_white_box .left {
    width: 45%;
  }
}
.wrap_download_section .g_white_box .left figure img {
  width: 80%;
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .g_white_box .left figure img {
    width: 100%;
  }
}
@media print, screen and (min-width: 576px) {
  .wrap_download_section .g_white_box .right {
    width: 50%;
  }
}

.wrap_download_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .wrap_download_list {
    -webkit-box-pack: left;
    -webkit-justify-content: left;
        -ms-flex-pack: left;
            justify-content: left;
  }
}
.wrap_download_list li {
  font-size: 1.4rem;
  font-weight: bold;
  padding: 0 1rem 0 0;
}
.wrap_download_list li:before {
  content: "";
  background-image: url(../../../img/service/common/check_yellow.svg);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  display: inline-block;
  width: 20px;
  height: 10px;
}

.wrap_recommend_list {
  font-weight: bold;
}
.wrap_recommend_list dt {
  font-size: 1.6rem;
  padding: 2rem 0 1rem 0;
}
@media print, screen and (min-width: 768px) {
  .wrap_recommend_list dt {
    font-size: 2rem;
    padding: 0 0 2rem 0;
  }
}
.wrap_recommend_list dd {
  color: #283980;
  text-align: left;
  padding: 0 0 0.2rem 0;
}
@media print, screen and (min-width: 576px) {
  .wrap_recommend_list dd {
    padding: 0 0 1rem 0;
  }
}

.download_section_btn {
  background-image: url(../../../img/service/common/dl_file_icon.svg);
  background-position: left 10% top 55%;
}
@media print, screen and (min-width: 768px) {
  .download_section_btn {
    background-position: left 15% top 55%;
  }
}
.download_section_btn span {
  right: 18%;
  left: 18%;
  padding: 0 0.5rem;
}
@media print, screen and (min-width: 576px) {
  .download_section_btn span {
    right: 5%;
    left: 5%;
    padding: 0 0.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .download_section_btn span {
    right: 10%;
    left: 10%;
    padding: 0 2rem;
  }
}
@media print, screen and (min-width: 992px) {
  .download_section_btn span {
    right: 15%;
    left: 15%;
  }
}

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

wrap_cta_area
運営委託を検討中のお客様

==================================*/
.wrap_cta_area {
  background-color: #E9EBF7;
  background-image: url(../../../img/service/common/bg_shape_contact1.png), url(../../../img/service/common/bg_shape_contact2.png);
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: left top, right bottom;
  padding: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  .wrap_cta_area {
    padding: 4rem 0;
  }
}

@media print, screen and (min-width: 768px) {
  .flex_contact_item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
            justify-content: space-around;
  }
}
.flex_contact_item p {
  font-weight: bold;
  line-height: 1.4;
}
@media print, screen and (min-width: 576px) {
  .flex_contact_item p {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .flex_contact_item p {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 992px) {
  .flex_contact_item p {
    font-size: 1.8rem;
  }
}
.flex_contact_item img {
  vertical-align: middle;
  width: 6vw;
}
@media print, screen and (min-width: 1200px) {
  .flex_contact_item img {
    width: 5vw;
  }
}
@media print, screen and (min-width: 768px) {
  .flex_contact_item img {
    width: 3vw;
  }
}

.cta_contact_btn {
  background-image: url(../../../img/service/common/cta_contact_icon.svg);
  background-position: left 10% top 55%;
}
@media print, screen and (min-width: 576px) {
  .cta_contact_btn {
    background-position: left 20% top 55%;
  }
}
@media print, screen and (min-width: 768px) {
  .cta_contact_btn {
    background-position: left 10% top 55%;
  }
}
@media print, screen and (min-width: 992px) {
  .cta_contact_btn {
    padding: 1.7rem 2.5rem 1.3rem 5rem;
  }
}
.cta_contact_btn span {
  right: 18%;
  left: 18%;
  padding: 0 0.5rem;
}
@media print, screen and (min-width: 576px) {
  .cta_contact_btn span {
    right: 15%;
    left: 15%;
    padding: 0 0.5rem;
  }
}
@media print, screen and (min-width: 768px) {
  .cta_contact_btn span {
    padding: 0 1rem;
    right: 15%;
    left: 15%;
  }
}
@media print, screen and (min-width: 992px) {
  .cta_contact_btn span {
    padding: 0 2rem;
    right: 15%;
    left: 15%;
  }
}

.cta_ttl {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 768px) {
  .cta_ttl {
    font-size: 2.4rem;
  }
}

.box_contact_item {
  background: white;
  border-radius: 2rem;
  padding: 5%;
  text-align: center;
}
@media print, screen and (min-width: 576px) {
  .box_contact_item {
    padding: 3% 2%;
  }
}
@media print, screen and (min-width: 768px) {
  .box_contact_item {
    width: 48%;
  }
}

.telno {
  font-size: 5vw;
  color: #D00515;
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  .telno {
    font-size: 3vw;
    text-decoration: none;
  }
}
@media print, screen and (min-width: 992px) {
  .telno {
    font-size: 2vw;
  }
}

img.telimg {
  vertical-align: text-bottom;
  width: 8%;
}

.subtext {
  font-size: 1.2rem;
}
@media print, screen and (min-width: 768px) {
  .subtext {
    font-size: 1.4rem;
  }
}

.contact_right {
  text-align: center;
  margin-left: 0;
  margin-top: 3%;
}
@media print, screen and (min-width: 768px) {
  .contact_right {
    margin-left: 2%;
    margin-top: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.border_yellow {
  border-bottom: 2px solid #FFDB34;
  padding-bottom: 0.5rem;
}

.link_blue {
  border-bottom: 2px solid #283980;
  color: #283980;
}

.thanks_blue_box span {
  font-size: 1.8rem;
  font-weight: bold;
}

.modal_text {
  margin-top: 1rem;
}
.modal_text .g_s_btn {
  margin: 1rem auto;
}

.g_blue_box {
  padding: 1rem;
}

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

wrap_cta_area
期間限定コンサルティングキャンペーンバナー

==================================*/
.induction_consul {
  padding: 1.5% 2%;
  position: relative;
  background-image: url(../../../img/service/common/floating_campaign_consulting_bg.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 70%;
  background-color: #FDF8EC;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  border-radius: 2rem;
  max-width: 800px;
  margin: 2% auto 0 auto;
  border: 2px solid #283980;
}
.induction_consul .camp_star {
  background-image: url(../../../img/service/common/camp_star.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 60px 60px;
  width: 60px;
  height: 60px;
  font-size: 1.5rem;
  color: white;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  left: -1rem;
  top: -1rem;
  z-index: 10;
  padding: 6px 0 0 0;
}
.induction_consul .camp_star span {
  font-size: 0.9rem;
}
@media print, screen and (min-width: 576px) {
  .induction_consul .camp_star span {
    font-size: 1.2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .induction_consul .camp_star span {
    font-size: 1.4rem;
  }
}
@media print, screen and (min-width: 576px) {
  .induction_consul .camp_star {
    background-size: 80px 80px;
    width: 80px;
    height: 80px;
    font-size: 2.2rem;
    left: 0;
    top: -2rem;
  }
}
@media print, screen and (min-width: 768px) {
  .induction_consul .camp_star {
    background-size: 90px 90px;
    width: 90px;
    height: 90px;
    font-size: 2.4rem;
  }
}
.induction_consul .induction_consul_ttl {
  font-size: 1.8rem;
  color: #283980;
  font-weight: bold;
  line-height: 1.4;
  padding: 1.5rem 0 0.5rem 0;
  text-align: center;
}
@media print, screen and (min-width: 576px) {
  .induction_consul .induction_consul_ttl {
    font-size: 2.4rem;
    padding: 1.5rem 0 0.5rem 0;
  }
}
.induction_consul dl {
  position: relative;
  border-radius: 1rem;
  background: white;
  padding: 1% 3%;
  margin: 0 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 576px) {
  .induction_consul dl {
    margin: 0 4rem 0 2rem;
  }
}
.induction_consul dl dt {
  border-radius: 10rem;
  padding: 0 1rem;
  color: #283980;
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 1rem auto;
  line-height: 1.3;
}
@media print, screen and (min-width: 576px) {
  .induction_consul dl dt {
    font-size: 1.6rem;
    width: 100%;
  }
}
.induction_consul dl dd {
  background-image: url(../../../img/service/common/floating_campaign_consulting_icon.svg);
  background-repeat: no-repeat;
  background-position: left top;
  padding: 0.2rem 0 0.7rem 2.5rem;
  font-size: 1.4rem;
  line-height: 1.2;
  width: 100%;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 576px) {
  .induction_consul dl dd {
    width: 48%;
    font-size: 1.4rem;
  }
}
.induction_consul .induction_consul_img {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 40%;
}
@media print, screen and (min-width: 576px) {
  .induction_consul .induction_consul_img {
    width: auto;
  }
}
.induction_consul .induction_consul_btn {
  max-width: 400px;
  width: 90%;
  padding: 1.8rem 2rem 1rem 2rem;
}

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

.g_page_ttl

==================================*/
.g_page_ttl {
  background-image: url(../../../img/service/common/bg_blue_dot.png);
  background-repeat: repeat;
  padding: 4rem 0 5rem 0;
  margin-top: 7rem;
}
@media print, screen and (min-width: 768px) {
  .g_page_ttl {
    margin-top: 8rem;
    padding: 8rem 0 10rem 0;
  }
}
@media print, screen and (min-width: 992px) {
  .g_page_ttl {
    margin-top: 10rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_page_ttl {
    margin-top: 11rem;
  }
}
.g_page_ttl h1 {
  text-align: center;
  color: white;
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 2px;
  max-width: 86%;
  margin: 0 auto;
  font-size: 2rem;
}
@media print, screen and (min-width: 576px) {
  .g_page_ttl h1 {
    font-size: 2.4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .g_page_ttl h1 {
    letter-spacing: 3px;
    font-size: 2.8rem;
  }
}
@media print, screen and (min-width: 992px) {
  .g_page_ttl h1 {
    font-size: 3.5rem;
  }
}
.g_page_ttl h1:before {
  display: block;
  letter-spacing: 5px;
  color: #616EA4;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.2rem;
}
@media print, screen and (min-width: 576px) {
  .g_page_ttl h1:before {
    font-size: 1.6rem;
  }
}
@media print, screen and (min-width: 768px) {
  .g_page_ttl h1:before {
    font-size: 1.8rem;
  }
}
@media print, screen and (min-width: 992px) {
  .g_page_ttl h1:before {
    font-size: 2rem;
  }
}

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

.g_breadcrumb

==================================*/
.g_breadcrumb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.g_breadcrumb ul {
  width: 96%;
  max-width: 1140px;
  margin: 0 auto;
  display: table;
  padding: 1rem 2rem;
  line-height: 1.2;
}
.g_breadcrumb ul li {
  float: left;
  font-size: 1rem;
  line-height: 1.8;
}
@media print, screen and (min-width: 768px) {
  .g_breadcrumb ul li {
    font-size: 1.2rem;
    line-height: 2;
  }
}
.g_breadcrumb ul li:before {
  content: "　>　";
}
.g_breadcrumb ul li:first-child:before {
  content: "";
}
.g_breadcrumb ul li a {
  text-decoration: underline;
  font-size: 1rem;
}
@media print, screen and (min-width: 768px) {
  .g_breadcrumb ul li a {
    font-size: 1.2rem;
  }
}
.g_breadcrumb ul li a:hover {
  text-decoration: none;
}

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

.g_sub_layer_main

==================================*/
.g_sub_layer_main {
  background-repeat: no-repeat;
  background-position: left top, right top;
  background-size: 20%;
}
@media print, screen and (min-width: 768px) {
  .g_sub_layer_main {
    background-size: auto;
  }
}

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

g_sub_case_study_wrap

==================================*/
.g_sub_case_study_wrap {
  background-color: #FAF9F7;
  padding: 5rem 0;
}
@media print, screen and (min-width: 992px) {
  .g_sub_case_study_wrap {
    padding: 8rem 0;
  }
}

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

g_case_study_no_list

==================================*/
.g_case_study_no_list p {
  text-align: center;
}
.g_case_study_no_list img {
  display: block;
  margin: 5rem auto;
  width: 50%;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_no_list img {
    padding: 8rem 0;
    width: auto;
  }
}

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

g_case_study_list

==================================*/
@media print, screen and (min-width: 768px) {
  .g_case_study_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 3rem auto;
  }
}
.g_case_study_list li {
  margin: 0 auto 2rem auto;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_list li {
    width: 46%;
    margin: 2%;
  }
}
@media print, screen and (min-width: 992px) {
  .g_case_study_list li {
    width: 31%;
    margin: 1%;
  }
}

.g_case_study_carousel {
  margin: 0;
  padding: 0;
  line-height: 0;
}
.g_case_study_carousel li {
  margin: 2rem;
}

@media print {
  .slick-list {
    overflow: visible;
  }
}

@media print {
  .slick-track {
    height: 480px;
  }
}

.g_case_study_list li, .g_case_study_carousel li {
  max-width: 448px;
  vertical-align: middle;
}
@media print {
  .g_case_study_list li, .g_case_study_carousel li {
    max-width: 300px;
  }
}
.g_case_study_list li .g_img_mouseover, .g_case_study_carousel li .g_img_mouseover {
  -webkit-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.2);
  border-radius: 2rem 2rem 0 0;
  background-color: white;
}
@media print, screen and (min-width: 576px) {
  .g_case_study_list li .g_img_mouseover, .g_case_study_carousel li .g_img_mouseover {
    border-radius: 3rem 3rem 0 0;
  }
}
@media print, screen and (min-width: 992px) {
  .g_case_study_list li .g_img_mouseover, .g_case_study_carousel li .g_img_mouseover {
    border-radius: 3.5rem 3.5rem 0 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_case_study_list li .g_img_mouseover, .g_case_study_carousel li .g_img_mouseover {
    border-radius: 4rem 4rem 0 0;
  }
}
.g_case_study_list li a, .g_case_study_carousel li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.g_case_study_list li figure img, .g_case_study_carousel li figure img {
  width: 100%;
  border-radius: 2rem 2rem 0 0;
}
@media print, screen and (min-width: 576px) {
  .g_case_study_list li figure img, .g_case_study_carousel li figure img {
    border-radius: 3rem 3rem 0 0;
  }
}
@media print, screen and (min-width: 992px) {
  .g_case_study_list li figure img, .g_case_study_carousel li figure img {
    border-radius: 3.5rem 3.5rem 0 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_case_study_list li figure img, .g_case_study_carousel li figure img {
    border-radius: 4rem 4rem 0 0;
  }
}
.g_case_study_list li div, .g_case_study_carousel li div {
  padding: 6% 8% 8% 7%;
  background-color: white;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.2);
  border-radius: 0 0 2rem 2rem;
}
@media print, screen and (min-width: 576px) {
  .g_case_study_list li div, .g_case_study_carousel li div {
    border-radius: 0 0 3rem 3rem;
  }
}
@media print, screen and (min-width: 992px) {
  .g_case_study_list li div, .g_case_study_carousel li div {
    border-radius: 0 0 3.5rem 3.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_case_study_list li div, .g_case_study_carousel li div {
    border-radius: 0 0 4rem 4rem;
  }
}
.g_case_study_list li .g_case_study_title, .g_case_study_carousel li .g_case_study_title {
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_list li .g_case_study_title, .g_case_study_carousel li .g_case_study_title {
    font-size: 1.8rem;
  }
}
.g_case_study_list li p, .g_case_study_carousel li p {
  font-size: 1rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  color: #7B7B7B;
  margin-bottom: 0.5rem;
  width: 100%;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_list li p, .g_case_study_carousel li p {
    font-size: 1.3rem;
  }
}
.g_case_study_list li dl, .g_case_study_carousel li dl {
  width: 100%;
}
.g_case_study_list li dl:before, .g_case_study_list li dl:after, .g_case_study_carousel li dl:before, .g_case_study_carousel li dl:after {
  content: " ";
  display: table;
}
.g_case_study_list li dl:after, .g_case_study_carousel li dl:after {
  clear: both;
}
.g_case_study_list li dl, .g_case_study_carousel li dl {
  *zoom: 1;
}
.g_case_study_list li dl dt, .g_case_study_carousel li dl dt {
  float: left;
  color: #283980;
  width: 20%;
  padding: 0 0 1rem 0;
  font-weight: bold;
  line-height: 1.4;
  font-size: 1.1rem;
}
.g_case_study_list li dl dt:before, .g_case_study_list li dl dt:after, .g_case_study_carousel li dl dt:before, .g_case_study_carousel li dl dt:after {
  content: " ";
  display: table;
}
.g_case_study_list li dl dt:after, .g_case_study_carousel li dl dt:after {
  clear: both;
}
.g_case_study_list li dl dt, .g_case_study_carousel li dl dt {
  *zoom: 1;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_list li dl dt, .g_case_study_carousel li dl dt {
    font-size: 1.3rem;
  }
}
.g_case_study_list li dl dd, .g_case_study_carousel li dl dd {
  float: left;
  width: 80%;
  padding: 0 0 1rem 0;
  line-height: 1.4;
  font-size: 1.1rem;
}
.g_case_study_list li dl dd:before, .g_case_study_list li dl dd:after, .g_case_study_carousel li dl dd:before, .g_case_study_carousel li dl dd:after {
  content: " ";
  display: table;
}
.g_case_study_list li dl dd:after, .g_case_study_carousel li dl dd:after {
  clear: both;
}
.g_case_study_list li dl dd, .g_case_study_carousel li dl dd {
  *zoom: 1;
}
@media print, screen and (min-width: 768px) {
  .g_case_study_list li dl dd, .g_case_study_carousel li dl dd {
    font-size: 1.3rem;
  }
}

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

slick

==================================*/
.slick-dots {
  bottom: -15px;
}
.slick-dots li {
  margin: 0;
}

.slick-track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.slick-slide {
  height: auto !important;
}

.slick-prev, .slick-prev:hover, .slick-prev:active, .slick-prev:focus {
  background-image: url(../../../img/service/common/icon_slick_left.svg);
  background-repeat: no-repeat;
  background-size: 30px;
  width: 30px;
  height: 30px;
}

.slick-next, .slick-next:hover, .slick-next:active, .slick-next:focus {
  background-image: url(../../../img/service/common/icon_slick_right.svg);
  background-repeat: no-repeat;
  background-size: 30px;
  width: 30px;
  height: 30px;
}

.slick-prev:before, .slick-next:before {
  content: "";
}

#popup_top {
  display: none;
}

@media screen and (max-width: 992px) {
  #popup_top {
    display: none !important;
  }
}
.popup_wrap {
  position: fixed;
  z-index: 100;
  display: none;
  background-color: #ffffff;
  border-radius: 10px;
  position: fixed;
  bottom: 2%;
  right: 2%;
  -webkit-box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.3);
}
@media print, screen and (min-width: 992px) {
  .popup_wrap {
    display: block;
  }
}
.popup_wrap #pop_up {
  display: none;
}
.popup_wrap .popup_contents {
  padding: 2rem;
  position: relative;
}
@media print {
  .popup_wrap .popup_contents {
    display: none;
  }
}
.popup_wrap .close_btn {
  cursor: pointer;
  position: absolute;
  top: -20px;
  right: 10px;
}
.popup_wrap .close_btn span {
  display: block;
  position: relative;
  background-color: #283980;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  color: white;
  -webkit-box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.3);
          box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.3);
}
.popup_wrap .close_btn span:before {
  content: "";
  display: block;
  width: 40%; /*バツ線の長さ*/
  height: 3px; /*バツ線の太さ*/
  background: white;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: 0% 50%;
          transform-origin: 0% 50%;
  position: absolute;
  top: calc(42% - 5px);
  left: 36%;
}
.popup_wrap .close_btn span:after {
  content: "";
  display: block;
  width: 40%; /*バツ線の長さ*/
  height: 3px; /*バツ線の太さ*/
  background: white;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  position: absolute;
  top: calc(42% - 5px);
  left: auto;
  right: 36%;
}
.popup_wrap .popup_ttl {
  font-size: 2.4rem;
  font-weight: bold;
  text-align: center;
  color: #283980;
  padding-bottom: 1.6rem;
}
.popup_wrap .popup_inner {
  display: table;
  margin-bottom: 2rem;
}
.popup_wrap li {
  display: table-cell;
  vertical-align: bottom;
}
.popup_wrap .text_wrapper {
  background-color: #FFFAED;
  padding: 1rem;
  width: 230px;
}
.popup_wrap .text_wrapper p {
  font-size: 1.2rem;
}
.popup_wrap .dl_after {
  width: 120px;
}
.popup_wrap .dl_top {
  width: 180px;
}
.popup_wrap .popup_contents_ttl {
  text-align: center;
  font-weight: bold;
  font-size: 1.6rem;
}
.popup_wrap #pop_up:checked + .popup_contents {
  display: none;
}
.popup_wrap .floating_box_btn {
  background-image: url(../../../img/service/common/dl_file_icon.svg);
  background-position: left 10% center;
  margin: 1rem auto 0 auto;
  padding: 1.2rem 3rem 1.2rem 4rem;
}
.popup_wrap .floating_box_btn span {
  right: 15%;
  left: 15%;
  padding: 0 1rem;
  line-height: 1.2;
}

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

コンサルキャンペーン用フローティングバナー

==================================*/
.floating_campaign_consulting .popup_contents {
  padding: 0;
  position: relative;
  background-image: url(../../../img/service/common/floating_campaign_consulting_bg.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: auto;
}
.floating_campaign_consulting a {
  display: block;
  background-color: white;
  border-radius: 10px;
}
.floating_campaign_consulting a:hover {
  background-color: #E9EBF7;
}
.floating_campaign_consulting .popup_contents_inner {
  padding: 1rem 2rem 0 2rem;
}
.floating_campaign_consulting .flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}
.floating_campaign_consulting .camp_star {
  background-image: url(../../../img/service/common/camp_star.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 70px 70px;
  display: block;
  color: white;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.1;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 25%;
  padding: 2.5rem 0 2rem 0;
}
.floating_campaign_consulting .camp_star span {
  font-size: 1.2rem;
}
.floating_campaign_consulting h2 {
  text-align: left;
  line-height: 1.2;
  width: 75%;
  padding: 0;
  font-size: 2.4rem;
  font-weight: bold;
  color: #283980;
}
.floating_campaign_consulting dl {
  position: relative;
  border-radius: 5%;
  background: #FDF8EC;
  -webkit-box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
          box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  padding: 10px;
  margin: 1rem 6rem 0.5rem 0;
}
.floating_campaign_consulting dl dt {
  border-radius: 10rem;
  background: #283980;
  color: white;
  font-size: 1.3rem;
  font-weight: bold;
  position: absolute;
  top: -10px;
  width: 200px;
  text-align: center;
}
.floating_campaign_consulting dl dt:first-child + dd {
  margin: 1rem 0 0 0;
}
.floating_campaign_consulting dl dd {
  background-image: url(../../../img/service/common/floating_campaign_consulting_icon.svg);
  background-repeat: no-repeat;
  background-position: left top;
  padding: 0.2rem 0 0.7rem 2rem;
  font-size: 1.2rem;
  line-height: 1.2;
}
.floating_campaign_consulting .floating_campaign_consulting_img {
  position: absolute;
  right: 0;
  bottom: 50px;
  max-height: 115px;
}
.floating_campaign_consulting p.floating_campaign_consulting_btn {
  height: 50px;
  background-image: url(../../../img/service/common/icon_next.svg);
  background-repeat: no-repeat;
  background-position: right 10px center;
  display: block;
  border-radius: 0 0 10px 10px;
  background-color: #ED7054;
  width: 100%;
  color: white;
  padding: 1rem;
  font-size: 1.8rem;
  font-weight: bold;
  border: 0;
}
.floating_campaign_consulting p.floating_campaign_consulting_btn span {
  font-size: 1.2rem;
  font-weight: normal;
  display: inline-block;
  padding: 0 1rem 0 0;
}

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

.download

==================================*/
h1.page_ttl_download:before {
  content: "DOWNLOAD";
}

.download_service_sec, .download_purpose_sec {
  margin: 2rem 0 8rem 0;
}

.g_download_report_list {
  width: 96%;
  max-width: 1140px;
  margin: 0 auto;
}
@media print, screen and (min-width: 576px) {
  .g_download_report_list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 2rem 4%;
  }
}
.g_download_report_list li {
  max-width: 300px;
  width: 100%;
  vertical-align: middle;
  margin: 0 auto 2rem auto;
}
@media print {
  .g_download_report_list li {
    max-width: 300px;
  }
}
@media print, screen and (min-width: 576px) {
  .g_download_report_list li {
    max-width: 300px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 48%;
        -ms-flex: 0 1 48%;
            flex: 0 1 48%;
    margin: 0 0 2rem 0;
  }
}
.g_download_report_list li a {
  display: block;
  cursor: pointer;
}
.g_download_report_list li .g_img_mouseover {
  -webkit-box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.2);
          box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.2);
  border-radius: 2rem 2rem 0 0;
  background-color: white;
}
@media print, screen and (min-width: 576px) {
  .g_download_report_list li .g_img_mouseover {
    border-radius: 3rem 3rem 0 0;
  }
}
@media print, screen and (min-width: 992px) {
  .g_download_report_list li .g_img_mouseover {
    border-radius: 3.5rem 3.5rem 0 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_download_report_list li .g_img_mouseover {
    border-radius: 4rem 4rem 0 0;
  }
}
.g_download_report_list li figure img {
  width: 100%;
  border-radius: 2rem 2rem 0 0;
}
@media print, screen and (min-width: 576px) {
  .g_download_report_list li figure img {
    border-radius: 3rem 3rem 0 0;
  }
}
@media print, screen and (min-width: 992px) {
  .g_download_report_list li figure img {
    border-radius: 3.5rem 3.5rem 0 0;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_download_report_list li figure img {
    border-radius: 4rem 4rem 0 0;
  }
}
.g_download_report_list li div {
  padding: 4% 8% 8% 7%;
  background-color: white;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.2);
  border-radius: 0 0 2rem 2rem;
}
@media print, screen and (min-width: 576px) {
  .g_download_report_list li div {
    border-radius: 0 0 3rem 3rem;
  }
}
@media print, screen and (min-width: 992px) {
  .g_download_report_list li div {
    border-radius: 0 0 3.5rem 3.5rem;
  }
}
@media print, screen and (min-width: 1200px) {
  .g_download_report_list li div {
    border-radius: 0 0 4rem 4rem;
  }
}
.g_download_report_list li .g_download_report_title {
  text-align: center;
  color: #283980;
  font-size: 1.6rem;
  font-weight: bold;
  margin-bottom: 0.5rem;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
  .g_download_report_list li .g_download_report_title {
    font-size: 1.8rem;
  }
}
.g_download_report_list li p {
  font-size: 1.2rem;
}