/* ---------------------------------------------------------------
start COMMON CSS
--------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');


body {
	margin: 0;
	padding: 0;
	color: #040000;
	background: #040000;
	font-family: 'Noto Sans JP', Meiryo, sans-serif;
	font-size: 16px;
	line-height: 1.75;
}

* {
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
	box-sizing : border-box ;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	overflow: hidden;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
}

a {
	outline: none;
	color: #0000ff;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}

a.opacity {
	-webkit-transition: opacity .2s;
	-moz-transition: opacity .2s;
	-ms-transition: opacity .2s;
	transition: opacity .2s;
}

a.opacity:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
	-moz-opacity: 0.75;
	-khtml-opacity: 0.75;
}

p {
	margin: 0 0 15px 0;
	padding: 0;
}

img {
	border: none;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-weight: normal;
}

ul {
	margin: 0;
	list-style: none;
}

em {
	font-style: normal;
}

.aligncenter {
	text-align: center;
}

.alignright {
	text-align: right;
}

.alignleft {
	text-align: left;
}

.alignjust {
	text-align: justify;
	text-justify: inter-ideograph;
	-ms-text-justify: inter-ideograph;
}

.fleft {
	float: left;
}

.fright {
	float: right;
}

.mt5 {margin-top: 5px;}
.mt10 {margin-top: 10px;}
.mt15 {margin-top: 15px;}
.mt20 {margin-top: 20px;}
.mt25 {margin-top: 25px;}
.mt30 {margin-top: 30px;}
.mt35 {margin-top: 35px;}
.mt40 {margin-top: 40px;}
.mt45 {margin-top: 45px;}
.mt50 {margin-top: 50px;}
.mt55 {margin-top: 55px;}
.mt60 {margin-top: 60px;}
.mb5 {margin-bottom: 5px;}
.mb10 {margin-bottom: 10px;}
.mb15 {margin-bottom: 15px;}
.mb20 {margin-bottom: 20px;}
.mb25 {margin-bottom: 25px;}
.mb30 {margin-bottom: 30px;}
.mb35 {margin-bottom: 35px;}
.mb40 {margin-bottom: 40px;}
.mb45 {margin-bottom: 45px;}
.mb50 {margin-bottom: 50px;}
.mb55 {margin-bottom: 55px;}
.mb60 {margin-bottom: 60px;}
.mb70 {margin-bottom: 70px;}
.ml1em {margin-left: 1em;}
.ml5 {margin-left: 5px;}
.ml10 {margin-left: 10px;}
.ml15 {margin-left: 15px;}
.ml20 {margin-left: 20px;}
.ml25 {margin-left: 25px;}
.ml30 {margin-left: 30px;}
.ml35 {margin-left: 35px;}
.ml40 {margin-left: 40px;}
.ml45 {margin-left: 45px;}
.ml50 {margin-left: 50px;}
.ml55 {margin-left: 55px;}
.ml60 {margin-left: 60px;}
.ml65 {margin-left: 65px;}
.ml70 {margin-left: 70px;}
.ml75 {margin-left: 75px;}
.ml80 {margin-left: 80px;}
.ml85 {margin-left: 85px;}
.ml90 {margin-left: 90px;}
.ml170 {margin-left: 170px;}
.mr5 {margin-right: 5px;}
.mr10 {margin-right: 10px;}
.mr15 {margin-right: 15px;}
.mr20 {margin-right: 20px;}
.mr25 {margin-right: 25px;}
.mr30 {margin-right: 30px;}
.mr35 {margin-right: 35px;}
.mr40 {margin-right: 40px;}
.mr45 {margin-right: 45px;}
.mr50 {margin-right: 50px;}
.mr55 {margin-right: 55px;}
.mr60 {margin-right: 60px;}

.w100{
	width: 100%;
}

.note {
	font-size: 10px;
}

.fs13 {
	font-size: 13px;
}
.fs14 {
	font-size: 14px;
}
.fs15 {
	font-size: 15px;
	line-height: 24px;
}
.fs16 {
	font-size: 16px;
}
.fs17 {
	font-size: 17px;
}
.bold {
	font-weight: bold;
}

.red {
	color: #ff0000;
}

.blue {
	color: #004da0;
	font-weight: bold;
}

.purple {
	color: #8a1875;
	font-weight: bold;
}

.gray {
	color: #9f9f9f;
}

.strike {
	text-decoration: line-through solid #e60012;
}

.strike_black {
	text-decoration: line-through solid #040000;
}
.gray .strike_black  { text-decoration: line-through solid #777; }

.under {
	text-decoration: underline;
}

table {
	border-collapse: collapse;
}

.iblock {
	display: inline-block;
}

.indent_num1 {
	padding-left: 1.6em;
	text-indent: -1.6em;
}

.indent_num1 * {
	text-indent: 0;
}

.indent1 {
	padding-left: 1em;
	text-indent: -1em;
}

.indent1 * { text-indent: 0; }

.indent2 {
	padding-left: 1.35em;
	text-indent: -1.35em;
}

.ls001 {
	letter-spacing: -0.01em;
}

.marker {
	padding: 0 3px;
	font-weight: 500;
	background: linear-gradient(transparent 60%, #ffe14f 60%);
}

.italic {
	font-style: italic;
}

.box_red1 {
	margin: 8px 15px 0 0;
	padding: 9px 8px 8px 17px;
	border: solid 1px #e5232a;
}

p.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 2;
}

p.pagetop a {
	width: 60px;
	height: 0;
	margin: 0;
	padding: 60px 0 0 0;
	background-image: url(../img/btn_pagetop.png);
	background-repeat: no-repeat;
	display: block;
	overflow: hidden;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	opacity: 0.8;
	-moz-opacity: 0.8;
	-khtml-opacity: 0.8;
}

p.pagetop a:hover {
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	opacity: 1;
	-moz-opacity: 1;
	-khtml-opacity: 1;
}

.col_prepare {
	margin: 0;
	padding: 40px 0;
	font-size: 22px;
	line-height: 24px;
	text-align: center;
}

.btn1 {
	width: 300px;
	min-height: 56px;
	padding: 5px 20px;
	color: #ed6b04;
	font-size: 17px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	background: linear-gradient(180deg, #fff, #eaeaea);
	border: solid 2px #ed6b04;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 0;
}

a.btn1:hover { background: linear-gradient(0deg, #fff, #eaeaea); }

a.btn1::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #ed6b04;
	border-right: solid 2px #ed6b04;
	transform: rotate(45deg);
	position: absolute;
	top: calc( 50% - 4px );
	right: 15px;
}

.btn1.pdf { padding-right: 35px; }
.btn1.pdf::before {
	content: "";
	width: 27px;
	height: 32px;
	background-image: url(../img/icon_pdf.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: none;
	transform: rotate(0);
	position: absolute;
	top: calc( 50% - 16px );
	right: 10px;
}

.btn1.ppt { padding-right: 28px; }
.btn1.ppt::before {
	content: "";
	width: 24px;
	height: 24px;
	background-image: url(../img/icon_ppt.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: none;
	transform: rotate(0);
	position: absolute;
	top: calc( 50% - 12px );
	right: 12px;
}

.btn1.word { padding-right: 28px; }
.btn1.word::before {
	content: "";
	width: 24px;
	height: 24px;
	background-image: url(../img/icon_word.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: none;
	transform: rotate(0);
	position: absolute;
	top: calc( 50% - 12px );
	right: 12px;
}

.btn2 {
	width: 300px;
	min-height: 56px;
	padding: 5px 20px;
	color: #fff;
	font-size: 17px;
	font-weight: 500;
	text-align: center;
	text-decoration: none;
	background: linear-gradient( 180deg, #ef9a57, #e36400 );
	border: solid 2px #ed6b04;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 0;
}
a.btn2:hover { background: linear-gradient( 0deg, #ef9a57, #e36400 ); }

a.btn2::before {
	content: "";
	width: 8px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(45deg);
	position: absolute;
	top: calc( 50% - 4px );
	right: 15px;
}

.btn2.pdf { padding-right: 35px; }
.btn2.pdf::before {
	content: "";
	width: 27px;
	height: 32px;
	background-image: url(../img/icon_pdf.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: none;
	transform: rotate(0);
	position: absolute;
	top: calc( 50% - 16px );
	right: 10px;
}

.sp_none {
	display: block;
}

.pc_none {
	display: none;
}

.box_notice {
	max-width: 900px;
	margin: 0 0 20px;
	padding: 10px 15px;
	color: #ef0000;
	border: solid 1px #ef0000;
}



/* --------------- subpage common --------------- */

