@charset "UTF-8";
/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500&display=swap");
/*** reset ***/
* {
  margin: 0;
  padding: 0;
  list-style: none;
  text-indent: 0; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: none;
  vertical-align: bottom;
  border: 0;
  image-rendering: -webkit-optimize-contrast; }

h1, h2, h3, h4, h5, h6, pre, address, em, strong, th, ins {
  font-style: normal; }

table {
  border-collapse: collapse;
  border: 0; }

th {
  text-align: left; }

th {
  text-align: left; }

input, select, textarea {
  vertical-align: middle; }

ins, a {
  text-decoration: none; }

ul {
  list-style: none; }

br {
  letter-spacing: 0; }

hr {
  height: 0px;
  margin: 0;
  border: none;
  border-top: 1px solid #fff; }

* html hr {
  /* for -IE6 */
  margin: 0; }

*:first-child + html hr {
  /* for IE7 */
  margin: 0; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

/***cleasrfix hack***/
.hack::after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/*end hide*/
.clear {
  clear: both; }

/*** font ***/
html {
  font-size: 62.5%; }

body {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  font-feature-settings: "palt";
  color: #333333; }

#wrapper {
  background-color: #fff;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative; }

/*family*/
body {
  font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.2em; }

footer {
  font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif; }

/*** link ***/
.btn_over {
  transition: 0.5s; }
  .btn_over:hover {
    opacity: 0.7; }

/*base*/
.secin {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }

.secin.main {
  width: 100%;
  max-width: 100%;
  overflow: hidden; }

._sp480,
._sp1000,
._sp {
  display: none; }

@media screen and (max-width: 1100px) {
  ._sp1100 {
    display: block !important; } }
@media screen and (max-width: 480px) {
  ._sp480 {
    display: block !important; } }
@media screen and (max-width: 768px) {
  ._pc {
    display: none !important; }

  ._sp {
    display: block !important; }

  body {
    font-size: 12px;
    font-size: 1.2rem; } }
/*setting*/
/* Scss Document */
.c_lead {
  font-weight: 400; }

p.main_txt,
.top_cbtn_txt_more,
.top_cbtn_txt_name,
.f_en {
  font-family: 'Cormorant Garamond', serif; }

/*base*/
.bg_lightgray {
  background-color: #d3d2dc;
  position: relative; }

.bg_white {
  width: 100%;
  background-color: #fff;
  color: #333;
  position: relative; }

.bg_black {
  width: 100%;
  background-color: #000;
  color: #fff;
  position: relative; }

.bg_keycolor {
  width: 100%;
  background-color: #15182e;
  color: #fff;
  position: relative; }

.bg_dark {
  width: 100%;
  background-color: #262839;
  color: #fff;
  position: relative; }

.bg_beige {
  background: #5976a4;
  color: #333; }

.secin {
  width: 95%;
  max-width: 1200px;
  margin: 0 auto;
  position: relative; }

.secin.main {
  width: 100%;
  max-width: 100%;
  overflow: hidden; }

/* headerここから */
header {
  position: fixed;
  /*top:0;
  left:0;*/
  padding: 0;
  width: 100%;
  z-index: 900;
  color: #fff;
  background: #5b5176;
  background: linear-gradient(90deg, #5b5176 0%, #64577f 45%, #313255 100%);
  z-index: 9000; }
  header h1 {
    width: 140px;
    height: auto;
    margin-top: 15px;
    margin-left: 35px;
    position: relative;
    z-index: 5; }
    header h1 img {
      width: 100%;
      height: auto; }
  header .header_nav {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    z-index: 5; }
    header .header_nav li a {
      color: #fff;
      font-size: 14px;
      display: block;
      width: 100%;
      height: 100%;
      transition: 0.3s; }
      header .header_nav li a:hover {
        opacity: 0.7; }
    header .header_nav li:nth-child(5) {
      display: none; }

@media screen and (min-width: 769px) {
  header .header_nav li a img {
    display: none; }
  header .header_nav li:nth-child(1) a, header .header_nav li:nth-child(2) a, header .header_nav li:nth-child(3) a {
    padding: 0 10px;
    border-left: 1px solid #fff;
    color: #fff; }
  header .header_nav li:nth-child(4) a, header .header_nav li:nth-child(5) a {
    padding: 28px 20px 29px;
    line-height: 1em;
    position: relative; }
    header .header_nav li:nth-child(4) a span, header .header_nav li:nth-child(5) a span {
      position: relative; }
    header .header_nav li:nth-child(4) a::before, header .header_nav li:nth-child(5) a::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0.4;
      background: #e6e6e6;
      background: -moz-linear-gradient(top, #e6e6e6 0%, #ffffff 50%, #cccccc 54%, #cccccc 100%);
      background: -webkit-linear-gradient(top, #e6e6e6 0%, #ffffff 50%, #cccccc 54%, #cccccc 100%);
      background: linear-gradient(to bottom, #e6e6e6 0%, #ffffff 50%, #cccccc 54%, #cccccc 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e6e6e6', endColorstr='#cccccc',GradientType=0 ); }
  header .header_nav li:nth-child(4) a {
    background: #fff;
    color: #000;
    font-weight: 800; }
  header .header_nav li:nth-child(5) a {
    background: #888888; }
  header .header_nav li:nth-child(6) {
    display: none; } }
@media screen and (max-width: 768px) {
  header {
    height: 70px; }
    header h1 {
      margin-left: 15px; }
    header .header_nav {
      position: fixed;
      top: inherit;
      bottom: 0;
      right: 0;
      display: flex;
      width: 100%;
      height: 70px;
      flex-wrap: nowrap;
      align-items: center;
      background: #000;
      flex-grow: 1; }
      header .header_nav li {
        background: #333;
        width: 25%;
        height: 100%;
        text-align: center; }
        header .header_nav li:nth-child(3) {
          order: 4; }
        header .header_nav li:nth-child(6) {
          order: 1; }
        header .header_nav li:nth-child(4) {
          order: 2; }
  header .header_nav li:nth-child(1) {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
            display: none;
  }
        header .header_nav li:nth-child(2) {
          order: 3; }
        header .header_nav li a {
          display: block;
          width: 100%;
          height: 100%;
          font-size: 12px;
          letter-spacing: 0.1em;
          color: #fff; }
          header .header_nav li a img {
            display: block;
            width: 30px;
            height: 30px;
            margin: 10px auto 0px; } }
/* headerここまで */
/* footerここから */
footer .footer_call {
  background: #fff;
  padding: 30px 0; }
  footer .footer_call .secin {
    max-width: 780px;
    letter-spacing: 0.05em;
    margin: 0 auto; }
  footer .footer_call_bnr {
    width: 100%;
    max-width: 600px;
    margin: 0 auto 20px;
    display: block; }
    footer .footer_call_bnr img {
      width: 100%;
      height: auto; }
  footer .footer_call ul {
    margin: 5px 0 0; }
    footer .footer_call ul li {
      width: calc(100% - 420px);
      display: inline-block;
      vertical-align: middle;
      padding: 0 3% 0 0;
      font-size: 11px;
      box-sizing: border-box; }
      footer .footer_call ul li:nth-child(2) {
        padding: 0;
        width: 410px; }
        footer .footer_call ul li:nth-child(2) a {
          color: #000;
          text-decoration: underline; }
footer .footer_note {
  background: #f0eeeb;
  color: #333;
  padding: 25px 0; }
footer .footer_link {
  background: #6a4e9a;
  padding: 10px 0;
  text-align: center; }
  footer .footer_link li {
    display: inline-block; }
    footer .footer_link li a {
      color: #fff;
      font-size: 12px;
      line-height: 1;
      padding: 0 15px 1px;
      border-right: 1px solid #fff; }
    footer .footer_link li:last-child a {
      border-right: none; }
footer .footer_logo {
  padding: 25px 0 0; }
  footer .footer_logo ul {
    display: flex;
    flex-wrap: nowrap;
    max-width: 300px;
    margin: 0 auto; }
    footer .footer_logo ul li {
      width: 49%; }
      footer .footer_logo ul li:first-child {
        margin-right: 2%; }
  footer .footer_logo p {
    text-align: center;
    font-size: 1.0rem;
    color: #000;
    margin: 10px auto; }

#pagetop {
  position: fixed;
  width: 45px;
  height: 20px;
  bottom: 26px;
  right: 10px;
  z-index: 1;
  cursor: pointer; }

@media screen and (max-width: 768px) {
  footer {
    padding-bottom: 70px; }

  footer .footer_call .secin {
    max-width: 400px; }

  footer .footer_call ul li {
    width: 100%;
    display: block;
    padding: 0 0 10px 0;
    font-size: 10px; }

  footer .footer_call ul li:nth-child(2) {
    padding: 0; }

  footer .footer_link {
    display: none; }

  footer .footer_logo p {
    margin-top: 15px; }

  #pagetop {
    width: 30px;
    bottom: 10px;
    /*right: 50%;
    transform: translateX(50%);*/ } }
/* footerここまで */
/*sp menu*/
.sp_menu {
  position: fixed;
  top: 15px;
  right: 25px;
  height: 36px;
  width: 30px;
  outline: none;
  cursor: pointer;
  /*border: 1px solid #666;*/
  padding: 3px 0 3px 7px;
  z-index: 9000;
  /*background: #fff;*/
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-contente: space-between;
  display: none; }
  .sp_menu span,
  .sp_menu span::before,
  .sp_menu span::after {
    position: absolute;
    content: '';
    width: 30px;
    height: 3px;
    background: #fff;
    border-radius: 20px;
    transition: 500ms cubic-bezier(0.77, 0, 0.175, 1); }
  .sp_menu span {
    top: 50%; }
  .sp_menu span::before {
    top: -12px; }
  .sp_menu span::after {
    top: 12px; }
  .sp_menu .active {
    transition: 500ms;
    background: transparent;
    /*border: 1px solid #181878;*/ }

.sp_menu.active > span {
  background: transparent; }

.sp_menu.active > span::before, .sp_menu.active > span::after {
  top: 0px; }

.sp_menu.active > span::before {
  -webkit-transform: rotate(-225deg);
  transform: rotate(-225deg); }

.sp_menu.active > span::after {
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg); }

@media screen and (max-width: 768px) {
  .sp_menu {
    display: block; } }
nav ul {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto; }

nav li {
  flex-grow: 1; }

nav li a {
  color: #fff !important;
  font-size: 14px;
  padding: 15px 0;
  display: block;
  width: 100%;
  position: relative;
  text-align: center; }

nav li a:hover {
  color: #fff !important;
  /*font-weight: 800;*/ }

@media screen and (min-width: 769px) {
  nav {
    position: relative;
    margin-top: 10px;
    background: #30325b;
    background: linear-gradient(90deg, #30325b 0%, #3c3c67 45%, #212849 100%);
    width: 100%;
    z-index: 900;
    box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.5); }

  nav li.act a::after,
  nav li a::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 0;
    height: 4px;
    background: #fff;
    transition: 0.3s;
    opacity: 0; }

  nav li.act a::after,
  nav li a:hover::after {
    width: 50%;
    opacity: 1; } }
@media screen and (max-width: 768px) {
  nav {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    position: fixed;
    top: 70px;
    left: 0;
    z-index: 998;
    width: 100%;
    height: calc(100vh - 140px);
    display: flex;
    flex-direction: column;
    transition: 1s left cubic-bezier(0.77, 0, 0.175, 1), 1s opacity;
    background: rgba(106, 78, 154, 0.8);
    opacity: 0;
    pointer-events: none; }

  nav.active {
    top: 70px;
    opacity: 1;
    display: block;
    pointer-events: inherit; }

  nav ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }

  nav li {
    box-sizing: border-box;
    width: 50%;
    border-bottom: 1px solid #bdbdbd; }

  nav li:nth-child(2n) {
    border-left: 1px solid #bdbdbd; }

  nav li a {
    padding: 25px 0; } }
/*common*/
.t_center {
  text-align: center; }

.t_right {
  text-align: right; }

.t_left {
  text-align: left; }

.note {
  font-size: 10px;
  letter-spacing: 0.1em; }

.note-w {
  color: #fff !important; }

.note-b {
  color: #000 !important; }

.note-r {
  text-align: right; }

@media screen and (max-width: 768px) {
  .note {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; } }
.main {
  margin-top: 121px; }

#index .main {
  margin-top: 0; }

@media screen and (max-width: 768px) {
  .main {
    margin-top: 70px; } }
figure {
  position: relative; }

figure .note {
  position: absolute;
  bottom: 5px;
  right: 10px;
  color: #fff; }

/*info*/
.info {
  padding: 90px 0 90px;
  background: #5b5176;
  background: linear-gradient(90deg, #5b5176 0%, #64577f 45%, #313255 100%); }
  @media screen and (max-width: 768px) {
    .info {
      padding: 50px 0 50px; } }
  .info .secin {
    max-width: 640px;
    margin: 0 auto; }
  .info_tit {
    color: #90814b;
    display: block;
    border-top: 1px solid #90814b;
    border-bottom: 1px solid #90814b;
    text-align: center;
    font-size: 24px;
    padding: 5px 0;
    margin-bottom: 20px; }
  .info ul {
    /*margin-bottom: 100px;*/ }
    .info ul li {
      margin-bottom: 10px; }

.fbtn {
  width: 80%;
  max-width: 380px;
  margin: 0 auto; }
  .fbtn li a {
    display: block;
    width: 100%;
    padding: 22px 40px;
    color: #2e2520;
    background: #d3c099;
    background: -webkit-linear-gradient(left, #d3c099 0%, #e2d6be 50%, #d3c099 100%);
    background: -o-linear-gradient(left, #d3c099 0%, #e2d6be 50%, #d3c099 100%);
    background: linear-gradient(to right, #d3c099 0%, #e2d6be 50%, #d3c099 100%);
    font-size: 16px;
    text-align: center;
    position: relative;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
    box-sizing: border-box;
    border: 2px solid #fff; }
    @media screen and (max-width: 768px) {
      .fbtn li a {
        font-size: 14px; } }
    .fbtn li a::before {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 7px;
      opacity: 0.8;
      background: #a27a62;
      background: -moz-linear-gradient(left, #a27a62 0%, #f1c19a 50%, #a27a62 100%);
      background: -webkit-linear-gradient(left, #a27a62 0%, #f1c19a 50%, #a27a62 100%);
      background: linear-gradient(to right, #a27a62 0%, #f1c19a 50%, #a27a62 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a27a62', endColorstr='#a27a62',GradientType=1 );
      pointer-events: none;
      display: none; }
    .fbtn li a span {
      position: relative;
      z-index: 10; }
      .fbtn li a span img {
        width: 85px;
        height: auto;
        display: inline-block;
        vertical-align: middle;
        padding-bottom: 5px;
        transition: 0.3s; }
    .fbtn li a:hover span img {
      transform: translateX(20px); }

/* page common
*******************************************/
.main {
  position: relative; }
  .main_bg {
    position: relative;
    background: #899198; }
    @media screen and (max-width: 767px) {
      .main_bg {
        position: relative; } }
  .main_txt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }

p.main_txt {
  width: 80%;
  max-width: 450px;
  font-size: 48px;
  color: #fff;
  line-height: 1;
  text-align: center;
  padding: 0 0 0; }
  @media screen and (max-width: 767px) {
    p.main_txt {
      font-size: 40px; } }
  @media screen and (max-width: 480px) {
    p.main_txt {
      font-size: 28px; } }
  p.main_txt img {
    width: 100%;
    height: auto;
    margin: 0 auto; }
  p.main_txt span.jp {
    font-size: 21px;
    color: #fff;
    margin-bottom: 15px; }
  p.main_txt.txtshadow {
    text-shadow: 1px 1px 5px #000; }

#type .main_txt {
  height: 20%; }

#access .main .note {
  color: #333; }

.sec1 {
  padding: 140px 0; }

#type .sec1 {
  padding: 100px 0 50px; }

@media screen and (max-width: 767px) {
  .sec1 {
    padding: 70px 0 30px; }

  #type .sec1 {
    padding: 70px 0 0; } }
@media screen and (max-width: 767px) {
  ::-webkit-scrollbar {
    width: 10px; }

  ::-webkit-scrollbar-track {
    background: #fff;
    border: none;
    border-radius: 10px;
    box-shadow: inset 0 0 2px #777; }

  ::-webkit-scrollbar-thumb {
    background: #ccc;
    border-radius: 10px;
    box-shadow: none; } }
/*text*/
.f_en {
  color: #856d11; }

.c_lead0 {
  font-size: 48px;
  color: #97755f; }

.c_lead {
  font-size: 28px;
  color: #332D2B; }

.c_lead-c1 {
  color: #fff; }

.c_lead2 {
  font-size: 18px;
  line-height: 2em;
  margin-bottom: 25px; }

.c_lead3 {
  font-size: 16px;
  margin-bottom: 25px; }

.c_txt {
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2; }

.c_txt2 {
  font-size: 12px;
  letter-spacing: 0.1em; }

@media screen and (max-width: 767px) {
  .c_lead0 {
    font-size: 24px;
    color: #97755f; }

  .c_lead {
    font-size: 18px;
    margin-bottom: 25px; }

  .c_lead2 {
    font-size: 14px;
    margin-bottom: 25px; }

  .c_lead3 {
    font-size: 13px; }

  .c_txt {
    font-size: 12px; }

  .c_txt2 {
    font-size: 10px; } }
/*動き*/
.m_left {
  transition: all 1.5s;
  opacity: 0;
  -webkit-transform: translate(-50px, 0);
  -ms-transform: translate(-50px, 0);
  -o-transform: translate(-50px, 0);
  transform: translate(-50px, 0); }

.m_right {
  transition: all 1.5s;
  opacity: 0;
  -webkit-transform: translate(50px, 0);
  -ms-transform: translate(50px, 0);
  -o-transform: translate(50px, 0);
  transform: translate(50px, 0); }

.m_left_on,
.m_rights
.m_op {
  transition: all 1s;
  opacity: 0; }
  .m_left_on_on,
  .m_rights
  .m_op_on {
    opacity: 1; }

.m_op,
.m_down {
  transition: all 1s;
  transform: translateY(100px);
  opacity: 0; }
  .m_op_on,
  .m_down_on {
    transform: translateY(0px);
    opacity: 1; }

.m_up {
  transition: all 1s;
  transform: translateY(-100px);
  opacity: 0; }
  .m_up_on {
    transform: translateY(0px);
    opacity: 1; }

@media screen and (min-width: 769px) {
  .m_op_d1 {
    transition-delay: 0.1s; }

  .m_op_d2 {
    transition-delay: 0.3s; }

  .m_op_d3 {
    transition-delay: 0.5s; }

  .m_op_d4 {
    transition-delay: 0.7s; }

  .m_op_d5 {
    transition-delay: 0.9s; }

  .m_op_d6 {
    transition-delay: 1.1s; } }
@media screen and (max-width: 768px) {
  .rmv,
  .lmv {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    transform: translateY(100px); }

  .rmv_on,
  .lmv_on {
    transform: translateY(0px); } }
@media print {
  header, nav, .footer_link, .footer_logo, .footer_note, .main, .accessmap_btn, .info, .btn_print, #pagetop {
    display: none !important; }

  .sec1 {
    padding: 20px 0; } }
/* Scss Document */
#index .main {
  position: relative;
  overflow: hidden;
  margin-top: 120px; }
  @media screen and (max-width: 767px) {
    #index .main {
      margin-top: 70px; } }
  #index .main_bg1 {
    position: relative;
    z-index: 1; }
  #index .main_txt {
    position: absolute;
    z-index: 20;
    -webkit-transition: 1.5s;
    transition: 1.5s;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    width: 90%;
    top: 20%;
    display: flex;
    justify-content: space-around;
    align-items: center; }
    #index .main_txt-1 {
      max-width: 660px;
      width: 50%; }
    #index .main_txt-2 {
      max-width: 540px;
      width: 50%; }
      @media screen and (max-width: 767px) {
        #index .main_txt-2 {
          width: 45%; } }
#index .merit {
  background: linear-gradient(to right, #c9c9c9 3.7%, #efefef 12.2%, #ffffff 52.2%, #c9c9c9 89.5%, #fff 98%);
  position: relative;
  z-index: 1000; }
  #index .merit_txt {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: baseline;
    padding: 3% 0; }
    @media screen and (max-width: 767px) {
      #index .merit_txt {
        padding: 20px 0; } }
    @media screen and (max-width: 767px) {
      #index .merit_txt li {
        margin: 0 auto 5%; } }
    #index .merit_txt li:first-child {
      width: 22%; }
      @media screen and (max-width: 767px) {
        #index .merit_txt li:first-child {
          width: 48%; } }
    #index .merit_txt li:nth-child(2) {
      width: 22%; }
      @media screen and (max-width: 767px) {
        #index .merit_txt li:nth-child(2) {
          width: 48%; } }
    #index .merit_txt li:nth-child(3) {
      width: 26%; }
      @media screen and (max-width: 767px) {
        #index .merit_txt li:nth-child(3) {
          width: 53%; } }
    #index .merit_txt li:last-child {
      width: 20.52%; }
      @media screen and (max-width: 767px) {
        #index .merit_txt li:last-child {
          width: 41.8%;
          margin-bottom: 0; } }
#index .facade {
  position: relative;
  padding: 200px 0 0; }
  #index .facade::after {
    content: "";
    background: #6a4e9d;
    height: 30px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -30px; }
  @media screen and (max-width: 768px) {
    #index .facade {
      padding: 0; } }
  #index .facade_img_wrap {
    position: relative;
    height: 200px; }
    @media screen and (max-width: 768px) {
      #index .facade_img_wrap {
        background: url(../images/top/facade_bg.jpg) left top/200% auto no-repeat #fff;
        height: initial; } }
    #index .facade_img_wrap .facade_img {
      width: 44%;
      position: absolute;
      left: 3%;
      bottom: -200px;
      z-index: 900;
      max-width: 560px; }
      @media screen and (max-width: 768px) {
        #index .facade_img_wrap .facade_img {
          width: 80%;
          margin: auto;
          position: initial; } }
      #index .facade_img_wrap .facade_img .note {
        position: absolute;
        right: 12%;
        bottom: 5px; }
  #index .facade_txt_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: url(../images/top/facade_bg.jpg) center top/100% auto no-repeat;
    position: relative;
    border-top: solid 30px #000;
    border-bottom: solid 30px #000; }
    @media screen and (max-width: 768px) {
      #index .facade_txt_wrap {
        background: #6a4e9d;
        margin-bottom: 0;
        border-bottom: none; } }
    #index .facade_txt_wrap .secin {
      position: initial !important; }
    #index .facade_txt_wrap::before {
      content: "";
      background-image: url(../images/top/txt_bg.png);
      background-position: right top;
      background-size: cover;
      background-repeat: no-repeat;
      position: absolute;
      top: 60px;
      right: 0;
      position: absolute;
      width: 55%;
      height: calc(100% - 120px); }
      @media screen and (max-width: 768px) {
        #index .facade_txt_wrap::before {
          background-size: 100% 100%;
          top: 30px;
          height: calc(100% - 60px);
          width: 140%; } }
    #index .facade_txt_wrap .facade_txt {
      color: #000;
      line-height: 2;
      width: 50%;
      margin-left: auto;
      position: relative;
      z-index: 1000;
      padding: 80px 0 80px 5%;
      font-size: 1.3vw;
      font-size: clamp(10.5px, 1.3vw, 18px);
      letter-spacing: 0; }
      @media screen and (max-width: 768px) {
        #index .facade_txt_wrap .facade_txt {
          width: 100%;
          text-align: center;
          padding: 50px 0;
          font-size: 3vw;
          font-size: clamp(10px, 3vw, 14px); } }
