/*
#####################################################################

	グリッド【flexbox,row】

#####################################################################
*/

/* ****************************************************
  フレックスボックス【.flexbox】
***************************************************** */

/********** アイテムの配置の変更【.flexContent】 ********/

@media screen and (max-width : 479px) {
	.flexContent-start-sp {-webkit-box-pack: flex-start; -webkit-justify-content: flex-start; -ms-flex-pack: flex-start; justify-content: flex-start; }
	.flexContent-end-sp {-webkit-box-pack: end; -webkit-justify-content:flex-end; -ms-flex-pack: end; justify-content:flex-end; }
	.flexContent-center-sp {-webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack:center; justify-content: center; }
	.flexContent-spaceBetween-sp {-webkit-box-pack: space-between; -webkit-justify-content: space-between; -ms-flex-pack:space-between; justify-content: space-between; }
	.flexContent-spaceAround-sp {-webkit-box-pack: space-around; -webkit-justify-content: space-around; -ms-flex-pack:space-around; justify-content: space-around; }
}

/********** ボックスの方向 ********/


/*縦方向*/

@media screen and (max-width : 479px){
	.direction-column-sp{ -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column;}
}


/*配置順の反転*/

@media screen and (max-width : 479px){
	.column-reverse-sp{ -webkit-flex-direction:column-reverse; -ms-flex-direction:column-reverse; flex-direction:column-reverse;}
}



