
* {font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", 'Work Sans',sans-serif;
	letter-spacing: .1em;
color:#003049;
}

.gloval__nav{
/*display: none!important;*/
}
body{background-color:#fdfdfd;}

.hide_pc { display: none; }
.hide_sp { display: block; }

body { margin: 0; }

ul, li {
	margin: 0;
	padding: 0;
	list-style: none;
}

a {
	text-decoration: none;
}

h1, h2 {
	text-align: center;
}


h1.hold{
    margin: 50px auto;
    border-radius: 50px;
    padding: 10px;
    font-size: 3.5rem;
}

h1.hold span{
	font-size: 1.5rem;
	background-color: revert;
	padding: 0px!important;
}

h2.message {
	width: 70%;
	margin: 50px auto;
	padding: 70px 0px 30px;
	text-align: center;
	font-size: 1.2rem;
	line-height: 2;
	/*border: 1px solid #000;*/
	display: block;
	line-height: 2.5rem;
}



h3 {
	margin: 10px 0 5px;
	font-size: 1.0rem;
}

main {
	width: 1200px;
	margin: 0 auto;
}

.flex {
	display: flex!important;
}
.bold {
	font-weight: 700;
}

/* 2カラム */
.two-column {
	justify-content: space-between;
}
.two-column div {
	width: 47%;

    	padding: 30px 12px;
    	border-radius: 30px;

}
.two-column div p {
	margin: 0;
	padding: 10 50;
}
.two-column div img {
	width: 100%;
}

.about-organizer{
text-align:center;
font-size: 2rem;
margin-bottom: 100px;
font-weight: 600;
}

.about-organizer span{
border: 1px solid #003049;
    padding: 20px 40;
    border-radius: 50px;
    box-shadow: 0 8px 1px 0;
    box-shadow: 0px 8px 2px;
}


.about *, *:before, *:after {
	box-sizing: border-box;
}
.about .col_2{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.about .col_2 > .right{
	width: 30%;
	padding: 10px;
}
.about .col_2 > .left{
	width: 70%;
	padding: 25px 10px;
}


@media screen and (max-width: 960px) {
	.about .col_2 > div{
		width: 100%;
	}
.about .col_2 > .right{
	width: 80%;
    margin: 0 auto;
}
.about .col_2 > .left{
	width: 100%;
}
}

.illust{

}



/* テキスト */
.txt {
	width: 100%;
	text-align: center;
}
.txt img {
	width: 100%;
}

.l_header ul, .l_footer ul {
	display: flex;
	justify-content: center;
}

.l_header a, .l_footer a {
	padding: 15px 30px;
	display: block;
}

.l_header #logo {
	width: 200px;
	margin: 0 auto;
}

.l_header #logo img {
	width: 100%;
}

.l_header ul {
	background-color: #fdfdfd;
}

.l_footer {
	margin-top: 100px;
	padding: 20px;
	background-color: #004870;
}

.l_footer, .l_footer a {
	color: #fff;
	transition-property: all;
	transition: 0.2s linear;
}

.l_footer a:hover {
	text-decoration: underline;
}

.copyright {
	text-align: center;
	font-size: 0.9rem;
	color:#eee;
}




.ufo{
	position: relative;
}
.ufo:after{
	content: '';
    display: inline-block;
    width: 150px;
    height: 71px;
    background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/UFO.png);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    right: 171px;
    top: -25px;
    z-index: -1;
    /* opacity: 50%; */
    background-repeat: no-repeat;
    animation: fluffy1 3s ease infinite;
}

.neko{
	position: relative;
}
.neko:after{
	content: '';
    display: inline-block;
    width: 155px;
    height: 140px;
    background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/neko.png);
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    left: 150px;
    top: -100px;
    z-index: -1;
    /* opacity: 50%; */
    background-repeat: no-repeat;
    animation: fluffy1 3s ease infinite;
}

/* button */
.btn {
	width: 100%;
	margin-bottom: 30px;
}

.btn a {
	height: 40px;
	line-height: 40px;
	text-align: center;
	border: 2px solid #000;
	color: #000;
	text-decoration: none;
	font-size: 17px;
	display: block;
	width: 450px;
	margin: 0 auto;
	font-weight: 700;
}
@media screen and (max-width: 768px) {
.btn a {	width: 100%;	font-size: 15px;
}}


.a_line {
	text-decoration: underline;
}

