@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');

/*========*/
/* online */
/*========*/

/* 共通
------------------------------*/

.online {
	min-width: auto;
	background: #1C1C1C url(/images/online/2023/common/bg01.png);
	font-family: "NotoSansJP-Regular", 'Noto Sans JP', "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background-attachment: fixed;
	font-size: 14px;
	color: #FFF;
	text-align: left;
	line-height: 1.6;
}

.online * {
	box-sizing: border-box;
}

.online h1, h2, h3, h4, h5, h6 {
	font-size: 100%!important;
	line-height: 100%!important;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
.online {
	font-family: "メイリオ", Meiryo, sans-serif;
}
}

.online img {
	max-width: 100%;
	height: auto;
}

@media (max-width: 1023px) {
	.online h2 img {
		width: 100%;
	}
}

.online a img:hover {
	opacity: .7!important;
}

/* PC/SP出し分け
------------------------------ */
@media (min-width: 1024px) {
.sp {
	display: none !important;
}
}
@media (max-width: 1023px) {
.pc {
	display: none !important;
}
}

.online h2 {
	margin-bottom: 16px;
	padding-bottom: 0;
}

.online h2::before {
	background: none;
}

.online h2::after {
	border: none;
}

/* PC左右ループテキスト
------------------------------*/

@keyframes loop {
	0% {
	transform: translateY(-100%);
	}
	to {
	transform: translateY(0);
	}
}

.online .left-line {
	width: 48px;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #999;
	z-index: 5;
	overflow: hidden;
}

.online .right-line {
	width: 48px;
	height: 100vh;
	position: fixed;
	top: 0;
	right: 0;
	background-color: #999;
	z-index: 5;
	overflow: hidden;
}

.online .left-line img {
	display: block;
	margin: 0 auto;
	animation: loop  10s infinite linear 0.5s both;
}

.online .right-line img {
	display: block;
	margin: 0 auto;
	animation: loop  10s infinite linear 0.5s both;
	animation-direction:reverse;
}


@media (max-width: 1023px) {
	.online .left-line {
		display: none;
	}

	.online .right-line {
		display: none;
	}
}

/* PC右固定SNS
------------------------------*/
.online .f-sns {
	position: fixed;
	top: 40px;
	right: 0;
	width: 18.75%; /*360/1920*/
	max-width: 360px;
	height: 100vh;
	padding: 0 48px;
	text-align: center;
	z-index: 100;
}

.online .f-sns li {
	margin-bottom: 16px;
}

.online .f-sns li img {
	filter: drop-shadow(0px 1px 4px rgba(0,0,0,0.3));
}

@media (max-width: 1023px) {
	.online .f-sns {
		display: none;
	}
}


/* ヘッダー
------------------------------*/
.online header {
	position: fixed !important;
	top: 0;
	left: 0;
	width: calc(100% - (440px + 18.75%)); /*1090/1920*/
	height: 100vh;
	background-color: transparent;
	z-index: 1 !important;
}

.online header .contents {
	max-width: 730px;
	height: auto;
	padding: 5% 8% 5% 48px;
	margin: 0 0 0 auto;
	text-align: left;
	line-height: 1.6;
}

.online header .contents .h-msg {
	margin-top: 1%;
}

.online header .contents .h-logo span:nth-child(n+2) {
	margin-left: 32px;
}

.online header .contents .h-logo img {
    max-width: 20%;
}

.online header .contents .h-msg dd {
	margin-left: 20%;
}

.online header .g-nv {
	height: 100vh;
	padding: 0;
	background: #4F4F4F url(/images/online/2023/common/bg02.png) repeat;
}

.online header .g-nv .contents .menu-nav li {
	margin-bottom: 5%;
}

.online header .g-nv .contents .menu-nav li a,
.online header .g-nv .contents .menu-nav li span {
	display: inline-block;
}

.online header .g-nv .contents .menu-nav li span {
	margin-left: 24px;
}

@media (max-width: 1600px) {
.online header {
	font-size: 14px;
}

.online header .contents {
	 padding: 3% 8%;
}

.online header .contents .h-logo img,
.online header .contents .h-msg img {
	max-width: 16%;
}

.online header .contents .h-msg img {
	max-width: 70%;
}

.online header .g-nv .contents {
	padding: 4% 8%;
}

.online header .g-nv .contents .menu-nav li {
	margin-bottom: 3%;
}

.online header .g-nv .contents .menu-nav li img {
    max-height: 36px;
}
}