@media screen and (max-width : 479px){

	.flex-lg-12{ -webkit-box-flex-basis: 100%; -ms-flex-basis: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; }/*12カラム分幅*/
	.flex-lg-11{ -webkit-box-flex-basis: 91.6667%; -ms-flex-basis: 91.6667%; -webkit-flex-basis: 91.6667%; flex-basis: 91.6667%; }/*11カラム分幅*/
	.flex-lg-10{ -webkit-box-flex-basis: 83.3333%; -ms-flex-basis: 83.3333%; -webkit-flex-basis: 83.3333%; flex-basis: 83.3333%; }/*10カラム分幅*/
	.flex-lg-9{ -webkit-box-flex-basis: 75%; -ms-flex-basis: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; }/*9カラム分幅*/
	.flex-lg-8{ -webkit-box-flex-basis: 66.6667%; -ms-flex-basis: 66.6667%; -webkit-flex-basis: 66.6667%; flex-basis: 66.6667%; }/*8カラム分幅*/
	.flex-lg-7{ -webkit-box-flex-basis: 58.3333%; -ms-flex-basis: 58.3333%; -webkit-flex-basis: 58.3333%; flex-basis: 58.3333%; }/*7カラム分幅*/
	.flex-lg-6{ -webkit-box-flex-basis: 49.5%; -ms-flex-basis: 49.5%; -webkit-flex-basis: 49.5%; flex-basis: 49.5%; }/*6カラム分幅*/
	.flex-lg-5{ -webkit-box-flex-basis: 41.6667%; -ms-flex-basis: 41.6667%; -webkit-flex-basis: 41.6667%; flex-basis: 41.6667%; }/*5カラム分幅*/
	.flex-lg-4{ -webkit-box-flex-basis: 33%; -ms-flex-basis: 33%; -webkit-flex-basis: 33%; flex-basis: 33%; }/*4カラム分幅*/
	.flex-lg-3{ -webkit-box-flex-basis: 24.9%; -ms-flex-basis: 24.9%; -webkit-flex-basis: 24.9%; flex-basis: 24.9%; }/*3カラム分幅*/
	.flex-lg-2_5{ -webkit-box-flex-basis: 20%; -ms-flex-basis: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; }/*2.5カラム分幅*/
	.flex-lg-2{ -webkit-box-flex-basis: 16.6667%; -ms-flex-basis: 16.6667%; -webkit-flex-basis: 16.6667%; flex-basis: 16.6667%; }/*2カラム分幅*/
	.flex-lg-1{ -webkit-box-flex-basis: 8.33333%; -ms-flex-basis: 8.33333%; -webkit-flex-basis: 8.33333%; flex-basis: 8.33333%; }/*1カラム分幅*/

	.flex-md-12{ -webkit-box-flex-basis: 100%; -ms-flex-basis: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; }/*12カラム分幅*/
	.flex-md-11{ -webkit-box-flex-basis: 91.6667%; -ms-flex-basis: 91.6667%; -webkit-flex-basis: 91.6667%; flex-basis: 91.6667%; }/*11カラム分幅*/
	.flex-md-10{ -webkit-box-flex-basis: 83.3333%; -ms-flex-basis: 83.3333%; -webkit-flex-basis: 83.3333%; flex-basis: 83.3333%; }/*10カラム分幅*/
	.flex-md-9{ -webkit-box-flex-basis: 75%; -ms-flex-basis: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; }/*9カラム分幅*/
	.flex-md-8{ -webkit-box-flex-basis: 66.6667%; -ms-flex-basis: 66.6667%; -webkit-flex-basis: 66.6667%; flex-basis: 66.6667%; }/*8カラム分幅*/
	.flex-md-7{ -webkit-box-flex-basis: 58.3333%; -ms-flex-basis: 58.3333%; -webkit-flex-basis: 58.3333%; flex-basis: 58.3333%; }/*7カラム分幅*/
	.flex-md-6{ -webkit-box-flex-basis: 49.5%; -ms-flex-basis: 49.5%; -webkit-flex-basis: 49.5%; flex-basis: 49.5%; }/*6カラム分幅*/
	.flex-md-5{ -webkit-box-flex-basis: 41.6667%; -ms-flex-basis: 41.6667%; -webkit-flex-basis: 41.6667%; flex-basis: 41.6667%; }/*5カラム分幅*/
	.flex-md-4{ -webkit-box-flex-basis: 33%; -ms-flex-basis: 33%; -webkit-flex-basis: 33%; flex-basis: 33%; }/*4カラム分幅*/
	.flex-md-3{ -webkit-box-flex-basis: 24.9%; -ms-flex-basis: 24.9%; -webkit-flex-basis: 24.9%; flex-basis: 24.9%; }/*3カラム分幅*/
	.flex-md-2_5{ -webkit-box-flex-basis: 20%; -ms-flex-basis: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; }/*2.5カラム分幅*/
	.flex-md-2{ -webkit-box-flex-basis: 16.6667%; -ms-flex-basis: 16.6667%; -webkit-flex-basis: 16.6667%; flex-basis: 16.6667%; }/*2カラム分幅*/
	.flex-md-1{ -webkit-box-flex-basis: 8.33333%; -ms-flex-basis: 8.33333%; -webkit-flex-basis: 8.33333%; flex-basis: 8.33333%; }/*1カラム分幅*/

	.flex-sm-12{ -webkit-box-flex-basis: 100%; -ms-flex-basis: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; }/*12カラム分幅*/
	.flex-sm-11{ -webkit-box-flex-basis: 91.6667%; -ms-flex-basis: 91.6667%; -webkit-flex-basis: 91.6667%; flex-basis: 91.6667%; }/*11カラム分幅*/
	.flex-sm-10{ -webkit-box-flex-basis: 83.3333%; -ms-flex-basis: 83.3333%; -webkit-flex-basis: 83.3333%; flex-basis: 83.3333%; }/*10カラム分幅*/
	.flex-sm-9{ -webkit-box-flex-basis: 75%; -ms-flex-basis: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; }/*9カラム分幅*/
	.flex-sm-8{ -webkit-box-flex-basis: 66.6667%; -ms-flex-basis: 66.6667%; -webkit-flex-basis: 66.6667%; flex-basis: 66.6667%; }/*8カラム分幅*/
	.flex-sm-7{ -webkit-box-flex-basis: 58.3333%; -ms-flex-basis: 58.3333%; -webkit-flex-basis: 58.3333%; flex-basis: 58.3333%; }/*7カラム分幅*/
	.flex-sm-6{ -webkit-box-flex-basis: 49.5%; -ms-flex-basis: 49.5%; -webkit-flex-basis: 49.5%; flex-basis: 49.5%; }/*6カラム分幅*/
	.flex-sm-5{ -webkit-box-flex-basis: 41.6667%; -ms-flex-basis: 41.6667%; -webkit-flex-basis: 41.6667%; flex-basis: 41.6667%; }/*5カラム分幅*/
	.flex-sm-4{ -webkit-box-flex-basis: 33%; -ms-flex-basis: 33%; -webkit-flex-basis: 33%; flex-basis: 33%; }/*4カラム分幅*/
	.flex-sm-3{ -webkit-box-flex-basis: 24.9%; -ms-flex-basis: 24.9%; -webkit-flex-basis: 24.9%; flex-basis: 24.9%; }/*3カラム分幅*/
	.flex-sm-2_5{ -webkit-box-flex-basis: 20%; -ms-flex-basis: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; }/*2.5カラム分幅*/
	.flex-sm-2{ -webkit-box-flex-basis: 16.6667%; -ms-flex-basis: 16.6667%; -webkit-flex-basis: 16.6667%; flex-basis: 16.6667%; }/*2カラム分幅*/
	.flex-sm-1{ -webkit-box-flex-basis: 8.33333%; -ms-flex-basis: 8.33333%; -webkit-flex-basis: 8.33333%; flex-basis: 8.33333%; }/*1カラム分幅*/

	.flex-xs-12{ -webkit-box-flex-basis: 100%; -ms-flex-basis: 100%; -webkit-flex-basis: 100%; flex-basis: 100%; }/*12カラム分幅*/
	.flex-xs-11{ -webkit-box-flex-basis: 91.6667%; -ms-flex-basis: 91.6667%; -webkit-flex-basis: 91.6667%; flex-basis: 91.6667%; }/*11カラム分幅*/
	.flex-xs-10{ -webkit-box-flex-basis: 83.3333%; -ms-flex-basis: 83.3333%; -webkit-flex-basis: 83.3333%; flex-basis: 83.3333%; }/*10カラム分幅*/
	.flex-xs-9{ -webkit-box-flex-basis: 75%; -ms-flex-basis: 75%; -webkit-flex-basis: 75%; flex-basis: 75%; }/*9カラム分幅*/
	.flex-xs-8{ -webkit-box-flex-basis: 66.6667%; -ms-flex-basis: 66.6667%; -webkit-flex-basis: 66.6667%; flex-basis: 66.6667%; }/*8カラム分幅*/
	.flex-xs-7{ -webkit-box-flex-basis: 58.3333%; -ms-flex-basis: 58.3333%; -webkit-flex-basis: 58.3333%; flex-basis: 58.3333%; }/*7カラム分幅*/
	.flex-xs-6{ -webkit-box-flex-basis: 49.5%; -ms-flex-basis: 49.5%; -webkit-flex-basis: 49.5%; flex-basis: 49.5%; }/*6カラム分幅*/
	.flex-xs-5{ -webkit-box-flex-basis: 41.6667%; -ms-flex-basis: 41.6667%; -webkit-flex-basis: 41.6667%; flex-basis: 41.6667%; }/*5カラム分幅*/
	.flex-xs-4{ -webkit-box-flex-basis: 33%; -ms-flex-basis: 33%; -webkit-flex-basis: 33%; flex-basis: 33%; }/*4カラム分幅*/
	.flex-xs-3{ -webkit-box-flex-basis: 24.9%; -ms-flex-basis: 24.9%; -webkit-flex-basis: 24.9%; flex-basis: 24.9%; }/*3カラム分幅*/
	.flex-xs-2_5{ -webkit-box-flex-basis: 20%; -ms-flex-basis: 20%; -webkit-flex-basis: 20%; flex-basis: 20%; }/*2.5カラム分幅*/
	.flex-xs-2{ -webkit-box-flex-basis: 16.6667%; -ms-flex-basis: 16.6667%; -webkit-flex-basis: 16.6667%; flex-basis: 16.6667%; }/*2カラム分幅*/
	.flex-xs-1{ -webkit-box-flex-basis: 8.33333%; -ms-flex-basis: 8.33333%; -webkit-flex-basis: 8.33333%; flex-basis: 8.33333%; }/*1カラム分幅*/
}