.ttl_sub {
	min-height: 60px;
	margin: 0 0 10px;
	padding: 0;
}

.lead_sub {
	margin: 0 0 60px;
	padding: 0;
	font-size: 16px;
	line-height: 1.6;
}

.mds1 {
	margin: 0 0 20px 0;
	padding: 9px 0 6px 18px;
	font-size: 22px;
	line-height: 1.6;
	font-weight: bold;
	color: #fff;
	border-left: 10px solid #f3a83c;
	background-color: #223b4f;
}


.mds2 {
	width: 100%;
	margin: 0 0 15px 0;
	padding: 0 5px 3px;
	color: #223b4f;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	border-bottom: solid 2px #223b4f;
}


.col_subcontent {
	margin: 0 0 30px;
	padding: 0 25px 25px;
	font-size: 16px;
	line-height: 1.6;
}


/* ---------------------------------------------------------------
	end common
--------------------------------------------------------------- */


/* --------------- header --------------- */


#header {
	margin: 0 auto;
	padding: 0;
	display: none;
}

#menubtn {
	display: none;
}

.col_header {
	width: 100%;
	background-color: #040000;
}

.col_header a {
	display: block;
}


/* --------------- contents --------------- */

#wrap {
	overflow: hidden;
}

#contents {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	display: flex;
}

#leftcontents {
	width: 334px;
	padding: 44px 35px 35px;
	background-color: #f3a83c;
}

#rightcontents {
	width: calc( 100% - 334px );
	margin: 0;
	padding: 0;
	background-color: #ffffff;
}

.col_content {
	width: 90%;
	max-width: 710px;
	margin-left: auto;
	margin-right: auto;
}

/* --------------- leftcontents --------------- */

#navi {
	width: 264px;
	margin: 0 auto 50px;
	padding: 0;
}

