@charset "UTF-8";

/* 個別設定
  ############################################################################################# */
.wrap {
    width: auto;
    max-width: 1200px;
}

/* ========================================================================== */
.mv {
    padding:50px;
    text-align: center;
	background-color: #fff ;
    /*background-image: url(https://penguindrum-exhibition.com/imgs/bg_line.png);
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat;
    background-repeat: repeat;
    background: url("https://penguindrum-exhibition.com/assets/imgs/bg_line.png") top center repeat-x;*/
}

@media screen and (max-width: 754px) {
    .mv {
        padding: 0;
    }
}

/* ========================================================================== */
@media screen and (max-width: 754px) {
    #main article {
        background: url("../assets/imgs/bg-main_sp.png") top center repeat;
        /*margin-bottom: 50px;*/
        background-size: 100% auto;
    }
}

.intro {
    padding: 50px 0 60px 0;
    width: 100%;
    background: url("https://penguindrum-exhibition.com/assets/imgs/bg_line.png") top center repeat-x;
    color: #325873;
}

@media screen and (max-width: 754px) {
    .intro {
        padding: 4vw 0 0;
        background: url("https://penguindrum-exhibition.com/assets/imgs/bg_line_sp.png") top center repeat-x;
    }
}

.intro .wrap {
    max-width: 980px;
    text-align: center;
}

.intro .wrap h1 {
    margin: .2rem 0 0;
    font-weight: 600;
    font-size: .24rem;
    letter-spacing: 0.05em;
    line-height: 1.8;
}

.intro .wrap p {
    margin: .2rem 0 0;
    font-size: .17rem;
    font-weight: 500;
    letter-spacing: 0.08em;
    line-height: 2;
}

@media screen and (max-width: 754px) {
    .intro .wrap h1 {
        font-size: .24rem;
    }

    .intro .wrap p {
        margin: 1.6470588235vw 0 0;
        font-size: 3.2vw;
        line-height: 2.0526315789;
    }
}

.intro .contact {
    background-color: #3b627e;
    color: #eee6d7;
    margin: 30px auto 0 auto;
    max-width: 550px;
    padding: 20px 50px 30px 50px;
    font-size: .15rem;
    letter-spacing: 0.06em;
    line-height: 1.8;
}

.intro .txtbold {
    border: 1px solid #3b627e;
    color: #3b627e;
    margin: 30px auto 0 auto;
    max-width: 550px;
    padding: 20px 50px 20px 50px;
    line-height: 1.8;
    text-align: center;
    font-size: .17rem;
    font-weight: 500;
    letter-spacing: 0.08em;
}

@media screen and (max-width: 754px) {
    .intro .contact {
        margin: 18px auto;
        padding: 20px 30px 20px 30px;
    }

    .intro .txtbold {
        margin: 18px auto;
        padding: 20px 30px 20px 30px;
    }
}

@media screen and (max-width: 550px) {
    .intro .contact {
        margin: 18px;
    }

    .intro .txtbold {
        margin: 18px;
    }
}

.intro .contact .ttl {
    font-size: .19rem;
    text-align: center;
    border-bottom: 1px solid #eee6d7;
    line-height: .50rem;
    margin-bottom: 25px;
    letter-spacing: 0.02em;
}

.intro .contact .small {
    font-size: .12rem;
}

@media screen and (max-width: 754px) {
    .intro .contact .ttl {
        font-size: .20rem;
        line-height: .35rem;
        padding-bottom: 15px;
        margin-bottom: 20px;
    }

    .intro .contact .small {
        font-size: .13rem;
    }
}

.intro-line {
    width: 100%;
    background: url("https://penguindrum-exhibition.com/assets/imgs/border.gif") top center repeat-x;
    height: 10px;
}

.top_article{
	    background: url(../assets/imgs/bg.png) top center repeat;
	    /* background-size: 100% auto; */
	    padding-bottom: 50px;
	padding-top: 50px;
}
@media screen and (max-width: 754px) {
	.top_article .wrap{
		width: 95%;
		padding-bottom: 0;
	}
    
    .top_article{
        padding-top: 25px;
        padding-bottom: 0;
    }
}
.top_article .top_title{
	width: 100%;
	padding-top: 60px;
	text-align: center;
}

.top_leadtext{
	text-align: center;
	margin:60px auto;
	font-size: 20px;
	font-weight:bold;
	line-height: 2.5em;
	color:#fff;
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
}
@media screen and (max-width: 754px){
	.top_leadtext{
		width:95%;
		margin:0 auto 30px;
		font-size: 16px;
	line-height: 2em;		
	}
}
.top_leadimage{
	text-align: center;
	margin:60px auto;
	max-width:111px;
	width:100%;
}
@media screen and (max-width: 754px){
	.top_leadimage{
		margin:0px auto;
	}
	.top_leadimage img{
		width:90%;
	}
}
/* ========================================================================== */
.newsTwitter {
    width: 100%;
}

@media screen and (max-width: 754px) {
    .newsTwitter {
        /*margin: 7.5vw 0 5vw 0;*/
        /*margin: 0 0 5vw 0;
        padding: 50px 0 60px 0;*/
    }
}

