@charset "utf-8";

/*-----------------------------------------------------------
航空+宿泊 gadget
-----------------------------------------------------------*/
.box_airset .dis_flex {display:flex;}
.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;
}

.box_airset select,
.box_airset #returnDirection {
	width: 100%;
	height: 26px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 50px;
	border-radius: 4px;
	font-size: 12px;
	background: #FFF;
}
.box_airset .select_airport {
	color: #A6ACAF;
	cursor: pointer;
}
.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: 26px;
	float: left;
	margin: 0 1%;
	padding: 2px 5px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	border-radius: 4px;
	font-size: 12px;
	color: #3C3D47;
	background: #FFF;
	cursor: pointer;
	position: relative;
}
.box_airset .selectday p {text-indent: 25px;}
.box_airset .w50p select {text-indent: 50px;}
.box_airset b {
	position: absolute;
	left: 22px;
	top: 5px;
	font-size: 10px;
	color: #E74444;
	pointer-events: none;
}
.box_airset .w50p b {
	position: absolute;
	left: 25px;
	top: 5px;
}

/*アイコン*/
.box_airset .select_wrap,
.box_airset .noselect_wrap,
.box_airset .rooms {
	width: 32%;
	margin: 0 0.5%;
	position: relative;
}
.box_airset .select_wrap:after,
.box_airset .rooms:after {
	content: "▼";
	position: absolute;
	width: 20px;
	height: 21px;
	top: 2px;
	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: 5px;
	left: 25px;
	color: #A6ACAF;
	font-size: 10px;
	pointer-events: none;
}*/
.box_airset .w50p {
	width: 32%;
	float: left;
	margin: 0 0.5%;
}
/*.box_airset #doAirSearch {
	display: grid;
	background: var(--gadget-botton-color);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.142857142;
	width: 300px;
	min-height: 40px;
	border-radius: 30px;
	box-shadow: 0 1px 2px 0 rgba(60, 61, 71, 0.16);
	margin: auto;
	text-align: center;
	align-items: center;
	position:relative;
}
.box_airset #doAirSearch:before {
	width: 20px;
	height: 24px;
	display: block;
	background-image: url(/sp/shared2015/common/images/icon01.png);
	background-repeat: no-repeat;
	-webkit-background-size: 16px;
	background-size: 16px;
	content: "";
	position: absolute;
	top: 25%;
	left: 72px;
}*/
.box_airset .fw-top .fwnta-btn-search span {margin-left: -25px;}
.box_airset {position: relative;}
.box_airset #togo_wrap,
.box_airset #return_wrap {clear: both;}
.box_airset #togo_wrap dt,
.box_airset #return_wrap dt {display:none;}

/* +-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: 50%;
	height: 50px;
	float: left;
	display: grid;
	align-items: center;
	font-size: 12px;
	text-align: right;
}
.box_airset .minus_or_plus_btn {
	width: 38px;
	height: 50px;
	float: left;
	font-size: 24px;
	color: #A6ACAF;
	cursor: pointer;
	color: #aaa;
}
.box_airset #numberOfRooms,
.box_airset #adultPax,
.box_airset #childAPax,
.box_airset #childBPax {
	width: 18px;
	font-size: 16px;
	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: 50px;
	border: #C1C3C5 solid 1px;
	align-items: center;
	margin: 0 0 10px auto;
	box-sizing: border-box;
}
/*.box_airset .minus_plus.center-selectbox {margin: 8px 0 12px auto;}*/
.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: 14px!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: 16px; 
	font-weight: bold;
}
.box_airset .baby0-2 {
	clear: both;
	margin-bottom: 15px;
	font-size: 12px;
	text-align: center;
}
.box_airset #numberOfRooms {
	width: 110px;
	margin: 0 0 0 auto;
	text-align: left;
	text-indent: 30%;
	cursor: pointer;
}
.box_airset .adult_pax {
	width: 31%;
	float: left;
	margin-right: 2%;
	display: flex;
}
.box_airset .childt_pax {
	width: 32%;
	float: left;
	margin-right: 2%;
	display: flex;
	flex-wrap: wrap;
}
.box_airset .rooms {
	width: 31%;
	float: left;
	display: flex;
	flex-wrap: wrap;
}

