@charset "utf-8";

@media all and (-ms-high-contrast: none) {
.important_text ul {
	width: 39% !important;
}
}

.cf:after{
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
	font-size: 0;
	line-height: 0;
}


/**************************************

				構造

**************************************/

.box {
	-js-display: flex;
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.box_left {
	width: 50%;
	margin-right: 1%;
}

.box_right {
	width: 50%;
}

.box_left2 {
	width: 50%;
	margin-right: 1%;
}

.box_right2 {
	width: 50%;
}

.container {
	width: 1200px;
	margin: 0 auto;
}

#footer .footer_container .box_left.wd48{
	width: 48%;
}
#footer .footer_container .box_right.wd48{
	width: 48%;
}

/**************************************

				ヘッダー

**************************************/
header {
	width: 100%;
	background-color: rgba(255,255,255,0.6);
	padding: 10px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	line-height: 1;
}

.header_container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 1200px;
	margin: 0 auto;
	position: relative;
}

/**************************************

				ナビゲーション

**************************************/
nav {
	display: block;
	padding: 15px;
}

nav ul li {
	display: block;
	width: 100%;
	border-bottom: 1px dashed #bfbfbf;
}

nav ul li a {
	display: block;
	padding: 10px;
	font-size: 18px;
	color: #000;
	text-align: left;
	line-height: 1;
}

nav ul li a:before {
	content: url("../images/common/arw.png");
	padding-right: 5px;
	vertical-align: 4px;
	vertical-align: middle;
	line-height: 1;
}


/**************************************

				スライド

**************************************/
#slide img {
	width: 100%;
}

p.title {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	transform: translate(-50%, -50%);
	z-index: 99;
}

.swiper-slide {
	width: 100%;
	position: relative;
}

#slide0 {
	background: url("../images/slide01.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}


#slide01 {
	background: url("../images/slide02.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}

#slide02 {
	background: url("../images/slide03.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}

#slide03 {
	background: url("../images/slide04.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}

#slide04 {
	background: url("../images/slide05.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}

#slide05 {
	background: url("../images/slide06.jpg");
	background-size: cover;
	background-position: center center;
	height: 460px;
	position: relative;
}

/**************************************

				お知らせ

**************************************/

#news_box {
	width: 1200px;
	margin: 2em auto 0 auto;
	padding: 20px;
	background-color: #FFFDFD;
	-js-display: flex;
	display: flex;
	/*align-items: center;*/
	margin-top: 0;
	position: relative;
	z-index: 99;
	border: none;
}

#news_box .news_title {
	background: #1367A3;
	position: relative;
	padding: 20px;
}

#news_box .news_title p {
	width: 145px;
	height: 100px;
	color: #ffffff;
	font-size: 24px;
	text-align: center;
	vertical-align: middle;
}

#news_box .news_title span {
	display: block;
	position: absolute;
	bottom: 20px;
}

#news_box .news_title span a {
	display: block;
	padding: 8px 25px;
	font-size: 14px;
	color: #000;
	border-radius: 3px;
	background: #fff;
	line-height: 1;
	text-align: center;
}

#news_box .news_title span a:before {
	content: url("../images/common/news_arw.svg");
	display: inline-block;
	padding-right: 5px;
	vertical-align: middle;
	line-height: 1;
}

#news_box .news_list {
	width: auto;
	margin-left: 40px;
}

#news_box .news_list ul li {
	display: block;
	width: 100%;
	padding: 10px 0;
}

#news_box .news_list ul li span.big1 {
	font-size: 30px;
	color: #db0000;
}

#news_box .news_list ul li span.big2 {
	font-size: 26px;
}

#news_box .news_list ul li a {
	font-size: 16px;
	color: #000F66;
	text-decoration: underline;
	text-align: left;
	text-decoration-color: #000F66;
}

#news_box .news_list ul li span.date {
	color: #000000;
	margin-right: 1em;
	vertical-align: middle;
}

#news_box .news_list ul li a:hover {
	text-decoration: underline;
}

#news_box .news_list ul li:before {
	content: url("../images/common/arw.png");
	padding-right: 5px;
	vertical-align: 4px;
	vertical-align: middle;
	line-height: 1;
}
#news_box .news_list ul li {
	text-indent: -0.6em;
	padding-left: 1em;
	line-height: 1.4;
	border-bottom: dotted 2px #888;
}
#news_box .news_list ul li span.small {
	font-size: 20px;
}
span.red {
	color: #db0000;
}

