@charset 'UTF-8';
/* CSS Document */

@media only screen and (max-width: 768px)
{
    body
    {
        min-width: inherit;
    }
}

@media only screen and (max-width: 1000px)
{
	
	body
    {
    	overflow-x: auto;
	}
	
	div.wrapper {
		min-width: 100%;
		/* overflow-x: auto;  */
	}
}

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

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

    div.inner
    {
        box-sizing: border-box;
        width: 100%;
        min-width: 100%;
        padding: 0 0.5em;
    }
    .default
    {
        display: none;
    }
    .responsive
    {
        display: block;
    }

/* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------toppage */
	
	body.top .column {
		height: calc(50vh) !important;
	}
	
/*	body.top .wrapper div.mainTitle {
		width: 100%;
		height: auto;
		
		top: 10%;
	}
	
	body.top .wrapper div.mainTitle img {
		width: 100%;
		height: auto;
		display: block;
		padding: 1em;
		box-sizing: border-box;
	}*/
	
	body.top .column span.link {
		border: 1px solid #fff;
		bottom: 40px;
		color: #fff;
		font-size: 1.4rem;
		font-weight: bold;
		padding: 0.5em 2em;
		position: absolute;
		transition: all 0.4s ease 0s;
	}
	
	body.top .column.sightseeing span.link {
    	right: 1em;
	}
	
	body.top .column.conference span.link {
    	left: 1em;
	}
	
	body.top footer div.information table {
		width: 100%;
	}
	
	body.top footer div.information table th {
		width: 100%;
		display: block;
		border-bottom: none;
		padding-bottom: 0.5em;
		text-align-last: left;
	}
	
	body.top footer div.information table td {
		width: 100%;
		display: block;
		padding-top: 0;
	}
	
	body.top footer div.information table td.w20.resp_w100 {
		width: 100%;
		border-bottom: none;
		padding-bottom: 0;
	}
	
	body.top footer div.information table td.w65.resp_w100 {
		width: 100%;
	}

	body.top footer div.information table td img.schedule {
		max-width: 200px;
		width: 100%;
		height: auto;
	}

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

    header
    {
        width: 100%;
    }
	
	header div.inner {
		height: auto;
        padding: 0;
		max-height: none;
	}
	
    header div.top
	{
		padding: 0;
	}
	
	header div.logo {
		float: none;
		padding: 1em 0;
	}
	
	header div.logo a img,
	footer div.logo a img
	{
		width: 85%;
		height: auto;
		display: block;
		margin-left: 10px;
		
	}
	
	footer div.logo a img
	{
		margin: 0 auto;
	}

    /* -------------------------------------------------------- header div.utility */
	
	header>div.inner.clearfix>div.fr {
		float: none;
	}

	header div.utility {
		float: none;
		text-align: left;
		margin: 0;
		/* border-top: 1px solid #f0f0f0;
		border-bottom: 1px solid #f0f0f0; */
		padding: 0 0.5em;
		
		background: #e6e6e6;
	}
	
	header div.utility ul li a {
		color: #999;
        padding: 0 0 0 0.8em;		
	}