/* ****************************************************
  ボックスカラム【col-box】
***************************************************** */

@media screen and (max-width : 479px){
	.col-box-xs{ width:100%; }
	.col-box-s { width:100%; }
	.col-box-m { width:100%; }
	.col-box-l { width:100%; }
	.col-box-xl{ width:100%; }
}

/*
#####################################################################

	アイコン

#####################################################################
*/

/* ****************************************************
  アイコンボックス【icon-box】
***************************************************** */

@media screen and (max-width : 479px){
	.icon-box{ -ms-transform: scale(0.7); -webkit-transform: scale(0.7); transform: scale(0.7);}
}


/* ****************************************************
  アイコンサイズ【icon-size】
***************************************************** */

@media screen and (max-width : 479px){

	.icon-box.icon-size-xs{-ms-transform: scale(0.6)!important; -webkit-transform: scale(0.6)!important; transform: scale(0.6)!important ; }
	.icon-box.icon-size-s{-ms-transform: scale(1.0)!important; -webkit-transform: scale(1.0)!important; transform: scale(1.0)!important ; }
	.icon-box.icon-size-m{-ms-transform: scale(1.3)!important; -webkit-transform: scale(1.3)!important; transform: scale(1.3)!important ; }
	.icon-box.icon-size-l{-ms-transform: scale(1.6)!important; -webkit-transform: scale(1.6)!important; transform: scale(1.6)!important ; }
	.icon-box.icon-size-xl{-ms-transform: scale(2.0)!important; -webkit-transform: scale(2.0)!important; transform: scale(2.0)!important ; }

	.icon-txt.icon-size-xs::before,icon-txt.icon-size-xs::after{-ms-transform: scale(0.6)!important; -webkit-transform: scale(0.6)!important; transform: scale(0.6)!important ; }
	.icon-txt.icon-size-s::before,icon-txt.icon-size-s::after{-ms-transform: scale(1.0)!important; -webkit-transform: scale(1.0)!important; transform: scale(1.0)!important ; }
	.icon-txt.icon-size-m::before,icon-txt.icon-size-m::after{-ms-transform: scale(1.3)!important; -webkit-transform: scale(1.3)!important; transform: scale(1.3)!important ; }
	.icon-txt.icon-size-l::before,icon-txt.icon-size-l::after{-ms-transform: scale(1.6)!important; -webkit-transform: scale(1.6)!important; transform: scale(1.6)!important ; }
	.icon-txt.icon-size-xl::before,icon-txt.icon-size-xl::after{-ms-transform: scale(2.0)!important; -webkit-transform: scale(2.0)!important; transform: scale(2.0)!important ; }
}

/*
#####################################################################

	メインビジュアル【mainvisual】

#####################################################################
*/


/* ****************************************************
  シンプルメインビジュアル＋テキスト【.mv_txt】
***************************************************** */

@media screen and (max-width : 479px){
	.mainvisual.mv_txt{
		background:rgb(138, 23, 25) url("../img/common/head-bg_sp.png") no-repeat scroll 0 0;
		background-size:cover;
		width:100%; min-width:100%;
	}
}


/*
#####################################################################

	ナビゲーション【Navigation】

#####################################################################
*/


/* ****************************************************
  サイズ【.n_size】
***************************************************** */


@media screen and (max-width : 479px){
	.n_size-l,
	.n_size-m,
	.n_size-s{ max-width:100%; }
}

/*
#####################################################################

	テーブル

#####################################################################
/*

/* ****************************************************
  テーブルスマホ対応【.t_sp】
***************************************************** */

@media screen and (max-width: 479px) {

	/*テーブルスタイル*/
	.table.t_sp table::before, .table.t_sp table::after {
		content: "";
		display: table;
	}
	.table.t_sp table::after {
		clear: both;
	}
	.table.t_sp colgroup, .table.t_sp col {
		display: none;
		width: auto;
	}
	.table.t_sp tbody, .table.t_sp tr, .table.t_sp th, .table.t_sp td {
		box-sizing: border-box;
		clear: both;
		display: block;
		float: left;
		width: 100%;
	}

	.table.t_sp th, .table.t_sp td {

	}

	/*テーブルスタイル2*/
	.table2.t_sp th{
		display:none;
	}
	.table2.t_sp td{
		display: block;
		width: 100%;
		padding:0;
	}
	.table2.t_sp .th{
		font-weight:bold;
	}
	.table2.t_sp td p{
		padding:10px;
	}

	/*フレックステーブル*/
	.flex-table.t_sp .table-box{

	}

}

/* ****************************************************
  セルのサイズ【t_size】
***************************************************** */


@media screen and (max-width : 479px){
	.t_size-s{ width: 90px; }
	.t_size-m{ width: 150px; }
	.t_size-l{ width: 250px; }
}


/*
#####################################################################

	その他モジュール

#####################################################################
*/

/* ****************************************************
  マージン・パディング【margin・padding】
***************************************************** */