.newsTwitter .inner {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner {
        display: block;
        width:100%;
        margin: auto;
    }
}

.newsTwitter .inner section {
	/*width: 45.9591836735%;*/
	width: 50%;
	margin: 0 auto;
	padding: 5px;
}
.newsTwitter .inner section .title {
    /*height: 0.53rem;
    line-height: 1px;*/
    display: inline;
    position: absolute;
    left: 60px;
}
.newsTwitter .inner section .title img {
    height: 55px;
}
@media screen and (max-width: 754px) {
    .newsTwitter .inner section {
        width: 100%;
        padding: 0;
    }
    
    .newsTwitter .inner section .title {
        top: -3%;
        left: 9%;
    }
}

.newsTwitter .inner section .box-container_before{
	background-image: url(../assets/imgs/info_image_01.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
	height: 76px;
    background-position: bottom;
}
@media screen and (max-width: 754px) {
	.newsTwitter .inner section .box-container_before{
		height: 8vh;
	}
}
.newsTwitter .inner section .box-container_after{
	background-image: url(../assets/imgs/info_image_02.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 84px;
}
.newsTwitter .inner section .box-container_after2{
	background-image: url(../assets/imgs/info_image_02_2.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 84px;
}
@media screen and (max-width: 754px) {
	.newsTwitter .inner section .box-container_after,
	.newsTwitter .inner section .box-container_after2{
		height: 10vh;
	}
}
.newsTwitter .inner section .box_container{
	background-image: url("../assets/imgs/info_image_03.png");
	background-repeat: repeat-y;
	background-position: center;
	    background-size: 100% auto;
}
@media screen and (max-width: 754px){
	.newsTwitter .inner section .box_container{
	    background-size: contain;
}
}



/*.newsTwitter .inner section .box_container::before{
content: '';
    background-image: url(../assets/imgs/info_image_01.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    display: block;
    box-sizing: border-box;
    width: 534px;
    height:50px;
    top: -5%;
    position: absolute;
	left: 50%;
	transform: translate(-50%,-70%);
}

.newsTwitter .inner section .box_container::after{
    content: '';
    background-image: url("../assets/imgs/info_image_02.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    display: block;
    box-sizing: border-box;
    width: 534px;
    height:100px;
    bottom: -5%;
    position: absolute;
	left: 50%;
	transform: translate(-50%,84%);
}
*/



.newsTwitter .inner section .box {
    box-sizing: border-box;
    /*height: 2.6rem;
    height: 3rem;*/
    top: 12%;
    position: relative;
    width: 80%;
    margin: 0 auto;
}

.boxInner {
    display: block;
    margin: 0 auto;
    height: 2rem;
}
@media screen and (max-width: 754px){
	.boxInner {
    display: block;
    margin: 0rem 0.23rem 0rem;
    height: 2rem;
    /* padding: 2em!important; */
    }

    .newsTwitter .inner section .box {
        width: 90%;
    }
}

.newsTwitter .inner section.news .boxInner {
    overflow: auto;
}
.newsTwitter .inner section.news .boxInner,
.newsTwitter .inner section.twitter .boxInner {
    overflow: auto;
    background-color: #fff;
    padding: 2em;
    border-radius: 10px;
    /* width: 84%; */
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section .box {
        /*height: 69.4117647059vw;*/
    }
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.twitter {
        /*margin: 7.6470588235vw 0 0;*/
    }
}

.newsTwitter .inner section.twitter .timeline {
    /*margin: .30rem;*/
    max-height: 2rem;
    /*overflow-y: scroll;*/
    /*overflow: auto !important;*/
    position: relative;
    -webkit-overflow-scrolling: touch !important;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.twitter .timeline {
        margin: 3vw;
        max-height: 2.2rem;
        /*max-height: 45vw;*/
    }
}

.newsTwitter .inner section.twitter .timeline iframe {
    position: absolute;
    display: block;
    max-width: 100%;
    overflow: hidden;
    clear: both;
    margin-left: auto;
    margin-right: auto;
}

.newsTwitter .inner section.twitter a.twlink {
    display: none;
}

@media all and (-ms-high-contrast:none) {

    *::-ms-backdrop,
    .newsTwitter .inner section.twitter a.twlink {
        font-size: 16px;
        margin: 0 auto;
        text-align: center;
        width: 100%;
        padding: 30px 0;
        display: block;
        color: #840002;
        text-decoration: underline;
    }

    *::-ms-backdrop,
    .newsTwitter .inner section.twitter a.twlink:hover {
        text-decoration: none;
    }
}

.newsTwitter .inner section.news,
.newsTwitter .inner section.twitter {
    position: relative;
    display: inline-block;
}

/*.newsTwitter .inner section.news::before {
    content: '';
    background: url(https://penguindrum-exhibition.com/assets/imgs/news_ttl.png) no-repeat;
    background-size: contain;
    top: -34px;
    left: 0;
    position: absolute;
    width: 159px;
    height: 24px;
}
.newsTwitter .inner section.news::after {
    content: '';
    background: url(https://penguindrum-exhibition.com/assets/imgs/news_img.png) no-repeat;
    background-size: contain;
    bottom: 5px;
    left: 20px;
    position: absolute;
    width: 69px;
    height: 61px;
}

.newsTwitter .inner section.twitter::before {
    content: '';
    background-size: contain;
    top: -34px;
    left: 0;
    position: absolute;
    width: 255px;
    height: 24px;
}
.newsTwitter .inner section.twitter::after {
    content: '';
    background: url(https://penguindrum-exhibition.com/assets/imgs/twitter_img.png) no-repeat;
    background-size: contain;
    bottom: 5px;
    left: 5px;
    position: absolute;
    width: 82px;
    height: 63px;
}
*/
@media screen and (max-width: 754px) {
    .newsTwitter .inner section.news {
        margin-bottom: 20px;
    }
    .newsTwitter .inner section.news {
        margin-top: 50px;
    }
    .newsTwitter .inner section.twitter {
        margin-bottom: 20px;
    }
}

.newsTwitter .inner section.news dl {
    /*padding: .36rem;*/
    color: #000;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.news dl {
        /*padding: 5vw;*/
    }
}

.newsTwitter .inner section.news dl dt {
    font-size: .13rem;
    line-height: 1;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.news dl dt {
        font-size: 3.2941176471vw;
    }
}

.newsTwitter .inner section.news dl dd {
    margin: .07rem 0 0;
    font-size: .16rem;
    line-height: 1.4;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.news dl dd {
        margin: 1.5vw 0 0;
        font-size: 3.3vw;
    }
}

.newsTwitter .inner section.news dl dd + dt {
    margin: .17rem 0 0;
}

@media screen and (max-width: 754px) {
    .newsTwitter .inner section.news dl dd + dt {
        margin: 5.1764705882vw 0 0;
    }
}

/*# sourceMappingURL=unique.css.map */


/* navigation bar */
.header {
    background-color:#e53572;
    /*background: -moz-linear-gradient(top, #28506b, #1a214e);
    background: -webkit-linear-gradient(top, #28506b, #1a214e);
    background: linear-gradient(to bottom, #28506b, #1a214e);
    border-bottom: 3px solid #bd9d65;*/
}

.menu {
    margin-left: auto;
    margin-right: auto;
    display: block;
    z-index: 9999;
    position: relative;
    font-size: 0;
}

.logo_img {
    left: 10px;
    position: absolute;
    max-width: 110px;
}

ul.list {
    padding: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: auto;
    margin-right: auto;
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-end;
    /*max-width: 1100px;*/
    max-width: 980px;
    font-size: 0;
}

ul.list > li {
    width: 20%;
    text-align: center;
    position: relative;
}

/*ul.list > li::before {
    content: '';
    width: 1px;
    background-color: #95d8f3;
    position: absolute;
    left: 0;
    top: 28%;
    height: 36px;
}*/

@media screen and (max-width: 1100px) {
    .menu {
        height: auto;
        text-align: center;
    }

    .logo_img {
        left: 0;
        position: inherit;
        padding-top: 5px;
        display: inline-block;
    }

    ul.list {
        padding-left: 1em;
        width: 90%;
    }
}

/*@media screen and (max-width: 768px){
		ul.list > li::before{
			display: none;
		}}*/

/*ul.list > li:last-child::after {
    content: '';
    width: 1px;
    background-color: #95d8f3;
    position: absolute;
    right: 0;
    top: 28%;
    height: 36px;
}*/

/*@media screen and (max-width: 768px){
	ul.list > li:last-child::after{
			display: none;
		}}*/

ul.list > li > a {
    color: #0a324f;
}

ul.list > li > a:visited {
    color: #0a324f;
}

ul.list > li > a:hover {
    color: #0a324f;
    background-color: #0a324f;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}

ul.list > li > a.comming-decorate:hover::before {
    content: none;
}



/*NEWハンバーガーメニュー*/

/*ヘッダーまわりはサイトに合わせて調整してください*/
header.header02 {
    padding: 10px;
    background-image: url(https://penguindrum-exhibition.com/img/common/gnav_bg_sp.png);
    position: fixed;
    top: 0;
    z-index: 999;
    /*border-bottom-right-radius: 10px;*/
}

#nav-drawer {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

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

/*アイコンのスペース*/
#nav-open {
    display: inline-block;
    width: 30px;
    height: 19px;
    vertical-align: middle;
    position: absolute;
    right: 10px;
    bottom:-6px;
}

/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span,
#nav-open:before,
#nav-open:after {
    position: absolute;
    height: 3px;
    /*線の太さ*/
    width: 25px;
    /*長さ*/
    border-radius: 3px;
    background: #fff;
    display: block;
    content: '';
    cursor: pointer;
    z-index: 999999;
        transition: .2s;
}

#nav-open:before {
    bottom: 8px;
}

#nav-open:after {
    bottom: 0px;
}

