@charset "UTF-8";
/* ----------------------------------------------------------------
    home ホーム
  ----------------------------------------------------------------- */
body.home {
 background-color: #54b24c;
 position: relative;
}
body.home #kv {
 height: calc(66.7vw - 0px);
 margin: 60px auto 0;
 position: relative;
 width: 100%;
}
@media only screen and (max-width: 1280px) {
body.home #kv {
 height: auto;
 }
}

/* スクロールダウン */
body.home #kv  .arrowInner {
	top: calc(4.17785vw + 0px);
	height: 15px;
	position: absolute;
	right: 50px;
}	
body.home #kv  .arrowInner p {
	color: #23418c;
	font-family: minion-3-display, serif;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	width: 100px;
}
body.home #kv .arrow {
	background-color: #23418c;
	display: block;
	width: 2px;
 height: calc(55.102vw - 8.3557vw - 0px);
	margin: 10px auto 0;
	position: relative;
	overflow: hidden;
}
body.home #kv  .arrow::before {
	animation: arrow 10s ease-in-out infinite normal;
	-webkit-animation: arrow 5s ease-in-out infinite normal;
	display: block;
	content: '';
	width: 2px;
 height: calc(55.102vw - 8.3557vw - 0px);
 margin: 26px auto 0;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
}
@keyframes arrow {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(100%);
	}
}
@-webkit-keyframes arrow {
	0% {
		transform: translateY(-100%);
	}
	100% {
		transform: translateY(100%);
	}
}