#navi li {
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom: solid 1px #000000;
	background: #fdf0de;
}
#navi li.active,
#navi li:hover {
	border-bottom: solid 1px #000;
	background: #223b4f;
}
#navi li:last-of-type { border-bottom-color: #fdf0de; }
#navi li.active:last-of-type { border-bottom-color: #fdf0de; }
#navi li:last-of-type:hover { border-bottom-color: #223b4f; }

#navi li a {
	width: 100%;
	height: 100%;
	padding: 10px 14px 10px 16px;
	font-size: 15px;
	line-height: 1.4;
	font-weight: bold;
	color: #223b4f;
	text-decoration: none;
	display: block;
	position: relative;
	z-index: 0;
	transition: 0.2s;
}

#navi li.active a,
#navi li:hover a {
	color: #fff;
}

/*
#navi li a::after {
	content: "";
	margin: 0;
	padding: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #223b4f;
	position: absolute;
	top: calc(50% - 5px);
	right: 13px;
}
#navi li:hover a::after,
#navi li.active a::after {
	border-left: 6px solid #f3a83c;
}
*/

#navi li.pdf a::after {
	content: "";
	width: 22px;
	height: 28px;
	border: none;
	background-image: url(../img/icon_pdf.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: calc( 50% - 14px );
	right: 7px;
}

