/* ---------- 2018 ---------- */
/*@media print, screen and (min-width: 768px) {*/

@import url(https://fonts.googleapis.com/earlyaccess/sawarabigothic.css,https://fonts.googleapis.com/earlyaccess/mplus1p.css);


.mainVisual .smpOnly {
	display: none;
}
.mainVisual .pcOnly {
	display: block;
}
.mainVisual .hjw-movie {
    position: relative;
    padding-top: 56.25%;
    height: 0;
    overflow: hidden;
}
.mainVisual .hjw-movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	z-index: 10;
}
.mainVisual .swiper-slide img {
	width: auto;
	max-width: 100%;
	height: auto;
}

@media screen and (max-width:767px){
	.mainVisual .smpOnly {
		display: block;
	}
	.mainVisual .pcOnly {
		display: none;
	}
}

/*============================
// preventiveMeasures
============================*/
.index .preventiveMeasures{
	margin: 18px 0;
	font-size: 1.8em;
	font-weight: bold;
	text-align: center;
}
.index .preventiveMeasures a{
	color: #333;
    padding: 1rem;
    display: inline-block;
	text-decoration: underline;
}
.index .preventiveMeasures a:hover{
	color: #333 !important;
	opacity: 0.8;
	text-decoration: none;
}
/*============================
// topics
============================*/

.index div#mainContents .topics{
	margin-bottom:30px;
}
.index div#mainContents .topics h3 {
	color: #000;
	font-size: 31px;
	text-indent: 0.1em;
	margin-bottom: 10px;
}
.index div#mainContents .topics .topicsCnts{
	font-size: 1.25em;
}
.index div#mainContents .topics .topicsCnts dl{
	margin:0 0 6px 0;
}
.index div#mainContents .topics .topicsCnts dt{
	float:left;
	width:140px;
}
.index div#mainContents .topics .topicsCnts dd{
	float:left;
	margin-left:0;
}
.index div#mainContents .topics dd.notesTxt a{
	color: #db1b05;
	font-weight: bold;
}

/* event forSP */
@media screen and (max-width:768px) {
	.index div#mainContents .topics .content {
		margin-bottom: 20px;
  		padding-left: 3%;
	}
	.index div#mainContents .topics h3 {
		font-size: 2em;
		line-height: 1.2em;
		padding-left: 3%;
		display: block;
	}
}

/*============================
// event
============================*/

.index div#mainContents .contentsWrap {
	margin-top: 20px;
	margin-bottom: 20px;
}
.index div#mainContents .contentsWrap h2.title01 {
	margin-bottom: 10px !important;
}

.index div#mainContents .contents {
    width:100%;
}
.index div#mainContents .eventBox {
    display:flex;
    align-items:center;
    gap:2%;
    width:100%;
    padding:18px 0;
    border-bottom:1px solid #ccc;
    position:relative;
}

.index div#mainContents .eventBox .eventPhoto {
    width:12%;
    min-width:62px;
	order:2;
}
.index div#mainContents .eventBox .eventPhoto a {
    display:block;
}
.index div#mainContents .eventBox .eventPhoto img {
    display:block;
    width:100%;
}

.index div#mainContents .eventBox .eventDate {
    width:12%;
    min-width:70px;
    text-align:center;
    font-size: 1.4em;
	font-weight: bold;
    line-height:1.2;
    padding:6px 0;
	order:1;
}
/* [eventDateWrap] Only_date displayed on two lines */
.index div#mainContents .eventBox .eventDateWrap {
	order: 1;
	display: flex;
	flex-direction: column;
    width: 12%;
    min-width:70px;
	margin: 0;
	padding: 0;
}
.index div#mainContents .eventBox .eventDateWrap .eventDate {
    width: 100%;
}
.index div#mainContents .eventBox .eventDateWrap .eventDate:first-child {
    margin-bottom: 0;
}

.index div#mainContents .eventBox .eventDate span.small {
	display: inline-block!important;
	font-weight: normal;
}

.index div#mainContents .eventBox .eventDetail {
    flex:1;
    min-width:0;
	order:3;
}
.index div#mainContents .eventBox .eventDetail h3 {
    margin:0;
	font-size: 1.6em;
    line-height:1.6;
}
.index div#mainContents .eventBox .eventDetail h3 a{
	display:block;
	text-decoration:none;
}
.index div#mainContents .eventBox .eventDetail h3 a:hover {
    text-decoration:underline;
}
.index div#mainContents .eventBox .eventDetail h3 .subTitle01 {
	display: inherit;
	font-size: 0.75em;
}

.index div#mainContents .eventBox .modalBtn {
	order:4;
	font-size: 1.1em;
}

