@charset "UTF-8";
/*　spフォントサイズ自動作成
----------------------------------------------- */
/*　spフォントサイズ自動作成
----------------------------------------------- */
/*　共通フォント
----------------------------------------------- */
/*　共通フォント
----------------------------------------------- */
/*　共通色指定
----------------------------------------------- */
/*　共通色指定
----------------------------------------------- */
/*　break points
----------------------------------------------- */
/*　break points
----------------------------------------------- */
/*　会社概要
----------------------------------------------- */
@media screen and (min-width: 700px) {
  #outline .page-mv .page-mv_inner::after {
    left: auto;
    right: 0;
    -webkit-transform: translateX(-79%) skewX(-35deg);
            transform: translateX(-79%) skewX(-35deg);
  }
}

@media screen and (max-width: 700.9999px) {
  #outline .page-mv .page-mv_inner::after {
    -webkit-transform: translateX(-188%) skewX(-37deg);
            transform: translateX(-188%) skewX(-37deg);
  }
}

#outline .page-mv .page-mv_inner > ul .page-mv_img {
  width: 46.15385vw;
  min-width: 600px;
  height: auto;
  position: relative;
  overflow: visible;
}

#outline .page-mv .page-mv_inner > ul .page-mv_img img {
  min-width: auto;
  position: static;
  -webkit-transform: none;
          transform: none;
}

#outline .page-mv .page-mv_inner > ul .page-mv_img .img_block {
  position: relative;
}

#outline .page-mv .page-mv_inner > ul .page-mv_img .img_block i {
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translate(-125px, 125px);
          transform: translate(-125px, 125px);
  content: "";
  display: inline-block;
  width: 28.69231vw;
  height: 20.80769vw;
  background: url(../../img/page/outline/mv_deco_pc.svg) 0 0/contain no-repeat;
  mix-blend-mode: multiply;
  -webkit-transition-delay: 0.5s;
          transition-delay: 0.5s;
}

#outline .page-mv .page-mv_inner > ul .outline_date {
  width: 43.75%;
  margin-left: auto;
}

#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner {
  margin: 0;
  width: 445px;
  position: relative;
}

#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl:last-of-type dd {
  padding-bottom: 0;
}

#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dt,
#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dd {
  font-size: 1.6rem;
  line-height: 1.6;
  padding-bottom: 21px;
}

#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dt {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 34.88%;
      -ms-flex: 0 0 34.88%;
          flex: 0 0 34.88%;
  max-width: 34.88%;
  font-weight: 500;
  border-right: solid 1px #ACACAC;
}

#outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dd {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 65.12%;
      -ms-flex: 0 0 65.12%;
          flex: 0 0 65.12%;
  max-width: 65.12%;
  font-weight: 300;
  padding-left: 30px;
}

#outline .page-mv .page-mv_inner .page-mv_description {
  margin-top: -70px;
  padding-right: 0;
  z-index: 10;
}

#outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner {
  width: 100%;
}

#outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .g_map_link {
  width: 39.81%;
  text-align: right;
}

#outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .g_map_link .map_btn {
  width: 230px;
  margin: 0 60px 0 auto;
}

#outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .gmap_wrap {
  width: 60.19%;
}

#outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .gmap_wrap .gmap {
  padding-bottom: 53.9%;
}

#outline .pdf-link-btn {
  width: 100%;
  margin-top: 55px;
  padding-bottom: 25px;
}

#outline .pdf-link-btn_inner {
  padding-left: 80px;
}

#outline .pdf-link-btn_inner a {
  padding-left: 37px;
  font-weight: 300;
  letter-spacing: 0.05em;
  display: inline-block;
  position: relative;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

#outline .pdf-link-btn_inner a:hover {
  color: #DC000C;
}

#outline .pdf-link-btn_inner a::before {
  content: "";
  width: 22px;
  height: 27px;
  display: block;
  background: url(../../img/common/pdf.svg) no-repeat center left/100% auto;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 700px) {
  #outline .pdf-link-btn {
    margin: 10% 0 2%;
    padding: 0;
    text-align: center;
  }
  #outline .pdf-link-btn_inner {
    padding: 0;
  }
  #outline .pdf-link-btn_inner a {
    padding: 1.86vw 0 1.86vw 8.57vw;
    font-size: 3.42857vw;
  }
  #outline .pdf-link-btn_inner a::before {
    width: 5.57vw;
    height: 100%;
  }
}