#index .um43 {
  background: repeating-radial-gradient(at top right, #545e7a 0%, #545e7a 10%, #000 30%, #000 100%);
  padding: 7% 0;
  position: relative; }
  @media screen and (max-width: 768px) {
    #index .um43 {
      padding-bottom: 0; } }
  #index .um43_img {
    position: absolute;
    top: 0;
    left: 0;
    width: 55%; }
    @media screen and (max-width: 768px) {
      #index .um43_img {
        width: 30%; } }
  #index .um43_heading {
    width: 30%;
    max-width: 360px;
    margin: 0 0 7% auto;
    text-align: right; }
    @media screen and (max-width: 768px) {
      #index .um43_heading {
        width: 70%; } }
  #index .um43_txt {
    width: 50%;
    margin-left: auto;
    color: #fff;
    text-align: center;
    line-height: 2;
    text-align: right; }
    @media screen and (max-width: 768px) {
      #index .um43_txt {
        width: 100%;
        letter-spacing: 0.05em; } }
    #index .um43_txt_01 {
      font-size: 1.5vw;
      font-size: clamp(12px, 1.5vw, 24px);
      margin-bottom: 30px; }
      @media screen and (max-width: 768px) {
        #index .um43_txt_01 {
          font-size: 4vw;
          font-size: clamp(10px, 4vw, 24px); } }
    #index .um43_txt_02 {
      font-size: 1.1vw;
      font-size: clamp(10px, 1.1vw, 14px);
      padding-bottom: 18%; }
      @media screen and (max-width: 768px) {
        #index .um43_txt_02 {
          text-align: center;
          font-size: 3vw;
          font-size: clamp(10px, 3vw, 14px); } }
    @media screen and (max-width: 768px) {
      #index .um43_txt .um43_img2 {
        margin-bottom: 30px; } }
#index .top_cbtn {
  background: repeating-radial-gradient(at bottom left, #545e7a 0%, #545e7a 10%, #000 30%, #000 100%);
  position: relative; }
  #index .top_cbtn::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 50px;
    content: "";
    background: #12141a;
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0) 0%, black 54%);
    background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0) 0%, black 54%);
    background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, black 54%);
    z-index: 1; }
  #index .top_cbtn .secin {
    display: flex;
    flex-wrap: wrap;
    padding: 100px 0;
    justify-content: space-between;
    max-width: 1000px;
    width: 80%;
    z-index: 2;
    position: relative; }
    @media screen and (max-width: 768px) {
      #index .top_cbtn .secin {
        padding: 70px 0;
        width: 80%; } }
  #index .top_cbtn li {
    width: 30%;
    margin-bottom: 6%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      #index .top_cbtn li {
        width: 48%; } }
    @media screen and (max-width: 480px) {
      #index .top_cbtn li {
        width: 100%; } }
    #index .top_cbtn li a {
      position: relative;
      transition: 0.3s;
      align-items: center;
      display: block;
      color: #fff; }
      #index .top_cbtn li a .top_cbtn_txt {
        text-align: left;
        transition: 0.3s;
        z-index: 5;
        position: absolute;
        width: 100%;
        top: 50%;
        transform: translateY(-50%);
        left: 0%;
        z-index: 1000; }
      #index .top_cbtn li a .top_cbtn_txt_name {
        font-size: 24px;
        margin: 7% auto 0.5%;
        white-space: nowrap;
        letter-spacing: 0.1em;
        text-align: center; }
      #index .top_cbtn li a .top_cbtn_txt_more {
        margin: 0 auto;
        width: 75%;
        max-width: 90px;
        font-size: 9px;
        display: flex;
        align-items: center; }
        #index .top_cbtn li a .top_cbtn_txt_more::after {
          content: "";
          flex-grow: 1;
          height: 1px;
          background: #fff;
          display: block;
          width: 20%;
          transition: 0.3s;
          margin-right: .4em; }
      #index .top_cbtn li a .note {
        position: absolute;
        right: 5px;
        bottom: 5px;
        color: #fff;
        text-shadow: 0 0 5px rgba(0, 0, 0, 0.7);
        z-index: 10; }
      #index .top_cbtn li a figure {
        overflow: hidden;
        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3); }
        #index .top_cbtn li a figure img {
          position: relative;
          width: 100%;
          z-index: 10;
          transition: 0.3s;
          transform-origin: center center; }
      #index .top_cbtn li a:hover {
        opacity: 0.5; }
        #index .top_cbtn li a:hover .top_cbtn_txt::before {
          opacity: 1;
          bottom: 16px;
          left: 44px; }
        #index .top_cbtn li a:hover .top_cbtn_txt {
          /*width: 100%;*/ }
        #index .top_cbtn li a:hover .top_cbtn_txt_more::after {
          transform: translateX(10px); }
        #index .top_cbtn li a:hover figure img {
          transform: scale(1.1); }
