@charset "utf-8";

*,
*:before,
*:after {
  box-sizing: border-box;
}


/* TOP SP
========================================*/
@media (max-width: 768px) {
	

	#mainArea.newChitoseAirport {
		position: relative;
		padding-top:0;
	}

	#mainArea.newChitoseAirport > .wrapInr {
		position:relative;
		padding: 0;
	}

	#mainArea.newChitoseAirport .downloadWrap {
		background:#fee101;
	}
	#mainArea.newChitoseAirport .downloadWrap .floatL {
		width:28%;
	}
	#mainArea.newChitoseAirport .downloadWrap .floatL img {
		height:auto;
		width:100%;
	}
	#mainArea.newChitoseAirport .downloadWrap ul {
		float:right;
		width:70%;
	}
	#mainArea.newChitoseAirport .downloadWrap ul li {
		float:left;
		padding:7% 3%;
		width:44%;
	}
	#mainArea.newChitoseAirport .downloadWrap ul li img {
		height:auto;
		width:100%;
	}
	#mainArea.newChitoseAirport section {
		background:#f6f6f6;
		box-shadow:0 0 0 0;
		padding:15px 3.2%;
	}
	#mainArea.newChitoseAirport div.campaign {
		margin-bottom: 20px;
		padding:0 5vw;
	}
	#mainArea.newChitoseAirport .subttl {
		font-size:125%;
		font-weight:bold;
		line-height:165%;
		text-align:center;
	}
	#mainArea.newChitoseAirport .subttl span {
		font-size:85%;
	}
	#mainArea.newChitoseAirport .subttl img {
		margin:0 5px 0 -15px;
		height:auto;
		width:15px;
	}
	#mainArea.newChitoseAirport h1 {
		border:0;
		font-size:150%;
		font-weight:bold;
		line-height:150%;
		margin:5px -3% 0;
		text-align:center;
		width:106%;
	}
	#mainArea.newChitoseAirport h1 img {
		width:100%;
	}
	#mainArea.newChitoseAirport .countdownWrap {
		margin-bottom:30px;
		position:relative;
	}
	#mainArea.newChitoseAirport .countdownImg {
		margin-top:10px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .countdownImg img {
		height:auto;
		width:300px;
	}
	#mainArea.newChitoseAirport .countdownDate {
		margin-left:-64px;
		position:absolute;
		top:110px;
		left:50%;
		width:128px;
	}
	#mainArea.newChitoseAirport .countdownDate img {
		margin:0 0 0 3px;
		height:105px;
		width:61px;
	}
	#mainArea.newChitoseAirport .animation {
		margin-left:-64px;
		position:absolute;
		top:110px;
		left:50%;
		width:128px;
	}
	#mainArea.newChitoseAirport .animation p {
		background-image:url(../img/okinawa/countdown.png);
		background-size:61px auto;
		display:inline-block;
		margin:0 0 0 3px;
		height:105px;
		width:61px;
		opacity:0;
	}
	#mainArea.newChitoseAirport .animation p:nth-of-type(1) {
		-webkit-animation:hide 2.0s;
		animation:hide 2.0s;
	}
	#mainArea.newChitoseAirport .animation p:nth-of-type(2) {
		-webkit-animation:hide 2.5s;
		animation:hide 2.5s;
	}
	#mainArea.newChitoseAirport .buttonWrap {
		position:relative;
	}
	#mainArea.newChitoseAirport .button {
		padding: 20px 0 0;
	}
	#mainArea.newChitoseAirport .button a {
		background:url(../img/common/arrow_btn.png) no-repeat 96% center #fee101;
		background-size:9px 15px;
		border-radius:4px;
		display:block;
		font-size:110%;
		font-weight:bold;
		padding:15px 0 15px 23px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .yagi {
		position:absolute;
		top:9px;
		left:9%;
		z-index:10;
	}
	#mainArea.newChitoseAirport .yagi img {
		height:auto;
		width:44px;
	}
	#mainArea.newChitoseAirport .downloadCmn {
		margin-top:0;
		padding-top: 15px;
	}

	#mainArea.newChitoseAirport .proContent {
		padding:15px 0 0;
	}
	#mainArea.newChitoseAirport .proContent h1 {
		margin: 10px auto;
		width: 80vw;
	}

	#mainArea.newChitoseAirport .proContent section {
		position: relative;
		background: #fff;
		padding: 4vw 3vw;
		margin: 0 auto;
	}
	#mainArea.newChitoseAirport .proContent .img100 {
		width:100%;
		height: auto;
	}
	#mainArea.newChitoseAirport .proContent .project {
		line-height:165%;
	}
	#mainArea.newChitoseAirport .proContent .project h2 {
		font-size:125%;
		font-weight:bold;
		line-height:150%;
		margin-bottom:15px;
	}
	#mainArea.newChitoseAirport .proContent .project .hr {
		margin:10px -3.5% 20px;
	}
	#mainArea.newChitoseAirport .proContent .project .bnr {
		width:100%;
	}
	#mainArea.newChitoseAirport .proContent .campaign h3 {
		margin-bottom:20px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail {
		position:relative;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail .end {
		background:rgba(210,210,210,0.8);
		position:absolute;
		top:-10px;
		left:-3.5%;
		height:calc(100% + 20px);
		width:107%;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail .end p {
		align-items:center;
		display:flex;
		justify-content:center;
		height:100%;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail .end p img {
		width:225px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .period {
		margin:0 auto 12px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .period dt img {
		width:40vw;
	}
	#mainArea.newChitoseAirport .proContent .campaign .period dd {
		font-size:4.0vw;
		font-weight:bold;
		line-height:135%;
		margin-top:5px;
		text-align: center;
	}
	#mainArea.newChitoseAirport .proContent .about {
		position: relative;
		background: #fff;
		padding: 4vw 5vw;
		margin: 18vw auto 0;
		box-shadow:0px 0px 10px 0px rgba(0,0,0,0.2);
	}
	#mainArea.newChitoseAirport .proContent .about:before {
		content: "";
		background:  url("../img/top/bg_about.png") no-repeat;
		background-size: 90vw;
		position: absolute;
		top: -15vw;
		left: 5vw;
		width: 100%;
		height: 100%;
	}
	#mainArea.newChitoseAirport .proContent .campaign p, #mainArea.newChitoseAirport .proContent .about p {
		font-size: 2vw;
		font-weight:bold;
		line-height: 1.5;
		margin: 0;
	}
	#mainArea.newChitoseAirport .proContent .about p {
		padding: 0 3vw;
	}
	#mainArea.newChitoseAirport .proContent .campaign .image {
		padding: 15px 0;
	}
	#mainArea.newChitoseAirport .proContent .campaign .center {
		text-align: center;
	}
	#mainArea.newChitoseAirport .proContent .campaign .campaign02 img {
		width: 75vw;
	}
	#mainArea.newChitoseAirport .proContent .about .about_title {
		font-size: 5vw;
		margin-bottom: 3vw;
		padding: 0;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview {
		line-height:165%;
		margin-top:20px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview.notice {
		color:#666;
		font-size:92%;
		margin-top:15px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview dt {
		font-weight:bold;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview.notice dd {
		padding-left:1em;
		text-indent:-1em;
	}
	

	#mainArea.newChitoseAirport .proContent .campaign .campImg {
		margin-top:40px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .proContent .campaign .campImg img {
		width:100%;
	}
}

#mainArea.newChitoseAirport .proContent .adding {
	margin-top: 15px;
	padding:  0 4px 4px;
	background: #71b04d;
	border-radius: 10px;
}
#mainArea.newChitoseAirport .proContent .adding .adding_date p {
	padding: .5em 0;
	color: #fff100;
	font-size: 4vw;
	text-align: center;
}
#mainArea.newChitoseAirport .proContent .adding .adding_date p span {
	color: #fff;
	font-size: 80%;
}
#mainArea.newChitoseAirport .proContent .adding .adding_text {
	padding: 1em;
	background: #fff;
	border-radius: 8px;
}
#mainArea.newChitoseAirport .proContent .adding .adding_text p {
	font-size: 3.5vw;
}
#mainArea.newChitoseAirport .proContent .adding .adding_text p:nth-of-type(2) {
	font-size: 3.8vw;
	color: red;
}
#mainArea.newChitoseAirport .proContent .adding .adding_text p:nth-of-type(3) {
	font-size: 2.8vw;
}