.marker {
	/*background: linear-gradient(transparent 45%,#A3F1F9 45%);*/
}
.marker_sky {
	background: linear-gradient(transparent 45%,#A3F1F9 45%);
}
span.mark {
	padding: 0 9px;
	color: #000;
	background: -webkit-linear-gradient(left, transparent 50%,#A3F1F9 50%) 100% bottom / 202% 65% no-repeat;
	background: linear-gradient(to right, #A3F1F9 50%, transparent 50%) 100% bottom / 202% 65% no-repeat;
	-webkit-transition: background-position .2s ease-out;
	transition: background-position .2s ease-out;
}

span.mark:hover {
	/*background: linear-gradient(transparent 45%,#f6ef94 45%);*/
	background-position: 0% bottom;
}


.heading03 {
	position: relative;
	padding-bottom: 20px;
	font-size: 26px;
	text-align: center;
	font-weight: 600;
}

.heading03::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 52px;
	height: 6px;
	background-color: #22304f;
	border-radius: 100%;
}


.button {
    position: relative;
    margin: 0 30px 0 auto;
}
.button .button-by {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 13.5rem;
    height: 4.2rem;
    border: 1px solid #22304F;
    margin: 0 0 0 auto;
    border-radius: 100px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-transition: .5s;
    transition: .5s;
    overflow: hidden;
    cursor: pointer;
    z-index: 1;
}

.button .button-by::before {
    --size: 0;
    content: "";
    position: absolute;
    left: 190px;
    top: 75px;
    width: var(--size);
    height: var(--size);
    background: radial-gradient(circle closest-side, #ac9ad1, transparent);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: width .65s ease,height .65s ease-out;
    transition: width .65s ease,height .65s ease-out;
    pointer-events: none;
    z-index: 8;
}
.button .button-text {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-left: 1rem;
    z-index: 8;
    letter-spacing: .03em;
    -webkit-transition: .2s;
    transition: .2s;
    pointer-events: none;
}

.button .button-arrow {
    width: 28px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none;
    z-index: 8;
    -webkit-transition: .2s;
    transition: .2s;
    position: relative;
    left: -20px;
    background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/gaib_wh.png);

}


.button .button-by:hover{-webkit-transition:.5s;transition:.5s;background:#0b6aa2;border:1px solid #fff}
.button .button-by:hover::before{--size: 350px}
.button .button-by:hover::before{z-index: 1;}
.button .button-by:hover .button-text{color:#fff;-webkit-transition:.2s;transition:.2s}
.button .button-by:hover{-webkit-transition:.5s;transition:.5s;background:#0b6aa2;border:1px solid #fff}
.button .button-by:hover::before{--size: 300px}
.button .button-by:hover .button-text{color:#fff;-webkit-transition:.2s;transition:.2s}
.text-link{display:inline-block;position:relative;-webkit-transition:opacity .4s;transition:opacity .4s}
.text-link:hover{-webkit-transition:opacity .4s;transition:opacity .4s}
.text-link:hover.page-contact-link{opacity:1}

.text-link:hover::after{-webkit-transform:scaleX(0);transform:scaleX(0);-webkit-transform-origin:100% 50% 0;transform-origin:100% 50% 0;-webkit-transition:-webkit-transform .45s cubic-bezier(0.76, 0, 0.24, 1) 0s;transition:-webkit-transform .45s cubic-bezier(0.76, 0, 0.24, 1) 0s;transition:transform .45s cubic-bezier(0.76, 0, 0.24, 1) 0s;transition:transform .45s cubic-bezier(0.76, 0, 0.24, 1) 0s, -webkit-transform .45s cubic-bezier(0.76, 0, 0.24, 1) 0s}
.text-link .link-text{font-size:1.6rem;line-height:1.625;letter-spacing:.025em;vertical-align:super;-webkit-transition:opacity .4s;transition:opacity .4s}





.arrow{
  width: 10em;
  position: relative;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 1em;
}

.arrow::after{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 1.1rem;   /* arrow size */
  height: 1.1rem;  /* arrow size */
  background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/gaib.png);
  background-repeat: no-repeat;

}





.arrow:hover::after{
  background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/gaib_wh.png);
    z-index: 1;
}


.arrow1::after{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15;
  margin: auto;
  content: "";
  vertical-align: middle;
top: 0;
    bottom: 0;
    right: 25px;
    width: 13px;
    height: 13px;
    border-top: 2px solid #003049;
    border-right: 2px solid #003049;
    transform: rotate(45deg);

}
.arrow1:hover::after{
   z-index: 1;
top: 0;
    bottom: 0;
    right: 25px;
    width: 13px;
    height: 13px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);}








/*.kv {
	height: 500px;
	color: #ffffff;
	font-size: 1.2rem;
	font-weight: 600;
	background-image: url(../img/bookshop-expo/kv_pc.jpg);
	background-position: center;
	background-size: cover;
	display: flex;
	justify-content: center;
}

.kv .kv_left, .kv .kv_right {
	width: 300px;
	height: 300px;
	padding: 100px;
	line-height: 3;
}*/

.kv {
	font-size: 1.2rem;
	font-weight: 600;
margin: 0 calc(50% - 50vw);
    width: 100vw;
    background-color: #fff;
}

.kv_1 .kv_center {
	width: 750px;
	margin: 90px auto;
	text-align: center;
	font-size: 1.5rem;
}

.kv_1 {
	font-size: 1.2rem;
	font-weight: 600;
margin: 0 calc(50% - 50vw);
    width: 100vw;
    background-color: #fdfdfd;
}

.kv_cr {text-align: right;
    padding-right: 30px;
    font-size: 0.8rem;
    color: #292f338f;
}
.kv .kv_center {
	width: 750px;
	margin: 90px auto;
	text-align: center;
	font-size: 1.5rem;
}

/*.kv_left .box, .kv_right .box {
	margin: 0 0 30px;
	padding: 20px;
	line-height: 1;
	border: 2px solid #ffffff;
}

.kv_left p, .kv_right p {
	padding-left: 25px;
	border-left: 2px solid #ffffff;
}*/

.kv img {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}



/*NEWS*/

.news_txt{
margin-bottom:20px;
}

.news {
	margin-top: 120px;
}

.title {
	margin-bottom: 25px;
	text-align: center;
	font-size: 2.0rem;
	font-weight: 500;
	width: 100%;
}




.subtitle {
	text-align: center;
}

.news .release_title {
	margin-bottom: 20px;
	padding: 10px 30px;
	font-size: 1.3rem;
	font-weight: 600;
/*	border-bottom: 1px solid #ccc;*/
	height: 44px;

}
.news .news_release{
	position: relative;
	padding: 0 0 0 80px;
} 
.news .news_release:before {
  content: '';/*何も入れない*/
  display: inline-block;/*忘れずに！*/
  width: 50px;/*画像の幅*/
  height: 49px;/*画像の高さ*/
  background-image: url(/static_contents/test/tsite/daikanyama/img/sf-carnival2022/dec_01.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
    left: 83px;
    top: 5px;
    z-index: -1;
    opacity: 50%;
}


.news .news_txt{
	padding-left: 30px;
}

.news .sl_first, .list, ul.release {
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.news .sl_first {
	margin-bottom: 50px;
}

.news .sl_first .store {
	width: 19%;
	margin: 0 0.5% 30px;
}

.news .release_title .release_day{
	font-size:0.85rem;
	opacity:80%;
	letter-spacing: 2px;
}

/*reissue*/

.reissue .text{
margin:10px 80px; 
}
.reissue .party{
text-align: right;
padding-top: 10px;
}

.reissue .book{
    margin: 80px;
    border: 1px solid #003049;
    border-radius: 20px;
    box-shadow: 0px 8px 2px;
    padding: 30px;
}
.reissue .button{
align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
.reissue .text{
margin:10px 0px; 
}
.reissue .book{
    margin: 0 0 50px;}

}

/*contents*/

.contents {
	margin-top: 120px;
}
.contents .release_title {
	margin-bottom: 20px;
	padding: 10px 25px;
	font-size: 1.6rem;
	font-weight: 600;
	height: 44px;
}

.contents .release_title1 {
	margin-bottom: 20px;
	padding: 10px 30px;
	font-size: 1.7rem;
	font-weight: 600;
	height: 44px;
	text-align:center;
	
}

.contents .two-column div p {
	line-height: 1.7;
}

.contents .contents_txt{
font-size: 1.1rem;
	padding: 30px 50px;
}

@media screen and (max-width: 768px){
.contents .contents_txt{
	padding: 33px 10px;
}}


.contents .sl_first, .list, ul.release {
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}

.contents .sl_first {
	margin-bottom: 50px;
}

.contents .sl_first .store {
	width: 19%;
	margin: 0 0.5% 30px;
}

.contents01{
position: relative;
}
.na1{
	padding:0px!important;
	position: absolute;
	top: 0px;
  	left: 390px;
	font-size: 3rem;
	font-family: 'Barlow Condensed', sans-serif;
	color:#a4a4a4;
}
.na{
	padding:0px!important;
	position: absolute;
	top: 0px;
	font-size: 3rem;
	font-family: 'Barlow Condensed', sans-serif;
	color:#a4a4a4;
}

.center{
text-aligh:center;
}

.con_left02{
margin-bottom: 200px;
position: relative;
}
.con_right03{
margin-top: 230px;
position: relative;
}

.con_right03:before {
background-color:#e5e5e1;
position: absolute;
content: '';
width:100px;
height:100px;
  top: 30;
  left: 0;
    border-radius: 100%;
  color: white;/*文字色*/
  padding: 0.2em;/*余白*/
  background: #F89174;/*背景色*/
z-index:-100;
  border-width: 10px 0 10px 17.32px;
  transform: rotate(45deg);
}


.con_left04{
 	margin-top: -190px;
	margin-bottom: 160px;
	position: relative;
}

.con_right05{
	margin-top: 150px;
	position: relative;
}
.con_left06{
	margin-bottom: 180px;
	margin-top: -150px;
	position: relative;
}

.con_left06:before {
	position: absolute;
	content: '';
	top: 60;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 116px 0 0 241px;
	border-color: transparent transparent transparent #fffc61;
	z-index:-100;
  	border-width: 30px 0 50px 150px;
	transform: rotate(45deg);
}


.con_right07{
	margin-top: 60px;
	margin-bottom: 50px;
	position: relative;
}

.con_left08{
	margin-bottom: 150px;
	margin-top: -120px;
	position: relative;
}

.con_right09{
	margin-top: 50px;
	position: relative;
}

.con_right09:before {
	position: absolute;
	content: '';
	top: -40;
	left: 15;
  	margin       : auto;
	width        : 80px;
 	height       : 80px;
 	background   : #004870;
	z-index:-100;
 	transform    : rotate(75deg);
 	overflow:hidden;
}


.sponsorship a {
	width: 400px;
	margin: 0 auto;
}
.sponsorship p {
	margin: 0;
	width: 100%;
}

ul.release li {
	width: 30%;
	margin: 0 1.5% 40px;
}

ul.release li h3 {
	padding: 10px 30px;
	border-left: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

ul.release li a {
	color: #000;
}

ul.release li img {
	width: 100%;
	margin-bottom: 10px;
}


.sns {
	margin-top: 50px;
	justify-content: space-evenly;
}

#tl_twitter, #tl_instagram, #tl_facebook {
	width: 382px;
	height: 501px;
	border: 0.5px solid #ccc;
}

#tl_twitter #twitter-widget-0 {
/*	width: 380px!important;
	height: 499px!important;
	margin-left: 1px;
	margin-top: 1px!important;*/
}

#tl_instagram .tl {
	width: 380px;
	margin-left: 1px;
}

#tl_instagram .title {
	height: 24px;
	padding: 10px;
	font-size: 1.2rem;
	text-align: left;
}

#tl_instagram .tl {
	height: 456px;
	overflow-y: scroll;
}

#tl_instagram iframe {
	background-color: #fff;
}