#nav-input:checked ~ #nav-open::before {
  transform: translate3D(0, -50%, 0) rotate(135deg);
    bottom: 6px;
}

#nav-input:checked ~ #nav-open::after {
  transform: translate3D(0, -50%, 0) rotate(45deg);
    bottom: 6px;
}
#nav-input:checked ~#nav-open span{
  opacity: 0;
}


/*閉じる用の薄黒カバー*/
#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: 90%;
    /*右側に隙間を作る（閉じるカバーを表示）*/
    /*max-width: 330px;最大幅（調整してください）*/
    height: 100%;
    transition: .3s ease-in-out;
    /*滑らかに表示*/
    -webkit-transform: translateX(120%);
    transform: translateX(120%);
    /*左に隠しておく*/
    background: #e53572;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
    display: block;
    /*カバーを表示*/
    opacity: .5;
}

#nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(11%);
    transform: translateX(11%);
    /*中身を表示（右へスライド）*/
    box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
}

.menu02 ul.list {
    margin-top: 0px;
    margin-bottom: 0px;
    margin-left: auto;
    margin-right: auto;
    height: 80%;
    list-style: none;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    z-index: 9999;
    width: 300px;
    text-align: center;

}

.menu02 ul.list > li {
    display: block;
    border-style: none;
    text-align: center;
    width: 100%;

}

