@charset "UTF-8";


.btn_pagetop {
	width:30px; height:30px;
	margin:50px 0 0 auto;
}
.btn_pagetop a {
	display:block;
	background-color:#666;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
}
.btn_pagetop a:hover {
	background-color:#999;
}
.btn_pagetop img {
	padding:5px;
}
.link, .link_new{
    position: relative;
    padding: 3px 0 3px 12px;
	background:none;
}
.link:before, .link_new:before {
    content: "";
    display: block;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent #4a331f;
    position: absolute;
    top: 0.45em;
    left: 0;
}
.title{border-left:none;padding-left:0;}
.title h2{position:relative; border-top:solid 4px #ccc; border-bottom:none; padding-top:8px; font-weight: bold;}
.title h2:before{content:""; display:block; position:absolute; top:-4px; left:0; width:280px; height:4px; background-color:#004667;}
.title p{font-size:120%;}
.global_footer .ico{vertical-align:middle; margin-left:3px;}
.red{color:#4a331f;}
.alignC{text-align:center;}
.nowrap{white-space:nowrap;}

.sp-dsp-block{display:none;}
.sp-dsp-none{display:block;}

.mb50{margin-bottom: 50px;}

.notes{
	font-size: 90%;
}

header#header h1 {
	padding:10px 0 0 0;
}
header#header h1 img{
	/*width:360px;*/
	height: 56px;
}




/* =======================================

	Top CSS

========================================== */
.global_nav {
	background-color:#4a331f;
}
.global_nav ul {
	display: table;
	margin:0 auto; padding-left:1px;
	table-layout: fixed;
	width:959px;
	background:url(../../shared/images/img_line.gif) no-repeat left center;
}
.global_nav li {
	display: table-cell;
	font-size:108%;
	text-align:center;
	vertical-align:middle;
	cursor:pointer;
}
.global_nav a,
.global_nav span {
	background:url(../../shared/images/img_line.gif) no-repeat right center;
	color: #fff;
}
.global_nav li:hover,
.global_nav li.current{
	background-color:#856444;
}


.headline {
	position:relative;
	padding-left:0;
	font-weight:bold;
	background-color:#f0f0f0;
	border-radius:5px;
	padding:15px 26px;
}
.headline:before{content:""; display:block; position:absolute; top:20%; left:10px; width:8px; height:30px; background-color:#4a331f;}

.crosshead{padding-left:10px; border-left:solid 6px #4a331f; font-weight:bold;}
.subhead{color:#4a331f; font-weight:bold;}

ul.list_dot {margin: 0 0 20px 15px;}
ul.list_dot li{
    list-style-type:none;
    position: relative;
    margin-top:0.3em; 
    padding-left: 1.3em;
}
ul.list_dot li:before{
    content:"●";
    position: absolute;
    color:#4a331f;
    left: 0;
    width: 1em;
    height: 1em;
}
ul.list_dot li a{
    word-break: break-all;}
p.txtInd{
    margin: 0 0 1em 1em;
}


/* Index
========================================== */
.mainvisual {
	margin:30px 0 0;
}

.data {
	font-size:115%;
	margin:0 auto 20px;
	width:90%;
	
}
.data dl {
	float:left;
	margin-left:30px;
	width:auto;
}
.data dl:first-child {
	margin-left:0;
}
.data dt span,
.data dd {
	font-weight:bold;
}
.data dt {
	clear:both;
	float:left;
	width:4em;
}
.data dt span {
	border-left:6px solid #F7002C;
	display:block;
	padding-left:5px;
}
.data dd {
	margin-bottom:10px;
	padding-left:4em;
}
.data dd span {
	font-size:88%;
}

.btn_application,
.close {
	background-color:#023a8c;
	padding:10px 0 30px;
}
.btn_application p {
	font-size:158%;
	margin:0 auto;
	width:12.5em;
}
.btn_application a {
	color:#FFF;
	display:block;
	padding:15px;
	text-decoration:none;	
	
background: #ff6126;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmN2U0ZSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjYxMjYiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff7e4e), color-stop(100%,#ff6126));
background: -webkit-linear-gradient(top,  #ff7e4e 0%,#ff6126 100%);
background: linear-gradient(to bottom,  #ff7e4e 0%,#ff6126 100%);

	
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.btn_application a:hover {
background: #ff7e4e;
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmOWQ3OSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjdlNGUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff9d79), color-stop(100%,#ff7e4e));
background: -webkit-linear-gradient(top,  #ff9d79 0%,#ff7e4e 100%);
background: linear-gradient(to bottom,  #ff9d79 0%,#ff7e4e 100%);
}
.btn_application span {
	background:url(../../shared/images/arrow_btn.png) no-repeat 0 center;
	cursor:pointer;
	display:block;
	padding-left:29px;
}


.img_main {
	margin:0 auto 50px;
	width:960px;
}
.img_host {
	margin:0 auto;
	width:845px;
	border:solid 1px #000;
}

.close span {
	display:block;
	color:#FFF;
	border:1px solid #FFF;
	width:30em;
	margin:0 auto;
	padding:5px 0;
}

.headline2{
	display: flex;
	justify-content: center;
	align-content: center;
    /*margin-bottom: 50px;*/
    /*background-color: #f0f0f0;*/
    border-radius: 5px;
}
.headline2 dt {
	display: flex;
	align-items: center;
    padding: 13px 15px 13px 15px;
	line-height: 110%;
    background-color: #4a331f;
    border-radius: 5px;
	color:#fff;
	font-weight: bold;
}
.headline2 dd {
	display: table-cell;
    vertical-align: middle;
    /*padding: 6px 12px;*/
    padding: 0.5em 12px 0.5em 24px;
	color: #4a331f;
	font-weight: bold;
	font-size: 130%;
	line-height: 150%;
}
.headline2Notes {
	color: #4a331f;
	font-size: 120%;
	margin: 1.5em 0 50px;
    color: #e7541a;
}
#logos{
	width:50%;
	margin: 3em auto 0 auto;
}
#logos li{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
	font-weight:bold;
	padding-bottom:0.8em;
}
#logos li span{
	display:inline-block;
	font-weight:bold;
	/*padding-right:1em;*/
    width: 5em;
}
#logos li div{
	display:inline-block;
    width: calc(100% - 5em);
    text-align: left;
}
#logos li img{
	width: auto;
    max-height: 38px;

}
#logos li:first-child img:nth-of-type(1){
	margin-right: 20px;
}
#logos li:first-child span{
	padding-top: 10px;
}

.L1R1 .fLeft{ width:42%; margin-right:2%;}
.L1R1 .fRight{width:54.8%;}
.fLeft{float:left;}
.fRight{float:right; }
.tblcell{display:table-cell; vertical-align:middle;}





#entryBtn a{
	display:block;
	margin:40px auto 60px;
	padding:12px 15px 12px 25px;
	background-color:#e7541a;
	border-radius:5px;
	width:350px;
	text-align:center;
}
#entryBtn a span{
	position:relative;
	color:#fff;
	font-weight:bold;
	font-size:120%;
}
#entryBtn a span:before{
    content: "";
    display: block;
    height: 0;
    border-style: solid;
    border-width: 7px 0 7px 8px;
    border-color: transparent #fff;
    position: absolute;
    top: 17%;
    left: -0.8em;
	}
