@font-face {
    font-family: 'AndesNeueAlt1-Blackit';
    src: url('/assets/common/font/AndesNeueAlt1-Blackit.woff') format('woff'),
        url('/assets/common/font/AndesNeueAlt1-Blackit.ttf') format('truetype');
}

.bgTxt{
    position: relative;
}

.bgTxt::after {
    font-family: 'AndesNeueAlt1-Blackit', sans-serif;
    font-size: 10rem;
    color: #fff;
    text-shadow: 1px 1px 0 #ddd, -1px -1px 0 #ddd, -1px 1px 0 #ddd, 1px -1px 0 #ddd,
        0px 1px 0 #ddd, 0-1px 0 #ddd, -1px 0 0 #ddd, 1px 0 0 #ddd;
    mix-blend-mode: multiply;
}

.enGothic {
    font-family: 'AndesNeueAlt1-Blackit', sans-serif;
    font-weight: 400;
}

.enSerif {
    font-family: 'Cormorant Infant', serif;
    font-weight: 400;
}

.itaric {
    font-style: italic;
}

.enSerifBold {
    font-family: 'Cormorant Infant', serif;
    font-weight: 600;
}

p {
    line-height: 1.6;
    letter-spacing: .03em;
}

.StrongTitle {
    font-size: 4.5rem;
}

.MainTitle {
    font-size: 3.2rem;
}

.SubTitle {
    font-size: 2.2rem;
}

.STitle {
    font-size: 2rem;
}

.XXlTxt {
    font-size: 1.8rem;
}

.XlTxt {
    font-size: 1.6rem;
}

.shopTtl,
.LTxt {
    font-size: 1.5rem;
}

.gNaviTxt,
.MTxt {
    font-size: 1.5rem;
}

.STxt {
    font-size: 1.4rem;
}

.XsTxt {
    font-size: .9rem;
}

.fs400 {
    font-size: 400%;
}

.fs300 {
    font-size: 300%;
}

.fs200 {
    font-size: 200%;
}

.fs180 {
    font-size: 180%;
}

.fs160 {
    font-size: 160%;
}

.fs150 {
    font-size: 150%;
}

.fs140 {
    font-size: 140%;
}

.fs130 {
    font-size: 130%;
}

.fs120 {
    font-size: 120%;
}

.fs110 {
    font-size: 110%;
}

.fs90 {
    font-size: 90%;
}

.fs80 {
    font-size: 80%;
}

.fs70 {
    font-size: 70%;
}

.fs60 {
    font-size: 60%;
}

.fs50 {
    font-size: 50%;
}

.fwBold {
    font-weight: bold;
}

.fsItalic {
    font-style: italic;
}

@media screen and (min-width:641px) {
    ul.featureList li:not(:first-of-type) .SubTitle {
        font-size: 2.1rem;
        letter-spacing: .1em;
    }

    .bgTxt::after {
        font-size: 25rem;
    }
}
@media screen and (min-width:961px) {
.bgTxt::after {
    font-size: 10rem;
}
}
@media screen and (min-width:1260px) {
    .gNaviTxt {
        font-size: 1rem;
    }

    .ecStore {
        font-size: 1.0rem;
    }

    .shopTtl {
        font-size: 1.8rem;
    }

}


/* ==================================================
common
================================================== */
.new::after {
    color: #d83232;
    font-family: 'Work Sans', sans-serif;
    padding: 0 0 0 1rem;
}

.cs::before {
    font-family: 'Cormorant Infant', sans-serif;
    font-weight: 600;
    letter-spacing: 0.07em;
    font-size: 3em;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10;
}

svg {
    fill: #333333;
}

input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.scrollArrow span {
    width: 1px;
}