.line-decorate {
    margin: 0 auto;
    width: 20%;
    border-top-style: solid;
    border-width: 1px;
    border-color: #999999;

}

.menu02 ul.list > li > a:hover {
    color: #0a324f;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    position: relative;
}

.menu02 ul.list > li > a:visited {
    color: #0a324f;
    /*color: rgb(51, 51, 51);*/
}

.menu02 ul.list > li > a {
    color: #0a324f;
}

.menu02 ul.list > li:last-of-type {
    border-right-style: none;
}

.menu02 {
    margin-left: auto;
    margin-right: auto;
    height: 100%;
    display: block;
    z-index: 9999999;
    position: relative;
    background-size: cover;
    width: 100%;
}

.menu02 .logo_img {
    width: 100%;
    padding-top: 5px;
    text-align: center;
}

#nav-drawer .logo {
    width: 100%;
    text-align: right;
    padding:15px 60px 14px;
    z-index: 99999;
}

#nav-drawer .logo img {
    width: 84px;
    text-align: center;
    z-index: 9999999;
    position: fixed;
    right:50px;
    top: 14px;
}

.harf {
    display: flex;
    /*justify-content: center;
	align-items: center;*/
}

.harf div {
    width: 50%;
}

.harf div .img {
    margin: 50px 0 0 0;
}

.harf p {
    justify-content: flex-end;
}

.harf p.img {
    margin-left: auto;
}

.picharf {
    width: 50%;
    margin: 20px 0;
    /*display: flex;*/
}
.indent {
    text-indent: -1em;
    padding-left: 1em!important;
    display: grid;
    box-sizing: border-box;
}

@media screen and (max-width:754px) {
    .menu {
        display: none;
    }

    .menu02 ul.list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    flex-direction: column;
    height: auto;
    padding-top: 50px;
    align-content: flex-start;
    }

    .menu02 ul.list > li {
        height: inherit;
    }
    .harf {
        display: block;
    }

    .harf div {
        width: 100%;
    }

    .harf div .img {
        margin: 0 auto;
        padding: 0 20px;
        text-align: center;
    }

    .harf p.img {
        text-align: center;
    }
    .picharf {
        width: 100%;
    }
}

@media screen and (min-width:754px) {
    #nav-drawer {
        display: none;
    }
}

.contents {
	/*padding-top:50px;*/
	padding-top:40px;
	max-width: 980px;
	margin: 0 auto 30px;
	position: relative;
	font-family:
        "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	background-color: #fff;
	background-position: bottom left;
	border-radius: 10px;
}




.ttlhead {
    font-size: 30px;
    text-align: center;
    color: #254665;
    letter-spacing: 0.2em;
    padding: 50px 0;
    position: relative;
}

.ttlhead .ttllogo {
    position: absolute;
    width: 860px;
    display: block;
    text-align: left;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}

.ttlhead .ttllogo img {
    height: 135px;
}

@media screen and (max-width:1000px) {
    .ttlhead .ttllogo {
        left: 56%;
    }
}

@media screen and (max-width:754px) {
    .ttlhead .ttllogo {
        display: none;
    }
    .contents{
        /*margin:0 10px 70px;*/
        margin:0 10px;
		background-size: 60% auto;
        padding-top: 5px;
    }
    .header{
        position: fixed;
        width:100%;
        z-index: 999;
        height:48px;
    }
}

.ttlhead p {
    position: relative;
    display: inline-block;
}

.ttlhead p:before {
    content: "";
    width: 150px;
    height: 1px;
    background-color: #254665;
    position: absolute;
    top: 50%;
    left: -170px;
    z-index: 99;
}

.ttlhead p:after {
    content: "";
    width: 150px;
    height: 1px;
    background-color: #254665;
    position: absolute;
    top: 50%;
    right: -160px;
    z-index: 99;
}