#mainArea.newChitoseAirport .proContent .adding .adding_text span {
	margin-right: 0.1em;
	background: #fff100;
}

.mapLinkBtn {
	filter: drop-shadow(3px 3px 8px #aaa);
	transition: .3s;
}
.mapLinkBtn:hover {
	opacity: .6;
	filter: drop-shadow(3px 3px 8px #fff);
}

/* TOP PC
========================================*/

@media screen and (min-width: 769px) {
	#mainArea.newChitoseAirport section {
		padding:50px 20px 70px;
	}
	#mainArea.newChitoseAirport .subttl {
		font-size:300%;
		font-weight:bold;
		line-height:165%;
		text-align:center;
	}
	#mainArea.newChitoseAirport .subttl span {
		font-size:75%;
	}
	#mainArea.newChitoseAirport .subttl img {
		margin:0 10px 0 -50px;
	}
	#mainArea.newChitoseAirport h1 {
		border:0;
		font-size:370%;
		font-weight:bold;
		line-height:150%;
		margin:10px 0 0;
		text-align:center;
		width:100%;
	}
	#mainArea.newChitoseAirport .countdownWrap {
		margin-bottom:50px;
		position:relative;
	}
	#mainArea.newChitoseAirport .countdownImg {
		margin-top:10px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .countdownDate {
		margin-left:-127px;
		position:absolute;
		top:220px;
		left:50%;
		width:254px;
	}
	#mainArea.newChitoseAirport .countdownDate img {
		margin:0 0 0 5px;
	}
	#mainArea.newChitoseAirport .animation {
		margin-left:-127px;
		position:absolute;
		top:220px;
		left:50%;
		width:254px;
	}
	#mainArea.newChitoseAirport .buttonWrap {
		position:relative;
	}
	#mainArea.newChitoseAirport .button {
		margin:0 auto;
		padding-top:40px;
		width:600px;
	}
	#mainArea.newChitoseAirport .button a {
		background:url(../img/common/arrow_btn.png) no-repeat 94% center #fee101;
		border-radius:5px;
		display:block;
		font-size:160%;
		font-weight:bold;
		line-height:100%;
		padding:27px 0 27px 40px;
		text-align:center;
		width:560px;
	}
	#mainArea.newChitoseAirport .button a:hover {
		background:url(../img/common/arrow_btn_on.png) no-repeat 94% center #808080;
		color:#fff;
		text-decoration:none;
	}
	#mainArea.newChitoseAirport .yagi {
		position:absolute;
		top:2px;
		left:218px;
		z-index:10;
	}
	#mainArea.newChitoseAirport .proContent h1 {
		margin: 60px 0 30px;
		width: 100%;
	}
	#mainArea.newChitoseAirport .proContent .project {
		line-height:180%;
		margin:-10px 0 30px;
		padding:45px 40px;
	}
	#mainArea.newChitoseAirport .proContent .project h2 {
		font-size:140%;
		font-weight:bold;
		line-height:150%;
		margin-bottom:20px;
	}
	#mainArea.newChitoseAirport .proContent .project .hr {
		margin:15px -40px 40px;
	}
	#mainArea.newChitoseAirport .proContent .project .bnr {
		margin:0 auto;
		width:906px;
	}
	#mainArea.newChitoseAirport .proContent .project .bnr a:hover {
		opacity:0.7;
	}
	#mainArea.newChitoseAirport .proContent section {
		padding:20px 50px;
	}
	#mainArea.newChitoseAirport .proContent .campaign h2 {
		margin-bottom: 10px;
	}
	#mainArea.newChitoseAirport .proContent .campaign h3 {
		margin-bottom:40px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail {
		position:relative;
		margin:0 auto 40px;
		width:900px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail .end {
		background:rgba(210,210,210,0.8);
		position:absolute;
		top:-20px;
		left:-90px;
		height:calc(100% + 40px);
		width:calc(100% + 180px);
	}
	#mainArea.newChitoseAirport .proContent .campaign .detail .end p {
		align-items:center;
		display:flex;
		justify-content:center;
		height:100%;
	}
	#mainArea.newChitoseAirport .proContent .about {
		position: relative;
		border-radius:10px;
		background: #fff;
		box-shadow:0px 0px 10px 0px rgba(0,0,0,0.2);
		padding: 30px 50px;
		margin: 190px auto 30px;
	}
	#mainArea.newChitoseAirport .proContent .about:before {
		content: url("../img/top/bg_about.png");
		position: absolute;
		top: -165px;
		left: 0;
		width: 100%;
	}
	#mainArea.newChitoseAirport .proContent .campaign p, #mainArea.newChitoseAirport .proContent .about p {
		font-size: 145%;
		font-weight:bold;
		line-height: 1.5;
		margin: 0;
	}
	#mainArea.newChitoseAirport .proContent .campaign .image {
		padding: 30px 0;
	}
	#mainArea.newChitoseAirport .proContent .about .about_title {
		font-size: 240%;
		margin-bottom: 30px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .period {
		margin-bottom:20px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .period dd {
		font-size:260%;
		font-weight:bold;
		line-height:135%;
		margin-top:5px;
		text-align: center;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview {
		font-size:121%;
		line-height:165%;
		margin-top:30px;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview.notice {
		color: #6f6f6f;
	}
	#mainArea.newChitoseAirport .proContent .campaign .overview dt {
		font-weight:bold;
	}

	#mainArea.newChitoseAirport .proContent .campaign .campImg {
		margin-top:60px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .proContent .event .detail {
		margin:0 auto 40px;
		width:720px;
	}
	#mainArea.newChitoseAirport .proContent .event .period {
		margin-bottom:20px;
		padding:0 50px;
	}
	#mainArea.newChitoseAirport .proContent .event .period dd {
		font-size:250%;
		font-weight:bold;
		line-height:135%;
		margin-top:5px;
	}
	#mainArea.newChitoseAirport .proContent .event .eventImg {
		margin-top:50px;
		text-align:center;
	}
	#mainArea.newChitoseAirport .proContent .event .overview {
		font-size:121%;
		line-height:165%;
		margin-top:30px;
	}
	#mainArea.newChitoseAirport .proContent .event .overview dt {
		font-weight:bold;
	}
	#mainArea.newChitoseAirport .proContent .adding {
		margin: 30px 0 40px;
		border-radius: 14px;
	}
	#mainArea.newChitoseAirport .proContent .adding .adding_date p {
		font-size: 200%;
		padding: .5em 0 .3em;
		line-height: 1;
	}
	#mainArea.newChitoseAirport .proContent .adding .adding_text {
		padding: 25px;
		border-radius: 12px;
		text-align: center;
	}
	#mainArea.newChitoseAirport .proContent .adding .adding_text p {
		font-size: 145%;
	}
	#mainArea.newChitoseAirport .proContent .adding .adding_text p:nth-of-type(2) {
		font-size: 200%;
	}
	#mainArea.newChitoseAirport .proContent .adding .adding_text p:nth-of-type(3) {
		font-size: 120%;
	}

	#mainArea .downloadCmn {
		margin-top: 0;
	}
}