.slideIn {
    -webkit-transition: all 2.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 2.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media screen and (min-width:1260px) {
    .menuOnline {
        display: none;
    }
}

/* ==================================================
BtnSet
================================================== */
.BtnCenter {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: .8s all ease-in;
    transition: .8s all ease-in;
    display: inline-block;
}

.BtnCenter svg {
    height: 1.2em;
    width: 1.2em;
    margin: 0 10px 0 0;
}

.BtnCenter a {
    -webkit-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.BtnCenter a figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.kadoRBtn {
    border-radius: 6px;
}

.roundBtn {
    border-radius: 4em;
}

.btnLine.mainBtn {
    background: rgba(255, 255, 255, 1);
    border: 1px solid #dc042a;
}

.btnLine.bkBtn {
    background: rgba(255, 255, 255, 1);
    border: 1px solid #0079b5;
    width: 100%;
    max-width: 280px;
    margin: 0 auto;
    height: 60px;
}

.btnLine.grBtn {
    background: rgba(255, 255, 255, 1);
    border: 1px solid #888888;
}

.btnLine.whBtn {
    background: rgba(255, 255, 255, 1);
    border: 1px solid #ffffff;
}

.btnLine.lineBtn {
    background: rgba(255, 255, 255, 1);
    border: 4px solid #31ae36;
}

.btnLine.mainBtn a {
    color: #FAEC4E;
}

.btnLine.bkBtn a {
    color: #292929;
}

.btnLine.grBtn a {
    color: #888888;
}

.btnLine.lineBtn a {
    padding: 15px;
    color: #292929;
}

.btnLine.whBtn a {
    color: #ffffff;
}
.btnLine.grBtn a{
    color: #ffffff;
}

.footerArea .btnLine.whBtn {
    background: rgba(255, 255, 255, 0);
    border: 1px solid rgba(255, 255, 255, .3);
}

.btnBeta.ywBtn {
    background: #FAEC4E;
    border: 1px solid #FAEC4E;
}

.btnBeta.blBtn {
    background: #4ee0fa;
    border: 1px solid #4ee0fa;
}

.btnBeta.glBtn {
    background: #61fa4e;
    border: 1px solid #5bbb47;
}

.btnBeta.orBtn {
    background: #fa974e;
    border: 1px solid #fa974e;
}

.btnBeta.whBtn {
    background: #ffffff;
    border: 1px solid #ffffff;
}

.btnBeta.bkBtn {
    background: #292929;
    border: 1px solid #292929;
}
.btnBeta.grBtn {
    background: #888888;
    border: 1px solid #888888;
}
.btnBeta.mainBtn {
    background: #dc042a;
    border: 1px solid #dc042a;
}

.btnBeta.lineBtn {
    background: #31ae36;
    border: 4px solid #31ae36;
}

.lineBtn a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.lineBtn p.iconImg {
    width: 1.2em;
    height: 1.2em;
    margin: 0 .8em 0 0;
    line-height: 1;
}

.btnBeta.mainBtn a,
.btnBeta.bkBtn a,
.btnBeta.grBtn a,
.btnBeta.lineBtn a {
    color: #ffffff;
}

.btnBeta.whBtn a,
.btnBeta.ywBtn a,
.btnBeta.blBtn a,
.btnBeta.glBtn a,
.btnBeta.orBtn a  {
    color: #333;
}

.btnBeta.lineBtn a {
    padding: 15px;
}

.btnBeta.mainBtn svg,
.btnBeta.bkBtn svg,
.btnBeta.grBtn svg {
    fill: #ffffff;
}

.btnBeta.whBtn svg,
.btnBeta.ywBtn svg,
.btnBeta.blBtn svg {
    fill: #333;
}

.mainBtn p,
.bkBtn p,
.grBtn p,
.shortBtn p,
.ywBtn p,
.grBtn p,
.whBtn p {
    padding: 15px 20px 15px 10px;
}

.linkBtn p {
    padding: 10px 20px 10px 10px;
}

.mainBtn.arwBtn p,
.bkBtn.arwBtn p,
.grBtn.arwBtn p,
.shortBtn.arwBtn p,
.ywBtn.arwBtn p,
.grBtn.arwBtn p,
.whBtn.arwBtn p,
.linkBtn.arwBtn p {
    position: relative;
    display: inline-block;
}

.mainBtn.arwBtn p:after,
.bkBtn.arwBtn p:after,
.grBtn.arwBtn p:after,
.shortBtn.arwBtn p:after,
.ywBtn.arwBtn p:after,
.grBtn.arwBtn p:after,
.whBtn.arwBtn p:after,
.linkBtn.arwBtn p:after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 8px;
    height: 8px;
    -webkit-transform: translate(0, -50%) rotate(-45deg);
    transform: translate(0, -50%) rotate(-45deg);
    -webkit-transition: .8s all ease-in;
    transition: .8s all ease-in;
}

.btnBeta.bkBtn.arwBtn p::after,
.btnBeta.mainBtn.arwBtn p::after,
.btnBeta.grBtn.arwBtn p::after {
    border-right: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
}

.btnBeta.whBtn.arwBtn p::after,
.btnBeta.ywBtn.arwBtn p::after,
.btnBeta.blBtn.arwBtn p::after,
.btnBeta.linkBtn.arwBtn p::after {
    border-right: 1px solid #333;
    border-bottom: 1px solid #333;
}

.btnLine.bkBtn.arwBtn p::after {
    border-right: 1px solid #292929;
    border-bottom: 1px solid #292929;
}
.btnLine.grBtn.arwBtn p::after {
    border-right: 1px solid #888888;
    border-bottom: 1px solid #888888;
}

.btnLine.mainBtn.arwBtn p::after {
    border-right: 1px solid #dc042a;
    border-bottom: 1px solid #dc042a;
}

.btnLine.whBtn.arwBtn p::after {
    border-right: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
}

.footerArea .whBtn p::after {
    border-right: 1px solid rgba(255, 255, 255, .7);
    border-bottom: 1px solid rgba(255, 255, 255, .7);
}

.innerLinkBtn a p {
    letter-spacing: .15em;
    border-bottom: 1px solid #999999;
    padding: 0 10px 8px;
    margin: 0 auto;
    -webkit-transition: all .8s;
    transition: all .8s;
}

.BtnCenter.btnSimple p {
    padding: 5px 40px 5px 15px;
}

.btnSimple {
    position: relative;
}

.btnSimple::before,
.btnSimple::after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0px;
    margin: auto;
    content: "";
}

