@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Story+Script&display=swap');
/*-------------カスタムプロパティ------------*/
:root {
	--base-color-blue: #1f6bbd;
	--base-color-skyblue: #0082cf;
	--base-color-yellow: #ffea00;
	--base-color-pink: #ea5e86;
	--tx_base-color-black: #211000;
	--box-bgcolor-white: rgb(255 255 255 / 90%);
	--box-box-shadow: 0 0 20px 0 #afe3ff;

	--btn-color: #0b1da0;
	--max-width: min(90vw, 960px);
	--max-width-contents: 800px;
	--font_main_sans-serif:"Zen Old Mincho", serif;
	--font_main_sans:"Zen Kaku Gothic New", sans-serif;
	--font_main_maru:"Zen Maru Gothic", sans-serif;
	--font_subtitle: "Story Script", sans-serif;
	--font-weight-regular:500;
	--font-weight-bold:700;
	--font-weight-black:900;
	
	--font-size-16px:clamp(1rem, 0.98rem + 0.09vw, 1.063rem);/* 16px-17px */
	--font-size-intro16px:clamp(0.875rem, 0.79rem + 0.5vw, 1.5rem);/* 16px-24px */
	--font-size-18px:clamp(0.813rem, 0.708rem + 0.45vw, 1.125rem);/* 13px-18px */
	--font-size-24px:clamp(1rem, 0.833rem + 0.72vw, 1.5rem);/* 16px-24px */
	--font-size-28px:clamp(1.313rem, 1.167rem + 0.63vw, 1.75rem);/* 21px-28px */
	--font-size-30px:clamp(1rem, 0.403rem + 1.59vw, 1.875rem);/* 16px-30px */
	--font-size-32px:clamp(1.5rem, 1.159rem + 0.91vw, 2rem);/* 24px-32px */
}


/*-------------------------*/
/*Reset*/
html{margin:0; padding:0; border:0;scroll-behavior: smooth;}
*{border:0; box-sizing: border-box; margin:0; padding:0;box-sizing: border-box;}
body{
color: var(--tx_base-color-black);
font-family: var(--font_main_sans);
line-height:1;
-webkit-text-size-adjust:100%;
width:100%;
scroll-behavior: smooth;
}
h1,h2,h3,h4,h5,h6,p,span,table,a,img,dl,dt,dd,ul,li,ol,iframe,nav,small{
margin:0;	padding:0; font-size:100%;font-weight:normal; background:transparent;
vertical-align:baseline; border:none;}
main img{vertical-align:top;width: 100%;}
ol, ul{list-style:none; list-style-type:none;}
a:link{color:var(--base-color-pink); text-decoration:none;}
a:visited{color:var(--base-color-pink); text-decoration:none;}
a:hover{color:var(--dark_turquoise); text-decoration:none;}
.onlyPc{}
.onlySp{display: none;}
.inline_block{display: inline-block;font-weight: inherit;text-indent: initial;}
/*-------------スクリーンリーダー専用（非表示）------------*/
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}

/*-------------------------*/
#sns_button_pc{margin: 15px auto;min-height: 50px; width: 120px;}
#sns_button_pc .btn_sns img{height: 50px;width: 50px;margin: 0 5px;}

.bg-fixed::before {
content:"";
display:block;
position:fixed;
top:0;
left:0;
z-index:-1;
width:100%;
height:100vh;
background-repeat:no-repeat;
background-position:50% 100%;
/* background: url(../img/bg2.jpg) center; */
background: url(../img/bg_all_pc.jpg) center;
background-size:cover;
}
.detail {
    margin-top: -1em;
}



.bg-white {
    background-color: #d4eefd;
	padding: 0 auto min(10vw, 5em);
	display: grid;
	background-image: url(../img/bg1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}
/*-- header -----------------------
#header{min-height: 94px;}*/

/*-- Pan_box ----------------------*/
#pan_box{
background:var(--base-color-blue);
border-top: solid 0.1em rgba(255, 255, 255, 0.5);
color:#fff;
font-size: min(2.6vw,0.8em);
min-height: 24px;
padding: 8px 0 8px 10px;
width: 100%;
}
#pan_box .in {
color: #fff;
display: flex;
gap: 0.5em;
margin: 0 auto;
max-width: 1400px;
white-space: nowrap;
}
#pan_box .in li + li::before {
content: ">";
padding-right: 0.5em;
}
#pan_box a{
color:#fff;
text-decoration:none;
}
#pan_box a:hover{color: #fffd4b;}

/*-- SNS ----------------------*/
#sns_button_sp{
display: none;
}
.sns{
width:30%;
height:40px;
margin: 20px auto;
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}
.sns a{
display:block;
width:40px;
height:40px;
margin:0 !important;
}
.sns img{
width:40px !important;
height:40px !important;
margin:0 !important;
}

/*-- footer/PC	-------------------*/
footer{
background: #333;
clear: both;
font-size: 0.9em;
line-height: 1.5em;
margin-top: 30px;
min-height: 640px;
text-align: center;
}
footer .mx_copyright{
color:#fff;
padding: 8px 0;
}
footer .mx_copyright a{
color:#fff;
text-decoration:underline;
}
footer a{
color: #d00;
text-decoration: none;
}

/*-- 緊急テキスト ----------------------*/
#rp_textbox{
background: rgba(255,255,255,0.7);
border: #928484 solid 1px;
font-size: 0.9em;
margin: 20px auto;
padding: 8px;
line-height: 1.6em;
text-align: left;
max-width: 960px;
width: 90%;
}
#rp_textbox .pop_text{
background:#fff;
-webkit-border-radius: 2px;-moz-border-radius: 2px;border-radius: 2px;
border: #c9c9c9 solid 1px;
font-size:0.9em;
line-height:1.5em;
margin:0 auto;
padding:20px;
text-align:left;
max-width: 900px;
word-break: break-all;
width:75%;
}
#rp_textbox .pop_text .popup_title{
border-bottom: #999 dotted 1px;
font-size:1.1em;
line-height:1.5em;
font-weight:bold;
margin:0 0 15px 0;
padding-bottom:5px;
text-align:center;
width:100%;
}
#rp_textbox .ema_img {
display: block;
text-align: center;
width: 100%;
}
#rp_textbox .ema_img img{
margin: 0 auto 10px;
max-width: 100%;
}
#rp_textbox a{
color:#d00;
text-decoration:underline;
}

/* 動画囲いタグ ----------------------　<div class="video-container"></div> */
.video-container {
position: relative;
aspect-ratio: 16 / 9;
max-width: var(--max-width-contents);
margin: 0 auto 1em;
}
.video-container iframe {
height: 100% !important;
position: absolute;
right: 0;
left: 0;
top: 0;
bottom: 0;
width: 100% !important;
/* border-radius: min(3vw, .6em); */
}

