/*--------------------------------------
全体設定
---------------------------------------*/
body {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 400;
    font-size: 100%;
    line-height: 1;
    font-feature-settings: 'palt' 1;/*文字詰め*/
}



/*--------------------------------------
リンク設定
---------------------------------------*/
a {
    color: #6762FA;
    text-decoration: underline;/*テキストの下線・上線・打ち消し線・点滅を指定*/
}

/*--------------------------------------
ulリストマーク削除
---------------------------------------*/
ul {
  list-style:none;
}

/*--------------------------------------
色設定
---------------------------------------*/
.C_B {
    color: #005284;
}

.C_RD {
    color:#e13837;
}

.C_K {
    color: #302C2C;
}

.C_W {
    color: #fff;
}

/*--------------------------------------
文字設定
---------------------------------------*/



.lead_big p {
    font-size: 200%;
    line-height: 2;
	text-align:left;
    margin-bottom: 1em;
	color: #E00003;
	font-weight: bolder;
}


.lead_left p {
    font-size: 112.5%;
    line-height: 2;
	text-align:left;
    margin-bottom: 1em;
}


.lead_left_s p {
    font-size: 112.5%;
    line-height: 2;
	text-align:left;
    margin-bottom: 1em;
}


.lead_center p {
    font-size: 112.5%;
    line-height: 2;
	text-align:center;
    margin-bottom: 1em;
}

@media screen and (max-width: 768px) {
	
.lead_big p {
    font-size: 120%;
	}
	
.lead_left p {
        font-size: 87.5%;
}
	

.lead_left_s p {
    font-size: 50.0%;
}
	

.lead_center p {
        font-size: 87.5%;
}
	
}

.fs_M p {
    font-size: 150%;
    line-height: 2;
    margin-bottom: 1em;
}

@media screen and (max-width: 768px) {
	
	.fs_M p {
    font-size: 95%;}

	

}

/*--------------------------------------
文字
---------------------------------------*/
.txt_medium {
	font-size: 137.5%;
	line-height: 1.4;
}

.txt_lead {
	font-size: 112.5%;
	line-height:1.5;
}

.txt_weight_B {
    font-weight: 900;
}

.txt_size_M {
	font-size:30px;
	line-height:1.4;
}

.txt_S {
	font-size: 11px;
	line-height:0.5;
}


@media screen and (max-width: 768px) {
	.txt_size_M {
	font-size:25px;
}



.txt_medium {
	font-size: 100%;
	line-height: 1.4;
}

.txt_lead {
	font-size: 87.5%;
	line-height:1.5;
}


}

/*--------------------------------------
矢印
---------------------------------------*/
.arrow {
	display:block;
	color:#fff;
	font-size:60px;
	text-align:center;
}

@media screen and (max-width: 768px) {
.arrow {
	font-size:40px;
}
}



/*--------------------------------------
背景設定
---------------------------------------*/

.bgLB {
	background: #2CA6E0;
	width: 100%;
}


.bgLB02 {
	background: #C2E9FF;
	width: 100%;
}




.bgW_03 {
	background: #FFFFFF;
	width:100%;
}


.bgOR_03 {
	background: #FF9E00;
	width:100%;
}

.bgR_03 {
	background: #F7185D;
	width:100%;
}


.bg_yuki {
  background-image: url("../img/bg_yuki.jpg");
	width: 100%;
}





/*--------------------------------------
空白設定_top
---------------------------------------*/
.p_top10 {
	padding-top:10px;
}

.p_top20 {
	padding-top:20px;
}

.p_top30 {
	padding-top:30px;
}

.p_top40 {
	padding-top:40px;
}

.p_top50 {
	padding-top:50px;
}

.p_top60 {
	padding-top:60px;
}

.p_top70 {
	padding-top:70px;
}

.p_top80 {
	padding-top:80px;
}

.p_top90 {
	padding-top:90px;
}

.p_top100 {
	padding-top:100px;
}

.p_top110 {
	padding-top:110px;
}

.p_top120 {
	padding-top:120px;
}

.p_top130 {
	padding-top:130px;
}




/*--------------------------------------
空白設定_under
---------------------------------------*/
.p_under10 {
	padding-bottom:10px;
}

.p_under20 {
	padding-bottom:20px;
}

