@charset "UTF-8";
/*************************************
追加・カスタム用
*************************************/


.fair_box{
    background: #f9eb6a;
    padding: 20px;
    line-height: 1.9;
    margin: 15px 0;
}

/* カードレイアウト部分をラッピングし、
Flexboxを指定"space-between"で各アイテムを均等に配置し、
最初と最後のアイテムを端に寄せます。*/
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    /* max-width: 960px; */
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    background: #f9eb6a;
}

/* リンクテキストの下線を非表示 */
a.card-link {
    text-decoration: none;
}

/* カードレイアウト内の画像を幅いっぱいに表示 */
#cardlayout-wrap img {
    display: block;
    max-width: 50%;
    height: auto;
    margin: 0 auto;
}

.card-figure {
    margin: 0;
    padding: 0;
}

/* カードレイアウトのタイトル部分 */
.card-title {
    margin: 0.6em 0 0;
    color: #333;
    text-align: center;
    font-size: 1.4em;
}

/* カードレイアウトの説明文部分 */
.card-text-tax {
    margin: 0;
    padding: 1em;
    color: #818181;
}

/* カードレイアウトを1カラムで配置 */
.card-list {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
}

/* 画面幅768px以上の場合カードレイアウトを2カラムで配置 */
@media all and (min-width: 768px) {
    .card-list {
        margin: 0.5em 0;
        width: calc(96% / 2); /* 96%幅を2で割るという指定 */
    }
}

/* 画面幅992px以上の場合カードレイアウトを3カラムで配置 */
@media all and (min-width: 992px) {
    .card-list {
        width: calc(96% / 3); /* 96%幅を3で割るという指定 */
}
    
/* 最後の行が3列より少ない場合左寄せにレイアウトさせる */
    #cardlayout-wrap::after{
        content: "";
        display: block;
        width: calc(96% / 3);
    }
}

.fair-table-parts ol{
    list-style: upper-roman;
    margin-left: 35px;
}
.fair-table-parts li{
    margin: 15px 0;
}
.fair-table-parts {
width: 100%;
border-collapse: collapse;
}

.fair-table-parts th,td {
padding: 10px 15px;
border: 1px solid #ddd;
}

.fair-table-parts th {
background: #f4f4f4;
width: 15%;
text-align: left;
}

@media only screen and (max-width:479px) {
.fair-table-parts th,td {
width: auto;
display: block;
border-top: none;
}
.fair-table-parts tr:first-child {
border-top: 1px solid #d5d5d5;
}
}


.col_4{
	width: 100%;
	display: flex;
	display: -ms-flexbox; /* IE10 */
	flex-wrap: wrap;
	-ms-flex-wrap: wrap; /* IE10 */
}
.col_4 > div{
	width: 24%;
    padding: 10px;
    background: aliceblue;
    margin: 5px;
    text-align: center;
    display: grid;
    font-size: 1.4rem;
}
.col_4 > div > span{
        background: white;
    display: inline-table;
    width: 40%;
    margin: 0 auto;
    border-radius: 50px;
}
.col_4 > div > a > span{
        background: white;
    display: inline-table;
    width: 40%;
    margin: 0 auto;
    border-radius: 50px;
}
.col_4 > div > a{
    background: aliceblue;
    text-align: center;
    display: grid;
    font-size: 1.4rem;
}
@media screen and (max-width: 960px) {
	.col_4 > div{
		width: 31.33333%;
	}
}
@media screen and (max-width: 480px) {
	.col_4 > div{
		width: 45%;
	}
}


.col_3{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.col_3 > div{
	width: 33.33333%;
	padding: 10px;
}
.col_3 > div > div{
	background: #ff0000;
	height: 120px;
	position: relative;
	overflow: hidden
}
@media screen and (max-width: 960px) {
	.col_3 > div{
		width: 50%;
	}
}
@media screen and (max-width: 480px) {
	.col_3 > div{
		width: 100%;
	}
}


.l_mv.__top .img{
	background-image: url("../img/top/img_0418.jpg");
}

@media screen and (min-width: 768px){
.l_mv.__top .txt {
        font-size: 4.3rem;
    color: #3cb482;
	        top: 140px;
}
}

.tab-wrap {
  display: flex;
  flex-wrap: wrap;
  margin:20px 0;
}
.tab-wrap:after {
  content: '';
  width: 100%;
  height: 3px;
  background: #3cb482;
  display: block;
  order: -1;
}
.tab-label {
  color: White;
  background: LightGray;
  font-weight: bold;
  white-space: nowrap;
  text-align: center;
  padding: 10px .5em;
  order: -1;
  position: relative;
  z-index: 1;
  cursor: pointer;
  border-radius: 5px 5px 0 0;
  flex: 1;
}
.tab-label:not(:last-of-type) {
  margin-right: 5px;
}
.tab-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
}
.tab-switch:checked+.tab-label {
  background: #3cb482;
}
.tab-switch:checked+.tab-label+.tab-content {
  height: auto;
  overflow: auto;
  padding: 15px;
  opacity: 1;
  transition: .5s opacity;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}
.tab-switch {
  display: none;
}

.row_table,
.row_table td,
.row_table th {
  border: 1px solid #cbced2;
  border-collapse: collapse;
  text-align: center;
}

.row_table th {background: #3cb482;
    color: #fff;
    padding: 4px 12px;
    display: block;
    width: 100%;
    font-size: 1.89rem;
}

.row_table td {
  background: #f5f6f8;
  padding: 4px 12px;
  display: block;
  width: 100%;
}


#modal-content{
    width:80%;
    margin:0;
    padding:0;
    background:#fff;
    position:fixed;
    display:none ;
    z-index:99999;
}
#modal-content .inner{
    position:relative;
    width:100%;
    padding-top:56.25%;
    overflow:hidden;
}
#modal-content .inner #player{
    position:absolute;
    top:0;
    right:0;
    width:100%;
    height:100%;
}
#modal-overlay{
    z-index:9999;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba( 0,0,0, 0.75 );
}