@charset "utf-8";

/*reset*/
#Wrap {padding-bottom: 0!important}
header#header,
footer#footer {
	font-family: "NotoSansCJKjp", 'Noto Sans JP', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
	font-size:12px;
}
footer#footer {
    position: unset;
    font-family: "Noto Sans JP", sans-serif;
}
header#header ul,
footer#footer ul {
    margin: 0;
    padding: 0;
}
header#header li,
footer#footer li {list-style: none;}
header#header a,
footer#footer a {
	color: #333;
	text-decoration: none;
}

header#header #hdft_pc_header .mycoupon button,
header#header #hdft_smp_header .mycoupon button {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
}

/*768px以下*/
@media screen and (max-width: 735.9px) {
/* =========================================================
◆Header
========================================================= */
#hdft_pc_header{display:none;}
#hdft_smp_header{
	background:#fff;
	margin-bottom: 0;
	height:65px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	-o-box-sizing: content-box;
	-ms-box-sizing: content-box;
	box-sizing: content-box;
	display:block;
}
#hdft_smp_header #headTop{
	height: 64px;
    position: relative;
    z-index: 1005;
    background: #fff;
    border-top: 5px solid #20208c;
    box-sizing: border-box; 
}
#hdft_smp_header #headTop:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

/*ロゴ位置*/
#hdft_smp_header #logo {
    margin: 0;
    padding: 0;
	height: 100%;
	display: flex;
	align-items: center;
}
#hdft_smp_header #logo a[title="NIPPON TRAVEL AGENCY"] img,
#hdft_smp_header #logo a[title="tabiwa"] img,
#hdft_smp_header #logo a[title="WESTER"] img {
	width: 100px;
	margin-right:5px;
	vertical-align: bottom;
}
#hdft_smp_header #logo a[title="with NIPPON TRAVEL AGENCY"] img {
	width:64px;
	vertical-align: bottom;
}

#hdft_smp_header #hdft_headRMain{
	position:absolute;
	right:10px;
	top:0;
}
#hdft_smp_header #hdft_headRMain li{
	float:left;
	height:60px;
	width:50px;
	display: block;
	text-align:center;
	box-sizing: border-box;
}
#hdft_smp_header #hdft_headRMain .area,
#hdft_smp_header #hdft_headRMain .mycoupon {
    height: 40px;
    width: 40px;
    padding: 12px 5px;
    box-sizing: content-box;
}
#hdft_smp_header #hdft_headRMain .area svg,
#hdft_smp_header #hdft_headRMain .mycoupon svg {fill: #20208c;}
#hdft_smp_header #hdft_headRMain .menu{position: relative;}
#hdft_smp_header #hdft_headRMain .menu a span{
	width: 26px;
    height: 2px;
    background: #20208c;
    margin: 29px auto 0;
    display: block;
	transition-duration : 0.1s;
}
#hdft_smp_header #hdft_headRMain .menu::before,
#hdft_smp_header #hdft_headRMain .menu::after{
	content: "";
    width: 26px;
    height: 2px;
    background: #20208c;
    display: block;
	margin: auto;
	position: absolute;
	left: 12px;
	transition-duration : 0.1s;
}
#hdft_smp_header #hdft_headRMain .menu::before{top: 20px;}
#hdft_smp_header #hdft_headRMain .menu::after{bottom: 20px;}
#hdft_smp_header #hdft_headRMain .menu.open a span{opacity: 0;}
#hdft_smp_header #hdft_headRMain .menu.open::before,
#hdft_smp_header #hdft_headRMain .menu.open::after{
	content: "";
    width: 26px;
    height: 2px;
    background: #20208c;
    display: block;
	margin: auto;
	position: absolute;
	left: 12px;
}
#hdft_smp_header #hdft_headRMain .menu.open::before{
    top: 29px;
	transform:rotate(45deg);
}
#hdft_smp_header #hdft_headRMain .menu.open::after{
	bottom: 29px;
	transform:rotate(-45deg);
}