/* 	header ul.utility {
		background: #f0f0f0;
    }

	header ul.utility {
		width: 100%;
		text-align: center;
    }

	header ul.utility li a {
		font-size: 1.1rem;
		white-space: nowrap;
		padding: 0 0.2em;
	}
	
	header ul.utility li a::before {
		border: none;
		content: "";
		height: auto;
		left: 0;
		margin: 0;
		position: relative;
		top: 0;
		transform: none;
		width: auto;
	} */
    
	/* -------------------------------------------------------- header nav */

    header nav
    {
        left: 0;

        overflow: visible;

        width: 100%;
		/* height: 0; */
		background: #fff;
display: block;
    }
	
	header div.menuButton.active + nav {
		/* height: auto;
		overflow: visible; */
	}

    header nav div.inner
    {
        width: 100%;
        padding: 0;
    }

    header nav ul
    {
        display: block;
        overflow: hidden;

        width: 100%;
        max-height: 0;
        margin: 0 auto;
		padding: 0;

        transition: all .5s ease-in-out;
    }

    header nav ul.active
    {
        max-height: 1000px;
    }

    header nav ul li
    {
        font-size: 1.6rem;

        display: block;

        /* border-bottom: 1px solid #e6e6e6; */
		height: 100%;
    }
	
	header nav ul li:first-child
    {
        /* border-top: 1px solid #e6e6e6; */
    }
	
    header nav ul li:last-child
    {
        border-bottom: none;
    }

    header nav ul li a
    {

        position: relative;

        display: block;

        box-sizing: border-box;
        width: 100%;
		height: 100%;
        padding: 1em 1em;

        text-align: left;
		
		font-size: 1.4rem;
		border-bottom: 1px solid #f0f0f0;;
    }
	
	/* header nav ul li:first-child a
    {
        padding-top: 1em;
    }
	
	header nav ul li:last-child a
    {
        padding-bottom: 1em;
    } */

    header nav ul li a:after
    {
        position: absolute;
        top: 50%;
        right: 1em;

        display: block;

        width: 5px;
        height: 5px;

        content: '';
        transition: all .2s ease-in-out;
		-webkit-transform: translate(0, -50%) rotate(45deg);
		   -moz-transform: translate(0, -50%)  rotate(45deg);
			-ms-transform: translate(0, -50%)  rotate(45deg);
			 -o-transform: translate(0, -50%)  rotate(45deg);
				transform: translate(0, -50%)  rotate(45deg);

        border-top: 1px solid #ace3e5;
        border-right: 1px solid #ace3e5;
		
        background: none;
    }

    header nav ul li:first-child a::before
    {
        position: relative;
        top: auto;
        left: 0;

        width: auto;
        height: auto;
        margin-top: 0;

        content: '';

        background: none;
    }    
	
	/*
    header nav ul li a::after
    {
        position: relative;
        z-index: 9999;
        bottom: 0;
        left: 0;

        width: 0;
        height: auto;

        content: '';

        background: none;
    }
	*/

    /* nav ul li a:hover::after {
        left: inherit;

        width: 5px;
		border-right: 1px solid #ace3e5;
		border-top: 1px solid #ace3e5;
    } */
	
	nav ul li a:hover::after
	{
		position: absolute;
        top: 50%;
        right: 1em;
		left: inherit;

        display: block;

        width: 5px;
        height: 5px;

        content: '';
        transition: all .2s ease-in-out;
		-webkit-transform: translate(0, -50%) rotate(45deg);
		   -moz-transform: translate(0, -50%)  rotate(45deg);
			-ms-transform: translate(0, -50%)  rotate(45deg);
			 -o-transform: translate(0, -50%)  rotate(45deg);
				transform: translate(0, -50%)  rotate(45deg);

        border-top: 1px solid #ace3e5;
        border-right: 1px solid #ace3e5;
		
        background: none;
		border-radius: 0;
		
		
		
	}

	
	nav ul li.current a
	{
		color: #333;
	}
	
	nav ul li.current:after
	{
		position: relative;
		content: "";
		bottom: 0;
		width: auto;
		height: 0;
		left: 0;
		background: none;
		-webkit-transform: translate(-50%, 0);
		-moz-transform: translate(-50%, 0);
		-ms-transform: translate(-50%, 0);
		-o-transform: translate(-50%, 0);
		transform: translate(-50%, 0);
	}
	
    /* -------------------------------------------------------- menuButton */

    header div.menuButton
    {
        position: absolute;
		top: 0;
		right: 0;

        display: block;

        width: 40px;
        height: 40px;

    }

    header div.menuButton div.menu-trigger
    {
        display: block;

        cursor: pointer;
    }

    header div.menuButton div.menu-trigger > div
    {
        position: relative;

        display: block;

        width: 40px;
        height: 40px;
        margin: 0 auto;
    }

    header div.menuButton div.menu-trigger > div div.label
    {
        font-size: 1.0rem;
        font-weight: bold;

        position: absolute;

        box-sizing: border-box;
        width: 40px;

        color: #ace3e5;
		
		bottom: -0.5em;
		text-align: center;
    }

    header div.menuButton div.menu-trigger > div div.label::before
    {
        content: 'MENU';
    }

    header div.menuButton div.menu-trigger > div div.label.open::before
    {
        content: 'CLOSE';
    }

    header div.menuButton div.menu-trigger > div div.hamburger
    {
        position: relative;

        width: 40px;
        height: 40px;
    }

    header div.menuButton span
    {
        position: absolute;
        left: 0;

        display: inline-block;

        box-sizing: border-box;
        width: 20px;
        height: 2px;

        transition: all .4s;

        background: #ace3e5;
    }

    header div.menuButton span:nth-of-type(1)
    {
        top: 13px;
        left: 10px;
    }

    header div.menuButton span:nth-of-type(2)
    {
        top: 19px;
        left: 10px;
    }

    header div.menuButton span:nth-of-type(3)
    {
        bottom: 13px;
        left: 10px;
    }

    header div.menuButton.active span:nth-of-type(1)
    {
        -webkit-transform: translateY(6px) rotate(-45deg);
           -moz-transform: translateY(6px) rotate(-45deg);
            -ms-transform: translateY(6px) rotate(-45deg);
             -o-transform: translateY(6px) rotate(-45deg);
                transform: translateY(6px) rotate(-45deg);
    }

    header div.menuButton.active span:nth-of-type(2)
    {
        opacity: 0;
    }

    header div.menuButton.active span:nth-of-type(3)
    {
        -webkit-transform: translateY(-6px) rotate(45deg);
           -moz-transform: translateY(-6px) rotate(45deg);
            -ms-transform: translateY(-6px) rotate(45deg);
             -o-transform: translateY(-6px) rotate(45deg);
                transform: translateY(-6px) rotate(45deg);
    }

    /* ie9 */
	/*
    html.ie9 header div.menuButton
    {
        position: relative;

        display: block;

        width: 100%;
        height: 40px;

        background: #003e6c;
    }

    html.ie9 header div.menuButton div.menu-trigger > div div.hamburger
    {
        background: url(../img/menubutton.png) no-repeat;
        background-position: center;
        background-size: 20px 20px;
    }

    html.ie9 header div.menuButton.active div.menu-trigger > div div.hamburger
    {
        background: url(../img/menubutton_active.png) no-repeat;
        background-position: center;
        background-size: 20px 20px;
    }

    html.ie9 header div.menuButton span
    {
        display: none;
    }
	*/
	
	
	
	
	
	div.mainimage div.subTopTitles div.titleWrap {
    	background: none;
	}
	
	/* -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- section.information */
		
	section.information {
	
	}

	section.information div.inner.clearfix {
    	padding: 40px 1em;
	}

	section.information .column {
		width: 100%;
		float: none;
		/* 		margin-right: 2%; */
		box-sizing: border-box;
		padding: 0;
		margin: 0;
	}	

	section.information .data table th,
	section.information .data table td {
		display: block;
		width: 100% !important;	
	}
	
	section.information .data table th {
		border-bottom: none !important;
		padding-bottom: 0 !important;
	}
	
	section.information .data table td {
		padding-top: 0.5em !important;
	}
	
	section.information .data table td {
		width: 100%;
		display: block;
		padding-top: 0;
	}
	
	section.information .data table td.w20.resp_w100 {
		width: 100%;
		border-bottom: none !important;
		padding-bottom: 0 !important;
	}
	
	section.information .data table td.w65.resp_w100 {
		width: 100%;
	}

	section.information .data table td img.schedule {
		max-width: 200px;
		width: 100%;
		height: auto;
	}
	
	section.information .data table td.large span {
		font-size: 1.4rem;
		display: block;
	}

