@charset "utf-8";

/*========= レイアウトのためのCSS ===============*/


.heading {
  text-align:center;
  font-size: 26px;
  padding-top:65px ;
  position: relative;
  }

  .heading span{
    position: relative;
    z-index: 2;
  }

  .heading::before{
    content: attr(data-en);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%);
    color: rgba(209, 203, 203, 0.304);;
    font-size: 80px;
    font-size: italic;
    font: 'Montserrat',sans-serif;
    z-index: 1;
  }

  
small{
  display: block;
  text-align: center;
  margin:0 0 30px 0;
}
 



/*右各セクション 装飾のためのCSS*/
section{
  min-height: 110vh;
  height: auto;
}

#area2{
  min-height: 80vh;
  height: auto;
}

section:nth-of-type(2n){
/*装飾のためのCSS*/
  background:#eee;
}
/*＝＝＝＝＝＝＝＝＝＝＝768px以下の見え方＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.back span img{
 z-index: 999;
 /* margin-left: 365px; */
 position: absolute;
 /* margin-top: 430px; */
 background-color: #fffefe;
 
 left: 50%;
 top: 50%;
 height: auto;
 width:20vh;
 }


/*========= レイアウトのためのCSS ===============*/

h2{
font-size:1.2rem;
text-align: center;
margin: 0 0 30px 0;
}

p{
margin-top:20px;  
}

small{
color:rgb(22, 22, 22);
display: block;
text-align: center;
}



section{
padding:30px 30px;
}

section:nth-child(2n){
background:#f3f3f3; 
}

#footer{
background:rgb(230, 230, 230);
padding:20px;
}

hr {
  border-width: 5px 0px 0px 0px; /* 太さ */
  border-style: solid; /* 線種 */
  border-color: rgb(0, 0, 0);   /* 線色 */
  height: 1px;         /* 高さ(※古いIE用) */
}




/* 画像変更終了 */

html,body {
  height: 100%;
  margin: 0;
}
.split {
  position: absolute;
  width: 50%;
  height: 100%;
}
.left-box {
  left: 0;
  background:url(../img/無題142_20220203165439.PNG);
  background-size: 100% auto;
 
 
}


.right-box {
  right: 0;
  overflow-y: scroll;
  
}




@media screen and (max-width:250px) {
  .split {
    position: relative;
    width: 100%;
    height: auto;
  }

  h1{
    width: 100%;
    height: auto;
    position: relative;
  }
}



.menu {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  list-style-type: none;
  margin: 0;
  padding: 0;
  background: rgb(235, 235, 235);
 z-index: 99;

}

.menu img{
  height: 30px;
  width: 30px;
  text-align:center;
}

.menu li a{
    display:block;
    height:em;
    width:3em;
    line-height:2em;
    text-align:center;
    color: #000000;
    background: rgb(235, 235, 235);
    border-bottom: 1px solid #f8f8f8;
    transition: background 0.3s ease-in-out;
    text-decoration: none;
    padding: 1rem 2rem;
  border-right: 10px solid rgb(125, 125, 125);
}
    
   



.menu li{
    position:relative;
}
/* 各場所につける */

.menu li:hover:after{
    visibility:visible;
    opacity:1;
}
@media screen and (max-height: 34em){
  .menu li{
    font-size:70%;
  }
}









.menu li a:hover{
  background:  rgb(211, 211, 211);
  color: #fff;
}
.menu li.current a {
  background:  rgb(151, 151, 151);
  color: #fff;
}





.header-3 {
  box-sizing: border-box;
  width: 100%;
}

.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1024px;
  height: 60px;
  padding: 0 0.8em;
  margin: 0 auto;
  font-size: 1.2em;
}

.header-nav {
  display: flex;
  align-items: center;
}

.header-nav-item {
  display: flex;
  align-items: center;
  margin-left: 16px;
}

.logo img {
  width: 70px;
}

.header-button {
  box-sizing: border-box;
  display: inline-block;
  padding: 0.5em 1.2em;
  font-size: 12px;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
}

.header-login {
  color: #999;
}

.header-post {
  font-weight: bold;
  color: #fff;
  background: #00b5ad;
  border: 1px #00b5ad solid;
  border-radius: 3px;
}

@media screen and (max-width: 480px) {
  .header-post {
    display: none;
  }
}


 




@media screen and (max-width:768px){
  img{
    width: auto;
    height: auto;
  }


    

}

#area1{
  min-height: 90vh;
  height: auto;
}


