@charset "utf-8";

/*全体設定↓
-------------------------------*/
html{
	-webkit-box-sizing: border-box;/*ボタン用*/
  box-sizing: border-box;/*ボタン用*/
  scroll-behavior: smooth;/*上に戻るボタン用*/
  
}
/* スマホサイズ場合に文字サイズを調整 */
@media screen and (max-width: 960px) {
		html {
			font-size: 28px; /* スマートフォン画面での文字サイズ */
			}
}
/*	ボディ
---------------------------------------*/
body{
  background-color: #000000;/*背景色*/
   background-position: top center; /* 中央に配置 */
  background-image: url(../images/bg1.png);/*背景画像*/
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: 100%; /* 要素全体に画像表示 */
  color: #f6ad49;	/*全体の文字色*/
  font-size: 18px;
  font-family: 'メイリオ', Meiryo,'ヒラギノ角ゴシック','Hiragino Sans','Calibri','Andale Mono',sans-serif;
  margin: 0, auto;
}
/* スマホサイズ場合に文字サイズを調整 */
@media screen and (max-width: 960px) {
		body {
			font-size: 28px; /* スマートフォン画面での文字サイズ */;
			}
}
/*===========↑スマホ用文字サイズ================================*/
p{
	font-size: 1.16em;
}
a{
  color: #f6ad49;
  text-shadow: 0 0 4px #ec6800, 0 0 10px #fff, 0 0 18px #fff; 
  font-size:1.25em;
  text-decoration: none;

}
a:hover{
  color: #fff;
  text-shadow: 0 0 6px #eb6101, 0 0 12px #eb6101, 0 0 20px #eb6101; 
}

/*------------全体ここまで↑-------------------*/

/*全体枠*/

#container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 3em;
  background-color: rgba(0,0,0,0.65);

}
#container h1{
  background-color : rgba(246,173,73,0.9);/*#f6ad49 アルファ透過指定*/
  font-size: 1.8em;
   color: #ffffff;
  text-shadow: 0 0 4px #ec6800, 0 0 10px #fff, 0 0 18px #fff;
  text-decoration: none;
  height: 2em;
  padding-top: 5px; 
  padding-bottom: auto;
  padding-left: 1em;
  border-left: 5px double #ffffff;
}
#container h3{
	margin-left: 5%;
	margin-bottom: 2em;
	font-size: 1.75em;
	min-width: 700px;
	max-width: 900px;
}
#container p{
	margin: 0 3em;
	paddin: 3em 20px;
}

/*==============スマホ用960px以下設定====================*/

@media screen and (max-width: 960px) {
			#container{
					max-width: 96%;
					container-type: inline-size;
			}
			#container h1{
					max-width: 90%;
					min-width: 0;
					font-size: 6cqh;
					overflow: hidden;
			}

}
/*
	↑スマホ用設定==================*/
/*====================----------------
			#main　メイン
====================================*/
#main {
	background: url(../images/border2.png) no-repeat bottom center /40%;
	padding-bottom: 50px;
	margin-bottom: 13%;
	width: 100%;

}
#main h2{
	font-size: 1.75em;
  margin-left:1em;
  padding-left:12px;
  color: #f6ad49; 
  border-left: 10px solid #f8f4e6;/* #f8f4e6(象牙色)*/
   background: url("../images/boder4.png") no-repeat left bottom /60%;
}
#main h3{
	width: 80%;
	margin-left: 5%;
	margin-right: 10%;
	font-size: 1.4em;
	font-weight: 100;
	border-bottom: 4px double #ffc45c;/*下線　二重線*/
}
#main p{
	margin-bottom: 2.7em;
}
/*====(使わない？)
	background-color : rgba(247,185,119,0.55);  ------------#f7b977 (杏色)アルファ透過
	text-shadow: 0 0 4px #ec6800, 0 0 10px #fff, 0 0 18px #fff;  -------テキストぼかし効果
===============*/
/*==============h1,h2要素スマホ用960px以下設定====================*/

@media screen and (max-width: 960px) {
			#main {
					width: 100%;
					margin-left: 0;
					margin-right: 0;
					padding-left: 0;
					padding-right: 0;
					padding-bottom: 2em;
  					container-type: inline-size;
					background: url(../images/border2.png) no-repeat bottom center /70%;
				}
			#main h2{
					font-size: 5cqh;
					overflow: hidden;
					background: url("../images/boder4.png") no-repeat left bottom /90%;
					min-width: 0;/*画面幅飛び出し防止*/	
			}
			#main h3{
					
					width: 90%;
					font-size: 4cqh;
					min-width: 0;/*画面幅飛び出し防止*/
			}
			#main p{
					max-width: 100%;
					padding: 2em 0;
			}
}
/*
===================↑h1,h2,h3スマホ用設定===========*/