#entryBtn a:hover{
	text-decoration:none;
	opacity:0.7;
}
#top .topcontents .title p{
	font-size:150%;
	margin:50px 0;
}


#top .topInformation{
	width: 70%;
	margin: 30px auto 50px auto;
	background: #FDD8FC;
	padding: 20px;
}
#top .topInformation .alignC strong{
	text-decoration: underline;
}

/* About
========================================== */
.tbl_about,
.tbl_lineup,
.tbl_timetable {
	width:100%;
}
.tbl_about td,
.tbl_lineup td,
.tbl_timetable td {
	border-right: 1px dotted #cbcbcb;
	border-bottom: 1px solid #cbcbcb;
	padding:10px;
}
.tbl_about th,
.tbl_lineup th,
.tbl_timetable th{
	border-right: 1px dotted #cbcbcb;
	padding:10px;
}

.tbl_about th:first-child,
.tbl_about td:last-child{
	border-right:none;
}
.tbl_lineup th:last-child,
.tbl_lineup td:last-child,
.tbl_timetable th:last-child,
.tbl_timetable td:last-child {
	border-right:none;
}
.tbl_about{border-top:solid 1px #cbcbcb;}
.tbl_about th {
	border-bottom: 1px dotted #cbcbcb;
	background-color:#f1eee5;
	text-align:center;
	width:15%;
	white-space:nowrap;
	vertical-align:middle;
}
.tbl_timetable th,
.tbl_timetable td{
	text-align:center;
	vertical-align:middle;
	font-size:90%;
}
.tbl_lineup thead th,
.tbl_timetable th {
	background-color:#4a331f;
	color:#fff;
	text-align:center;
	vertical-align:middle;
}
.tbl_lineup th,
.tbl_lineup td {
	vertical-align:middle;
}
.tbl_lineup a {
	display:block;
	position:relative;
	line-height:1.1;
	padding:3px 0 3px 12px;
	text-decoration:none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-bottom: 0.5em;
}
.tbl_lineup a:before {
    content: "";
    display: block;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 6px;
    border-color: transparent #4a331f;
    position: absolute;
    top: 0.3em;
    left: 0;
}
.tbl_lineup a:hover {
	text-decoration:underline;
}
.tbl_lineup tr th:first-child{ width: 30%;}
.tbl_lineup tr th:nth-of-type(2){width: 55%;}
.tbl_lineup tr th:last-child,
.tbl_lineup tr td:last-child{width: 15%; text-align:center;}

.tbl_lineup tbody tr:nth-child(even) th,
.tbl_lineup tbody tr:nth-child(even) td {
	background-color:#f1eee5;
}

/* 2025 */
.tbl_lineup td dl dt{
	font-weight: bold;
}
.tbl_lineup td dl dd{
	margin-top: 1em;
}
.tbl_lineup td dl dd span.name{
	display: block;
	margin-top: 1em;
}

.tbl_timetable .breaktime{background-color:#ebebeb; border-right: none;}
.tbl_timetable th:nth-of-type(2),
.tbl_timetable th:nth-of-type(3){
	width: 40%;
	text-align:center;
}
.tbl_timetable td:first-child{
    vertical-align:middle;
    text-align: center;
}
.tbl_timetable td:first-child span{
	position: relative;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	text-indent:-9999px;
	display:block;
    width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 9px 0 9px;
	border-color: #ccc transparent transparent transparent;
}


/* プレゼント */
ul.present_corner {
    font-size: 95%;
	padding-bottom:20px;
    margin-top: 2em;
}
ul.present_corner.col1 {
    display: block:
}
ul.present_corner.col2 {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
ul.present_corner.col2 li {
	width:48.55%;
}
ul.present_corner li {
	font-size:115%;
    background: #f4f4f4;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 10px;
	margin-bottom:15px;
	border:2px solid #8D7F2A;
}
ul.present_corner li h3 {
    display: flex;
    justify-content: center;
    align-items: center;
	height: 1.8em;
	text-align:center;
	font-size:115%;
	font-weight:bold;
	color:#FFF;
	padding:5px 0;
	-webkit-border-radius: 7px 7px 0 0;
	-moz-border-radius: 7px 7px 0 0;
	border-radius: 7px 7px 0 0;
    background:#4a331f;
    margin-bottom: 0.75em;
}
ul.present_corner li p {
	padding:15px 20px;
    position: relative;
}
ul.present_corner li p span.notes{
    font-size: 90%;
    display: block;
    margin-top: 0.3em;
}
ul.present_corner li ol{
    display: block;
	padding:15px 20px;
}
ul.present_corner li ol li{
	width: calc(100% - 2em) !important;
	background: none;
	font-size: 100%;
	padding-left: 2em;
	position: relative;
    border: none;
}
ul.present_corner li ol li::before{
	content: "";
	position: absolute;
	left: -0.5em;
	width: 2em;
	height: 2em;
}
ul.present_corner li ol li:nth-of-type(1)::before{content: "【1】";}
ul.present_corner li ol li:nth-of-type(2)::before{content: "【2】";}





.dl_about dt {
clear:both;
float:left;
width:13.5em;
}
.dl_about dd {
padding-left:13.5em;
margin-bottom:3px;
}
.span_about {
	display:inline-block;
	margin-right:10px;
	font-size:86%;
}


/* Howto
========================================== */
.wrap_howto {
	position:relative;
	padding:20px 0 20px 0;
}
.wrap_howto .number {
	display: inline-block;
	margin-right:10px;
    padding: 10px;
    background-color: #4a331f;
    border-radius: 5px 0 0 5px;
}
.wrap_howto h3 {
	font-size:129%;
	font-weight:bold;
	margin-bottom:20px;
	background-color:#f0f0f0;
	border-radius:5px;
}
.wrap_howto h3 img{height:26px;}
.wrap_howto .inner {
	display: table;
	margin-bottom:10px;
	width:875px;
}
.wrap_howto .inner .img {
	display: table-cell;
	width:50%;
}
.wrap_howto .inner .img img{
	/*width:100%;*/
}
.wrap_howto .inner .txt {
	display: table-cell;
	padding-left: 3%;
	vertical-align:middle;
}
.wrap_howto p.link a{
    word-break: break-all;
}
.para_howto {
	border-top:1px dashed #cbcbcb;
	padding:20px 0 0 0;
}
	


/* Access
========================================== */
.wrap_map {
	display: table;
	margin-bottom:10px;
}
.wrap_map .img {
	display: table-cell;
	width:440px;
}
.list_access {
	display: table-cell;
	vertical-align:middle;
}
.list_access li {
	margin-bottom:3px;
}

/*-------------------------------------------------------
	Document
-------------------------------------------------------*/
#document .contents{
	display: table;
	width: 100%;
	text-align: center;
	padding: 90px 0 240px 0;
	border-top: 2px solid #4a331f;
}
#document .contents p{
	display: table-cell;
	height: 313px;
	vertical-align: middle;
	background: url("../images/document_bg.png") 50% 50% no-repeat;
	background-size: 263px auto;
	font-size: 28px;
	font-weight: bold;
	margin: 1em 0 0 0;
}
#document footer.global_footer{
	width: 100%;
	position: fixed;
	bottom: 0;
}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 TUBLET
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:950px){
.container{min-width:100%;}
.global_nav ul,
.img_main,
.img_host,
.wrap_howto .inner,
.list_about,
.list_about li{width:auto;}
.global_header,
.topcontents,
.contents,
.close span,
.global_footer > div{width:95%;}
.container img{max-width:100%;}
.btn_pagetop img{width:20px; height:20px;}
.global_nav ul{width:100%; box-sizing: border-box;}
.img_host img{width:auto; height:95px;}
.close span{font-size:75%;}

.wrap_howto .inner .img,
.wrap_howto .inner .txt,
.wrap_map .img,
.list_access{display:block; width:auto;}
/* -------------------------------------------------------
 INDEX
 -----------------------------------------------------*/
#logos{
    width: 70%;
    margin:0 auto;
    text-align:center;
}
/*#logos li img{width: 33%;}*/




}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 SP 640px
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:640px){
.global_header h1{float:none; text-align:center;}
.global_header .contact{display:none;}

.global_nav li{
/*	display:inline-block;
	float:left;
	box-sizing: border-box;
	width: 50%;*/
	border-bottom:solid 1px #fff;
	border-right:solid 1px #fff;
}
.global_nav li:nth-child(3n){border-right:none;}
.global_nav ul,
.global_nav a,
.global_nav span{
	background-image:none;
	line-height: 115%;
}
.img_host img{width:auto; height:75px;}
.sp-dsp-block{display:block;}
.sp-dsp-none{display:none;}

header#header h1 img{width:90%;}

/* -------------------------------------------------------
 INDEX
 ----------------------------------------------------------*/
     #top .title p{font-size:115% !important;}
     #top .L1R1 .fLeft{ float:none; width:auto; margin-right:0;}
     #top .L1R1 .fRight{float:none; width:auto;}
     #top #entryBtn a{width:80%;}

    #top .headline2 {
        width: 90%;
        margin: 0 auto;
        justify-content: flex-start;
    }
    #top .headline2 dt {padding: 13px 15px 13px 15px;}
    #top .headline2 dd {padding: 0em 0 0 18px;}
    .headline2Notes {font-size: 110%;}  
	 
    #top #logos li:first-of-type{
        margin-bottom: 1.5em;
    }
    #top #logos li span{
        display: block;
    }
    #logos{
    	width:100%;
    }
    #logos li{
        display: block;
        text-align: center;
    }
    #logos li span{
	    display: block;
        margin: 0 auto;
    }
    #logos li div{
	    display: block;
        width: 95%;
    text-align: center;
        margin: 0 auto;
    }
    #logos li img{
	    display:inline-block !important;
	    width: auto;
        max-height: 33px;
    }
    
    