@media screen and (max-width: 700px) {
  #outline .page-mv .page-mv_inner > ul .page-mv_img {
    width: 85.71%;
    margin-right: auto;
    min-width: auto;
  }
  #outline .page-mv .page-mv_inner > ul .page-mv_img .img_block i {
    -webkit-transform: translate(-45px, 30px);
            transform: translate(-45px, 30px);
    width: 30.98097vw;
    height: 22.47438vw;
    background: url(../../img/page/outline/mv_deco_sp.svg) 0 0/contain no-repeat;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date {
    width: 100%;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner {
    margin: 0 auto;
    margin-top: 18.30161vw;
    width: 85.71%;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl {
    border-bottom: solid 1px #ACACAC;
    padding-top: 2.92826vw;
    padding-bottom: 2.92826vw;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl:last-of-type {
    border: none;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dt,
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dd {
    font-size: 3.71429vw;
    padding-bottom: 0;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dt {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 38.83%;
        -ms-flex: 0 0 38.83%;
            flex: 0 0 38.83%;
    max-width: 38.83%;
    border-right: solid 1px #ACACAC;
  }
  #outline .page-mv .page-mv_inner > ul .outline_date .outline_date_inner dl dd {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 61.17%;
        -ms-flex: 0 0 61.17%;
            flex: 0 0 61.17%;
    max-width: 61.17%;
    padding-left: 6.00293vw;
  }
  #outline .page-mv .page-mv_inner .page-mv_description {
    margin-top: 0;
  }
  #outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map {
    margin: 0;
  }
  #outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .g_map_link {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 85.71%;
        -ms-flex: 0 0 85.71%;
            flex: 0 0 85.71%;
    max-width: 85.71%;
    width: 85.71%;
    margin: auto;
    margin-top: 7.32064vw;
    text-align: right;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  #outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .g_map_link .map_btn {
    width: 61%;
    margin: 0 0 0 auto;
    font-size: 3.71429vw;
    padding-top: 1.75695vw;
    padding-bottom: 1.75695vw;
    padding-left: 8.05271vw;
    padding-right: 3.66032vw;
  }
  #outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .gmap_wrap {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  #outline .page-mv .page-mv_inner .page-mv_description .page-mv_description_inner .outline_map .gmap_wrap .gmap {
    width: 92.86%;
    margin-left: auto;
    padding-bottom: 50.65%;
  }
}

#outline .business_info {
  position: relative;
}

#outline .business_info::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  top: 100px;
  width: 85.94%;
  height: calc(100% - 230px);
  background: #EDEDED;
}

#outline .business_info .business_info_inner.wrap {
  padding-top: 250px;
}

#outline .business_info .business_info_inner.wrap .business_info_ttl {
  margin-top: -200px;
}

#outline .business_info .business_info_inner.wrap .business_info_ttl strong {
  font-size: 38px;
  font-weight: 400;
  letter-spacing: .12em;
}

#outline .business_info .business_info_inner.wrap .business_info_ttl span {
  color: #DC000C;
  font-size: 18px;
  font-weight: 300;
  letter-spacing: .05em;
}

@media screen and (min-width: 700.9999px) {
  #outline .business_info .business_info_inner.wrap .business_info_ttl strong {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
    vertical-align: top;
    margin-right: 15px;
    padding-top: 150px;
  }
  #outline .business_info .business_info_inner.wrap .business_info_ttl span {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: sideways;
    padding-top: 150px;
    margin-top: 1px;
  }
}

