@charset "UTF-8";
/*============================
アニメーション設定
==============================*/
.move_left.active {
  width: 19px !important;
  transition: 1s;
  /*clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important;*/ }

.move_right.active {
  width: 13px !important;
  transition: 0.5s;
  /*clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important;*/ }

.move_right2.active {
  transform: translateX(20px) !important;
  opacity: 0;
  /*width: 0 !important;*/
  transition: 0.5s;
  /*clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%) !important;*/ }

.move_down.active {
  height: 8px !important;
  transition: 1s; }

.move_left2.active {
  transform: translateX(0) !important;
  transition: 0.5s; }

.move_right3.active {
  transform: translateX(0) !important;
  transition: 0.5s; }

.inview, .inviewIn, .inviewDown, .inviewLeft, .inviewRight {
  opacity: 0; }

/*下から*/
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(15%); }
  to {
    opacity: 1;
    transform: translateY(0); } }
/*その場で*/
.fadeIn, .active.modal_bg, .active.modal .popup_img {
  animation-name: fadeInAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeInAnime {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
/* 上から */
.fadeDown {
  animation-name: fadeDownAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeDownAnime {
  from {
    opacity: 0;
    transform: translateY(-15%); }
  to {
    opacity: 1;
    transform: translateY(0); } }
/* 左から */
.fadeLeft, .achievement_select li.active a::before, .achievement_select li a:hover::before {
  animation-name: fadeLeftAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    transform: translateX(-15%); }
  to {
    opacity: 1;
    transform: translateX(0); } }
/* 右から */
.fadeRight {
  animation-name: fadeRightAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0; }

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    transform: translateX(15%); }
  to {
    opacity: 1;
    transform: translateX(0); } }
/* アニメーションスタートの遅延時間を決めるCSS*/
.time02 {
  animation-delay: 0.2s; }

.time03 {
  animation-delay: 0.3s; }

.time04 {
  animation-delay: 0.4s; }

.time05, .achievement_select li.active a::before, .achievement_select li a:hover::before {
  animation-delay: 0.5s;
  transition-delay: 0.5s !important; }

.time06 {
  animation-delay: 0.6s; }

.time07 {
  animation-delay: 0.7s; }

.time08 {
  animation-delay: 0.8s; }

.time09 {
  animation-delay: 0.9s; }

.time10 {
  animation-delay: 1s;
  transition-delay: 1s !important; }

.time15 {
  animation-delay: 1.5s;
  transition-delay: 1.5s !important; }

.time20 {
  animation-delay: 2s; }