@media screen and (max-width : 479px){


	/*上下左右*/
	.margin-xs{ margin:12px!important;}
	.margin-s{ margin:18px!important;}
	.margin-m{ margin:20px!important;}
	.margin-l{ margin:30px!important;}
	.margin-xl{ margin:45px!important;}

	.padding-xs{ padding:12px!important;}
	.padding-s{ padding:18px!important;}
	.padding-m{ padding:20px!important;}
	.padding-l{ padding:30px!important;}
	.padding-xl{ padding:45px!important;}

	/*上下*/
	.margin-tb-xs{ margin-top:12px!important; margin-bottom:12px !important;}
	.margin-tb-s{ margin-top:18px!important; margin-bottom:18px !important;}
	.margin-tb-m{ margin-top:20px!important; margin-bottom:20px!important;}
	.margin-tb-l{ margin-top:30px!important; margin-bottom:30px!important;}
	.margin-tb-xl{ margin-top:45px!important; margin-bottom:45px!important;}

	.padding-tb-xs{ padding-top:12px!important; padding-bottom:12px !important;}
	.padding-tb-s{ padding-top:18px!important; padding-bottom:18px !important;}
	.padding-tb-m{ padding-top:20px!important; padding-bottom:20px!important;}
	.padding-tb-l{ padding-top:30px!important; padding-bottom:30px!important;}
	.padding-tb-xl{ padding-top:45px!important; padding-bottom:45px!important;}

	/*上*/
	.margin-t-xs{ margin-top:12px!important;}
	.margin-t-s{ margin-top:18px!important;}
	.margin-t-m{ margin-top:20px!important; }
	.margin-t-l{ margin-top:30px!important; }
	.margin-t-xl{ margin-top:45px!important; }

	.padding-t-xs{ padding-top:12px!important;}
	.padding-t-s{ padding-top:18px!important;}
	.padding-t-m{ padding-top:20px!important; }
	.padding-t-l{ padding-top:30px!important; }
	.padding-t-xl{ padding-top:45px!important; }

	/*下*/
	.margin-b-x{ margin-bottom:12px!important;}
	.margin-b-s{ margin-bottom:5px!important;}
	.margin-b-m{ margin-bottom:20px!important; }
	.margin-b-l{ margin-bottom:30px!important; }
	.margin-b-xl{ margin-bottom:45px!important; }

	.padding-b-xs{ padding-bottom:12px!important;}
	.padding-b-s{ padding-bottom:18px!important;}
	.padding-b-m{ padding-bottom:20px!important; }
	.padding-b-l{ padding-bottom:30px!important; }
	.padding-b-xl{ padding-bottom:45px!important; }


	/*左右*/
	.margin-lr-xs,
	.margin-lr-s{ margin-left:10px!important; margin-right:10px !important;}
	.margin-lr-m{ margin-left:15px!important; margin-right:15px !important;}
	.margin-lr-l,
	.margin-lr-ll,
	.margin-lr-xl{ margin-left:30px!important; margin-right:30px !important;}

	.padding-lr-xs,
	.padding-lr-s{ padding-left:10px!important; padding-right:10px !important;}
	.padding-lr-m{ padding-left:15px!important; padding-right:15px !important;}
	.padding-lr-l,
	.padding-lr-ll,
	.padding-lr-xl{ padding-left:30px!important; padding-right:30px !important;}

	/*右*/
	.margin-r-xs,
	.margin-r-s{ margin-right:10px!important; }
	.margin-r-m{ margin-right:15px!important; }
	.margin-r-l,
	.margin-r-ll,
	.margin-r-xl{ margin-right:30px!important; }

	.padding-r-xs,
	.padding-r-s{ padding-right:10px!important; }
	.padding-r-m{ padding-right:15px!important; }
	.padding-r-l,
	.padding-r-ll,
	.padding-r-xl{ padding-right:30px!important; }

	/*左*/
	.margin-l-xs,
	.margin-l-s{ margin-left:10px!important; }
	.margin-l-m{ margin-left:15px!important; }
	.margin-l-l,
	.margin-l-ll,
	.margin-l-xl{ margin-left:30px!important; }

	.padding-l-xs,
	.padding-l-s{ padding-left:10px!important; }
	.padding-l-m{ padding-left:15px!important; }
	.padding-l-l,
	.padding-l-ll,
	.padding-l-xl{ padding-left:30px!important; }

	/*ネガティブマージン（微調整用）*/
	.margin-nt-xs,
	.margin-nt-s,
	.margin-nt-m,
	.margin-nt-l,
	.margin-nt-xl{ margin-top:0px!important;}

	.margin-nl-xs,
	.margin-nl-s,
	.margin-nl-m,
	.margin-nl-l,
	.margin-nl-xl{ margin-left:0px!important;}

}

/*マージンパーセント指定*/

@media screen and (max-width : 479px){
	.margin2-lr-xs,
	.margin2-lr-s,
	.margin2-lr-m,
	.margin2-lr-l,
	.margin2-lr-xl,
	.margin2-r-xs,
	.margin2-r-s,
	.margin2-r-m,
	.margin2-r-l,
	.margin2-r-xl,
	.margin2-l-xs,
	.margin2-l-s,
	.margin2-l-m,
	.margin2-l-l,
	.margin2-l-xl{ margin-left:0!important; margin-right:0 !important;}
}



/* ****************************************************
  マックスミンサイズ【maxsize・minsize】
***************************************************** */

/*******マックスサイズ【.maxsize】*******/
@media screen and (max-width : 479px){

	.maxsizeImg-w-xs{ max-width:60px;}
	.maxsizeImg-w-s{ max-width:140px;}
	.maxsizeImg-w-m{ max-width:180px;}
	.maxsizeImg-w-l{ max-width:240px;}
	.maxsizeImg-w-xl{ max-width:100%;}/*変更しない*/

	.maxsizeImg-h-xs{ max-height:60px;}
	.maxsizeImg-h-s{ max-height:150px;}
	.maxsizeImg-h-m{ max-height:200px;}

	.maxsizeBox-w-xs{ max-width:60px;}
	.maxsizeBox-w-s{ max-width:140px;}
	.maxsizeBox-w-m{ max-width:180px;}
	.maxsizeBox-w-l{ max-width:240px;}
	.maxsizeBox-w-xl{ max-width:100%;}

	.maxsizeBox-h-xs{ max-height:60px;}
	.maxsizeBox-h-s{ max-height:150px;}
	.maxsizeBox-h-m{ max-height:300px;}
}
/*******ミンサイズ【.minsize】*******/
@media screen and (max-width : 479px){

	.minsizeBox-w-xs{ min-width:60px;}
	.minsizeBox-w-s{ min-width:140px;}
	.minsizeBox-w-m{ min-width:180px;}
	.minsizeBox-w-l{ min-width:240px;}
	.minsizeBox-w-xl{ min-width:300px;}

	.minsizeBox-h-xs{ min-height:60px;}
	.minsizeBox-h-s{ min-height:150px;}
	.minsizeBox-h-m{ min-height:200px;}
	.minsizeBox-h-l{ min-height:350px;}
	.minsizeBox-h-xl{ min-height:500px;}

	.minsizeBox-w-xs{ min-width:60px;}
	.minsizeBox-w-s{ min-width:140px;}
	.minsizeBox-w-m{ min-width:180px;}
	.minsizeBox-w-l{ min-width:240px;}
	.minsizeBox-w-xl{ min-width:300px;}

	.minsizeBox-h-xs,
	.minsizeBox-h-s,
	.minsizeBox-h-m,
	.minsizeBox-h-l,
	.minsizeBox-h-xl{ min-height: inherit;}
}