.col_sidebtn {
	width: 100%;
	margin: 0 0 30px;
	padding: 0;
	display: flex;
}
.col_sidebtn a {
	height: 46px;
	margin: 0;
	padding: 0;
	color: #fff;
	text-align: center;
	text-decoration: none;
	border-radius: 3px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
}
.col_sidebtn a.cart {
	width: 116px;
	margin: 0 10px 0 0;
	background: linear-gradient( 180deg, #d2d2d2, #5d5d5d );
	border: solid 1px #808080;
}
.col_sidebtn a.cart:hover { background: linear-gradient( 0deg, #d2d2d2, #5d5d5d ); }
.col_sidebtn a.signup {
	width: 138px;
	background: linear-gradient( 180deg, #6e94bd, #223b4f );
	border: solid 1px #223b4f;
}
.col_sidebtn a.signup:hover { background: linear-gradient( 0deg, #6e94bd, #223b4f ); }
.col_sidebtn a .icon {
	width: 20px;
	margin: 0 5px 0 0;
	padding: 0;
}
.col_sidebtn a.signup .icon { margin-right: 9px; }
.col_sidebtn a .icon img { width: 100%; }
.col_sidebtn a .txt {
	margin: 0;
	padding: 0;
	font-weight: 500;
}

.mds_side {
	margin: 0 0 12px 0;
	padding: 2px 0 1px 10px;
	font-size: 16px;
	line-height: 1.6;
	font-weight: bold;
	color: #223b4f;
	border-left: 6px solid #223b4f;
}
.slick-slider .slick-list {
	padding: 0 0 10px;
}


table.tbl_dates {
	width: 100%;
	margin: 0 0 25px;
	padding: 0;
	font-size: 14px;
	line-height: 1.3;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
	background-color: #fff;
}

table.tbl_dates th {
	width: 47%;
	margin: 0;
	padding: 7px 7px 7px 11px;
	text-align: left;
	font-weight: normal;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}

table.tbl_dates td {
	width: 53%;
	margin: 0;
	padding: 7px;
	text-align: left;
	vertical-align: middle;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}

table.tbl_dates td.closed {
	font-weight: bold;
}

table.tbl_dates td.dates {
	font-weight: bold;
	color: #ff0000;
}

table.tbl_dates tr:nth-child(2n+1) {
	background-color: #e9e9e9;
}

.col_bnr_side {
	width: 264px;
	margin: 0 0 60px;
}



/* --------------- rightcontents --------------- */

.col_topmain {
	width: 100%;
	min-height: 550px;
	margin: 0 0 25px;
	background-color: #fff;
	background-image: url(../img/bg_topmain.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100% auto;
	position: relative;
}

.col_subhead {
	width: 100%;
	min-height: 150px;
	margin: 0 0 35px;
	background-color: #fff;
	background-image: url(../img/bg_subhead.jpg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100% auto;
	position: relative;
}



@media print,screen and ( max-width: 1260px ) {

	.col_topmain {
		min-height: initial;
		height: 0;
		padding-top: 59.39%;
		background-position: center center;
		background-size: auto 100%;
	}
	
	.col_subhead {
		min-height: initial;
		height: 0;
		padding-top: 16%;
	}

}



.title_topmain {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 3.3vw;
	left: 3.8vw;
}

.title_topmain img {
	width: 35.2vw;
}


.title_subpage {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 2.8vw;
	left: 3.2vw;
}

.title_subpage img {
	width: 23vw;
}




@media print,screen and ( max-width: 1260px ) {

	.title_topmain {
		top: 44px;
		left: 45px;
	}

	.title_topmain img {
		width: 444px;
	}

}


.img_topinfo1 {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 15vw;
	left: 3.8vw;
}

.img_topinfo1 img {
	width: 31vw;
}

@media print,screen and ( max-width: 1260px ) {

	.img_topinfo1 {
		top: 191px;
		left: 45px;
	}
	
	.img_topinfo1 img {
		width: 388px;
	}

}



.col_topmain .url {
	width: 18vw;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 21.0vw;
	left: 11.8vw;
}

.col_topmain .url a::before {
	content: "";
	width: 17vw;
	height: 2px;
	margin: 0;
	padding: 0;
	background-color: #fff;
	transition: opacity 0.2s;
	position: absolute;
	left: 0.8vw;
	bottom: 0;
}

@media print,screen and ( max-width: 1260px ) {

	.col_topmain .url {
		width: 230px;
		top: 267px;
		left: 144px;
	}

	.col_topmain .url a::before {
		width: 218px;
		top: 15px;
		left: 5px;
	}

}


.col_topmain .url a {
	margin: 0;
	padding: 0;
	display: block;
	position: relative;
	z-index: 0;
}	

.col_topmain .url a:hover::before { opacity: 0; }

.col_topcontents {
	width: 100%;
	margin: 0;
	padding: 20px 47px 30px;
}


.mds_top1 {
	margin: 0 0 20px 0;
	padding: 9px 0 6px 18px;
	font-size: 22px;
	line-height: 1.6;
	font-weight: bold;
	color: #fff;
	border-left: 10px solid #f3a83c;
	background-color: #223b4f;
}

.cont_top {
	padding: 0 25px 25px;
	font-size: 16px;
	line-height: 1.6;
}

.col_topnews {
	width: 100%;
	max-height: 120px;
	margin: 0 0 30px;
	overflow: auto;
}

.col_topnews dl {
	width: 100%;
	margin: 0;
	padding: 7px 0;
	display: table;
	position: relative;
}

.col_topnews dl dt {
	width: 130px;
	margin: 0;
	padding: 0 15px 0 0;
	font-size: 16px;
	color: #808080;
	text-align: left;
	display: table-cell;
	vertical-align: top;
	white-space: nowrap;
}

.col_topnews dl dd {
	margin: 0;
	padding: 0 10px 0 0;
	font-size: 16px;
	display: table-cell;
	vertical-align: top;
}

.col_topnews dl.new dt:before {
	content: "NEW";
	padding: 4px 6px;
	line-height: 1;
	font-size: 10px;
	color: #fff;
	background-color: #c41a1f;
	display: inline-block;
	position: absolute;
	top: 10px;
	left: 80px;
}





/* --------------- footer --------------- */


#footer {
	width: 100%;
	margin: 0 auto;
	padding: 37px 0 4px;
	color: #fff;
	background-color: #223b4f;
}


.col_topcontact {
	width: 252px;
	margin: 0 auto 20px;
}


.col_topcontact dl {
	width: 252px;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

.col_topcontact dl dt {
	width: 100px;
	margin: 0 5px 0 0;
	padding: 0
}

.col_topcontact dl dd {
	width: 152px;
	margin: 0;
	padding: 0;
}

.col_topcontact dl dd a {
	margin: 0;
	padding: 0;
	display: block;
	position: relative;
	z-index: 0;
}
.col_topcontact dl dd a::before {
	content: "";
	width: 100%;
	height: 1px;
	margin: 0;
	padding: 0;
	background-color: #fff;
	transition: opacity 0.2s;
	opacity: 0;
	position: absolute;
	top: 1vw;
	left: 0;
}
.col_topcontact dl dd a:hover::before { opacity: 1; }

.title_footer {
	width: 142px;
	margin: 0 auto 3px;
}

.copy {
	margin: 0 0 0;
	padding: 14px;
	text-align: center;
	color: #fff;
	font-size: 12px;
}

.col_policy {
	width: 100%;
	margin: 0;
	padding: 15px 45px;
	color: #fff;
	font-size: 12px;
	background-color: #000;
	display: flex;
	justify-content: center;
}

ul.list_footer {
	margin: 0 auto;
	padding: 0;
	list-style-type: none;
	display: flex;
}

ul.list_footer li {
	margin: 0 20px 0 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

ul.list_footer li:last-of-type {
	margin: 0 ;
}

ul.list_footer li a {
	color: #ffffff;
}



/* --------------- venue --------------- */


.col_subcontent.venue1 {
	margin: 0 0 50px;
}

.txt_sub {
	padding: 0 0 25px;
	margin: 0;
}

.ttl_sub.venue img {
	width: 142px;
}

.wrap_map_venue {
	max-width: 80%;
	margin: 40px auto 30px;
}

.map_venue {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%;
}

.map_venue iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.img_venue2 {
	max-width: 645px;
	margin: 0 auto;
}

.mds2.venue1 {
	margin: 0 0 25px 0;
}

ul.list_venue1 {
	max-width: 710px;
	width: 96%;
	margin: 0 0 40px 20px;
	padding: 0;
	list-style-type: none;
}

ul.list_venue1.mid {
	margin: 0 0 20px 20px;
}

.txt_venue2 {
	width: 96%;
	margin: 0 auto 40px;
	padding: 0 0 0 1em;
}

ul.list_venue1 li {
	width: 100%;
	margin: 0 0 25px;
	padding: 0 0 10px 1em;
	text-indent: -1em;
	border-bottom: 1px solid #ccc;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

ul.list_venue1 li:last-of-type {
	margin: 0 0 0;
}

.name_venue1 {
	width: calc( 100% - 190px );
}

.box_venue1 {
	width: 190px;
	padding: 0 0 0 20px;
	display: flex;
}

.arrow_venue1 {
	position: relative;
	display: inline-block;
	padding: 0 0 0 26px;
	vertical-align: middle;
	font-size: 14px;
}

.arrow_venue1:first-of-type {
	margin: 0 35px 0 0;
}

.arrow_venue1::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.arrow_venue1::before {
	left: 0;
	width: 5px;
	height: 5px;
	border-top: 2px solid #223b4f;
	border-right: 2px solid #223b4f;
	transform: rotate(45deg);
}


/* --------------- registration --------------- */

.ttl_sub.registration_top img {
	width: 457px;
}

.ttl_sub.registration img {
	width: 279px;
}

.btnarea.registration{
	margin: 40px 0 0px;
}

table.tbl_registration1 {
	max-width: 528px;
	width: 100%;
	margin: 40px auto 5px;
	padding: 0;
	border-top: solid 1px #979797;
	border-left: solid 1px #979797;
}

table.tbl_registration1 tr:nth-child(odd) {
	background-color: #ededed;
}

table.tbl_registration1 th {
	width: 70%;
	margin: 0;
	padding: 8px 12px;
	line-height: 1.6;
	text-align: left;
	font-weight: normal;
	border-right: solid 1px #979797;
	border-bottom: solid 1px #979797;
}

table.tbl_registration1 td {
	margin: 0;
	padding: 8px 12px;
	line-height: 1.6;
	text-align: center;
	border-right: solid 1px #979797;
	border-bottom: solid 1px #979797;
}

.note_registration1 {
	max-width: 528px;
	width: 100%;
	margin: 0 auto 40px;
	padding: 0 5px;
	font-size: 14px;
}

.btn2.registration {
	margin: 0 auto;
}
div.btn2.registration {
	color: #eee;
	background: #aaa;
	border-color: #999;
}

.red.registration1 a{
	color: #ff0000;
}

.indent.registration1{
	text-indent: -0.75em;
	padding-left: 0.75em;
}



/* --------------- committees --------------- */

.ttl_sub.comm img {
	width: 270px;
}

ul.list_comm1 {
	margin: 0 0 15px;
	padding: 0;
	list-style-type: none;
}

ul.list_comm1.border {
	padding: 0 0 15px;
	border-bottom: 1px solid #b3b3b3;
}

ul.list_comm1 li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}


/* --------------- sponsors --------------- */

.ttl_sub.sponsors {
	margin: 0 0 40px;
}

.ttl_sub.sponsors img {
	width: 412px;
}

ul.list_sponsor1 {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

ul.list_sponsor1 li {
	width: 30%;
	margin: 0 5% 40px 0;
	padding: 0;
}

ul.list_sponsor1 li:nth-child(3n) {
	margin: 0 0 40px 0;
}

ul.list_sponsor1 li a {
	transition: all .2s;
}

ul.list_sponsor1 li a:hover {
	opacity: 0.7;
}

.list_sponsor1 .box_bnr {
	width: 100%;
	margin: 0 0 5px;
	border: 1px solid #d8d8d8;
	display: flex;
	align-items: center;
	justify-content: center;
}

.list_sponsor1 .box_bnr img {
	width: 80%;
}

.list_sponsor1 .txt {
	text-align: center;
}


/* --------------- abstract --------------- */

.ttl_sub.abstract img {
	width: 197px;
}

.btn_area_abstract {
	width: 100%;
	margin: 0;
	padding: 30px 0 30px;
	display: flex;
	justify-content: center;
}

.btn_area_abstract .btn1:first-of-type {
	margin: 0 30px 0 0;
}

.btn_area_abstract .btn1 {
	margin: 0 0;
}

.btn1.abstract1 {
	width: 295px;
}

ul.list_abstract1 {
	margin: 0 0 15px;
	padding: 0;
	list-style-type: none;
}

ul.list_abstract1 li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}


/* --------------- speakers --------------- */

.ttl_sub.speakers img {
	width: 384px;
}

ul.list_speakers1 {
	margin: 0 0 15px;
	padding: 0;
	list-style-type: none;
}

ul.list_speakers1 li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.list_speakers1 .small {
	font-size: 14px;
}


/* --------------- program --------------- */

.btn_area_program {
	width: 100%;
	margin: 0;
	padding: 30px 0 30px;
	display: flex;
	justify-content: center;
}

.btn_area_program .btn1 {
	width: 100%;
	max-width: 335px;
	margin: 0 30px 0 0;
}

.btn_area_program .btn2 {
	width: 100%;
	max-width: 335px;
	margin: 0;
}

.btn_area_program .btn2.program1 {
	margin: 0 30px 0 0;
}

.btn_area_program a.btn2::before {
	content: none;
}

.btn_area_program a.btn2.pdf { padding-right: 35px; }
.btn_area_program a.btn2.pdf::before {
	content: "";
	width: 27px;
	height: 32px;
	background-image: url(../img/icon_pdf.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	border: none;
	transform: rotate(0);
	position: absolute;
	top: calc( 50% - 16px );
	right: 10px;
}


.ttl_sub.program img {
	width: 200px;
}

p.txt_program1 {
	text-align: justify;
}

p.txt_program1:last-of-type {
	margin: 0 0 50px;
}

ul.list_program1 {
	margin: 0 0 15px 1em;
	padding: 0;
	list-style-type: none;
}

ul.list_program1 li {
	margin: 0;
	padding: 0 0 0 1em;
	text-indent: -1em;
}

.box_program1 {
	max-width: 800px;
	width: 100%;
	margin: 0 auto 25px;
}

.box_program1 img {
	width: 100%;
}


/* --------------- statements --------------- */

.ttl_sub.statements img {
	width: 380px;
}


/* --------------- registration detail --------------- */

.ttl_sub.registration.item { margin-bottom: 20px; }

.col_select_registration .service_skuform { text-align: left; }

.col_select_registration dl.item-sku {
	width: 100%;
	margin: 0 0 15px;
	padding: 0 5px 15px;
	border: none;
	border-bottom: dashed 1px #ddd;
	box-sizing: border-box;
	display: flex;
	align-items: flex-start;
}
.col_select_registration dl.item-sku dt {
	margin: 0 15px 0 0;
	padding: 0 0 0 13px;
	background-color: rgba(255,255,255,0);
	border: none;
	display: block;
	position: relative;
	z-index: 0;
}
.col_select_registration dl.item-sku dt::before {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 8px #f3a83c;
	border-top: solid 5px rgba(255,255,255,0);
	border-bottom: solid 5px rgba(255,255,255,0);
	position: absolute;
	top: calc( 50% - 5px );
	left: 0;
}
.col_select_registration dl.item-sku dd {
	max-width: 300px;
	margin: 0;
	padding: 0;
	border: none;
	display: flex;
	flex-wrap: wrap;
}
.col_select_registration dl.item-sku dd input[type=radio] { display: inline-block; }
.col_select_registration dl.item-sku dd label {
	padding: 0 5px;
	border: none;
}
.col_select_registration dl.item-sku dd input[type=radio]:checked + label,
.col_select_registration dl.item-sku dd label:hover {
	padding: 0 5px;
	border: none;
}

.col_select_registration .service_skuform .item-sku,
.col_select_registration .service_skuform table.item_option { float: none; }

.col_select_registration .cont_option1 {
	margin: 0 0 15px;
	padding: 0 5px 15px;
	border-bottom: dashed 1px #ddd;
}
.col_select_registration .cont_option1 .name {
	margin: 0 0 3px;
	padding: 0 0 0 13px;
	position: relative;
	z-index: 0;
}
.col_select_registration .cont_option1 .name::before {
	content: "";
	margin: 0;
	padding: 0;
	border-left: solid 8px #f3a83c;
	border-top: solid 5px rgba(255,255,255,0);
	border-bottom: solid 5px rgba(255,255,255,0);
	position: absolute;
	top: 0.6em;
	left: 0;
}
.col_select_registration .cont_option1 .inputarea1 {
	width: 100%;
	margin: 0;
	padding: 0 0 0 16px;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.col_select_registration .cont_option1 .inputarea1 .txt {
	margin: 0;
	padding: 0 0 0 15px;
	position: relative;
	z-index: 0;
}
.col_select_registration .cont_option1 .inputarea1 .txt::before {
	content: "";
	width: 10px;
	height: 14px;
	border-left: solid 1px #000;
	border-bottom: solid 1px #000;
	position: absolute;
	top: 2px;
	left: 0;
}
.col_select_registration .cont_option1 .inputarea1 .input {
	width: 4em;
	margin: 0 0 0 20px;
	padding: 4px 0;
	align-self: center;
}
.col_select_registration .cont_option1 .inputarea1 .input input {
	max-width: 100%;
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
}
.col_select_registration .cont_option1 .inputarea2 {
	margin: 0 0 4px;
	padding: 0 0 0 16px;
}
.col_select_registration .cont_option1 .inputarea2 label {
	margin: 0;
	padding: 0 15px 0 0;
}

.col_select_registration .cont_total {
	width: 100%;
	margin: 0;
	padding: 0 5px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.col_select_registration .cont_total .field {
	width: calc( 100% - 240px );
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
}
.col_select_registration .cont_total .field_dlprice {
	margin: 0;
	padding: 0 10px;
	color: #df0000;
	font-size: 25px;
	font-weight: 600;
}
.col_select_registration .cont_total .btnarea {
	width: 240px;
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
}
.col_select_registration .cont_total .btnarea input[type="submit"] {
	width: 100%;
	margin: 0;
	padding: 0.7em 0;
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	background: linear-gradient(180deg, #ff8606, #ed5800);
	border: none;
	border-radius: 3px;
	cursor: pointer;
}
.col_select_registration .cont_total .btnarea input[type="submit"]:hover { background: linear-gradient(0deg, #ff8606, #ed5800); }
.col_select_registration .cont_total .btnarea div.btn2.registration { width: auto; }


/* --------------- cart --------------- */

.col_cart .usccart_navi {
	margin: 0 0 20px;
	padding: 0;
}
.col_cart .usccart_navi ol.ucart {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	display: table;
}
.col_cart .usccart_navi ol.ucart li {
	width: 25%;
	margin: 0;
	padding: 0.7em 0;
	font-size: min(3.5vw, 16px);
	font-weight: 500;
	text-align: center;
	line-height: 1.3;
	background-color: #e5e5e5;
	border-right: solid 1px #b3b3b3;
	box-sizing: border-box;
	display: table-cell;
	vertical-align: middle;
}
.col_cart .usccart_navi ol.ucart li:last-child { border-right: none; }
.col_cart .usccart_navi ol.ucart li.current {
	color: #fff;
	background-color: #223b4f;
}

.col_cart .header_explanation {
	padding: 0 0 10px;
}
.col_cart .error_message {
	padding: 0 0 10px;
	color: #df0000;
	font-weight: 500;
}

.col_cart #cart {
	margin: 0 0 20px;
	padding: 0;
}
.col_cart #cart .upbutton {
	margin: 0 0 7px;
	padding: 0;
	line-height: 1.3;
	text-align: right;
}
.col_cart #cart .upbutton input {
	margin: 5px 10px;
	padding: 0.2em 0.6em;
	font-size: 15px;
}

.wrap_tbl {
	max-width: 100%;
	overflow: auto;
}
table#cart_table {
	width: 100%;
	min-width: 920px;
	margin: 0;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
table#cart_table th {
	margin: 0;
	padding: 0.5em 0.4em;
	font-weight: 500;
	line-height: 1.3;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
table#cart_table thead th { background-color: #deedf9; }
table#cart_table th em {
	font-size: 0.9em;
	display: inline-block;
}
table#cart_table td {
	margin: 0;
	padding: 0.5em 0.8em;
	text-align: center;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
table#cart_table .thumbnail { display: none; }
table#cart_table .aright { text-align: right; }
table#cart_table .aleft { text-align: left; }
table#cart_table td input {
	font-size: 16px;
	line-height: 1.6;
}
table#cart_table td input[type="text"] {
	width: 4em;
	text-align: center;
}

.col_cart .no_cart {
	margin: 0 0 40px;
}

.col_cart .send {
	width: 100%;
	margin: 0;
	padding: 15px 0;
	display: flex;
	justify-content: center;
}
.col_cart .send input {
	margin: 0 5px;
	padding: 0.5em 0.8em;
	font-size: 16px;
	line-height: 1.7;
	text-align: center;
	cursor: pointer;
}

.col_cart .send a.brn_noitem {
	width: 160px;
	margin: 0 auto;
	padding: 0.5em 0.8em;
	color: #000;
	text-decoration: none;
	text-align: center;
	background-color: #eee;
	border: solid 1px #000;
	border-radius: 3px;
	display: block;
}


/* --------------- cart customer login --------------- */

.col_cart.login table.customer_form {
	max-width: 560px;
	margin: 15px auto 20px;
}

.col_cart.login table.customer_form th {
	width: 150px;
	margin: 0;
	padding: 0.4em 0;
	font-weight: 500;
	text-align: left;
}
.col_cart.login table.customer_form td {
	margin: 0;
	padding: 0.4em;
}
.col_cart.login table.customer_form td input {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 16px;
	line-height: 1.6;
}
.col_cart.login p#nav {
	margin: 0 0 8px;
	text-align: center;
}
.col_cart.login p#nav a {
	color: #000;
	font-size: 15px;
}


/* --------------- cart payment --------------- */

.col_cart.payment table.customer_form {
	width: 100%;
	margin: 0 0 15px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.col_cart.payment table.customer_form th {
	width: 250px;
	margin: 0;
	padding: 0.5em 0.4em;
	font-weight: 500;
	line-height: 1.3;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_cart.payment table.customer_form td {
	margin: 0;
	padding: 0.5em 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_cart.payment table.customer_form td dl {
	margin: 0;
	padding: 3px 0;
}
.col_cart.payment table.customer_form #zeus_registerd_card_area,
.col_cart.payment table.customer_form #zeus_new_card_area {
	margin: 0 0 15px 2em;
}
.col_cart.payment table.customer_form td input {
	max-width: 100%;
	font-size: 16px;
	line-height: 1.6;
	padding: 0.2em;
	box-sizing: border-box;
	border: solid 1px #bbb;
	border-radius: 3px;
}
.col_cart.payment table.customer_form td select {
	margin: 0 0.3em 0 0;
	padding: 0.2em;
	font-size: 16px;
	line-height: 1.6;
	border-radius: 3px;
}
.col_cart.payment table.customer_form td textarea {
	width: 100%;
	min-height: 5em;
	margin: 0;
	padding: 0.2em;
	font-size: 16px;
	line-height: 1.6;
	border-radius: 3px;
}


/* --------------- cart confirm --------------- */

.col_cart#wc_confirm table#cart_table td.productname { text-align: left; }
.col_cart#wc_confirm table#cart_table tfoot th:last-child,
.col_cart#wc_confirm table#cart_table tfoot td:last-child { display: none; }

.col_cart#wc_confirm table#confirm_table {
	width: 100%;
	max-width: 960px;
	margin: 0 0 15px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.col_cart#wc_confirm table#confirm_table th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_cart#wc_confirm table#confirm_table td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_cart#wc_confirm table#confirm_table tr.fax-row.member-fax-row { display: none; }
.col_cart#wc_confirm table#confirm_table tr.states-row.member-states-row { display: none; }
.col_cart#wc_confirm table#confirm_table tr.tel-row.member-tel-row { display: none; }

/* --------------- cart completion --------------- */

.col_cart #cart_completion { padding: 0 5px; }
.col_cart #cart_completion ul {
	margin: 0;
	padding: 0;
}
.col_cart #cart_completion ul.dllist li .thumb { display: none; }
.col_cart #cart_completion ul li table {
	width: 100%;
	max-width: 960px;
	margin: 0;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.col_cart #cart_completion ul li table th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_cart #cart_completion ul li table td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}


/* --------------- member --------------- */

.col_member { padding: 0 0 30px; }

table.tbl_member1 {
	width: 100%;
	max-width: 960px;
	margin: 0 0 15px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
table.tbl_member1 th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
table.tbl_member1 td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}

.col_member ul.member_submenu {
	margin: 0 0 30px;
	padding: 0;
}
.col_member ul.member_submenu li.logout_member a {
	margin: 8px 0 0;
	padding: 0.5em 0.8em;
	color: #000;
	font-size: 16px;
	line-height: 1.7;
	text-ailgn: center;
	text-decoration: none;
	background-color: #eee;
	border: solid 1px #888;
	border-radius: 3px;
	display: inline-block;
}

.col_member .history-area {
	max-width: 100%;
	margin: 0 0 30px;
	padding: 0;
	overflow: auto;
}
.col_member .history-area table {
	width: 100%;
	max-width: 960px;
	min-width: 920px;
	margin: 0 0 5px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.col_member .history-area table th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_member .history-area table td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_member .history-area table .thumbnail { display: none; }



/* --------------- member new --------------- */

.col_member .header_explanation {
	padding: 0 0 10px;
}
.col_member .header_explanation ul {
	margin: 0 0 20px;
	padding: 0 5px;
}
.col_member .error_message {
	padding: 0 0 10px;
	color: #df0000;
	font-weight: 500;
}

.col_member table.customer_form {
	width: 100%;
	max-width: 960px;
	margin: 0 0 30px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.col_member table.customer_form th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_member table.customer_form td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.col_member table.customer_form td input[type="text"],
.col_member table.customer_form td input[type="password"] {
	width: 100%;
	font-size: 16px;
	line-height: 1.6;
}
.col_member table.customer_form td textarea {
	width: 100%;
	min-height: 4em;
	font-size: 16px;
	line-height: 1.6;
}
.col_member table.customer_form td select {
	font-size: 16px;
	line-height: 1.6;
}
.col_member table.customer_form tr#states_row,
.col_member#wc_newmemberform table.customer_form tr#tel_row,
.col_member table.customer_form tr#fax_row { display: none; }

.col_member .send {
	width: 100%;
	margin: 0;
	padding: 15px 0;
	display: flex;
	justify-content: center;
}
.col_member .send input {
	margin: 0 5px;
	padding: 0.5em 0.8em;
	font-size: 16px;
	line-height: 1.7;
	text-align: center;
	cursor: pointer;
}


/* --------------- member lostpassword --------------- */

.col_member .loginbox {
	margin: 0;
	padding: 0 5px;
}
.col_member .loginbox dl.inputarea {
	margin: 0 0 30px;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.col_member .loginbox dl.inputarea dt {
	margin: 0;
	padding: 0 15px 0 0;
}
.col_member .loginbox dl.inputarea dd {
	width: 100%;
	max-width: 270px;
	margin: 0;
	padding: 0;
}
.col_member .loginbox .inputarea input {
	width: 100%;
	padding: 0.3em;
	font-size: 16px;
	line-height: 1.6;
}
.col_member .loginbox .btnarea {
	margin: 0 0 40px;
	padding: 0;
}
.col_member .loginbox .btnarea input[type="submit"] {
	margin: 0;
	padding: 0.5em 0.8em;
	font-size: 16px;
	line-height: 1.7;
	cursor: pointer;
}


/* --------------- member creditcard update --------------- */

.two-column#content {
	width: 100%;
	margin: 0;
	padding: 20px 47px 30px;
}
.two-column#content .member_page_title {
	margin: 0 0 20px 0;
	padding: 9px 0 6px 18px;
	font-size: 22px;
	line-height: 1.6;
	font-weight: bold;
	color: #fff;
	border-left: 10px solid #f3a83c;
	background-color: #223b4f;
}
.two-column#content #memberpages .header_explanation,
.two-column#content #memberpages .error_message {
	padding: 0 0 10px;
}
.two-column#content table.customer_form {
	width: 100%;
	max-width: 960px;
	margin: 0 0 30px;
	padding: 0;
	border-top: solid 1px #b3b3b3;
	border-left: solid 1px #b3b3b3;
}
.two-column#content table.customer_form th {
	margin: 0;
	padding: 0.8em 0.5em;
	font-weight: 500;
	background-color: #deedf9;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.two-column#content table.customer_form td {
	margin: 0;
	padding: 0.8em;
	border-right: solid 1px #b3b3b3;
	border-bottom: solid 1px #b3b3b3;
}
.two-column#content table.customer_form #zeus_registerd_card_area,
.two-column#content table.customer_form #zeus_new_card_area {
	margin: 0 0 10px;
}
.two-column#content table.customer_form #zeus_new_card_area input,
.two-column#content table.customer_form #zeus_new_card_area select,
.two-column#content table.customer_form #zeus_new_card_area option {
	margin: 0;
	padding: 0.2em;
	font-size: 16px;
	line-height: 1.6;
}

.two-column#content table.customer_form + .send {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.two-column#content table.customer_form + .send input {
	margin: 3px 5px;
	padding: 0.5em 0.8em;
	font-size: 16px;
	line-height: 1.7;
	text-align: center;
	cursor: pointer;
}


#sidebar { display: none; }