.p_under30 {
	padding-bottom:30px;
}

.p_under40 {
	padding-bottom:40px;
}

.p_under50 {
	padding-bottom:50px;
}

.p_under60 {
	padding-bottom:60px;
}

.p_under70 {
	padding-bottom:70px;
}

.p_under80 {
	padding-bottom:80px;
}

.p_under90 {
	padding-bottom:90px;
}

.p_under100 {
	padding-bottom:100px;
}

/*--------------------------------------
空白設定_under_スマホのみ
---------------------------------------*/

@media screen and (max-width: 768px) {

.p_sp_under10 {
	padding-bottom:10px;
}

.p_sp_under20 {
	padding-bottom:20px;
}

.p_sp_under30 {
	padding-bottom:30px;
}

.p_sp_under40 {
	padding-bottom:40px;
}

.p_sp_under50 {
	padding-bottom:50px;
}

.p_sp_under60 {
	padding-bottom:60px;
}

.p_sp_under70 {
	padding-bottom:70px;
}

.p_sp_under80 {
	padding-bottom:80px;
}

.p_sp_under90 {
	padding-bottom:90px;
}

.p_sp_under100 {
	padding-bottom:100px;
}

}




/*--------------------------------------
ボタン設定
---------------------------------------*/
button {
    border: 0 none;
    appearance: none;/*デフォルトスタイルを無効にする*/
}

button.button,
a.button {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 125%;
	line-height:25px;
    font-weight: bold;
    color: #00D0C3;
    display: block;
    text-align: center;
    width: 100%;
    max-width: 1280px;
    background-color: #00D0C3;
    margin: 1em auto;
    padding: 0.6em 1em;
    border-radius: 1.1em;/*角丸*/
    position: relative;
    transition: all 0.5s;/*なめらかに色変える*/
}

button.button > .icon,
a.button > .icon {
    display: inline-block;
    position: absolute;
    right: 1em;
}

button.button:hover,
a.button:hover {
    color: #06B3EF;
}


button {
    border: 0 none;
    appearance: none;/*デフォルトスタイルを無効にする*/
}

.button_B {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 125%;
	line-height:25px;
    font-weight: bold;
    color: #fff;
    display: block;
    text-align: center;
    width: 100%;
	max-width:100% ;
    background-color: #00D0C3;
	border: 5px solid #FFFF2E;
    padding: 0.6em 1em;
    border-radius: 2.1em;/*角丸*/
    position: relative;
    transition: all 0.5s;/*なめらかに色変える*/
	float: left;
}

.button_B > .icon {
    display: inline-block;
    position: absolute;
    right: 1em;
}








.button_C {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 125%;
	line-height:40px;
    font-weight: bold;
    color: #fff;
    display: block;
    text-align: center;
    width: 100%;
    max-width: 1280px;
    background-color: #0068A4;
    margin: 1em auto;
    padding: 0.6em 1em;
    border-radius: 1.1em;/*角丸*/
    position: relative;
    transition: all 0.5s;/*なめらかに色変える*/
}

.button_C > .icon {
    display: inline-block;
    position: absolute;
    right: 1em;
}

.button_C:hover{
	background-color:#06B3EF;
}

.button_D {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 125%;
	line-height:40px;
    font-weight: bold;
    color: #0068A8;
	display:inline-block;
    text-align: center;
    width: 100%;
    background-color: #FFD52E;
    padding: 0.6em 1em;
    border-radius: 1.1em;/*角丸*/
    position: relative;
    transition: all 0.5s;/*なめらかに色変える*/
}

.button_D > .icon {
    display: inline-block;
    position: absolute;
    right: 15px;
	top:20px;
}

.button_D:hover{
	background-color:#FFEB31;
}


.button_E {
	font-family: 'Archivo Narrow', sans-serif;
	font-size: 125%;
	font-weight: bold;
	color: #0068A8;
	display: block;
	text-align: center;
	width: 100%;
	max-width: 550px;
	background-color: #fff;
	margin: 1em auto;
	padding: 0.6em 1em;
	border-radius: 1.1em;
	position: relative;
	transition: all 0.5s;
}

.button_E > .icon {
	display: inline-block;
	position: absolute;
	right: 1em;
}