hr {
  border-width: 1px 0px 0px 0px; /* 太さ */
  border-style: solid; /* 線種 */
  border-color: rgb(0, 0, 0);   /* 線色 */
  height: 1px;         /* 高さ(※古いIE用) */
 
}

/* area-1の声優アイテム */
.container {
  display: flex;
  justify-content: center;

}

.row＿card_05 {
  /* max-width: 900px; */
  margin: 50px auto 0;
}

.card {
  padding: 0 1.7rem;
  width: 8em;

}
.card .menu-content {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.card .menu-content::before, .card .menu-content::after {
  content: "";
  display: table;
}
.card .menu-content::after {
  clear: both;
}
.card .menu-content li {
  display: inline-block;
}
.card .menu-content a {
  color: #fff;
}
.card .menu-content span {
  position: absolute;
  left: 50%;
  top: 0;
  font-size: 5vh;
  font-weight: 700;
  font-family: 'Noto Sans JP';
  transform: translate(-50%, 0);
}
.card .wrapper {
  background-color: #fff;
  min-height: 450px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 19px 38px rgba(0, 0, 0, 0.3), 0 15px 12px rgba(0, 0, 0, 0.2);
}
.card .wrapper:hover .data {
  transform: translateY(0);
}
.card .data {
  position: absolute;
  bottom: 0;
  width: 100%;
  transform: translateY(calc(70px + 1em));
  transition: transform 0.3s;
}
.card .data .content {
  padding: 1em;
  position: relative;
  z-index: 1;
}
.card .author {
  font-size:min(2vw,1em);
  bottom: -10px;
  color: #ffffff;
}

.card .text {
  height: 70px;
  margin: 0;
}
.card input[type=checkbox] {
  display: none;
}
.card input[type=checkbox]:checked + .menu-content {
  transform: translateY(-60px);
}
.example-1 .date {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #4f96f6;
  color: #fff;
  padding: 0.8em;
}
.example-1 .date span {
  display: block;
  text-align: center;
}
.example-1 .date .day {
  font-weight: 700;
  font-size: 24px;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.18);
}
.example-1 .date .month {
  text-transform: uppercase;
}
.example-1 .date .month,
.example-1 .date .year {
  font-size: 12px;
}
.example-1 .content {
  background-color: #fff;
  box-shadow: 0 5px 30px 10px rgba(0, 0, 0, 0.3);
}
.example-1 .title a {
  color: gray;
}
.example-1 .menu-button {
  position: absolute;
  z-index: 999;
  top: 16px;
  right: 16px;
  width: 25px;
  text-align: center;
  cursor: pointer;
}
.example-1 .menu-button span {
  width: 5px;
  height: 5px;
  background-color: gray;
  color: gray;
  position: relative;
  display: inline-block;
  border-radius: 50%;
}
.example-1 .menu-button span::after, .example-1 .menu-button span::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  background-color: currentColor;
  position: absolute;
  border-radius: 50%;
}
.example-1 .menu-button span::before {
  left: -10px;
}
.example-1 .menu-button span::after {
  right: -10px;
}
.example-1 .menu-content {
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1;
  transition: transform 0.3s;
  transform: translateY(0);
}
.example-1 .menu-content li {
  width: 33.333333%;
  float: left;
  background-color: #4f96f6;
  height: 60px;
  position: relative;
}
.example-1 .menu-content a {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 24px;
}
.example-1 .menu-content span {
  top: -10px;
}


.example-2 .wrapper:hover .menu-content span {
  transform: translate(-50%, -10px);
  opacity: 1;
}
.example-2 .header {
  color: #fff;
  padding: 1em;
}
.example-2 .header::before, .example-2 .header::after {
  content: "";
  display: table;
}
.example-2 .header::after {
  clear: both;
}
.example-2 .header .date {
  float: left;
  font-size: 12px;
}
.example-2 .menu-content {
  float: right;
}
.example-2 .menu-content li {
  margin: 0 5px;
  position: relative;
}
.example-2 .menu-content span {
  transition: all 0.3s;
  opacity: 0;
}
.example-2 .data {
  color: #fff;
  transform: translateY(calc(70px + 4em));
}
.example-2 .title a {
  color: #fff;
}
.example-2 .button {
  display: block;
  width: 100px;
  margin: 2em auto 1em;
  text-align: center;
  font-size: 12px;
  color: #fff;
  line-height: 1;
  position: relative;
  font-weight: 700;
}
.example-2 .button::after {
  content: "→";
  opacity: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  transition: all 0.3s;
}
.example-2 .button:hover::after {
  transform: translate(5px, -50%);
  opacity: 1;
}

