@charset 'UTF-8';


.test{
    display:none;
}

ul{
    padding:0;
}

/*基本色*/
:root{
    --main-color:#4cccd0;
    --sub-color:#fadbbc;
    --accent-color:#fbc600;
}

body{
    margin:0;
    padding:0;
    font-family:小塚ゴシック Pr6N;
}

img{
    width:100%;
}

p {
  line-height: 1.8;      /* 行間を広げてゆとりを持たせる */
  margin-bottom: 1.5em; /* 段落間の余白を確保 */
  color: #333;          /* 真っ黒より少しグレーにすると目が疲れない */
}

/* リンクのデザインをスッキリさせる */
a {
  text-decoration: none;       /* 一旦下線を消す */
  padding-bottom: 2px;
  transition: color 0.3s;      /* ホバー時の動きを滑らかに */
  color: #333;  
}

a:hover {
  color: #ff8c00;              /* オカリナのオレンジ系に合わせて変化 */
  border-bottom-color: transparent;
}

/* 見出しのバランスを整える */
h2, .title {
  margin-top: 2em;
  margin-bottom: 1em;
  font-weight: bold;
}


/*ヘッダー*/
header{
	position: fixed;
    z-index: 100;
	width: 100vw;
}

/*MENU（小さい時）*/

#menu_open{
	justify-content: space-between;
    display: flex;
}

#menu_open button{
	background: orange;
	color: #fff;
	border:var(--accent-colo);
	font-family: AB-kirigirisu Regular;
	padding:20px;
}

#menu_panel{
    height: 100vh;
    background:#dcd3b2;
    width: 100vw;
    position: fixed;
    z-index: 101;
    top: 0;
    right: 0;
    translate: 100vw;
	font-family: AB-kirigirisu Regular;
}

#menu_panel button{
	background: orange;
    color: #fff;
    padding: 20px;
    border: none;
	font-family: AB-kirigirisu Regular;
}

#menu_panel nav ul{
	list-style-type: none;
    padding: 0;
	font-size: 1.3rem;
}

#menu_panel nav ul li{
	margin:25px
}

.minimenu_list{
	position: absolute;
    top: 50%;
    left: 50%;
	transform: translate(-50%, -50%);
}
/*MENU（大きい時）*/
.karisome{
	display: flex;
    justify-content: space-between;
}


/*全ページ共通*/
.wave{
	position:relative;
	overflow: hidden;
	/*形状*/
	display:inline-block;
	padding:30px;
	outline:none;
	transition:ease .2s;
	background:#dcd3b2;
	border-radius: 15px;
	margin-top: 30px;
}

.wave span{
	position:relative;
	z-index: 3;
	color:#000;
}

.wave:hover span{
	color:#fff;
}


.bgbottom:before{
	/*位置*/
	content:'';
	position:absolute;
	bottom:0;
	left:0;
	z-index:2;
	/*色や形*/
	/*background:#333;*/
	width:100%;
	height:0;
	/*アニメーション*/
	transition:.3s cubic-bezier(0.8,0,0.2,1)
}

.bgbottom:hover:before{
	height:100%;
	background:var(--main-color);;
}


/*ヘッダー*/
header span{
    color:#fff;
    border: solid 3px #fff;
    padding: 10px;
    border-radius: 10%;
	margin-right: 25px;
}

/*ヒーロー*/

.hero{
    height: 100vh;
    background:var(--main-color);
    padding:30px;
}

.title{
    position:absolute;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
}

.title h1 img{
	width:8em;
}

.hero h1{
    text-align: center;
    width:22rem;
}


.naritai{
    text-align: center;
    margin:0;
    font-family: AB-kirigirisu Regular;
    color:#fff;
	font-size: 1.3rem;
}

.makeafantacy{
    text-align: center;
    margin-top: 5px;
    font-family: AB-kirigirisu Regular;
    color:var(--accent-color);
	font-size: 1rem;
}

/*NEWS*/

.news{
    padding: 30px;
}

.news h2{
    padding: 10px 0;
    margin: 0;
    font-family: AB-kirigirisu Regular;
    border-bottom: dotted #000 1px;
}

.news_title{
    border-bottom: 0.5px dotted #000;
    margin-top:20px;
}

.news_title:last-child{
    border:none;
}

/*japanese*/
.japanese{
    background:#f5f5f5;
   padding: 30px;
}

.japanese h2{
    padding: 10px 0;
    margin: 0;
    font-family: AB-kirigirisu Regular;
    border-bottom: dotted #000 1px;
}

.japanese_naiyou:last-child{
	text-align: center;
}


/*Movie*/
.movie{
    padding:30px;
    position:relative;
    background:var(--main-color);
    min-height: 500px;
}

.movie h2{
    padding: 10px 0;
    margin: 0;
    font-family: AB-kirigirisu Regular;
    border-bottom: dotted #000 1px;
}

.movie_center{
    margin-top: 50px;
    position: absolute;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
}

.movie p{
    text-align: center;
}

/*Profile*/
.profile{
    background:var(--sub-color);
    padding:30px;
}

.profile h2{
    padding: 10px 0;
    margin: 0;
    font-family: AB-kirigirisu Regular;
    border-bottom: dotted #000 1px;
}

.about_me{
    padding: 30px 0;
    border-bottom: dotted 1px #000;
    text-align:center;
}

