@charset "utf-8";

html,
body {
	color: #333;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
	font-weight: 500;
	font-style: normal;
	letter-spacing: 0;
	font-size: 15px;
	line-height: 1.7em;
}

body {
	-webkit-font-smoothing: antialiased;
}

img {
	vertical-align: bottom;
	line-height: 0;
}

a:hover img {
	filter: alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a {
	color: #135ba9;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

.pc,
.sp_none {
	display: inherit;
}

.mobile,
.sp_only {
	display: none;
}

.inner {
	width: 1050px;
	margin: 0 auto;
}

.inner_wide {
	width: 1100px;
	margin: 0 auto;
}

.inner_1000 {
	width: 1000px;
	margin: 0 auto;
}

.dflex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.wrap {
	flex-wrap: wrap;
}

.j_center {
	justify-content: center;
}

.j_around {
	justify-content: space-around;
}

.j_between {
	justify-content: space-between;
}

.j_end {
	justify-content: flex-end;
}

.align_center {
	align-items: center;
}

.object-fit-img {
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

.f_blue{
	color: #001F74;
}
.f_blue{
	color: #001F74;
}
.f_red_d{
	color: #8f0012;
}
.f_bold{
	font-weight: bold;
}
/* ────────────────────── *

 * 下層ページ共通

 * ────────────────────── */


.pagemain.page_title {
	background-size: cover;
	margin-bottom: 100px;
}

.page_title h2 {
	color: #fff;
	font-size: 31px;
	text-align: center;
	letter-spacing: 0.1em;
	padding: 3em;
}


.ttl_bgicon:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 25px;
	margin-top: -2px;
	background-image: url(../images/page/conditions/ttl_icon.png);
	vertical-align: middle;
}

.ttl_bggray {
	background: #F1F2FB;
	border-bottom: 5px solid #D2E0E8;
	font-size: 24px;
	font-weight: 500;
	line-height: 1;
	padding: 20px 0 20px 50px;
	position: relative;
	margin-bottom: 15px;
}

/* 仮画像配置用 */
div#examples-contents {
	width: 1500px;
	margin: 0 auto;
}

/* 画像配置用 */
div#contents_bg_img {
	width: 1000px;
	margin: 0 auto;
}


/* ────────────────────── *

 * header

 * ────────────────────── */

header {
	padding: 10px 0;
}

header .siteid {
	margin-bottom: 6px;
	font-size: 13px;
}

header .header_left {
	float: left;
}

header .header_right {
	float: right;
	width: 75%;
}

header .header_right .hr_001 {
	margin-bottom: 8px;
	line-height: 1.4em;
}

header .header_right .hr_001 ul li {
	font-size: 12px;
	margin-top: 5px;
}

header .header_right .hr_001 ul li span {
	border-right: 1px solid #ccc;
}

header .header_right .hr_001 ul li:first-child span {
	border-left: 1px solid #ccc;
}

header .header_right .hr_001 ul li a {
	color: #000;
}

header .header_right .hr_001 ul li a span {
	display: block;
	padding: 0 20px;
}

header .header_right .hr_001 ul li a:hover span {
	background-color: #172a80;
	color: #fff;
	transition: 0.3s ease-in-out;
}

header .header_right .hr_001 dl {
	margin-left: 30px;
	font-size: 12px;
}

header .header_right .hr_001 dl dt {
	padding-top: 5px;
	margin-right: 8px;
}

header .header_right .hr_001 dl dd {
	border: 1px solid #ccc;
	padding: 2px 5px;
	margin-left: 5px;
}

header .header_right .hr_002 ul li a {
	display: block;
	background-image: url("../images/common/icon_header_arrow.jpg");
	background-position: left center;
	background-repeat: no-repeat;
	padding: 2px 3px 2px 24px;
	font-size: 13px;
	margin-left: 20px;
	color: #333;
}

header .header_right .hr_002 ul li a:hover {
	background-color: #172a80;
	color: #fff;
}

header nav.pc ul {
	margin-top: 10px;
}

header nav.pc ul li {
	width: 16%;
	box-sizing: border-box;
	text-align: center;
	border-right: 1px solid #ccc;
}

header nav.pc ul li:first-child {
	border-left: 1px solid #ccc;
}

header nav.pc ul li:nth-child(1),
header nav.pc ul li:nth-child(2),
header nav.pc ul li:nth-child(3),
header nav.pc ul li:nth-child(4) {
	width: 17%;
}

header nav.pc ul li a {
	display: block;
	width: 100%;
	background-position: center 10px;
	background-repeat: no-repeat;
	padding: 58px 0 5px;
	color: #172a80;
	font-size: 14px;
}

header nav.pc ul li.nav001 a {
	background-image: url("../images/common/icon_navi001.png")
}

header nav.pc ul li.nav002 a {
	background-image: url("../images/common/icon_navi002.png")
}

header nav.pc ul li.nav003 a {
	background-image: url("../images/common/icon_navi003.png")
}

header nav.pc ul li.nav004 a {
	background-image: url("../images/common/icon_navi004.png")
}

header nav.pc ul li.nav005 a {
	background-image: url("../images/common/icon_navi005.png")
}

header nav.pc ul li.nav006 a {
	background-image: url("../images/common/icon_navi006.png")
}

header nav.pc ul li a:hover {
	background-color: #172a80;
	color: #fff;
}

header nav.pc ul li.nav001 a:hover {
	background-image: url("../images/common/icon_navi001_hover.png")
}

header nav.pc ul li.nav002 a:hover {
	background-image: url("../images/common/icon_navi002_hover.png")
}

header nav.pc ul li.nav003 a:hover {
	background-image: url("../images/common/icon_navi003_hover.png")
}

header nav.pc ul li.nav004 a:hover {
	background-image: url("../images/common/icon_navi004_hover.png")
}

header nav.pc ul li.nav005 a:hover {
	background-image: url("../images/common/icon_navi005_hover.png")
}

header nav.pc ul li.nav006 a:hover {
	background-image: url("../images/common/icon_navi006_hover.png")
}
@media screen and (min-width:768px)  {
    /*　画面サイズが768pxから1024pxまではここを読み込む　*/
.top_slider a:hover {
	opacity: 0.5 ;
	margin: auto;
}
.top_slider {
	margin: auto;
	overflow:hidden!important; /* 画面幅からでないように */
padding: 0 calc(100vw / 2 - 500px);
}
.top_slider ul li{


width: 1000px!important;
	box-sizing: border-box!important;
}

	.top_slider div.flex-viewport > ul li > a{
		width: 1000px!important;
		display: block;
		box-sizing: border-box;
	}
.top_slider .flex-viewport{
	  margin: 0 auto!important;   
	overflow: visible!important;
}
.top_slider  .flexslider{
   width:100%!important;
	}
	.top_slider div.flex-viewport > ul li img{
padding: 0 2px !important;
width: 1000px !important;
box-sizing: border-box!important;	}
	#metaslider_container_2978 ,#metaslider_2978, .flex-viewport{
	width: 1000px !important;
}

}
.metaslider .flexslider .flex-direction-nav li a{
	background-image: url("../images/bg_direction_nav.png")!important;
}
.metaslider .flexslider:focus-within .flex-prev, .metaslider .flexslider:hover .flex-prev{
	left: 5px;
}
/*メイン下バナー*/
div.frontpage_bnr {
	display: block;
    max-width: 850px;
	text-align: center;
    margin: 0 auto 80px;
}
div.frontpage_bnr p:not(:last-of-type){
	margin-bottom: 20px;
}
div.frontpage_bnr img{
	max-width: 100%;
}
div.frontpage_bnr_s {
	max-width: 1020px;
  margin: 40px auto 80px;
}
.frontpage_bnr_s_item {
  max-width: 1000px;
  margin-right: auto;
  margin-left: auto;
}
.frontpage_bnr_s_item + .frontpage_bnr_s_item{
  margin-top: 40px;
}
div.frontpage_bnr .note_ttl {
	font-size: 22px;
	font-weight: bold;
	border-bottom: 3px solid #8f0012;
	padding-bottom: 5px;
	display: inline-block;
}
div.frontpage_bnr .note {
	text-align: left;
	padding: 10px 0;
}
div.frontpage_bnr .note span.red{
	color: #8f0012;
}
div.frontpage_bnr .note span.dot{
	text-indent: -0.8em;
	padding-left: 0.8em;
	display: inline-block;
}
div.frontpage_bnr .note span.dot:before{
	content: "●";
	font-size: 75%;
}
/* ────────────────────── *

 * 検索ボックス

 * ────────────────────── */
#MainContent_SearchConditionUpdatePanel {
	width: 1050px;
	margin: 80px auto 40px;
}

.order-1 {
	margin-bottom: 40px;
}

.search-title-area {
	border-bottom: 5px solid #171c61;
	padding-bottom: 20px;
}

.search-title-course {
	width: 42%;
	padding: 10px 30px;
	border-radius: 12px;
	background-color: #FFF4C1;
}

.h5.font-weight-bold {
	background-image: url("../images/page/index/icon_search_ttl.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 30px;
	font-size: 33px;
	font-weight: bold;
	color: #171c61;
	padding: 15px 0 15px 50px;
}

.row.column2,
.sh_place {
	margin-bottom: 30px;
}

.row.column2 .search001 {
	width: 35%;
	padding-right: 2%;
}

.row.column2 .search002 {
	width: 60%;
}

.sh_ttl {
	font-size: 18px;
	font-weight: bold;
	display: block;
	margin-bottom: 10px;
}

.sh_ttl:before {
	content: "●";
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
}

.search-title-course .sh_ttl {
	font-size: 14px;
	margin-bottom: 0;
}

/*.search-title-course input{
	padding: 5px;
	font-size: 14px;
	max-width: 176px;
}*/

.search-title-course input[type="text"] {
	padding: 5px;
	font-size: 14px;
	max-width: 222px;
	width: 222px;
}

.form-group .tour-days-checkbox-list label.label {
	width: 46%;
	box-sizing: border-box;
	margin: 0 1%;
	display: inline-block;
}

.event_status label.label {
	width: 35%;
	box-sizing: border-box;
	display: block;
}

label.label {
	text-align: center;
	cursor: pointer;
	padding: 11px 5px;
	border: 1px solid #989898;
	background-color: #f1f1f1;
	border-radius: 5px;
}

input.check_box {
	display: none;
}

.check_box:checked + .label {
	border: 1px solid #00a5dc;
	background-color: #00a5dc;
	color: #fff;
}

.search002 .datepicker {
	width: 43%;
	background: url("../images/page/index/icon_cal.png") 90% center no-repeat;
	background-color: #fff;
	border: 1px solid #989898;
	border-radius: 5px;
}

.search002 input::placeholder {
	color: #000;
}

.sh_place.form-row {
	width: 100%;
}

.form-row select {
	width: 100%;
	box-sizing: border-box;
	padding: 15px;
}

.form-row .select001 {
	margin-right: 3%;
}

input#submit_button,
input#reset_button {
	cursor: pointer;
	width: 40%;
	margin-right: 20px;
	text-align: center;
	padding: 10px 0;
	font-size: 18px;
	font-weight: bold;
	border-radius: 6px;
	border: 2px solid #ccc;
}

