@charset "UTF-8";
/* これはSCSS Document */
.page_header {
  background: url("../images/access/mv.jpg") center center no-repeat;
  background-size: cover; }

@media (max-width: 480px) {
  .page_header {
    background: url("../images/access/mv.jpg") center center no-repeat;
    background-size: auto 100%; } }
/*max-width:480px*/
/**************************************************************/
.access_all {
  padding: 60px 0 150px; }

@media (max-width: 768px) {
  .access_all {
    padding: 10px 0 100px; } }
/*max-width:768px*/
/*max-width:480px*/
/**************************************************************/
.gmap {
  width: calc(100% - 40px);
  margin: 0 auto 50px;
  max-width: 1080px; }
  .gmap iframe {
    width: 100%;
    height: 450px; }

@media (max-width: 480px) {
  .gmap {
    width: calc(100% - 30px); }
    .gmap iframe {
      height: 220px; } }
/*max-width:480px*/
/**************************************************************/
.access,
.flow {
  max-width: 1000px;
  width: calc(100% - 40px);
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  align-items: flex-start; }
  .access h3,
  .flow h3 {
    width: 130px;
    height: 130px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: center;
    justify-content: center;
    align-items: center;
    background-color: #DF7A5F;
    border-radius: 10px;
    color: #fff;
    font: 22px/1.4em 'Noto Sans JP', sans-serif;
    font-weight: 700;
    text-align: center; }
  .access > div,
  .flow > div {
    width: calc(100% - 150px);
    max-width: 820px; }

.access {
  margin: 0 auto 150px; }
  .access h4 {
    font: 20px/1.0em 'Noto Sans JP', sans-serif;
    font-weight: bold;
    color: #4E4770;
    margin: 0 0 20px;
    position: relative;
    padding: 8px 0 0 0; }
    .access h4:before {
      position: absolute;
      content: "";
      display: block;
      left: -60px;
      top: 0; }
    .access h4.train:before {
      background: url("../images/access/icon-01.svg") center center no-repeat;
      background-size: contain;
      display: block;
      width: 41px;
      height: 47px; }
    .access h4.car:before {
      background: url("../images/access/icon-02.svg") center center no-repeat;
      background-size: contain;
      display: block;
      width: 41px;
      height: 37px; }
    .access h4.toho:before {
      background: url("../images/access/icon-03.svg") center center no-repeat;
      background-size: contain;
      display: block;
      width: 23px;
      height: 47px;
      left: -50px; }
  .access p {
    font: 17px/2.0em 'Noto Sans JP', sans-serif;
    font-weight: 400;
    margin: 0 0 15px; }
    .access p.toho_txt {
      margin: 0 0 50px; }
  .access > div {
    padding: 0 0 0 60px; }
  .access dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: flex-start;
    font: 17px/2.0em 'Noto Sans JP', sans-serif;
    font-weight: 400;
    margin: 0 0 40px; }
  .access dt {
    width: 140px;
    padding: 0 0 0 10px;
    border: 1px solid #C9CACA;
    margin: 0 0 10px; }
  .access dd {
    width: calc(100% - 160px);
    margin: 0 0 10px; }
  .access .sub {
    border: 3px solid #4E4770;
    padding: 10px 15px;
    font: 16px/1.8em 'Noto Sans JP', sans-serif;
    font-weight: 700;
    max-width: 580px; }

.flow p {
  font: 17px/2.0em 'Noto Sans JP', sans-serif;
  font-weight: 400;
  margin: 0 0 0px; }
.flow dl {
  margin: 40px 0; }
.flow dt {
  display: inline-block;
  border: 1px solid #4E4770;
  font: 17px/2.0em 'Noto Sans JP', sans-serif;
  font-weight: 500;
  padding: 0 20px;
  margin: 0 0 18px; }
.flow dd {
  font: 17px/1.0em 'Noto Sans JP', sans-serif;
  font-weight: 400;
  position: relative;
  margin: 0 0 13px;
  padding: 0 0 0 18px; }
  .flow dd:before {
    display: block;
    position: absolute;
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #333;
    left: 7px;
    top: 7px; }
.flow .map {
  background: url("../images/access/map.png") center center no-repeat;
  background-size: contain;
  max-width: 506px;
  width: 100%;
  height: 595px;
  margin: 60px auto 0; }

/*max-width:1280px*/
@media (max-width: 1024px) {
  .access,
  .flow {
    max-width: 640px;
    width: calc(100% - 40px); }
    .access h3,
    .flow h3 {
      width: 100%;
      height: auto;
      padding: 10px 0;
      margin: 0 auto 35px; }
      .access h3 br,
      .flow h3 br {
        display: none; }
    .access > div,
    .flow > div {
      width: 100%; }

  .access {
    margin: 0 auto 100px; }
    .access h4 {
      margin: 0 0 30px;
      position: relative;
      padding: 5px 0 0 50px; }
      .access h4:before {
        left: 0;
        top: 0; }
      .access h4.train:before {
        width: 41px;
        height: 38px; }
      .access h4.car:before {
        width: 41px;
        height: 32px; }
      .access h4.toho:before {
        width: 23px;
        height: 40px;
        left: 10px;
        top: -10px; }
    .access p {
      margin: -10px 0 15px; }
      .access p.toho_txt {
        margin: -15px 0 60px; }
    .access > div {
      padding: 0; }
    .access dt {
      margin: 0 0 5px; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .access,
  .flow {
    max-width: 480px;
    width: calc(100% - 40px); }
    .access h3,
    .flow h3 {
      font: 20px/1.4em 'Noto Sans JP', sans-serif;
      font-weight: 700;
      padding: 8px 0;
      margin: 0 auto 25px; }

  .access {
    margin: 0 auto 80px; }
    .access h4 {
      font: 18px/1.0em 'Noto Sans JP', sans-serif;
      font-weight: 700; }
      .access h4.train:before {
        width: 41px;
        height: 38px; }
      .access h4.car:before {
        width: 41px;
        height: 32px; }
    .access p {
      font: 16px/1.8em 'Noto Sans JP', sans-serif;
      font-weight: 400; }
    .access dl {
      font: 16px/2.0em 'Noto Sans JP', sans-serif;
      font-weight: 400;
      margin: 0 auto 40px; }
    .access dt {
      width: auto;
      display: inline-block;
      padding: 0 10px;
      text-align: center; }
    .access dd {
      width: 100%;
      margin: 0 0 20px; }

  .flow p {
    font: 16px/1.8em 'Noto Sans JP', sans-serif;
    font-weight: 400; }
  .flow dd {
    font: 16px/1.0em 'Noto Sans JP', sans-serif;
    font-weight: 400; }
  .flow .map {
    max-width: 506px;
    width: 100%;
    height: 0;
    padding: 120% 0 0; } }
/*max-width:768px*/
/*max-width:480px*/
/**************************************************************/
