@charset "utf-8";

html {
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
	background: #0e001d;
	color: #fff;
	font-size: 62.5%;
}
body {
	font-family: 'Noto Sans JP', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, 'メイリオ', 'ＭＳ Ｐゴシック', 'MS PGothic', Verdana, sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
	word-break: normal;
	-webkit-text-size-adjust: 100%;
}

@font-face {
	font-family: 'nicomoji-plus';
	src: url(../font/nicomoji-plus_1.11.ttf);
}

a, a:link {
	color: #0000DE;
}
a:visited {
	color: #941D55;
}
a:active,
a:hover {
	color: #CC0000;
}
a:focus {
	color: #CC0000;
}

/* FireFox link-line hide */
a:link,
a:visited,
a:active,
a:hover { 
	overflow: hidden;
	outline: none;
}


/*** ソーシャルボタン ***/
#sns-block {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	line-height: 1.0;
	font-weight: 400;
	width: 100%;
	background: #000;
	padding-bottom: 16px;
}
.sns {
	width: 96%;
	padding-top: 16px;
	margin: 0 auto;
	text-align: center;
}
.ttl-sns {
	display: inline-block;
	vertical-align: top;
	margin-right: 1em;
	padding-top: 9px;
	color: #fff;
	font-size: .9em;
}
.ttl-sns i {
	padding-right: .1em;
}
.sns-list {
	display: inline-block;
	font-size: 0;
	padding: 0;
	list-style: none;
}
.sns-list li {
	display: inline-block;
	position: relative;
	margin: 0 8px;
}
.sns-list li img {
	width: 35px;
	height: auto;
	vertical-align: middle;
}
@media screen and (min-width: 40em) {
	.sns {
		width: 980px;
	}
	.ttl-sns {
		margin-right: 22px;
		padding-top: 7px;
	}
	.sns-list li img {
		width: 32px;
		height: auto;
		vertical-align: middle;
	}
}
@media screen and (min-width: 64em) {
}

.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}


/** common style **/
a {
	display: block;
	-webkit-transition: 0.3s;
	transition: 0.3s;
	backface-visibility: hidden; 
	-webkit-backface-visibility: hidden;
}
a:hover {
	opacity: 0.6;
}

*, *:before, *:after {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	-webkit-backface-visibility : hidden;
}

ul {
	list-style: none;
}

#movie-box .inner {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#movie-box .inner iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


/** base **/
@media only screen and (max-width: 640px) {
	#global-nav:nth-of-type(1) {
		display: none;
	}
	
	body {
	}

	#container {
		width: 100%;
	}
	#container-inner {
	}
	#content {
		background: url(../images/circle-sp.png) repeat-y center top, -moz-linear-gradient(left, #56033f 0%, #020e50 100%);
		background: url(../images/circle-sp.png) repeat-y center top, -webkit-linear-gradient(left, #56033f 0%, #020e50 100%);
		background: url(../images/circle-sp.png) repeat-y center top, linear-gradient(to right, #56033f 0%, #020e50 100%);
		background-size: contain;
		-webkit-background-size: contain;
		-moz-background-size: contain;
		width: 100%;
		padding: calc(11.5625vw + 5.625vw) 0 19.6%; /* negative margin + 36px */
		margin: -11.5625vw auto 0; /* 72px + margin:2px */
	}
	.tree #content {
		padding: 11.2% 0 19.6%;
		margin: 0 auto;
	}
	#content-inner {
		width: 87.8125%;
		margin: 0 auto;
	}
	
	.sp-hide {
		display: none;
	}

	#locipo-box {
		width: 100%;;
		margin: 0 auto calc(5.625vw + 4.375vw);
	}

	/* pageup */
	.pageup {
	}
	.pageup a {
		display: block;
		background: url(../images/btn-pageup.png) no-repeat 0 0;
		font-size: 0;
		line-height: 0;
		text-indent: -9999px;
		width: 64px;
		height: 64px;
		background-size: contain;
		-webkit-background-size: contain;
		-moz-background-size: contain;
		position: fixed;
		right: 20px;
		bottom: 20px;
	}
}

