@font-face {
				font-family: "NotoSansJP";
				font-weight: 400;
				src: local("Noto Sans CJK JP Regular"), local("NotoSansCJKjp-Regular"), local("NotoSansJP-Regular"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Regular.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Regular.woff) format("woff");
}
@font-face {
				font-family: "NotoSansJP";
				font-weight: 500;
				src: local("Noto Sans CJK JP Medium"), local("NotoSansCJKjp-Medium"), local("NotoSansJP-Medium"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Medium.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Medium.woff) format("woff");
}
@font-face {
				font-family: "NotoSansJP";
				font-weight: 700;
				src: local("Noto Sans CJK JP Bold"), local("NotoSansCJKjp-Bold"), local("NotoSansJP-Bold"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Bold.woff2) format("woff2"), url(https://fonts.gstatic.com/ea/notosansjapanese/v5/NotoSansJP-Bold.woff) format("woff");
}
#page {
				text-align: left;
}

.thiscontents {
				font-family: "NotoSansJP", sans-serif;
				-webkit-font-smoothing: antialiased;
				-moz-osx-font-smoothing: grayscale;
				-webkit-text-size-adjust: 100%;
				margin-inline: auto;
}
.thiscontents *,
.thiscontents *:before,
.thiscontents *:after {
				box-sizing: border-box;
}
.thiscontents a:link {
				color: #0067cc;
}
.thiscontents a:visited {
				color: #0067cc;
}
.thiscontents figure {
				margin: 0;
				padding: 0;
}

.l-footer {
				margin-top: 0;
}

.text-nowrap {
				white-space: nowrap;
}

.thiscontents .tablet {
				display: none;
}
.thiscontents .sp {
				display: none;
}
.thiscontents .sp-tablet {
				display: none;
}
.thiscontents .hide {
				display: none;
}
.thiscontents .show {
				display: block;
}

@media screen and (max-width: 949px) {
				.thiscontents .pc {
								display: none;
				}
				.thiscontents .pc-tablet,
				.thiscontents .sp-tablet,
				.thiscontents .tablet {
								display: block;
				}
}
@media screen and (max-width: 767px) {
				.thiscontents .sp {
								display: block;
				}
				.thiscontents .pc-tablet,
				.thiscontents .tablet {
								display: none;
				}
}
.thiscontents img.fit {
				width: 100%;
				height: auto;
}

.pagetop {
				position: fixed;
				z-index: 100;
				right: 10px;
				bottom: 10px;
				opacity: 0;
}
.pagetop.is-active {
				opacity: 1;
}

.pagetop-btn > a {
				display: flex;
				justify-content: center;
				opacity: 0.75;
				cursor: pointer;
				width: 42px;
				height: 42px;
				border-radius: 100%;
				border: solid #fff 1px;
				background-color: rgba(0, 0, 0, 0.2);
				/*
				@media (hover: none) {
					&:active {
						@content;
					}
				}
				*/
}
@media screen and (max-width: 767px) {
				.pagetop-btn > a {
								width: 37px;
								height: 37px;
				}
}
.pagetop-btn > a::after {
				position: absolute;
				content: "";
				width: 9px;
				height: 9px;
				border-top: solid 2px #fff;
				border-right: solid 2px #fff;
				transform: rotate(-45deg);
				right: 16px;
				top: 50%;
				margin-top: -4.5px;
}
@media screen and (max-width: 767px) {
				.pagetop-btn > a::after {
								right: 14px;
				}
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
				.pagetop-btn > a:hover {
								opacity: 1;
								color: #222;
								border: solid #fff 1px;
								background-color: #fff;
				}
				.pagetop-btn > a:hover::after {
								border-color: #222;
				}
}

.fs-16 {
				font-size: 16px;
}

.fs-18 {
				font-size: 18px;
}

.fs-20 {
				font-size: 20px;
}

.fs-22 {
				font-size: 22px;
}

.fs-24 {
				font-size: 24px;
}

.fs-26 {
				font-size: 26px;
}

.fs-28 {
				font-size: 28px;
}

.fs-30 {
				font-size: 30px;
}

.fs-32 {
				font-size: 32px;
}

@media screen and (max-width: 767px) {
				.fs-16-sp {
								font-size: 16px;
				}
				.fs-18-sp {
								font-size: 18px;
				}
				.fs-20-sp {
								font-size: 20px;
				}
				.fs-22-sp {
								font-size: 22px;
				}
				.fs-24-sp {
								font-size: 24px;
				}
				.fs-26-sp {
								font-size: 26px;
				}
				.fs-28-sp {
								font-size: 28px;
				}
				.fs-30-sp {
								font-size: 30px;
				}
				.fs-32-sp {
								font-size: 32px;
				}
}
.mt-xs {
				margin-top: 4px !important;
}