div.bannerMain ul li {
		float: none;
		width: 100%;
		margin: 0 0 20px 0;
	}









/* 
	section.information div.columnWrap {
		display: block;
	}

	section.information .columnWrap .column.picture {
		height: 350px;
		background-position: center top;
		background-size: cover;
	}

	section.information .columnWrap .column {
		display: block;
		width: 100%;
	}

	section.information .columnWrap .column div.inner {
		box-sizing: border-box;
		padding: 1em 1em 2em;
		width: 100%;
	}
	
	
	
	section.information .columnWrap .column table th,
	section.information .columnWrap .column table td {
		display: block;
		width: 100%;	
	}
	
	section.information .columnWrap .column table th {
		border-bottom: none;
		padding-bottom: 0;
	}
	
	section.information .columnWrap .column table td {
		padding-top: 0.5em;
	}
	
	section.information .columnWrap .column table td.large span {
		font-size: 1.4rem;
		display: block;
	} */
	


	
/* -------------------------------------------------------- div.updateList */
	
	div.updateList ul li a div.entry div.wrap {
		overflow: hidden;
		margin-bottom: 0.5em;		
	}
	
	div.updateList ul li a div.entry div.headline {
		overflow: hidden;
	}
	
	div.updateList {
	    width: 90%;
	}
	
	section.topics .btn {
    	width: 60%;
		box-sizing: border-box;
	}
	
	
	
	
	
	
	
	
	
	section.information .mainimage {
		/* margin-top: 40px; */
		height: 150px;
		height: 500px;
		margin-bottom: 40px;
	}

	div.mainimage div.subTopTitles {
		height: 150px;
		overflow: visible;
	}
	
	div.mainimage div.subTopTitles div.titleWrap {
		bottom: 0;
		height: 150px;
		max-width: none;
		width: 100%;
		box-sizing: border-box;
	}
	
	div.subTopTitles div.titleWrap div.title {
		width: 100%;
		box-sizing: border-box;
		top: 40%;
	}
	
	div.subTopTitles div.titleWrap div.title div.schedule a {
		white-space: normal;
		text-align: center;
		position: absolute;
		color: #fff;
		font-weight: bold;
		margin-top: 0;
		font-size: 1.2rem;
		font-weight: bold;
		width: 100%;
		margin-left: -2em;
	}
	
	section.information div.alert {
		position: relative;
		width: 100%;
	}
	
	
	/* attention */
	
	div.subTopTitles div.titleWrap div.title div.attention {
	    /* left: auto;
		right: auto; */
		position: absolute;
		width: 100%;
	}
	
	div.subTopTitles div.titleWrap div.title div.attention a {
    	width: 100%;
		text-align: center;
	}
	
	div.subTopTitles div.titleWrap div.title div.attention a br.responsive {
		display: inline-block;
	}
	
	/* */

	
 /* -------------------------------------------------------- section.conferenceContents div.contentsList  */
	
	section.topics div.topicsWrap {
		width: 100%;
		margin-right: 0;
		float: none;
		margin-bottom: 40px;
	}

	section.topics div.facebookWrap {
		width: 90%;
		margin-left: auto;
		margin-right: auto;		
		float: none;
	}

	
	
	section.conferenceContents div.contentsList ul.column {
		margin: 0 auto;
		padding: 0;
	} 
	
	section.conferenceContents div.contentsList ul.column li {
		margin-right: 2% !important;
		width: 49%;
	}

	section.conferenceContents div.contentsList ul.column li:nth-child(2n) {
		margin-right: 0 !important;
	}
	
	section.conferenceContents div.contentsList div.article div.wrap {
		overflow: hidden;
		margin-bottom: 0;
		/* padding: 1.5em 0 1.5em 1.5em; */
		padding: 0 0.5em;
		text-align: center;
	}	
	
	section.conferenceContents div.contentsList div.article div.icon {
		float: none;
		margin: 0 auto;
	}
	
	section.conferenceContents div.contentsList div.article div.headline {
	    margin-bottom: 5px;
	}
	
	section.conferenceContents div.contentsList div.article {
		height: 200px;
	}
	
	section.conferenceContents div.contentsList ul li a div.article div.description {
		margin-bottom: 0;
	}
	
	section.conferenceContents div.contentsList ul li a div.article div.more {
		display: none;
	}
	