@media (max-width: 1500px) {
.online .f-sns {
	padding-right: 80px;
	padding-left: 8px;
}

.online header .contents,
.online header .g-nv .contents{
	padding-left: 80px;
}
}

@media (max-width: 1366px) {
.online header .contents {
	padding: 2% 8% 2% 80px;
}

.online header .contents .h-msg {
	margin-top: 0;
}

.online header .contents .h-logo img {
    max-width: 14%;
}

.online header .g-nv .contents {
	padding: 3% 8% 3% 80px;
}

.online header .g-nv .contents .menu-nav li {
    margin-bottom: 2%;
}

.online header .g-nv .contents .menu-nav li img {
    max-height: 32px;
}

}

@media (max-width: 1023px) {
	.online header {
		width: 100%;
		height: auto;
		background-color: #111;
	}

	.online header .contents {
		max-width: 750px;
		padding: 8px 0;
		margin: 0 auto;
		background: #111;
	}

	.online header .menu {
		position: fixed;
		top: 18px;
		right: 16px;
	}

	.online header .menu .menu-inner {
		position: relative;
		width: 42px;
		height: 18px;
		cursor: pointer;
	}

	.online header .menu .menu-inner span {
		position: absolute;
		width: 100%;
		height: 1px;
		background-color: #FFF;
		transition: .5s all;
	}

	.online header .menu .menu-inner span:nth-child(1) {
		top: 0;
	}

	.online header .menu .menu-inner span:nth-child(2) {
		top: 9px;
	}

	.online header .menu .menu-inner span:nth-child(3) {
		top: 18px;
	}

	.online header .menu.open .menu-inner span:nth-child(1) {
		top: 16px;
		transform: rotate(45deg);
	}

	.online header .menu.open .menu-inner span:nth-child(2) {
		top: 16px;
		transform: rotate(-45deg);
	}

	.online header .menu.open .menu-inner span:nth-child(3) {
		opacity: 0;
	}

	.online header .contents .h-msg {
		display: none;
	}

	.online header .g-nv {
		position: fixed;
		display: none;
		width: 100%;
		height: auto;
		padding: 0;
		background-color: #1C1C1C;
		background-image: none;
	}

	.online header .g-nv .contents {
		padding: 0;
		background: #1C1C1C;
	}

	.online header .g-nv .contents .menu-nav {
		margin-left: 0;
	}

	.online header .g-nv .menu-nav li {
		margin-bottom: 0!important;
		padding: 12px;
		border-bottom: 1px solid #FFF;
		text-align: center;
	}

	.online header .g-nv .contents .menu-nav li a {
		display: block;
	}

	.online header .g-nv .contents .menu-nav li a:hover {
		text-decoration: none;
		opacity: .7;
	}

	.online header .g-nv .contents .menu-nav li span {
		display: block;
		margin-top: 4px;
		margin-left: 0;
	}

	.online header .g-nv .contents .menu-nav li .flex {
		display: flex;
    	justify-content: space-around;
	}

	.online header .g-nv .contents .menu-nav li .flex li {
		border-bottom: none;
		width: 50%;
	}

	.online header .g-nv .contents .menu-nav li .flex li:first-child {
		border-right: 1px solid #FFF;
	}

	.online header .g-nv .contents .list-link {
		text-align: center;
		margin: 24px;
	}

	.online header .g-nv .contents .list-link li img {
		width: 90%;
	}

	.online header .g-nv .contents  .list-link li:not(:first-child) {
		width: 46%;
		display: inline-block;
		margin-top: 16px;
	}

	.online header .contents .h-logo {
		margin-top: 0;
		padding: 0 16px;
	}

	.online header .contents .h-logo span {
		width: 80px;
	}

	.online header .contents .h-logo span:nth-child(n+2) {
		margin-left: 16px;
	}

	.online header .contents .h-logo img {
		max-width: 65px;
	}
}


/* フッター
------------------------------*/
.online footer {
	padding-left: calc(100% - (440px + 18.75%));
	padding-right: 18.75%;
	background-image: none;
}

.online footer .contents {
	max-width: 750px;
	margin: 0 auto;
	padding: 40px 12px 0;
	background: #111;
}

.online footer .contents .list-link {
	margin-bottom: 40px;
	padding: 0 35px;
	text-align: center;
}

.online footer .contents .list-link .mail {
	width: 100%;
	margin-bottom: 17px;
}

