@charset "UTF-8";
/*/////////////////////////////////////////////////////////////////////////
らじる★らじる 2023
/////////////////////////////////////////////////////////////////////////*/
* { margin: 0; padding: 0; box-sizing: border-box;}
html { font-size: 100%; line-height: 1; font-family: "Hiragino Kaku Gothic W4 JIS2004", sans-serif; -webkit-text-size-adjust: 100%;}
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-family: "Hiragino Kaku Gothic W6 JIS2004", sans-serif;}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary { display: block;}
audio,canvas,progress,video { display: inline-block;}
img { border: none; box-sizing: content-box;}
hr { display: none;}
li { list-style: none;}
a { background-color: transparent;}
iframe { border: 0;}
::before,
::after { box-sizing: border-box;}

/*@common
/////////////////////////////////////////////////////////////////////*/
:root {
	--c-main-black: #4b4342;
	--c-gray: #737373;
	--c-red: #e7241d;
	--c-blue: #00a0e9;
	--c-r1: #d83300;
	--c-r2: #368644;
	--c-fm: #b95e00;
	--c-ondemand: #4f77b7;
	--c-r1-dark: #b82d0a;
	--c-r2-dark: #2a6e36;
	--c-fm-dark: #b0490b;
	--c-ondemand-dark: #405fa9;
	--c-r1-light: #edd6d9;
	--c-r2-light: #d8e1dc;
	--c-fm-light: #fde6d7;
	--c-ondemand-light: #dee6f2;
	--c-r1-hover: #e41722;
	--c-r2-hover: #28aa43;
	--c-fm-hover: #ff9b38;
	--c-ondemand-hover: #2b66b8;
	--bg-main-light: #f8f6f1;
	--bg-main-dark: #f1ece1;
	--bg-gray: #f4f4f4;
	--bg-timetable-this-r1: #fbe9e5;
	--bg-timetable-this-r2: #f0f7e5;
	--bg-timetable-this-fm: #fff2d7;
	--font-HiraginoW4: "Hiragino Kaku Gothic W4 JIS2004", sans-serif;
	--font-HiraginoW5: "Hiragino Kaku Gothic W5 JIS2004", sans-serif;
	--font-HiraginoW6: "Hiragino Kaku Gothic W6 JIS2004", sans-serif;
}