.resultline{
	text-align:right;
}

/**************************************

				電話・メール

**************************************/

.top_contact {
	display: block;
	width: 100%;
	margin-top: 30px;
	padding: 10px 20px;
	border-radius: 10px;
	background-color: #1367a3;
	line-height: 1;
}

.top_contact ul {
	display: block;
}

.top_contact ul li {
	display: inline-block;
	width: 30%;
	vertical-align: middle;
}

.top_contact ul li.title {
	font-size: 28px;
	font-weight: normal;
	color: #fff;
	line-height: 1.6;
	font-family: fot-rodin-pron, Arial, sans-serif; 
	padding: 8px;
	line-height: 1;
	width: 55%;
}

.top_contact ul li:last-child {
	width: 38%;
	margin-left: 2%;
	padding-left: 2%;
	border-left: 1px solid #fff;
}

.top_contact ul li:last-child span {
	display: inline-block;
	margin-right: 20px;
	vertical-align: middle;
	line-height: 1;
}

.top_contact ul li.title span {
	display: block;
	font-size: 18px;
	margin-bottom: 8px;
	line-height: 1.4;
}

.top_contact ul li a.tel {
	display: block;
	color: #fff;
	font-size: 24px;
	font-weight: normal;
	font-family: fot-rodin-pron, Arial, sans-serif; 
}

.top_contact ul li a.tel:before {
	content: url("../images/tel_icon.png");
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	line-height: 1;
}

.top_contact ul li a.mail {
	display: inline-block;
	width: auto;
	padding: 15px;
	border-radius: 5px;
	background: #fff;
	color: #1367a3;
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	line-height: 1;
	vertical-align: middle;
	font-family: fot-rodin-pron, Arial, sans-serif; 
}

.top_contact ul li a.mail:before {
	content: "";
	border-top: 10px solid transparent;
	border-right: 20px solid #ffffff;
	border-bottom: 10px solid transparent;
	position: absolute;
	left: -20px;
	top: 15px;
}

.sp img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}

/**************************************

				メインメニュー

**************************************/


.main_menu {
	width: 100%;
	margin-top: 70px;
	padding: 80px 20px 25px 20px;
	background-color: #fffed4;
	position: relative;
}

.main_menu p.main_title {
	display: block;
	width: 465px;
	margin: auto;
	padding: 10px;
	font-size: 24px;
	color: #000;
	background: #fffed4;
	border-radius: 10px 10px 0 0;
	text-align: center;
	position: absolute;
	left: 0;
	right: 0;
	top: -40px;
	margin: auto;
	box-shadow: 6px -6px 7px -2px rgba(0,0,0,0.3);
}

.colum3 {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.colum3 .item {
	width: calc(100% / 3);
	margin-right: 20px;
	padding: 0 20px;
	/*min-height: 345px;*/
	min-height: 400px;
	position: relative;
}

.colum3 .item:last-child {
	margin-right: 0;
}

.content {
	margin-top: 90px;
}

p.list {
	font-size: 16px;
	color: #000000;
	font-family: "M PLUS Rounded 1c";
	line-height: 1.8;
}

.midashi {
	display: block;
	margin-bottom: 1em;
	font-size: 26px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	font-family: 'Kosugi', sans-serif;
	line-height: 1.6;
}

.midashi2 {
	display: block;
	margin-bottom: 10px;
	padding: 5px;
	border: 1px solid #fff;
	color: #fff;
	font-size: 19px;
	text-align: center;
}

#no1 {
	background: #ff7357;
}

#no1:before {
	content: url("../images/no1.png");
	position: absolute;
	top: -40px;
	left: 10px;
}

#no1:after {
	content: url("../images/img_01.png");
	position: absolute;
	top: -35px;
	right: 20px;
}

#no1 span {
	position: absolute;
	bottom: -40px;
	right: 20px;
}

#no2 {
	background: #3598eb;
}

#no2:before {
	content: url("../images/no2.png");
	position: absolute;
	top: -40px;
	left: 10px;
}

#no2:after {
	content: url("../images/img_03.png");
	position: absolute;
	top: 15px;
	right: 20px;
}

#no2 span {
	position: absolute;
	bottom: -40px;
	right: 20px;
}


#no3 {
	background: #4ab476;
}

#no3:before {
	content: url("../images/no3.png");
	position: absolute;
	top: -40px;
	left: 10px;
}

#no3:after {
	content: url("../images/img_05.png");
	position: absolute;
	top: -35px;
	right: 20px;
}