#index .top_position {
  background: url("../images/top/position_bg.png") no-repeat #0d0c14 bottom center;
  background-size: 100% auto;
  padding: 2% 0 43%; }
  @media screen and (max-width: 768px) {
    #index .top_position {
      background-size: 120% auto;
      padding: 0 0 50%; } }
  #index .top_position p {
    color: #fff;
    text-align: center; }
    #index .top_position p.f_en {
      font-size: 80px;
      letter-spacing: -0.05em; }
      @media screen and (max-width: 768px) {
        #index .top_position p.f_en {
          font-size: 40px; } }

/* Scss Document */
#location .t1 {
  font-size: 16px;
  margin: 15px 0 10px;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 767px) {
    #location .t1 {
      font-size: 14px;
      letter-spacing: 0; } }
#location .t1s {
  font-size: 14px;
  margin: 15px 0;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 767px) {
    #location .t1s {
      font-size: 13px;
      letter-spacing: 0; } }
#location .t2 {
  font-size: 12.5px;
  letter-spacing: 0; }
  @media screen and (max-width: 767px) {
    #location .t2 {
      font-size: 12px;
      letter-spacing: 0.05em; } }
#location .tokyo_txt_01 .t2 {
  font-size: 11px; }
#location .t2_12 {
  font-size: 12px; }
#location .t2_space {
  letter-spacing: 0.1em; }
#location span.small {
  font-size: 11px; }
#location * {
  box-sizing: border-box; }
#location .d-ib {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 1%; }
#location .l_heading {
  text-align: center;
  margin-bottom: 50px; }
  #location .l_heading_01 {
    width: 80%;
    margin: 0 auto 30px;
    position: relative; }
    #location .l_heading_01_wrap {
      position: relative; }
      #location .l_heading_01_wrap::after {
        content: "";
        position: absolute;
        width: 100%;
        height: 1px;
        bottom: 0;
        left: 0; }
  #location .l_heading_02 {
    font-size: 20px;
    margin-bottom: 20px; }
    @media screen and (max-width: 767px) {
      #location .l_heading_02 {
        font-size: 4vw;
        font-size: clamp(10px, 4vw, 20px); } }
  #location .l_heading_03 {
    font-size: 14px;
    line-height: 1.8; }
    @media screen and (max-width: 767px) {
      #location .l_heading_03 {
        font-size: 3.4vw;
        font-size: clamp(10px, 3.4vw, 14px); } }
#location .dea {
  padding-bottom: 8%; }
  #location .dea_heading {
    text-align: center;
    padding: 5% 0; }
    #location .dea_heading_01 {
      max-width: 610px;
      width: 95%;
      margin: 0 auto 20px; }
    #location .dea_heading_02 {
      color: #bc9e44;
      font-size: 20px;
      display: inline-block;
      position: relative;
      padding-bottom: 20px;
      margin-bottom: 20px; }
      @media screen and (max-width: 767px) {
        #location .dea_heading_02 {
          font-size: 4vw;
          font-size: clamp(10px, 4vw, 20px); } }
      #location .dea_heading_02::after {
        content: "";
        background: #000;
        height: 1px;
        width: 80%;
        position: absolute;
        left: 10%;
        bottom: 0; }
    #location .dea_heading_03 {
      color: #000;
      font-size: 15px;
      line-height: 1.8; }
      @media screen and (max-width: 767px) {
        #location .dea_heading_03 {
          font-size: 3.4vw;
          font-size: clamp(10px, 3.4vw, 15px);
          letter-spacing: 0.05em; } }
  @media screen and (max-width: 767px) {
    #location .dea_area .t1 {
      font-size: 13px; } }
  #location .dea_area_ttl {
    margin-bottom: 2%;
    position: relative; }
    #location .dea_area_ttl::after {
      content: "";
      background: #ccc;
      height: 1px;
      width: 100%;
      position: absolute;
      bottom: 1.5px;
      left: 0; }
    #location .dea_area_ttl span {
      vertical-align: middle;
      line-height: 1; }
      #location .dea_area_ttl span.en {
        font-size: 34px; }
        @media screen and (max-width: 767px) {
          #location .dea_area_ttl span.en {
            font-size: 7vw;
            font-size: clamp(12px, 7vw, 34px); } }
      #location .dea_area_ttl span.ja {
        font-size: 16px; }
        @media screen and (max-width: 767px) {
          #location .dea_area_ttl span.ja {
            font-size: 4vw;
            font-size: clamp(12px, 4vw, 16px); } }
  #location .dea_area ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #location .dea_area ul li .t1 {
      margin: 3% 0 1%; }
      #location .dea_area ul li .t1 .bg_red {
        background: #6a4e9d;
        color: #fff;
        display: inline-block;
        width: 18px;
        height: 18px;
        line-height: 16px;
        text-align: center;
        margin-right: 2%; }
    #location .dea_area ul li .box {
      font-size: 12px;
      letter-spacing: 0.05em;
      border: solid 1px #000;
      text-align: center;
      padding: 0 10px;
      margin-bottom: 1%; }
      @media screen and (max-width: 767px) {
        #location .dea_area ul li .box {
          font-size: 11px;
          width: 100%; } }
    #location .dea_area ul li .note {
      letter-spacing: 0; }
  #location .dea_area .function {
    margin-bottom: 1%; }
    #location .dea_area .function img {
      display: block; }
    #location .dea_area .function_01 {
      margin-left: 10px;
      width: 66%; }
      @media screen and (max-width: 767px) {
        #location .dea_area .function_01 {
          width: 100%;
          margin-left: 0; } }
    #location .dea_area .function_03 {
      width: 65%;
      margin-left: 10px; }
      @media screen and (max-width: 767px) {
        #location .dea_area .function_03 {
          width: 100%;
          margin-left: 0; } }
    #location .dea_area .function_09 {
      width: 23%; }
  #location .dea_area.tokyo {
    padding-top: 30px;
    margin-bottom: 10%; }
    #location .dea_area.tokyo li:first-child {
      width: 43%; }
      @media screen and (max-width: 767px) {
        #location .dea_area.tokyo li:first-child {
          width: 100%;
          margin-bottom: 8%; } }
    #location .dea_area.tokyo li:last-child {
      width: 53%;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        #location .dea_area.tokyo li:last-child {
          width: 100%; } }
      #location .dea_area.tokyo li:last-child figure {
        width: 29.5%; }
        @media screen and (max-width: 767px) {
          #location .dea_area.tokyo li:last-child figure {
            order: 2;
            margin-bottom: 3%; } }
      #location .dea_area.tokyo li:last-child .bc_wrap {
        width: 65%; }
        @media screen and (max-width: 767px) {
          #location .dea_area.tokyo li:last-child .bc_wrap {
            order: 1;
            width: 100%;
            margin-bottom: 8%; } }
        #location .dea_area.tokyo li:last-child .bc_wrap .t1 {
          margin-top: 0; }
          #location .dea_area.tokyo li:last-child .bc_wrap .t1.mt {
            margin-top: 3%; }
          #location .dea_area.tokyo li:last-child .bc_wrap .t1.w60 {
            width: 60%; }
      @media screen and (max-width: 767px) {
        #location .dea_area.tokyo li:last-child .c_wrap {
          order: 3;
          width: 65%;
          margin-bottom: 8%; } }
      #location .dea_area.tokyo li:last-child .d_wrap {
        width: 51%; }
        @media screen and (max-width: 767px) {
          #location .dea_area.tokyo li:last-child .d_wrap {
            order: 4;
            width: 100%; } }
        #location .dea_area.tokyo li:last-child .d_wrap .t1 {
          letter-spacing: 0;
          font-size: 14px; }
      #location .dea_area.tokyo li:last-child .e_wrap {
        width: 45.5%; }
        @media screen and (max-width: 767px) {
          #location .dea_area.tokyo li:last-child .e_wrap {
            order: 5;
            width: 100%; } }
        #location .dea_area.tokyo li:last-child .e_wrap .t1 {
          letter-spacing: 0;
          font-size: 14px; }
  #location .dea_area.nihonbashi li {
    width: 47.2%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start; }
    @media screen and (max-width: 767px) {
      #location .dea_area.nihonbashi li {
        width: 100%; } }
    #location .dea_area.nihonbashi li .t1 {
      width: 100%; }
    #location .dea_area.nihonbashi li figure {
      width: 35.5%; }
      @media screen and (max-width: 767px) {
        #location .dea_area.nihonbashi li figure {
          width: 70%;
          margin: 0 auto 3%; } }
    #location .dea_area.nihonbashi li .txt_wrap {
      width: 59.8%; }
      @media screen and (max-width: 767px) {
        #location .dea_area.nihonbashi li .txt_wrap {
          width: 100%; } }
    @media screen and (max-width: 767px) {
      #location .dea_area.nihonbashi li.f {
        order: 1;
        margin-bottom: 5%; } }
    @media screen and (max-width: 767px) {
      #location .dea_area.nihonbashi li.h {
        order: 3;
        margin-bottom: 5%; } }
    @media screen and (max-width: 767px) {
      #location .dea_area.nihonbashi li.g {
        order: 2;
        margin-bottom: 5%; } }
    @media screen and (max-width: 767px) {
      #location .dea_area.nihonbashi li.i {
        order: 4;
        margin-bottom: 5%; } }
#location .sps_wrap {
  background: linear-gradient(to right, #190c3a 0%, #001f55 14.6%, #000 43.6%, #000 100%);
  padding-bottom: 100px; }
  @media screen and (max-width: 767px) {
    #location .sps_wrap {
      padding-bottom: 60px; } }
  #location .sps_wrap .sps {
    background: url(../images/location/sps_bg.png) top center/100% auto no-repeat transparent; }
    #location .sps_wrap .sps_heading {
      text-align: center;
      padding: 3% 0 8%; }
      #location .sps_wrap .sps_heading_01 {
        max-width: 610px;
        width: 95%;
        margin: 0 auto 60px; }
      #location .sps_wrap .sps_heading_02 {
        max-width: 1000px;
        width: 95%;
        margin: 0 auto 30px; }
      #location .sps_wrap .sps_heading_03 {
        color: #fff;
        font-size: 20px;
        line-height: 1.8;
        margin: 0 auto 20px; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps_heading_03 {
            font-size: 4vw;
            font-size: clamp(10px, 4vw, 20px);
            letter-spacing: 0.05em; } }
      #location .sps_wrap .sps_heading_04 {
        color: #fff;
        font-size: 14px;
        line-height: 1.8; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps_heading_04 {
            font-size: 3.4vw;
            font-size: clamp(10px, 3.4vw, 14px);
            letter-spacing: 0.05em; } }
    #location .sps_wrap .sps_list_wrap {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      position: relative; }
      #location .sps_wrap .sps_list_wrap::after {
        content: "";
        position: absolute;
        left: 50%;
        top: 5%;
        height: 90%;
        width: 1px;
        background: linear-gradient(to bottom, rgba(255, 255, 255, 0.4) 0%, rgba(255, 255, 255, 0.7) 25%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.7) 75%, rgba(255, 255, 255, 0.4) 100%); }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps_list_wrap::after {
            display: none; } }
      #location .sps_wrap .sps_list_wrap .sps_list {
        width: 46%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps_list_wrap .sps_list {
            width: 100%;
            margin-bottom: 8%; } }
        #location .sps_wrap .sps_list_wrap .sps_list .t1 {
          padding-bottom: 10px;
          line-height: 1.2; }
        #location .sps_wrap .sps_list_wrap .sps_list.color_gold p {
          color: #bc9e44; }
          #location .sps_wrap .sps_list_wrap .sps_list.color_gold p.t1 {
            border-bottom: solid 1px rgba(188, 158, 68, 0.4); }
        #location .sps_wrap .sps_list_wrap .sps_list.color_white p {
          color: #fff; }
          #location .sps_wrap .sps_list_wrap .sps_list.color_white p.t1 {
            border-bottom: solid 1px rgba(255, 255, 255, 0.4); }
        #location .sps_wrap .sps_list_wrap .sps_list li {
          margin-bottom: 5%; }
          @media screen and (max-width: 767px) {
            #location .sps_wrap .sps_list_wrap .sps_list li {
              margin-bottom: 8%; } }
          #location .sps_wrap .sps_list_wrap .sps_list li:first-child {
            width: 100%; }
          #location .sps_wrap .sps_list_wrap .sps_list li:nth-child(2), #location .sps_wrap .sps_list_wrap .sps_list li:last-child {
            width: 48%; }
    #location .sps_wrap .sps .pos {
      background: #f5f0e3;
      margin-top: 60px; }
      #location .sps_wrap .sps .pos_ttl {
        background-image: url(../images/location/pos_bg.jpg);
        background-position: center center;
        background-size: cover;
        background-repeat: no-repeat;
        padding: 2% 2% 2% 4%; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps .pos_ttl {
            padding: 3%; } }
        #location .sps_wrap .sps .pos_ttl p {
          max-width: 260px;
          width: 70%; }
      #location .sps_wrap .sps .pos_heading {
        padding: 20px 60px; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps .pos_heading {
            padding: 3% 3% 5%; } }
        #location .sps_wrap .sps .pos_heading_01 {
          font-size: 20px;
          margin-bottom: 15px; }
          @media screen and (max-width: 767px) {
            #location .sps_wrap .sps .pos_heading_01 {
              font-size: 4vw;
              font-size: clamp(10px, 4vw, 20px);
              text-align: center; } }
        #location .sps_wrap .sps .pos_heading_02 {
          font-size: 13px; }
          @media screen and (max-width: 767px) {
            #location .sps_wrap .sps .pos_heading_02 {
              font-size: 3.3vw;
              font-size: clamp(10px, 3.3vw, 13px); } }
      #location .sps_wrap .sps .pos_list {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        padding: 20px 60px 0; }
        @media screen and (max-width: 767px) {
          #location .sps_wrap .sps .pos_list {
            padding: 3%; } }
        #location .sps_wrap .sps .pos_list li {
          width: 46%;
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          margin-bottom: 5%; }
          @media screen and (max-width: 767px) {
            #location .sps_wrap .sps .pos_list li {
              width: 100%;
              margin-bottom: 12%; } }
          #location .sps_wrap .sps .pos_list li .txt {
            width: 37%; }
            @media screen and (max-width: 767px) {
              #location .sps_wrap .sps .pos_list li .txt {
                width: 100%; } }
            #location .sps_wrap .sps .pos_list li .txt .t1 {
              margin-top: 0;
              padding-bottom: 10px;
              border-bottom: dashed 1px #000; }
            #location .sps_wrap .sps .pos_list li .txt .t2 {
              margin-bottom: 10px; }
              @media screen and (max-width: 767px) {
                #location .sps_wrap .sps .pos_list li .txt .t2 {
                  margin-bottom: 30px; } }
          #location .sps_wrap .sps .pos_list li .graph {
            width: 60%; }
            @media screen and (max-width: 767px) {
              #location .sps_wrap .sps .pos_list li .graph {
                width: 100%;
                margin-bottom: 15px; } }
          #location .sps_wrap .sps .pos_list li .note {
            letter-spacing: 0; }
          #location .sps_wrap .sps .pos_list li:last-child .txt {
            width: 100%; }
          #location .sps_wrap .sps .pos_list li:last-child .university {
            width: 100%;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between; }
            #location .sps_wrap .sps .pos_list li:last-child .university li {
              width: 48%;
              display: block;
              margin-bottom: 0; }
              #location .sps_wrap .sps .pos_list li:last-child .university li .t1s {
                margin: 5px 0; }
              #location .sps_wrap .sps .pos_list li:last-child .university li .box {
                border: solid 1px #000;
                padding: 0 5px;
                font-size: 12px; }
              #location .sps_wrap .sps .pos_list li:last-child .university li .number {
                letter-spacing: 0;
                padding: 0 5px; }
                #location .sps_wrap .sps .pos_list li:last-child .university li .number span {
                  font-size: 11px; }
          #location .sps_wrap .sps .pos_list li.border {
            position: relative; }
            #location .sps_wrap .sps .pos_list li.border::after {
              content: "";
              position: absolute;
              top: 0;
              left: 110%;
              background: rgba(35, 24, 21, 0.7);
              width: 1px;
              height: 100%; }