/* =========================================================
◆Gnav
========================================================= */
#hdft_smp_header .headNav{
	position:absolute;
	width:100%;
	z-index:10000;
	left:0;
	display:none;
	border-top: 1px solid #ccc;
}
#hdft_smp_header .headNav dl.search{
	background:#f2f2f2;
	padding: 10px;
	display:table;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#hdft_smp_header .headNav dl dd{
	display:table-cell;
	width:39px;
}
#hdft_smp_header .headNav dl dt input {
	height: 38px;
	width:100%;
	border: none;
	background: #fff;
	padding:2px 5px;
	line-height: 1.3;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#hdft_smp_header .headNav ul{background: #f9f6f4;}
#hdft_smp_header .headNav ul ul{padding: 0;}
#hdft_smp_header .headNav li{font-size:15px;}
#hdft_smp_header .headNav li a{
	color:#3C3D47;
	padding:15px;
	display:block;
	position:relative;
	line-height: 1.72;
}
#hdft_smp_header .headNav .parent a:after,
#hdft_smp_header .headNav .parent > a.open:after{
	position: absolute;
    color: #888;
    font-size: 24px;
}
#hdft_smp_header .headNav .parent a:after{
	content: "+";
    top: 6px;
    right: 12px;
}
#hdft_smp_header .headNav .parent > a.open:after{
	content: "－";
	top: 11px;
	right: 10px;
	font-size: 18px;
}
#hdft_smp_header .headNav li.gray-arrow a:before,
#hdft_smp_header .headNav li.gray-arrow a:after {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    transform: rotate(-45deg);
}
#hdft_smp_header .headNav li.gray-arrow  a:before {
	background: #888;
    top: 23px;
    right: 16px;
}
#hdft_smp_header .headNav li.gray-arrow  a:after {
	background: #f9f6f4;
    /*top: 23px;*/top: 31px;
    right: 18px;
}
#hdft_smp_header .headNav .parent .child{display:none;}
#hdft_smp_header .headNav .parent .child li:last-child{border-bottom: none;}
#hdft_smp_header .headNav .parent .child a{
	color: #3C3D47;
	text-indent: 28px;
	font-size: 0.9em;
}
#hdft_smp_header .headNav .close{
	background: #6eb9da;
	text-align:center;
	font-weight:bold;
	color:#fff;
	font-size:15px;
	padding:10px;
	display:block;
	line-height: 1.72;
}
#hdft_overlay{
	width:100%;
	height:150%;
	position:fixed;
	background:rgba(0,0,0,.7);
	display:none;
	left: 0;
	overflow: hidden;
	top: -1px;
	background:rgba(0,0,0,.7);
	z-index: 999;
}
#hdft_smp_header #pagetop_sp{
	text-align:right;
	position:fixed;
	bottom:10px;
	right:10px;
	z-index:48;
}
#hdft_smp_header .headNav.open {display: block;}
#hdft_smp_header .headNav .parent .child.open {display: block;}
#hdft_overlay.open{display:block;}

/* ヘッダータイトル */
div.hdft_header_title {
	background: #D9EBF3;
	font-size: 10px;
	margin-bottom: 10px;
}
div.hdft_header_title p {
	width: fit-content;
	display: flex;
	align-items: center;
	margin: auto;
}
div.hdft_header_title img {
    width: 24px;
    height: auto;
	margin-right: 12px;
}
hr.hdft_header_title{
	border: none;
	border-top: 1px solid #6eb9da;
	box-shadow: 1px 1px 2px #a6acaf;
	margin-bottom:25px;
}

