@charset "utf-8";

/*-----------------------------------------------
国内ツアーTOP(SP用)CSS
-----------------------------------------------*/
/*----------------------------------------------------
検索ガシェット
----------------------------------------------------*/
/*タブ*/
.section3{
	padding:0 0;
	position:relative;
	margin-bottom:0;
	border:0!important;
}
#tab_top2015{
	margin:0;
	padding:0 0 0 0%;
	vertical-align:bottom;
	display:table;
	width:100%;
	height:55px;
	z-index:9999;
	border-bottom:5px solid #CCC;
	table-layout:fixed
}
#tab_top2015:after{
	content:"";
	background:#000;
	width:100%;
}
#tab_top2015 li{
	font-weight:bold;
	width:33.9999999999999999%;
	display:table-cell;
	text-align:center;
	padding:0 1.5% 0 0;
	vertical-align:bottom;
	position:relative;
}
#tab_top2015 li p{
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	border:1px solid #CCCCCC;
	border-bottom:none;
	height:40px;
	line-height:40px;
	margin:0 auto;
	text-indent:10px;
	bottom:0;
	display:block;
	background:url(//www.nta.co.jp/shared2015/common/images/ic_arrow_red.png) no-repeat 4% -8px #F2F2F2
}
#tab_top2015 li:last-child{padding:0 0 0 0;}
#tab_top2015 li.select p{
	border-top-left-radius: 2px;
	border-top-right-radius: 2px;
	border:2px solid #CCCCCC;
	border-bottom:none;
	height:50px;
	line-height:40px;
	text-indent:10px;
	background:url(//www.nta.co.jp/shared2015/common/images/ic_arrow_red.png) no-repeat 4% 22px #FFFFFF;
	bottom:0;
	display:block;
	position:relative
}
#tab_top2015 li.select p:after{
	content:"";
	position:absolute;
	width:100%;
	height:5px;
	background:#FFF;
	bottom:-2px;
	left:0;
	z-index:9
}
#tab_top2015 li.select p > span{
	border-top:5px solid #DD335D;
	display:block;
}
#tab_top2015 li.select p span > span,
#tab_top2015 li p span > span{
	display:block;
	line-height:1.2em;
	padding:5px 0 0 0;
}
#p_sbox .box-contents {
    border: #BFBFBF solid 2px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    background: #FFF;
    position: relative;
    border-top: 0;
    top: -3px;
}
.mbS10 {margin-bottom: 10px;}

/*airdp-gadget*/
.box_airset {
	padding: 15px 8px;
    border: #BFBFBF solid 2px;
    -webkit-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    background: #FFF;
    position: relative;
    border-top: 0;
    top: -3px;
}

.box_airset input,#pax_wrap button {
margin: 0;
padding: 0;
font-family: inherit;
font-size: inherit;
font-style: inherit;
font-weight: inherit;
font-size: 100%;
border-radius: 0;
-webkit-box-sizing: content-box;
border: none;
box-sizing: border-box;
background-color: transparent;
}

.box_airset input::-webkit-search-decoration,
.box_airset button::-webkit-search-decoration {display: none;}
.box_airset input::focus,
.box_airset button::focus {outline-offset: -2px;}
.box_airset input {
	vertical-align: middle;
	outline:none;
	width: 100%;
}
.box_airset input[type*="radio"]{width: auto;}