body.home .copy {
 color: #fff;
 font-size: 1.875vw;
 font-weight: bold;
 letter-spacing: 10px;
 white-space: nowrap;
 width: 100%;
 text-align: center;
}
.copy1 {
 position: fixed;
 top: calc(55.102vw - 3.4146vw - 0px);
 top: calc(30px + 60px);
 left: 0%;
 z-index: -1;
}
.copy2 {
 position: absolute;
 top: calc(55.102vw - 3.4146vw - 0px);
 left: 0;
 animation: typewriter 1s steps(44) 1s 1 normal both;
 animation-delay: 2s;
}
.copy3 {
 position: absolute;
 top: calc(55.102vw - 3.4146vw - 0px);
 left: 5%;
 animation: typewriter 1s steps(44) 1s 1 normal both;
 animation-delay: 3s;
}
@keyframes typewriter {
 from {
  width: 0;
 }
 to {
  width: 36em;
 }
}
body.home .slider-wrap {
 height: calc(55.102vw + 44px);
 margin: 60px auto 0;
}
body.home .slider {
 position: fixed;
 width: 100%;
 z-index: -2;
}
body.home main {
 border-bottom: none;
 display: block;
 margin: 0 auto;
 padding-bottom: 0;
 width: 100%;
}
.loop-txt {
 contain: paint;
 margin-top: -8.3557vw;
 margin-top: calc(-8.3557vw + 44px);
 opacity: 1;
 width: 100%;
 z-index: 1;
 height: calc(8.3557vw + 8.3557vw + 2.2764vw + 1px);
 position: relative;
}
.loop-txt::after {
 background-color: #54b24c;
 bottom: 0;
 content: "";
 height: calc(8.3557vw + 2.2764vw + 1px);
 position: absolute;
 width: 100%;
 z-index: -1;
}
.loop-txt .loop-img {
 display: flex;
 height: auto;
 position: sticky;
 top: calc(55.102vw - 0px);
 width: 125vw;
}
.loop-txt .loop-img img {
 animation: loop 50s -25s linear infinite;
 height: 100%;
 max-width: none;
 width: 100%;
}
.loop-txt .loop-right img {
 animation: loop_right 50s -25s linear infinite;
}
.loop-txt .loop-right img + img {
 animation: loop_right2 50s linear infinite;
}
.loop-txt .loop-left img {
 animation: loop_left 50s -25s linear infinite;
}
.loop-txt .loop-left img + img {
 animation: loop_left2 50s linear infinite;
}
@keyframes loop_right {
 0% {
  transform: translateX(-100%);
 }
 to {
  transform: translateX(100%);
 }
}
@keyframes loop_right2 {
 0% {
  transform: translateX(-200%);
 }
 to {
  transform: translateX(0);
 }
}
@keyframes loop_left {
 0% {
  transform: translateX(100%);
 }
 to {
  transform: translateX(-100%);
 }
}
@keyframes loop_left2 {
 0% {
  transform: translateX(0);
 }
 to {
  transform: translateX(-200%);
 }
}
body.home #service-list {
 background-color: #54b24c;
 padding: 0 0 5%;
 width: 100%;
}
body.home #service-list .logo {
 padding-top: 5%;
 margin: 0 auto 1%;
 max-width: 910px;
 width: 90%;
}
body.home #service-list .sec-txt {
 color: #333;
 font-weight: 300;
 font-size: 20px;
 line-height: 2;
 padding-top: 25px;
 text-align: center;
 position: relative;
 z-index: 1;
}
body.home #service-list .sec-wrap {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 margin: 0 auto;
 width: 90%;
 position: relative;
 z-index: 1;
}
body.home #service-list .l-container {
 padding: 5% 0.5% 1%;
 text-align: center;
 width: 50%;
}
body.home #service-list .mino {
 margin: 0 auto;
 width: 33.3%;
}
body.home #service-list .l-inr {
 padding: 0%;
 width: 100%;
}
body.home #service-list .l-inr:before {}
body.home #service-list .l-container img {
 box-shadow:
  0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 101px 74px rgba(0, 0, 0, 0.13);
 box-shadow: 5px 5px 10px 0px rgba(170, 168, 168, 0.4);
}
body.home #service-list .l-txt {
 color: #fff;
 font-family: YakuHanJP, 'Oswald', 'Noto Sans JP', sans-serif;
 font-size: 30px;
 line-height: 1;
 margin-top: 1%;
}
@media only screen and (max-width: 1024px) {
body.home #service-list .sec-wrap {
 display: block;
}
body.home #service-list .l-container {
 padding: 5% 0% 1%;
 margin: 0 auto;
 width: 100%;
}
body.home #service-list .mino {
 margin: 0 auto;
 width: 33.3%;
}
body.home #service-list .l-inr {
 padding: 0%;
 width: 100%;
}
body.home #service-list .l-inr:before {}
body.home #service-list .l-container img {
 box-shadow:
  0 1.9px 2.5px rgba(0, 0, 0, 0.057), 0 5px 6.1px rgba(0, 0, 0, 0.076), 0 10.1px 11.4px rgba(0, 0, 0, 0.086), 0 19.2px 19.8px rgba(0, 0, 0, 0.092), 0 38.4px 34.8px rgba(0, 0, 0, 0.1), 0 101px 74px rgba(0, 0, 0, 0.13);
 box-shadow: 5px 5px 10px 0px rgba(170, 168, 168, 0.4);
}
body.home #service-list .l-txt {
 color: #fff;
 font-family: YakuHanJP, 'Oswald', 'Noto Sans JP', sans-serif;
 font-size: 30px;
 line-height: 1;
 margin-top: 1%;
}}