/* ****************************************************
  セパレート【.separate】
***************************************************** */


/****************** 横線【.separate-w】 ******************/
@media screen and (max-width : 479px){
	.separate-w,
	.separate-w-s,
	.separate_anm-extend.active .separate-w-s{ width:20px;}
	.separate-w-m,
	.separate_anm-extend.active .separate-w-m{ width:80px;}
	.separate-w-l,
	.separate_anm-extend.active .separate-w-l{ width:140px;}
	.separate-w-full,
	.separate_anm-extend.active .separate-w-full{ width:100%;}

	.separate-w-l-sp {
		width: 35px;
	}

	/*太さ*/
	.separate-w-s.s-b-s,.separate-w-m.s-b-s,.separate-w-l.s-b-s,.separate-w-full.s-b-s{ height:1px;}
	.separate-w-s.s-b-m,.separate-w-m.s-b-m,.separate-w-l.s-b-m,.separate-w-full.s-b-m{ height:2px;}
	.separate-w-s.s-b-l,.separate-w-m.s-b-l,.separate-w-l.s-b-l,.separate-w-full.s-b-l{ height:3px;}
}

/* ****************************************************
  レスポンシブ表示非表示【none】
***************************************************** */

.visible-pc{ display: inline !important; }
.visible-tb{ display:none !important; }
.visible-sp{ display:none !important;}

.none-pc{ display:none !important; }
.none-tb{ display:inline !important; }
.none-sp{ display:inline !important; }

.flexbox div.none-tb{ display: inherit !important; }
.flexbox div.none-sp{ display: inherit !important; }

@media screen and (max-width : 479px){
	.visible-pc{ display:none !important; }
	.visible-sp{ display:none !important;}
	.visible-tb{ display:block !important; }

	.none-pc{ display:block !important; }
	.none-sp{ display:block !important; }
	.none-tb{ display:none !important; }

	.flexbox div.none-pc{ display: inherit !important; }
	.flexbox div.none-sp{ display: inherit !important; }
	.flexbox div.none-tb{ display: none !important; }
}

@media screen and (max-width : 479px){
	.visible-pc{ display:none !important; }
	.visible-tb{ display:none !important; }
	.visible-sp{ display:block !important;}

	.none-pc{ display:block !important; }
	.none-tb{ display:block !important; }
	.none-sp{ display:none !important; }

	.flexbox div.none-pc{ display: inherit !important; }
	.flexbox div.none-tb{ display: inherit !important; }
	.flexbox div.none-sp{ display: none !important; }
}

/*
#####################################################################

	ラッパー【wrapper】

#####################################################################
*/

@media screen and (max-width : 479px){
	#SESS .wrapper,
	#EXHI .wrapper,
	#SESS-BREAKOUT .wrapper{  min-width:100%; padding:0 20px;}
	#SESS .wrapper2,
	#EXHI .wrapper2,
	#SESS-BREAKOUT .wrapper2
	{ min-width:100%; padding:0 20px;}
	#SESS .wrapper3,
	#EXHI .wrapper3,
	#SESS-BREAKOUT .wrapper3
	{ min-width:100%; padding:0 24px;}
}

/*
#####################################################################

	共通指定

#####################################################################
*/

/* ****************************************************
  コモンスタイル01【.common-style-01】
***************************************************** */


/*
#####################################################################

	コンテンツ【contents】

#####################################################################
*/

/*サイト全体用*/

@media screen and (max-width : 479px){
	#SESS #contents,
	#EXHI #contents,
	#SESS-BREAKOUT #contents{ min-width: 100%;}
}

/*
#####################################################################

	ボディ【body】

#####################################################################
*/
@media screen and (max-width : 479px){
	body,
	html{
		font-size:14px;
	}
}


/*
#####################################################################

	ヘッダー【header】

#####################################################################
*/
@media screen and (max-width : 479px){
	.slide-toggle .dropdown_body {
	    display: block;
	}
	.slide-toggle .nav_icon{
		display: none;
	}
	.open td{
		display:block !important;
	}
	.open th::before {
    display: none !important;
	}
}



/*
#####################################################################

	フッター【footer】

#####################################################################
*/
@media screen and (max-width : 479px){
	footer.padding-tb-m{ padding-top:25px !important; padding-bottom:25px !important;}
	.footer-module .flex-lg-10.flex-md-10,
	.footer-module .separate-h-s{ display:none;}
	.footer-module .Navigation li{ width:100%; text-align:center; margin-bottom:3px;}

	.footer-module .logo{ text-align:center;}
	.position-inner-centeRight > a { margin: auto;}
	.footer-module .copyright{ text-align:center !important;}
}

/*
#####################################################################

	タイポグラフィ

#####################################################################
*/
/* ****************************************************
  見出し【heading】
***************************************************** */

@media screen and (max-width : 479px){
	.heading1, .heading2, .heading3, .heading4, .heading5, .heading6, .heading7, .heading8, .heading9{
		letter-spacing:-0.02rem;
	}
	.heading9,
	.heading8,
	.heading11{ font-size: 24px; line-height:1.2;word-break: break-all;}
	.heading1{ font-size: 1.5rem; letter-spacing:-0.04rem;}
	.heading10{ font-size: 1.4rem;}
	.heading5,
	.heading6,
	.heading7{ font-size: 1.2rem;}
	.heading2{ font-size: 1.12rem;}
	.heading4 { font-size: 1rem;}
	.heading13 {line-height: 1.2;}

	.heading1-EN, .heading2-EN, .heading3-EN, .heading4-EN, .heading5-EN, .heading6-EN, .heading7-EN{
	}
	.heading3-EN{ font-size:2rem;}

	.heading6-EN,
	.heading2-EN,
	.heading5-EN { font-size: 1.15rem; }
}