body {
	line-height: 1.5;
	color: var(--c-main-black);
	letter-spacing: .02em;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.scrl-hidden {
	overflow: hidden;
}
a {
	color: var(--c-main-black);
	text-decoration: none;
	transition: all .15s;
}
img {
	max-width:100%;
	height: auto;
	vertical-align: bottom;
}
b, strong {
	font-family: var(--font-HiraginoW6);
}
input, button, textarea, select {
	border: none;
	background: none;
	vertical-align: baseline;
	font-family: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input::placeholder {
	color: #8c8c8c;
	position: relative;
	top: -1px;
}
button {
	color: var(--c-main-black);
	line-height: 1.5;
	cursor: pointer;
}
:focus:not(:focus-visible) {
  outline: 0; /*キーボード操作以外でフォーカスされた際はoutlineを消す*/
}

.is-hidden {
	position: absolute;
	border: 0;
	overflow: hidden;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

#container {
	position: relative;
}
.d2 #contents {
	background: var(--bg-main-light);
}
@media screen and (min-width:768px) {
	body { min-width: 1280px;}
	br.sp, .pc-hide { display: none !important;}
	.top #container { overflow: hidden;}
	/* .d2 #container {
		display: flex;
		flex-direction: column;
		height: 100vh;
	} */
	.d2 #contents { flex: auto;}
}
@media screen and (max-width:767.98px) {
	br.pc, .sp-hide { display: none !important;}
	#container { overflow: hidden;}
}

/*text-link*/
.text-link {
	border-bottom: 1px solid var(--c-main-black);
	background-image: linear-gradient(var(--c-main-black), var(--c-main-black));
	background-size: 0 1px;
	background-position: bottom right;
	background-repeat: no-repeat;
	padding-bottom: 1px;
	transition: background-size .3s ease-out;
}
.pc .text-link:hover,
.sp .text-link.hover {
	background-size: 100% 1px;
	background-position: bottom left;
}

/*channel icon*/
.icon-tag {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.icon-tag .tag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.7em;
	height: 1.125rem;
	font-size: 0.625rem;
	font-family: var(--font-HiraginoW6);
	color: #fff;
	text-align: center;
	white-space: nowrap;
	background: #ccc;
	border-radius: 50px;
	padding: 0 6px;
	margin: 0 5px 5px 0;
}
.icon-tag .tag:last-child { margin-right: 0;}
.icon-tag .tag.r1 { background: var(--c-r1);}
.icon-tag .tag.r2 { background: var(--c-r2);}
.icon-tag .tag.fm { background: var(--c-fm);}
.icon-tag .tag.category {
	font-family: var(--font-HiraginoW5);
	background: var(--c-gray);
	padding: 0 10px;
}
@media screen and (max-width:767.98px) {
	.icon-tag .tag {
		height: auto;
		font-size: 0.562rem;
		padding-top: 2px;
	}
	.icon-tag .tag.category {
		/* height: 1.0625rem; */
		font-size: 0.625rem;
		padding-top: 1px;
	}
}

/*再生マーク*/
.icon-play::before {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url(../img/icon_play.svg) no-repeat 58% 50%;
	background-size: 35.5% auto;
	border-radius: 50%;
	position: absolute;
	z-index: 2;
}
.icon-play.r1::before { background-color: var(--c-r1);}
.icon-play.r2::before { background-color: var(--c-r2);}
.icon-play.fm::before { background-color: var(--c-fm);}
.icon-play.ondemand::before { background-color: var(--c-ondemand);}
@media screen and (max-width:767.98px) {
	.icon-play::before {
		width: 8.717vw;
		height: 8.717vw;
		max-width: 50px;
		max-height: 50px;
		background-size: 37.5% auto;
	}
}

/*arrow*/
.arrow {
	display: block;
	width: 11px;
	height: 18px;
	background: url(../img/icon_arrow_g.svg) no-repeat;
	background-size: contain;
}
.arrow-w {
	background-image: url(../img/icon_arrow_w.svg);
}
.arrow-more {
	transform: rotate(90deg);
	margin-top: 1px;
}
@media screen and (max-width:767.98px) {
	.arrow { width: 9px; height: 15px;}
}

/*btn*/
.link-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 245px;
	font-size: 1.125rem;
	text-align: center;
	background: #fff;
	border: 1px solid #000;
	border-radius: 50px;
	padding: 10px 1.125rem;
	position: relative;
	transition: all .15s;
}
.link-btn-text {
	flex: 1;
	padding-left: 5px;
}
.link-btn-text span {
	display: inline-block;
}
.link-btn .arrow {
	flex-shrink: 0;
	margin: 0 -3px 0 0.375rem;
}
/*hover*/
.pc .link-btn:hover,
.sp .link-btn.hover {
	background: var(--c-main-black);
	color: #fff;
}
.pc .link-btn:hover .arrow,
.sp .link-btn.hover .arrow {
  background-image: url(../img/icon_arrow_w.svg);
}
@media screen and (max-width:767.98px) {
	.link-btn {
		min-width: 0;
		font-size: 0.937rem;
		padding: 10px 18px;
	}
	.link-btn .arrow-more {
		position: relative;
		right: 5px;
	}
}

/*search-field*/
.search-field {
	position: relative;
	/*display: none;*/
}
.search-field::before {
	content: "";
	display: block;
	width: 22px;
  height: 22px;
  background: url(../img/icon_search.svg) no-repeat;
  background-size: contain;
	position: absolute;
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
}
.search-field-input {
	display: block;
	width: 100%;
	min-height: 48px;
	font-size: 1.125rem;
	background: #fff;
	border: 1px solid #000;
	border-radius: 50px;
	padding-left: 50px;
	padding-right: 20px;
	transition: all .15s;
}
@media screen and (min-width:768px) {
	.search-field { min-width: 320px;}
	.search-field-input {
		padding-top: 7px;
		padding-bottom: 7px;
	}
}

