@charset "utf-8";
* {
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Helvetica Neue", Helvetica, Arial, sans-serif;
	letter-spacing : 0.2em;
}

h1 {
	margin: 0; padding: 0;
	font-size: 20px;
}
a {	
	text-decoration: none;
	color: #fff;
}
ul {
	list-style: none;
	margin: 0;
	/*display: flex;*/
}
li {
	margin: 0;
	/*font-size: 14px;*/
}
.md-flex img {
    display: initial;
}

/* PC ヘッダー */
#header {
    display: none;
	}

/* スマホヘッダーメニュー */
#hmenu_sp {
	background-color: #1E6965;
	position: fixed;
	color: #fff;
	width: 100%;
    z-index: 100;
	top: 0;
}
#hmenu_sp h1 {
    margin: 10px 10px 10px 15px;
    padding: 0;
    font-size: 0;
}
#hmenu_sp h1 img {
    width: 60px;
}

/* メニューのスタイル */
.spmenu {
  position: fixed;
  top: 0;
  right: -100%; /* 初期状態では画面の外に隠れている */
  width: 300px;
  height: 100%;
  background-color: #ffffffeb;
  color: #000;
  transition: right 0.3s ease; /* スライドインのアニメーション */
  padding: 20px;
  box-sizing: border-box;
  z-index: 10;
}

/* メニューが開いているとき */
.spmenu.open {
  right: 0;
}

/* ボタンのスタイル */
.hamburger {
	position: fixed;
	top: 10px;
	right: 20px;
	width: 30px;
	cursor: pointer;
	z-index: 20;
}
.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #fff;
  margin: 5px 0;
  transition: 0.4s;
}

/* バツ印に変化するスタイル */
.hamburger.active span:nth-child(1) {
	transform: rotate(45deg) translate(5px, 5px);
	background-color: #1E6965;
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
	transform: rotate(-45deg) translate(6px, -6px);
	background-color: #1E6965;
}

/* メニューリストのスタイル */
.spmenu ul:first-child {
	list-style-type: none;
	padding: 0;
	margin-top: 50px;
}
.spmenu ul {
	list-style-type: none;
	padding: 0;
	margin-top: 30px;
}
.spmenu li {
  margin: 0 0 10px;
}
.spmenu li a {
  color: #000;
  text-decoration: none;
  display: block;
}
.lsps {
	margin-left: 15px !important;
}

/* PC */
@media screen and (min-width: 768px) {
	
#header {
	display: inherit;
	width: 100%;
	height: 84px;
	background-color: #1E6965;
	padding: 0;
	color: white;
	position: fixed;
	z-index: 1000;
	top:0;
	}
#header nav {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
	
}
.main-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex; /* Makes the main menu items horizontal */
    justify-content: space-around;
	align-items: center;
}
.main-menu > li {
    position: relative; /* Needed for positioning the submenu */
}
.main-menu a {
    display: block;
    padding: 10px 15px;
    color: white;
    text-decoration: none;
    white-space: nowrap; /* Prevents text from wrapping */
}
.main-menu a:hover {
    background-color: #1E6965;
}
.main-menu li:nth-of-type(6) a {
    background-color: #fff;
    color: #1E6965;
    font-weight: bold;
}

/* Submenu Styles */
.submenu {
    list-style: none;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 100%; /* Positions the submenu directly below the parent */
    left: 0;
    background-color: #1E6965;
    min-width: 180px; /* Adjust as needed */
    z-index: 1000;
    opacity: 0; /* Initially hidden */
    visibility: hidden; /* Initially hidden */
    transform: translateY(10px); /* Starts slightly below for animation */
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
}
.has-submenu:hover .submenu {
    opacity: 1; /* Fades in on hover */
    visibility: visible; /* Becomes visible on hover */
    transform: translateY(0); /* Moves to its final position */
}
.submenu li {
    border-bottom: 1px solid #1E6965;
}
.submenu li:last-child {
    border-bottom: none;
}
.submenu a {
    padding: 10px 15px;
    color: white;
}
.submenu a:hover {
    background-color: #1E6965;
}

/* スマホヘッダーメニュー */
#hmenu_sp {
	display: none;
	}
#hmenu_sp {
	background-color: transparent;
	position: fixed;
	color: #fff;
	width: 100%;
    z-index: 100;
	}
}





