@charset "UTF-8";
/* CSS Document */

body {
	background-color: white;
}
img {
	display: block;
	width: 100%;
}
.read {
	display: flex;
}
.read > div {
	width: 50%;
}
.left_box {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	height: 100vh;
	background-color: black;
}
.left_box h1 {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 50%;
}
/*.right_box {
	position: relative;
	height: 200vh;
	background-color: lightgray;
}
.right_box span {
	position: absolute;
	font-size: 1.5em;
}
.right_box .top {
	top: 0;
}
.right_box .center {
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}
.right_box .bottom {
	bottom: 0;
}*/
article {
	padding: 0 20px;
	box-sizing: border-box;
}
.about_core {
	width: 100%;
	max-width: 960px;
	margin: auto;
	padding: 50px 0;
	font-size: 16px;
}
.about_core h2 {
    padding-bottom: 0.5em;
    font-weight: 400;
    font-size: 2rem;
}
.about_core p {
    line-height: 1.8em;
}
.pr_movie{
	position: relative;
	box-sizing: border-box;
	max-width: 960px;
	margin: 0 auto 30px;
}
.pr_movie:before{
	content:"";
	padding-top:64%;
	display: block;
}
.pr_movie iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.spec {
	padding: 30px calc((100% - 960px) / 2);
	color: white;
	background: black;
}
.spec h2 {
	margin: 0 0 5px;
	font-size: 16px;
	font-weight: normal;
}
.spec dl {
    display: flex;
    flex-wrap: wrap;
	width: 100%;
	max-width: 400px;
    border-bottom: solid 1px white;
}
.spec dt,
.spec dd {
	padding: 5px 0;
    border-top: solid 1px white;
}
.spec dt {
    width: 10em;
	font-weight: normal;
}
.spec dd {
    width: calc(100% - 10em);
}
.spec table {
    border-collapse: collapse;
}
.spec table td {
    border-bottom: 1px solid #fff;
    padding: 0.5em 0;
}
.spec table td:first-child {
    width:10em;
}


.lang_change{
	text-align:right;
}
.lang_change a:before{
	content: "\3009";	
}

@media (max-width: 1000px) {
	.spec {
		padding: 30px 20px;
	}
	.left_box{
		height:auto;
	}
}

@media (max-width: 768px) {
	.left_box {
		height: auto;
	}
}

@media screen and (max-width:600px){
.read{
	display:block;
}
.read > div {
width: 100%;
}
.read > div.left_box {
padding: 20px 0;
}
.left_box h1 {
position: static;
transform: unset;
width: 35%;
margin: 0 auto;
}

}