/*#tl_twitter:after, #tl_instagram:after, #tl_facebook:after {
    display: block;
    content: "";
    width: 80%;
    max-width: 1100px;
    height: 150px;
    margin-top: -160px;
    border-radius: 100%;
    box-shadow: 0px 0px 50px;
    margin-left: auto;
    margin-right: auto;
}*/

#tl_facebook .fb-page {
	margin-left: 1px;
}

#tl_facebook .uiScaledImageContainer,
#tl_facebook iframe,
#tl_facebook span {
	width: 400px !important;
}

#tl_facebook ._2p3a{
	width: 380px;
}

.list li {
	width: 24%;
	margin: 0 0.5% 20px;
	position: relative;
}
.list li .label {
	position: absolute;
	top: 0;
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 95px 60px 0;
	border-color: transparent #f6ef94 transparent transparent;
}
.list li .label > span {
	font-weight: 700;
	font-size: 14px;
	text-align: right;
	display: block;
	width: 84px;
	padding: 10px 8px 0 0;
}

.list li .label > .new {
	font-size: 12px;
	width: 99px;
padding: 6px 6px 0 0;
}
@media screen and (max-width: 768px){
.list li .label > .new {
    font-size: 12px;
    width: 72px;
padding: 3px 6px 0 0;
line-height: 1rem;
}}