.main-visual-row {
	display: flex;
	justify-content: left;
	align-items: center;
	max-height: 300px;
	background: url('../img/002.jpg') top center / cover no-repeat;
	padding-top: 15%;
	padding-left: 7%;
	
}
h2 {
	margin: 0 0 40px 0;
	font-size: 30px;
	font-weight: normal;
	color: #fff;
}

.sp-nav {
	display: none;
	
}

/*リンクボタン*/
a.button {
	display: block;
	width: 250px;
	margin: 0 auto;
	padding: 15px 30px;
	text-align: center;
	border: 1px solid #fff;
	transition: all .3s ease-out;
}
a.button:hover {
	color: #505050;
	background-color: #fff;
}



.box1{
	width: 100%;
}
.box2{
	width: 100%;
}
.box3{
	width: 100%;
}


.image-container {
    margin: 0 5%;
}
.image-wrapper {
    /* flex: 1 1 48%; */
    margin: 0;
    /* box-sizing: border-box; */
    /* min-width: 300px; */
}
.image-wrapper img {
    width: 70%;
    display: block;
    margin: 0 auto;
}
.image-wrapper3 {
	margin: 0 0 50px;padding: 0;
}
.image-wrapper3 img {
	width: 95%; 
	height: auto; 
	display: block;
	margin: 0 auto;
}
.image-wrapper3 h2 {
	font-size: 125%;
	color: #111;
	font-weight: bold;
	margin: 0;
	padding: 0 0 20px 0;
	letter-spacing: 0.1em;
}

.image-wrapper3 p {
	margin: 0;
	padding: 0;
}
.image-wrapper4 {
	flex: 1 1 48%; 
	margin: 1%; 
	box-sizing: border-box; 
	min-width: 300px;
}
.image-wrapper4 img {
    width: 80%; 
    height: auto; 
    display: block; 
	margin: 0 auto;
}
.image-wrapper5 {
    flex: 1 1 38%;
    margin: 1%;
    box-sizing: border-box; 
    min-width: 200px;
}
.image-wrapper5 img {
    width: 100%; 
    height: auto; 
    display: block; 
	margin: 0 auto;
}

/* トップページ　メイン画像 */
.main-visual {
	display: flex;
	justify-content: left;
	align-items: center;
	height: 100vh;
	background: url('../img/mein1.jpg') top center / cover no-repeat;
	position: relative;
}
.main-visual h1 {
    font-size: 180%;
    color: #fff;
    line-height: 1.6;
    position: absolute;
    bottom: 100px;
}

/* トップページ　新着情報 */
.box4-2 {
    margin: 0 5%;
    /* max-width: 1100px; */
}
.box4-2 ul {
    margin: 0;
    padding: 50px 0 ;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1100px;
}
.box4-2 li:first-child {
    width: 100%;
    text-align: center;
    margin: 0 0 15px;
}
.box4-2 li:last-child {
    /* margin: 0 0 0 30px; */
    width: 100%;
}
.box4-2 li dl {
   /* display: inline-block; */
   width: 100%;
   border-bottom: 1px solid #1E6966;
   font-size: 16px;
}
.box4-2 li dt {
	width: 100%;
	border-top: 1px solid #1E6966;
	/* display: inline-block; */
	margin: 0;
	padding: 10px 0;
}
.box4-2 li dd {
	width: 100%;
	/* display: inline-block; */
	margin: 0;
	padding: 0 0 10px;
	/* border-top: 1px solid #1E6966; */
}

/* トップページ　インスタ・youtube */
.box4{
	background-image: url("../img/background1.jpg");
	padding: 50px 5% 30px;
	margin: 0;
	background-repeat: repeat-y;
}
.box4 .insta {
    background-color: #fff;
    border-radius: 20px;
    padding: 20px;
    /* max-width: 1100px; */
    margin: 0 0 50px;
}
.box4 .youtube {
    background-color: #fff;
    border-radius: 20px;
    padding: 20px;
    margin: 0;
}
.youtube ul {
    /* gap: 10px; */
    margin: 0;
    padding: 0;
}
.youtube li:first-child iframe {
    width: 250px;
    height: auto;
}
.youtube li:nth-of-type(2) iframe {
    width: 250px;
    height: auto;
}
.youtube li:nth-of-type(3) iframe {
    width: 250px;
    height: auto;
}
.youtube li:nth-of-type(4) iframe {
    width: 250px;
    height: auto;
}
.youtube li:nth-of-type(5) iframe {
    width: 250px;
    height: auto;
}
.youtube li p {
    margin: 5px 0 0;
    padding: 0;
}
	