.btnSimple::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 25px;
    height: 25px;
    border: 1px solid #333;
    border-radius: 50%;
}

.btnSimple::after {
    right: 10px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}



@media screen and (max-width:640px) {
    .ywBtn p,.grBtn p {
        position: relative;
        padding: 0 10px 0 5px;
        display: inline-block;
    }

    .ywBtn p:after,.grBtn p:after {
        right: 1%;
    }

		.schedule {
			width:100% !important;
			margin:0 auto;
			font-size:3.5vw;
		}

		.reserved {
			width:100% !important;
			margin:0 auto;
			font-size:3.75vw;
		}

		.btn-more.career {
			width:90% !important;
			margin:0 auto 5px;
		}
}




.comPopup, .comPopupSet, .comBody, .linePopup {
	display:none;
}

.page-title {
    flex-direction: column;
}

.page-title .MTxt {
  line-height: 1.4;
  margin-top: 1rem;
	color:#fff;
}

p.description {
  width: 96%;
	font-size: var(--font-size-ml);
	text-align:center;
	margin:20px auto 40px;
	line-height:2.0;
}

.timetable_ttl, .timetable {
	text-align:center;
}

.MTxt.movie_menu {
	font-size: var(--font-size-m);
  letter-spacing: 0.22em;
	text-align:center;
	margin:0 auto 20px;
	line-height:2.0;
}

.MTxt.movie_menu a{
	text-decoration:underline;
}

.movieBlk .movSet h3 {
	padding: 20px 30px 15px;
}

/* technology */
.listBlk .technologyList li .technologySet .txtBlk h3 {
  font-size: var(--font-size-xl);
	line-height: 1.6;
}

.listBlk .technologyList li .technologySet .txtBlk h3 + p {
  letter-spacing: 0.1em;
	font-weight: normal;
}

