@charset "UTF-8";

#container{
	font-family: "メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
	font-size: .8rem;
	line-height: 1.5;
	color: #333;
	overflow: hidden;
}

/*--------------------------------------
メインイメージ
----------------------------------------*/
#mainImage {
	margin-bottom: 1rem;
}

#mainImage img {
	width: 100%;
}

/*--------------------------------------
グローバルナビ
----------------------------------------*/
#gNavi,
#btmGnavi {
	margin-bottom: 1.3rem;
	padding: 0;
}

#gNavi ul li,
#btmGnavi ul li {
	float: left;
	margin: 0;
	text-align: center;
	width: 25%;
}

#gNavi ul li a,
#btmGnavi ul li a {
	padding: 0;
	font-size: .8rem;
	font-weight: bold;
	color: #333;
}

#gNavi ul li a span,
#btmGnavi ul li a span {
	display: block;
}

#gNavi ul li a:hover,
#btmGnavi ul li a:hover {
	text-decoration: none;
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}

/*--------------------------------------
コンテンツ
----------------------------------------*/
#section01,
#section02,
#section03,
#section04,
#section05,
#section06 {
	margin-bottom: 2rem;
}

h2.iconBook {
	margin-bottom: 0;
	padding: 3px 0 12px 55px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #017970;
	background: url("../img/icon_s_book.png") 10px 0 no-repeat;
	background-size: 2.3rem;
	border-bottom: 1px solid #7db8b2;
}

h2.iconMap {
	margin-bottom: 0;
	padding: 3px 0 12px 55px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #3bb2dd;
	background: url("../img/icon_s_map.png") 10px 0 no-repeat;
	background-size: 2.3rem;
	border-bottom: 1px solid #9ad4e8;
}

h2.iconAirline {
	margin-bottom: 0;
	padding: 3px 0 12px 55px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #8c85af;
	background: url("../img/icon_s_airline.png") 10px 0 no-repeat;
	background-size: 2.3rem;
	border-bottom: 1px solid #c2bdd3;
}

h2.iconMoney {
	margin-bottom: 0;
	padding: 3px 0 12px 55px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #d5608a;
	background: url("../img/icon_s_money.png") 10px 0 no-repeat;
	background-size: 2.3rem;
	border-bottom: 1px solid #e5acbf;
}

h2.iconCheck {
	margin-bottom: 0;
	padding: 3px 0 12px 55px;
	font-weight: bold;
	font-size: 1.3rem;
	color: #e5a656;
	background: url("../img/icon_s_check.png") 10px 0 no-repeat;
	background-size: 2.3rem;
	border-bottom: 1px solid #efcea5;
}

h2.iconCircle {
	margin-bottom: 0;
	padding: 0 0 5px 5px;
	font-weight: bold;
	font-size: 1.2rem;
	color: #275296;
	border-bottom: 1px solid #aab8d2;
}

h2.iconCircle:before {
	content: "●";
	font-size: 1.4rem;
}



.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
#container h1{
    font-weight: normal;
    font-size: .6rem;
    margin: 2%;
}


#section01 ul li,
#section03 ul li {
	padding: 15px 30px 15px 20px;
	border-bottom: 1px solid #ddd;
	position: relative;
}

#section01 ul li a,
#section03 ul li a {
	display: block;
	color: #333;
}

#section01 ul li:after,
#section03 ul li:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 3px solid #ddd;
	border-right: 3px solid #ddd;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 14px;
	top: 50%;
	margin-top: -7px;
}

.ttlGreen {
	display: block;
	margin-bottom: 3px;
	font-size: 1.1rem;
	color: #047971;
	font-weight: normal;
}

.ttlBlue {
	display: block;
	margin-bottom: 3px;
	font-size: 1.1rem;
	color: #3ab3de;
	font-weight: normal;
}

.ttlPurple {
	display: block;
	margin-bottom: 3px;
	font-size: 1.1rem;
	color: #8c85ae;
	font-weight: normal;
}

.ttlPink {
	display: block;
	margin-bottom: 3px;
	font-size: 1.1rem;
	color: #d8618b;
	font-weight: normal;
}


.txtBox {
	padding: 15px 20px 13px;
	border-bottom: 1px solid #ddd;
}