/* =========================================================
◆Footer
========================================================= */
div#hdft_pc_footer .spnone{display:none;}
div#hdft_pc_footer {
	background: #f9f9f9;
	margin-top: 15px;
}
div#hdft_pc_footer #wide_category dd ul,
div#hdft_pc_footer #recommend_category dd ul {
	display:flex;
	flex-wrap:wrap;
}
div#hdft_pc_footer #wide_category dd li,
div#hdft_pc_footer #recommend_category dd li {
	margin: 2%;
	font-size: 10px;
}
div#hdft_pc_footer #wide_category dd li a,
div#hdft_pc_footer #recommend_category dd li a {color: #343474;}
div#hdft_pc_footer #recommend_category {border-top: 1px solid #eee;}
div#hdft_pc_footer #detailed_category {
	font-size: 14px;
	background: #f9f9f9;
}
div#hdft_pc_footer #detailed_category label{
	height: 40px;
	align-items: center;
	display: grid;
	border-bottom: 1px solid #FFF;
	text-indent: 2%;
	background: #ededed;
	color: #343474;
	position:relative;
	cursor: pointer;
	transition: all 0.5s;
}
div#hdft_pc_footer #detailed_category input{display: none;}
div#hdft_pc_footer #detailed_category label:after{
	content: "＋";
    height: auto;
    width: 20px;
    text-align: center;
    position: absolute;
    right: 5%;
    color: #343474;
	display: grid;
}
div#hdft_pc_footer #detailed_category input:checked ~ label::after {content: "－";}
div#hdft_pc_footer #detailed_category div div{
	height: 0px;
	padding: 0px;
	overflow: hidden;
	opacity: 0;
	transition: 0.1s;
}
div#hdft_pc_footer #detailed_category div div ul{
	display:flex;
	flex-wrap:wrap;
}
div#hdft_pc_footer #detailed_category div div li {
	width: 46%;
	margin: 2%;
	font-size: 13px;
}
div#hdft_pc_footer #detailed_category div div li.bold {width: 96%;}
div#hdft_pc_footer #detailed_category div div li.bold a{color: #000;}
div#hdft_pc_footer #detailed_category div div li a {color: #343474;}
div#hdft_pc_footer #detailed_category input:checked ~ div{
	height: auto;
	padding: 5px;
	opacity: 1;
}
/*その他リンク/コピーライト*/
div#hdft_pc_footer #other_link {
    width: 100%;
    background: #ebebf9;
    font-size: 12px;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
}
div#hdft_pc_footer #other_link li {
    width: 50%;
    padding: 5px 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
div#hdft_pc_footer #other_link li a {
    width: 100%;
    display: block;
}
div#hdft_pc_footer #copyright {
    background: #343474;
    text-align: center;
    color: #fff;
    font-size: 8px;
    padding: 10px 0;
	margin: 0;
}
div#hdft_pc_footer #pagetop {
	width:32px;
	height:32px;
	background:#343474;
    position: fixed;
    bottom: 10px;
    right: 10px;
    z-index: 48;
	border-radius: 50%;
}
div#hdft_pc_footer #pagetop .upward {
	display: inline-block;
	color: #FFF;
	width: 1em;
	height: 1em;
	border: 2px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(25%) rotate(-45deg);
	margin: 10px 11px;
}
}

/*769px以上*/
@media screen and (min-width: 736px) ,print {
/*hover*/
header#header a:hover,
footer#footer a:hover {
    color: #0065d6;
    text-decoration: none;
    opacity: 0.8;
    filter: alpha(opacity = 80);
    -ms-filter: "alpha(opacity=80)";
    -moz-opacity: 0.8;
}

/* =========================================================
◆Head
========================================================= */
#hdft_smp_header{display:none;}/*SP用headerOFF*/

/*=====================
headerArea
=====================*/
#hdft_pc_header {
	width: 100%;
	border-top: 5px solid #1919a9;
}
#hdft_pc_header #HeadInner {
	position: relative;
	/z-index:15; /*ie7 hack*/
	width: 100%;
	max-width:970px;
	min-width:736px;
	margin: 0 auto;
}
#hdft_pc_header .headNav {display: none;}
@media screen and (min-width:735.9px) and (max-width:969px) {
/*余白*/
#hdft_pc_header #HeadInner {
	padding: 0 5px;
	box-sizing: border-box;
}
}

