@charset "UTF-8";
/*!
 * ress.css • v3.0.0
 * MIT License
 * github.com/filipelinhares/ress
*/

/*--------------- 共通-----------------*/
.sp{
	display: block;
}
.pc{
	display: none;
}
.pt_10{
	    padding-top: 10vw;
}
.pb3{
	padding-bottom: 3vw;
}
.pb5{
	padding-bottom: 5vw;
}
.mt6{
	margin-top: 6vw!important;
}
.mt2{
	margin-top: 2vw!important;
}
.mb12 {
	margin-bottom: 12vw;
}
a {
	display: inline-block;
}
img{
    /* PCの右クリック禁止 */
    pointer-events: none;
    /* SPの長押し禁止 */
    -webkit-touch-callout:none;
    -webkit-user-select:none;
    -moz-touch-callout:none;
    -moz-user-select:none;
    user-select:none;
}

@media print {
    body { display: none }
}
@media screen and (min-width: 750px), print {
    .w-750 {
        max-width: 750px;
        margin: 0 auto;
    }
}

/*--------------- トップ -----------------*/
.specialcontents-top {
	padding: 0 4vw;
}
.sc-lead {
	padding: 6vw 0 2vw;
}
/*アコーディオン見た目*/
.accordion_area {
	margin: 0 auto;
    background-color: #008edd;
    margin-top: 5vw;
    border-radius: 2vw;
}
.point_inner {
    background-color: #ebebeb;
    padding: 4vw;
    border-radius: 0 0 2vw 2vw;
}

div.searchButtonnBlock button.btn.onActive {
    background: #313131;
    color: #fff;
    pointer-events: none;
}