/*-- google翻訳 ----------------------*/
.skiptranslate.goog-te-gadget,
a.goog-logo-link{color:#fff !important;}

/*-- ローディング ----------------------*/
#loader{background-color: #d4eefd; position:fixed;width:100%;height:100%;z-index: 1000;}/*背景*/
.loader,.loader:before,.loader:after {
background: var(--base-color-skyblue);
-webkit-animation: load1 1s infinite ease-in-out;
animation: load1 1s infinite ease-in-out;
height: 4em;
width: 1em;
top: 50%;
}
.loader {
color: #ccc;
text-indent: -9999em;
margin: auto;
position: relative;
font-size: 11px;
-webkit-transform: translateZ(0);-ms-transform: translateZ(0);transform: translateZ(0);
-webkit-animation-delay: -0.16s;animation-delay: -0.16s;
position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
}
.loader:before,.loader:after {
position: absolute;
top: 0;
content: '';
}
.loader:before {
left: -1.5em;
-webkit-animation-delay: -0.32s;animation-delay: -0.32s;
}
.loader:after {
left: 1.5em;
}
@-webkit-keyframes load1 {
	0%,80%,100% {
	box-shadow: 0 0;
	height: 4em;
	}
	40% {
	box-shadow: 0 -2em;
	height: 5em;
	}
	}
	@keyframes load1 {
	0%,80%,100% {
	box-shadow: 0 0;
	height: 4em;
	}
	40% {
	box-shadow: 0 -2em;
	height: 5em;
	}
}

.pconly {
	display: block;
}
.sponly {
	display: none;
}

@media screen and (max-width: 800px){
.pconly {
	display: none;
}
.sponly {
	display: block;
}
}
/* -- main ------------------------------------------------------*/
main {
	overflow: clip;
}
.kv {
	background-image: url(../img/bg1.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	margin: auto;
	position: relative;
	text-align: center;
}
.kv img {
	height: auto;
	max-width: 900px;
	/* max-width: 1400px; */
}

.oa_time {
	font-size: min(8vw, 2em);
	font-weight: bold;
}
.contents .oa_time {
	font-size: min(5vw, 1.2em);
}
.link {
	margin-top: 1rem;
}
.link img {
	width: min(70%, 420px);
}
small.copy {
	font-size: 0.8rem;
	text-align: center;
	display: block;
	margin: min(10vw, 6em) auto;
	transform: rotate(0.05deg);
}

.streamingbox{
	background-color: #ebf4f7;
}

.date_tx {
	position: relative;
	font-family: var(--font_main_sans);
	font-size: clamp(.5rem, .6rem + 2vw, 2.5rem);
	font-weight: var(--font-weight-bold);
	text-align: center;
	letter-spacing: .4rem;
}

.date_tx span {
	font-family: var(--font_main_sans-serif);
	font-weight: var(--font-weight-black);
	font-size: clamp(1.875rem, 1.023rem + 3vw, 6rem);
	letter-spacing: 0rem;
	color: var(--base-color-blue);
	padding-right: min(.4vw, .5em);
}

.date_tx::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: min(-1.5vw, -1.8em);
    transform: translateX(-50%);
    /* width: min(80vw, 21em); */
	width: min(80vw, 16em);
    height: 3.5em;
    background-image: url(../img/datemarker.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% auto;
    z-index: -1;
    opacity: .3;
}
.start_date{
	text-align: center;
	font-size: clamp(1rem, 0.392rem + 1.5vw, 4rem);
	font-weight: bold;
	letter-spacing: .3rem;
	margin: 0 auto min(8vw, .8em);
}
@media screen and (max-width: 600px){
	.start_date {
		letter-spacing: .2rem;
	}
}

.date_unit {
	padding: min(3vw, 1.5em);

}

/*-----------------------------------*/
/* nav */
#area-menu {
	background: var(--base-color-blue);
	font-size: 1.5em;
	position: sticky;
	top: 0;
	z-index: 998;
	padding: min(3vw, 0.8em) 0 min(3vw, 0.6em);
}
#area-menu ul {
	display: flex;
	flex-wrap: wrap;
	width: min(92vw, 1200px);
	justify-content: center;
	margin: auto;
	align-items: center;
}
#area-menu img {
	width: 100%;
}
#area-menu ul li {
	height: clamp(50px, 10vw, 3em);
	position: relative;
	width: calc(100% / 9);
	border-right: 1px solid #ffffff94;
}
#area-menu ul li a:hover{
	opacity: .6;
	transition: .3s;
}

#area-menu ul li:last-child {
	border-right: 1px solid #ffffff94;
}

#area-menu ul li:first-child {
	border-left: 1px solid #ffffff94;
}

@media screen and (max-width: 700px){
	#area-menu ul li {
	width: calc(100% / 5);
	}
	#area-menu ul {
		width: unset;
	}
	/* #area-menu ul li:nth-child(10) {
    border-right: none;
	} */
	#area-menu ul li:nth-child(1) {
    border-left: none;
	}
	#area-menu ul li:nth-child(6) {
    border-left: none;
	}

	#area-menu ul li:nth-child(-n+5) {
    border-bottom: 1px solid #ffffff94;
	padding-bottom: 12%;
	}
	#area-menu ul li:nth-child(n+6):nth-child(-n+10) {
	padding-top: 2%;
	padding-bottom: 10%;
	}
	#area-menu ul li:nth-child(6) {
	border-left: 1px solid #ffffff94;
	}
	.date_tx {
	padding-right: 0rem;
	letter-spacing: .1rem;
	}
	.start_date {
	margin-bottom: 3%;
	}
	.btn_top small, .btn_intro small, .btn_story small, .btn_schedule small, .btn_news small {
    bottom: 4px!important;
	}
	#area-menu ul li:last-child {
	border-right: 1px solid #ffffff94;
	}
	#area-menu img {
    padding: 10% 0 0;
	}
	#area-menu img:nth-child(1) {
		padding: 0;
	}
}


.btn_top a,
.btn_intro a,
.btn_story a,
.btn_schedule a,
.btn_news a,
.btn_cast_staff a,
.btn_chart a,
.btn_music a,
.btn_original a,
.btn_goods a,
.btn_bluray a
{
	color: #fffaf6;
	font-size: clamp(14px, 2.8vw, 0.7em);
	font-weight: bold;
	text-align: center;
	display: block;
	line-height: 1.5rem;
}

.btn_top span,
.btn_intro span,
.btn_story span,
.btn_schedule span,
.btn_news span,
.btn_cast_staff span,
.btn_chart span,
.btn_music span,
.btn_original span,
.btn_goods span,
.btn_bluray span {
	height: clamp(24px, 6vw, 2em);
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 10%;
}
@media screen and (max-width: 600px){
.btn_top a,
.btn_intro a,
.btn_story a,
.btn_schedule a,
.btn_news a,
.btn_cast_staff a,
.btn_chart a,
.btn_music a,
.btn_original a,
.btn_goods a,
.btn_bluray a
{
	color: #fffaf6;
	font-size: clamp(12px, 2.8vw, 0.7em);
	font-weight: bold;
	text-align: center;
	display: block;
	line-height: 1rem;
}
}

.btn_top small,
.btn_intro small,
.btn_story small,
.btn_schedule small,
.btn_news small,
.btn_cast_staff small,
.btn_chart small,
.btn_music small,
.btn_original small,
.btn_goods small,
.btn_bluray small {
	display: block;
	font-size: 0.6em;
	margin-top: 0.25em;
	transform: rotate(0.05deg);
	position: absolute;
	bottom: 0;
	width: 100%;
	letter-spacing: .1rem;
}
.nav-edge {
	display: block;
	width: 100%;
	fill: var(--dark_turquoise);
	position: absolute;
	pointer-events: none;
}


/* =========================
   Catch ribbon
========================= */

