@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap');


@media screen and (max-width:1024px) {
}
@media screen and (max-width:599px) {
}


/* ******************************************
	General
****************************************** */

html,
body {
	margin: 0;
	padding: 0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 18px;
	line-height: 1.75em;
	color: #181818;
	position: relative;
}
html {
	scroll-behavior: smooth;
}

main {
	margin: 0;
	padding: 0;
	padding-left: 70px;
	background-color: #fff;
	min-height: calc(100vh - 132px);
}
section {
	width: 100%;
	margin: 0 auto;
	padding: 85px 0;
}

h1 {
	margin: 0;
	padding: 0;
	font-size: 50px;
	line-height: 1.2em;
	letter-spacing: 1px;
  font-style: normal;
	color: #181818;
}
h2 {
	margin: 0 0 40px;
	padding: 0;
	font-size: 36px;
	line-height: 1.46em;
	letter-spacing: 2px;
}
h3 {
	margin: 0 0 45px;
	padding: 0;
	font-size: 28px;
	font-weight: normal;
}
h4 {
	margin: 0;
	margin-bottom: 10px;
	padding: 0;
	font-size: 24px;
	font-weight: normal;
}

p {
	padding: 0;
	margin: 0;
}
a {
	text-decoration: none;
	color: #000;
}
img {
	width: 100%;
	height: auto;
	border: none;
}
picture {
	width: 100%;
	display: block;
	padding: 0;
	margin: 0 auto;
	line-height: 0.1em;
	overflow: hidden;
}
picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
i, address {
	font-style: normal;
}

@media screen and (max-width:1024px) {
}
@media screen and (max-width:768px) {
	main {
		padding-left: 0;
		padding-bottom: 50px;
	}
	section {
		padding: 50px 0;
	}
}
@media screen and (max-width:600px) {
	section {
		padding: 30px 0;
	}
	h1 {
		font-size: 35px;
	}
	h2 {
		margin: 0 0 20px;
		font-size: 28px;
	}
	h3 {
		margin: 0 0 20px;
		font-size: 24px;
	}
	h4 {
		font-size: 21px;
	}
}


/* ******************************************
	class
****************************************** */
.wrap {
	width: 90%;
	max-width: 1250px;
	margin: 0 auto;
	position: relative;
}
.wrap.min {
	max-width: 950px;
}

/* 余白 */
.pr30 { padding-right: 30px; }
.pr40 { padding-right: 40px; }
.pr75 { padding-right: 75px; }
.pr100 { padding-right: 100px; }

.pl10p { padding-left: 10%; }
.pl30 { padding-left: 30px; }
.pl40 { padding-left: 40px; }
.pl75 { padding-left: 75px; }
.pl100 { padding-left: 100px; }

.mt15 { margin-top: 15px; }
.mt50 { margin-top: 50px; }
.mt80 { margin-top: 80px; }

.mb15 { margin-bottom: 15px; }
.mb25 { margin-bottom: 25px; }
.mb50 { margin-bottom: 50px; }
.mb80 { margin-bottom: 80px; }