.nav ul {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    /*max-width: 640px;*/
    max-width: 840px;
    margin: 30px auto 30px auto;
}
.nav ul li.orange {
    /*width: 300px;
    width: 270px;
    width: 32%;*/
    width: 24%;
    background-color:#f18f44;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0.2em;
    text-align: center;
    position: relative;
}
.nav ul li.green {
    width: 300px;
    background-color:#01b2a8;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0.2em;
    text-align: center;
}
.nav ul li span.end {
    width: 100%;
    background: rgba(0, 0, 0, 0.7);
    position: absolute;
    top: 0;
    left: 0;
    font-size: 10px;
    line-height: 20px;
    letter-spacing: 2px;
    display: flex;
    justify-content: center;
    align-items: center;
    height:100%;
    cursor:pointer;
}

.nav ul li:hover {
    opacity: 0.8;
}

.nav ul li.none:hover {
    opacity: 1;
}

.nav ul li.none {
    opacity: 0.5;
}

.nav ul li p {
    margin: 3px;
    border: 1px solid #fff;
}

.nav ul li p a {
    padding: 15px;
    display: block;
}

.nav ul li p span {
    display: block;
}

.nav ul li p span.com {
    font-size: 10px;
}
@media screen and (max-width:754px) {
	.nav ul li p {
		line-height: inherit;
		font-size: 16px;
		margin: 2%;
	}
    .nav ul li span.end {
        line-height: 16px;
    }
    .nav ul {
        width: 100%;
        flex-wrap: wrap;
    }
    .nav ul li.orange {
        width: 46%;
    }
}

.cont {
    /*padding: 30px 70px 60px 70px;*/
    padding: 0px 70px 60px 70px;
    text-align: left;
    color: #000;
}

.cont h2 {
    font-size: 22px;
    background-color: #254665;
    padding: 15px;
    text-align: center;
    color: #fff;
    margin: 80px 0 40px 0;
}

.cont h2:first-child {
    margin: 30px 0 40px 0;
}

.cont h3 {
    /*margin: 30px 15px 0px 15px;*/
    margin: 50px 0px 30px 0;
    font-size: 24px;
    padding-bottom: 3px;
    letter-spacing: 0.05em;
    font-weight: normal;
	color:#e53572;
}

.cont h4 {
    margin: 40px 15px 0 15px;
    font-size: 20px;
}

.cont h4.coment {
    margin: 10px 15px 60px 15px;
    font-size: 18px;
    text-align: center;
    background-color: #254665;
    color: #fff;
    font-weight: normal;
    padding: 10px;
}