.catch {
	background: #f7f0f3;
	background-image: linear-gradient(175deg, rgb(255 223 226), rgb(255 234 236 / 20%), rgb(255 234 236 / 20%), rgb(255 234 236 / 20%), rgb(255 234 236 / 20%), rgb(255 223 226));
	color: #6d5c44;
	text-align: center;
	font-weight: bold;
	font-size: min(6vw, 2.5em);
	overflow: hidden;
	width: 100%;
	padding: 0.2em;
	text-shadow: none;
}

.catch p {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.25em;
}
.name_cross {
	align-items: flex-start;
	gap: 0.25em;
	display: flex;
	flex-wrap: nowrap;
}
.name_cross:has(.group) {
	margin-top: min(3vw, 0.3em);
}
.catch .name {
	display: inline-block;
	font-weight: bold;
}

.catch .group {
	font-size: min(2.6vw, 0.5em);
	display: block;
	margin: min(1vw, 0.5em) 0;
}

.catch .cross {
	font-weight: bold;
}

.catch .w {
	margin-left: 0.25em;
	white-space: nowrap;
	font-size: min(9vw, 2em);
	font-weight: bold;
	color: #3c96b0;
	transform: rotate(-10deg);
	position: relative;
	top: max(-2vw, -0.13em);
	text-shadow: 4px 4px 0px rgb(255 255 255);
}

.excl{
	font-size: 1.2em;
}

/* =========================
   Logo
========================= */

.logo {
	background: transparent;
	margin: min(10vw, 4em) auto;
	text-align: center;
	width: min(88vw, 48em);
}

/* =========================
   Info
========================= */

.info {
	text-align: center;
	color: #666;
	font-size: min(5vw, 2em);
	font-weight: bold;
	position: relative;
	padding: min(2vw, 0.5em);
	background: rgb(255 255 255 / 70%);
}

.time, .date {
	padding: min(5vw, 0.5em);
}

.info .date, .info .date span, .info .time, .info .time span {
	font-weight: bold !important;
}

/* 強調数字 */
.info .is-em {
	font-size: 1.4em;
	font-family: "Dancing Script", cursive;
	margin-right: 0.1em;
}

.info .m.is-em {
	color: #ffffff;
	border-radius: 62% 38% 63% 37% / 40% 60% 40% 60%;
	background-color: #2d96b2;
	padding: 0 0.3em 0.1em;
	line-height: 1 !important;
	text-shadow: none;
}

.info .d.is-em {
	color: #ffffff;
	border-radius: 66% 44% 58% 56% / 46% 55% 47% 56%;
	background-color: #e75d6b;
	padding: 0 0.3em 0.1em;
	line-height: 1 !important;
	text-shadow: none;
}
.info .date .w {
	color: #ffffff;
	border-radius: 62% 38% 63% 37% / 40% 60% 40% 60%;
	background-color: #918778;
	padding: 0 0.3em 0.1em;
	line-height: 1 !important;
	text-shadow: none;
	margin-left: 0.2em;
	font-weight: lighter !important;
	font-family: "Zen Kaku Gothic Antique", sans-serif;
}

.info .h.is-em {
	color: #ffffff;
	border-radius: 48% 44% 62% 40% / 41% 49% 40% 49%;
	background-color: #928777;
	padding: 0 0.3em 0.02em;
	line-height: 1 !important;
	text-shadow: none;
}

.info .min.is-em {
	color: #ffffff;
	border-radius: 60% 45% 73% 43% / 56% 56% 48% 60%;
	background-color: #928777;
	padding: 0.1em 0.2em 0.1em;
	line-height: 1 !important;
	text-shadow: none;
}

.info .note li {
	margin: 0.5em;
	font-size: 0.8em;
	line-height: 1.2em;
	display: flex;
	justify-content: center;
	gap: 0.2em 1em;
	flex-wrap: wrap;
}
.info .note li strong.station {
	width: 7.5em;
	text-align: right;
}
.station small {
	font-size: 0.9em;
	font-weight: lighter;
}
/* =========================
   Streaming
========================= */

#area-link ul {
	display: flex;
	gap: min(4vw, 1.2em);
	background: transparent;
	box-shadow: none;
	/* margin-bottom: min(5vw, 5em); */
}

.sb-area-link {
	margin-bottom: 3%;
}

main section {
	text-shadow: min(0.5vw, 0.1em) min(0.5vw, 0.1em) min(1vw, 0.5em) rgb(255 255 255 / 30%);
}

/* .area-box {
	background-color: var(--box-bgcolor-white);
	box-shadow: var(--box-box-shadow);
	width: var(--max-width);
	margin: 0 auto min(15vw, 5em);
	display: flow-root;
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 1s ease, transform 1s ease;
} */

.area-box {
	margin: 0 auto min(15vw, 5em);
    width: var(--max-width);
    background-color: #ffffffe0;
    position: relative;
	box-shadow: #1d98e26e 6px 6px;
    border-width: 3px;
    border-image: initial;
	border-radius: min(5vh, 3em);
    /* border-style: solid; */
    /* border-color: #1d98e2; */
    /* padding: 2em 32px 0 0; */
    /* margin: 0px auto 3em; */
}

/* 表示されたら */
.area-box.is-show {
	opacity: 1;
	transform: translateY(0);
}
.area-box h2 {
	color: var(--dark_turquoise);
	font-size: min(6.5vw, 3em);
	font-weight: bold;
	padding: min(5vw, 1.6em) 0;
	padding-top: min(8vw, 2em);
	text-align: center;
	max-width: min(70vw, 500px);
	margin: min(6vw, 1em) auto;
}
.area-box h2 span {
	display: block;
	font-size: 0.6em;
	margin-top: 0.4em;
}



.decoframe {
	position: relative;
	z-index: 10;
}

.deco1 {
	position: absolute;
	top: 0;
	left: 0;
	width: clamp(140px, 31%, 300px);
	transform: translate(-38%, -14%);
	z-index: 0;
}

.deco2,.deco3 {
	position: absolute;
	right: 0;
	bottom: 0;
	width: clamp(120px, 23%, 280px);
	transform: translate(59%, 20%);
	z-index: 1;
	/* filter: sepia(1); */
}

.area_bg {
	position: relative;
	overflow-x: hidden;
}

@media screen and (max-width: 1100px){
.deco1 {
    position: absolute;
    top: 0;
    left: 0;
    width: clamp(140px, 28%, 300px);
    transform: translate(-31%, -36%);
    z-index: 0;
	}
.deco2,.deco3 {
        position: absolute;
        right: 0;
        bottom: 0;
        width: clamp(100px, 29%, 280px);
        /* transform: translate(41%, 62%); */
		transform: translate(41%, 86%);
        z-index: 1;
	}
}
@media screen and (max-width: 600px){
.deco1 {
	transform: translate(-25%, -5%);
	}
.deco2,.deco3 {
		transform: translate(17%, 37%);
	}
}

/* =========================
   見出し
========================= */
:root {
  --purple: #00a3ff;
  --violet: #138eff;
  --pink: #0065ff;
  --tx_base-color-black: #333;
}

/* グラデーション */
@keyframes background-pan {
  from { background-position: 0% center; }
  to { background-position: -200% center; }
}

h1 {
  text-align: center;
  padding: min(7vw, 3em) 0 min(6vw, 2em);
}
/* ---------- */
.fade-in {
	opacity: 0;
	transform: translateY(30px);
	transition:
		opacity 0.9s ease,
		transform 0.9s ease;
}

.fade-in.is-visible {
	opacity: 1;
	transform: translateY(0);
}


/* ---------------- */
/* SVG */
/* ---------------- */

.subtitle_deco {
    width: 180px;
    margin: auto;
}