div.bannerSub ul li {
	float: left;
	width: 49%;
	margin: 0 2% 2% 0;
}

div.bannerSub ul li:nth-child(2n) {
	margin-right: 0;
}

div.bannerSub ul li img {
	display: block;
	width: 100%;
}
	
 /* -------------------------------------------------------- footer */		
	
	footer div.logo {
		padding-bottom: 1em;
	}
	
	footer div.logo a img {
		width: 100%;
		max-width: 550px;
	}
	
	footer div.fl {
		float: none;
		width: 100%;
		padding-bottom: 0;
	}
	
	footer div.fl:last-child {
		padding-bottom: 1em;
	}	
	
	footer div.copyright {
	}
	
	body.top footer div.information table td div.fl.w49 {
		float: none;
		width: 100%;
	}
	
	body.top footer div.information table td div.fr.w49 {
		float: none;
		width: 100%;
	}
	
	
/* -------------------------------------------------------- common */		
	
div.contents
{
    margin-bottom: 60px;
}

div.main
{
    float: none;

    width: 100%;
    margin-bottom: 40px;
}

aside
{
	float: none;
	width: 100%;
}

	
	
/* -------------------------------------------------------- section.sightseeingList */			


section.sightseeing .mainimage {
    height: 150px;
    margin-bottom: 40px;
    overflow: hidden;
    position: relative;
}