input#reset_button {
	background-color: #f4f4f4;
}

input#submit_button {
	background-color: #172a80;
	color: #fff;
	background-image: url(../images/page/index/icon_submit_button.png);
	background-position: 3.5em center;
	background-repeat: no-repeat;
	background-size: 29px;
	padding-left: 24px;
}

input#submit_button:hover {
	background-color: #395ee5;
	color: #fff;
}

.order-0 {
	margin-bottom: 100px;
}

.search-title-course .sh_course .form-group {
	text-align: right;
}

.sh_course .form-group .sh_ttl,
.sh_course .form-group .input-group {
	display: inline-block;
}

.search_button {
	cursor: pointer;
	border: 0px;
	width: 34px;
	height: 34px;
	overflow: hidden;
	text-indent: 150%;
	white-space: nowrap;
	background-image: url("../images/page/index/icon_search.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 34px;
	padding-top: 5px;
}

.search_button:hover {
	background-image: url("../images/page/index/icon_search_hover.jpg");
	background-size: 34px;
}

@media screen and (-ms-high-contrast: none) {
    /* IE11にのみ適用したいスタイルシート */
	.search-box-area table td div.kodawari {
		width: 644px !important;
	}
}

.kodawari button#btnAddtional {
	cursor: pointer;
	margin: 20px 0 10px;
	border: 1px solid #00a5dc;
	background-color: #fff;
	color: #00a5dc;
	width: 220px;
	padding: 12px 0;
	box-sizing: border-box;
	text-align: center;
	border-radius: 6px;
}

.kodawari button#btnAddtional span:before {
	content: url("../images/page/index/kodawari_01.png");
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}

.kodawari button#btnAddtional.open {
	border: 1px solid #00a5dc;
	background: #00a5dc;
	color: #fff;
}

.kodawari button#btnAddtional.open span:before {
	content: url("../images/page/index/kodawari_02.png");
}

.kodawari_list {
	display: none;
	background-color: #f2f2f2;
	padding: 30px;
	margin: 10px 0 30px;
}

ul.kodawari_list_btn li {
	width: 33%;
	margin-right: 0.5%;
	margin-bottom: 1%;
}

ul.kodawari_list_btn li:nth-child(3n) {
	margin-right: 0;
}

ul.kodawari_list_btn li label.label-condition_detail {
	border: 1px solid #989898;
	background-color: #f6f6f6;
	color: #000;
	padding: 10px;
	display: block;
	box-sizing: border-box;
	width: 100%;
}

ul.kodawari_list_btn li .check_box:checked + label.label-condition_detail {
	border: 1px solid #00a5dc;
	background-color: #00a5dc;
	color: #fff;
	display: block;
	box-sizing: border-box;
}

.search-box-area {
	background-color: #FCF7F0;
	background-image: url("../images/page/index/card-body_bg.png");
	background-repeat: no-repeat;
	background-position: right bottom 30px;
	border-radius: 0 0 30px 30px;
	padding: 30px 0;
}

.search-box-area table {
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
}

.search-box-area table {
	vertical-align: middle !important;
}

.search-box-area table tr {
	margin-bottom: 10px;
}

.search-box-area table th {
	text-align: right;
	padding: 5px 20px 5px 5px;
	min-width: 26%;
	width: 26%;
}

.search-box-area table th .sh_ttl {
	margin-bottom: 0;
}

.search-box-area table th .sh_ttl_icon:before {
	width: 20px;
	height: 20px;
	overflow: hidden;
	text-indent: 150%;
	white-space: nowrap;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px;
	margin-bottom: 1px;
}


.search-box-area table th .sh_ttl_course:before {
	background-image: url("../images/page/index/search_icon001.png");
}


.search-box-area table th .sh_ttl_day:before {
	background-image: url("../images/page/index/search_icon002.png");
}


.search-box-area table th .sh_ttl_place:before {
	background-image: url("../images/page/index/search_icon003.png");
}


.search-box-area table th .sh_ttl_freeword:before {
	background-image: url("../images/page/index/search_icon004.png");
}


.search-box-area table th .sh_ttl_condi:before {
	background-image: url("../images/page/index/search_icon005.png");
}


.search-box-area table th.sh_ttl_condition {
	vertical-align: top;
	padding-top: 15px;
}

.search-box-area table td {
	padding: 5px 50px 5px 5px;
	font-size: 15px;
}

.search-box-area table td .sh_place {
	margin-bottom: 0;
}

.search-box-area table td .sh_place select,
.search-box-area table td .free-word {
	background-color: #fff;
	border: 1px solid #989898;
	border-radius: 5px;
	padding-left: 7px;
}

.search-box-area table td .free-word {
	font-size: 15px;
	padding: 8px 10px;
}

.input-group input::placeholder {
	color: #000;
}

.search-box-area .form-group_place {
	width: 46.5%;
}

.search-box-area .form-group_place #dep,
.search-box-area .form-group_place #busstop {
	width: 100%;
}

.search-box-area table td .search_button_free {
	cursor: pointer;
	border: 0px;
	width: 38px;
	height: 38px;
	overflow: hidden;
	text-indent: 150%;
	white-space: nowrap;
	background-image: url("../images/page/index/icon_search.jpg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 38px;
	vertical-align: middle;
}

.search-box-area table .label-condition {
	border: 1px solid #989898;
	background-color: #fff;
	color: #000;
	padding: 10px 2em 10px 10px;
	display: block;
	width: 43%;
	font-weight: bold;
}

.search-box-area table .check_box:checked + .label-condition {
	border: 1px solid #00a5dc;
	background-color: #fff;
	color: #00a5dc;
}

.search-box-area table td .label_category {
	display: inline-block;
	background-color: #fff;
	padding: 8px 20px;
	margin-right: 20px;
	font-weight: bold;
	width: 25%;
}

.search-box-area table td .label_category:before,
.search-box-area table .label-condition:before {
	display: inline-block;
	content: '';
	box-sizing: border-box;
	border: 1px solid #ccc;
	border-radius: 22px;
	height: 16px;
	width: 16px;
	vertical-align: middle;
	margin-bottom: 2px;
	margin-right: 15px;
}

.search-box-area table .check_box:checked + .label_category {
	border: 1px solid #00a5dc;
	background-color: #fff;
	color: #00a5dc;
}


.search-box-area table .check_box:checked + .label_category:before {
	border: 3px solid #00a5dc;
	box-sizing: border-box;
}

.search-box-area table .label-condition:before {
	border: 1px solid #ccc;
	box-sizing: border-box;
}

.search-box-area table .check_box:checked + .label-condition:before {
	border: 3px solid #00a5dc;
	border-radius: 22px;
}



/* ────────────────────── *

 * TOP

 * ────────────────────── */

/* メインスライド */
#mainslide {
	margin-bottom: 50px;
}

#mainslide ul li img {
	width: 100%;
}

/* 緊急情報 */
.caution {
	margin-bottom: 60px;
}

.caution h2 {
	float: left;
	background: #8f0012;
	color: #fff;
	text-align: center;
	padding: 20px 0px;
	width: 25%;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 20px;
	letter-spacing: 0.05em;
}

.caution ul {
	float: right;
	width: 70%;
}

.caution ul li{font-size: 16px; line-height: 1.7;}
.caution ul li a {
	display: block;
	text-decoration: underline;
	/*font-size: 20px;
	font-weight: bold;
	color: #333;
	padding: 20px 0;
	line-height: 1.6em;*/
}

.caution ul li:nth-child(n+2) {
	/*border-top: 1px dotted #ccc;*/
	margin-top: 15px;
}

.caution ul li a:hover {
	color: #135ba9;
}

.caution ul li p {
	line-height: 2.5;
}

/* 最新情報 */
.index_news {
	margin-bottom: 60px;
}

.index_news .inner {
	border: 10px solid #ffe9df;
	padding: 40px 30px;
	box-sizing: border-box;
}

.index_news h2 {
	text-align: center;
	width: 40%;
	padding: 15px 0;
	margin: 0 auto 40px;
	border-top: 4px solid #171c61;
	border-bottom: 4px solid #171c61;
	font-size: 30px;
	font-weight: bold;
}

.index_news div.news_list {
	overflow-y: scroll;
	height: 250px;
	padding: 0 15px 0 0;
	margin-bottom: 50px;
}

div.news_list dl {
	display: table;
	width: 100%;
	margin-bottom: 20px;
}

div.news_list dl dt,
div.news_list dl dd {
	display: table-cell;
	box-sizing: border-box;
	vertical-align: middle;
	padding: 8px 0;
}

div.news_list dl dt {
	width: 14%;
}

div.news_list dl dd:nth-of-type(1) {
	width: 16%;
	text-align: center;
	color: #fff;
}

div.news_list dl dd:nth-of-type(2) {
	width: 70%;
	padding-left: 2%;
}

div.news_list dl dd a {
	display: block;
	color: #333;
}

div.news_list dl dd a:hover {
	color: #3472b5;
	text-decoration: underline;
}

div.news_list dl dd:nth-of-type(1).dragonspack,
.main_cantents.topics .blog_single ul li.dragonspack {
	background-color: #171c61;
}

div.news_list dl dd:nth-of-type(1).news,
.main_cantents.topics .blog_single ul li.news {
	background-color: #8f0012;
}

.btn001 a {
	padding: 20px 10px;
	margin: 0 auto;
	width: 40%;
	box-sizing: border-box;
	display: block;
	font-size: 18px;
	text-align: center;
	background-repeat: no-repeat;
	background-position: 5% center;
}

.btn001.white a {
	border: 1px solid #808080;
	background-image: url(../images/page/index/icon_btn_black.jpg);
	color: #333;
}

.btn001.white a:hover {
	color: #fff;
	background-image: url(../images/page/index/icon_btn_white.jpg);
	background-color: #171c61;
}

.btn001.blue a {
	border: 1px solid #fff;
	background-image: url(../images/page/index/icon_btn_white.jpg);
	color: #fff;
	background-color: #171c61;
}

.btn001.blue a:hover {
	color: #171c61;
	background-image: url(../images/page/index/icon_btn_black.jpg);
	background-color: #fff;
}

.btn001.blue02 a {
	border: 1px solid #036eb8;
	background-image: url(../images/common/icon_btn_white02.png);
	background-color: #036eb8;
	color: #fff;
}

.btn001.blue02 a:hover {
	background-image: url(../images/common/icon_btn_blue02.png);
	background-color: #fff;
	color: #036eb8;
}

/* 最新情報　中ページ・詳細 */
.page_topics {
	background: url("../images/page/topics/main_bg.jpg") no-repeat center center;
}

/* ランキング */
.index_ranking {
	background: url(../images/page/index/bg_ranking.jpg) center no-repeat;
	background-size: cover;
	padding: 60px 0;
	color: #fff;
}

.index_ranking h2 {
	text-align: center;
	font-size: 35px;
	font-weight: bold;
	letter-spacing: 0.4em;
	margin-bottom: 60px;
}

.index_ranking h2 span {
	display: block;
	font-size: 24px;
	margin-bottom: 24px;
	font-weight: normal;
	letter-spacing: 0.2em;
}

.index_ranking h2 span:before {
	content: url(../images/page/index/icon_ranking.png);
	margin-right: 15px;
	display: inline-block;
	vertical-align: middle;
}