#location .mk {
  background-image: url(../images/location/mk_bg.jpg);
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
  color: #fff; }
  @media screen and (max-width: 767px) {
    #location .mk {
      padding: 80px 0 40px; } }
  #location .mk .l_heading_01 {
    max-width: 460px; }
    #location .mk .l_heading_01_wrap::after {
      background: rgba(255, 255, 255, 0.4); }
    #location .mk .l_heading_01::before {
      content: "";
      background: url(../images/location/shopping.svg) left top/100% auto no-repeat;
      width: 40%;
      max-width: 120px;
      height: 32px;
      position: absolute;
      right: 105%;
      top: 0; }
      @media screen and (max-width: 767px) {
        #location .mk .l_heading_01::before {
          top: initial;
          bottom: 130%;
          right: initial;
          left: 0; } }
  #location .mk_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #location .mk_list li {
      width: 30%; }
      @media screen and (max-width: 767px) {
        #location .mk_list li {
          width: 100%;
          margin-bottom: 8%; } }
      #location .mk_list li .t1 {
        letter-spacing: 0;
        padding-bottom: 10px;
        border-bottom: solid 1px rgba(255, 255, 255, 0.4); }
#location .ks {
  background-image: url(../images/location/ks_bg.jpg);
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
  color: #e4d8b4; }
  #location .ks .l_heading_01 {
    max-width: 460px; }
    #location .ks .l_heading_01_wrap::after {
      background: rgba(228, 216, 180, 0.4); }
  #location .ks_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #location .ks_list li .t1 {
      letter-spacing: 0;
      padding-bottom: 10px;
      border-bottom: solid 1px rgba(228, 216, 180, 0.4); }
    #location .ks_list li:first-child {
      width: 45%; }
      @media screen and (max-width: 767px) {
        #location .ks_list li:first-child {
          width: 100%;
          margin-bottom: 8%; } }
      #location .ks_list li:first-child .t1 {
        position: relative; }
        #location .ks_list li:first-child .t1::before {
          content: "";
          background: url(../images/location/art.svg) left top/100% auto no-repeat;
          width: 30%;
          max-width: 50px;
          height: 30px;
          position: absolute;
          top: 0;
          right: 1%; }
    #location .ks_list li:last-child {
      width: 50%; }
      @media screen and (max-width: 767px) {
        #location .ks_list li:last-child {
          width: 100%; } }
      #location .ks_list li:last-child div {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #location .ks_list li:last-child div figure {
          width: 50%; }
          @media screen and (max-width: 767px) {
            #location .ks_list li:last-child div figure {
              width: 100%; } }
        #location .ks_list li:last-child div .txt {
          width: 45%;
          margin-top: auto; }
          @media screen and (max-width: 767px) {
            #location .ks_list li:last-child div .txt {
              width: 100%; } }
          #location .ks_list li:last-child div .txt .t1 {
            width: 100%;
            position: relative; }
            #location .ks_list li:last-child div .txt .t1::before {
              content: "";
              position: absolute; }
        #location .ks_list li:last-child div.l1 {
          margin-bottom: 8%; }
          #location .ks_list li:last-child div.l1 .txt .t1::before {
            background: url(../images/location/cafe&gourmet.svg) left top/100% auto no-repeat;
            width: 100%;
            max-width: 200px;
            height: 50px;
            bottom: 120%;
            left: 3%; }
            @media screen and (max-width: 767px) {
              #location .ks_list li:last-child div.l1 .txt .t1::before {
                left: initial;
                right: 0;
                bottom: 3%;
                width: 55%; } }
        #location .ks_list li:last-child div.l2 .txt .t1::before {
          background: url(../images/location/cafe.png) left top/100% auto no-repeat;
          width: 30%;
          max-width: 100px;
          height: 85px;
          bottom: 60%;
          right: 0; }
          @media screen and (max-width: 767px) {
            #location .ks_list li:last-child div.l2 .txt .t1::before {
              bottom: 3%; } }
#location .pl {
  background-image: url(../images/location/pl_bg.jpg);
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
  color: #006e28; }
  #location .pl .l_heading {
    color: #006e28; }
    #location .pl .l_heading_01 {
      max-width: 220px;
      width: 40%; }
      #location .pl .l_heading_01_wrap::after {
        background: rgba(0, 110, 40, 0.4); }
  #location .pl_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #location .pl_list li .t1 {
      letter-spacing: 0;
      padding-bottom: 10px;
      border-bottom: solid 1px rgba(0, 110, 40, 0.4); }
    #location .pl_list li:first-child {
      width: 50%; }
      @media screen and (max-width: 767px) {
        #location .pl_list li:first-child {
          width: 100%;
          margin-bottom: 8%; } }
      #location .pl_list li:first-child div {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #location .pl_list li:first-child div figure {
          width: 50%; }
          @media screen and (max-width: 767px) {
            #location .pl_list li:first-child div figure {
              width: 100%;
              order: 1; } }
        #location .pl_list li:first-child div .txt {
          width: 45%;
          margin-top: auto; }
          @media screen and (max-width: 767px) {
            #location .pl_list li:first-child div .txt {
              width: 100%;
              order: 2; } }
          #location .pl_list li:first-child div .txt .t1 {
            width: 100%;
            position: relative; }
            #location .pl_list li:first-child div .txt .t1::before {
              content: "";
              position: absolute; }
        #location .pl_list li:first-child div.l1 {
          margin-bottom: 8%; }
          #location .pl_list li:first-child div.l1 .txt {
            margin-top: auto; }
            #location .pl_list li:first-child div.l1 .txt .t1::before {
              background: url(../images/location/green.svg) left top/100% auto no-repeat;
              width: 40%;
              max-width: 70px;
              height: 37px;
              bottom: 120%;
              left: 3%; }
              @media screen and (max-width: 767px) {
                #location .pl_list li:first-child div.l1 .txt .t1::before {
                  left: initial;
                  right: 0;
                  bottom: 3%;
                  width: 55%; } }
    #location .pl_list li:last-child {
      width: 45%; }
      @media screen and (max-width: 767px) {
        #location .pl_list li:last-child {
          width: 100%; } }
#location .lifeinfo {
  padding: 8% 0;
  background: #f5f0e3; }
  #location .lifeinfo_ttl {
    font-size: 20px;
    text-align: center;
    margin: 0 auto 5%; }
    @media screen and (max-width: 767px) {
      #location .lifeinfo_ttl {
        font-size: 6vw;
        font-size: clamp(10px, 6vw, 32px);
        margin-bottom: 8%; } }
  #location .lifeinfo_shops {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 5%; }
    #location .lifeinfo_shops li {
      width: 24%; }
      @media screen and (max-width: 767px) {
        #location .lifeinfo_shops li {
          width: 48%;
          margin-bottom: 8%; } }
      #location .lifeinfo_shops li p {
        letter-spacing: 0; }
  #location .lifeinfo figure {
    margin-bottom: 5%; }
  #location .lifeinfo_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    #location .lifeinfo_list li {
      width: 31%; }
      @media screen and (max-width: 767px) {
        #location .lifeinfo_list li {
          width: 100%;
          margin-bottom: 5%; } }
  #location .lifeinfo .note {
    color: #333333;
    max-width: 860px;
    width: 95%;
    margin: 0 auto 5%; }
    @media screen and (max-width: 767px) {
      #location .lifeinfo .note {
        text-align: left; } }

