@charset "UTF-8";

#profile div.container{
	margin-bottom:20px;
	
	box-sizing: border-box;
	padding:10px;
	border-radius:5px;
	
	background-color:#fff;
	color:#000;
}

#profile div.option{
	display:none;
}

.link.container{
	display:none;
}

#profile div.container:last-child{
	margin-bottom:0;
}

#profile h3{
	font-size:2.0rem;
	line-height:1.5em;
	font-weight:bold;
	
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding-left:20px;
	
	position: relative;
}

#profile h3:before{
	display:block;
	content:"";
	
	width:7.5px;
	height:30px;
	
	background-color:#000;
	
	position: absolute;
	top:10px;
	left:2.5px;
}

#profile h4{
	font-size:1.5rem;
	line-height:1.5em;
	font-weight:bold;
	
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding-left:15px;
	
	position: relative;
}

#profile h4:before{
	display:block;
	content:"";
	
	width:5px;
	height:25px;
	
	background-color:#000;
	
	position: absolute;
	top:5px;
	left:2.5px;
}

.content-twin{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	margin-bottom:20px;
}

.content-twin div.content-twin-container{
	width:100%;
}

@media only screen and (min-width: 720px){
	
	.content-twin div.content-twin-container{
		width:50%;
	}
	
	.content-twin div.content-twin-container:nth-child(odd){
		box-sizing: border-box;
		padding-right:15px;
	}
	
	.content-twin div.content-twin-container:nth-child(even){
		box-sizing: border-box;
		padding-left:15px;
	}
	
}

/*----////////----SUMMARY----////////----*/

.summary div.size{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.summary div.size div.row{
	width:20%;
	text-align: center;
}

.summary div.size div.row p.que{
	background-color:#000;
	color:#fff;
	
	box-sizing: border-box;
	padding:2.5px 0;
	
	font-size:0.8rem;
	line-height:30px;
	font-weight:bold;
}

.summary div.size div.row:first-child p.que{
	border-top-left-radius: 5px;
}

.summary div.size div.row:last-child p.que{
	border-top-right-radius: 5px;
}

.summary div.size div.row p.ans{
	background-color:#fafafa;
	color:#000;
	
	box-sizing: border-box;
	padding:5px 0;
}

.summary div.size div.row p.ans span.cup:before{
	content:"(";
	
	box-sizing: border-box;
	padding:0 1.5px;
}

.summary div.size div.row p.ans span.cup:after{
	content:")";
	
	box-sizing: border-box;
	padding:0 1.5px;
}

.summary div.size div.row:first-child p.ans{
	border-bottom-left-radius: 5px;
}

.summary div.size div.row:last-child p.ans{
	border-bottom-right-radius: 5px;
}

/*----////////----SLIDER-PROFILE----////////----*/

#slider-profile p.slider-child{
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
}

#slider-profile p.slider-child img{
	width:100%;
	vertical-align: bottom;
}

.slider-thumbnail{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	box-sizing: border-box;
	padding:2.5px;
	
	background-color:#fff;
}

.slider-thumbnail p.slider-thum-child{
	width:20%;
	
	background-color:#fff;
	color:#000;
	
	position: relative;
}

.slider-thumbnail p.slider-thum-child:hover{
	opacity: 0.5;
	cursor: pointer;
}

.slider-thumbnail p.slider-thum-child:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:100%;
}