#no3 span {
	position: absolute;
	bottom: -40px;
	right: 20px;
}



.content ul {
	width: 100%;
	padding-left: .5em;
	vertical-align: top;
	font-size: 13px;
	line-height: 1.6;
	font-size: 0;
}

.content li{
	position: relative;
	display: inline-block;
	margin-right: 1em;
	padding-left: 8px;
	font-size: 16px;
	color: #000000;
	font-family: "M PLUS Rounded 1c";
	line-height: 1.8;
}
 
.content li:before {
  content: "";
  position: absolute;
  top: 13px;
  left: 0;
  width: 4px;
  height: 4px;
  background-color: #000000;
  border-radius: 50%;
}


/*******************/

.important_text {
	display: block;
	width: 90%;
	margin: 50px auto 0 auto;
	padding: 15px 10px;
	border: 1.5px dashed #ff0000;
	border-radius: 5px;
	line-height: 1;
}

.important_text ul {
	display: inline-block;
	width: 43%;
	padding-left: .5em;
	vertical-align: top;
	font-size: 13px;
	line-height: 1.6;
}

.important_text li{
  position: relative;
  padding-left: 8px;
  font-size: 11px;
}
 
.important_text li:before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 4px;
  height: 4px;
  background-color: #000000;
  border-radius: 50%;
}

.important_text ul:last-child {
	width: 52%;
}

p.vertical {
	display: inline-block;
	width: auto;
	font-size: 11px;
	border: 1px solid #7f7f7f;
	padding: 5px 10px;
	text-align: center;
	writing-mode: vertical-rl;
	line-height: 1;
}

/**************************************

				おすすめプラン

**************************************/

.recommended_box {
	display: block;
	margin-top: 40px;
	padding: 40px 40px 80px 40px;
	background-color: #FCF9D9;
}

.recommended_box .plan_box {
	display: flex;
	width: 100%;
	/*justify-content: center;*/
	margin-bottom:20px;
}

.recommended_box .plan_box .plan_col {
	margin-right: 2%;
	background: #fff;
	box-shadow: 2px 2px 5px rgba(117,117,117,0.8);
}
.recommended_box .plan_box .plan_col a {
	color:#000000;
}
.recommended_box .plan_box .plan_col:last-child {
	margin-right: 0;
}

.recommended_box .plan_box .plan_col p.area {
	display: block;
	width: 100%;
	padding: 10px;
	font-size: 18px;
	color: #fff;
	background-color: #112E8B;
	text-align: left;
}
.recommended_box .plan_box .plan_col p.area.taxiplan {
	background-color: #008600;
}

.recommended_box .plan_box .plan_col .description {
	display: block;
	padding: 10px 10px 20px 10px;
	background: #fff;
	box-sizing: border-box;
}

.recommended_box .plan_box .plan_col .description p.plan_title {
	display: block;
	font-size: 18px;
	margin-bottom: 1em;
	text-align: left;
	line-height: 1.6;
	font-weight:bold;
}

.recommended_box .plan_box .plan_col .description p.comment {
	display: block;
	font-size: 16px;
	margin-bottom: 1em;
}

.recommended_box .plan_box .plan_col .description p.price {
	display: block;
	font-size: 18px;
	font-weight: bold;
	color: #FF0000;
	margin-bottom: 1em;
	font-family: 'arial', sans-serif;
}

.recommended_box .plan_box .plan_col .description p.time_text {
	display: block;
	font-size: 16px;
}


p.plan_bunner {
	display: block;
	max-width: 1200px;
	width: 100%;
	margin: 1em auto;
	text-align: center;
}

.recommended_box .formbox{
	text-align:center;
	margin:0 auto 2em;
	width:100%;
}
.recommended_box .formbox a{
	border:solid 2px #102F8A;
	border-radius:20px;
	text-align:center;
	padding:10px;
	width:100%;
	color:#102F8A;
	display:block;
	background-color:#FFFFFF;
}
.recommended_box .item{
	width:23%;
	margin-right:2%;
}
.recommended_box .plan_box .plan_col,
.recommended_box .plan_box_btn .plan_col {
	width: 100%;
	margin-right: 0%;
}
.recommended_box .plan_box_btn {
	display: flex;
	width: 100%;
	margin-bottom: 20px;
	border-bottom:dotted 3px #ccc;
}