/*iit air*/
.box_airset select,
.box_airset #returnDirection {
	width: 100%;
	height: 38px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 90px;
	border-radius: 4px;
	font-size: 14px;
	background: #FFF;
}
.box_airset .select_airport {color: #A6ACAF;}
.box_airset .select_airport * {color: #3C3D47;}
.box_airset .select_airport > option:first-child {display:none;}
.box_airset #returnDirection {
	text-indent: 31px;
	background: #E1E4E7;
	color: #3C3D47;
}
.box_airset .ico_man .select_issitsuninzuu,
.box_airset .ico_bed .select_hakusuu{
	width: 100%;
	height: 42px;
	padding: 5px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	border-radius: 5px;
	background: #FFF;
}
.box_airset .selectday {
	width: 100%;
	height: 38px;
	padding: 2px 5px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	border-radius: 4px;
	font-size: 14px;
	color: #3C3D47;
	background: #FFF;
}
.box_airset .selectday p {text-indent: 105px;}
.box_airset .w50p select {text-indent: 31px;}
.box_airset b {
	position: absolute;
	left: 80px;
	top: 12px;
	font-size: 10px;
	color: #E74444;
	pointer-events: none;
}
.box_airset .w50p b {
	position: absolute;
	left: unset;
	right: 22px;
	top: 12px;
}

/*アイコン*/
.box_airset .select_wrap,
.box_airset .noselect_wrap,
.box_airset .rooms {position: relative;}
.box_airset .select_wrap:after,
.box_airset .rooms:after {
	content: "▼";
	position: absolute;
	width: 20px;
	height: 34px;
	top: 1px;
	right: 1px;
	color: #555;
	font-size: 10px;
	pointer-events: none;
	text-align: center;
	display: grid;
	align-items: center;
	border-radius: 0 5px 5px 0;
	background: #FFF;
}
.box_airset .noselect_wrap:after{content: "";}
.box_airset .ico_place:before,
.box_airset .ico_calendar:before {
	font-family: "Material Symbols Rounded";
	line-height: 1;
	color: #A6ACAF;
	position: absolute;
	margin-top: -11px;
	font-variation-settings: "FILL" 0, "wght" 120, "GRAD" 0, "opsz" 24;
	font-size: 18px;
	top: 58%;
	left: 5px;
	z-index: 1;
}
.box_airset .ico_place#returnDirection:before{left: -26px;}
.box_airset .ico_place:before{content: "\e0c8";}
.box_airset .ico_calendar:before{content: "\e935";}

/*項目文言*/
.box_airset .select_syuppatsubi:after{content: "出発日";}
.box_airset .select_kityakubi:after{content: "帰着日";}
.box_airset .select_syuppatsubi:after,
.box_airset .select_kityakubi:after{
	position: absolute;
	top: 10px;
	left: 36px;
	color: #A6ACAF;
	font-size: 12px;
	pointer-events: none;
}
.box_airset .dis_flex {
	/*flex-wrap: wrap;*/
	display: flex;
}
.box_airset .w50p {
	width: 49%;
	margin-right:1%;
}
.box_airset .w50p:last-child {margin:0 0 0 1%;}
.box_airset .fw-top .fwnta-btn-search span {margin-left: -25px;}
.box_airset {position: relative;}
.box_airset #togo_wrap,
.box_airset #return_wrap {position: relative;}
.box_airset #togo_wrap dt,
.box_airset #return_wrap dt,
.box_airset #pax_wrap dt:nth-of-type(1),
.box_airset #number_of_rooms dt {
	font-size: 10px;
	line-height: 1;
	color: #A6ACAF;
	background: linear-gradient(180deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%);
	position: absolute;
	top: -5px;
	left: 10px;
	z-index: 2;
}
.box_airset #pax_wrap {
	margin: 0 0 15px;
	width: 100%;
}