/*search-category*/
.search-tag-list {
	display: flex;
	flex-wrap: wrap;
}
.search-tag-list li {
	margin: 5px 3px;
}
.search-tag-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 5em;
	height: 2.125rem;
	font-size: 0.937rem;
	text-align: center;
	background: #fff;
	border: 1px solid  #000;
	border-radius: 50px;
	padding: 1px 0.867em 0;
	cursor: pointer;
}
.search-tag-btn.f-mplus {
	padding-bottom: 0;
}
#kana.search-tag-list li {
	margin-left: 6px;
	margin-right: 6px;
}
#kana .search-tag-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: initial;
	width: 2.3em;
	height: 2.3em;
	font-size: 1.125rem;
	border-radius: 100%;
	padding: 0;
}
.pc .search-tag-btn:not(.na):hover,
.sp .search-tag-btn:not(.na).hover,
.search-tag-btn.this,
.search-tag-list li.this .search-tag-btn {
	background: var(--c-main-black);
	color: #fff;
}
.search-tag-btn.na {
	opacity: .6;
	border-color: var(--c-gray);
	cursor: auto;
}
@media screen and (max-width:767.98px) {
	.search-tag-btn {
		height: 1.875rem;
		font-size: 0.812rem;
		letter-spacing: normal;
		padding-left: 13px;
		padding-right: 13px;
	}
}

/*loader*/
.loader {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
}
.d2 .loader {
	width: calc(100% + 10px);
	height: calc(100% + 10px);
	background: var(--bg-main-light);
	top: -5px;
	left: -5px;
}
.loader span {
	display: inline-block;
	width: 50px;
	height: 50px;
	border: 2px solid #b9b9b3;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 25px);
	left: calc(50% - 25px);
	animation: loader-spin 0.75s infinite linear;
}
.d2 .section-inner .loader span { top: 100px;}
.loader span::before,
.loader span::after {
	content: "";
	width: inherit;
	height: inherit;
	border: inherit;
	border-radius: inherit;
	position: absolute;
	top: -2px;
	left: -2px;
	display: none;
}
.loader span {
	border-top-color: transparent !important;
}
.loader span::after {
	display: block;
	border-color: transparent;
	border-top-color: #b9b9b3;
	animation: loader-spin 1.25s infinite linear reverse;
}
@keyframes loader-spin {
	from { transform:rotate(0deg);}
	to { transform:rotate(360deg);}
}
@media screen and (max-width:767.98px) {
	.loader span {
		width: 40px;
		height: 40px;
		top: calc(50% - 20px);
		left: calc(50% - 20px);
	}
	.top-list .loader span { margin-top: -30px;}
	.d2 .section-inner .loader span { top: 60px;}
}

/*splide*/
.splide-outer {
	position: relative;
}
.splide__slide a {
	display: block;
}
.splide__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	background: #fff;
	border: 1px solid #000;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	transition: opacity .2s;
}
.splide__arrow:disabled {
	pointer-events: none;
	opacity: 0;
}
.splide__arrow > svg {
	display: none;
}
.splide__arrow--prev { left: -18px;}
.splide__arrow--next { right: -18px;}
.splide__arrow--prev::after,
.splide__arrow--next::after {
	content: "";
	display: block;
	width: 8px;
	height: 13px;
	background: url(../img/icon_arrow_g.svg) no-repeat;
	background-size: contain;
}
.splide__arrow--prev::after {
	transform: rotate(180deg);
}


/*@header
/////////////////////////////////////////////////////////////////////*/
#globalheader {
	position: relative;
	z-index: 100;
}
.d2 #globalheader {
	max-width: 1580px;
	flex-shrink: 0;
}
.header-logo a {
	display: block;
}
@media screen and (min-width:768px) {
	#globalheader {
		display: flex;
		align-items: center;
		width: 100%;
		min-height: 110px;
		padding: 25px 40px 20px;
		margin: 0 auto;
	}
	#globalheader .select-area {
		padding-top: 3px;
		margin-left: 30px;
	}
}
@media screen and (max-width:767.98px) {
	#globalheader { height: 65px;}
	#globalheader .select-area {
		position: absolute;
		top: 50%;
		left: 3.076vw;
		transform: translateY(-50%);
		padding-top: 3px;
	}
	.header-logo {
		width: min(34.615vw, 135px);
		margin: 0 auto;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 100;
	}
	.header-logo a { padding: 5px;}
}

