@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : hulu.css
Description :
===================================================================== */
.hulu {
	color: #000;
}
.hulu::before {
	content: '';
	position: absolute;
	background: url(../images/hulu/bg_hulu.jpg) no-repeat center top/cover;
	width: calc(1600 / 750 * 100%);
	height: calc(230 / 750 * 100vw);
	top: 0;
	left: -57%;
	margin: calc(40 / 750 * 100%) auto 0;
}
.sec_subttl {
	display: block;
}
.sec_subttl::before {
	content: '';
	position: absolute;
	height: 1px;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #b1b0b0;
}
.sec_subttl_ja {
	display: block;
	font-size: 2.2rem;
	font-weight: 700;
	color: #5e5e5e;
	margin-top: .3em;
}

@media screen and (min-width: 768px) {
	.hulu {
	}
	.hulu::before {
		width: 100%;
		height: calc(190 / 1200 * 100vw);
		left: 0;
		right: 0;
		margin: calc(55 / 1200 * 100%) auto 0;
	}
	.sec_subttl_ja {
		font-size: 1.6rem;
	}
}
@media screen and (min-width: 1200px) {
	.hulu::before {
		padding: 100px 0 0;
		background-size: 1600px auto;
		margin: 55px auto 0;
	}
}
/* =====================================================================
*   hulu_movie
* =================================================================== */
.hulu_movie {
}