/* +-btn */
.box_airset #pax_wrap .rooms .guidance_p_pax,
.box_airset #pax_wrap .adult_pax .guidance_p_pax,
.box_airset #pax_wrap .childt_pax .guidance_p_pax {
	width: calc(100% - 110px);
	height: 38px;
	float: left;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	font-size: 14px;
}
.box_airset .minus_or_plus_btn {
	width: 38px;
	height: 38px;
	float: left;
	font-size: 24px;
	color: #A6ACAF;
}
.box_airset #numberOfRooms,
.box_airset #adultPax,
.box_airset #childAPax,
.box_airset #childBPax {
	width: 18px;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	color: #000;
	-webkit-text-fill-color: #000;
	opacity: 1;
}
.box_airset .minus_plus {
	width: 110px;
	border-radius: 4px;
	display: flex;
	border: 1px solid;
	height: 38px;
	border: #C1C3C5 solid 1px;
	align-items: center;
	margin: 0 0 25px auto;
	box-sizing: border-box;
}
/*.box_airset .minus_plus.center-selectbox {margin: 35px 0;}*/
.box_airset .minus_or_plus_btn,
.box_airset input[type="number"],
.box_airset input[type="number"]::-webkit-outer-spin-button, 
.box_airset input[type="number"]::-webkit-inner-spin-button,
.box_airset .minus_or_plus_btn{
	-webkit-appearance: none;
	-moz-appearance:textfield;
	outline:none;
}
.box_airset .minus_or_plus_btn_input{
	width: 45px;
	text-align: center;
	font-size: 15px!important;
	display: inline-block;
}
.box_airset .minus_or_plus_btn_input small{
	font-size: 12px!important;
	position: relative;
	vertical-align: middle;
}
.box_airset input.customSelect{
	width: 18px!important;
	height: 30px;
	text-align: center!important;
	border: none;
	-webkit-text-fill-color: #000;
	opacity: 1;
	padding-bottom: 2px;
}
.box_airset .box_unit {
	float: left;
	font-size: 14px; 
	font-weight: bold;
}
.box_airset .baby0-2 {
	clear: both;
	margin-bottom: 15px;
	font-size: 11px;
	text-align: right;
}
.box_airset #numberOfRooms {
	width: 110px;
	margin: 0 0 0 auto;
	text-align: left;
	text-indent: 30%;
}