/* 文字カラー */
.f_color_wh { color: #fff; }
.f_color_bk { color: #181818; }


/* 背景カラー */
.bg_color_gr { background-color: #3e3a39; }
.bg_color_lgr { background-color: #eee; }
.bg_color_bk { background-color: #181818; }
.bg_color_wh { background-color: #fff; }
/* .bg_color_al { background-image: linear-gradient(88deg, rgba(0, 159, 232, 1), rgba(178, 92, 159, 1)); } */
.bg_color_al { background-color: #fff; }
.bg_check {
/* 	background-image: url(../images/common/bak_check.png);
	background-size: 4%; */
	background-color: #fff;
}


/* 縦書き */
.vertical {
	writing-mode: vertical-rl;
	text-orientation: upright;
}

/* 文字揃え */
.talign_l {
	text-align: left;
}
.talign_r {
	text-align: right;
}
.talign_c {
	text-align: center;
}



/* 改行 */
.wbr {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}
.wbr.center {
  justify-content: center;
}
.wbr i {
	display: inline-block;
	font-style: normal;
	white-space: nowrap;
}


/* ボタン */
.btn_more {
	display: block;
	text-align: right;
	margin-top: 20px;
}
.btn_more a {
	color: #29a1d9;
	line-height: 1em;
	transition: 0.8s;
}
.btn_more a:hover {
	color: #b25c9f;
	transition: 0.8s;
}

@media screen and (max-width:600px) {
}
@media screen and (max-width:500px) {
}



/* ******************************************
	header
****************************************** */
header {
	width: calc(100% - 70px);
	margin-left: 70px;
	background-color: #fff;
/* 	background-image: url('../images/common/head_back.png');
	background-position: left top;
	background-size: cover;
	background-repeat: no-repeat; */
	transition: 0.5s;
}
header nav {
	width: 90%;
	margin: 0 auto;
	padding: 10px 0;

	display: flex;
	justify-content: space-between;
	align-items: center;
}
header nav h1 {
	width: 85px;
	margin: 0;
	padding: 0;
}
header nav h1 a {
	display: block;
	line-height: 0.1em;
}
header nav h1 img {
	width: 100%;
}

header nav .links {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}
header nav ul.lk_contents {
	padding: 3px;
	margin: 0;
	list-style: none;
	background-color: #231815;
	border-radius: 999px;

	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}
header nav ul.lk_contents li {
	padding: 0;
	margin: 0;
	border-radius: 999px;
}
.privacy-policy header nav ul.lk_contents li.privacy,
.index header nav ul.lk_contents li.index,
.about header nav ul.lk_contents li.about,
.faq header nav ul.lk_contents li.faq {
	background-color: #333;
}
header nav ul.lk_contents li a {
	display: block;
	line-height: 1em;
	color: #fff;
  font-style: normal;
	padding: 3px 20px;
	font-size: 14px;
	transition: 0.5s;
}
header nav ul.lk_contents li a {
	display: block;
	line-height: 1em;
	color: #fff;
  font-style: normal;
	padding: 3px 20px;
	font-size: 14px;
	transition: 0.5s;
}
.privacy-policy header nav ul.lk_contents li.privacy a,
.index header nav ul.lk_contents li.index a,
.about header nav ul.lk_contents li.about a,
.faq header nav ul.lk_contents li.faq a {
	color: #29a1d9;
}
header nav ul.lk_contents li a:hover {
	color: #29a1d9;
	transition: 0.5s;
}

header nav ul.lk_sns {
	padding: 3px;
	margin: 0;
	list-style: none;

	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}
header nav ul.lk_sns li {
	padding: 0;
	margin: 0;
	margin-left: 12px;
	aspect-ratio: 1/1;
	width: 35px;
}
header nav ul.lk_sns li a {
	line-height: 0.1em;
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}


@media screen and (max-width:768px) {
	header {
		width: 100%;
		margin-left: 0;
	}
	header nav ul.lk_contents,
	header nav ul.lk_sns {
		display: none;
	}
}
@media screen and (max-width:600px) {
}



/* ******************************************
	sidemenu
****************************************** */
.sidemenu {
	width: 69px;
	background-color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	height: 100vh;
	border-right: 1px solid #eee;
	
	display: flex;
	flex-direction: column;
}
.sidemenu section {
	width: 60%;
	margin: 0 auto;
	padding: 30px 0;

	display: flex;
	flex-direction: column;
}
.sidemenu section a {
	font-size: 12px;
	padding-top: 25px;
	margin-bottom: 10px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	transition: 0.8s;
	color: #000;
}
.sidemenu section a::before {
	content: '';
	position: absolute;
	width: 30px;
	top: 0;
	aspect-ratio: 1/1;
	margin-bottom: 6px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	transition: 0.8s;
}
.sidemenu section a.home::before {
	background-image: url('../images/common/home_filled_24dp.svg');
}
.sidemenu section a.serch::before {
	background-image: url('../images/common/search_24dp.svg');
}
.sidemenu section a:hover {
	color: #29a1d9;
	transition: 0.8s;
}
.sidemenu section a.home:hover::before {
	background-image: url('../images/common/home_filled_24dp_29a1d9.svg');
}
.sidemenu section a.serch:hover::before {
	background-image: url('../images/common/search_24dp_29a1d9.svg');
}

.copyright {
	position: fixed;
	left: 0;
	bottom: 0;
	display: block;
	width: 69px;
	margin: 0;
	padding: 12px 0;
	text-align: center;
	color: #000;
	font-size: 75%;
}


@media screen and (max-width:768px) {
	.sidemenu {
		width: 100%;
		position: fixed;
		top: unset;
		left: unset;
		bottom: 0;
		height: unset;
		border-top: 1px solid #eee;
		border-right: unset;
		z-index: 9999;
	}
	.sidemenu section {
		width: 100%;
		padding: 10px 0 0;
		flex-direction: unset;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	.sidemenu section a {
		margin: 0 2%;
	}
	.copyright {
		position: relative;
		bottom: unset;
		width: 100%;
		padding-bottom: 80px;
/* 		z-index: 1; */
	}
}
@media screen and (max-width:600px) {
}


/* ******************************************
	footer
****************************************** */
footer {
	width: 100%;
	padding: 0;
	margin: 0;
	background-color: #fff;
	position: relative;
}
footer .copyright {
	display: block;
	width: 100%;
	margin: 0;
	padding: 12px 0;
	text-align: center;
	color: #000;
	font-size: 14px;
}

@media screen and (max-width:1024px) {
}
@media screen and (max-width:768px) {
}
@media screen and (max-width:600px) {
}



/* ******************************************
	page_title
****************************************** */
#page_title {
}
#page_title h1 {
	margin-bottom: 0;
}

@media screen and (max-width:768px) {
}
@media screen and (max-width:600px) {
}
@media screen and (max-width:450px) {
}



/* ******************************************
	breadcrumb
****************************************** */
#breadcrumb {
	padding: 0;
}
#breadcrumb .wrap {
	padding: 20px 0;
	position: relative;
	text-align: left;
}
#breadcrumb .wrap a {
	display: inline-block;
	margin-right: 20px;
}
#breadcrumb .wrap a::after {
	content: ' /';
}

@media screen and (max-width:768px) {
}
@media screen and (max-width:600px) {
}
@media screen and (max-width:425px) {
}






/* ******************************************
	pagetop
****************************************** */
.gotop, .gohome {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
	overflow:hidden;
	cursor: pointer;
	-webkit-transition: all 0.7s linear;
	-o-transition: all 0.7s linear;
	transition: all 0.7s linear;
	z-index: 10000;
}
.gohome {
	right: 60px;
}
#top,#gohome {
	background-color: rgba(255,255,255,0.9);
	border: 1px solid #3e3a39;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	text-align:center;
	position: relative;

	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#top::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-top: 1px solid #3e3a39;
	border-right: 1px solid #3e3a39;
	transform: rotate(-45deg);
	position: absolute;
	top: 13px;
}
#gohome::before {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	background-image: url(../images/common/home_filled_24dp.svg);
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}
@media screen and (max-width: 600px){
}