/* トップページ　3つのポイント */
.box-contents1 {
    width: 100%;
    margin: 0 auto;
    text-align: center;
    background-color: #F2F1EE;
    padding: 20px 0 30px;
	}
.box-contents1 img {
    width: 100%;
	}
.box-contents2 {
    background-color: #1E6966;
    margin: 0 5%;
    border-radius: 30px;
    padding: 30px 0;
	}
.box-point {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	}
.box-point img {
    width: 80%;
    text-align: center;
	}

/* トップページ　カテゴリリンク */
.gallery-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin: 5%;
}
.gallery-item {
    flex: 1 1 calc(50% - 20px / 2);
    box-sizing: border-box;
    /* margin: 0; */
    text-align: center;
}
.gallery-item:hover {
	background-color: #b5e2e0;
	border-radius: 20px;
}
.gallery-container2 {
	display: flex; 
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center; 
	max-width: 1100px;
	margin: 0 auto;
}
.gallery-item2 {
	flex:none; 
	box-sizing: border-box; 
	background-color: #fff;
	padding: 20px 0;
	text-align: center;
	}
.gallery-item img {
	max-width: 100%;
	height: auto;
	display: block;
	justify-content: center;
	}
.gallery-item2 img {
	max-width: 90%;
	height: auto;
	display: block; 
	justify-content: center; 
	}