/*air carendar*/
.box_airset .NTA_air_popup_calendar_contents {
	width: 100%;
	background: #FFF;
	z-index: 9999;
	padding: 10px;
	border: 1px solid #aaa;
	box-sizing: border-box;
	position: absolute;
	top: 0px;
	left: 0px;
	line-height: 1.5;
}
.box_airset .NTA_air_popup_calendar_contents table {width: 100%;}
.box_airset .NTA_air_popup_calendar_contents .title_air {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 38px;
	font-weight: bold;
	font-size: 14px;
    color: #FFF;
    background: #20208c;
}
.box_airset .NTA_air_popup_calendar_contents .btnbox{
	margin: -28px 10px 0 0;
	float: right;
}
.NTA_air_popup_calendar_contents .btnbox a {
    display: block;
	width: 18px;
    height: 18px;
    position: absolute;
    top: auto;
    right: 20px;
}
.NTA_air_popup_calendar_contents .btnbox a::before,
.NTA_air_popup_calendar_contents .btnbox a::after {
	content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    transform: rotate(45deg);
    transform-origin: 0% 50%;
    position: absolute;
    top: 1px;
    left: 16%;
}
.NTA_air_popup_calendar_contents .btnbox a::after {
    transform: rotate(-45deg);
    transform-origin: 100% 50%;
    left: auto;
    right: 15%;
}
.box_airset .air-calendar__current {
	display: flex;
	float: left;
	width: 90%;
	margin: auto;
}
.box_airset .air-calendar__current > span{
	width: 25%;
	display: block;
	text-align: center;
	font-size: 12px;
}
.box_airset .monthPager{width: 100%;}
.box_airset .air-calendar__next {
	float: right;
	width: 12px;
	height: 12px;
	margin-right: 2%;
	border-top: 3px solid #20208c;
	border-right: 3px solid #20208c;
	transform: rotate(45deg);
}
.box_airset .air-calendar__prev {
	float: left;
	width: 12px;
	height: 12px;
	margin-left: 2%;
	border-top: 3px solid #20208c;
	border-right: 3px solid #20208c;
	transform: rotate(-135deg);
}
.box_airset .content_air .calendarbox.left,
.box_airset .content_air .calendarbox.right{
	width: 98%;
	float: left;
	margin: 0 1%;
}
.box_airset .content_air .calendarbox div > p{
	font-weight: bold;
	text-align: center;
	font-size: 14px;
	margin: 2% 0;
}
.box_airset .NTA_air_popup_calendar_contents td,
.box_airset .NTA_air_popup_calendar_contents th {
	padding: 5px;
	width: 24px!important;
	text-align: center!important;
	box-sizing: border-box;
}
.box_airset .NTA_air_popup_calendar_contents tr > th:first-child,
.box_airset .NTA_air_popup_calendar_contents tr > td:first-child,
.box_airset .NTA_air_popup_calendar_contents tr > td.holiday {
	font-weight: bold;
	color: #cc0d21;
}
.box_airset .NTA_air_popup_calendar_contents tr > th:last-child,
.box_airset .NTA_air_popup_calendar_contents tr > td:last-child{
	font-weight: bold;
	color: #2051c1;
}
.box_airset .NTA_air_popup_calendar_contents tr > td.current{
	background-color: #20208c;
	color: #fff;
	border-radius: 15px;
}
.box_airset .NTA_air_popup_calendar_contents tr > td.select-enable:hover{
	background-color: #eee;
	font-weight: bold;
}
.box_airset .NTA_air_popup_calendar_contents tr > td.select-disable{
	color: #ccc;
	background-color: rgb(248, 248, 248);
}
.box_airset .NTA_air_popup_calendar_contents.calendar-hide{display:none;}
.box_airset #outboundDeparture, #outboundDirection, #returnDeparture{position: relative;}
.box_airset #outboundDepartureList, #outboundDirectionList, #returnDepartureList{
    position: absolute;
    display: none;
    z-index: 10;
	overflow-y: scroll;
	height: 350px;
}
.box_airset #outboundDeparture,
.box_airset #outboundDirection,
.box_airset #returnDeparture{
	width: 100%;
	height: 38px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 45px;
	border-radius: 4px;
	font-size: 14px;
	background: #FFF;
    color: #000;
}
.box_airset ul#outboundDepartureList,
.box_airset ul#outboundDirectionList,
.box_airset ul#returnDepartureList{
    width: 100%;
    background-color: #fff;
    border: 1px solid;
}
.box_airset ul#outboundDepartureList li,
.box_airset ul#outboundDirectionList li,
.box_airset ul#returnDepartureList li{
    height: 28px;
    text-indent: 45px;
    font-size: 14px;
    display: grid;
    box-sizing: border-box;
    align-items: center;
}
.box_airset ul#outboundDepartureList li:hover,
.box_airset ul#outboundDirectionList li:hover,
.box_airset ul#returnDepartureList li:hover{background-color: #c4c4c4;}
.box_airset ul li.area__airgdt{color: #c4c4c4;}
.box_airset ul#outboundDepartureList li.area__airgdt:hover,
.box_airset ul#outboundDirectionList li.area__airgdt:hover,
.box_airset ul#returnDepartureList li.area__airgdt:hover{background-color: #fff;}
.box_airset .adult_pax,
.box_airset .childt_pax,
.box_airset .rooms{width: 100%;}
#childCPax, #child2Pax, #infantPax{
    width: 18px;
    font-size: 14px;
    text-align: center;
    font-weight: bold;
    color: #000;
    -webkit-text-fill-color: #000;
    opacity: 1;
}
.box_airset .selectday{
    display: flex;
    flex-direction: row;
    align-items: center;
}
.box_airset #pax_summary_wrap, #carrier_wrap, #keyword_wrap, #rooms_summary_wrap{
    width: 50%;
    display: flex;
    padding: 0 10px 10px;
}
.box_airset #pax_summary_wrap, #rooms_summary_wrap{
    width: calc((100% - 40px) / 2);
    float: left;
}
.box_airset #pax_summary_wrap, #rooms_summary_wrap, #carrier_wrap, #keyword_wrap{
    width: auto;
    float: none;
}
.box_airset #pax_summary_wrap dt, #carrier_wrap dt, #keyword_wrap dt, #rooms_summary_wrap dt{
    height: 38px;
    display: grid;
    align-items: center;
    font-size: 14px;
    width: 100px;
}
.box_airset #pax_summary_wrap dd, #carrier_wrap dd, #keyword_wrap dd, #rooms_summary_wrap dd{
    height: 38px;
    font-size: 14px;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-grow: 1;
}
.box_airset #keyword_wrap input#keyword___airgdt,
.box_airset #pax_summary_wrap p#paxSummary,
.box_airset #rooms_summary_wrap p{
    width: 100%;
	height: 38px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 10px;
	border-radius: 4px;
	font-size: 14px;
	background: #FFF;
    color: #000;
}
.box_airset #pax_summary_wrap{position: relative;}