/*air carendar*/
#outboundCalendar .air-search-calendar th,
#outboundCalendar .air-search-calendar td {
	width: 24px;
	height:18px;
	font-size: 12px;
	line-height: 1.5;
}
.calendar-hide{display:none;}
#airSearch{position:relative;}
.NTA_air_popup_calendar_contents {
	width: 480px;
    background: #FFF;
    border: 1px solid #bebebe;
    padding: 5px 5px 15px;
    z-index: 2;
}
.NTA_air_popup_calendar_contents > div:first-child {position: relative;}
#outboundCalendar{
	position: absolute;
    top: 0;
}
#returnCalendar{
	position: absolute;
	top: 63px;
}
.NTA_air_popup_calendar_contents.depday{
	top: 100px;
	left: 218px;
}
.NTA_air_popup_calendar_contents.retday{
	top: 143px;
	left: 218px;
}
.NTA_air_popup_calendar_contents .title_air {
    font-weight: bold;
    font-size: 14px;
    text-align: center;
    padding: 2px 0;
    color: #FFF;
    background: #20208c;
}
.NTA_air_popup_calendar_contents .btnbox{float: right;}
.NTA_air_popup_calendar_contents .btnbox a {
    display: block;
	width: 18px;
    height: 18px;
    position: absolute;
	top: 4px;
    right: 5px;
}
.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: 15%;
}
.NTA_air_popup_calendar_contents .btnbox a::after {
    transform: rotate(-45deg);
    transform-origin: 100% 50%;
    left: auto;
    right: 15%;
}
.air-calendar__current {
	display: flex;
	float: left;
	width: 326px;
	margin: -3px auto 3px;
}
.air-calendar__current > span{width:12.5%;display:block;text-align:center;}
.monthPager{
	height: 20px;
	width: 100%;
	padding: 8px 0 0;
}
.calendarbox{
	display: flex;
	justify-content: space-between;
}
.calendarbox > div {
    width: 49%;
	text-align:center;
}
.air-calendar__next {
	float: right;
    width: 8px;
    height: 8px;
    margin-right: 2%;
    border-top: 3px solid #20208c;
    border-right: 3px solid #20208c;
    transform: rotate(45deg);
}
.air-calendar__prev {
	float: left;
    width: 8px;
    height: 8px;
	margin-left: 2%;
    border-top: 3px solid #20208c;
    border-right: 3px solid #20208c;
    transform: rotate(-135deg);
}
.content_air .calenderBox > p{font-weight:bold;}
.NTA_air_popup_calendar_contents table{
	width:100%;
	margin-top: 15px;
}
.NTA_air_popup_calendar_contents table,
.NTA_air_popup_calendar_contents td,
.NTA_air_popup_calendar_contents th {
	border: none;
	border-collapse: collapse;
}
.NTA_air_popup_calendar_contents td,
.NTA_air_popup_calendar_contents th {
	padding: 2px;
	width: 24px;
	text-align: center;
	box-sizing: border-box;
}
.NTA_air_popup_calendar_contents th {
	color: #595959;
	background-color: #fff;
}
.NTA_air_popup_calendar_contents tr > th:first-child,
.NTA_air_popup_calendar_contents tr > td:first-child,
.NTA_air_popup_calendar_contents tr > td.holiday{
	font-weight: bold;
	color: #cc0d21;
}
.NTA_air_popup_calendar_contents tr > th:last-child,
.NTA_air_popup_calendar_contents tr > td:last-child{
	font-weight: bold;
	color: #2051c1;
}
.NTA_air_popup_calendar_contents tr > td.select-enable{cursor: pointer;}
.NTA_air_popup_calendar_contents tr > td.current{
	background-color: #20208c;
	color: #fff;
	border-radius: 15px;
}
.NTA_air_popup_calendar_contents tr > td.select-enable:hover{
	background-color: #20208c;
	color: #fff;
	font-weight: bold;
}
.NTA_air_popup_calendar_contents tr > td.select-disable{
	color: #ccc;
	background-color: rgb(248, 248, 248);
}
.hide-contents__disnone{display:none!important;}
.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: 26px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 45px;
	border-radius: 4px;
	font-size: 12px;
	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: 12px;
    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: 16px;
    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;
}
@media screen and (max-width: 759.9px) {
    .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: 12px;
    width: 100px;
}
.box_airset #pax_summary_wrap dd, #carrier_wrap dd, #keyword_wrap dd, #rooms_summary_wrap dd{
    height: 38px;
    font-size: 12px;
    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: 26px;
	border: #C1C3C5 solid 1px;
	box-sizing: border-box;
	align-items: center;
	display: grid;
	text-indent: 10px;
	border-radius: 4px;
	font-size: 12px;
	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: 80%;
    } 
}
.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: 12px;
    width: 100%;
    height: 50px;
}
.box_airset #pax_wrap .button_wrap{
    text-align: center;
    width: 100%;
}
.box_airset #pax_wrap .btn_complete{
    width: 72%;
    height: 44px;
    border-radius: 3px;
    box-shadow: 0 2px 0 #d6d6d6;
    background-color: #e61b61;
    color: #fff !important;
    font-size: 14px;
    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{font-size: 12px;}
.box_airset #pax_wrap .guidance_p_pax .middle{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;
}