.cont .ttlspace:first-child {
    margin: 50px 0px 30px 0;
}
.cont .ttlspace {
    /*margin: 0px 0px 30px 0;
    font-size: 24px;
    padding: 15px 25px;
    letter-spacing: 0.05em;
    font-weight: bold;
    border-bottom: none;
    color: #e53572;
	position:relative;
	padding-left:5%;*/
    
    margin-top: 60px;
    font-size: 24px;
    /*padding: 5px 25px;*/
    font-weight: bold;
    border-bottom: none;
    color: #e53572;
    position: relative;
    /*padding-left: 5%;*/
    font-feature-settings: "palt";
    text-indent: 35px;
}
.cont .goodshead {
    margin-top: 60px;
    font-size: 22px;
    border-bottom: 1px solid #000000;
    padding-bottom: 5px;
    font-weight: bold;
    font-feature-settings: "palt";
}
.cont .goodsttl {
    /*margin: 0px 0px 30px 0;
    padding: 15px 25px;*/
    margin-top: 60px;
    font-size: 24px;
    /*padding: 5px 25px;*/
    /*letter-spacing: 0.05em;*/
    font-weight: bold;
    border-bottom: none;
    color: #e53572;
	position:relative;
	/*padding-left:5%;*/
    font-feature-settings: "palt";
    text-indent: 35px;
}
.cont .goodsttl::before {
    content: "";
    position: absolute;
    width: 25px;
    height: 25px;
    /*top: 50%;*/
    left: 0%;
    /*transform: translate(0%,-50%);*/
    background-image: url(../assets/imgs/about_ttl_img.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.cont .goodsttl2 {
    font-size: 24px;
    font-weight: bold;
    border-bottom: none;
    margin: 0;
    color: #e53572;
	position:relative;
	padding-left:5%;
    font-feature-settings: "palt";
}
.cont .goodsttl2::before {
    content: "";
    position: absolute;
    width: 25px;
    height: 25px;
    /*top: 50%;*/
    left: 0%;
    /*transform: translate(0%,-50%);*/
    background-image: url(../assets/imgs/about_ttl_img.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

.cont .goodsimg {
    text-align: center;
    width: 100%;
    margin: 0 0 50px 0;
}
.cont .price {
    color: #e53572;
    font-size: 20px;
    margin: 5px 0;
}
.cont .description {
    font-size: 16px;
    line-height: 26px;
    margin: 0 0 15px 0;
}
.cont .boxlimit {
    border: 1px solid #000000;
    padding: 2px 10px;
    color: #000000;
    display: inline-block;
    margin: 0 0 0 10px;
}

@media screen and (max-width:754px){
	.cont .ttlspace {
		/*padding-left:7%;
        font-size: 18px;*/
        text-indent: 35px;
        font-size: 22px;
        /*padding: 0 0 0 1%;*/
        padding: 0;
        margin: 50px 2% 30px 2%!important;
	}
	.cont .goodsttl2 {
		/*padding-left:8%;
        font-size: 18px;*/
        
        /*text-indent: 12%;*/
        font-size: 22px;
        /*padding: 0 0 0 35px;*/
        padding-left: 0%;
        text-indent: 10%;
	}
    .cont .goodsttl {
        /*text-indent: 9%;*/
        font-size: 22px;
        /*padding: 0 0 0 1%;*/
        padding: 0;
    }
    .cont .goodsttl::before {
        top: 0;
        transform:none;
    }
}
.cont .ttlspace::before{
	content:"";
	position:absolute;
	width:25px;
	height:25px;
    top: 10%;
	/*top:50%;*/
	left:0%;
	/*transform:translate(0%,-50%);*/
	background-image: url("../assets/imgs/about_ttl_img.png");
	background-repeat: no-repeat;
	background-size:contain;
	background-position: center;
}
.cont p {
    margin: 10px 0;
    font-size: 18px;
    line-height: 32px;
    display: block;
}
.cont p span {
    font-size: 16px;
}
@media screen and (max-width:754px) {
	.cont p {
		margin: 10px 2%;
    	font-size: 16px;
		line-height: 30px;
	}
    .cont p span {
        font-size: 14px;
    }
    .cont .ttlspace {/*
        margin: 20px 0px 30px 0;
        text-indent: 9%;
        font-size: 22px;
        padding: 0 0 0 1%;*/
        /*margin: 50px 2% 30px 2%!important;*/
    }
}

.cont .caption {
    font-size: 14px;
    display: block;
    line-height: 26px;
    margin-top: 10px;
}

.cont dl {
    margin: 0;
    line-height: 35px;
    display: block;
    letter-spacing: 0.02em;
}

.cont dl.table02 {
    margin-bottom: 50px;
}
@media screen and (max-width: 754px){
	.cont dl.table02 {
    margin-top: 0px;
		margin-bottom: 25px;}
}
.cont .table02 p {
	margin: 0;
	line-height: 24px;
	font-size: 14px;
    /*display: inline-block;*/
    display: block;
}
.cont .table02 .explan li{
	margin: 0;
	line-height: 24px;
	font-size: 14px;
    display: block;
    text-indent: -1em;
    padding-left: 1em;
}

.cont dl span {
    font-size: 16px;
}
@media screen and (max-width:754px) {
	.cont dl span {
		font-size: 14px;
	}
    .cont .table02 {
        margin: 30px 2% 30px 2%;
    }
}

.waku01 {
    border: 1px solid #254665;
    margin: 15px;
}

.waku02 {
    border: 1px solid #254665;
    margin: 5px;
    padding: 5px;
}

.waku03 {
    background-color: #3b627e;
    color: #eee6d7;
    margin: 20px auto 20px auto;
    padding: 5px 20px;
    font-size: .15rem;
    letter-spacing: 0.06em;
    line-height: 1.8;
    max-width: 940px;
    text-align: left;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
}

.waku03 p {
    margin: 15px;
    font-size: 18px;
    line-height: 32px;
    display: block;
}

.cont dt {
    float: left;
    font-size: 18px;
}

.cont dt::after {
    content: "";
}

.cont dd {
    margin: 0;
    padding: 0;
    font-size: 18px;
}

.cont .table01 {
    margin-bottom: 30px;
    line-height: 32px;
    display: inline-block;
}

.cont .table01 dd {
    margin-left: 3em;
}

.cont .table02 dd {
    margin-left: 5em;
}

@media screen and (max-width:754px) {
    .ttlhead {
        font-size: 24px;
        padding: 30px 0;
    }

    .nav ul {
        /*margin: 0 0 10px;*/
		margin: 10px auto 0px auto;
    }

    .nav ul li {
        width: 46%;
        margin: 2%;
    }

    .cont {
        padding: 0px 15px 15px;
    }
	.cont dl {
		padding: 0 2%;
	}
    .cont dt {
        float: inherit;
        margin: 20px 0 10px 0;
        line-height: 1.7em;
		border-bottom: 1px solid #000;
		font-size: 16px;
    }

    .cont .table01 dd,
    .cont .table02 dd {
        margin-left: 0;
        line-height: 1.7em;
    	font-size: 14px;
    }

    .cont h3 {
        /*font-size: 22px;*/
		font-size: 24px;
		color: #e53572;
		border-bottom: none;
		padding: 10px 15px 10px 0;
		margin: 30px 2% 30px 2%;
		
    }

    .cont h4 {
        font-size: 16px;
    }

    .ttlhead p:before {
        width: 100px;
        left: -120px;
    }

    .ttlhead p:after {
        width: 100px;
        right: -120px;
    }
}

.goodsframe {
    border: 1px solid #002c49;
    background-color: #d9e7f3;
    padding: 0 30px 10px 30px;
}

.cont ul.note {
    font-size: 14px;
    padding-bottom: 3px;
    margin: 25px 15px 0 15px;
    line-height: 26px;
    font-feature-settings: normal;
}

.cont ul.note li {
    text-align: left;
    padding-left: 1em;
    text-indent: -1em;
}

.cont ul.note li::before {
    content: "・";
}

.limited {
	background-color: #d7f3f1;
    width: 94%;
    padding: 5px 3% 30px 3%;
}
.limited h3 {
	margin: 30px 15px 30px 15px;
}
.boxall .item {
    display: flex;
    flex-wrap: wrap;
    color: #000;
    font-weight: bold;
}
.boxall .item p {
	margin: 15px;
}

.boxall .box01 {
    width: 50%;
    margin-bottom: 20px;
}

.boxall .box02 {
    width: 100%;
    margin-bottom: 20px;
}

.boxall .box01,
.boxall .box02 {
	position: relative;
}
.boxall .box01 .icon,
.boxall .box02 .icon {
	position: absolute;
	top: 0;
	left: 0;
}

.boxall .txt01 span {
    font-size: 14px;
}

.boxall .txt02 {
    font-size: 12px;
    line-height: 20px;
}

.boxall .txt02 .red {
    color: #A50002;
}

.boxall .box01 .mimg,
.boxall .box02 .mimg {
	border: 1px solid #01b2a8;
    padding: 1px;
}
.boxall .note {
    margin: 25px 15px 0 15px;
    line-height: 24px;
}

.goodstxt {
	font-feature-settings: normal;
	-moz-font-feature-settings: "normal";
	-o-font-feature-settings: "normal";
}
.goodstxt p {
	margin: 3px 0;
}
.goodstxt .kome {
	margin: 5px 0;
}
.goodstxt .note {
	border-top: 1px solid #666;
	margin-top: 50px;
	padding: 10px;
}

.mainttl {
    text-align: center;
    font-size: 22px !important;
    line-height: 40px !important;
    font-weight: bold;
}

.map {
    text-align: center;
}

@media screen and (max-width: 1000px) and (min-width: 755px) {
    .boxall .box01 {
        width: 46%;
    }
}

@media screen and (max-width: 754px) {
    .boxall .box01 {
        width: 100%;
    }
}




/*  下層追加  */

.ttl_cont{
    margin:0px auto;
	/*max-width: 700px;*/
}
@media screen and (max-width: 754px) {
    .ttl_cont{
        /*margin:10px auto 30px;*/
        margin:30px auto 20px;
    }
    .ttl_cont img{
		width: 30%;
    }
}
.txt_right{
    text-align: right;
}
ul.li_disc{
    list-style: none;
    margin: 30px 0;
    padding: 0;
    font-size: 18px;
    line-height: 1.5em; 
}
ul.li_disc span{
    font-size: 16px;
}
@media screen and (max-width:754px) {
	ul.li_disc{
		margin: 30px 2%;
    	font-size: 16px;
	}
	ul.li_disc span{
		font-size: 14px;
	}
}
ul.li_disc li{
    position:relative;
    padding: 0 0 0 20px;
    margin:15px 0 0;
}
ul.li_disc li::before {
    content:  "";
    width:  15px;
    height:  15px;
    display:  inline-block;
    background-color: #01B3A9;
    border-radius:  50%;
    position:  absolute;
    top: 5px;
    left:0;
}
ul.kome{
    list-style: none;
    margin: 30px 0;
    padding: 0;
}
@media screen and (max-width:754px) {
	ul.kome{
		margin: 30px 2%;
	}
}
ul.kome li{
    position:relative;
    padding: 0 0 0 15px ;
    margin:5px 0 0;
    font-size: 14px;
    line-height: 1.5em;
    
}
ul.kome li::before {
    content:  "※";
    position:  absolute;
    top: 0;
    left:0px;
}

@media screen and (max-width: 754px) {
    .txt_right{
        text-align: center;
    }
}

a.a_link:hover, a.a_link:active {
    opacity: .6;
}
a.a_link, a.a_link:visited {
    color:#e53572;
    display: inline;
    padding:2px 5px 3px;
    border-radius: 3px;
}

@media screen and (max-width: 754px) {
    a.anchor {
		display: block;
		padding-top: 50px;
		margin-top: -50px;
	}
}

/*  special page  */
.menulist {
	margin: 50px 0 0;
	font-size: 20px;
	font-weight: bold;
    border: 5px solid #01b2a8;
    padding: 20px 35px;
}
.menulist ul li {
	position: relative;
}
.menulist ul li .icon {
	position: absolute;
	top: -5px;
	left: 20px;
}
.menulist .ttl {
	/*padding: 0 3%;*/
	margin-top: 20px;
    display: inline-block;
}
.menulist ul {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
.menulist > ul li {
	width: 50%;
	list-style: none;
	box-sizing: border-box;
	padding: 0 3%;
}
.menulist ul li p {
	line-height: inherit;
}
.menulist ul li .price {
	margin: 5px 0;
    display: inline-block;
}
.menulist ul li .stxt {
	font-size: 13px;
	line-height: 18px;
    display: inline-block;
}
.present {
	color: #01b2a8;
	border: 5px solid #01b2a8;
	padding: 20px 35px;
	font-size: 20px;
	line-height: 34px;
	background-color: #fff;
	margin: 50px 0;
}
.present.line {
    border: 1px solid #01b2a8;
    margin: 10px 0 30px 0;
}
.present .txtbk {
	color: #000;
}
.present small {
	font-size: 14px;
}
.present ul {
	font-size: 16px;
    padding: 0;
    margin: 0;
}
.present ul li {
    padding-left:1em;
    text-indent:-1em;
    margin: 0 1px;
}
.present ul li .tabletxt {
    display:flex;
    flex-wrap:wrap;
    
}
.present ul li .tabletxt p {
    display: inline-block;
    width: 150px;
    padding-left: 0;
    text-indent: 0;
    line-height: 16px;
}
.present strong {
	font-size: 24px;
}
.omikuji {
	background-color: rgba(160,0,0,0.9);
	padding: 20px 30px;
	color: #fff;
	border-radius: 10px;
}
.omikuji .ttl {
	padding: 0;
}
.border {
    display: block;
    height: 1px;
    background-color: #000;
    margin-top: 30px;
    margin-bottom: 50px;
}
.aborder {
    border-bottom: 1px solid #e53572;
    padding: 0 0 3px!important;
    border-radius: 0!important;
}

.cont .frame {
    border: 3px solid #e53572;
    padding: 3px;
    margin: 20px 0 30px 0;
}
.cont .line {
    border: 1px solid #e53572;
    padding: 25px 30px 15px 30px;
}
.cont .line .txt {
    line-height: 26px;
}

@media screen and (max-width: 754px) {
    .menulist > ul li {
        width: 100%;
    }
    .present {
        padding: 15px 20px;
    }
    .present ul li .tabletxt p {
        width: 130px;
    }
    .present h3.txtbk {
        color: #fff;
    }
    .border {
        margin-bottom: 30px;
    }
    .cont .line {
        padding: 20px 20px 15px 20px;
    }
}

#about #main{
	    background: url(../assets/imgs/bg02.png) top center repeat-y;
    background-size: 100% auto;
}
@media screen and (max-width: 754px){
	#about #main{
		padding-bottom:1em;
}
}
#about #main .mv{
background-color:inherit;
}
@media screen and (max-width: 754px){
	#about .wrap{
	padding-top: 10px;}
	
	#about #footer .wrap{
	padding-top: 0px;}}

