@charset "utf-8";
/* Author: c.nz */
p {
  line-height: 2.2;
}
h2 span{font-size: 26px; font-weight: 500; letter-spacing: .2em; line-height: 1.2; display: block; margin-bottom: 5px;}

.sec-pic{justify-content: center;}
.slick-dotted.slick-slider{margin-bottom: 0;}
/* ---------------------------------------------------
	mainvisual
------------------------------------------------------ */
.mainvisual {
  position: relative;
  width: 100%;
  background-size: cover;
}
.mainvisual .main-slide .slide img{
  width:100%;
}
.dots-none .slick-dots{display: none;}
@media screen and (min-width:899px){
  .mainvisual .main-slide .slide{background:none !important;}
}

@media screen and (max-width:896px),(max-width:896px) and (orientation:landscape){
  .mainvisual .slick-slider img{
    display: none;
  }
}
.mainvisual .main-tit {
  position: absolute;
  left: 0;
  bottom: 22.66%;
  width: 100%;
  margin: 0;
  color: #fff;
  font-size: 32px;
  font-weight: 500;
  letter-spacing: .2em;
  line-height: 1.4;
  text-shadow: 0 0 12px black;
  text-align: center;
}
.mainvisual .main-reserve {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 280px;
  z-index: 100;
}

@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .mainvisual {
    min-height: 480px;
  }
  .mainvisual .main-slide .slide {
    min-height: 480px;
  }
  .mainvisual .main-tit {
    top: calc(50% - .75em);
    bottom: auto;
    width: 100%;
    font-size: 28px;
  }
  .mainvisual .main-reserve {
    width: 160px;
    max-width: 50%;
  }
  :lang(en) .mainvisual .main-tit {
    font-size: 23px;
  }
}
/* ---------------------------------------------------
	sec01
------------------------------------------------------ */
.sec01 {
  padding: 50px 0 0;
}
.sec01 .bnr-slide {
  position: relative;
}
.sec01 .bnr-slide .slides .slick-list {
  overflow: visible;
}
.sec01 .bnr-slide .slides .slide {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}
.sec01 .bnr-slide .slides .slide a {
  position: relative;
  display: block;
  width: 100%;
}
.sec01 .bnr-slide .slides .slide .img-wrap {
  border-right: 1px dashed rgba(1, 31, 67, 0.4);
  padding: 0 18px;
}
.sec01 .bnr-slide .slides .slide img {
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: left top;
  border-radius: 5px;
}
.sec01 .bnr-slide .slides .slide .slide-txt {
  color: #000;
  line-height: 1.5;
  font-size: 18px;
  margin-top: 10px;
  padding: 0 18px;
}
.is_tablet .sec01 .sec-lead {
  font-size: 19px;
}
@media screen and (max-width: 1000px) {
  .sec01 .sec-bnr .bnr-icon {
    width: 80px;
    margin-left: 0;
  }
  .sec01 .sec-bnr .bnr-txt {
    font-size: 26px;
  }
}
@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec01 {
    padding: 32px 0 0;
    background-size: 250%;
  }
  .sec01 .bnr-slide {
    background: #FBFAF5;
  }
  .sec01 .bnr-slide .slides {
    padding-bottom: 30px;
  }
  .sec01 .bnr-slide .slides .slick-list {
    overflow: visible;
  }
  .sec01 .bnr-slide .slides .slide {
    border-radius: 0;
    height: auto;
  }
  .sec01 .bnr-slide .slides .slide a:before {
    content: none;
  }
  .sec01 .bnr-slide .slides .slide img {
    border-radius: 5px;
    height: 67px;
    object-fit: cover;
  }
  .sec01 .bnr-slide .slides .slide .slide-txt {
    position: static;
    padding: 5px 18px 0;
    color: #222;
    font-size: 13px;
  }
  .sec01 .bnr-slide .slides .slick-dots {
    bottom: 0;
  }
  .sec01 .bnr-slide .slides .slide a {
    height: auto;
  }
}
@media screen and (max-width:896px) and (orientation:landscape) {
  .sec01 .bnr-slide .slides .slide img{
    height: 140px;
  }
}
/* ---------------------------------------------------
	sec02
------------------------------------------------------ */
.sec02 {
  padding: 244px 0 0;
  background-size: cover;
  color: #222;
  text-align: center;
  background: url(../images/top/bg-sec01-01.jpg) no-repeat center 0;
}
.sec02 .sec-btn {
  margin-top: 50px;
  text-align: center;
}

