@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700|Noto+Sans+KR:400,700|Noto+Sans+SC:400,700|Noto+Sans+TC:400,700|Noto+Sans:400,700&display=swap&subset=chinese-simplified,japanese,korean");
@import url("https://fonts.googleapis.com/css?family=Playfair+Display:400,700&display=swap");
@import url("https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css");
/* Reset Style */
html {
  overflow-y: scroll; }

body {
  line-height: 1;
  color: #000; }

/* html5doctor.com Reset Stylesheet v1.6.1
Last Updated: 2010-09-17 Author: Richard Clark - http://richclarkdesign.com Twitter: @rich_clark */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

img,
img a {
  border: none;
  vertical-align: bottom;
  padding: 0;
  margin: 0;
  max-width: 100%; }

/* YUI 3.4.1 (build 4118) Copyright 2011 Yahoo! Inc. All rights reserved.
Licensed under the BSD License. http://yuilibrary.com/license/ */
body {
  font: 13px/1.231 arial, helvetica, clean, sans-serif;
  *font-size: small;
  *font: x-small; }

select, input, button, textarea {
  font: 99% arial, helvetica, clean, sans-serif; }

table {
  font-size: inherit;
  font: 100%; }

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 108%;
  line-height: 100%; }

/* 汎用クラス */
[class^="mark"] {
  padding-left: 15px;
  background: no-repeat left .5em; }

.mark1 {
  background-image: url(../img/share/mark_1.gif); }

.mark2 {
  background-image: url(../img/share/mark_2.gif); }

.mark3 {
  background-image: url(../img/share/mark_3.gif); }

.mark4 {
  background-image: url(../img/share/mark_4.gif); }

.mark5 {
  background-image: url(../img/share/mark_5.gif); }

.opacity {
  opacity: 0.55;
  -moz-opacity: 0.55;
  filter: alpha(opacity=55);
  -ms-filter: "alpha(opacity=55)"; }