/* マップ
========================================*/
#map .wrapInr nav ul {
	display: flex;
	justify-content: space-between;
}
#map .wrapInr nav ul li {
	width: calc((100% - 2px) / 2); 
	font-size: min(5vw, 24px);
	font-weight: 700;
	text-align: center;
}
#map .wrapInr nav ul li:not(:has(a)) {
	padding: .7em 0 .6em;
}
.map_domestic .wrapInr nav ul li:not(:has(a)) {
	background: #bedcdc;
}
.map_international .wrapInr nav ul li:not(:has(a)) {
	background: #dcc8e1;
}
#map .wrapInr nav ul li a {
	display: block;	
	padding: .7em 0 .6em;
	background: #dcdcdc;
}

.floorMap { 
	width: 96%;
	margin: 4px auto 1em;
}
.floorNav {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3px;
}
.floorNav li {
	width: calc((100% - 6px) / 4);
}
.floorNav li a {
	display: block;
	position: relative;
	width: 100%;
	padding: .8em 0 1.6em;
	background: #dcdcdc;
	font-size: 15px;
	font-weight: 700;
	text-align: center;
}
.floorNav li a::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	width: 0;
	height: 0;
	margin: 1px auto 0;
	border-style: solid;
	border-width: .6em .5em 0 .5em;
	border-color: #333 transparent transparent transparent;
}
.floorNav li.active a {
	color: #fff;
}
.map_domestic .floorNav li.active a {
	background: #007376;
}
.map_international .floorNav li.active a {
	background: #904d95;
}
.floorNav li.active a::after {
	border-color: #fff transparent transparent transparent;
}

