@media screen and (min-width: 767px){

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	list-style-type: none;
    line-height: 1.4em;
	font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

textarea { font-size: 100%; }

img {
	max-width: 100%;
	height: auto;
}

hr { display: none; }

html{
	min-height: 620px;
	height: 100%;
	overflow-y: scroll;
}

iframe[name="google_conversion_frame"] { position: absolute; top: 0; }

body{
	height: 100%;
	background: #f8f9fb;
	color: #07171f;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    cursor: none;
}

a		{	text-decoration: none; color: #000;	}
a:hover	{   text-decoration: none;}

a:hover img {
opacity: .5;
-webkit-opacity: .5;
-moz-opacity: .5;
filter: alpha(opacity=50);	/* IE lt 8 */
-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
 
a img {
-webkit-transition: opacity 1s ease-out;
-moz-transition: opacity 1s ease-out;
-ms-transition: opacity 1s ease-out;
transition: opacity 1s ease-out;
}

.nolink{
    pointer-events: none;
    opacity: 0.2;
}

.s_text {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    -moz-font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-variant-ligatures: no-common-ligatures;
    text-align: justify;
}

.sp_view{
	display: none !important;
}

::selection {
    background:#9d312f; /* Safari */
    color: #fff;
}

::-moz-selection {
    background:#9d312f; /* Firefox */
    color: #fff;
}

.button a{
  display: inline-block;
  height: 34px;
  text-align: center;
  text-decoration: none;
  line-height: 34px;
  outline: none;
}
.button a::before,
.button a::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button a,
.button a::before,
.button a::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button a{
background-color: #fff;
    border: 2px solid #07171f;
    line-height: 30px;
    letter-spacing: 0.4em;
    padding: 0 40px;
    color: #07171f;
    font-size: 16px;
}

.button a:hover {
  background-color: #fff;
  border-color: #fff;
  color: #07171f;
}

header{
	width: 90%;
    margin: 0 auto;
}

header h1{
margin-top: 8px;
    width: 240px;
    margin-bottom: 8px;
    float: left;
    margin-right: 8%;
}

header .sns_block{
position: fixed;
    top: 96px;
right: 16px;
    z-index: 10;
}

header .sns_block li{
    width: 28px;
    text-align: center;
    margin-bottom: 24px;
}

header .inner{
    overflow: hidden;
}

header .gn{
font-size: 0;
    float: left;
    margin-top: 36px;
}

header .gn li{
display: inline-block;
    vertical-align: top;
    font-family: 'Didact Gothic', sans-serif;
    margin-right: 32px;
    font-weight: 600;
    letter-spacing: 0.2em;
    font-size: 12px;
}

header .gn li:last-child{
    margin-right: 0;
}

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

.cp_fullscreenmenu {
position: fixed;
    z-index: 10;
    top: 0;
    right: 0;
    width: 60px;
    height: 100%;
    background-color: #fff;
}
.cp_fullscreenmenu .menu {
position: fixed;
top: 0;
right: 0;
display: flex;
visibility: hidden;
overflow: hidden;
width: 100%;
height: 100%;
pointer-events: none;
outline: 1px solid transparent;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
align-items: center;
justify-content: center;
}
.cp_fullscreenmenu .menu > div {
display: flex;
overflow: hidden;
width: 200vw;
height: 200vw;
transition: all 0.4s ease;
-webkit-transform: scale(0);
transform: scale(0);
text-align: center;
color: #fefefe;
border-radius: 50%;
background: #07171f;
flex: none;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
align-items: center;
justify-content: center;
}
.cp_fullscreenmenu .menu > div > ul {
display: block;
max-height: 100vh;
margin: 0;
padding: 0 1em;
list-style: none;
transition: opacity 0.4s ease;
opacity: 0;
}
.cp_fullscreenmenu .menu > div > ul > li {
font-size: 18px;
    display: block;
    margin: 32% 0;
    padding: 0;
}
.cp_fullscreenmenu .menu > div > ul > li > a {
position: relative;
display: inline;
cursor: pointer;
transition: color 0.4s ease;
color: #fff;
}
.cp_fullscreenmenu .menu > div > ul > li > a:hover {
color: #e5e5e5;
}
.cp_fullscreenmenu .menu > div > ul > li > a:hover:after {
width: 100%;
}
.cp_fullscreenmenu .menu > div > ul > li > a:after {
position: absolute;
z-index: 1;
bottom: -0.15em;
left: 0;
width: 0;
height: 2px;
content: '';
transition: width 0.4s ease;
background: #e5e5e5;
}
.cp_fullscreenmenu .toggle {
position: absolute;
z-index: 2;
top: 0;
right: 0;
width: 60px;
height: 60px;
cursor: pointer;
opacity: 0;
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span {
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span:before,
.cp_fullscreenmenu .toggle:checked + .hamburger > span:after {
top: 0;
-webkit-transform: rotate(90deg);
transform: rotate(90deg);
}
.cp_fullscreenmenu .toggle:checked + .hamburger > span:after {
opacity: 0;
}
.cp_fullscreenmenu .toggle:checked ~ .menu {
visibility: visible;
pointer-events: auto;
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div {
transition-duration: 0.75s;
-webkit-transform: scale(1);
transform: scale(1);
}
.cp_fullscreenmenu .toggle:checked ~ .menu > div > ul {
opacity: 1;
}

.cp_fullscreenmenu .toggle:hover + .hamburger {
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
}
.cp_fullscreenmenu .toggle:checked:hover + .hamburger > span {
-webkit-transform: rotate(225deg);
transform: rotate(225deg);
}
.cp_fullscreenmenu .hamburger {
position: absolute;
z-index: 1;
top: 0;
right: 0;
display: block;
width: 60px;
height: 60px;
padding: 0.5em 1em;
cursor: pointer;
transition: box-shadow 0.4s ease;
border-radius: 0 0.12em 0.12em 0;
background: #07171f;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.cp_fullscreenmenu .hamburger > span {
position: relative;
top: 50%;
display: block;
width: 100%;
height: 3px;
transition: all 0.4s ease;
background: #fefefe;
}
.cp_fullscreenmenu .hamburger > span:before,
.cp_fullscreenmenu .hamburger > span:after {
    position: absolute;
    z-index: 1;
    top: -10px;
    left: 0;
    display: block;
    width: 100%;
    height: 3px;
    content: '';
    transition: all 0.4s ease;
    background: inherit;
}
.cp_fullscreenmenu .hamburger > span:after {
top: 10px;
width: 80%;
}

.mainvivisual{
position: relative;
}

.mainvivisual .inner {
    position: absolute;
    top: 0; left: 0;
}

.mainvivisual .inner{
width: 90%;
    position: relative;
    margin: 0 auto;
    padding-bottom: 38%;
    top: 0;
    left: 0;
}

.mainvivisual .inner .date{
position: absolute;
    top: 0;
    left: 0;
    margin-top: 2%;
    z-index: 4;
    width: 44%;
}

.mainvivisual .inner .date p:first-child{
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    font-family: 'Didact Gothic', sans-serif;
}

.mainvivisual .inner .date p:last-child{
font-size: 4.8vw;
    background-color: #07171f;
    line-height: 1em;
    color: #fff;
    vertical-align: middle;
    letter-spacing: 0.05em;
    font-family: 'Didact Gothic', sans-serif;
    margin-top: -2.4%;
    height: 1em;
    text-align: center;
}

.mainvivisual .inner .date p:last-child small{
	margin-right:2%;
    font-size: 3.2vw;	
}

.mainvivisual .inner .date p:last-child small:last-child{
    margin-right: 0;
}

.mainvivisual .inner .date p:last-child span{
	    font-size: 2.4vw;
    margin: 0 4%;
}

.mainvivisual .inner .right{
    position: absolute;
    top: 0;
    right: 0;
    width: 76%;
    z-index: 1;
}

.mainvivisual .inner .left{
position: absolute;
    top: 0;
    left: 0;
    width: 40%;
    z-index: 2;
    margin-top: 16%;
}

.mainvivisual .inner h2{
position: absolute;
    color: #fff;
    z-index: 3;
    left: 0;
    top: 0;
    margin-top: 20%;
    margin-left: 24%;
    font-size: 3.2vw;
    letter-spacing: 0.6em;
    font-family: 'Didact Gothic', sans-serif;
    line-height: 1.4em;
}

.copyright{
position: fixed;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    border-left: solid 4px #000;
    text-align: center;
    line-height: 1em;
    padding-left: 4px;
}

.copyright p{
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    font-size: 14px;
    font-family: 'Didact Gothic', sans-serif;
    letter-spacing: 0.2em;
}

.pickup{
width: 46%;
    margin-left: 46%;
    margin-bottom: 4%;
}

.pickup p{
font-size: 14px;
    font-weight: 600;
}

.pickup h3{
font-size: 16px;
}

.pickup h3 a{
	text-decoration: underline;
}

.top_place{
    background-color: #07171f;
    padding: 4% 0;
}

.top_place .inner{
    width: 44%;
    margin-left: 46%;
    margin-right: 10%;
}

.top_place .inner h2{
color: #fff;
    font-size: 4vw;
    margin-bottom: 4%;
    display: inline-block;
    border-bottom: solid 3px #fff;
}

.top_place .inner p{
color: #fff;
    font-size: 16px;
    line-height: 1.8em;
}

.top_about{
    padding: 8% 0;
    overflow: hidden;
}

.top_about .inner{
    width: 90%;
    margin: 0 auto;
    text-align: center;
    font-size: 0;
    max-width: 1080px;
    padding-right: 60px;
}

.top_about .inner .left{
width: 32%;
    vertical-align: middle;
    display: inline-block;
    margin-right: 4%;
    text-align: left;
}

.top_about .inner .left h2{
font-size: 4.8vw;
    font-family: 'Didact Gothic', sans-serif;
    letter-spacing: 0.1em;
    margin-bottom: 16%;
    display: inline-block;
    border-bottom: solid 4px;
}

.top_about .inner .left p{
font-size: 16px;
    margin-bottom: 16px;
    line-height: 1.8em;
}

.top_about .inner .right{
    width: 64%;
    vertical-align: top;
    display: inline-block;
    margin-top: 8%;
}

.top_about .inner .right img.vertical{
float: left;
    width: 36%;
    margin-top: 12%;
}

.top_about .inner .right ul{
float: right;
    width: 56%;
}

.top_about .inner .right ul li img{
}

.top_about .inner .right ul li:first-child{
    margin-left: 24%;
}

.top_about .inner .right ul li:last-child{
    margin-top: 8%;
    margin-right: 24%;  
}

.top_news{
    background: linear-gradient(90deg,#f8f9fb 0%,#f8f9fb 50%,#07171f 50%,#07171f 100%);
}

.top_news .inner{
    width: 90%;
    margin: 0 auto;
    max-width: 1080px;
    overflow: hidden;
}

.top_news .inner .headline{
    float: left;
    width: 16%;
}

.top_news .inner .headline h2{
writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    font-size: 4vw;
    font-family: 'Didact Gothic', sans-serif;
    letter-spacing: 0.2em;
    border-left: solid 3px;
    display: inline-block;
}

.top_news .inner .large_block{
width: 80%;
    float: left;
    background-color: #07171f;
    padding: 4% 4% 0;
    font-size: 0;
}

.top_news .inner .large_block .middle_block{
width: 30%;
    display: inline-block;
    vertical-align: top;
}

.top_news .inner .large_block .middle_block:nth-of-type(1){
margin-top:4%;
margin-right: 5%;
}

.top_news .inner .large_block .middle_block:nth-of-type(2){
margin-top:8%;
margin-right: 5%;
}

.top_news .inner .large_block .middle_block:nth-of-type(3){
margin-top:12%;
}

.top_news .inner .large_block .middle_block img{
    margin-bottom: 8%;
}

.top_news .inner .large_block .middle_block .date{
    margin-bottom: 4%;
    font-weight: 600;
    color: #fff;
    font-family: 'Didact Gothic', sans-serif;
}

.top_news .inner .large_block .middle_block h3{
    font-size: 16px;
    font-weight: 600;
    color: #fff;
}

.top_news .inner .large_block .middle_block h3 a{
    color: #fff;
}

.top_news .inner .large_block .button{
text-align: right;
    margin-top: 16%;
}

.top_news .top_news_footer{
background: linear-gradient(0deg,#f8f9fb 0%,#f8f9fb 65%,#07171f 65%,#07171f 100%);
    padding-bottom: 8%;
}

.top_news .top_news_footer img{
width: 64%;
    margin-top: -4%;
}

.share_block{
background-color: #fff;
    width: 100%;
    padding: 4% 0;
}

.share_block h2{
text-align: center;
    margin-bottom: 2%;
    width: 160px;
    margin: 0 auto 2%;
}

.share_block ul{
    text-align: center;
    font-size: 0;
}

.share_block ul li{
width: 40px;
    display: inline-block;
    margin: 0 16px;
    vertical-align: middle;
}

footer{
    background-color: #07171f;
    overflow: hidden;
}

footer p,
footer a{
    color: #fff;
}

footer .inner{
margin: 0 auto;
    width: 90%;
    max-width: 980px;
    padding: 8% 0;
    padding-right: 60px;
}

footer .inner .nav{
 font-size: 0;
 text-align: center; 
 margin-bottom: 8%;  
}

footer .inner .nav li{
font-size: 14px;
    display: inline-block;
    font-family: 'Didact Gothic', sans-serif;
    letter-spacing: 0.2em;
    margin: 0 2.4%;
    font-weight: 600;
}

footer .inner .logo_footer{
    width: 32%;
    margin: 0 auto 2%;
}

footer .inner .date{
text-align: center;
    font-family: 'Didact Gothic', sans-serif;
    font-size: 4vw;
    letter-spacing: 0.05em;
    margin-bottom: 8%;
}

footer .inner .date small{
font-size: 3vw;
    margin-left: 1%;
}

footer .inner .date span{
    margin: 0 1%;
}

footer .inner .large_block{
    overflow: hidden;
}

footer .inner .large_block .left_block{
    float: left;
    width: 48%;
}

footer .inner .large_block .right_block{
    float: right;
    width: 48%;
}

footer .inner .large_block p{
    line-height: 1.8em;
}

footer .inner .large_block a{
    text-decoration: underline;
}

footer .inner .support{
    margin-top: 8%;
    width: 720px;
}

footer .inner .support p{
    margin-bottom: 2%;
}

footer .inner .support p:last-child{
    margin-bottom: 0;
}

footer .button{
    margin: 0 auto 8%;
    display: block;
    text-align: center;
}

footer .button a{
letter-spacing: 0.1em;
    padding: 8px 24px;
    height: 56px;
    background-image: url(../img/icon_pdf.png);
    background-repeat: no-repeat;
    background-position: left 16px center;
    background-size: 30px;
    padding-left: 56px;
    line-height: 40px;
}

.pageload-overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    visibility: hidden;
}

.pageload-overlay.show {
    visibility: visible;
}

.pageload-overlay svg {
    position: absolute;
    top: 0;
    left: 0;
}

.pageload-overlay svg path {
    fill: #fff;
}

#loader {
width: 300px;
    height: 220px;
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    margin-top: -110px;
    margin-left: -150px;
    z-index: 1001;
}
 
#fade {
    width: 100%;
    height: 100%;
    display: none;
    background-color: #fff;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 1000;
}

#loader img{
    text-align: center;
}

.fadein {
    opacity : 0;
    transform : translate(0, 50px);
    transition:all 0.5s;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

#cursor {
    position: fixed;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #000;
    width: 5px;
    height: 5px;
    border-radius: 100%;
    pointer-events: none;
    z-index: 999;
}

#cursor.active {
    transform: scale(0);
}

#stalker {
    position: fixed;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #bdc3c9;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    transition: 0.2s;
    opacity: .3;
    pointer-events: none;
    z-index: 998;
}

#stalker.active {
    transform: scale(3);
}

.othercontents{
overflow: hidden;
    padding-bottom: 8%;
}

.othercontents .inner{
    width: 90%;
    max-width: 1280px;
    margin: 4% auto 8%;
    padding-right: 60px;
}

.othercontents .inner .headline {
    float: left;
    width: 14%;
}

.othercontents .inner .headline h2 {
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    font-size: 4vw;
    font-family: 'Didact Gothic', sans-serif;
letter-spacing: 0.1em;
    border-left: solid 3px;
    display: inline-block;
}

.othercontents .inner .large_block{
    width: 80%;
    float: left;
    font-size: 0;
    margin-bottom: 2.4%;
}

.singlenews .inner .large_block .middle_block{
margin-bottom: 8%;
}

.singlenews .inner .large_block .middle_block .date{
font-size: 14px;
    font-weight: 600;
    font-family: 'Didact Gothic', sans-serif;
    margin-bottom: 2%;
    letter-spacing: 0.1em;
}

.singlenews .inner .large_block .middle_block .thumbnail{
margin-bottom: 4%;
}

.singlenews .inner .alignright{
    float: right;
    margin-left: 2.4%;
    margin-bottom: 2.4%;
    width: 50%;
}

.singlenews .inner .alignleft{
    float: left;
    margin-right: 2.4%;
    margin-bottom: 2.4%;
    width: 50%;
}

.singlenews .inner .large_block .middle_block h3{
font-size: 24px;
    line-height: 1.4em;
    letter-spacing: 0.1em;
    margin-bottom: 2.4%;
}

.singlenews .inner .detail p{
    margin-bottom: 1.6%;
    line-height: 1.6em;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    -moz-font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-variant-ligatures: no-common-ligatures;
}

.singlenews .inner .detail img{
    margin-bottom: 1.6%;
}

.singlenews .inner .large_block .button{
    text-align: center;
}

.navigation{
margin-bottom: 8%;
    clear: both;
    overflow: hidden;
    border-top: solid 1px #aaa;
    padding: 2% 4% 0;
}

.navigation .navigation_prev{
    float: left;
    width: 40%;
}

.navigation .navigation_next{
    float: right;
    text-align: right;
    width: 40%;
}

.news .inner .large_block .middle_block{
width: 30%;
    display: inline-block;
    vertical-align: top;
    margin-right: 5%;
    margin-bottom: 8%;
}

.news .inner .large_block .middle_block:nth-child(3n) {
    margin-right: 0;
}

.news .inner .large_block .middle_block img{
    margin-bottom: 8%;
}

.news .inner .large_block .middle_block .date{
    margin-bottom: 4%;
    font-weight: 600;
    font-family: 'Didact Gothic', sans-serif;
}

.news .inner .large_block .middle_block h3{
    font-size: 16px;
}

.news .inner .large_block .middle_block h3 a{
    text-decoration: underline;
}

.singlenews .inner .large_block .middle_block .detail table{
margin-bottom: 4%;
    border-top: dashed 1px #ccc;
    border-bottom: dashed 1px #ccc;
}

.singlenews .inner .large_block .middle_block .detail table td{
width: 48% !important;
    vertical-align: top;
    padding-right: 8%;
    padding-top: 4%;
    padding-bottom: 4%;
}

.singlenews .inner .large_block .middle_block .detail h4{
 font-weight: 600;
 font-size: 16px; 
 border-bottom: solid 1px;
 display: inline-block;
 margin-bottom:8px;
}

.singlenews .inner .large_block .middle_block .detail a{
    text-decoration: underline;
}

.singlenews .gallery{
    margin-bottom: 8%;
}

.singlenews .gallery li{
    text-align: center;
}

.singlenews .gallery li p,
.singlenews .gallery li img{
margin-bottom: 0 !important;
}

.singlenews .gallery li a{
pointer-events: none;  
}

.singlenews .gallery li p{
    font-size: 12px;
}

.singlenews .gallery-columns-4 ul{
-webkit-column-count: 4;
    -webkit-column-gap: 4%;
    -webkit-column-fill: auto;
    -moz-column-count: 4;
    -moz-column-gap: 4%;
    -moz-column-fill: balance !important;
    column-count: 4;
    column-gap: 4%;
    column-fill: auto;
}

.singlenews .gallery-columns-4 li{
vertical-align: top;
margin-bottom: 16%;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    display: block !important;
}

.singlenews .gallery-columns-3 ul{
-webkit-column-count: 3;
    -webkit-column-gap: 4%;
    -webkit-column-fill: auto;
    -moz-column-count: 3;
    -moz-column-gap: 4%;
    -moz-column-fill: balance !important;
    column-count: 3;
    column-gap: 4%;
    column-fill: auto;
}

.singlenews .gallery-columns-3 li{
vertical-align: top;
margin-bottom: 16%;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    display: block !important;
}

.singlenews .gallery-columns-2 ul{
-webkit-column-count: 2;
    -webkit-column-gap: 4%;
    -webkit-column-fill: auto;
    -moz-column-count: 2;
    -moz-column-gap: 4%;
    -moz-column-fill: balance !important;
    column-count: 2;
    column-gap: 4%;
    column-fill: auto;
}

.singlenews .gallery-columns-2 li{
vertical-align: top;
margin-bottom: 16%;
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    column-break-inside: avoid;
    display: block !important;
}

.singlenews .gallery-columns-1 li{
margin-bottom: 8%;
}

.singlenews .gallery-columns-1 li p{
    font-size: 14px;
}

.access .map{
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
margin-bottom: 2.4%;
}

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

.access .middle_block{
margin-bottom: 4%;
    border-bottom: solid 1px #aaa;
    padding-bottom: 2%;
}

.access .middle_block h3{
margin-bottom: 0.8%;
    background-image: url(../img/icon_map.png);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 24px;
    padding-left: 32px;
    font-size: 24px;
    letter-spacing: 0.05em;
    border-bottom: solid 2px #222;
    display: inline-block;
}

.access .middle_block .address{
margin-bottom: 2%;
}

.access .middle_block .event{
    margin-bottom: 2%;
}

.access .middle_block .event .date{
font-size: 12px;
font-weight: 600;
}

.access .middle_block .event h4{
font-size: 16px;
}

.artist .inner .large_block .middle_block{
width: 22%;
    display: inline-block;
    vertical-align: top;
    margin-right: 4%;
    margin-bottom: 8%;
}

.artist .inner .large_block .middle_block:nth-child(4n) {
    margin-right: 0;
}

.artist .inner .large_block .middle_block img{
    margin-bottom: 8%;
}

.artist .inner .large_block .middle_block h3{
    font-size: 16px;
    text-align: center;
}

.artist .inner .large_block .middle_block h3 a{
    text-decoration: underline;
}

.singleartist .middle_block{
    overflow: hidden;
    margin-bottom: 8%;
}

.singleartist .middle_block .thumbnail{
float: left;
width: 32%;
margin-right: 8%;
}

.singleartist .middle_block .detail{
float: right;
    width: 60%;
}

.singleartist .middle_block .detail .tag{
    background-color: #07171f;
    display: inline-block;
    color: #fff;
    padding: 0 2.4%;
    height: 1.4em;
    line-height: 1.4em;
    font-weight: 600;
    letter-spacing: 0.1em;
    margin-bottom: 2.4%;
}

.singleartist .middle_block .detail a{
    text-decoration: underline;
}

.singleartist .middle_block .detail h3{
font-size: 24px;
    margin-bottom: 4%;
    letter-spacing: 0.05em;
}

.singleartist .middle_block .detail p{
    line-height: 1.8em;
}

.singleartist .middle_block .detail .text{
margin-bottom: 8%;
}

.singleartist .middle_block .detail .place{
margin-bottom: 4%;
}

.singleartist .middle_block .detail .event{
margin-bottom: 4%;
}

.singleartist .middle_block .detail h4{
font-weight: 600;
    margin-bottom: 1.6%;
    border-bottom: solid 2px #222;
    display: inline-block;
    padding-bottom: 0.8%;
}

.singleartist .button{
    text-align: center;
    margin-top: 8%;
}

.pagetop {
display: none;
    position: fixed;
    bottom: 48px;
    right: 12px;
    z-index: 100;
    width: 36px;
}
.pagetop a {
    display: block;
}
.pagetop a:hover {
    display: block;
}

.pagetop img{
    width: 100%;
    height: auto;
}

.alignright{
    float: right;
    margin-left: 2.4%;
    margin-bottom: 2.4%;
    width: 50%;
}

.alignleft{
    float: left;
    margin-right: 2.4%;
    margin-bottom: 2.4%;
    width: 50%;
}

.schedule table tbody th {
  text-align: left;
}

.schedule .table-wrapper {
width: 100%;
    overflow: scroll;
    height: 480px;
    border: solid #07171f 1px;
}

.schedule .table-wrapper:last-child{

}

.schedule .table-wrapper:last-child table{
width: 100%;
}

.schedule table{
  position: relative;
  border-collapse: separate;
}

.schedule table td,
.schedule table th {
  white-space: nowrap;
  border: 1px solid #ccc;
  padding: 8px;
  text-align: center;
  line-height: 1.4em;
}

.schedule table td small{
    margin-left: 4px;
}

.schedule table th {
position: sticky;
    top: -1px;
    z-index: 2;
    background-color: #607D8B;
    color: #fff;
    border-top: none;
}

.schedule table th:first-of-type{
  left: 0;
  z-index: 3;
}

.schedule table tbody tr td:first-of-type {
  background-color: #eee;
  position: sticky;
  left: -1px;
  text-align: left;
}

.schedule .table-wrapper:first-child{
    margin-bottom: 80px;
}

.schedule p{
margin-bottom: 2.4%;
    letter-spacing: 0.2em;
    font-size: 16px;
}

.schedule h3{
font-size: 24px;
    margin-bottom: 24px;
    display: inline-block;
    border-bottom: solid 2px;
    margin-top: 56px;
}

.bg_wh{
background-color: #f8f9fb !important;
    position: unset !important;
}

.small_height td{
padding: 0 8px !important;
}

.othercontents .map_schedule_pdf{
background-repeat: no-repeat;
background-size: 22px;
background-position: center left;
text-align: center;
background-image: url(../img/icon_pdf.png);
width: 248px;
margin: 0 auto 4%;
}

.othercontents .map_schedule_pdf a{
    text-decoration: underline;
}

.schedule.othercontents .map_schedule_pdf{
font-size: 14px;
clear: both;
overflow: hidden;
letter-spacing: normal;
margin-top: 2.4%;
display: block;
margin-bottom: 0;
}





























}


@media screen and (min-width: 767px) and (max-width: 860px) {

header .gn{
    display: none;
}

}


@media screen and (min-width: 767px) and (max-width: 980px) {


   
.top_about .inner .left p br{
display: none;
}

.top_about .inner .left {
    width: 40%;
    vertical-align: middle;
    display: inline-block;
    margin-right: 8%;
    text-align: left;
}

.top_about .inner .right {
width: 52%;
    vertical-align: top;
    display: inline-block;
    margin-top: 16%;
    position: relative;
}

.top_about .inner .right img.vertical {
float: left;
    width: 64%;
    margin-top: 16%;
}

.top_about .inner .right ul {
    float: right;
    width: 64%;
    position: absolute;
    top: 0;
    right: 0;
}










}




