body.home #sec-news {
 background-color: #fff;
 padding: 100px 0 85px;
}
body.home #sec-news .sec-outer {
 align-items: flex-start;
 display: flex;
 justify-content: space-between;
 margin: 100px auto 85px;
 margin: 0 auto;
 max-width: 1100px;
 width: 90%;
}
body.home #sec-news .sec-tit {
 color: #362f26;
 margin-top: 20px;
 width: 214px
}
body.home #sec-news .button {
 border: 1px #333 solid;
 cursor: pointer;
 display: block;
 font-size: 16px;
 justify-content: center;
 padding: 15px 0;
 text-align: center;
 width: 165px;
 white-space: nowrap;
}
body.home #sec-news .sec-wrap {
 width: calc(100% - 264px);
}
body.home #sec-news .post-wrap {
 align-items: center;
 border-top: 1px solid #ccc;
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-start;
 padding: 30px 0;
 position: relative;
 width: 100%;
}
body.home #sec-news .post-wrap:last-child {
 border-bottom: 1px solid #ccc;
}
body.home #sec-news .post-cate {
 background-color: #ea5504;
 color: #fff;
 font-size: 12px;
 line-height: 1;
 padding: 5px 0;
 text-align: center;
 width: 75px;
}
body.home #sec-news .post-date {
 color: #000;
 font-size: 20px;
 font-weight: 700;
 line-height: 1;
 padding: 5px 0;
 text-align: left;
 width: 125px;
}
body.home #sec-news .post-tit {
 color: #333;
 font-size: 18px;
 line-height: 1.5;
 padding-left: 10px;
 overflow: hidden;
 text-overflow: ellipsis;
 width: calc(100% - 200px);
 white-space: nowrap;
}
body.home #sec-news .post-tit a:hover {
 text-decoration: underline;
}
body.home #sec-news .post-new {
 background-color: #0d57a7;
 color: #f5ce21;
 font-family: YakuHanJP, 'Oswald', 'Noto Sans JP', sans-serif;
 font-size: 14px;
 left: 0;
 line-height: 1;
 padding: 5px 0;
 position: absolute;
 text-align: center;
 width: 70px;
}
body.home #sec-news .txt-link {
 margin-bottom: 30px;
 text-align: center;
}
body.home #sec-news small {
 display: block;
 font-size: 14px;
 line-height: 1.5;
 margin-top: 10px;
}
body.home #sec-link {
 background-color: #fff;
 padding-bottom: 100px;
}
body.home #sec-link .sec-wrap {
 margin: 0 auto;
 max-width: 1100px;
 width: 90%;
}
body.home #sec-link .l-container {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 width: 100%;
}
body.home #sec-link .l-item {
 margin-top: 15px;
 width: calc(33.3% - 10px);
}
body.home #sec-link .l-item img {}
body.home #sec-link .l-item a {
 border: 1px solid #000;
 display: block;
 padding: 5% 20%;
}
body.home #sec-link .l-item a:hover {
 background-color: #efefef;
 transition: 0.3S;
}
body.home footer {
 margin-top: 0;
}


@media only screen and (max-width: 1024px) {
 body.home .copy {
  font-size: 3.0vw;
  letter-spacing: 1vw;
  margin: 0 5%;
  overflow: visible;
  text-align: center;
  transform: translateY(-100%);
  white-space: normal;
  width: 90%;
 }
 .copy1 {
  position: absolute;
  bottom: calc(0vw + 0vw - 0px);
  left: 1vw;
  animation: none;
 }
 body.home .slider {
  position: absolute;
 }
 body.home .slider-wrap {
  margin: 60px auto 0;
 }
 body.home main {
  border-bottom: none;
  display: block;
  margin: 0 auto;
  padding-bottom: 0;
  width: 100%;
 }
 .loop-txt {
  contain: paint;
  height: calc(8.3557vw + 0vw + 0vw);
  margin-top: 2.2764vw;
  opacity: 1;
  position: relative;
  width: 100%;
  z-index: 1;
 }
 .loop-txt::after {
  background-color: #ecf7fb;
  bottom: 0;
  content: "";
  height: calc(0vw + 0vw);
  position: absolute;
  width: 100%;
  z-index: -1;
 }
 .loop-txt .loop-img {
  display: flex;
  height: auto;
  position: static;
  top: calc(55.102vw - 0px);
  width: 125vw;
 }
 body.home #service-list {
  padding-bottom: 2.2764vw;
 }
 body.home #service-list .sec-txt {
  font-size: 16px;
  margin: 0 auto;
  padding-top: 2.2764vw;
  width: 90%;
 }
 body.home #service-list .l-container {
  padding: 25px 0 0;
  text-align: center;
  width: 100%;
 }
 body.home #service-list .l-inr {
  padding: 0%;
  width: 100%;
 }
 body.home #service-list .l-txt {
  font-size: 20px;
  line-height: 2;
  margin-top: 0;
 }
  body.home #service-list .mino {
  width: 75%;
 }
 body.home #sec-news {
  padding: 40px 0;
 }
 body.home #sec-news .sec-outer {
  display: block;
  margin: 0 auto;
 }
 body.home #sec-news .sec-tit {
  margin: 0 auto;
 }
 body.home #sec-news .button {
  margin: 0 auto;
  width: 90%;
 }
 body.home #sec-news .sec-wrap {
  margin-top: 40px;
  width: 100%;
 }
 body.home #sec-news .post-wrap {
  padding: 20px 0;
 }
 body.home #sec-news .post-wrap:last-child {
  border-bottom: 1px solid #ccc;
 }
 body.home #sec-news .post-cate {
  background-color: #ea5504;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  padding: 5px 0;
  text-align: center;
  width: 75px;
 }
 body.home #sec-news .post-date {
  color: #000;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  padding: 5px 5px 5px 0;
  text-align: left;
  width: auto;
 }
 body.home #sec-news .post-tit {
  color: #333;
  font-size: 14px;
  padding-left: 0;
  padding-top: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  width: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
 }
 body.home #sec-link {
  padding-bottom: 40px;
 }
 body.home #sec-link .l-item {
  margin-top: 5%;
  width: calc(100% - 0px);
 }
 body.home #sec-link .l-item a {
  padding: 5% 20%;
 }
}
@media only screen and (max-width: 768px) {
 body.home #service-list .sec-txt {
  text-align: justify;
 }
}
/* ----------------------------------------------------------------
    sec-about
  ----------------------------------------------------------------- */