.button_E:hover {
	color: #2c72ff;
} 


/*--------------------------------------
ボタン設定02 マウスオーバーで軽く跳ねる
---------------------------------------*/
    .btn_ef02 {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-transition: all .3s;
        transition: all .3s;
    }
    .btn_ef02:hover {
        -webkit-transform: translateY(-5px);
        -ms-transform: translateY(-5px);
        transform: translateY(-5px);
    }


/*--------------------------------------
ボタン設定03 マウスオーバーで一瞬だけ点滅
---------------------------------------*/
	
.btn_ef03:hover img {
  opacity: 1;
  -webkit-animation: flash 1.5s;
  animation: flash 1.5s;
}
@-webkit-keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}
@keyframes flash {
  0% {
    opacity: .4;
  }
  100% {
    opacity: 1;
  }
}



/*--------------------------------------
文字設定
---------------------------------------*/
h1, h2, h3, h4, h5 {
    font-weight: 700;
}

p {
    font-size: 87.5%;
    line-height: 2;
    margin-bottom: 1em;
}

p:last-child {
    margin-bottom: 0;
    height: auto;
}

/*--------------------------------------
リスト設定
---------------------------------------*/
/*ul, ol {
    margin: 2em 0;
}


li {
    font-size: 87.5%;
    line-height: 2;
    margin-bottom: 0.5em;
}*/


li:last-child {
    margin-bottom: 0;
}

/*--------------------------------------
区切り線
---------------------------------------*/
hr {
    height: 3px;
    border: 0 none;
    border-top: 1px dashed rgba(255,255,255,0.5);/*上ボーダーのスタイル・太さ・色を指定する*/
    border-bottom: 1px dashed rgba(255,255,255,0.5);/*下ボーダーのスタイル・太さ・色を指定する*/
}

/*--------------------------------------
線
---------------------------------------*/
.line {
    margin: 10px 0;
    padding: 32px 0;
    border-bottom: 1px dashed #4F8FFF;
}

/*--------------------------------------
色
---------------------------------------*/
.red {
    color: #D93B38;
}

/*--------------------------------------
段落設定
---------------------------------------*/
.t_center {
    text-align: center;
}

.t_left {
    text-align: left;
}

.t_right {
    text-align: right;
}

/*--------------------------------------
ヘッダー
---------------------------------------*/
.header {
    width: 100%;
    height: 80px;
	background: linear-gradient(90deg, rgb(0, 173, 186), rgb(0, 173, 119));
    color: #ffffff;
    padding: 8px 0px 16px;
    position: relative;
}

.header:after {
    /*content: "";*/
    display: block;
    width: 100%;
    height: 0;
    position: absolute;
    bottom: 4px;
    left: 0;
    border-bottom: 6px double #FFF;
    transition: all 1s;
}

.header h1 {
    display: none;/*要素も取得されず、完全にその場にない扱い*/
}

.header .global-nav {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 16px 32px;
    position: relative;
}

.header .global-nav .menu-btn {
    display: none;
}

.header .global-nav ul {
    overflow: hidden;/*はみ出た部分を表示しない*/
    position: relative;
    z-index: 999;/*ボックスの重なり順序を指定(値が大きい要素ほど前面)*/
    margin: 0 160px 0 0;
}

.header .global-nav ul li {
    float: left;
    line-height: 40px;
    padding-right: 32px;
}

.header .global-nav a,
.header .global-nav span {
    color: #ffffff;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 112.5%;
    font-weight: bold;
    text-decoration: none; /*テキストの下線・上線・打ち消し線・点滅を指定*/
    vertical-align: middle;
}

.header .global-nav a.tenbosch {
    display: inline-block;/*要素を横並びにする*/
    position: absolute;
    right: 32px;
    top: 50%;
	background-color:#FFFFFF;
    color: #00adba;
    border-radius: 1.5em;/*枠線四隅の曲率半径の一括指定*/
    padding: 8px 1em;
    margin-top: -22px;
}

.header .global-nav ul li.sns a {
    display: inline-block;/*要素を横並びにする*/
    width: 40px;
    text-align: center;
    margin-right: 16px;
    border-radius: 50%;/*枠線四隅の曲率半径の一括指定*/
    border: 1px solid #FFF;
}