.mt-sm {
				margin-top: 8px !important;
}

.mt-md {
				margin-top: 16px !important;
}

.mt-lg {
				margin-top: 24px !important;
}

.mb-xs {
				margin-bottom: 4px !important;
}

.mb-sm {
				margin-bottom: 8px !important;
}

.mb-md {
				margin-bottom: 16px !important;
}

.mb-lg {
				margin-bottom: 24px !important;
}

.pt-xs {
				padding-top: 4px !important;
}

.pt-sm {
				padding-top: 8px !important;
}

.pt-md {
				padding-top: 16px !important;
}

.pt-lg {
				padding-top: 24px !important;
}

.pb-xs {
				padding-bottom: 4px !important;
}

.pb-sm {
				padding-bottom: 8px !important;
}

.pb-md {
				padding-bottom: 16px !important;
}

.pb-lg {
				padding-bottom: 24px !important;
}

.text-indent {
				text-indent: -1em;
				padding-left: 1em;
}

.text-center {
				text-align: center;
}

.text-del {
				text-decoration: line-through;
}

.text-kerning {
				font-feature-settings: "palt" 1;
}

.text-under {
				text-decoration: underline;
}

.fw-bold {
				font-weight: 700;
}

.color-marker-yel {
				background: linear-gradient(transparent 1em, #ffeb66 1em, #ffeb66 1.4em, transparent 1.4em);
}

.color-marker-skew {
				position: relative;
				z-index: 0;
}
.color-marker-skew::before {
				content: "";
				position: absolute;
				z-index: -1;
				display: block;
				left: 0;
				bottom: 8px;
				width: 100%;
				height: 14%;
				transform: skew(-30deg);
				background: #fffe00;
}

.color-primary {
				color: #e8340c;
}

.h-bd {
				display: flex;
				align-items: center;
				justify-content: center;
}
.h-bd::before, .h-bd::after {
				content: "";
				height: 3px;
				width: 60px;
				border-radius: 999px;
				background-color: currentColor;
}
@media screen and (max-width: 767px) {
				.h-bd::before, .h-bd::after {
								width: 40px;
				}
}
.h-bd::before {
				margin-right: 0.8rem;
}
.h-bd::after {
				margin-left: 0.8rem;
}

.content-800 {
				max-width: 800px;
				margin-inline: auto;
}

a[data-micromodal-trigger=modal-archive] {
				text-decoration: none;
}
a[data-micromodal-trigger=modal-archive]:hover {
				opacity: 0.75;
				color: #333;
}

#modal-archive {
				position: relative;
				z-index: 1234;
				display: none;
				text-decoration: none;
}
#modal-archive.is-open {
				display: block;
}
#modal-archive[aria-hidden=false] {
				animation: fadeIn 0.3s;
}
#modal-archive[aria-hidden=true] {
				animation: fadeOut 0.3s;
}
@keyframes fadeIn {
				from {
								opacity: 0;
				}
				to {
								opacity: 1;
				}
}
@keyframes fadeOut {
				from {
								opacity: 1;
				}
				to {
								opacity: 0;
				}
}
#modal-archive .modal-overlay {
				overflow-y: auto;
				position: fixed;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				padding: 16px;
				background: rgba(0, 0, 0, 0.75);
				display: flex;
				justify-content: center;
				align-items: center;
}
@media screen and (max-width: 767px) {
				#modal-archive .modal-overlay {
								display: block;
				}
}
#modal-archive .modal-content {
				overflow: hidden;
				max-width: 964px;
				height: calc(100% - 48px);
				margin-inline: auto;
				border-radius: 8px;
				background: #fff;
				/*
				.video-wrap {
					aspect-ratio: 16 / 9;

					.video {
						aspect-ratio: 16 / 9;
						width: 100%;
						height: 100%;
						display: block;
					}
				}
				*/
}
#modal-archive .modal-content .modal-content-inner {
				height: 100%;
				padding: 32px;
				overflow-y: auto;
}
@media screen and (max-width: 767px) {
				#modal-archive .modal-content .modal-content-inner {
								padding: 24px;
				}
}
#modal-archive .modal-content a.modal-close {
				display: block;
				font-size: 16px;
				font-weight: bold;
				text-align: center;
				text-decoration: none;
				color: #333;
				padding: 10px 16px;
				width: 160px;
				margin: 0 auto;
				border-radius: 100px;
				border: 3px solid #cfcfcf;
				background: #fff;
}