.sec-tit {
 color: #fff;
 font-family: "rafaella-shadow", sans-serif;
 font-size: 60px;
 font-style: normal;
 font-weight: 700;
 letter-spacing: 0.0em;
 line-height: 0.5;
 text-align: center;
}
#sec-about {
 background-color: linear-gradient(90deg, rgba(1, 1, 35, 1), rgba(0, 2, 17, 1));
 background-color: #362f26;
 padding: 10% 0 0;
}
#sec-about .sec-wrap {
 margin: 0 auto;
 max-width: 960px;
 width: 80%;
}
#sec-about .sec-tit {
 margin: 0 auto 5%;
 max-width: 297px;
 width: 50%;
}
#sec-about .data-wrap {
 width: 100%;
}
#sec-about .data-wrap-inr {
 background: #fff;
 padding: 5% 5% 7.5%;
}
#sec-about .data-item {
 border-top: 1px solid #ccc;
 display: flex;
 justify-content: space-between;
 padding: 20px 0;
}
#sec-about .data-item:first-child {
 border-top: 0px solid #0b39a3;
}
#sec-about .data-item:last-child {
 padding-bottom: 0px;
}
#sec-about .data-tit {
 color: #000;
 font-weight: bold;
 text-align: center;
 width: 80px;
}
#sec-about .data-body {
 color: #333;
 width: calc(100% - 100px);
}
@media only screen and (max-width: 768px) {
.sec-tit {
 color: #fff;
 font-family: "rafaella-shadow", sans-serif;
 font-size: 45px;
 font-style: normal;
 font-weight: 700;
 letter-spacing: 0.0em;
 line-height: 0.5;
 margin-bottom: 5%;
 text-align: center;
}
 #sec-about {
  padding-bottom: 50px;
 }
 #sec-about .sec-wrap {
  display: block;
  width: 90%;
 }
 #sec-about .tit-wrap {
  align-items: flex-end;
  display: flex;
  justify-content: center;
  margin: 0;
  width: 100%;
 }
 #sec-about .sec-tit-sub {
  color: #502793;
  border-image: linear-gradient(to right, #502793, #502793 50%, #502793) 5/0 0 5px 0;
  border-style: solid;
  line-height: 1;
  padding: 0 0 15px 6px;
  text-align: left;
 }
 #sec-about .sec-tit-sub {
  background: -webkit-linear-gradient(0deg, #502793, #502793 50%, #502793);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: bold;
  text-align: right;
 }
 #sec-about .data-wrap {
  margin: 0 auto 0;
  width: 100%;
 }
 #sec-about .data-item {
  border-top: 0px solid #0b39a3;
  display: block;
  padding: 20px 0;
 }
 #sec-about .data-item:last-child {
  padding-bottom: 0px;
 }
 #sec-about .data-tit {
  margin: 0 0 10px 0;
  text-align-last: center;
  width: 100%;
 }
 #sec-about .data-body {
  line-height: 1.5;
  text-align: center;
  width: calc(100% - 0px);
 }
}
/* ----------------------------------------------------------------
    sec-ticket
  ----------------------------------------------------------------- */