.subtitle_deco svg {
	height: auto;
	overflow: visible;
	margin-top: -5%;
}

.fill-path {
	fill: var(--base-color-yellow);
}


/* 初期状態 */
.clip-rect {
	width: 0;
}


/* 表示時に描画 */
.fade-in.is-visible .clip-rect {
	animation: revealLine 0.45s ease-out forwards;
	animation-delay: 0.2s;
}

@keyframes revealLine {
	to {
		width: 210px;
	}
}


@media screen and (max-width: 600px){
	.subtitle_deco {
    width: 140px;
	}
}


/* ---------- */
.magic-text {
font-size: clamp(2rem, 2.2rem + 3vw, 7rem);
font-family: var(--font_subtitle);
color: var(--base-color-skyblue);
background-size: 200%;
-webkit-background-clip: text;
display: inline-block;
transform: rotate(-7deg);
letter-spacing: .1rem;
/* -webkit-text-fill-color: transparent; */
/* filter: drop-shadow(0 0 10px #fff); */
/* background: linear-gradient(to right, var(--purple), var(--violet), var(--pink), var(--purple)); */
}

.heading__sub{
	font-weight: var(--font-weight-bold);
	margin-top: -10px;
    display: block;
}



/* =========================
   内容
========================= */

.contents {
	/* margin: min(5vw, 4.5em); */
	/* margin: min(5vw, 4.5em) min(3vw, 4.5em); */
	font-size: min(3.4vw, 1.3em);
	line-height: min(8vw, 1.8em);
	text-align: center;
	padding: min(9vw, 3em) min(6vw, 3em) min(9vw, 3em);
}

.contents2 {
	margin: 0 min(5vw, 4.5em) min(5vw, 4.5em);
	font-size: min(3.4vw, 1.3em);
	line-height: min(8vw, 1.8em);
	text-align: center;
}

#area-pr {
	width: var(--max-width);
	margin: min(10vw, 5em) auto;
	display: flow-root;
}
.info h3 {
	background-color: #ffff2c;
	display: inline-block;
	font-size: 1.2em;
	position: absolute;
	top: -1.4em;
	left: -0.5em;
	padding: 0.25em 0.25em 0.25em 0.5em;
	transform: rotate(-5deg);
}
.contents p {
	line-height: 1.5;
    text-align: left;
    margin: 0 auto;
	font-size: var(--font-size-16px);
	font-weight: var(--font-weight-regular);
}

.p_gap { margin-top: 1.2em; }
.ind { text-indent: 1em; }
.txt-lg { font-size: 1.1em; }
.txt-sm { font-size: 0.875em; }
.txt-bold { font-weight: bold; }
.txt-center { text-align: center !important; }
.txt-blue { color: #; }
.marker-yellow, .marker-pink, .marker-blue, .marker-orange, .marker-green {
	background-position: left bottom;
	background-size: 100% 0.8em;
	background-repeat: no-repeat;
	font-weight: bold;
	padding: 0 0.2em;
	text-shadow: none;
	color: #393939;
}

.ind img {
	max-width: min(60vw, 600px);
	max-height: 60vh;
	display: block;
	margin: min(3vw, 1em) auto 0;
	width: auto;
}



/* =========================
   Top
========================= */
/* お知らせ */

#area-news .box {
	margin-top: min(3vh, 2em);
}
.news_article_wrapp {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	max-width: 1000px;
	margin: 0 auto 40px;
}
.news_article_wrapp article,
#kiji_box01_inner01, #kiji_box01_inner02, #kiji_box02_inner01, #kiji_box02_inner02,
.item_thumb {
	flex: 0 0 calc(50% - 10px);
	background-color: var(--box-bgcolor-white);
	border-radius: min(2vh, 3em);
	overflow: hidden;	
    /* box-shadow: var(--box-box-shadow); */
	box-shadow: #1d98e26e 5px 5px;
}
.news_in_wrapp a {
	display: flex;
	align-items: start;
	font-size: min(3vw, 0.85em);
	gap: min(2.5vw, 0.8em);
	padding: min(3vw, .5em);
}
.contents2 .news_in_wrapp {
	display: flex;
	align-items: start;
	font-size: min(3vw, 0.85em);
	gap: min(2.5vw, 0.8em);
	padding: min(3vw, .5em);
}
.news_top_img {
	flex-shrink: 0;
	width: 30%;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background-color: #eeeeee;
	border-radius: min(1.6vh, 3em);
}

.news_top_img img {
	width: 100%;
	height: 100%;
	/* object-fit: contain; */
	object-fit: cover;
}
.news_top_text {
	margin: 0;
	line-height: 1.2em;
	width: 100%;
	/* font-size: var(--font-size-16px); */
	font-size: clamp(0.875rem, 0.815rem + 0.27vw, 1.063rem);
	color: var(--tx_base-color-black);
	font-weight: var(--font-weight-regular);
	text-align: left;
}

.news_top_text div {
	position: relative;
    border-bottom: 1px dashed var(--base-color-blue);
	margin-bottom: 2%;
}

.news_top_text p {
	position: relative;
    background-color: var(--base-color-blue);
    display: table;
    color: #fff;
    font-size: 13px;
    padding: .1% 3%;
    border-radius: 1vh 1vh 0 0;
    letter-spacing: .05rem;
}

.news_top_text span {
	position: absolute;
    display: block;
    margin-bottom: 6px;
    color: #ffffff;
    border-bottom: 1px dashed var(--base-color-blue);
    font-family: var(--font_main_sans-serif);
    font-weight: var(--font-weight-bold);
    text-align: left;
    padding: 1%;
    background-color: var(--base-color-blue);
    display: table;
    font-size: 14px;
}
.btnMore {
	display: inline-block;
    position: relative;
    cursor: pointer;
    padding: .8rem 3rem;
	margin: 30px auto min(3vh, 2em);
    border-radius: 50px;
    background-color: var(--base-color-pink);
    background-size: 150% auto;
    box-shadow: 0 4px 15px 0 #9fc4eb80;
    color: #fff !important;
    text-decoration: none;
    transition: .5s;
    max-width: 240px;
    padding-right: 60px;
}

.btnMore::after {
	position: absolute;
	top: 50%;
	right: 24px;
	width: 32px;
	aspect-ratio: 32 / 16;
	content: "";
	background-image: url(../img/btnicon.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transform: translateY(-50%);
}

.btnMore:hover {
	opacity: .8;
	transition: .3s;
}




/* 次回予告 */
.top_story_text {
	max-width: var(--max-width-contents);
	margin: 0 auto;
	text-align: center;
	padding: min(3vw, .5em) 0;
}
.onairdate {
	font-weight: bold;
	justify-content: center;
	gap: 16px;
}

.onairdate span {
	font-size: 100px;
	color: var(--base-color-blue);
}
.oa_nd {
	display: flex;
	align-items: center;
	font-family: var(--font_main_sans-serif);
	margin-bottom: min(3vw, 5em);
}
.ds {
	text-align: left;
}
.ds div {
	font-size: clamp(0.75rem, 0.589rem + 0.71vw, 1.25rem);
	margin: min(3vw, .2em) 0 0;
	font-weight: bold;
}
.num {
	position: relative;
	font-size: min(16vw, 3.6em);
	font-family: var(--font_subtitle);
	font-weight: normal;
	color: var(--base-color-blue);
	margin-right: 5%;
  	z-index: 1;
}
.num::after {
	content: "";
    position: absolute;
    left: -1rem;
    bottom: -1rem;
    width: min(20vw, 5em);
    height: 5rem;
    background-image: url(../img/marker.svg);
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
    transform: rotate(-6deg);
}

@media screen and (max-width: 600px){
	.num::after {
		bottom: -2.5rem;
	}
}

#topstory_in .subtitle {
	font-size: var(--font-size-30px);
	font-weight: bold;
	margin: min(3vw, .2em) 0!important;
	display: inline-block;
}