.inline_block {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

.table_cell {
  display: table-cell;
  *display: inline;
  *zoom: 1;
  vertical-align: middle; }

.fr,
.imgR {
  float: right;
  margin-left: 10px; }

.fl,
.imgL {
  float: left;
  margin-right: 10px; }

.imgC,
.tC,
.btn {
  text-align: center; }

.imgC {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.tR,
.sign {
  text-align: right; }

.box_size {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box; }

.ts_none {
  -webkit-text-shadow: none !important;
  -moz-text-shadow: none !important;
  -ms-text-shadow: none !important;
  -o-text-shadow: none !important;
  text-shadow: none !important; }

.bs_none {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  -ms-box-shadow: none !important;
  -o-box-shadow: none !important;
  box-shadow: none !important; }

/* clearfix */
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden; }

.hover, .hover .overlay {
  width: 100%;
  height: 100%;
  overflow: hidden; }

.hover, .hover h2 {
  text-align: center; }

.ehover11 .overlay::before, .ehover12 h2::after, .ehover7 .overlay::before {
  content: ''; }

body {
  font-family: colaborate-thinregular,sans-serif;
  background-image: url(../images/back3.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  color: #FFF; }

.modal-body p, pre {
  text-transform: none;
  letter-spacing: 0; }

h1 {
  font-size: 50px; }

.titlep {
  letter-spacing: 0;
  padding-bottom: 60px;
  font-size: 18px; }

.breath {
  padding-top: 80px; }

.topinfo {
  position: absolute;
  bottom: 1px;
  left: 96px; }

.page-header {
  display: inline-block;
  margin: 40px 0 20px;
  border: 1px solid #eee;
  padding: 15px;
  border-radius: 12px; }

.modal-content {
  color: #000; }

.modal-body p {
  font-size: 16px; }

.hover button.info, .hover h2 {
  text-transform: uppercase;
  color: #fff; }

.navbar-inverse {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  border-bottom: 1px solid #fff; }

ul.nav.navbar-nav {
  float: right; }

.navbar-inverse .navbar-brand, .navbar-inverse .navbar-nav > li > a {
  color: #fff; }

.col-lg-3, .col-md-4, .col-sm-6, .col-xs-12 {
  padding: 0; }

.hover {
  float: left;
  position: relative;
  cursor: default; }

.hover .overlay {
  position: absolute;
  top: 0;
  left: 0; }

.hover img {
  display: block;
  position: relative; }

.ehover10 button, .hover button.info {
  display: inline-block; }

.hover h2 {
  position: relative;
  font-size: 17px;
  padding: 10px;
  background: rgba(0, 0, 0, 0.6); }

.hover button.info {
  text-decoration: none;
  padding: 7px 14px;
  border: 1px solid #fff;
  margin: 50px 0 0;
  border-radius: 0;
  background-color: transparent; }

.hover button.info:hover {
  box-shadow: 0 0 5px #fff; }

.ehover5 button.info:hover, .hover button.nullbutton:hover {
  box-shadow: none; }

.hover button.nullbutton {
  border: none;
  padding: 0;
  margin: 0; }

.ehover4 button.info, .ehover42 button.info {
  margin: -55px 0 0;
  padding: 73px 90px;
  font-weight: 400;
  border: 1px solid #fff; }

.modal-open .modal, button:focus {
  outline: 0 !important; }

.point {
  cursor: pointer; }

.ehover1 img {
  -webkit-transition: all .4s linear;
  transition: all .4s linear; }

.ehover1 .overlay {
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }

.ehover1 h2 {
  -webkit-transform: translatey(-100px);
  transform: translatey(-100px);
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.ehover1 button.info {
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.ehover1:hover img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2); }

.ehover1:hover .overlay {
  opacity: 1; }

.ehover1:hover button.info, .ehover1:hover h2 {
  opacity: 1;
  -webkit-transform: translatey(0);
  transform: translatey(0); }

.ehover1:hover button.info {
  -webkit-transition-delay: .2s;
  transition-delay: .2s; }

.ehover2 img {
  -webkit-transition: all .2s ease-in;
  transition: all .2s ease-in; }

.ehover2 .overlay {
  background-color: rgba(0, 0, 0, 0.6);
  opacity: 0;
  -webkit-transform: translate(460px, -100px) rotate(180deg);
  transform: translate(460px, -100px) rotate(180deg);
  -webkit-transition: all .2s .4s ease-in-out;
  transition: all .2s .4s ease-in-out; }

.ehover2 button.info, .ehover9 h2 {
  -webkit-transform: translateY(-200px); }

.ehover2 button.info {
  transform: translateY(-200px);
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.ehover2:hover .overlay {
  opacity: 1;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0); }

.ehover2:hover h2 {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition-delay: .5s;
  transition-delay: .5s; }

.ehover2:hover button.info, .ehover9:hover h2 {
  -webkit-transform: translateY(0);
  -webkit-transition-delay: .3s; }

.ehover2:hover button.info {
  transform: translateY(0);
  transition-delay: .3s; }

.ehover3 img {
  -webkit-transition: all .4s ease-in;
  transition: all .4s ease-in; }

.ehover3 button.info, .ehover3 h2 {
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
  -webkit-transition: all .4s ease-in;
  transition: all .4s ease-in;
  opacity: 0; }

.ehover4 .overlay, .ehover4 h2 {
  -webkit-transition: all .4s ease-in-out; }

.ehover3:hover img {
  filter: grayscale(1) blur(3px);
  -webkit-filter: grayscale(1) blur(3px);
  -webkit-transform: scale(1.2);
  transform: scale(1.2); }

.ehover3:hover button.info, .ehover3:hover h2 {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1); }

.ehover4 h2 {
  -webkit-transform: translateY(55px);
  transform: translateY(55px);
  transition: all .4s ease-in-out; }

.ehover4:hover h2 {
  -webkit-transform: translateY(15px);
  transform: translateY(15px); }

.ehover4 .overlay {
  background-color: rgba(75, 75, 75, 0.7);
  transition: all .4s ease-in-out; }

.ehover4:hover .overlay {
  background-color: rgba(48, 152, 157, 0.4); }

.ehover4 button.info {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }

.ehover42 .overlay, .ehover42 h2 {
  -webkit-transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover4:hover button.info {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1); }

.ehover42 h2 {
  -webkit-transform: translateY(55px);
  transform: translateY(55px);
  transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover42:hover h2 {
  -webkit-transform: translateY(15px);
  transform: translateY(15px); }

.ehover42 .overlay {
  background-color: rgba(75, 75, 75, 0.7);
  transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover1v2 img, .ehover42 button.info {
  -webkit-transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover42:hover .overlay {
  background-color: rgba(48, 152, 157, 0.4); }

.ehover42 button.info {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover42:hover button.info {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1); }

.ehover1v2 img {
  transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover1v2 .overlay {
  opacity: 0;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81);
  transition: all 0.4s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover1v2 h2 {
  -webkit-transform: translatey(-100px);
  transform: translatey(-100px);
  opacity: 0;
  -webkit-transition: all 0.2s cubic-bezier(0.88, -0.99, 0, 1.81);
  transition: all 0.2s cubic-bezier(0.88, -0.99, 0, 1.81); }

.ehover1v2 button.info {
  opacity: 0;
  -webkit-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out; }

.ehover1v2:hover img {
  -webkit-transform: scale(1.2);
  transform: scale(1.2); }

.ehover1v2:hover .overlay {
  opacity: 1; }

.ehover1v2:hover button.info, .ehover1v2:hover h2 {
  opacity: 1;
  -webkit-transform: translatey(0);
  transform: translatey(0); }

.ehover1v2:hover button.info {
  -webkit-transition-delay: .2s;
  transition-delay: .2s; }

.ehover5 h2, .ehover5 img {
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }

.ehover5 img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.ehover5:hover img {
  -webkit-transform: scale(1);
  transform: scale(1); }

.ehover5 .overlay {
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }

.ehover5:hover .overlay {
  background-color: rgba(170, 170, 170, 0.4); }

.ehover5 button.info {
  opacity: 0;
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out;
  font-weight: 400;
  border: 1px solid #fff;
  height: 85%;
  width: 85%;
  position: absolute;
  top: -20%;
  left: 8%;
  padding: 70px; }

.ehover6 h2, .ehover6 hr, .group1, .group2 {
  left: 50%;
  position: absolute;
  -webkit-transition: opacity .35s,-webkit-transform .35s; }

.ehover5:hover button.info {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
  background-color: rgba(0, 0, 0, 0.4); }

.ehover6 h2, .ehover6 hr, .ehover7 h2, .ehover7 p, .group1, .group2 {
  background-color: transparent;
  margin: 0; }

.ehover6 .rotate {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0; }

.ehover6 hr {
  width: 50%;
  opacity: 0; }

.ehover6 hr:nth-child(2) {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(0) scale3d(0, 0, 1);
  transform: translate3d(-50%, -50%, 0) rotate(0) scale3d(0, 0, 1); }

.ehover6 hr:nth-child(3) {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(90deg) scale3d(0, 0, 1);
  transform: translate3d(-50%, -50%, 0) rotate(90deg) scale3d(0, 0, 1); }

.ehover6 h2, .ehover6 hr {
  top: 50%;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%; }

.group1, .group2 {
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  padding: 0;
  letter-spacing: 0; }

.group1 {
  top: 40%; }

.group2 {
  top: 60%; }

.ehover6 h2 {
  width: 100%; }

.ehover6 p {
  width: 30%;
  text-transform: none;
  font-size: 15px;
  line-height: 2; }

.ehover6 p a {
  color: #fff; }

.ehover6 p a:focus, .ehover6 p a:hover {
  opacity: .6; }

.ehover6 a i {
  opacity: 0;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  padding: 10px;
  font-size: 20px; }

.ehover7 p, .ehover8 p {
  text-transform: none;
  font-size: 15px;
  line-height: 2; }

.group1 a:first-child i {
  -webkit-transform: translate3d(-60px, -60px, 0) rotate(45deg) scale(2);
  transform: translate3d(-60px, -60px, 0) rotate(45deg) scale(2); }

.group1 a:nth-child(2) i {
  -webkit-transform: translate3d(60px, -60px, 0) rotate(45deg) scale(2);
  transform: translate3d(60px, -60px, 0) rotate(45deg) scale(2); }

.group2 a:first-child i {
  -webkit-transform: translate3d(-60px, 60px, 0) rotate(45deg) scale(2);
  transform: translate3d(-60px, 60px, 0) rotate(45deg) scale(2); }

.group2 a:nth-child(2) i {
  -webkit-transform: translate3d(60px, 60px, 0) rotate(45deg) scale(2);
  transform: translate3d(60px, 60px, 0) rotate(45deg) scale(2); }

.ehover6:hover h2 {
  opacity: 0;
  -webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1);
  transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1); }

.ehover6:hover hr:nth-child(2) {
  opacity: 1;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(0) scale3d(1, 1, 1);
  transform: translate3d(-50%, -50%, 0) rotate(0) scale3d(1, 1, 1); }

.ehover6:hover hr:nth-child(3) {
  opacity: 1;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate(90deg) scale3d(1, 1, 1);
  transform: translate3d(-50%, -50%, 0) rotate(90deg) scale3d(1, 1, 1); }

.ehover6:hover .group1 i:empty, .ehover6:hover .group2 i:empty {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0) rotate(45deg) scale(1);
  opacity: 1; }

.ehover6 img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-transition: all .35s;
  transition: all .35s; }

.ehover7 .overlay::before, .ehover7 h2, .ehover7 p {
  position: absolute;
  left: 50%;
  -webkit-transition: opacity .35s,-webkit-transform .35s; }

.ehover6:hover img {
  -webkit-transform: scale(1);
  transform: scale(1);
  filter: brightness(0.7);
  -webkit-filter: brightness(0.7); }

.ehover7 h2, .ehover7 p, .ehover8 h2, .ehover8 hr {
  top: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0); }

.ehover7 h2, .ehover7 p {
  transition: opacity .35s,transform .35s;
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  padding: 0; }

.ehover7 .overlay::before {
  top: 50%;
  width: 40%;
  height: 60%;
  border: 2px solid #fff;
  opacity: 0;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -45deg) scale3d(0, 0, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -45deg) scale3d(0, 0, 1);
  -webkit-transform-origin: 50%;
  transform-origin: 50%; }

.ehover7 p {
  width: 20%; }

.ehover7 p a {
  color: #fff; }

.ehover7 p a:focus, .ehover7 p a:hover {
  opacity: .6; }

.ehover7 a i {
  opacity: 0;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  padding: 0 5px; }

.ehover7 p a:first-child i {
  -webkit-transform: translate3d(-60px, -60px, 0);
  transform: translate3d(-60px, -60px, 0); }

.ehover7 p a:nth-child(2) i {
  -webkit-transform: translate3d(60px, -60px, 0);
  transform: translate3d(60px, -60px, 0); }

.ehover7 p a:nth-child(3) i {
  -webkit-transform: translate3d(-60px, 60px, 0);
  transform: translate3d(-60px, 60px, 0); }

.ehover7 p a:nth-child(4) i {
  -webkit-transform: translate3d(60px, 60px, 0);
  transform: translate3d(60px, 60px, 0); }

.ehover7:hover .overlay::before {
  opacity: 1;
  background-color: rgba(0, 0, 0, 0.2);
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -135deg) scale3d(1, 1, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -135deg) scale3d(1, 1, 1); }

.ehover8 h2, .ehover8 hr, .set1, .set2 {
  left: 50%;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  background-color: transparent;
  position: absolute;
  margin: 0; }

.ehover7:hover h2 {
  opacity: 0;
  -webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1);
  transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1); }

.ehover7:hover p i:empty {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1; }

.ehover8 hr {
  width: 40%;
  opacity: 0;
  border: 1px solid #FFF; }

.ehover8 hr:nth-child(3) {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 90deg) scale3d(0, 0, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 90deg) scale3d(0, 0, 1); }

.ehover8 hr:nth-child(4) {
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 180deg) scale3d(0, 0, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, 180deg) scale3d(0, 0, 1); }

.ehover8 h2, .ehover8 hr {
  transition: opacity .35s,transform .35s;
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%; }

.set1, .set2 {
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  padding: 0; }

.set1 {
  top: 40%; }

.set2 {
  top: 60%; }

.ehover8 p {
  width: 30%; }

.ehover8 p a {
  color: #fff; }

.ehover8 p a:focus, .ehover8 p a:hover {
  opacity: .6; }

.ehover8 a i {
  opacity: 0;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  padding: 10px;
  font-size: 20px; }

.set1 a:first-child i {
  -webkit-transform: translate3d(-60px, -60px, 0);
  transform: translate3d(-60px, -60px, 0); }

.set1 a:nth-child(2) i {
  -webkit-transform: translate3d(60px, -60px, 0);
  transform: translate3d(60px, -60px, 0); }

.set2 a:first-child i {
  -webkit-transform: translate3d(-60px, 60px, 0);
  transform: translate3d(-60px, 60px, 0); }

.set2 a:nth-child(2) i {
  -webkit-transform: translate3d(60px, 60px, 0);
  transform: translate3d(60px, 60px, 0); }

.ehover8:hover h2 {
  opacity: 0;
  -webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1);
  transform: translate3d(-50%, -50%, 0) scale3d(0.8, 0.8, 1); }

.ehover8:hover hr:nth-child(3) {
  opacity: 1;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -90deg) scale3d(1, 1, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -90deg) scale3d(1, 1, 1); }

.ehover8:hover hr:nth-child(4) {
  opacity: 1;
  -webkit-transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -180deg) scale3d(1, 1, 1);
  transform: translate3d(-50%, -50%, 0) rotate3d(0, 0, 1, -180deg) scale3d(1, 1, 1); }

.ehover8:hover .set1 i:empty, .ehover8:hover .set2 i:empty {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  opacity: 1; }

.ehover9 .overlay {
  background-color: rgba(255, 255, 255, 0.7);
  top: -200px;
  opacity: 0;
  -webkit-transition: all .1s ease-out .5s;
  transition: all .1s ease-out .5s; }

.ehover9 h2 {
  transform: translateY(-200px);
  -webkit-transition: all ease-in-out .1s;
  transition: all ease-in-out .1s;
  -webkit-transition-delay: .3s;
  transition-delay: .3s; }

.ehover9 button.info {
  -webkit-transform: translateY(-200px);
  transform: translateY(-200px);
  color: #000;
  border: 1px solid #000;
  -webkit-transition: all ease-in-out .3s;
  transition: all ease-in-out .3s; }

.ehover10 .overlay, .ehover10 img {
  -webkit-transition: -webkit-transform .35s; }

.ehover9:hover .overlay {
  opacity: 1;
  top: 0;
  -webkit-transition-delay: 0s;
  transition-delay: 0s; }

.ehover9:hover h2 {
  transform: translateY(0);
  transition-delay: .3s; }

.ehover9:hover button.info {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  box-shadow: 0 0 5px #000;
  color: #000;
  border: 1px solid #000;
  -webkit-transition-delay: .3s;
  transition-delay: .3s; }

.ehover10 img {
  transition: transform .35s; }

.ehover10:hover img {
  -webkit-transform: translate3d(0, -10%, 0);
  transform: translate3d(0, -10%, 0); }

.ehover10 .overlay {
  visibility: hidden;
  top: auto;
  bottom: 0;
  padding: 1em;
  height: 4.75em;
  background: #79FAC4;
  color: #3c4a50;
  transition: transform .35s;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0); }

.ehover10 button.info {
  float: left;
  margin: 0;
  text-transform: uppercase;
  color: #fff;
  font-size: 17px;
  background: rgba(0, 0, 0, 0.6); }

.ehover10 p.icon-links a {
  float: right;
  color: #3c4a50;
  font-size: 1.4em; }

.ehover10:hover p.icon-links a:focus, .ehover10:hover p.icon-links a:hover {
  color: #252d31; }

.ehover10 button, .ehover10 p.icon-links a {
  -webkit-transition: -webkit-transform .35s;
  transition: transform .35s;
  -webkit-transform: translate3d(0, 200%, 0);
  transform: translate3d(0, 200%, 0); }

.ehover11 .overlay::before, .ehover11 img {
  -webkit-transition: opacity .35s,-webkit-transform .45s; }

.ehover10 p.icon-links a span::before {
  display: inline-block;
  padding: 8px 10px;
  speak: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.ehover10:hover .overlay, .ehover10:hover button, .ehover10:hover p.icon-links a {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  visibility: visible; }

.ehover10:hover h2 {
  -webkit-transition-delay: .05s;
  transition-delay: .05s; }

.ehover10:hover p.icon-links a:nth-child(3) {
  -webkit-transition-delay: .1s;
  transition-delay: .1s; }

.ehover10:hover p.icon-links a:nth-child(2) {
  -webkit-transition-delay: .15s;
  transition-delay: .15s; }

.ehover10:hover p.icon-links a:first-child {
  -webkit-transition-delay: .2s;
  transition-delay: .2s; }

.ehover11 {
  background: -webkit-linear-gradient(45deg, #ff89e9 0, #05abe0 100%);
  background: linear-gradient(45deg, #ff89e9 0, #05abe0 100%); }

.ehover11 img {
  max-width: none;
  width: calc(100% + 60px);
  transition: opacity .35s,transform .45s;
  -webkit-transform: translate3d(-40px, 0, 0);
  transform: translate3d(-40px, 0, 0); }

.ehover11 .overlay::before {
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 20px;
  left: 20px;
  border: 1px solid #fff;
  opacity: 0;
  transition: opacity .35s,transform .45s;
  -webkit-transform: translate3d(-20px, 0, 0);
  transform: translate3d(-20px, 0, 0); }

.ehover11 .overlay {
  padding: 3em;
  text-align: left; }

.ehover11 h2 {
  background-color: transparent;
  padding: 15% 0 10px;
  text-align: left; }

.ehover11 button.info {
  color: #FFF;
  opacity: 0;
  margin: 0;
  padding: 0;
  border: none;
  -webkit-transition: opacity .35s,-webkit-transform .45s;
  transition: opacity .35s,transform .45s;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0); }

.ehover11:hover img {
  opacity: .6;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover11:hover .overlay::before, .ehover11:hover button.info {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover12 {
  background: #42b078; }

.ehover12 img {
  max-width: none;
  width: calc(100% + 20px);
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.ehover12:hover img {
  opacity: .4;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover12 .overlay {
  padding: 50px 20px; }

.ehover12 h2 {
  position: relative;
  overflow: hidden;
  padding: .5em 0;
  background-color: transparent; }

.ehover12 h2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  -webkit-transition: -webkit-transform .35s;
  transition: transform .35s;
  -webkit-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0); }

.ehover12:hover h2::after {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover12 button {
  color: #FFF;
  opacity: 0;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0); }

.ehover12:hover button {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover13 img {
  -webkit-transition: all .35s;
  transition: all .35s; }

.ehover13 .overlay, .ehover13 button {
  -webkit-transition: opacity .35s,-webkit-transform .35s; }

.ehover13:hover img {
  filter: brightness(0.6);
  -webkit-filter: brightness(0.6); }

.ehover13 .overlay {
  width: 80%;
  height: 80%;
  left: 10%;
  top: 10%;
  border-bottom: 1px solid #FFF;
  border-top: 1px solid #FFF;
  transition: opacity .35s,transform .35s;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1); }

.ehover13:hover .overlay {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1); }

.ehover13 button, .ehover13 h2 {
  opacity: 0;
  color: #FFF;
  padding: 1em 0; }

.ehover13 button {
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0); }

.ehover13 h2 {
  background-color: transparent;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0); }

.ehover13:hover button, .ehover13:hover h2 {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.ehover14 img {
  -webkit-transition: all .35s;
  transition: all .35s; }

.ehover14 .overlay, .ehover14 button {
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  opacity: 0; }

.ehover14:hover img {
  filter: brightness(1.4);
  -webkit-filter: brightness(1.4); }

.ehover14 .overlay {
  width: 55%;
  height: 81%;
  left: 22%;
  top: 10%;
  border-radius: 80%;
  border: 2px solid #FFF;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(50%, 50%, 0);
  transform: translate3d(50%, 50%, 0); }

.ehover14:hover .overlay {
  background-color: rgba(0, 0, 0, 0.3); }

.ehover14 button {
  color: #FFF;
  padding: 1em 0;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-150%, -400%, 0);
  transform: translate3d(-150%, -400%, 0); }

.ehover14 h2 {
  background-color: transparent;
  color: #FFF;
  padding: 1em 0;
  opacity: 0;
  -webkit-transition: opacity .35s,-webkit-transform .35s;
  transition: opacity .35s,transform .35s;
  -webkit-transform: translate3d(-150%, -400%, 0);
  transform: translate3d(-150%, -400%, 0); }

.ehover14:hover .overlay, .ehover14:hover button, .ehover14:hover h2 {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

/*----------------------------------------------------
	element style
----------------------------------------------------*/
html {
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }
  @media (max-width: 768px) {
    html {
      font-size: calc(100vw / 0.768); } }

body {
  background: #fff;
  color: #3F3F3F;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }
  @media (max-width: 768px) {
    body {
      font-size: 0.028rem; } }

html:lang(en),
body:lang(en) {
  font-family: "Noto Sans", Roboto, "Segoe UI", "Helvetica Neue", sans-serif; }

html:lang(zh-CN),
body:lang(zh-CN) {
  font-family: "Noto Sans SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif; }

html:lang(zh-TW),
body:lang(zh-TW) {
  font-family: "Noto Sans TC", "PingFang TC", "Hiragino Sans CNS", "Microsoft JhengHei", sans-serif; }

html:lang(ko),
body:lang(ko) {
  font-family: "Noto Sans KR", "Apple SD Gothic Neo", Gulim, "Malgun Gothic", sans-serif; }

input, textarea {
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

* html body, * html input, * html textarea {
  font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif; }

a {
  transition: all .3s; }
  a:link {
    color: #000;
    text-decoration: none; }
  a:visited {
    color: #000; }
  a:hover {
    text-decoration: none;
    color: #808080; }
  a:active {
    color: #808080; }

a img {
  transition: all .3s; }
  a img:hover {
    opacity: .8; }

.pc_view {
  display: block !important; }

.sp_view {
  display: none !important; }

@media only screen and (max-width: 768px) {
  .pc_view {
    display: none !important; }

  .sp_view {
    display: block !important; } }
/*----------------------------------------------------
	#共通
----------------------------------------------------*/
.playfair {
  font-family: 'Playfair Display', serif; }

.inner {
  width: 1080px;
  margin: 0 auto; }
  @media (max-width: 768px) {
    .inner {
      width: 100%; } }

.title {
  font-size: 48px;
  font-weight: 900;
  text-align: center;
  line-height: 1;
  padding: 65px 0 80px 0; }
  .title:after {
    display: block;
    width: 200px;
    border-bottom: 8px solid #666;
    content: "";
    margin: 0 auto;
    padding: 25px 0 0 0; }
    @media (max-width: 768px) {
      .title:after {
        padding: 13px 0 0 0;
        border-bottom: 4px solid #666;
        width: 100px; } }
  @media (max-width: 768px) {
    .title {
      font-size: .048rem;
      padding: 8.5% 0;
      line-height: 1.4; } }

.main-nav-wrapper {
  position: relative; }
  .main-nav-wrapper .main-nav-current-block {
    position: absolute;
    padding: 6% 0 0 0;
    width: 42%;
    margin: 0 auto;
    left: 0;
    right: 0;
    z-index: 100; }
    .main-nav-wrapper .main-nav-current-block .main-nav-current {
      overflow: hidden; }
      .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box {
        position: relative;
        box-sizing: border-box;
        width: 100%;
        padding: 166% 0 0 0; }
        @media (max-width: 768px) {
          .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box {
            padding: 326% 0 0 0; } }
        @media (max-width: 375px) {
          .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box {
            padding: 348% 0 0 0; } }
        @media (max-width: 320px) {
          .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box {
            padding: 405% 0 0 0; } }
        .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box span {
          position: absolute;
          top: 0px;
          left: 0px;
          width: 100%;
          height: 100%;
          transition: background .15s linear;
          border: 10px solid rgba(255, 255, 255, 0.55); }
          @media (max-width: 768px) {
            .main-nav-wrapper .main-nav-current-block .main-nav-current .main-nav-box span {
              border: 4px solid rgba(255, 255, 255, 0.65); } }

.main-nav-current.border-animation .main-nav-box:before, .main-nav-current.border-animation .main-nav-box:after {
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 10px;
  background: #FFF;
  z-index: 3; }
  @media (max-width: 768px) {
    .main-nav-current.border-animation .main-nav-box:before, .main-nav-current.border-animation .main-nav-box:after {
      height: 4px; } }
.main-nav-current.border-animation .main-nav-box:before {
  left: 1px;
  top: 0;
  animation: move-top 1s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
.main-nav-current.border-animation .main-nav-box:after {
  right: 1px;
  bottom: 0;
  animation: move-bottom 1s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
.main-nav-current.border-animation .main-nav-box span:before, .main-nav-current.border-animation .main-nav-box span:after {
  content: "";
  display: block;
  width: 10px;
  height: 100%;
  background: #FFF;
  position: absolute; }
  @media (max-width: 768px) {
    .main-nav-current.border-animation .main-nav-box span:before, .main-nav-current.border-animation .main-nav-box span:after {
      width: 4px; } }
.main-nav-current.border-animation .main-nav-box span:before {
  left: -10px;
  top: 0;
  animation: move-left 1s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
  @media (max-width: 768px) {
    .main-nav-current.border-animation .main-nav-box span:before {
      left: -4px; } }
.main-nav-current.border-animation .main-nav-box span:after {
  right: -10px;
  bottom: 10px;
  animation: move-right 1s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
  @media (max-width: 768px) {
    .main-nav-current.border-animation .main-nav-box span:after {
      right: -4px;
      bottom: 4px; } }

/*----------------------------------------------------
	#l-layer-wrapper
----------------------------------------------------*/
.l-layer-page-title-block .title:after {
  width: 100px;
  border-bottom: 4px solid #666;
  padding: 25px 0 0 0; }

.l-layer-wrapper .l-layer-content {
  margin: 0 0 100px 0;
  padding: 0 0 100px 0; }
  @media (max-width: 768px) {
    .l-layer-wrapper .l-layer-content {
      margin: 0 0 14% 0;
      padding: 0 0 14% 0; } }
  .l-layer-wrapper .l-layer-content .image-block .image {
    position: relative; }
    @media (max-width: 768px) {
      .l-layer-wrapper .l-layer-content .image-block .image img {
        width: 100%;
        height: 600px;
        object-fit: cover; } }
    .l-layer-wrapper .l-layer-content .image-block .image .play {
      position: absolute;
      left: 50%;
      top: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
      .l-layer-wrapper .l-layer-content .image-block .image .play:hover {
        opacity: 1; }
      .l-layer-wrapper .l-layer-content .image-block .image .play img {
        max-width: 100px;
        width: initial;
        height: auto;
        object-fit: initial; }
  .l-layer-wrapper .l-layer-content .movie-block {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden; }
    .l-layer-wrapper .l-layer-content .movie-block iframe {
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
  .l-layer-wrapper .l-layer-content .content-box {
    display: flex;
    justify-content: flex-end;
    margin: -85px 0 0 120px;
    position: relative;
    width: 960px; }
    @media (max-width: 768px) {
      .l-layer-wrapper .l-layer-content .content-box {
        width: 90%;
        margin: -85px 0 0 10%; } }
    .l-layer-wrapper .l-layer-content .content-box .content {
      background: #FFF;
      position: relative;
      padding: 60px 88px;
      z-index: 2;
      width: 960px; }
      @media (max-width: 768px) {
        .l-layer-wrapper .l-layer-content .content-box .content {
          padding: 9% 10%;
          width: 100%; } }
      .l-layer-wrapper .l-layer-content .content-box .content h2 {
        font-size: 36px;
        display: inline-block;
        position: relative;
        padding: 0 0 44px 0;
        margin: 0; }
        @media (max-width: 768px) {
          .l-layer-wrapper .l-layer-content .content-box .content h2 {
            font-size: .036rem;
            padding: 0 0 10.5% 0; } }
      .l-layer-wrapper .l-layer-content .content-box .content .title-stripe {
        display: block;
        width: 200px;
        position: relative;
        margin: 0 0 47px 0; }
        .l-layer-wrapper .l-layer-content .content-box .content .title-stripe:after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 0;
          width: 100%;
          height: 8px;
          background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
          background-size: 7px 7px; }
        @media (max-width: 768px) {
          .l-layer-wrapper .l-layer-content .content-box .content .title-stripe {
            margin: 0 0 5% 0; } }
      .l-layer-wrapper .l-layer-content .content-box .content p {
        font-size: 18px;
        line-height: 1.75;
        text-align: justify; }
        @media (max-width: 768px) {
          .l-layer-wrapper .l-layer-content .content-box .content p {
            font-size: .028rem;
            line-height: 1.9; } }
    .l-layer-wrapper .l-layer-content .content-box .content-stripe-box {
      position: absolute;
      top: 20px;
      bottom: -20px;
      width: 100%;
      right: 20px;
      left: -20px;
      z-index: 1;
      background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
      background-size: 7px 7px; }

.video-inner-block {
  max-width: 70%;
  margin: 0 auto; }
  .video-inner-block video {
    max-width: 100%; }

.l-layer-map-block iframe {
  width: 100%;
  height: 600px; }

/*----------------------------------------------------
	#header
----------------------------------------------------*/
.header_block {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 100; }
  .header_block .header {
    padding: 20px 20px 20px 50px;
    display: flex;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .header_block .header {
        display: none; } }
    .header_block .header .logo {
      display: flex;
      align-items: center; }
      .header_block .header .logo img {
        width: 184px; }
      .header_block .header .logo div {
        margin: 0 0 0 20px;
        font-size: 18px;
        font-weight: bold; }
    .header_block .header .language_block {
      font-size: 14px;
      position: relative; }
      .header_block .header .language_block .language {
        background: #FFF;
        display: flex;
        align-items: center;
        padding: 8px 8px 10px 8px;
        cursor: pointer; }
        .header_block .header .language_block .language img {
          width: 20px;
          height: 20px;
          margin: 0 5px 0 0; }
      .header_block .header .language_block ul {
        display: none;
        text-align: center;
        border-top: 1px solid #808080;
        position: absolute;
        top: 38px;
        width: 100%;
        background: #FFF; }
        .header_block .header .language_block ul li {
          list-style: none;
          padding: 8px 0;
          margin: 0 18px;
          border-bottom: 1px solid #808080; }
          .header_block .header .language_block ul li:last-child {
            border: none; }
          .header_block .header .language_block ul li a:link {
            display: block; }
  .header_block .menu-sp-block {
    display: none; }
    @media (max-width: 768px) {
      .header_block .menu-sp-block {
        display: block;
        position: absolute;
        width: 50px;
        top: 20px;
        right: 5%;
        z-index: 9999;
        text-align: center;
        background: #FFF;
        padding: 7px 0 0 0; } }
    .header_block .menu-sp-block .menu .menu-trigger,
    .header_block .menu-sp-block .menu .menu-trigger span {
      display: inline-block;
      transition: all .4s;
      box-sizing: border-box; }
    .header_block .menu-sp-block .menu .menu-trigger {
      position: relative;
      width: 32px;
      height: 21px; }
    .header_block .menu-sp-block .menu .menu-trigger span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #000; }
    .header_block .menu-sp-block .menu .menu-trigger span:nth-of-type(1) {
      top: 0; }
    .header_block .menu-sp-block .menu .menu-trigger span:nth-of-type(2) {
      top: 10px; }
    .header_block .menu-sp-block .menu .menu-trigger span:nth-of-type(3) {
      bottom: 0; }
    .header_block .menu-sp-block .menu .menu-trigger.active {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg); }
    .header_block .menu-sp-block .menu .menu-trigger.active span:nth-of-type(1) {
      -webkit-transform: translateY(10px) rotate(-45deg);
      transform: translateY(10px) rotate(-45deg); }
    .header_block .menu-sp-block .menu .menu-trigger.active span:nth-of-type(2) {
      -webkit-transform: translateY(0) rotate(45deg);
      transform: translateY(0) rotate(45deg); }
    .header_block .menu-sp-block .menu .menu-trigger.active span:nth-of-type(3) {
      opacity: 0; }
  .header_block .header-sp {
    display: none; }
    @media (max-width: 768px) {
      .header_block .header-sp {
        background: #FFF;
        width: 100%;
        position: absolute;
        top: 0;
        left: 0; }
        .header_block .header-sp:after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 0;
          width: 100%;
          height: 7px;
          background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
          background-size: 7px 7px; } }
    .header_block .header-sp .menu-block {
      text-align: center;
      margin: 22% 10% 0 10%;
      font-size: .036rem; }
      .header_block .header-sp .menu-block ul li {
        list-style: none;
        margin: 0;
        border-bottom: 1px solid #E9E9E9; }
        .header_block .header-sp .menu-block ul li a:link {
          display: block;
          padding: 20px 0; }
      .header_block .header-sp .menu-block .menu-logo {
        width: 39%;
        margin: 0 auto; }
      .header_block .header-sp .menu-block .language-block-sp {
        margin: 12% 0 0 0; }
        .header_block .header-sp .menu-block .language-block-sp .language-sp {
          display: flex;
          flex-wrap: nowrap;
          justify-content: space-between;
          align-items: center;
          padding: 18px 5%; }
          .header_block .header-sp .menu-block .language-block-sp .language-sp img {
            max-width: 20px;
            height: auto; }
            .header_block .header-sp .menu-block .language-block-sp .language-sp img:nth-child(2) {
              max-width: 15px;
              transition: all .3s; }
            .header_block .header-sp .menu-block .language-block-sp .language-sp img.active {
              -webkit-transform: rotate(180deg);
              transform: rotate(180deg); }
        .header_block .header-sp .menu-block .language-block-sp ul {
          background: #F2F2F2;
          display: none; }
      .header_block .header-sp .menu-block .share-sp-block {
        padding: 7% 0 0 0; }
        .header_block .header-sp .menu-block .share-sp-block .share-title {
          font-weight: bold; }
        .header_block .header-sp .menu-block .share-sp-block ul {
          display: flex;
          flex-wrap: wrap;
          margin: 6% 0 13% 0; }
          @media (max-width: 768px) {
            .header_block .header-sp .menu-block .share-sp-block ul {
              justify-content: center; } }
          .header_block .header-sp .menu-block .share-sp-block ul li {
            list-style: none;
            text-align: center;
            width: 40px; }
            .header_block .header-sp .menu-block .share-sp-block ul li:nth-child(2) {
              margin: 0 16px; }
            .header_block .header-sp .menu-block .share-sp-block ul li a:link {
              padding: 0; }

/*----------------------------------------------------
	#main visual
----------------------------------------------------*/
.main-visual-block {
  position: relative;
  overflow: hidden; }
  .main-visual-block .slide-decoration {
    position: absolute;
    top: -16%;
    left: -10%;
    width: 120%;
    z-index: 999; }
    .main-visual-block .slide-decoration img {
      width: 100%; }
  .main-visual-block .l-layer-title {
    position: absolute;
    z-index: 20;
    top: 25%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); }
    @media (max-width: 768px) {
      .main-visual-block .l-layer-title {
        width: 75%;
        top: 40%;
        margin: 0 auto; } }
    .main-visual-block .l-layer-title h1 {
      color: #FFF;
      text-shadow: 1px 1px 7px #000; }
      @media (max-width: 768px) {
        .main-visual-block .l-layer-title h1 {
          font-size: .06rem;
          text-align: center; } }
  .main-visual-block .slide-logo {
    position: absolute;
    z-index: 20;
    top: 15%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 15%; }
    @media (max-width: 768px) {
      .main-visual-block .slide-logo {
        width: 30%; } }
  .main-visual-block .slide-scroll {
    position: absolute;
    z-index: 20;
    top: 42%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%); }
    @media (max-width: 768px) {
      .main-visual-block .slide-scroll {
        top: 47%; } }
    .main-visual-block .slide-scroll img {
      width: 28px;
      animation: scroll 1s linear 5; }
      @media (max-width: 768px) {
        .main-visual-block .slide-scroll img {
          width: 18px; } }
  .main-visual-block .slide-block {
    overflow: hidden; }
    .main-visual-block .slide-block .slide .slide-for-block {
      position: relative; }
      .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide img {
        width: 100%; }
        @media (max-width: 768px) {
          .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide img {
            height: 500px;
            object-fit: cover; } }
      .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide .play {
        position: absolute;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
        .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide .play:hover {
          opacity: 1; }
        .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide .play img {
          max-width: 100px; }
          @media (max-width: 768px) {
            .main-visual-block .slide-block .slide .slide-for-block .slider-for .slick-list .slick-track .slick-slide .play img {
              max-width: 45px;
              width: initial;
              height: auto; } }
      .main-visual-block .slide-block .slide .slide-for-block .slider-for-index .slick-list .slick-track .slick-slide {
        width: 100%;
        height: auto;
        position: absolute;
        top: 0;
        left: 0; }
        .main-visual-block .slide-block .slide .slide-for-block .slider-for-index .slick-list .slick-track .slick-slide video {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: auto; }
          @media (max-width: 768px) {
            .main-visual-block .slide-block .slide .slide-for-block .slider-for-index .slick-list .slick-track .slick-slide video {
              width: 290%; } }
    .main-visual-block .slide-block .slide .sin-wave-block {
      position: relative;
      z-index: 20;
      margin: -90px 0 0 0; }
      .main-visual-block .slide-block .slide .sin-wave-block canvas {
        display: block; }
    .main-visual-block .slide-block .slide .slider-nav-block {
      position: relative;
      background: #62C3D3;
      padding: 2% 0 5% 0; }
      .main-visual-block .slide-block .slide .slider-nav-block .slider-nav-current {
        position: absolute;
        text-align: center;
        left: -2%;
        right: 0;
        top: 5%;
        z-index: 5;
        width: 37%;
        margin: 0 auto; }
        @media (max-width: 768px) {
          .main-visual-block .slide-block .slide .slider-nav-block .slider-nav-current {
            width: 30%;
            top: 11%; } }
      .main-visual-block .slide-block .slide .slider-nav-block .slider-nav-current-animation {
        animation: move-purupuru 1s cubic-bezier(0.77, 0, 0.175, 1) 0s; }
      .main-visual-block .slide-block .slide .slider-nav-block span {
        display: block;
        position: absolute;
        width: 50%;
        height: 49%; }
        .main-visual-block .slide-block .slide .slider-nav-block span:nth-child(1) {
          background: #81CFE2;
          left: 0;
          top: 29%; }
        .main-visual-block .slide-block .slide .slider-nav-block span:nth-child(2) {
          background: #BFE6EF;
          right: 0;
          top: 36%; }
      .main-visual-block .slide-block .slide .slider-nav-block .slider-nav {
        padding: 45px 0; }
        @media (max-width: 768px) {
          .main-visual-block .slide-block .slide .slider-nav-block .slider-nav {
            padding: 4% 0; } }
        .main-visual-block .slide-block .slide .slider-nav-block .slider-nav .slick-list .slick-track .slick-slide {
          transition: .3s ease;
          transform: scale(0.75);
          transform-origin: bottom center;
          cursor: pointer; }
          .main-visual-block .slide-block .slide .slider-nav-block .slider-nav .slick-list .slick-track .slick-slide.slick-current {
            transform: scale(1);
            position: relative;
            transform-origin: bottom center; }
          .main-visual-block .slide-block .slide .slider-nav-block .slider-nav .slick-list .slick-track .slick-slide .play {
            position: absolute;
            left: 50%;
            top: 50%;
            -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
            .main-visual-block .slide-block .slide .slider-nav-block .slider-nav .slick-list .slick-track .slick-slide .play img {
              max-width: 50px; }
              @media (max-width: 768px) {
                .main-visual-block .slide-block .slide .slider-nav-block .slider-nav .slick-list .slick-track .slick-slide .play img {
                  max-width: 25px; } }

/*----------------------------------------------------
	#footer
----------------------------------------------------*/
.footer-block {
  position: relative;
  margin: 112px 0 0 0; }
  .footer-block:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 20px;
    background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
    background-size: 7px 7px; }
  .footer-block:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 20px;
    background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
    background-size: 7px 7px; }
  @media (max-width: 768px) {
    .footer-block {
      margin: 30px 0 0 0; }
      .footer-block:before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 10px;
        background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
        background-size: 7px 7px; }
      .footer-block:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 10px;
        background: linear-gradient(-45deg, rgba(255, 255, 255, 0) 35%, #51A6BA 35%, #51A6BA 50%, rgba(255, 255, 255, 0) 50%, rgba(255, 255, 255, 0) 85%, #51A6BA 85%, #51A6BA);
        background-size: 7px 7px; } }
  .footer-block .footer-contents {
    font-size: 18px;
    display: flex;
    justify-content: space-around;
    padding: 77px 0 39px 0; }
    @media (max-width: 768px) {
      .footer-block .footer-contents {
        display: block;
        justify-content: initial;
        padding: 17% 0; } }
    .footer-block .footer-contents .footer-logo {
      text-align: center; }
      .footer-block .footer-contents .footer-logo img {
        width: 50%; }
        @media (max-width: 768px) {
          .footer-block .footer-contents .footer-logo img {
            width: 30%; } }
    .footer-block .footer-contents .footer-link {
      width: 960px;
      padding: 12px 0 0 0; }
      @media (max-width: 1300px) {
        .footer-block .footer-contents .footer-link {
          width: 70%; } }
      @media (max-width: 768px) {
        .footer-block .footer-contents .footer-link {
          width: 100%;
          margin: 0 auto;
          padding: 11% 0 0 0; } }
      .footer-block .footer-contents .footer-link ul {
        display: flex;
        flex-wrap: wrap; }
        .footer-block .footer-contents .footer-link ul li {
          width: 33.3333333%;
          list-style: none;
          text-align: center;
          margin: 0 0 39px 0; }
          @media (max-width: 768px) {
            .footer-block .footer-contents .footer-link ul li {
              width: 46%;
              font-size: .024rem;
              text-align: left;
              margin: 0 0 3% 4%;
              line-height: 1.6; } }
    .footer-block .footer-contents .footer-share {
      text-align: center;
      padding: 12px 0 0 0; }
      @media (max-width: 1300px) {
        .footer-block .footer-contents .footer-share {
          width: 25%; } }
      @media (max-width: 768px) {
        .footer-block .footer-contents .footer-share {
          font-size: .03rem;
          padding: 5% 0 0 0;
          width: 100%; } }
      .footer-block .footer-contents .footer-share p {
        font-weight: bold; }
      .footer-block .footer-contents .footer-share ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin: 17px 0 0 0; }
        @media (max-width: 768px) {
          .footer-block .footer-contents .footer-share ul {
            justify-content: center; } }
        .footer-block .footer-contents .footer-share ul li {
          list-style: none;
          text-align: center;
          width: 40px; }
          .footer-block .footer-contents .footer-share ul li:nth-child(2) {
            margin: 0 16px; }
  .footer-block .copy {
    text-align: center;
    font-size: 16px;
    padding: 0 0 10px 0; }
    @media (max-width: 768px) {
      .footer-block .copy {
        font-size: .02rem; } }
  .footer-block .footer-bnr-list-block {
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
    padding: 0 0 70px 0; }
    @media (max-width: 768px) {
      .footer-block .footer-bnr-list-block {
        padding: 0 0 6% 0;
        justify-content: center; } }
    .footer-block .footer-bnr-list-block div {
      width: 10%; }
      @media (max-width: 768px) {
        .footer-block .footer-bnr-list-block div {
          width: 100%;
          text-align: center; }
          .footer-block .footer-bnr-list-block div img {
            max-width: 28%; } }
      .footer-block .footer-bnr-list-block div p {
        font-size: 10px; }

.page-top {
  position: fixed;
  right: 5%;
  bottom: 5%;
  width: 60px;
  height: 60px;
  z-index: 99999; }

/*----------------------------------------------------
	#animation
----------------------------------------------------*/
/*----- フェードインしながら上へスライド -----*/
.inviewfadeInUp {
  opacity: 0;
  transform: translate(0, 32px);
  -webkit-transform: translate(0, 32px);
  transition: .8s; }

.fadeInUp {
  opacity: 1;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); }

#loading {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100; }
  #loading .loading-text {
    text-align: center;
    font-size: 10px;
    color: #51a6ba;
    margin: 12px 0 0 0; }

#loading img {
  width: 100px; }

@media screen and (min-width: 768px) {
  #loading img {
    width: 120px; } }
.hovereffect {
  width: 100%;
  height: auto;
  float: left;
  overflow: hidden;
  position: relative;
  text-align: center;
  cursor: default;
  background: -webkit-linear-gradient(45deg, #ff89e9 0%, #05abe0 100%);
  background: linear-gradient(45deg, #ff89e9 0%, #05abe0 100%);
  position: relative; }

.hovereffect .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  padding: 3em;
  text-align: left; }

.hovereffect img {
  display: block;
  position: relative;
  max-width: none;
  width: calc(100% + 60px);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.45s;
  transition: opacity 0.35s, transform 0.45s;
  -webkit-transform: translate3d(-40px, 0, 0);
  transform: translate3d(-40px, 0, 0); }

.hovereffect h2 {
  color: #fff;
  font-size: 1.45vw;
  background-color: transparent;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%); }
  @media (max-width: 768px) {
    .hovereffect h2 {
      font-size: .03rem; } }

.hovereffect .overlay:before {
  position: absolute;
  top: 20px;
  right: 20px;
  bottom: 19px;
  left: 20px;
  border: 1px solid #fff;
  content: '';
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.45s;
  transition: opacity 0.35s, transform 0.45s;
  -webkit-transform: translate3d(-20px, 0, 0);
  transform: translate3d(-20px, 0, 0); }

.hovereffect a, .hovereffect p {
  color: #FFF;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.45s;
  transition: opacity 0.35s, transform 0.45s;
  -webkit-transform: translate3d(-10px, 0, 0);
  transform: translate3d(-10px, 0, 0); }

.hovereffect:hover img {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.hovereffect:hover .overlay:before,
.hovereffect:hover a, .hovereffect:hover p {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.box {
  position: absolute;
  width: 150px;
  height: 150px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #000;
  overflow: hidden; }

@keyframes move-top {
  0% {
    transform: translate3d(-100%, 0, 0); }
  50% {
    transform: translate3d(0%, 0, 0); }
  75% {
    transform: translate3d(100%, 0, 0); }
  100% {
    transform: translate3d(100%, 0, 0); } }
@keyframes move-bottom {
  0% {
    transform: translate3d(100%, 0, 0); }
  50% {
    transform: translate3d(0%, 0, 0); }
  75% {
    transform: translate3d(-100%, 0, 0); }
  100% {
    transform: translate3d(-100%, 0, 0); } }
@keyframes move-left {
  0% {
    transform: translate3d(0%, 100%, 0); }
  50% {
    transform: translate3d(0%, 100%, 0); }
  100% {
    transform: translate3d(0%, -100%, 0); } }
@keyframes move-right {
  0% {
    transform: translate3d(0%, -100%, 0); }
  50% {
    transform: translate3d(0%, -100%, 0); }
  100% {
    transform: translate3d(0%, 100%, 0); } }
@keyframes move-purupuru {
  0% {
    -webkit-transform: scale(1, 1) translate(0%, 0%); }
  15% {
    -webkit-transform: scale(0.95, 0.95) translate(0%, 5%); }
  30% {
    -webkit-transform: scale(1.1, 0.85) translate(0%, 2%); }
  50% {
    -webkit-transform: scale(0.85, 1.1) translate(0%, -2%); }
  70% {
    -webkit-transform: scale(1.05, 0.95) translate(0%, 5%); }
  100% {
    -webkit-transform: scale(1, 1) translate(0%, 0%); } }
@keyframes scroll {
  0%,100% {
    opacity: 1; }
  50% {
    opacity: 0; } }
.about-block .about {
  background: url("img/index/about.png") no-repeat;
  background-size: 100%;
  padding-top: 31.25%;
  position: relative; }
  @media (max-width: 768px) {
    .about-block .about {
      background: url("img/index/about_sp.png") no-repeat;
      padding-top: 160%; } }
  .about-block .about h2 {
    position: absolute;
    top: 26%;
    left: 24.9%;
    font-size: 60px;
    color: #FFF; }
    @media (max-width: 768px) {
      .about-block .about h2 {
        font-size: .06rem;
        left: 8%;
        top: 21%;
        line-height: 1.6; } }
.about-block .scene {
  display: flex;
  flex-wrap: wrap; }
  .about-block .scene div {
    width: 25%;
    padding: 0;
    margin: 0;
    position: relative; }
    @media (max-width: 768px) {
      .about-block .scene div {
        width: 50%; } }
    .about-block .scene div:nth-child(1) {
      background: url("img/index/people.png") no-repeat;
      background-size: 100%; }
    .about-block .scene div:nth-child(2) {
      background: url("img/index/sports.png") no-repeat;
      background-size: 100%; }
    .about-block .scene div:nth-child(3) {
      background: url("img/index/activity.png") no-repeat;
      background-size: 100%; }
    .about-block .scene div:nth-child(4) {
      background: url("img/index/food.png") no-repeat;
      background-size: 100%; }
    .about-block .scene div:before {
      content: "";
      display: block;
      padding-top: 66.6666%; }
    .about-block .scene div p {
      font-weight: bold;
      font-size: 48px;
      color: #FFF;
      text-align: center;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%);
      -webkit-transform: translateY(-50%) translateX(-50%); }
      @media (max-width: 768px) {
        .about-block .scene div p {
          font-size: .032rem; } }

.nature-block {
  padding: 0 0 37px 0; }
  .nature-block .nature {
    background: url("img/index/nature.png") no-repeat;
    background-size: 100%;
    padding-top: 31.25%; }
    @media (max-width: 768px) {
      .nature-block .nature {
        background: url("img/index/nature_sp.png") no-repeat;
        padding-top: 160%;
        background-attachment: fixed; } }
  .nature-block p {
    width: 940px;
    margin: -50px auto 0 auto;
    background: #F4EEEB;
    font-size: 18px;
    line-height: 1.75;
    padding: 38px 38px 31px 38px; }
    @media (max-width: 768px) {
      .nature-block p {
        width: 90%;
        margin: -50px 0 0 10%;
        font-size: .028rem;
        padding: 4.5% 4.5% 4.5% 3.5%;
        line-height: 1.8; } }

.map-block {
  overflow: hidden; }
  .map-block .map-content {
    background: #F4EEEB;
    padding: 100px 0 287px 0; }
    @media (max-width: 768px) {
      .map-block .map-content {
        padding: 12% 0 13% 0; } }
    .map-block .map-content .inner {
      position: relative; }
      .map-block .map-content .inner .map-posi-box {
        position: relative;
        margin: 0 0 50px 0;
        z-index: 2; }
        @media (max-width: 768px) {
          .map-block .map-content .inner .map-posi-box {
            width: 91%;
            margin: 0 auto 12% auto; } }
        .map-block .map-content .inner .map-posi-box .map-posi {
          display: inline-block;
          background: #FFF; }
          .map-block .map-content .inner .map-posi-box .map-posi p {
            font-size: 28px;
            font-weight: bold;
            margin: -18px 0 0 0; }
            @media (max-width: 768px) {
              .map-block .map-content .inner .map-posi-box .map-posi p {
                font-size: .042rem; } }
        .map-block .map-content .inner .map-posi-box .map-text {
          font-size: 18px;
          line-height: 1.75;
          width: 465px;
          background: #FFF;
          padding: 10px 15px 31px 15px; }
          @media (max-width: 768px) {
            .map-block .map-content .inner .map-posi-box .map-text {
              width: 100%;
              margin: 0 auto;
              font-size: .028rem;
              padding: 4% 4%;
              line-height: 1.8; } }
      .map-block .map-content .inner .map {
        position: absolute;
        top: 95px;
        right: -218px;
        z-index: 1; }
        @media (max-width: 768px) {
          .map-block .map-content .inner .map {
            position: relative;
            top: initial;
            right: initial; } }
        .map-block .map-content .inner .map img {
          width: 900px; }
          @media (max-width: 768px) {
            .map-block .map-content .inner .map img {
              width: 100%; } }

.attractions-block .attractions-inner {
  display: flex;
  flex-wrap: wrap;
  margin: 42px 3.125%; }
  @media (max-width: 768px) {
    .attractions-block .attractions-inner {
      margin: 8% 0;
      display: block;
      flex-wrap: initial; } }
  .attractions-block .attractions-inner .attractions-box {
    width: 31.11111111%;
    margin: 0 0 3.125% 0; }
    @media (max-width: 768px) {
      .attractions-block .attractions-inner .attractions-box {
        width: 75%;
        margin: 0 auto; } }
    .attractions-block .attractions-inner .attractions-box p {
      padding: 10px 0 0 0;
      font-size: 1.45vw;
      clear: both; }
      @media (max-width: 768px) {
        .attractions-block .attractions-inner .attractions-box p {
          font-size: .03rem;
          padding: 5px 0 0 0;
          margin: 0 0 9% 0; } }
    .attractions-block .attractions-inner .attractions-box:nth-child(3n+2) {
      margin: 0 3.125% 3.125% 3.125%; }
      @media (max-width: 768px) {
        .attractions-block .attractions-inner .attractions-box:nth-child(3n+2) {
          margin: 0 auto; } }

/*----------------------------------------------------
	印刷用スタイル
----------------------------------------------------*/
@media print {
  * html body {
    zoom: .7; } }

/*# sourceMappingURL=style.css.map */