.header .global-nav ul li.sns a span {
    display: none;
}

.header .global-nav a.ticket {
    display: inline-block;/*要素を横並びにする*/
    position: absolute;
    right: 32px;
    top: 50%;
    border: 2px solid #2CA6E0;
    color: #ffffff;
    border-radius: 1.5em;/*枠線四隅の曲率半径の一括指定*/
    padding: 8px 1em;
    margin-top: -22px;
}

.header .global-nav a.ticket img {
    vertical-align: middle;
}

.header.fixed {
    position: fixed;/*画面のきまった位置に固定する*/
    top: 0;
    left: 0;
    z-index: 999;/*ボックスの重なり順序を指定(値が大きい要素ほど前面)*/
    height: 80px;
}

.header.fixed .global-nav {
    padding: 8px 32px;
}


@media screen and (max-width: 900px) {
    .header,
    .header.fixed {
        width: 100%;
        height: 48px;
        padding: 4px 0;
    }
   
    .header:after {/*SPメニューバーの飾り線*/
        border-bottom: 2px solid #FFF;
    }

    .header .global-nav,
    .header.fixed .global-nav {/*SP左上メニューボタンの位置*/
        padding: 44px 0 0 0;
    }

    .header .global-nav .menu-btn {/*SP左上メニューボタンの表示*/
        display: block;
        position: absolute;
        top: 0;
        left: 16px;
        width: 32px;
        height: 32px;
        text-align: center;
    }

    .header .global-nav .menu-btn span {/*SP左上メニューボタンの表示*/
        position: absolute;
        left: 0px;
        width: 100%;
        height: 2px;
        background-color: #fff;
        transition: all 0.5s;
    }
   
    .header .global-nav .menu-btn span:nth-of-type(1) {/*SP左上メニューボタンの設定*/
        top: 6px;
        
    }

    .header .global-nav .menu-btn span:nth-of-type(2) {/*SP左上メニューボタンの設定*/
        top: 50%;
        margin-top: -1px;
    }
   
    .header .global-nav .menu-btn span:nth-of-type(3) {/*SP左上メニューボタンの設定*/
        bottom:  6px;
    }
   
    .header .global-nav .menu-btn.active span:nth-of-type(1) {/*SP左上メニュー開く際の×になるアニメーション*/
        transform: translateY(10px) rotate(-45deg);
    }
   
    .header .global-nav .menu-btn.active span:nth-of-type(2) {/*SP左上メニュー開く際の×になるアニメーション(真ん中の線を消す)*/
        opacity: 0;
    }
   
    .header .global-nav .menu-btn.active span:nth-of-type(3) {/*SP左上メニュー開く際の×になるアニメーション*/
        transform: translateY(-8px) rotate(45deg);
    }

    .header .global-nav ul {/*SPメニューバー*/
    overflow: hidden;
    display: block;
    margin-right: 0;
    max-height: 0px;
    transition: all 1s;
    }

    .header .global-nav ul.open {/*SPメニューバーサイズ*/
        max-height: 435px;
    }
   
    .header .global-nav ul li {/*SPメニューバー縦並びに*/
        display: block;
        width: 100%;
        float: none;
        padding: 0.5em 1em;
        border-bottom: 1px solid #fff;
		background: #2CA6E0;
    }
   
    .header .global-nav ul li.sns {
        overflow: hidden;
    }
   
    .header .global-nav ul li.sns a {
        display: block;
        width: 50%;
        float: left;
        text-align: center;
        border: 0 none;
        border-radius: 0;
        margin: 0;
    }

    .header .global-nav ul li.sns a:first-child {
        border-right: 1px solid #00adba;
    }

    .header .global-nav ul li.sns a span {
        display: inline-block;
    }

    .header .global-nav ul li.sns a .icon {
        margin-right: 8px;
    }

    .header .global-nav a.tenbosch { /*SPテンボスボタンの設定(.global-nav消すとメニュバー表示時テンボスボタン消える) */
        font-size: 87.5%;
        height: 32px;
        line-height: 1em;
        top: 0;
        right: 8px;
        padding: 4px 1em;
        margin: 0;
    }


}

/*-------------------------------------
MV設定
---------------------------------------*/
.main100{
	overflow:hidden;
}