.ranklist {
	margin-bottom: 40px;
	counter-reset: number;
}

.ranklist article {
	width: 31%;
	margin: 0 1%;
	box-sizing: border-box;
	border: 3px solid #a0a1a1;
	background-color: #fff;

}

.ranklist article a {
	display: block;
	padding: 20px 3%;
	background-color: #fff;
	color: #333;
}

.ranklist article a:hover {
	background-color: #171c61;
	color: #fff;
}

.ranklist article p.rankttl {
	margin: 0 auto 20px;
	padding: 15px 5px;
	width: 80%;
	text-align: center;
	font-size: 16px;
	background: #171c61;
	transform: skewX(-15deg);
	box-sizing: border-box;
	color: #fff;
}

.ranklist article p.rankttl span {
	font-size: 24px;
	margin-left: 10px;
	display: inline-block;
	vertical-align: middle;
}

.ranklist article p.rankttl span::after {
	counter-increment: number;
	content: counter(number);
}

.ranklist article h3 {
	text-align: center;
	margin-bottom: 30px;
	font-size: 17px;
	font-weight: bold;
}

.ranklist article h3 span {
	display: block;
	font-size: 14px;
}

.ranklist article p.rankimg {
	margin-bottom: 20px;
}

.ranklist article p.rankimg img {
	width: 100%;
	height: 220px;
}

.ranklist article dl {
	display: table;
	width: 100%;
}

.ranklist article dl:nth-of-type(n+2) {
	margin-top: 12px;
}

.ranklist article dl dt,
.ranklist article dl dd {
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
	padding-top: 5px;
	padding-bottom: 5px;
}

.ranklist article dl dt {
	text-align: center;
	width: 35%;
	background-color: #0080ae;
	color: #fff;
}

.ranklist article dl dd {
	padding-left: 3%;
	text-align: left;
}

/* 確約コース */
.kakuyaku {
	background-image: url(../images/page/index/bg_kakuyaku_l.png), url(../images/page/index/bg_kakuyaku_r.png);
	background-size: 42%, 42%;
	background-repeat: no-repeat, no-repeat;
	background-position: left top, right bottom;
	padding: 8% 0;
}

/* おすすめ特集 */
.osusume {
	background-color: #eef4ee;
	padding: 60px 0;
	margin-bottom: 60px;
}

.osusume h2 {
	display: flex;
	align-items: center;
	font-size: 36px;
	font-weight: bold;
	margin-bottom: 45px;
	letter-spacing: 0.2em;
}

.osusume h2:before {
	content: url(../images/page/index/icon_osusume.jpg);
	display: inline-block;
	vertical-align: middle;
	margin-right: 15px;
}

.osusume h2:after {
	border-top: 4px solid #171c61;
	content: "";
	flex-grow: 1;
	margin-left: 30px;
}

.osusume_list li {
	margin: 0 25px 25px 0;
}

.osusume_list li:nth-child(3n) {
	margin: 0 0 25px 0;
}

.index_bnr_list {
	margin-bottom: 60px;
}

.index_bnr_list li {
	margin: 0 5px 10px;
}


/* sns */
.index_sns {
	margin-bottom: 60px;
}

.index_sns .sns_box {
	width: 48%;
}

.index_sns .sns_box.facebook {
	float: left;
}

.index_sns .sns_box.twitter {
	float: right;
}

.index_sns .sns_box.twitter iframe{
	width: 504px !important;
}

.index_sns .sns_box h3 {
	text-align: center;
	margin-bottom: 30px;
}

.index_sns .line {
	margin-top: 40px;
	text-align: center;
}


/* ────────────────────── *

 * おすすめ特集

 * ────────────────────── */
.pagemain {
	text-align: center;
	margin-bottom: 60px;
}

#contents {
	margin-bottom: 80px;
}

.reco_list article {
	width: 29%;
	margin: 0 2% 60px;
}

.reco_list article p.recoimg img {
	width: 100%;
	height: 220px;
}

.reco_list article h3 {
	text-align: left;
	font-weight: bold;
	font-size: 17px;
	line-height: 1.7em;
	margin: 20px 0 15px;
	border-bottom: 1px solid #333;
	padding-bottom: 30px;
	min-height: 110px;
}

.reco_list article dl {
	width: 100%;
	display: table;
}

.reco_list article dl:nth-of-type(n+2) {
	margin-top: 15px;
}

.reco_list article dl dt,
.reco_list article dl dd {
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
	padding: 3px 0;
}

.reco_list article dl dt {
	text-align: center;
	border: 1px solid #171c61;
	color: #171c61;
	width: 30%;
}

.reco_list article dl dd {
	text-align: right;
	font-size: 18px;
	font-weight: bold;
}

.reco_list article p.detailbtn a {
	display: block;
	font-size: 16px;
	font-weight: bold;
	padding: 12px 0;
	text-align: center;
	width: 80%;
	margin: 40px auto 0;
	border: 1px solid #171c61;
	color: #fff;
	background-color: #171c61;
	background-image: url(../images/page/recommend/icon_btn.png);
	background-position: 4% center;
	background-repeat: no-repeat;
}

.reco_list article p.detailbtn a:hover {
	background-color: #fff;
	color: #171c61;
}


.wp-pagenavi{text-align: center;}

/* ────────────────────── *

 * メディア紹介ツアー

 * ────────────────────── */
.page_massmedia {
	background: url("../images/page/massmedia/main_bg.jpg") no-repeat center center;
}

.media_ttl {
	background: url("../images/page/massmedia/img_ttl_left.jpg"), url("../images/page/massmedia/img_ttl_right.jpg");
	background-position: left center, right center;
	background-repeat: no-repeat, no-repeat;
	text-align: center;
	margin: 0 0 40px;
	padding: 40px 270px;
	box-sizing: border-box;
}

.media_ttl h3 {
	font-size: 30px;
	font-weight: bold;
	color: #172a80;
	background: linear-gradient(transparent 60%, #ffeb3b 60%);
}

.media_ttl p {
	background-color: #8e0012;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	padding: 6px 0;
	margin-top: 18px;
}

.meia_list article {
	width: 23%;
	margin: 0 1% 20px;
	border: 5px solid #bddbed;
	padding: 10px;
	box-sizing: border-box;
}

.meia_list article p.md_photo img {
	width: 100%;
	height: 150px;
}

.meia_list article h3 {
	border-bottom: 1px solid #333;
	padding-bottom: 15px;
	margin: 10px 0 15px;
	font-weight: bold;
}

.meia_list article h3 span {
	display: block;
	font-weight: normal;
	font-size: 12px;
	margin-bottom: 10px;
}

.meia_list article ul {
	margin-bottom: 20px;
}

.meia_list article ul li {
	text-align: center;
	color: #fff;
	padding: 2px 10px;
	margin-right: 1%;
	font-size: 12px;
}

.meia_list article ul li.news,
.main_cantents .blog_single ul li.news {
	background-color: #2e8088;
}

.meia_list article ul li.tv,
.main_cantents .blog_single ul li.tv {
	background-color: #8e0012;
}

.meia_list article ul li.internet,
.main_cantents .blog_single ul li.internet {
	background-color: #FE9901;
}

.meia_list article ul li.magazine,
.main_cantents .blog_single ul li.magazine {
	background-color: #1BABDF;
}

.meia_list article p.md_btn a {
	display: block;
	text-align: center;
	padding: 6px 0;
	color: #fff;
	background-color: #172a80;
	border: 1px solid #172a80;
	border-radius: 4px;
}

.meia_list article p.md_btn a:hover {
	color: #172a80;
	background-color: #fff;
}

/* single */
.main_cantents.m_left,
#sidebar.s_left {
	float: left;
}

.main_cantents.m_right,
#sidebar.s_right {
	float: right;
}

.main_cantents {
	width: 74%;
}

#sidebar {
	width: 20%;
}

.main_cantents .blog_single h2 {
	font-weight: bold;
	font-size: 30px;
	line-height: 1.6em;
	margin-bottom: 24px;
}

.main_cantents .blog_single h2 span {
	display: block;
	font-size: 12px;
	margin-bottom: 20px;
}

.main_cantents .blog_single ul {
	margin-bottom: 40px;
}

.main_cantents .blog_single ul li {
	text-align: center;
	color: #fff;
	padding: 2px 10px;
	margin-right: 1%;
	font-size: 13px;
	min-width: 100px;
}

.single_contents h3 {
	font-size: 20px;
	font-weight: bold;
	border-top: 2px solid #172a80;
	padding: 35px 6px;
}

.single_contents div.blog_detail_list {
	margin-bottom: 70px;
}

.single_contents div.blog_detail {
	margin: 0 50px 40px;
}

.single_contents div.blog_detail p {
	margin-bottom: 24px;
	line-height: 1.8em;
}

.single_contents div.blog_detail p img {
	max-width: 100%;
}

.single_contents p.detail_btn a {
	display: block;
	width: 300px;
	border: 1px solid #172a80;
	background-color: #172a80;
	color: #fff;
	text-align: center;
	padding: 15px 0;
	margin: 10px auto;
	border-radius: 8px;
}

.single_contents p.detail_btn a:hover {
	background-color: #fff;
	color: #172a80;
}

#sidebar h3 {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	border-top: 2px solid #172a80;
	padding: 15px 0;
}

#sidebar ul.blogsidelist {
	margin-bottom: 40px;
}

#sidebar ul.blogsidelist li a {
	display: block;
	padding: 10px 15px;
	color: #333;
	border-top: 1px dotted #ccc;
}

#sidebar ul.blogsidelist li a:hover {
	background-color: #172a80;
	color: #fff;
}

/* ────────────────────── *

 * 乗り場：乗車ルート案内

 * ────────────────────── */
.page_platform {
	background: url("../images/page/platform/main_bg.jpg") no-repeat center center;
}

section.plat_cont {
	margin-bottom: 80px;
}

section.plat_cont h3 {
	background: url(../images/page/platform/ttl_left.png)no-repeat left center;
	padding: 18px 0 18px 110px;
	font-size: 34px;
	font-weight: bold;
	color: #1d2080;
	margin-bottom: 40px;
	display: flex;
	align-items: center;
}

section.plat_cont h3 span {
	font-size: 16px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 20px;
}

section.plat_cont h3:after {
	border-top: 2px solid #1d2080;
	content: "";
	flex-grow: 1;
	margin-left: 1rem;
}

.plat_list article {
	width: 31%;
	margin: 0 1% 40px;
	text-align: center;
	border-bottom: 2px solid #1d2080;
}

.plat_list article p.plat_photo img {
	width: 100%;
	height: 220px;
}

.plat_list article h4 {
	font-weight: bold;
	/*margin: 15px 0;*/
	margin: 15px 0 5px;
	font-size: 17px;
}
.plat_list article a {
	color: #000;
}
.plat_list article a:hover {
	color: #135ba9;
	opacity: 0.8;
}

/* single */
.single_head {
	margin-bottom: 70px;
}

.sh_left {
	background: url("../images/page/platform/bg_ttlarea.jpg") center top no-repeat;
	float: left;
	width: 570px;
	min-height: 350px;
	padding: 20px;
	color: #fff;
	box-sizing: border-box;
}

