/* header */
.header-info {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1.5rem 5%;
  position: fixed;
}

.header-logo {
  flex-basis: 23%;
  flex-shrink: 0;
}

.header-logo img {
  display: block;
  width: 100%;
  object-fit: contain;
}

.header-info nav {
  display: flex;
  gap: 1.5rem;
}

.header-info nav a {
  font-size: 1.35rem;
  font-weight: bold;
}

.header-btn {
  display: none;
  flex-basis: 15%;
  margin-left: auto;
  position: relative;
  z-index: 1;
  aspect-ratio: 1/1;
  width: 100%;
}

.header-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50%;
  height: 5%;
  background-color: #fff;
  transition: .3s ease-out;
}

.header-btn.open span {
  background-color: transparent;
}

.header-btn span::before, .header-btn span::after {
  content: "";
  position: absolute;
  top: -370%;
  width: 100%;
  height: 100%;
  background-color: #fff;
  transition: .3s ease-out;
}

.header-btn span::after {
  top: auto;
  bottom: -370%;
}

.header-btn.open span::before {
  transform: rotate(45deg);
  top: 0;
}

.header-btn.open span::after {
  transform: rotate(-45deg);
  bottom: 0;
}

.cover {
  position: relative;
  height: 100vh;
}

.cover::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0,0,0,.3) radial-gradient(rgba(0,0,0,.3)  25%, transparent 0) center / 5px 5px;
}

.slick-slide {
	max-height: 100vh;
}

.slider .slick-list {
  padding: 0;
}

.slick-slide img {
  width: 100%;
  height: 100vh;
  object-position: 50% 50%;
  object-fit: cover;
  display: block;
}

/* .header-letter {
	position: absolute;
	z-index: 1;
	color: #fff;
	text-align: center;
	top: 2em;
	right: 2em;
}

.header-menu {
	font-size: 1.5em;
	font-style: italic;
	font-weight: bold;
}

.header-menu td {
	padding: 0.2em;
	transition: 0.5s;
}

.header-menu td:hover {
	cursor: pointer;
	color: #1357A4;
}

.header-menu td:hover a {
	color: #1357A4;
}

.header-menu .slash:hover {
	cursor: default;
	color: #fff;
} */

.page-title {
  width: 90%;
  margin: auto;
	text-align: center;
	color: #fff;
	position: absolute;
	z-index: 1;
 	top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}

.page-title h1 {
	font-size: 2rem;
	margin-bottom: 3rem;
	font-weight: bold;
}

.page-title h1.page-title-pc {
  display: block;
}

.page-title h1.page-title-sp {
  display: none;
}

header .page-title a {
	position: absolute;
  top: 110%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
	z-index: 1;
	color: #fff;
	transition: .5s;
}

header .page-title a span {
	width: 3em;
	height: 3em;
	position: absolute;
	top: -220%;
	left: -8%;
	border: 2px solid #fff;
	border-radius: 100%;
}

header .page-title a span::after {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	top: 30%;
	left: 20.85%;
	border-style: solid;
	border-width: 21.7px 12.5px 0 12.5px;
	border-color: #ffffff transparent transparent transparent;
}

.header-nav {
  display: none;
}

.header-nav-button {
	display: none;
}

.head-character-message {
  text-align: left;
  display: inline-block;
}

.head-character-message p {
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: .08rem;
  margin-bottom: 10px;
  display: inline-block;
}

.head-character-message p span {
  font-size: .5em;
  margin-left: .5rem;
}


/* bar */
.on-slider-graphics-text {
  position: relative;
  padding:  0 1em;
  display: inline-block;
}

.on-slider-graphics-text::before{
  content: "";
  background-color: #1357A4;
  position: absolute;
  transform: skewX(-35deg) translate(-2.5rem, -55%);
  width: 1.1rem;
  height: 40%;
  top: 50%;
  left: 0;
}

.on-slider-graphics-text::after{
  content: "";
  background-color: #1357A4;
  position: absolute;
  transform: skewX(-35deg) translate(-2.5rem, -55%);
  width: 1.1rem;
  height: 40%;
  top: 50%;
  right: -3em;
  left: auto;
}

@media screen and (min-width:992px) {
  .on-slider-graphics-text::before{
    height: 40%;
    top: 55%;
    left: -0.5em;
  }

  .on-slider-graphics-text::after{
    height: 40%;
    top: 55%;
    right: -3em;
  }
}


