@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700;800&display=swap');

/* SP------------------------------------------------------------ */

#narita_airport_cp * {
  font-size: 16px;
  line-break: anywhere;
  line-break: normal;
}

#narita_airport_cp{
  color: #333333;
  box-sizing: border-box;
  line-height: 1.7em;
}


#narita_airport_cp h1,
#narita_airport_cp h2,
#narita_airport_cp h3,
#narita_airport_cp h4,
#narita_airport_cp h5,
#narita_airport_cp h6,
#narita_airport_cp th,
#narita_airport_cp td,
#narita_airport_cp dt,
#narita_airport_cp dd,
#narita_airport_cp li,
#narita_airport_cp a,
#narita_airport_cp p,
#narita_airport_cp span {
  font-family: "M PLUS Rounded 1c", sans-serif;

}

#narita_airport_cp a,
#narita_airport_cp a:link,
#narita_airport_cp a:visited,
#narita_airport_cp a:active,
#narita_airport_cp a:focus{
  color: #333333;
  text-decoration: none;
}

#narita_airport_cp a:hover{
  color: #333333;
  text-decoration: none;
}

#narita_airport_cp li{
  list-style: none;
}

#narita_airport_cp img{
	width: 100%;
	margin: 0 auto;
}

.common_header{
	width: 100%;
	text-align: center;
	box-shadow: 0 8px 12px -10px rgba(0, 0, 0, 0.2);
	z-index: 5;
	position: relative;
}

.common_header img.hd_pc{
	display: none;
}

.floating-btn {
  position: fixed;
  right: 3%;
	bottom: 5em;
  width: 50vw;
  max-width: 100px;
  min-width: 70px;
  z-index: 2;
}

.floating-btn img {
  width: 100%;
  display: block;
 filter: drop-shadow(0 4px 10px rgba(0, 0, 0, 0.25));
}

a.floating-btn:hover{
  opacity: 1;
}

.divider{
	width: 100%;
	line-height: 0;
}


#narita_airport_cp div#header{
	width: 90%;
	margin: 0 auto;
	padding: 15px 0;
	display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #fff;
}

#narita_airport_cp div#header img{
	display: block;
}

#narita_airport_cp div.hd_logo_narita{
	width: 30%;
}

#narita_airport_cp div.hd_logo{
	width: 30%;
}

#narita_airport_cp section.mv{
	line-height: 0;
}

#narita_airport_cp section.mv h1{
line-height: 0;
}

#narita_airport_cp section.mv h1 img.mv_pc{
	display: none;
}


#narita_airport_cp section.introduction{
	background-image: url(../images/bkg.png);
	background-size: 100%;
	background-repeat: repeat;
}

#narita_airport_cp section.introduction h2{
	width: 90%;
	margin: 0 auto;
	padding: 20px 0 55px;
}


#narita_airport_cp section.introduction p.lead{
	width: 90%;
	margin: 0 auto 56px;
	color: #fff;
	font-weight: 500;
}



#narita_airport_cp ul.slick01{
  padding-bottom: 30px;
}

#narita_airport_cp li.slick_item{
  background: #FDE565;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
  border-radius: 20px;
}

#narita_airport_cp li.slick_item .slick_item_wrap{
	width: 90%;
	margin: 0 auto;
	padding: 30px 0;
}

#narita_airport_cp ul.slick01 h3{
	margin-bottom: 20px;
	font-size: 1.125em;
	text-align: center;
	font-weight: 800;
}

#narita_airport_cp li.slick_item div.pic img{
  width: 100%;
  margin-bottom: 20px;
}

#narita_airport_cp li.slick_item p{
	font-size: 0.875em;
	line-height: 1.5em;
	font-weight: 500;
}

.slick-dots{
  bottom: -35px;
}

.slick-dots > li:first-child:last-child {
    display: none;
}

.slick-track{
  display: flex !important;
}

.slick-slide {
  height: auto !important; 
  margin: 0 10px;
}

.slick-list {
  padding-bottom:10px !important;
}

.slick-dotted.slick-slider {
margin-bottom: 80px !important;
}

.slick-dots li button:before {
font-size: 10px !important;
color: #fff !important;
opacity: 1 !important;
}

.slick-dots li.slick-active button:before {
color: #FFD700 !important;
}

#narita_airport_cp button.arrow-common {
position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 14%;
    padding-top: 6%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    border: none;
    background-color: transparent;
    box-shadow: none;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    z-index: 5;
}


