.content{
    width: 100%;
}

h2 {
    margin-bottom: 10px;
    font-size : 1.5em;
    padding: 1em .3em .3em;
}

h3 {
    margin: 15px 4px 10px 0px;
    padding: 5px 4px 5px 0px;
    font-size : 1.2em;
    text-align: center;
    color: #FFF;
    background-color: #555;
    background-color: var(--themecolor);
}

h4 {
    font-size : 1.1em;
}

h5 {
    font-size : 1em;
}


#wrapper{
     text-align:left;
     width:100%;
     background : #FFFFFF;
}

.logo{display: none;}
.logopad{display: none;}
.logosp{
    display: inline-block;
    height: 40px;
    line-height: 40px;
    margin: 15px;
    padding: 0 20px;
    text-align: center;
    font-size: 1em;
    background-color: #333;
    background-color: var(--themecolor);
    color: #FFF;
}
.logotop{
    display: none;
}
#for_sp_top{
    display: block;
    margin-top: 80px;
}
 
/* header */
#top-head {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 100px auto 0;
    padding: 30px 0 0;
    line-height: 1;
    z-index: 999;
    border-bottom:1px solid;
    border-bottom-color: #555;
    border-bottom-color: var(--themecolor);
}

#top-head a,
#top-head {
    color: #fff;
    text-decoration: none;
}

#top-head .inner {
    position: relative;
}

#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0;
    bottom: 0;
    font-size: 14px;
}

#global-nav ul li {
    float: left;
}

#global-nav ul li a {
    padding: 0 30px;
}
 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 55px;
    background: #fff;
    background: rgba(255,255,255,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}

#top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}

#top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
}
 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: fixed;
	width:99px;
	height:46px;
	right:11px;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 39px;
    background: #fff;
    left: 6px;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 8px;
}
#nav-toggle span:nth-child(3) {
    top: 16px;
}











#top-head, .inner {
	width: 100%;
	padding: 0;
}

#top-head {
	top: 0;
	position: fixed;
	margin-top: 0;
	width:100%;
	height:66px;
	background-color:#fff;
}

/* Fixed reset */
#top-head.fixed {
	padding-top: 0;
	background: transparent;
}

#mobile-head {
	background: #fff;
	width: 100%;
	height: 66px;
	z-index: 999;
	position: fixed;
	top:0;
}

#top-head.fixed .logo,
#top-head .logo {
	position: absolute;
	left: 10px;
	top: 10px;
	color: #393E46;
}

#global-nav {
	position: absolute;
	/* 開いてないときは画面外に配置 */
	top: -500px;
        background:#ddd;
	background:var(--themecolor-weaker);
	width: 100%;
	text-align: center;
	padding:0;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

#global-nav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
	font-size: 18px;
	margin-left:-40px;
	margin-top:10px;
}

#global-nav ul li {
	float: none;
	position: static;
}

#top-head #global-nav ul li a,
#top-head #global-nav ul li div,
#top-head.fixed #global-nav ul li a {
	width: 100%;
	display: block;
	color: #393E46;/* ←メニュー文字色 */
        background-color: #ddd;
        background-color: var(--themecolor-weaker);
	padding: 14px 0;/* ←メニュー行間調整 */
	border-bottom:solid 1px #fff;
}

#top-head #global-nav ul li a:hover,
#top-head.fixed #global-nav ul li a:hover{
	width: 100%;
	display: block;
	color: #fff;/* ←マウスオーバー後のメニュー文字色 */
	padding: 14px 0;/* ←メニュー行間調整 */
	background-color: var(--themecolor);
	border-bottom:solid 1px #fff;
}

#global-nav ul li a:hover > span{
    color: #fff;
}

/* ↓お問い合わせの下ライン消し */
#top-head #global-nav ul span li a,
#top-head.fixed #global-nav ul span li a{
	border-bottom:solid 1px #EEEEEE;
}

#top-head #global-nav ul span li a:hover,
#top-head.fixed #global-nav ul span li a:hover{
	border-bottom:solid 1px #EEEEEE;
}