@media print, screen and (min-width: 641px) {
	body {
		min-width: 1080px !important;
	}

	#container {
		width: 100%;
	}
	#container-inner {
	}
	#content {
		background: url(../images/circle-pc.png) repeat-y center top, -moz-linear-gradient(left, #56033f 0%, #020e50 100%);
		background: url(../images/circle-pc.png) repeat-y center top, -webkit-linear-gradient(left, #56033f 0%, #020e50 100%);
		background: url(../images/circle-pc.png) repeat-y center top, linear-gradient(to right, #56033f 0%, #020e50 100%);
		width: 1080px;
		padding: 40px 0 150px;
		margin: -208px auto 0;
	}
	.tree #content {
		padding: 64px 0 150px;
		margin: 0 auto;
	}
	#content-inner {
		width: 980px;
		margin: 0 auto;
	}
	
	.pc-hide {
		display: none;
	}

	/* PCの電話番号リンクを無効化 */
	a[href^="tel:"] { cursor: default; }

	#locipo-box {
		width: 500px;
		margin: 0 auto 84px;
	}

	/* pageup */
	.pageup {
	}
	.pageup a {
		display: block;
		background: url(../images/btn-pageup.png) no-repeat 0 0;
		font-size: 0;
		line-height: 0;
		text-indent: -9999px;
		text-decoration: none;
		width: 72px;
		height: 72px;
		background-size: contain;
		-webkit-background-size: contain;
		-moz-background-size: contain;
		position: fixed;
		right: 20px;
		bottom: 20px;

		-webkit-transition: 0.3s;
		transition: 0.3s;
		backface-visibility: hidden; 
		-webkit-backface-visibility: hidden;
	}
	.pageup a:hover {
		opacity: 0.6;
	}
}


/*** CONTENTS ***/
.block-fr {
	background: -moz-linear-gradient(left, #56033f 0%, #020e50 100%);
	background: -webkit-linear-gradient(left, #56033f 0%, #020e50 100%);
	background: linear-gradient(to right, #56033f 0%, #020e50 100%);
	/* box-shadow: 0 0 6px 3px rgba(255,255,255,.5); */
}

.block-fr .head {
	font-family: 'nicomoji-plus';
	width: 3.6em;
	color: #fff;
	letter-spacing: 0.18em;
	text-align: center;
}
#block02.block-fr .head {
	width: 4.6em;
}
#block03.block-fr .head {
}
#block04.block-fr .head {
	width: 5.6em;
}
.tree #column-group.block-fr .head {
	width: 7.6em;
}
#home #column-group.block-fr .head,
.tree #column-box.block-fr .head,
.tree #column-group.block-fr .head {
	letter-spacing: 0;
}
.block-fr .head:before {
	background: none;
	content: attr(data-text);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.09em;
	right: 0;
	z-index: 0;
}
#home #column-group.block-fr .head:before,
.tree #column-box.block-fr .head:before,
.tree #column-group.block-fr .head:before {
	left: 0;
}
.block-fr .head.home span {
	background: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 0;
}
.block-fr .head h2 {
	display: inline-block;
	font-weight: 400;
	padding: 0 0 0 0.09em;
	position: relative;
}
#home #column-group.block-fr .head h2,
.tree #column-box.block-fr .head h2,
.tree #column-group.block-fr .head h2 {
	padding: 0;
}
.block-fr .head h2:after {
	display: inline-block;
	content: '';
	height: 4px;
	border-radius: 2px;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #fff;
}


#block01 #cast-group .cast-box h3 {
	font-family: 'nicomoji-plus';
	line-height: 1.0;
	font-weight: 400;
	letter-spacing: 0.18em;
	position: relative;
}
#block01 #cast-group .cast-box h3:before {
	background: none;
	content: attr(data-text);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 0;
}
#block01 #cast-group .cast-box:nth-of-type(1) h3 {
	color: #fffc00;
}
#block01 #cast-group .cast-box:nth-of-type(2) h3 {
	color: #02aae2;
}
#block01 #cast-group .cast-box:nth-of-type(3) h3 {
	color: #fc008f;
}


#block02 p span.bl {
	color: #00f1ff;
}
#block02 p span.pk {
	color: #ff02d9;
}
#block02 p span.yl {
	color: #fffc00;
}