.sec02 .sec-pic{margin-top: 60px;}

.is_tablet .sec02 .sec-lead {
  font-size: 19px;
}
@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec02 {
    padding: 100px 0 0;
    text-align: left;
    background: url(../images/top/bg-sec01-01.jpg) no-repeat center 0;
  }
  .sec02 .container {
    width: calc(100% - 20px);
  }
  .sec02 .sec-btn {
    margin-top: 24px;
  }
  .sec02 .sec-btn .btn:hover {
    background: none;
  }
}
/* ---------------------------------------------------
	sec03
------------------------------------------------------ */
.sec03 {
  padding: 250px 0 0;
  background: url(../images/top/bg-sec03-01.png) no-repeat center -250px;
  text-align: center;
}
.sec03 .sec-btn {
  margin-top: 50px;
  text-align: center;
}
.sec03 .sec-pic {
  position: relative;
  width: 96%;
  max-width: 1720px;
  margin: 60px auto 0;
}
.sec03 .sec-pic .pic-min {
  width: 640px;
  max-width: 37.21%;
  border-radius: 0 5px 5px 0;
  overflow: hidden;
}
.sec03 .sec-pic .pic-min img {
  display: block;
}
.is_tablet .sec03 .sec-lead {
  font-size: 19px;
}
@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec03 {
    padding: 100px 0 0;
    background: url(../images/top/bg-sec03-01.png) no-repeat center 0;
    background-size: 70%;
    text-align: left;
  }
  .sec03 .container {
    width: calc(100% - 20px);
  }
  .sec03 .sec-btn {
    margin-top: 25px;
  }
  .sec03 .sec-pic {
    width: calc(100% - 20px);
    margin: 40px auto 0;
    overflow: hidden;
    border-radius: 5px;
  }
  .sec03 .sec-pic .pic-wide img {
    width: 150%;
    max-width: 150%;
  }
  .sec03 .sec-pic .pic-min img {
    width: 150%;
    max-width: 150%;
  }
}
/* ---------------------------------------------------
	sec04
------------------------------------------------------ */
.sec04 {
  padding: 250px 0 0;
  background-size: cover;
  text-align: center;
}
.sec04 h2 {
  position: relative;
  display: inline-block;
}
.sec04 h2 .icon {
  position: absolute;
  left: -278px;
  top: -40px;
}
.sec04 .sec-btn {
  margin-top: 50px;
  text-align: center;
}
.sec04 .sec-pic {
  position: relative;
  width: 96%;
  max-width: 1720px;
  margin: 60px auto 0;
  border-radius: 5px;
  overflow: hidden;
  z-index: 1;
}
.sec04 .sec-pic img {
  display: block;
}

@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec04 {
    padding: 40px 0 0;
    text-align: left;
  }
  .sec04 .container {
    width: calc(100% - 20px);
  }
  .sec04 h2 {
    display: block;
  }
  .sec04 h2 .icon {
    display: none;
  }
  .sec04 .sec-btn {
    margin-top: 25px;
  }
  .sec04 .sec-pic {
    width: calc(100% - 20px);
    margin-top: 40px;
  }
  .sec04 .sec-pic img {
    width: 150%;
    max-width: 150%;
  }
}
/* ---------------------------------------------------
	sec05
------------------------------------------------------ */
.sec05 {
  padding: 160px 0;
  text-align: center;
  position: relative;
}
.sec05::before{
  content: "";
  display: inline-block;
  background: url(../images/top/bg-sec05-01.png) no-repeat center/contain;
  width: 845px;
  height: 689px;
  position: absolute;
  top: -185px;
  left: -202px;
}
.sec05 .sec-btn {
  margin-top: 50px;
  text-align: center;
}
.sec05 .sec-pic {
  position: relative;
  width: 96%;
  max-width: 1720px;
  margin: 60px auto 0;
  border-radius: 5px;
  overflow: hidden;
}
.sec05 .sec-pic img {
  display: block;
}