.btn-archive {
				position: relative;
				cursor: pointer;
				display: flex;
				justify-content: center;
				align-items: center;
				font-size: 22px;
				font-weight: 700;
				line-height: 1.4;
				color: #DB3535 !important;
				text-align: center;
				max-width: 480px;
				margin: 60px auto 0;
				padding: 20px 16px;
				border-radius: 12px;
				border: solid 3px #DB3535;
				background-color: #fff;
}
@media screen and (max-width: 767px) {
				.btn-archive {
								font-size: 16px;
								padding: 16px 12px;
				}
}
.btn-archive::after {
				content: "";
				position: relative;
				display: inline-block;
				vertical-align: middle;
				top: 0;
				width: 24px;
				height: 24px;
				margin-left: 10px;
				background: url("../images/ic_window.svg") no-repeat center/100% auto;
}
.archive-list {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
				.archive-list {
								display: block;
				}
}
.archive-list > li {
				width: calc(33.3333% - 12px);
}
@media screen and (max-width: 767px) {
				.archive-list > li {
								width: 100%;
				}
}
.archive-list > li a {
				display: block;
				cursor: pointer;
				width: 100%;
				height: 100%;
				color: #333 !important;
				/*
				@media (hover: none) {
					&:active {
						@content;
					}
				}
				*/
}
.archive-list > li a img {
				width: 100%;
				height: auto;
}
.archive-list > li dl {
				margin-top: 8px;
				margin-bottom: 24px;
}
.archive-list > li dt {
				font-size: 16px;
				color: #333;
}
@media screen and (max-width: 767px) {
				.archive-list > li dt {
								font-size: 14px;
				}
}
.archive-list > li dd {
				font-size: 16px;
				font-weight: bold;
				color: #333;
}

body {
				min-width: auto;
				overflow-y: scroll;
				background: url(../images/bg.jpg) repeat center top/20% auto;
}
@media screen and (max-width: 767px) {
				body {
								background-size: 40% auto;
				}
}

.main {
				position: relative;
				z-index: 0;
				color: #333;
				padding-bottom: 160px;
				background: url(../images/bg_kv.png) no-repeat center top/100% auto;
}
@media screen and (max-width: 1090px) {
				.main {
								background-size: 1090px auto;
				}
}
@media screen and (max-width: 767px) {
				.main {
								padding-bottom: 140px;
								background: url(../images/bg_kv_sp.png) no-repeat center top/100% auto;
				}
}
.main::after {
				/*
				content: '';
				position: absolute;
				z-index: -1;
				left: 0;
				right: 0;
				bottom: 0;
				width: 100%;
				min-height: 240px;
				margin-inline: auto;
				aspect-ratio: 1280 / 120;
				background: url("../images/bg_foot.png") no-repeat center bottom / 100% auto;

				@media screen and (max-width: 1280px) {
					width: 1280px;
				}

				@media screen and (max-width: 767px) {
					aspect-ratio: auto;
				}
				*/
}
.main a:hover img {
				opacity: 0.7;
}

.content-inner {
				max-width: 1032px;
				margin-inline: auto;
				padding: 0 16px;
}

.onair {
				position: relative;
				display: flex;
				justify-content: center;
				margin: 0 auto 24px;
}
@media screen and (max-width: 767px) {
				.onair {
								display: block;
								margin-block: -1px 16px;
				}
}
.onair .onair-info {
				position: relative;
				width: 100%;
}
@media screen and (max-width: 767px) {
				.onair .onair-info {
								width: 100%;
				}
}
.onair .onair-catch {
				position: relative;
				font-size: 22px;
				font-weight: 700;
				color: #FFF;
				text-align: center;
				line-height: 52px;
				width: 100%;
				height: 52.5px;
				margin: 0 auto 16px;
				padding: 0 24px;
				background: #3b5faa;
				--r: .6em;
				clip-path: polygon(0 0, 100% 0, calc(100% - var(--r)) 50%, 100% 100%, 0 100%, var(--r) 50%);
}
@media screen and (max-width: 767px) {
				.onair .onair-catch {
								font-size: 16px;
								line-height: 44px;
								height: 44px;
								width: 100%;
								margin-bottom: 8px;
				}
}
.onair .onair-date {
				margin-top: 0;
}
.onair .onair-date-row {
				display: flex;
				justify-content: center;
}
.onair .onair-date-row img {
				max-width: 515px;
}
@media screen and (max-width: 767px) {
				.onair .onair-date-row {
								display: block;
								text-align: center;
				}
}
.onair .onair-date-note {
				align-self: center;
				font-size: 14px;
				margin-left: 12px;
}
@media screen and (max-width: 767px) {
				.onair .onair-date-note {
								font-size: 12px;
								text-align: center;
								margin: 8px 0 0;
				}
}
.onair .onair-date-note a {
				font-weight: 700;
				color: #097BCE;
}