#block03 {
}
#block03 .corner:last-child {
	margin: 0;
}
#block03 .corner p {
	display: inline-block;
	background: #fff;
	color: #000;
	font-weight: 600;
	font-style: italic;
	position: relative;
}
#block03 .corner p:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
}
#block03 .corner h3 {
	background: -moz-linear-gradient(left, #fd00ad 0%, #fd00ad 25%, #21c8ff 75%, #21c8ff 100%);
	background: -webkit-linear-gradient(left, #fd00ad 0%, #fd00ad 25%, #21c8ff 75%, #21c8ff 100%);
	background: linear-gradient(to right, #fd00ad 0%, #fd00ad 25%, #21c8ff 75%, #21c8ff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: #fb01ad;
	font-weight: 900;
	font-style: italic;
	position: relative;
}
@media all and (-ms-high-contrast: none) {
	#block03 .corner h3 { background: none; }
}


@media screen and (max-width: 640px) {
	.block-fr {
		width: 100%;
		border: 4px solid #fff;
		border-radius: 4.6875vw;
		/* box-shadow: 0 0 6px 3px rgba(255,255,255,.5); */
		padding: 0 7.0% 13.2%;
		margin: 0 auto 19.6%;
	}
	#block02.block-fr {
		padding: 0 7.0% 12.4%;
	}
	#block03.block-fr {
		padding: 0 5.4% 13.2%;
	}
	#column-group.block-fr {
		padding: 0 3.6% 3.6%;
		margin: 0 auto;
	}
	#column-box.block-fr {
		padding: 0 7.0% 2.4%;
	}

	.block-fr .head {
		background: -moz-linear-gradient(left, #3b0644 0%, #1c0b4b 100%);
		background: -webkit-linear-gradient(left, #3b0644 0%, #1c0b4b 100%);
		background: linear-gradient(to right, #3b0644 0%, #1c0b4b 100%);
		font-size: 8.75vw; /* 56px */
		margin: 0 auto;
		position: relative;
		top: -6.5625vw;
	}
	#block02.block-fr .head {
		background: -moz-linear-gradient(left, #450542 0%, #130c4d 100%);
		background: -webkit-linear-gradient(left, #450542 0%, #130c4d 100%);
		background: linear-gradient(to right, #450542 0%, #130c4d 100%);
		font-size: 10.9375vw; /* 70px */
		top: -9.375vw;
	}
	#block03.block-fr .head {
		margin: 0 auto 5.4%;
	}
	#home #column-group.block-fr .head,
	.tree #column-box.block-fr .head {
		background: -moz-linear-gradient(left, #4e0441 0%, #0b0d4e 100%);
		background: -webkit-linear-gradient(left, #4e0441 0%, #0b0d4e 100%);
		background: linear-gradient(to right, #4e0441 0%, #0b0d4e 100%);
		width: 9.4em;
		font-size: 7.03125vw; /* 45px */
		line-height: 1.2;
		margin: 0 auto 7.2%;
		top: -4.6875vw;
	}
	.tree #column-group.block-fr .head {
		background: -moz-linear-gradient(left, #4d0441 0%, #0b0d4e 100%);
		background: -webkit-linear-gradient(left, #4d0441 0%, #0b0d4e 100%);
		background: linear-gradient(to right, #4d0441 0%, #0b0d4e 100%);
		font-size: 8.75vw; /* 56px */
		margin: 0 auto 6.4%;
	}
	.block-fr .head:before,
	.block-fr .head.home span {
		text-shadow: 0 8px 0 #000;
	}
	.block-fr .head h2 {
		text-shadow: 0 0 6px rgba(255,255,255,.8);
	}
	.block-fr .head h2:after {
		width: 11.25vw; /* 72px */
		box-shadow: 0 0 3px 2px rgba(255,255,255,.5), 0 8px 0 0 rgba(0,0,0,1);
		bottom: -0.16em;
	}
	#block02.block-fr .head h2:after {
		bottom: 0;
	}
	#home #column-group.block-fr .head h2:after,
	.tree #column-box.block-fr .head h2:after {
		bottom: -0.5em;
	}
	.tree #column-group.block-fr .head h2:after {
		bottom: -0.24em;
	}


	#main {
		width: 100%;
		margin: 0 auto calc(5.625vw + 4.375vw); /* 36px + [#block01 .head]font-size / 2 */
	}


	#block01 {
	}
	#block01 #cast-group {
		width: 100%;
		margin: 0 auto;
	}
	#block01 #cast-group .cast-box {
		margin: 0 0 10.4%;
	}
	#block01 #cast-group .cast-box:nth-of-type(2) {
		margin: 0 0 12.4%;
	}
	#block01 #cast-group .cast-box:nth-of-type(3) {
		margin: 0;
	}
	#block01 #cast-group .cast-box h3 {
		font-size: 9.375vw; /* 60px */
		margin: 0 0 3.36%;
	}
	#block01 #cast-group .cast-box:nth-of-type(3) h3 {
		font-size: 7.8125vw; /* 50px */
	}
	#block01 #cast-group .cast-box h3:before {
		text-shadow: 0 8px 0 #000;
	}
	#block01 #cast-group .cast-box li {
		font-size: 5.3125vw; /* 34px */
		margin: 0 0 0.24em;
	}
	#block01 #cast-group .cast-box li:last-child {
		margin: 0;
	}
	#block01 #cast-group .cast-box li span {
		font-size: 3.75vw; /* 24px */
	}


	#block02 {
	}
	#block02 p {
		font-size: 5.0vw; /* 32px */
		line-height: 1.7;
	}


	#block03 {
	}
	#block03 .corner {
		margin: 0 0 13.2%;
	}
	#block03 .corner p {
		font-size: 4.6875vw; /* 30px */
		line-height: 1.6;
		border-radius: 1.0em;
		padding: 0.6em 0.6em 0.7em 0.8em;
		margin: 0 auto 7.2%;
	}
	#block03 .corner p:before {
		margin-left: -0.8em;
		border: 0.8em solid transparent;
		border-top: 0.8em solid #fff;
	}
	#block03 .corner h3 {
		font-size: 8.75vw; /* 56px */
		line-height: 1.4;
	}
}