.list li a {
	color: #000;
	display: block;
}
.nonevent{
pointer-events: none;
}

.list h3 span{
font-size:1rem;
}

.list li img {
	width: 100%;
}

.list lidiv {
	font-size: 0.8rem;
}

.list div{
margin-bottom: 10px;
font-size: 0.8rem;
}


/* about */
.about {
	width: 760px;
}

.about .message {
	margin-bottom: 60px;
}

.about .contact {
	width: 500px;
	margin: 0 auto 60px;
}

.about .caution {
	margin: 100px auto 0;
	font-size: 0.9rem;
}

.access {
	margin: 100px auto 0;
	flex-wrap: wrap;
}

.access .box {
	width: 46%;
	margin: 2%;
}

.access .box .img {
	margin-right: 30px;
	padding: 50px;
	background-color: #DEDEDE;
	align-items: center;
}

.access .box .txt h2 {
	text-align: left;
	font-size: 1.1rem;
}


/*booklist　選書*/
.anthology .list li {
	width: 15%;
	margin: 0 0.5% 20px;
	position: relative;
}
.anthology .sensho {
margin:0 auto;
text-align: center;
}
.anthology .sensho img{
width: 30%;
    border: 1px solid #eee;
margin:10px 0;
}

/*Profile　プロフィール*/
.sigh,.card{
    padding: 3px 10px;
    display: inline-block;
    color: #fff;
    font-size: 0.7rem;
    font-weight: 600;
    margin: 5px 2px 0;
}

.card{background-color: #7ba6ff;}
.sigh{background-color: #ff7b7b;}


@media screen and (max-width: 768px){
.anthology .list li {
    width: 30%;
    margin: 0 1% 28px;
}}






/* event */
.event .txt {
	width: 760px;
	margin: 36px auto;
}

.event ul.release li h3 {
	padding: 0;
	border: 0;
	text-align: left;
	font-size: 16px;
}

.event ul.release li .shop_d{
font-size:0.7rem;
background-color:#F89174;
padding:3px 5px;
color:#fff;
}
.event ul.release li .shop_u{
font-size:0.7rem;
background-color:#003049;
padding:3px 5px;
color:#fff;

}

.event  .date{
margin-top: 10px;
}

.bg_gy{
background-color:#DEDEDE;

    width: 95%;
    margin: 0 auto;
}

.event h2{
padding-top: 60px;
}

.event h3 {
	text-align: center;
	margin: 0 auto 16px;
	font-size: 20px;
}

/* .event .timetable {
	width: 760px;
	margin: 0 auto 70px;
	flex-wrap: wrap;
	justify-content: center;
}

.event .timetable div {
	width: 33%;
	padding: 10px 0;
	text-align: center;
	border-bottom: 0.5px solid #ccc;
} */

/* timetable */
.timetable {
	border-collapse: collapse;

	padding: 0;
	table-layout: fixed;
	font-size: 12px;
}
.timetable a {
	color: #000;
	text-decoration: none;
}
.timetable tr {
  background-color: #fff;
  border: 1px solid #ccc;
  padding: .35em;
}
.timetable th,
.timetable td {
  padding: 4px;
	border-right: 1px solid #ccc;
	font-weight: normal;
	text-align: center;
}
.timetable th {
	width: 160px;
}
.timetable thead tr{
  background-color: #f4f5f0;
}
.event .timetable .title {
	width: 280px;
}
.event .timetable .performer,
.event .timetable .place {
	/* width: 80px; */
}
.event .timetable .title,
.event .timetable .place {
	font-size: 12px;
}
.event .notice {
	font-size: 13px;
	text-align: center;
	margin: 20px 0 80px;
}

.teiten_btn{
  transform: translate(-40%,-50%);
}
@media screen and (max-width: 768px){
.teiten_btn{
  transform: translate(-10%,-50%);
}}


/*サイン会*/
#sign {
  margin-top: 0px;
  color: #fff;
  position: relative; }
  #sign > div.day + div.day {
    margin-top: 70px; }
  #sign > div:first-of-type {
    margin-top: 0px; }
  #sign > div:nth-of-type(2) {
    margin-top: 130px; }
  #sign > div.day > p {
    font-size: 28px;
    text-align: center;
    font-weight: bold; 
    margin-top: 50px}

    #sign > div.day > div:first-of-type > div:hover {
      background-color: #ededed;
      transition: 0.5s;
      cursor: pointer; }
    #sign > div.day > div:first-of-type > div + div {
      margin-top: 20px; }
    #sign > div.day > div:first-of-type > div {
      position: relative;
      transition: 0.5s;
      display: flex;
      margin: 10px auto;
      padding: 15px 0;
      border-radius: 10px;
      width: 880px;
      background-color: #DEDEDE;
      justify-content: center;
      text-align: left; }
      #sign > div.day > div:first-of-type > div a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
      #sign > div.day > div:first-of-type > div > div:first-of-type {
        width: 120px;
        text-align: right;
        padding-right: 30px; }
        #sign > div.day > div:first-of-type > div > div:first-of-type span {
          color: #a7a7a7; }
      #sign > div.day > div:first-of-type > div > div:last-of-type {
        position: relative;
        width: 880px;
        padding-left: 30px;
        box-sizing: border-box;
        border-left: 1px solid #a7a7a7;
        font-weight: bold; }
        #sign > div.day > div:first-of-type > div > div:last-of-type > div {
          position: absolute;
          top: 60%;
          transform: translateY(-50%) translateX(0);
          -webkit-transform: translateY(-50%) translateX(0);
	   line-height: 1rem;}
          #sign > div.day > div:first-of-type > div > div:last-of-type > div span{
            font-size: 14px;
            color: #242C3A;
            font-weight: bold;
           /* background-color: #fff;*/
           /* border: 0px solid #fff; */
            padding: 5px 10px;
            border-radius: 15px;
            margin:0  1px; }
          #sign > div.day > div:first-of-type > div > div:last-of-type > div .store{
            font-size: 12px;
            color: #fff;
            font-weight: bold;
            background-color: #F89174;
            border: 0px solid #F89174; 
            padding: 5px 10px;
            border-radius: 15px;
            margin:0  1px; }
          #sign > div.day > div:first-of-type > div > div:last-of-type > div p:last-of-type {
            margin-top: -3px;
            font-size: 20px; }


