@charset "UTF-8";
/*pc_base*/
body {
  min-width: 1250px;
  position: relative;
}
body:not(.home) #wrapper {
  padding-top: 110px;
}

#ga {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 9999;
  color: #f00;
}

.loader {
  width: 200px;
}

/* =============================================================
	custom pc(共通CSSにあって値を変更したいもの、独自に設定したいものを記述)
============================================================= */
.floatL {
  float: left;
  margin: 0 2em 2em 0;
}
.floatR {
  float: right;
  margin: 0 0 2em 2em;
}

.rtxtC {
  text-align: center;
}

.rbr-pc {
  display: none;
}

/* section */
.sec {
  margin-bottom: 100px;
  padding: 0;
  position: relative;
}
.sec-inner {
  width: 1080px;
  margin-right: auto;
  margin-left: auto;
}

/* title */
.title-01 {
  text-align: center;
}

/* button */
.read-more a {
  display: block;
}

/* breadCrumb */
.breadcrumb-wrap {
  font-size: 1.2rem;
  width: 1080px;
  margin-right: auto;
  margin-left: auto;
  padding: 13px 0 0;
}
.breadcrumb-wrap a {
  font-size: 1.2rem;
}
.breadcrumb-wrap a:hover {
  color: #c90048;
}

/* =============================================================
	wrap,box,section
============================================================= */
.sec-01-inner {
  width: 1080px;
  margin: auto;
}