.arasuji {
	line-height: 1.5;
	text-align: left;
	margin: 0 auto;
	font-size: var(--font-size-16px);
}

@media screen and (max-width: 600px){
.num::after {
  left: -.8rem;
}
}
/* =========================
   Intro
========================= */
.intro01 {
	max-width: 500px;
	margin: auto;
}
.intro_photo03 {
	display: flex;
	gap: 1.5%;
}
.intro_photo03 img  {
	width: 100%;
	margin-bottom: 3%;
}
.center_actorname {
	margin: auto;
    display: flex;
}
.intro {
    font-size: min(3.4vw, 1.3em);
    line-height: min(8vw, 1.8em);
    text-align: center;
	padding: min(9vw, 2em) min(9vw, 2em) min(9vw, 1.5em);
}

.intro01 {
	display: flex;
	gap: 2%;
}
.intro02 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .2rem 1%;
}

.intro02 li {
	width: calc((100% - 4%) / 5);
}

@media screen and (max-width: 1000px){
.intro02 li {
	width: calc((100% - 2%) / 3);
}

}
/* ----------------- */
.ribbon1 {
    display: inline-block;
    position: relative;
	height: 2em;
    /* line-height: 3em; */
    text-align: center;
    padding: 2px 0 1px;
    font-size: 18px;
    background: #bb005d;
    color: #FFF;
    box-sizing: border-box;
    min-width: 260px;
}

.ribbon1 h3 {
  margin: 0;
  padding: 0 30px;
  border-top: dashed 1px #FFF;/*上の破線*/
  border-bottom: dashed 1px #FFF;/*下の破線*/
  line-height: 46px;
}

.ribbon1::before,
.ribbon1::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    z-index: 1;
}

.ribbon1::before {
    top: 0;
    left: 0;
    border-width: 1em 0 1em 0.8em;
    border-style: solid;
    border-color: transparent transparent transparent #ffe9f2;
}

.ribbon1::after {
    top: 0;
    right: 0;
    border-width: 1em 0.8em 1em 0;
    border-style: solid;
    border-color: transparent #ffe9f2 transparent transparent;
}

/* ----------------- */
.ribbon2 {
    display: inline-block;
    position: relative;
    height: 2em;
    /* line-height: 3em; */
    text-align: center;
    padding: 2px 0 1px;
    font-size: 18px;
    background: #958800;
    color: #FFF;
    box-sizing: border-box;
	min-width: 260px;
}

.ribbon2 h3 {
  margin: 0;
  padding: 0 30px;
  border-top: dashed 1px #FFF;/*上の破線*/
  border-bottom: dashed 1px #FFF;/*下の破線*/
  line-height: 46px;
}

.ribbon2:before, .ribbon2:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon2:before {
  /*左端の山形*/
  top: 0;
  left: 0;
  border-width: 1em 0 1em 0.8em;
  border-color: transparent transparent transparent #fffad8;
  border-style: solid;
}

.ribbon2:after {
  /*右端の山形*/
  top: 0;
  right: 0;
  border-width: 1em 0.8em 1em 0;
  border-color: transparent #fffad8 transparent transparent;
  border-style: solid;
}
/* ----------------- */
@media screen and (max-width: 600px){
.intro {
	/* padding: min(9vw, 4.5em) min(4vw, 3em) min(9vw, 4.5em); */
	padding: min(9vw, 4.5em) min(4vw, 3em) min(2vw, 4.5em);
}
.intro_photo03 {
	display: block;
}
}

.intro p {
	line-height: 1.5;
    text-align: left;
    margin: 0 auto;
	font-size: clamp(0.875rem, 0.754rem + 0.54vw, 1.25rem);/* 14px-20px */
	font-weight: var(--font-weight-regular);
}

.intro_photo{
	max-width: 660px;
	margin: auto;
	box-shadow: 0px 5px 15px 0px rgb(200 200 200 / 12%);
	border: solid 1vh #fff;
	position: relative;
    z-index: 5;
}

#intro h4 {
	font-family: var(--font_main_sans-serif);
	font-weight: var(--font-weight-black);
	font-size: clamp(1.375rem, 0.973rem + 1.79vw, 2.625rem);/* 22px-42px */
    line-height: min(7vw, 2.5rem);
	color: var(--base-color-blue);
	-webkit-background-clip: text;
	font-style: oblique;
	text-align: center;
}

.serif {
	font-family: var(--font_main_sans-serif);
	font-weight: var(--font-weight-black) !important;
}
.intro .tx_left {
	text-align: left;
	text-align: justify;
}

.intro .tx_center {
	text-align: center;
	line-height: 1.7;
	/* font-size: clamp(1rem, 0.92rem + 0.36vw, 1.25rem); */
	color: #194d85;
	font-weight: var(--font-weight-regular)!important;
	font-size: clamp(0.875rem, 0.754rem + 0.54vw, 1.25rem);
}
.intro .tx_center2 {
	text-align: center!important;
}
/* -------テキストのサイズ・色指定----- */