.slider-thumbnail p.slider-thum-child img{
	width:100%;
	height:100%;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
	
	box-sizing: border-box;
	padding:7.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_top_left{
	position: absolute;
	top:0;
	left:0;
}

.slider-thumbnail p.slider-thum-child span.ol_top_left:before{
	display:block;
	content:"";
	
	width:15px;
	height:1px;
	
	background-color:#aaa;
	position: absolute;
	top:2.5px;
	left:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_top_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:15px;
	
	background-color:#aaa;
	position: absolute;
	top:2.5px;
	left:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_top_right{
	position: absolute;
	top:0;
	right:0;
}

.slider-thumbnail p.slider-thum-child span.ol_top_right:before{
	display:block;
	content:"";
	
	width:15px;
	height:1px;
	
	background-color:#aaa;
	position: absolute;
	top:2.5px;
	right:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_top_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:15px;
	
	background-color:#aaa;
	position: absolute;
	top:2.5px;
	right:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_left{
	position: absolute;
	bottom:0;
	left:0;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_left:before{
	display:block;
	content:"";
	
	width:15px;
	height:1px;
	
	background-color:#aaa;
	position: absolute;
	bottom:2.5px;
	left:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:15px;
	
	background-color:#aaa;
	position: absolute;
	bottom:2.5px;
	left:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_right{
	position: absolute;
	bottom:0;
	right:0;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_right:before{
	display:block;
	content:"";
	
	width:15px;
	height:1px;
	
	background-color:#aaa;
	position: absolute;
	bottom:2.5px;
	right:2.5px;
}

.slider-thumbnail p.slider-thum-child span.ol_bottom_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:15px;
	
	background-color:#aaa;
	position: absolute;
	bottom:2.5px;
	right:2.5px;
}

/*----////////----OPTION----////////----*/

.option ul.note{
	font-size:0;
	line-height:1.0em;
	
	text-align: center;
	
	margin-bottom:10px;
}

.option ul.note li{
	display:inline-block;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.option ul.note li:after{
	display:inline-block;
	content:"/";
	
	box-sizing: border-box;
	padding:0 5px;
}

.option ul.note li:last-child:after{
	display:none;
}

.optionlist{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.optionlist div.row{
	width:50%;
	
	font-size:0.8rem;
	line-height:30px;
	font-weight:bold;
	
	margin-bottom:10px;
	
	position: relative;
}

.optionlist div.lastchild{
	margin-bottom:0;
}

.optionlist div.row:nth-child(odd){
	box-sizing: border-box;
	padding-right:5px;
}

.optionlist div.row:nth-child(even){
	box-sizing: border-box;
	padding-left:5px;
}

.optionlist div.row p.que{
	box-sizing: border-box;
	padding:0 10px;
	padding-right:30px;
	border:solid 1px #000;
	
	background-color:#000;
	color:#fff;
}

.optionlist div.row p.ans{
	width:30px;
	
	font-weight:normal;
	font-size:1.0rem;
	line-height:30px;
	
	position: absolute;
	top:0;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	border:solid 1px #000;
	text-align: center;
}

.optionlist div.row:nth-child(odd) p.ans{
	right:5px;
}

.optionlist div.row:nth-child(even) p.ans{
	right:0;
}

/*----////////----INTERVIEW----////////----*/

.interview div.row{
	box-sizing: border-box;
	padding-bottom:10px;
	border-bottom:solid 1px #000;
	margin-bottom:10px;
}

.interview div.row:last-child{
	border-bottom:none;
	margin-bottom:0;
}

.interview div.row p.que{
	font-size:1.0rem;
	line-height:1.75em;
	font-weight:bold;
	
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding-left:30px;
	
	position: relative;
}

.interview div.row p.que:before{
	display:block;
	content:"Q";
	
	font-weight:normal;
	
	width:20px;
	
	font-size:0.6rem;
	line-height:20px;
	
	background-color: #000;
	color:#fff;
	
	text-align: center;
	border-radius: 2.5px;
	
	position: absolute;
	top:5px;
	left:0;
}

.interview div.row p.ans{
	font-size:1.0rem;
	line-height:1.75em;
	font-weight:normal;
	
	box-sizing: border-box;
	padding-left:30px;
	
	position: relative;
}

.interview div.row p.ans:before{
	display:block;
	content:"A";
	
	font-weight:normal;
	
	width:20px;
	
	font-size:0.6rem;
	line-height:20px;
	
	background-color: #f0f0f0;
	color:#000;
	
	text-align: center;
	border-radius: 2.5px;
	
	position: absolute;
	top:5px;
	left:0;
}

/*----////////----COMMENT----////////----*/

.comment div.row{
	margin-bottom:10px;
	
	box-sizing: border-box;
	border:solid 1px #000;
	border-radius:5px;
}

.comment div.row:last-child{
	margin-bottom:0;
}

.comment div.post-content{
	display:none;
	
	box-sizing: border-box;
	padding:10px;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.comment p.nav-open{
	box-sizing: border-box;
	padding:0 10px;
	
	font-size:1.0rem;
	line-height:40px;
	font-weight: bold;
	
	background-color:#000;
	color:#fff;
	
	position: relative;
}

.comment p.nav-open:hover{
	cursor: pointer;
}

.comment p.nav-open:before{
	content:"開ける";
	
	display:block;
	width:80px;
	
	background-color:#fff;
	
	font-size:0.6rem;
	line-height:20px;
	
	text-align: center;
	
	color:#000;
	
	position: absolute;
	top:10px;
	right:5px;
	
	border-radius:2.5px;
	
	background-image: url("../images/icon-arrow-down-black.png");
	background-repeat: no-repeat;
	background-size:15px;
	background-position: center left 5px;
}

.comment p.nav-open.active:before{
	content:"閉じる";
	
	display:block;
	width:80px;
	
	background-color:#fff;
	
	font-size:0.6rem;
	line-height:20px;
	
	text-align: center;
	
	color:#000;
	
	position: absolute;
	top:10px;
	right:5px;
	
	border-radius:2.5px;
	
	background-image: url("../images/icon-arrow-up-black.png");
	background-repeat: no-repeat;
	background-size:15px;
	background-position: center left 5px;
}

/*----////////----SCHEDULE----////////----*/

.schedulelist{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.schedulelist div.row{
	width:100%;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	margin-bottom:5px;
}

.schedulelist div.row:last-child{
	margin-bottom:0;
}

.schedulelist div.row p.que{
	width:120px;
	
	font-size:1.0rem;
	line-height:1.75em;
	font-weight:bold;
	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#f0f0f0;
	color:#000;
}

.schedulelist div.row p.que span.note{
	font-size:0.6rem;
	line-height:1.75em;
}

.schedulelist div.row p.que span.note:before{
	content:"（";
}

.schedulelist div.row p.que span.note:after{
	content:"）";
}

.schedulelist div.row div.ans{
	width:calc(100% - 120px);
	
	font-size:1.0rem;
	line-height:1.75em;
	
	box-sizing: border-box;
	padding:10px;
	
	background-color:#f8f8f8;
	color:#000;
	border-left:solid 5px #fff;
}

.schedulelist div.row div.ans p.btn{
	text-align: center;
	
	font-size:0.6rem;
	line-height:25px;
	
	font-weight:bold;
	
	width:80px;
	
	color:#fff;
	background-color:#000;
	
	box-sizing: border-box;
	border-radius:2.5px;
}

.schedulelist div.row div.ans p.off{
	background-color:#f0f0f0;
	color:#888;
}

.schedulelist div.row div.ans p.btn a{
	display:block;
	color:#fff;
}

.schedulelist div.row div.ans p.btn a:hover{
	text-decoration: none;
	opacity: 0.5;
}

@media only screen and (min-width: 760px){
	
	.schedulelist div.row{
		width:calc(100%/7);
		margin-bottom:0;
		
		box-sizing: border-box;
		padding:0 2.5px;
	}
	
	.schedulelist div.row p.que{
		width:100%;
		text-align: center;
		border-bottom:solid 5px #fff;
		
		font-size:0.8rem;
		line-height:1.75em;
		
		padding:10px;
	}
	
	.schedulelist div.row p.que span{
		display:block;
	}
	
	.schedulelist div.row div.ans{
		width:100%;
		border-left:none;
		
		text-align: center;
		
		font-size:0.8rem;
		line-height:1.75em;
		
		padding:10px;
	}
	
	.schedulelist div.row div.ans p.btn{
		margin:0 auto;
	}
	
}

/*//////////----- DIARY -----//////////*/

.diarylist{
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.diarylist article{
	width:50%;
}

@media only screen and (min-width: 720px){
	
	.diarylist article{
		width:25%;
	}
	
}

@media only screen and (min-width: 960px){
	
	.diarylist article{
		width:20%;
	}
	
}

/*----- 「diaryrow」と「#profile h4」の干渉を解除 -----*/
.diaryrow div.text h4{
	font-size:1.0rem!important;
	line-height:1.75em!important;
	
	padding-left:0!important;
}

.diaryrow div.text h4:before{
	display:none!important;
}

/*//////////----- LINK -----//////////*/

.link ul{
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.link ul li{
	width:100%;
	
	box-sizing: border-box;
	padding:5px;
}

.link ul li span.ol{
	display:block;
	box-sizing: border-box;
	border-radius:2.5px;
	
	font-weight:bold;
	line-height:40px;
	
	text-align: center;
	
	background-color:#000;
	color:#fff;
}

.link ul li span.off{
	background-color:#f0f0f0;
	color:#888;
}

.link ul li span.ol a{
	display:block;
	color:#fff;
}

.link ul li span.ol a:hover{
	text-decoration: none;
	opacity: 0.5;
}

@media only screen and (min-width: 480px){
	
	.link ul li{
		width:50%;
	}
	
}

@media only screen and (min-width: 960px){
	
	.link ul li{
		width:25%;
	}
	
}

/*//////////----- REVIEW -----//////////*/

.reviewlist{
	width:100%;
}

.reviewlist article{
	margin-bottom:10px;
}

.reviewlist article:last-child{
	margin-bottom:0;
}


/*//////////----- MOVIE -----//////////*/

#movie p img{
	width:100%;
	vertical-align: bottom;
}