/*nav*/
@media screen and (min-width:768px) {
	#globalnav {
		display: flex;
		align-items: center;
		padding-left: 20px;
		margin-left: auto;
	}
	.globalnav-list {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
		font-size: 1rem;
	}
	.globalnav-item:not(:last-child) {
		margin-right: 20px;
	}
	.globalnav-link {
		display: block;
		font-family: var(--font-HiraginoW6);
		padding: 5px;
		position: relative;
	}
	.globalnav-sub {
		margin-left: -5px;
	}
	.globalnav-sub .globalnav-link {
		font-size: 0.875rem;
		text-align: center;
		padding: 5px 15px 6px;
	}
	.globalnav-sub .globalnav-link.f-en {
		font-size: 0.812rem;
	}
	.globalnav-sub .globalnav-link:not(:last-child) {
		border-bottom: 1px solid #000;
	}
	.globalnav-share {
		width: 72px;
		margin-left: 5px;
	}
	.pc .globalnav-link:hover,
	.pc .globalnav-link:focus {
		opacity: .6;
	}
}
@media screen and (max-width:767.98px) {
	.globalnav-bg {
		width: 100vw;
		height: 100vh;
		background: var(--bg-main-dark);
		position: fixed;
		top: 0;
		left: 0;
		z-index: 98;
		display: none;
	}
	.globalnav-inner {
		width: 100vw;
		height: 100vh;
		background: #fff;
		padding-top: 65px;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 99;
		display: none;
	}
	.globalnav-list {
		height: 100%;
		text-align: center;
		background: var(--bg-main-dark);
		overflow: auto;
		padding: 20px 7% 25px;
	}
	/**/
	.globalnav-item {
		border-bottom: 1px solid #999;
		margin: 0 auto;
	}
	.globalnav-item .globalnav-link {
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.0625rem;
		padding: 14px 15px;
		position: relative;
	}
	.globalnav-timetable .globalnav-link::before,
	.globalnav-program .globalnav-link::before,
	.globalnav-ondemand .globalnav-link::before {
		content: "";
		display: block;
		width: 40px;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		position: absolute;
		left: 15px;
	}
	.globalnav-timetable .globalnav-link::before {
		background-image: url(../img/icon_timetable.svg);
		height: 26px;
	}
	.globalnav-program .globalnav-link::before,
	.globalnav-ondemand .globalnav-link::before {
		background-image: url(../img/icon_search2.svg);
		height: 18px;
	}

	/*small*/
	.globalnav-item.nav-small {
		border-bottom: none;
	}
	.globalnav-item.nav-small .globalnav-link {
		display: block;
		font-size: 0.875rem;
		padding: 10px;
	}
	.globalnav-magazine {
		margin-top: 15px;
	}
	.globalnav-share {
		margin: 20px auto 100px;
	}
}

/*SP用*/
@media screen and (min-width:768px) {
	#navOpen { display: none;}
}
@media screen and (max-width:767.98px) {
	#navOpen {
		width: 56px;
		height: 56px;
		position: absolute;
		top: 5px;
		right: 2.564vw;
		z-index: 100;
	}
	#navOpen::before,
	#navOpen::after {
		content: "";
		display: block;
		width: 38px;
		height: 1px;
		background: #000;
		position: absolute;
		left: 9px;
		transition: all .2s;
	}
	#navOpen::before { top: calc(50% - 5px);}
	#navOpen::after { top: calc(50% + 5px);}
	/*fixed*/
	#navOpen.fixed {
		background: #fff;
		border-radius: 50%;
		position: fixed;
		animation: fadeIn .5s ease both;
	}

	/*メニューの開閉用*/
	#navOpen.fixed { position: fixed;}
	#navOpen.active::before,
	#navOpen.active::after { width: 34px; left: 11px;}
	#navOpen.active::before { transform: translateY(5px) rotate(-30deg);}
	#navOpen.active::after { transform: translateY(-5px) rotate(30deg);}
	/* .header-logo.fixed { position: fixed; top: 50px;} */

	/*メニューの開閉用（スクロール後）*/
	.nav-fixed .globalnav-inner { position: fixed;}
	.nav-fixed .header-logo.fixed { position: fixed;}
}

/*share*/
.nhk-snsbtn {
	margin-bottom: 0 !important;
}
.nhksns {
	display: flex !important;
	align-items: center;
	justify-content: center;
}
.nhksns li {
	width: 32px;
	margin: 0 !important;
}
.nhksns li:not(:last-child) {
	margin-right: 8px !important;
}
@media screen and (max-width:767.98px) {
	#globalnav .nhksns li { width: 40px;}
	#globalnav .nhksns li:not(:last-child) { margin-right: 15px;}
}