#narita_airport_cp button.arrow-prev {
    background-image: url(../images/slick_arrow_l.png);
    left: 2%;
}
#narita_airport_cp button.arrow-next {
    background-image: url(../images/slick_arrow_r.png);
    right: 2%;
}


#narita_airport_cp div.movie{
	width: 90%;
	margin: 50px auto 0;
}


#narita_airport_cp div.movie h3{
	margin-bottom: 30px;
	font-size: 1.25em;
	color: #fff;
	text-align: center;
	position: relative;
	font-weight: 700;
}

#narita_airport_cp div.movie h3::before,
#narita_airport_cp div.movie h3::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 42px;   
  height: 64px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: translateY(-50%);

}

#narita_airport_cp div.movie h3::before {
  left: 0;
  background-image: url("../images/bracket_l.png");

}

#narita_airport_cp div.movie h3::after {
  right: 0;
  background-image: url("../images/bracket_r.png");

}

#narita_airport_cp div.movie_content{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    margin-bottom: 30px;
    height: 0;
}

#narita_airport_cp div.movie_content iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#narita_airport_cp div.movie p{
	color: #fff;
	margin-bottom: 30px;
	font-weight: 500;
}



#narita_airport_cp div.supervision{
	width: 90%;
	margin: 0 auto;
	padding: 15px;
	background: #fff;
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 5px;
	box-sizing: border-box;
}

#narita_airport_cp div.supervision div.pic{
	width: 30%;
}

#narita_airport_cp div.supervision div.prof{
	width: 68%;
}

#narita_airport_cp div.supervision p.name{
	font-size: 0.875em;
	color: #333333;
	font-weight: 700;
}

#narita_airport_cp div.supervision p.discroption{
	font-size: 0.8em;
	font-weight: 700;
	line-height: 1.5em;
	color: #333333;
}




#narita_airport_cp section.access{
	padding-bottom: 35px;
}

#narita_airport_cp section.access h2{
	width: 100%;
	margin: 0 auto;
	padding: 20px 0 55px;
}


#narita_airport_cp section.access p.lead{
	width: 90%;
	margin: 0 auto 56px;
}

#narita_airport_cp section.access p.lead span{
	font-weight: 700;
	border-bottom: 2px solid #FFD700;
}

#narita_airport_cp ul.transport{
	width: 90%;
	margin: 0 auto;
}

#narita_airport_cp li.transport_item{
	position: relative;
	padding: 50px 20px 20px 20px;
	margin-bottom: 70px;
	border: 4px solid #4FA9D8;
	border-radius: 20px;
}

#narita_airport_cp li.transport_item .icon {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
}


#narita_airport_cp li.transport_item h3{
	margin-bottom: 20px;
	text-align: center;
	font-size: 1.125em;
	font-weight: 900;
	color: #4FA9D8;
}

#narita_airport_cp li.transport_item div.pic{
	margin-bottom: 10px;
}

#narita_airport_cp li.transport_item p{
	font-size: 0.875em;
	line-height: 1.5em;
	font-weight: 500;
}

#narita_airport_cp li.transport_item a{
	width: 100%;
	margin-top: 20px;
	border: 2px solid #4FA9D8;
	border-radius: 50px;
	font-weight: 900;
	text-align: center;
	color: #4FA9D8;
	display: block;
	position: relative;
}

#narita_airport_cp li.transport_item a::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px; 
  height: 18px;
  background: url("../images/arrow_blue.png") no-repeat center;
  background-size: contain;

}


#narita_airport_cp section.entrance{
	padding-bottom: 35px;
	background-image: url(../images/bkg2.png);
	background-size: 100%;
	background-repeat: repeat;
}

#narita_airport_cp section.entrance h2{
	width: 100%;
	margin: 0 auto;
	padding: 0px 0 20px;
}


#narita_airport_cp section.entrance p.lead{
	width: 90%;
	margin: 0 auto 30px;
}

#narita_airport_cp section.entrance p.lead span.line{
	font-weight: 700;
	border-bottom: 2px solid #FFD700;
}

#narita_airport_cp section.entrance p.lead span.note{
	font-size: 0.8em;
	display: block;
	line-height: 1.5em;
	margin-top: 20px;
	padding-left: 1em;
  text-indent: -1em;   
}

#narita_airport_cp section.entrance div.pic{
	width: 90%;
	margin: 0 auto 50px;
}


#narita_airport_cp section.entrance h3{
	width: 90%;
	margin: 0 auto 40px;
	font-size: 1.25em;
	text-align: center;
	position: relative;
	font-weight: 900;
}