.sh_left p {
	border-left: 1px solid #fff;
	border-top: 1px solid #fff;
	padding: 20px;
	font-size: 20px;
}

.sh_left p span {
	font-size: 16px;
	display: inline-block;
	vertical-align: middle;
	margin-left: 20px;
}

.sh_left h3 {
	font-weight: bold;
	font-size: 26px;
	text-align: center;
	line-height: 1.8em;
	margin: 60px 5% 120px;
	padding: 10px 0;
	background: url("../images/page/platform/icon_bus.png") 3% center no-repeat;
}

.sh_right {
	float: right;
	width: 450px;
}

.sh_right img {
	width: 100%;
}

.single_content {
	margin-bottom: 70px;
}

.plat_ttl {
	background: url("../images/page/platform/icon_ttl.jpg")left center no-repeat;
	padding-left: 40px;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 30px;
}

.plat_ttl span {
	font-size: 20px;
	vertical-align: middle;
	display: inline-block;
	margin-left: 20px;
}

div.grayarea {
	border: 3px solid #9fa0a0;
	padding: 40px;
	text-align: center;
}

div.grayarea.tal {
	text-align: left;
}

div.grayarea p img {
	max-width: 100%;
}

p.ggmap_btn {
	text-align: center;
	margin-bottom: 60px;
}

ul.pdf_btn li {
	margin: 0 1%;
}

p.btn_otherlink a {
	display: block;
	margin: 60px auto;
	text-align: center;
	background-color: #172a80;
	border: 1px solid #172a80;
	color: #fff;
	padding: 30px 0;
	width: 45%;
	font-size: 18px;
	border-radius: 8px;
}

p.btn_otherlink a:hover {
	background-color: #fff;
	color: #172a80;
}

/* ────────────────────── *

 * デジタルチラシ

 * ────────────────────── */
.page_flyer {
	background: url("../images/page/flyer/main_bg.jpg") no-repeat center center;
}

.flyer_ttl {
	background: url("../images/page/flyer/bg_img001.png") no-repeat right center;
	margin-bottom: 40px;
}

.flyer_click {
	border: 2px solid #172a80;
	border-radius: 20px;
	padding: 40px 170px;
	margin-bottom: 60px;
	text-align: center;
	background: url("../images/page/flyer/ttl_left.jpg"), url("../images/page/flyer/ttl_right.jpg");
	background-position: 4% center, 96% center;
	background-repeat: no-repeat, no-repeat;
}

.flyer_click h4 {
	font-size: 30px;
	font-weight: bold;
	color: #172a80;
	background: linear-gradient(transparent 60%, #ffeb3b 60%);
}

.flyer_click p.text {
	font-size: 20px;
	margin: 20px 0 6px;
}

.flyer_click p.caption {
	font-size: 14px;
}

.flyer_ttl002 {
	font-size: 20px;
	line-height: 1.5em;
	font-weight: bold;
	background: #f1f2fb url("../images/page/flyer/icon_ttl.jpg") no-repeat 15px 20px;
	border-bottom: 6px solid #d2e0e8;
	padding: 18px 0 10px 60px;
	margin-bottom: 40px;
}

.flyer_ttl002 span {
	display: block;
	font-size: 14px;
}

p.selece_flyer {
	text-align: center;
	color: #172a80;
	font-size: 20px;
	font-weight: bold;
	margin: 30px 0;
}

section.fl_content {
	margin-bottom: 70px;
}

div.flyer_list article {
	width: 23%;
	margin: 0 1% 20px;
	box-sizing: border-box;
	border: 5px solid #bddbed;
	padding: 20px 15px 10px;
	text-align: center;
}

div.flyer_list article h4 {
	font-size: 18px;
	font-weight: bold;
	border-bottom: 1px solid #333;
	padding-bottom: 20px;
	margin-bottom: 20px;
}

div.flyer_list article p.fl_img {
	width: 140px;
	margin: 0 auto 20px;
}

div.flyer_list article p.fl_img img {
	width: 100%;
}

div.flyer_list article p.detail_btn a {
	display: block;
	border: 1px solid #172a80;
	background-color: #172a80;
	color: #fff;
	text-align: center;
	padding: 8px 0;
	border-radius: 8px;
}

div.flyer_list article p.detail_btn a:hover {
	background-color: #fff;
	color: #172a80;
}

.fl_content p.btn_otherlink a {
	display: block;
	margin: 60px auto;
	text-align: center;
	background-color: #172a80;
	border: 1px solid #172a80;
	color: #fff;
	padding: 30px 0;
	width: 45%;
	font-size: 18px;
	border-radius: 8px;
}

.fl_content p.btn_otherlink a:hover {
	background-color: #fff;
	color: #172a80;
}
/* ────────────────────── *

 * 人気ランキング

 * ────────────────────── */
.page_ranking {
	background: url("../images/page/ranking/main_bg.jpg") no-repeat center center;
}

/* ────────────────────── *

 * お問合わせまとめ

 * ────────────────────── */
.page_contact {
	background: url(../images/page/contact/main_bg.jpg) no-repeat center center;
}

#contact .tel_list {
	margin-bottom: 200px;
}

#contact .tel_list h3,
#contact .mail_list h3 {
	margin-bottom: 50px;
	font-size: 31px;
}

#contact .tel_list h3:before {
	content: "";
	background: url(../images/page/contact/tel_icon.png) no-repeat center center;
	width: 60px;
	height: 60px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 40px;
}

#contact .tel_list ul {
	margin-bottom: 40px;
}

#contact .tel_list ul li {
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	padding: 15px 30px;
	background-color: #172A80;
	min-width: 12%;
	text-align: center;
}

#contact .tel_list ul li.white {
	font-size: 26px;
	color: #000;
	padding: 15px 30px;
	background-color: #fff;
}

#contact .tel_list h4 {
	border: 1px solid #172A80;
	border-bottom: none;
	font-size: 26px;
	font-weight: bold;
	padding: 20px 0 20px 20px;
}

#contact .tel_list h4:before {
	content: "";
	background: url(../images/common/ttl_icon.png)no-repeat center center;
	background-size: contain;
	display: inline-block;
	width: 30px;
	height: 34px;
	vertical-align: middle;
	margin-right: 10px;
	margin-top: 1px;
}

#contact .tel_list h4:after {
	border-top: 10px solid #7783b2;
	content: "";
	flex-grow: 1;
	margin-left: 30px;
}


#contact .tel_number {
	width: 90%;
	margin: 0 auto 30px;
}

#contact .tel_number p {
	font-size: 45px;
	font-weight: bold;
	padding-top: 1px;
}

#contact .tel_number p span {
	font-size: 20px;
	font-weight: normal;
	vertical-align: middle;
	display: inline-block;
	margin-top: 0.2em;
}

#contact .tel_desc {
	border: 1px solid #172A80;
	padding: 40px 40px 25px;
	margin-bottom: 30px;
}

/*#contact .tel_desc:last-child {
	margin-bottom: 70px;
}*/

#contact .tel_desc dl {
	font-size: 16px;
}

#contact .tel_desc dt {
	line-height: 1;
	background-color: #D9D9D9;
	padding: 10px 20px;
	margin-right: 20px;
}

/*#contact .tel_desc dd {
	margin-right: 30px;
}*/

#contact .contact_desc dl {
	font-size: 16px;
}

#contact .contact_desc  dt {
	line-height: 1;
	background-color: #D9D9D9;
	padding: 10px 20px;
	margin-right: 20px;
  max-width: 104px;
  flex-shrink:0;
}
#contact .contact_desc .time {
	width: 35%;
}

#contact .contact_desc dl + dl {
	margin-left: 30px;
}

#contact .tel_number p span {
	font-size: 20px;
	font-weight: normal;
	vertical-align: middle;
	display: inline-block;
	margin-top: 0.2em;
}
#contact .contact_desc_notice {
  font-size: 17px;
  margin-top: 20px;
}

#contact .contact_desc_notice .red{
  color: #8E0012;
  font-weight: bold;
}


#contact .mail_list{
	margin-bottom: 70px;
}

#contact .mail_list h3:before {
	content: "";
	background: url(../images/page/contact/mail_icon.png) no-repeat center center;
	width: 60px;
	height: 60px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 40px;
}

#contact .mail_btn_list {
	margin-bottom: 70px;
}

#contact .mail_btn_list a {
	width: 48%;
	padding: 30px 40px;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.3;
	color: #000000;
	background: url(../images/common/conditions_btnbgb_off.png) no-repeat;
	background-position: right 10px bottom 10px;
	border: 6px solid #D2E0E8;
	box-sizing: border-box;
}

#contact .mail_btn_list a img {
	margin-right: 30px;
}

#contact .mail_btn_list a span {
	display: block;
	font-size: 27px;
	font-weight: normal;
}

#contact .mail_btn_list a:hover {
	color: #fff;
	background: url(../images/common/conditions_btnbg_on.png) no-repeat;
	background-position: right 10px bottom 10px;
	background-color: #171C61;
}

#contact .mail_list .text_area .red {
	color: #8E0012;
	font-size: 24px;
}


/* ────────────────────── *

 * お問合わせフォーム

 * ────────────────────── */

.contact_form article {
	margin-bottom: 40px;
}

.ttl_area {
	width: 70%;
}

.contact_form article h3 {
	font-size: 38px;
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
	margin-bottom: 40px;
}

.contact_form article .ttl_area h3:before {
	content: "";
	background: url(../images/page/contact/ttl_mail_icon.png)no-repeat center center;
	background-size: contain;
	display: inline-block;
	width: 54px;
	height: 54px;
	vertical-align: middle;
	margin-top: -12px;
	margin-right: 20px;
}

.contact_form article .ttl_area h3:after {
	content: "";
	display: block;
	background: linear-gradient(to right, #f1f1f1 0%, #ffffff 50%, #f1f1f1 100%);
	height: 5px;
	margin-top: 15px;
	;
}

.contact_form article .ttl_area h3 span {
	font-size: 50%;
	vertical-align: middle;
	padding-left: 20px;
}

.contact_form article img {
	max-height: 189px;
	max-width: 189px;
	width: 189px;
	padding-left: 60px;
}


.req,
.txtred,
.red-attn {
	color: #cc0000;
	font-weight: bold;
}

.form_contents h3 {
	background: #f7f3f0;
	padding: 30px 0;
	text-align: center;
	font-size: 20px;
	font-weight: 550;
	border-bottom: solid 1px #ccc;
}

.form_contents p.text {
	text-align: right;
}

table.formtbl {
	width: 100%;
	border-top: solid 1px #ccc;
	table-layout: fixed;
}

table.formtbl th.bg_red,
table.formtbl td.bg_red {
	background: #fff3f3;
	padding: 30px 15px;
}

table.formtbl tr th,
table.formtbl tr td {
	box-sizing: border-box;
	padding: 15px 20px;
	border: solid 1px #000;
}

table.formtbl tr th {
	width: 25%;
	background-color: #F0F4E3;
	position: relative;
	vertical-align: top;
	padding: 20px;
	font-size: 18px;
	font-weight: 800;
}

table.formtbl tr th .req {
	position: absolute;
	right: 20px;
	top: 17px;
	padding: 2px 10px;
	background-color: #fff;
	font-size: 14px;
}

table.formtbl tr td,
div.formtbl dl dd {
	width: 68%;
}

.formtbl input.w30 {
	width: 35%;
}

.formtbl input.w60 {
	width: 60%;
}

.formtbl input.w90,
.formtbl textarea {
	width: 96%;
}

.formtbl input,
.formtbl textarea {
	padding: 8px;
	border: 1px solid #ccc;
	box-sizing: border-box;
	font-size: 14px;
	max-width: 100%;
}

.formtbl select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 90%;
	padding: 10px;
	box-sizing: border-box;
	font-size: 15px;
	border: 1px solid #ccc;
}