/*============================
共通設定
=============================*/
html {
  font-size: 62.5%;
  font-family: "メイリオ",' Meiryo', "Hiragino Kaku G'othic Pro", "Hiragino Kaku Gothic ProN", "游ゴシック", "Yu Gothic", YuGothic, "ＭＳ ゴシック", sans-serif;
  color: #202020;
  font-weight: normal;
  background-color: #fff; }

body {
  margin: 0;
  padding: 0;
  width: 100%; }

h1, h2, h3, h4, h5, p, a, li, dt, dd, th, td {
  color: #202020; }

a {
  transition: 0.5s;
  text-decoration: none; }

img {
  max-width: 100%;
  height: auto;
  border: 0;
  image-rendering: crisp-edges;
  image-rendering: -webkit-optimize-contrast; }

p {
  margin: 0; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

.clearfix::before {
  content: "";
  display: block;
  clear: both; }

main {
  width: 100%;
  padding-top: 120px;
  padding-bottom: 120px;
  overflow: hidden; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    main {
      padding-top: 96px;
      padding-bottom: 96px; } }
  @media screen and (max-width: 767px) {
    main {
      /*padding-top: 80px;*/
      padding-top: 56px;
      padding-bottom: 80px; } }
  main section {
    padding-top: 96px;
    padding-bottom: 96px; }
    main section:first-child {
      padding-top: 0; }
    main section:last-child {
      padding-bottom: 0; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      main section {
        padding-top: 56px;
        padding-bottom: 56px; } }
    @media screen and (max-width: 767px) {
      main section {
        padding-top: 56px;
        padding-bottom: 56px; } }

/* カラー */
/* 見出し */
h1 {
  font-size: 2.2rem;
  color: #356CB6;
  font-weight: normal;
  margin: 0; }

h2 {
  font-size: 2.6rem;
  color: #356CB6;
  font-weight: normal;
  margin: 0; }

h3 {
  font-size: 1.8rem;
  color: #356CB6;
  font-weight: normal;
  margin: 0; }

h4 {
  font-size: 1.6rem;
  font-weight: bold;
  color: #356CB6;
  font-weight: normal;
  margin: 0; }

h5 {
  font-size: 1.5rem;
  font-weight: bold;
  font-weight: normal;
  margin: 0; }

/*font-size*/
.fnt-xxxl {
  font-size: 2.6rem; }
  @media screen and (max-width: 767px) {
    .fnt-xxxl {
      font-size: 2rem; } }

.fnt-xxl {
  font-size: 2.4rem; }
  @media screen and (max-width: 767px) {
    .fnt-xxl {
      font-size: 1.8rem; } }

.fnt-xl {
  font-size: 2.2rem; }
  @media screen and (max-width: 767px) {
    .fnt-xl {
      font-size: 1.8rem; } }

.fnt-lg {
  font-size: 2rem; }
  @media screen and (max-width: 767px) {
    .fnt-lg {
      font-size: 1.7rem; } }

.fnt-md {
  font-size: 1.8rem; }
  @media screen and (max-width: 767px) {
    .fnt-md {
      font-size: 1.6rem; } }

.fnt-sm {
  font-size: 1.6rem; }
  @media screen and (max-width: 767px) {
    .fnt-sm {
      font-size: 1.5rem; } }

.fnt-xsm {
  font-size: 1.5rem; }
  @media screen and (max-width: 767px) {
    .fnt-xsm {
      font-size: 1.4rem; } }

.fnt-xxsm {
  font-size: 1.4rem; }

/* 表示制御 */
.pc_only {
  display: none; }
  @media screen and (min-width: 1025px) {
    .pc_only {
      display: block; } }

.pc_tb_only {
  display: block; }
  @media screen and (max-width: 767px) {
    .pc_tb_only {
      display: none; } }

.tb_only {
  display: none; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .tb_only {
      display: block; } }

.tb_sp_only {
  display: block; }
  @media screen and (min-width: 1025px) {
    .tb_sp_only {
      display: none; } }

.sp_only {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp_only {
      display: block; } }

/* 表示範囲 */
.content_box {
  width: 100%; }

.inner_box01 {
  width: 1200px;
  margin: auto; }

.inner_box02 {
  width: 1024px;
  margin: auto; }

.inner_box03 {
  width: 960px;
  margin: auto; }

/* 背景色 */
.bg_blk {
  background-color: #356CB6; }

.bg_gry_dk {
  background-color: #cccccc; }

.bg_gry_lt {
  background-color: #f2f2f2; }

.bg_wht {
  background-color: #ffffff; }

/* 文字色 */
.txt_bk {
  color: #356CB6; }

.txt_wh {
  color: #ffffff; }

/* 全体の上下padding */
.main_pd {
  padding: 120px 0; }

/* セクションごとのpadding */
.section_pd {
  padding: 96px 0; }

/* コンテンツpadding */
.content_top_pd {
  padding-bottom: 64px; }

.content_mdl_pd {
  padding: 64px 0; }

.content_bottom_pd {
  padding-top: 64px; }

/* padding全方向 */
.pd_all_l {
  padding: 48px; }

.pd_all_m {
  padding: 32px; }

.pd_all_s {
  padding: 24px; }

/* padding下方向 */
.pd_bottom_l {
  padding-bottom: 48px; }

.pd_bottom_m {
  padding-bottom: 24px; }

.pd_bottom_s {
  padding-bottom: 16px; }

.pd_bottom_ss {
  padding-bottom: 8px; }

/* margin下方向 */
.mg_bottom_ll {
  margin-bottom: 56px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .mg_bottom_ll {
      margin-bottom: 32px; } }
  @media screen and (max-width: 767px) {
    .mg_bottom_ll {
      margin-bottom: 32px; } }

.mg_bottom_l {
  margin-bottom: 32px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .mg_bottom_l {
      margin-bottom: 24px; } }
  @media screen and (max-width: 767px) {
    .mg_bottom_l {
      margin-bottom: 24px; } }

.mg_bottom_m {
  margin-bottom: 24px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .mg_bottom_m {
      margin-bottom: 16px; } }
  @media screen and (max-width: 767px) {
    .mg_bottom_m {
      margin-bottom: 16px; } }

.mg_bottom_s {
  margin-bottom: 16px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .mg_bottom_s {
      margin-bottom: 8px; } }
  @media screen and (max-width: 767px) {
    .mg_bottom_s {
      margin-bottom: 8px; } }

.mg_bottom_ss {
  margin-bottom: 8px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .mg_bottom_ss {
      margin-bottom: 4px; } }
  @media screen and (max-width: 767px) {
    .mg_bottom_ss {
      margin-bottom: 4px; } }

/*.mg_bottom_l{
    margin-bottom: 56px;
}
.mg_bottom_m{
    margin-bottom: 32px;
}
.mg_bottom_s{
    margin-bottom: 24px;
}
.mg_bottom_ss{
    margin-bottom: 26px;
}*/
/* flex */
.flex_pc {
  display: flex; }

.flex_reverse_pc {
  display: flex;
  flex-direction: row-reverse; }

.flex_pctb {
  display: flex; }

.flex_reverse_pctb {
  display: flex;
  flex-direction: row-reverse; }

/* 標準テキスト */
p {
  font-size: 1.5rem;
  line-height: 1.6; }

p.main_txt {
  font-size: 16px;
  line-height: 1.6; }

/* フォントサイズ */
.font-nomal, .achievement_select, .achievement_list dl dt {
  font-size: 1.5rem;
  line-height: 1.6; }

.font-big, .achievement_tab {
  font-size: 1.6rem;
  line-height: 1.6; }

.font-small, .achievement_list dl dd {
  font-size: 1.4rem;
  line-height: 1.6; }

/* リンクボタン */
.btn01 {
  font-size: 15px;
  text-align: center;
  line-height: 40px;
  box-shadow: 3px 3px 3px 2px rgba(0, 0, 0, 0.08);
  display: block;
  width: 300px;
  background-color: #356CB6;
  color: #ffffff;
  text-decoration: none; }
  .btn01:hover {
    border: 1px solid #356CB6;
    box-sizing: border-box;
    color: #356CB6;
    background-color: #ffffff; }

/* tetx-align */
.txt_aln_c {
  text-align: center; }

.txt_aln_c_pc {
  text-align: center; }

/* column */
.clm_3 {
  columns: 3;
  column-gap: 24px; }

/* border */
.border01 {
  border: 1px solid #cccccc;
  box-sizing: border-box; }

/* カテゴリタグ */
.catbx {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 2%; }

.cat_base {
  font-size: 1.4rem;
  line-height: 26px;
  padding: 0 8px;
  margin-bottom: 8px; }

.tag_01 {
  background: #356CB6;
  color: #ffffff; }

.tag_02 {
  background: #E8F2FF; }

.tag_03 {
  background: #f2f2f2; }

/*--------------------
     iPad
--------------------*/
@media screen and (max-width: 1024px) {
  /* 表示制御 */
  .pc_only {
    display: none; }

  .pc_tb_only {
    display: block; }

  .tb_only {
    display: block; }

  .tb_sp_only {
    display: block; }

  /* 表示範囲 */
  .inner_box01 {
    width: 90%; }

  .inner_box02 {
    width: 85%; }

  .inner_box03 {
    width: 80%; }

  /* セクションごとのpadding */
  .section_pd {
    padding: 72px 0; }

  /* コンテンツごとのpadding */
  .content_top_pd {
    padding-bottom: 48px; }

  .content_mdl_pd {
    padding: 48px 0; }

  .content_bottom_pd {
    padding-top: 48px; }

  /* padding */
  .pd_all_l {
    padding: 8%; }

  .pd_all_m {
    padding: 5%; }

  .pd_all_s {
    padding: 3%; }

  /* flex */
  .flex_pc {
    display: block; }

  .flex_reverse_pc {
    display: block; }

  /* リンクボタン */
  .btn01 {
    width: 100%; } }
/*--------------------
     smartphone
--------------------*/
@media screen and (max-width: 767px) {
  /* 見出し */
  h1 {
    font-size: 2rem; }

  h2 {
    font-size: 1.8rem; }

  h3 {
    font-size: 1.6rem; }

  h4 {
    font-size: 1.5rem; }

  h5 {
    font-size: 1.4rem; }

  /* 表示制御 */
  .pc_tb_only {
    display: none; }

  .tb_only {
    display: none; }

  .tb_sp_only {
    display: block; }

  .sp_only {
    display: block; }

  /* 表示範囲 */
  .inner_box01 {
    width: 95%; }

  .inner_box02 {
    width: 90%; }

  .inner_box03 {
    width: 85%; }

  /* セクションごとのpadding */
  .section_pd {
    padding: 48px 0; }

  /* コンテンツごとのpadding */
  .content_top_pd {
    padding-bottom: 32px; }

  .content_mdl_pd {
    padding: 32px 0; }

  .content_bottom_pd {
    padding-top: 32px; }

  /* flex */
  .flex_pctb {
    display: block; }

  .flex_reverse_pctb {
    display: block; }

  /* 標準テキスト */
  p {
    font-size: 1.4rem;
    text-align: justify; }

  /* tetx-align */
  .txt_aln_c_pc {
    text-align: justify; }

  /* column */
  .clm_3 {
    columns: 1; }
    .clm_3 dl {
      margin-bottom: 24px; } }
section {
  width: 100%; }

.content {
  width: 1024px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0%; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .content {
      width: 90%; } }
  @media screen and (max-width: 767px) {
    .content {
      width: 90%; } }

.flex_box {
  display: flex; }

a {
  display: block;
  overflow: hidden; }
  a img {
    transition: 0.5s; }
    a img:hover {
      transform: scale(1.1);
      opacity: 0.6;
      transition: 0.5s; }

img {
  width: 100%;
  height: auto; }

img[src$=".svg"] {
  width: 100%;
  height: auto; }

/*imgのmax-widht個別設定*/
@media screen and (min-width: 1025px) {
  .max-w778 {
    max-width: 778px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w778 {
    max-width: 778px; } }

@media screen and (min-width: 1025px) {
  .max-w505 {
    max-width: 505px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w505 {
    max-width: 505px; } }

@media screen and (min-width: 1025px) {
  .max-w463 {
    max-width: 463px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w463 {
    max-width: 463px; } }

@media screen and (min-width: 1025px) {
  .max-w372 {
    max-width: 372px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w372 {
    max-width: 372px; } }

@media screen and (min-width: 1025px) {
  .max-w352 {
    max-width: 352px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w352 {
    max-width: 352px; } }

@media screen and (min-width: 1025px) {
  .max-w275 {
    max-width: 275px; } }
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .max-w275 {
    max-width: 275px; } }

main {
  display: block; }

.bg_black {
  background-color: #000000; }

/*============================
header
==============================*/
header {
  position: fixed;
  z-index: 1000;
  background-color: #ffffff;
  box-sizing: border-box;
  width: 100%;
  height: 63px;
  padding-left: 2%;
  padding-right: 2%;
  display: flex; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    header {
      height: 56px; } }
  @media screen and (max-width: 767px) {
    header {
      height: 40px;
      padding-left: 5%;
      padding-right: 5%; } }
  header .logo_box {
    width: 235px;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 767px) {
      header .logo_box {
        width: 50%; } }
    header .logo_box a {
      width: 235px;
      display: flex; }
      header .logo_box a:hover img {
        opacity: 0.7;
        transition: 0.5s; }
      @media screen and (max-width: 767px) {
        header .logo_box a {
          width: 100%; } }
    header .logo_box .logo_img {
      padding-right: 10px;
      width: 28px; }
      @media screen and (max-width: 767px) {
        header .logo_box .logo_img {
          width: 14%;
          max-width: 28px;
          padding-right: 4%; } }
    header .logo_box .compname_img {
      width: 197px;
      object-fit: contain;
      font-family: 'object-fit: contain;';
      /*IE対策*/ }
      @media screen and (max-width: 767px) {
        header .logo_box .compname_img {
          width: 82%;
          max-width: 197px;
          box-sizing: border-box; } }
    header .logo_box img:hover {
      transform: none;
      opacity: 1; }

nav {
  height: 100%;
  width: calc(100% - 225px);
  /*pc用グローバルナビゲーション*/
  /*tab,sp用グローバルナビゲーション*/ }
  @media screen and (max-width: 767px) {
    nav {
      width: 50%; } }
  nav .global-nav {
    display: none;
    width: 100%;
    height: 100%; }
    @media screen and (min-width: 1025px) {
      nav .global-nav {
        display: block; } }
    nav .global-nav ul {
      list-style: none;
      display: flex;
      justify-content: flex-end;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
      nav .global-nav ul li {
        display: flex;
        align-items: center;
        justify-content: center; }
        nav .global-nav ul li:last-child {
          padding-top: 12px;
          padding-bottom: 12px;
          padding-left: 1.6vw; }
          nav .global-nav ul li:last-child a {
            background-color: #356CB6;
            color: #ffffff;
            border: 1px solid #ffffff;
            border-radius: 20px;
            padding-left: 25px;
            padding-right: 25px;
            height: 28px;
            width: 70px;
            font-size: 1.4rem; }
            nav .global-nav ul li:last-child a:hover {
              color: #356CB6;
              background-color: #ffffff;
              border: 1px solid #356CB6; }
        nav .global-nav ul li a {
          width: 100%;
          height: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          padding-left: 1.6vw;
          padding-right: 1.6vw; }
          nav .global-nav ul li a:hover {
            color: #356CB6; }
  nav .hamburger {
    height: 100%;
    display: flex;
    align-items: center;
    /*=================================
　MENUがCLOSEに
===================================*/
    /*ボタン内側*/
    /*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/
    /*========= ナビゲーションのためのCSS ===============*/
    /*アクティブクラスがついたら位置を0に*/
    /*ナビゲーションの縦スクロール*/
    /*ナビゲーション*/
    /*リストのレイアウト設定*/ }
    @media screen and (min-width: 1025px) {
      nav .hamburger {
        display: none; } }
    nav .hamburger .openbtn {
      /*ボタン内側の基点となるためrelativeを指定。
追従するナビゲーションの場合はfixed＋top、rightといった位置をセットで指定*/
      position: relative;
      cursor: pointer;
      width: 28px;
      height: 24px;
      border-radius: 5px;
      margin-left: auto;
      margin-right: 2%;
      z-index: 1000; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn {
          width: 20px;
          height: 19px; } }
    nav .hamburger .openbtn span {
      display: inline-block;
      transition: all 0.4s;
      /*アニメーションの設定*/
      position: absolute;
      left: 0;
      height: 2px;
      border-radius: 5px;
      background: #356CB6;
      width: 28px; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn span {
          width: 20px; } }
    nav .hamburger .openbtn span:nth-of-type(1) {
      top: 0; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn span:nth-of-type(1) {
          top: 1px; } }
    nav .hamburger .openbtn span:nth-of-type(2) {
      top: 10px; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn span:nth-of-type(2) {
          top: 9px; } }
    nav .hamburger .openbtn span:nth-of-type(3) {
      top: 20px; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn span:nth-of-type(3) {
          top: 17px; } }
    nav .hamburger .openbtn.active span:nth-of-type(1) {
      top: 5px;
      left: -3px;
      transform: translateY(6px) rotate(-45deg);
      width: 38px;
      background-color: #ffffff; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn.active span:nth-of-type(1) {
          width: 20px;
          top: 5px;
          left: 0; } }
    nav .hamburger .openbtn.active span:nth-of-type(2) {
      opacity: 0; }
    nav .hamburger .openbtn.active span:nth-of-type(3) {
      top: 17px;
      left: -4px;
      transform: translateY(-6px) rotate(45deg);
      width: 38px;
      background-color: #ffffff; }
      @media screen and (max-width: 767px) {
        nav .hamburger .openbtn.active span:nth-of-type(3) {
          width: 20px;
          top: 17px;
          left: 0px; } }
    nav .hamburger .g-nav {
      /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
      position: fixed;
      z-index: 100;
      /*ナビのスタート位置と形状*/
      top: 0;
      left: 500%;
      width: 100%;
      /*ナビの高さ*/
      padding-top: 76px;
      padding-bottom: 80px;
      background: transparent linear-gradient(173deg, #558bd5 0%, #315584 100%) 0% 0% no-repeat padding-box;
      box-shadow: inset 0px 3px 6px #00000029, 0px 3px 6px #88888829;
      /*動き*/
      transition: all 0.6s; }
    nav .hamburger .g-nav.panelactive {
      left: 0;
      transition: all 0.6s; }
    nav .hamburger .g-nav.panelactive #g-nav-list {
      /*ナビの数が増えた場合縦スクロール*/
      position: fixed;
      z-index: -2;
      width: 100%;
      height: calc(100vh - 100px);
      /*表示する高さ*/
      overflow: auto;
      -webkit-overflow-scrolling: touch; }
    nav .hamburger .g-nav .logo_box {
      position: absolute;
      top: 0;
      left: 2%;
      height: 56px; }
      @media screen and (max-width: 767px) {
        nav .hamburger .g-nav .logo_box {
          height: 40px;
          width: 45%;
          left: 5%; } }
      nav .hamburger .g-nav .logo_box .logo_img {
        width: 28px; }
        @media screen and (max-width: 767px) {
          nav .hamburger .g-nav .logo_box .logo_img {
            width: 14%;
            max-width: 28px;
            padding-right: 4%; } }
      @media screen and (max-width: 767px) {
        nav .hamburger .g-nav .logo_box .compname_img {
          width: 82%;
          max-width: 197px;
          box-sizing: border-box; } }
      nav .hamburger .g-nav .logo_box img {
        width: 197px; }
        @media screen and (max-width: 767px) {
          nav .hamburger .g-nav .logo_box img {
            width: 140px; } }
    nav .hamburger .g-nav #ng-nav-list ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    nav .hamburger .g-nav #ng-nav-list li {
      list-style: none;
      text-align: center;
      border-bottom: 1px solid #ffffff; }
      nav .hamburger .g-nav #ng-nav-list li:nth-child(6) {
        border: none;
        padding-bottom: 16px; }
      nav .hamburger .g-nav #ng-nav-list li:last-child {
        border: none;
        padding-left: 19px;
        padding-right: 19px; }
        nav .hamburger .g-nav #ng-nav-list li:last-child a {
          max-width: 500px;
          margin: 0 auto;
          border: 1px solid #fff;
          border-radius: 35px;
          transition: 0.5s;
          padding-top: 15px;
          padding-bottom: 15px;
          line-height: 1; }
          nav .hamburger .g-nav #ng-nav-list li:last-child a:hover {
            background-color: #ffffff;
            color: #356CB6;
            transition: 0.5s; }
    nav .hamburger .g-nav #ng-nav-list a {
      color: #ffffff;
      text-decoration: none;
      display: block;
      padding-bottom: 24px;
      padding-top: 24px;
      font-size: 1.8rem;
      line-height: 1.5; }

.bg-nav {
  display: block;
  width: 100%;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.5);
  position: fixed;
  left: 0;
  transition: all 0.6s;
  top: 0;
  z-index: 2; }

/*============================
TOP
=============================*/
.sec_main {
  padding-top: 63px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_main {
      padding-top: 56px; } }
  @media screen and (max-width: 767px) {
    .sec_main {
      padding-top: 40px; } }
  .sec_main .flex_box {
    display: flex; }
    @media screen and (max-width: 767px) {
      .sec_main .flex_box {
        flex-direction: column; } }
  .sec_main .left_box {
    width: calc(50% + 69px);
    margin: 0 0 0 -87px;
    z-index: 1; }
    @media screen and (max-width: 767px) {
      .sec_main .left_box {
        width: 100%;
        margin: 0; } }
    .sec_main .left_box .img_box {
      width: 105%;
      height: 100%;
      transform: skew(-8deg, 0);
      overflow: hidden; }
      @media screen and (max-width: 767px) {
        .sec_main .left_box .img_box {
          transform: skew(0, 0);
          width: 100%; } }
      .sec_main .left_box .img_box .slider {
        width: 107%;
        height: 100%;
        transform: skew(8deg, 0);
        margin-left: 1%; }
        @media screen and (max-width: 767px) {
          .sec_main .left_box .img_box .slider {
            transform: skew(0, 0);
            width: 100%;
            margin-left: 0; } }
        .sec_main .left_box .img_box .slider .slick-list .slick-track {
          height: 85vh; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .sec_main .left_box .img_box .slider .slick-list .slick-track {
              height: 100%; } }
          @media screen and (max-width: 767px) {
            .sec_main .left_box .img_box .slider .slick-list .slick-track {
              height: 100%; } }
      .sec_main .left_box .img_box a {
        background-color: #000000; }
        .sec_main .left_box .img_box a img {
          height: 85vh;
          width: 100%;
          object-fit: cover;
          font-family: 'object-fit: cover;';
          /*IE対策*/
          margin-left: -6px; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .sec_main .left_box .img_box a img {
              height: 100%;
              margin-left: 0; } }
          @media screen and (max-width: 767px) {
            .sec_main .left_box .img_box a img {
              height: 100%;
              margin-left: 0; } }
  .sec_main .right_box {
    width: calc(50% + 59px);
    background: #ffffff;
    z-index: -1;
    margin-left: auto;
    margin-bottom: 17px;
    position: relative; }
    @media screen and (max-width: 767px) {
      .sec_main .right_box {
        width: calc(100% - 38px);
        margin-left: 19px;
        margin-right: 19px;
        box-shadow: 0px 3px 6px #00000029;
        margin-top: -50px;
        z-index: 1;
        display: flex;
        flex-direction: row-reverse;
        align-items: center; } }
    .sec_main .right_box .float_box {
      width: 180%;
      height: calc(100% - 30px);
      background: transparent linear-gradient(164deg, #6499e2 0%, #285897 100%);
      position: absolute;
      right: 0;
      top: 0; }
    .sec_main .right_box .float_box_sp {
      width: 100%;
      height: 100%;
      background: transparent linear-gradient(164deg, #6499e2 0%, #285897 100%);
      position: absolute;
      bottom: 0;
      left: 0; }
    .sec_main .right_box .inner_box {
      width: 60%;
      box-sizing: border-box;
      margin-top: 15%;
      margin-right: 11.5%;
      margin-left: auto;
      display: flex;
      flex-direction: column;
      justify-content: center; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_main .right_box .inner_box {
          margin-top: 10%; } }
      @media screen and (max-width: 767px) {
        .sec_main .right_box .inner_box {
          width: calc(100% - 38px);
          margin-right: 19px;
          margin-left: 19px;
          margin-top: 30px; } }
      .sec_main .right_box .inner_box .title_box {
        margin-bottom: 48px; }
        @media screen and (max-width: 767px) {
          .sec_main .right_box .inner_box .title_box {
            margin-bottom: 32px; } }
        .sec_main .right_box .inner_box .title_box h1 {
          margin-bottom: 0;
          width: 80%; }
          @media screen and (max-width: 767px) {
            .sec_main .right_box .inner_box .title_box h1 {
              width: 100%; }
              .sec_main .right_box .inner_box .title_box h1 img:last-child {
                display: block;
                margin: 0 auto;
                width: 53.5%;
                margin-top: 16px; }
              .sec_main .right_box .inner_box .title_box h1::after {
                content: "";
                display: block;
                height: 1px;
                width: 52px;
                background-color: #356CB6;
                margin: 0 auto;
                margin-top: 32px; } }
      @media screen and (max-width: 767px) {
        .sec_main .right_box .inner_box .text_box {
          margin-bottom: 40px; }
          .sec_main .right_box .inner_box .text_box p {
            margin: 0;
            font-size: 1.6rem !important; } }
      .sec_main .right_box .inner_box .text_box p {
        line-height: 2.2;
        font-size: 1.3vw;
        margin: 0; }

@media screen and (max-width: 767px) {
  #top_page main {
    padding-top: 80px; } }

/*============================
事業概要　sec_bus
=============================*/
.sec_bus {
  position: relative;
  padding-bottom: 0 !important;
  max-height: 560px;
  position: relative; }
  .sec_bus::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: calc(100% - 20px);
    background-color: #E8F2FF;
    z-index: -1;
    margin: 20px 0 0 0; }
  @media screen and (max-width: 767px) {
    .sec_bus {
      padding-top: 0 !important;
      max-height: none; }
      .sec_bus::before {
        height: calc(100% - 20px);
        margin: 10px 0 0 0; } }
  .sec_bus .title_box {
    width: 100%; }
    .sec_bus .title_box h2 {
      text-align: center; }
    .sec_bus .title_box::after {
      content: "";
      display: block;
      height: 1px;
      width: 52px;
      background-color: #356CB6;
      margin: 40px auto; }
    @media screen and (max-width: 767px) {
      .sec_bus .title_box {
        top: -27px; }
        .sec_bus .title_box::after {
          margin: 32px auto; }
        .sec_bus .title_box h2 {
          margin-bottom: 32px; } }
  .sec_bus .text_box {
    max-width: 736px;
    margin: 0 auto;
    padding-bottom: 56px; }
    @media screen and (max-width: 767px) {
      .sec_bus .text_box {
        padding-left: 19px;
        padding-right: 19px;
        padding-bottom: 32px; } }
  .sec_bus .flex_box {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding-bottom: 64px; }
    @media screen and (max-width: 767px) {
      .sec_bus .flex_box {
        flex-direction: column;
        padding-left: 19px;
        padding-right: 19px;
        padding-bottom: 16px;
        box-sizing: border-box; } }
    .sec_bus .flex_box .inner_wrap {
      width: calc(24.89% - 37px);
      background-color: #ffffff;
      box-shadow: 10px 5px 16px #00000014;
      margin-right: 37px;
      max-width: 340px;
      min-width: 215px; }
      @media screen and (max-width: 767px) {
        .sec_bus .flex_box .inner_wrap {
          width: calc(100% - 38px);
          margin-bottom: 24px;
          min-width: none; } }
      .sec_bus .flex_box .inner_wrap:nth-child(1) .float_wrap {
        width: 100%;
        height: 136px;
        background: transparent linear-gradient(179deg, #558bd5 0%, #315584 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        left: -17px;
        transform: skewx(-15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(1) .float_box {
        width: 50%;
        height: 136px;
        background: transparent linear-gradient(179deg, #558bd5 0%, #315584 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        right: -18px;
        transform: skewx(15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(1) p {
        color: #4471ae;
        font-weight: bold;
        display: inline-block;
        position: relative;
        transform: skewx(-15deg); }
        .sec_bus .flex_box .inner_wrap:nth-child(1) p span {
          font-size: 54px;
          font-family: "Roboto Condensed", sans-serif;
          color: #4471ae;
          position: absolute;
          top: -19px;
          left: -38px;
          font-weight: normal; }
        .sec_bus .flex_box .inner_wrap:nth-child(1) p::after {
          content: "";
          display: block;
          height: 1px;
          width: 130px;
          background-color: #4471ae;
          position: absolute;
          bottom: 0.5px;
          left: -26px; }
      .sec_bus .flex_box .inner_wrap:nth-child(2) .float_wrap {
        width: 100%;
        height: 136px;
        background: transparent linear-gradient(179deg, #55a9d5 0%, #316d84 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        left: -17px;
        transform: skewx(-15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(2) .float_box {
        width: 50%;
        height: 136px;
        background: transparent linear-gradient(179deg, #55a9d5 0%, #316d84 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        right: -18px;
        transform: skewx(15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(2) p {
        color: #448cae;
        font-weight: bold;
        position: relative;
        transform: skewx(-15deg); }
        .sec_bus .flex_box .inner_wrap:nth-child(2) p span {
          font-size: 54px;
          font-family: "Roboto Condensed", sans-serif;
          color: #448cae;
          position: absolute;
          top: -19px;
          left: -38px;
          font-weight: normal; }
        .sec_bus .flex_box .inner_wrap:nth-child(2) p::after {
          content: "";
          display: block;
          height: 1px;
          width: 140px;
          background-color: #448cae;
          position: absolute;
          bottom: 0.5px;
          left: -35px; }
      .sec_bus .flex_box .inner_wrap:nth-child(3) .float_wrap {
        width: 100%;
        height: 136px;
        background: transparent linear-gradient(179deg, #55c8d5 0%, #318481 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        left: -17px;
        transform: skewx(-15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(3) .float_box {
        width: 50%;
        height: 136px;
        background: transparent linear-gradient(179deg, #55c8d5 0%, #318481 100%) 0% 0% no-repeat padding-box;
        position: absolute;
        top: 0;
        right: -18px;
        transform: skewx(15deg);
        z-index: 1; }
      .sec_bus .flex_box .inner_wrap:nth-child(3) p {
        color: #41a2a6;
        font-weight: bold;
        position: relative;
        transform: skewx(-15deg); }
        .sec_bus .flex_box .inner_wrap:nth-child(3) p span {
          font-size: 54px;
          font-family: "Roboto Condensed", sans-serif;
          color: #41a2a6;
          position: absolute;
          top: -19px;
          left: -38px;
          font-weight: normal; }
        .sec_bus .flex_box .inner_wrap:nth-child(3) p::after {
          content: "";
          display: block;
          height: 1px;
          width: 140px;
          background-color: #41a2a6;
          position: absolute;
          bottom: -1px;
          left: -32px; }
  .sec_bus .inner_box {
    width: 100%;
    height: 136px;
    background-color: #ffffff;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    transform: skewx(15deg);
    margin-left: 17px; }
    .sec_bus .inner_box p {
      line-height: 33px;
      letter-spacing: 1.32px; }
      .sec_bus .inner_box p span {
        line-height: 65px; }
  .sec_bus .btn_box {
    padding: 0 0 96px 0; }
    @media screen and (max-width: 767px) {
      .sec_bus .btn_box {
        padding: 0 0 56px 0; } }
    .sec_bus .btn_box a {
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center;
      color: #356CB6;
      width: 100%;
      max-width: 340px;
      height: 61px;
      border: 1px solid #356CB6;
      margin: 0 auto;
      border-radius: 30px;
      background-color: #E8F2FF; }
      .sec_bus .btn_box a:hover {
        color: #ffffff;
        border-color: #E8F2FF;
        background-color: #356CB6; }
        .sec_bus .btn_box a:hover .prev {
          background-image: url(../images/prev01.svg);
          background-size: contain;
          background-repeat: no-repeat; }
      .sec_bus .btn_box a .prev {
        width: 14px;
        height: 14px;
        display: block;
        margin-left: 24px;
        background-image: url(../images/prev02.svg);
        background-repeat: no-repeat;
        background-size: contain;
        transition: 0.5s; }
      @media screen and (max-width: 767px) {
        .sec_bus .btn_box a {
          height: 49px; } }

/*============================
実績　sec_ach
=============================*/
.sec_ach .content {
  max-width: 1200px;
  width: auto; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_ach .content {
      width: 90%;
      margin-left: auto;
      margin-right: auto; } }
  @media screen and (max-width: 767px) {
    .sec_ach .content {
      width: 90%; } }
.sec_ach .title_box {
  position: relative;
  margin-bottom: 32px;
  /*@include bkp(tab) {
    padding-right: 4%;
    padding-left: 4%;
  }*/ }
  .sec_ach .title_box .btn_box {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    /*@include bkp(tab) {
      right: 4%;
    }*/ }
    .sec_ach .title_box .btn_box a {
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center;
      color: #356CB6;
      width: auto;
      height: 39px;
      border: 1px solid #356CB6;
      margin-left: auto;
      border-radius: 30px;
      background-color: #ffffff;
      padding-right: 36px;
      padding-left: 36px; }
      .sec_ach .title_box .btn_box a:hover {
        color: #ffffff;
        border-color: #E8F2FF;
        background-color: #356CB6; }
        .sec_ach .title_box .btn_box a:hover .prev {
          background-image: url(../images/prev01.svg);
          background-size: contain;
          background-repeat: no-repeat; }
      .sec_ach .title_box .btn_box a .prev {
        width: 14px;
        height: 14px;
        display: block;
        margin-left: 24px;
        background-image: url(../images/prev02.svg);
        background-size: contain;
        background-repeat: no-repeat;
        background-size: 14px;
        transition: 0.5s; }
.sec_ach h2 {
  padding-left: 16px;
  border-left: 8px solid #356CB6;
  margin: 0; }
  @media screen and (max-width: 767px) {
    .sec_ach h2 {
      padding-left: 8px; } }
.sec_ach .inner_box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: -40px; }
  @media screen and (max-width: 767px) {
    .sec_ach .inner_box {
      margin-bottom: 9px; } }
  .sec_ach .inner_box .achiv_box {
    width: calc(100% / 4);
    display: flex;
    flex-direction: column;
    padding-bottom: 40px; }
    @media screen and (max-width: 767px) {
      .sec_ach .inner_box .achiv_box {
        width: calc(100% / 2); } }
    .sec_ach .inner_box .achiv_box .img_box {
      width: 100%; }
    .sec_ach .inner_box .achiv_box img {
      vertical-align: bottom;
      width: 100%; }
    .sec_ach .inner_box .achiv_box .text_box {
      padding: 15px 16px;
      flex: 1 0 auto;
      display: flex;
      flex-direction: column; }
      @media screen and (max-width: 767px) {
        .sec_ach .inner_box .achiv_box .text_box {
          padding: 8px 16px 8px 16px; } }
      .sec_ach .inner_box .achiv_box .text_box a:first-child {
        padding-bottom: 8px;
        border-bottom: 1px solid #888888;
        background-image: url(../images/prev03.svg);
        background-repeat: no-repeat;
        background-size: 14px;
        background-position: top 1px right 1px;
        padding-right: 16px;
        flex: 1 0 auto; }
        .sec_ach .inner_box .achiv_box .text_box a:first-child:hover {
          color: #356CB6;
          background-image: url(../images/prev02.svg);
          transition: 0.5s; }
        @media screen and (max-width: 1024px) and (min-width: 768px) {
          .sec_ach .inner_box .achiv_box .text_box a:first-child {
            padding-right: 24px; } }
        @media screen and (max-width: 767px) {
          .sec_ach .inner_box .achiv_box .text_box a:first-child {
            padding-right: 0px;
            background-image: none; }
            .sec_ach .inner_box .achiv_box .text_box a:first-child:hover {
              background-image: none; } }
      .sec_ach .inner_box .achiv_box .text_box a:last-child {
        padding-top: 8px;
        margin-top: auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
  .sec_ach .inner_box .sold_out {
    position: relative; }
    .sec_ach .inner_box .sold_out::after {
      display: flex;
      align-items: center;
      content: "売却済";
      font-size: 1.4rem;
      color: #dc6121;
      border: 1px solid #dc6121;
      padding-left: 12px;
      padding-right: 12px;
      position: absolute;
      bottom: 55px;
      right: 16px; }
  @media screen and (max-width: 799px) {
    .sec_ach .inner_box .achiv_box.sold_out {
      padding-bottom: 56px; }
      .sec_ach .inner_box .achiv_box.sold_out::after {
        left: 16px;
        right: auto;
        bottom: 40px; } }
  @media screen and (max-width: 767px) {
    .sec_ach .inner_box .achiv_box.sold_out {
      padding-bottom: 63px; }
      .sec_ach .inner_box .achiv_box.sold_out::after {
        bottom: 39px; } }

.btn_box.sp_only {
  width: 100%; }
  .btn_box.sp_only a {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #356CB6;
    width: 100%;
    max-width: 340px;
    height: 49px;
    border: 1px solid #356CB6;
    border-radius: 30px;
    background-color: #ffffff;
    margin: 0 auto; }
    .btn_box.sp_only a:hover {
      color: #ffffff;
      border-color: #E8F2FF;
      background-color: #356CB6; }
      .btn_box.sp_only a:hover .prev {
        background-image: url(../images/prev01.svg); }
    .btn_box.sp_only a .prev {
      width: 14px;
      height: 14px;
      display: block;
      margin-left: 24px;
      background-image: url(../images/prev02.svg);
      background-repeat: no-repeat;
      background-size: 14px;
      transition: 0.5s; }

/*============================
環境への取り組み　sec_env
=============================*/
.sec_env {
  width: 100%; }
  .sec_env .flex_box {
    display: flex;
    flex-direction: row-reverse; }
    @media screen and (max-width: 767px) {
      .sec_env .flex_box {
        flex-direction: column; } }
  .sec_env .right_box {
    width: calc((100% + 73px) / 2);
    margin: -3.37% 0 3.37% -73px;
    z-index: 1;
    transform: translateX(111%); }
    .sec_env .right_box .img_box {
      width: 111%;
      height: 100%;
      transform: skew(-8deg, 0);
      overflow: hidden; }
      @media screen and (max-width: 1366px) {
        .sec_env .right_box .img_box {
          max-height: 409px; } }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_env .right_box .img_box {
          max-height: none; } }
      @media screen and (max-width: 767px) {
        .sec_env .right_box .img_box {
          max-height: none; } }
      .sec_env .right_box .img_box img {
        width: 151%;
        height: 100%;
        transform: skew(8deg, 0);
        margin-left: -10%;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        /*IE対策*/
        object-position: 50% 80%; }
    @media screen and (max-width: 767px) {
      .sec_env .right_box {
        width: 100%;
        height: auto;
        margin: 0;
        z-index: 0;
        transform: none !important; }
        .sec_env .right_box .img_box {
          width: 100%;
          height: auto;
          transform: none; }
          .sec_env .right_box .img_box img {
            width: 100%;
            height: auto;
            transform: none;
            margin-left: 0; } }
  .sec_env .left_box {
    width: calc((100% + 73px) / 2);
    margin-right: auto; }
    @media screen and (max-width: 767px) {
      .sec_env .left_box {
        width: calc(100% - 38px);
        margin-left: 19px;
        margin-right: 19px;
        height: auto;
        position: relative;
        margin-top: -24px; } }
    .sec_env .left_box .inner_wrap {
      display: flex;
      justify-content: flex-end;
      width: 109%;
      height: 100%;
      background: transparent linear-gradient(152deg, #56d2d2 0%, #14b59f 100%);
      transform: skew(-8deg, 0);
      margin-left: -50px; }
      @media screen and (max-width: 1366px) {
        .sec_env .left_box .inner_wrap {
          max-height: 409px; } }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_env .left_box .inner_wrap {
          max-height: none; } }
      @media screen and (max-width: 767px) {
        .sec_env .left_box .inner_wrap {
          width: calc(100% - 34px);
          margin-left: 0;
          transform: none;
          padding-left: 17px;
          padding-right: 17px;
          padding-top: 24px;
          padding-bottom: 24px;
          max-height: none; } }
      .sec_env .left_box .inner_wrap .inner_box {
        width: 78%;
        box-sizing: border-box;
        padding-right: calc(73px + 8.5%);
        display: flex;
        flex-direction: column;
        justify-content: center;
        transform: skew(8deg, 0); }
        @media screen and (max-width: 1366px) {
          .sec_env .left_box .inner_wrap .inner_box {
            padding-top: 64px;
            padding-bottom: 64px; } }
        @media screen and (max-width: 767px) {
          .sec_env .left_box .inner_wrap .inner_box {
            width: 100%;
            transform: none;
            padding-right: 0;
            padding-top: 0;
            padding-bottom: 0; } }
        .sec_env .left_box .inner_wrap .inner_box h2 {
          padding-left: 16px;
          margin-top: 0;
          margin-bottom: 32px;
          border-left: 8px solid #ffffff;
          color: #ffffff; }
          @media screen and (max-width: 767px) {
            .sec_env .left_box .inner_wrap .inner_box h2 {
              padding-left: 8px;
              font-size: 2rem; } }
        .sec_env .left_box .inner_wrap .inner_box p {
          color: #ffffff;
          margin-top: 0;
          margin-bottom: 54px; }
          @media screen and (max-width: 767px) {
            .sec_env .left_box .inner_wrap .inner_box p {
              margin-bottom: 48px; } }
        .sec_env .left_box .inner_wrap .inner_box .btn_box a {
          box-sizing: border-box;
          display: flex;
          justify-content: center;
          align-items: center;
          color: #ffffff;
          width: 100%;
          max-width: 340px;
          height: 61px;
          border: 1px solid #ffffff;
          border-radius: 30px;
          transition: 0.5s;
          letter-spacing: 0.9px;
          text-align: center;
          text-indent: -15%; }
          .sec_env .left_box .inner_wrap .inner_box .btn_box a .prev {
            width: 14px;
            height: 14px;
            display: block;
            margin-left: 24px;
            background-image: url(../images/prev01.svg);
            background-repeat: no-repeat;
            background-size: 14px;
            transition: 0.5s; }
          .sec_env .left_box .inner_wrap .inner_box .btn_box a:hover {
            color: #56d2d2;
            border-color: #ffffff;
            background-color: #ffffff;
            transition: 0.5s; }
            .sec_env .left_box .inner_wrap .inner_box .btn_box a:hover .prev {
              background-image: url(../images/prev04.svg);
              transition: 0.5s; }
          @media screen and (max-width: 767px) {
            .sec_env .left_box .inner_wrap .inner_box .btn_box a {
              font-size: 1.5rem;
              height: 48px;
              margin: 0 auto; } }

/*============================
トピックス　sec_topic
=============================*/
.sec_topic {
  padding-bottom: 73px;
  /*dots,arrowの指定は別途あります。（下部）*/ }
  @media screen and (max-width: 767px) {
    .sec_topic {
      padding-bottom: 56px; } }
  .sec_topic .content {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    background-color: #f2f2f2;
    position: relative;
    padding-top: 52px;
    padding-bottom: 96px; }
    @media screen and (max-width: 767px) {
      .sec_topic .content {
        position: static;
        background-color: #ffffff;
        padding-top: 0;
        padding-bottom: 0; } }
  .sec_topic .title_box {
    position: absolute;
    padding-left: 4%;
    padding-right: 4%;
    top: -20px;
    width: 92%; }
    @media screen and (max-width: 767px) {
      .sec_topic .title_box {
        position: static;
        padding-bottom: 32px; } }
    .sec_topic .title_box .btn_box {
      position: absolute;
      top: 0px;
      right: 4%;
      width: auto; }
      .sec_topic .title_box .btn_box a {
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #356CB6;
        width: auto;
        height: 39px;
        border: 1px solid #356CB6;
        margin-left: auto;
        border-radius: 30px;
        background-color: #ffffff;
        padding-right: 36px;
        padding-left: 36px; }
        .sec_topic .title_box .btn_box a:hover {
          color: #ffffff;
          border-color: #E8F2FF;
          background-color: #356CB6; }
          .sec_topic .title_box .btn_box a:hover .prev {
            background-image: url(../images/prev01.svg); }
        .sec_topic .title_box .btn_box a .prev {
          width: 14px;
          height: 14px;
          display: block;
          margin-left: 24px;
          background-image: url(../images/prev02.svg);
          background-repeat: no-repeat;
          background-size: 14px;
          transition: 0.5s; }
  .sec_topic h2 {
    padding-left: 16px;
    border-left: 8px solid #356CB6; }
    @media screen and (max-width: 767px) {
      .sec_topic h2 {
        padding-left: 8px;
        margin: 0; } }
  .sec_topic .inner_wrap {
    margin-left: 19px;
    padding-right: 19px; }
  .sec_topic .inner_box {
    display: flex;
    width: 100%; }
    @media screen and (max-width: 767px) {
      .sec_topic .inner_box {
        display: block;
        width: 100%; } }
  @media screen and (min-width: 1025px) {
    .sec_topic .inner_box.sp_only {
      display: none; } }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_topic .inner_box.sp_only {
      display: none; } }
  @media screen and (max-width: 767px) {
    .sec_topic .inner_box.pc_tb_only {
      display: none; } }
  .sec_topic .topic_box {
    width: calc(100% / 4); }
    .sec_topic .topic_box .img_box {
      margin-bottom: 16px; }
      .sec_topic .topic_box .img_box img {
        vertical-align: bottom; }
    .sec_topic .topic_box .text_box {
      padding-left: 16px;
      padding-right: 16px; }
      @media screen and (max-width: 767px) {
        .sec_topic .topic_box .text_box {
          padding-left: 38px;
          padding-right: 38px;
          position: relative; }
          .sec_topic .topic_box .text_box .prev-arrow {
            position: absolute;
            left: 0;
            top: 15px;
            cursor: pointer; }
          .sec_topic .topic_box .text_box .next-arrow {
            position: absolute;
            right: 0;
            top: 15px;
            cursor: pointer; } }
      .sec_topic .topic_box .text_box span {
        display: block;
        position: relative; }
      .sec_topic .topic_box .text_box .day {
        margin-bottom: 16px;
        line-height: 1.5; }
      .sec_topic .topic_box .text_box .new::after {
        content: "NEW";
        position: absolute;
        top: 0;
        right: 0;
        display: inline-block;
        font-size: 1.3rem;
        color: #fff;
        padding-right: 11.5px;
        padding-left: 11.5px;
        background-color: #dc6121; }
      .sec_topic .topic_box .text_box .text:hover {
        color: #356CB6;
        transition: 0.5s; }
  .sec_topic .btn_box.sp_only {
    width: 100%; }
    .sec_topic .btn_box.sp_only a {
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center;
      color: #356CB6;
      width: 100%;
      max-width: 340px;
      height: 49px;
      border: 1px solid #356CB6;
      border-radius: 30px;
      background-color: #ffffff;
      margin: 0 auto; }
      .sec_topic .btn_box.sp_only a:hover {
        color: #ffffff;
        border-color: #E8F2FF;
        background-color: #356CB6; }
        .sec_topic .btn_box.sp_only a:hover .prev {
          background-image: url(../images/prev01.svg); }
      .sec_topic .btn_box.sp_only a .prev {
        width: 14px;
        height: 14px;
        display: block;
        margin-left: 24px;
        background-image: url(../images/prev02.svg);
        background-repeat: no-repeat;
        background-size: 14px;
        transition: 0.5s; }

/*============================
テナント募集中　sec_tenant
=============================*/
.sec_tenant {
  width: 100%; }
  .sec_tenant .flex_box {
    display: flex; }
    @media screen and (max-width: 767px) {
      .sec_tenant .flex_box {
        flex-direction: column; } }
  .sec_tenant .left_box {
    width: calc((100% + 73px) / 2);
    margin: -3.37% 0 3.37% -73px;
    z-index: 1;
    transform: translateX(-111%); }
    .sec_tenant .left_box .img_box {
      width: 105%;
      height: 100%;
      transform: skew(-8deg, 0);
      overflow: hidden; }
      @media screen and (max-width: 1366px) {
        .sec_tenant .left_box .img_box {
          max-height: 409px; } }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_tenant .left_box .img_box {
          max-height: none; } }
      @media screen and (max-width: 767px) {
        .sec_tenant .left_box .img_box {
          max-height: none; } }
      .sec_tenant .left_box .img_box img {
        width: 125%;
        height: 100%;
        transform: skew(8deg, 0);
        margin-left: 50px;
        object-fit: cover;
        font-family: 'object-fit: cover;';
        /*IE対策*/ }
    @media screen and (max-width: 767px) {
      .sec_tenant .left_box {
        width: 100%;
        height: auto;
        margin: 0;
        z-index: 0;
        transform: none !important; }
        .sec_tenant .left_box .img_box {
          width: 100%;
          height: auto;
          transform: none; }
          .sec_tenant .left_box .img_box img {
            width: 100%;
            height: auto;
            transform: none;
            margin-left: 0; } }
  .sec_tenant .rihgt_box {
    width: calc((100% + 73px) / 2);
    background: transparent linear-gradient(152deg, #6499e2 0%, #285897 100%);
    margin-right: auto; }
    @media screen and (max-width: 1366px) {
      .sec_tenant .rihgt_box {
        max-height: 409px; } }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .sec_tenant .rihgt_box {
        max-height: none; } }
    @media screen and (max-width: 767px) {
      .sec_tenant .rihgt_box {
        max-height: none; } }
    .sec_tenant .rihgt_box .inner_wrap {
      display: flex;
      width: 105%;
      height: 100%;
      background: transparent linear-gradient(152deg, #6499e2 0%, #285897 100%);
      transform: skew(-8deg, 0);
      margin-left: -32px; }
    @media screen and (max-width: 767px) {
      .sec_tenant .rihgt_box {
        width: calc(100% - 38px);
        margin-left: 19px;
        margin-right: 19px;
        height: auto;
        position: relative;
        margin-top: -24px; }
        .sec_tenant .rihgt_box .inner_wrap {
          width: calc(100% - 34px);
          margin-left: 0;
          transform: none;
          padding-left: 17px;
          padding-right: 17px;
          padding-top: 24px;
          padding-bottom: 24px; } }
  .sec_tenant .inner_box {
    width: 78%;
    box-sizing: border-box;
    padding-left: calc(73px + 8.5%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    transform: skew(8deg, 0); }
    @media screen and (max-width: 1366px) {
      .sec_tenant .inner_box {
        padding-top: 64px;
        padding-bottom: 64px; } }
    @media screen and (max-width: 767px) {
      .sec_tenant .inner_box {
        width: 100%;
        transform: none;
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 0; } }
    .sec_tenant .inner_box h2 {
      padding-left: 16px;
      margin-top: 0;
      margin-bottom: 32px;
      border-left: 8px solid #ffffff;
      color: #ffffff; }
      @media screen and (max-width: 767px) {
        .sec_tenant .inner_box h2 {
          padding-left: 8px;
          font-size: 2rem; } }
    .sec_tenant .inner_box p {
      color: #ffffff;
      margin-top: 0;
      margin-bottom: 54px; }
      @media screen and (max-width: 767px) {
        .sec_tenant .inner_box p {
          margin-bottom: 48px; } }
    .sec_tenant .inner_box .btn_box a {
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      max-width: 340px;
      height: 61px;
      border: 1px solid #ffffff;
      border-radius: 30px;
      color: #ffffff;
      letter-spacing: 0.9px;
      text-align: center;
      text-indent: -15%;
      transition: 0.5s; }
      .sec_tenant .inner_box .btn_box a:hover {
        border-color: #356CB6;
        background-color: #ffffff;
        color: #356CB6;
        transition: 0.5s; }
        .sec_tenant .inner_box .btn_box a:hover .prev {
          background-image: url(../images/prev02.svg);
          transition: 0.5s; }
      .sec_tenant .inner_box .btn_box a .prev {
        width: 14px;
        height: 14px;
        display: block;
        margin-left: 24px;
        background-image: url(../images/prev01.svg);
        background-repeat: no-repeat;
        background-size: 14px;
        transition: 0.5s; }
      @media screen and (max-width: 767px) {
        .sec_tenant .inner_box .btn_box a {
          height: 48px;
          font-size: 1.5rem;
          margin: 0 auto; } }

/*============================
footer
=============================*/
footer {
  background-color: #356CB6;
  padding-top: 64px;
  padding-bottom: 40px;
  box-sizing: border-box; }
  @media screen and (max-width: 767px) {
    footer {
      padding-top: 32px;
      padding-bottom: 7px; } }

.footer_logo {
  padding-bottom: 46px;
  display: flex;
  justify-content: center; }
  .footer_logo a {
    width: auto;
    display: inline-block; }
    .footer_logo a img {
      display: block;
      margin: 0 auto; }
      .footer_logo a img:hover {
        transform: none;
        opacity: 0.7;
        transition: 0.5s; }

.copy_right p {
  color: #ffffff;
  text-align: center;
  margin: 0; }

/*============================
slider_dots変形
=============================*/
.slide-dots {
  width: 93%;
  list-style: none;
  display: flex;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0; }
  @media screen and (max-width: 767px) {
    .slide-dots {
      width: calc(100% - 40px);
      margin-left: 20px;
      margin-right: 20px; } }
  .slide-dots li {
    width: 16%;
    height: 2px;
    margin-right: 3px;
    box-sizing: border-box;
    padding-top: 12px;
    padding-bottom: 12px;
    display: flex;
    align-items: center;
    cursor: pointer; }
    .slide-dots li.slick-active {
      width: 32%;
      height: 4px;
      transition: 0.5s; }
      .slide-dots li.slick-active::before {
        content: "";
        display: block;
        background: #356CB6;
        height: 4px;
        width: 100%; }
    .slide-dots li::before {
      content: "";
      display: block;
      background: #ccc;
      height: 2px;
      width: 100%; }
    .slide-dots li button {
      position: relative;
      text-indent: -9999px;
      display: none; }
      .slide-dots li button::before {
        content: "";
        cursor: pointer;
        height: 13.5px;
        left: 0;
        margin: auto;
        position: absolute;
        right: 0;
        top: 24px;
        width: 13.5px; }

.sec_topic .prev-arrow {
  position: absolute;
  top: 280px;
  left: -15px;
  z-index: 1; }
.sec_topic .next-arrow {
  position: absolute;
  top: 280px;
  right: -15px;
  z-index: 1; }
.sec_topic .slick-list {
  overflow: visible !important; }
.sec_topic .slide-dots {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
  margin-top: 4px; }
  .sec_topic .slide-dots li {
    width: 25%; }

/*============================
下層ページ
=============================*/
/*メインビジュアル＆ページタイトル*/
.grad_bg {
  background: transparent linear-gradient(100deg, #6499e2 0%, #285897 100%) 0% 0% no-repeat padding-box;
  box-shadow: inset 0px -5px 6px #00000014;
  position: relative;
  height: 161px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    .grad_bg {
      height: 100px; } }
  .grad_bg::after {
    display: block;
    content: "";
    position: absolute;
    width: 130%;
    height: 81px;
    border-top-left-radius: 50% 100%;
    border-top-right-radius: 50% 100%;
    margin-left: -15%;
    bottom: -49px;
    background: #fff;
    box-shadow: 0px -5px 6px #00000014; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .grad_bg::after {
        height: 81px; } }
    @media screen and (max-width: 767px) {
      .grad_bg::after {
        height: 31px;
        bottom: -20px; } }
  .grad_bg .title_box {
    width: 100%;
    padding-top: 55px; }
    @media screen and (max-width: 767px) {
      .grad_bg .title_box {
        padding-top: 29px; } }
    .grad_bg .title_box h1 {
      text-align: center;
      color: #ffffff;
      font-size: 2.2rem;
      font-weight: normal;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .grad_bg .title_box h1 {
          font-size: 2rem; } }
      .grad_bg .title_box h1::after {
        content: "";
        display: block;
        width: 1px;
        height: 33px;
        background-color: #ffffff;
        margin: 9px auto 0 auto; }
        @media screen and (max-width: 767px) {
          .grad_bg .title_box h1::after {
            height: 21px; } }

/*パンくずリスト*/
.breadcrumb {
  width: 100%;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  background-color: #ffffff;
  padding-top: 24px;
  position: relative; }
  .breadcrumb ul {
    width: 1024px;
    list-style: none;
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0 auto 0 auto; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .breadcrumb ul {
        width: 90%; } }
    @media screen and (max-width: 767px) {
      .breadcrumb ul {
        display: none; } }
    .breadcrumb ul li {
      display: flex;
      margin-right: 8px;
      align-items: center; }
      .breadcrumb ul li a {
        font-size: 1.4rem;
        margin-right: 8px;
        position: relative;
        z-index: 1; }
        .breadcrumb ul li a::after {
          display: block;
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          background-color: #e5effe;
          width: 0;
          height: 100%;
          z-index: -1;
          transition: 0.5s; }
        .breadcrumb ul li a:hover::after {
          width: 100%;
          transform: scaleX(100%);
          transition: 0.5s; }
      .breadcrumb ul li::after {
        display: block;
        content: "";
        font-size: 1.4rem;
        background-image: url(../images/pankuzu_arw.svg);
        width: 11px;
        height: 11px;
        background-repeat: no-repeat; }
      .breadcrumb ul li:last-child {
        font-size: 1.4rem; }
        .breadcrumb ul li:last-child::after {
          content: "";
          background-image: none; }

/*引用・記載*/
.reprint {
  font-weight: 1.4em;
  padding-top: 8px;
  width: 100%;
  display: flex;
  align-items: center;
  margin: 0%; }
  .reprint::after {
    content: "";
    display: block;
    width: 14px;
    height: 14px;
    margin-left: 7px;
    background-image: url(../images/topics/reprint.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; }
  .reprint a {
    color: #356CB6; }
    .reprint a:hover {
      text-decoration: underline; }

/*============================
事業概要
=============================*/
main#main_action_wrap section {
  padding: 0;
  padding-bottom: 12.8rem; }
  main#main_action_wrap section:last-of-type {
    padding-bottom: 12.4rem; }
@media screen and (max-width: 767px) {
  main#main_action_wrap section {
    padding-bottom: 6.4rem; }
    main#main_action_wrap section:last-of-type {
      padding-bottom: 8rem; } }

[id^="sec_action"].sec_action .title_box h2 {
  text-align: center;
  margin-top: 0;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    [id^="sec_action"].sec_action .title_box h2 {
      text-align: left; } }
[id^="sec_action"].sec_action .title_box.heading_3 h3 {
  font-size: 1.6rem;
  align-items: flex-start; }
  [id^="sec_action"].sec_action .title_box.heading_3 h3::before, [id^="sec_action"].sec_action .title_box.heading_3 h3::after {
    background-color: #356CB6;
    margin-top: 10px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    [id^="sec_action"].sec_action .title_box.heading_3 h3 {
      text-align: left;
      padding-left: 38px;
      padding-right: 0;
      justify-content: flex-start; }
      [id^="sec_action"].sec_action .title_box.heading_3 h3::after {
        display: none; }
      [id^="sec_action"].sec_action .title_box.heading_3 h3::before {
        width: 25px; } }
@media screen and (max-width: 767px) {
  [id^="sec_action"].sec_action .title_box.heading_3 h3 {
    align-items: flex-start;
    font-size: 1.5rem;
    padding-left: 23px; }
    [id^="sec_action"].sec_action .title_box.heading_3 h3::before {
      margin-top: .6em;
      width: 15px; } }
[id^="sec_action"].sec_action figure {
  margin-top: 0;
  margin-right: auto;
  margin-left: auto; }
[id^="sec_action"].sec_action .c-link-banner {
  margin: 96px 0 0; }
  @media screen and (max-width: 767px) {
    [id^="sec_action"].sec_action .c-link-banner {
      margin: 56px 0 0; } }

#sec_action02 figure img {
  width: 825px; }

.bg_lightblue {
  background-color: #eef4ff; }
  .bg_lightblue h4 {
    margin-top: 0;
    border-left: #356CB6 solid 0.8rem;
    padding-left: 1.6rem;
    color: #202020; }

ul.list-arrow, ul.list-arrow-flex {
  list-style: none;
  list-style-image: url(../images/action/icon_list_arrow.svg);
  list-style-position: inside; }
  ul.list-arrow-flex {
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap; }
    ul.list-arrow-flex li {
      margin-right: 5.6rem; }
      ul.list-arrow-flex li:not(:last-of-type) {
        margin-bottom: 2.4rem; }
    @media screen and (max-width: 767px) {
      ul.list-arrow-flex li {
        width: 100%;
        margin-right: 0; }
        ul.list-arrow-flex li:not(:last-of-type) {
          margin-bottom: 1.6rem; } }
    ul.list-arrow-flex.-link {
      list-style: none; }
      ul.list-arrow-flex.-link li a {
        display: flex;
        align-items: center;
        position: relative;
        color: #356CB6;
        transition: background-color .5s; }
        ul.list-arrow-flex.-link li a:before {
          content: '';
          display: block;
          background-color: #356CB6;
          width: 10px;
          height: 9px;
          margin: 0 7px 0 0;
          clip-path: polygon(0 0, 0% 100%, 100% 50%); }
        ul.list-arrow-flex.-link li a:after {
          content: '';
          display: block;
          position: absolute;
          right: 0;
          bottom: 4px;
          background-color: #356CB6;
          width: calc(100% - 17px);
          height: 1px;
          transition: opacity .5s; }
          @media screen and (max-width: 767px) {
            ul.list-arrow-flex.-link li a:after {
              display: none; } }
        ul.list-arrow-flex.-link li a:hover {
          background-color: #fff; }
          ul.list-arrow-flex.-link li a:hover:after {
            opacity: 0; }
        ul.list-arrow-flex.-link li a.-current {
          color: #202020; }
          ul.list-arrow-flex.-link li a.-current:after {
            display: none; }
          ul.list-arrow-flex.-link li a.-current:hover {
            background-color: transparent; }

.sp_zoom_img figcaption {
  margin-top: .8rem; }
  .sp_zoom_img figcaption a {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    cursor: pointer; }
    .sp_zoom_img figcaption a:hover {
      color: #356CB6;
      transition: 0.5s; }

.icon_zoom {
  display: block;
  width: 1em;
  height: 1em;
  background-image: url("../images/action/icon_zoom.svg");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 0 50%;
  margin-right: .8rem; }

.txt_aln_r {
  text-align: right; }

.modal {
  display: none; }
  .modal .modal_bg {
    display: none;
    opacity: 0; }

.active.modal {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2001; }
  .active.modal_bg {
    display: block;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.6);
    position: fixed;
    z-index: 2000; }
  .active.modal button {
    background-color: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0; }
  .active.modal .btn_modal_close {
    position: fixed;
    top: 3.2rem;
    right: 1.4rem;
    width: 2.4rem;
    height: 2.4rem; }
    .active.modal .btn_modal_close .icon_close {
      display: block;
      width: 100%;
      height: 100%;
      position: relative;
      transform-origin: 50% 50% 0;
      transform: rotate(45deg); }
      .active.modal .btn_modal_close .icon_close::before, .active.modal .btn_modal_close .icon_close::after {
        content: "";
        display: block;
        position: absolute;
        top: 50%;
        width: 100%;
        height: 1px;
        background-color: #fff; }
      .active.modal .btn_modal_close .icon_close::after {
        transform: rotate(90deg); }
  .active.modal .popup_img {
    margin-top: 7rem;
    background-color: #fff; }

.scroll_fiexd {
  overflow: hidden; }

/*============================
投資開発事業の実績 achivement
=============================*/
.sec_achieve .title_box {
  width: 100%;
  margin-bottom: 32px; }
  @media screen and (max-width: 767px) {
    .sec_achieve .title_box {
      margin-bottom: 18px; } }
  .sec_achieve .title_box h2 {
    font-weight: bold;
    text-align: center;
    margin: 0; }
    @media screen and (max-width: 767px) {
      .sec_achieve .title_box h2 {
        text-align: left; } }
.sec_achieve .text_box p {
  margin: 0; }

/*============================
環境への取り組み
=============================*/
.sec_sdgs01 {
  width: 100%; }
  .sec_sdgs01 .title_box {
    width: 100%;
    margin-bottom: 56px; }
    @media screen and (max-width: 767px) {
      .sec_sdgs01 .title_box {
        margin-bottom: 32px; } }
    .sec_sdgs01 .title_box h2 {
      font-weight: bold;
      text-align: center;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs01 .title_box h2 {
          text-align: left; } }
  .sec_sdgs01 .flex_box {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .sec_sdgs01 .flex_box {
        flex-direction: column;
        align-items: center; } }
    .sec_sdgs01 .flex_box .left_box {
      width: 318px;
      max-width: 318px; }
      @media screen and (max-width: 767px) {
        .sec_sdgs01 .flex_box .left_box {
          width: 90%;
          max-width: none;
          margin-bottom: 24px; } }
      .sec_sdgs01 .flex_box .left_box img {
        max-width: 318px;
        width: 318px; }
        @media screen and (max-width: 767px) {
          .sec_sdgs01 .flex_box .left_box img {
            width: 100%;
            max-width: none;
            display: block;
            margin: 0 auto; } }
    .sec_sdgs01 .flex_box .right_box {
      margin-left: 56px;
      width: calc(69% - 56px); }
      .sec_sdgs01 .flex_box .right_box .title_box {
        margin-bottom: 24px;
        width: 332px; }
        .sec_sdgs01 .flex_box .right_box .title_box img {
          width: 332px;
          max-width: 332px; }
          @media screen and (max-width: 767px) {
            .sec_sdgs01 .flex_box .right_box .title_box img {
              max-width: none;
              width: 100%; } }
      .sec_sdgs01 .flex_box .right_box .text_box {
        width: 100%;
        margin-bottom: 62px; }
        .sec_sdgs01 .flex_box .right_box .text_box p {
          margin: 0;
          line-height: 2; }
      .sec_sdgs01 .flex_box .right_box .link_box {
        width: 100%;
        margin: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs01 .flex_box .right_box {
          width: 100%;
          margin-left: 0; }
          .sec_sdgs01 .flex_box .right_box .title_box {
            width: 100%;
            margin-bottom: 16px; }
          .sec_sdgs01 .flex_box .right_box .text_box {
            margin-bottom: 32px; } }

.heading_3.title_box {
  width: 100%;
  margin-bottom: 56px; }
  @media screen and (max-width: 767px) {
    .heading_3.title_box {
      margin-bottom: 32px; } }
  .heading_3.title_box h3 {
    margin: 0;
    text-align: center;
    color: #202020;
    display: flex;
    justify-content: center;
    font-size: 2.4rem;
    padding-left: 64px;
    padding-right: 64px; }
    @media screen and (max-width: 767px) {
      .heading_3.title_box h3 {
        text-align: left;
        justify-content: flex-start;
        font-size: 1.8rem;
        padding-left: 0;
        padding-right: 0; } }
    .heading_3.title_box h3::before {
      display: block;
      content: "";
      width: 48px;
      height: 1px;
      background-color: #1cb9a5;
      margin-right: 16px;
      margin-top: 15px; }
      @media screen and (max-width: 767px) {
        .heading_3.title_box h3::before {
          margin-right: 8px;
          margin-top: 11px;
          width: 15px; } }
    .heading_3.title_box h3::after {
      display: block;
      content: "";
      width: 48px;
      height: 1px;
      background-color: #1cb9a5;
      margin-left: 16px;
      margin-top: 15px; }
      @media screen and (max-width: 767px) {
        .heading_3.title_box h3::after {
          display: none; } }

.sec_sdgs02 {
  background-color: #e7f9f9; }
  .sec_sdgs02 .img_box {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-bottom: 8px; }
    .sec_sdgs02 .img_box img {
      width: calc((100% - 96px) / 4);
      max-width: 232px;
      margin-right: 32px;
      object-fit: contain;
      font-family: 'object-fit: contain;';
      /*IE対策*/ }
      .sec_sdgs02 .img_box img:nth-child(4) {
        margin-right: 0; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_sdgs02 .img_box img {
          margin-right: 1%;
          width: 24%; } }
    @media screen and (max-width: 767px) {
      .sec_sdgs02 .img_box {
        margin-bottom: 32px;
        flex-direction: column; }
        .sec_sdgs02 .img_box img {
          width: 100%;
          max-width: none;
          margin-right: 0;
          margin-bottom: 24px; }
          .sec_sdgs02 .img_box img:last-child {
            margin-bottom: 0; } }
  .sec_sdgs02 .text_box {
    width: 100%; }
    .sec_sdgs02 .text_box ul {
      margin: 0;
      list-style: none;
      padding: 0; }
      .sec_sdgs02 .text_box ul li {
        width: 100%;
        margin-bottom: 8px;
        position: relative;
        margin-left: 30px;
        width: calc(100% - 30px); }
        .sec_sdgs02 .text_box ul li span {
          display: inline-block;
          margin-right: 8px;
          position: absolute;
          top: 0;
          left: -30px; }

.sec_sdgs03 {
  width: 100%; }
  .sec_sdgs03 .table_wrap {
    width: 100%;
    overflow: auto; }
  .sec_sdgs03 table {
    margin: 0 auto;
    margin-bottom: 8px; }
    .sec_sdgs03 table thead tr th {
      height: 35px; }
    .sec_sdgs03 table thead tr td {
      height: 35px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-left: auto;
      background-color: #e7f9f9;
      text-align: center;
      position: relative;
      /*&::after {
        display: block;
        content: "";
        position: absolute;
        left: calc(50% - 10px);
        bottom: -10px;
        width: 0;
        height: 0;
        border-right: 10px solid transparent;
        border-left: 10px solid transparent;
        border-top: 10px solid #e7f9f9;
      }*/ }
    .sec_sdgs03 table tbody tr th {
      font-weight: normal;
      height: 55px;
      padding-left: 16px;
      text-align: left; }
    .sec_sdgs03 table tbody tr td {
      height: 55px;
      text-align: center;
      border-right: 1px solid #CCCCCC; }
      @media screen and (max-width: 767px) {
        .sec_sdgs03 table tbody tr td {
          border-left: 1px solid #cccccc; } }
    .sec_sdgs03 table tbody tr:nth-child(1) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(1) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(2) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(2) td {
      background-color: #ffffff;
      border-bottom: 2px solid #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(3) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(3) td {
      background-color: #ffffff;
      border-bottom: 2px solid #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(4) th {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5;
      border-right: 1px solid #CCCCCC;
      border-left: 1px solid #CCCCCC; }
    .sec_sdgs03 table tbody tr:nth-child(4) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(5) th {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5;
      border-right: 1px solid #CCCCCC;
      border-left: 1px solid #CCCCCC; }
    .sec_sdgs03 table tbody tr:nth-child(5) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(6) th {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5;
      border-right: 1px solid #CCCCCC;
      border-left: 1px solid #CCCCCC; }
    .sec_sdgs03 table tbody tr:nth-child(6) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(7) th {
      background-color: #ffffff;
      border-bottom: 2px solid #ffffff;
      border-right: 1px solid #CCCCCC;
      border-left: 1px solid #CCCCCC; }
    .sec_sdgs03 table tbody tr:nth-child(7) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(8) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(8) td {
      background-color: #ffffff;
      border-bottom: 2px solid #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(9) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(9) td {
      background-color: #ffffff;
      border-bottom: 1px dashed #1cb9a5; }
    .sec_sdgs03 table tbody tr:nth-child(10) th {
      background-color: #1cb9a5;
      border-bottom: 2px solid #ffffff;
      color: #ffffff; }
    .sec_sdgs03 table tbody tr:nth-child(10) td {
      background-color: #ffffff;
      border-bottom: 2px solid #ffffff; }
      @media screen and (max-width: 767px) {
        .sec_sdgs03 table tbody tr:nth-child(10) td {
          border-bottom: 2px solid #cccccc; } }
  .sec_sdgs03 .text_box {
    width: 100%;
    max-width: 720px; }
    .sec_sdgs03 .text_box ul {
      margin: 0;
      list-style: none;
      padding: 0; }
      .sec_sdgs03 .text_box ul li {
        width: calc(100% - 30px);
        margin-bottom: 8px;
        position: relative;
        margin-left: 30px; }
        .sec_sdgs03 .text_box ul li span {
          display: inline-block;
          margin-right: 8px;
          position: absolute;
          top: 0;
          left: -30px; }

.sec_sdgs03 .table_wrap {
  margin-left: auto;
  margin-right: auto; }
.sec_sdgs03 table {
  max-width: inherit;
  width: 1705px !important;
  border-collapse: separate;
  border-spacing: 0; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_sdgs03 table {
      width: 100%; } }
  @media screen and (max-width: 767px) {
    .sec_sdgs03 table {
      width: 100%; } }
  .sec_sdgs03 table td, .sec_sdgs03 table th {
    box-sizing: border-box;
    /*
    width: 360px; //列幅指定
    @include bkp(tab){
      width: 50%; //1列（js入れる前用の設定です）
      //width: 345px; //列幅指定
    }
    @include bkp(sp){
      width: 50%; //1列（js入れる前用の設定です）
      //width: 169px; //列幅指定
    }
    */ }
  .sec_sdgs03 table th {
    position: sticky;
    left: 0;
    z-index: 2; }
  .sec_sdgs03 table td {
    position: relative;
    z-index: 1; }
  .sec_sdgs03 table thead tr td {
    display: table-cell; }
  .sec_sdgs03 table thead tr th {
    background-color: #fff; }
  .sec_sdgs03 table tbody tr:nth-child(1) td::before {
    display: block;
    content: "";
    position: absolute;
    left: calc(50% - 10px);
    top: 0;
    width: 0;
    height: 0;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-top: 10px solid #e7f9f9; }

.sec_sdgs04 {
  background-color: #e7f9f9; }
  .sec_sdgs04 .title_box {
    margin-bottom: 32px; }
  .sec_sdgs04 .top_box {
    width: 100%;
    margin-bottom: 56px; }
    @media screen and (max-width: 767px) {
      .sec_sdgs04 .top_box {
        margin-bottom: 24px; } }
    .sec_sdgs04 .top_box p {
      text-align: center;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .top_box p {
          text-align: right; } }
      .sec_sdgs04 .top_box p span {
        color: #356CB6;
        font-weight: bold;
        padding-left: 8px;
        padding-right: 8px;
        font-size: 24px; }
        @media screen and (max-width: 767px) {
          .sec_sdgs04 .top_box p span {
            font-size: 20px; } }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .top_box p {
          /* text-align: left; */ } }
    .sec_sdgs04 .top_box p.sp_only span.nomal_text {
      font-size: 1.5rem;
      color: #202020;
      padding-right: 0;
      font-weight: normal; }
  .sec_sdgs04 .bottom_box .title_box {
    width: 100%;
    margin-bottom: 24px; }
    .sec_sdgs04 .bottom_box .title_box h4 {
      padding-left: 24px;
      margin: 0;
      position: relative;
      color: #202020; }
      .sec_sdgs04 .bottom_box .title_box h4::before {
        display: block;
        content: "";
        width: 8px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #1cb9a5; }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .bottom_box .title_box h4 {
          padding-left: 16px; } }
  .sec_sdgs04 .bottom_box .inner_box {
    width: 100%;
    margin-bottom: 96px;
    /* 修正 */
    /* --- */
    /*spの時のslider*/ }
    .sec_sdgs04 .bottom_box .inner_box.no_gallery {
      margin-bottom: 128px; }
    .sec_sdgs04 .bottom_box .inner_box:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .sec_sdgs04 .bottom_box .inner_box {
        margin-bottom: 56px; } }
    .sec_sdgs04 .bottom_box .inner_box .flex_box {
      width: 100%;
      margin-bottom: 40px; }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .bottom_box .inner_box .flex_box {
          flex-direction: column;
          margin-bottom: 24px; } }
      .sec_sdgs04 .bottom_box .inner_box .flex_box .left_box {
        width: 214px; }
        @media screen and (max-width: 767px) {
          .sec_sdgs04 .bottom_box .inner_box .flex_box .left_box {
            width: 201px;
            margin-bottom: 16px; } }
        .sec_sdgs04 .bottom_box .inner_box .flex_box .left_box p {
          width: 100%;
          margin: 0;
          color: #1cb9a5;
          border: 1px solid #1cb9a5;
          background-color: #ffffff;
          font-size: 1.6rem;
          padding-top: 8px;
          padding-bottom: 8px;
          text-align: center;
          line-height: 1.5; }
          @media screen and (max-width: 767px) {
            .sec_sdgs04 .bottom_box .inner_box .flex_box .left_box p {
              font-size: 1.5rem; } }
      .sec_sdgs04 .bottom_box .inner_box .flex_box .right_box {
        margin-left: 32px;
        width: calc(100% - 214px - 32px); }
        .sec_sdgs04 .bottom_box .inner_box .flex_box .right_box p {
          margin: 0;
          margin-bottom: 24px; }
          .sec_sdgs04 .bottom_box .inner_box .flex_box .right_box p:last-child {
            margin-bottom: 0; }
        @media screen and (max-width: 767px) {
          .sec_sdgs04 .bottom_box .inner_box .flex_box .right_box {
            width: 100%;
            margin-left: 0; } }
    .sec_sdgs04 .bottom_box .inner_box .gallery_wrap {
      width: 100%;
      display: flex;
      flex-wrap: wrap; }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .bottom_box .inner_box .gallery_wrap {
          flex-direction: column;
          flex-wrap: nowrap;
          width: 100vw;
          margin-right: calc(-100vw/2 + 100%/2 );
          margin-left: calc(-100vw/2 + 100%/2 ); } }
    .sec_sdgs04 .bottom_box .inner_box .block_center {
      justify-content: center; }
    .sec_sdgs04 .bottom_box .inner_box .gallery_box {
      width: calc((100% - 48px) / 3);
      background-color: #ffffff;
      margin-right: 24px;
      overflow: hidden;
      margin-bottom: 32px; }
      .sec_sdgs04 .bottom_box .inner_box .gallery_box:nth-of-type(3n) {
        margin-right: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .bottom_box .inner_box .gallery_box {
          width: 90%;
          margin-right: 0;
          margin-bottom: 24px; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box:last-child {
            margin-bottom: 0; } }
      .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box {
        display: flex;
        width: 100%;
        height: 133px;
        margin-bottom: 16px; }
        @media screen and (max-width: 767px) {
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box {
            height: auto; } }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_left {
          width: 177px;
          background-color: #000;
          overflow: hidden; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_left {
              width: 54.5%; } }
          @media screen and (max-width: 767px) {
            .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_left {
              width: 54.5%; } }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_left img {
            height: 100%;
            vertical-align: bottom; }
            @media screen and (max-width: 1024px) and (min-width: 768px) {
              .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_left img {
                object-fit: cover;
                font-family: 'object-fit: cover;';
                /*IE対策*/ } }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right {
          width: calc(100% - 177px);
          display: flex;
          justify-content: center;
          align-items: center;
          box-sizing: border-box; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right {
              width: 45.5%;
              padding: 16px; } }
          @media screen and (max-width: 767px) {
            .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right {
              width: 45.5%;
              padding-right: 22px;
              padding-left: 22px;
              padding-bottom: 22px;
              padding-top: 22px; } }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right img {
            width: 100%; }
            @media screen and (max-width: 767px) {
              .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right img {
                width: 100% !important; } }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right .dbj {
            width: 100px; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right .casbee_build {
            width: 100px; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right .casbee_estate {
            width: 100px; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right .bels {
            width: 100px; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .img_box .img_right .leed {
            width: 100px; }
      .sec_sdgs04 .bottom_box .inner_box .gallery_box .title_box {
        width: 100%;
        margin-bottom: 16px; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box .title_box p {
          margin: 0;
          padding-left: 24px;
          position: relative; }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .title_box p::before {
            display: block;
            content: "";
            width: 16px;
            height: 1px;
            background-color: #1cb9a5;
            position: absolute;
            top: 50%;
            left: 0; }
      .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box {
        width: 100%;
        height: 100%;
        padding: 4px 0 4px 8px;
        box-sizing: border-box;
        background-color: #f2f2f2; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box p {
          transition: 0.5s; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl {
          margin: 0;
          /* 修正 */
          /* --- */ }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl dt {
            float: left;
            line-height: 1.5; }
            @media screen and (max-width: 767px) {
              .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl dt {
                float: none;
                margin-bottom: 4px; } }
          @media screen and (max-width: 767px) {
            .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl .ninshou_limit {
              float: left;
              margin-bottom: 0px; } }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl dd {
            margin-left: 64px;
            line-height: 1.5; }
            @media screen and (max-width: 767px) {
              .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl dd {
                margin-left: 0; } }
          .sec_sdgs04 .bottom_box .inner_box .gallery_box .text_box dl .ninshou {
            /* 修正 */
            display: inline-block;
            margin-left: 12px;
            /* --- */ }
      .sec_sdgs04 .bottom_box .inner_box .gallery_box a {
        width: 100%; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box a:hover .img_left img {
          transform: scale(1.1);
          opacity: 0.6;
          transition: 0.5s; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box a:hover .img_right img {
          transform: none;
          opacity: 1; }
        .sec_sdgs04 .bottom_box .inner_box .gallery_box a:hover .title_box p {
          color: #356CB6;
          transition: 0.5s; }
    .sec_sdgs04 .bottom_box .inner_box .slider-item {
      /* 修正 */
      /* --- */ }
      @media screen and (max-width: 767px) {
        .sec_sdgs04 .bottom_box .inner_box .slider-item {
          margin-left: 8px !important;
          margin-right: 8px !important; } }
    @media screen and (max-width: 767px) {
      .sec_sdgs04 .bottom_box .inner_box .slide-dots {
        width: calc(100vw - 10%);
        margin-left: auto;
        margin-right: auto; }
        .sec_sdgs04 .bottom_box .inner_box .slide-dots li {
          width: calc(100% / 3); }
          .sec_sdgs04 .bottom_box .inner_box .slide-dots li.slick-active::before {
            background-color: #1CB9A5; } }
    @media screen and (max-width: 767px) {
      .sec_sdgs04 .bottom_box .inner_box .slider04 .slide-dots li,
      .sec_sdgs04 .bottom_box .inner_box .slider05 .slide-dots li {
        width: calc(100% / 2); } }
    .sec_sdgs04 .bottom_box .inner_box .ul_box {
      width: 100%;
      height: 100%;
      padding-top: 9px;
      margin-top: -1px;
      display: flex;
      justify-content: flex-end;
      background-color: #e7f9f9; }
      .sec_sdgs04 .bottom_box .inner_box .ul_box ul {
        margin: 0;
        list-style: none;
        padding: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        box-sizing: border-box; }
        .sec_sdgs04 .bottom_box .inner_box .ul_box ul li {
          width: 100%;
          margin-bottom: 0;
          position: relative;
          margin-left: 22px;
          font-size: 1.4rem; }
          .sec_sdgs04 .bottom_box .inner_box .ul_box ul li span {
            display: inline-block;
            margin-right: 0;
            position: absolute;
            top: 0;
            left: -22px; }
        @media screen and (max-width: 767px) {
          .sec_sdgs04 .bottom_box .inner_box .ul_box ul {
            width: 100%; } }

.sec_sdgs05 {
  width: 100%;
  padding-bottom: 64px; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_sdgs05 {
      padding-bottom: 24px; } }
  .sec_sdgs05 .top_box {
    width: 100%;
    display: flex;
    margin-bottom: 128px; }
    @media screen and (max-width: 767px) {
      .sec_sdgs05 .top_box {
        margin-bottom: 63px; } }
    .sec_sdgs05 .top_box .left_box {
      width: 35%; }
      .sec_sdgs05 .top_box .left_box img {
        width: 100%;
        max-width: 352px; }
    .sec_sdgs05 .top_box .right_box {
      width: calc(65% - 56px);
      margin-left: 56px;
      display: flex;
      flex-direction: column; }
      .sec_sdgs05 .top_box .right_box .title_box {
        width: 100%;
        margin-bottom: 24px; }
        .sec_sdgs05 .top_box .right_box .title_box h4 {
          margin: 0;
          font-weight: bold;
          font-size: 2rem;
          color: #1CB9A5; }
          @media screen and (max-width: 767px) {
            .sec_sdgs05 .top_box .right_box .title_box h4 {
              font-size: 1.7rem; } }
      .sec_sdgs05 .top_box .right_box .text_box {
        margin-bottom: 49px; }
        .sec_sdgs05 .top_box .right_box .text_box p {
          margin: 0; }
        .sec_sdgs05 .top_box .right_box .text_box:last-child {
          margin-bottom: 0;
          margin-top: auto; }
      .sec_sdgs05 .top_box .right_box .link_box {
        margin-bottom: 16px; }
        .sec_sdgs05 .top_box .right_box .link_box .reprint {
          padding-top: 0; }
    @media screen and (max-width: 767px) {
      .sec_sdgs05 .top_box {
        flex-direction: column; }
        .sec_sdgs05 .top_box .left_box {
          width: 100%;
          margin-bottom: 32px; }
          .sec_sdgs05 .top_box .left_box img {
            width: 90%;
            display: block;
            margin: 0 auto; }
        .sec_sdgs05 .top_box .right_box {
          width: 100%;
          margin-left: 0; }
          .sec_sdgs05 .top_box .right_box .text_box {
            margin-bottom: 32px; } }
  .sec_sdgs05 .bottom_box {
    width: 100%; }
    .sec_sdgs05 .bottom_box .title_box {
      width: 100%;
      margin-bottom: 24px; }
      .sec_sdgs05 .bottom_box .title_box h4 {
        position: relative;
        padding-left: 28px;
        color: #202020;
        font-weight: normal;
        margin: 0; }
        .sec_sdgs05 .bottom_box .title_box h4::before {
          display: block;
          content: "";
          width: 20px;
          height: 1px;
          background-color: #1CB9A5;
          position: absolute;
          top: calc(50% - 1px);
          left: 0; }
    .sec_sdgs05 .bottom_box .gallery_wrap {
      width: 100%;
      display: flex;
      flex-wrap: wrap; }
      @media screen and (max-width: 767px) {
        .sec_sdgs05 .bottom_box .gallery_wrap {
          flex-wrap: nowrap; } }
      .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box {
        margin-right: 24px;
        margin-bottom: 32px;
        width: calc((100% - 48px) / 3);
        /*&:last-child{
            margin-right: 0;
        }*/ }
        .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box:nth-of-type(3n) {
          margin-right: 0; }
        .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .img_box {
          width: 100%;
          margin-bottom: 8px; }
          .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .img_box a {
            max-width: 325px;
            background-color: #000000; }
          .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .img_box img {
            width: 100%;
            max-width: 325px;
            vertical-align: bottom; }
        .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .text_box {
          width: 100%; }
          .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .text_box p {
            margin-top: 0;
            margin-bottom: 8px;
            font-size: 1.6rem; }
            .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .text_box p:last-child {
              margin-bottom: 0; }
            @media screen and (max-width: 767px) {
              .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box .text_box p {
                font-size: 1.5rem; } }
      @media screen and (max-width: 767px) {
        .sec_sdgs05 .bottom_box .gallery_wrap {
          flex-direction: column; }
          .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box {
            width: 100%;
            margin-right: auto;
            margin-left: auto;
            margin-bottom: 32px;
            max-width: 303px; }
            .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box:nth-of-type(3n) {
              margin-bottom: 32px;
              margin-right: auto;
              margin-left: auto; }
            .sec_sdgs05 .bottom_box .gallery_wrap .gallery_box:last-of-type {
              margin-bottom: 0; } }
  .sec_sdgs05 sup {
    vertical-align: bottom; }

.sec_sdgs06 {
  background-color: #E7F9F9;
  padding-bottom: 120px !important; }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .sec_sdgs06 {
      padding-bottom: 96px !important; } }
  @media screen and (max-width: 767px) {
    .sec_sdgs06 {
      padding-bottom: 80px !important; } }
  .sec_sdgs06 .flex_box {
    width: 100%;
    justify-content: center;
    margin-bottom: 48px; }
    .sec_sdgs06 .flex_box:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 767px) {
      .sec_sdgs06 .flex_box {
        flex-direction: column;
        align-items: center; } }
    .sec_sdgs06 .flex_box .left_box {
      width: calc((100% - 64px) / 2);
      padding-top: 24px;
      padding-left: 24px;
      padding-right: 24px;
      background-color: #ffffff;
      max-width: 480px;
      box-sizing: border-box; }
      .sec_sdgs06 .flex_box .left_box .img_box {
        width: 100%;
        margin-bottom: 16px; }
        .sec_sdgs06 .flex_box .left_box .img_box a {
          background-color: #000000;
          max-width: 432px; }
        .sec_sdgs06 .flex_box .left_box .img_box img {
          width: 100%;
          max-width: 432px;
          vertical-align: bottom; }
      .sec_sdgs06 .flex_box .left_box .text_box {
        width: 100%;
        margin-bottom: 18px; }
        .sec_sdgs06 .flex_box .left_box .text_box p {
          margin-top: 0;
          margin-bottom: 16px; }
          .sec_sdgs06 .flex_box .left_box .text_box p:last-child {
            margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs06 .flex_box .left_box {
          width: 100%;
          padding-top: 17px;
          padding-left: 17px;
          padding-right: 17px;
          margin-bottom: 24px;
          box-sizing: border-box; }
          .sec_sdgs06 .flex_box .left_box .text_box {
            margin-bottom: 17px; } }
    .sec_sdgs06 .flex_box .right_box {
      width: calc((100% - 64px) / 2);
      margin-left: 64px;
      padding-top: 24px;
      padding-left: 24px;
      padding-right: 24px;
      background-color: #ffffff;
      max-width: 480px;
      box-sizing: border-box; }
      .sec_sdgs06 .flex_box .right_box .img_box {
        width: 100%;
        margin-bottom: 16px; }
        .sec_sdgs06 .flex_box .right_box .img_box a {
          background-color: #000000;
          max-width: 432px; }
        .sec_sdgs06 .flex_box .right_box .img_box img {
          width: 100%;
          max-width: 432px;
          vertical-align: bottom; }
      .sec_sdgs06 .flex_box .right_box .text_box {
        width: 100%;
        margin-bottom: 18px; }
        .sec_sdgs06 .flex_box .right_box .text_box p {
          margin-top: 0;
          margin-bottom: 16px; }
          .sec_sdgs06 .flex_box .right_box .text_box p:last-child {
            margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        .sec_sdgs06 .flex_box .right_box {
          width: 100%;
          padding-top: 17px;
          padding-left: 17px;
          padding-right: 17px;
          margin-left: 0;
          box-sizing: border-box; }
          .sec_sdgs06 .flex_box .right_box .text_box {
            margin-bottom: 17px; } }

main.sdgs {
  padding-bottom: 0; }

/*============================
実績詳細
=============================*/
.sec_ach_conts {
  width: 100%; }
  .sec_ach_conts .title_box {
    margin-bottom: 56px; }
    .sec_ach_conts .title_box h2 {
      position: relative;
      color: #202020;
      font-weight: normal;
      margin: 0;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .sec_ach_conts .title_box h2 {
          flex-direction: column;
          align-items: flex-start; } }
    @media screen and (max-width: 767px) {
      .sec_ach_conts .title_box .sold_out::before {
        height: calc(100% - 37px); } }
    .sec_ach_conts .title_box .sold_out::after {
      display: inline-block;
      content: "売却済";
      font-size: 1.4rem;
      color: #dc6121;
      border: 1px solid #dc6121;
      margin-left: auto;
      padding-left: 12px;
      padding-right: 12px; }
      @media screen and (max-width: 767px) {
        .sec_ach_conts .title_box .sold_out::after {
          margin-left: 0px;
          margin-top: 16px; } }
  .sec_ach_conts .flex_box {
    width: 100%; }
    @media screen and (max-width: 767px) {
      .sec_ach_conts .flex_box {
        flex-direction: column; } }
    .sec_ach_conts .flex_box .left_box {
      width: 716px; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_ach_conts .flex_box .left_box {
          width: 70%; } }
      @media screen and (max-width: 767px) {
        .sec_ach_conts .flex_box .left_box {
          width: 100%; } }
    .sec_ach_conts .flex_box .right_box {
      width: calc((100% - 716px) - 40px);
      margin-left: 40px; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_ach_conts .flex_box .right_box {
          margin-left: 2%;
          width: 38%; } }
      @media screen and (max-width: 767px) {
        .sec_ach_conts .flex_box .right_box {
          width: 100%;
          margin-left: 0;
          margin-top: 40px; } }
    .sec_ach_conts .flex_box table {
      width: 100%; }
      .sec_ach_conts .flex_box table tr {
        margin-bottom: 32px;
        display: flex;
        flex-direction: column; }
        @media screen and (max-width: 1024px) and (min-width: 768px) {
          .sec_ach_conts .flex_box table tr {
            margin-bottom: 24px; } }
        @media screen and (max-width: 767px) {
          .sec_ach_conts .flex_box table tr {
            margin-bottom: 24px; } }
        .sec_ach_conts .flex_box table tr th {
          background-color: #f2f2f2;
          padding-left: 8px;
          height: 28px;
          display: flex;
          align-items: center;
          font-weight: normal;
          text-align: left; }
        .sec_ach_conts .flex_box table tr td {
          padding-left: 8px;
          padding-top: 8px; }

/*============================
トピックス一覧
=============================*/
.topics_achi .inner_wrap {
  width: 100%;
  margin-bottom: 64px; }
  @media screen and (max-width: 767px) {
    .topics_achi .inner_wrap {
      margin-bottom: 40px; } }
.topics_achi .inner_box {
  display: flex;
  width: 100%;
  margin-bottom: 56px; }
  .topics_achi .inner_box:last-child {
    margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    .topics_achi .inner_box {
      flex-direction: column;
      margin-bottom: 0; }
      .topics_achi .inner_box:last-child .topic_box:last-child {
        border-bottom: none;
        margin-bottom: 0; }
        .topics_achi .inner_box:last-child .topic_box:last-child .text_box {
          margin-bottom: 0 !important; } }
  .topics_achi .inner_box .topic_box {
    margin-right: 33px;
    width: calc((100% - 99px) / 4); }
    @media screen and (max-width: 767px) {
      .topics_achi .inner_box .topic_box {
        width: 100%;
        margin-right: 0;
        border-bottom: 1px solid #888888;
        margin-bottom: 32px; } }
    .topics_achi .inner_box .topic_box:last-child {
      margin-right: 0; }
    .topics_achi .inner_box .topic_box a {
      background-color: #ffffff; }
      .topics_achi .inner_box .topic_box a .img_box {
        width: 100%;
        max-width: 230px;
        margin-bottom: 8px;
        display: block;
        background-color: #000;
        overflow: hidden; }
        .topics_achi .inner_box .topic_box a .img_box img {
          width: 100%;
          max-width: 230px;
          vertical-align: bottom;
          transition: 0.5s; }
        @media screen and (max-width: 767px) {
          .topics_achi .inner_box .topic_box a .img_box {
            max-width: none;
            margin-bottom: 16px; }
            .topics_achi .inner_box .topic_box a .img_box img {
              max-width: none; } }
      .topics_achi .inner_box .topic_box a .text_box span {
        line-height: 1.6; }
      @media screen and (max-width: 767px) {
        .topics_achi .inner_box .topic_box a .text_box {
          margin-bottom: 32px; } }
      .topics_achi .inner_box .topic_box a .text_box .day {
        margin-bottom: 8px;
        display: block;
        position: relative; }
      .topics_achi .inner_box .topic_box a .text_box .new::after {
        content: "NEW";
        position: absolute;
        top: 0;
        right: 0;
        display: inline-block;
        font-size: 1.3rem;
        color: #fff;
        padding-right: 11.5px;
        padding-left: 11.5px;
        background-color: #dc6121; }
      .topics_achi .inner_box .topic_box a:hover .img_box img {
        transform: scale(1.1);
        opacity: 0.6;
        transition: 0.5s; }
      .topics_achi .inner_box .topic_box a:hover .text {
        color: #356CB6;
        transition: 0.5s; }
.topics_achi .btn_box a {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ffffff;
  width: 100%;
  max-width: 340px;
  height: 61px;
  border: 1px solid #356CB6;
  margin: 0 auto;
  border-radius: 30px;
  background-color: #356CB6;
  transition: 0.5s; }
  .topics_achi .btn_box a:hover {
    color: #356CB6;
    border-color: #356CB6;
    background-color: #ffffff; }
    .topics_achi .btn_box a:hover .prev {
      background-image: url(../images/prev02.svg); }
  .topics_achi .btn_box a .prev {
    width: 14px;
    height: 14px;
    display: block;
    margin-left: 24px;
    background-image: url(../images/prev01.svg);
    background-repeat: no-repeat;
    background-size: 14px;
    transition: 0.5s; }
  @media screen and (max-width: 767px) {
    .topics_achi .btn_box a {
      height: 49px; } }

/*============================
トピックス詳細
=============================*/
.sec_topic_conts {
  width: 100%; }
  .sec_topic_conts .flex_box {
    width: 100%;
    flex-direction: row; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .sec_topic_conts .flex_box {
        width: 90%;
        flex-direction: column;
        margin: 0 auto; } }
    @media screen and (max-width: 767px) {
      .sec_topic_conts .flex_box {
        width: 90%;
        flex-direction: column;
        margin: 0 auto; } }
    .sec_topic_conts .flex_box .left_box {
      box-sizing: border-box;
      width: 174px;
      border-right: 1px solid #888888; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_topic_conts .flex_box .left_box {
          width: 100%;
          border: none;
          margin-bottom: 16px; } }
      @media screen and (max-width: 767px) {
        .sec_topic_conts .flex_box .left_box {
          width: 100%;
          border: none;
          margin-bottom: 16px; } }
      .sec_topic_conts .flex_box .left_box p {
        margin: 0;
        width: 174px; }
    .sec_topic_conts .flex_box .right_box {
      box-sizing: border-box;
      margin-left: 72px;
      width: calc(100% - 174px); }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_topic_conts .flex_box .right_box {
          width: 100%;
          margin-left: 0; } }
      @media screen and (max-width: 767px) {
        .sec_topic_conts .flex_box .right_box {
          width: 100%;
          margin-left: 0; } }
    .sec_topic_conts .flex_box .main_topic {
      width: 100%;
      margin-bottom: 127px; }
      .sec_topic_conts .flex_box .main_topic .title_box {
        width: 100%;
        margin-bottom: 32px; }
        .sec_topic_conts .flex_box .main_topic .title_box h2 {
          position: relative;
          color: #202020;
          font-weight: normal;
          margin: 0;
          display: flex;
          align-items: center; }
      .sec_topic_conts .flex_box .main_topic .img_box {
        width: 100%; }
        .sec_topic_conts .flex_box .main_topic .img_box img {
          width: 65%;
          display: inline-block;
          object-fit: contain;
          font-family: 'object-fit: contain;';
          /*IE対策*/ }
      .sec_topic_conts .flex_box .main_topic .text_box {
        width: 100%; }
        .sec_topic_conts .flex_box .main_topic .text_box p:last-child {
          margin-bottom: 0; }
    .sec_topic_conts .flex_box .sub_topic {
      width: 100%;
      margin-bottom: 112px; }
      .sec_topic_conts .flex_box .sub_topic:last-child {
        margin-bottom: 0; }
      .sec_topic_conts .flex_box .sub_topic .title_box {
        margin-bottom: 33px; }
        @media screen and (max-width: 767px) {
          .sec_topic_conts .flex_box .sub_topic .title_box {
            margin-bottom: 24px; } }
        .sec_topic_conts .flex_box .sub_topic .title_box h3 {
          position: relative;
          padding-left: 28px;
          color: #202020;
          font-weight: normal;
          margin: 0; }
          .sec_topic_conts .flex_box .sub_topic .title_box h3::before {
            display: block;
            content: "";
            width: 20px;
            height: 1px;
            background-color: #356CB6;
            position: absolute;
            top: calc(30px /2);
            left: 0; }
            @media screen and (max-width: 767px) {
              .sec_topic_conts .flex_box .sub_topic .title_box h3::before {
                top: calc(22px / 2); } }
      .sec_topic_conts .flex_box .sub_topic table {
        padding-right: 25px;
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 70px; }
        .sec_topic_conts .flex_box .sub_topic table tr {
          width: 100%; }
          @media screen and (max-width: 767px) {
            .sec_topic_conts .flex_box .sub_topic table tr {
              display: flex;
              flex-direction: column; }
              .sec_topic_conts .flex_box .sub_topic table tr:first-child {
                border-top: 1px solid #202020; }
              .sec_topic_conts .flex_box .sub_topic table tr:last-child {
                border-bottom: 1px solid #202020; } }
          .sec_topic_conts .flex_box .sub_topic table tr th {
            width: 130px;
            padding-top: 16px;
            padding-bottom: 16px;
            border-top: 1px solid #cccccc;
            border-bottom: 1px solid #cccccc;
            font-weight: normal;
            text-align: left;
            padding-left: 16px; }
            @media screen and (max-width: 767px) {
              .sec_topic_conts .flex_box .sub_topic table tr th {
                width: 100%;
                padding-left: 0;
                padding-bottom: 8px;
                border-bottom: none; } }
          .sec_topic_conts .flex_box .sub_topic table tr td {
            width: calc(100% - 130px);
            border-top: 1px solid #cccccc;
            border-bottom: 1px solid #cccccc;
            padding-left: 70px;
            padding-top: 16px;
            padding-bottom: 16px; }
            @media screen and (max-width: 767px) {
              .sec_topic_conts .flex_box .sub_topic table tr td {
                width: 100%;
                padding-left: 0px;
                padding-top: 0;
                border-top: none; } }
          .sec_topic_conts .flex_box .sub_topic table tr:first-child th, .sec_topic_conts .flex_box .sub_topic table tr:first-child td {
            border-top: 1px solid #202020; }
            @media screen and (max-width: 767px) {
              .sec_topic_conts .flex_box .sub_topic table tr:first-child th, .sec_topic_conts .flex_box .sub_topic table tr:first-child td {
                border-top: none; } }
          .sec_topic_conts .flex_box .sub_topic table tr:last-child th, .sec_topic_conts .flex_box .sub_topic table tr:last-child td {
            border-bottom: 1px solid #202020; }
            @media screen and (max-width: 767px) {
              .sec_topic_conts .flex_box .sub_topic table tr:last-child th, .sec_topic_conts .flex_box .sub_topic table tr:last-child td {
                border-bottom: none; } }
      .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box {
        display: flex;
        width: 100%;
        margin-bottom: 32px; }
        @media screen and (max-width: 767px) {
          .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box {
            flex-direction: column; } }
        .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box:last-child {
          margin-bottom: 0; }
        .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box figure:first-child {
          margin-right: 34px;
          margin-left: 0;
          margin-top: 0;
          margin-bottom: 0;
          max-width: 65%; }
          @media screen and (max-width: 767px) {
            .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box figure:first-child {
              margin-bottom: 32px;
              margin-right: 0;
              max-width: none; } }
        .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box figure:last-child {
          margin-right: 0;
          margin-left: 0;
          margin-top: 0;
          margin-bottom: 0; }
          @media screen and (max-width: 767px) {
            .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box figure:last-child {
              margin-left: 0; } }
        .sec_topic_conts .flex_box .sub_topic .gallery_box .inner_box figure img {
          margin-bottom: 8px;
          width: 100%;
          object-fit: contain;
          font-family: 'object-fit: contain;';
          /*IE対策*/
          display: block; }
      .sec_topic_conts .flex_box .sub_topic .text_box {
        width: 100%;
        margin-bottom: 32px; }
        .sec_topic_conts .flex_box .sub_topic .text_box p:last-child {
          margin-bottom: 0; }
      .sec_topic_conts .flex_box .sub_topic .img_box {
        width: 100%;
        /* 修正 */
        /* --- */ }
        .sec_topic_conts .flex_box .sub_topic .img_box .disp_inline {
          display: inline-block; }
        .sec_topic_conts .flex_box .sub_topic .img_box figure {
          margin: 0; }
        .sec_topic_conts .flex_box .sub_topic .img_box img {
          display: inline-block;
          object-fit: contain;
          font-family: 'object-fit: contain;';
          /*IE対策*/ }
        .sec_topic_conts .flex_box .sub_topic .img_box .reprint {
          font-weight: 1.4em;
          padding-top: 8px;
          width: 100%;
          display: flex;
          align-items: center; }
          .sec_topic_conts .flex_box .sub_topic .img_box .reprint::after {
            content: "";
            display: block;
            width: 14px;
            height: 14px;
            margin-left: 7px;
            background-image: url(../images/topics/reprint.svg);
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain; }
          .sec_topic_conts .flex_box .sub_topic .img_box .reprint a {
            color: #356CB6; }
            .sec_topic_conts .flex_box .sub_topic .img_box .reprint a:hover {
              text-decoration: underline; }
  .sec_topic_conts .table_bottom.reprint {
    margin-top: -70px; }

/*============================
テナント募集物件
=============================*/
.tenant_wrap .flex_pctb {
  flex-wrap: wrap; }
.tenant_wrap .tenant_content {
  width: calc(50% - 32px); }
  @media screen and (max-width: 767px) {
    .tenant_wrap .tenant_content {
      width: 100%; } }
  .tenant_wrap .tenant_content:nth-child(odd) {
    margin-right: 64px; }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content:nth-child(odd) {
        margin-right: 0; } }
  .tenant_wrap .tenant_content:nth-child(n+3) {
    margin-top: 128px; }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content:nth-child(n+3) {
        margin-top: 0; } }
  @media screen and (max-width: 767px) {
    .tenant_wrap .tenant_content:nth-child(n+2) {
      margin-top: 64px; } }
  .tenant_wrap .tenant_content .cat_tag_1 {
    font-size: 1.4rem;
    padding-top: 4px;
    padding-right: 8px;
    padding-bottom: 4px;
    padding-left: 8px;
    color: #202020;
    background-color: #A2D9FF; }
  .tenant_wrap .tenant_content .cat_tag_2 {
    font-size: 1.4rem;
    padding-top: 4px;
    padding-right: 8px;
    padding-bottom: 4px;
    padding-left: 8px;
    color: #202020;
    background-color: #FFA2BE; }
  .tenant_wrap .tenant_content h2 {
    font-size: 2.2rem;
    color: #202020;
    margin-top: 16px;
    margin-bottom: 24px; }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content h2 {
        font-size: 1.8rem;
        margin-bottom: 16px; } }
  .tenant_wrap .tenant_content .tenant_img {
    margin: 0;
    padding-bottom: 32px; }
    .tenant_wrap .tenant_content .tenant_img figcaption {
      text-align: right;
      position: relative; }
      .tenant_wrap .tenant_content .tenant_img figcaption div {
        position: absolute;
        top: 0;
        right: 0; }
        .tenant_wrap .tenant_content .tenant_img figcaption div span {
          font-size: 1.4rem;
          margin-left: 8px; }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content .tenant_img {
        padding-bottom: 0;
        line-height: 0; }
        .tenant_wrap .tenant_content .tenant_img figcaption {
          text-align: left;
          line-height: 1.5; }
          .tenant_wrap .tenant_content .tenant_img figcaption div {
            position: static; }
            .tenant_wrap .tenant_content .tenant_img figcaption div span {
              font-size: 1.4rem;
              margin-left: 8px; } }
  .tenant_wrap .tenant_content .show_btn {
    border: 1px solid #356CB6; }
    .tenant_wrap .tenant_content .show_btn p {
      font-size: 1.5rem;
      color: #4275BA;
      text-align: center;
      margin: 0;
      padding-top: 12px;
      padding-bottom: 12px;
      position: relative; }
      .tenant_wrap .tenant_content .show_btn p::after {
        content: "";
        display: inline-block;
        background-image: url("../images/rental/icon_list_arrow.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 9px;
        height: 8px;
        transform: rotate(90deg);
        position: absolute;
        top: 0;
        right: 16px;
        bottom: 0;
        margin: auto 0;
        vertical-align: middle;
        transition: .5s all; }
  .tenant_wrap .tenant_content .tenant_detail {
    border-top: 1px solid #202020;
    border-bottom: 1px solid #202020; }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content .tenant_detail {
        border-top: 0;
        display: none; } }
    .tenant_wrap .tenant_content .tenant_detail dl {
      margin: 0; }
      .tenant_wrap .tenant_content .tenant_detail dl div {
        display: flex;
        max-width: 509px;
        padding-top: 16px;
        padding-right: 16px;
        padding-bottom: 16px;
        padding-left: 16px; }
        @media screen and (max-width: 1024px) and (min-width: 768px) {
          .tenant_wrap .tenant_content .tenant_detail dl div {
            display: block;
            max-width: none;
            padding-right: 0;
            padding-bottom: 0;
            padding-left: 0; } }
        @media screen and (max-width: 767px) {
          .tenant_wrap .tenant_content .tenant_detail dl div {
            display: block;
            max-width: none;
            padding-top: 0;
            padding-right: 0;
            padding-bottom: 0;
            padding-left: 0; } }
        .tenant_wrap .tenant_content .tenant_detail dl div:not(:first-child) {
          border-top: 1px solid #CCCCCC; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .tenant_wrap .tenant_content .tenant_detail dl div:not(:first-child) {
              border-top: 0; } }
          @media screen and (max-width: 767px) {
            .tenant_wrap .tenant_content .tenant_detail dl div:not(:first-child) {
              border-top: 0; } }
        .tenant_wrap .tenant_content .tenant_detail dl div p {
          font-size: 1.5rem;
          line-height: 1.5;
          margin: 0; }
          @media screen and (max-width: 767px) {
            .tenant_wrap .tenant_content .tenant_detail dl div p {
              font-size: 1.4rem; } }
        .tenant_wrap .tenant_content .tenant_detail dl div dt {
          width: 25%; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .tenant_wrap .tenant_content .tenant_detail dl div dt {
              width: auto;
              padding-top: 8px;
              padding-right: 17px;
              padding-bottom: 8px;
              padding-left: 17px;
              background-color: #F2F2F2; } }
          @media screen and (max-width: 767px) {
            .tenant_wrap .tenant_content .tenant_detail dl div dt {
              width: auto;
              padding-top: 8px;
              padding-right: 17px;
              padding-bottom: 8px;
              padding-left: 17px;
              background-color: #F2F2F2; } }
        .tenant_wrap .tenant_content .tenant_detail dl div dd {
          width: 75%; }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .tenant_wrap .tenant_content .tenant_detail dl div dd {
              width: auto;
              padding-top: 16px;
              padding-right: 17px;
              padding-bottom: 16px;
              margin: 0; } }
          @media screen and (max-width: 767px) {
            .tenant_wrap .tenant_content .tenant_detail dl div dd {
              width: auto;
              padding-top: 16px;
              padding-right: 17px;
              padding-bottom: 16px;
              margin: 0; } }
  .tenant_wrap .tenant_content .link_content {
    display: flex;
    flex-wrap: wrap;
    margin-top: 32px; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .tenant_wrap .tenant_content .link_content {
        display: block;
        margin-top: 24px; } }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content .link_content {
        display: block;
        margin-top: 24px; } }
    .tenant_wrap .tenant_content .link_content a {
      display: block;
      width: 50%;
      max-width: 225px;
      font-size: 1.5rem;
      color: #fff;
      padding-top: 18px;
      padding-bottom: 18px;
      background: linear-gradient(150deg, #6499e2 25%, #285897 65%, #285897 65%);
      border: 1px solid #6499e2;
      border-radius: 32px;
      text-align: center;
      transition: .5s all; }
      .tenant_wrap .tenant_content .link_content a::after {
        content: "";
        display: inline-block;
        background-image: url("../images/prev01.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 14px;
        height: 14px;
        margin-left: 19px;
        vertical-align: middle;
        transition: .5s all; }
      .tenant_wrap .tenant_content .link_content a:nth-child(odd) {
        margin-right: 22px; }
      .tenant_wrap .tenant_content .link_content a:nth-child(n+3) {
        margin-top: 16px; }
      .tenant_wrap .tenant_content .link_content a:hover {
        color: #356CB6;
        border: 1px solid #356CB6;
        background: rgba(255, 255, 255, 0);
        transition: .5s all; }
        .tenant_wrap .tenant_content .link_content a:hover::after {
          background-image: url("../images/prev02.svg");
          transition: .5s all; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .tenant_wrap .tenant_content .link_content a {
          width: auto;
          max-width: none;
          padding-top: 12.5px;
          padding-bottom: 12.5px; }
          .tenant_wrap .tenant_content .link_content a:nth-child(odd) {
            margin-right: 0; }
          .tenant_wrap .tenant_content .link_content a:nth-child(n+2) {
            margin-top: 16px; }
          .tenant_wrap .tenant_content .link_content a:hover {
            color: #fff;
            background: #6499e2;
            background: linear-gradient(150deg, #6499e2 25%, #285897 65%, #285897 65%);
            border: 1px solid rgba(53, 108, 182, 0);
            transition: none; }
            .tenant_wrap .tenant_content .link_content a:hover::after {
              background-image: url("../images/prev01.svg");
              transition: none; } }
      @media screen and (max-width: 767px) {
        .tenant_wrap .tenant_content .link_content a {
          width: auto;
          max-width: none;
          padding-top: 12.5px;
          padding-bottom: 12.5px; }
          .tenant_wrap .tenant_content .link_content a:nth-child(odd) {
            margin-right: 0; }
          .tenant_wrap .tenant_content .link_content a:nth-child(n+2) {
            margin-top: 16px; }
          .tenant_wrap .tenant_content .link_content a:hover {
            color: #fff;
            background: #6499e2;
            background: linear-gradient(150deg, #6499e2 25%, #285897 65%, #285897 65%);
            border: 1px solid rgba(53, 108, 182, 0);
            transition: none; }
            .tenant_wrap .tenant_content .link_content a:hover::after {
              background-image: url("../images/prev01.svg");
              transition: none; } }
  .tenant_wrap .tenant_content .vr_view_link {
    max-width: 446px;
    margin-top: 24px;
    margin-right: auto;
    margin-left: auto;
    border: 1px solid #3A6BAD;
    box-shadow: 0px 3px 6px #00000014;
    transition: .5s all; }
    .tenant_wrap .tenant_content .vr_view_link:hover {
      border: 1px solid #EBF3FF;
      background-color: #EBF3FF;
      transition: .5s all; }
      .tenant_wrap .tenant_content .vr_view_link:hover a::before {
        background-size: contain;
        transition: .5s all; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .tenant_wrap .tenant_content .vr_view_link {
        box-shadow: none;
        border-radius: 24px;
        max-width: none; }
        .tenant_wrap .tenant_content .vr_view_link:hover {
          border: 1px solid #3A6BAD;
          background-color: #FFFFFF;
          transition: none; }
          .tenant_wrap .tenant_content .vr_view_link:hover a::before {
            background-size: contain;
            transition: none; } }
    @media screen and (max-width: 767px) {
      .tenant_wrap .tenant_content .vr_view_link {
        box-shadow: none;
        margin-top: 16px;
        border-radius: 24px;
        max-width: none; }
        .tenant_wrap .tenant_content .vr_view_link:hover {
          border: 1px solid #3A6BAD;
          background-color: #FFFFFF;
          transition: none; }
          .tenant_wrap .tenant_content .vr_view_link:hover a::before {
            background-size: contain;
            transition: none; } }
    .tenant_wrap .tenant_content .vr_view_link a {
      display: block;
      font-size: 1.6rem;
      color: #3161A2;
      text-align: center;
      padding-top: 13px;
      padding-bottom: 13px; }
      .tenant_wrap .tenant_content .vr_view_link a span {
        vertical-align: middle; }
      .tenant_wrap .tenant_content .vr_view_link a::before {
        content: "";
        display: inline-block;
        background-image: url("../images/rental/vr_icon.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 60px;
        height: 30px;
        margin-right: 16.5px;
        vertical-align: middle;
        transition: .5s all; }
      .tenant_wrap .tenant_content .vr_view_link a::after {
        content: "";
        display: inline-block;
        background-image: url("../images/rental/icon_list_arrow.svg");
        background-repeat: no-repeat;
        background-size: contain;
        width: 15px;
        height: 14px;
        margin-left: 16.5px;
        vertical-align: middle;
        transition: .5s all; }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .tenant_wrap .tenant_content .vr_view_link a {
          padding-top: 11.5px;
          padding-bottom: 11.5px; }
          .tenant_wrap .tenant_content .vr_view_link a::before {
            width: 40px;
            height: 25px;
            margin-right: 8.5px;
            margin-top: 4px; } }
      @media screen and (max-width: 767px) {
        .tenant_wrap .tenant_content .vr_view_link a {
          padding-top: 11.5px;
          padding-bottom: 11.5px; }
          .tenant_wrap .tenant_content .vr_view_link a::before {
            width: 40px;
            height: 25px;
            margin-right: 8.5px;
            margin-top: 4px; } }

/*============================
実績一覧
=============================*/
.achievement_tab {
  list-style: none;
  padding: 0;
  margin-bottom: 48px;
  display: flex;
  width: 100%;
  border-bottom: solid 1px #888; }
  @media screen and (max-width: 767px) {
    .achievement_tab {
      margin-bottom: 8px; } }
  .achievement_tab li {
    width: 220px;
    border: solid 1px #497cc0;
    border-bottom: none;
    color: #497cc0;
    padding: .8rem 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px 8px 0 0; }
    .achievement_tab li:not(:last-of-type) {
      margin-right: .8rem; }
      @media screen and (max-width: 767px) {
        .achievement_tab li:not(:last-of-type) {
          margin-right: 0; } }
    .achievement_tab li:hover {
      cursor: pointer; }
    .achievement_tab li.active {
      background: transparent linear-gradient(106deg, #6499E2 0%, #285897 100%) 0% 0% no-repeat padding-box;
      border: none;
      color: #fff; }
.achievement_select {
  list-style: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 1.8rem; }
  @media screen and (max-width: 767px) {
    .achievement_select {
      margin-top: 0; } }
  .achievement_select li:not(:last-of-type) {
    border-right: 1px solid #202020; }
  .achievement_select li:hover {
    cursor: pointer; }
  .achievement_select li a {
    padding: 0 25px;
    display: block;
    transition: .5s all;
    position: relative;
    z-index: 2; }
  .achievement_select li.active a::before, .achievement_select li a:hover::before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 1em;
    background-color: #e9f1fe;
    left: 0;
    top: .3em;
    z-index: -1; }
  .achievement_select li.office-tab.active a::before, .achievement_select li.office-tab a:hover::before {
    background-color: #C5E7FF; }
  .achievement_select li.logistics-tab.active a::before, .achievement_select li.logistics-tab a:hover::before {
    background-color: #FFC8D9; }
  .achievement_select li.hotel-tab.active a::before, .achievement_select li.hotel-tab a:hover::before {
    background-color: #BCFCE4; }
  .achievement_select li.housing-tab.active a::before, .achievement_select li.housing-tab a:hover::before {
    background-color: #E5FFBE; }
  .achievement_select li.commercial-tab.active a::before, .achievement_select li.commercial-tab a:hover::before {
    background-color: #FEE6BD; }
  .achievement_select li.datacenter-tab.active a::before, .achievement_select li.datacenter-tab a:hover::before {
    background-color: #F1C5FE; }
  @media screen and (max-width: 767px) {
    .achievement_select {
      width: 100%;
      display: flex; }
      .achievement_select li {
        box-sizing: border-box;
        width: 50%;
        height: 55px;
        border: 1px solid #356CB6; }
        .achievement_select li:nth-of-type(even) {
          border-left: none; }
        .achievement_select li:not(:first-of-type):not(:nth-of-type(2)) {
          border-top: none; }
        .achievement_select li:not(:last-of-type) {
          border-right: 1px solid #356CB6; }
        .achievement_select li a {
          display: flex;
          width: 100%;
          height: 100%;
          justify-content: center;
          align-items: center;
          padding: 0; }
        .achievement_select li.active a::before, .achievement_select li a:hover::before {
          height: 100%;
          top: 0;
          transform: scaleX(100%);
          transition: 0.5s; } }
.achievement_list {
  display: flex;
  flex-wrap: wrap; }
  .achievement_list li {
    width: calc(100% / 4);
    margin: 0 0;
    padding: 0 0 40px;
    position: relative; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .achievement_list li {
        width: calc(100% / 2); } }
    @media screen and (max-width: 767px) {
      .achievement_list li {
        width: calc(100% / 2); } }
    .achievement_list li a {
      height: 100%;
      display: flex;
      flex-direction: column; }
      .achievement_list li a:hover .achievement_list_img::after {
        opacity: 1; }
      .achievement_list li a:hover .achievement_list_img img {
        transform: scale(1.1); }
    .achievement_list li dl {
      justify-content: space-between; }
      .achievement_list li dl dd {
        margin: 0; }
    .achievement_list li.sold_out::after {
      font-size: 1.4rem;
      display: block;
      width: 3em;
      padding: 0 1.2rem;
      position: absolute;
      right: 1em;
      bottom: 5.7rem;
      content: "売却済";
      color: #dc6121;
      border: solid 1px #dc6121; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .achievement_list li.sold_out {
        padding-bottom: 55px; }
        .achievement_list li.sold_out::after {
          right: auto;
          left: 1em;
          bottom: 4.1rem; } }
    @media screen and (max-width: 767px) {
      .achievement_list li.sold_out {
        padding-bottom: 55px; }
        .achievement_list li.sold_out::after {
          right: auto;
          left: 1em;
          bottom: 4.1rem; } }
  .achievement_list_img {
    position: relative;
    z-index: 1;
    padding-top: 100%;
    overflow: hidden; }
    .achievement_list_img img {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: auto;
      object-fit: cover;
      font-family: 'object-fit: cover;'; }
    .achievement_list_img::after {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background-color: rgba(0, 0, 0, 0.4);
      opacity: 0;
      transition: .5s all; }
  .achievement_list dl {
    padding: 1.7rem 1.3rem;
    margin: auto 0 0;
    display: flex;
    flex-direction: column;
    flex: 1 0 auto; }
    .achievement_list dl dt {
      background-image: url("../images/prev03.svg");
      background-repeat: no-repeat;
      background-size: 1.4rem;
      background-position: 99% .35rem;
      padding: 0 3rem .8rem 0; }
    .achievement_list dl dd {
      margin: auto 0 0;
      padding: .8rem 0 0;
      border-top: solid 1px #888; }
      @media screen and (max-width: 767px) {
        .achievement_list dl dd {
          margin: 0 0 0; } }

#animationList {
  transform-origin: top left; }

#animationList02 {
  transform-origin: top center; }

#animationList,
#animationList02 {
  padding: 0;
  list-style: none;
  transform: scale(0, 0);
  transition: .5s all;
  opacity: 0; }
  #animationList.active,
  #animationList02.active {
    transform: scale(1, 1);
    opacity: 1; }
  #animationList .item,
  #animationList02 .item {
    transition: .5s all; }
    #animationList .item.filtered,
    #animationList02 .item.filtered {
      transform: scale(1, 1);
      display: block; }
    #animationList .item, #animationList .item.concealed,
    #animationList02 .item,
    #animationList02 .item.concealed {
      transform: scale(0, 0);
      display: none; }

/*-----地域別-----*/
#area {
  width: 100%; }
  #area .base {
    margin-bottom: 24px;
    width: 100%; }
    #area .base ul {
      width: 100%;
      display: flex; }
  #area .area_build_icon_list {
    width: 100%;
    margin-bottom: 8px; }
    #area .area_build_icon_list ul {
      margin: 0;
      padding: 0;
      list-style: none;
      width: 100%;
      display: flex; }
      @media screen and (max-width: 767px) {
        #area .area_build_icon_list ul {
          flex-wrap: wrap; } }
      #area .area_build_icon_list ul li {
        padding-left: 16px;
        margin-right: 24px;
        font-size: 1.4rem;
        background-repeat: no-repeat; }
        @media screen and (max-width: 767px) {
          #area .area_build_icon_list ul li {
            margin-bottom: 16px; } }
        #area .area_build_icon_list ul li:nth-child(1) {
          color: #3E97D1;
          background-image: url(../images/achievement/area/area_build_icons01.svg); }
        #area .area_build_icon_list ul li:nth-child(2) {
          color: #D13E88;
          background-image: url(../images/achievement/area/area_build_icons02.svg); }
        #area .area_build_icon_list ul li:nth-child(3) {
          color: #3ED1A9;
          background-image: url(../images/achievement/area/area_build_icons03.svg); }
        #area .area_build_icon_list ul li:nth-child(4) {
          color: #96D13E;
          background-image: url(../images/achievement/area/area_build_icons04.svg); }
        #area .area_build_icon_list ul li:nth-child(5) {
          color: #D1A03E;
          background-image: url(../images/achievement/area/area_build_icons05.svg); }
        #area .area_build_icon_list ul li:nth-child(6) {
          color: #923ED1;
          background-image: url(../images/achievement/area/area_build_icons06.svg); }
  #area ul li .map_box {
    width: 100%;
    margin-bottom: 56px; }
    #area ul li .map_box figure {
      margin: 0;
      width: 100%; }
  #area ul li .list_wrap {
    width: 100%;
    display: flex; }
    @media screen and (max-width: 767px) {
      #area ul li .list_wrap {
        flex-direction: column; } }
    #area ul li .list_wrap .list_box {
      margin-right: 62px;
      width: calc((100% - 124px) / 3); }
      @media screen and (max-width: 767px) {
        #area ul li .list_wrap .list_box {
          width: 100%;
          margin-right: 0; } }
      #area ul li .list_wrap .list_box:last-child {
        margin-right: 0; }
      #area ul li .list_wrap .list_box .list_block {
        width: 100%;
        margin-bottom: 32px; }
        #area ul li .list_wrap .list_box .list_block p {
          padding-bottom: 8px;
          border-bottom: 1px solid #888888;
          font-size: 1.6rem;
          margin-bottom: 8px; }
          @media screen and (max-width: 767px) {
            #area ul li .list_wrap .list_box .list_block p {
              position: relative; }
              #area ul li .list_wrap .list_box .list_block p::after {
                display: block;
                content: "";
                position: absolute;
                top: 5px;
                right: 0;
                width: 0;
                height: 0;
                border-top: 6px solid transparent;
                border-bottom: 6px solid transparent;
                border-left: 10px solid #707070;
                transition: 0.5s; }
              #area ul li .list_wrap .list_box .list_block p:hover {
                cursor: pointer; } }
        @media screen and (max-width: 767px) {
          #area ul li .list_wrap .list_box .list_block p.active::after {
            transform: rotate(90deg);
            transition: 0.5s; } }
        @media screen and (max-width: 767px) {
          #area ul li .list_wrap .list_box .list_block .build_item {
            display: none; } }
        #area ul li .list_wrap .list_box .list_block dl {
          width: 100%;
          display: flex;
          margin-bottom: 8px;
          /* 修正 */
          /* --- */ }
          #area ul li .list_wrap .list_box .list_block dl:last-child {
            margin-bottom: 0; }
          @media screen and (max-width: 767px) {
            #area ul li .list_wrap .list_box .list_block dl {
              margin: 0;
              margin-bottom: 8px; } }
          #area ul li .list_wrap .list_box .list_block dl dt {
            /*width: 23px;*/
            width: 25px;
            position: relative;
            height: 30px;
            text-align: center;
            font-size: 1.4rem;
            box-sizing: border-box;
            padding-top: 2px;
            padding-left: 1px;
            padding-right: 1px;
            background-repeat: no-repeat;
            background-size: 25px 31px;
            /*&::after{
              display: block;
              content: "";
              width: 24px;
              height: 30px;
              position: absolute;
              top: 0;
              left: 0;
              background-size: 24px;
              background-repeat:no-repeat;
              background-position: center;
              z-index: -1;
            }*/ }
          #area ul li .list_wrap .list_box .list_block dl .office-build {
            color: #3E97D1;
            background-image: url(../images/achievement/area/office-build.svg);
            /*&::after{
              background-image: url(../images/achievement/area/office-build.svg);
            }*/ }
          #area ul li .list_wrap .list_box .list_block dl .logistics-build {
            color: #D13E88;
            background-image: url(../images/achievement/area/logistics-build.svg);
            /*&::after{
              background-image: url(../images/achievement/area/logistics-build.svg);
            }*/ }
          #area ul li .list_wrap .list_box .list_block dl .hotel-build {
            color: #3ED1A9;
            background-image: url(../images/achievement/area/hotel-build.svg);
            /*&::after{
              background-image: url(../images/achievement/area/hotel-build.svg);
            }*/ }
          #area ul li .list_wrap .list_box .list_block dl .housing-build {
            color: #96D13E;
            background-image: url(../images/achievement/area/housing-build.svg);
            /* &::after{
               background-image: url(../images/achievement/area/housing-build.svg);
             }*/ }
          #area ul li .list_wrap .list_box .list_block dl .commerce-build {
            color: #D1A03E;
            background-image: url(../images/achievement/area/commerce-build.svg);
            /* &::after{
               background-image: url(../images/achievement/area/commerce-build.svg);
             }*/ }
          #area ul li .list_wrap .list_box .list_block dl .deta-build {
            color: #923ED1;
            background-image: url(../images/achievement/area/deta-build.svg);
            /* &::after{
               background-image: url(../images/achievement/area/deta-build.svg);
             }*/ }
          #area ul li .list_wrap .list_box .list_block dl dd {
            margin-left: 8px;
            width: calc(100% - 33px);
            height: auto;
            word-break: break-word;
            box-sizing: border-box;
            display: flex;
            align-items: center; }
            #area ul li .list_wrap .list_box .list_block dl dd a {
              font-size: 1.5rem;
              color: #356CB6;
              transition: 0.5s; }
              @media screen and (max-width: 767px) {
                #area ul li .list_wrap .list_box .list_block dl dd a {
                  font-size: 1.4rem; } }
              #area ul li .list_wrap .list_box .list_block dl dd a:hover {
                text-decoration: underline;
                transition: 0.5s; }
        #area ul li .list_wrap .list_box .list_block .sold_out dd {
          position: relative;
          padding-right: 81px; }
          #area ul li .list_wrap .list_box .list_block .sold_out dd::after {
            display: block;
            content: "売却済";
            position: absolute;
            font-size: 1.4rem;
            width: 65px;
            text-align: center;
            color: #DC6121;
            border: 1px solid #DC6121;
            top: 0;
            right: 0; }

/*===========================
ソリューション
=============================*/
.sec_solution {
  width: 100%; }
  .sec_solution .flex_box {
    width: 100%;
    flex-direction: row;
    justify-content: center; }
    @media screen and (max-width: 1024px) and (min-width: 768px) {
      .sec_solution .flex_box {
        width: 90%;
        flex-direction: column;
        margin: 0 auto; } }
    @media screen and (max-width: 767px) {
      .sec_solution .flex_box {
        width: 90%;
        flex-direction: column;
        margin: 0 auto; } }
    .sec_solution .flex_box .right_box {
      box-sizing: border-box;
      width: calc(100% - 174px); }
      @media screen and (max-width: 1024px) and (min-width: 768px) {
        .sec_solution .flex_box .right_box {
          width: 100%;
          margin-left: 0; } }
      @media screen and (max-width: 767px) {
        .sec_solution .flex_box .right_box {
          width: 100%;
          margin-left: 0; } }
    .sec_solution .flex_box .main_topic {
      width: 100%;
      margin-bottom: 80px; }
      .sec_solution .flex_box .main_topic .title_box {
        width: 100%;
        margin-bottom: 32px; }
        .sec_solution .flex_box .main_topic .title_box h2 {
          position: relative;
          /* 修正 */
          padding-left: 15px;
          /* --- */
          color: #202020;
          font-weight: normal;
          margin: 0;
          display: flex;
          align-items: center; }
          .sec_solution .flex_box .main_topic .title_box h2::before {
            position: absolute;
            display: block;
            content: "";
            top: 0;
            left: 0;
            width: 50px;
            height: 100%;
            background-color: #e5effe;
            z-index: -1; }
      .sec_solution .flex_box .main_topic .text_box {
        width: 100%; }
        .sec_solution .flex_box .main_topic .text_box p:last-child {
          margin-bottom: 0; }
    .sec_solution .flex_box .sub_topic {
      width: 100%;
      margin-bottom: 112px; }
      .sec_solution .flex_box .sub_topic:last-child {
        margin-bottom: 0; }
      .sec_solution .flex_box .sub_topic .title_box {
        margin-bottom: 33px; }
        @media screen and (max-width: 767px) {
          .sec_solution .flex_box .sub_topic .title_box {
            margin-bottom: 24px; } }
        .sec_solution .flex_box .sub_topic .title_box h3 {
          position: relative;
          padding-left: 28px;
          color: #202020;
          font-weight: normal;
          margin: 0; }
          .sec_solution .flex_box .sub_topic .title_box h3::before {
            display: block;
            content: "";
            width: 20px;
            height: 1px;
            background-color: #356CB6;
            position: absolute;
            top: calc(30px /2);
            left: 0; }
            @media screen and (max-width: 767px) {
              .sec_solution .flex_box .sub_topic .title_box h3::before {
                top: calc(22px / 2); } }
      .sec_solution .flex_box .sub_topic ol {
        margin: 0;
        margin-bottom: 24px; }
        .sec_solution .flex_box .sub_topic ol li {
          line-height: 1.6;
          margin-bottom: 16px; }
          @media screen and (max-width: 767px) {
            .sec_solution .flex_box .sub_topic ol li {
              margin-bottom: 8px; } }
          .sec_solution .flex_box .sub_topic ol li:last-child {
            margin-bottom: 0; }
      .sec_solution .flex_box .sub_topic table {
        padding-right: 25px;
        width: 100%;
        border-collapse: collapse;
        margin-bottom: 70px; }
        .sec_solution .flex_box .sub_topic table tr {
          width: 100%; }
          @media screen and (max-width: 767px) {
            .sec_solution .flex_box .sub_topic table tr {
              display: flex;
              flex-direction: column; }
              .sec_solution .flex_box .sub_topic table tr:first-child {
                border-top: 1px solid #202020; }
              .sec_solution .flex_box .sub_topic table tr:last-child {
                border-bottom: 1px solid #202020; } }
          .sec_solution .flex_box .sub_topic table tr th {
            width: 130px;
            padding-top: 16px;
            padding-bottom: 16px;
            border-top: 1px solid #cccccc;
            border-bottom: 1px solid #cccccc;
            font-weight: normal;
            text-align: left;
            padding-left: 16px; }
            @media screen and (max-width: 767px) {
              .sec_solution .flex_box .sub_topic table tr th {
                width: 100%;
                padding-left: 0;
                padding-bottom: 8px;
                border-bottom: none; } }
          .sec_solution .flex_box .sub_topic table tr td {
            width: calc(100% - 130px);
            border-top: 1px solid #cccccc;
            border-bottom: 1px solid #cccccc;
            padding-left: 70px;
            padding-top: 16px;
            padding-bottom: 16px; }
            @media screen and (max-width: 767px) {
              .sec_solution .flex_box .sub_topic table tr td {
                width: 100%;
                padding-left: 0px;
                padding-top: 0;
                border-top: none; } }
          .sec_solution .flex_box .sub_topic table tr:first-child th, .sec_solution .flex_box .sub_topic table tr:first-child td {
            border-top: 1px solid #202020; }
            @media screen and (max-width: 767px) {
              .sec_solution .flex_box .sub_topic table tr:first-child th, .sec_solution .flex_box .sub_topic table tr:first-child td {
                border-top: none; } }
          .sec_solution .flex_box .sub_topic table tr:last-child th, .sec_solution .flex_box .sub_topic table tr:last-child td {
            border-bottom: 1px solid #202020; }
            @media screen and (max-width: 767px) {
              .sec_solution .flex_box .sub_topic table tr:last-child th, .sec_solution .flex_box .sub_topic table tr:last-child td {
                border-bottom: none; } }
      .sec_solution .flex_box .sub_topic .gallery_box .inner_box {
        display: flex;
        width: 100%;
        margin-bottom: 32px; }
        @media screen and (max-width: 767px) {
          .sec_solution .flex_box .sub_topic .gallery_box .inner_box {
            flex-direction: column; } }
        .sec_solution .flex_box .sub_topic .gallery_box .inner_box:last-child {
          margin-bottom: 0; }
        .sec_solution .flex_box .sub_topic .gallery_box .inner_box figure:first-child {
          margin-right: 34px;
          margin-left: 0;
          margin-top: 0;
          margin-bottom: 0;
          max-width: 65%; }
          @media screen and (max-width: 767px) {
            .sec_solution .flex_box .sub_topic .gallery_box .inner_box figure:first-child {
              margin-bottom: 32px;
              margin-right: 0;
              max-width: none; } }
        .sec_solution .flex_box .sub_topic .gallery_box .inner_box figure:last-child {
          margin-right: 0;
          margin-left: 0;
          margin-top: 0;
          margin-bottom: 0; }
          @media screen and (max-width: 767px) {
            .sec_solution .flex_box .sub_topic .gallery_box .inner_box figure:last-child {
              margin-left: 0; } }
        .sec_solution .flex_box .sub_topic .gallery_box .inner_box figure img {
          margin-bottom: 8px;
          width: 100%;
          object-fit: contain;
          font-family: 'object-fit: contain;';
          /*IE対策*/
          display: block; }
      .sec_solution .flex_box .sub_topic .text_box {
        width: 100%;
        margin-bottom: 32px; }
        .sec_solution .flex_box .sub_topic .text_box p:last-child {
          margin-bottom: 0; }
      .sec_solution .flex_box .sub_topic .img_box {
        width: 100%;
        /* 修正 */
        /* --- */ }
        .sec_solution .flex_box .sub_topic .img_box .disp_inline {
          display: inline-block; }
        .sec_solution .flex_box .sub_topic .img_box figure {
          margin: 0;
          margin-bottom: 56px; }
          .sec_solution .flex_box .sub_topic .img_box figure:last-child {
            margin-bottom: 0; }
        .sec_solution .flex_box .sub_topic .img_box img {
          display: inline-block;
          object-fit: contain;
          font-family: 'object-fit: contain;';
          /*IE対策*/ }
        .sec_solution .flex_box .sub_topic .img_box .reprint {
          font-weight: 1.4em;
          padding-top: 8px;
          width: 100%;
          display: flex;
          align-items: center; }
          .sec_solution .flex_box .sub_topic .img_box .reprint::after {
            content: "";
            display: block;
            width: 14px;
            height: 14px;
            margin-left: 7px;
            background-image: url(../images/topics/reprint.svg);
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain; }
          .sec_solution .flex_box .sub_topic .img_box .reprint a {
            color: #356CB6; }
            .sec_solution .flex_box .sub_topic .img_box .reprint a:hover {
              text-decoration: underline; }
  .sec_solution .table_bottom.reprint {
    margin-top: -70px; }

@media all and (max-width: 600px), (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .map_box figure {
    display: block;
    width: calc(100% - 80px);
    /*   }
     }
     #animationList02{
       .filtered{
         transform: scale3d(1, 1, 1) !important;
       }
       .concealed{
         transform: scale3d(0.001, 0.001, 1) !important;*/ }
    .map_box figure img {
      width: 100%;
      margin: 0 auto; }

  .sec_bus .btn_box a .prev {
    padding: 1px; }

  .sec_ach .title_box .btn_box a .prev,
  .sec_topic .title_box .btn_box a .prev {
    padding: 1px;
    background-size: contain; }

  .sec_ach .inner_box .achiv_box .text_box a:first-child {
    background-size: 16px; }

  .sec_env .left_box .inner_wrap .inner_box .btn_box a .prev,
  .sec_tenant .inner_box .btn_box a .prev {
    padding: 1px;
    background-size: contain; }

  .achievement_list dl dt {
    background-size: 16px; }

  #area ul li .list_wrap .list_box .list_block dl dt {
    background-size: 24px 30px;
    padding-right: 2px; }

  .reprint::after {
    padding: 1px; }

  .topics_achi .btn_box a .prev {
    padding: 1px;
    background-size: contain; }

  .tenant_wrap .tenant_content .link_content a::after {
    padding: 1px; } }
.p-detail-action {
  padding: 122px 0 120px; }
  @media screen and (max-width: 767px) {
    .p-detail-action {
      padding: 60px 0 64px; } }
  .p-detail-action .fnt-xxxl {
    font-weight: 700;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .p-detail-action .fnt-xxxl {
        margin-bottom: 32px; } }
  .p-detail-action .c-list-problem {
    margin: 50px 0 0;
    padding: 0 102px; }
    @media screen and (max-width: 767px) {
      .p-detail-action .c-list-problem {
        margin: 42px 0 0;
        padding: 0; } }
  .p-detail-action .c-box-example {
    margin: 48px 0 0; }
    @media screen and (max-width: 767px) {
      .p-detail-action .c-box-example {
        margin: 40px 0 0; } }
  .p-detail-action .c-box-list {
    margin: 60px 0 0; }
  .p-detail-action .c-btn-wrap {
    margin: 64px 0 0; }
    @media screen and (max-width: 767px) {
      .p-detail-action .c-btn-wrap {
        margin: 48px 0 0; } }
  .p-detail-action .c-text-lead {
    margin: 0 0 100px;
    padding: 0 100px; }
    @media screen and (max-width: 767px) {
      .p-detail-action .c-text-lead {
        margin: 0 0 48px;
        padding: 0; } }

.p-detail-achievement {
  background-color: #eef4ff;
  padding: 48px 0 56px; }
  @media screen and (max-width: 767px) {
    .p-detail-achievement {
      padding: 24px 0 80px; } }
  .p-detail-achievement .c-ttl-desc {
    margin: 32px 0 0; }
    @media screen and (max-width: 767px) {
      .p-detail-achievement .c-ttl-desc {
        margin: 30px 0 0; } }
  .p-detail-achievement .c-box-problem {
    margin: 40px 0 0; }
    @media screen and (max-width: 767px) {
      .p-detail-achievement .c-box-problem {
        margin: 16px 0 0; } }
  .p-detail-achievement .c-box-detail {
    margin: 40px 0 0; }
    @media screen and (max-width: 767px) {
      .p-detail-achievement .c-box-detail {
        margin: 32px 0 0; } }

.c-speech-bubble {
  position: relative;
  background-image: linear-gradient(180deg, #eff5ff, #d1e2fc);
  padding: 22px 40px;
  border-radius: 156px;
  word-break: break-word; }
  @media screen and (max-width: 767px) {
    .c-speech-bubble {
      padding: 16px 32px; } }
  .c-speech-bubble:before {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    bottom: -25px;
    transform: translateX(-50%);
    background-color: #d1e2fc;
    width: 30px;
    height: 26px;
    clip-path: polygon(0 0, 100% 0%, 50% 100%); }
  .c-speech-bubble p {
    font-size: 22px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      .c-speech-bubble p {
        font-size: 18px; } }

.c-list-problem {
  margin: 0;
  padding: 0;
  word-break: break-word;
  list-style: none; }
  .c-list-problem li {
    display: flex;
    justify-content: center;
    padding: 24px 40px;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08); }
    @media screen and (max-width: 767px) {
      .c-list-problem li {
        padding: 24px 16px; } }
    .c-list-problem li:not(:first-child) {
      margin: 16px 0 0; }
      @media screen and (max-width: 767px) {
        .c-list-problem li:not(:first-child) {
          margin: 8px 0 0; } }
    .c-list-problem li img {
      width: 22px;
      height: 22px;
      margin: 0 10px 0 0; }
    .c-list-problem li p {
      font-size: 16px; }
      @media screen and (max-width: 767px) {
        .c-list-problem li p {
          font-size: 15px; } }

.c-box-example {
  padding: 32px;
  border: 1px solid #356cb6;
  word-break: break-word; }
  @media screen and (max-width: 767px) {
    .c-box-example {
      padding: 24px 16px; } }
  .c-box-example__list {
    margin: 24px 0 0;
    padding: 0;
    list-style: none; }
    .c-box-example__list li {
      display: flex; }
      .c-box-example__list li:before {
        content: '';
        display: block;
        background-color: #356cb6;
        width: 10px;
        height: 10px;
        flex: 0 0 auto;
        margin: 6px 8px 0 0;
        border-radius: 50%; }
      .c-box-example__list li:not(:first-child) {
        margin: 14px 0 0; }
      .c-box-example__list li p {
        font-size: 16px; }
        @media screen and (max-width: 767px) {
          .c-box-example__list li p {
            font-size: 15px; } }

.c-label {
  display: inline-block;
  background-color: #356cb6;
  padding: 4px 16px;
  word-break: break-word; }
  .c-label p {
    color: #fff;
    font-size: 14px; }

.c-ttl-line {
  position: relative;
  color: #202020;
  font-size: 20px;
  padding: 0 0 0 22px; }
  @media screen and (max-width: 767px) {
    .c-ttl-line {
      padding: 0 0 0 12px;
      font-size: 16px; } }
  .c-ttl-line:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-color: #356cb6;
    width: 8px;
    height: 96%; }
    @media screen and (max-width: 767px) {
      .c-ttl-line:before {
        width: 5px; } }

.c-ttl-desc {
  color: #356cb6;
  font-size: 20px;
  font-weight: 700; }
  @media screen and (max-width: 767px) {
    .c-ttl-desc {
      font-size: 18px; } }

.c-box-problem__item {
  display: flex;
  align-items: flex-start; }
  @media screen and (max-width: 767px) {
    .c-box-problem__item {
      flex-direction: column; } }
  .c-box-problem__item dt {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background-image: linear-gradient(170deg, #558bd5, #315584);
    margin: 0 26px 0 0;
    padding: 16px 44px 16px 32px;
    flex: 0 0 auto;
    color: #fff;
    font-size: 16px;
    word-break: break-word;
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      .c-box-problem__item dt {
        margin: 0;
        padding: 8px 16px;
        font-size: 14px; } }
    .c-box-problem__item dt:before, .c-box-problem__item dt:after {
      content: '';
      display: block;
      position: absolute;
      right: 0;
      background-color: #eef4ff;
      width: 12px;
      height: 50%; }
      @media screen and (max-width: 767px) {
        .c-box-problem__item dt:before, .c-box-problem__item dt:after {
          display: none; } }
    .c-box-problem__item dt:before {
      top: 0;
      transform: skew(0deg, 40deg);
      transform-origin: top right; }
    .c-box-problem__item dt:after {
      bottom: 0;
      transform: skew(0deg, -40deg);
      transform-origin: right bottom; }
  .c-box-problem__item dd {
    margin: 0; }
    @media screen and (max-width: 767px) {
      .c-box-problem__item dd {
        margin: 24px 0 0; } }
    .c-box-problem__item dd ul {
      margin: 0;
      padding: 0;
      list-style: none; }
      .c-box-problem__item dd ul li:not(:first-child) {
        margin: 16px 0 0; }
      .c-box-problem__item dd ul li.-single p:before {
        content: none; }
      .c-box-problem__item dd ul li p {
        display: flex;
        font-size: 16px; }
        @media screen and (max-width: 767px) {
          .c-box-problem__item dd ul li p {
            font-size: 15px; } }
        .c-box-problem__item dd ul li p:before {
          content: '';
          background-color: #356cb6;
          width: 6px;
          height: 6px;
          flex: 0 0 auto;
          margin: 8px 8px 0 0;
          border-radius: 50%; }

.c-box-detail {
  background-color: #fff;
  padding: 40px 26px 40px 25px;
  word-break: break-word; }
  @media screen and (max-width: 767px) {
    .c-box-detail {
      padding: 24px 16px; } }
  .c-box-detail__main {
    display: grid;
    grid-template-columns: 240px auto;
    place-items: flex-start;
    padding: 0 14px 0 15px; }
    @media screen and (max-width: 767px) {
      .c-box-detail__main {
        grid-template-columns: none;
        padding: 0; } }
    .c-box-detail__main figure {
      grid-area: 1 / 1 / 4 / 2;
      margin: 0; }
      @media screen and (max-width: 767px) {
        .c-box-detail__main figure {
          grid-area: 2 / 1 / 3 / 2;
          width: calc(100% - 32px);
          margin: 16px 0 0;
          padding: 0 16px; } }
      .c-box-detail__main figure img {
        width: 200px; }
        @media screen and (max-width: 767px) {
          .c-box-detail__main figure img {
            width: 100%; } }
      .c-box-detail__main figure figcaption {
        margin: 8px 0 0;
        font-size: 14px; }
    .c-box-detail__main .c-label {
      grid-area: 1 / 2 / 2 / 3; }
      @media screen and (max-width: 767px) {
        .c-box-detail__main .c-label {
          grid-area: 1 / 1 / 2 / 2;
          width: calc(100% - 16px);
          padding: 4px 8px; } }
    .c-box-detail__main ul {
      grid-area: 2 / 2 / 3 / 3;
      margin: 24px 0 0;
      padding: 0;
      list-style: none; }
      @media screen and (max-width: 767px) {
        .c-box-detail__main ul {
          grid-area: 3 / 1 / 4 / 2;
          margin: 32px 0 0; } }
      .c-box-detail__main ul li:not(:first-child) {
        margin: 16px 0 0; }
      .c-box-detail__main ul li.-single p:before {
        content: none; }
      .c-box-detail__main ul li p {
        display: flex;
        font-size: 16px; }
        @media screen and (max-width: 767px) {
          .c-box-detail__main ul li p {
            font-size: 15px; } }
        .c-box-detail__main ul li p:before {
          content: '';
          background-color: #356cb6;
          width: 6px;
          height: 6px;
          flex: 0 0 auto;
          margin: 8px 8px 0 0;
          border-radius: 50%; }
  .c-box-detail > figure {
    flex: 0 0 auto;
    margin: 30px 0 0; }
    @media screen and (max-width: 767px) {
      .c-box-detail > figure {
        margin: 32px 0 0; } }
    .c-box-detail > figure.develop img {
      width: 973px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        .c-box-detail > figure.develop img {
          width: 100%; } }
    .c-box-detail > figure.spc img {
      width: 896px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        .c-box-detail > figure.spc img {
          width: 100%; } }

.p-link-solution {
  padding: 56px 0 80px; }
  @media screen and (max-width: 767px) {
    .p-link-solution {
      padding: 48px 0 56px; } }
  .p-link-solution .c-btn-wrap {
    margin: 64px 0 0; }
    @media screen and (max-width: 767px) {
      .p-link-solution .c-btn-wrap {
        margin: 48px 0 0; } }

.c-btn-wrap {
  display: flex;
  justify-content: center; }

.c-btn-back {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 340px;
  height: 62px;
  border: 1px solid #356CB6;
  border-radius: 49px;
  transition: background-color .5s; }
  @media screen and (max-width: 767px) {
    .c-btn-back {
      width: 100%;
      height: 48px; } }
  .c-btn-back:hover {
    background-color: #356CB6; }
    .c-btn-back:hover .c-btn-back__icon {
      background-color: #356CB6;
      border: 1px solid #fff; }
      .c-btn-back:hover .c-btn-back__icon:before {
        border-top: 1px solid #fff;
        border-left: 1px solid #fff; }
    .c-btn-back:hover span {
      color: #fff; }
  .c-btn-back__icon {
    position: relative;
    width: 12px;
    height: 12px;
    margin: 0 24px 0 0;
    border: 1px solid #356CB6;
    border-radius: 50%;
    transition: .5s; }
    .c-btn-back__icon:before {
      content: '';
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-30%, -50%) rotate(-45deg);
      width: 4px;
      height: 4px;
      border-top: 1px solid #356CB6;
      border-left: 1px solid #356CB6;
      transition: .5s; }
  .c-btn-back span {
    color: #356CB6;
    font-size: 1.5rem;
    transition: color .5s; }

.c-box-desc {
  margin: 0;
  padding: 0 100px;
  list-style: none; }
  @media screen and (max-width: 767px) {
    .c-box-desc {
      padding: 0; } }
  .c-box-desc li:not(:first-child) {
    margin: 16px 0 0; }
  .c-box-desc li p {
    font-size: 1.6rem; }
  .c-box-desc + .c-box-example {
    margin: 56px 0 0; }
    @media screen and (max-width: 767px) {
      .c-box-desc + .c-box-example {
        margin: 40px 0 0; } }

.c-box-list {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none; }
  @media screen and (max-width: 767px) {
    .c-box-list {
      flex-direction: column; } }
  .c-box-list > li {
    width: calc(50% - 22px); }
    @media screen and (max-width: 767px) {
      .c-box-list > li {
        width: 100%; } }
    @media screen and (max-width: 767px) {
      .c-box-list > li:not(:first-child) {
        margin: 56px 0 0; } }
  .c-box-list__detail {
    margin: 16px 0 24px;
    border-top: 1px solid #202020;
    border-bottom: 1px solid #202020; }
    @media screen and (max-width: 767px) {
      .c-box-list__detail {
        margin: 16px 0; } }
    .c-box-list__detail__item {
      display: flex;
      min-height: 55px;
      padding: 15px 0;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        .c-box-list__detail__item {
          flex-direction: column;
          min-height: 89px;
          padding: 16px 0; } }
      .c-box-list__detail__item:not(:first-child) {
        border-top: 1px solid #ccc; }
      .c-box-list__detail__item dt {
        width: 130px;
        flex: 0 0 auto;
        padding: 0 16px;
        font-size: 1.6rem;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          .c-box-list__detail__item dt {
            width: auto;
            padding: 0; } }
      .c-box-list__detail__item dd {
        margin: 0;
        padding: 0 24px;
        font-size: 1.6rem; }
        @media screen and (max-width: 767px) {
          .c-box-list__detail__item dd {
            margin: 8px 0 0;
            padding: 0; } }
  .c-box-list__banner {
    display: flex;
    justify-content: center; }
  .c-box-list__button a {
    width: 100%; }

.c-ttl-list {
  position: relative;
  padding: 0 0 0 28px;
  color: #202020;
  font-size: 2.2rem; }
  @media screen and (max-width: 767px) {
    .c-ttl-list {
      padding: 0 0 0 26px;
      font-size: 1.8rem; } }
  .c-ttl-list:before {
    content: '';
    display: block;
    position: absolute;
    top: 16px;
    left: 0;
    background-color: #356CB6;
    width: 20px;
    height: 1px; }
    @media screen and (max-width: 767px) {
      .c-ttl-list:before {
        top: 12px;
        width: 18px; } }
  .c-ttl-list span {
    display: block;
    margin: 6px 0 0;
    font-size: 1.6rem;
    font-weight: 700; }

.sec_main .c-link-banner {
  margin: 63px 0 -22px; }
  @media screen and (max-width: 767px) {
    .sec_main .c-link-banner {
      margin: 54px 19px -20px; } }

.c-link-banner {
  display: flex;
  justify-content: center; }
  .c-link-banner a {
    display: flex;
    justify-content: center;
    position: relative;
    width: 641px; }
    @media screen and (max-width: 767px) {
      .c-link-banner a {
        width: 100%; } }
    .c-link-banner a .text {
      position: absolute;
      top: 24px;
      left: 0;
      right: 0;
      color: #fff;
      font-size: 3.8rem;
      text-align: center;
      z-index: 1; }
      @media screen and (max-width: 767px) {
        .c-link-banner a .text {
          top: 8vw;
          font-size: 2.6rem; } }
    .c-link-banner a .c-btn-link {
      position: absolute;
      left: 50%;
      bottom: 18px;
      transform: translateX(-50%);
      z-index: 1; }
      @media screen and (max-width: 767px) {
        .c-link-banner a .c-btn-link {
          top: 19.4vw;
          bottom: auto; } }
    .c-link-banner a:hover img {
      transform: none; }
      .c-link-banner a:hover img.-default {
        position: absolute;
        top: 0;
        left: 0;
        pointer-events: none;
        opacity: 0; }
      .c-link-banner a:hover img.-hover {
        position: static;
        pointer-events: auto;
        opacity: 1;
        z-index: 0; }
    @media screen and (max-width: 767px) {
      .c-link-banner a img.-default {
        display: none; } }
    .c-link-banner a img.-hover {
      position: absolute;
      top: 0;
      left: 0;
      pointer-events: none;
      z-index: -1; }
      @media screen and (max-width: 767px) {
        .c-link-banner a img.-hover {
          display: none; } }
    .c-link-banner a img.-sp {
      display: none !important; }
      @media screen and (max-width: 767px) {
        .c-link-banner a img.-sp {
          display: block !important; } }

.c-btn-link {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  width: 152px;
  height: 26px;
  border-radius: 14px;
  color: #4471ae;
  font-size: 1.4rem; }
  .c-btn-link__icon {
    position: relative;
    width: 12px;
    height: 12px;
    margin: 0 0 0 8px;
    border: 1px solid #406BA5;
    border-radius: 50%; }
    .c-btn-link__icon:before {
      content: '';
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-70%, -50%) rotate(135deg);
      width: 4px;
      height: 4px;
      border-top: 1px solid #406BA5;
      border-left: 1px solid #406BA5;
      transition: .5s; }

.c-text-lead {
  font-size: 1.6rem; }

@media screen and (max-width: 767px) {
  .pc_only {
    display: none !important; } }

.c-btn__outside, .c-btn__arrow {
  transition: .5s all ease-out;
  border: solid 1px #3161A2;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08); }
  @media screen and (max-width: 1024px) and (min-width: 768px) {
    .c-btn__outside, .c-btn__arrow {
      overflow: hidden; } }
  @media screen and (max-width: 767px) {
    .c-btn__outside, .c-btn__arrow {
      overflow: hidden; } }
  .c-btn__outside:hover, .c-btn__arrow:hover {
    border-color: #EBF3FF;
    background-color: #EBF3FF; }
  .c-btn__outside a, .c-btn__arrow a {
    font-size: 16px;
    line-height: 1.5em;
    padding: 1em;
    box-sizing: border-box;
    letter-spacing: .96px;
    color: #3161A2;
    display: flex;
    align-items: center;
    justify-content: center; }
    .c-btn__outside a::after, .c-btn__arrow a::after {
      content: "";
      display: block;
      width: 15px;
      min-width: 15px;
      height: 1em;
      margin-left: 8px;
      background-repeat: no-repeat;
      background-position: 100% 50%;
      background-size: contain; }
.c-btn__outside a::after {
  background-image: url(../images/topics/reprint.svg) !important; }
.c-btn__outside.link_content a::after {
  background-image: url(../images/topics/reprint_wh.svg) !important; }
.c-btn__outside.link_content a:hover::after {
  background-image: url(../images/topics/reprint.svg) !important; }
.c-btn__arrow a::after {
  background-image: url(../images/rental/icon_list_arrow.svg) !important; }
.c-btn__arrow.link_content a::after {
  background-image: url(../images/rental/icon_list_arrow_wh.svg) !important; }
.c-btn__arrow.link_content a:hover::after {
  background-image: url(../images/rental/icon_list_arrow.svg) !important; }