#section02 ul li,
#section04 ul li {
	padding: 17px 30px 14px 20px;
	border-bottom: 1px solid #ddd;
	position: relative;
}

#section02 ul li a {
	display: block;
	font-size: 1.1rem;
	color: #333;
}

#section04 ul li a {
	display: block;
	font-size: 1.1rem;
	color: #d2628a;
}

#section02 ul li:after,
#section04 ul li:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 3px solid #ddd;
	border-right: 3px solid #ddd;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 14px;
	top: 50%;
	margin-top: -5px;
}

.txtR {
	padding: 10px;
	font-size: .9rem;
	text-align: right;
}

#section05 {
	margin-bottom: 20px;
	padding: 15px 0 20px;
	border-bottom: 1px solid #ddd;
}

.btnSearch {
	margin: 20px 10px 10px;
	padding: 12px 10px 13px;
	font-size: 1.2rem;
	color: #fff;
	text-align: center;
	background: #e5a656;
	background-size: 1.6rem;
	border-radius: 5px;
}

.btnSearch:before {
	content: url("../img/icon_search.png");
	position: relative;
	left: -6px;
	top: 4px;
}

.btnSearch a {
	color: #fff;
}

#section06 h3 {
	margin: 0;
	padding: 5px 10px 4px;
	color: #fff;
	font-size: 1rem;
	background: #295294;
}

#section06 .linkList {
	margin-bottom: 40px;

}

#section06 .linkList li {
	display: table-cell;
	float: left;
	width: 43.5%;
	margin: 0;
	padding: 5% 5% 5% 1%;
	position: relative;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

#section06 .linkList li:nth-child(2n) {

	border-right: none;

}

#section06 .linkList li a {
	display: block;
	text-align: center;
	font-size: .7rem;
	color: #333;
}

#section06 .linkList li a.txtSmall {
	display: block;
	text-align: center;
	font-size: .6rem;
	color: #333;
}

#section06 .linkList li:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #ddd;
	border-right: 2px solid #ddd;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	right: 8px;
	top: 50%;
	margin-top: -4px;
}

/*--------------------------------------
アコーディオンナビ
----------------------------------------*/
.tabcontents_area{
	padding: 0;
	border-top: 1px solid #ddd;
}
.tabcontents_area .moretab{
    padding: 3% 2%;
    border-bottom: 1px solid #ddd;
    background: #fff;
    position: relative;
    font-size: 1rem;
}

.tabcontents_area .moretab:after,
.tabcontents_area .moretab.active:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #ddd;
    border-right: 2px solid #ddd;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    right: 14px;
    top: 50%;
    margin-top: -7px;
}

.tabcontents_area .moretab.active:after{
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    margin-top: -4px;
}

.tabcontents_area #t_01 span{
    color: #017872;
}

.tabcontents_area #t_02 span{
    color: #3bb2dd;
}

.tabcontents_area #t_03 span{
    color: #8c85af;
}

.tabcontents_area #t_04 span{
    color: #d4618a;
}

.tabcontents_area #t_01 span:before,
.tabcontents_area #t_02 span:before,
.tabcontents_area #t_03 span:before,
.tabcontents_area #t_04 span:before{
    content: "";
    width: 3em;
    height: 2em;
    display: inline-block;
    vertical-align: middle;
    background: url("../img/icon_s_book.png") no-repeat center 30%;
    background-size: 2em;
}

.tabcontents_area #t_02 span:before{
    background: url("../img/icon_s_map.png") no-repeat center 30%;
    background-size: 2em;
}
.tabcontents_area #t_03 span:before{
    background: url("../img/icon_s_airline.png") no-repeat center 30%;
    background-size: 2em;
}
.tabcontents_area #t_04 span:before{
    background: url("../img/icon_s_money.png") no-repeat center 30%;
    background-size: 2em;
}


.tabcontent {
	padding: 0;
}

.tabcontent ul li {
	padding: 17px 30px 14px 20px;
	border-bottom: 1px solid #ddd;
	position: relative;
}

.tabcontent ul li a {
	display: block;
	font-size: 1rem;
	color: #333;
}

.tabcontent ul li:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-top: 2px solid #ddd;
    border-right: 2px solid #ddd;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 14px;
    top: 50%;
    margin-top: -7px;
}