@media screen and (max-width: 960px) {
      #sign > div.day > div:first-of-type > div > div:last-of-type {
        width: 100%;padding: 10px;}
    #sign > div.day > div:first-of-type > div {        width: 100%;padding: 35px 10px;}
#sign > div.day > div:first-of-type > div > div:last-of-type > div span{
padding: 5px 5px;
}
}




#sign_fixed1,*, *:before, *:after {
	box-sizing: border-box;
}

.col02{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}



#sign_fixed1 .dys {
    font-size: 28px;
    text-align: center;
    font-weight: bold;
    margin-top: 50px;
}


#sign_fixed1 {
  margin-top: 0px;
  color: #fff;
  position: relative; }
.col02 > div{
	width: 50%;
	padding: 10px;
}


#sign_fixed1 .waku{
position: relative;
    transition: 0.5s;
    display: flex;
    margin: 10px;
    padding: 15px 0;
    border-radius: 10px;
    width: 100%;
    background-color: #DEDEDE;
    justify-content: center;
    text-align: left;}


#sign_fixed1 .sign_time{
width: 100px;
    text-align: right;
    padding-right: 30px;
}
#sign_fixed1 .sign_time span{
color: #a7a7a7;
}

#sign_fixed1 .name{
position: relative;
    width: 55%;
    padding-left: 30px;
    box-sizing: border-box;
    border-left: 1px solid #a7a7a7;
    font-weight: bold;
}
#sign_fixed1 .name2{
position: absolute;
    top: 50%;
    transform: translateY(-50%) translateX(0);
    -webkit-transform: translateY(-50%) translateX(0);
}
#sign_fixed1 .name p{
margin-top: -3px;
    font-size: 20px;
}
#sign_fixed1 .name p span{
font-size: 14px;
    color: #242C3A;
    font-weight: bold;
    padding: 5px 10px;
    border-radius: 15px;
    margin: 0 1px;
}

#sign_fixed1 a{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;}


#sign_fixed1 .waku:hover {
      background-color: #ededed;
      transition: 0.5s;
      cursor: pointer; }

.list  a p{font-size: 0.9rem;}



@media screen and (max-width: 960px) {
  #sign_fixed1 .waku{  margin: 10px 0; }
#sign_fixed1 .name{padding-left: 9px;width: 85%;}
#sign_fixed1 .name p span{padding: 5px 7px;}
#sign_fixed1 .sign_time{padding-right: 20px;}
#sign_fixed1 .name p{padding-right: 9px;}
}



  #sign_fixed > div.day + div.day {
    margin-top: 70px; }
  #sign_fixed > div:first-of-type {
    margin-top: 0px; }
  #sign_fixed > div:nth-of-type(2) {
    margin-top: 130px; }
  #sign_fixed > div.day > p {
    font-size: 28px;
    text-align: center;
    font-weight: bold; 
    margin-top: 50px}

    #sign_fixed > div.day > div:first-of-type > div:hover {
      background-color: #ededed;
      transition: 0.5s;
      cursor: pointer; }

    #sign_fixed > div.day > div:first-of-type > div {
      margin-top: 20px; }

    #sign_fixed > div.day > div:first-of-type > div {
      position: relative;
      transition: 0.5s;
      display: flex;
      margin: 10px;
      padding: 15px 0;
      border-radius: 10px;
      width: 48%;
      background-color: #DEDEDE;
      justify-content: center;
      text-align: left; }

      #sign_fixed > div.day > div:first-of-type > div a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
      #sign_fixed > div.day > div:first-of-type > div > div:first-of-type {
        width: 80px;
        text-align: right;
        padding-right: 30px; }
        #sign_fixed > div.day > div:first-of-type > div > div:first-of-type span {
          color: #a7a7a7; }
      #sign_fixed > div.day > div:first-of-type > div > div:last-of-type {
        position: relative;
        width: 55%;
        padding-left: 30px;
        box-sizing: border-box;
        border-left: 1px solid #a7a7a7;
        font-weight: bold; }
        #sign_fixed > div.day > div:first-of-type > div > div:last-of-type > div {
          position: absolute;
          top: 50%;
          transform: translateY(-50%) translateX(0);
          -webkit-transform: translateY(-50%) translateX(0); }
          #sign_fixed > div.day > div:first-of-type > div > div:last-of-type > div span{
            font-size: 14px;
            color: #242C3A;
            font-weight: bold;
           /* background-color: #fff;*/
           /* border: 0px solid #fff; */
            padding: 5px 10px;
            border-radius: 15px;
            margin:0  1px; }

          #sign_fixed > div.day > div:first-of-type > div > div:last-of-type > div p:last-of-type {
            margin-top: -3px;
            font-size: 20px; }