section.sightseeing .mainimage div.inner {
    position: relative;
    width: 100%;
	box-sizing: border-box;
}

.videowrap {
	background: url(../img/sightseeing_bg.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
	
	
	width: 100%;
	height: 150px;
	min-height: 150px;
}

.videowrap video {
	width: auto;
	height: 150px;
	min-height: 150px;
	display: none;
}
	
	
section.sightseeingList {
	position: relative;
	z-index: 1000;
}

section.sightseeingList>ul>li {
	width: 50%;

}

}



@media only screen and (max-width: 480px)
{
	section.sightseeingList>ul>li {
	width: 100%;

}

	
}


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

/* section.sightseeingList ul li {
	margin-bottom: 20px;
} */

section.sightseeingList div.article {
	
	max-height: inherit;
}

section.sightseeingList div.article div.spot {
	width: 100%;
	height: auto;
}

section.sightseeingList div.article div.spot span {
	display: table-cell;
	height: auto;
}

section.sightseeingList div.article div.spot span img {
   
}

section.sightseeingList div.article:hover div.spot span img {
	
}

section.sightseeingList div.article div.wrap {
	float: none;
	width: 100%;
}

section.sightseeingList.clinic div.article div.headline,
section.sightseeingList.clinic div.article div.link {
	margin-left: 0;
}

section.sightseeingList div.article div.headline {
	margin-bottom: 0.5em;
	font-weight: bold;
}

section.sightseeingList div.article div.headline h2 {
	font-size: 1.4rem;
	line-height: 1.3;
	color: #fff;
}

section.sightseeingList div.article div.link {
	font-size: 1.4rem;
	color: #808080;
	line-height: 1.6;
}

section.sightseeingList div.article div.link a {
	color: #808080;
}

section.sightseeingList div.article div.link a:hover {
	text-decoration: underline;

}

section.sightseeingList div.article .btn {
	margin: 0 auto;
	width: 100%;
	box-sizing: border-box;
}
	
section.sightseeingList div.article div.map {
	overflow: visible;
}
	
	
section.sightseeingList div.article div.map span {
	overflow: hidden;
}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	

    /* -------------------------------------------------------- categoryList */
	
	div.categoryList ul.column {
		margin: 0 auto;
		padding: 0;
	} 
	
	div.categoryList ul.column li {
		margin-right: 0;
		width: 100%;
	}
	
	div.categoryList div.article div.spot {	
		height: 100%;
		min-height: 100%;
		overflow: hidden;
		width: 20%;
		
		float: left;
		
		border-bottom: none;
	}
	
	div.categoryList div.article div.spot span {
		height: auto;		
		width: 100%;
		display: table-cell;
		
	}
	
	div.categoryList div.article div.spot span img {
		display: inline;
		/* height: 100%; */
		max-width: 100%;
		position: relative;
		vertical-align: middle;
		width: 100%;
		z-index: 50;
	}
	
	div.categoryList div.article div.wrap {
		overflow: hidden;
		margin-bottom: 0;
		padding: 1.5em 0 1.5em 1.5em;
	}	
	
	div.categoryList div.article div.headline {
	    margin-bottom: 5px;
	}
	
	div.categoryList ul li a div.article div.description {
		margin-bottom: 0;
	}
	
	div.categoryList ul li a div.article div.more {
		display: none;
	}
		
	.link25fl div{
		margin-bottom: 40px;
	}
	.spbr{
		display: block;
	}
}