.grade-tx {
	font-weight: var(--font-weight-black);
	display: inline-block;
	background-color: #ffffff;
	background-image: 
		url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20200%20200%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cfilter%20id%3D%22noiseFilter%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.9%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url(%23noiseFilter)%22%20opacity%3D%220.46%22%2F%3E%3C%2Fsvg%3E"),
		linear-gradient(90deg, rgba(0, 8, 250, 1) 0%, rgba(0, 113, 199, 1) 50%, rgba(0, 145, 255, 1) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	font-size: clamp(1.25rem, 1.009rem + 1.07vw, 2rem);
}
.tx_catch {
	font-weight: var(--font-weight-regular);
	text-align: center!important;
	font-size: clamp(1rem, .9rem + 0.71vw, 1.75rem) !important;
	color: #0c3787;
}

.tx_catch_b {
	font-weight: var(--font-weight-bold)!important;
	text-align: center!important;
	font-size: clamp(1rem, .8rem + 0.8vw, 1.8rem) !important;
	color: #d20088;
}




.double {
	border-bottom: double #ffc3e2 4px;
	position: relative;
	line-height: 1.8rem;
}
.dkpink {
	color: #ffffff!important;
	font-weight: 900;
}

.deko-uso {
    content: "";
    display: inline-block;
    background-image: url(../img/deco-uso.png);
	width: 3.5em;
    height: -0.1em;
    top: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    color: #ab00ff;
    text-shadow: 0px 0px 6px #ffffff;
    filter: hue-rotate(166deg);
	background-position-y: .2em;
}

.deko-heart_koi {
	content: "";
    display: inline-block;
    background-image: url(../img/deco-heart_koi.png);
	width: 2.6em;
    height: 1.8em;
    top: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
	background-position-y: 0px;
    color: #be005f;
    text-shadow: 0px 0px 6px #ffffff;
	padding: .7%;
}

.deco_chon{
	position: relative;
	display: inline-block;
}
.deco_chon::after {
	content: "";
	display: inline-block;
	width: 30px;
	height: 20px;
	background-image: url("../img/deco-chon.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
    right: -20px;
}

.deco_heart::before {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;

    background-image: url("../img/deco-heart01.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

@media screen and (max-width: 600px){
	.deco_heart::before {
    width: 15px;
    height: 15px;
	}
.deco_chon::after {
    width: 20px;
    height: 13px;
    right: -13px;
	}
}

.s-tx {
	font-size: clamp(1rem, 0.92rem + 0.36vw, 1.25rem);/* 16px-20px */
}

.tx-l {
	font-size: clamp(1rem, .8rem + 0.54vw, 1.5rem)/* px-24px */
}

.tx-ll {
	font-size: clamp(1.3rem, 1.089rem + 0.71vw, 1.75rem);/* 20px-28px */
}

.tx-3l {
	font-size: clamp(1.25rem, 1.009rem + 1.07vw, 2rem);
	font-weight: var(--font-weight-black);	
}

.tx-3l2 {
	font-size: clamp(.9rem, 0.65rem + 1.34vw, 2rem);
}

.syuen {
	padding-bottom: 1%;
    display: block;
}

.bold {
font-weight: var(--font-weight-bold)!important;
}

.black {
	font-weight: var(--font-weight-black);
}

/* .black {
	font-weight: var(--font-weight-black);
} */

.blue {
	color: var(--base-color-skyblue);
}

.skyblue {
	color: #2969cb;
}

.green {
	color: #008031;
}

.s-bg {
	background-color: #d20086;
	padding: .3% .5% .5% 1%;
	display: inline-block;
}

.black-tx-color {
	color: var(--tx_base-color-black);
}




.pink {
	color: var(--base-color-pink);
}

.darkpink {
	color: #c70038;
}

.orange {
	color:#7a3b00;
}

.darkblue {
	color:#004c94c4;
}

.green {
	color: #008031;
}

.purple {
	color: #72006c;
}

.darkred {
	color: #790000;
}

.darkprange {
	color: #8f7500;
}

.tasuku {
color: #337799;
}

.makoto {
color: #6C1C2A;
}

.riku {
color: #547953;
}
.daon {
color: #1f7564;
}
.ruito {
color: #aa531d;
}
.hinata {
color: #e9003f;
}
.ao {
color: #042b86;
}

.y-marker {
	background:linear-gradient(transparent 60%, #ff6 60%);
	display: inline-block;
}

.bgpink2 {
	background-color: #ffd1d1;
	padding: 0 .5%;
}

.bgblue {
	background-color: #d1f0ff;
    padding: 0 .5%;
}

.bgpink {
	position: relative;
	padding: min(3.3vh, 3em) min(3.3vh, 3em);
	border-radius: 2vh;
}


.bgpink::after {
content: "";
top: 0;
bottom: 0;
left: 0;
right: 0;
filter: blur(7px);
background-color: #ffe9f2;
display: block;
position: absolute;
z-index: -1;
}

.bgyellow {
	position: relative;
	padding: min(3.3vh, 3em) min(3.3vh, 3em);
    border-radius: 2vh;
}

.bgyellow::after {
	position: relative;
	content: "";
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	filter: blur(7px);
	background-color: #fff9c9ba;
	display: block;
	position: absolute;
	z-index: -1;
}

.yellow-bg {
	padding: .5% 1% .1% 1%;
	display: inline-block;
	background-color: #ffffff;
	background-image: 
		url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20200%20200%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cfilter%20id%3D%22noiseFilter%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.9%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url(%23noiseFilter)%22%20opacity%3D%220.46%22%2F%3E%3C%2Fsvg%3E"),
		linear-gradient(90deg, rgba(0, 129, 250, 1) 0%, rgba(8, 179, 221, 1) 50%, rgba(0, 225, 255, 1) 100%);
		color: #fff;
}

.pink-bg {
	padding: .5% 1% .1% 1%;
    display: inline-block;
	color: #fff;
	background-image: 
		url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20200%20200%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cfilter%20id%3D%22noiseFilter%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.9%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url(%23noiseFilter)%22%20opacity%3D%220.41%22%2F%3E%3C%2Fsvg%3E"),
		linear-gradient(90deg, rgba(181, 0, 194, 1) 0%, rgb(245, 44, 181) 50%, rgb(222, 103, 224) 100%);
		/* linear-gradient(90deg, rgba(181, 0, 194, 1) 20%, rgba(196, 49, 149, 1) 50%, rgba(172, 82, 173, 1) 100%); */
	filter: hue-rotate(45deg);
}

.pink-bg2 {
	padding: 0% 1% .1% 1%;
    display: inline-block;
	color: #fff;
	background-image: 
		url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%20200%20200%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cfilter%20id%3D%22noiseFilter%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%220.9%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url(%23noiseFilter)%22%20opacity%3D%220.41%22%2F%3E%3C%2Fsvg%3E"),
		linear-gradient(90deg, rgba(181, 0, 194, 1) 0%, rgb(245, 44, 181) 50%, rgb(222, 103, 224) 100%);
	filter: hue-rotate(45deg);
}

@media screen and (max-width: 600px){
	.yellow-bg {
    padding: 1% 3% 1% 2%;
    margin: auto;
	}
	.pink-bg {
	padding: 1% 3% 1% 2%;
    margin: auto;
	}
}

.intro_box {
	background-color: #fffbdf;
	padding: 3%;
	border-radius: 2vh;
}

.intro_subttl {
    font-family: 'Noto Sans JP', serif;
    letter-spacing: 0.1em;
	color: #ffffff;
    font-weight: var(--font-weight-bold);
    text-align: center!important;
    /* margin-bottom: 24px; */
    font-size: clamp(1rem, 0.7rem + 1.25vw, 1.5rem) !important;
	display: block;
	line-height: 1.8rem !important;
	padding: 0 2rem;
}





/* =========================
   STORY
========================= */

#area-story .subtitle {
	font-size: var(--font-size-30px);
	font-weight: bold;
	margin: min(3vw, .2em) 0 0 min(-1vw, -.5em);
	display: inline-block;
}

h5 {
	font-style: italic;
    font-family: var(--font_main_sans-serif);
    font-weight: var(--font-weight-black);
    font-size: clamp(1rem, 0.392rem + 2vw, 2rem);
    line-height: min(7vw, 3rem);
    margin-top: 5%;
    background: linear-gradient(0deg, #4158D0, #0f63e0 30%, #00c6f5);
    background: -webkit-linear-gradient(0deg, #4158D0, #0f63e0 30%, #00c6f5);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

#blockStory {
	max-width: var(--max-width-contents);
	margin: 0 auto;
	text-align: center;
	/* padding: min(4vw, 1.2em) 0; */
}

/* 放送日・話数 */
#blockStory #num.inner {
	margin-bottom: 16px;
}

#blockStory .paddingtop {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	font-weight: bold;
	color: #333;
}

#blockStory .wasu {
	display: inline-block;
	padding: 0.5em;
	background: var(--dark_turquoise);
	color: #fff;
	border-radius: 0.5em;
	line-height: 1;
}

#blockStory .date {
	white-space: nowrap;
}

/* サブタイトル */
#blockStory .subtit {
	font-size: min(4.5vw, 1.4em);
	font-weight: bold;
	margin: 0 0 min(3vw, 1em);
	position: relative;
	display: inline-block;
}

#blockStory .subtit::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 4px;
	width: 100%;
	height: 10px;
	background: #e4f1fa;
	z-index: -1;
}