.online footer .contents .list-link li:not(:first-child) {
	width: 46%;
	display: inline-block;
}

.online footer .contents .list-link li:last-child {
	margin-left: 4%;
}

.online footer .contents .list-bn {
	padding: 36px;
	border-top: solid 1px #FFF;
	border-bottom: solid 1px #FFF;
}

.online footer .contents .list-bn li {
	margin-bottom: 16px;
}

.online footer .contents .list-bn li:last-child {
	margin-bottom: 0;
}

.online footer .copyright {
	padding: 24px 0;
	background: #111;
	color: #FFF;
	font-size: 11px;
	text-align: center;
	line-height: 1.6;
}

@media (max-width: 1023px) {
	.online footer {
		margin: 0 auto;
		padding: 0;
	}

	.online footer .contents .list-bn li img {
		width: 100%;
	}
}


/* メインコンテンツ共通
------------------------------*/
.online .container {
	padding-left: calc(100% - (440px + 18.75%));
	padding-right: 18.75%;
	filter: drop-shadow(0px 10px 30px rgba(0,0,0,0.8));
}

.online .container section {
	padding: 40px 16px 48px;
	background: #1C1C1C;
}

.online .container .bg-dot {
	background: #111 url(/images/online/2023/common/bg03.png)!important;
}

.online .container .list-movie {
    display: flex;
    flex-wrap: wrap;
}

.online .container .list-movie li {
	width: 47%;
	margin-bottom: 4%;
}

.online .container .list-movie li:nth-child(2n+1) {
	margin-right: 5%;
}

.online .container li figcaption {
    padding: 16px;
	background: #111;
	text-align: left;
}

.online .container .list-report {
    display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
}

.online .container .list-report li {
	width: 47%;
	margin-bottom: 3%;
}

.online .container .list-report li:last-child {
	margin-bottom: 0;
}

.online .container .list-report li:nth-child(2n+1) {
	margin-right: 5%;
}

.online .container .txt {
	position: absolute;
	width: calc(100% - 16px);
	left: 0;
	bottom: 0;
	margin: 8px;
	padding: 8px;
	background: rgba(28,28,28,0.8);
	text-align: left;
}

.online .container .txt li {
	margin-bottom: 0;
	font-size: 10px;
}

.online .container img {
    width: 100%;
}

.online .container a {
	position: relative;
	display: inline-block;
}

.online .container a:hover {
	opacity: .7;
}

.online .list-report li .txt {
	font-size: 12px;
	line-height: 1.3;
}

.online .container .list-report .txt li {
	width: 100%;
}

.online .com-bt {
	display: inline-block;
	margin: 0 auto;
	padding: 18px 24px;
	background-color: #FFF;
	border-radius: 48px;
	font-size: 12px;
	color: #1C1C1C;
	text-align: center;
	line-height: 1;
	transition: .5s all;
}

.online .com-bt:hover {
	text-decoration: none;
	transform: translateY(-2px);
}

.online a {
	color: #FFF;
}

@media (max-width: 1023px) {
	.online .container {
		max-width: 750px;
		margin: 0 auto;
		padding: 0;
		filter: none;
	}

	.online .com-bt {
		padding: 16px;
		border-radius: 24px;
		font-size: 14px;
	}

	.online .list-report li .txt {
		font-size: 10px;
	}
}

/* メイン
------------------------------*/

.online .container .sec-main {
	background: #111;
	padding: 0;
}

.online .container .sec-main h2 {
    margin-bottom: 0;
    padding-bottom: 0;
}

.online .container .sec01 ul li,
.online .container .sec02 ul li,
.online .container .sec04 ul li,
.online .container .sec05 ul li,
.online .container .sec06 ul li,
.online .container .sec07 ul li,
.online .container .sec08 ul li {
	filter: drop-shadow(0px 1px 4px rgba(0,0,0,0.5));
}

.online .otona-movie li figcaption {
	padding: 12px;
	font-size: 12px;
}

.online .otona-movie li figcaption .person-name {
	font-size: 14px;
}

@media (max-width: 1023px) {
	.online .container .sec-main h2 {
		margin-top: 54px;
	}
}

/* sec02
------------------------------*/
.online .sec01 .list-movie li .detail-type img {
    width: auto!important;
    height: 32px;
}

.online .sec01 .list-movie li .detail-type p {
	margin-top: 8px;
}

/* sec02
------------------------------*/

.online .container .sec02 {
	padding-bottom: 100px;
}