.tabcontent .colGreen li a {
	color: #047971;
}

.tabcontent .colBlue li a {
	color: #3ab3de;
}

.tabcontent .colPurple li a {
	color: #8c85ae;
}

.tabcontent .colPink li a {
	color: #d8618b;
}

.tabcontent p{
    margin: 2% 0 6% 0;
}
.tabcontent p.right{
    text-align: right;
}




/*pagetop*/
.go-to-top {
  position: fixed;
  bottom: 10px;
  right: 2px;
  z-index: 105;
}
#scrollarea .go-to-top a img {
  width: 54px;
  height: 49px;
  zoom: 0;
}


/*--------------------------------------
下層ページ
----------------------------------------*/
.section {
	margin: 0 0 2rem;
}

.section h3.ttlGreenBg {
	margin-bottom: 1rem;
	padding: 5px 10px 4px;
	color: #fff;
	font-size: 1rem;
	font-weight: normal;
	text-align: center;
	background: #027a71;
}
.section h3.ttlBlueBg {
	margin-bottom: 1rem;
	padding: 5px 10px 4px;
	color: #fff;
	font-size: 1rem;
	font-weight: normal;
	text-align: center;
	background: #3ab3de;
}
.section h3.ttlPurpleBg {
	margin-bottom: 1rem;
	padding: 5px 10px 4px;
	color: #fff;
	font-size: 1rem;
	font-weight: normal;
	text-align: center;
	background: #8c85ae;
}
.section h3.ttlPinkBg {
	margin-bottom: 1rem;
	padding: 5px 10px 4px;
	color: #fff;
	font-size: 1rem;
	font-weight: normal;
	text-align: center;
	background: #d8618b;
}

.section h3.ttl {
	margin-bottom: .6rem;
	padding: 0 10px;
	font-size: 1rem;
}

.section h4 {
	margin-bottom: .6rem;
	padding: 0 10px;
	font-size: .95rem;
}

.greenCol {
	color: #017970;
}

.blueCol {
	color: #3bb2dd;
}

.purpleCol {
	color: #8c85af;
}

.pinkCol {
	color: #d5608a;
}

.section p.leadtxt {
	margin: 0 10px 15px;
}
.section p.table_title {
	margin: 0 10px 5px;
}

.section ul {
	margin: 0 10px 15px;
	padding: 0;
}

.section ul li {
	margin-left: 20px;
	padding-left: 0;
	list-style: disc;
}

.section ol {
    margin: 0 10px 15px;
    padding: 0;
}

.section ol li {
    list-style-type:decimal;
    margin-left: 20px;
    padding-left: 0;
}

.section p.imgBox {
	margin: 0 10px 15px;
}

.section p img {
	width: 100%;
	height: 100%;
}

.section p.captxt {
	margin: 8px 10px 20px;
}

.section dl.listBlock {
	margin: 0 10px 30px;
}

.section dl.listBlock dt h3 {
	padding: 0 0;
	margin: 0 0 2px;
	font-size: 1rem;
	color: #047971;
	background: none;
	text-align: left;
}

.section dl.listBlock dt h3:before {
	content: "・";
	margin: 0;
	font-size: 1.3rem;
	font-weight: bold;
}

.section dl.listBlock dd {
	margin: 0 5px 15px;
}

.section h2.green {
	margin: 0 10px 20px;
	padding-bottom: 5px;
	font-size: 1.1rem;
	color: #037872;
	text-align: left;
	border-bottom: 1px solid #017970;
	background: none;
}

.section .imgArea {
	margin: 0 0 20px;
	padding: 0;
}

.section .imgArea p {
	margin: 0 10px 10px;
	padding: 0;
	text-align: center;
}

.section .imgArea p img {
	width: 80%;
}

.section .imgArea dl {
	margin: 20px 10px;
	padding: 0;
}

.section .imgArea dl dt {
	margin: 0 0 5px;
	padding: 0;
	color: #037872;
	text-align: center;
	font-size: 1.1rem;
}

.section .imgArea dl dd {
	margin-bottom: 30px;
	padding: 0;
}

.section .cap {
	margin: -35px 10px 20px;
	font-size: .75rem;
}