/* 下から上のフェードイン */
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}






/* *******************
	movie_list
******************* */
.movie_list {
	padding-top: 20px;
	padding-bottom: 0;
}
.serchkekka .movie_list {
	width: 90%;
	max-width: 1250px;
	margin: 0 auto;
}
.movie_list .slider {
	width: 100%;
	overflow: hidden;
}
.movie_list .slider .slick-list {
	width: 100%;
}
.movie_list .slick-slide {
	margin: 0 8px 0 0;
}
.movie_list .slick-track {
    margin-left: 1.8%;
}
.movie_list .slider .item {
	padding: 0;
}
.movie_list .slider .item:hover {
	cursor: pointer;
}
.movie_list .slider .item picture {
	aspect-ratio: 84/47;
	padding: 0;
	margin: 0 10px 0 0;
	border-radius: 8px;
	margin-bottom: 4px;
	line-height: 0.1em;
	overflow: hidden;

	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
.movie_list .slider .item picture img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
	transition: 0.5s;
}
.movie_list .slider .item picture img:hover {
	width: 110%;
	height: 110%;
	object-position: center 55%;
	transition: 0.5s;
}
.movie_list .slider .item h3 {
	margin: 0;
	font-size: 14px;
	line-height: 1.2em;
}
#new_movie .item h3 {
	color: #000;
}
.movie_list .slider .item h3::before {
	display: inline-block;
	background-color: #000;
	border-radius: 4px;
	font-size: 13px;
	padding: 2px 3px;
	color: #fff;
	margin-right: 4px;
	line-height: 1em;
}
.movie_list .slider .movie h3::before {
	content: '動画';
}
.movie_list .slider .document h3::before {
	content: '記事';
}

.movie_list .contents_b {
	padding-bottom: 60px;
}

.movie_list h2 {
	color: #000;
	margin-left: 2%;
	margin-bottom: 18px;
}

@media screen and (max-width:768px) {
}
@media screen and (max-width:600px) {
	.movie_list .slider .slick-list {
		width: 100%;
	}
}
@media screen and (max-width:450px) {
}





/* ******************************************
	マグネットタブ
****************************************** */
button {
  padding: 0;
  border: none;
  font: inherit;
  color: inherit;
  background: none;
  touch-action: manipulation;
  cursor: pointer;
}