.formtbl tr td span.wpcf7-list-item {
	display: block;
	widtgh: 100%;
}

table.formtbl td.f-address input {
	margin-bottom: 7px;
}

table.formtbl td label {
	padding: 0 0 0 0;
	margin: 0 0 0 0;
}

table.formtbl td input[type=radio] {
	padding: 0 5px;
	margin: 0 5px;
}

table.formtbl td label span {
	margin-left: 5px;
}

.formtbl td input:focus,
.formtbl td textarea:focus {
	background: #fffaca;
}

table.formtbl td p.fcap {
	padding-bottom: 20px;
}


input[type="submit"] {
	-webkit-appearance: none;
}

#submit {
	text-align: center;
	margin: 60px auto;
	width: 50%;
}

/*#submit input{
	background: #3d72b8;
	color: #fff;
	border:1px solid #3d72b8;
	width: 33%;
	padding: 20px 0;
	font-size: 16px;
    font-weight: 500;
	border-radius: 5px;
}*/

#submit input,
.contact-complete a {
	padding: 20px 40px;
	width: 47%;
	font-size: 17px;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
	border: 1px solid #9FA0A0;
	background: url(../images/page/contact/btn_link.png) no-repeat;
	background-position: left 10% center;
	background-color: #808080;
	transition: 0.3s ease-in-out;
}

#submit input:hover,
.contact-complete a:hover {
	background-color: #000000;
	cursor: pointer;
}

/* 入力内容クリアボタンを確認画面時に非表示 */
.mw_wp_form_confirm #submit input.resetbtn {
	display: none;
}

/*#submit input.backbtn,
#submit input.wpcf7c-btn-back{
	background: #f2f2f2;
    color: #333;
	border:1px solid #3d72b8;
	width: 30%;
	padding: 20px 0;
	font-size: 16px;
	border-radius: 5px;
	margin-right: 20px;
}

#submit input.backbtn:hover,
#submit input.wpcf7c-btn-back:hover{
	background: #bababa;
	color: #3d72b8;
	cursor:pointer; 
}*/

span.error {
	color: #ff0000;
	font-weight: bold;
	margin-left: 5px;
}

/* 入力エラー */
div.c_unit {
	margin: 30px 0;
}

div.contact-error {
	background: #ffdede;
	padding: 30px;
	margin-bottom: 30px;
	text-align: center;
}

div.contact-error h2 {
	color: #ff0000;
	font-size: 20px;
	margin-bottom: 30px;
	font-weight: bold;
}

div.contact-text p,
div.contact-complete p {
	margin-bottom: 40px;
}


/* ────────────────────── *

 * リボンポイントカードページ(旧：すたんぷカードページ)

 * ────────────────────── */

.page_stamp {
	background: url("../images/page/stampcard/main_bg.jpg") no-repeat center center;
}

.stamp_list h3 {
	margin-bottom: 40px;
}


.stamp_list {
	margin-bottom: 120px;
}

.stamp_list01 .text_area {
	background: url("../images/page/stampcard/stamp_img01.png") no-repeat right bottom;
	margin-bottom: 30px;
}

.stamp_list01 .text_area p {
	font-size: 22px;
	line-height: 1.8;
	padding-bottom: 3em;
	width: 68%;
}

.stamp_list01 .text_area p span {
	font-weight: bold;
}

.stamp_list01 dt {
	position: relative;
	margin-bottom: 20px;
}

.stamp_list01 dt span {
	font-weight: bold;
	color: #fff;
	background-color: #171c61;
	border-radius: 10px;
	font-size: 28px;
	padding: 15px 50px;
	display: inline-block;
}

.stamp_list01 dt:before {
	content: "";
	width: 66%;
	max-width: 66%;
	border-bottom: 8px solid #171c61;
	position: absolute;
	top: 38%;
	right: 0;
}

.stamp_list01 dd {
	border-bottom: 1px dashed #9FA0A0;
	padding: 20px 20px 20px 15px;
	display: table;
	width: 100%;
	min-height: 85px;
}

.stamp_list01 dd p {
	border-left: 10px solid #65c8d0;
	padding-left: 20px;
	font-size: 24px;
	line-height: 1.75;
	vertical-align: middle;
	display: table-cell;
}

.stamp_list01 p.link_btn {
	width: 70%;
	margin: 60px auto 0;
}

.stamp_list01 a {
	display: block;
	padding: 30px 20px;
	font-size: 20px;
	color: #fff;
	text-align: center;
	font-weight: bold;
	border: 1px solid #9FA0A0;
	background: url(../images/page/stampcard/link_btn_off.png) no-repeat;
	background-position: right 40px center;
	background-color: #171c61;
}

.stamp_list01 a:hover {
	color: #171C61;
	background: url(../images/page/stampcard/link_btn_on.png) no-repeat;
	background-position: right 40px center;
	background-color: #fff;
}


.stamp_list02 ul li {
	padding: 40px 0;
	line-height: 1.6;
	border-bottom: 1px dashed #9FA0A0;
}

.stamp_list02 ul li:first-child {
	padding-top: 0;
}

.stamp_list02 ul li span {
	font-size: 20px;
	font-weight: bold;
	padding: 6px 30px;
	display: inline-block;
	color: #fff;
	background-color: #171c61;
	margin-bottom: 25px;
}


.stamp_list03 ul li {
	padding-bottom: 60px;
	font-size: 16px;
	line-height: 1.6;
}

.stamp_list03 ul li h4 {
	font-size: 20px;
	font-weight: bold;
	padding: 20px 30px;
	border: 1px solid #036E80;
	margin-bottom: 30px;
}

.ribbonpoint_wrap a.link_btn_txt{
	color: #171C61;
	font-weight: bold;
	text-decoration: underline;
}

.ribbonpoint_wrap a.link_btn_txt:hover{
	opacity: 0.7;
}

.ribbonpoint_wrap .link_btn a{
		display: block;
    padding: 20px 2.5em;
    font-size: 20px;
    color: #fff;
    text-align: center;
    font-weight: bold;
    border: 1px solid #9FA0A0;
    background: url( ../images/common/link_arrow_off.png) no-repeat;
    background-position: right 20px center;
    background-color: #171c61;
}

.ribbonpoint_wrap .link_btn a:hover {
    color: #171C61;
    background: url(../images/common/link_arrow_on.png) no-repeat;
    background-position: right 20px center;
    background-color: #fff;
}

.ribbonpoint_wrap .red{
	color: #8f0012;
	font-weight: bold;
}

.ribbonpoint_wrap .red.underline{
	text-decoration: underline;
}

.ribbonpoint_wrap .link_btn_list .link_btn{
	width: 43%;
	margin: 0 auto 20px;
}



.ribbonpoint_wrap .page_stamp {
	background: url("../images/page/stampcard/main_bg.jpg") no-repeat center center;
}

.ribbonpoint_wrap .stamp_infomation{
	text-align: center;
}

.ribbonpoint_wrap .stamp_infomation .stxt{
	font-size: 14px;
}


.ribbonpoint_wrap .stamp_infomation .link_btn{
	width: 60%;
	margin: 0 auto 20px;
}


.ribbonpoint_wrap #stamp_menulist ul{
	counter-reset: number 0;
	width: 53%;
}

.ribbonpoint_wrap #stamp_menulist ul li {
	border: 1px solid #B8B8B8;
	margin-bottom: 20px;
	background: #fff;
}

.ribbonpoint_wrap #stamp_menulist ul li a {
	display: block;
	padding: 10px 20px;
	font-size: 18px;
	content: counter(a);
	margin: 0 5px 3px;
	background: url(../images/page/faq/link_btn_bg.png) repeat-x;
	background-size: contain;
	color: #333333;
}

.ribbonpoint_wrap #stamp_menulist ul li a:hover {
	opacity: 0.7;
}

.ribbonpoint_wrap #stamp_menulist ul li a::before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	display: inline-block;
	background: #172A80;
	color: #fff;
	text-align: center;
	line-height: 19px;
	margin-top: 3px;
	margin-right: 15px;
	padding: 10px;
}

.ribbonpoint_wrap #stamp_menulist .imgarea{
	width: 35%;
	margin-bottom: 20px;
}

.ribbonpoint_wrap #stamp_menulist .imgarea img {
	width: 100%;
}


.ribbonpoint_wrap .stamp_list h3 {
	margin-bottom: 40px;
}

.ribbonpoint_wrap .stamp_list_wrap {
	counter-reset: wrapnumber 0;
}


.ribbonpoint_wrap .stamp_list {
	margin-bottom: 120px;
}

.ribbonpoint_wrap .stamp_list_wrap .stamp_list h3{
	padding-left: 100px;
}

.ribbonpoint_wrap .stamp_list_wrap .stamp_list h3:before{
	counter-increment: wrapnumber 1;
	content: counter(wrapnumber, decimal-leading-zero);
	display: inline-block;
	background: #172A80;
	color: #fff;
	text-align: center;
	padding: 24px 24px 20px;
	font-weight: 400;
	line-height: 1;
	position: absolute;
	left: 1px;
	top: 2px;
}


.ribbonpoint_wrap .stamp_desc .txt{
	margin-bottom: 20px;
}

.ribbonpoint_wrap .stamp_desc .stxt{
	font-size: 14px;
}

.ribbonpoint_wrap .stamp_desc ul{
	margin-bottom: 80px;
}

.ribbonpoint_wrap .stamp_desc ul li.link_btn{
	width: 38%;
}

.ribbonpoint_wrap .stamp_desc dt {
	position: relative;
}

.ribbonpoint_wrap .stamp_desc dt span {
	font-weight: bold;
	color: #fff;
	background-color: #171c61;
	border-radius: 10px;
	font-size: 24px;
	padding: 15px 50px;
	display: inline-block;
}

.ribbonpoint_wrap .stamp_desc dt:before {
	content: "";
	width: 70%;
	max-width: 70%;
	border-bottom: 8px solid #171c61;
	position: absolute;
	top: 38%;
	right: 0;
}

.ribbonpoint_wrap .stamp_desc dd {
	border-bottom: 1px dashed #9FA0A0;
	padding: 20px 20px 20px 15px;
	display: table;
	width: 100%;
	box-sizing: border-box;
}

.ribbonpoint_wrap .stamp_desc dd p {
	border-left: 5px solid #65c8d0;
	padding-left: 20px;
	font-size: 18px;
	line-height: 1.75;
	vertical-align: middle;
	display: table-cell;
}

.ribbonpoint_wrap .stamp_desc dd p a span{
	font-size: 14px;
}