.channel-info {
				display: flex;
				justify-content: center;
				width: 100%;
				padding: 14px 16px;
				border-radius: 8px;
				background: #fff;
}
@media screen and (max-width: 767px) {
				.channel-info {
								display: block;
								padding: 8px 12px 12px;
				}
}
.channel-info h5 {
				font-size: 16px;
				font-weight: 700;
				color: #e8340c;
				margin-right: 16px;
}
@media screen and (max-width: 767px) {
				.channel-info h5 {
								text-align: center;
								margin: 0 0 6px;
								padding-bottom: 4px;
								border-bottom: 1px solid #333;
				}
}
.channel-info p {
				font-size: 16px;
				font-weight: 700;
}
@media screen and (max-width: 767px) {
				.channel-info p {
								font-size: 14px;
								max-inline-size: max-content;
								margin-inline: auto;
				}
}
.channel-info p .label {
				display: inline-block;
				font-size: 14px;
				font-weight: normal;
				margin-inline: 8px 12px;
				padding: 2px 8px;
				border-radius: 999px;
				background: #ffc1cc;
}
@media screen and (max-width: 767px) {
				.channel-info p .label {
								font-size: 12px;
								margin-top: 6px;
								margin-right: 12px;
								padding: 2px 6px;
				}
}

.onair-1st {
				display: flex;
				justify-content: center;
				margin-top: 24px;
				padding: 16px;
				border-top: 2px solid #333;
				border-bottom: 2px solid #333;
}
@media screen and (max-width: 767px) {
				.onair-1st {
								display: block;
								padding: 8px 12px 12px;
				}
}
.onair-1st h5 {
				white-space: nowrap;
				font-size: 16px;
				font-weight: 700;
				margin-right: 16px;
}
@media screen and (max-width: 767px) {
				.onair-1st h5 {
								text-align: center;
								margin-bottom: 4px;
				}
}
.onair-1st p {
				font-size: 16px;
				line-height: 1.6;
}
@media screen and (max-width: 767px) {
				.onair-1st p {
								font-size: 14px;
								max-inline-size: max-content;
								margin: auto;
				}
}

.bg-mid {
				background: url(../images/bg_repeat.png) repeat-y center top 90px/100% auto;
}
@media screen and (max-width: 767px) {
				.bg-mid {
								background-position: center top;
								background-image: url(../images/bg_repeat_sp.png);
				}
}

.content {
				max-width: 1152px;
				margin: 80px auto 0;
				padding: 0 16px;
}
@media screen and (max-width: 767px) {
				.content {
								margin: 60px auto 0;
								max-width: 100%;
				}
}