.index div#mainContents p{
	margin:10px 0 10px 0;
}
.index div#mainContents p.detail{
    text-align: center;
    padding: 5px;
    border: 1px solid #ccc;
}

.index div#mainContents p.detail .fa-camera{
	margin-right: 10px;
	color: #ccc;
	vertical-align: middle;
}
.index div#mainContents p.detail .fa-camera a:hover{
	color: #a55f2d !important;
}
.index div#mainContents p.detail a.thickbox {
    display: block;
	transition: .2s ease;
}
.index div#mainContents p.detail a.thickbox:hover{
	text-decoration: none !important;
}
.index div#mainContents .eventBox .eventDate span.small {
	font-size:0.8em;
}
.index div#mainContents .eventBox .eventDate.sat {
	background:#009aec;
}
.index div#mainContents .eventBox .eventDate.sun {
	background:#ff3442;
}
.index div#mainContents .eventBox .live{
	background-color: #db3333;
	color: #ffffff;
	padding: 0.25em 0.5em;
	border-radius: 5px;
	display: inline-block;
	margin-bottom: 1em;
}

.index div#mainContents .eventBox .eventDetail .fas {
	display: none;
}

.index div#mainContents .eventBox .eventSummary p {
	margin-bottom:5px;
	font-size:1.1em;
	line-height: 1.5em;
}
.index div#mainContents .eventBox .eventSummary p a{
	text-decoration: none;
}
.index div#mainContents .eventBox .eventSummary p a:hover{
	text-decoration: underline;
}

.index div#mainContents .eventBox .eventSummary p.copy{
	font-size:1.3em;
	color:#d16936;
	font-weight:bold;
}
.index div#mainContents .eventBox .eventSummary p.copy span.memo{
	font-size:0.8em;
}
.index div#mainContents .eventBox .eventTbl {
	margin-top:10px;
	width:100%;
	border-collapse:collapse;
}
.index div#mainContents .eventBox .eventTbl th,
.index div#mainContents .eventBox .eventTbl td {
	padding-bottom:5px;
	vertical-align:top;
	text-align:left;
	font-weight:normal;
	font-size:1.1em;
	line-height:1.4;
}
.index div#mainContents .eventBox .eventTbl td span {
	font-size:0.85em;
	color:#666;
}

/* only_YJF*/
.index div#mainContents #yjf.eventBox {
    flex-direction: column;
    align-items: flex-start;
}
.index div#mainContents #yjf.eventBox .eventDetail {
	margin-top: 12px;
	margin-bottom: 12px;
	order: 2;
}
.index div#mainContents #yjf.eventBox .eventDetail h3 .subTitle01 {
	text-indent: 3em;
}

.index div#mainContents #yjf.eventBox .eventPhoto {
	width: 100%;
	margin: 6px 0;
	order: 3;
}
.index div#mainContents #yjf.eventBox p.detail {
	width: 100%;
	box-sizing: border-box;
}

/* event forSP */
@media screen and (max-width:768px) {
	.index div#mainContents .contentsWrap {
		width: 100%;
		padding: 0 3%;
		margin: 0 !important;
	}
	.index div#mainContents .eventBox {
		display:flex;
		flex-wrap:wrap;
		gap:14px;
	}
	.index div#mainContents .eventBox .eventDate {
		width: 65px!important;
		min-width: 65px!important;
		font-size: 12px;
		margin-top: 8px;
	}
	.index div#mainContents .eventBox .eventDate span.small{
		display: block !important;
	}

	.index div#mainContents .eventBox .eventPhoto {
		width: 64px;
		min-width: 64px;
		margin-top: 0;
	}

	.index div#mainContents .eventBox .eventDetail {
		flex:1;
		display:flex;
		flex-direction:column;
		align-items:flex-start;
		padding: 10px 10px 10px 0!important;
	}
	.index div#mainContents .eventBox .eventDetail h3 {
		line-height:1.6;
	}
	.index div#mainContents .eventBox .eventDetail h3 .subTitle01 {
		font-size: 0.83rem;
	}
	.index div#mainContents .eventBox .modalBtn {
	    flex:0 0 auto;
	}
	.index div#mainContents .eventBox p.detail {
		width: 100%;
		margin-top: 0;
	}

	/* only_YJF*/
	.index div#mainContents #yjf.eventBox .eventDate {
		margin-bottom: 0;
	}
	.index div#mainContents #yjf.eventBox .eventPhoto {
		width: 100%;
		height: auto;
		margin-top: 0px;
		margin-bottom: 10px;
	}
	.index div#mainContents #yjf.eventBox .eventDetail {
		margin-top: 0px!important;
		margin-bottom: 0px!important;
		padding-top: 0px!important;
		padding-bottom: 0px!important;
		width: unset;
	}
	.index div#mainContents #yjf.eventBox p.detail {
		margin-bottom: 0px;
	}
}

