@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

main {
  display: block;
}

th {
  text-align: left;
  vertical-align: top;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

img {
  vertical-align: bottom;
}

/*──────────────────────────────────────────────

	color	

──────────────────────────────────────────────*/
/*──────────────────────────────────────────────

	margin

──────────────────────────────────────────────*/
/*──────────────────────────────────────────────

	font

──────────────────────────────────────────────*/
/*──────────────────────────────────────────────

	font

──────────────────────────────────────────────*/
/*
@mixin emblema {
  font-family: "Emblema One", system-ui;
  font-weight: 400;
  font-style: normal;
}
*/
/*
@mixin zen_old_mincho {
	font-family: "Times New Roman", Georgia, "Zen Old Mincho", serif;
	font-weight: 900;
	font-style: normal;
 }




 @mixin noto_sans_m {
	@include noto_sans;
	font-weight: medium;
 }



@mixin kode_mono {
	font-family: "Kode Mono", monospace;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
} 

@mixin share_tech_mono {
	font-family: "Share Tech Mono", monospace;
	font-weight: 400;
	font-style: normal;
 }


 @mixin roboto {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-style: normal;
 }


*/
/*──────────────────────────────────────────────

	animation

──────────────────────────────────────────────*/
@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*

@mixin pd {

	@include mq(s) {
		padding-left: $margin_h_m_sp;
		padding-right: $margin_h_m_sp;
	}

}

@function font($type) {
	@return map-get($font, $type);
}


@mixin stick_no_bills {
	font-family: 'Stick No Bills', sans-serif;
}

@mixin barlow {
	font-family: 'Barlow', sans-serif;
}

@mixin alkalami {
	font-family: 'Alkalami', serif;	
}

@mixin noto-san-r {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}

@mixin noto-san-b {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}

@mixin noto-serif {
	font-family: 'Noto Serif JP', serif;
}

*/
@media screen and (max-width: 768px) {
  .sp-n {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .pc-n {
    display: none;
  }
}
._mt-1 {
  margin-top: 1rem !important;
}

._mt-2 {
  margin-top: 2rem !important;
}

._mt-3 {
  margin-top: 3rem !important;
}

._mt-4 {
  margin-top: 4rem !important;
}

._mt-6 {
  margin-top: 6rem !important;
}

._ta-c {
  text-align: center !important;
}

* {
  box-sizing: border-box;
}

a {
  color: inherit;
}

img {
  max-width: 100%;
  height: auto;
}

body {
  overflow-x: hidden;
  font-family: "Segoe UI", "Helvetica Neue", Helvetica, Arial, "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 400;
  background: #12072C;
  color: #F7CDE9;
  line-height: 1.6;
  letter-spacing: 0.1em;
  font-size: 14px;
}
@media screen and (min-width: 769px) {
  body {
    font-size: 16px;
  }
}

small {
  font-size: 14px;
}

body:not(.home) .wrapper {
  opacity: 0;
  transform: translateX(-100vw);
  transition: 0.75s cubic-bezier(0, 1, 0.2, 1);
}
body:not(.home).show .wrapper {
  opacity: 1;
  transform: translateX(0);
}
body:not(.home).stop .wrapper {
  transform: none;
}

.bodyBg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: url(../images/common/bg_sp.jpg) center center/cover;
  pointer-events: none;
}
@media all and (orientation: landscape) {
  .bodyBg {
    background-image: url(../images/common/bg_pc.jpg);
  }
}

.menu {
  font-family: "Electrolize", sans-serif;
  font-weight: 400;
  font-style: normal;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  overflow: hidden;
  z-index: 100;
  background: url(../images/common/sp_bg_menu.svg) center center/cover no-repeat;
  background-color: #004d46;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.1s;
}
.menu.show {
  transform: scale(1);
}
.menu.out {
  transform: scale(1) translateX(100vw);
  transition: 0.5s cubic-bezier(0.9, 0.05, 1, 0.5);
}
@media all and (orientation: landscape) {
  .menu {
    background-image: url(../images/common/pc_bg_menu.svg);
  }
}
.menu .menu__global {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  font-size: 20px;
  line-height: 1;
}
.menu .menu__global li {
  font-size: 112.5%;
  color: #00665b;
  text-align: center;
  transition: 0.3s;
}
.menu .menu__global li a {
  color: inherit;
  text-decoration: none;
  color: #00baab;
}
.menu .menu__global li.hide {
  opacity: 0;
}
@media all and (orientation: landscape) {
  .menu .menu__global {
    font-size: 24px;
  }
}
.menu .menu__sns {
  display: flex;
  position: absolute;
  bottom: 20px;
  justify-content: center;
  gap: 5px;
}
.menu .menu__sns li {
  width: 40px;
  height: 40px;
}
.menu .menu__sns li a {
  display: block;
  width: 100%;
  height: 100%;
}

.hbb {
  position: fixed;
  top: 75%;
  transform: translateY(-50%);
  right: 0;
  width: 60px;
  height: 48px;
  background: rgba(0, 255, 234, 0.23);
  cursor: pointer;
  z-index: 102;
}
.hbb::after, .hbb::before {
  content: "";
  display: block;
  width: 24px;
  height: 1px;
  background: #00ffea;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: 6px;
}
.hbb::after {
  margin-top: -6px;
  transition: 0.3s;
}
.hbb span {
  display: block;
  width: 24px;
  height: 1px;
  background: #00ffea;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.6s;
}
.hbb.open span {
  transform: translate(-50%, -50%) rotate(405deg);
}
.hbb.open::after, .hbb.open::before {
  margin-top: 0;
}
.hbb.open::before {
  display: none;
}
.hbb.open::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (min-width: 769px) {
  .hbb {
    top: 25%;
  }
}

.cockpit {
  opacity: 0.75;
  position: relative;
  z-index: 101;
  animation: blink 3s infinite alternate;
}
.cockpit .cockpit__corner {
  width: 100px;
}
.cockpit .cockpit__corner {
  position: absolute;
  width: 100px;
  height: 50px;
  background: url(../images/common/sp_cockpit_corner.svg) no-repeat;
}
.cockpit .cockpit__corner.--left {
  left: 5px;
  top: 0;
}
.cockpit .cockpit__corner.--right {
  right: 5px;
  top: 0;
  transform: scale(-1, 1);
}
.cockpit .cockpit__top {
  position: fixed;
  top: 5px;
  left: 0;
  width: 100%;
}
.cockpit .cockpit__bottom {
  position: fixed;
  bottom: 5px;
  left: 0;
  width: 100%;
  transform: scale(1, -1);
}
.cockpit .cockpit__center {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 4px;
  background: url(../images/common/sp_cockpit_center.svg) no-repeat;
}
.cockpit .cockpit__side {
  position: fixed;
  top: 50%;
  width: 5px;
  height: 200px;
  transform: translateY(-50%);
  background: url(../images/common/sp_cockpit_side.svg) no-repeat;
}
.cockpit .cockpit__side.--left {
  left: 5px;
}
.cockpit .cockpit__side.--right {
  right: 5px;
  transform: scale(-1, 1) translateY(-50%);
}
@media all and (orientation: landscape) {
  .cockpit .cockpit__top {
    top: 7px;
  }
  .cockpit .cockpit__bottom {
    bottom: 7px;
  }
  .cockpit .cockpit__corner {
    width: 200px;
    height: 100px;
    background: url(../images/common/pc_cockpit_corner.svg) no-repeat;
  }
  .cockpit .cockpit__corner.--left {
    left: 7px;
  }
  .cockpit .cockpit__corner.--right {
    right: 7px;
  }
  .cockpit .cockpit__center {
    width: 120px;
    height: 5px;
    background: url(../images/common/pc_cockpit_center.svg) no-repeat;
  }
  .cockpit .cockpit__side {
    width: 7px;
    height: 200px;
    background: url(../images/common/pc_cockpit_side.svg) no-repeat;
  }
  .cockpit .cockpit__side.--left {
    left: 7px;
  }
  .cockpit .cockpit__side.--right {
    right: 7px;
  }
}

.pageFooter {
  padding-bottom: 1rem;
}
.pageFooter .pageFooter__copy {
  text-align: center;
  font-size: 10px;
}

.annotation {
  font-size: 12px;
}
.annotation .annotation__kome::before {
  content: "※";
}

.banner {
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
}

.btn {
  background: #6b224b;
  color: #F7CDE9;
  text-decoration: none;
  display: inline-block;
  padding: 1.25em 4em;
  line-height: 1;
  position: relative;
}
.btn.--s {
  font-size: 85%;
  padding: 1em 2em;
}
.btn.--arrow::before, .btn.--arrow::after {
  content: "";
  display: block;
  width: 7px;
  height: 1px;
  background: #F7CDE9;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: rotate(45deg);
  margin-top: -2px;
}
.btn.--arrow::after {
  margin-top: 2px;
  transform: rotate(-45deg);
}
.btn.--alphabet {
  font-family: "Electrolize", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.cautionList {
  font-size: 12px;
}
ul.cautionList {
  list-style: disc;
}

.cautionList li {
  list-style-position: inside;
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.cautionList li + li {
  margin-top: 1em;
}
@media screen and (min-width: 769px) {
  .cautionList {
    font-size: 16px;
  }
}

.hd1 {
  font-family: "Anta", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: clamp(42px, 14vw, 64px);
  text-shadow: 0 0 10px rgb(70, 9, 39);
  text-align: center;
  line-height: 1;
  letter-spacing: 0.05em;
  /*
  .hd1__anime {
  	position: relative;
  	&::before {
  		content: "";
  		display: block;
  		width: .5em;
  		height: 1px;
  		background: $color_text;
  		position: absolute;
  		bottom: -5px;
  		left: 50%;
  		transform: translateX(-50%);
  		animation: blink .1s infinite alternate;
  	}
  }
  */
}
.hd1.--in {
  font-size: clamp(36px, 9vw, 56px);
}
.hd1.--mb {
  margin-bottom: 3rem;
}
@media screen and (min-width: 769px) {
  .hd1.--mb {
    margin-bottom: 4rem;
  }
}

.hd-serif {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-weight: 500;
  text-align: center;
  margin-bottom: 1em;
  font-size: clamp(28px, 8vw, 42px);
}

.intro {
  padding-top: 24px;
  padding-bottom: 6rem;
}
.intro .intro__hd {
  margin-left: auto;
  margin-right: auto;
  width: 40%;
  max-width: 200px;
  margin-bottom: 5rem;
}
@media all and (orientation: landscape) {
  .intro {
    padding-top: 48px;
  }
}

.news li {
  border-bottom: solid 1px rgba(221, 170, 195, 0.2);
  padding-bottom: 1em;
}
.news li time {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.news li + li {
  margin-top: 1em;
}
.news a {
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  .news time {
    display: block;
    font-size: 12px;
  }
}
@media screen and (min-width: 769px) {
  .news time {
    display: inline-block;
    width: 8em;
  }
}
.news span.new {
  font-family: "Barlow", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 10px;
  color: #F7CDE9;
  border: solid 1px #F7CDE9;
  line-height: 1;
  display: inline-block;
  padding: 0.25em 0.5em;
  margin-left: 0.5em;
  animation: blink 2s ease-in 0s infinite normal;
}
.news span.new.anime {
  animation: blink 2s ease-in 0s infinite normal;
}

.sec1 {
  padding: 3rem 1rem;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  background-image: url(../images/common/bg_section.png?1), url(../images/common/bg_section2.png?1);
  background-repeat: no-repeat;
  background-position: left top, right bottom;
  background-size: 137% auto;
  background-color: rgba(79, 4, 44, 0.85);
}
.sec1.--s {
  max-width: 960px;
}
@media screen and (min-width: 769px) {
  .sec1 {
    background-image: url(../images/common/pc_bg_section.png?1), url(../images/common/pc_bg_section2.png?1);
    background-position: left top, right bottom;
    background-size: 801px auto;
    padding: 4rem 3.3333333333%;
  }
}
.sec1 .sec1Inner {
  margin-left: auto;
  margin-right: auto;
}
.sec1 .sec1Inner.--s {
  max-width: 960px;
}
.sec1 .sec1Inner.--2s {
  max-width: 800px;
}
.sec1 .sec1Inner.--3s {
  max-width: 600px;
}
@media screen and (max-width: 768px) {
  .sec1 .sec1Child__full {
    margin-left: -1rem;
    margin-right: -1rem;
  }
}

/*──────────────────────────────────────────────

	scroll

──────────────────────────────────────────────*/
.scroll {
  opacity: 0;
  position: relative;
  transform: translateY(30px);
}
.scroll.show {
  opacity: 1;
  transform: translateY(0);
  transition: 1s;
}

/*
@forward "base";
@forward "common";
*/
.bodyBg {
  background-image: url(../images/home/sp_bg.jpg);
}
@media all and (orientation: landscape) {
  .bodyBg {
    background-image: url(../images/home/pc_bg.jpg);
  }
}

.homeIntro {
  margin-left: auto;
  margin-right: auto;
  width: 87.6923076923%;
  max-width: 750px;
  padding-top: 48px;
}
.homeIntro .homeIntro__hd,
.homeIntro .homeIntro__date,
.homeIntro .homeIntro__artist,
.homeIntro .homeIntro__banner {
  margin-left: auto;
  margin-right: auto;
  opacity: 0;
  transition: 3s;
}
.homeIntro .homeIntro__hd.show,
.homeIntro .homeIntro__date.show,
.homeIntro .homeIntro__artist.show,
.homeIntro .homeIntro__banner.show {
  opacity: 1;
}
.homeIntro .homeIntro__hd {
  margin-bottom: 0;
  width: revert;
  max-width: revert;
  transition: 1.5s;
}
.homeIntro .homeIntro__date {
  width: 75%;
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.5));
  margin-top: 5%;
}
.homeIntro .homeIntro__artist {
  width: 98%;
  max-width: 480px;
  margin-top: 15%;
}
.homeIntro .homeIntro__banner {
  margin-top: 15%;
}
@media all and (orientation: landscape) {
  .homeIntro {
    width: 28%;
    padding: 4% 0;
  }
  .homeIntro .homeIntro__date {
    margin-top: 6%;
  }
}

div.carousel {
  /* Touchイベントが他の動作と競合しないようにする */
  touch-action: none;
}
div.carousel .carouselItems {
  position: relative;
  display: flex;
  gap: 6px;
  transition: 0.5s;
}
div.carousel .carouselItems li a {
  width: 120px;
  height: 120px;
  border: solid 1px rgba(221, 170, 195, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
}
div.carousel .carouselItems li.vt img {
  width: auto;
  height: 100%;
}
@media screen and (max-width: 768px) {
  div.carousel {
    overflow: hidden;
  }
  div.carousel ul.events {
    position: relative;
    width: 1655px;
    transition: 0.5s ease-out;
  }
}
@media screen and (min-width: 769px) {
  div.carousel .carouselItems {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    /*
    flex-wrap: wrap;
    justify-content: center;

    li {
    	flex-basis: 16%;
    	flex-shrink: 0;

    	a {
    		width: 100%;
    		height: auto;
    		aspect-ratio: 1/1;
    	}
    }
    */
  }
  div.carousel .carouselItems li a {
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
}

@media screen and (max-width: 768px) {
  .carouselButtons {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
  }
  .carouselButtons .carouselButton {
    width: 30px;
    height: 30px;
    background: rgba(247, 205, 233, 0.25);
    opacity: 0.5;
    position: relative;
  }
  .carouselButtons .carouselButton::before,
  .carouselButtons .carouselButton::after {
    content: "";
    width: 8px;
    height: 1px;
    background: #F7CDE9;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -2px) rotate(45deg);
  }
  .carouselButtons .carouselButton::after {
    transform: translate(-50%, 2px) rotate(-45deg);
  }
  .carouselButtons .carouselButton.--prev {
    transform: scale(-100%);
  }
  .carouselButtons .carouselButton.active {
    opacity: 1;
  }
  .carouselButtons .carouselButton.active::before, .carouselButtons .carouselButton.active::after {
    background: #F7CDE9;
  }
}
.rottenButtons {
  display: flex;
  gap: 1rem;
  width: 60%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  .rottenButtons {
    flex-direction: column;
    text-align: center;
  }
  .rottenButtons li:nth-of-type(2) img {
    width: 72.8888888889%;
  }
}
@media screen and (min-width: 769px) {
  .rottenButtons {
    max-width: 600px;
    flex-direction: row;
    align-items: center;
    gap: 1.5rem;
  }
  .rottenButtons li:nth-of-type(1) {
    flex-basis: 56.4263322884%;
  }
  .rottenButtons li:nth-of-type(2) {
    flex-basis: 31.0344827586%;
  }
}

.introMovie {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.introMovie video {
  position: absolute;
  width: 100%;
  height: auto;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.introMovie video.h {
  width: auto;
  height: 100%;
}

/*
figure.movie {

	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -2;
	overflow: hidden;

	display: flex;
	align-items: center;
	justify-content: center;

	video {

		position: absolute;
		width: 100%;
		height: auto;
		top: 0;
		left: 50%;
		transform: translateX(-50%);

		&.h {
			width: auto;
			height: 100%;
		}

	}
}

div.body-bg {

	background: #000;
	background-image: none;


}



ul.artists {

	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3rem 1rem;
	margin-top: $margin;

	li {
		text-align: center;
	}

	li.no_photo {

		display: flex;
		align-items: center;

		p.logo img {
			width: 100%;
			margin-top: 0;
		}
	}

	li.geinin {

		font-family: 'Kosugi Maru', sans-serif;
		font-weight: 500;

		p {
			margin-top: 0;
		}

		@include mq(m) {
			font-size: 24px;
		}

	}

	//アー写
	figure:nth-of-type(1) {
		background: #000;
	}

	p {
		margin-top: 0;
	}

	p.logo img {
		width: 80%;
		margin-top: .5em;
	}

	div {

		position: relative;

		.new_artist {

			@include share_tech_mono;
			font-size: 12px;
			color: #fff;
			background: $color_pink;
			background: rgba(61, 158, 157, 1);
			position: absolute;
			top: 0;
			left: 0;
			transform: translate(-33%, -66%);
			line-height: 1;
			padding: .25em .5em .15em;
			margin-top: 0 !important;

			@include mq(l) {
				font-size: 16px;
			}

			&.cancel {
				background: #EF3F69;
				transform: translate(-16%, -66%);
				font-size: 9px;
				line-height: 1.5;

				@include mq(l) {
					font-size: 11px;
				}
			}

		}

	}

	@include mq(m) {
		margin-top: $margin*2;
		gap: 80px 40px;
	}

	@include mq(l) {

		figure:nth-of-type(1) {
			margin-bottom: calc((30 / 1080) * 100%);
			overflow: hidden;

			img {
				transition: 2s;
			}

			img:hover {
				transform: scale(1.3);
			}
		}

	}

}


section.mc {
	margin-top: $margin_2;
	@include mq(m) {
		margin-top: $margin_2;
	}
}

div.mc {

	width: calc(50% - 1rem);
	margin-top: $margin_s;
	@include center;

	p.logo img {
		width: 80%;
		margin-top: .5em;
	}

	@include mq(m) {
		//width: calc(33.3333% - 2rem);	
	}

}


.hd2 {

	@include quantico;
	text-align: center;
	line-height: 1;
	font-size: 36px;
	margin-bottom: $margin;

	@include mq(m) {
		font-size: 64px;
		margin-bottom: $margin;
	}

	;

}

.hd3 {

	font-size: 24px;
	margin-bottom: .5em;
	@include mq() {
		font-size: 32px;	
	}

}

.hd-serif {

	font-family: 'Noto Serif JP', serif;
	font-size: 28px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 1.6em;

	@include mq() {
		font-size: 42px;
	}

}

.hd-artist {

	text-align: center;
	line-height: 1;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: $margin;

	@media screen and (max-width: 767px) {
		&:first-line {
			font-size: 32px;
		}
	}

	@media screen and (min-width: 768px) {
		font-size: 42px;
		margin-bottom: $margin;

		br {
			//display: none
		}

		&:first-line {
			font-size: 56px;
		}
	}

}


small {
	font-size: $font_s;
}

body {
	padding-bottom: $margin*4;
}

footer small {
	font-size: $font_3s;
}


table.detail {

	margin-top: $margin_2;
	width: 100%;

	@include mq(s) {

		th {
			font-weight: bold;
		}

		th,
		td {
			display: block;
		}

		tr:nth-of-type(n+2) th {
			padding-top: 1.25em;
		}

		td {
			padding-bottom: 1.25em;
			border-bottom: solid 1px $color_bd;
			font-size: font(s);
		}

	}

	@include mq(m) {

		@include center;
		margin-top: $margin_2;
		width: calc((960/1200)*100%);
		max-width: 960px;

		th,
		td {
			padding-bottom: 1.25em;
			padding-bottom: 1.6em;
		}

		tr:nth-of-type(n+2) th,
		tr:nth-of-type(n+2) td {
			padding-top: 1.25em;
			padding-top: 1.6em;
		}

		th {
			width: 30%;
			white-space: nowrap;
			font-weight: normal;
		}

		tr {
			border-bottom: solid 1px $color_bd;
		}

	}

}



@mixin hd_nuki {
	font-weight: normal;
	background: rgba(221, 170, 195, .1);
	line-height: 1;
	padding: .4em;

	@include mq(m) {
		font-size: $font_m;
	}
}

.tickets-outer {

	@include center;
	max-width: 600px;

	ul.banners {
		margin-top: $margin_s;
		@include center;
		max-width: 400px;
		li + li {
			margin-top: 10px;
		}
		@include mq(m) {
			margin-top: $margin;		
		}
	}

	.gold_sheet {

		figure {
			margin-top: $margin;
		}
	}

}

table.tickets {

	width: 100%;
	margin: $margin auto $margin_s;

	@include mq(m) {
		margin-top: $margin_2;
	}

	th,
	td {
		vertical-align: middle;
	}

	tr.header th {
		@include hd_nuki;
	}

	tr.body {

		th,
		td {
			font-size: $font_l;
			padding-top: 1em;
			font-weight: normal;
		}
	}

	th {
		padding-right: 1em;
		white-space: nowrap;
	}

	td {

		text-align: right;

		.price {
			@include quantico;
			font-size: 24px;
			margin-left: .1em;
			margin-right: .1em;
		}

		.tax {
			font-size: $font_3s;
		}
	}

	.soldout {

		display: flex;
		flex-direction: column;
		align-items: center;
		line-height: 1.3;

		strong {
			font-size: 90%;
			margin-right: 0;
			font-weight: normal;
			@include share_tech_mono;
			line-height: 1;
		}
	}

	@include mq(s) {

		span.line2 {
			font-size: $font_m;
		}

	}

	;

	@include mq(m) {

		tr.body {

			th {
				font-size: font(l);
				padding-right: 2em;
			}

			td {
				font-size: font(s);

				.price {
					font-size: 28px;
				}

			}
		}

		div.soldout {
			display: flex;
			justify-content: flex-end;
			flex-direction: row;

			strong {
				margin-right: 1em;
			}
		}

	}

}


*//*# sourceMappingURL=home.css.map */