.conditionslink{
	text-align:center;
	margin:0 auto;
	width:300px;
}
.conditionslink a{
	border:solid 2px #102F8A;
	text-align:center;
	padding:10px;
	margin:0 auto 2em;
	width:100%;
	color:#102F8A;
	display:block;
	background-color:#102F8A;
	color:#FFFFFF;
}
.formalert{
	color:#FF0000;
	font-weight:bold;
}

.planlist{
	display: flex;
	flex-wrap: wrap;
}
.planlist .item{
	width:31%;
	margin:0 1% 10px;
	padding:10px;
	background-color:#fff;
}

/**************************************

				フッター

**************************************/

#footer {
	width: 100%;
	margin-top: 40px;
	padding: 20px;
	background-color: #194b76;
	position: relative;
}

#footer:after {
	content: url("../images/footer_back.png");
	position: absolute;
	right: 0;
	bottom: 0;
}

.footer_container {
	width: 1200px;
	margin: 0 auto;
}

.footer_container p {
	text-align: left;
}

.footer_description {
	display: block;
	color: #ffffff;
	padding: 0 10px;
	font-size: 14px;
	font-weight: normal;
	text-align: left;
	line-height: 1.8;
	font-family: "M PLUS Rounded 1c";
}

.footer_description span {
	font-size: 16px;
}

.footer_description span.large {
	font-size: 20px !important;
}

.footer_logo {
	padding: 8px 10px;
	line-height: 1;
}

p.time {
	display: block;
	font-size: 15px;
	color: #fff;
	text-align: left;
}

.footer_contact_box {
	width: 100%;
	padding: 10px 15px;
	box-sizing: border-box;
	line-height: 1;
	position: relative;
	z-index: 99;
}

.footer_contact_box .box_left {
	width: 50%;
}

.footer_contact_box .box_right {
	width: 50%;
}

.footer_contact_box p.tit {
	display: block;
	font-size: 18px;
	padding-bottom: 1em;
	font-family: "M PLUS Rounded 1c";
}

.footer_contact_box p {
	color: #fff;
}

.footer_contact_box p.tel {
	margin-top: 4px;
	margin-bottom: 4px;
	line-height: 1;
}

.footer_contact_box p.tel a {
	display: block;
	color: #fff;
	font-size: 24px;
	font-weight: normal;
	font-family: fot-rodin-pron, Arial, sans-serif; 
}

.footer_contact_box p.tel a:before {
	content: url("../images/tel_icon2.png");
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	line-height: 1;
}

.footer_contact_box p.fax {
	margin-top: 10px;
	margin-bottom: 4px;
	line-height: 1;
	display: block;
	color: #fff;
	font-size: 24px;
	font-weight: normal;
	font-family: fot-rodin-pron, Arial, sans-serif; 
}

.footer_contact_box p.fax:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	line-height: 1;
}


.footer_contact_box p.mail {
	margin-bottom: 10px;
	line-height: 1;
}

.footer_contact_box p.mail span {
	display: inline-block;
	vertical-align: middle;
}

.footer_contact_box p.mail a {
	display: inline-block;
	width: auto;
	margin-left: 25px;
	padding: 15px 12px;
	border-radius: 5px;
	background: #fff;
	color: #1367a3;
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	line-height: 1;
	vertical-align: middle;
	font-family: fot-rodin-pron, Arial, sans-serif; 
}

.footer_contact_box p.mail a:before {
	content: "";
	border-top: 10px solid transparent;
	border-right: 20px solid #ffffff;
	border-bottom: 10px solid transparent;
	position: absolute;
	left: -20px;
	top: 15px;
}

.footer_contact_box p.mail_text {
	display: block;
	padding-left: 3em;
	line-height: 1;
}

.footer_contact_box p.mail_text a {
	display: block;
	color: #ffffff;
	font-size: 14px;
	text-align: left;
	text-decoration: none;
	padding-left: 20px;
}

#copyright {
	display: block;
	padding: 20px;
	box-sizing: border-box;
	line-height: 1;
}

#copyright .box {
	align-items: center;
}

#copyright p {
	display: block;
	color: #424242;
	font-size: 14px;
	font-weight: normal;
	text-align: left;
}

#copyright ul {
	display: block;
}

#copyright ul li {
	display: inline-block;
}

#copyright ul li a {
	display: block;
	padding: 3px 8px;
	font-size: 14px;
	color: #040000;
	border-left: 1px solid #040000;
}

#copyright ul li:last-child a {
	border-right: 1px solid #040000;
}