#sec-ticket {
 background-color: linear-gradient(90deg, rgba(1, 1, 35, 1), rgba(0, 2, 17, 1));
 background-color: #362f26;
 padding: 10% 0;
}
#sec-ticket .sec-wrap {
 margin: 0 auto;
 max-width: 960px;
 width: 80%;
}
#sec-ticket .sec-tit {
 margin: 0 auto 5%;
 max-width: 297px;
 width: 50%;
}
.ticket_container {
 border-top: 1px solid rgba(255, 255, 255, 1.00);
 color: #fff;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 margin: 0 auto;
 width: 100%;
}
.ticket_cat {
 align-items: center;
 border-bottom: 1px solid rgba(255, 255, 255, 1.00);
 display: flex;
 flex-basis: 100%;
 flex-wrap: wrap;
 justify-content: space-between;
 padding-bottom: calc(10px + 0.25vw);
 padding-top: calc(10px + 0.25vw);
}
.ticket_seat {
 border-right: 1px dotted rgba(241, 249, 234, 1.00);
 flex-basis: 75%;
 font-family: "Zen Old Mincho", serif;
 font-size: 30px;
 font-weight: 400;
 letter-spacing: 0.05em;
 line-height: 150%;
 padding-right: calc(15px + 0.25vw);
 text-align: center;
}
.u-25 {
 line-height: 90%;
}
.ticket_seat .notice-u25 {
 font-family: YakuHanJP, "游ゴシック体", sans-serif;
 font-size: 16px;
 letter-spacing: 0em;
}
.ticket_seat .modal {
 color: #fff;
 font-size: 16px;
}
.ticket_price {
 flex-basis: 25%;
 font-family: "Zen Old Mincho", serif;
 font-weight: 700;
 font-size: 30px;
 letter-spacing: 0.05em;
 line-height: 170%;
 text-align: right;
}
#sec-ticket .ticket-info {
 margin-top: 5%;
}
#sec-ticket .notice {
 margin-top: 5%;
 width: 100%;
}
#sec-ticket .notice ul {
 list-style: none;
 padding: 0;
 margin: 0;
}
#sec-ticket .notice li {
 color: #fff;
 font-size: 16px;
 margin: 10px 0;
 padding-left: 1em;
 text-indent: -.9em;
}
#sec-ticket .notice li.strong {
 color: #333;
 font-size: 18px;
 font-weight: bold;
}
#sec-ticket .notice li:before {
 content: "● ";
 color: #fff;
 font-size: 14px;
}
#sec-ticket .notice li:before {
 content: "● ";
 color: #fff;
 font-size: 14px;
}
#sec-ticket .ticket-sale {
 background-color: #fff;
 margin-top: 5%;
 padding: 5%;
}
#sec-ticket .saisoku {
 color: #000;
 font-size: 30px;
 font-family: "Zen Kaku Gothic New", serif;
 font-weight: 700;
 line-height: 1.25;
 text-align: center;
}
#sec-ticket .saisoku-date {
 font-family: YakuHanJP, "游ゴシック体", sans-serif;
 font-size: 20px;
 margin-top: 10px;
 text-align: center;
}
#sec-ticket .saisoku-link {
 margin-top: 20px;
 text-decoration: underline;
 text-align: center;
}
#sec-ticket .saisoku-link a:hover {
 text-decoration: none;
}
#sec-ticket .caption-head {
 font-family: "Zen Kaku Gothic New", serif;
 font-size: 20px;
 font-weight: 700;
 margin-top: 5%;
 text-align: center;
}
#sec-ticket .caption-txt {
 font-size: 16px;
 margin-top: 10px;
 text-align: center;
}
#sec-ticket .caption-link {
 font-family: "Zen Kaku Gothic New", serif;
 font-size: 18px;
 font-weight: 500;
 margin: 20px auto 30px;
 text-align: center;
}
#sec-ticket .caption-link a {
 text-decoration: underline;
}
#sec-ticket .caption-link a:hover {
 text-decoration: none;
}
#sec-ticket .indent {
 font-size: 14px;
 line-height: 1;
 text-align: center;
}
.modal-tit {
 margin: 40px 0 20px;
}
a.modal-link {
 text-decoration: underline;
}
a.modal-link:hover {
 text-decoration: none;
}
@media only screen and (max-width: 768px) {
 #sec-ticket {
  padding: 0 0 15%;
 }
 #sec-ticket .sec-wrap {
  width: 90%;
 }
 .ticket_seat {
  border-right: 1px dotted rgba(241, 249, 234, 1.00);
  flex-basis: 70%;
  font-family: "Zen Old Mincho", serif;
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.05em;
  padding-right: calc(15px + 0.25vw);
  text-align: center;
 }
 .ticket_seat .notice-u25 {
  font-family: YakuHanJP, "游ゴシック体", sans-serif;
  font-size: 12px;
  letter-spacing: 0em;
  line-height: 45%;
 }
 .ticket_seat .modal {
  color: #fff;
  font-size: 14px;
 }
 .ticket_price {
  flex-basis: 30%;
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 170%;
  text-align: right;
 }
 #sec-ticket .ticket-info {
  margin-top: 10%;
 }
 #sec-ticket .notice li {
  color: #fff;
  font-size: 12px;
  margin: 5px 0;
 }
 #sec-ticket .ticket-sale {
  background-color: #fff;
  margin-top: 10%;
  padding: 10% 5%;
 }
 #sec-ticket .saisoku {
  font-size: 24px;
  font-weight: 700;
  text-align: center;
 }
 #sec-ticket .saisoku-date {
  font-size: 16px;
 }
 #sec-ticket .saisoku-link {
  margin-top: 20px;
  text-decoration: underline;
  text-align: center;
 }
 #sec-ticket .saisoku-link a:hover {
  text-decoration: none;
 }
 #sec-ticket .caption-head {
  font-family: "Zen Kaku Gothic New", serif;
  font-size: 18px;
  font-weight: 700;
  margin-top: 10%;
  text-align: center;
 }
 #sec-ticket .caption-txt {
  font-size: 14px;
  text-align: left;
 }
 #sec-ticket .caption-link {}
 #sec-ticket .caption-link a {
  text-decoration: underline;
 }
 #sec-ticket .caption-link a:hover {
  text-decoration: none;
 }
 #sec-ticket .indent {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 10px;
  text-align: justify;
 }
 .modal-tit {
  margin: 40px 0 20px;
 }
 a.modal-link {
  text-decoration: underline;
 }
 a.modal-link:hover {
  text-decoration: none;
 }
}
/* ----------------------------------------------------------------
    sec-access
  ----------------------------------------------------------------- */