/*==============================================
	メイン画像余白と最大・最小幅指定
--------------------------------*/
#main img{
	margin: 0 2em 1.8em;
	max-width: 70%;
	max-height: 200px;
	min-width: 30%;
	float: left;

}
/*--------------------------------
	メイン画像スマホ設定
--------------------------------*/
@media screen and (max-width: 960px) {
			#main img{
					width: 100%;/* 単位 vw で画面サイズ基準*/
					margin-top: 1em;
					margin-bottom: 1.6em;
					margin-left: 0;
					clear: both;
			}
			 #main .clear-set{
 		clear: both;
 			}
}
/* ===========メインここまで↑============= */
/*-------------------テキスト　装飾系-----------------*/
.right {
	text-align: right;/*テキスト右寄り用*/
	padding-right: 1em;
}

/*------===============引用ブロック装飾==================*/

blockquote{
	color: #ffebc7;
	background:rgba(0,0,0,0.5) ;
	background-image: linear-gradient(94deg, #ffe8c1, #ffaf30 1%, #000000 5%);/*背景グラデーション*/
	border: solid 1px #f8f4e6;
	text-shadow: 0 0 6px #a86c12, 0 0 12px #eb6101, 0 0 20px #a86c12; 
	padding-left:  5%;
	padding-top: 1em;
	border: ;
	border-radius: 20px;
}
/*------------------個人的考察コメント----------------------*/
.coment{
	max-width: 85%;
	border-left: solid 2px #ea9702;
	border-top: solid 1px #ea9702;
	border-radius: 10% 30%;
	color: #d8a373;
	font-size: 1.16em;
	font-family: font-family: 'Yu Gothic UI','ヒラギノ丸ゴ ProN','Hiragino Maru Gothic ProN','Osaka','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',serif;
	line-height: 1.3;
	margin: 2em 10% 10px 0;
	padding-left: 12%;
	padding-right: 2em;
	padding-bottom: 1em;
	padding-top: 5px;
	background-color: #000000;
	background: url("../images/kousatu.png") no-repeat left top/10% ;/*個人的考察背景画像指定*/
	min-width: 0;
}

/*===============================
		サブブロック全体↓
--------------------------------*/
#sub-box{
	width: 95%;
  margin: 50px auto;
  padding-top: ;
  
	}

#sub-box h2{
	width: 100%;
	height: 2em;
	margin-left:1em;
	margin-top: 12%;
	padding-left:1em;
	font-size: 1.7em;
	color: #f7b977; 
	 border-left: 10px solid #f8f4e6;/* #f8f4e6(象牙色)*/
	}

/*==================
		注意事項
================*/
.caution1{
	width: 50%;
	 margin-top: 2em;
	 margin-bottom: 4em;
 	float: left;
}
.caution1 h2{
		min-width: 0;
}
.caution p{
 margin: 50px 30px;
}
/*---------
注意事項多国語版画像
------------------*/
.caution2 {
 width: 45%;
  float: left;
}
.caution2 img{
  margin: 200px 10px;
  max-width: 360px;
  min-width: 100px;
 background-color: rgba(0,0,0,0.65);
 border: none;
  
}
/*================================
	 ↓caution1　スマホ用
---------------------------------*/
@media screen and (max-width: 960px) {
	#sub-box{
			width: 95%;
			margin: 10px 0;
	}
	#sub-box h2{
			min-width: 0;
	}
	.caution1{
 				margin-top: 2em;
 				margin-bottom: 2em;
 				width: 100%;
	}
	.caution2 {
			width: 100%;
			min-width: 0;
	}
	.caution2 img{
			margin: 35px 0;
			width: 100%;
			max-width: 100%;
	
	}
}
/*↑ caution スマホ用
-------------------------------*/
/*　ゲーム著作権表記
------------------------------*/
.soft-copyright{
  font-size: 0.8em;
  margin-top: 5em;
  padding: 40px 5px;
 background: linear-gradient(0deg, #000000, 98%, #f7ad53 );/*背景グラデーション*/
 border-top: solid 1px #f8f4e6;
  clear: left;
}
.browsercheck{
	font-size: 0.82em;
	margin-top: 3em;
	background-color: #000000;
	border-top: solid 1px #f8f4e6;
	font-weight: 100;
	clear: both;/*フロート解除*/
}
/*=================================
	フッターメニュー↓
----------------------------*/
html footer {
		background-color: #402f02;
}
#copy{
 border-top: solid 1px #555;
  color: #f6ad49;
  font-size: 0.8em;
  margin: 2em 3em;
  padding-top: 0.8em;
  text-align: center;
 
}
#copy img{
  max-height:34px;
  margin: 0 1em;
}

/*=======================

	フッター スマホ用設定
============================*/
@media screen and (max-width: 960px) {
			 fotter{
				max-width: 100%;
				 font-size: clamp(16px, 1.8vw, 20px);
			}
}