/* バナー */
.ana_bunner {
	margin-top: 15px;
	position: relative;
	z-index: 99;
	text-align: left;
}

.ana_bunner p {
	display: inline-block;
	margin-right: 0;
}

.ana_bunner p span {
	display: block;
	font-size: 13px;
	color: #ffffff;
	text-align: left;
}

#airport_shop_banner{
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
}
#airport_shop_banner p{
	width:48%;
	margin-bottom:20px;
}
#airport_shop_banner p img{
	width:100%;
}

@media screen and (max-width: 640px) {

.ana_bunner {
	margin: 15px 0;
	text-align: center;
}

.ana_bunner p {
	margin-right: 0;
	margin-bottom: 10px;
}

#airport_shop_banner{
	margin-bottom:10px;
}
#airport_shop_banner #airport_banner{
	width:49%;
	margin-right:0;
}
#airport_shop_banner #shop_banner{
	float:right;
	width:49%;
}


}


/**************************************

				次階層

**************************************/

#next_header {
	width: 100%;
	height: 360px;
	position: relative;
}

#next_header h1 {
	width: 220px;
	height: 220px;
	background-color: #1367A3;
	position: absolute;
	left: 10%;
	top: 60%;
  	-webkit-transform: translateY(-50%); /* Safari用 */
  	transform: translateY(-50%);
}

#next_header h1 span {
	display: block;
	margin: auto;
	color: #fff;
	font-size: 26px;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
  	-webkit-transform: translateY(-50%); /* Safari用 */
  	transform: translateY(-50%);
  	text-align: center;
}

.tourism {
	background: url("/travel/images/next/tourism.jpg") no-repeat;
	background-size: cover;
	background-position: center center;
}

#next_main {
	width: 100%;
	padding: 20px;
	background-color: #FCF9D9;
}

.firstsunriseplan{
	display:flex;
}
.firstsunriseplan li{
	margin:5px;
}
.firstsunriseplan li a{
	display:block;
	padding: 5px;
	text-align: center;
	color: #102f8a;
	background-color: #ffffff;
	border: 1px solid #102f8a;
	border-radius: 10px;
}

/**************************************

			長崎空港周辺観光

**************************************/