@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec05 {
    padding: 50px 0 60px;
    background-size: 250%;
    text-align: left;
  }
  .sec05 .container {
    width: calc(100% - 20px);
  }
  .sec05 .sec-btn {
    margin-top: 25px;
  }
  .sec05 .sec-pic {
    width: calc(100% - 20px);
    margin-top: 40px;
    overflow: hidden;
  }
  .sec05 .sec-pic img {
    width: 150%;
    max-width: 150%;
  }
}
/* ---------------------------------------------------
	sec06
------------------------------------------------------ */
.sec06 {
  padding-bottom: 100px;
}
.sec06 .sec-list {
  width: 96%;
  max-width: 1720px;
  margin: 0 auto;
}
.sec06 .sec-list .list-item {
  width: 560px;
  max-width: 32.6%;
  margin-bottom: 50px;
}
.sec06 .sec-list .list-item a {
  display: block;
}
.sec06 .sec-list .list-item .item-pic {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}
.sec06 .sec-list .list-item .item-pic:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, rgba(1, 31, 67, 0) 0%, rgba(1, 23, 50, 0) 25%, rgba(0, 0, 0, 0.5) 100%);
  background: -webkit-linear-gradient(top, rgba(1, 31, 67, 0) 0%, rgba(1, 23, 50, 0) 25%, rgba(0, 0, 0, 0.5) 100%);
  background: linear-gradient(to bottom, rgba(1, 31, 67, 0) 0%, rgba(1, 23, 50, 0) 25%, rgba(0, 0, 0, 0.5) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00011f43', endColorstr='#80000000',GradientType=0 );
}
.sec06 .sec-list .list-item .item-pic img {
  display: block;
  width: 100%;
}
.sec06 .sec-list .list-item .item-tit {
  margin: 0;
  padding: 5%;
  position: absolute;
  left: 0;
  bottom: 0;
  color: #fff;
  font-size: 34px;
  line-height: 1.4;
  letter-spacing: .01em;
}
.sec06 .sec-list .list-item .item-txt {
  padding: 20px 30px 0;
}
.sec06 .sec-btn {
  text-align: center;
}