.hulu_movie .sec_ttl {
	margin: 0 0 calc(140 / 750 * 100%);
}
.movie_box {
	margin-bottom: calc(100/630 * 100%);
}
.hulu_movie_logo {
	width: calc(333/630 * 100%);
	margin: 0 auto calc(40/630 * 100%) calc(138/630 * 100%);
}
.story_movie_photo {
	width: calc(690/630 * 100%);
	margin: 0 0 calc(20 / 630 * 100%);
}
.story_movie_photo::before {
	background: #ff4800;
	background: -webkit-gradient(
		linear,
		left top,
		right top,
		from(#ff4800),
		color-stop(25%, #f7480e),
		color-stop(50%, #4451ff),
		color-stop(75%, #228cd6),
		to(#10ca95)
	);
	background: linear-gradient(to right, #ff4800 0%, #f7480e 25%, #4451ff 50%, #228cd6 75%, #10ca95 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff4800', endColorstr='#10ca95', GradientType=1);
}
.hulu_movie_btn::before {
	content: "";
	display: block;
	width: calc(107 / 750 * 100vw);
	height: calc(107 / 750 * 100vw);
	position: absolute;
	border: 2px solid #fff;
	border-radius: 50%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
}
.hulu_movie_btn::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: calc(35 / 750 * 100vw);
	height: calc(10 / 750 * 100vw);
	border-bottom: calc(3 / 750 * 100vw) solid #fff;
	border-right: calc(3 / 750 * 100vw) solid #fff;
	-webkit-transform: skew(25deg);
	transform: skew(25deg);
	z-index: 2;
}

.hulu_movie_txt {
	text-align: center;
	font-size: 2.8rem;
}
.hulu_movie_txt strong {
	font-weight: 700;
	font-size: 4.4rem;
    color: #c91149;
}
.hulu_movie_txt span {
	color: #c91149;
	display: block;
	position: relative;
}
.hulu_movie_txt span::before,
.hulu_movie_txt span::after {
	content: "";
	display: block;
	width: calc(30/630 * 100%);
	height: 1px;
	background: #c91149;
	position: absolute;
	top: 50%;
}
.hulu_movie_txt span::before {
	left: 0;
	margin-left: calc(-30/630 * 100%);
}

.hulu_movie_txt span::after {
	right: 0;
    margin-right: calc(-30/630 * 100%);
}
@media screen and (min-width: 768px) {
	.hulu_movie .sec_ttl {
		margin: 0 0 calc(135 / 1000 * 100%);
	}
	.movie_box {
		margin-bottom: calc(86/1000 * 100%);
	}
	.hulu_movie_logo {
		width: calc(333/1000 * 100%);
		margin: 0 auto calc(45/1000 * 100%) calc(338/1000 * 100%);
	}
	.story_movie_photo {
		width: calc(800/1000 * 100%);
		margin: 0 auto calc(44/1000 * 100%);
	}
	.hulu_movie_txt {
		font-size: 1.8rem;
	}
	.hulu_movie_txt strong {
		font-size: 3.2rem;
	}
	.hulu_movie_txt span {
		margin-top: calc(11/1000 * 100%);
		font-size: 1.6rem;
	}
	.hulu_movie_txt span::before,
	.hulu_movie_txt span::after {
		width: calc(22/1000 * 100%);
	}
	.hulu_movie_txt span::before {
		margin-left: calc(290/1000 * 100%);
	}
	.hulu_movie_txt span::after {
		margin-right: calc(290/1000 * 100%);
	}
	.hulu_movie_btn:hover {
		opacity: 0.7;
	}

	.hulu_movie_btn::before {
		width: calc(107 / 1200 * 100vw);
		height: calc(107 / 1200 * 100vw);
	}

	.hulu_movie_btn::after {
		width: calc(35 / 1200 * 100vw);
		height: calc(10 / 1200 * 100vw);
		border-bottom: calc(3 / 1200 * 100vw) solid #fff;
		border-right: calc(3 / 1200 * 100vw) solid #fff;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_movie .sec_ttl {
		margin: 0 0 135px;
	}

	.hulu_movie_btn::before {
		width: 100px;
		height: 100px;
	}

	.hulu_movie_btn::after {
		width: 35px;
		height: 10px;
		border-bottom: 3px solid #fff;
		border-right: 3px solid #fff;
	}
}

/* =====================================================================
*    trial 
* =================================================================== */

.hulu_trial {
	padding: calc(60 / 750 * 100%) 0;
	background: url(../images/hulu/bg_trial_sp.png) no-repeat center/cover;
	background-color: #fdfdfd;
}

.hulu_trial .hulu_link_ttl {
	color: #000;
	font-weight: 700;
	font-size: 3.4rem;
	position: relative;
	margin: 0 auto -2.6rem;
	width: calc(570/630 * 100%);
}
.hulu_trial .hulu_link_ttl::before,
.hulu_trial .hulu_link_ttl::after {
	content: '';
	position: absolute;
	background-color: #000;
	height: 1px;
	width: calc(102/570 * 100%);
	top: 50%;
	bottom: 0;
}
.hulu_trial .hulu_link_ttl::before {
	left: 0;
}
.hulu_trial .hulu_link_ttl::after {
	right: 0;
}
.hulu_trial_link {
	width: calc(570/630 * 100%);
	border-bottom: 1px solid #000;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
	padding: calc(70 / 630 * 100%) 0;
	margin: 0 auto;
}
.hulu_link_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
}
.hulu_link_list li {
	width: calc(300 / 570 * 100%);
	margin: 0 0 0 calc(-30/570*100%);
}
.hulu_link_list li:last-child {
	margin: 0 calc(-30/570*100%) 0 0;
}
.hulu_link_list li a {
	-webkit-box-shadow: 0 calc(15 / 750 * 100vw) calc(15 / 750 * 100vw) rgba(0, 0, 0, 0.1);
	box-shadow: 0 calc(15 / 750 * 100vw) calc(15 / 750 * 100vw) rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 768px) {
	.hulu_trial {
		padding: calc(52 / 1000 * 100%) 0 calc(65 / 1000 * 100%);
		background: url(../images/hulu/bg_trial_pc.png) no-repeat center/cover;
	}
	.hulu_trial .hulu_link_ttl {
		font-size: 2.4rem;
		margin: 0 auto -1.8rem;
		width: calc(790/1000 * 100%);
	}
	.hulu_trial .hulu_link_ttl::before,
	.hulu_trial .hulu_link_ttl::after {
		width: calc(230/790 * 100%);
	}
	.hulu_trial_link {
		width: calc(790 / 1000 * 100%);
		padding: calc(50 / 790 * 100%) 0;
	}

	.hulu_link_list {
		width: calc(640/790 * 100%);
		margin: 0 auto;
	}
	.hulu_link_list li {
		width: calc(300 / 640 * 100%);
		margin: 0 calc(30 / 640 * 100%) 0 0;
	}
	.hulu_link_list li:last-child {
		margin-right: 0;
	}
	.hulu_link_list li a {
		font-size: 2rem;
		top: 0;
		-webkit-box-shadow: 0 calc(15 / 1200 * 100vw) calc(15 / 1200 * 100vw) rgba(0, 0, 0, 0.1);
		box-shadow: 0 calc(15 / 1200 * 100vw) calc(15 / 1200 * 100vw) rgba(0, 0, 0, 0.1);
		-webkit-box-shadow: 0 1.25vw 1.25vw rgba(0, 0, 0, 0.1);
		box-shadow: 0 1.25vw 1.25vw rgba(0, 0, 0, 0.1);
	}

	.hulu_link_list li a:hover {
		top: 0.5em;
		-webkit-box-shadow: 0 calc(5 / 1200 * 100vw) calc(5 / 1200 * 100vw) rgba(0, 0, 0, 0.1);
		box-shadow: 0 calc(5 / 1200 * 100vw) calc(5 / 1200 * 100vw) rgba(0, 0, 0, 0.1);
		-webkit-box-shadow: 0 0.42vw 0.42vw rgba(0, 0, 0, 0.1);
		box-shadow: 0 0.42vw 0.42vw rgba(0, 0, 0, 0.1);
	}
}

@media screen and (min-width: 1200px) {
	.hulu_trial {
		padding: 52px 0 65px;
	}
	.hulu_trial_link li {
		max-width: 300px;
	}
}
/* =====================================================================
*    hulu_intro
* =================================================================== */
.hulu_intro {
	padding: calc(120 / 750 * 100%) 0 calc(100 / 750 * 100%);
}
.hulu_intro .sec_ttl {
	margin-bottom: calc(67/1000 * 100%);
	text-align: right;
}
.hulu_intro_txt {
	font-size: 3.2rem;
	text-align: center;
    line-height: 1.75;
}
.hulu_intro_txt strong {
	font-weight: 700;
}

@media screen and (min-width: 768px) {
	.hulu_intro {
		padding: calc(160 / 1200 * 100%) 0;
	}
	.hulu_intro_txt {
		font-size: 2rem;
	}
	.hulu_intro .sec_ttl {
		margin-bottom: calc(67/1000 * 100%);
	}
	.hulu_intro .sec_subttl img {
		width: calc(650/1000 * 100%);
		margin: 0 0 0 auto;
	}
	.hulu_intro .sec_subttl::before {
		width: calc(154/1000 *100%);
		margin-left: calc(162/1000 * 100%);
		left: 0;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_intro {
		padding: 160px 0;
	}
}

/* =====================================================================
*    hulu_story
* =================================================================== */
.hulu_story {
	padding: calc(126 / 750 * 100%) 0 calc(70 / 750 * 100%);
	background-color: #f8f8f8;
}
.hulu_story .sec_ttl {
	margin-bottom: calc(85/630 * 100%);
	text-align: right;
}
.hulu_story .sec_subttl img {
	width: calc(273/630 * 100%);
	margin: 0 0 0 auto;
}
.hulu_story .sec_subttl::before {
	width: calc(154/630 *100%);
	left: 0;
	margin-left: calc(156/630 * 100%);
}

.story_date_tab {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 0 calc(87 / 630 * 100%);
}
.story_date_tab li {
	width: calc(310 / 630 * 100%);
	margin-bottom: calc(10/630*100%);
    position: relative;
}
.story_date_tab li.nolink::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.story_date_tab li.nolink span {
	background-color: #aeaeae;
}

.story_date_tab li span {
	display: block;
	background-color: #1b1b1b;
	padding: 0.92em 0 0.92em calc(53/310 * 100%);
	color: #FFF;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: left;
	cursor: pointer;
/*	position: relative;*/
}

.story_date_tab li.nolink span {
    color: #e8e8e8;
}

.story_date_tab li span.is-active {
	background-color: #e1234d;
}
.story_date_tab li::before {
	content: "";
	display: block;
	position: absolute;
	width: calc(40/310*100%);
	height: 1px;
	background-color: #f8f8f8;
	top: 50%;
	left: 0;
	transform: rotateY(-50%);
	z-index: 2;
}
.story_date_tab li span.up::before {
	content: "";
	display: block;
	position: absolute;
	background: url(../images/hulu/bg_up.png) no-repeat top right/contain;
	width: calc(70/310*100%);
	padding-top: calc(30/310 * 100%);
	top: 0;
	right: 0;
/*    left: 82.3%;*/
/*	margin: 0 0 0 calc(250/310 * 100%);*/
}

.story_date_tab li span.up.is-active::before {
    background: url(../images/hulu/bg_up2.png) no-repeat top right/contain;
}


.story_date_panel > li {
	display: none;
}
.story_date_panel li.is-show {
	display: block !important;
}

.story_photo {
	margin-bottom: calc(118/630 * 100%);
}
.story_txt {
	font-size: 2.8rem;
	line-height: 1.75;
}
.story_box_photo {
	width: calc(600 / 630 * 100%);
	margin-left: calc(-60/630 * 100%);
	margin-right: calc(90/630 * 100%);
}

.story_subttl {
	font-family: 'Playfair Display', serif;
	font-size: 6rem;
	font-weight: 700;
	line-height: 1;
	white-space: nowrap;
	text-align: left;
	color: #c8c8c8;
	transform: rotate(90deg);
	transform-origin: left top 0;
	position: absolute;
	top: 0;
	right: 0;
	width: calc(90/630 * 100%);
	margin-right: calc(-90/630 * 100%);
}

.story_subttl span {
	font-size: 8rem;
	line-height: .5;
}

.slick-arrow {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: calc(60 / 600 * 100vw);
	height: calc(10 / 600 * 100vw);
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	margin-top: calc(370/600 * 100%);
}
.slick-arrow::before {
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
}
.slick-arrow.prev {
	margin-right: calc(108/630 * 100%);
}
.slick-arrow::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
}

.slick-arrow.prev::after {
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	border-left: calc(1 / 630 * 100vw) solid #000;
	border-bottom: calc(1 / 630 * 100vw) solid #000;
	-webkit-transform: skew(-45deg);
	transform: skew(-45deg);
}
.slick-arrow.next::after {
	-webkit-transition: 0.2s ease;
	transition: 0.2s ease;
	border-right: calc(1 / 630 * 100vw) solid #000;
	border-bottom: calc(1 / 630 * 100vw) solid #000;
	-webkit-transform: skew(45deg);
	transform: skew(45deg);
}
.slick-dots {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: calc(8/600 * 100%);
	display: flex;
	justify-content: center;
	margin-top: calc(321/600 * 100%);
}

.slick-dots li {
	position: relative;
	display: inline-block;
	width: calc(40/630 * 100%);
	height: 100%;
	margin: 0 2px;
	padding: 0;
	cursor: pointer;
}
.slick-dots li button {
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	cursor: pointer;
	color: transparent;
	border: 0;
	outline: none;
	background: #fff;
}
.slick-dots li button:hover,
.slick-dots li button:focus {
	background: #c8c8c8;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
	background: #c8c8c8;
}
.slick-dots li button:before {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.slick-dots li.slick-active button {
	background: #c8c8c8;
}

@media screen and (min-width: 768px) {
	.hulu_story {
		padding: calc(160 / 1200 * 100%) 0;
	}
	.hulu_story .sec_ttl {
		margin-bottom: calc(77/1000 * 100%);
	}
	.hulu_story .sec_subttl img {
		width: calc(274/1000 * 100%);
		margin: 0 0 0 auto;
	}
	.hulu_story .sec_subttl::before {
		width: calc(154/1000 *100%);
		margin-left: calc(526/1000 * 100%);
	}
	.story_date_tab {
		margin-bottom: calc(60/1000 * 100%);
	}
	.story_date_tab li {
		width: calc(244 / 1000 * 100%);
		margin-bottom: 0;
	}
	.story_date_tab li span {
		padding: 0.92em 0 0.92em calc(50/244 * 100%);
		font-size: 1.6rem;
	}

	.story_date_tab li:not(.nolink):hover span {
		background-color: #e1234d;
	}
    .story_date_tab li span.up::before,.story_date_tab li span.up.is-active::before {
		width: calc(60/244 * 100%);
		padding-top: calc(25/244 * 100%);
		margin: 0 0 0 calc(184/244 * 100%);
	}

	.story_photo {
		margin-bottom: calc(58/1000 * 100%);
	}
	.story_box_photo {
		width: calc(800 / 1000 * 100%);
		margin-left: 0;
		margin-right: auto;
	}
	.story_subttl {
		transform-origin: left top 0;
		width: calc(200/1000 * 100%);
		margin-right: calc(-92/1000 * 100%);
	}
	.story_subttl span {
	}
	.slick-arrow {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: calc(69 / 800 * 100%);
		height: calc(10 / 800 * 100%);
		margin-top: calc(400/800 * 100%);
		z-index: 3;
		-webkit-transition: 0.2s ease;
		transition: 0.2s ease;
	}
	.slick-arrow.prev {
		margin-right: calc(-33/800 * 100%);
	}
	.slick-arrow.next {
		margin-right: calc(-136/800 * 100%);
	}
	.slick-arrow.prev::after {
		border-left: calc(1 / 800 * 100vw) solid #000;
		border-bottom: calc(1 / 800 * 10vw) solid #000;
	}
	.slick-arrow.next::after {
		border-right: calc(1 / 800 * 100vw) solid #000;
		border-bottom: calc(1 / 800 * 10vw) solid #000;
	}
	.slick-arrow.prev:hover {
		margin-right: calc(-17/800 * 100%);
	}
	.slick-arrow.next:hover {
		margin-right: calc(-152/800 * 100%);
	}

	.story_txt {
		width: calc(715/1000 * 100%);
		margin: 0 0 0 auto;
		font-size: 1.6rem;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_story {
        padding: 160px 0;
	}
}
/* =====================================================================
*    hulu_bnr
* =================================================================== */
.story_bnr {
	width: calc(630/750 * 100%);
	margin: calc(80 / 750 * 100%) auto calc(148 / 750 * 100%);
	border: 2px solid #000;
	padding: calc(50 / 750 * 100%) 0;
}

.story_bnr li:not(:last-child) {
	margin-bottom: calc(30 / 630 * 100%);
}

.story_bnr li:nth-child(odd) {
	margin-left: calc(-60 / 630 * 100%);
	margin-right: calc(60 / 630 * 100%);
}

.story_bnr li:nth-child(even) {
	margin-right: calc(-60 / 630 * 100%);
	margin-left: calc(60 / 630 * 100%);
}

.story_bnr li::before {
	background: #f1ff38;
	background: -webkit-gradient(
		linear,
		left top,
		right top,
		from(#f1ff38),
		color-stop(25%, #b7e449),
		color-stop(50%, #52b4c2),
		color-stop(75%, #4c4dff),
		to(#a200ff)
	);
	background: linear-gradient(to right, #f1ff38 0%, #b7e449 25%, #52b4c2 50%, #4c4dff 75%, #a200ff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f1ff38', endColorstr='#a200ff', GradientType=1);
}

@media screen and (min-width: 768px) {
	.story_bnr {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-ms-align-items: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		width: calc(900 / 1000 * 100%);
		padding: calc(50 / 1000 * 100%) 0;
		margin: calc(100 / 1000 * 100%) auto 0;
	}

	.story_bnr li {
		width: calc(475 / 900 * 100%);
	}

	.story_bnr li:nth-child(odd) {
		margin-bottom: 0;
		margin-left: calc(-50 / 900 * 100%);
		margin-right: calc(0 / 900 * 100%);
	}

	.story_bnr li:nth-child(even) {
		margin-right: calc(-50 / 900 * 100%);
		margin-left: calc(50 / 900 * 100%);
	}
}

@media screen and (min-width: 1200px) {
}
/* =====================================================================
*   cast
* =================================================================== */
.hulu_cast {
	padding: 0 0 calc(200 / 750 * 100%);
}
.hulu_cast .sec_ttl {
	margin-bottom: calc(85/630 * 100%);
	text-align: right;
}
.hulu_cast .sec_subttl img {
	width: calc(217/630 * 100%);
	margin: 0 0 0 auto;
}
.hulu_cast .sec_subttl::before {
	width: calc(384/630 *100%);
	left: 0;
}
.cast_list {
	margin: calc(75 / 630 * 100%) auto 0;
}

.cast_list li:not(:last-child) {
	margin: 0 0 calc(45 / 630 * 100%);
}
.cast_list_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.cast_list_box dt {
	width: calc(295 / 630 * 100%);
	letter-spacing: 0.05em;
	text-align: right;
}

.cast_list_box dd {
	width: calc(310 / 630 * 100%);
	line-height: 1.7;
	letter-spacing: 0.05em;
	text-align: left;
	font-size: 3.2rem;
}

.cast_box .cast_list_box dd,
.staff_box .cast_list_box dd {
	font-size: 3.2rem;
}

.cast_list_box .black {
	font-size: 3.2rem;
	color: #fff;
	padding: .02em .3em .1em;
	background-color: #000;
}

@media screen and (min-width: 768px) {
	.hulu_cast {
        padding: calc(160 / 1200 * 100%) 0 calc(80 / 1200 * 100%);
	}
	.hulu_cast .sec_ttl {
		width: calc(688/1000 * 100%);
		margin-bottom: calc(90/1000 * 100%);
	}
	.hulu_cast .sec_subttl img {
		width: calc(217/688 * 100%);
		margin: 0 0 0 auto;
	}
	.hulu_cast .sec_subttl::before {
		width: calc(440/688 *100%);
	}
	.cast_list {
		margin: calc(45 / 1000 * 100%) auto 0;
	}

	.cast_list li:not(:last-child) {
		margin: 0 0 calc(35 / 1000 * 100%);
	}
	.cast_list_box dt {
		width: calc(490 / 1000 * 100%);
	}

	.cast_list_box dd {
		width: calc(490 / 1000 * 100%);
	}
	.cast_list_box dd {
		font-size: 2.2rem;
	}

	.cast_list_box .black {
		font-size: 2.2rem;
	}
	.staff_box .cast_list_box .black {
		font-size: 1.8rem !important;
	}
	.cast_list_box dd:not(:first-of-type) {
		margin: 0 0 0 calc(510 / 1000 * 100%);
	}
	.cast_list_box dd span {
		font-size: 88%;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_cast {
        padding: 160px 0 80px;
	}
}
/* =====================================================================
*    comment
* =================================================================== */
.hulu_comment {
	padding: 0 0 calc(100 / 750 * 100%);
}
.hulu_comment .sec_ttl {
	margin-bottom: calc(85/630 * 100%);
}
.hulu_comment .sec_subttl img {
	width: calc(444/630 * 100%);
}
.hulu_comment .sec_subttl::before {
	width: calc(164/630 *100%);
	right: 0;
}

.hulu_comment .comment_box {
	border: solid 1px #000;
	background-color: #f5f8f8;
	padding: calc(75/630 * 100%) calc(60/630 * 100%) calc(45/630 * 100%);
	position: relative;
}
.hulu_comment .comment_box .comment_ttl {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 2.6rem;
	color: #fff;
	font-weight: bold;
	margin: calc(-12/630 * 100%) 0 0 calc(8/630 * 100%);
}
.hulu_comment .comment_box::before {
	content: '';
	position: absolute;
	display: block;
	background: url(../images/hulu/bg_comment.png) no-repeat center top/contain;
	width: calc(500 / 630 * 100%);
	padding-top: calc(120/630 * 100%);
    top: -4.5rem;
    left: -7rem;
/*    margin: calc(-48 / 630 * 100%) 0 0 calc(-53 / 630 * 100%);*/
}
.hulu_comment .comment_box dd {
	font-size: 2.8rem;
	line-height: 1.75;
}
@media screen and (min-width: 768px) {
	.hulu_comment {
        padding: calc(80 / 1200 * 100%) 0 calc(160 / 1200 * 100%);
	}
	.hulu_comment .sec_ttl {
		width: calc(688/1000 * 100%);
		margin-bottom: calc(90/1000 * 100%);
	}
	.hulu_comment .sec_subttl img {
		width: calc(444/688 * 100%);
		margin: 0 auto 0 0;
	}
	.hulu_comment .sec_subttl::before {
		width: calc(206/688 *100%);
	}
	.hulu_comment .comment_box {
		width: calc(800/1000 * 100%);
		margin: 0 auto;
		padding: calc(67/1000 * 100%) calc(60/1000 * 100%) calc(54/1000 * 100%);
	}
	.hulu_comment .comment_box .comment_ttl {
		font-size: 2.2rem;
		margin: calc(2/1000 * 100%) 0 0 calc(-12/1000 * 100%);
		line-height: 1em;
	}
	.hulu_comment .comment_box::before {
		width: calc(372 / 800 * 100%);
		padding-top: calc(79/800 * 100%);
		top: 0;
		left: 0;
		margin: calc(-26 / 800 * 100%) 0 0 calc(-54 / 800 * 100%);
	}
	.hulu_comment .comment_box dd {
		font-size: 1.6rem;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_comment {
        padding: 80px 0 160px;
	}
}

/* =====================================================================
*    about
* =================================================================== */
.hulu_about {
	background: #60b238;
	padding: calc(160 / 750 * 100%) 0 calc(230 / 750 * 100%);
}

.hulu_about::before {
	content: '';
	position: absolute;
	background: url(../images/hulu/bg_abouthulu.png) no-repeat center top/cover;
	width: calc(1092 / 750 * 100%);
	height: calc(102 / 750 * 100vw);
	top: 0;
	left: -23.2%;
	margin: calc(125 / 750 * 100%) auto 0;
}
.hulu_about .sec_ttl {
	margin: 0 0 calc(165 / 750 * 100%);
}
.hulu_about_box {
}
.hulu_about_txt {
	margin-bottom: calc(100/630 * 100%);
	font-size: 2.8rem;
	line-height: 1.75;
}
.hulu_link_ttl {
	color: #fff;
	font-size: 4.4rem;
	font-weight: bold;
	text-align: center;
	margin: 0 auto calc(60/630 * 100%);
}
.hulu_link_list {
}
.hulu_link_list li {
	/* width: calc(300/630 * 100%); */
}
.hulu_about_link {
	width: calc(570/630 * 100%);
	margin: 0 auto;
}
@media screen and (min-width: 768px) {
	.hulu_about {
		padding: calc(126 / 1200 * 100%) 0 calc(160 / 1200 * 100%);
	}
	.hulu_about::before {
		background-size: cover;
		width: 100%;
		height: calc(149 / 1200 * 100vw);
		left: 0;
		right: 0;
		margin: calc(70 / 1200 * 100%) auto 0;
	}
	.hulu_about .sec_ttl {
		margin: 0 0 calc(126 / 1000 * 100%);
	}
	.hulu_about_box {
		width: calc(790/1000 * 100%);
		margin: 0 auto;
	}
	.hulu_about_txt {
		margin-bottom: calc(50/1000 * 100%);
		font-size: 1.6rem;
		padding: 0 calc(25/790 * 100%);
	}
	.hulu_link_ttl {
		font-size: 2rem;
		margin: 0 auto calc(37/1000 * 100%);
	}
	.hulu_about_link {
		width: 100%;
	}
}

@media screen and (min-width: 1200px) {
	.hulu_about {
		padding: 126px 0 160px;
	}
	.hulu_about::before {
		max-width: 1600px;
		height: 149px;
		margin: 70px auto 0;
	}
}