/*ロゴ位置*/
#hdft_pc_header #logo2{
	height: 48px;
	margin: 15px 0;
	display: flex;
	align-items: center;
}
#hdft_pc_header #logo2 a[title="NIPPON TRAVEL AGENCY"] img,
#hdft_pc_header #logo2 a[title="tabiwa"] img,
#hdft_pc_header #logo2 a[title="WESTER"] img {
	width:148px;
	margin-right:15px;
	vertical-align: bottom;
}
#hdft_pc_header #logo2 a[title="with NIPPON TRAVEL AGENCY"] img {
	width:96px;
	vertical-align: bottom;
}

#hdft_pc_header #hdft_headRMain{
	position:absolute;
	right:0;
	top: -5px;
	margin: 0;
}
#hdft_pc_header #hdft_headRMain li{
	float:left;
	height:60px;
	width:64px;
	display: block;
	text-align:center;
	box-sizing: border-box;
}
#hdft_pc_header #hdft_headRMain .area,
#hdft_pc_header #hdft_headRMain .mycoupon {
    height: 40px;
    width: 40px;
    padding: 12px;
    box-sizing: content-box;
}
#hdft_pc_header #hdft_headRMain .area svg,
#hdft_pc_header #hdft_headRMain .mycoupon svg {
    fill: #20208c;
	transition-duration: 200ms;
}
#hdft_pc_header #hdft_headRMain .area:hover svg {
	fill: #EA7C84;
	transition-duration: 200ms;
}
#hdft_pc_header #hdft_headRMain .mycoupon:hover svg {
	fill: #6EB9DA;
	transition-duration: 200ms;
}
#hdft_pc_header #hdft_headRMain .menu{
	position: relative;
	cursor:pointer;
}
#hdft_pc_header #hdft_headRMain .menu a span{
	width: 26px;
    height: 2px;
    background: #20208c;
    margin: 29px auto 0;
    display: block;
	transition-duration : 0.1s;
}
#hdft_pc_header #hdft_headRMain .menu a:hover {
    text-decoration: none;
    opacity: 1;
    filter: alpha(opacity = 100);
    -ms-filter: "alpha(opacity=100)";
    -moz-opacity: 1;
}
#hdft_pc_header #hdft_headRMain .menu::before,
#hdft_pc_header #hdft_headRMain .menu::after{
	content: "";
    width: 26px;
    height: 2px;
    background: #20208c;
    display: block;
	margin: auto;
	position: absolute;
	left: 19px;
	transition-duration : 0.1s;
}
#hdft_pc_header #hdft_headRMain .menu::before{top: 20px;}
#hdft_pc_header #hdft_headRMain .menu::after{bottom: 20px;}
#hdft_pc_header #hdft_headRMain .menu.open a span{opacity: 0;}
#hdft_pc_header #hdft_headRMain .menu.open::before,
#hdft_pc_header #hdft_headRMain .menu.open::after{
	content: "";
    width: 26px;
    height: 2px;
    background: #20208c;
    display: block;
	margin: auto;
	position: absolute;
	left: 19px;
}
#hdft_pc_header #hdft_headRMain .menu.open::before{
    top: 29px;
	transform:rotate(45deg);
}
#hdft_pc_header #hdft_headRMain .menu.open::after{
	bottom: 29px;
	transform:rotate(-45deg);
}

/* =========================================================
◆Gnav_pc
========================================================= */
#hdft_pc_header .headNav{
	position:absolute;
	width: 192px;
	z-index: 1005;
	right: 0;
	display:none;
	box-shadow: 2px 2px 4px #999;
}
#hdft_pc_header .headNav dl.search{
	background:#f2f2f2;
	padding: 10px;
	display:table;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#hdft_pc_header .headNav dl dd{
	display:table-cell;
	width:39px;
}
#hdft_pc_header .headNav dl dt input {
	height: 38px;
	width:100%;
	border: none;
	background: #fff;
	padding:2px 5px;
	line-height: 1.3;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#hdft_pc_header .headNav ul{background: #f9f6f4;}