.ribbonpoint_wrap .stamp_list02 ul > li {
	padding: 40px 0;
	line-height: 1.6;
	border-bottom: 1px dashed #9FA0A0;
}

.ribbonpoint_wrap .stamp_list02 ul > li:first-child {
	padding-top: 0;
}

.ribbonpoint_wrap .stamp_list02 ul > li .sttl {
	display: inline-flex;
	align-items: center;
	margin-bottom: 0px;
}

.ribbonpoint_wrap .stamp_list02 ul > li .sttl span {
	font-size: 24px;
	font-weight: bold;
	padding: 6px 30px;
	display: inline-block;
	color: #fff;
	background-color: #171c61;
	margin-bottom: 0;
}

.ribbonpoint_wrap .stamp_list02 ul > li .sttl_wh span {
	color: #171c61;
	background-color: #fff;
	border:1px solid  #171c61;
}

.ribbonpoint_wrap .stamp_list02 ul li .sttl img {
	width: auto;
	height: 85px;
	margin-left: 10px;
}

.ribbonpoint_wrap .stamp_list02 ul li .pointimg {
	width: 525px;
}

.ribbonpoint_wrap .stamp_list02 ul li img {
	width: 100%;
	margin: 10px 0;
}

.ribbonpoint_wrap .stamp_list02 ul li dl {
	margin-top: 20px;
}

.ribbonpoint_wrap .stamp_list02 ul li dl dt{
	font-weight: bold;
}

.ribbonpoint_wrap .stamp_list02 ul li dl dd{
	line-height: 2;
}

.ribbonpoint_wrap .stamp_list02 ul li .txt_list{
	margin: 20px 0;
	line-height: 2;
}

.ribbonpoint_wrap .stamp_list03 ul li {
	padding-bottom: 60px;
	font-size: 16px;
	line-height: 1.6;
}

.ribbonpoint_wrap .stamp_list03 ul li h4 {
	font-size: 20px;
	font-weight: bold;
	padding: 20px 30px;
	border: 1px solid #036E80;
	margin-bottom: 30px;
}

.ribbonpoint_wrap .stamp_list04.txtarea {
	width: 50%;
}

.ribbonpoint_wrap .stamp_list04 .imgarea {
	width: 50%;
	margin-left: 30px;
}

@media screen and (min-width:736px) {


.ribbonpoint_wrap .stamp_list04 .imgarea img{
	width: 50%;
}
}
/* ────────────────────── *

 * ご予約・お申込み

 * ────────────────────── */

.page_reservation {
	background: url(../images/page/reservation/main_bg.jpg) no-repeat center center;
}
.reservation_wrap .desc{
	text-align: center;
  padding-top: 15px;
	padding-bottom: 30px;
}
.reservation_wrap .desc.large{
	font-size: 24px;
	line-height: 1.7;
}
.reservation_btn_list ul {
	margin-bottom: 100px;
}

.reservation_btn_list ul li {
	width: 32%;
	margin-bottom: 20px;
}

.reservation_btn_list ul li a {
	display: block;
	padding: 20px 0;
	font-size: 16px;
	color: #171c61;
	border: 1px solid #3D72B8;
	text-align: center;
	transition: 0.3s ease-in-out;
}

.reservation_btn_list ul li a:hover,
.reservation_btn_list ul li a.checked {
	border: 1px solid #3D72B8;
	color: #fff;
	background-color: #3D72B8;
}

.reservation_btn_list_pdf ul li {
	width: 48%;
	margin-bottom: 20px;
}

.reservation_btn_list_pdf  ul li a {
	padding: 20px 0;
	font-size: 18px;
	background-image: url(../images/page/index/icon_btn_black.jpg);
	background-repeat: no-repeat;
    background-position: 5% center;
}

.reservation_btn_list_pdf  ul li a:hover{
	padding: 20px 0;
	font-size: 18px;
	background-image: url(../images/page/index/icon_btn_white.jpg);
	background-repeat: no-repeat;
    background-position: 5% center;
}

/* ────────────────────── *

 * よくあるご質問

 * ────────────────────── */

.page_faq {
	background: url(../images/page/faq/main_bg.jpg) no-repeat center center;
}

.faq_wrap .page_sub_title {
	font-size: 24px;
	text-align: center;
	line-height: 1.4;
	margin: 0 auto 70px;
}

.faq_category {
	background: url("../images/page/faq/btn_list_bg.jpg") no-repeat bottom center;
	background-size: cover;
	padding: 30px 0 70px;
	margin-bottom: 70px;
}

.faq_category ul {
	padding: 0 40px;
	counter-reset: number 0;

}

.faq_category ul li {
	width: 49%;
	border: 1px solid #B8B8B8;
	margin-bottom: 10px;
	background: #fff;
}

.faq_category ul li a {
	display: block;
	padding: 10px 20px;
	font-size: 18px;
	content: counter(a);
	margin: 0 5px 3px;
	background: url(../images/page/faq/link_btn_bg.png) repeat-x;
	background-size: contain;
	color: #333333;
}

.faq_category ul li a:hover {
	opacity: 0.7;
}

.faq_category ul li a::before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	display: inline-block;
	background: #172A80;
	color: #fff;
	text-align: center;
	line-height: 19px;
	margin-top: 3px;
	margin-right: 15px;
	padding: 10px;
}


.faq_list_area {
	counter-reset: number 0;
}

.faq_list {
	margin-bottom: 100px;
}

.faq_list h3 {
	background: #172A80;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	padding: 15px 20px 15px 3.5em;
	margin-bottom: 30px;
	position: relative;
	line-height: 2;
}

.faq_list h3::before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	display: inline-block;
	background: #fff;
	color: #172A80;
	text-align: center;
	padding: 10px;
	font-weight: 400;
	line-height: 1;
	position: absolute;
	left: 20px;
}

.accor_ttl:after {
	content: '';
	display: block;
	display: inline-block;
	width: 28px;
	height: 28px;
	right: 5px;
	top: 3%;
	background: url(../images/page/faq/plus.png) no-repeat center center;
	position: absolute;
}

.accor_ttl.on:after {
	background-image: url(../images/page/faq/minus.png);
}

.accor_desc {
	display: none;
}

.accor_ttl_blue:after {
	content: '';
	display: block;
	display: inline-block;
	width: 28px;
	height: 28px;
	right: 30px;
	top: 29%;
	background: url(../images/page/conditions/plus.png) no-repeat center center;
	position: absolute;
}

.accor_ttl_blue.on:after {
	background-image: url(../images/page/conditions//minus.png);
}



.faq_list dl {
	padding: 20px;
	border: 1px solid #9fa0a0;
	margin-bottom: 15px;
}


.faq_list dl dt {
	position: relative;
	font-size: 18px;
	line-height: 1.6;
	padding: 0 45px;
}

.faq_list dl dt:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 28px;
	height: 29px;
	background: url(../images/page/faq/icon_q.png) no-repeat center center;
	vertical-align: middle;
	margin-top: -4px;
	margin-right: 20px;
	position: absolute;
	top: 2px;
	left: 0;
}


.faq_list dl dd {
	border-top: dotted 2px #ddd;
	padding: 20px 20px 0 40px;
	margin-top: 20px;
	position: relative;
}

.faq_list dl dd:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 28px;
	height: 29px;
	background: url(../images/page/faq/icon_a.png) no-repeat center center;
	vertical-align: middle;
	margin-right: 20px;
	position: absolute;
	top: 20px;
	left: 0;
}

.faq_list dl dd span {
	font-weight: bold;
}

.faq_list dl dd span.underline {
	text-decoration: underline;
}

.faq_list dl dd span.red {
	color: #8f0012;
}
.faq_list dl dd a {
	font-weight: bold;
	text-decoration: underline;
}



/* ────────────────────── *

 * 旅行業登録票

 * ────────────────────── */
.page_agreement {
	background: url("../images/page/conditions/recruit/main_bg.jpg") no-repeat center center;
}


.conditions_list {
	margin-bottom: 100px;
}

.conditions_list h3 {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.5;
	position: relative;
	margin-bottom: 50px;
}


.conditions_list table th,
.conditions_list table td {
	padding: 20px;
	font-size: 20px;
	border-bottom: 1px dashed #9FA0A0;
}

.conditions_list table th {
	position: relative;
	padding-left: 40px;
	vertical-align: top;
	width: 40%;
}

.conditions_list table th:before {
	content: '';
	display: inline-block;
	width: 10px;
	height: 10px;
	left: 20px;
	top: 1.3em;
	background: #171c61;
	position: absolute;
}

.conditions_list table td span {
	font-size: 16px;
	margin-top: 20px;
	display: inline-block
}

.conditions_list02 ul li {
	width: 32%;
	margin-bottom: 20px;
}

.conditions_list02 ul li a {
	display: block;
	padding: 30px 20px;
	font-size: 20px;
	color: #171c61;
	border: 1px solid #9FA0A0;
	background: url(../images/page/conditions/conditions_btnbg_off.png) no-repeat;
	background-position: right 10px bottom 10px;
}

.conditions_list02 ul li a span {
	font-size: 140%;
	margin-right: 10px;
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	color: #858BC5;
	transition: 0.3s ease-in-out;
}

@media all and (-ms-high-contrast: none) {
	.conditions_list02 ul li a span {
		margin-top: 8px;
	}
}
.conditions_list02 ul li a:hover {
	border: 1px solid #171c61;
	color: #fff;
	background: url(../images/page/conditions/conditions_btnbg_on.png) no-repeat;
	background-position: right 10px bottom 10px;
	background-color: #171C61;
}

.conditions_list02 ul li a:hover > span {
	color: #fff;
}

.conditions_list ul.pdf_list {
	margin: 0 40px;
}

.conditions_list ul.pdf_list li {
	width: 48%;
	margin-bottom: 40px;
}

.conditions_list ul.pdf_list li a {
	font-size: 20px;
	color: #333333;
}

.conditions_list ul.pdf_list li a:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 106px;
	height: 107px;
	margin-right: 30px;
	margin-top: -2px;
	background-image: url(../images/page/conditions/conditions_icon_pdf.png);
	vertical-align: middle;
}

.conditions_list ul.pdf_list li a:hover {
	text-decoration: underline;
}

.conditions_list04 p {
	margin-bottom: 40px;
}

/* ────────────────────── *

 * 旅行業約款

 * ────────────────────── */
.agreement_wrap article {
	margin-bottom: 30px;
}

.agreement_wrap article ul {
	margin-bottom: 30px;
	display: none;
}

#agreement_consultation article ul,
#agreement_procedure article ul {
	margin-bottom: 30px;
	display: block;
}

.agreement_wrap article h4 {
	background: #172A80;
	color: #fff;
	padding: 15px 0 15px 30px;
	font-size: 18px;
	letter-spacing: 0.3em;
	margin-bottom: 25px;
}

.agreement_wrap article p.sub_title {
	font-size: 20px;
	font-weight: 800;
	margin-bottom: 30px;
}

.agreement_wrap article ul li {
	margin-bottom: 20px;
}

.agreement_wrap article p.remarks {
	margin-top: 25px;
	margin-bottom: 10px;
}

.agreement_wrap article .text_list,
.agreement_wrap article ul table tbody.counter {
	counter-reset: number 0;
}