#narita_airport_cp section.entrance h3::before,
#narita_airport_cp section.entrance h3::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 42px;   
  height: 64px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  transform: translateY(-50%);

}

#narita_airport_cp section.entrance h3::before {
  left: 0;
  background-image: url("../images/bracket_l_b.png");

}

#narita_airport_cp section.entrance h3::after {
  right: 0;
  background-image: url("../images/bracket_r_b.png");

}

#narita_airport_cp section.entrance a{
	width: 300px;
	margin: 0 auto;
	padding: 20px;
	border-radius: 50px;
	font-weight: 700;
	font-size: 1.125em;
	text-align: center;
	display: block;
	position: relative;
	background-color: #FFD700;
}

#narita_airport_cp section.entrance a::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px; 
  height: 18px;
  background: url("../images/arrow_b.png") no-repeat center;
  background-size: contain;

}


#narita_airport_cp section.service{
	padding-bottom: 35px;
	background-image: url(../images/bkg.png);
	background-size: 100%;
	background-repeat: repeat;
}

#narita_airport_cp section.service h2{
	width: 90%;
	margin: 0 auto;
	padding: 20px 0 55px;
}


#narita_airport_cp section.service p.lead{
	width: 90%;
	margin: 0 auto 56px;
	color: #fff;
	font-weight: 500;
}

#narita_airport_cp section.service p.lead span{
	font-weight: 700;
	border-bottom: 2px solid #FFD700;
}


#narita_airport_cp ul.service_list{
	width: 90%;
	margin: 0 auto;
}

#narita_airport_cp li.service_item{
	position: relative;
	margin-bottom: 70px;
	border-radius: 20px;
	background: #fff;
}

#narita_airport_cp li.service_item:last-child{
	margin-bottom: 0px;
}



#narita_airport_cp li.service_item div.title{
	padding: 25px 0;
	background: #FFD700; 
	border-radius: 20px 20px 0 0;
	position: relative;
}

#narita_airport_cp li.service_item div.title img{
	display: block;
	width: auto;
	height: 40px;
	position: absolute;
	left: 25px;
	top: 50%;
  transform: translateY(-50%);
}

#narita_airport_cp li.service_item h3{
	text-align: center;
	font-size: 1.125em;
	font-weight: 700;
}

#narita_airport_cp li.service_item div.inner{
	width: 90%;
	margin: 0 auto;
	padding: 20px 0;
}

#narita_airport_cp li.service_item div.pic{
	margin-bottom: 10px;
}

#narita_airport_cp li.service_item p{
	font-size: 0.875em;
	font-weight: 500;
	line-height: 1.5em;
}

#narita_airport_cp li.service_item a{
	width: 100%;
	margin-top: 20px;
	border-radius: 50px;
	font-weight: 700;
	text-align: center;
	display: block;
	position: relative;
	background: #FFD700;
}

#narita_airport_cp li.service_item a::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px; 
  height: 18px;
  background: url("../images/arrow_b.png") no-repeat center;
  background-size: contain;

}

#narita_airport_cp section.summary{
	padding-bottom: 35px;
}

#narita_airport_cp section.summary h2{
	width: 100%;
	margin: 0 auto;
	padding: 20px 0 20px;
}


#narita_airport_cp section.summary p.lead{
	width: 90%;
	margin: 0 auto 30px;
	color: #4FA9D8;
	font-weight: 700;
}

#narita_airport_cp section.summary div.pic{
	width: 90%;
	margin: 0 auto 30px;
}

#narita_airport_cp section.summary a{
	width: 300px;
	margin: 0 auto;
	padding: 20px;
	border-radius: 50px;
	font-weight: 700;
	font-size: 1.125em;
	text-align: center;
	display: block;
	position: relative;
}

#narita_airport_cp section.summary a::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px; 
  height: 18px;
  background-size: contain;
}

#narita_airport_cp section.summary a.access{
	margin-bottom: 20px;
	background-color: #4FA9D8;
	color: #fff;
}

#narita_airport_cp section.summary a.access::after {
background: url("../images/arrow_w.png") no-repeat center;
  background-size: contain;
}

#narita_airport_cp section.summary a.special{
	background-color: #B6E0F5;
}


#narita_airport_cp section.summary a.special::after {
background: url("../images/arrow_b.png") no-repeat center;
  background-size: contain;
}



#narita_airport_cp div.cp_wrap{
	background: linear-gradient(to bottom, #FDEFF4, #EAFEFF);
}

#narita_airport_cp div.cp_wrap div.inner{
	width: 90%;
	margin: 0 auto;
	padding-bottom: 120px;
}