@media screen and (min-width: 641px) {
	.block-fr {
		width: 900px;
		border: 4px solid #fff;
		border-radius: 28px;
		/* box-shadow: 0 0 6px 3px rgba(255,255,255,.5); */
		padding: 0 70px 72px;
		margin: 0 auto 108px; /* 80px + [#block02 .head]font-size / 2 */
	}
	#block02.block-fr {
		padding: 0 70px 64px;
		margin: 0 auto 96px; /* 72px + [#block03 .head]font-size / 2 */
	}
	#block03.block-fr {
		padding: 0 10px 100px;
		margin: 0 auto 96px; /* 76px + [#block03 .head]font-size / 2 */
	}
	#column-group.block-fr {
		padding: 0 24px 24px;
		margin: 0 auto;
	}
	#column-box.block-fr {
		padding: 0 54px 12px;
	}

	.block-fr .head {
		background: -moz-linear-gradient(left, #340846 0%, #250a4a 100%);
		background: -webkit-linear-gradient(left, #340846 0%, #250a4a 100%);
		background: linear-gradient(to right, #340846 0%, #250a4a 100%);
		font-size: 4.8rem;
		margin: 0 auto 48px;
		position: relative;
		top: -40px;
	}
	#block02.block-fr .head {
		background: -moz-linear-gradient(left, #380846 0%, #200a4a 100%);
		background: -webkit-linear-gradient(left, #380846 0%, #200a4a 100%);
		background: linear-gradient(to right, #380846 0%, #200a4a 100%);
		font-size: 5.4rem;
		margin: 0 auto 28px;
	}
	#block03.block-fr .head {
		margin: 0 auto 54px;
	}
	#home #column-group.block-fr .head,
	.tree #column-box.block-fr .head {
		background: -moz-linear-gradient(left, #4d0441 0%, #0b0d4e 100%);
		background: -webkit-linear-gradient(left, #4d0441 0%, #0b0d4e 100%);
		background: linear-gradient(to right, #4d0441 0%, #0b0d4e 100%);
		width: 15.2em;
		font-size: 4.5rem;
		line-height: 1.1;
		margin: 0 auto 42px;
		top: -26px;
	}
	.tree #column-box.block-fr .head {
		margin: 0 auto 54px;
	}
	.tree #column-group.block-fr .head {
		background: -moz-linear-gradient(left, #3c0644 0%, #1c0b4b 100%);
		background: -webkit-linear-gradient(left, #3c0644 0%, #1c0b4b 100%);
		background: linear-gradient(to right, #3c0644 0%, #1c0b4b 100%);
		font-size: 4.5rem;
		margin: 0 auto 32px;
		top: -32px;
	}
	.block-fr .head:before,
	.block-fr .head.home span {
		text-shadow: 0 10px 0 #000;
	}
	.block-fr .head h2 {
		text-shadow: 0 0 6px rgba(255,255,255,.8);
	}
	.block-fr .head h2:after {
		width: 72px;
		box-shadow: 0 0 3px 2px rgba(255,255,255,.5), 0 10px 0 0 rgba(0,0,0,1);
		bottom: -16px;
	}
	#block02.block-fr .head h2:after {
		bottom: -12px;
	}
	#home #column-group.block-fr .head h2:after,
	.tree #column-box.block-fr .head h2:after {
		bottom: -22px;
	}
	.tree #column-group.block-fr .head h2:after {
		bottom: -12px;
	}


	#main {
		width: 900px;
		margin: 0 auto 84px; /* 60px + [#block01 .head]font-size / 2 */
	}


	#block01 {
	}
	#block01 #cast-group {
		overflow: hidden;
		position: relative;
		zoom: 1;
		width: 100%;
		margin: 0 auto;
	}
	#block01 #cast-group .cast-box:nth-of-type(1) {
		display: flex;
		width: 100%;
		margin: 0 0 56px;
	}
	#block01 #cast-group .cast-box:nth-of-type(2) {
		float: left;
		width: 50%;
	}
	#block01 #cast-group .cast-box:nth-of-type(3) {
		float: left;
		width: 50%;
		padding: 0 0 0 70px;
	}
	#block01 #cast-group .cast-box h3 {
		font-size: 4.8rem;
	}
	#block01 #cast-group .cast-box h3:before {
		text-shadow: 0 10px 0 #000;
	}
	#block01 #cast-group .cast-box:nth-of-type(1) h3 {
		margin: 0 24px 0 0;
	}
	#block01 #cast-group .cast-box:nth-of-type(2) h3 {
		margin: 0 0 20px;
	}
	#block01 #cast-group .cast-box:nth-of-type(3) h3 {
		font-size: 3.8rem;
		margin: 0.14em 0 24px;
	}
	#block01 #cast-group .cast-box li {
		font-size: 2.8rem;
		margin: 0 0 0.4em;
	}
	#block01 #cast-group .cast-box li:nth-of-type(1) {
		margin: 0.08em 0 0.4em 0;
	}
	#block01 #cast-group .cast-box li:last-child {
		margin: 0;
	}
	#block01 #cast-group .cast-box li span {
		font-size: 2.0rem;
	}


	#block02 {
	}
	#block02 p {
		font-size: 2.4rem;
		line-height: 1.8;
	}


	#block03 {
	}
	#block03 .corner {
		text-align: center;
		margin: 0 0 84px;
	}
	#block03 .corner p {
		font-size: 2.8rem;
		line-height: 1.0;
		border-radius: 1.4em;
		padding: 0.5em 1.5em 0.6em;
		margin: 0 auto 36px;
	}
	#block03 .corner p:before {
		margin-left: -18px;
		border: 18px solid transparent;
		border-top: 18px solid #fff;
	}
	#block03 .corner h3 {
		font-size: 5.4rem;
		line-height: 1.4;
		padding: 0 0.25em; /* only italic */
	}
}