@media screen and (max-width: 1000px) {
  .sec06 .sec-list .list-item {
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
  }
  .sec06 .sec-list .list-item .item-tit {
    padding: 5%;
    font-size: 24px;
  }
}
@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec06 {
    padding-bottom: 60px;
  }
  .sec06 .sec-list {
    width: calc(100% - 20px);
  }
  .sec06 .sec-list .list-item {
    width: 100%;
    max-width: 100%;
    margin-bottom: 30px;
  }
  .sec06 .sec-list .list-item .item-tit {
    padding: 5%;
    font-size: 24px;
  }
  .sec06 .sec-list .list-item .item-txt {
    padding: 10px 10px 0;
  }
  .sec06 .sec-btn {
    width: calc(100% - 20px);
    margin: 0 auto;
  }
}
/* ---------------------------------------------------
	sec07
------------------------------------------------------ */
.sec07 {
  padding: 100px 0 0;
  background: url(../images/top/bg-sec07-01.jpg) no-repeat center top;
}
.sec07 h2 {
  margin-bottom: 30px;
  font-size: 34px;
  text-align: left;
}
.sec07 .sec-col {
  align-items: flex-start;
}
.sec07 .sec-col .col-txt {
  width: 560px;
  max-width: 46.7%;
}
.sec07 .sec-col .col-txt .recommend-map {
  margin-top: 100px;
}
.sec07 .sec-col .col-txt .recommend-map p.acms-admin-module-edit{
  font-size: 18px;
}
.sec07 .sec-col .col-txt .recommend-map p {
  font-family: "Noto Serif JP";
  font-weight: 500;
  font-size: 24px;
  letter-spacing: 0.05em;
  line-height: 1.333;
  text-align: left;
  color: #222;
  margin-bottom: 20px;
}
.sec07 .sec-col .col-txt .recommend-map p span{
  font-family: "Noto Serif JP";
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.05em;
  text-align: left;
  color: #222;
}
.sec07 .sec-col .col-txt .recommend-map .map-link a{
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "Noto Serif JP";
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 1.6;
  text-align: left;
  color: #222;
  background:#FFF;
  border: 2px solid rgba(1, 31, 67, 0.3);
  width: calc(50% - 5px);
  padding:16px 23px 15px 25px;
}
.sec07 .sec-col .col-txt .recommend-map .map-link a::after{
  content: "";
  display: inline-block;
  width: 9px;
  height: 16px;
  background: url(../images/common/icon-arrow-black.svg) no-repeat center/contain;
}
.sec07 .sec-col .col-movie {
  position: relative;
  width: 50%;
  padding-top: 28%;
  height: 0;
}
.sec07 .sec-col .col-movie iframe {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.sec07 .sec-btn {
  margin-top: 60px;
  text-align: center;
}

@media screen and (max-width: 1000px) {
  .sec07 h2 {
    text-align: center;
  }
  .sec07 .sec-col {
    max-width: 560px;
    margin: 0 auto;
  }
  .sec07 .sec-col .col-movie {
    width: 100%;
    text-align: center;
  }
}
@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec07 {
    padding: 50px 0 0;
    background: url(../images/top/bg-sec07-01.jpg) no-repeat left top -25vw;
    background-size: 250%;
  }
  .sec07 .container {
    width: calc(100% - 20px);
  }
  .sec07 h2 {
    margin-bottom: 20px;
    font-size: 26px;
    text-align: center;
  }
  .sec07 .sec-col .col-txt {
    width: 100%;
    max-width: 100%;
    margin-bottom: 40px;
  }
  .sec07 .sec-col .col-txt .recommend-map{
    margin-top: 30px;
  }
  .sec07 .sec-col .col-txt .recommend-map .map-link a{
    font-size: 16px;
    padding: 11px 13px 10px 15px;
  }
  .sec07 .sec-col .col-movie {
    width: 100%;
    padding-top: 56.2%;
  }
  .sec07 .sec-btn {
    margin-top: 25px;
  }
}
/* ---------------------------------------------------
	sec08
------------------------------------------------------ */
.sec08 {
  padding: 210px 0 130px;
  background: url(../images/top/bg-sec08-01.jpg) no-repeat center top;
  text-align: center;
}
.sec08 h2 {
  margin-bottom: 30px;
  font-size: 34px;
}
.sec08 iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 500px;
  margin: 60px auto 0;
  border: none;
  background: #fff;
}
.sec08 .sec-btn {
  margin-top: 60px;
  text-align: center;
}
.sec08 .news-wrap {
  text-align: left;
  margin: 210px auto 0;
}
.sec08 .news-wrap .sec-box {
  max-width: 1080px;
  justify-content: center;
}
.sec08 .news-wrap .sec-box .box-tit {
  width: 2em;
  margin: 0 6% 0 0;
  font-size: 26px;
  line-height: 1.5;
  text-align: center;
}
.sec08 .news-wrap .sec-box .box-list {
  width: 82%;
  line-height: 1.5;
}
.sec08 .news-wrap .sec-box .box-list li + li {
  margin-top: 1em;
}
.sec08 .news-wrap .sec-box .box-list li a {
  width: 100%;
  display: flex;
}
.sec08 .news-wrap .sec-box .box-list li a:hover {
  opacity: 1;
}
.sec08 .news-wrap .sec-box .box-list li a:hover .tit {
  text-decoration: underline;
}
.sec08 .news-wrap .sec-box .box-list li .time {
  display: block;
  width: 6em;
  color: #999999;
  font-weight: bold;
}
.sec08 .news-wrap .sec-box .box-list li .tit {
  display: block;
  width: calc(100% - 6em);
}
.sec08 .news-wrap .sec-btn {
  margin-top: 30px;
  text-align: center;
}
.sec08 .news-wrap .sec-btn a {
  display: inline-block;
  color: #011F43;
  text-decoration: underline;
}
.sec08 .news-wrap .sec-btn a:hover {
  opacity: 1;
  text-decoration: none;
}
.sec08 .news-wrap .sec-btn a .icon {
  margin-left: 8px;
}
.sec08 .news-wrap .sec-bnr {
  display: flex;
  width: 100%;
  margin-top: 150px;
  padding: 32px;
  align-items: center;
  background: url(../images/top/bg-sec01-03.jpg) center top;
  border-radius: 5px;
  color: #fff;
  justify-content: center;
  text-align: center;
  overflow: hidden;
}
.sec08 .news-wrap .sec-bnr .bnr-icon {
  width: 110px;
  margin-right: 20px;
  margin-left: -130px;
}
.sec08 .news-wrap .sec-bnr .bnr-txt {
  font-size: 32px;
  letter-spacing: .1em;
  line-height: 1.5;
}
.is_tablet .sec08 .news-wrap .sec-box .box-tit {
  margin-right: 40px;
}