.mapFrame {
	position: relative;
	width: 100%;
	padding: 4px;
}
.map_domestic .mapFrame  {
	border: 2px solid #007376;
}
.map_international .mapFrame  {
	border: 2px solid #904d95;
}
.mapDesc {
	margin-left: 6.5rem;
}
.floorNum {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 6rem;
	padding: .4em 0;
	color: #fff;
	font-size: 2.4em;
	text-align: center;
}
.map_domestic .floorNum {
	background: #007376;
}
.map_international .floorNum {
	background: #904d95;
}
.mapFrame_inner{
	overflow: scroll;
	height: 100vw;
}
.mapBtn {
	text-align: center;
}
.mapBtn a {
	display: inline-block;
	margin: 10px 0;
	padding: 10px 20px 8px;
	border-radius: 26px;
	background-color: #da0e2b;
	color: #fff;
	font-size: 1.2em;
	font-weight: 600;
	text-decoration: none;
	box-shadow:  0 5px 0 #a00724
}
.mapArea {
	display: none;
}
.mapArea.is-active {
	display: block;
}
.mapText {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 1em;
	font-size: 3vw;
	font-weight: bold;
}
.recio {
	width: 20%;
}
.recio img {
	width: 100%;
	height: auto;
}
.mapText p {
	margin-left: .8em;
}
.mapText p span {
	display: inline-block;
	width: 5em;
	height: 2em;
	margin: 0 .5em -.5em;
	background: #ffd58c;
}
@media screen and (min-width: 769px) {
	.mapFrame_inner{
		height: 550px;
	}
	.mapText {
		font-size: 20px;
	}
	.recio {
		max-width: 130px;
	}
}