.l-inner {
  padding: 10px 0;
}

.c-tab {
  position: relative;
}
.tabbox {
  display: inline-block;
  margin: 0 auto 35px;
  border-radius: 9999px;
  background-color: rgba(0,0,0,.2);
}
#serch_list {
	margin-bottom: 80px;
}
#serch_list .tabbox {
	width: 100%;
/*   border-radius: unset; */
	position: relative;
}
.c-tab__list {
  padding: 0;
  margin: 0 auto;
  list-style: none;

  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-tab__list li {
  padding: 0;
  margin: 6px;
}
#serch_list .c-tab__list li {
	width: 11%;
	text-align: center;
}

.c-tab__button {
  position: relative;
  z-index: 1;
  transition: color 0.3s;
  padding: 7px 50px;
  margin: 0;
	white-space: nowrap;
}
#serch_list .c-tab__button {
	width: 100%;
	padding: 7px 0;
}

.c-tab__body-item p {
	margin-bottom: 25px;
}
.c-tab__body-item[aria-hidden="true"] {
  display: none;
}
#serch_list .c-tab__body-item .item {
	border-bottom: 1px solid #ccc;
}
#serch_list .c-tab__body-item .item a {
	width: 100%;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 15px 0;
}
#serch_list .c-tab__body-item .item picture {
	width: 250px;
	margin: 0;
}
#serch_list .c-tab__body-item .item .text {
	width: calc(100% - 300px);
}
#serch_list .c-tab__body-item .item .text h3 {
	margin-bottom: 10px;
}


.c-tab__bg {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #f0f0f0;
  z-index: -1;
  pointer-events: none;
  transition-property: transform, width, height;
  transition-duration: 0.3s;
  transition-timing-function: ease;
  border-radius: 9999px;
}
#serch_list .c-tab__bg {
/*   border-radius: unset; */
  background-color: rgba(0,0,0,.3);
  z-index: 1;
}

@media screen and (max-width:600px) {
	#serch_list .tabbox {
		background-color: unset;
		border-bottom: 1px solid #ccc;
		border-radius: 0;
	}
	#serch_list .c-tab__bg {
		border-radius: unset;
	}
	#serch_list .c-tab__list li {
		width: 55px;
		border: 1px solid #eee;
	}

	.c-tab__button {
	  padding: 4px 20px;
	}
	#serch_list .c-tab__button {
	  padding: 4px 0;
	}
	#serch_list .c-tab__body-item .item picture {
		width: 180px;
	}
	#serch_list .c-tab__body-item .item picture img {
		object-fit: contain;
		object-position: center top;
	}
	#serch_list .c-tab__body-item .item .text {
		width: calc(100% - 220px);
	}
}
@media screen and (max-width:450px) {
	.c-tab__button {
	  padding: 3px 12px;
	}
	#serch_list .c-tab__button {
	  padding: 3px 0;
	}
	#serch_list .c-tab__body-item .item picture {
		width: 100%;
		margin-bottom: 10px;
	}
	#serch_list .c-tab__body-item .item .text {
		width: 100%;
	}
}





/* serch404 */
#serch404 #page_title {
	padding-top: 100px;
}
#serch404 .btn_more {
	text-align: center;
}



/* serchform */
#serchform {}
#serchform .search-form input {
	width: calc(100% - 2px);
	border-radius: 9999px;
	border: 1px solid #ccc;
	display: block;
	padding: 12px 20px 12px 50px;
	font-size: 18px;
	position: relative;
	background-image: url(../images/common/search_24dp.svg);
	background-position: 20px center;
	background-size: auto 25px;
	background-repeat: no-repeat;
}
#serchform .search-form input::placeholder {
	color: #ccc;
}



/* serchbox */
body.serchbox #contents {
	width: 90%;
    max-width: 1250px;
    margin: 0 auto;
}
body.serchbox #new_movie {
	width: 90%;
    max-width: 1250px;
    margin: 0 auto;
	border-top: 1px solid #ccc;
}
.serchlist {
	padding-top: 0;	
	border-bottom: 1px solid #ccc;
	margin-bottom: 50px;
}
.serchlist ul {
	padding-left: 0;
}


/* privacy-policy */
#privacy_list dl {
	padding: 0;
	margin: 0;
	margin-top: 35px;
}
#privacy_list dl dt {
	padding: 0;
	margin: 0;
	font-weight: bold;
}
#privacy_list dl dd {
	padding: 0;
	margin: 0;
	margin-bottom: 35px;
}