/*　フッタースマホここまで
-----------------------------*/

/*ページトップ矢印設定↓
-----------------------------*/
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #f39800;/*金茶*/
    border: solid 2px #f2f2b0;/*女郎花*/
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    box-shadow: 0 4px 6px rgb(255 255 255 / 30%);/*影を付ける*/
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: translateY(20%) rotate(-45deg);
}
/*--
ページトップ矢印マウスオーバー設定--------*/
@media (hover: hover) and (pointer: fine) {
    .pagetop:hover, .pagetop:hover .pagetop__arrow {
        border-color: #180614;/*烏羽色*/
    }
}
/*==============/ページトップ矢印↑===============*/

/*辞典入口 ↓
---------------------------*/
.enter{
margin: 3em auto;/*上下、左右*/
text-align: center;
}


/*　入口ボタンデザイン
------------------------------------*/
.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
.btn--orange,
a.btn--orange {
  color: #fff;
  background-color: #d8a373;
}
.btn--orange:hover,
a.btn--orange:hover {
  color: #fff;
  background:  #eec362;/*玉蜀黍色*/
}
/*=======
　ボタン　スマホ設定
==================*/
@media screen and (max-width: 960px) {
					.btn,
					a.btn,
					button.btn{
						max-width: 90%;
						padding: 0.7em;
						font-size: 1.4em;
						min-width: 0;
			}
}

/*-----------------------------------
	ヘッダー　メニュー
------------------------------------*/
.c-header {
  align-items: center;
  background-color: #222; /* 背景色 */
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  padding: 1rem 2rem; /* 余白 */
 
   
}

.c-header__logo {
  color: #f39800; /* 文字色 */
  min-width: 80px; /* 最小幅 */
  text-decoration: none;
  
}

.c-header__list {
  box-sizing: border-box;
  display: flex;
  margin: 0;
  padding: 0;
  
}

.c-header__list-item {
  list-style: none;
}

.c-header__list-link {
  color: #fff; /*文字色*/
  font-size: 1.5em;/*文字サイズ*/
  display: block;
  margin-right: 20px; /* 右端位置 */
  text-decoration: none;
  padding: 10px 0; /* 余白 */
  text-shadow: 0 0 4px #fff, 0 0 10px #ec6800, 0 0 18px #ec6800; 

　
}

.c-header__list-link:hover {
  filter: opacity(0.6); /* カスタマイズしてください */
}

.c-hamburger-menu {
  position: relative;
}
/*================
ハンバーガーメニュースマホ用スタイル設定
======================*/
@media screen and (max-width: 960px) {
  .c-hamburger-menu__list {
    background-color: #333; /* 背景色 */
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    left: 0;
    padding: 2rem; 
    position: absolute;
    transform: translateX(-100%);
    transition: 0.3s; /* 変化 */
    top: 100%;
    width: 100%;
  }

  #hamburger:checked ~ .c-hamburger-menu__list {
    transform: translateX(0%);
    transition: 0.3s;
  }
}

.c-hamburger-menu__input {
  display: none;
}

.c-hamburger-menu__bg {
  background-color: #000; /* 背景色 */
  cursor: pointer;
  display: none;
  height: 100vh;
  left: 0;
  opacity: 0.4; /* 透過 */
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

#hamburger:checked ~ .c-hamburger-menu__bg {
  display: block;
}

.c-hamburger-menu__button {
  display: none;
}

@media screen and (max-width: 960px) {
  .c-hamburger-menu__button {
    align-items: center;
    appearance: none;
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 5px; /* カスタマイズしてください */
    height: 32px; /* 高さ */
    justify-content: center;
    width: 32px; /* 幅 */
  }
}

.c-hamburger-menu__button-mark {
  background-color: #f8b862; /* ボタン背景 */
  display: block;
  height: 1px; /* 高さ */
  transition: 0.3s; /* 変化 */
  width: 25px; /* 幅 */
  text-shadow: 0 0 4px #fff, 0 0 10px #fde8d0, 0 0 18px #fde8d0; 
}

@media screen and (max-width: 960px) {
  #hamburger:checked ~ .c-hamburger-menu__button .c-hamburger-menu__button-mark:nth-of-type(1) {
    transform: translate(3px, 1px) rotate(45deg); /* 傾きと長さ */
    transform-origin: 0%; /* カスタマイズしてください */
  }
  #hamburger:checked ~ .c-hamburger-menu__button .c-hamburger-menu__button-mark:nth-of-type(2) {
    opacity: 0;
  }
  #hamburger:checked ~ .c-hamburger-menu__button .c-hamburger-menu__button-mark:nth-of-type(3) {
    transform: translate(3px, 3px) rotate(-45deg); /* 傾きと長さ */
    transform-origin: 0%; /* カスタマイズしてください */
  }
}