.accordion_area.-genre .searchButtonnBlock {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.btn {
  border: none;
  outline: none;
  padding: 12px 16px;
  background-color: #f1f1f1;
  cursor: pointer;
	display: inline-block;
}

.accordion_area.-genre .btn {
	background-color: #fff;
	padding: 2vw;
	font-weight: bold;
	width: 48%;
	border-radius: 0.5vw;
	position: relative;
	box-shadow: 0 1vw 0 rgba(0, 0, 0, 0.1);
}
.accordion_area.-genre .btn:after {
	content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    border-radius: 0 0 0.5vw 0;
    border-bottom: 6vw solid #008edd;
    border-left: 6vw solid transparent;
}
.accordion_area.-genre .btn:nth-of-type(n+3) {
	margin-top: 2vw;
}
.accordion_area.-tag .btn {
	background-color: #fff;
	padding: 1vw 2vw;
	font-weight: bold;
	border-radius: 0.5vw;
	margin: 1vw 1vw 0 0;
}
.point_title_btn {
	width: 100%;
	padding: 2.6vw 1vw 3vw 1vw;
}
.point_title_btn> i,
.point_title_btn_open> i {
    position: absolute;
    top: 50%;
    right: 5vw;
    width: 5.33333vw;
    height: 5.33333vw;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
	border-radius: 50%;
	background: #fff;
}
.point_title_btn> i::before,
.point_title_btn> i::after,
.point_title_btn_open> i::before,
.point_title_btn_open> i::after {
	background: #008edd;
}

/*コンテンツリスト*/
.specialcontents-list {
	background: #ebf6fc;
	margin-top: 5vw;
	padding: 0vw 4vw 4vw;
}
.sc-list-h {
	font-size: 6vw;
	font-weight: bold;
	position: relative;
	padding-left: 3vw;
}
.sc-list-h::before {
        content: "";
        display: inline-block;
        width: 1vw;
        height: 7.1vw;
        background-color: #008edd;
        position: absolute;
        top: 2.1vw;
        left: -0;
        border-radius: 5vw;
    }
.sc-list-h::after {
    content: "";
    display: inline-block;
    width: 100%;
    height: 0.6vw;
    background-color: #008edd;
    position: absolute;
    bottom: -1.8vw;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.sc-list li {
	background: #fff;
	border-radius: 1vw;
	width: 48%;
}
.sc-img img{
		border-radius: 1vw 1vw 0 0;
	}
.sc-list .event-category {
	padding: 0.5vw;
	width: 100%;
	text-align: center;
	color: #fff;
	font-weight: bold;
}
.sc-list .event-category.-line-sp {
    background-color: #008edd;
}
.sc-list .event-category.-line-art {
    background-color: #7dcc06;
}
.sc-list .event-category.-line-et{
	background-color: #f2c200;
}
.sc-list .sc-list-txt {
	padding: 2vw;
	letter-spacing: 0.3vw;
}
.sc-list .sc-list-category {
	font-weight: bold;
	background: #ebebeb;
	display: inline-block;
	padding: 0.5vw 1.5vw;
}
.sc-list .sc-list-date {
	margin: 1vw 0;
	color: #888888;
}
.sc-list .sc-list-ttl {
	font-weight: bold;
	ord-break: break-all;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        overflow: hidden;
}

div.searchButtonnBlock button {
    text-align: center;
    padding: 30px 0;
    margin: 0;
}
ul.searchList {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    border: none;
    justify-content: space-between;
    gap: 0;
    position: relative;
	margin-top: 3vw;
}
li.filterDiv {
    display: none;
}
li.filterDiv.show {
    display: inline-block;
	margin-top: 4vw;
}
.show {
  display: inline-block;
}


@media screen and (max-width: 767px) {
/* （ここにモバイル用スタイルを記述） */
div.searchButtonnBlock button {
    padding: 12px 0;
    margin-bottom: 6px;
}
}

/*フィールドトップへ戻るボタン*/
.entry-back-btn {
    border: 0.7vw solid #000000;
    display: block;
    text-align: center;
    position: relative;
    padding: 2vw;
    border-radius: 1.4vw;
    width: 80%;
    margin: 5vw auto;
    font-weight: 700;
    box-shadow: 0 0.5vw 0 rgba(0, 0, 0, 0.3);
}
.entry-back-btn::after {
    content: '';
    display: block;
    width: 2vw;
    height: 2vw;
    border: 0.6vw solid #000000;
    border-width: 0.7vw 0.7vw 0 0;
    position: absolute;
    left: 3vw;
    top: 50%;
    margin-top: -1vw;
    transform: rotate(-135deg);
}


@media screen and (min-width: 769px), print {
.specialcontents-top {
	padding: 0;
}
.sc-lead {
	padding: 50px 80px 0px;
}
/*アコーディオン見た目*/
.accordion_area {
    margin-top: 50px;
    border-radius: 20px;
	width: 680px;
}
.point_inner {
    padding: 30px 50px;
    border-radius: 0 0 20px 20px;
}
.accordion_area.-genre .btn {
	padding: 20px;
	border-radius: 10px;
	box-shadow: 0 7px 0 rgba(0, 0, 0, 0.1);
}
.accordion_area.-genre .btn:after {
    border-radius: 0 0 10px 0;
    border-bottom: 40px solid #008edd;
    border-left: 40px solid transparent;
}
.accordion_area.-genre .btn:nth-of-type(n+3) {
	margin-top: 30px;
}
.accordion_area.-tag .btn {
	padding: 10px 30px;
	border-radius: 5px;
	margin: 10px 10px 0 0;
}
	
.point_title_btn {
	padding: 14px 0px;
}
.point_title_btn> i,
.point_title_btn_open> i {
    right: 40px;
    width: 40px;
    height: 40px;
}
.point_title_btn > i::before, .point_title_btn > i::after {
        width: 23px;
        height: 3px;
    }
/*コンテンツリスト*/
.specialcontents-list {
	margin-top: 50px;
	padding: 40px 0;
}
.sc-list-h {
	font-size: 36px;
	padding-left: 20px;
}
.sc-list-h::before {
        width: 8px;
        height: 41px;
        top: 12px;
        left: 0;
        border-radius: 20px;
    }
.sc-list-h::after {
    height: 4px;
    bottom: -12px;
}
.sc-list li {
	border-radius: 20px;
}
.sc-img img{
		border-radius: 10px 10px 0 0;
	}
.sc-list .event-category {
	padding: 8px;
}
.sc-list .sc-list-txt {
	padding: 20px;
	letter-spacing: 2px;
}
.sc-list .sc-list-category {
	padding: 5px 10px;
}
.sc-list .sc-list-date {
	margin: 10px 0;
}
ul.searchList {
	margin-top: 30px;
}
li.filterDiv.show {
	margin-top: 30px;
}

/*フィールドトップへ戻るボタン*/
.entry-back-btn {
    box-shadow: 0 7px 0 rgba(0, 0, 0, 0.3);
	border: 1px solid #000000;
        padding: 16px;
        border-radius: 10px;
        width: 400px;
        margin: 50px auto;
}
.entry-back-btn::after {
    width: 14px;
        height: 14px;
        border: 3px solid #000000;
        border-width: 3px 3px 0 0;
        left: 20px;
        margin-top: -7px;
}
	
}



/*---------------2階層共通-----------------*/
/*パンくず*/
.breadcrumbs{
	background-color: #ebebeb;
	padding: 2vw;
	color: #000;
	font-size: 13px;
}
.breadcrumbs a{
	color: #000;
	text-decoration: underline;
}
.breadcrumbs li::after{
  content: '>';
  display: inline-block;
  padding: 0 10px; 
}
.breadcrumbs li:last-child::after{
  display: none;
}
.breadcrumbs .breadcrumbs_icn{
	width: 5vw;
	margin-right: 3vw;
}
.pankuzu ol{
  display:flex;
}
@media screen and (min-width:586px) {
  .breadcrumbs::before {
    background-size: 4vw;
    height: 3vw;
    margin-top: 1vw;
    padding: 0px 20px;
}
}
@media screen and (max-width:768px) {
  .pankuzu ol{
    display:flex;
    overflow-x: scroll;
    word-break: keep-all;
    white-space: nowrap;
  }
}

.specialcontents_inner {
	padding: 4vw 4vw 0;
}
.specialcontents_date {
	color: #fff;
	background: #008edd;
	display: inline-block;
	padding: 0.5vw 2vw;
	border-radius: 0.5vw;
	font-size: 3vw;
	font-weight: bold;
}
.specialcontents_inner h1 {
	font-size: 4.6vw;
	font-weight: 700;
    margin: 1vw 0;
    padding-bottom: 2vw;
    position: relative;
    border-bottom: 0.8vw solid #ffe840;
}
.specialcontents_inner h1::before {
    content: '';
    position: absolute;
    bottom: -0.7vw;
    width: 33.3%;
    height: 0.7vw;
    background: #42eebe;
}
.specialcontents_inner h1::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: -0.7vw;
    width: 33.3%;
    height: 0.7vw;
    background: #ffa0be;
}
.specialcontents_inner h2 {
	margin: 3.4vw 0 2vw;
	line-height: 1.4;
}
.specialcontents_inner_category {
	color:#008edd;
	border: 0.5vw solid #008edd;
	display: inline-block;
	padding: 0.3vw 2.5vw;
	border-radius: 0.5vw;
	font-size: 3.4vw;
	font-weight: 700;
}
.specialcontents_inner_wrap {
	padding: 5vw 0;
}
.specialcontents_inner_wrap:nth-of-type(n+2) {
	border-top: 0.7vw dotted #ccc;
}
/*---動画再生ボタン---*/
.specialcontents_inner_wrap .open_movie:after {
    background: url(../images/ic_movie.png) no-repeat;
	background-size: 100%;
}
/*---2階層アコーディオン見た目---*/
.-subpage .point_inner {
    background-color: #fff;
}
.-subpage .accordion_area.-genre .btn {
	border: 1px solid #ccc;
    background-color: #fff;
    padding: 2vw;
    font-weight: bold;
    width: 48%;
    border-radius: 0.5vw;
    position: relative;
    box-shadow: 0 1vw 0 rgba(0, 0, 0, 0.2);
}
.-subpage .accordion_area.-tag .btn {
    background-color: #ebebeb;
}
/*---ボタン---*/
.sc-report-btn {
	padding: 0 3vw;
}
.sc-back-btn{
	border: 1px solid #000000;
	display: block;
  text-align: center;
  position: relative;
  padding: 2vw;
  border-radius: 1.4vw;
	width: 80%;
	margin: 5vw auto;
	font-weight: 700;
	box-shadow: 0 0.5vw 0 rgba(0,0,0,0.3);
	background: #ffffff;
}

.sc-back-btn::after{
	content: '';
  display: block;
  width: 2vw;
  height: 2vw;
  border: 0.4vw solid #000000;
  border-width: 0.5vw 0.5vw 0 0;
  position: absolute;
  left: 3vw;
  top: 50%;
  margin-top: -1vw;
  transform: rotate(-135deg);
}
.search_area p{
	text-align: center;
	margin: 3vw 10vw 0;
}



@media screen and (min-width: 769px), print {
	.c-shadow2{
		box-shadow: 0 7px 0 rgba(0,0,0,0.1);
	}
	.sp{
	display: none;
}
.pc{
	display: block;
}
	.mt6 {
    margin-top: 60px !important;
}
	.mt2{
	margin-top: 10px!important;
}
.pt_10 {
    padding-top: 100px;
}
.pb3{
	padding-bottom: 30px;
}
.pb5{
	padding-bottom: 40px;
}
.mb12 {
	margin-bottom: 80px;
}
/*パンくず*/
	.breadcrumbs {
    padding: 15px 120px;
    font-size: 14px;
}
	.breadcrumbs .breadcrumbs_icn {
    width: 27px;
    margin-right: 3vw;
}
		.breadcrumbs::before {
    background-size: 25px;
    height: 17px;
    margin-top: 5px;
    padding: 0px 20px;
}

.specialcontents_inner {
	padding: 50px 0 0;
}
.specialcontents_date {
	padding: 5px 10px;
	border-radius: 5px;
	font-size: 18px;
}
.specialcontents_inner h1 {
	font-size: 30px;
    margin: 10px 0;
    padding-bottom: 10px;
    border-bottom: 5px solid #ffe840;
}
.specialcontents_inner h1::before {
    bottom: -5px;
    height: 5px;
}
.specialcontents_inner h1::after {
    bottom: -5px;
    height: 5px;
}
.specialcontents_inner h2 {
	margin: 20px 0;
}
.specialcontents_inner_category {
	border: 2px solid #008edd;
	padding: 0px 10px;
	border-radius: 5px;
	font-size: 18px;
}
.specialcontents_inner_wrap {
	padding: 40px 0 20px;
}
.specialcontents_inner_wrap:nth-of-type(n+2) {
	border-top: 5px dotted #ccc;
}
/*---2階層アコーディオン見た目---*/
.-subpage .accordion_area.-genre .btn {
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 7px 0 rgba(0, 0, 0, 0.2);
}
/*---ボタン---*/
.sc-report-btn {
	padding: 30px 100px 0;
}
.sc-back-btn{
	border: 1px solid #000000;
        padding: 16px;
        border-radius: 10px;
        width: 400px;
        margin: 40px auto;
}

.sc-back-btn::after{
	width: 14px;
        height: 14px;
        border: 3px solid #000000;
        border-width: 3px 3px 0 0;
        left: 20px;
        margin-top: -7px;
}
.search_area {
		margin: 0px auto;
	}
	.search_area div {
		max-width: 750px
	}
.search_area p{
	text-align: center;
	margin: 0 auto;
	max-width: 500px;
}


	
	
	

	
}