.main100 img{
	width:100%;
	display: inline-block;
	height:auto;
	display: table;/*可変中央寄せ*/
	margin-left: auto;/*可変中央寄せ*/
	margin-right: auto;/*可変中央寄せ*/
}

/*--------------------------------------
section設定
---------------------------------------*/
.section_0 {
    padding: 0;
    position: relative;
}

.section_top0 {
    padding: 0 0 64px 0;
    position: relative;
}

.section_ud0 {
    padding: 64px 0 0 0;
    position: relative;
}


.section {
    padding: 64px 0;
    position: relative;
}

.content-wrapper {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 32px;
}

@media screen and (max-width: 768px) {
	
	 .section_0 {
        padding:0;
    }
	
	.section_top0 {
    padding: 0 0 32px 0;
    position: relative;
}

.section_ud0 {
    padding: 32px 0 0 0;
    position: relative;
}

	
    .section {
        padding: 32px 0;
    }
    
    .content-wrappe {
        padding: 0 16px;
    }
	
}
    

/*--------------------------------------
section見出し
---------------------------------------*/

.content-header {
	margin: 0px 0px 32px 32px;
	font-weight: 700;
	font-family: "Noto Sans Japanese", sans-serif;
}

@media screen and (max-width: 768px) {
	
	.content-header {
        margin-bottom: 24px;
    }
    
    .content-header img {
        width: 100vw;
        max-width: 768px;
    }


}



/*--------------------------------------
SNSボタン
---------------------------------------*/
.share {
	color:#fff;
	width:100%;
}

.share a {
    overflow: hidden;
	color:#fff;
}

.share_btn {
    font-size: 18px;
	line-height:25px;
    float: left;
    text-align: center;
    width: 33.3333333%;
    margin-top:0px;/*ボタンの隙間*/
	padding:18px 0 10px 0;/*ボタンのサイズ調整*/
    list-style: none;/*リストの前にあるマークを無くす*/
}

.share i {
	font-size:30px;
}

.share span {
	font-size:27px;
}


.share img {
    margin-bottom: -6px;
    padding: 3px;
    margin-top: -8px;
}

.share .share-facebook {
    background-color: #3b5998;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}

.share .share-facebook:hover {
    background-color: #0543af;
}

.share .share-twitter {
    background-color: #000000;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}

.share .share-twitter:hover {
    background-color: #0ba2ff;
}

.share .share-google {
    background-color: #dd4b39;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}

.share .share-google:hover {
    background-color: #f9432b;
}

.share .share-youtube {
    background-color: #e62000;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}

.share .share-youtube:hover {
    background-color: #ff3000;
}

.share .share-Instagram {
    background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
    background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション①*/
}

.share .share-Instagram:hover {
    filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}

.share .share-line {
    background-color: #00c300;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}

.share .share-line:hover {
    background-color: #00ea00;
}

.share .share-tiktok {
    background-color:#000000;
	transition: background-color 0.5s ease-out;
	-o-transition: background-color 0.5s ease-out; /* opera */
	-moz-transition: background-color 0.5s ease-out; /* firefox */
	-webkit-transition: background-color 0.5s ease-out; /* chrome, safari */
	-ms-transition: background-color 0.5s ease-out; /* ie */
}



@media only screen and (max-width: 780px) {
.share li{
width:49%;
}}



/*--------------------------------------
フッター
---------------------------------------*/
.footer {
    background-color: #f2f2f2;
    padding: 40px 0;
}

.footer .pagetop {
    width: 56px;
    height: 56px;
    border-radius: 50%;/*枠線四隅の曲率半径の一括指定*/
    background-color: #d4d1d3;
    color: #0068A4;
    position: fixed;/*画面のきまった位置に固定する*/
    right: 32px;
    bottom: 48px;
    font-size: 125%;
    line-height: 56px;
    text-align: center;
    opacity: 0.8;/*透明度を0(透明)〜1で指定*/
}

.footer .pagetop:hover {
    opacity: 1;/*透明度を0(透明)〜1で指定*/
}

.footer h1 {
    text-align: center;
    padding: 24px 0;
}

.footer p {
    font-size: 75%;
    text-align: center;
}

.footer .footer-nav {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 32px;
    text-align: center;
}

.footer ul {
    margin: 0;
}

.footer .footer-nav ul li {
    display: inline-block;/*要素を横並びにする*/
    padding: 0 1.5em;
    line-height: 1;
    margin-bottom: 8px;
    border-right: 1px solid #a9a9a9;
}

.footer .footer-nav ul li:first-child {
    border-left: 1px solid #a9a9a9;
}

.footer .footer-nav ul li a,
.footer .footer-nav ul li span {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 112.5%;
    font-weight: bold;
}

.footer .archive-nav {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding-top: 40px;
    text-align: center;    
}

.footer .archive-nav h2 {
    display: inline-block;
    padding-right: 40px;
}

.footer .archive-nav ul {
    display: inline-block;
    border-left: 1px solid #a9a9a9;
}

.footer .archive-nav ul li {
    display: inline-block;
    padding: 0 2em;
    border-right: 1px solid #a9a9a9;
}

/*--------------------------------------
section, article
---------------------------------------*/
.section,
.article {
    padding-top: 30px;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 40px;
    position: relative;
}

.article > *:last-child {
    margin-bottom: 0;
}

.content-wrapper {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 0;
    padding-right: 32px;
    padding-left: 32px;
    padding-bottom: 30px;
}

.content-header {
    text-align: center;
    margin-bottom: 32px;
}





/*--------------------------------------
home
---------------------------------------*/


.home .section:after,
.lineup .article:after {
    content: "";
    display: block;
    width: 100%;
    height: 8px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-size: auto 100%;
    background-repeat: repeat-x;
    background-position: center bottom;
}

.home .section#about {
    text-align: center;
    background-image:url(../img/bg03.gif);
}

.home .section#about02 {
    text-align: center;
    background-image:url(../img/bg02.gif);
}

.home .section#outline {
    text-align: left;
    background-image:url(../img/bg03.gif);
}

.introduction {
    max-width: 1280px;
    margin: 0 auto;
	text-align:center;
}

.home .section#about02 .introduction .shop_introduction {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
}

.home .section#outline .introduction .shop_introduction {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
}