#sign_fixed .col2{
width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
}

@media screen and (max-width: 960px) {
	.col02 > div{
		width: 100%;
	}
}


#sign .store_d{
position: absolute;
    background-color: #f89174;
    color: #fff;
    left: 150px;
    top: 7px;
    font-size: 0.7rem;
    padding: 0 20px;
}
#sign .store_u{
position: absolute;
    background-color: #7EE69E;
    color: #fff;
    left: 150px;
    top: 7px;
    font-size: 0.7rem;
    padding: 0 20px;
}

#event_head{
margin:30px 0 80px;
}

#event_head ul{
display: flex;
    justify-content: center;

}

#event_head li{
position: relative;
padding:10px 30px;
border: 1px solid #22304F;
margin:0px 25px;
border-radius: 100px;
width: 210px;
    text-align: center;
    transition: .5s;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-transition: .5s;
    overflow: hidden;
    cursor: pointer;
    z-index: 1;

}
@media screen and (max-width: 960px) {
#sign .store_u{
left: 110px;
}
#sign .store_d{
left: 110px;
}
}


.sing_store{
margin: 100px 0 10px;
    text-align: center;
    font-size: 2rem;
    font-weight: 600;
}


.Autograph_flow{
width: 880px;
    margin: 0 auto;
}

.Autograph_flow .txt{
font-size: 1.3rem;
    font-weight: 600;
}


.Autograph_flow ol{
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}

.Autograph_flow li{
  text-indent: -1.3em;
  padding-left: 1.3em;
margin: 15px 0;
}
.Autograph_flow ol li:before {
  counter-increment: item;
  content: counter(item)'.';
  /* 以下は自由に装飾... */
  padding-right: .5em;
  font-weight: bold;
  font-family: 'Barlow Condensed', sans-serif;
    color: #a4a4a4;
}


@media screen and (max-width: 960px) {
.Autograph_flow{
width: 100%;
}}



/*選評*/
.senpyo_hd{
text-align: center;
margin:50px 0 30px;
font-size: 1.3rem;
    font-weight: 600;
}

.senpyo{
text-align: center;
}

.senpyo p{
text-align: left;
}

.senpyo p .att{
font-size: 0.8rem;
}

#event_head li a{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;}

#event_head li:hover{
background-color: #0b6aa2;
-webkit-transition:.5s;transition:.5s;
color:#fff;
border: 1px solid #fff;
      transition: 0.5s;
}

#event_head li:hover::before {
    width: 100px;
    height: 100px;
    content: "";
    position: absolute;
    left: 180px;
    top: 48px;
    background: radial-gradient(circle closest-side, #ac9ad1, transparent);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: width .65s ease,height .65s ease-out;
    transition: width .65s ease,height .65s ease-out;
    pointer-events: none;
    z-index: 8;
-webkit-transition:.5s;transition:.5s;
}

@media screen and (max-width: 960px) {
#event_head ul{flex-wrap: wrap;
}
#event_head li {   padding: 10px 0px;
margin: 5px 5px;
    width: 100%;

}
	}


.cp_h1title {
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center;
	font-size: 1.7rem;
}
.cp_h1title::before,
.cp_h1title::after {
	content: '';
	position: absolute;
	top: 77%;
	display: inline-block;
	width: 35%;
	height: 3px;
	border-top: 4px solid #dedede6b;
}
.cp_h1title::before {
	left:0;
}
.cp_h1title::after {
	right: 0;
}

@media screen and (max-width: 960px) {
.cp_h1title::before,
.cp_h1title::after {
	width: 15%;
}}

.org01{
	width: 48%!important;
	padding: 20px 10px 20px 0;
}
.org02{
	width: 44%!important;
	padding: 20px 10px 20px 0;
}


@media screen and (max-width: 768px) {
.con_left02,.con_left04,.con_left06,.con_left08{
margin-bottom: 0px;
}
.con_right03,.con_left04,.con_right05,.con_left06,.con_right07,.con_left08,.con_right09{
margin-top: 0px;
}

.heading03::after {
width: 40px;
}

.about-organizer{
font-size: 1.3rem;
}


.contents .release_title {
	font-size: 1.5rem;

}

.ufo:after{
    width: 110px;
    right: 10px;
    top: -32px;
}

.neko:after{
    left: 218px;
    top: -130px;
}


h1.hold{
font-size: 2.5rem;
}
h1.hold .year{
font-size: 1.5rem;
}
h1.hold span{
font-size: 1rem;
}

.news .news_release{
padding: 0 0 0 0px;
}

.news .news_release:before{
left: 0px;
}


.na1 {
	left: 0px;
	display: inline-block;
   	top: -15px;
    	right: -3px;
}
.na {
	top: 0px;
	display: inline-block;
   	top: -15px;
    	right: -3px;
}
.con_left04{
padding: 0px!important;
}

.l_header ul {
	background-color: #fff;
}
	.timetable-box div:first-child {
		margin-bottom: 40px;
	}
  .timetable {
    border: 0;
    width:100%
  }
  .timetable th {
    background-color: #f4f5f0;
    display: block;
		border-right: none;
		width: auto;
  }
  .timetable thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  
  .timetable tr {
    display: block;
		margin-bottom: .625em;
  }
  
  .timetable td {
    display: block;
    text-align: left;
    position: relative;
    padding: 2% 1% 2% 24%;
    border-right: none;
    border-bottom: 1px solid #eee;
  }
  
  .timetable td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }
  
  .timetable td:last-child {
    border-bottom: 0;
	}
	.event .timetable .title,
	.event .timetable .performer,
	.event .timetable .place {
		width: auto;
	}
	.event .timetable .title {
		margin: 0;
	}
} 