.card_href_05 {
  text-decoration:none;
  color: #4f96f6;

}

.card_maintitle {
  font-size: 1.4rem;
  font-weight: bold;
  text-decoration:none;
}

.card_href_05_2 {
  text-decoration:none;
  color: #FFFFFF;
}

.card_maintitle {
  font-size: 1.4rem;
  font-weight: bold;
}



.continue {
  font-size: 14px;
  color: #666;
  text-decoration: none;
}

.continue::after {
  display: inline-block;
  width: 0.4em;
  height: 0.4em;
  margin: 0 0.2em 0.1em;
  content: '';
  border-right: 0.14em solid #d84444;
  border-bottom: 0.14em solid #d84444;
  transform: rotate(-45deg);
}

.continue:hover {
  opacity: 0.6;
}

.box {
  display: flex;
 justify-content: center;
 gap: 15px;
}


.box img{
  width: 25vh;
  height: auto;
}

.music{
  display: flex;
  justify-content: center;
}

.music2{
  display: flex;
  justify-content: center;
}

.item3{
  width: 300px;
  height: 300px;
  background-color: #00b5ad;
}

/* ぼたん */
.bottan{
margin-top: 4em;
}

.button02 a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 1em 2em;
  width: 10em;
  color: #333;
  font-size: min(3vw,1em);
  font-weight: 700;
  background-color: #cccccc;
  border-radius: 50vh;
  text-decoration: none;
}

.button02 a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(45deg);
}

.button02 a:hover {
  text-decoration: none;
  background-color: #bbbbbb;
}



.book1{
display: flex;
justify-content: center;
gap: 1em;
}



.sample1 {
  width: 15em;
	margin:			10px 8px 10px 16px;
	position:		relative;	/* 相対位置指定 */
  text-decoration-line:none;
}

.sample1 img{
  width: 15em;
  height: 9em;
  box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
}

.sample1 .caption {
	font-size:min(2vw,1em);
	text-align: 		center;
	padding-top:		80px;
	color:			#fff;
}
.sample1 .mask {
	width:			15em;
  height: 9em;
	position:		absolute;	/* 絶対位置指定 */
	top:			0;
	left:			0;
	opacity:		0;	/* マスクを表示しない */
	background-color:	rgba(0,0,0,0.4);	/* マスクは半透明 */
	-webkit-transition:	all 0.2s ease;
	transition:		all 0.2s ease;
 
 
}
.sample1:hover .mask {
	opacity:		1;	/* マスクを表示する */
}




h3{
  text-align: center;
}

.book{
  display: flex;
  justify-content: center;
}

.sample5 img{
  width: 10em;
  height: auto;
  box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;

}



.sample5 {
	width:			13vmax;
	height:			auto;
	overflow:		hidden;
	margin:			10px 8px 10px 16px;
	position:		relative;
}
.sample5 .caption {
	font-size:min(2vw,1em);
	color:			#fff;
	margin-top: 60%;
}
.sample5 .mask {
	width:			11.5em;
	height:			15.8em;
	position:		absolute;
	top:			0;
	left:			0;
	background-color:	rgba(0,0,0,0.4);
	-webkit-transition:	all 0.4s ease;
	transition:		all 0.4s ease;
	-webkit-transform:	scale(0);	/* 大きさを０にして表示しない */
	transform:		scale(0);
}
.sample5:hover .mask {
	-webkit-transform:	scale(1);	/* 大きさを１にして表示する */
	transform:		scale(1);
}

.sample6 img{
  width: 10em;
  height: auto;
  box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;

}

.sample6 {
	width:			13vmax;
	height:			auto;
	overflow:		hidden;
	margin:			10px 8px 10px 16px;
	position:		relative;
}
.sample6 .caption {
	font-size:min(2vw,1em);
	color:			#fff;
	margin-top: 60%;
}
.sample6 .mask {
	width:			13em;
	height:			14.2em;
	position:		absolute;
	top:			0;
	left:			0;
	background-color:	rgba(0,0,0,0.4);
	-webkit-transition:	all 0.4s ease;
	transition:		all 0.4s ease;
	-webkit-transform:	scale(0);	/* 大きさを０にして表示しない */
	transform:		scale(0);
}
.sample6:hover .mask {
	-webkit-transform:	scale(1);	/* 大きさを１にして表示する */
	transform:		scale(1);
}

a{
  text-decoration: none;
}