@charset "UTF-8";
/*--------------------------------------------
HIDDEN
---------------------------------------------*/
[hidden]{
	display : none;
}
[disabled]{
	cursor : not-allowed;
}
:focus:not(:focus-visible){
	outline : none;
}
/*--------------------------------------------
DATA TEXT
---------------------------------------------*/
[data-before]:before{
	content : attr( data-before );
}
[data-after]:after{
	content : attr( data-after );
}
/*--------------------------------------------
MAP
---------------------------------------------*/
.map-container , .iframe-container{
	position : relative;
}
.map-container > #map , .map-container > iframe , .iframe-container > #map , .iframe-container > iframe{
	width : 100%;
	height : 100%;
	position : absolute;
	top : 0;
	left : 0;
	right : 0;
	bottom : 0;
	margin : auto;
}
/*--------------------------------------------
img
---------------------------------------------*/
@media screen and (max-width: 768px){
	img{
		max-width : 100%;
	}
}
@media print,screen and (min-width: 769px){
	img{
		max-width : 100%;
		/*width: expression(this.width >= this.height ? "1110px" : "auto");
		width : 100%;
		max-width : 1060px;*/
	}
}
@media print,screen and (min-width: 769px){
	.is-sp{
		display : none;
	}
}
@media screen and (max-width: 768px){
	.is-pc{
		display : none;
	}
}
/*--------------------------------------------
HOVER
---------------------------------------------*/
a{
	transition : opacity .3s ease-in;
	color : #333;
}
a:hover{
	opacity : .8;
}
/*--------------------------------------------
TITLE
---------------------------------------------*/
#section .title-section{
	text-align : center;
	position : relative;
	letter-spacing : .1em;
	line-height : 1.2;
	margin-bottom:30px;
}
#section .title-section:before , #section .title-section:after{
	content : "";
	display : block;
}
#section .title-section:before{
	background-color : #ccc;
	position : absolute;
	left : 50%;
	-webkit-transform : translateX(-50%);
	        transform : translateX(-50%);
}
#section .title-section:after{
	background-color : #d61518;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
#section .subtitle{
	text-align : center;
	margin: 20px 0 20px 0px;
	font-size: 20px;
	line-height:1.4;
}
@media screen and (max-width: 768px){
	#section .title-section{
		font-size : calc( 40 * 100vw / 768 );
padding-top:30px;
		/*margin-bottom: 45px; 変更0307*/
	}
	#section .title-section:before{
		width : calc( 640 * 100vw / 768 );
		height : calc( 3 * 100vw / 768 );
		bottom : calc( ( 4.5 - 1.5 ) * 100vw / 768 );
	}
	#section .title-section:after{
		width : calc( 400 * 100vw / 768 );
		height : calc( 9 * 100vw / 768 );
		margin-top : calc( ( 18 - 4 ) * 100vw / 768 );;
	}
}
@media print,screen and (min-width: 769px){
	#section .title-section{
		font-size : 30px;
		/*margin-bottom:20px;*/
	}
	#section .title-section:before{
		width : 480px;
		height : 1px;
		bottom : calc( 1.5px - .5px );
	}
	#section .title-section:after{
		margin-top : calc( 21px - 3px );
		width : 250px;
		height : 3px;
	}
}