/* トップページ　モデルプラン */
.box-plan1{
	margin: 100px auto 50px;
}
.box-plan2{
	margin: 0;
	display: block;
}
.box-plan2 img {
	max-width: 70%;
	justify-content: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.gallery-container-plan {
    display: flex;
    flex-wrap: wrap;
}
.gallery-item-plan {
    /* flex: 1 1 calc(33.333% - 40px / 3); */
    box-sizing: border-box;
    padding: 5px;
    text-align: center;
    width: 100%;
}
.gallery-item-plan img {
    width: 100%;
    height: 250px;
    display: block;
    object-fit: cover;
    justify-content: center;
    border-radius: 20px;
    object-position: left top;
}

/* トップページ　シーズンによる主な対象魚と装備 */
.box5{
	width: 100%;
}
.box-bak {
	width: 100%;
	height: 300px;
	background-image: url(https://hitotokibase.com/wp-content/themes/hitotoki/assets/img/background2.jpg);
	background-position: 50% 50%;
	background-size: cover;
	}
.box-bak img{
	width: 100%;
}

/* トップページ　ブログ */
.box6{
	margin: 50px 0%;
}
.box6-2 {
    margin: 50px 5%;
    padding: 0;
}
.box6-2 h2 {
    font-size: 200%;
    text-align: center;
    margin: 50px 0;
    color: #1E6966;
    font-weight: bold;
}
.box-plan3{
	width: 100%;
	margin: 200px auto 0;
}	
.box-plan4{
	/* width: 100%; */
	margin: 0;
}
.box-plan4 img {
	max-width: 70%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.box-plan5{
	/* max-width: 1100px; */
	/* margin: 0 auto; */
	/* padding-left: 13%; */
	}
.box7{
	margin: 50px 0;
	}


/* トップページ　FAQ */
.faqBox {
    margin: 0 auto;
    max-width: 1100px;
    color: #1E6966;
}
.faqBox p {
	text-align: right;
}
.faqBox p a:link {
    color: #1E6966;
}
.faq-item {
	border-top: 1px solid #1E6966;
	position: relative;
	font-weight: bold;
	line-height: 1.4;
}
.faq-item p {
    margin: 0;
    padding: 0;
}
.faq-item:nth-of-type(1) {
	margin: 30px 0 0 0;
}
.faq-item:nth-last-of-type(2) {
	border-bottom: 1px solid #1E6966;
    margin: 0 0 30px;
}
.faq-question {
	cursor: pointer;
	padding: 20px 40px 20px 10px;
	position: relative;
}
.faq-question::after {
	content: '\f067'; /* plus */
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	position: absolute;
	right: 10px;
	top: 15px;
	transition: 0.3s;
}
.faq-item.open .faq-question::after {
	content: '\f068'; /* minus */
}
.faq-answer {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease;
	padding: 0 10px;
}
.faq-item.open .faq-answer {
	max-height: 300px;
	opacity: 1;
	visibility: visible;
	padding: 10px 10px 20px;
}
.faqBox > p:last-child {
	margin-top: 20px;
}


/* フッター */
.footer {
	padding: 0;
	/* font-size: 16px; */
	background-color: #1E6966;
	/* border-top: 1px solid #e5e7eb; */
	/* margin: 5%; */
	padding: 5%;
	/* color: #fff; */
	}
.footer a:hover {
	color: #fff;
	}
.footer-box {
	background-color: #1E6966;
	margin: 0;
	padding: 0;
}
.footer {
    color: #FFFFFF;
    line-height: 1.6;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer a:hover {
	color: #fff;
}
.footer strong {
	display: block;
	font-size: 18px;
}
.footer ul {
    margin: 0;
    padding: 0;
    display: initial;
}
.md-flex {
    text-align: left;
}
.md-flex:nth-of-type(2) {
    margin: 10px 0
}
.copyright {
    width: 100%;
    color: #FFFFFF;
    margin-bottom: 0px;
    font-size: 14px;
    text-align: center;
    padding: 30px 0 0 0;
}


/* PC */
@media screen and (min-width: 768px) {
.image-container {
	display: flex;
	flex-wrap: wrap; 
	justify-content: center; 
	max-width: 1100px;
	margin: 0 auto;
	padding: 10px;
	box-sizing: border-box;
	}
.image-wrapper {
    flex: 1 1 48%; 
    margin: 1%; 
    box-sizing: border-box; 
    min-width: 300px;
	}
.image-wrapper img {
    width: 70%; 
    height: auto; 
    display: block; 
	margin: 0 auto;
	}
.image-wrapper3 {
	margin-top: 60px;
	}
.image-wrapper3 img {
	width: 95%; 
	height: auto; 
	display: block;
	margin: 0 auto;
	}
.image-wrapper3 h2 {
	font-size: 150%;
	color: #111;
	font-weight: bold;
	margin: 0;
	padding: 40px 0;
	}
.image-wrapper3 p {
	margin: 0;
	padding: 0;
	line-height: 1.6;
	}
.box3{
	width: 100%;
	margin: 100px 0;
}
	
/* トップページ　メイン画像 */
.main-visual {
	display: flex;
	justify-content: left;
	align-items: center;
	height: 100vh;
	background: url('../img/mein1.jpg') top center / cover no-repeat;
	padding-top: 35%;
	padding-left: 7%;
}
.main-visual h1 {
    font-size: 300%;
    color: #fff;
    line-height: 1.6;
}
	
/* トップページ　新着情報 */
.box4-2 {
    margin: 100px auto;
    max-width: 1100px;
}
.box4-2 ul {
    margin: 0;
    padding: 50px 0 ;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1100px;
}
.box4-2 li:first-child {
    width: 20%;
}
.box4-2 li:last-child {
    margin: 0 0 0 30px;
    width: 76%;
}
.box4-2 li dl {
   display: inline-block;
    width: 100%;
    border-bottom: 1px solid #1E6966;
	font-size: 16px;
}
.box4-2 li dt {
	width: 20%; 
	border-top: 1px solid #1E6966;
	display: inline-block;
	margin: 0;
	padding: 20px 0;
}
.box4-2 li dd {
	width: 80%;
	display: inline-block;
	margin: 0;
	padding: 20px 0;
	border-top: 1px solid #1E6966;
}
	
/* トップページ　インスタ・youtube */
.box4{
	margin-top: -100px;
	width: 100%;
	background-image: url("../img/background1.jpg");
	height: auto;
	padding-top: 250px;
	padding-bottom: 70px;
	background-repeat: repeat-y;
	}
.box4 .insta {
    background-color: #fff;
    border-radius: 20px;
    padding: 40px;
    max-width: 1100px;
    margin: 0 auto 80px;
	}
.box4 .youtube {
    background-color: #fff;
    border-radius: 20px;
    padding: 40px;
    max-width: 1100px;
    margin: 0 auto;
	}
.youtube ul {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    /* grid-template-rows: repeat(5, 1fr); */
    gap: 10px;
    margin: 0;
    padding: 0;
	}
.youtube li:first-child {
	grid-row: span 2 / span 2;
	}
.youtube li:first-child iframe {
    width: 550px;
	height:309px;
	max-height:309px
	}
.youtube li:nth-of-type(2) iframe {
  width: 222px;
	height:126px;
    max-height: 126px;
	}
.youtube li:nth-of-type(3) iframe {
	width: 222px;
	height:126px;
    max-height: 126px;
	}
.youtube li:nth-of-type(4) {
    grid-column-start: 2;
    grid-row-start: 2;
	}
.youtube li:nth-of-type(4) iframe {
  width: 222px;
	height:126px;
    max-height: 126px;
	}
.youtube li:nth-of-type(5) {
    grid-column-start: 3;
    grid-row-start: 2;
	}
.youtube li:nth-of-type(5) iframe {
    width: 222px;
	height:126px;
    max-height: 126px;
	}
.youtube li p {
    margin: 5px 0 0;
    padding: 0;
	font-size:12px;
	}
	
/* トップページ　3つのポイント */
.box-contents1 {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	background-color: #F2F1EE;
	padding: 30px 0 50px 0;
	}
.box-contents1 > img {
	max-width:1000px;
 }
.box-contents2 {
	max-width: 1100px;
	background-color: #1E6966;
	height: auto;
	margin: 0 auto;
	border-radius: 30px;
	padding: 80px 0;
	}
.box-point {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	}
.box-point img {
    width: 32%;
    text-align: center;
	}
	
/* トップページ　カテゴリリンク */
.gallery-container {
    display: flex; 
    flex-wrap: wrap; 
    gap: 20px;
    justify-content: center;
	max-width: 1100px;
	margin: 0 auto;
}
.gallery-item {
    flex: 1 1 calc(33.333% - 40px / 3);
    box-sizing: border-box;
    margin: 0;
    text-align: center;
}
.gallery-item:hover {
	background-color: #b5e2e0;
	border-radius: 20px;
}
.gallery-container2 {
	display: flex; 
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center; 
	max-width: 1100px;
	margin: 0 auto;
}
.gallery-item2 {
	flex:none; 
	box-sizing: border-box; 
	background-color: #fff;
	padding: 20px 0;
	text-align: center;
	}
.gallery-item img {
	max-width: 100%;
	height: auto; 
	display: block;
	justify-content: center; 
	}
.gallery-item2 img {
	max-width: 90%;
	height: auto;
	display: block; 
	justify-content: center; 
	}

/* トップページ　モデルプラン */
.box-plan1{
	width: 100%;
	margin: 200px auto 0;
	}
.box-plan2{
	max-width: 1100px;
	margin: 0 auto;
	padding-left: 0%;
	}
.box-plan2 img {
	max-width: 70%; 
	height: auto; 
	display: block; 
	justify-content: center; 
	}
.gallery-container-plan {
    display: flex; 
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center; 
	max-width: 1100px;
	margin: 0 auto;
	}
.gallery-item-plan  {
    flex: 1 1 calc(33.333% - 40px / 3);
    box-sizing: border-box; 
    padding: 10px;
    text-align: center;
	}
.gallery-item-plan  img {
    max-width: 100%; 
    height: auto; 
    display: block; 
	justify-content: center; 
	}
	
/* トップページ　シーズンによる主な対象魚と装備 */
.box5{
	width: 100%;
	height: 300px;		
}
.box-bak {
	width: 100%;
	height: 300px;
	background-image: url(https://hitotokibase.com/wp-content/themes/hitotoki/assets/img/background2.jpg);
	background-position: 50% 50%;
	background-size: cover;
	padding: 180px 0 0 0;
	}
	
/* トップページ　ブログ */
.box6 {
	width: 100%;
}
.box6-2 {
    margin: 50px auto;
    padding: 50px 0;
}
.box6-2 h2 {
    font-size: 200%;
    text-align: center;
    margin: 50px 0;
    color: #1E6966;
    font-weight: bold;
}
.box-plan3{
	width: 100%;
	margin: 200px auto 0;
	}	
.box-plan4{
	width: 100%;
	margin: 200px auto 0;
	}
.box-plan4 img {
	max-width: 70%; 
	height: auto; 
	display: block; 
	justify-content: center; 
	}
.box-plan5{
	max-width: 1100px;
	margin: 0 auto;
	padding-left: 0%;
	}
.box7{
	margin-top: -100px;
	width: 100%;
	height: auto;
	padding-top: 250px;
	}
	
/* フッター */
.footer {
	max-width: 1100px;
	padding: 34px 0 0 0;
	font-size: 16px;
	color: #000;
	background-color: #1E6966;
	border-top: 1px solid #e5e7eb;
	margin: 0 auto;
	}
.footer a:hover {
	color: #fff;
	}
.footer-box {
	max-width: 100%;
	background-color: #1E6966;
	padding: 0 10px;
	}
.footer {
    max-width: 1100px;
    padding: 34px 0 0 0;
    margin: 0 auto;
    font-size: 16px;
    color: #FFFFFF;
    line-height: 1.6;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
	}
.footer a:hover {
	color: #fff;
	}
.footer strong {
	display: block;
	font-size: 18px;
	}
.footer ul {
    margin: 0;
    padding: 0;
    display: initial;
	}
.md-flex {
	text-align: left;
	display: flex;
	padding:0px;
	}
.md-flex:nth-of-type(2) {
    line-height:2.3
	}
.copyright {
    width: 100%;
    color: #FFFFFF;
    margin-bottom: 0px;
    font-size: 14px;
    text-align: center;
    padding: 30px;
	}
	
	
}

















	
	
	

	



	


	


	

	
	
/*
@media (max-width: 768px) { 
    .gallery-item-plan  {
        flex: none; 
		margin: 0 auto;
    }
}

@media (max-width: 768px) { 
    .gallery-item {
        flex: none; 
		margin: 0 auto;
    }
	.gallery-item2 {
        flex: none; 
		margin: 0 auto;
    }
}

@media (max-width: 768px) { 
    .image-wrapper {
        flex: 1 1 100%; 
        margin: 5px 0; 
    }
}
*/





#nav {
  list-style: none;
	color: #000000;
}
#nav li {
  width: auto;
  text-align: center;
  display: inline-block;
  padding: 10px;
  font-size: 16px;
	color: #000000;
}
#nav li a {
  text-decoration: none;
 color: #000000;
  font-weight: normal;
  font-size: 16px;
}
.space {
	height: 500px;
}




@media screen and (max-width: 769px) {
	/*ハンバーガーメニュー*/
	.pc-nav {
		display: none;
	}
	.sp-nav {
		z-index: 300;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		display: block;
		width: 100%;
		background: rgba(0, 0, 0, .8);
		opacity: 0;
		transform: translateY(-100%);
		transition: all .2s ease-in-out;
	}
	#hamburger {
		position: relative;
		display: block;
		width: 30px;
		height: 25px;
		margin: 0 0 0 auto;
	}
	#hamburger span {
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 100%;
		height: 2px;
		background-color: #fff;
		transform: translateY(-50%);
	}
	#hamburger::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
	}
	#hamburger::after {
		content: '';
		display: block;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 70%;
		height: 2px;
		background-color: #fff;
	}
	/*スマホメニュー*/
	.sp-nav ul {
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		height: 100%;
		z-index: 300;
	}
	.sp-nav li {
		margin: 0;
		padding: 0;
	}
	.sp-nav li span {
		font-size: 15px;
		color: #fff;
	}
	.sp-nav li a, .sp-nav li span {
		display: block;
		padding: 20px 0;
	}
	/*-閉じるアイコンー*/
	.sp-nav .close {
		position: relative;
		padding-left: 20px;
	}
	.sp-nav .close::before {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( 45deg );
	}
	.sp-nav .close::after {
		content: '';
		position: absolute;
		top: 50%;
		left: 0;
		display: block;
		width: 16px;
		height: 1px;
		background: #fff;
		transform: rotate( -45deg );
	}
	.toggle {
		transform: translateY( 0 );
		opacity: 1;
	}
	.main-visual {
		padding: 0 4%;
	}
	h2 {
		line-height: 1.6;
		text-align: center;
	}
}
/* フェードイン用のCSS */

/*下からフェードイン*/
/* .fade-in-bottom {
	opacity: 0;
    animation-name: fadein-bottom;
	animation-duration: 1.5s;
	animation-delay: .3s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
} */
.fade-in-bottom {
	opacity: 0;
	animation: fadein-bottom 1.5s .3s ease-out forwards;
}
.fade-in-bottom {
	opacity: 0;
    animation-name: fadein-bottom;
	animation-duration: 1.5s;
	animation-delay: .3s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
	font-size: 1.8em;
	line-height: 1.2em;
	font-weight: 500;
	letter-spacing: 0.01em;	
}


@keyframes fadein-bottom {
	0% {
		opacity: 0;
		transform: translateY(20px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}
/*左からフェードイン*/
.fade-in-left {
	opacity: 0;
    animation-name: fadein-left;
	animation-duration: 1.5s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
@keyframes fadein-left {
	0% {
		opacity: 0;
		transform: translateX(-20px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
/*左からフェードイン*/
.fade-in-right {
	opacity: 0;
    animation-name: fadein-right;
	animation-duration: 1.5s;
	animation-timing-function: ease-out;
	animation-fill-mode: forwards;
}
@keyframes fadein-right {
	0% {
		opacity: 0;
		transform: translateX(20px);
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}