.home .section#about .introduction img .shop_introduction img {
    width: 100%;
}

.shop_introduction {
    padding:40px 0 40px 0;
}

.home .section#about:after {
    background-image: url(../img/wave_beige.png);
}

.home .section#about #videoEmbed {
    width: 100%;
    margin: 40px auto;
    padding-top: 56.25%;
    position: relative;
    box-sizing: border-box;
}

.home .section#about #videoEmbed iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.home .section#news {
    background-color: #FDFBF5;
}

.home .section#news:after {
    background-image: url(../img/wave_navy.png);
}

.home .section#news .news-thumb {
    width: 30%;
    max-width: 96px;
    overflow: hidden;
    float: left;
}

.home .section#news .news-thumb img {
    width: 100%;
}

.home .section#news .news-title .marche-title {
    margin-left: 33.3%;
}

 .marche-title {
     text-align:center;
}

.home .section#news .news-title .marche-title .date {
    font-size: 87.5%;
    line-height: 1.8;
}

.home .section#news .news-title h3 .marche-title h3 {
    font-size: 100%;
    line-height:  1.8;
}

.home .section#news .news-title h3 a {
    color: #4b4948;
    text-decoration: underline;
}

.home .section#lineup,
.lineup {
    background-image:url(../img/bg01.gif);
    background-repeat: repeat;
    color: #FFF;
}

.article {
    background-image:url(../img/bg03.gif);
    background-repeat: repeat;
}

.home .section#lineup:after,
.lineup .article:after  {
    background-image: url(../img/wave_white.png);
}

.home .section#lineup #day1,
.lineup .article #day1 {
    margin-bottom: 40px;
}

.lineup .article h3,
.home .section#lineup h3 {
    font-size: 300%;
    font-family: 'Archivo Narrow', sans-serif;
    font-weight: bold;
    margin-bottom: 0.5em;
    text-align: left;
}

.lineup .article h3 small,
.home .section#lineup h3 small {
    font-size: 50%;
    font-weight: normal;
}

.lineup .article .row .col,
.home .section#lineup .row .col {
    text-align: center;
    padding-top: 8px;
}

.lineup .article .row .col a,
.home .section#lineup .row .col a {
    display: block;    
    transition: all 0.5s;
    overflow: hidden;
}