@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec08 {
    padding: 80px 0 30px;
    background: url(../images/top/bg-sec08-01.jpg) no-repeat right top -25vw;
    background-size: 250%;
    text-align: left;
  }
  .sec08 .container {
    width: calc(100% - 20px);
  }
  .sec08 iframe {
    height: 300px;
    margin-top: 25px;
  }
  .sec08 .sec-btn {
    margin-top: 25px;
  }
  .sec08 .news-wrap{margin-top: 90px;}
  .sec08 .news-wrap .sec-box {
    margin: 60px auto 0;
    justify-content: center;
  }
  .sec08 .news-wrap .sec-box .box-tit {
    width: 100%;
    margin: 0 0 10px;
    font-size: 24px;
    letter-spacing: 0;
    writing-mode: rl;
  }
  .sec08 .news-wrap .sec-box .box-list {
    width: 100%;
    line-height: 1.5;
  }
  .sec08 .news-wrap .sec-box .box-list li + li {
    margin-top: 1em;
  }
  .sec08 .news-wrap .sec-box .box-list li a {
    display: block;
  }
  .sec08 .news-wrap .sec-box .box-list li a:hover {
    opacity: 1;
  }
  .sec08 .news-wrap .sec-box .box-list li a:hover .tit {
    text-decoration: none;
  }
  .sec08 .news-wrap .sec-box .box-list li .time {
    width: 100%;
    margin-bottom: 3px;
  }
  .sec08 .news-wrap .sec-box .box-list li .tit {
    width: 100%;
    line-height: 1.5;
  }
  .sec08 .news-wrap .sec-btn {
    margin-top: 30px;
  }
  .sec08 .news-wrap .sec-btn a {
    text-decoration: underline;
  }
  .sec08 .news-wrap .sec-btn a:hover {
    text-decoration: underline;
  }
  .sec08 .news-wrap .sec-bnr {
    margin-top: 50px;
    justify-content: space-between;
    padding: 20px 16px 20px 20px;
  }
  .sec08 .news-wrap .sec-bnr .bnr-icon {
    width: 60px;
    margin-right: 0;
  }
  .sec08 .news-wrap .sec-bnr .bnr-txt {
    width: calc(100% - 70px);
    font-size: 18px;
    line-height: 1.4;
    text-align: left;
  }
}
/* ---------------------------------------------------
	sec09
------------------------------------------------------ */
.sec09 {
  padding: 10px 0 0;
}
.sec09 .sec-list li {
  width: 580px;
  max-width: 48.4%;
  margin-top: 60px;
}

@media screen and (max-width: 896px),(max-width:896px) and (orientation:landscape) {
  .sec09 {
    padding: 40px 0 0;
  }
  .sec09 .container {
    width: calc(100% - 20px);
  }
  .sec09 .sec-list {
    max-width: 580px;
    margin: 0 auto;
  }
  .sec09 .sec-list li {
    width: 100%;
    max-width: 100%;
  }
  .sec09 .sec-list li + li {
    margin-top: 20px;
  }
}
/*-------------------------------------------*/
/*
/*　　tablet
/*
/*-------------------------------------------*/
body.is_tablet .mainvisual {
  height: auto;
  min-height: 0;
  width: 100%;
}
body.is_tablet .mainvisual .slick-track * {
  aspect-ratio: 97/47;
  height: auto;
}

/*-------------------------------------------*/
/*
/*　　print
/*
/*-------------------------------------------*/