.section .recBox {
	margin: 0 10px 15px;
	padding: 18px 20px 10px;
	background: #fff;
	border: 1px solid #dcdedd;
	border-radius: 8px;
}

.section .recBox h3 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 1.1rem;
	font-weight: normal;
}

.section .recBox p.green {
	margin: 0 0 10px;
	padding: 0;
	color: #047970;
}

.nblockRec {
	margin-top: 30px;
	padding: 0;
	background: #fff;
}

.nblockRec h3 {
	margin: 0;
	padding: 7px 12px 5px;
	color: #fff;
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	background: #333;
}

.nblockRec ul {
	margin: 20px 10px 0;
	padding-bottom: 8px;
	text-align: center;
}

.nblockRec ul li {
	float: left;
	margin: 0;
	padding: 0;
	width: 33%;
}

.section table.tblBox {
	margin-bottom: 40px;
	width: 100%;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	font-size: 13px;
}

.section table.tblBox tr {
	border-bottom: 1px solid #ddd;
}

.section table.tblBox th {
	padding: 14px 20px 12px;
	background: #efefef;
	vertical-align: middle;
	border-right: 1px solid #ddd;
}

.section table.tblBox td {
	padding: 14px 20px 15px;
	border-right: 1px solid #ddd;
	background: #fff;
}

.section table.tblBox td.midcenter {
	vertical-align: middle;
	text-align: center;
}


.section table h4 {
	margin-bottom: .6rem;
	padding: 0;
	font-size: .95rem;
	color: #333;
}

.tblWide30 {
	width: 30%;
}

.tblWide40 {
	width: 40%;
}

.tblWide50 {
	width: 50%;
}
/*-------------マイルを賢くためる方法smp160805-----*/
.bigTxt {
	padding: 15px 0 10px;
	font-size: 1rem;
	text-align: center;
}


/*-------------安い航空券の予約方法smp160622-----*/

p.left_indent {
	margin-left:20px;
	padding-bottom: 15px;
	font-weight: bold;
}

.center{
	text-align: center;
}
.notes{
	font-size: 0.7rem;
}
.section table.tblBox td.jal{
	background: #FBF5F5;
}
.section table.tblBox td.ana{
	background: #EBEFF6;
}
/*-------------空港の表組smp170117-----*/
.section table.tblBox th.mid_gray{
	background: #a9a9a9;
	color: #fff;
}

/*--------------------------------------
支店窓口 or WEB or アプリ？
----------------------------------------*/
.app{
    border: 1px solid #ccc;
    padding: 20px 20px 10px;
    width: 55%;
    margin: 0 auto 15px;
}
.app .app_icon{
    width: 60%;
    margin: 0 auto 5px;
}
.app p{
    margin: 0 0 5px 0;
}
/*--------------------------------------
経由地で航空会社を選ぶ
----------------------------------------*/
.section table.tblBox th.th_b{
	background: #666;
	color: #fff;
}
/*--------------------------------------
注目の「航空券+ホテル」の同時購入
----------------------------------------*/
.t_table_box{
    margin: 0 0 10px 0;
}
.t_table{
    display: table;
    width: 100%;
}
.t_table .cell{
    display: table-cell;
    vertical-align: top;
}
.t_right{
    text-align: right;
}
.flight-hotel .b_t_dotted{
    margin: 10px 0 0 0;
    border-top: 1px dotted #666;
    text-align: right;
    padding: 10px 0 0 0;
}
.flight-hotel .center.img.b_t_dotted{
    text-align: center;
}
.flight-hotel .img img{
    width: 35%;
    margin: 0 0 10px 0;
}
.flight-hotel .notice_box{
    border: 2px solid #75B347;
    border-radius: 6px;
    padding: 8px;
    font-size: 0.7rem;
    margin: 10px 0 0 0;
    text-align: center;
}
.flight-hotel p{
    margin-bottom: 10px;
}
/*--------------------------------------
TOPへ戻るボタン
----------------------------------------*/
.btnTopBack {
	margin: 20px 10px 40px;
	padding: 14px 10px 12px;
	font-size: 1.1rem;
	color: #fff;
	text-align: center;
	background: #0064b2;
	background-size: 1.6rem;
	border-radius: 5px;
}

