body{
	background-color:#eee;
	color:#000;
}

.error {
	color:#f00;
}

.container {
	margin-top:0;
	padding:0;
	max-width:800px;
}

.main {
	width:100%;
	margin:0;
	padding:0;
	background-color:#fff;
	border-right:1px solid #ccc;
	border-left:1px solid #ccc;
}

.main .header {
	display:flex;
	align-items:center;
	/*margin:0;*/
}
.main .header .badge {
	width:15%;
	/*margin-bottom:1rem;*/
}
.main .header .company_name {
	margin:0;
	padding:0;
	width:85%;
}
.main .header h2.company_name {
	font-weight:normal;
}
.main .header .company_name .u_name{
	width:95%;
	margin:0;
	text-align:center;
}

.main h3 {
	font-weight:normal;
	color:#c00;
	font-size:0.9em;
	line-height:1.1em;
	margin:0.7em 0;
}

.tab_box {
	display:flex;
	justify-content:space-between;
	margin:0 auto;
	border-bottom:1px solid #ccc;
}
@media screen and (max-width: 767px) {
	.tab_box {
		width:100%;
		font-size:3.5vw;
	}
}
.tab_box>div {
	display:block;
	width:24.5%;
	background-color:#bbb;
	color:#fff;
	font-size:1.5rem;
	border-radius:20px 20px 0 0;
	text-align:center;
	padding:0.5rem 0;
}
.tab_box .en{
	margin-top:0.3rem;
	font-size:0.5em;
}
@media screen and (max-width: 767px) {
	.tab_box{
		flex-wrap:wrap;
	}
	.tab_box>div {
		width:50%;
		font-size:3.7vw;
		line-height:4.5vw;
	}
}
.tab_box>div:hover {
	text-decoration:none;
	background-color:#888;
}
.tab_box>div.current {
	background-color:#0d0d0d;
	pointer-events:none;
}


.movie_box {
	padding:1rem 0;
	border-bottom:1px solid #ccc;
}
.movie_box figure{
	width:50%;
	margin:0 auto;
}
.movie_box a:hover{
	opacity:0.7;
}
.movie_box .note{
	width:80%;
	margin:0 auto;
	text-align:left;
}
.movie_box .modal{
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background-color:rgb(0,0,0,0.5);
	z-index:5;
}
.movie_box .modal_inner{
	width:70%;
	aspect-ratio: 16/9;
	margin:2rem auto 0;
}
.movie_box iframe{
	width:100%;
	height:100%;
	border:0;
}
.movie_box .btn_close{
	position:absolute;
	top:1rem;
	right:1%;
	border:2px solid #fff;
	border-radius:10px;
	color:#fff;
	padding:0.1rem 0.8rem;
	cursor:pointer;
}
@media screen and (max-width: 767px) {
	.movie_box .modal_inner{
		width:100%;
		margin:25vw auto 0;
	}
	.movie_box .modal_inner figure,
	.movie_box .modal_inner div{
		width:90%;
	}
	.movie_box .modal_video_box{
		/*top:15vh;
		left:0;*/
		width:100%;
	}
	.movie_box .btn_close{
		right:4vw;
	}
}





.grid_box {
	background-color:#fff;
}
.grid:hover {
	background-color:#fff;
}
.grid>.grid_inner {
	color:#000;
}

#gallery.single .grid .note{
	margin-top:0.3rem;
	line-height:1.4em;
}