.btnSimple::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 25px;
    height: 25px;
    border: 1px solid #333;
    border-radius: 50%;
}

.cntBody .qaSet .qaQBlk div.qaImgBlk figure {
	margin:0;
}


@media screen and (max-width: 1000px) {
    .page-title {
        padding-bottom: 0;
				margin-bottom: 0;
    }

    .page-title .ttl-page {
        padding-bottom: 0;
    }

		.listBlk {
			margin-top:40px;
		}
}



/* ==================================================
lower page
================================================== */
.topConts{
    overflow-x: hidden;
}
.pankuzu {
    text-align: left;
}

.pankuzu ul {
    display: block;
    padding: 10px;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    white-space: nowrap;
}

.pankuzu ul li {
    display: inline;
    padding: 0 10px 0 0;
    position: relative;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40%;
    flex: 0 0 40%;
}

.pankuzu ul li a {
    text-decoration: underline;
}

.pankuzu ul li + li {
    margin-left: 10px;
}

.pankuzu ul li:not(:last-of-type)::after {
    content: "";
    display: block;
    position: absolute;
    border-bottom: 1px solid #333;
    border-right: 1px solid #333;

    width: .3em;
    height: .3em;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    right: 0;
    top: 35%;
}

@media screen and (min-width:641px) {
    .pankuzu ul {
        display: block;
        padding: 20px;
        overflow-x: none;
        overflow-y: none;
        white-space: normal;
    }
}


@media screen and (max-width: 1000px) {
		.movieBlk .movSet h3 {
		    padding: 20px 15px 15px;
		}

		.movieBlk .movSet h3 {
			font-size: 1.4em;
		}

		.event_btn_long {
			width: 90%;
			font-size: 1.6rem;
		}
}

@media screen and (min-width:1260px) {
    .pankuzu ul {
        padding: 30px;
    }
}


.disno {
	display: none !important;
}

.btn-more {
		text-align: center;
}

.btn-more .btn-cover {
    position: relative;
    display: inline-block;
    width: 220px;
    height: 64px;
    background: rgb(98, 200, 246);
    background: linear-gradient(90deg, rgb(87, 142, 239) 0%, rgb(98, 200, 246) 100%);
    border-radius: 32px;
    padding: 8px;
    cursor: pointer;
    overflow: hidden;
}

.btn-more span:nth-child(1) {
    display: inline-block;
}


.btn-more .btn-cover a, .btn-more .btn-cover span {
    position: relative;
    display: inline-block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #0068AF;
    font-size: var(--font-size-m);
    font-weight: 500;
    letter-spacing: 0.18em;
    background-color: var(--white-color);
    border-radius: 24px;
    box-shadow: 0 2px 0 0 rgba(224, 224, 224, 0.3);
    padding: 14px 10px;
    overflow: hidden;
    z-index: 2;
    transition: color 0.5s;
}

.btn-more a::after, .btn-more span::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    width: 11px;
    height: 9px;
    background-image: url(../img/top/icon_more.svg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    transition: background-image 0.5s;
    transition-delay: 0s;
}

.page_top {
  text-align: right;
  letter-spacing: 0.16em;
  text-decoration: underline;
}


/* BLOG */

#cntWrap  {

}

#cntWrap::before {
	display:none !important;
	content:initial !important;
}


/* Event */

.movArea {
	position:relative;
	margin-bottom: 80px !important;
}

.movArea .event_btn_long_num {
	position:absolute;
	top:-50px;
	left:-50px;
  width: 100px;
  height: 100px;
	border-radius: 50%;
	background-color: #f4abb6;
	display: inline-block;
	box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .5);
}
.movArea .event_btn_long_num span {
	font-size: 1.8rem;
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width :100px;
  text-align:center;
	color:#333;
}


@media screen and (max-width: 1000px) {
	.movArea .event_btn_long_num {
		top:-30px;
		left:-20px;
	  width: 50px;
	  height: 50px;
	}

	.movArea .event_btn_long_num span {
		font-size: 1.2rem;
		width: 50px;
	}
}