/* ****************************************************
  本文【Body copy】
***************************************************** */

@media screen and (max-width : 479px){
	.p1,
	.p2,
	.p3,
	.p6{ font-size: 1rem;}

	.p4-EN {
		font-size: 1.286rem;
	}
}

/* ****************************************************
  注釈、補足情報【Small Text】
***************************************************** */

@media screen and (max-width : 479px){
	.small1,
	.small2{
		font-size:0.85rem;
	}
}

/*
#####################################################################

	ファーストビュー用レイアウトモジュール【.firstview-module】

#####################################################################
*/

/* ****************************************************
  ファーストビューモジュール02【.firstview-module-02】
***************************************************** */

@media screen and (max-width : 479px){
	.firstview-module-02{ padding-top: 50px;}
	.firstview-module-02 .mainvisual{ height:110px;}
}



/*
#####################################################################

	セッション用レイアウトモジュール【.session-module】

#####################################################################
*/

/* ****************************************************
  セッションモジュール03【.session-module-03】
***************************************************** */

@media screen and (max-width : 479px){
	.session-module-03 .td{ line-height:1.3; padding:14px 10px;}
	.session-module-03 .tr.bg-gray-light{ background-color:#FFFFFF !important;}
	.session-module-03 .tr:nth-child(1),
	.session-module-03 .tr:nth-child(4),
	.session-module-03 .tr:nth-child(5),
	.session-module-03 .tr:nth-child(8),
	.session-module-03 .tr:nth-child(9),
	.session-module-03 .tr:nth-child(12),
	.session-module-03 .tr:nth-child(13),
	.session-module-03 .tr:nth-child(16){
		background-color: #ededed !important;   /* 奇数行の背景色 */
	}
}

/*
#####################################################################

	セッション【#SESS】

#####################################################################
*/

@media screen and (max-width : 479px){

	#SESS .category-section {
		margin-bottom: 40px;
	}

	#SESS .category-section > div:nth-of-type(n+2) {
		margin-top: 10px;
	}

	#SESS .keyword-section .cassette {
		min-height: 70px;
		font-size: 16px;
	}

	#SESS .keyword-section .cassette:nth-of-type(n+2) {
	    margin-top: 10px;
	}

	#SESS .category-filter {
	    display: none;
	}

	#SESS #timeTable {
		margin-top: 0!important;
	}


	#SESS .sess-list>.flexContent-spaceBetween h3 {
    font-size: 24px;
    text-indent: 0px;
	}

	#SESS .sess_color-cloud .padding-xl{ padding:0px !important; padding-top:70px !important;}
	#SESS section.bg-gray-light2{ padding-left:12px; padding-right:12px;}
	#SESS .session-module-02 .padding-t-s.padding-b-s.margin-b-xs.padding-l-m{ padding:20px 0 10px 0 !important;}
	#SESS .sess-tag{ margin-top:28px;}

	/*セッション一覧*/
	#SESS .sess-list .table th{ width:100%; padding:8px 0 !important;}

	#SESS .sess-list .room,
	#SESS .sess-list td.kuhaku,
	#SESS .sess-list .tatesen{ display:none;}
	#SESS .sess-list .yokosen{ display: inline;}

	#SESS .sess-list .table td .alert{ margin: 14px auto 5px; position: relative; font-size:0.9rem !important; padding:7px 0 5px 0;}
	#SESS .sess-list .table td .alert.border01-m{ padding:6px 0 5px 0;}

	/*#SESS .sess-list .table .sess-txt{ text-decoration:underline;}*/
	#SESS .sess-list .general .sess-txt{ text-decoration: none;}

	#SESS .flexbox.direction-column-sp.margin-b-l.padding-b-xs{ display:block;}
	#SESS p.alignRight.margin-b-xs{ margin-bottom:50px !important;}

	#SESS .sess-list .table td.sess_color,
	#SESS .sess-list .table td.sess_color-cloud,
	#SESS .sess-list .table td.sess_color-container,
	#SESS .sess-list .table td.sess_color-application,
	#SESS .sess-list .table td.sess_color-auto{padding: 15px;padding-top:20px; padding-bottom:15px;}
	#SESS .sess-list .table td.sess_color-cloud .sess-logo, #SESS .sess-list .table td.sess_color-application .sess-logo, #SESS .sess-list .table td.sess_color-auto .sess-logo {
    display: inline-block;
    float: left;
    height: 35px;
    width: 35px;
		}

		#SESS .sess-list .table td.sess_color-application .sess-logo {
			/*background-position-x: center;*/
			background-image: url(../img/sess/icon_app_table.svg);
			background-size: 35px;
			margin-top: -2px;
		}
		#SESS .sess-list .table td.sess_color-cloud .sess-logo {
			/*background-position-x: center;*/
			background-image: url(../img/sess/icon_hybrid_table.svg);
			background-size: 35px;
			background-position: 0 5px;
			margin-top: -3px;
		}
		#SESS .sess-list .table td.sess_color-auto .sess-logo {
			/*background-position-x: center;*/
			background-image: url(../img/sess/icon_automation_table.svg);
			background-size: 35px;
			margin-top: -7px;
		}
	#SESS .sess-list .table td.sess_color-cloud .p4,
	#SESS .sess-list .table td.sess_color-container .p4,
	#SESS .sess-list .table td.sess_color-application .p4,
	#SESS .sess-list .table td.sess_color-auto .p4{ font-size: 14px;}
	#SESS .sess-list .table td.general .p4{ margin-top:10px;}

	#SESS .sess-list .table td .join{ position: static;font-size: 0.9rem !important;margin-top: 10px;}

	#SESS .sess-list .table td .info{ position: static;}

	#SESS .join label {
		padding: 6px 0;
	}

	#SESS .join span:before {
	    top: 2px;
	}

	#SESS .join input:checked + span:after {
	    top: 4px;
	}

	#SESS .sess-list .table td.general{ padding:30px 20px 30px !important;}
	#SESS .sess-list .table td.general .button{
		margin-bottom: 20px;
		    font-size: 14px;
	}
	#SESS .sess-list .table td.sess_color .sess-ico,
	#SESS .sess-list .table td.sess_color-cloud .sess-ico,
	#SESS .sess-list .table td.sess_color-container .sess-ico,
	#SESS .sess-list .table td.sess_color-application .sess-ico,
	#SESS .sess-list .table td.sess_color-auto .sess-ico{
		width:18px; height:32px; margin-top:-10px;
		-ms-transform: scale(1.3)!important; -webkit-transform: scale(1.3)!important; transform: scale(1.3)!important ;
	}

	#SESS .sess-list .gradation.padding-s{ padding:13px 10px 35px 10px !important;}

	/*セッション詳細*/
	#SESS .sess-detail .sess-bg{ padding:17px 18px 9px;}
	#SESS .sess-detail .sess-ico{ height:30px}

	#SESS .sess-detail .bg-white > div.padding-xl{ padding: 60px 0 45px !important;}
	#SESS .sess-detail .sess-bg { padding: 22px 30px 10px; }

	#SESS .sess-detail iframe{ height:280px;}
	#SESS.report-mov .sess-detail iframe{ height:390px;}

	/*セッションモーダル内詳細*/
	#SESS .sess-modal-detail {

	}
	#SESS .sess-modal-detail .head {
	}
	#SESS .sess-modal-detail .head .tag {
	    padding: 4px 8px 3px;
			font-size:11px;
	}
	#SESS .sess-modal-detail .head .tag:after {
	    width: 49px;
	    height: 29px;
	    top: 11px;
	    right: -65px;
	}
	#SESS .sess-modal-detail.sess_color-cloud .head .tag:after {
	}
	#SESS .sess-modal-detail.sess_color-application .head .tag:after {
	    height: 39px;
	}
	#SESS .sess-modal-detail.sess_color-auto .head .tag:after {

	    width: 44px;
	}
	#SESS .sess-modal-detail .body {
		padding-top: 80px!important;
	}
	#SESS .sess-modal-detail .text-outline {
		line-height: 1.5;
	}
	#SESS .keyword {
	}
	#SESS .keyword li {
	    display: block;
	}
	#SESS .keyword li span {
	}
	#SESS .keyword li:nth-of-type(n+2) {
	    margin-left: 0;
	    margin-top: 7px;
	}
	#SESS .sess-modal-detail .list .image {
	    width: 280px;
	    margin-top: 0;
			margin: 0 auto;
	}
	#SESS .sess-modal-detail .list .image img {
	    width: 100%;
	}
	#SESS .sess-modal-detail .list .content {
	    width: 100%;
	    margin-top: 40px;
	}
	#SESS .sess-modal-detail .list:nth-of-type(n+2) {
	    padding-top: 42.5px;
	    margin-top: 30px;
	}
	#SESS .sess-list .table td.general .general-Lcol{ margin-right:0;}
	.filter-active:before {
	    content: none;
	}