.agreement_wrap article .text_list p {
	padding-bottom: 20px;
	padding-left: 45px;
	border-bottom: 1px dashed #9FA0A0;
	margin-bottom: 20px;
	content: counter(p);
	position: relative;
}

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

.agreement_wrap article .text_list p::before,
.agreement_wrap article ul table tbody.counter th::before {
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #172A80;
	color: #fff;
	text-align: center;
	line-height: 19px;
	margin-top: 3px;
}

.agreement_wrap article ul table tbody.counter th::before {
	top: inherit;
	left: 10px;
	line-height: 20px;
}

.agreement_wrap article ul table tbody.counter-iroha th::before {
	content: counter(number, katakana-iroha);
}

.agreement_wrap article ul table th {
	width: 75%;
}

.agreement_wrap article ul table th,
.agreement_wrap article ul table td {
	padding: 10px;
	border: 1px solid #9FA0A0;
}

.agreement_wrap article ul table .bgc-b {
	background: #F1F2FB;
	padding: 10px;
	text-align: center;
	font-size: 20px;
	font-weight: 800;
}

.agreement_wrap article ul table .bgc-g {
	background: #e6e6e6;
}

.agreement_wrap article ul table th.bgc-g {
	font-weight: 800;
}

.agreement_wrap article ul table tbody.counter th {
	padding-left: 45px;
	content: "";
	position: relative;
}

/* ────────────────────── *

 * 旅程管理研修

 * ────────────────────── */

.page_training {
	background: url(../images/page/training/main_bg.jpg) no-repeat center center;
}

.training_text {
	margin-bottom: 70px;
}

.training_text h3 {
	font-size: 30px;
	font-weight: 500;
	line-height: 1;
	position: relative;
	margin-bottom: 50px;
}

.training_text h3:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 25px;
	margin-top: -2px;
	background-image: url(../images/page/training/ttl_icon.png);
	vertical-align: middle;
}

.training_wrap article {
	margin-bottom: 70px;
}

.training_wrap article p,
.training_wrap article dl {
	padding-left: 10px;
	margin-bottom: 1em;
}

.training_wrap article p.mb {
	margin-bottom: 20px;
}

.training_wrap article dl dd {
	padding-left: 1em;
}

.training_wrap .schedule {
	margin-bottom: 120px;
}

.training_wrap .schedule h4 {
	margin-bottom: 70px;
}

.training_wrap .schedule_ttl {
	display: table;
	margin: 0 auto 60px;
	padding-left: 0;
}

.training_wrap .schedule_ttl p {
	display: table-cell;
}

.training_wrap .schedule_ttl .text_area {
	border-bottom: 1px solid #000;
	font-size: 34px;
	vertical-align: middle
}

.training_wrap .schedule h5 {
	margin-bottom: 25px;
	border-bottom: solid 15px #009569;
	position: relative;
}

.training_wrap .schedule h5:after {
	content: " ";
	display: block;
	border-bottom: solid 15px #0E569F;
	bottom: -15px;
	width: 82%;
	position: absolute;
}

.training_wrap .schedule h5 span {
	font-size: 24px;
	background-color: #000;
	color: #fff;
	padding: 10px 19px;
	display: inline-block;
	z-index: 99;
}

.training_wrap .schedule h5 span:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 2.2em;
	height: 2.05em;
	margin-right: 20px;
	background-image: url(../images/page/training/schedule_day_1.png);
	background-size: contain;
	vertical-align: middle;
}

.training_wrap .schedule table {
	width: 102%;
	border-spacing: 10px;
	border-collapse: separate;
	font-size: 20px;
	margin-bottom: 40px;
	margin-left: -10px;
}

.training_wrap .schedule table:last-of-type {
	margin-bottom: 80px;
}

.training_wrap .schedule table th,
.training_wrap .schedule table td {
	border: 1px solid #cccccc;
}

.training_wrap .schedule table th {
	width: 25%;
	border: 1px solid #cccccc;
	text-align: center;
	vertical-align: middle;
	padding: 10px;
	color: #fff;
	background-color: #3285bb;
	line-height: 2;
}

.training_wrap .schedule table td {
	padding: 20px;
}

.training_wrap .schedule .sub_ttl {
	text-align: center;
	padding-left: 0;
	font-size: 24px;
	margin-bottom: 30px;
}

.training_wrap .contact h3 {
	font-size: 28px;
	display: block;
	text-align: center;
	padding: 1em;
	color: #fff;
	background-color: #0E569F;
}

.training_wrap .contact dl {
	border: 1px solid #cccccc;
	padding: 20px 0;
}

.training_wrap .contact dt {
	font-size: 24px;
	padding: 15px;
	border: 1px solid #3285bb;
	margin-right: 30px;
	text-align: center
}

.training_wrap .contact dd {
	font-size: 42px;
	font-weight: bold;
	vertical-align: middle;
	margin-top: 7px;
}

.training_wrap .contact dd img {
	vertical-align: middle;
	padding-right: 10px;
}

/* ────────────────────── *

 * 会員利用規約

 * ────────────────────── */

.page_memberterms {
	background: url(../images/page/memberterms/main_bg.jpg) no-repeat center center;
}

.training_text {
	margin-bottom: 70px;
}


/* ────────────────────── *

 * プライバシーポリシー

 * ────────────────────── */

.page_privacy {
	background: url(../images/page/privacy/main_bg.jpg) no-repeat center center;
}

.privacy_text {
	margin-bottom: 70px;
}

.privacy_text h3 {
	font-size: 30px;
	font-weight: 500;
	line-height: 1.5;
	position: relative;
	margin-bottom: 50px;
}

.privacy_text h3:before {
	background-repeat: no-repeat;
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin-right: 25px;
	margin-top: -2px;
	background-image: url(../images/page/privacy/ttl_icon.png);
	vertical-align: middle;
}

.privacy_wrap article {
	margin-bottom: 70px;
}

.privacy_wrap article p {
	padding-left: 10px;
}

.privacy_wrap article p.mb {
	margin-bottom: 20px;
}

.privacy_wrap article p.tar {
	text-align: right;
}



.privacy_wrap article .text_list,
.privacy_wrap article ul table tbody.counter {
	counter-reset: number 0;
	margin-top: 10px;
}

.privacy_wrap article .text_list p {
	padding-bottom: 20px;
	padding-left: 45px;
	border-bottom: 1px dashed #9FA0A0;
	margin-bottom: 20px;
	content: counter(p);
	position: relative;
}

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

.privacy_wrap article .text_list p::before,
.privacy_wrap article ul table tbody.counter th::before {
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	background: #172A80;
	color: #fff;
	text-align: center;
	line-height: 19px;
	margin-top: 3px;
}

.privacy_wrap article .text_list_small{
	counter-reset: smallnumber 0;
}
.privacy_wrap article .text_list_small span{
	margin-left: 1.8em;
	padding-left: 1em;
	text-indent: -2.5em;
	display: inline-block;
}
.privacy_wrap article .text_list_small span:before{
	counter-increment: smallnumber 1;
	content:"（" counter(smallnumber)"）";
}
.privacy_wrap article .txt_indent{
	margin-left: 2.5em;
	display: inline-block;
}
/* ────────────────────── *

 * Webサイト会員利用規約

 * ────────────────────── */

.page_web_memberterm {
	background: url(../images/page/webmemberterm/main_bg.jpg) no-repeat center center;
}


/* ────────────────────── *

 * 株主優待割引のご案内

 * ────────────────────── */

.page_shareholder {
	background: url(../images/page/shareholder/main_bg.jpg) no-repeat center center;
}

.page_shareholder.page_title h2{
	font-size: 36px;
}

#page_shareholder .notice {
	font-size: 20px;
	text-indent: -1em;
	padding-left: 1em;
	display: inline-block;
}

#page_shareholder .notice:before{
	content: "※";
}

#page_shareholder .txt_list li {
    font-size: 18px;
		line-height: 1.6;
    margin-bottom: 20px;
    text-indent: -1em;
    padding-left: 1em;
}

#page_shareholder .txt_list li:before {content: "○ ";}

.shareholder_aplicable {
   margin-bottom: 70px;
}
.shareholder_aplicable h3 {
    font-size: 40px;
    font-weight: 600;
    line-height: 1.5;
    position: relative;
    margin-bottom: 40px;
}
.shareholder_aplicable ul {
    margin-bottom: 30px;
}

.shareholder_aplicable ul li {
    display: flex;
    align-items: center;
    padding: 20px 20px 20px 0;
    font-size: 20px;
    border-bottom: 1px dashed #9FA0A0;
}

.shareholder_aplicable ul li .icon{
   margin-right:25px;
}


.shareholder_request {
margin-bottom: 60px;}

.shareholder_request article {
    padding: 50px 20px 30px ;
    border-bottom: 1px solid #000;
}

.shareholder_request article h4 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 50px;
		display: flex;
		align-items: center;
		line-height: 1.4;
}
.shareholder_request article h4:before{
    content: "";
		display: block;
		width: 65px;
		height: 65px;
		margin-right: 20px;
}
.shareholder_request article.tel h4:before{
		background: url("../images/page/shareholder/icon_tel.png") no-repeat center center /contain;
}
.shareholder_request article.web h4:before{
		background: url("../images/page/shareholder/icon_pc.png") no-repeat center center /contain;
}
.shareholder_request article.tel{
    border-bottom: none;
}
.shareholder_request .notice {
	font-size: 18px;
}

.shareholder_payment{
	margin-bottom: 40px;
}

.shareholder_payment h3{
	margin-bottom: 50px;
}

.shareholder_payment article{
	padding: 0 20px 30px ;
}

.shareholder_store article {
    margin: 0 auto 40px 40px;
    border-left: 10px solid #65C8D0;
    padding: 10px 20px;
}

.shareholder_store h3 {
    margin-bottom: 50px;
}

.shareholder_store h4,
.shareholder_store .tel_num {
    font-size: 30px;
    font-weight: 600;
    line-height: 1.4;
}

.shareholder_store .tel_num {
    margin-bottom: 6px;
}
.shareholder_store .time {
    font-size: 19px;
}