/** column **/
#column-group .column-list li a h3 {
	font-weight: normal;
}

@media screen and (max-width: 640px) {
	#column-group {
	}
	#column-group .column-list {
	}
	
	#column-group .column-list li {
		width: 100%;
		background: rgba(0,0,0,.3);
		margin: 0 auto 5.4%;
	}
	#column-group .column-list li a {
		font-size: 3.125vw; /* 20px */
		line-height: 1.6;
		color: #fff;
		text-decoration: none;
		padding: 4.2%;
	
		display: flex;
		display: -webkit-flex;
		/* align-items: center;
		-webkit-align-items: center; */
		justify-content: center;
		-webkit-justify-content: center;
		justify-content: space-between;
	}
	#column-group .column-list li a figure {
		flex-basis: 20%;
	}
	#column-group .column-list li a h3 {
		flex-basis: 76%;
		margin-top: -0.36em;
	}
}

@media screen and (min-width: 641px) {
	#column-group {
	}
	#column-group .column-list {
	}

	#column-group .column-list ul {
		display: flex;
		display: -webkit-flex;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}
	#column-group .column-list li {
		width: 410px;
		background: rgba(0,0,0,.3);
		margin: 0 20px 20px 0;
	}
	#column-group .column-list li:nth-child(even) {
		margin: 0 0 20px;
	}
	#column-group .column-list li a {
		font-size: 1.4rem;
		line-height: 1.8;
		color: #fff;
		text-decoration: none;
		padding: 16px;

		-webkit-transition: 0.6s;
		transition: 0.6s;
		backface-visibility: hidden; 
		-webkit-backface-visibility: hidden;
	
		display: flex;
		display: -webkit-flex;
		/* align-items: center;
		-webkit-align-items: center; */
		justify-content: center;
		-webkit-justify-content: center;
		justify-content: space-between;
	}
	#column-group .column-list li a:hover {
		opacity: 1.0;
		background: #fff;
		color: #000;
	}
	#column-group .column-list li a figure {
		flex-basis: 22%;
	}
	#column-group .column-list li a h3 {
		flex-basis: 74%;
	}
}