#sec-access {
 background-color: #fff;
 padding: 10% 0;
}
#sec-access .sec-tit {
 color: #362f26;
}
#sec-access .sec-wrap {
 align-items: center;
 display: flex;
 justify-content: space-between;
 margin: 5% auto 0;
 max-width: 1280px;
 width: 80%;
}
#sec-access .data-area {
 text-align: left;
 width: 50%;
}
#sec-access .adress {
 color: #333;
 font-size: 24px;
 font-weight: bold;
 letter-spacing: 0.05em;
 line-height: 1.5;
 margin-bottom: 10px;
 width: 360px;
}
#sec-access .adress-sub {
 color: #333;
 font-size: 18px;
 font-weight: bold;
 letter-spacing: 0.05em;
 line-height: 1.5;
 margin-bottom: 10px;
}
#sec-access .traffic-link {
 font-weight: bold;
 margin-bottom: 20px;
}
#sec-access .traffic-link a {
 color: #0b39a3;
 text-decoration: underline;
}
#sec-access .traffic-link a:hover {
 text-decoration: none;
}
#sec-access .traffic {
 color: #333;
 display: flex;
 font-family: YakuHanJP, "游ゴシック体", sans-serif;
 font-size: 16px;
 line-height: 1.5;
 margin-top: 5px;
}
#sec-access .traffic::before {
 content: '●';
 display: block;
 margin-right: .2em;
}
#sec-access .map-area {
 position: relative;
 width: 50%;
}
#sec-access .map-area .movie-wrap {
 position: relative;
 z-index: 1;
}
@media only screen and (max-width: 768px) {
 #sec-access .sec-wrap {
  display: block;
  margin: 5% auto 0;
  width: 90%;
 }
 #sec-access .data-area {
  width: 100%;
 }
 #sec-access .adress {
  font-size: 20px;
  letter-spacing: 0em;
  margin: 10% auto 10px;
  text-align: center;
  width: 66.6%;
 }
 #sec-access .adress-sub {
  font-size: 16px;
  letter-spacing: 0em;
  margin-bottom: 20px;
  text-align: center;
 }
 #sec-access .traffic {
  font-size: 14px;
 }
 #sec-access .traffic::before {
  content: '・';
  display: block;
  margin-right: .2em;
 }
 #sec-access .map-area {
  margin-top: 5%;
  width: 100%;
 }
}
/* ----------------------------------------------------------------
    footer
  ----------------------------------------------------------------- */