/* Scss Document */
#access {
  /*common*/
  /*sec1*/
  /*sec2*/
  /*sec3*/
  /*sec4*/
  /*info*/ }
  @media screen and (max-width: 767px) {
    #access .sp_scrool {
      width: 90%;
      margin: 0 auto;
      overflow-x: scroll; } }
  @media screen and (max-width: 767px) {
    #access .sp_scrool img {
      width: 150%;
      max-width: 150%;
      padding: 0 0 30px; } }
  #access .ttlbox {
    margin: 8% 0 5%;
    text-align: center; }
    #access .ttlbox_t1 {
      color: #856d11;
      font-size: 24px;
      padding: 50px 0; }
      @media screen and (max-width: 767px) {
        #access .ttlbox_t1 {
          font-size: 18px; } }
      #access .ttlbox_t1 span {
        font-size: 14px; }
        @media screen and (max-width: 767px) {
          #access .ttlbox_t1 span {
            font-size: 12px; } }
      #access .ttlbox_t1.train {
        background: url(../images/access/sec2_ttl_bg.png) center center/contain no-repeat; }
      #access .ttlbox_t1.taxi {
        background: url(../images/access/sec3_ttl_bg.png) center center/contain no-repeat; }
      #access .ttlbox_t1.bus {
        background: url(../images/access/sec4_ttl_bg.png) center center/contain no-repeat; }
    #access .ttlbox_t2 {
      font-size: 20px;
      margin: 3% 0; }
      @media screen and (max-width: 767px) {
        #access .ttlbox_t2 {
          font-size: 16px;
          margin-bottom: 10%; } }
  #access .main02 {
    position: relative; }
    @media screen and (max-width: 767px) {
      #access .main02 {
        height: 300px;
        background: url(../images/access/m02_img.jpg) center center/cover;
        background-size: cover; } }
    #access .main02 .note {
      position: absolute;
      bottom: 1%;
      right: 0; }
  #access .txt_01 {
    position: absolute;
    top: 32%;
    left: 15%; }
    @media screen and (max-width: 767px) {
      #access .txt_01 {
        width: 80%;
        top: 12%;
        left: 8%; } }
  #access .txt_02 {
    position: absolute;
    top: 54%;
    left: 16%; }
    @media screen and (max-width: 767px) {
      #access .txt_02 {
        top: 40%;
        left: 8%;
        font-size: 12px;
        line-height: 22px; } }
  #access .sec1 {
    background: #f2ecda;
    padding: 0; }
    #access .sec1_flex {
      width: 100%;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #access .sec1_flex figure {
        width: calc(100% /3); }
        @media screen and (max-width: 767px) {
          #access .sec1_flex figure:nth-child(2) {
            width: 100%; } }
        @media screen and (max-width: 767px) {
          #access .sec1_flex figure:nth-child(3) {
            width: 50%; } }
        @media screen and (max-width: 767px) {
          #access .sec1_flex figure:nth-child(4) {
            width: 50%; } }
        #access .sec1_flex figure figcaption {
          text-align: right; }
    #access .sec1 .note {
      width: 100%;
      max-width: 1600px;
      margin: 0 auto; }
    #access .sec1 .txtbox {
      text-align: center;
      width: 95%;
      margin: 0 auto 5%; }
      #access .sec1 .txtbox .t1 {
        width: 100%;
        max-width: 440px;
        margin: 0 auto 20px; }
      #access .sec1 .txtbox .t2 {
        font-size: 20px; }
        @media screen and (max-width: 767px) {
          #access .sec1 .txtbox .t2 {
            font-size: 16px;
            margin-bottom: 7%; } }
      #access .sec1 .txtbox .t4 {
        font-size: 12px;
        line-height: 30px;
        margin-top: 2%; }
        @media screen and (max-width: 767px) {
          #access .sec1 .txtbox .t4 {
            line-height: 22px;
            letter-spacing: 2px; } }
    #access .sec1_lst {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #access .sec1_lst li {
        width: 24%;
        margin-bottom: 1%; }
        @media screen and (max-width: 767px) {
          #access .sec1_lst li {
            width: 49%; } }
        #access .sec1_lst li.ml {
          margin-left: 12.5%; }
          @media screen and (max-width: 767px) {
            #access .sec1_lst li.ml {
              margin-left: 0; } }
        #access .sec1_lst li.mr {
          margin-right: 12.5%; }
          @media screen and (max-width: 767px) {
            #access .sec1_lst li.mr {
              margin-right: 0;
              width: 100%; } }
    #access .sec1_map {
      xmax-width: 1000px;
      width: 95%;
      margin: 0 auto;
      padding-top: 8%; }
    @media screen and (max-width: 767px) {
      #access .sec1 .note.t_right {
        text-align: left; } }
    #access .sec1 .ta {
      color: #000003;
      width: 100%;
      max-width: 1200px;
      align-items: center;
      margin: 0 auto;
      padding-bottom: 60px; }
      @media screen and (max-width: 767px) {
        #access .sec1 .ta {
          width: 90%;
          padding-bottom: 50px; } }
      #access .sec1 .ta_map {
        width: auto;
        max-width: none;
        background: #f2ecda url(../images/access/sec1_img.jpg) top/100% auto no-repeat;
        background-size: cover;
        background-blend-mode: multiply;
        padding-bottom: 5%; }
      #access .sec1 .ta_ttl {
        display: flex;
        align-items: center;
        margin-bottom: 15px;
        margin-top: 100px; }
        @media screen and (max-width: 767px) {
          #access .sec1 .ta_ttl {
            margin-top: 70px; } }
      #access .sec1 .ta_lst {
        display: flex;
        justify-content: center;
        flex-wrap: wrap; }
        @media screen and (max-width: 767px) {
          #access .sec1 .ta_lst {
            margin-bottom: 10%; } }
        #access .sec1 .ta_lst li {
          margin-bottom: 20px;
          margin: 0 50px 20px 50px; }
          @media screen and (max-width: 767px) {
            #access .sec1 .ta_lst li {
              width: 46%;
              margin: 2%; } }
          #access .sec1 .ta_lst li .note {
            margin-top: 3%;
            letter-spacing: 0em; }
        #access .sec1 .ta_lst_1 li:nth-child(3) {
          margin-top: 12px; }
        #access .sec1 .ta_lst_wrap {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          margin: auto; }
          @media screen and (max-width: 767px) {
            #access .sec1 .ta_lst_wrap {
              width: 100%;
              height: auto; } }
        #access .sec1 .ta_lst_box.ri {
          width: 100%; }
          #access .sec1 .ta_lst_box.ri li {
            width: 48%; }
        #access .sec1 .ta_lst_ttl {
          font-size: 28px;
          letter-spacing: 0.05em;
          position: relative;
          margin: 10px 0 30px; }
          @media screen and (max-width: 767px) {
            #access .sec1 .ta_lst_ttl {
              font-size: 18px;
              margin: 5% 0; } }
          #access .sec1 .ta_lst_ttl .ib {
            display: inline-block;
            font-size: 12px; }
            @media screen and (max-width: 767px) {
              #access .sec1 .ta_lst_ttl .ib {
                font-size: 11px;
                line-height: 12px; } }
            #access .sec1 .ta_lst_ttl .ib .ls {
              letter-spacing: 0.41em; }
              @media screen and (max-width: 767px) {
                #access .sec1 .ta_lst_ttl .ib .ls {
                  letter-spacing: 0.39em; } }
          #access .sec1 .ta_lst_ttl .fs {
            font-size: 16px; }
            @media screen and (max-width: 767px) {
              #access .sec1 .ta_lst_ttl .fs {
                font-size: 12px; } }
          #access .sec1 .ta_lst_ttl::after {
            content: "";
            background: #000003;
            height: 1px;
            width: 100%;
            position: absolute;
            bottom: 0;
            left: 0; }
  #access .sec2 {
    position: relative;
    background: linear-gradient(#655782, #313255);
    padding: 80px 0; }
    @media screen and (max-width: 767px) {
      #access .sec2 {
        padding: 40px 0; } }
    #access .sec2 p {
      color: #fff; }
    #access .sec2_ttl {
      font-size: 22px;
      padding: 0 0 20px; }
      @media screen and (max-width: 767px) {
        #access .sec2_ttl {
          font-size: 16px; } }
      #access .sec2_ttl span {
        font-size: 14px; }
        @media screen and (max-width: 767px) {
          #access .sec2_ttl span {
            font-size: 12px; } }
        #access .sec2_ttl span.s1 {
          color: #dfc389;
          font-size: 22px; }
          @media screen and (max-width: 767px) {
            #access .sec2_ttl span.s1 {
              font-size: 20px; } }
    #access .sec2_flex {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #access .sec2_flex .tbox {
        width: 58%; }
        @media screen and (max-width: 767px) {
          #access .sec2_flex .tbox {
            width: 100%; } }
        #access .sec2_flex .tbox .t1 {
          margin: 0 20px 20px 0; }
        #access .sec2_flex .tbox ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          #access .sec2_flex .tbox ul li {
            margin-bottom: 25px; }
            @media screen and (max-width: 767px) {
              #access .sec2_flex .tbox ul li {
                margin-bottom: 10px; } }
            #access .sec2_flex .tbox ul li figure {
              border: 4px solid #fff; }
              #access .sec2_flex .tbox ul li figure._sp {
                margin-bottom: 10px; }
            #access .sec2_flex .tbox ul li:nth-child(1) {
              width: 59%; }
              @media screen and (max-width: 767px) {
                #access .sec2_flex .tbox ul li:nth-child(1) {
                  width: 100%; } }
            #access .sec2_flex .tbox ul li:nth-child(2) {
              width: 38%; }
              @media screen and (max-width: 767px) {
                #access .sec2_flex .tbox ul li:nth-child(2) {
                  width: 47%; } }
            #access .sec2_flex .tbox ul li:nth-child(3) {
              width: 34.1%; }
              @media screen and (max-width: 767px) {
                #access .sec2_flex .tbox ul li:nth-child(3) {
                  width: 51%; } }
            #access .sec2_flex .tbox ul li:nth-child(4) {
              width: 62%; }
              @media screen and (max-width: 767px) {
                #access .sec2_flex .tbox ul li:nth-child(4) {
                  width: 100%; } }
      #access .sec2_flex .ibox {
        width: 38%; }
        @media screen and (max-width: 767px) {
          #access .sec2_flex .ibox {
            width: 100%; } }
    #access .sec2 .note {
      margin-top: 10px;
      width: 100%;
      text-align: right; }
    #access .sec2 .black {
      color: #000;
      text-align: center;
      width: 100%;
      max-width: 1200PX;
      position: absolute;
      bottom: -50px; }
  @media screen and (max-width: 767px) {
    #access .sec3_top {
      margin-top: 60px; } }
  #access .sec3 {
    padding-bottom: 40px; }
    @media screen and (max-width: 767px) {
      #access .sec3 {
        padding: 0; } }
    #access .sec3 .ta {
      width: 100%;
      max-width: 1200px;
      align-items: center;
      margin: 100px auto 15px; }
      @media screen and (max-width: 767px) {
        #access .sec3 .ta {
          width: 90%;
          margin: 30px auto 15px; } }
    #access .sec3_img:first-child {
      width: 75%;
      margin: 50px auto 0; }
      @media screen and (max-width: 767px) {
        #access .sec3_img:first-child {
          width: 100%;
          margin: 40px auto 0; } }
    #access .sec3_img:last-child {
      width: 75%;
      margin: 100px auto 0; }
      @media screen and (max-width: 767px) {
        #access .sec3_img:last-child {
          width: 100%;
          margin: 40px auto 0; } }
    #access .sec3_img .note {
      position: relative;
      bottom: inherit;
      right: inherit;
      color: #000;
      margin-top: 10px; }
  #access .top {
    margin-top: 70px; }
  #access .sec4 {
    padding-bottom: 40px;
    margin-bottom: 30px; }
    @media screen and (max-width: 767px) {
      #access .sec4 {
        padding: 30px 0;
        width: 90%;
        margin: 0 auto; } }
    #access .sec4 .ta {
      width: 100%;
      max-width: 1200px;
      align-items: center;
      margin: 100px auto 15px; }
      @media screen and (max-width: 767px) {
        #access .sec4 .ta {
          margin: 0 auto; } }
    #access .sec4 .txt {
      text-align: center;
      font-size: 21px;
      margin: 50px; }
      @media screen and (max-width: 767px) {
        #access .sec4 .txt {
          margin: 8%;
          font-size: 1.6rem; } }
    #access .sec4 p {
      margin-top: 60px; }
    #access .sec4 .secin {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
    #access .sec4_img {
      width: 23%; }
      @media screen and (max-width: 767px) {
        #access .sec4_img {
          width: 48%;
          margin-bottom: 40px; } }
      #access .sec4_img .note {
        position: relative;
        bottom: inherit;
        right: inherit;
        color: #000;
        margin-top: 10px; }

/* Scss Document */
#design .d_facade {
  background: linear-gradient(to bottom, #000 0%, #000 30%, #fff 30%, #fff 100%);
  position: relative;
  padding: 100px 0 0;
  margin-bottom: 50px; }
  @media screen and (max-width: 768px) {
    #design .d_facade {
      font-size: 12px;
      padding-top: 40px; } }
  #design .d_facade::after {
    content: "";
    background: #6a4e9d;
    height: 50px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: -50px; }
  #design .d_facade_img_wrap {
    background: url(../images/design/d_facade_bg.jpg) left top/200% auto no-repeat #fff; }
    #design .d_facade_img_wrap .d_facade_img {
      width: 80%;
      margin: auto; }
  #design .d_facade_txt_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background: url(../images/design/d_facade_bg.jpg) center top/100% auto no-repeat;
    position: relative; }
    @media screen and (max-width: 768px) {
      #design .d_facade_txt_wrap {
        background: #6a4e9d;
        margin-bottom: 0; } }
    #design .d_facade_txt_wrap::before {
      content: "";
      position: absolute;
      top: 60px;
      right: 0;
      width: 55%;
      height: calc(100% - 120px); }
      @media screen and (max-width: 768px) {
        #design .d_facade_txt_wrap::before {
          background-size: 100% 100%;
          top: 30px;
          height: calc(100% - 60px);
          width: 140%; } }
    #design .d_facade_txt_wrap .d_facade_txt {
      width: 50%;
      margin-left: auto;
      text-align: right;
      position: relative;
      z-index: 1000;
      padding: 15% 0; }
      @media screen and (max-width: 768px) {
        #design .d_facade_txt_wrap .d_facade_txt {
          width: 100%;
          text-align: center;
          padding: 50px 0; } }
      #design .d_facade_txt_wrap .d_facade_txt_1 {
        width: 95%;
        margin: 0 auto 5%; }
      #design .d_facade_txt_wrap .d_facade_txt_2 {
        color: #fff;
        text-align: center;
        font-size: 1vw;
        font-size: clamp(10.5px, 2vw, 22px); }
        @media screen and (max-width: 768px) {
          #design .d_facade_txt_wrap .d_facade_txt_2 {
            font-size: 3vw;
            font-size: clamp(10px, 3vw, 22px); } }
  #design .d_facade .d_material {
    background: #fff; }
    #design .d_facade .d_material .d_facade_img {
      width: 44%;
      position: absolute;
      left: 3%;
      bottom: 0;
      z-index: 900; }
      #design .d_facade .d_material .d_facade_img .note {
        position: absolute;
        right: 5px;
        bottom: 5px; }
    #design .d_facade .d_material_txt_wrap {
      width: 52%;
      margin-left: auto;
      padding: 200px 0 50px;
      position: relative; }
      @media screen and (max-width: 768px) {
        #design .d_facade .d_material_txt_wrap {
          width: 100%;
          padding-top: 180px; } }
      #design .d_facade .d_material_txt_wrap figure {
        position: absolute;
        top: 0;
        left: 0;
        width: 70%;
        max-width: 440px;
        z-index: 1000; }
        @media screen and (max-width: 768px) {
          #design .d_facade .d_material_txt_wrap figure {
            width: 100%;
            max-width: 305px; } }
      #design .d_facade .d_material_txt_wrap p {
        text-align: right;
        letter-spacing: 0.05em; }
        @media screen and (max-width: 768px) {
          #design .d_facade .d_material_txt_wrap p {
            text-align: center; } }
        #design .d_facade .d_material_txt_wrap p.d_material_txt3 {
          font-size: 1.5vw;
          font-size: clamp(12px, 1.5vw, 22px);
          margin: 0 0 5% 0;
          line-height: 1;
          position: relative; }
          @media screen and (max-width: 768px) {
            #design .d_facade .d_material_txt_wrap p.d_material_txt3 {
              text-align: right;
              font-size: 2vw;
              font-size: clamp(10px, 6vw, 22px);
              margin: 0 0 60px 0; } }
          #design .d_facade .d_material_txt_wrap p.d_material_txt3::after {
            content: "";
            position: absolute;
            bottom: 0;
            right: 0;
            width: 83%;
            height: 1px;
            background: #ccc;
            z-index: 1; }
            @media screen and (max-width: 768px) {
              #design .d_facade .d_material_txt_wrap p.d_material_txt3::after {
                width: 80%; } }
        #design .d_facade .d_material_txt_wrap p.d_material_txt4 {
          font-size: 1.3vw;
          font-size: clamp(12px, 1.3vw, 16px);
          margin-bottom: 15px;
          position: relative;
          z-index: 3; }
          @media screen and (max-width: 768px) {
            #design .d_facade .d_material_txt_wrap p.d_material_txt4 {
              font-size: 4.2vw;
              font-size: clamp(10px, 4.2vw, 16px); } }
#design .entrance_img p.secin {
  margin-top: -25px;
  font-size: 10px; }
#design .entrance .txtbox {
  text-align: center;
  padding: 8% 0 0; }
  #design .entrance .txtbox .t1 {
    margin: 0 auto 2%; }
    @media screen and (max-width: 768px) {
      #design .entrance .txtbox .t1 {
        margin: 0 auto 5%; } }
    #design .entrance .txtbox .t1.approach {
      max-width: 250px;
      width: 50%; }
    #design .entrance .txtbox .t1.entrance_hall {
      max-width: 390px;
      width: 70%; }
  #design .entrance .txtbox .t2 {
    margin-bottom: 2%;
    font-size: 24px; }
    @media screen and (max-width: 768px) {
      #design .entrance .txtbox .t2 {
        margin-bottom: 5%;
        font-size: 4vw;
        font-size: clamp(10px, 4vw, 24px); } }
  #design .entrance .txtbox .t3 {
    font-size: 15px;
    margin-bottom: 5%;
    line-height: 1.8; }
    @media screen and (max-width: 768px) {
      #design .entrance .txtbox .t3 {
        margin-bottom: 8%;
        font-size: 3.4vw;
        font-size: clamp(10px, 3.4vw, 15px);
        line-height: 1.6; } }