p.spot_title {
	display: block;
	width: 100%;
	font-size: 24px;
	padding-bottom: 30px;
	text-align: center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

p.spot_title:before {
	content: url("../images/next/spot_left.svg");
	display: inline-block;
	padding-right: 10px;
	vertical-align: middle;
}

p.spot_title:after {
	content: url("../images/next/spot_right.svg");
	display: inline-block;
	padding-left: 10px;
	vertical-align: middle;
}

p.tourism_title {
	margin-bottom: 10px;
}

.plan_top_box {
	height: 465px;
	padding: 10px 0;
	background: #fff;
	border: 5px solid #0095E0;
	border-radius: 10px;
}

.spot_top_box {
	height: 465px;
	padding: 10px 0;
	background: #fff;
	border: 5px solid #0095E0;
	border-radius: 10px;
}

.spot_top_box p.spot_text {
	display: block;
	margin-top: 20px;
	margin-bottom: 1em;
	font-size: 21px;
	text-align: center;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.course_box {
	padding: 0 10px 0 20px;
	margin-top: 20px;
	box-sizing: border-box;
}

.course_box p {
	margin-bottom: 10px;
}

.course_box p:last-child {
	margin-bottom: 0;
}

p.detail_btn {
	display: block;
	margin: 1em auto 0 auto;
	width: 260px;
	text-align: center;
}

p.detail_btn a {
	display: block;
	padding: 15px 10px 15px 25px;
	font-size: 18px;
	color: #fff;
	background-color: #1367a3;
	position: relative;
	border-radius: 7px;
	text-align: left;
	line-height: 1;
}

p.detail_btn a:after {
	content: url("../images/common/detail_arw.svg");
	position: absolute;
	right: 10px;
}

/**************************************

			タクシープラン一覧

**************************************/

.plan_menu_tab {
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

.plan_menu_tab ul {
	display: flex;
	justify-content: space-between;
}

.plan_menu_tab ul li {
	width: 24%;
	margin-right: 2%;
}

.plan_menu_tab ul li:last-child {
	margin-right: 0;
}

.plan_menu_tab ul li a {
	display: block;
	font-size: 21px;
	font-weight: bold;
	color: #1367a3;
	padding: 10px 20px;
	border-radius: 10px 10px 0 0;
	background-color: #efefef;
	border: 1px solid #e2e2e2;
	border-bottom: none;
	text-align: center;
}

.flyerbtn a {
	display: block;
	font-size: 21px;
	font-weight: bold;
	padding: 10px;
	border-radius: 10px;
	background-color: #FF6259;
	color: #fff;
	border: 1px solid #e2e2e2;
	border-bottom-color: rgb(226, 226, 226);
	border-bottom-style: solid;
	border-bottom-width: 1px;
	text-align: center;
	margin:0 20px 20px;
}

.plan_menu_tab ul li a.active {
	background-color: #fff;
}

.plan_menu_tab ul li a.flyer {
	background-color: #FF6259;
	color: #fff;
}

.plan_detail_box {
	width: 100%;
	background: #fff;
	border: 1px solid #e2e2e2;
	padding: 10px;
}

.plan_select {
	width: 100%;
	margin-bottom: 40px;
}

.plan_select ul {
	display: flex;
}

.plan_select ul li {
	width: 50%;
	margin-right: 4%;
}

.plan_select ul li a {
	display: block;
	padding: 45px 30px;
	font-size: 28px;
	text-align: center;
	color: #4c4c4c;
	background: #efefef;
	border: 2px solid #3888af;
	border-radius: 5px;
	position: relative;
	text-decoration: none;
}

.plan_select ul li a.active {
	background-color: #fff;
}

.plan_select ul li.a_plan a:before {
	content: url("/travel/images/next/a_plan.svg");
	position: absolute;
	left: 10px;
	top: 0;
}

.plan_select ul li.b_plan a:before {
	content: url("/travel/images/next/b_plan.svg");
	position: absolute;
	left: 10px;
	top: 0;
}

.plan_select ul li a:after {
	content: url("/travel/images/common/arw.png");
	position: absolute;
	right: 30px;
}

h3.plan_title {
	display: flex;
	align-items: center;
	margin-bottom: 60px;
	font-size: 21px;
	color: #fff;
}

h3.plan_title .left_title {
	background-color: #3888af;
	width: 15%;
	position: relative;
	padding: 10px;
	height: 51px;
}

h3.plan_title .left_title span {
	display: block;
	padding-left: 95px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}

h3#a_plan .left_title span:before {
	content: url("/travel/tourism/plan/images/a.svg");
	position: absolute;
	left: 10px;
	top: -10px;
}

h3#b_plan .left_title span:before {
	content: url("/travel/tourism/plan/images/b.svg");
	position: absolute;
	left: 10px;
	top: -10px;
}

h3#no_plan .left_title span:before {
	content: "";
	display: none;
}

h3#no_plan .left_title span {
	padding-left: 0;
}

h3.plan_title .right_title {
	position: relative;
	width: 85%;
	padding-left: 60px;
	background-color: #267999;
	padding: 10px;
	height: 51px;
}

h3.plan_title .right_title span {
	font-size: 14px;
	position: absolute;
	right: 20px;
	top: 12px;
}

section.plan_section {
	display: block;
	padding-top: 0 !important;
}

.px30 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
}

.o-model-course__line-box {
    position: relative;
    max-width: 114rem;
    margin-right: auto;
    margin-left: auto;
    border-left: 20px solid #f2f2f2;
}

section.plan_section h4 {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	margin-left: -30px;
	padding: 0 0 1rem 5.6rem;
	padding-left: 3.6rem;
	font-size: 28px;
	color: #4c4c4c;
	font-weight: normal;
}

section.plan_section h4:before {
	content: "";
    position: absolute;
    left: -.5rem;
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    width: 3.6rem;
    height: 3.6rem;
    margin-right: 2rem;
    font-size: 2.2rem;
    background-color: #1367a3;
    border-radius: 50%;
    color: #fff;
}

section.plan_section h4#style_no1:before {
	content: "1";
}

section.plan_section h4#style_no2:before {
	content: "2";
}

section.plan_section h4#style_no3:before {
	content: "3";
}

section.plan_section h4#style_no4:before {
	content: "4";
}

section.plan_section h4#style_no5:before {
	content: "5";
}

section.plan_section h4#style_no6:before {
	content: "6";
}

section.plan_section h4#style_no7:before {
	content: "7";
}

section.plan_section h4#style_no8:before {
	content: "8";
}

section.plan_section h4#style_no9:before {
	content: "9";
}

section.plan_section h4#style_no10:before {
	content: "10";
}