#footer {
 background-color: #000;
 color: #fff;
 padding: 5% 0 0;
 width: 100%;
}
#footer .logo-area {
 margin: 0 auto 0;
 max-width: 360px;
 width: 80%;
}
#footer .link-area {
 margin: 0 auto 5%;
 max-width: 538px;
 width: 80%;
}
#footer .sec-tit {
 margin: 0 auto 5%;
 max-width: 198px;
 width: 33%;
}
#footer .link-area .btn-link {
 align-items: center;
 display: flex;
 justify-content: space-between;
 width: 100%;
}
#footer .link-area .bnr-pc {
 background-color: #fff;
 border: 1px solid #fff;
 margin: 0 auto;
 padding: 10px 20px 5px;
 width: 218px;
}
#footer .link-area .link-item {
 align-items: center;
 border: 1px solid #fff;
 border-radius: 50%;
 display: flex;
 font-size: 30px;
 justify-content: center;
 height: 60px;
 width: 60px
}
#footer .link-area .link-item a {
 color: #fff;
}
#footer .inr-credit {
 margin: 1% auto 2.5%;
 width: 90%;
}
#footer .inr-credit p {
 color: #fff;
 font-family: "Zen Old Mincho", serif;
 font-size: 16px;
 line-height: 2;
 text-align: center;
}
#footer .copyright {
 background-color: #fff;
 color: #333;
 font-size: 12px;
 line-height: 1.0;
 padding: 10px 0;
 text-align: center;
}
@media only screen and (max-width: 768px) {
 #footer {
  background-color: #000;
  color: #fff;
  padding: 10% 0 0;
  width: 100%;
 }
 #footer .link-area {
  width: 90%;
 }
 #footer .link-area .bnr-pc {
  border: 1px solid #fff;
  padding: 5px 10px 0px;
  width: calc(100% - 200px);
 }
 #footer .link-area .link-item {
  font-size: 18px;
  height: 40px;
  width: 40px
 }
 #footer .inr-credit {
  margin: 40px auto 20px;
  width: 90%;
 }
 #footer .inr-credit p {
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  margin-top: 20px;
  text-align: center;
 }
 #footer .copyright {
  margin-top: 40px;
 }
}