/* -------------------------------------------------------
 ABOUT
 ----------------------------------------------------------*/
    .tbl_lineup td span{display:block;}
    .list_about li{width: auto;}
    .list_about .item03 {margin-top: 30px;}
    ul.list_dot{margin-left: 1em;}
    
    /*.tbl_lineup.tableMain tr td:last-child{width:19%;}*/
    /*.tbl_lineup.tableMain tr th:nth-of-type(2){width: 16%;}*/


    .tbl_lineup tr th:first-child{width:24%;}
	.tbl_lineup tr th:nth-of-type(2){width:61%;}
	.tbl_lineup tr th:last-child,
	.tbl_lineup tr td:last-child{width:15%;}


/*スクロールテーブル---------------------------------------------*/
.sp-table-scroll{
	overflow:auto;

	table-layout:auto;
	-webkit-overflow-scrolling:touch;
	position:relative;
	z-index:2;
}
.sp-table-scroll>table{margin-bottom:5px;}
.sp-table-scroll .cellFix{
	position:-webkit-sticky;
	position:sticky;
	top:0;
	left:0;
	z-index:1;
}
.sp-table-scroll::-webkit-scrollbar{height:5px;}
.sp-table-scroll::-webkit-scrollbar-track{
	background:#e3e4e5;
	border-radius:10px;
}
.sp-table-scroll::-webkit-scrollbar-thumb{
	background:#84919d;
	border-radius:10px;
}
.sp-table-scroll .arwSc{
	background:url("../images/table-arw.svg") no-repeat 0 0/auto 60px;
	width:60px;
	height:60px;
	margin:-30px 0 0 -30px;
	position:absolute;
	top:50%;
	left:50%;
	z-index:2;
	opacity:0;
	visibility:hidden;
	overflow:hidden;
	transition:opacity 0.2s ease-out;
}
.sp-table-scroll.sc .arwSc{
	opacity:1;
	visibility:visible;
}
/* table-default */
.sp-table-scroll .tbl_lineup.tableMain{
	border-collapse:separate;
	border-spacing:0;
	width: 800px;
}
.sp-table-scroll .tbl_lineup.tableMain th,
.sp-table-scroll .tbl_lineup.tableMain td{
	position: relative;
	 -webkit-text-size-adjust: 100%;
	border-left:none;
	font-size: 14px!important;
}
    
/* -------------------------------------------------------
 Howto
 ----------------------------------------------------------*/
	.wrap_howto .inner .txt {
		padding: 10px 0 0 0;
	}

/* -------------------------------------------------------
	Document
----------------------------------------------------------*/

	#document .contents{
		padding: 30px 0 60px 0;
	}
	#document .contents p{
		background-size: 60% auto;
		font-size: 22px;
		margin: 1em 0 0 0;
	}




}