@charset "utf-8";

/*********************************/
/*              共通             */
/*********************************/
*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  font-family: 'Noto Serif JP', serif;
  position: relative;
}

a {
  color: inherit;
  display: block;
  text-decoration: none;
  width: 100%;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.5;
  letter-spacing: 0.1rem;
}

p {
  font-size: 4vw;
  line-height: 1.3;
  letter-spacing: 0.03rem;
}

ul {
  list-style-type: none;
}

img {
  vertical-align: bottom;
  height: auto;
  width: 100%;
}

article {
  position: relative;
  /* padding-top: 19vw; */
}

.large-inner {
  margin: 0 auto;
  width: 76%;
}

.middle-inner {
  margin: 0 auto;
  width: 72%;
}

.return-btn {
  width: 100%;
}

.accordion-switch {
  cursor: pointer;
  position: relative;
  z-index: 20;
}

.accordion-contents {
  display: none;
  width: 100%;
}

.accordion-contents-list{
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
}

.accordion-contents-item{
  background-image: url(../img/common/firstview-section-item_mid.png);
  background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
  position: relative;
  width: 100%;
  line-height: 1.5;
}

.accordion-contents-item:last-of-type {
  background-image: url(../img/common/firstview-section-item_bot.png);
}

.accordion-contents-item.bg-high {
    background-image: url(../img/common/firstview-section-item_mid-high.png);
}

.accordion-contents-item.bg-morehigh {
    background-image: url(../img/common/firstview-section-item_mid-morehigh.png);
}

.accordion-contents-item__link {
  display: block;
  font-size: 4vw;
  padding: 2vw 10vw 2.2vw 15vw;
  width: 100%;
}

.accordion-contents-item:last-of-type .accordion-contents-item__link  {
  padding: 2.2vw 10vw 2.9vw 15vw;
}

.pageTitle {
  /* background-color: rgba(22, 33, 33, 0.5); */
  background-image: url(../img/common/2nd_title_bg.png);
  background-repeat: no-repeat;
  background-size: 90%;
  background-position: top 0vw left 7vw;
  position: absolute;
  top: 0;
  height: 8%;
  width: 100%;
  z-index: 90;
}

.pageTitle__main-title {
  color: #fff;
  font-family: 'Noto Serif JP', sans-serif;
  font-size: 4.8vw;
  text-align: center;
  padding: 2% 0 3%;
  position: relative;
  z-index: 10;
}

.en-pageTitle {
  /* background-color: rgba(22, 33, 33, 0.5); */
  background-image: url(../img/common/2nd_title_bg.png);
  background-repeat: no-repeat;
  background-size: 90%;
  background-position: top 0vw left 7vw;
  position: absolute;
  top: 0;
  height: 8%;
  width: 100%;
  z-index: 90;
}

.en-pageTitle__main-title {
  color: #fff;
  font-family: 'Noto Serif', serif;
  text-align: center;
  padding: 2% 0 3%;
  position: relative;
  z-index: 10;
  font-size: 4.5vw;
  font-weight: 400;
  letter-spacing: 0;
}

/*********************************/
/*             Header            */
/*********************************/
.header {
  background-image: url(../img/common/header_bg.png);
  background-repeat: repeat;
  background-size: contain;
  position: relative;
  height: 18vw;
}

.header-logo {
  margin: 0 auto;
  padding: 4% 0;
  width: 41.3%;
}

.header-underlayer {
  background-image: url(../img/common/header_bg.png);
  background-repeat: repeat;
  background-size: contain;
  position: relative;
  height: 15vw;
}

.header-underlayer-logo {
  padding: 5% 0;
  margin: 0 auto;
  width: 21.3%;
}

.zdo_drawer_button {
  display: block;
  position: relative;
  padding: 0;
  background: none;
  border: none;
  text-align: center;
  letter-spacing: 0.1em;
  cursor: pointer;
  outline: none;
  height: 6vw;
  width: 9vw;
}

.zdo_drawer_button .zdo_drawer_bar {
  display: block;
  transition: all 0.2s;
  transform-origin: 0% 0%;
  transform: translateY(-50%);
  position: absolute;
  left: 0;
  height: 0.5vw;
  width: 100%;
}