/*	.sess-active {
	    position: relative;
	    z-index: 9999;
	    background-color: #fff;
	}*/
	#SESS .sess-list {
    padding-top: 40px;
		background: url(../img/sess/bg_sc_sp.jpg);
		background-size: 100% auto;
}
	#SESS .regist {
    width: 100%;
		padding: 0 20px;
	}
	#SESS .category-section .inner div> img {
			margin-right: 5px;
	    height: 38px;
			vertical-align: sub;
		}
	#SESS .sess-end .regist {
		padding: 0px;
	}
	#SESS #timeTable {
    margin-top: 0!important;
		padding-top: 15px !important;
}

#SESS .category-section .inner div> p {
    text-align: left;
    display: inline-block;
    font-size: 17px;
}

		#SESS .sess-list>.flexContent-spaceBetween .p2 {
		    font-size: 13px;

		}
		#SESS .sess-list>.flexContent-spaceBetween .p2 .margin-r-l{
			margin-right: 20px !important;
			margin-left: 5px;
		}


#SESS .sess-list .table th.t_color-black {
    margin-top: 10px !important;
	}
	
	#SESS .sess-modal-detail .head::before {
		content: "";
		display: inline-block;
		/*width: 67px;*/
		height: 38px;
		margin: 0px 0px 20px 30px;

		/*
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: 100%;
		vertical-align: middle;
		*/
	}

	/*
	#SESS .sess-modal-detail.sess_color-cloud .head::before {
		background-image: url(../img/sess/icon_hybrid_table.svg);
		height: 35px;
	}
	#SESS .sess-modal-detail.sess_color-application .head::before {
		background-image: url(../img/sess/icon_app_table.svg);
		height: 35px;
		width: 25px;
	}
	#SESS .sess-modal-detail.sess_color-auto .head::before {
		background-image: url(../img/sess/icon_automation_table.svg);
		width: 35px;
		height: 35px;
	}
	*/

	#SESS .sess-modal-detail .head .modalIcon span.sess-logo1 {
		background-image: url(../img/sess/icon_app_table.svg);
		height: 35px;
		width: 35px;
		max-width:35px;
		float:none;

		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: 100%;
		vertical-align: middle;

	}
	#SESS .sess-modal-detail .head .modalIcon span.sess-logo2 {
		background-image: url(../img/sess/icon_hybrid_table.svg);
		width: 40px;
		height: 23px;
		max-width:67px;
		float:none;

		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: 100%;
		vertical-align: middle;

	}
	#SESS .sess-modal-detail .head .modalIcon span.sess-logo3 {
		background-image: url(../img/sess/icon_automation_table.svg);
		width: 35px;
		height: 35px;
		float:none;

		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: 100%;
		vertical-align: middle;

	}


	#SESS .sess-modal-detail .margin-b-s {
    margin-bottom: 15px!important;
}

	#SESS .sess-modal-detail .heading8 {
	    font-size: 28px;
	    letter-spacing: -0.059rem;
	}
	#SESS .margin-t-l span {
	    font-size: 18px;
			line-height: 1.2;
	}
	.buttonRed {
    display: inline-block !important;
    max-width: 200px;
    margin-top: 20px;
    padding: 10px 22px;
    font-size: 15px;
    font-weight: bold;
    border-radius: 3px;
    transition: 0.3s;
    border: 1px solid #EE0000 !important;
}

}