/* =============================================================
	header
============================================================= */
@keyframes bgAnime {
  0% {
    opacity: 0;
  }
  5% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.header {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  transition: all .2s ease-out;
  width: 100%;
  min-width: 1250px;
  padding: 20px 30px;
  position: absolute;
  top: 0;
  z-index: 10;
}
.header-inner {
  width: 1150px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  transition: all .4s ease-out;
}
.header-logo {
  transition: all .4s ease-out;
  width: 240px;
}
.header-logo-white {
  display: none;
}
.header-gnav {
  transition: all .4s ease-out;
  width: 675px;
}
.header-gnav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.header-gnav a {
  font-size: 1.5rem;
  color: #595959;
  position: relative;
}
.header-gnav a::after {
  background: #01030c;
  content: "";
  display: block;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .4s ease-out;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: -4px;
}
.header-gnav a:hover::after, .header-gnav a.stay::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
.header-sns {
  transition: all .4s ease-out;
  width: 60px;
}
.header-sns-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.header-sns li {
  width: 25px;
}
.header-sns .icon-twitter, .header-sns .icon-insta {
  fill: #01030c;
  vertical-align: middle;
}
.header-btn-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.header-btn-list li {
  width: calc(50% - 5px);
}
.header-btn-list li:nth-of-type(1) {
  margin-right: 10px;
}
.header-btn-list a, .header-btn-list span {
  color: #fff;
  font-weight: 400;
  display: block;
  text-align: center;
  white-space: nowrap;
  min-width: 150px;
  transition: all .4s ease-out;
}
.header-btn-list a {
  background: #01030c;
  border-color: #01030c;
  font-size: 1.5rem;
  padding: 10px;
}
.header-btn-list a::before {
  background: url("images/calendar_icon.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 .5em -1px 0;
}
.header-btn-list a:hover {
  background: #050f3c;
}
.header-btn-list span {
  font-size: 1.7rem;
  background: #c90048;
  border-color: #c90048;
  padding: 8.5px 10px;
}
.header-btn-list span::before {
  background: url("images/tel_icon.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 .3em -1px 0;
}
.header.fixed {
  background: #fff;
  top: -100px;
}
.header.fixed a {
  color: #595959 !important;
}
.header.fixed .icon-twitter, .header.fixed .icon-insta {
  fill: #01030c !important;
}
.header.fixed .icon-twitter:hover, .header.fixed .icon-insta:hover {
  fill: #050f3c !important;
}
.header.fixed .header-gnav a {
  font-weight: 700;
}
.header.fixed .header-btn-list a {
  background: #01030c;
  border-color: #01030c;
  color: #fff !important;
}
.header.fixed .header-btn-list a:hover {
  background: #050f3c;
}
.header.fixed .header-btn-list span {
  background: #c90048;
  border-color: #c90048;
}
.header.fixed .header-gnav a::after {
  background: #01030c;
}
.header.standby {
  position: fixed;
  top: -100px;
}
.header.standby .header-logo-white {
  display: none;
}
.header.standby .header-logo-color {
  display: block;
}
.header.appear {
  box-shadow: 0 1px 5px 0 #a0a0a0;
  top: 0;
}

@media (max-width: 1500px) {
  .header {
    padding: 20px;
  }
  .header-logo {
    width: 200px;
  }
  .header-inner {
    width: 1000px;
  }
  .header-gnav {
    width: 600px;
  }
  .header-sns {
    width: 55px;
  }
}
/* =============================================================
	footer
============================================================= */
.footer-wrap {
  background: #02030a;
  padding-top: 50px;
}
.footer-logo {
  text-align: center;
  margin-bottom: 25px;
}
.footer-logo img {
  width: 150px;
}
.footer-address {
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 2px;
  text-align: center;
  margin-bottom: 25px;
}
.footer-address a {
  color: #fff;
  text-decoration: underline;
}
.footer-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 35px;
}
.footer-btn-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 630px;
  margin: 0 auto;
}
.footer-btn-list a, .footer-btn-list span {
  border: 1px solid #fff;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 400;
  display: block;
  text-align: center;
  width: 300px;
  padding: 11px;
}
.footer-btn-list a::before {
  background: url("images/calendar_icon.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 .5em -1px 0;
}
.footer-btn-list a:hover {
  background: rgba(255, 255, 255, 0.3);
}
.footer-btn-list span::before {
  background: url("images/tel_icon.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 .5em -1px 0;
}
.footer-nav {
  border-top: 1px solid #2a292f;
  padding: 30px 0;
}
.footer-nav-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 1080px;
  margin-right: auto;
  margin-left: auto;
}
.footer-nav-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 670px;
}
.footer-nav-list a {
  font-size: 1.5rem;
  font-weight: 400;
  color: #fff;
  position: relative;
}
.footer-nav-list a::after {
  background: #fff;
  content: "";
  display: block;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .4s ease-out;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
}
.footer-nav-list a:hover::after, .footer-nav-list a.stay::after {
  transform-origin: left top;
  transform: scale(1, 1);
}
.footer-sns {
  width: 50px;
}
.footer-sns-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.footer-sns li {
  width: 20px;
}

/* copyright
--------------------------------- */
.copyright {
  background: #c90048;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  display: block;
  line-height: 40px;
  text-align: center;
}

/* pagetop
--------------------------------- */
#pagetop {
  background: url("images/scroll_top.svg") no-repeat;
  display: block;
  opacity: 0;
  overflow: hidden;
  visibility: hidden;
  text-align: center;
  text-decoration: none;
  width: 50px;
  height: 50px;
  padding-top: 50px;
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pagetop:hover {
  text-decoration: none;
}
#pagetop.on {
  opacity: 1;
  visibility: visible;
}

@keyframes pagetop_anime {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0;
  }
  40% {
    opacity: .5;
  }
  50% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*pc_home*/
/* =============================================================
	home
============================================================= */
.pane {
  height: 230px;
  overflow: hidden;
}

.goto-bnr {
  text-align: center;
  padding-top: 60px;
}
.goto-bnr a {
  display: inline-block;
}