@media screen and (max-width: 754px){
#about .ttl_cont img {
    width: 90%;
}}

#about .cont .ttlspace_container{
	
}
@media screen and (max-width: 754px) {
	#about .cont .ttlspace_container{
		padding: 0 4%;
		/*margin-top:10%;*/
	}
}
#about .cont h3 {
    /*margin: 30px 15px 0px 15px;*/
    margin: 50px 0px 30px 0;
    font-size: 24px;
    letter-spacing: 0.05em;
	color:#e53572;
	position:relative;
	/*padding-left: 5%;*/
    padding-left: 0;
	font-weight: bold;
    text-indent: 35px;
}
#about .cont .twitter-cont h3::before{
	    content: "";
    position: absolute;
    width: 25px;
    height: 25px;
    top: 10%;
    /*top: 50%;*/
    left: 0%;
    /*transform: translate(0%,-50%);*/
    background-image: url(../assets/imgs/about_twitter_icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#about .cont .info-cont h3::before{
	    content: "";
    position: absolute;
    width: 25px;
    height: 25px;
    top: 10%;
    /*top: 50%;*/
    left: 0%;
    /*transform: translate(0%,-50%);*/
    background-image: url(../assets/imgs/about_info_icon.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

@media screen and (max-width: 754px){
	#about .cont h3 {
        /*padding-left: 10%;*/
        margin: 5px 0px;
    }
    #about .cont .twitter-cont h3::before{
        top: 28%;
    }

    #about .cont .info-cont h3::before{
        top: 28%;
    }
}

/*ticket*/
#ticket #main{
	    background: url(../assets/imgs/bg02.png) top center repeat-y;
    background-size: 100% auto;
}
@media screen and (max-width: 754px){
	#ticket #main{
		padding-bottom:1em;
}
}

#ticket #main .mv{
background-color:inherit;
}

@media screen and (max-width: 754px){
	#ticket .wrap{
	padding-top: 10px;}
	
	#ticket #footer .wrap{
	padding-top: 0px;}}


@media screen and (max-width: 754px){
#ticket .ttl_cont img {
    width: 90%;
}}

@media screen and (max-width: 754px){
#ticket .ttl_cont img {
    width: 90%;
}}