/*
#####################################################################

	展示【#EXHI】

#####################################################################
*/

@media screen and (max-width : 479px){
	#EXHI .sess_color-cloud .padding-xl{ padding:0px !important; padding-top:20px !important;}
	#EXHI section.bg-gray-light2{ padding-left:12px; padding-right:12px;}


	#EXHI .sess-txt.heading6.bold2{ margin-top:3px;}
	#EXHI .exhi-detail .sess-ico{ height:30px; margin-right:7px !important;}

	#EXHI .exhi-detail .margin-nt-xl.padding-l-l{ padding:0 !important; padding-bottom:30px !important; margin-top:22px !important;}

}

/*
#####################################################################

	ブレイクアウトセッション【#SESS-BREAKOUT】

#####################################################################
*/

@media screen and (max-width : 479px){
	#SESS-BREAKOUT section.bg-gray-light2{ padding-left:12px; padding-right:12px;}
	#SESS-BREAKOUT .wrapper{ padding:0 !important;}
	#SESS-BREAKOUT .exhi-list .bg-white{ padding: 40px 24px 20px !important;}

	#SESS-BREAKOUT .exhi-list .sess-bg { padding: 15px 15px 7px;}

	#SESS-BREAKOUT .exhi-list .heading11{ margin:10px 0 10px 0 !important;}
	#SESS-BREAKOUT .exhi-list .alignRight{ text-align:center !important; padding:30px 0 15px 0;}
	#SESS-BREAKOUT .exhi-list .alignRight .button{ min-width:220px !important;}

	#SESS-BREAKOUT .big-keyword{ font-size:45px !important;}
	#SESS-BREAKOUT .sess_color .sess-bg-dark .padding-tb-xl{ padding-top:40px !important; padding-bottom:40px !important;}

	#SESS-BREAKOUT .exhi-list .absolute-top-right{ position:relative;}
}



/*
#####################################################################

	ボタン【button】

#####################################################################
*/


/* ****************************************************
  サイズ【b_size】
***************************************************** */

@media screen and (max-width : 479px){
	.b_size-s,
	.b_size-m,
	.b_size-l,
	.b_size-full{ line-height:1.2 !important; padding:14px 20px;}
	.b_size-l{ min-width:220px;}
	.b_size-ml{ min-width:220px;}
}

@media screen and (max-width : 479px){

	.buttonContainer-center li,
	.buttonContainer-center li:first-child,
	.buttonContainer-center li:last-child,
	.buttonContainer-right li,
	.buttonContainer-right li:first-child,
	.buttonContainer-left li{ margin:0 0 10px 0; }/*ボトムのみマージン*/

	.buttonContainer-center li:last-child,
	.buttonContainer-right li:last-child,
	.buttonContainer-left li:last-child{ margin:0; }
}

/*
#####################################################################

	テーブル

#####################################################################
/*

/* ****************************************************
  テーブルスマホ対応【.t_sp】
***************************************************** */


@media screen and (max-width: 479px) {

	/*テーブルスタイル*/
	.table.t_sp table::before, .table.t_sp table::after {
		content: "";
		display: table;
	}
	.table.t_sp table::after {
		clear: both;
	}
	.table.t_sp colgroup, .table.t_sp col {
		display: none;
		width: auto;
	}
	.table.t_sp tbody, .table.t_sp tr, .table.t_sp th, .table.t_sp td {
		box-sizing: border-box;
		clear: both;
		display: block;
		float: left;
		width: 100%;
	}
	#SESS .sess-list .table th {
		height: 56px;
		padding: 16px 0 !important;
	}

	.table.t_sp td{
		/*display: none;*/
	}

	.table th{
		border-radius: 3px;
		font-weight: bold;
		position: relative;
	}
	.table.yokosen{
		font-weight: bold !important;
		    font-size: 12px;
	}
	.margin-t-s.margin-t-s {
		margin-top: 0px !important;
	}

	.table.open.t_sp td{
		display: block;
	}
	.table.open th{
		border-radius: 3px 3px 0px 0px / 3px 3px 0px 0px;

	}

	.table th::after{
		content: "";
		height: 2px;
		width: 18px;
		background-color: #FFF;
		position: absolute;
		right: 14px;
		top:26px;
	}
	.table th::before{
		content: "";
		height: 18px;
		width: 2px;
		background-color: #FFF;
		position: absolute;
		right: 22px;
		top:18px;
	}

}

/* ****************************************************
  セルのサイズ【t_size】
***************************************************** */


@media screen and (max-width : 479px){
	.t_size-s{ width: 90px; }
	.t_size-m{ width: 150px; }
	.t_size-l{ width: 250px; }
}


/*
#####################################################################

	その他モジュール

#####################################################################
*/

/* ****************************************************
  パンクズリスト【.breadcrumbs】
***************************************************** */

@media screen and (max-width : 479px){
	.breadcrumbs{ display:none;}
}

/* ****************************************************
  万能拡大表示【.lity】
***************************************************** */
/********** カスタム設定 ********/
@media screen and (max-width : 479px){
	.lity-close {
		position: absolute;
		top: 0px;
		right: 0px;
	}
	.lity-container {
		box-sizing: border-box;
		min-width: 94.6%!important;
		max-width: 94.6%!important;
	}
	.lity-iframe-container {
		padding-top: 170%!important;
	}
}