.home .section#lineup a.artist-thumb,
.lineup .article a.artist-thumb {
    margin-bottom: 8px;
    position: relative;
}

.home .section#lineup .icon-new,
.lineup .article .icon-new {
    position: relative;
}

.home .section#lineup .icon-new:after,
.lineup .article .icon-new:after {
    content: "";
    display: block;
    width: 64px;
    height: 64px;
    background: url(../img/icon-new.png) no-repeat 0 0;
    background-size: 100% auto;
    position: absolute;
    left: -8px;
    top: -24px;
    z-index: 10;
}

.lineup .article .row .col .artist-name,
.home .section#lineup .row .col .artist-name {
    font-size: 137.5%;
    font-weight: 900;
    line-height: 1.4;
    color: #FFF;
    transform: scale(0.9, 1);
    margin-bottom: 16px;
    min-height: 3em;
}

.lineup .article .row .col .artist-name small,
.home .section#lineup .row .col .artist-name small {
    font-size: 50%;
    display: block;
}

.frontact {
    overflow: hidden;
    margin-bottom: 1em;
}

.frontact .frontact-thumb {
    display: block;
    width: 160px;
    float: left;
    position: relative;
}

.frontact .frontact-name {
    display: block;
    float: left;
    color: #FFF;
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 137.5%;
    font-weight: 900;
    padding-left: 1em;
    text-align: left;
}

.frontact .frontact-name small {
    font-size: 87.5%;
}

.lineup .article p.caption,
.home .section#lineup p.caption {
    color: #FFF;
    text-align: right;
}

.andmore,
.complete {
    font-family: 'Archivo Narrow', sans-serif;
    font-size: 150%;
    color: #a9a3a8;
    text-align: center;
    padding: 0 16px;
    position: relative;
    overflow: hidden;
}

.andmore span,
.complete span {
    position: relative;
    display: inline-block;
    margin: 0 2.5em;
    padding: 0 1em;
    text-align: left;
}

.andmore span:before,
.andmore span:after,
.complete span:before,
.complete span:after {
    position: absolute;
    top: 50%;
    content: '';
    width: 500%;
    height: 1px;
    background-color: #ccc;
    opacity: 0.5;
}

.andmore span:before,
.complete span:before {
    right: 100%;
}

.andmore span:after,
.complete span:after {
    left: 100%;
}

.complete {
    font-family: 'Noto Sans Japanese', sans-serif;
    font-weight: 400;
    color: #FFF;
    margin-bottom: 32px;
}

.complete span:before,
.complete span:after {
    border-color: #FFF;
}

.ticket-info {
    background-color: #2D3142;
    text-align: center;
    padding: 8px;
    color: #FFF;
}

.ticket-info span.label {
    border-width: 2px;
    border-color: #d4d1d3;
    color: #d4d1d3;
    padding: 4px;
    vertical-align: middle;
}

.ticket-info p {
    display: inline-block;
    font-size: 112.5%;
    padding: 0 1em;
    margin: 0;
    vertical-align: middle;
}

.ticket-info a.button {
    display: inline-block;
    font-size: 87.5%;
    max-width: 160px;
    background-color: #ffea3b;
    color: #2f323c;
}






/*--------------------------------------
↓↓↓↓↓↓↓↓スマホ設定↓↓↓↓↓↓↓↓
---------------------------------------*/

/*PCスマホ表示なし*/
.pc { display:block; }
.pc_in { display:inline-block; }
.sumaho { display:none; }
@media screen and (max-width:767px){
	.pc { display:none; }
	.pc_in { display:none; }
	.sumaho { display:block; }
}

/*--------------------------------------
フッター
---------------------------------------*/   

    .footer h1 {
        padding: 0 0 1em;
    }
    
    .footer .pagetop {
        width: 48px;
        height: 48px;
        right: 16px;
        bottom: 32px;
        line-height: 48px;
    }
    
    .footer-nav {
        display: none;
    }
    
    .footer .archive-nav h2 {
        display: block;
        text-align: center;
        padding: 0;
        margin: 0 0 1em;
    }
    
    .footer .archive-nav ul {
        display: block;
    }
    
    .footer .archive-nav ul li {
        padding: 0 1em;    
    }