.shareholder_store article:last-of-type {
    margin-bottom: 70px;
}
.shareholder_store .btn {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* ────────────────────── *

 * footer

 * ────────────────────── */
.side_bnr {
	position: fixed;
	right: 0;
	top: 12%;
	z-index: 9999;
}

.side_bnr ul li {
	margin-bottom: 15px;
	text-align: right
}


footer {
	margin-top: 90px;
	padding: 0 0 40px;
}

body.promise footer {
	margin-top: 0;
}

.footbnr_list001 {
	background-color: #e6e6e6;
	color: #fff;
	padding: 50px 0 30px;
}

.footbnr_list001 ul li {
	width: 48%;
	margin: 0 1% 20px;
}

.footbnr_list001 ul li.w100 {
	width: 98%;
}

.footbnr_list001 ul li img {
	width: 100%;
}

.footbnr_list002 {
	background-color: #171c61;
	color: #fff;
	padding: 60px 0;
	margin-bottom: 30px;
}

.footbnr_list002 .footbnr001 {
	align-items: center;
}

.footbnr_list002 .footbnr001 li {
	width: 23%;
	margin: 0 1.05%;
	text-align: center;
}

.footbnr_list002 .footbnr001 li.tw,
.footbnr_list002 .footbnr001 li.fb,
.footbnr_list002 .footbnr001 li.insta,
.footbnr_list002 .footbnr001 li.li{
	width: 250px;
	border: 1px solid #fff;
	box-sizing: border-box;
	margin-right: 0%;
}

.footbnr_list002 .footbnr001 li a {
	display: block;
	/*color: #fff;
	font-size: 16px;
	padding: 20px 3px 20px 35px;
	box-sizing: border-box;
	background-position: 4% center;
	background-repeat: no-repeat;*/
}

.footbnr_list002 .footbnr001 li.tw a,
.footbnr_list002 .footbnr001 li.fb a,
.footbnr_list002 .footbnr001 li.insta a,
.footbnr_list002 .footbnr001 li.li a{
	display: block;
	color: #fff;
	font-size: 16px;
	padding: 20px 3px 20px 35px;
	box-sizing: border-box;
	background-position: 20% center;
	background-repeat: no-repeat;
}

.footbnr_list002 .footbnr001 li.tw a {
	background-image: url(../images/common/fbnr_twitter.png);
	background-size: 32px;
  padding-left: 50px;
}

.footbnr_list002 .footbnr001 li.fb a {
	background-image: url(../images/common/fbnr_fb.jpg);
}
.footbnr_list002 .footbnr001 li.insta a {
	background-image: url(../images/common/fbnr_insta.png);
}

.footbnr_list002 .footbnr001 li.li a {
	background-image: url(../images/common/fbnr_line.jpg);
}

/*.footbnr_list002 .footbnr001 li.tr a{background-image: url(../images/common/fbnr_travel.jpg);}
.footbnr_list002 .footbnr001 li.st a{background-image: url(../images/common/fbnr_stamp.jpg);}*/

.footbnr_list002 .footbnr001 li.tw a:hover,
.footbnr_list002 .footbnr001 li.fb a:hover,
.footbnr_list002 .footbnr001 li.insta a:hover,
.footbnr_list002 .footbnr001 li.li a:hover {
	background-color: #fff;
	color: #171c61;
}

.footbnr_list002 .footbnr002 li {
	width: 23%;
	margin: 0 1%;
}

.footbnr_list002 .footbnr003 li {
	width: 48%;
	margin: 0 1%;
}

.footbnr_list002 .footbnr002,
.footbnr_list002 .footbnr003 {
	margin-top: 20px;
}


.footlink {
	margin-bottom: 30px;
}

.footlink li a {
	display: block;
	color: #333;
	border-right: 1px solid #ccc;
	padding: 3px 20px;
	font-size: 14px;
}

.footlink li:last-child a {
	border-right: none;
}

.footlink li a:hover {
	background-color: #172a80;
	color: #fff;
	transition: 0.3s ease-in-out;
}

.footbnr {
	margin-bottom: 20px;
}

.footbnr li {
	margin: 0 6px;
}

.footbnr li span {
	display: block;
	font-size: 12px;
	margin-top: 6px;
}

.footbnr li a span {
	display: block;
	color: #333;
	text-align: center;
	line-height: 1.4em;
}

p.foot_catipn {
	display: block;
	font-size: 12px;
	margin: 10px 0 20px;
	text-align: center;
}


.copyright {
	border-top: 1px solid #333;
	padding-top: 30px;
	text-align: center;
	font-size: 12px;
}




/* ────────────────────── *

 * マイページ

 * ────────────────────── */

.mypage_wrap .page_sub_title {
	font-size: 30px;
	text-align: center;
	line-height: 1.8;
	margin: 0 auto 50px;
	color: #fff;
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
}

.mypage_category {
	padding: 70px 0;
	margin-bottom: 70px;
	background: #838BC5;
}

.mypage_category ul {
	padding: 0 40px;
	counter-reset: number 0;

}

.mypage_category ul li {
	width: 45%;
	background: #fff;
}

.mypage_category ul li a {
	display: block;
	padding: 25px;
	font-size: 24px;
	color: #171C61;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.1em;
	border: 1px solid #171C61;
}

.mypage_category ul li a:hover {
	background-color: #171C61;
	color: #fff;
}

.mypage_list_area {
	counter-reset: number 0;
}

#mypage_list1 {
	margin-bottom: 100px;
}

#mypage_list2,
#mypage_list3 {
	margin-bottom: 70px;
}

.mypage_list h3 {
	background: #172A80;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	padding: 24px 40px;
	margin-bottom: 60px;
	line-height: 1;
	text-align: center;
}

#mypage_list2 h3,
#mypage_list3 h3 {
	background: #fff;
	border: 1px solid #172A80;
	color: #000000;
	text-align: left;
}

.mypage_list ul li {
	display: block;
	width: 100%;
	padding-bottom: 2em;
}

.mypage_list ul li:before {
	content: "・"
}

.mypage_list_btn {
	width: 45%;
	margin: 0 auto;
}

.mypage_list_btn a {
	display: block;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	color: #231815;
	background: #FF9300;
	border: 1px solid #FF9300;
	padding: 1.3em;
}

.mypage_list_btn a:hover {
	color: #FF9300;
	background: #FFF;
}


/* ────────────────────── *

 * ひめ旅

 * ────────────────────── */

.page_himetabi {
	background: url(../images/page/reservation/main_bg.jpg) no-repeat center center;
}


/* ────────────────────── *

 * 準備中

 * ────────────────────── */

.commingsoon_txt{
	font-size: 24px;
	line-height: 1.7;
	text-align: center;
	padding-bottom: 70px;
}

/* ────────────────────── *

 * 下層ページ新着情報

 * ────────────────────── */

.page_infomation_area{
	border: 1px solid #172A80;
	margin-bottom: 60px;
}

.page_infomation_area h3{
		text-align: center;
    color: #fff;
    font-size: 26px;
    font-weight: bold;
		line-height: 1.6;
    padding: 20px; 
    background-color: #172A80;
}

.page_infomation_area article{
		padding: 20px 40px;
}

.page_infomation_area article > p{
		padding-bottom: 20px;
}

.page_infomation_area ul li.textarea{
		line-height: 1.8;
}

.page_infomation_area .link_btn {
		width: 100%;
}

.page_infomation_area .link_btn a{
		display: block;
    padding: 20px 2.5em;
    font-size: 20px;
    color: #fff;
    text-align: center;
    font-weight: bold;
    border: 1px solid #9FA0A0;
    background: url( ../images/common/link_arrow_off.png) no-repeat;
    background-position: right 20px center;
    background-color: #171c61;
}

.page_infomation_area .link_btn a:hover {
    color: #171C61;
    background: url(../images/common/link_arrow_on.png) no-repeat;
    background-position: right 20px center;
    background-color: #fff;
}


/* ────────────────────── *

 * goto_lp

 * ────────────────────── */

.page_gotolp h2 {
    text-align: center;
    margin-bottom: 60px;
}


.gotolp_aboutarea {
    margin-bottom: 100px;
}
.gotolp_aboutarea article h3 {
    color: #171c61;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}

.gotolp_aboutarea article h4 {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    line-height: 1.5em;
    margin-bottom: 30px;
    padding: 30px 15px;
    background-color: #efefef;
}
.gotolp_aboutarea article p {
    font-size: 20px;
    line-height: 1.8;
}

article.gotolp_about {
    margin-bottom: 60px;
}
article.gotolp_outine ul {
    padding-top: 30px;
}

article.gotolp_outine ul li {
    font-size: 20px;
    padding-bottom: 20px;
	padding-left: 1em;
	position: relative;
}
article.gotolp_outine ul li:before {
    content: "●";
    position: absolute;
    top: 0;
    left: 0;
}

article.gotolp_outine ul li span {
    padding: 0.3em 0.5em;
    background-color: #c30d23;
    color: #fff;
    margin: 0 5px;
}

article.gotolp_outine .outine_img {
    width: 47%;
}

article.gotolp_outine .outine_img img{
	width: 100%;
}

article.gotolp_outine .outline_txt {
	width: 51%;
}

.outline_txt dt{
	font-size: 20px;
    margin-bottom: 30px;
}

.outline_txt dd {
    font-size: 16px;
    padding: 0 30px 10px 20px;
    margin-bottom: 10px;
    border-bottom: 1px solid #000;
    position: relative;
}

.outline_txt dd:before {
    content: "〇";
    position: absolute;
    top: 0;
    left: 0;
}

.outline_txt_red{
	margin-top: 20px;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    background-color: #c30d23;
    padding: 0.8em 0.5em;
}

.gotolp_measuresarea {
    background-color: #d5e0ec;
    padding: 60px 0 35px;
    font-size: 18px;
}

.gotolp_measuresarea h3 {
    font-size: 25px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    padding: 40px 20px;
    background-color: #036eb8;
    margin-bottom: 40px;
}
p.gotolp_measure_desc{
	margin-bottom: 30px;
} 

article.gotolp_measure {
    background-color: #fff;
    border: 1px solid #036eb8;
    padding: 30px;
	margin-bottom: 25px;
}

ul.gotolp_measure_list li{
   padding-left: 1em;
   margin: 10px 0;
   position: relative;
}
ul.gotolp_measure_list li:before{
   content: "●";
   position: absolute;
   top: 0;
   left: 0;

}
ul.gotolp_measure_list li:first-of-type{
   margin-top: 0;

}

ul.gotolp_measure_btnarea{
	box-sizing: border-box;
    width: 96%;
    margin: 0 auto;
	padding-top: 30px;
}

ul.gotolp_measure_btnarea li {
    width: 48%;
}
ul.gotolp_measure_btnarea li.w70 {
    width: 70%;
}
ul.gotolp_measure_btnarea li.w100 {
    width: 100%;
}

ul.gotolp_measure_btnarea .btn001.white a{
	width: 100%;
	padding: 25px 0;
	font-size: 16px;
}

.gotolp_linkarea {
    padding: 60px 0;
}
.gotolp_linkarea article h3 {
    color: #171c61;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
		line-height:1.4;
}
.gotolp_linkarea article p {
    font-size: 20px;
    line-height: 1.8;
	margin-bottom: 40px;
	text-align: center;
}
.gotolp_linkarea .btn001.blue02 a {
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    width: 61%;
    padding: 30px 10px 30px 40px;
}
.gotolp_linkarea .btn001.blue02.wide a {
    font-size: 24px;
    width: 85%;
    padding: 30px 10px 30px 40px;
}

p.linkarea_bnr {
	margin: 80px auto 0;
    width: 100%;
	max-width: 640px;
    box-sizing: border-box;
	padding-bottom: 100px;
}
p.linkarea_bnr img{
    width: 100%;
}
.gotolp_link_txt .box{
	margin-bottom:80px;
	}

.goto_tourlist {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 75%;
    margin: 0 auto;
}

.goto_tourlist li {
    width: 48%;
    margin-bottom: 3%;
}


.goto_tourlist li img{
    width: 100%;
}

.goto_tourlist_colum3{
    width: 89%;
}

.goto_tourlist_colum3 li {
    width: 30%;
    margin-bottom: 3%;
}

.goto_tourlist_colum2{
    width: 65%;
}

.goto_tourlist_colum2 li {
    width: 48%;
    margin-bottom: 3%;
}