.about_me:last-child{
    border-bottom:none;
}

.about_me img{
    width:220px;
}

/*blog*/
.cloud{
	background:#f5f5f5;
    padding:30px;

}


.blog_content{
    padding: 30px 0;
    border-bottom: dotted 1px #000;
    text-align:center;
}

.blog_content:last-child{
    border-bottom:none;
}

.blog_content p{
     text-align: left;
}
/*フッター*/
footer{
    background:#f9b1b7;
    padding:30px;
    text-align: center;
}

footer p{
    font-size:0.8rem;
}

footer img{
    width: 15em;
}

footer ul{
    list-style-type: none;
}

/*フェードイン*/
.fadein{
	opacity:0;
}

/*ローディング*/
#loading{
	position: fixed;
    z-index: 103;
    height: 100vh;
    background:#dcd3b2;
    inset: 0;
    display: grid;
    place-items: center;
	font-family: AB-kirigirisu Regular;
}

#wave{
	background:var(--main-color);
	position:fixed;
	inset:0;
	z-index:102;
	translate:0 100vh;
}

/*上にボタン*/
#to_top{
	z-index: 100;
    position: fixed;
    width: 2rem;
    bottom: 2%;
    right: 3%;
	text-align: center;
}

#to_top p{
	margin:0;
	font-size: 1rem;
	font-size: 0.655rem;
}


#to_top{
  animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
@keyframes floating-y {
  0% {
    transform: translateY(-10%);
  }
  100% {
    transform: translateY(10%);
  }
}

#to_top img {
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.3));
}
/**/
.section_title{
    color: #C77070;
    font-size: 2em;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 30px 0;
}

.section_title:before, .section_title:after {
    content: '';
    display: block;
    height: 1px;
    flex: 1 1 auto;
    border-top: 2px solid #C77070;
}

.event{
    background: #f5f5f5;
    padding: 30px;
}
.service{
    padding: 30px;
}

.service_image img{
        width: 10em;
}
.kuwasikuha{
    text-align: center;
}

.item_flex{
    text-align: center;
}

.item p {
    text-align: left;
}

.item_image img{
        width: 15em;
}
.cloud_content img{
        width: 10em;
}
.cloud_flex{
    text-align: center;
}


#menu_largesize {
    transition: background 0.3s; /* 滑らかに切り替える場合 */
}

/* 1pxでも動いたときに付与するクラス */
#menu_largesize.is-scrolled {
    background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
}

.item ul{
    
    list-style-type: none;
    padding: 0;
    text-align: left;
}
/**/
.wp-singular{
    background-color: #f5f5f5;
    position: relative;
}
.karisome{
    position: absolute;
    top: 0px;
    left:0px;
}

.contents_image{
    text-align: center;
}
.wp-image-136{
    width:18em;
}
main{
    padding:20px;
}
.menu-item  a{
    text-decoration: none;
    color: #fff;
}
#menu_panel h1 img{
    width:8em;
}
#menu_panel h1{
    text-align: center;
}
.hero_goods{
    display:flex;
    justify-content: center;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.hero_goods img{
    align-self: flex-end;
    width: 7em;
}

.menu_panel_books{
    display: flex;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    justify-content: center;
    width: 100%;
}
.menu_panel_books img{
    align-self: flex-end;
    width: 7em;
    margin: 0px 5px;
}


.contents_text ul li{
    padding:0;
    list-style-type: none;
}



/*profile_text*/
/* 外枠の調整 */
.profile_text {
  max-width: 600px;     /* 横に広がりすぎないように制限 */
  margin: 0 auto;       /* 中央寄せ */
  color: #333;          /* 少し柔らかい黒 */
  line-height: 2.0;     /* 行間をたっぷり取る */
}

/* 各段落の余白 */
.profile_text p {
  margin-bottom: 2em;   /* 段落同士の間隔を広めにとる */
}

/* リスト（箇条書き）の部分に特別感を出す */
.profile_text ul {
  list-style: none;     /* デフォルトの点を消す */
  padding: 1.5em;       /* 内側に余白 */
  background: #f9f9f9;  /* ほんのり背景色をつけて「別枠」にする */
  border-radius: 8px;   /* 角を丸く */
  margin: 2.5em 0;      /* 前後の文章としっかり離す */
}

.profile_text li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 0.8em; /* リスト内は少し詰め気味にして「まとまり」を出す */
}

/* 箇条書きの頭にアクセント */
.profile_text li::before {
  content: "🎹";        /* アイコンにすると一気に専門家感が出ます */
  position: absolute;
  left: 0;
  font-size: 0.9em;
}
.contents_text ul li {
  line-height: 2.2;    /* かなり広めにして、一行一行を独立させる */
  margin-bottom: 1.5em; /* 項目ごとの隙間もしっかり */
  list-style-type: none; /* デフォルトの黒丸は消したほうが上品です */
  padding-left: 0;
}
section.story {
  margin-bottom: 100px; /* 前後の年の間隔をしっかり空ける */
}

/* ついでに中の要素（.pop）同士も少し空ける */
.pop {
  margin-bottom:6em;  /* 同じ年の中にあるワークショップごとの間隔 */
  gap: 20px;            /* 画像とテキストの間の隙間 */
}

.arcive_thumbnail{
    width:18em;
    margin: 0 auto;
}