section.plan_section h4 span {
	padding-left: 5px;
	color: #ff0000;
	font-size: 20px;
}

section.plan_section h4 span.time_label {
	margin-left: 40px;
	width: auto;
	padding: 10px;
	color: #000;
	font-weight: normal;
	font-size: 16px;
	border-radius: 7px;
	background-color: #efefef;
	text-align: center;
	line-height: 1;
}

.course_main_box {
	padding: 20px 20px 20px 40px;
}

section.plan_section .course_detail {
	display: block;
	margin-bottom: 20px;
}

section.plan_section .course_detail p {
	font-size: 16px;
	line-height: 1.8;
}

section.plan_section .course_status h5 {
	display: block;
	margin-bottom: 10px;
	padding: 10px;
	font-size: 18px;
	background-color: #efefef;
	text-align: left;
	line-height: 1;
	position: relative;
}

section.plan_section .course_status h5 span {
	position: absolute;
	right: 10px;
}

section.plan_section .course_status h5 span a {
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	padding: 5px;
	background-color: #267999;
}

section.plan_section .course_status h5 span a:after {
	content: url("/travel/images/common/outlink.svg");
	display: inline-block;
	padding-left: 10px;
	vertical-align: middle;
	line-height: 1;
}

section.plan_section .course_status p {
	display: block;
	font-size: 14px;
	padding: 0 10px;
	line-height: 1.8;
}

section.plan_section p.arw {
	display: block;
	margin: 0 auto;
	padding: 40px 0 40px 0;
	text-align: center;
}


section.plan_section .pricebox{
	margin: 3.6rem;
	background-color: #DAECFF;
	padding: 20px;
}
section.plan_section .pricebox .pricelbl{
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 20px;
}
section.plan_section .pricebox ul li{
	float: left;
	margin-right: 50px;
}
section.plan_section .pricebox ul li:before{
	content:'●';
	color:#6D6D6D;
}



/**************************************

		大村市 おすすめスポット一覧

**************************************/

.spot_menu_tab {
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

.spot_menu_tab ul {
	display: flex;
	justify-content: space-between;
}

.spot_menu_tab ul li {
	width: 18%;
	margin-right: 2%;
}

.spot_menu_tab ul li:last-child {
	margin-right: 0;
}

.spot_menu_tab ul li a {
	display: block;
	font-size: 21px;
	font-weight: bold;
	color: #1367a3;
	padding: 10px 20px;
	border-radius: 10px 10px 0 0;
	border: 1px solid #e2e2e2;
	border-bottom: none;
	text-align: center;
}

.spot_menu_tab ul li.all a {
	background-color: #fff;
}

.spot_menu_tab ul li.gourme a {
	background-color: #e1ffe7;
}

.spot_menu_tab ul li.shoping a {
	background-color: #ffefdc;
}

.spot_menu_tab ul li.spot a {
	background-color: #ebf8ff;
}

.spot_menu_tab ul li.view a {
	background-color: #efefef;
}

.spot_menu_tab ul li.active a {
	background-color: #8C8C8C !important;
	color:#FFFFFF !important;
}


.spot_detail_box {
	width: 100%;
	background: #fff;
	border: 1px solid #e2e2e2;
	margin-bottom: 60px;
	padding: 20px;
}

.spot_main_box {
	width: 100%;
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px dashed #777777;
}

.spot_main_box:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

h3.spot_title {
	width: 100%;
	margin-bottom: 10px;
	position: relative;
}

h3.spot_title span {
	font-size: 21px;
	font-weight: bold;
	color: #4c4c4c;
}

h3.spot_title ul {
	position: absolute;
	top: 0;
	right: 10px;
}

h3.spot_title ul li {
	display: inline-block;
	margin-right: 10px;
}

h3.spot_title ul li:last-child {
	margin-right: 0;
}

h3.spot_title ul li {
	padding: 5px 8px;
	border-radius: 5px;
	font-size: 12px;
	color: #4c4c4c;
	border: 1px solid #e2e2e2;
	text-align: center;
	line-height: 1;
}

h3.spot_title ul li.all {
	background-color: #fff;
}

h3.spot_title ul li.gourme {
	background-color: #e1ffe7;
}

h3.spot_title ul li.shoping {
	background-color: #ffefdc;
}

h3.spot_title ul li.spot {
	background-color: #ebf8ff;
}

h3.spot_title ul li.view {
	background-color: #efefef;
}

.spot_detail_box .course_detail {
	display: block;
	margin-bottom: 20px;
}

.spot_detail_box .course_detail p {
	font-size: 16px;
	line-height: 1.8;
}

.spot_detail_box .course_status h5 {
	display: block;
	margin-bottom: 10px;
	padding: 10px;
	font-size: 18px;
	background-color: #efefef;
	text-align: left;
	line-height: 1;
	position: relative;
}

.spot_detail_box .course_status h5 span {
	position: absolute;
	right: 10px;
	top: 7px;
}

.spot_detail_box .course_status h5 span a {
	font-size: 12px;
	font-weight: bold;
	color: #fff;
	padding: 5px;
	background-color: #267999;
}

.spot_detail_box .course_status h5 span a:after {
	content: url("/travel/images/common/outlink.svg");
	display: inline-block;
	padding-left: 10px;
	vertical-align: middle;
	line-height: 1;
}

.spot_detail_box .course_status p {
	display: block;
	font-size: 14px;
	padding: 0 10px;
	line-height: 1.8;
}

#spot_plan_top_box {
	height: auto;
}