#outline .business_info .business_info_inner.wrap .business_info_content {
  width: 83.4%;
  margin-left: auto;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li {
  margin-bottom: 30px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li:last-child {
  margin-bottom: 0;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure {
  background: #fff;
  border-left: solid 1px #DC000C;
  padding: 30px 0 30px 30px;
  position: relative;
}

@media screen and (min-width: 700.9999px) {
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 100vw;
    left: 100%;
    top: 0;
    height: 100%;
    background: #fff;
  }
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure .thumbnail {
  min-width: 302px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure .thumbnail .triangle_tl {
  position: relative;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure .thumbnail .triangle_tl::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 14px 0 0;
  border-color: #DC000C transparent transparent transparent;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block {
  padding-left: 30px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title {
  font-size: 24px;
  font-weight: 400;
  position: relative;
  line-height: 1.6;
  letter-spacing: 0.03em;
  padding-bottom: 7px;
  margin-bottom: 20px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::before, #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  top: auto;
  bottom: 0;
  height: 1px;
  background: #DC000C;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::before {
  width: 300px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::after {
  left: -54px;
  width: 54px;
  background: #191311;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_detail li {
  font-size: 16px;
  font-weight: 300;
  position: relative;
  padding-left: 15px;
  line-height: 1.25;
  margin-bottom: 4px;
}

#outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_detail li::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5px;
  height: 5px;
  background: #DC000C;
}

@media screen and (max-width: 700px) {
  #outline .business_info {
    position: relative;
    margin-bottom: 12vw;
  }
  #outline .business_info::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    top: 24.89019vw;
    width: 85.94%;
    height: calc(100% - 12vw);
    background: #EDEDED;
  }
  #outline .business_info .business_info_inner.wrap {
    padding-top: 33.67496vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_ttl {
    margin-bottom: 6.58858vw;
    padding-left: 2.92826vw;
    margin-top: 0;
  }
  #outline .business_info .business_info_inner.wrap .business_info_ttl strong {
    font-size: 5.14286vw;
    letter-spacing: .05em;
    position: relative;
    display: block;
    margin-bottom: 2.19619vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_ttl strong::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    left: -10.2489vw;
    width: 7.32064vw;
    height: 1px;
    background: #DC000C;
  }
  #outline .business_info .business_info_inner.wrap .business_info_ttl span {
    font-size: 3.42857vw;
    color: #DC000C;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content {
    width: 94%;
    margin-left: auto;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li {
    margin-bottom: 4.39239vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li:last-child {
    margin-bottom: 0;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure {
    padding-top: 7.32064vw;
    padding-bottom: 7.32064vw;
    padding-left: 7.32064vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure .thumbnail {
    min-width: auto;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li figure .thumbnail .triangle_tl::before {
    content: "";
    border-width: 3.51vw 3.51vw 0 0;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail {
    z-index: 1;
    position: relative;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block {
    padding-left: 4.39239vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title {
    font-size: 4.57143vw;
    position: relative;
    line-height: 1.6;
    padding-top: 4.39239vw;
    padding-bottom: 4.39239vw;
    padding-left: 4.39239vw;
    margin-bottom: 0;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::before, #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    top: auto;
    bottom: 50%;
    height: 7.9063vw;
    width: 1px;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_title::after {
    background: #191311;
    bottom: 15.8126vw;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_detail li {
    font-size: 3.71429vw;
    padding-left: 4.39239vw;
    margin-bottom: 0.87848vw;
    line-height: 1.5;
  }
  #outline .business_info .business_info_inner.wrap .business_info_content .business_info_list li .list_detail .text_block .business_info_list_detail li::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    top: 2.7vw;
    width: 1.90337vw;
    height: 1.90337vw;
    background: #DC000C;
  }
}

#outline .history {
  padding-top: 100px;
}

#outline .history .history_inner {
  width: 1080px;
  margin: 0 auto;
  padding: 100px 80px;
  position: relative;
  z-index: 1;
}

#outline .history .history_inner::before {
  content: "";
  width: 100vw;
  height: 100%;
  display: block;
  background: #F8F8F8;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

#outline .history .history_ttl {
  font-size: 2.4rem;
  letter-spacing: 0.075em;
  font-weight: 400;
  position: relative;
}

#outline .history .history_ttl::before {
  content: "";
  width: 100vw;
  height: 1px;
  display: block;
  background: #000;
  position: absolute;
  top: 0.5em;
  right: calc(100% + 30px);
}

#outline .history .history_ttl::after {
  content: "";
  width: 50px;
  height: 1px;
  display: block;
  background: #DC000C;
  position: absolute;
  top: 0.5em;
  right: calc(100% + 30px);
  z-index: 1;
}

#outline .history .history_content {
  margin-top: 50px;
  padding-bottom: 45px;
  position: relative;
}

#outline .history .history_content::before {
  content: "";
  width: 1px;
  height: 100%;
  display: block;
  background: #DC000C;
  position: absolute;
  top: 10px;
  left: 74px;
}

#outline .history .history_box {
  margin-top: 11px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

#outline .history .history_box:first-child {
  margin-top: 0;
}

#outline .history .history_year {
  margin-right: 17px;
  line-height: 2;
}

#outline .history .history_text {
  padding-left: 32px;
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.6;
  position: relative;
}

#outline .history .history_text::before {
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  border-radius: 12px;
  background: #DC000C;
  position: absolute;
  top: 10px;
  left: 0;
}

@media screen and (max-width: 700px) {
  #outline .history {
    margin-top: 29.28258vw;
  }
  #outline .history .history_inner {
    width: 92.86%;
    margin-right: 0;
    padding-top: 14.64129vw;
    padding-left: 7.32064vw;
    padding-right: 0;
    padding-bottom: 0;
  }
  #outline .history .history_inner::before {
    height: 100%;
  }
  #outline .history .history_ttl {
    font-size: 4.57143vw;
    font-weight: 500;
  }
  #outline .history .history_ttl::before {
    right: calc(100% + 7.32064vw);
  }
  #outline .history .history_ttl::after {
    width: 3.66032vw;
    right: calc(100% + 3.66032vw);
  }
  #outline .history .history_content {
    padding-right: 7.32064vw;
    padding-top: 5.12445vw;
    padding-bottom: 14.64129vw;
    margin-top: 0;
  }
  #outline .history .history_content::before {
    top: calc(5.12445vw + .5em);
    left: 16.10542vw;
    height: 93%;
  }
  #outline .history .history_box {
    margin-top: 11px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  #outline .history .history_box:first-child {
    margin-top: 0;
  }
  #outline .history .history_year {
    font-size: 3.71429vw;
    font-weight: 500;
    padding-right: 0;
    margin-right: 0;
    width: 16.10542vw;
  }
  #outline .history .history_text {
    width: calc(100% - 16.10542vw);
    padding-left: 4.39239vw;
    font-size: 3.71429vw;
  }
  #outline .history .history_text::before {
    width: 2.63543vw;
    height: 2.63543vw;
    border-radius: 50em;
    top: 0.5em;
    left: -1.31772vw;
  }
}