/* Scss Document */
/*plan
*******************************************/
#plan .sec1 {
  background-color: #fff;
  padding: 0;
  width: 100%; }
  #plan .sec1 .img_lst {
    padding-top: 8%; }
    #plan .sec1 .img_lst .ttl {
      align-items: center;
      max-width: 800px;
      width: 95%;
      margin: 0 auto 5%; }
      #plan .sec1 .img_lst .ttl .inner_wrap {
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding-bottom: 2%;
        margin-bottom: 4%;
        padding-top: 4%; }
        @media screen and (max-width: 767px) {
          #plan .sec1 .img_lst .ttl .inner_wrap {
            display: flex;
            flex-direction: column; } }
      #plan .sec1 .img_lst .ttl .ttl_b {
        color: #000; }
      #plan .sec1 .img_lst .ttl_l {
        width: 10%;
        position: relative; }
        #plan .sec1 .img_lst .ttl_l::before {
          content: "";
          display: block;
          width: 1px;
          height: 110%;
          background-color: #000;
          position: absolute;
          top: -4%;
          left: 170%; }
        @media screen and (max-width: 767px) {
          #plan .sec1 .img_lst .ttl_l::before {
            display: none; } }
        #plan .sec1 .img_lst .ttl_l img.c {
          max-width: 120px; }
          @media screen and (max-width: 767px) {
            #plan .sec1 .img_lst .ttl_l img.c {
              max-width: 60px; } }
        #plan .sec1 .img_lst .ttl_l img.f {
          max-width: 100px; }
          @media screen and (max-width: 767px) {
            #plan .sec1 .img_lst .ttl_l img.f {
              max-width: 64px; } }
        @media screen and (max-width: 767px) {
          #plan .sec1 .img_lst .ttl_l {
            width: 15%; } }
      #plan .sec1 .img_lst .ttl_r {
        text-align: left;
        color: #000;
        width: 97%;
        font-size: 33px;
        letter-spacing: 6px;
        margin: 0 0 0 13%; }
        @media screen and (max-width: 767px) {
          #plan .sec1 .img_lst .ttl_r {
            font-size: 16px;
            letter-spacing: 0.3em;
            line-height: initial;
            width: 100%;
            text-align: center;
            margin: 3% 0 0; } }
        #plan .sec1 .img_lst .ttl_r span {
          font-size: 16px;
          display: inline-block;
          padding-top: 1%;
          letter-spacing: 3px; }
          @media screen and (max-width: 767px) {
            #plan .sec1 .img_lst .ttl_r span {
              font-size: 14px;
              margin: 3% 0 0;
              line-height: 1.6; } }
#plan .sec2 {
  padding: 100px 0;
  background: #e0ddea; }
  @media screen and (max-width: 767px) {
    #plan .sec2 {
      padding-top: 50px;
      padding-bottom: 50px; } }
  #plan .sec2 .secin {
    max-width: 1000px; }
    #plan .sec2 .secin .btn {
      display: flex;
      justify-content: center;
      flex-wrap: wrap; }
      #plan .sec2 .secin .btn li {
        width: 27%;
        margin: 0 3% 5%; }
        @media screen and (max-width: 767px) {
          #plan .sec2 .secin .btn li {
            width: 40%;
            margin: 0 auto 10%; } }
        @media screen and (max-width: 500px) {
          #plan .sec2 .secin .btn li {
            width: 70%;
            margin: 0 auto 10%;
            text-align: center; } }
        #plan .sec2 .secin .btn li a {
          display: inline-block;
          width: 100%; }
          #plan .sec2 .secin .btn li a:hover {
            opacity: 0.6; }

/* type
*******************************************/
#type .main_txt {
  width: auto;
  left: 0;
  right: 0;
  margin: auto; }
#type .sec1 {
  background: #f2f2f2;
  padding-bottom: 100px; }
  @media print {
    #type .sec1 {
      padding-bottom: 0px; } }
#type .pt100 {
  padding-top: 8%; }
#type .type_cont {
  background: #fff;
  max-width: 900px;
  box-sizing: border-box;
  text-align: center;
  padding: 4%;
  margin-bottom: 7%; }
  #type .type_cont_ttl {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
    #type .type_cont_ttl .type_pc {
      width: 47%; }
      @media screen and (max-width: 767px) {
        #type .type_cont_ttl .type_pc {
          width: 85%; } }
    #type .type_cont_ttl .spec_pc {
      width: 51%; }
      @media screen and (max-width: 767px) {
        #type .type_cont_ttl .spec_pc {
          width: 85%; } }
  #type .type_cont_madori {
    width: 50%;
    margin: 10% auto; }
    @media screen and (max-width: 767px) {
      #type .type_cont_madori {
        width: 80%; } }
    #type .type_cont_madori img {
      width: 100%; }
    #type .type_cont_madori.w65 {
      width: 65%; }
    #type .type_cont_madori.w75 {
      width: 75%; }

.btn_print {
  background: linear-gradient(to right, #190c3a, #4f496b, #190c3a);
  width: 80%;
  max-width: 320px;
  height: auto;
  display: block;
  margin: 0 auto;
  color: #ffffff;
  text-align: center;
  padding: 15px 0;
  font-size: 16px;
  font-weight: 800;
  transition: 0.5s;
  position: relative; }
  .btn_print:hover {
    background: #292b35; }

@media print {
  #type .sec1 {
    padding: 20px 0 0; }

  #type .type_cont {
    width: 60%; }

  .type_cont_tit {
    width: 90%;
    max-width: 670px;
    margin: 0 auto 20px; }

  .type_cont_img {
    width: 100%;
    max-width: 670px;
    margin: 0 auto 0; } }