#hdft_pc_header .pt15 {padding: 15px 0 0;}
#hdft_pc_header .headNav ul ul{padding: 0;}
#hdft_pc_header .headNav li{font-size:13px;}
#hdft_pc_header .headNav li a{
	line-height: 1.72;
	color:#3C3D47;
	padding: 10px 15px;
	display:block;
	position:relative;
}
#hdft_pc_header .headNav .parent a:after,
#hdft_pc_header .headNav .parent > a.open:after{
	position: absolute;
    color: #888;
    font-size: 18px;
}
#hdft_pc_header .headNav .parent a:after{
	content: "+";
    top: 8px;
    right: 11px;
}
#hdft_pc_header .headNav .parent > a.open:after{
	content: "－";
	top: 12px;
	right: 10px;
	font-size: 13px;
}
#hdft_pc_header .headNav li.gray-arrow a:before,
#hdft_pc_header .headNav li.gray-arrow a:after {
    content: "";
    width: 6px;
    height: 6px;
    position: absolute;
    transform: rotate(-45deg);
}
#hdft_pc_header .headNav li.gray-arrow  a:before {
	background: #888;
    top: 19px;
    right: 14px;
}
#hdft_pc_header .headNav li.gray-arrow  a:after {
	background: #f9f6f4;
    top: 19px;
    right: 16px;
}
#hdft_pc_header .headNav .parent .child{display:none;}
#hdft_pc_header .headNav .parent .child li:last-child{border-bottom: none;}
#hdft_pc_header .headNav .parent .child a{
	text-indent: 14px;
	font-size: 0.9em;
}
#hdft_pc_header .headNav .close{
	line-height: 1.72;
	background: #6eb9da;
	text-align:center;
	color:#fff;
	padding: 5px 10px;
	cursor: pointer;
}
#hdft_pc_header .headNav.open {display: block;}
#hdft_pc_header .headNav .parent .child.open {display: block;}

/*=====================
Gnav
=====================*/
/* ヘッダータイトル */
div.hdft_header_title {
	background: #D9EBF3;
	font-size: 12px;
	margin-bottom: 10px;
	padding: 2px 0;
}
div.hdft_header_title p {
	width: fit-content;
	display: flex;
	align-items: center;
	margin: auto;
}
div.hdft_header_title img {
    width: 25px;
    height: auto;
	margin-right: 15px;
}
hr.hdft_header_title{
	border: none;
	border-top: 1px solid #6eb9da;
	box-shadow: 1px 1px 2px #a6acaf;
	margin-bottom:25px;
}

@media screen and (min-width:735.9px) and (max-width:969.9px) {
/*メニューデザイン調整*/
#hdft_pc_header #Gnav li {padding-left: 0!important;}
#hdft_pc_header #Gnav li:before {display:none;}
}

/* =========================================================
◆pagetop
========================================================= */
#hdft_pc_header #pagetop_pc {
	bottom: 20px;
	position: fixed;
	right: 20px;
	text-align: right;
	z-index: 50;
}