/*人数選択パネル*/
.box_airset #pax_wrap{
    position: absolute;
    top: 0;
    left: 120px;
    transform: translateX(0);
    display: flex;
    flex-direction: column;
    border: #C1C3C5 solid 1px;
    padding: 20px;
    background-color: #fff;
    z-index: 10;
    width: 60%;
}
@media screen and (max-width: 759.9px) {
    .box_airset #pax_wrap{
        left: 50%;
        transform: translateX(-50%);
        width: 95%;
    } 
}
.box_airset #pax_wrap.show{display: flex;}
.box_airset #pax_wrap.hide{display: none;}

/* 人数・部屋数パネルクローズボタン */
.box_airset #pax_wrap .close{
    cursor: pointer;
    position: absolute;
    top: 20px;
    width: 30px;
    height: 30px;
    right: 20px;
}
.box_airset #pax_wrap .close:before,
.box_airset #pax_wrap .close:after{
    position: absolute;
    content: '';
    top: 50%;
    right: 6px;
    width: 20px;
    height: 2px;
    background-color: #C1C3C5;
    transform: rotate(45deg);
}
.box_airset #pax_wrap .close:after{transform: rotate(135deg);}

/* 人数・部屋数変更パネル内アイテム */
.box_airset #pax_wrap .pax_label,
.box_airset #pax_wrap .rooms_label{
    font-size: 14px;
    border-bottom: 1px solid #C1C3C5;
    padding: 20px 0 10px 0;
    margin-bottom: 10px;
    font-weight: bold;
}
.box_airset #pax_wrap .childt_pax .childt_pax_label{
    font-size: 14px;
    width: 100%;
    height: 38px;
}
.box_airset #pax_wrap .button_wrap{
    text-align: center;
    width: 100%;
	margin: 5% 0 0;
}
.box_airset #pax_wrap .btn_complete{
    width: 100%;
    height: 44px;
    border-radius: 3px;
    box-shadow: 0 2px 0 #d6d6d6;
    background-color: #e61b61;
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
}

/* 航空会社選択 */
.box_airset #carrier_wrap label{margin: 0 20px 0 0;}
.box_airset #carrier_wrap label img {
    width: revert-layer;
    height: auto;
}

/* スタイル上書き */
.box_airset #pax_wrap .adult_pax .guidance_p_pax,
.box_airset #pax_wrap .childt_pax .guidance_p_pax,
.box_airset #pax_wrap .rooms .guidance_p_pax{
    text-align: left;
    font-size: 14px;
}
.box_airset #pax_wrap .adult_pax .guidance_p_pax,
.box_airset #pax_wrap .childt_pax .childt_pax_label {font-weight: bold;}
.box_airset #pax_wrap .guidance_p_pax .small{
	width: 100%;
	font-size: 12px;
}
.box_airset #pax_wrap .guidance_p_pax .middle{
	width: 100%;
	font-size: 14px;
}
.box_airset #pax_wrap .guidance_p_pax .gray{color: #C1C3C5;}
.box_airset #pax_wrap .notice{
    font-size: 11px;
    color: #E74444;
}
.box_airset #pax_wrap .asterisk{
    font-size: 11px;
    color: #E74444;
}