#shop {
	width: 95%;
	margin: 0 auto 30px;
}
#shop h3 {
	position: relative;
	margin: 2em 0 .8em;
	z-index: 0;
}
#shop h3 span {
	padding-right: .5em;
	background-color: #fff;
}
#shop h3::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 100%; 
	height: 1px;
	background-color: #333;
	z-index: -1;
}

.shopList_wrapper {
	display: flex;
	width: 100%;
}
.shopList {
	width: 50%;
}
.shopList_item {
	display: flex;
	margin-bottom: .5em;
}
.shopList_item-num p {
	display: block;
	margin-right: .5em;
	padding: .6em .2em;
	color: #fff;
}
.shopList_item-num .green {
	background-color: #45b035;
}
.shopList_item-num .green02 {
	background-color: #007973;
}
.shopList_item-num .blue {
	background-color: #00a0e9;
}
.shopList_item-num .pink {
	background-color: #eb6da5;
}
.shopList_item-num .brown {
	background-color: #be956a;
}
.shopList_item-num .navy {
	background-color: #1D2088;
}
.shopList_item-num .purple {
	background-color: #A84B73;
}
.shopList_item-num .orange {
	background-color: #e94709;
}
.shopList_item-num .yellow {
	background-color: #f7ab00;
}
.shopList_item-num .white {
	background-color: #eee;
	color: #000;
}
.shopList_item-num .num-floor {
	color: #af5000;
}
.shopList_item-shopName {
	font-weight: 700;
}
.shopList_item-shopName span {
	display: inline-block;
	margin-right: .2em;
	font-weight: 500;
}
.shopList_item-time {
	font-size: 90%;
}

.back_btn {
	margin-top: 40px;
	text-align: center;
}
.back_btn img {
	width: 100%;
	height: auto;
}
@media screen and (min-width: 769px) {
	#shop {
		width: 100%;
		margin: 0 auto;
	}
	.back_btn {
		margin-top: 100px;
	}
	.back_btn img {
		width: auto;
	}
}


.new-end {
	background: url(../img/top/bg_footer.png) bottom center no-repeat;
	background-size: contain;
	margin: 0;
	height: 22vw;
	width: 100%;
}

@media screen and (min-width: 769px) {
	.new-end {
		height: 353px;
	}
}