.zdo_drawer_button .zdo_drawer_bar1 {
  top: 0;
}

.zdo_drawer_button .zdo_drawer_bar2 {
  top: 50%;
}

.zdo_drawer_button .zdo_drawer_bar3 {
  top: 100%;
}

.zdo_drawer_button.active .zdo_drawer_bar {
  width: 36.77px;
  left: 8px;
}

.zdo_drawer_button.active .zdo_drawer_bar1 {
  transform: rotate(0.7853981634rad) translateY(-50%);
  top: 0px;
}

.zdo_drawer_button.active .zdo_drawer_bar2 {
  opacity: 0;
}

.zdo_drawer_button.active .zdo_drawer_bar3 {
  transform: rotate(-0.7853981634rad) translateY(-50%);
  top: calc(100% - 0px);
}

.zdo_drawer_button.active .zdo_drawer_menu_text {
  display: none;
}

.zdo_drawer_button.active .zdo_drawer_close {
  display: block;
}

.zdo_drawer_text {
  width: 100%;
  position: absolute;
  bottom: -20px;
  left: 0;
  text-align: center;
  font-size: 10px;
}

.zdo_drawer_close {
  letter-spacing: 0.08em;
  display: none;
}

/*+++ Default Button Color +++*/
.zdo_drawer_button {
  color: #fff;
}

.zdo_drawer_button .zdo_drawer_bar {
  background-color: #fff;
}

/* === Hambuerger Button's Style End === */
.zdo_drawer_menu .zdo_drawer_button {
  /*+++ Hamburger Button Position +++*/
  position: absolute;
  top: 30%;
  left: 8%;
  z-index: 1001;
}

.zdo_drawer_menu .zdo_drawer_bg {
  background-color: rgba(51, 51, 51, 0.5);
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 999;
}

.zdo_drawer_menu .zdo_drawer_nav_wrapper {
  transition: all 0.2s;
  transform: translate(-100%);
  position: relative;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  z-index: 5000;
}

.zdo_drawer_menu .zdo_drawer_nav_wrapper.open {
  transform: translate(0);
}

.zdo_drawer_menu.left .zdo_drawer_button {
  right: auto;
  left: 32px;
}

.zdo_drawer_menu.left .zdo_drawer_nav_wrapper {
  transform: translate(-312px);
  right: auto;
  left: 0;
}

.zdo_drawer_menu.left .zdo_drawer_nav_wrapper.open {
  transform: translate(0);
}

/*+++ Default Navigation CSS +++*/
.zdo_drawer_menu .zdo_drawer_nav {
  background-color: rgba(1,24,76,0.8);
  /* padding: 112px 24px; */
}

.zdo_drawer_menu .zdo_drawer_nav_item {
  border-bottom: 1px solid #fff;
  font-size: 16px;
  width: 100%;
}

.zdo_drawer_nav_item-link {
  color: #fff;
  font-size: 5vw;
  font-weight: 500;
  text-decoration: none;
  text-align: center;
  padding: 5% 0;
}

/*********************************/
/*             Footer            */
/*********************************/


/*********************************/
/*             Slick            */
/*********************************/
.slider {
  display: none;
}

.slider.slick-initialized {
  display: block; /*slick-initializedが付与されたら表示*/
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  height: 100%;
}

.slick-dots {
  bottom: 2%;
}

.remodal-thum .slick-dots {
  position: absolute;
  left: 0;
  bottom: -9%;
  right: 0;
  margin: auto;
  width: 80%;
}

.slick-dots li button:before {
  background-image: url(../img/common/slider-gray-dots.png);
  background-size: cover;
  content: '';
  color: none;
  top: 25%;
  left: 25%;
  height: 2vw;
  width: 2vw;
}

.slick-dots li.slick-active button:before {
  background-image: url(../img/common/slider-red-dots.png);
  background-size: cover;
  height: 2vw;
  width: 2vw;
}

.slick-dotted.slick-slider {
  margin-bottom: 6vw;
}

/* Safari */
_::-webkit-full-page-media, _:future, :root .slick-dotted.slick-slider {
  margin-bottom: 6vw;
  height: 40vh;
}