/*area*/
.select-area {
	line-height: 1;
	position: relative;
	z-index: 98;
}
body:not(.top):not(.hensei) #globalheader .select-area {
	display: none;
}
#areaOpen {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-width: 145px;
	font-size: 1rem;
	background: #fff;
	border: 1px solid #000;
	border-radius: 50px;
	padding: 5px 30px 5px 18px;
	position: relative;
}
#areaOpen span {
	font-size: 0.75rem;
	padding: 1px 0 0 2px;
}
#areaOpen::after {
	content: "";
	display: block;
	width: 13px;
	height: 13px;
	background: url(../img/icon_arrow_pd.svg) no-repeat;
	background-size: contain;
	position: absolute;
	right: 12px;
}
@media screen and (max-width:767.98px) {
	#areaOpen {
		min-width: 85px;
		min-height: 30px;
		font-size: 14px;
		line-height: 1;
		padding: 3px 25px 3px 12px;
	}
	#areaOpen span {
		font-size: 10px;
	}
	#areaOpen::after {
		width: 11px;
		height: 11px;
		right: 10px;
		top: 50%;
		transform: translateY(-50%);
	}
}
@media screen and (max-width:440px) {
	#areaOpen {
		flex-direction: column;
		justify-content: center;
	}
}
@media screen and (max-width:350px) {
	#areaOpen {
		min-width: 0;
		font-size: 4vw;
		padding: 3px 25px 3px 12px;
		padding-left: 3.428vw;
		padding-right: 7.142vw;
	}
	#areaOpen span {
		font-size: 2.857vw;
	}
	#areaOpen::after {
		width: 3.142vw;
		height: 3.142vw;
		right: 2.857vw;
	}
}

/*area-list*/
.select-area-list {
	width: 100%;
	min-width: 180px;
	background: #fff;
	border: 1px solid #000;
	border-radius: 20px;
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	overflow: hidden;
	transform: translateY(-10px);
	transition: transform .3s,  opacity .3s;
	opacity: 0;
	visibility: hidden;
}
.select-area-list.open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.select-area-item:not(:last-child) {
	border-bottom: 1px solid #999;
}
.select-area-btn {
	display: block;
	width: 100%;
	font-size: 1rem;
	text-align: center;
	padding: 7px 12px;
}
.select-area-btn > span {
	font-size: 0.75rem;
	padding-left: 2px;
}
.pc .select-area-btn:hover,
.pc .select-area-btn:focus,
.sp .select-area-btn.hover {
	background: var(--bg-gray);
}
@media screen and (max-width:767.98px) {
	.select-area-list {
		width: 35vw;
		min-width: 150px;
		border-radius: 16px;
	}
	.select-area-btn {
		font-size: 14px;
	}
	.select-area-btn > span {
		font-size: 12px;
	}
}

/*アプリ誘導*/
#app_introduce {
	display: none;
}
.scrl-hidden:not(.nav-fixed) #app_introduce + #globalheader {
	margin-top: -55px;
}
#app_introduce > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 55px;
	font-size: 13px;
	color: #fff;
	line-height: 1.35;
	text-align: left;
	letter-spacing: normal;
	background: #393836;
	padding: 0 2%;
}
#app_introduce .app-icon,
#app_introduce .app-link {
	display: flex;
	align-items: center;
}
#app_introduce .app-icon::before {
	content: "";
	display: block;
	width: 40px;
	height: 40px;
	background: url(../img/app_icon.png) no-repeat;
	background-size: contain;
	margin-right: 8px;
	flex-shrink: 0;
}
#app_introduce .app-icon span {
	display: block;
}
#app_introduce .app-link a {
	display: flex;
	align-items: center;
	font-family: var(--font-HiraginoW6);
	color: #fff;
	border-radius: 5px;
	white-space: nowrap;
	padding: 0 10px;
}
#app_introduce .app-link a:not(:last-child) {
	margin-right: 8px;
}
#app_introduce .app-install {
	height: 30px;
	border: 1px solid rgba(255, 255, 255, 0.7);
}
#app_introduce .app-open {
	height: 32px;
	background: #000;
}
@media screen and (max-width:375px) {
	#app_introduce .app-icon::before { margin-right: 1.282vw;}
	#app_introduce .app-icon,
	#app_introduce .app-link { font-size: 3.333vw;}
	#app_introduce .app-link a {
		padding-left: 3.076vw;
		padding-right: 3.076vw;
	}
	#app_introduce .app-link a:not(:last-child) { margin-right: 1.282vw;}
}