.box-grid {
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
}
.box-card {
				position: relative;
				display: flex;
				flex-direction: column;
				justify-content: flex-start;
				width: calc(33.3333% - 16px);
				padding: 24px 16px 16px;
				background: #fff;
				border-radius: 6px;
				box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
}
.box-card:nth-child(n+4) {
				margin-top: 48px;
}
@media screen and (max-width: 999px) {
				.box-card {
								width: calc(50% - 16px);
				}
				.box-card:nth-child(n+3) {
								margin-top: 48px;
				}
}
@media screen and (max-width: 767px) {
				.box-card {
								padding: 20px 12px;
								width: 100%;
				}
				.box-card + .box-card {
								margin-top: 32px;
				}
}
.box-card .box-header h2 {
				font-size: 16px;
				font-weight: 700;
				line-height: 1.4;
				margin-bottom: 0;
}
.box-card .label-num {
				display: flex;
				justify-content: center;
				align-items: center;
				color: #e8340c;
				font-size: 22px;
				font-weight: 700;
				line-height: 1.4;
				width: -moz-fit-content;
				width: fit-content;
				margin-top: 12px;
				padding: 2px 8px;
				border-radius: 2px;
				border: 2px solid #e8340c;
				background: #ffeae5;
}
.box-card .label-num > .sm {
				position: relative;
				top: 2px;
				font-size: 14px;
}
@media screen and (max-width: 767px) {
				.box-card .label-num > .sm {
								font-size: 12px;
				}
}
.box-card .box-body {
				padding: 16px 0;
}
.box-card .box-body .company {
				font-size: 14px;
				font-weight: bold;
				line-height: 1.4;
				margin-bottom: 8px;
}
.box-card .box-body .pic {
				margin-bottom: 16px;
}
.box-card .box-body .pic img {
				width: 100%;
				height: auto;
}
.box-card .box-body .summary {
				font-size: 14px;
				line-height: 1.6;
}
.box-card .note {
				font-size: 12px;
				line-height: 1.5;
				margin-top: 8px;
}
.box-card .box-footer .conversion {
				margin-top: 16px;
}
.box-card .box-footer .btn-link,
.box-card .box-footer .btn-entry {
				transition: 0.3s;
				/*
				@media (hover: none) {
					&:active {
						@content;
					}
				}
				*/
}
@media (hover: hover) and (pointer: fine) and (min-width: 768px) {
				.box-card .box-footer .btn-link:hover,
				.box-card .box-footer .btn-entry:hover {
								opacity: 0.7;
								text-decoration: none;
				}
}
.box-card .box-footer .btn-link {
				display: block;
				font-size: 14px;
				font-weight: 700;
				line-height: 1.4;
				color: #513b3b;
				text-align: center;
				padding: 12px 12px;
				width: 100%;
				border-radius: 8px;
				border: 2px solid #513b3b;
}
.box-card .box-footer .btn-entry {
				position: relative;
				display: block;
				font-size: 20px;
				font-weight: 700;
				line-height: 1.4;
				text-align: center;
				color: #fff;
				margin: 16px 0 0;
				padding: 16px 12px;
				width: 100%;
				border-radius: 8px;
				border: 1px solid transparent;
				background: #e96087;
}
@media screen and (max-width: 767px) {
				.box-card .box-footer .btn-entry {
								font-size: 20px;
								padding: 12px 12px;
				}
}
.box-card .box-footer .btn-entry > .icn {
				position: relative;
				display: inline-block;
				padding-right: 24px;
}
.box-card .box-footer .btn-entry > .icn::after {
				transition: 0.3s;
				content: "";
				position: absolute;
				right: 0;
				top: calc(50% - 8.5px);
				width: 17px;
				height: 17px;
				background: url(../images/icn/icn_arr_wht.svg) no-repeat 0 0/100% auto;
}
@media screen and (max-width: 767px) {
				.box-card .box-footer .btn-entry > .icn::after {
								top: calc(50% - 7.5px);
								width: 15px;
								height: 15px;
				}
}

.hero {
				position: relative;
				z-index: 0;
				padding-top: 64px;
}
@media screen and (max-width: 767px) {
				.hero {
								padding-top: 24px;
				}
}
.hero img {
				vertical-align: top;
}

.hero-logo {
				display: flex;
				justify-content: center;
				margin: 0 auto;
}
@media screen and (max-width: 767px) {
				.hero-logo {
								width: 64vw;
				}
}
.hero-logo img {
				height: auto;
				max-width: 100%;
}

.hero-catch {
				font-size: 26px;
				font-weight: 700;
				line-height: 1.8;
				text-align: center;
				margin-bottom: 0;
}
@media screen and (min-width: 768px) and (max-width: 999px) {
				.hero-catch {
								font-size: calc(24px + (26 - 24) * (100vw - 768px) / (999 - 768));
				}
}
@media screen and (max-width: 767px) {
				.hero-catch {
								font-size: 4.5333333333vw;
								line-height: 1.6;
								margin-bottom: 2.1333333333vw;
				}
}
.hero-catch p {
				margin: 0;
}
.hero-catch em {
				font-weight: 700;
}
@media screen and (max-width: 767px) {
				.hero-catch em {
								font-size: 5.8666666667vw;
				}
}
.hero-catch .fs-lg {
				font-size: 138.4615384615%;
				line-height: 0.8;
}
@media screen and (max-width: 767px) {
				.hero-catch .fs-lg {
								font-size: 4.8vw;
				}
}
.hero-catch .fs-xl {
				position: relative;
				top: 3px;
				font-size: 161.5384615385%;
}
@media screen and (max-width: 767px) {
				.hero-catch .fs-xl {
								top: 0.5333333333vw;
								font-size: 8vw;
				}
}