/* あらすじ本文 */
#blockStory .arasuji {
	line-height: 1.9;
	color: #333;
	text-align: left;
	margin: 0 auto;
}

#blockStory .arasuji p {
	margin: 0;
}

/* 画像エリア */
#blockStory .storyimg {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: min(3vw, 16px);
	margin-top: min(4vw, 1.5em);
	
}

#blockStory .storyimg img {
	width: 100%;
	height: auto;
	display: block;
	border: 1px solid var(--base-color-blue);
}

.lists {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
    gap: min(3vw, 16px);
    margin-top: min(4vw, 1.5em);
}

.link_on a,
.link_off a {
	position: relative;
	display: block;
}
.button {
	position: absolute;
    display: block;
    bottom: 0;
    right: 0;
    background-color: var(--base-color-blue);
    width: 36px;
	height: 36px;
    color: #fff;
    font-family: var(--font_subtitle);
    border-radius: 50px;
}

.thumb {
	box-shadow: 3px 3px 7px -2px #95a4b97a;
}

@media (max-width: 768px) {
#blockStory .storyimg {
grid-template-columns: repeat(4, 1fr);
}
.lists {
grid-template-columns: repeat(2, 1fr);
}
.button {
padding-top: .4rem;
}
}



/* =========================
   CAST&STAFF
========================= */
.cast_flex1 {
    display: flex;
    line-height: 1.3;
    margin: 0 0 3%;
    font-size: 1.3rem;
    text-align: center;
}

.cast_img {
    margin-right: 30px;
	flex: 1.3;
}
.cast_img img {
	border-radius: 12px;
	box-shadow: #32a4f56b 6px 6px;
}
.cast_tx {
	flex: 2;
}

.cast_flex {
    display: flex;
    align-items: baseline;
}

.cast_coment_p {
	font-size: var(--font-size-16px);
    text-align: left;
    margin-top: 5%;
}

.cast_coment_p_prof {
	font-size: .8rem!important;
	letter-spacing: .01rem;
	padding: min(3vw, 1em);
	border: 1px dashed #97cfdb;
	background-color: #e8fcff;
	border-radius: 12px;
}

.castbox_container ul li p:first-child {
    font-size: clamp(1rem, 0.92rem + 0.36vw, 1.25rem);/* 16px-20px */
    font-weight: var(--font-weight-bold);
	color: #314b89;
}

.smalltext {
	font-weight: var(--font-weight-regular);
}

.castbox_container ul li {
	margin-bottom: 10%;
}
.staffbox li {
	margin-bottom: 5%;
}

.cast_tx .cast_name {
    font-size: clamp(1.125rem, 0.944rem + 0.8vw, 1.688rem);/* 18px-27px */
    font-weight: 500;
	font-weight: var(--font-weight-regular);
}

.cast_name_set {
	margin-bottom: 3%;
}


.staffbox li p {
	text-align: center;
}
.staff_title {
font-weight: var(--font-weight-bold)!important;
color: #314b89;
font-size: clamp(1rem, 0.92rem + 0.36vw, 1.25rem)!important;/* 16px-20px */
}
.staff_name {
font-size: clamp(1.125rem, 0.944rem + 0.8vw, 1.688rem)!important;/* 18px-27px */
}
.staff_name,.d_span {
font-weight: var(--font-weight-regular);
}

h6 {
  position: relative;
  font-family: 'Noto Sans JP', serif;
  letter-spacing: 0.1em;
  color: var(--base-color-blue);
  font-weight: var(--font-weight-bold);
  display: inline-block;
  text-align: center;
  margin-bottom: 24px;
  margin-inline: auto;
  font-size: clamp(1.5rem, 1.299rem + 0.89vw, 2.125rem);/* 24px-34px */
  line-height: 2.5rem;
}

h6::before {
    content: '';
    position: absolute;
    background-image: url(../img/deco_h6_hare.png);
    display: inline-block;
    width: 2em;
    height: 2em;
    background-repeat: no-repeat;
    background-size: contain;
    left: -2.2em;
    z-index: -1;
    top: -0.04em;
}
h6::after {
    content: '';
    position: absolute;
    background-image: url(../img/deco_h6_kumori.png);
    display: inline-block;
    width: 1.5em;
    height: 2em;
    background-repeat: no-repeat;
    background-size: contain;
    z-index: -1;
    bottom: -1.2em;
    right: -1.6em;
}

.speechBubble {
  position: relative;
  display: inline-block;
  margin-left: 16px;
  padding: 16px;
  border-radius: 12px;  
  background-color: #fbe9f2;
  color: #290000;
  font-family: var(--font_main_maru);
}

.speechBubble::after {
  content: "";
  position: absolute;
  top: 51%;
  left: 0;
  border-style: solid;
  border-width: 8px 16px 8px 0;
  border-color: transparent #fbe9f2 transparent transparent;
  translate: -100% -50%;
  transform: skew(0, 2deg);
  transform-origin: right;
}



@media screen and (max-width: 1000px){
	.cast_flex1 {
    display: block;
	}
	.cast_img {
    margin-right: 0;
	margin: auto;
    width: 70%;
	}
	.cast_name_set {
	display: grid;
	margin: auto;
	margin: 3% auto 5%;
	}
	.cast_tx .cast_name {
	text-align: center;
	}
	
	h6::after {
	bottom: -.9em;
	right: -1.6em;
	}
	.speechBubble {
	position: relative;
	display: inline-block;
	margin-top: 16px;
	padding: 16px;
	border-radius: 12px;
	background-color: #fbe9f2;
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	}

	.speechBubble::after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	border-style: solid;
	border-width: 0 8px 16px 8px;
	border-color: transparent transparent #fbe9f2;
	translate: -50% -100%;
	transform: skew(2deg);
	transform-origin: bottom;
	}
}




/* =========================
   CHART
========================= */



/* =========================
   配信
========================= */
li.haishin_bn {
    max-width: 360px;
	margin: auto;
}
.haishin_bn img {
	width: 100%;
}
@media screen and (max-width: 600px){
li.haishin_bn {
    max-width: 260px;
	margin: min(3vw, 1em) auto min(1vw, 1em);
}
}



/* =========================
   SNS
========================= */
.sns_unit {
	display: flex;
    justify-content: center;
    align-items: center;
    gap: 3%;
	background-color: #d4eefd;
}

.sns-menu {
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	font-size: min(3vw, 1.2em);
	display: table;
	margin: auto;
}
.sns-menu ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: min(3vw, 1em);
    margin: min(3vw, 1em);
    /* width: 15em; */
}

.sns-btn {
	--radius: 3em;
	--icon-size: 1.5em;
	display: flex;
	align-items: center;
	gap: 0.75em;
	padding: 0.5em 1em;
	border-radius: var(--radius);
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	line-height: 1;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	/* outline: min(1vw, 0.1em) solid rgba(255, 255, 255, 0.9); */
	outline-offset: -2px;
	height: 3.5em;
	box-shadow: 0px 6px 7px -2px #61a4ff7a;
}

.btn_tweet {
	font-size: min(4vw, 1em);
	border-radius: 3em;
	color: var(--base-color-pink) !important;
	padding: min(2vw, 0.5em) min(3vw, 1em);
	background: rgb(255, 255, 255);
	display: block;
	line-height: min(6vw, 1.5em);
	word-break: keep-all;
	width: fit-content;
	text-align: center;
	margin: min(3vw, 1em) min(3vw, 1em) min(3vw, 1em) min(3vw, 1em);
	font-weight: var(--font-weight-bold);
	box-shadow: 0px 6px 7px -2px #61a4ff7a;
}