.btnTopBack:before {
	content: "＞";
	position: relative;
	left: -4px;
	top: 1px;
}

.btnTopBack a {
	color: #fff;
}

/*--------------------------------------
航空券コンテンツ201612
----------------------------------------*/
.table_reset table {
	border-collapse: separate !important ;
	border-spacing:0 !important ;
	empty-cells:show !important ;
	border-top:1px solid #ddd ;
	border-right:none ;
	border-bottom:none ;
	border-left:1px solid #ddd ;
}
.table_reset table th, .table_reset table td {
	border-top:none ;
	border-right:1px solid #ddd ;
	border-bottom:1px solid #ddd ;
	border-left:none ;
}
.dotted_l{border-left: 1px dotted #666 !important;}
.dotted_r{border-right: 1px dotted #666 !important;}
.dotted_t{border-top: 1px dotted #666 !important;}
.dotted_b{border-bottom: 1px dotted #666 !important;}

.dotted_b_w{border-bottom: 1px dotted #fff !important;}
.solid_b_w{border-bottom: 1px solid #fff !important;}


.w_ad_min{width:70px;}
.w_ad_mid{width:115px;}
.w_ad_max{width:185px;}

.v_mid{vertical-align: middle !important;}
.rec_line{
    border-collapse: collapse;
    font-size: 13px;
    margin-bottom: 40px;
    width: 100%;
    border-top: 1px solid #3CB2E1;
    border-bottom: 1px solid #3CB2E1;
}

.toptitle{
    border-bottom: 1px solid #FF9600;
    color: #FF9600;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    padding: 0 0 10px 10px;
}

.rec_line td{
    min-width:85px;
    padding:5px 10px 5px 10px;
}

.p_line{
    background: #e9f9ff; none repeat scroll 0 0;
}

.cap_r{
    font-size: 12px;
    margin:0 auto !important;
    text-align: right;
}

.placelink {
    margin:0px 15px 20px 15px;
    text-align:left;
}

.placelink a{
    white-space: nowrap;
}
.placelink a:before{content: "|　"; color:#000;}
.firstplacelink:before{content: "|　"!important; color:#000;}
.lastplacelink:after{content: "　|"!important; color:#000;}

.lcc_airline table.tblBox th.th_b{
	text-align:center;
	width:35%;
}

.lcc_airline table.tblBox{
	margin-bottom:0 !important;
}

.lcc_airline p{
	margin-bottom:5px;
	text-align:right;
	padding:5px 5px 0px 0px;
	font-size: 84%;
}

.lcc_airline table th{
	text-align:left;
}

.cap_sp{
	font-size: 84%;
	15px 10px 20px;
}

.section table.tblBox_ad {
	margin-top:-15px;
}

.section table.tblBox th.th_h{
	padding: 8px 20px 6px;
}

.highlight li{
	list-style: none !important;
	margin:0px 0px 15px 0px !important;
}

.m_t_reg{
	margin-top: 35px!important;
}

.m_t_reg_mid{
	margin-top: 20px!important;
}

.btn_his{
	display: block;
	background: #666;
	border-radius: 5px;
	color: #fff;
	font-size: 1.1rem;
	margin: 20px 10px 40px;
	padding: 14px 10px 12px;
	text-align: center;
}

/*--------------------------------------
航空券コンテンツ201702
----------------------------------------*/
.w_ad_ct_a{width:40%;}
.w_ad_ct_b{width:10%;}
.top_table{	margin-bottom: 20px!important;}

.ct_table{
	margin-bottom: 20px!important;
}

.ct_table span{
	font-size: 120%;
	font-weight: bold;
}

.ct_table td{
	padding:7px 7px!important;
	text-align: center;
	vertical-align: middle!important;
}

.ct_table tbody tr th{
	background-color: #a9a9a9!important;
	color: #fff;
}

.ct_border{
	border-right: none!important;
}

.ct_border_b{
	border-bottom: none!important;
}

.s_purple{
	background-color: #e1def2!important;
}

.gray{
	background-color: #efefef!important;
}

.txt_right{
	text-align: right!important;
}

.txt_left{
	text-align: left!important;
}
.m_b_reg{
	margin-bottom: 5px!important;
}

.p_ast_text{
	margin-top: -15px!important;
	font-size: 92%;
}