/* home add
--------------------------------- */
.main-visual {
  width: 100%;
  height: 100vh;
  position: relative;
}
.main-visual-bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.main-visual-bg-img {
  animation: bgAnime 40s infinite;
  opacity: 0;
  width: 100%;
  height: 100vh;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.main-visual-bg-img-01 {
  background: url("images/main_visual_01.png") no-repeat 0 0/cover;
}
.main-visual-bg-img-02 {
  background: url("images/main_visual_02.png") no-repeat 0 0/cover;
  animation-delay: 8s;
}
.main-visual-bg-img-03 {
  background: url("images/main_visual_03.png") no-repeat 0 0/cover;
  animation-delay: 16s;
}
.main-visual-bg-img-04 {
  background: url("images/main_visual_04.png") no-repeat 0 0/cover;
  animation-delay: 24s;
}
.main-visual-bg-img-05 {
  background: url("images/main_visual_05.png") no-repeat 0 0/cover;
  animation-delay: 32s;
}
.main-visual-text {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.main-visual-text-inner {
  width: 550px;
}
.main-visual-scroll {
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  width: 50px;
  height: 73px;
  margin: auto;
  position: absolute;
  right: 0;
  bottom: 90px;
  left: 0;
}
.main-visual-scroll svg {
  fill: #fff;
}
.main-visual-news {
  background: rgba(0, 0, 0, 0.75);
  color: #fff;
  font-size: 1.3rem;
  width: 100%;
  padding: 15px 0;
  position: absolute;
  bottom: 0;
  z-index: 10;
}
.main-visual-news-inner {
  width: 1080px;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.main-visual-news-list-inner {
  display: flex;
  flex-wrap: wrap;
}
.main-visual-news-list-date {
  margin-right: 1.5em;
}
.main-visual-news-list-title a {
  color: #fff;
  display: block;
}
.main-visual-news-list-title a:hover {
  text-decoration: underline;
}

.home .header-logo-white {
  display: block;
}
.home .header-logo-color {
  display: none;
}
.home .header-gnav a {
  color: #fff;
}
.home .header-gnav a::after {
  background: #fff;
}
.home .header-sns .icon-twitter, .home .header-sns .icon-insta {
  fill: #fff;
  vertical-align: middle;
}
.home .header-btn-list a, .home .header-btn-list span {
  background: none;
  border: 1px solid #fff;
  color: #fff;
}
.home .header-btn-list a:hover {
  background: rgba(255, 255, 255, 0.3);
}
.home-sec {
  padding: 60px 0;
}
.home-sec-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1500px;
}
.home-sec-inner-02 {
  width: 780px;
  margin-right: auto;
  margin-left: auto;
}
.home-sec:nth-of-type(odd) .home-sec-inner {
  margin-left: auto;
  padding-left: 20px;
}
.home-sec:nth-of-type(even) .home-sec-inner {
  flex-flow: row-reverse;
  margin-right: auto;
}
@media (max-width: 1500px) {
  .home-sec:nth-of-type(odd) .home-sec-inner {
    margin-left: auto;
  }
  .home-sec:nth-of-type(even) .home-sec-inner {
    flex-flow: row-reverse;
    margin-right: auto;
  }
}
.home-sec .vertical-writie {
  letter-spacing: 3px;
  margin: auto;
}
.home-sec-title-01 {
  margin: 0 auto 50px;
}
.home-sec-title-02 {
  font-size: 2.4rem;
  letter-spacing: 5px;
  margin-left: 30px;
}
.home-sec-title-03 {
  text-align: center;
  margin-bottom: 50px;
}
.home-sec-title-03 img {
  margin-bottom: 15px;
}
.home-sec-title-03-span {
  font-size: 1.5rem;
  letter-spacing: 3px;
}
.home-sec-01 .home-sec-title-01 {
  width: 89px;
}
.home-sec-02 .home-sec-title-01 {
  width: 80px;
}
.home-sec-03 .home-sec-title-01 {
  width: 87px;
}
.home-sec-04 .home-sec-title-01 {
  width: 80px;
}
.home-sec-05 .home-sec-title-01 {
  width: 83px;
}
.home-sec-text {
  width: 390px;
}
.home-sec-text-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  transition: all .4s ease-out;
}
@media (max-width: 1500px) {
  .home-sec-text-wrapper {
    margin-right: 6%;
    margin-left: 6%;
  }
}
.home-sec-text-01 {
  font-size: 1.5rem;
  margin-bottom: 0 !important;
  margin-left: 20px;
}
.home-sec-text-02 {
  font-size: 1.8rem;
  letter-spacing: 3px !important;
  margin-bottom: 0 !important;
}
.home-sec .read-more {
  width: 100%;
  margin-top: 55px;
}
.home-sec-img {
  width: calc(88% - 390px);
  max-width: 930px;
}
.home-sec-img img {
  display: inline-block;
}
.home-sec-img img:nth-of-type(1) {
  margin-bottom: 10px;
}
.home-sec-img img:nth-of-type(2) {
  margin-right: 4px;
}
.home-sec-img img:nth-of-type(2), .home-sec-img img:nth-of-type(3) {
  width: calc(50% - 5px);
}
.home-sec-06, .home-sec-07, .home-sec-08, .home-sec.news-list, .home-sec-08, .home-sec-09, .home-sec-10 {
  padding: 120px 0;
}
.home-sec-06, .home-sec.news-list, .home-sec-10 {
  background: #dcdcdc;
}
.home-sec-06-inner:nth-of-type(1) {
  margin-bottom: 50px;
}
.home-sec-06-title img {
  width: 215px;
}
.home-sec-06-title-02 {
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 20px;
}
.home-sec-06-table-01 th, .home-sec-06-table-01 td {
  width: 33%;
}
.home-sec-06-table-02 th {
  width: 23%;
}
.home-sec-06-table-02 th:first-child {
  width: 30%;
}
.home-sec-06-text {
  font-size: 1.5rem;
  margin-bottom: 0 !important;
}
.home-sec-07-title img {
  width: 327px;
}
.home-sec-07-text img {
  margin-top: -5px;
}
.home-sec-07-text a {
  text-decoration: underline;
}
.home-sec-07-text a:hover {
  color: #c90048;
  text-decoration: none;
}
.home-sec-07-tel {
  width: 390px;
  margin: 55px auto 0;
}
.home-sec-07-tel-inner {
  border: 1px solid #898989;
  font-size: 1.3rem;
  text-align: center;
  padding: 10px;
}
.home-sec-07-tel-no {
  font-size: 1.8rem;
  line-height: 1.4;
}
.home-sec-07-tel-no::before {
  background: url("images/tel_icon_bk.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 .3em -1px 0;
}
.home-sec-08-title img {
  width: 170px;
}
.home-sec-08-inner {
  display: flex;
  flex-wrap: wrap;
}
.home-sec-08 .iframe-wrapper {
  width: 540px;
  padding-top: 380px;
}
.home-sec-08-address {
  width: 390px;
  margin-left: 60px;
}
.home-sec-08-address p {
  font-size: 1.8rem;
  line-height: 2.2;
  letter-spacing: 1px;
  margin-bottom: 30px;
}
.home-sec-08-address img {
  display: block;
  margin-bottom: 40px;
}
.home-sec-08-address .btn-1 {
  display: block;
  width: 100%;
}
.home-sec-09-title img {
  width: 200px;
}
.home-sec-09-link {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -10px;
}
.home-sec-09-link li {
  margin: 10px 0;
}
.home-sec-10-title img {
  width: 168px;
}
.home-sec-10-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  justify-content: space-between;
}
.home-sec-10 .iframe-wrapper {
  width: 520px;
  margin: 0 auto 10px;
  padding-top: 292px;
}

.confirmation-calendar {
  transform: translate(1px, 0px);
}
.confirmation-calendar-table {
  width: 99.9%;
}
.confirmation-calendar-table caption {
  font-size: 2.2rem;
  margin-bottom: 30px;
}
.confirmation-calendar-table th, .confirmation-calendar-table td {
  background-clip: padding-box;
  text-align: center;
  vertical-align: middle;
  position: relative;
}
.confirmation-calendar-table th {
  border: none;
  height: 2em;
}
.confirmation-calendar-table td {
  border: 1px solid #484848;
  width: 100px;
  height: 100px;
}
.confirmation-calendar-table .empty-icon {
  color: #c90048;
}
.confirmation-calendar-table .empty-icon-batsu {
  color: #01030c;
}
.confirmation-calendar-table .empty-icon-full {
  color: #01030c;
  font-size: 1.8rem;
}
.confirmation-calendar-table-day {
  position: absolute;
  top: 5px;
  left: 5px;
}
.confirmation-calendar-table .off-span {
  height: 100%;
  width: 100%;
  border-top: solid gray 1px;
  transform: matrix(1, -0.9, 0, 1, 0, 50);
  display: block;
}
.confirmation-calendar-table .sun, .sun .confirmation-calendar-table-day, .holiday .confirmation-calendar-table-day {
  color: #c90048;
}
.confirmation-calendar-table .past {
  background-color: #dcdcdc;
}
.confirmation-calendar-table .today {
  background-color: #fcf2f6;
}
.confirmation-calendar-wrapper {
  margin-bottom: 20px;
}
.confirmation-calendar-wrapper .slick-prev, .confirmation-calendar-wrapper .slick-next {
  border: none;
  font-family: "Yu Mincho", "YuMincho", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "メイリオ", Meiryo, Verdana, Arial, "MS P Gothic", "MS Pゴシック", sans-serif;
  font-size: 1.5rem;
  text-indent: 0;
  transform: inherit;
  width: auto;
  top: 7px;
  bottom: auto;
}
.confirmation-calendar-wrapper .slick-prev img, .confirmation-calendar-wrapper .slick-next img {
  width: 8px;
  margin-top: -2px;
}
.confirmation-calendar-wrapper .slick-prev {
  left: 250px;
}
.confirmation-calendar-wrapper .slick-prev img {
  margin-right: 5px;
}
.confirmation-calendar-wrapper .slick-next {
  right: 250px;
}
.confirmation-calendar-wrapper .slick-next img {
  transform: rotate(180deg);
  margin-left: 5px;
}

.gecko .slick-list {
  padding-left: 1px;
}

/*pc_page*/
/* =============================================================
	page
============================================================= */
.pagetitle-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 550px;
  margin-top: 70px;
}
.pagetitle-text {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 10px;
  letter-spacing: 5px;
}
.pagetitle-text-en {
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  letter-spacing: 2px;
}