/* Scss Document */
#equipment {
  /*セキュリティ*/ }
  #equipment .sec1 {
    padding-top: 70px; }
    #equipment .sec1 .secin {
      width: 95%;
      max-width: 1000px;
      margin: auto; }
      #equipment .sec1 .secin .sp {
        display: none; }
        @media screen and (max-width: 768px) {
          #equipment .sec1 .secin .sp {
            display: block; } }
      @media screen and (max-width: 768px) {
        #equipment .sec1 .secin .pc {
          display: none; } }
  #equipment .sec1_txt1 {
    font-size: 42px;
    color: #6a4e9d;
    text-align: center;
    margin: 5% auto 2%; }
    @media screen and (max-width: 768px) {
      #equipment .sec1_txt1 {
        font-size: 24px; } }
    #equipment .sec1_txt1 span {
      font-size: 22px; }
      @media screen and (max-width: 768px) {
        #equipment .sec1_txt1 span {
          font-size: 16px; } }
    #equipment .sec1_txt1.ldk {
      width: 50%;
      max-width: 204px;
      margin: 10% auto 2%; }
  #equipment .sec1_txt2 {
    font-size: 18px;
    text-align: center;
    position: relative;
    margin-bottom: 4%; }
    @media screen and (max-width: 768px) {
      #equipment .sec1_txt2 {
        font-size: 14px; } }
  #equipment .bg_lightgray {
    background: #ededf1; }
  #equipment .tab {
    display: flex;
    flex-wrap: nowrap;
    padding: 40px 0;
    justify-content: space-between; }
    #equipment .tab a {
      display: block;
      width: 30.33%;
      margin-right: 3%;
      text-align: center;
      color: #fff;
      position: relative;
      font-size: 22px;
      line-height: 1.4;
      background: #90814b;
      background: -moz-linear-gradient(top, #90814b 0%, #a79940 100%);
      background: -webkit-linear-gradient(top, #90814b 0%, #a79940 100%);
      background: linear-gradient(to bottom, #90814b 0%, #a79940 100%);
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#90814b', endColorstr='#a79940',GradientType=0 );
      padding: 10px 0 20px;
      box-shadow: 0 0 8px 3px rgba(0, 0, 0, 0.5); }
      @media screen and (max-width: 767px) {
        #equipment .tab a {
          font-size: 13px;
          letter-spacing: 0; } }
      #equipment .tab a::after {
        content: "";
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 9px 7px 0 7px;
        border-color: #fff transparent transparent transparent;
        opacity: 0.5;
        position: absolute;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%); }
      #equipment .tab a span {
        font-size: 14px;
        display: block; }
        @media screen and (max-width: 767px) {
          #equipment .tab a span {
            font-size: 10px; } }
  #equipment .eq_tit {
    font-size: 14px;
    font-weight: 800;
    text-align: center;
    margin: 15px 0 5px;
    letter-spacing: 0.1em;
    color: #00113e; }
    @media screen and (max-width: 767px) {
      #equipment .eq_tit {
        letter-spacing: 0em; } }
  #equipment .eq_tlead {
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 15px;
    letter-spacing: 0.1em;
    text-align: center;
    color: #000;
    background: #e5e5e6; }
  #equipment .eq_txt {
    font-size: 12px;
    line-height: 1.5;
    margin-bottom: 30px;
    letter-spacing: 0.1em; }
    #equipment .eq_txt-center {
      text-align: center; }
    #equipment .eq_txt span.note {
      font-size: 11px;
      letter-spacing: 0.05em; }
    #equipment .eq_txt_space {
      letter-spacing: -0.0em; }
  #equipment .eq_lead {
    width: 100%;
    background: url("../images/equipment/lead_bg.jpg") no-repeat center center/cover;
    margin-bottom: 50px;
    padding: 80px 0 100px; }
    @media screen and (max-width: 767px) {
      #equipment .eq_lead {
        margin-bottom: 0%; } }
    #equipment .eq_lead .f_en {
      text-align: center;
      transform-origin: center;
      font-size: 60px;
      color: #7189ba;
      position: relative;
      margin-bottom: 15px; }
      #equipment .eq_lead .f_en p {
        position: relative;
        z-index: 10; }
      #equipment .eq_lead .f_en::after {
        content: "";
        background: #7189ba;
        position: absolute;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%);
        width: 100%;
        max-width: 800px;
        height: 50px;
        z-index: 1; }
      #equipment .eq_lead .f_en span {
        color: #BDBA00; }
    #equipment .eq_lead .c_lead {
      color: #fff;
      font-weight: 100; }
    #equipment .eq_lead_txt1 {
      line-height: 1em;
      font-size: 60px; }
      #equipment .eq_lead_txt1 span {
        font-weight: 700; }
  #equipment .eq_cont {
    display: flex;
    flex-wrap: wrap; }
    #equipment .eq_cont_box {
      width: 100%;
      margin-bottom: 0;
      vertical-align: top;
      /*background: #fff;*/
      padding: 25px 0;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #equipment .eq_cont_box {
          width: 100% !important;
          margin-right: 0 !important;
          margin-bottom: 20px;
          margin-top: 20px;
          padding: 20px 10px; } }
      #equipment .eq_cont_box_tit {
        font-size: 24px;
        color: #6a4e9d;
        line-height: 1;
        margin: 30px 0;
        text-align: center;
        left: 0.4em;
        font-weight: 300;
        display: flex;
        align-items: center;
        position: relative; }
        @media screen and (max-width: 767px) {
          #equipment .eq_cont_box_tit {
            font-size: 20px; } }
        #equipment .eq_cont_box_tit.kit img {
          max-width: 150px;
          width: 40%;
          margin: auto; }
        #equipment .eq_cont_box_tit.bath img {
          max-width: 190px;
          width: 50%;
          margin: auto; }
        #equipment .eq_cont_box_tit.sani img {
          max-width: 380px;
          width: 100%;
          margin: auto; }
        #equipment .eq_cont_box_tit::after {
          content: "";
          background: rgba(35, 24, 21, 0.2);
          height: 1px;
          width: 100%;
          position: absolute;
          bottom: 1px;
          left: 0; }
        #equipment .eq_cont_box_tit .f_en {
          text-align: center;
          transform-origin: center;
          font-size: 26px;
          color: #7189ba; }
          @media screen and (max-width: 767px) {
            #equipment .eq_cont_box_tit .f_en {
              font-size: 20px;
              white-space: nowrap;
              letter-spacing: 0;
              margin: 0 auto; } }
      #equipment .eq_cont_box_img {
        width: 33%;
        display: inline-block;
        margin-right: 2.5%;
        vertical-align: top; }
        @media screen and (max-width: 767px) {
          #equipment .eq_cont_box_img {
            width: 100% !important;
            display: block;
            margin-right: 0;
            margin-bottom: 20px;
            background: #e9e0d6;
            text-align: center; }
            #equipment .eq_cont_box_img img {
              width: 70%; } }
        #equipment .eq_cont_box_img_p {
          color: #fff;
          background: #d4ba60;
          position: absolute;
          bottom: -10px;
          right: 10px;
          border-radius: 30px;
          font-size: 12px;
          padding: 12px 7px;
          letter-spacing: 0; }
      #equipment .eq_cont_box ul {
        width: 63%;
        display: inline-block;
        vertical-align: top;
        font-size: 0; }
        @media screen and (max-width: 767px) {
          #equipment .eq_cont_box ul {
            width: 100% !important;
            display: block; } }
        #equipment .eq_cont_box ul li {
          display: inline-block;
          width: 47%;
          vertical-align: top; }
          @media screen and (max-width: 767px) {
            #equipment .eq_cont_box ul li {
              display: inline-block;
              width: 47%;
              font-size: 14px; } }
          #equipment .eq_cont_box ul li:nth-of-type(2n-1) {
            margin-right: 4%; }
      #equipment .eq_cont_box-pow ul {
        width: 100%; }
        #equipment .eq_cont_box-pow ul li {
          width: 24%; }
          @media screen and (max-width: 767px) {
            #equipment .eq_cont_box-pow ul li {
              width: 100%; } }
          #equipment .eq_cont_box-pow ul li:nth-of-type(2), #equipment .eq_cont_box-pow ul li:nth-of-type(1) {
            margin-right: 4%;
            width: 30%; }
            @media screen and (max-width: 767px) {
              #equipment .eq_cont_box-pow ul li:nth-of-type(2), #equipment .eq_cont_box-pow ul li:nth-of-type(1) {
                margin-right: 0%;
                width: 100%; } }
          @media screen and (max-width: 767px) {
            #equipment .eq_cont_box-pow ul li img {
              width: 70%;
              display: block;
              margin: 0 auto; } }
      #equipment .eq_cont_box-pow .eq_tit {
        text-align: left; }
        @media screen and (max-width: 767px) {
          #equipment .eq_cont_box-pow .eq_tit {
            text-align: center; } }
      #equipment .eq_cont_box-pow hr {
        border-top: 1px solid #000;
        margin: 20px 0; }
        @media screen and (max-width: 767px) {
          #equipment .eq_cont_box-pow hr {
            display: none; } }
      @media screen and (max-width: 767px) {
        #equipment .eq_cont_box:nth-of-type(2n) ul li {
          width: 47%; }
          #equipment .eq_cont_box:nth-of-type(2n) ul li:first-child {
            margin-right: 4% !important; } }
      @media screen and (max-width: 767px) {
        #equipment .eq_cont_box-iot:nth-of-type(2n) ul li {
          width: 80%; } }
  #equipment .bg_sec_lead {
    background: url("../images/equipment/sec_bg.jpg") center center/cover no-repeat;
    width: 100%;
    color: #fff; }
    @media screen and (max-width: 767px) {
      #equipment .bg_sec_lead {
        background: url("../images/equipment/sec_bg_sp.jpg") left 0 center/cover no-repeat;
        width: 100%; } }
    #equipment .bg_sec_lead .secin {
      padding: 100px 0;
      text-align: left;
      max-width: 660px;
      margin: 0 auto;
      text-align: center; }
      #equipment .bg_sec_lead .secin p:nth-of-type(1) {
        margin: 0 auto 10px;
        position: relative;
        padding-bottom: 10px; }
        @media screen and (max-width: 767px) {
          #equipment .bg_sec_lead .secin p:nth-of-type(1) {
            font-size: 20px; } }
        #equipment .bg_sec_lead .secin p:nth-of-type(1)::after {
          content: "";
          background: rgba(255, 255, 255, 0.4);
          height: 1px;
          width: 100%;
          position: absolute;
          bottom: 0;
          left: 0; }
        #equipment .bg_sec_lead .secin p:nth-of-type(1) span {
          font-size: 28px; }
          @media screen and (max-width: 767px) {
            #equipment .bg_sec_lead .secin p:nth-of-type(1) span {
              font-size: 16px; } }
      #equipment .bg_sec_lead .secin .c_lead {
        color: #fff;
        margin-bottom: 20px; }
    #equipment .bg_sec_lead-st {
      background: url("../images/equipment/str_bg.jpg") no-repeat center center;
      background-size: cover;
      position: relative; }
      @media screen and (max-width: 767px) {
        #equipment .bg_sec_lead-st {
          background: url("../images/equipment/str_bg_sp.jpg") no-repeat bottom center;
          background-size: cover; } }
      #equipment .bg_sec_lead-st .secin {
        padding: 100px 0;
        position: initial; }
        #equipment .bg_sec_lead-st .secin p:nth-of-type(1)::after {
          display: none; }
        #equipment .bg_sec_lead-st .secin .eq_lead_txt1 {
          max-width: 460px;
          margin: auto;
          color: #ceb667; }
        #equipment .bg_sec_lead-st .secin .c_lead {
          margin-bottom: 0;
          color: #ceb667; }
      #equipment .bg_sec_lead-st .note {
        position: absolute;
        bottom: 5px;
        right: 5px; }
  #equipment .sec3.bg_01 {
    background: url(../images/equipment/bg_01.png) center center/cover no-repeat;
    padding: 80px 0 10px; }
  #equipment .sec3.bg_02 {
    background: #f3eedd;
    padding: 80px 0 0; }
  #equipment .sec3.bg_03 {
    background: url(../images/equipment/bg_03.png) center center/cover no-repeat;
    padding: 80px 0; }
    #equipment .sec3.bg_03 .secin {
      background: rgba(255, 255, 255, 0.8);
      max-width: 1150px;
      padding: 70px 3%; }
      @media screen and (max-width: 767px) {
        #equipment .sec3.bg_03 .secin {
          padding: 70px 0; } }
  #equipment .sec3 .sec_tit {
    width: 39%;
    margin: 7% auto 5% auto;
    margin-top: 5%; }
  #equipment #tab_security figure .note {
    color: #000; }
  #equipment .sec_txt1 {
    text-align: center;
    color: #bd9e5f;
    font-size: 48px; }
    @media screen and (max-width: 767px) {
      #equipment .sec_txt1 {
        font-size: 20px;
        margin-bottom: 20px; } }
  #equipment .sec_txt2 {
    text-align: center;
    font-size: 32px; }
    @media screen and (max-width: 767px) {
      #equipment .sec_txt2 {
        font-size: 14px; } }
  #equipment .sec_txt3 {
    text-align: center;
    font-size: 18px;
    margin-top: 15px;
    margin-bottom: 80px; }
    @media screen and (max-width: 767px) {
      #equipment .sec_txt3 {
        font-size: 12px;
        margin-bottom: 50px; } }
  #equipment .sec_cont {
    margin-bottom: 35px; }
    #equipment .sec_cont .c_lead2 {
      text-align: center; }
    #equipment .sec_cont .f_en {
      font-size: 40px;
      letter-spacing: 0em; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont .f_en {
          font-size: 35px; } }
    #equipment .sec_cont_tit {
      color: #6a4e9d;
      line-height: 1;
      font-size: 42px;
      margin-bottom: 35px;
      display: flex;
      align-items: center;
      position: relative; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_tit {
          font-size: 22px; } }
      #equipment .sec_cont_tit span {
        font-size: 22px; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_tit span {
            font-size: 14px; } }
  #equipment .sec_cont_img1 {
    display: inline-block;
    width: 35%;
    margin-right: 3%;
    vertical-align: top; }
    @media screen and (max-width: 767px) {
      #equipment .sec_cont_img1 {
        display: block;
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
        vertical-align: top; } }
    #equipment .sec_cont_img1 .eq_tit {
      background: #4e4d50;
      color: #fff;
      text-align: center;
      margin-top: 0;
      margin-bottom: 5px;
      padding: 5px 0;
      font-weight: 400; }
    #equipment .sec_cont_img1 figure {
      border: 1px solid #4e4d50;
      padding: 4%  2%; }
      #equipment .sec_cont_img1 figure .note {
        color: #000; }
  #equipment .sec_cont_li1 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 60px; }
    #equipment .sec_cont_li1 li {
      width: 100%;
      margin-bottom: 60px; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li1 li {
          width: 100% !important; } }
      #equipment .sec_cont_li1 li .eq_sec_img1 {
        width: 70%;
        margin: 80px auto 0; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li1 li .eq_sec_img1 {
            width: 100%; } }
        #equipment .sec_cont_li1 li .eq_sec_img1 figure {
          margin: 0 auto 10px; }
          #equipment .sec_cont_li1 li .eq_sec_img1 figure .note {
            right: initial;
            left: 0;
            bottom: 0;
            color: #231815; }
      #equipment .sec_cont_li1 li .eq_sec_img2 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        padding-top: 10px;
        margin-bottom: 20px; }
        #equipment .sec_cont_li1 li .eq_sec_img2_left {
          width: 30%;
          padding-right: 5%; }
          @media screen and (max-width: 767px) {
            #equipment .sec_cont_li1 li .eq_sec_img2_left {
              width: 100%;
              margin-bottom: 10%; } }
        #equipment .sec_cont_li1 li .eq_sec_img2_right {
          width: 65%; }
          @media screen and (max-width: 767px) {
            #equipment .sec_cont_li1 li .eq_sec_img2_right {
              width: 100%; } }
          #equipment .sec_cont_li1 li .eq_sec_img2_right figure .note {
            right: initial;
            left: 0;
            bottom: 0;
            color: #231815; }
      #equipment .sec_cont_li1 li .eq_sec_img3 {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-top: 60px;
        align-items: flex-end; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li1 li .eq_sec_img3 {
            padding-top: 30px; } }
        #equipment .sec_cont_li1 li .eq_sec_img3_left {
          width: 24%;
          display: flex;
          flex-wrap: nowrap;
          justify-content: space-between;
          align-items: center;
          padding-right: 5%; }
          @media screen and (max-width: 767px) {
            #equipment .sec_cont_li1 li .eq_sec_img3_left {
              width: 65%;
              margin-bottom: 10%; } }
        #equipment .sec_cont_li1 li .eq_sec_img3_right {
          width: 65%; }
          @media screen and (max-width: 767px) {
            #equipment .sec_cont_li1 li .eq_sec_img3_right {
              width: 100%; } }
    #equipment .sec_cont_li1 .eq_tit {
      text-align: left;
      font-size: 18px;
      color: #00113e;
      border-bottom: 1px solid rgba(35, 24, 21, 0.2);
      margin-bottom: 10px;
      padding-bottom: 10px; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li1 .eq_tit {
          font-size: 16px; } }
  #equipment .sec_cont-oth {
    background: #000003;
    color: #fff !important;
    padding: 3% 5% 1%;
    margin-bottom: 0; }
    #equipment .sec_cont-oth .sec_cont_tit {
      color: #fff;
      font-size: 24px; }
      #equipment .sec_cont-oth .sec_cont_tit::after {
        content: "";
        position: absolute;
        bottom: 1px;
        left: 0;
        width: 100%;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3); }
  #equipment .sec_cont_li2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start; }
    #equipment .sec_cont_li2 li {
      width: 23%;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li2 li {
          width: 48%; } }
      #equipment .sec_cont_li2 li .eq_tit {
        color: #fff !important;
        text-align: center; }
      #equipment .sec_cont_li2 li .eq_txt {
        color: #fff !important; }
  #equipment .sec_cont_li1_1 .eq_tit,
  #equipment .sec_cont_li1_2 .eq_tit,
  #equipment .sec_cont_li2 .eq_tit {
    text-align: left; }
  #equipment .str_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 10% 10%; }
    #equipment .str_flex figure:first-child {
      width: 60%; }
      @media screen and (max-width: 767px) {
        #equipment .str_flex figure:first-child {
          width: 100%;
          margin-bottom: 5%; } }
    #equipment .str_flex figure:last-child {
      width: 33%; }
      @media screen and (max-width: 767px) {
        #equipment .str_flex figure:last-child {
          width: 100%; } }
      #equipment .str_flex figure:last-child .note {
        bottom: initial;
        top: 101%; }
  #equipment .sec_cont_li3 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: space-between; }
    #equipment .sec_cont_li3.b-top {
      border-top: solid 1px #ccc;
      padding-top: 5%; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li3.b-top {
          padding-top: 20%; } }
    #equipment .sec_cont_li3.w740 {
      max-width: 740px;
      margin: auto; }
    #equipment .sec_cont_li3.pd {
      padding: 0 10%; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li3.pd {
          padding: 0; } }
    #equipment .sec_cont_li3 li {
      width: 23%; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li3 li {
          width: 80% !important;
          margin-right: auto !important;
          margin-left: auto;
          margin-bottom: 30px; } }
      #equipment .sec_cont_li3 li .din_img {
        width: 94%;
        height: auto; }
      #equipment .sec_cont_li3 li.mr {
        margin-right: 25.5%; }
      #equipment .sec_cont_li3 li.w30 {
        width: 30%; }
      #equipment .sec_cont_li3 li.w33 {
        width: calc(100% / 3);
        padding: 1% 5%; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li.w33 {
            height: initial;
            padding: 0; } }
      #equipment .sec_cont_li3 li.w40 {
        width: 40%;
        padding: 1% 5%; }
      #equipment .sec_cont_li3 li.w50 {
        width: 50%;
        padding: 3% 5%; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li.w50 {
            height: initial;
            padding: 0; } }
        #equipment .sec_cont_li3 li.w50 .box {
          border: solid 2.5px #00113e;
          padding: 7%; }
      #equipment .sec_cont_li3 li.w60 {
        width: 60%;
        padding: 1% 5%; }
      #equipment .sec_cont_li3 li.bl {
        border-right: solid 1px #ccc;
        border-bottom: solid 1px #ccc; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li.bl {
            border-right: none; } }
      #equipment .sec_cont_li3 li.br {
        border-bottom: solid 1px #ccc; }
      #equipment .sec_cont_li3 li.bbn {
        border-bottom: none; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li.bbn {
            border-bottom: solid 1px #ccc; } }
      #equipment .sec_cont_li3 li.border {
        border: solid 1px #999999;
        padding: 2%; }
        #equipment .sec_cont_li3 li.border figure {
          margin-bottom: 5%; }
        #equipment .sec_cont_li3 li.border .c_txt1 {
          letter-spacing: 0.1em; }
        #equipment .sec_cont_li3 li.border .bggray {
          background: #e3e4e7;
          padding: 2%;
          margin-top: 3%; }
        @media screen and (max-width: 768px) {
          #equipment .sec_cont_li3 li.border {
            padding: 5%; } }
      #equipment .sec_cont_li3 li.flex {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center; }
        #equipment .sec_cont_li3 li.flex figure {
          width: 60%; }
          @media screen and (max-width: 768px) {
            #equipment .sec_cont_li3 li.flex figure {
              width: 100%;
              margin-bottom: 8%; } }
        #equipment .sec_cont_li3 li.flex div {
          width: 35%; }
          @media screen and (max-width: 768px) {
            #equipment .sec_cont_li3 li.flex div {
              width: 100%; } }
      #equipment .sec_cont_li3 li .eq_tit-str {
        font-size: 15px;
        letter-spacing: 0.05em;
        color: #00113e;
        border-bottom: none; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li .eq_tit-str {
            font-size: 16px;
            padding: 5px 0; } }
      #equipment .sec_cont_li3 li .c_txt {
        line-height: 1.5;
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li3 li .c_txt {
            line-height: 1.5;
            margin-bottom: 0; } }
      #equipment .sec_cont_li3 li .note {
        color: #000; }
    #equipment .sec_cont_li3 .eq_tit {
      border-bottom: 1px solid #000;
      padding-bottom: 5px;
      margin-bottom: 8px; }
      #equipment .sec_cont_li3 .eq_tit.bbn {
        border-bottom: none; }
      #equipment .sec_cont_li3 .eq_tit-sec {
        background: #28a597;
        color: #fff;
        font-weight: 400;
        border-radius: 25px;
        border-bottom: none;
        font-size: 20px;
        padding: 5px 0; }
  #equipment .sec_cont_li4 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: 1px solid #333;
    margin-bottom: 60px;
    margin-top: 40px; }
    #equipment .sec_cont_li4 li {
      width: 62%;
      margin-bottom: 60px; }
      #equipment .sec_cont_li4 li:nth-child(2) {
        width: 35.5%; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li4 li {
          width: 80% !important;
          margin-right: auto !important;
          margin-left: auto;
          margin-bottom: 30px; } }
      #equipment .sec_cont_li4 li .eq_tit {
        color: #231815;
        border-bottom: none; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li4 li .eq_tit-sec {
          font-size: 18px;
          padding: 5px 0; } }
      #equipment .sec_cont_li4 li .c_txt {
        line-height: 1.5;
        margin-bottom: 30px; }
        @media screen and (max-width: 767px) {
          #equipment .sec_cont_li4 li .c_txt {
            line-height: 1.5;
            margin-bottom: 0; } }
      #equipment .sec_cont_li4 li .note {
        color: #000; }
    #equipment .sec_cont_li4 .eq_tit {
      border-bottom: 1px solid #000;
      padding-bottom: 5px;
      margin-bottom: 8px; }
  #equipment .sec_cont_li5 {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 60px;
    margin-top: 40px;
    padding: 0 10%; }
    @media screen and (max-width: 767px) {
      #equipment .sec_cont_li5 {
        padding: 0; } }
    #equipment .sec_cont_li5 li {
      width: 48%;
      margin-bottom: 60px; }
      @media screen and (max-width: 767px) {
        #equipment .sec_cont_li5 li {
          width: 80% !important;
          margin-right: auto !important;
          margin-left: auto;
          margin-bottom: 0; } }
      #equipment .sec_cont_li5 li .eq_tit {
        color: #ceb667;
        border-bottom: none;
        background: #000003;
        padding: 0;
        font-size: 16px; }
        @media screen and (max-width: 768px) {
          #equipment .sec_cont_li5 li .eq_tit {
            font-size: 14px; } }
      #equipment .sec_cont_li5 li .note {
        color: #000; }
  #equipment .sec1 {
    padding-bottom: 50px; }
  #equipment .str_sumai {
    border: 1px solid #999999;
    padding: 15px 40px;
    margin-top: 40px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start; }
    @media screen and (max-width: 767px) {
      #equipment .str_sumai {
        padding: 15px 20px;
        flex-wrap: wrap; } }
    #equipment .str_sumai figure {
      width: 28%; }
      @media screen and (max-width: 767px) {
        #equipment .str_sumai figure {
          width: 60%;
          margin: 0 auto;
          order: 2; } }
    #equipment .str_sumai p {
      width: 67%;
      height: auto; }
      @media screen and (max-width: 767px) {
        #equipment .str_sumai p {
          width: 100%;
          order: 1; } }
  #equipment .bg_iot {
    padding: 50px 0 100px;
    background: url(../images/equipment/iot_bg.jpg) center center/cover no-repeat; }
    @media screen and (max-width: 767px) {
      #equipment .bg_iot {
        padding: 30px 0 80px; } }
    #equipment .bg_iot .secin {
      background: rgba(255, 255, 255, 0.95);
      color: #333; }
    #equipment .bg_iot .eq_cont::before {
      display: block;
      width: calc(100% - 24px);
      height: calc(100% - 24px);
      content: "";
      top: 11px;
      left: 11px;
      border: 1px solid #bc9e44;
      position: absolute;
      z-index: 10; }
    #equipment .bg_iot .eq_cont_box {
      position: relative;
      padding: 25px 80px;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .eq_cont_box {
          margin-bottom: 0;
          margin-top: 0;
          padding: 20px 5%; } }
    #equipment .bg_iot .sma_lead {
      background: url("../images/equipment/iot_bg2.png");
      background-position: bottom right;
      background-repeat: no-repeat;
      width: 100%;
      z-index: 10;
      position: relative; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_lead {
          padding: 0 0;
          background-size: 70% auto; } }
      #equipment .bg_iot .sma_lead_tit {
        width: 100%;
        background-size: auto 100%;
        position: relative;
        padding: 40px 80px;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_lead_tit {
            padding: 20px 15px; } }
        #equipment .bg_iot .sma_lead_tit .f_en {
          font-size: 8vw;
          font-size: clamp(20px, 8vw, 100px);
          letter-spacing: 0;
          white-space: nowrap;
          color: #bc9e44;
          transform: scale(0.9, 1);
          text-align: center;
          font-weight: 100; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_lead_tit .f_en {
              font-size: 10vw;
              line-height: 1; } }
        #equipment .bg_iot .sma_lead_tit .note {
          position: absolute;
          bottom: 5px;
          right: 10px;
          color: #fff; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_lead_tit .note {
              right: 5%; } }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_lead_flex {
          flex-wrap: wrap; } }
      #equipment .bg_iot .sma_lead_flex figure {
        width: 35%; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_lead_flex figure {
            width: 40%;
            order: 2;
            padding-top: 15px; } }
      #equipment .bg_iot .sma_lead_flex_txt {
        width: 61%;
        margin-bottom: 3%; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_lead_flex_txt {
            width: 100%;
            order: 1; } }
        #equipment .bg_iot .sma_lead_flex_txt p {
          line-height: 2.3;
          margin-bottom: 30px; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_lead_flex_txt p {
              line-height: 1.6; } }
        #equipment .bg_iot .sma_lead_flex_txt .c_lead {
          line-height: 1.8;
          margin-bottom: 20px;
          color: #00113e; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_lead_flex_txt .c_lead {
              font-size: 16px; } }
    #equipment .bg_iot .sma_cont {
      margin-top: 40px;
      margin-bottom: 80px;
      position: relative;
      width: 100%;
      padding: 20px 0;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_cont {
          padding: 20px 15px;
          margin: 20px 0 0; } }
      #equipment .bg_iot .sma_cont .c_lead2 {
        font-size: 30px;
        font-weight: 800;
        color: #231815; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_cont .c_lead2 {
            font-size: 16px; } }
      #equipment .bg_iot .sma_cont .c_lead3 {
        color: #231815; }
      #equipment .bg_iot .sma_cont_tit {
        position: relative;
        z-index: 5;
        padding-left: 10px; }
        @media screen and (max-width: 480px) {
          #equipment .bg_iot .sma_cont_tit {
            padding: 10px 5px 5px;
            margin-bottom: 10px; } }
        #equipment .bg_iot .sma_cont_tit-img {
          padding-left: 100px; }
          @media screen and (max-width: 480px) {
            #equipment .bg_iot .sma_cont_tit-img {
              padding: 10px 5px 5px 65px;
              margin-bottom: 20px; } }
          #equipment .bg_iot .sma_cont_tit-img img {
            display: block; }
        #equipment .bg_iot .sma_cont_tit .c_lead2 {
          font-size: 22px; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_cont_tit .c_lead2 {
              margin-bottom: 10px;
              font-size: 13px;
              letter-spacing: 0; } }
        #equipment .bg_iot .sma_cont_tit img {
          position: absolute;
          width: 115px;
          top: -25px;
          height: auto;
          left: -25px; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_cont_tit img {
              top: -8px; } }
          @media screen and (max-width: 480px) {
            #equipment .bg_iot .sma_cont_tit img {
              width: 75px;
              top: -18px;
              left: -15px; } }
      #equipment .bg_iot .sma_cont_box {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        z-index: 4; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_cont_box {
            flex-wrap: wrap; } }
        #equipment .bg_iot .sma_cont_box figure {
          width: 60%; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_cont_box figure {
              width: 100%;
              order: 2; } }
        #equipment .bg_iot .sma_cont_box_txt {
          width: 36%; }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_cont_box_txt {
              width: 100%;
              order: 1; } }
          #equipment .bg_iot .sma_cont_box_txt p {
            margin-bottom: 20px; }
            #equipment .bg_iot .sma_cont_box_txt p.note {
              margin-bottom: 0; }
            @media screen and (max-width: 767px) {
              #equipment .bg_iot .sma_cont_box_txt p {
                padding-left: 100px; } }
            @media screen and (max-width: 480px) {
              #equipment .bg_iot .sma_cont_box_txt p {
                padding-left: 0; } }
          @media screen and (max-width: 767px) {
            #equipment .bg_iot .sma_cont_box_txt figure {
              margin-bottom: 25px; } }
    #equipment .bg_iot .sma_cont-1, #equipment .bg_iot .sma_cont-2 {
      width: 48%;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_cont-1, #equipment .bg_iot .sma_cont-2 {
          width: 100%; } }
      #equipment .bg_iot .sma_cont-1 .sma_cont_box, #equipment .bg_iot .sma_cont-2 .sma_cont_box {
        display: block; }
        #equipment .bg_iot .sma_cont-1 .sma_cont_box figure, #equipment .bg_iot .sma_cont-2 .sma_cont_box figure {
          width: 100%;
          margin-bottom: 3%; }
        #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt {
          width: 100%; }
          #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap; }
            #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex figure, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex figure {
              width: 100%; }
              @media screen and (max-width: 767px) {
                #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex figure, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex figure {
                  order: 1; } }
            #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex .c_txt, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex .c_txt {
              width: 37%;
              line-height: 1.6;
              margin-bottom: 0; }
              @media screen and (max-width: 767px) {
                #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex .c_txt, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex .c_txt {
                  width: 100%;
                  margin-bottom: 3%;
                  order: 2; } }
            #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex p:last-child, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex p:last-child {
              width: 60%; }
              @media screen and (max-width: 767px) {
                #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex p:last-child, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex p:last-child {
                  width: 100%;
                  order: 3; } }
              #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex p:last-child.note, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex p:last-child.note {
                text-align: right;
                margin-top: auto; }
                @media screen and (max-width: 767px) {
                  #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.flex p:last-child.note, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.flex p:last-child.note {
                    text-align: left;
                    margin-top: 0; } }
          #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.mt, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.mt {
            margin-top: -18%; }
            @media screen and (max-width: 767px) {
              #equipment .bg_iot .sma_cont-1 .sma_cont_box .sma_cont_box_txt.mt, #equipment .bg_iot .sma_cont-2 .sma_cont_box .sma_cont_box_txt.mt {
                margin-top: 0; } }
    #equipment .bg_iot .sma_cont-3 .sma_cont_tit {
      background: #bc9e44; }
      #equipment .bg_iot .sma_cont-3 .sma_cont_tit .c_lead2 {
        color: #fff; }
    #equipment .bg_iot .sma_cont-3 .c_txt {
      margin-bottom: 3%;
      line-height: 1.5; }
    #equipment .bg_iot .sma_cont-3 .sma_cont_box figure {
      width: 31%; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_cont-3 .sma_cont_box figure {
          width: 100%;
          margin-bottom: 5%;
          order: 1; } }
    #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt {
      width: 66%;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt {
          width: 100%;
          order: 2; } }
      #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt p {
        width: 30%;
        padding-left: 0 !important; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt p {
            width: 100%; } }
      #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt figure {
        width: 65%; }
        @media screen and (max-width: 767px) {
          #equipment .bg_iot .sma_cont-3 .sma_cont_box .sma_cont_box_txt figure {
            width: 100%; } }
    #equipment .bg_iot .mult_cont {
      padding-bottom: 30px; }
      @media screen and (max-width: 767px) {
        #equipment .bg_iot .mult_cont {
          width: 90%;
          margin: 0 auto 10px; } }