/* =========================================================
◆Foot
========================================================= */
div#hdft_pc_footer .pcnone,
div#hdft_pc_footer .spnone {display:none;}
div#hdft_pc_footer {
    width: 100%;
    font: 12px / 1.231 "Noto Sans JP", sans-serif;
    margin-top: 15px;
    background: #ededed;
    color: #333;
}
div#hdft_pc_footer #wide_category {
    width: 100%;
    max-width: 970px;
    min-width: 760px;
    margin: 0 auto;
    text-align: center;
    padding: 40px 0 0;
}
div#hdft_pc_footer #wide_category dd li {
    padding: 7px 6px;
    line-height: 1.3;
    display: inline-block;
}
div#hdft_pc_footer #wide_category dd li:nth-of-type(n+2)::before{
    content: "｜";
    color: #333;
    font-weight: bold;
}
div#hdft_pc_footer #wide_category dd li a {
    color: #333;
    font-weight: bold;
    padding: 0 5px 0 10px;
}
div#hdft_pc_footer #recommend_category {
    width: 580px;
    margin: 0 auto;
    text-align: center;
    padding: 0 0 40px;
}
div#hdft_pc_footer #recommend_category dd li {
    padding: 7px 6px;
    line-height: 1.3;
    display: inline-block;
}
div#hdft_pc_footer #recommend_category dd li:nth-of-type(n+2)::before{
    content: "｜";
    color: #333;
}
div#hdft_pc_footer #recommend_category dd li a {
    color: #333;
    padding: 0 5px 0 10px;
}
div#hdft_pc_footer #detailed_category {
    width: 100%;
    max-width: 970px;
    min-width: 760px;
    margin: 0 auto;
    padding: 20px 0;
    border-top: 1px solid #333;
}
div#hdft_pc_footer #detailed_category input{display: none;}
div#hdft_pc_footer #detailed_category label{
	align-items: center;
	display: grid;
	border-bottom: 1px solid #343474;
	background: #ededed;
	font-size: 14px;
	color: #343474;
	padding: 0 0 10px;
	position:relative;
	cursor: pointer;
	transition: all 0.5s;
}

div#hdft_pc_footer #detailed_category label:after{
	content: "＋";
    height: auto;
    width: 20px;
    text-align: center;
    position: absolute;
	top: 0;
    right: 5%;
    color: #343474;
	display: grid;
}
div#hdft_pc_footer #detailed_category input:checked ~ label::after {content: "－";}
div#hdft_pc_footer #detailed_category input:checked ~ div{
	height: auto;
	padding: 25px 0;
	opacity: 1;
}
div#hdft_pc_footer #detailed_category div div{
	height: 0px;
	padding: 0px;
	overflow: hidden;
	opacity: 0;
	transition: 0.1s;
}
div#hdft_pc_footer #detailed_category > div {margin-bottom: 10px;}
div#hdft_pc_footer #detailed_category > div div {
	width: calc(100% - 115px);
}
div#hdft_pc_footer #detailed_category div div li {
	line-height: 2;
    display: inline-block;
	font-size: 14px;
}
div#hdft_pc_footer #detailed_category div div li::after{
    content: "｜";
    color: #333;
}
div#hdft_pc_footer #detailed_category div div li a {
    color: #333;
    padding: 0 5px 0 0;
}
div#hdft_pc_footer #wide_category dd li a:hover,
div#hdft_pc_footer #recommend_category dd li a:hover,
div#hdft_pc_footer #detailed_category div div li a:hover {
	opacity:1;
	color:#343474;
}

/*その他リンク/コピーライト*/
div#hdft_pc_footer #other_link {
    background: #343474;
    text-align: center;
    color: #fff;
    margin: 0;
    padding: 20px 0;
}
div#hdft_pc_footer #other_link li {
    padding: 0 8px;
    display: inline-block;
    line-height: 1.5;
}
div#hdft_pc_footer #other_link li a {
    color: #fff;
}
div#hdft_pc_footer #copyright {
    background: #343474;
    color: #fff;
    padding-bottom: 20px;
    font-size: 10px;
    text-align: center;
	margin: 0;
}
div#hdft_pc_footer #pagetop {
	width:72px;
	height:72px;
	background:#5353a6;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 50;
	border-radius: 50%;
	box-shadow: 1px 1px 3px #999;
}
div#hdft_pc_footer #pagetop .upward {
	display: inline-block;
	color: #FFF;
	width: 24px;
	height: 24px;
	border: 3px solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(25%) rotate(-45deg);
	margin: 22px 24px;
}

}