.page .slick-prev, .page .slick-next {
  background: url("images/icon_arrow_01.svg") no-repeat;
  border: none;
  cursor: pointer;
  overflow: hidden;
  text-indent: -9999px;
  margin: auto;
  width: 45px;
  height: 45px;
  position: absolute;
  top: 0;
  bottom: 50px;
  z-index: 2;
}
.page .slick-prev {
  left: -65px;
  transform: rotate(0);
}
.page .slick-next {
  right: -65px;
  transform: rotate(180deg);
}
.page .slick-dots {
  text-align: center;
  margin: auto;
  margin: 30px 0;
}
.page .slick-dots li {
  display: inline-block;
  margin: 0 3px;
}
.page .slick-dots button {
  background-color: #78797d;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  display: block;
  height: 3px;
  line-height: 1;
  padding: 0;
  width: 50px;
  vertical-align: middle;
  text-indent: -9999px;
}
.page .slick-dots .slick-active button {
  background-color: #c90048;
}
.page-scroll {
  text-align: center;
  padding: 50px 0 30px;
}
.page-scroll-text {
  color: #898989;
  font-size: 1.3rem;
  margin-bottom: 5px;
}
.page-scroll-svg {
  width: 50px;
  height: 50px;
  margin: auto;
}
.page-scroll-svg svg {
  fill: #898989;
}
.page-sec {
  padding: 120px 0;
}
.page-sec:nth-of-type(1) {
  padding: 90px 0 120px;
}
.page-sec-inner-01 {
  width: 1080px;
  margin-right: auto;
  margin-left: auto;
}
.page-sec-inner-02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  transition: all .2s ease-out;
  width: 1460px;
  margin-right: auto;
  margin-left: auto;
}
@media (max-width: 1500px) {
  .page-sec-inner-02 {
    width: 1250px;
  }
}
.page-sec-inner-03 {
  width: 780px;
  margin-right: auto;
  margin-left: auto;
}
.page-sec-inner-04 {
  width: 1140px;
  margin-right: auto;
  margin-left: auto;
}
.page-sec:nth-of-type(odd) .page-sec-inner-02 {
  padding-left: 100px;
}
.page-sec:nth-of-type(odd) .page-sec-inner-02 .slick-dots {
  margin: 30px 0 50px;
  text-align: left;
}
.page-sec:nth-of-type(even) .page-sec-inner-02 {
  flex-direction: row-reverse;
  padding-right: 100px;
}
.page-sec:nth-of-type(even) .page-sec-inner-02 .page-rayout-01-main-text {
  float: right;
}
.page-sec:nth-of-type(even) .page-sec-inner-02 .slick-dots {
  margin: 30px 0 50px;
  text-align: right;
}
.page-rayout-01 {
  padding: 90px 0 !important;
}
.page-rayout-01-title {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  justify-content: center;
  transition: all .2s ease-out;
  width: 470px;
}
.page-rayout-01-main {
  transition: all .2s ease-out;
  width: 800px;
}
.page-rayout-01-main-text {
  width: 610px;
  margin: 0 !important;
}
@media (max-width: 1500px) {
  .page-rayout-01-title {
    width: 370px;
  }
  .page-rayout-01-main {
    width: 700px;
  }
}
.page-rayout-01-sub {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 90px;
}
.page-rayout-01-sub-inner {
  width: 550px;
}
.page-rayout-01-sub .slick-dots {
  text-align: left;
}
.page-rayout-01 .slick-prev, .page-rayout-01 .slick-next {
  background: url("images/icon_arrow_02.svg") no-repeat;
}
.page-rayout-01 .slick-prev {
  left: 20px;
}
.page-rayout-01 .slick-next {
  right: 20px;
}
.page-thought .pagetitle-wrap {
  background: url("images/thought_title_bg.png") no-repeat 0 0/cover;
}
.page-thought .title-01 {
  margin-bottom: 50px;
}
.page-thought .sec-01-text {
  line-height: 3;
  text-align: center;
}
.page-thought .sec-01 .title-01-svg {
  width: 250px;
}
.page-thought .sec-02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-thought .sec-02 img {
  width: 25%;
}
.page-thought .sec-03 {
  background: #efefef;
}
.page-thought .sec-04 .title-01-svg {
  width: 195px;
}
.page-thought .sec-04-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-thought .sec-04-box-inner {
  width: 550px;
}
.page-thought .sec-04-box-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 3px;
  margin-bottom: 25px;
}
.page-thought .sec-04-box-text-01 {
  margin-bottom: 20px;
}
.page-thought .sec-04-box-text-02 {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: right;
}
.page-onsen .pagetitle-wrap {
  background: url("images/onsen_title_bg.png") no-repeat 0 0/cover;
}
.page-onsen .title-01 {
  margin-bottom: 50px;
}
.page-onsen .title-01 img {
  width: 75px;
}
.page-onsen .title-02 {
  text-align: center;
  margin-bottom: 50px;
}
.page-onsen .title-02 img {
  width: 190px;
}
.page-onsen .title-03 {
  text-align: center;
  margin-bottom: 50px;
}
.page-onsen .title-03 img {
  width: 170px;
}
.page-onsen .sec-01 {
  background: #efefef;
}
.page-onsen .sec-01-box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.page-onsen .sec-01-box-item {
  width: 335px;
}
.page-onsen .sec-01-box-item p {
  text-align: center;
  margin: 20px 0 0 0;
}
.page-onsen .sec-02-table {
  margin-bottom: 15px;
}
.page-onsen .sec-02-table th, .page-onsen .sec-02-table td {
  border: 1px solid #898989;
  font-size: 1.8rem;
  text-align: center;
  width: calc(100% / 3);
  padding: 15px;
}
.page-lodging .pagetitle-wrap {
  background: url("images/lodging_title_bg.png") no-repeat 0 0/cover;
}
.page-lodging .title-01 {
  margin-bottom: 50px;
}
.page-lodging .title-01 img {
  width: 75px;
}
.page-lodging .title-02 {
  text-align: center;
  margin-bottom: 50px;
}
.page-lodging .title-02 img {
  width: 370px;
}
.page-lodging .sec-03 {
  background: #efefef;
}
.page-lodging .sec-03-table {
  background: #fff;
  margin-bottom: 15px;
}
.page-lodging .sec-03-table th, .page-lodging .sec-03-table td {
  border: 1px solid #898989;
  font-size: 1.8rem;
  text-align: center;
  white-space: nowrap;
  padding: 15px;
}
.page-lodging .sec-03-table th {
  white-space: nowrap;
}
.page-lodging .sec-03-table td {
  width: 22%;
}
.page-lodging .sec-03-table span {
  font-size: 1.6rem;
}
.page-lodging .sec-04 .title-02 img {
  width: 190px;
}
.page-lodging .sec-04 p {
  border: 1px solid #898989;
  text-align: center;
  padding: 30px;
}
.page-food .pagetitle-wrap.food {
  background: url("images/food_title_bg.png") no-repeat 0 0/cover;
}
.page-food .pagetitle-wrap.feast {
  background: url("images/feast_title_bg.png") no-repeat 0 0/cover;
}
.page-food .title-01 {
  margin-bottom: 50px;
}
.page-food .page-sec:nth-of-type(1) .title-01 img {
  width: 68px;
}
.page-food .page-sec:nth-of-type(2) .title-01 img {
  width: 72px;
}
.page-food .page-sec:nth-of-type(3) .title-01 img {
  width: 75px;
}
.page-food .page-feast .title-01 img {
  width: 77px !important;
}
.page-food .greeting .title-01-svg {
  width: 195px;
}
.page-food .greeting-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-food .greeting-box-inner {
  width: 500px;
}
.page-food .greeting-box-title {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 3px;
  margin-bottom: 25px;
}
.page-food .greeting-box-text-01 {
  margin-bottom: 20px;
}
.page-food .greeting-box-text-02 {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: right;
}
.page-access .iframe-wrapper {
  padding-top: 45%;
  margin-bottom: 50px;
}
.page-access-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-access-info dl {
  position: relative;
}
.page-access-info dl:nth-of-type(-n+2)::after {
  background: #898989;
  content: "";
  display: block;
  width: 1px;
  height: 45px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
}
.page-access-info-address::after {
  right: -22%;
}
.page-access-info-time::after {
  right: -28%;
}
.page-access-info dt {
  font-size: 18px;
}
.page-access .sec-01 {
  padding: 60px 0 120px;
}
.page-access .sec-02 {
  background: #efefef;
}
.page-access .sec-02 .home-sec-title-03 img {
  width: 272px;
}
.page-access .sec-02 .home-sec-title-04 {
  text-align: center;
  margin-bottom: 50px;
}
.page-access .sec-02 .home-sec-title-04 img {
  width: 421px;
  margin-bottom: 15px;
}
.page-access .sec-03 .home-sec-title-03 img {
  width: 430px;
}
.page-access-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
}
.page-access-dl {
  font-feature-settings: "palt";
  width: 250px;
}
.page-access-dl dt {
  background: #fff;
  border: 1px solid #898989;
  font-size: 16px;
  text-align: center;
  margin-bottom: 30px;
  padding: 20px;
}
.page-access-dl dd {
  padding-left: 35px;
  position: relative;
}
.page-access-dl dd::before {
  background: #898989;
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 10px);
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 12px;
}
.page-access-list-route {
  line-height: 25px;
  margin-bottom: 25px;
  position: relative;
}
.page-access-list-route::before {
  background: #898989;
  border-radius: 50%;
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -35px;
}
.page-access-list-time {
  font-size: 1.3rem;
  line-height: 25px;
  margin-bottom: 25px;
}
.page-access-list-goal {
  color: #c90048;
  position: relative;
}
.page-access-list-goal::before {
  background: #c90048;
  border-radius: 50%;
  content: "";
  display: block;
  width: 25px;
  height: 25px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -35px;
}
.page-access-bus {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.page-access-bus-text {
  line-height: 1.8 !important;
  width: 545px;
  margin: 0 !important;
}
.page-access-bus-inner {
  background: url("images/access_bus_img.png") no-repeat right center;
  display: flex;
  align-items: center;
  width: 500px;
}
.page-access-bus-tel {
  background: #fff;
  border: 1px solid #898989;
  text-align: center;
  width: 340px;
  padding: 7px 15px 2px;
}
.page-access-bus-tel-btn {
  font-size: 1.8rem;
}
.page-access-bus-tel-btn::before {
  background: url("images/tel_icon_bk.svg") no-repeat;
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 .5em -1px 0;
}

/* =============================================================
	404
============================================================= */
.page404 {
  text-align: center;
  line-height: 1.6;
  padding: 60px 0;
}
.page404-title {
  font-size: 30px;
  line-height: 1.4;
  margin: 0 0 30px;
}

/*pc_post*/
/* =============================================================
	post
============================================================= */
.news-list-title img {
  width: 127px;
}
.news-list-inner {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.news-list-box {
  width: 335px;
  margin: 0 calc( ( 1080px - 1005px ) / 2 ) 20px 0;
}
.news-list-box:nth-of-type(3n) {
  margin-right: 0;
}
.news-list-box-img {
  margin-bottom: 15px;
}
.news-list-box-date {
  font-size: 1.3rem;
  margin-bottom: 10px;
  transition: all .2s ease-out;
}
.news-list-box-title {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 15px;
  transition: all .2s ease-out;
}
.news-list-box-excerpt {
  font-size: 1.3rem;
  transition: all .2s ease-out;
}
.news-list-box:hover .news-list-box-date, .news-list-box:hover .news-list-box-excerpt, .news-list-box:hover .news-list-box-title {
  opacity: 0.6;
}
.news-list-to {
  width: 390px;
  margin: auto;
}
.news-list-to a {
  display: block;
}

.category .news-list-title.news img {
  width: 160px;
}
.category .news-list-title.blog img {
  width: 127px;
}

.single .page-sec {
  padding: 60px 0;
}
.single-post-title {
  font-size: 2rem;
  margin-bottom: 40px;
}
.single-post-contents img {
  display: inline-block;
  margin-bottom: 1.5em;
}

.link-archives {
  width: 390px;
  margin-right: auto;
  margin-left: auto;
}
.link-archives .btn-1 {
  display: block;
}

/* prev next
--------------------------------- */
.prev-next {
  margin-top: 100px;
  margin-bottom: 100px;
}

.pn-prev .pn-label {
  left: 10px;
}
.pn-next .pn-label {
  right: 10px;
}
.pn-prev:hover, .pn-next:hover {
  text-decoration: underline;
}

.single a.pn-prev::before, .single a.pn-next::before {
  background: #ee807f;
  content: "";
  height: 75%;
  width: 1px;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
}
.single a.pn-prev::before {
  left: 62px;
}
.single a.pn-next::before {
  right: 62px;
}

/* sns
--------------------------------- */
.share li {
  width: 20%;
}

/*pc_effect*/
/* =============================================================
	effect
============================================================= */
a {
  transition: all .2s ease-out;
}
a img {
  transition: opacity .2s ease-out;
}
a:hover img {
  opacity: .6;
}

.scale {
  overflow: hidden;
}
.scale img {
  transition: transform .4s ease-out;
  opacity: 1 !important;
}
.scale:hover img {
  transform: scale(1.1);
}

/* button */
/* mainnav */