.sns-btn:hover,
.btn_tweet:hover {
	box-shadow: none;
	transition: .3s;
}



.sns-icon {
	flex: 0 0 auto;
	width: var(--icon-size);
	aspect-ratio: 1 / 1;
	display: grid;
	place-items: center;
}

.sns-icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.sns-text {
	white-space: nowrap;
	color: #fff;
	text-shadow: none;
	font-weight: normal;
	font-size: 1em;
	margin: 0.5em 0.3em 0.5em 0.3em;
}

.sns-x {
	background: #000;
	/* border: 1px solid rgba(255,255,255,0.6); */
	box-shadow: 0px 6px 7px -2px #61a4ff7a;
}
.sns-instagram {
	background: linear-gradient(
		135deg,
		#feda75,
		#fa7e1e,
		#d62976,
		#962fbf,
		#4f5bd5
	);
	box-shadow: 0px 6px 7px -2px #61a4ff7a;
}
.sns-tiktok {
	background: linear-gradient(180deg, #ff1a6e, #ff1a6e, #ff1a6e, #41dad5, #41dad5, #41dad5) border-box;
	padding: min(2vw, 0.3em);
	box-shadow: 0px 6px 7px -2px #61a4ff7a;
}
.sns-in {
	display: flex;
	align-items: center;
	background: #fff;
	padding: min(5vw, 1.5em) min(3vw, 0.75em);
	height: 2em;
	border-radius: 3em;
}
.sns-tiktok .sns-text {
	color: #333333;
}

.btn_tweet strong {
	color: var(--base-color-blue); !important;
	margin: 0 0.25em;
}

@media screen and (max-width: 900px){
    .sns_unit {
    max-width: 600px;
    margin: auto;
	}
}
@media screen and (max-width: 600px){
    .sns_unit {
    display: block;
	padding: 0;
	}
	.top-sns {
	display: flex;
	}
	.btn_tweet {
		padding: min(2vw, 1em) min(3vw, 1em);
		text-align: center;
        width: 160px;
	}
}
/* =========================
   SCHEDULE
========================= */
.strmbn_box {
	display: flex;
    gap: 3%;
    margin: 1% auto 0;
	max-width: 300px;
	/* max-width: 600px; */
}

.broadcast-tx {
    font-size: clamp(1.125rem, 0.944rem + 0.8vw, 1.688rem);
	font-weight: var(--font-weight-regular);
	text-align: center!important;
}


/* =========================
   NEWS
========================= */
.sb_news_article_wrapp {
    flex-wrap: wrap;
    gap: 20px;
    max-width: 1000px;
    margin: 0 auto 40px;
}



.newsimg {
margin-bottom: min(3vw, 2em);
}

.kijidate {
	display: block;
    text-align: left;
    border-bottom: 1.5px dashed var(--base-color-skyblue);
    position: relative;
}

.kijidate p {
        color: #ffffff !important;
    /* border-bottom: 2px dashed #78abed !important; */
    font-weight: bold !important;
    padding: min(1.5vw, 0.2em) min(4vw, 0.7em) !important;
    font-family: var(--font_main_sans) !important;
    /* border-bottom: 1px dashed var(--base-color-blue); */
    display: inline-block;
    margin-bottom: -2px;
    text-align: left;
    border-radius: 1vh 1vh 0 0;
    background-color: var(--base-color-blue);
    position: absolute;
    bottom: 0;
}
.kijitit h3 {
	font-size: clamp(1rem, 0.839rem + 0.71vw, 1.5rem)!important;/* 16px-24px */	
	font-family: var(--font_main_maru);
    font-weight: bold;
    text-align: left;
    color: var(--tx_base-color-black);
    margin: min(4vw, .5em) 0 min(4vw, 2em);
}

.kijitit h3::before {
	content: "";
	d

}


.box .newsimg {
	display: block;
	text-align: center;
}
.box .newsimg img {
	max-width: 640px;
	width: 80%;
}

.kijitext a {
	text-decoration: underline;
	color: #ff3281;
}

.kijitext a:hover {
	color: #ff5495;
}

@media screen and (max-width: 900px) {
	.box .newsimg img {
		width: 100%;
	}
}


/* =========================
   MUSIC
========================= */


/* =========================
   Blu-ray
========================= */


/* TAB	-------------------------------------------------- */

	/*-- 緊急テキスト ----------------------*/
	#rp_textbox{
	margin: 10px auto;
	max-width:640px;
	width:85%;
	}
	#rp_textbox .pop_text{}
	#rp_textbox .popup_title{
	margin-bottom:10px;
	}

	/*-- SNS -----------------------*/
	#sns_button_pc{
	display: none;
	}
	#sns_button_sp{
	display: block;
	padding: 0;
	text-align: center;
	}
	#sns_button_sp .btn_sns{
	margin: 0 2px;
	}
	#sns_button_sp .btn_sns img{
	height: 50px; width: 50px;
	}

}
/* SP	-------------------------------------------------- */
@media screen and (max-width:1050px) {
	#area-menu ul {
		flex-wrap: wrap;
	}
}
@media screen and (max-width:640px) {
	#pan_box{
		overflow-x: auto;
	}
	.kv {
		padding: 0;
	}
	.info .note li {
		align-items: center;
		margin: 0.5em auto;
		font-size: 0.8em;
		line-height: 1.2em;
		display: flex;
		flex-wrap: nowrap;
		width: min(70vw, 23em);
	}
	.info .note li strong.station {
		display: block !important;
		text-align: left;
		min-width: 5em;
		width: auto;
	}
	.news_article_wrapp {
		gap: 16px;
	}

	.news_article_wrapp article,
	#kiji_box01_inner01, #kiji_box01_inner02, #kiji_box02_inner01, #kiji_box02_inner02,
	.item_thumb {
		flex: 0 0 100%;
	}

	.onlyPc {
		display: none;
	}
	.message-body {
		gap: 0;
	}
	.message-text {
		margin-top: 0.5em;
		margin-bottom: 1em;
		padding: 0 0.2em;
	}
	.message-text:before {
		top: -2%;
		bottom: 10%;
		left: -6%;
		right: 0%;
		z-index: -1;
		transform: rotate(-2deg);
		border-radius: min(30vw, 20em);
	}
	.message-text:after {
		top: -3%;
		bottom: -6%;
		left: -3%;
		right: 5%;
		transform: rotate(11deg);
		border-radius: min(50vw, 20em);
	}
	.modal-image {
		min-width: 50vw;
		margin: auto;
	}
	.modal-text {
		width: 100%;
		font-size: 0.9em;
		margin-top: 1em;
	}
	.message-music .message-body {
		flex-wrap: wrap;
	}
}

/* ---------------
フェードアップ
--------------- */
.fade-in {
	opacity: 0;
	transition: opacity .8s ease;
}

.fade-in-inner {
	transform: translateY(30px);
	transition: transform .8s cubic-bezier(0.4,0,0.2,1);
}

.fade-in.is-visible {
	opacity: 1;
}

.fade-in.is-visible .fade-in-inner {
	transform: translateY(0);
}

/* ---------------

--------------- */
.custom-shape-divider-top-1779806807 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}