/*脱出ゲーム*/

	.game {
		margin: 30px auto 0!important;
		width: 1000px;
	}
	.game img {
		margin: 0px auto;
	}

.game .map{
border: 1px solid #eee;
		width: 80%;
margin: 0 auto 50px;
height:400px;
}
.game .map_g{
 width:100%; 
height:400px;
}
.game .ma{
margin-bottom:35px; 
}
@media screen and (max-width: 768px) {
	.game {
		width: 94%;
	}
	.game img {
		width: 100%;
	}
.game .map{
		width: 100%;
height:240px;
}
.game .map_g{
height:240px;
}
}



.faq {
	width: 760px;
	margin: 70px auto 0;
}

.faq a {
	color: #000;
	text-decoration: underline;
	transition-property: all;
	transition: 0.1s linear;
}

.faq a:hover {
	color: #ccc;
}

.faq .box {
	margin-bottom: 45px;
}

.faq .box span {
	padding: 0 32px 0 22px;
	word-break: break-all;
}

.faq_q, .faq_a {
	padding: 20px;
	display: flex;
}

.faq_q {
	background-color: #f6f6f3;
}




/* online */
.online .txt {
    width: 80%;
    margin: 0px auto 60px;
    text-align: left;
    line-height: 2.33;
}
.online .message {
	justify-content: space-evenly;
	align-items: center;
}
.online .message .img-box { width: 25%; }
.online .message .img-box img { width: 100%; }
.online .message .txt {
	width: 45%;
	margin: 36px 0;
	text-align: left;
	line-height: 2.33;
}
.online .message .txt .bold { font-size: 1.6rem; }
.online .timetable-box .timetable .tit { width: 370px; }
.online .timetable-box .timetable .gst { width: 420px; }
.online .timetable th, .online .timetable td {}
.online .sns {
	margin: 100px 0 90px;
	text-align: center;
}
.online .sns .share {
	margin: 0;
	font-size: 1.2rem;
}
.online .sns .flex {
	flex-wrap: wrap;
	justify-content: center;
}
.online .sns .flex a {
	margin: 10px 10px;
}
.online .sns .flex a img {
	width: 60px;
	height: 60px;
}

.online .eveoffes {
	width: 47%;
}
.online .eveoffes h3 {
	margin: 20px 0;
	font-size: 1.2rem!important;
}
.online .channel {
	text-decoration: underline;
	transition-property: all;
	transition: 0.1s linear;
}
.online .channel:hover {
	opacity: 0.4;
}



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

}