.online .sec02 .list-report li:nth-child(n + 3) {
	margin-top: 12%;
}

.online .sec02 .list-report li .detail-type {
	position: absolute;
}

.online .sec02 .list-report li .detail-type p {
	margin-top: 8px;
}

.online .sec02 .list-report li .detail-type img {
    width: auto!important;
    height: 32px;
}

@media (max-width: 1023px) {
	.online .sec02 .list-report li:nth-child(n + 3) {
		margin-top: 7%;
	}
}

@media (max-width: 520px) {
	.online .sec02 .list-report li:nth-child(n + 3) {
		margin-top: 13%;
	}
}

/* sec03
------------------------------*/

.online .sec03 {
	background: #4F4F4F!important;
}

.online .sec03 .heading-news {
	margin-bottom: 8px;
	color: #FFF;
	font-size: 20px!important;
	font-weight: bold;
	text-align: left;
}

.online .sec03 .list-news {
	text-align: left;
}

.online .sec03 .list-news li {
	padding: 16px 0;
	border-bottom: solid 1px #FFF;
}

.online .sec03 .list-news li .date {
	margin-bottom: 8px;
}

.online .btn-area {
	text-align: center;
}

.online .btn-area {
	margin-top: 32px;
}

/* sec04
------------------------------*/

.online .sec04 {
	padding-right: 24px;
	padding-left: 24px;
}

.online .sec04 .slide-movie1_5:first-child {
	margin-bottom: 56px;
}

/* sec05
------------------------------*/

.online .sec05 {
	padding-right: 24px;
	padding-left: 24px;
}

/* sec06
------------------------------*/

.online .sec06 {
	padding-right: 24px;
	padding-left: 24px;
}

.online .sec06 p .pink {
	color: #FF9999;
	font-weight: bold;
}
/* sec08
------------------------------*/
.online .sec08 .heading-news {
	margin-bottom: 16px;
	color: #FFF;
	font-size: 20px!important;
	font-weight: bold;
	text-align: left;
}

.online .sec08 {
	padding-bottom: 0;
}

.online .sec08 .news-list ul {
	display: flex;
	flex-wrap: wrap;
}

.online .sec08 .news-list li {
	width: 47%;
	margin-bottom: 3%;
	padding: 8px;
	background: #111;
	box-shadow: 0 4px 6px rgba(0,0,0,.4);
	color: #FFF;
	text-align: left;
}

.online .sec08 .news-list li:nth-child(2n+1) {
	margin-right: 5%;
}

.online .sec08 .news-list li a {
	display: block;
	text-decoration: none;
}

.online .sec08 .news-list li a:hover {
	opacity: .7;
}

.online .sec08 .news-list .discript {
	font-weight: bold;
	display: flex;
	flex-direction: column;
	margin-top: 8px;
}

.online .sec08 .news-list .discript p {
	width: 100%;
	font-weight: 700;
	line-height: 1.3;
}

.online .sec08 .news-list .discript br {
	display: none;
}

.online .sec08 .news-list .discript p img {
	display: block;
}

.online .sec08 .news-list .discript p:nth-child(1) {
	order: 2;
	width: 100%;
	padding-top: 8px;
	padding-bottom: 8px;
}
.online .sec08 .news-list .discript p:nth-child(2) {
	order: 1;
	width: 100%;
}

.online .sec08 .news-list .date {
	color: #FFF;
	font-size: 14px;
	font-weight: 500;
}

.online .sec08 .news-list .title {
	margin: 8px 0 16px;
	font-weight: 700;
	line-height: 1.3;
}

.online .sec08 .news-list .lbl {
	color: #FFF;
	font-size: 13px;
	text-align: right;
}

/* slide
------------------------------*/

.online .slide-movie2 .slick-slide {
    margin-right: 16px;
}

.online .slide-movie1_5 .slider li .txt {
	font-size: 14px;
}

.online .slide-movie1_5 .slick-list {
    padding: 0 32% 0 0 !important;
}

.online .slide-movie1_5 .slick-list img {
	width: 100%;
}

.online .slide-movie1_5 .slick-slide {
    margin-right: 15px;
}

.online .slick-dots {
	position: static!important;
}

.online .slider .slick-dots li.slick-active button:before {
    color: #fff;
    font-size: 10px;
    content: '●';
}

.online .slick-dots li button:before {
    color: #fff;
    font-size: 8px;
    content: '●';
}