/* column-list head */
#home .column-list .head.tree,
.tree .column-list .head.home {
	display: none;
}
/* column-list check */
.yamasato .column-list li#yamasato,
.nukumi .column-list li#nukumi,
.ishii .column-list li#ishii,
.takei .column-list li#takei,
.kawakami .column-list li#kawakami,
.yoshimi .column-list li#yoshimi,
.mahiru .column-list li#mahiru,
.yoshiko .column-list li#yoshiko,
.ohishi .column-list li#ohishi {
	background: #fff;
}
.yamasato .column-list li#yamasato a,
.nukumi .column-list li#nukumi a,
.ishii .column-list li#ishii a,
.takei .column-list li#takei a,
.kawakami .column-list li#kawakami a,
.yoshimi .column-list li#yoshimi a,
.mahiru .column-list li#mahiru a,
.yoshiko .column-list li#yoshiko a,
.ohishi .column-list li#ohishi a {
	color: #000;
	pointer-events:none;
	text-decoration: none;
}

/** column-box **/
.tree #column-box h3 {
	color: #00f1ff;
}

@media screen and (max-width: 640px) {
	.tree #column-box {
	}
	.tree #column-box-inner {
	}

	.tree #column-box p {
		line-height: 1.9;
	}
	.tree #column-box .column-head {
		margin: 0 auto 9.6%;
	}
	.tree #column-box .column-head figure {
		width: 72%;
		margin: 0 auto 6.4%;
	}
	.tree #column-box .column-head .column-read {
	}
	.tree #column-box .column-head .column-read h3 {
		font-size: 2.0rem;
		line-height: 1.5;
		font-weight: normal;
		margin: 0 auto 1.0em;
	}

	.tree #column-box .column-block {
		margin: 0 auto 12.4%;
	}
	.tree #column-box .column-block h4 {
		font-size: 2.0rem;
		line-height: 1.5;
		border-bottom: 2px solid #fff;
		padding: 0 0.06em 0.6em;
		margin: 0 auto 1.0em;
	}
	.tree #column-box .column-block figure {
		text-align: center;
		margin: 0 auto 1.2em;
	}
}

@media screen and (min-width: 641px) {
	.tree #column-box {
	}
	.tree #column-box-inner {
	}

	.tree #column-box p {
		line-height: 2.0;
	}
	.tree #column-box .column-head {
		margin: 0 auto 50px;

		display: flex;
		display: -webkit-flex;
		/* align-items: center;
		-webkit-align-items: center; */
		justify-content: center;
		-webkit-justify-content: center;
		justify-content: space-between;
	}
	.tree #column-box .column-head figure {
		flex-basis: 280px;
	}
	.tree #column-box .column-head .column-read {
		flex-basis: 480px;
	}
	.tree #column-box .column-head .column-read h3 {
		font-size: 2.4rem;
		line-height: 1.6;
		margin: 0 auto 0.8em;
	}

	.tree #column-box .column-block {
		margin: 0 auto 54px;
	}
	.tree #column-box .column-block h4 {
		font-size: 2.2rem;
		line-height: 1.4;
		font-weight: normal;
		border-bottom: 3px solid #fff;
		padding: 0 0.06em 0.6em;
		margin: 0 auto 20px;
	}
	.tree #column-box .column-block figure {
		text-align: center;
		margin: 0 auto 18px;
	}
}


/** movie-box **/
@media screen and (max-width: 640px) {
	#home .movie-box {
		width: 100%;
		padding: 9.6% 0 3.6%;
		margin: 0 auto;
	}
	#home .movie-box-inner {
		width: 94%;
	}
	.movie-box-inner {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
		margin: 0 auto;
	}
	.movie-box iframe {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}	

@media screen and (min-width: 641px) {
	#home .movie-box {
		width: 100%;
		background: #fff;
		padding: 64px 0 24px;
		margin: 0 auto;
	}
	#home .movie-box-inner {
		width: 860px;
		margin: 0 auto;
	}
	#home .movie-box iframe {
		width: 860px !important;
		height: 484px !important;
	}
}