@media screen and (max-width: 768px) {
	.hide_pc { display: block!important; }
	.hide_sp { display: none!important; }

	body {
		margin: 0;
	}

	main {
		width: 94%;
	}

	h2 {
		font-size: 1.4rem;
	}

	h2.message {
		width: 80%;
		padding: 0;
		font-size: 1.0rem;
	}

	h3 {
		font-size: 0.9rem;
	}

.con_left06:before {
left: 200px;
}

		/* 2カラム */
	.two-column {
		display: block!important;
	}
	.two-column div {
		width: 100%;

	}

	.l_header #logo {
		width: 44%;
	}

	.l_header ul {
		margin: 7% 0;
		flex-direction: column;
		align-items: center;
	}

	.l_header a {
		padding: 15px;
	}

	.l_footer {
		margin-top: 20px;
	}

	.l_footer a {
		padding: 5px 10px;
		font-size: 0.7rem;
	}

	.kv {
		flex-direction: column;
	}

	.kv .kv_left, .kv .kv_right {
		width: 90%;
		height: auto;
		padding: 10px 5% 0;
		line-height: 2;
	}

	.kv .kv_center {
		width: 90%;
		margin: 30px auto;
		font-size: 1.3rem;
	}
	.kv_1 .kv_center {
		width: 90%;
		margin: 30px auto;
		font-size: 1.3rem;
	}
	.sns a {
		width: 20%;
		display: block;
	}

	.sns a img {
		width: 100%;
	}

	.title {
		margin-bottom: 20px;
		font-size: 1.1rem;
		font-weight: 600;
	}

	.news .release_title {
		margin-bottom: 10px;
		padding: 10px 16px;
		font-size: 1.0rem;
	}
	.news .release_title span {
		font-size: 0.8rem;
	}

	.news .sl_first .store, .list li {
		width: 48%;
		margin: 0 1% 28px;
	}

	.store .div {
		font-size: 0.7rem;
	}
	.list li .label {
		position: absolute;
			border-width: 0 70px 50px 0;
	}
	.list li .label > span {
		font-size: 12px;
		width: 66px;
		padding: 10px 4px 0 0;
	}
	.news ul.release li {
		width: 100%;
	}

	.news ul.release li h3 {
		margin-top: 0;
		padding: 5px 16px;
	}

	ul.release li {
		width: 100%;
		margin: 0 1% 10px;
	}

	ul.release li .date {
		font-size: 13px;
	}

	ul.release li .info {
		font-size: 0.8rem;
	}

	.timetable-thumb {
		margin-bottom: 50px;
	}

	.about {
		width: auto;
		margin: 50px 0 0;
	}

	.about .contact {
		width: 100%;
	}

	.about .caution {
		margin: 50px 16px 0;
		font-size: 0.6rem;
	}

	.access {
		margin: 30px auto 0!important;
	}

	.access .box {
		width: 100%;
		margin: 0 0 40px;
		flex-direction: column;
	}

	.access .box .img {
		margin-right: 0;
		padding: 10px;
		justify-content: center;
	}

	.access .box .txt {
		font-size: 0.9rem;
	}

	.access .box .txt h2 {
		margin-bottom: 5px;
		font-size: 1.0rem;
	}

	iframe {
		height: 300px;
	}

	.about h2 {
		font-size: 1.1rem;
		margin-bottom: 5px;
	}

	.about .txt {
		width: 90%;
		margin: 0 auto 25px;
		font-size: 0.9rem;
	}

	.event .txt {
		width: 100%;
	}

	.event .timetable {
		width: 100%;
		font-size: 0.8rem;
	}

	.event .list 

	.event .info {
		word-break: break-all;
	}

	.event .place {
		font-size: 0.7rem;
	}

	.event .release .second {
		letter-spacing: 0;
	}

	.event ul.release li h3 {
		font-size: 14px;
	}








	.faq {
		width: auto;
		margin: 30px auto 0;
	}

	.faq .box {
		margin-bottom: 20px;
		font-size: 0.9rem;
	}

	.faq_q, .faq_a {
		padding: 15px 20px;
	}

	.faq .box span {
		padding: 0 0px 0 15px;
	}




	.online .message {
		flex-direction: column;
	}
	.online .message .img-box {
		width: 80%;
		margin: 0 0 30px;
		order: 2;
	}
	.online .message .txt {
		width: 100%;
		margin: 0 0 30px;
		text-align: left;
		line-height: 2;
	}
	.online .message .txt .bold {
		margin: 10px 0;
		font-size: 1.4rem;
		line-height: 1.4;
		display: block;
	}
	.online .txt { text-align: left; }
	.online .sns {
		margin: 40px 0;
	}
	.online .sns .flex a {
		width: 12%;
	}
	.online .sns .flex a img {
		width: 45px;
		height: 45px;
	}
	.online .eveoffes {
		width: 100%;
		margin: 0 0 40px;
	}
	.online .eveoffes h3 {
		margin: 10px 0!important;
		font-size: 1.1rem!important;
	}





	#nav-drawer {
	  position: relative;
	}

	#nav-drawer #logo {
		margin-top: 50px;
	}

	#nav-drawer li {
		width: 55%;
		text-align: center;
		border-bottom: 0.5px solid #ccc;
	}

	#nav-drawer a {
		color: #000;
	}

	/*チェックボックス等は非表示に*/
	.nav-unshown {
	  display:none;
	}

	/*アイコンのスペース*/
	#nav-open {
		display: inline-block;
	  width: 30px;
	  height: 22px;
		vertical-align: middle;
		position: fixed;
		top: 20px;
	  right: 20px;
	  z-index: 9999;
	}

	/*ハンバーガーの形をCSSで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
	  position: absolute;
	  height: 3px;/*線の太さ*/
	  width: 25px;/*長さ*/
	  border-radius: 3px;
	  background: #555;
	  display: block;
	  content: '';
	  cursor: pointer;
	}
	#nav-open span:before {
	  bottom: -8px;
	}
	#nav-open span:after {
	  bottom: -16px;
	}

	/*閉じる用の薄黒箇所*/
	#nav-close {
	  display: none;
	  position: fixed;
	  z-index: 99;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: black;
	  opacity: 0;
	  transition: .3s ease-in-out;
	}

	/*メニューの中身*/
	#nav-content {
	  overflow: auto;
	  position: fixed;
	  top: 0;
	  left: 0;
	  z-index: 9999;
	  width: 80%;
	  max-width: 330px;/*最大幅（お好みで調整を）*/
	  height: 100%;
	  background: #fff;
	  transition: .3s ease-in-out;
	  -webkit-transform: translateX(-105%);
	  transform: translateX(-105%);
	}

	/*チェックがついたら表示させる*/
	#nav-input:checked ~ #nav-close {
	  display: block;
	  opacity: .5;
	}

	#nav-input:checked ~ #nav-content {
	  -webkit-transform: translateX(0%);
	  transform: translateX(0%);
	  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}

	.header-logo-menu{
		display: flex;
		display: -moz-flex;
		display: -o-flex;
		display: -webkit-flex;
		display: -ms-flex;
		flex-direction: row;
		-moz-flex-direction: row;
		-o-flex-direction: row;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
	}


.two-column div {
    padding: 0px;
}

.two-column div p {
    margin: 0;
    padding: 15 10;
}


}

.sns_share{
margin:10px 10px;
text-align:right;}

.share {
  position: relative;
  display: inline-block;
  padding: 0 30px;
  font-size: 0.8rem;
}
.share:before{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 23px;
  height: 1px;
  background-color: black;
  -webkit-transform: rotate(-120deg);
  transform: rotate(-120deg);
}
.share:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 23px;
  height: 1px;
  background-color: black;
  -webkit-transform: rotate(-60deg);
  transform: rotate(-60deg);
}
.share:before {
  left:0;
}
.share:after {
  right: 0;
}

.foo {
  width: 100px;
  height: 100px;
  animation: fluffy1 3s ease infinite;
}
 
@keyframes fluffy1 {
	0% { transform: translate(0, 0); }
	50% { transform: translate(0, -15px); }
	/* -20pxを変えることで上下の動く幅を変えられる */
	100% { transform: translate(0, 0); }
}

/*タイムテーブル*/
.timetable p{
text-align: right;
    max-width: 1000px;
    font-size: 1rem;
    font-weight: 600;


}
.timetable p a{display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1em 2em;
    width: 300px;
    color: #333;
    font-size: 1rem;
    font-weight: 700;
    margin: 0 auto;
    margin-right: 0px;}
.timetable p a:before{
content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10px;
    border-color: transparent transparent transparent #333;
 }

.card_txt{margin: 0 auto;
    width: 70%;
font-size: 1rem;}

.timetable img{
width:80%;}

@media screen and (max-width: 768px) {
.bookshop
{width:100%!important;}
.card_txt{
    width: 100%;}
.timetable img{
width:100%;}
}