/*@footer
/////////////////////////////////////////////////////////////////////*/
.globalfooter .f1 {
	text-align: center;
	background: var(--bg-gray);
	padding: 25px;
}
.globalfooter .f2 {
	background: #414141;
	padding: 35px 0 25px;
}
.footer-logo {
	display: inline-block;
	margin: 0 auto;
}
@media screen and (max-width:767.98px) {
	.globalfooter .f1 { padding: 20px;}
	.globalfooter .f2 { padding: 30px 3%;}
	.footer-logo { width: 140px;}
	.footer-logo img { width: 100%;}
}

/*link*/
.footer-link {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	max-width: 40.625rem;
	margin: 0 auto;
}
.footer-link-item {
	margin: 0 10px 12px;
	position: relative;
}
.footer-link-item::after {
	content: "";
	width: 1px;
	height: 15px;
	background: #808080;
	position: absolute;
	top: 50%;
	right: -11px;
	transform: translateY(-50%);
}
.footer-link-item:last-child::after {
	display: none;
}
.footer-link-text {
	display: block;
	font-size: 0.875rem;
	color: #fff;
	white-space: nowrap;
	padding: 5px 10px;
}
.pc .footer-link-text:hover,
.pc .footer-link-text:focus,
.sp .footer-link-text.hover {
	opacity: .5;
}
@media screen and (min-width:768px) {
	.footer-link-item:nth-child(4)::after { display: none;}
}
@media screen and (max-width:767.98px) {
	.footer-link-item { margin: 0 7px 7px;}
	.footer-link-item::after { right: -8px;}
	.footer-link-text {
		font-size: 0.812rem;
		padding: 5px;
	}
}

/*banner*/
.footer-banner {
	padding: 40px 0;
}
.footer-bn-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.footer-bn-item {
	max-width: 230px;
	margin: 13px;
}
.footer-bn-item a {
	display: block;
}
.footer-bn-item img {
	width: 100%;
}
@media screen and (max-width:767.98px) {
	.footer-banner { padding: 25px 3%;}
	.footer-bn-item {
		width: calc(50% - 2.564vw);
		margin: 1.282vw;
	}
}

/*ptop*/
#ptop {
	position: fixed;
	bottom: 35px;
	right: 2%;
	z-index: 99;
}
.ptop-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 86px;
	height: 86px;
	background: rgba(0,0,0,0.6);
	border-radius: 100%;
	position: absolute;
	bottom: 0;
	right: 0;
	padding-bottom: 2px;
	cursor: pointer;
	transition: all 0.5s;
	opacity: 0;
	visibility: hidden;
}
.ptop-btn::before {
	content: "";
	display: block;
	width: 40px;
	height: 26px;
	background: url(../img/icon_ptop.svg) no-repeat;
	background-size: contain;
}
#ptop.end { position: relative;}
#ptop.end .ptop-btn { bottom: 10px;}
.pc .ptop-btn:hover,
.sp .ptop-btn.hover { background: rgba(0,0,0,0.8);}
@media screen and (max-width: 767.98px) {
	#ptop { bottom: 25px;}
	.ptop-btn { width: 54px; height: 54px;}
	.ptop-btn::before { width: 23px; height: 15px;}
	#ptop.end .ptop-btn { bottom: 25px;}
}


/*@animation
/////////////////////////////////////////////////////////////////////*/
@keyframes fadeIn {
	0% { opacity:0;}
	100% { opacity:1;}
}




/*dummy-nhkheader*/
.dummy-nhkheader {
	width: 100%;
	height: 56px;
	padding: 0 40px;
	background: #fafafa;
	border-bottom: 1px solid #e5e5ea;
	display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
	font-size: 26px;
	font-family: var(--font-HiraginoW6);
	position: relative;
	z-index: 500;
}
@media screen and (max-width: 767.98px) {
	.dummy-nhkheader {
		height: 44px;
		padding: 0 15px;
		font-size: 20px;
	}
}