/* Scss Document */
#outline .main_bg,
#outline .main_bg,
#accessmap .main_bg,
#accessmap .main_bg {
  width: 100%;
  max-height: 500px; }
  @media screen and (max-width: 767px) {
    #outline .main_bg,
    #outline .main_bg,
    #accessmap .main_bg,
    #accessmap .main_bg {
      width: 100%;
      max-height: 400px; } }
#outline .sec1,
#accessmap .sec1 {
  padding: 0 0 50px;
  background: #f2f2f2; }

/* outline
*******************************************/
#outline h2 {
  padding: 40px;
  font-size: 24px;
  color: #333333;
  text-align: center; }
#outline .outline_cont {
  box-sizing: border-box;
  text-align: center;
  padding: 40px 0;
  background: #fff;
  margin: 0 auto 0; }
  #outline .outline_cont h3 {
    color: #998675;
    margin-bottom: 40px;
    margin-top: 20px;
    font-size: 22px; }
#outline .outline_table {
  max-width: 900px;
  margin: 0 auto;
  border: 1px solid #998675;
  padding: 20px 30px;
  margin-bottom: 40px; }
  #outline .outline_table_tr {
    display: flex;
    flex-wrap: nowrap;
    border-bottom: 1px solid #998675;
    font-size: 14px;
    text-align: left; }
    @media screen and (max-width: 767px) {
      #outline .outline_table_tr {
        font-size: 12px;
        letter-spacing: 0; } }
    #outline .outline_table_tr-last {
      border-bottom: none; }
    #outline .outline_table_tr p:nth-of-type(1) {
      width: 240px;
      padding: 10px 20px 10px 10px; }
      @media screen and (max-width: 767px) {
        #outline .outline_table_tr p:nth-of-type(1) {
          width: 130px;
          padding: 10px 20px 10px 0; } }
    #outline .outline_table_tr p:nth-of-type(2) {
      width: calc(100% - 240px);
      padding: 10px 0; }
      @media screen and (max-width: 767px) {
        #outline .outline_table_tr p:nth-of-type(2) {
          width: calc(100% - 130px);
          padding: 10px 0; } }

/* accessmap
*******************************************/
#accessmap h2 {
  padding: 40px;
  font-size: 24px;
  color: #333333;
  text-align: center; }
#accessmap .accessmap_cont {
  max-width: 1000px;
  box-sizing: border-box;
  text-align: center;
  padding: 40px 0 50px;
  margin-bottom: 50px;
  background: #fff; }
  #accessmap .accessmap_cont .map {
    max-width: 900px;
    margin: 0 auto 40px;
    display: block; }
#accessmap .accessmap_btn {
  display: flex;
  max-width: 670px;
  margin: 0 auto; }
  #accessmap .accessmap_btn li {
    width: 48%; }
    #accessmap .accessmap_btn li:first-child {
      margin-right: 4%; }
    #accessmap .accessmap_btn li a {
      width: 100%;
      height: 100%;
      background: #6a4e9a;
      display: block;
      text-align: center;
      color: #fff;
      padding: 15px 0; }
      #accessmap .accessmap_btn li a img {
        width: 20px;
        height: auto;
        margin-right: 10px; }

@media print {
  #type .sec1 {
    padding: 20px 0 0; } }