.index div#mainContents dl.check{
	margin:0 0 10px 0;
	padding:15px 10px 5px 10px;
	background:#faf9f5;
	border:#e3dad0 1px solid;
}
.index div#mainContents dl.check dt{
	padding-left:25px;
	background:url(/common/images/mark_check.gif) 0 3px no-repeat;
	color:#333;
	font-weight:bold;
}
.index div#mainContents dl.check dd{
	margin:0 0 10px 0;
	padding-left:25px;
	color:#6b664d;
}
.index div#mainContents dl.check dd.notes{
	padding:0 10px 0 17px;
	font-size:0.84em;
	text-indent:-1.0em;
	color:#666;
}
.index div#mainContents ul.artist{
	width:330px;
	margin-bottom:15px;
}
.index div#mainContents ul.artist li{
	float:left;
}
.index div#mainContents ul.artist li img{
	margin:0;
}
.ev04a {
	font-size: 0.8em;
}
.ev04b {
	font-size: 0.75em;
}

.contactText {
	margin-top:20px;
	padding-top:20px;
	text-align:left;
	font-weight:bold;
	border-top: dotted 1px #ccc;
}
.contactTitle {
	display:block;
	margin-bottom:5px;
}

/*ここから下contents.cssに書き足す*/
div#bodyArea .to_top {
    clear: both;
    margin: 0;
    padding: 20px 0;
    text-align: right;
	font-size: 9px;
	font-weight: bold;
	letter-spacing: 0.05em;
}
div#bodyArea .to_top a {
	display: block;
	margin-left: 3px;
	text-decoration: none;
	color: #333;   
}
div#bodyArea .to_top a:hover{

	text-decoration: underline;
}
div#bodyArea .to_top a::after {
	content: '';
	display: inline-block;
	width: 9px; 
	height: 11px; 
	margin-left: 5px;
	background: url(/common/images/mark_arrow_06.gif) no-repeat;
}

div#bodyArea div#mainContents h3.title{
	color: #000;
	margin:0;
	padding:0 0 10px 0;
	font-size: 31px;
	background: url(/common/images/border_h3.gif) 0 45px no-repeat;
	text-indent: 0.1em;
}

div#bodyArea div#mainContents h4.title01,
div#bodyArea div#mainContents .about h4.title{
	clear:both;
	width:694px;
	margin: 0;
	padding:35px 0 20px 0;
	font-size: 20px;
	background: url(/common/images/border_h4.gif) 0 65px no-repeat;
}
div#bodyArea div#mainContents h4.title{
	background: url(/common/images/border_h4.gif) 0 90px no-repeat;
	padding-bottom: 10px;
}
div#bodyArea div#mainContents h4.title dl{
	clear:both;
	width:694px;
	margin: 0;
	padding:35px 0 20px 0;
	font-size: 20px;
}
div#bodyArea div#mainContents h4.title dl dt{
 	width: 95px;
	float: left;
	font-size: 20px;
}
div#bodyArea div#mainContents h4.title dl dd{
	float: left;
	margin: 0;
}
div#bodyArea div#mainContents h4.title dl dd span{
	font-size: 16px;
	color: #666;	
}

/*---続きを読む---*/
.grad-wrap {
  position: relative;
  padding-bottom: 30px;
}
.grad-wrap + .grad-wrap {
  margin-top: 40px;
}
.grad-btn {
  z-index: 2;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  width: 921px;
  margin: auto;
  padding: 10px 0 10px 15px;
  background: #fff;
  font-size: 1em;
  cursor: pointer;
  transition: .2s ease;
  border: 1px solid #ccc;
}
.grad-btn::after {
  content: "もっと読む";
  text-align: center;
  display: block;
}
.grad-btn:hover {
  color: #E88740;
}
.grad-btn .fa {
  position: absolute;
  top: 11px;
  color: #ccc;
  font-size: 1.5em;
  margin-left: 5px;
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 64px;
}
.grad-item p + p {
  margin-top: 1em;
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
}
.grad-trigger {
  display: none;
}
.grad-trigger:checked ~ .grad-btn {
  bottom: -2em;
  margin-bottom: 20px;
}
.grad-trigger:checked ~ .grad-btn::after {
  content: "閉じる"
}
.grad-trigger:checked ~ .grad-btn .fa {
  transform: rotate(180deg);
}
.grad-trigger:checked ~ .grad-item {
  height: auto;
}
.grad-trigger:checked ~ .grad-item::before {
  display: none;
}