#nav-toggle {
	display: block;
}

.navblock{
	width:99px;
	height:46px;
	position:fixed;
	top:11px;
	right:10px;
        background-color: #555;
	background-color: var(--themecolor);
}

/* #nav-toggle 切り替えアニメーション */
.open #nav-toggle span:nth-child(1) {
	top: 7px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
	display:none;
}

.open #nav-toggle span:nth-child(3) {
	top: 7px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* #global-nav スライドアニメーション */
.open #global-nav {
	/* #global-nav top + #mobile-head height */
	-moz-transform: translateY(556px);
	-webkit-transform: translateY(556px);
	transform: translateY(556px);
}

.headmenu{
    display: inline;
    font-size:14px;
    margin-top:3px;
    vertical-align:middle;
    text-align: right;
}
.content_inner{
    padding: 0 5px;
}
.main-carousel{
    margin-top: 80px;
}

.main-carousel_none{
    margin-top: 40px;
}

#title_conference{display: none;}
#title_conference_small{display: inline-block;}

.carousel-image{
  max-height: 90px;
  width: auto;
  margin-left: 10px;
}
.sponsors{
    max-height: auto;
    overflow: hidden;
}

.sponsors-cell{
  max-height: auto;
  height: auto;
  padding: 0;
}

.sponsors-image{
    display: block;
    height: auto;
    width: 80%;
    margin: 0 auto;
    padding: 0;
}

.carousel-content{
  width: auto;
  height: 70px;
  display: inline-block;
  vertical-align: middle;
  text-align: center;
  white-space: nowrap;
}

.carousel-col2{
    padding: 4px 20px 0 10px;
    margin-bottom: -20px;
    font-size: 1.2rem;
}
.carousel-col3{
    padding:4px 50px 0 50px;
    font-size:0.8rem;
}

.content_inner img, .sponsors-cell img{
    max-width: 100%;
}

.headline-date{
    font-size: 2rem;
    margin-top: 15px;
    display: inline-block;
}

.headline-year{
    font-size: 1rem;
    margin: 20px 0 0 10px;
    display: inline-block;
}

.headline-kind{
    margin-left: 10px;
    padding: 2px 15px;
    color: red;
    border: 2px solid red;
    display: inline-block;
}

.headline-contents{
    margin-top: 10px;
}

p{
    padding: 0 10px;
}

.com dt {
  width: 100%;
  float: none;
  padding-bottom: 10px;
}
.com dd {
  background: #fff;
  margin-left: 0;
  border-left: 0;
}

.subject_btn li {
    width: 100%;
    margin-bottom: 10px;
    height: 45px;
}

.subject_btn li a{
    font-size: 1em;
    text-align: center;
    line-height: 45px;
}

table.price {
    border: none;
}
table.price thead {
    display: none;
}
table.price tr {
    border-top: 1px solid #999;
    display: block;
    margin-bottom: 20px;
}

table.price th{
  border-right: 1px solid #999;
}

table.price td {
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    display: block;
    padding: 10px;
    text-align: right;
}

table.price td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
}

.com2 dt,.com2 dd {
  padding-left: 10px;
}

table.timetable {
    border: none;
}
table.timetable thead {
    display: none;
}
table.timetable tr {
    border-top: 1px solid #999;
    display: block;
    margin-bottom: 20px;
}

table.timetable th{
    display: block;
    width: 100%;
  text-align: center;
}

table.timetable td {
    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    display: block;
    padding: 10px;
    text-align: left;
}

table.timetable td::before {
    content: attr(data-label);
    float: left;
    font-weight: bold;
}

.room_btn li {
    width: 100%;
    margin-bottom: 10px;
    height: 45px;
}

.room_btn li a{
    font-size: 1em;
    text-align: center;
    line-height: 45px;
}

li.mypage_des{
    padding: 0 10px 0 0;
    text-align: center;
}

a.anchor {
    padding-top: 50px;
    margin-top: -50px;
}

.nodisplay_sp{
    display: none;
}