html{
  scroll-behavior: smooth;
  overflow-x: hidden;
}
body {
  font-family: "Arial", "メイリオ";
}
IMG {
  width: 100%;
  margin: 1em auto;
}
.txt{
  font-size: 150%;
}
H1 {
  font-size: 600%;
  margin: 0.5em auto;
  font-weight: bold;
}
H2 {
  font-size: 350%;
  margin: 0.5em auto;
  font-weight: bold;
}
H3 {
  font-size: 200%;
  margin: 0.5em auto;
  font-weight: bold;
}
H2.bg-navy {
  background: #2e3f74;
  color: #fff;
  padding: 0.5em 1em;
}
H2.bg-blue {
  background: #0080cb;
  color: #fff;
  padding: 0.5em 1em;
}
.name {
  font-size: 250%;
  font-weight: bold;
}
.name-t {
  font-size: 150%;
  font-weight: bold;
}
.blue {
  color: #0080cb;
}
A.btn-more {
  display: inline-block;
  border: solid 4px #2e3f74;
  border-radius: 2em;
  padding: 1em 2em;
  font-weight: bold;
  color: #2e3f74;
  font-size: 150%;
  text-decoration: none;
  margin: 2em auto;
}
A.btn:hover {
  background: #586590;
}
footer {
  margin-top: 2em;
  background: #999999;
  color: #fff;
  text-align: center;
  padding: 2em;
}
.footer-illust{
  aspect-ratio: 100 / 60;
  background: url(img/fotter_illust.png) no-repeat top center;
	background-size:contain;
}
.swiper {
  width: 100%;
  height: auto;
  aspect-ratio: 1000 / 1005;
}
.swiper-slide {
  text-align: center;
  font-size: 18px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.swiper-button-next, .swiper-button-prev {
  color: #0080cb;
}
header {
  aspect-ratio: 100 / 155;
  background: url(img/header_bg2.png), url(img/header_bg.png);
  background-repeat: no-repeat, no-repeat;
  background-position: bottom, top;
  background-size: contain, contain;
}
header H1 {
  margin: 0;
  line-height: 1em;
}
header H1 IMG {
  margin: 30px auto 0 auto;
  padding: 10px;
}
.hamburger {
  position: absolute;
  top: 30px;
  right: 20px;
  width: 30px;
  cursor: pointer;
  z-index: 20;
}
.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #fff;
  margin: 6px 0;
  transition: 0.4s;
}
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(6px, 6px);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(6px, -7px);
}
.navigation {
  position: fixed;
  top: -500px;
  right: 0;
  width: 100%;
  height: auto;
  transition: top 0.3s ease;
  box-sizing: border-box;
  z-index: 10;
}
.navigation.open {
  top: 0;
}
.navigation {
  text-align: center;
  background: #586590;
}
.navigation UL {
  margin: 1em 0 0 0;
  padding: 0;
}
.navigation UL LI {
  list-style-type: none;
}
.navigation UL LI A {
  display: block;
  text-decoration: none;
  font-weight: bold;
  font-size: 200%;
  color: #fff;
}
.navigation UL LI A:hover {
  background: #fff;
  color: #2e3f74;
}
.navigation A.close {
  display: inline-block;
  color: #fff;
  text-decoration: none;
  margin: 1em;
}
.header-nav {
  background: #2e3f74;
  height: 90px;
  position: relative;
}
.header-nav .logo {
  display: block;
  position: relative;
  top: 20px;
  left: 10px;
  background: url(img/logo.png) no-repeat top left;
  background-size: contain;
  height: 50px;
}
.page_top_btn {
	position: fixed;
	bottom: 30px;
	right: 10px;
	font-weight: bold;
	padding: 0.7em;
	text-align: center;
	background: url(img/gotop.png) no-repeat center center;
	background-size:80%;
	width:100px;
	height:100px;
	transition: 0.3s;
	z-index:99999;
}