/*******************************************

                 新着詳細

*******************************************/
#cmsmain h2 {
	display: block;
	width: 100%;
	padding-bottom: 10px;
	font-size: 21px;
	font-weight: normal;
	color: #000000;
	text-align: center;
	position: relative;
	border-bottom: 1px solid #898989;
}

.newsbox .newsbox_l p img{
	width:100%;
}

.newsbox .date{
	text-align: right;
	margin:10px 0;
}
.newsbox .mainphoto{
	margin:0 0 20px 0;
	text-align:center;
}
.newsbox .title{
	color:#621105;
	margin:10px 0;
	font-size:1rem;
}

.newsbox .caption{
	color:#CC4200;
	margin:0 0 10px 0;
}

.newsbox .links,
.newsbox .files{
	padding-bottom:10px;
}

.newsbox .newsbox_l{
	width:65%;
	float:left;
}
.newsbox .newsbox_r{
	width:33%;
	float:right;
}
.newsbox .newsbox_r #photobox li{
	text-align:right;
	padding-bottom:10px;
}



/*******************************************

                 FAQ

*******************************************/
#question{
	position:relative;
	background: #fff;
	border: 1px solid #e2e2e2;
	padding: 10px;
}
#question dl {
	display: block;
	width: 100%;
	padding: 15px 10px;
	border-bottom: 1px dashed #606060;
	position: relative;
}
#question dl dt {
	font-weight:bold;
	font-size: 18px;
}
#question dl dd {
	display: none;
	margin-top: 15px;
	font-size: 18px;
	background-color:#FFF;
	padding:15px;
	border-radius:10px;
}
#question dl dt:after {
	content: url(/images/plus.png);
	position: absolute;
	right: 10px;
}
#question dl dt.clicked:after {
	content: url(/images/close.png);
	position: absolute;
	right: 10px;
}
#question dl span {
	display: inline-block;
	padding-right: 8px;
	/* vertical-align: middle; */
	vertical-align: top;
}
#question dl dd p {
	display: inline-block;
	width: 90%;
}

.lbltitle{
	background-color: #267999;
	padding: 10px;
	color:#FFFFFF;
	font-weight:bold;
	margin:10px 0;
}
#question dl dt span.title {
	width: 90%;
}

.faqlink a{
	display:block;
	padding:10px;
	width:450px;
	background-color:#1367a3;
	color: #fff;
	font-size: 24px;
	font-weight: normal;
	font-family: fot-rodin-pron, Arial, sans-serif;
	text-align: center;
	margin: 0 auto;
	border-radius:15px;
}
.faqlink a:before {
	content: url(../images/icon_faq.png);
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	line-height: 1;
}

/* アニメーション */
.scroll-space{
	box-sizing: border-box;
	overflow: hidden;
}
.fadein {
	opacity: 0;
	transform: translate(0,0);
	transition: all 1.5s;
}
.fadein.fadein-left{
	transform: translate(-30px,0);
}
.fadein.fadein-right{
	transform: translate(30px,0);
}
.fadein.fadein-up{
	transform: translate(0,-30px);
}
.fadein.fadein-bottom{
	transform: translate(0,30px);
}
.fadein.scrollin{
	opacity: 1 !important;
	transform: translate(0, 0) !important;
}

/* Animation */
.fuwafuwa {
	animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
@keyframes floating-y {
	0% {
		transform: translateY(-10%);
	}
	100% {
		transform: translateY(10%);
	}
}