#narita_airport_cp div.cp_wrap h2{
	margin-bottom: 30px;
}

#narita_airport_cp div.cp_wrap p{
	margin-bottom: 30px;
	font-weight: 700;
	text-align: center;
}

#narita_airport_cp div.cp_wrap p span.first{
	color: #F43768;
}

#narita_airport_cp div.cp_wrap p span.second{
	color: #F43768;
	font-size: 1.125em;
	border-bottom: 3px solid #F9E741;
}

#narita_airport_cp div.cp_wrap p span.small {
  font-size: 0.5em;
}

#narita_airport_cp div.cp_wrap div.fukidashi{
	width: 80%;
	margin: 0 auto 30px;
}

#narita_airport_cp div.cp_wrap p.note{
	font-size: 0.9em;
	font-weight: 500;
	text-align: left;
}

#narita_airport_cp div.cp_wrap p.note2{
	text-align: left;
	color: #F51848;
	font-weight: 500;
}

#narita_airport_cp div.cp_wrap p.note2 span{
	font-weight: 900;
	border-bottom: 4px solid #F9E741;
}

#narita_airport_cp div.cp_wrap a.btn{
	width: 300px;
	margin: 0 auto;
	padding: 20px;
	border-radius: 10px;
	font-weight: 700;
	font-size: 1.3em;
	text-align: center;
	display: block;
	position: relative;
	background-color: #F43768;
	color: #fff;
}

#narita_airport_cp div.cp_wrap a::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px; 
  height: 18px;
  background: url("../images/arrow_w.png") no-repeat center;
  background-size: contain;

}





@media screen and (min-width:768px) {

#narita_airport_cp .floating-btn {
  position: fixed;
  right: 5%;
  bottom: 100px;
  width: 150px;
  max-width: 300px;
}


body{
background-image: url(../images/bkg2.png);
background-size: 50%;
background-repeat: repeat;
}

#narita_airport_cp,
#narita_airport_cp *{
  font-size: 20px;
}

#narita_airport_cp .common_header{
	width: 100%;
	text-align: center;
	box-shadow: 0 8px 12px -10px rgba(0, 0, 0, 0.2);
	z-index: 5;
	background: #fff;
}

#narita_airport_cp .common_header img.hd_pc{
	display: block;
	max-width: 1440px;
}

#narita_airport_cp .common_header img.hd_sp{
	display: none;
}


#narita_airport_cp div.wrap_inner{
width: 780px;
margin: 0 auto;
 box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.35);
 background: #fff;
}

#narita_airport_cp div.hd_logo_narita{
	width: 20%;
}

#narita_airport_cp div.hd_logo{
	width: 20%;
}

#narita_airport_cp section.mv h1 img.mv_pc{
	display: block;
}

#narita_airport_cp section.mv h1 img.mv_sp{
	display: none;
}



#narita_airport_cp section.introduction h2{
	width: 70%;
}



#narita_airport_cp div.movie h3::before {
  left: 60px;
}

#narita_airport_cp div.movie h3::after {
  right: 60px;
}

#narita_airport_cp div.supervision{
	width: 70%;
}

#narita_airport_cp section.access h2{
	width: 70%;
}

#narita_airport_cp section.access p.lead{
	margin: 0 auto 90px;
}

#narita_airport_cp li.transport_item{
	padding: 60px 20px 20px 30px;
}


#narita_airport_cp li.transport_item .icon {
  width: 80px;
  height: 80px;
}


#narita_airport_cp li.transport_item a{
	width: 80%;
	margin: 20px auto 0;
	padding: 5px 0;
}


#narita_airport_cp section.entrance h2{
	width: 70%;
}

#narita_airport_cp section.entrance h3::before {
  left: 60px;
}

#narita_airport_cp section.entrance h3::after {
  right: 60px;
}

#narita_airport_cp section.entrance p.lead{
	margin: 0 auto 50px;
}

#narita_airport_cp section.entrance p.lead small{
	font-size: 0.7em;
}


#narita_airport_cp section.entrance a{
	width: 400px;
}

#narita_airport_cp section.service h2{
	width: 70%;
}

#narita_airport_cp li.service_item a{
	width: 80%;
	margin: 20px auto 0;
	padding: 5px 0;
}

#narita_airport_cp section.summary h2{
	width: 70%;
}


#narita_airport_cp section.summary a{
	width: 400px;
	margin: 0 auto
}

#narita_airport_cp div.cp_wrap div.inner{
	width: 80%;
}

#narita_airport_cp div.cp_wrap a{
	width: 400px;
}

}

