@charset "UTF-8";













/****************************/
@media screen and (max-width: 1179px) {

	#conte09 .illu{
	    left: 8%;
	    top: -2%;
	}


}

@media screen and (max-width: 1023px) {

	.conte-otoku {
	    width: 600px;
	    display: table;
	    margin-left: auto;
	    margin-right: auto;
	}
	.i-no:before {
	    left: -30px;
	    top: -50px;
	}

	#conte06-1 .illu{
		position: absolute;
		top: -174px;
		right: -40px;
	}
	#indexCampaign section{
		display: table;
		margin: 0 auto;
		max-width: 480px;
	}
	section.inner-80per{
		max-width: 100%;
	}




	#chushaku .chu li,
	table.kaihi th,
	table.kaihi td{
		font-size: 10px;
	}
	table.kaihi small a, table.kaihi small {
	  font-size:8px;
	}
	.mono .indexFaq__a > a, .mono .indexFaq__a > p {
	  font-size: 12px;
	}
	#indexContact__info li dl{
		display: flex;
	}
	#indexContact__info li dl dt{
		margin-right: 8px;
	}


	.card-tokuten .grade {
	    margin:0 auto 15px;
	    padding: 0 12px;
	    display: table;
	}
	.card-tokuten .grade img {
    width: auto;
    height: 24px;
	}
	.card-tokuten .grade img + img{
		margin: 6px 0 0;
	}


}
@media screen and (max-width: 767px) {


	.mono dl,
	.mono ul,
	.mono span,.mono a,
	.mono div,.mono p,
	.mono h1,.mono h2,.mono h3,.mono h4,.mono h5,
	.mono li,
	.mono th,.mono td,.mono dd,.mono dt,
	.mono address{
	    font-size: 14px;
	}

	.conte-normal.bg-mono + .conte-normal {
	    padding-top: 50px;
	}
	.mono .conte-normal {
	    padding: 50px 20px;
	}
    #conte03.conte-normal {
        padding: 70px 20px 50px;
    }
	.mono .conte-bg {
	    padding:50px 20px;
	}
	.mono .conte-normal + .conte-normal {
	    padding-top: 0;
	}

	.mono .youtube-waku{
		margin-top: 32px;
	}
	.jidou a{
		font-size: 0.7rem;
		padding: 6px 18px 6px 12px;
    }
	.mono .arrow-l:before {
	    content: '';
	    position: absolute;
	    top: 9px;
	    right: 6px;
	    width: 8px;
	    height: 12px;
	    background: url(../img/arrow-l.png) no-repeat;
	    background-size: 60%;
	    z-index: 1;
	}
	.jidou ul.f-center li + li {
	    margin-left: 8px;
	}
	.jidou p + ul, .jidou p + p {
	    margin-top: 8px;
	}


	.mono .arrow-l.bottom:before{
		top: 16px;
	}

	.conte-otoku {
	    width: 100%;
	}
	.conte-otoku dl.c-flex {
	    display: block;
	}
	.conte-otoku dt, .conte-otoku dd {
	    width: 100%;
	}
	.conte-otoku dt {
	    margin-right: 0px;
	    padding-left: 90px;
	    padding-bottom: 8px;
	    line-height: 1.2;
	}
	.mono ul.tx-pop li{
		padding: 16px 8px;
	}


	.mono .tx-pop .title{
		font-size: 1rem;
	}
	.mono .tx-pop .tx-large {
	    font-size: 1.5rem;
	}

	.i-no:before {
        left: -8px;
        bottom: 85%;
        width: 80px;
        height: 80px;
    }
    .mono .title-l02,
	.mono h2,
	.mono h2.title,
	.mono .title{
		font-size: 1.2rem;
	}
	.mono .title-small{
		font-size: 1.4rem;
	}

	#conte03 h2 #no-01 {
	    width: 40px;
	    height: 40px;
	    position: relative;
	    bottom: -8px;
	    left: -6px;
	}
	.c-main small {
	    font-size: 1.1rem;
	}

	.mono .temprate {
	    background: url(../img/bg-02.jpg) no-repeat;
	    max-width: 100%;
	    display: table;
	    margin-right: auto;
	    margin-left: auto;
	    -webkit-box-shadow: 0px 0px 10px 0px rgba(45, 61, 41, 0.5);
	    -moz-box-shadow: 0px 0px 10px 0px rgba(45, 61, 41, 0.5);
	    box-shadow: 0px 0px 10px 0px rgba(45, 61, 41, 0.5);
	}
	.mono .temprate .tab li a {
	    font-size: 12px;
	    line-height: 1;
	    word-wrap: break-word;
	    padding: 16px 8px;
	}

	.mono .temprate .detail table {
	    width: 100%;
	    display: table;
	    margin-right: auto;
	    margin-left: auto;
	}
	.mono .temprate .detail table tr{
	    display:        flex;
	    flex-wrap:  wrap;
	}
	.mono .temprate .detail table th,
	.mono .temprate .detail table td {
	   width: 100%;
	   display: block;
	   padding: 16px 8px 4px;
	}
	.mono .temprate .detail table td{
		padding-top: 0px;
	}

	.mono .temprate .detail .bt {
	    margin-bottom: 8px;
	    margin-top: 8px;
	}
	.mono .c-head .c-flex.f-center {
	    justify-content: center;
	    flex-wrap:  wrap;
	    margin-bottom: 16px;
	    margin-top: 8px;
	}
	.mono .c-head .c-flex.f-center .bt{
		width: 80%;
	}

	.mono .temprate .sheat .tx{
		padding: 8px 8px;
		font-size: .7rem;
	}
	.icons table .tx {
	    line-height: 1.2;
	    font-size: .65rem;
	    min-height: 80px;
	    color: #fff;
	    font-weight: bold;
	    letter-spacing: 0;
	}
	.icons table td {
	    text-align: center;
	    border: solid 1px #fff;
	    padding: 8px 4px;
	    border-top: none;
	}
	.mono .temprate .detail{
	  background:#fff;
	  padding:32px 20px;
	}
	table.kaihi .title {
	    font-size: 0.8rem;
	    color: #fff;
	    font-weight: bold;
	    text-align: center;
	}
	.title.title-fc + p {
	    margin-bottom: 40px;
	}

	#conte07 .card01 li {
	    width: calc((100% - 24px) / 2);
	}

	#indexCampaign section{
		width: 100%;
		display: table;
		margin: 0 auto 0px;
	}
	#indexCampaign .honbun p{
		text-align: left;
	}


	#conte06-1 .illu{
		position: absolute;
		top: -174px;
		right: calc((100% - 180px) / 2);
	}
	#conte09 .illu{
	    left: -24px;
	    top: -7%;
	}


	#conte04 #bn-kaimaku .c-flex{
		display: block;
	}
	#conte04 #bn-kaimaku .c-flex li{
		margin-left: 0;
		margin-bottom: 16px;
	}
	#conte04 #bn-kaimaku .c-flex li + li{

	}

	#conte02 h2:after{
		content: '';
		display: block;
		background: url(../img/thanks01.png)no-repeat;
		background-size: contain;
		background-position: center;
		width: 80px;
		height: 80px;
		position: absolute;
		bottom: -10px;
		right: -5px;
	}

	.mono .sp{
		display: block;
	}
	.mono .pc{
		display: none;
	}
	.bn-25-26 p{
		text-align: left;
	}

	#conte02:after {
		  width: 76px;
		  height: 364px;
	    bottom: 0;
	    left: 10%;
	}
	#conte02:before {
	    width: 450px;
	    height: 230px;
	    right: -30%;
    	top: 0;
	}
	#conte03 .bg-dot{
		width: 420px;
	    height: 300px;
		left: -30%;
		top: -20%;
	}

	#conte07:after {
	    width: 475px;
	    height: 288px;
	    right: -50%;
	}
	#conte03:after{
		width: 150px;
		height: 600px;
		top: 0;
		right: -22%;
	}

	#conte03 h2 {
	    letter-spacing: 0;
	    font-size: 1.5rem;
	}

	.mono .button a{
		font-size:14px;
		line-height: 1;
	  display: block;
	  border-radius: 50px;
		padding: 8px 18px 8px 12px;
	}
	.mono .arrow-l:before,
	.mono .bg-white.arrow-l:before {
	    background-size: 60%;
	    right: 6px;
	    top: calc((100% - 8px) /2);
	}
	#conte02 section ul {
	    width: 100%;
	    display: block;
	}
	#conte02 section ul li{
		width: 100%;
	}
	#conte02 section ul li + li{
		margin-top: 12px;
	}
	.mono .indexJoin__acd-1, .mono .indexJoin__acd-2 {
	    margin: 0 0px;
	}
	.mono .indexJoin__acd-open {
	    padding: 0px 10px 30px;
	}
	.mono .indexJoin__acd-open.indexJoin__acd-mail,
	.mono .indexJoin__acd-open.indexJoin__acd-game{
	    padding: 30px 20px 30px;
	}
	.indexJoin__acd-1>p>span, .indexJoin__acd-2>p>span {
    font-size: 1.4rem;
	}
	.indexJoin__acd-2>p,
	.indexJoin__acd-1>p{
		text-indent: -2rem;
		padding-left: 2rem;
		padding-right: 10px;
	}
	.indexJoin__acd-1>p:before, 
	.indexJoin__acd-2>p:before{
    	right: 7px;
	}
	.indexJoin__acd-1>p:after, .indexJoin__acd-2>p:after{
		right: 13px;
	}
	.mono .indexJoin__gray {
	    padding: 20px 20px 30px 20px;
	}
	.mono .indexJoin__gray-1 {
    display: block;
	}
	.indexJoin__gray-1>div{
    width: 100%;
    padding-right: 0px;
	}
	.indexJoin__gray-1>figure {
	    width: 100%;
	    text-align: center;
	}
	.indexJoin__gray-1>div>p {
	    font-size: 16px;
	    font-weight: bold;
	    margin-bottom: 20px;
	}
	.mono .indexJoin__acd-mail li dt,
	.mono .indexJoin__acd-game li dt {
	    font-size: 18px;
	}
	.mono .indexJoin__acd-mail,
	.mono .indexJoin__acd-game{
		margin-top: -20px;
		padding-top: 20px;
	}
	.indexJoin__acd-open .bt{
		margin-bottom: 20px;
	}
	.indexJoin__gray>h3>span {
	    font-size: 2.5rem;
	}
	.mono .indexFaq__a {
	    padding: 20px 20px;
	}

	.howto ul{
		display: block;
		position: relative;
		padding: 90px 0px 15px;
		
	}
	.howto ul .customer{
		position: absolute;
		top: 10px;
		left: 10px;
		margin: 0;
	}
	.howto ul:before {
	    font-size: 2rem;
	    margin-right: 0px;
	    top: 25px;
	    left: 70px;
	    position: absolute;
	}


	.mono .bt.bt-strong a{
		font-size: 14px;
	}

	.mono .indexContact__text {
	    font-size: 14px;
	    text-align: left;
	    margin-bottom: 20px;
	    font-weight: normal;
	}
	.mono .indexContact__info dt, 
	.mono .indexContact__info dd{
	    font-size: 11px;
	}
	.indexContact__info li dl{
		display: flex;
		justify-content: center;
	}
	.indexContact__info li dl dt{
		margin-right: 8px;
	}

	.explanation .section + .section{
		margin-top: 30px;
	}

	.day-time td:nth-child(2), .day-time td:nth-child(1){
		font-size: 0.95rem;
	}
	#fc-ticket02 table.normal th,
	.day-time td{
		font-size: 10px;
	}
	#fc-ticket02 table .logo img {
	    max-width: 44px;
	    height: auto;
	}
	#fc-ticket02 table.normal th,
	#fc-ticket02  table.normal td{
		padding: 6px 4px;
	}

	.mono #fc-ticket02 .c-col03,
	.mono .c-col03{
		display: block;
	}
	.mono #fc-ticket02 .c-col03 .grade{
	width: 100%;

		}
	.mono #fc-ticket02 .c-col03 .grade + .grade{
		margin-top: 30px;
	}
	.mono #fc-ticket02 .c-col03 .title-mini{
		min-height: 1rem;
	}




	.card-col03 .card-tokuten{
		width: 100%;
	}
	.card-tokuten .tx{
		font-size: 10px;
		padding: 0 12px 12px;
	}
	.card-col03 .card-tokuten {
	    margin: 0 10px;
	}



	.card-tokuten .conte-title .title small{
		font-size: 9px;
		font-weight: normal;
	}
	.card-tokuten .conte-title .title{
		padding: 6px 4px;
		font-size: 10px;
	}

}
@media screen and (max-width: 374px) {

	.mono .title-middle{
		font-size: 14px;
		line-height: 1.2;
		font-weight: bold;
	}

	.mono .title-middle.no-bl::before{
		width: 24px;
		height: 24px;
	}
	.card-tokuten .tx .t-bold{
		font-size: 10px;
		margin-bottom: 6px;
	}

} 
@media screen and (max-width: 330px) {

    .mono .button a {
        font-size: 12px;
    }

} 
