.online .sec04 .slider .slick-dots li.slick-active button:before {
	color: #4092F0;
}

.online .sec04 .slick-dots li button:hover:before {
	color: #4092F0;
    font-size: 8px;
    content: '●';
	opacity: 0.8;
}

.online .sec05 .slider .slick-dots li.slick-active button:before {
	color: #80DB80;
}

.online .sec05 .slick-dots li button:hover:before {
	color: #80DB80;
    font-size: 8px;
    content: '●';
	opacity: 0.8;
}

.online .sec06 .slider .slick-dots li.slick-active button:before {
	color: #FF9924;
}

.online .sec06 .slick-dots li button:hover:before {
	color: #FF9924;
    font-size: 8px;
    content: '●';
	opacity: 0.8;
}

.online .sec07 .slider .slick-dots li.slick-active button:before {
	color: #F87054;
}

.online .sec07 .slick-dots li button:hover:before {
	color: #F87054;
    font-size: 8px;
    content: '●';
	opacity: 0.8;
}

@media (max-width: 1023px) {
.online .slide-movie1_5 .slider li .txt {
	font-size: 12px;
}

}


/* 一覧ページ
------------------------------*/
.online .otona .list-bn,
.online .otonanews .list-bn {
    margin-bottom: 40px;
	display: flex;
    justify-content: space-around;
}

.online .otona .list-bn li:nth-child(2n+1),
.online .otonanews .list-bn li:nth-child(2n+1) {
    margin-right: 5%;
}

/* ページネーション
--------------------------------------------*/
.online .wp-pagenavi {
	display: block;
	margin-top: 32px;
	text-align: center;
}

.online .wp-pagenavi .pages {
	display: none;
}

.online .wp-pagenavi .previouspostslink,
.online .wp-pagenavi .nextpostslink {
	border: none;
}


.online .wp-pagenavi a,
.online .wp-pagenavi span {
	border-radius: 3px;
}
.online .wp-pagenavi a:hover,
.online .wp-pagenavi span {
	background-color: #4092F0;
	color: #FFF;
	text-decoration: none;
}

.online .wp-pagenavi .page,
.online .wp-pagenavi .current {
	margin: 0 16px;
	padding: 10px 16px;
	background-color: #fff;
	color: #1C1C1C;
}

.online .wp-pagenavi .current {
	border: 1px solid #4092F0;
	background-color: #4092F0;
	color: #fff;
}

.online .wp-pagenavi .prev {
	margin-right: 8px;
}

.online .wp-pagenavi .next {
	margin-left: 8px;
}

.online .wp-pagenavi .prev img,
.online .wp-pagenavi .next img {
	width: 13px;
}

@media (max-width: 1023px) {
	.online .wp-pagenavi {
		margin-bottom: 16px;
	}
}


/* 詳細ページ
------------------------------*/
.online .detail h3 {
	position: relative;
	margin-top: 32px;
	margin-bottom: 32px;
	font-size: 18px!important;
	font-weight: bold;
	line-height: 1.3!important;
}

.online .detail h3:after {
	display: block;
    position: absolute;
    width: 100%;
    height: 2px;
	margin-top: 8px;
    background: linear-gradient(90deg,#FF5B72 0%,#7E4CB7 100%);
    content: "";
}

.online .detail h4 {
	margin-bottom: 16px;
	color: #FF9999;
	font-size: 18px!important;
	font-weight: bold;
	line-height: 1.5!important;
}

.online .detail h5 {
	margin-bottom: 8px;
	color: #FFF;
	font-size: 14px!important;
	font-weight: bold;
	line-height: 1.5!important;
}

.online .detail h6 {
	margin-bottom: 8px;
	color: #FFF;
	font-size: 14px!important;
	font-weight: bold;
	line-height: 1.5!important;
}

.online .detail p,
.online .detail figure,
.online .detail ul {
	margin-bottom: 16px;
}

.online .detail .msg-area {
	margin-bottom: 40px;
}

.online .container .list-col2 {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.online .container .list-col2 li {
	width: 48%;
}

@media (max-width: 1023px) {
.online .detail h2 {
	margin-top: 32px;
}
}


/* 投稿画像 */

.alignleft,
img.alignleft {
	display: inline;
	float: left;
	margin-right: 24px;
	margin-top: 4px;
}

.alignright,
img.alignright {
	display: inline;
	float: right;
	margin-left: 24px;
	margin-top: 4px;
}

.aligncenter,
img.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}

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