#sec_00 .title-section{
	text-align : center;
	position : relative;
	letter-spacing : .1em;
	line-height : 1.2;
}
#sec_00 .title-section:before , #sec_00 .title-section:after{
	content : "";
	display : block;
}
#sec_00 .title-section:before{
	background-color : #ccc;
	position : absolute;
	left : 50%;
	-webkit-transform : translateX(-50%);
	        transform : translateX(-50%);
}
#sec_00 .title-section:after{
	background-color : #93d051;
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
@media screen and (max-width: 768px){
	#sec_00 .title-section{
		font-size : calc( 40 * 100vw / 768 );
		/*margin-bottom: 45px; 変更0307*/
	}
	#sec_00 .title-section:before{
		width : calc( 640 * 100vw / 768 );
		height : calc( 3 * 100vw / 768 );
		bottom : calc( ( 4.5 - 1.5 ) * 100vw / 768 );
	}
	#sec_00 .title-section:after{
		width : calc( 400 * 100vw / 768 );
		height : calc( 9 * 100vw / 768 );
		margin-top : calc( ( 18 - 4 ) * 100vw / 768 );;
	}
}
@media print,screen and (min-width: 769px){
	#sec_00 .title-section{
		font-size : 30px;
		/*margin-bottom:20px;*/
	}
	#sec_00 .title-section:before{
		width : 480px;
		height : 1px;
		bottom : calc( 1.5px - .5px );
	}
	#sec_00 .title-section:after{
		margin-top : calc( 21px - 3px );
		width : 250px;
		height : 3px;
	}
}
.title01{
	letter-spacing : .1em;
	position : relative;
	margin-bottom: 50px;/* 追加0228*/
	
}
.title01:before , .title01:after{
	content : "";
	display : block;
	
}
.title01:before{
	position : absolute;
	background-color : #ccc;
	left : 0;
}
.title01:after{
	background-color : #d61518;
	position : relative;
}
@media screen and (max-width: 768px){
	.title01{
		font-size : calc( 34 * 100vw / 768 );
		line-height : 1.18;
		
	}
	.title01:before{
		width : 100%;
		height : calc( 6 * 100vw / 768 );
		bottom : calc( ( 5 - 3 ) * 100vw / 768 );
	}
	.title01:after{
		margin-top : calc( ( 23 - 3 ) * 100vw / 768 );
		width : calc( 250 * 100vw / 768 );
		height : calc( 10 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title01{
		padding-left : 2px;
		padding-right : 2px;
		font-size : 24px;
		line-height : 1.17;
		
		
	}
	.title01:before{
		width : 100%;
		height : 2px;
		bottom : calc( 2px - 1px );
	}
	.title01:after{
		width : 250px;
		height : 4px;
		margin-top : calc( 16px - 2px );
	}
}
.title02{
	text-align : center;
	position : relative;
	letter-spacing : .1em;
}
.title02:before , .title02:after{
	content : "";
	display : block;
}
.title02:before{
	background-color : #ccc;
	position : absolute;
	left : 50%;
	-webkit-transform : translateX(-50%);
	        transform : translateX(-50%);
}
.title02:after{
	margin-left : auto;
	margin-right : auto;
	position : relative;
}
.title02.green:after{
	background-color : #8fc31f;
}
.title02.red:after{
	background-color : #eb6877;
}
.title02.pink:after{
	background-color : #e4007f;
}
.title02.white{
	color : #fff;
}
.title02.white:after{
	background-color : #fff;
}
.title02.orange:after{
	background-color : #eb6100;
}
.title02.blue:after{
	background-color : #00a0e9;
}
@media screen and (max-width: 768px){
	.title02{
		font-size : calc( 40 * 100vw / 768 );
		line-height : 1.2;
	}
	.title02:before{
		width : calc( 640 * 100vw / 768 );
		height : calc( 3 * 100vw / 768 );
		bottom : calc( ( 4.5 - 1.5 ) * 100vw / 768 );
	}
	.title02:after{
		width : calc( 400 * 100vw / 768 );
		height : calc( 9 * 100vw / 768 );
		margin-top : calc( ( 16 - 4 ) * 100vw / 768 );;
	}
}
@media print,screen and (min-width: 769px){
	.title02{
		font-size : 30px;
		font-weight : 300;
		line-height : 1.4;
	}
	.title02:before{
		width : 600px;
		height : 1px;
		bottom : calc( 1.5px - .5px );
	}
	.title02:after{
		margin-top : calc( 11px - 6px );
		width : 250px;
		height : 3px;
	}
}
.title03{
	letter-spacing : .1em;
	position : relative;
	color : #222;
}
.title03:before , .title03:after{
	content : "";
	display : block;
}
.title03:before{
	position : absolute;
	background-color : #ccc;
	left : 0;
}
.title03:after{
	background-color : #d61518;
	position : relative;
}
@media screen and (max-width: 768px){
	.title03{
		font-size : calc( 34 * 100vw / 768 );
		line-height : 1.18;
	}
	.title03:before{
		width : 100%;
		height : calc( 6 * 100vw / 768 );
		bottom : calc( ( 5 - 3 ) * 100vw / 768 );
	}
	.title03:after{
		margin-top : calc( ( 12 - 3 ) * 100vw / 768 );
		width : calc( 250 * 100vw / 768 );
		height : calc( 10 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title03{
		font-size : 18px;
		line-height : 1.2;
	}
	.title03:before{
		width : 100%;
		height : 2px;
		bottom : calc( 2px - 1px );
	}
	.title03:after{
		width : 100px;
		height : 4px;
		margin-top : calc( 8px - 1.8px );
	}
}
.title04{
	letter-spacing : .1em;
	position : relative;
	color : #222;
}
.title04:before , .title04:after{
	content : "";
	display : block;
}
.title04:before{
	position : absolute;
	background-color : #ccc;
	left : 0;
}
.title04:after{
	background-color : #d61518;
	position : relative;
}
@media screen and (max-width: 768px){
	.title04{
		font-size : calc( 34 * 100vw / 768 );
		line-height : 1.18;
	}
	.title04:before{
		width : 100%;
		height : calc( 6 * 100vw / 768 );
		bottom : calc( ( 5 - 3 ) * 100vw / 768 );
	}
	.title04:after{
		margin-top : calc( ( 12 - 3 ) * 100vw / 768 );
		width : calc( 250 * 100vw / 768 );
		height : calc( 10 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.title04{
		font-size : 24px;
		line-height : 1.17;
		padding-left : 2px;
		padding-right : 2px;
	}
	.title04:before{
		width : 100%;
		height : 2px;
		bottom : calc( 2px - 1px );
	}
	.title04:after{
		width : 250px;
		height : 4px;
		margin-top : calc( 13px - 2px );
	}
}
.side-title{
	color : #222;
	position : relative;
}
.side-title:before , .side-title:after{
	content : "";
	display : block;
}
.side-title:before{
	position : absolute;
	background-color : #ccc;
	left : 0;
	width : 100%;
}
.side-title:after{
	background-color : #d61518;
	position : relative;
	margin-left : auto;
}
@media screen and (max-width: 768px){
	.side-title{
		font-size : calc( 30 * 100vw / 768 );
	}
	.side-title:before{
		height : calc( 6 * 100vw / 768 );
		bottom : calc( ( 5 - 3 ) * 100vw / 768 );
	}
	.side-title:after{
		width : calc( 250 * 100vw / 768 );
		height : calc( 10 * 100vw / 768 );
		margin-top : calc( 18 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.side-title{
		font-size : 16px;
		line-height : 1.31;
	}
	.side-title:before{
		height : 2px;
		bottom : calc( 2px - 1px );
	}
	.side-title:after{
		width : 100px;
		height : 4px;
		margin-top : calc( 11px - 2.5px );
	}
}
/*--------------------------------------------
PAGINATION
---------------------------------------------*/
.pagination a{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	background-color : #efefef;
}
.pagination.single{
	position : relative;
	width : 100%;
	text-align: center;/* 追加0228*/
	margin:10px 0 40px 0;/* 追加0228*/
}
.pagination.single a{
	backface-visibility : hidden;
}
.pagination.single .archive{
	margin-left : auto;
	margin-right : auto;
}
.pagination.single .prev , .pagination.single .next{
	position : absolute;
	top : 0;
}
.pagination.single .prev{
	left : 0;
}
.pagination.single .next{
	right : 0;
}
.pagination.single .prev , .pagination.single .next{
	font-weight : 900;
	color : #666;
}
.pagination.single ul li{
	display: inline-block;/* 追加0228*/
}
.pagination.single .current a{
	background-color : #fff;/* 追加0228*/
}
@media screen and (max-width: 768px){
	.pagination.single a{
		width : calc( 80 * 100vw / 768 );
		height : calc( 80 * 100vw / 768 );
	}
	.pagination.single .archive img{
		width : auto;
		max-width : inherit;
		height : calc( 25 * 100vw / 768 );
	}
	.pagination.single .prev , .pagination.single .next{
		font-size : calc( 26 * 100vw / 768 );
	}
	.pagination.single .prev{
		left : calc( 50% + ( -40 - 20 - 80 )  * 100vw / 768 );
	}
	.pagination.single .next{
		left : calc( 50% + ( 40 + 20 ) * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.pagination.single a{
		width : 37px;
		height : 37px;
	}
	.pagination.single .prev , .pagination.single .next{
		font-size : 14px;
	}
	.pagination.single .prev{
		left : calc( 50% - 37px - 10px - 18.5px );
	}
	.pagination.single .next{
		left : calc( 50% + 18.5px + 10px );
	}
}
/*--------------------------------------------
CATEGORY
---------------------------------------------*/
.category{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	color : #fff;
	padding-left : .5em;
	padding-right : .5em;
background-color: gray;
}
.category.info{
	background-color : #8fc31f;
}
.category.prerelease , .category.tokyo{
	background-color : #e4007f  !important;
}
.category.campaign , .category.exam{
	background-color : #f39700;
}
.category.ikebukuro{
	background-color : #2a0 /*#eb6100*/ !important;
}
.category.kyoto{
	background-color : #5f52a0 !important;
}
.category.osaka{
	background-color : #2a0 !important;
}
.category.shibuya{
	background-color : #5f52a0 /*#eb62a0*/ !important;
}
@media screen and (max-width: 768px){
	.category{
		font-size : calc( 26 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.category{
		font-size : 13px;
	}
}
/*--------------------------------------------
TEXT
---------------------------------------------*/
.text{
	letter-spacing : .1em;
}
/*--------------------------------------------
BOX FLEX
---------------------------------------------*/
@media screen and (max-width: 768px){
	.box-flex .img{
		text-align : center;
	}
	.box-flex .img img{
		max-width : 100%;
		width : auto;
	}
	.box-flex .img + div{
		margin-top : calc( ( 19 - 3 ) * 100vw / 768 );
	}
	.box-flex div + .img{
		margin-top : calc( ( 42 - 3 ) * 100vw / 768 );
	}
	.box-flex .text{
		margin-top : calc( ( 49 - 7 ) * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.box-flex{
		display : flex;
		align-items : flex-start;
	}
	.box-flex .img{
		flex-shrink : 0;
	}
	.box-flex .img + div , .box-flex div + .img{
		margin-left : 20px;
	}
	.box-flex.img-250 .img{
		width : 250px;
	}
	.box-flex .text{
		margin-top : calc( 27px - 3.5px );
	}
}
/*--------------------------------------------
IMG
---------------------------------------------*/
.fluid img{
	width : 100%;
	height : auto;
	max-width : inherit;
}
@media screen and (max-width: 768px){
	.fluid{
		margin-right : calc(50% - 50vw);
		margin-left : calc(50% - 50vw);
	}
}
@media print,screen and (min-width: 769px){
}
/*--------------------------------------------
BUTTON
---------------------------------------------*/
.btn-more{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	margin-left : auto;
	margin-right : auto;
	border-color : #aaa;
	border-style : solid;
	color : #222;
}
@media screen and (max-width: 768px){
	.btn-more{
		border-width : calc( 3 * 100vw / 768 );
		width : calc( 500 * 100% / 720 );
		height : calc( 60 * 100vw / 768 );
		font-size : calc( 26 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.btn-more{
		border-width : 1px;
		width : 205px;
		height : 37px;
		font-size : 14px;
	}
}

.btn_details{
	display : flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	margin-left : auto;
	border-color : #aaa;
	border-style : solid;
	color : #222;
}
@media screen and (max-width: 768px){
	.btn_details{
		border-width : calc( 3 * 100vw / 768 );
		width : calc( 600 * 100% / 720 );
		height : calc( 60 * 100vw / 768 );
		font-size : calc( 26 * 100vw / 768 );
		margin: 20px auto;

	}
}
@media print,screen and (min-width: 769px){
	.btn_details{
		border-width : 1px;
		width : 205px;
		height : 37px;
		font-size : 14px;
		margin: 20px 30px 20px auto;
	}
}

.btn-resume{
	display : flex;
	align-items : center;
	letter-spacing : .06em;
	color : #fff;
	background-color : #93d051;
	background-image : url("../images/ui/icon/resume.png");
	background-repeat : no-repeat;
	background-position-y : center;
}
@media screen and (max-width: 768px){
	.btn-resume{
		width : calc( 244 * 100vw / 768 );
		height : calc( 60 * 100vw / 768 );
		font-size : calc( 26 * 100vw / 768 );
		padding-left : calc( 61 * 100vw / 768 );
		background-size : calc( 36 * 100vw / 768 ) calc( 49 * 100vw / 768 );
		background-position-x : calc( 14 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.btn-resume{
		width : 130px;
		height : 40px;
		font-size : 14px;
		padding-left : 35px;
		background-size : 23px 31px;
		background-position-x : 7px;
	}
}
.btn-map{
	display : inline-flex;
	align-items : center;
	justify-content : center;
	text-align : center;
	color : #555;
	border-color : #b5b5b5;
	border-style : solid;
}
@media screen and (max-width: 768px){
	.btn-map{
		display : flex;
		width : calc( 180 * 100vw / 768 );
		height : calc( 39 * 100vw / 768 );
		border-width : calc( 3 * 100vw / 768 );
		font-size : calc( 24 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.btn-map{
		width : 96px;
		height : 22px;
		border-width : 1px;
		font-size : 12px;
	}
}
/*--------------------------------------------
SLICK DOTS
---------------------------------------------*/
.slick-dots{
	display : flex;
	justify-content : center;
	align-items : center;
	z-index : 5;
}
.slick-dots li{
	font-size : 0;
}
.slick-dots button{
	color : transparent;
	border-radius : 50%;
	font-size : 0;
}
.slick-dots button{
	background-color : #a0a0a0;
}
.slick-dots .slick-active button{
	background-color : #f93;
}
@media screen and (max-width: 768px){
	.slick-dots{
		padding-top : calc( 20 * 100vw / 768 );
	}
	.slick-dots button{
		width : calc( 12 * 100vw / 768 );
		height : calc( 12 * 100vw / 768 );
		margin-left : calc( 6 * 100vw / 768 );
		margin-right : calc( 6 * 100vw / 768 );
	}
}
@media print,screen and (min-width: 769px){
	.slick-dots{
		padding-top : 16px;
	}
	.slick-dots button{
		width : 10px;
		height : 10px;
		margin-left : 5px;
		margin-right : 5px;
	}
}
/*--------------------------------------------
overflow
---------------------------------------------*/
.overflow{
	overflow : hidden;
}



/*--------------------------------------------
article　 追加0225
---------------------------------------------*/

.article_module{
margin: 5px 0 10px 0px;
border-bottom: 0.5px solid #ddd;
}


.article_module .subtitle{
	margin: 5px 0 20px 0px;
	font-size: 20px;
}

.article_image{
    margin:0 0 8px 0;
    table-layout: fixed;
    max-width : 1060px;
}

.article_image_float{
    overflow:hidden;
}
.article_image_float .article_image{
    float:left;
    padding:0 8px 8px 0;
}
.article_image_float .panel{
    float:left;
    margin:0 5px 0 0;
}
.article_image_float .article_image .panel_width{
    margin-right:3px;
}
.article_image_left{
    float:left;
    margin:3px 15px 8px 0;
}
*html .article_image_left{
    float:left;
    margin:3px 8px 8px 0;
}
.article_image_right{
    float:right;
    margin:3px 0 8px 8px;
}
/**▼画像パネル中央揃え▼**/
.article_image_wrapper {
    text-align: center;
    margin-top:20px;
    margin-bottom:20px;
}
.article_image_wrapper .article_image_float {
    text-align: left;
    display: inline-block;
    *zoom: 1;
}
/**▲画像パネル中央揃え▲**/

/**▼画像パネル中央揃え▼**/
.article_image_centre {
    text-align: center;
    /*margin: 0 auto;*/
    margin: 20px auto;
}
.article_image_centre .article_image {
    /*text-align: left;*/
    margin-left: auto;
    margin-right: auto;
}

/**▲画像パネル中央揃え▲**/

.article_image .caption{
    font-size:14px;
margin-top: 5px;
line-height: 1.4;
}
.article_image .image_title{
    font-weight:bold;
    font-size:14px;
    margin-top:5px;
    margin-bottom:10px;
    line-height:1.4;
}

@media screen and (max-width: 768px){
	.article_image_left{
	    /*float:none;*/
	    margin:3px 15px 8px 0;
	}
	*html .article_image_left{
	    float:none;
	    margin:3px 8px 8px 0;
	}
	.article_image_right{
	    float:none;
	    margin:3px 0 8px 8px;
	}
	.article_image_float .article_image{
	    float:none;
	    padding:0 8px 8px 0;
	}
	
}
@media print,screen and (min-width: 769px){

}



li.headword{
margin:10px 0 5px 0;
    list-style-position: inside;
}
.link .list_description{
    padding:3px 0 8px 10px;
}
*:first-child+html .link .list_description{
    padding:8px 0 8px 0px;
}
.link_headword{
    background-image:none;
    padding-left:2px;
    display:inline;
    /*text-decoration: underline;*/
border-bottom: 1px solid #000;
padding-bottom: 2px;
    font-weight:700;
    font-size:20px;
line-height: 1.6;
}
*html .link_headword{
        padding-left:6px;
}
*:first-child+html .link_headword{
        padding-left:4px;
}
.link_headword_nolink{
    background-image:none;
    padding-left:2px;
    display:inline;
   /*text-decoration: underline;*/
border-bottom: 1px solid #000;
padding-bottom: 2px;
line-height: 1.6;
    font-weight:700;
    font-size:20px;
}
*html .link_headword_nolink{
        padding-left:6px;
}
*:first-child+html .link_headword_nolink{
        padding-left:4px;
}
li.headword div{
    display:inline;
    /*padding-left: 2px;*/
}
*html li.headword div{
    display:inline;
    /*padding-left: 8px;*/
}
li.headword .list_description{
    padding:8px 0 8px 0px;
    display:block !important;
}
*:first-child+html li.headword .list_description{
    padding:8px 0 8px 0px;
}

ul li.link{
margin:10px 0 5px 0;
    list-style-position: inside;
    list-style-image:url(../images/green.png);
}

*html  li.headword .list_description{
    list-style-position: inside;
}
*html  .list_description ul li{
    list-style-position: inside;
}

.clear{
	clear: both;
    display: block;
    height: 0;
    overflow: hidden;
    visibility: hidden;
    width: 0;
}

.youtube iframe{
  width: 100%;
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { /*display: block !important;*/ }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
/*# sourceMappingURL=../maps/module.css.map */

li.headword{
list-style-image:url("/common/css/ti2bev00000014z9-img/check.png");
}ul li.link{
list-style-image:url("/common/css/ti2bev00000014z9-img/check.png");
}.btn-resume{
background-image:url("/common/css/ti2bev00000014z9-img/resume.png");
}