@charset "utf-8";
/*
Theme Name: Tankai inbound
Theme URI: https://tankai.jp/en/
Author: Copyright(C) Tango Kairiku Kotsu Co.,Ltd. All right reserved.
Version: 1.0
Author: Tango Kairiku Kotsu Co.,Ltd.
Author URI: https://tankai.jp/en/
Description: このテーマは、丹後海陸交通株式会社 多言語サイト向けテーマです。
*/

.notice-box .container {margin-bottom: 0;}
.notice-box .container .textbox h4 {margin-bottom: 0;}

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	margin: 0 auto;
	padding: 0;
	height: 100%;
}
body {
	color: #333;
	width: 100%;
	height: 100%;
	min-height: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	vertical-align: top;
	word-break: normal;
	word-wrap: break-word;
	line-height: 150%;
	font-size: 11.5pt;
	font-family: "メイリオ", Meiryo,"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Helvetica Neue",sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-image:
	radial-gradient(circle at 100% 150%, #F9F9F9 24%, #FFF 24%, #FFF 28%, #F9F9F9 28%, #F9F9F9 36%, #FFF 36%, #FFF 40%, transparent 40%, transparent),
	radial-gradient(circle at 0    150%, #F9F9F9 24%, #FFF 24%, #FFF 28%, #F9F9F9 28%, #F9F9F9 36%, #FFF 36%, #FFF 40%, transparent 40%, transparent),
	radial-gradient(circle at 50%  100%, #FFF 10%, #F9F9F9 10%, #F9F9F9 23%, #FFF 23%, #FFF 30%, #F9F9F9 30%, #F9F9F9 43%, #FFF 43%, #FFF 50%, #F9F9F9 50%, #F9F9F9 63%, #FFF 63%, #FFF 71%, transparent 71%, transparent),
	radial-gradient(circle at 100% 50%, #FFF 5%, #F9F9F9 5%, #F9F9F9 15%, #FFF 15%, #FFF 20%, #F9F9F9 20%, #F9F9F9 29%, #FFF 29%, #FFF 34%, #F9F9F9 34%, #F9F9F9 44%, #FFF 44%, #FFF 49%, transparent 49%, transparent),
	radial-gradient(circle at 0    50%, #FFF 5%, #F9F9F9 5%, #F9F9F9 15%, #FFF 15%, #FFF 20%, #F9F9F9 20%, #F9F9F9 29%, #FFF 29%, #FFF 34%, #F9F9F9 34%, #F9F9F9 44%, #FFF 44%, #FFF 49%, transparent 49%, transparent);
	background-size: 30px 15px;
	background-position: center bottom;
	background-attachment: fixed;
	background-color: #FFF;
}
@media screen and (max-width: 767px) {
body {
	margin: 0 auto;
	padding: 0;
	position: absolute;  /* またはfixed */
	overflow: auto;
	max-width: 767px;
}
}

body section {
	margin: 2em auto;
	width: 100%;
	height: auto;
	-webkit-print-color-adjust: exact;
	border-collapse: collapse;
	box-sizing: border-box;
	display: block;
	vertical-align: top;
}
body section:first-child,
body section:last-child {margin: 0 auto;}
*, *:before, *:after {
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

@media screen and (max-width: 767px) {
/* スマホでのみ表示される */
.pconly {
	margin: 0;
	padding: 0;
	display: none !important;
}
.sponly:not(h1):not(h2) {
	margin: 0;
	padding: 0;
}
}
/* パソコンでのみ表示される */
@media screen and (min-width:1020px) {
.pconly {
	margin: 0;
	padding: 0;
}
.sponly {
	margin: 0;
	padding: 0;
	display: none !important;
}
}

hr {
	margin: 2em auto;
	padding: 0;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	display: block;
	border: none;
}
page {
	vertical-align: top;
	text-align: center;
}
a,a:hover,a:focus,a:active {
	color: #00A5AD;
	-webkit-transition: all 0.2s 0s;
	transition: all 0.2s 0s;
}
:focus,:hover {
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}

img {
	width: 100%;
	height: auto;
	border: none;
}
figure {
	text-align: center;
	vertical-align: top;
	margin: 0;
	padding: 0;
	overflow: visible;
	position: relative;
	display: block;
	background-color: #FFF;
}
figure img {
	margin: 0 auto;
	vertical-align: top;
	position: relative;
	display: block;
}
figure figcaption {
	text-align: center;
	margin: 0 auto;
	padding: 0.5em 0;
	width: 100%;
	display: block;
}
figure figcaption div {
	position: relative;
	width: 100%;
	display: block;
}
figure figcaption div {
	position: relative;
	width: 100%;
	display: block;
}
figure figcaption div p.text {display: inline;}

svg {fill: currentColor;}
div.main_container section div.container p {
	width: 100%;
	display: block;
	margin: 1em 0;
}
div.main_container section div.container>p:first-child,
div.main_container section div.container div[class*="inner"] p:first-child,
div.main_container section div.container div[class*="box"] p:first-child,
div.main_container section div.container table tr td p:first-child {margin-top: 0;}
div.main_container section div.container>p:last-child,
div.main_container section div.container div[class*="inner"] p:last-child,
div.main_container section div.container div[class*="box"] p:last-child,
div.main_container section div.container table tr td p:last-child {margin-bottom: 0;}
div.main_container section div.container p:empty {
	display: none;
	margin: 0;
	content: "";
}
div.main_container section div.container p:first-child:not(li p:first-child) {margin: 0 0 1em 0;}
div.main_container section div.container p:last-child:not(li p:last-child) {margin: 1em 0 0 0;}

div {
	box-sizing: border-box;
	border-collapse: collapse;
}
dl dd p:last-child {margin-bottom: 0;}
dl dd:not(dl dt) {}

table {
	width: 100%;
	max-width: 960px;
	margin: 0 auto 1em auto;
	padding: 0;
	border-collapse: collapse;
	table-layout: auto;
	word-break: keep-all;
	word-wrap: break-word;
	border: 1px solid #999;
	background-color: #FFF;
	text-align: center;
	vertical-align: middle;
}
table tr {width: 100%;}
div.table_title {
	width: 100%;
	margin: 0.25em auto;
	padding: 0.25em 0;
	border-collapse: collapse;
	word-break: keep-all;
	word-wrap: break-word;
	text-align: center;
	vertical-align: middle;
	border-radius: 2em;
	-webkit-border-radius: 2em;
	-moz-border-radius: 2em;
	display: inline-block;
}
@media screen and (min-width:1020px) {table {table-layout: fixed;}}
table tr th,
table tr td {
	border-collapse: collapse;
	padding: 0.5em;
	margin: 0;
	border: 1px solid #999;
}
table tr th {
	font-weight: normal;
	background-color: rgba(0,165,173,0.125);
	word-break: break-word;
	word-wrap: break-word;
	position: relative;
}
table tr td {
	font-weight: normal;
	word-break: keep-all;
	word-wrap: break-word;
}
table tr td.oneway {
	color: #FFF;
	background-color: #69F;
}
table tr td.roundtrip {
	color: #FFF;
	background-color: #F66;
}
table td > table {
	width: auto !important;
	border: none;
	margin: 0;
}
table caption {
	font-size: 87.5%;
	caption-side: bottom;
	text-align: right;
}

ol,ul {
	vertical-align: top;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	box-sizing: border-box;
	border-collapse: collapse;
	margin: auto;
}
ol li,ul li {
	vertical-align: top;
	position: relative;
	letter-spacing: normal;/* 文字間を通常に戻す */
	box-sizing: border-box;
	border-collapse: collapse;
	margin: auto;
}
ul {
	list-style: disc outside;
	-webkit-padding-start: 20px;
}
ol {list-style: decimal outside;}
/*自由な番号表記を使いたい時用ここから*/
ol>li {
	list-style: none; /*標準の番号を消す*/
	counter-increment: number;
	margin: 0 0 0 2em;
	position: relative;
}
ol>li:before {
	content: counter(number)".";/*自由な番号表記を使う*/
	width: 2em;
	text-align: left;
	display: inline-block;
	margin: 0 0.25em 0 0;
	padding: 0;
	position: absolute;
	left: 0;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}
/*自由な番号表記を使いたい時用ここまで*/
ol>li>ul,ol>li>ol {
	margin: 0.5em 0;
	counter-reset: number;
}
ol>li>ul>li,ol>li>ol>li {font-weight: normal;}
ol>li>ul>li {counter-increment: none;}
ol>li>ul>li:before {content: none;}
menu,dir {-webkit-padding-start: 0;}
table tr td ol {text-align: left;}
table tr td ul {
	text-align: left;
	-webkit-padding-start: 20px;
}
table tr td dl {text-align: left;}
table#gate tr td {
	text-align: center;
	position: relative;
}
table#gate tr td ol,
table#gate tr td ul {
	text-align: left;
	display: inline-block;
	margin: 0 auto;
	top: 50%;
	left: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

sup {
	font-size: 75%;
	line-height: 100%;
}

dl,dl dt,dl dd {
	vertical-align: top;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
dl dt,dl dd {
	margin: 0;
	padding: 0;
	display: inline-block;
}
dl dt {font-weight: bold;}
dl dd {font-weight: normal;}
dl,
ul li dl {
	margin: 0;
	padding: 0;
	width: 100%;
	display: block;
}
dl dd div {margin: 0 auto 1em auto;}
dl dd div:last-child {margin-bottom: 0;}
dl dd #comment {
	font-weight: normal;
	text-align: left;
}
div.container dl.contact {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto;
}
div.container dl.contact dt {
	color: #FFF;
	font-weight: bold;
	margin: 0 0.5em 0 0;
	padding: 0 1em;
	min-width: 7.25em;
	display: inline-block;
	background-color: #999;
	border-radius: 2em;
	-webkit-border-radius: 2em;
	-moz-border-radius: 2em;
}
div.container dl.contact dt:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}
div.container dl.contact dt.add:before {content: '\f3c5';}/*住所*/
div.container dl.contact dt.tel:before {content: '\f095';}/*電話*/
div.container dl.contact dt.hour:before {content: '\f017';}/*営業時間*/
div.container dl.contact dd {
	font-weight: normal;
	text-align: left;
	margin: 0.5em 0 1em 0;
	display: block;
}
div.container dl.contact dt.tel + dd {font-weight: bold;}

/*ヘッダー用*/
header {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: #FFF;
	position: relative;
}
header div.container {
	text-align: center;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 1em 0;
	background-color: transparent;
}
header div.container div.inner {
	text-align: center;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0;
	background-color: transparent;
}
header div.container div.inner div {
	width: 100%;
	padding: 0;
	margin: 0 auto 0.5em auto;
	display: block;
}
header div.container div.inner div.logo img {
	width: 100%;
	max-width: 480px;
	height: auto;
}
header div.container div.inner div[class*="box"] div.pagesearch,
header div.container div.inner div[class*="box"] div.pagesearch input[type="text"] {
	width: 8em;
	display: inline;
	padding: 0;
	margin: 0;
}
header div.container div.inner div[class*="box"] div.pagesearch button {width: auto;}
header div.container div.inner div[class*="box"] div.language {
	width: 100%;
	text-align: center;
	font-size: 75%;
	-webkit-order: 0;
	order: 0;
}
@media screen and (min-width:1020px) {
header div.container div.inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
header div.container div.inner div.logo {
	width: 60%;
	height: auto;
	margin: 0;
	padding: 0;
}
header div.container div.inner div[class*="box"] {
	width: 20%;
	margin: 0;
	padding: 0;
}
header div.container div.inner div.box_left {order: -1;}
header div.container div.inner div.box_right {}
header div.container div.inner div[class*="box"] div.language {
	text-align: left;
	margin: 0 0 0 auto;
}
}
header div.container div.inner div[class*="box"] div.language ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	line-height: 125%;
}
header div.container div.inner div[class*="box"] div.language ul:before {
	color: #999;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f57d";
	margin: 0 1em 0 0;
	padding: 0;
	display: inline;
}
header div.container div.inner div[class*="box"] div.language ul li {
	letter-spacing: normal;/* 文字間を通常に戻す */
	display: inline-block;
}
header div.container div.inner div[class*="box"] div.language ul li:after {
	content: "|";
	margin: 0 0.25em;
	padding: 0;
	display: inline;
}
header div.container div.inner div[class*="box"] div.language ul li:last-child:after {
	content: none;
	margin: 0;
}
header div.container div.inner div[class*="box"] div.language ul li a {
	text-decoration: none;
}

@media screen and (max-width: 767px) {
nav#mainmenu,nav#mainmenu ul {
	display: none !important;
	content: none;
}
div.wprmenu_bar .menu_title a {
	text-decoration: none;
	color: #FFF;
}
}
@media screen and (min-width: 1020px) {
/*メインメニューボタン*/
nav#mainmenu {
	width: 100%;
	text-align: center;
	vertical-align: middle;
	margin: 0 auto;
	padding: 0;
	z-index: 100000;
	background-color: rgba(0,165,173,0.5);
	/* box-shadow */
	box-shadow: 0 0 0.5em 0 rgba(0,0,0,0.25);
}
nav#mainmenu:before, #mainmenu:after {z-index: -1;}
nav#mainmenu ul {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	font-weight: bold;
	z-index: 0;
}
nav#mainmenu ul,
nav#mainmenu ul li {
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	line-height: 125%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	box-sizing: content-box;
	min-height: 6vh;
	min-height: 60px;
}
nav#mainmenu ul li {
	margin: 0;
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
nav#mainmenu ul li span {
	margin: auto;
	top: 50%;
	left: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
    width: 90%;
}
nav#mainmenu ul li:focus a, 
nav#mainmenu ul li:hover a,
nav#mainmenu > ul li:focus,
nav#mainmenu > ul li:hover {
	color: #000;
	background-color: #FFF;
}
nav#mainmenu ul li a {
	color: #FFF;
	width: 100%;
	height: 100%;
	display: block;
	margin: auto 0;
	text-decoration: none;
	align-items: center;
	padding: 0.5em 0;
	position: relative;
}
/*メインメニュープルダウン*/
nav#mainmenu ul li ul.pulldown {
	margin: 0;
	padding: 0;
	z-index: 1000;
	text-align: left;
	position: absolute;
	top: 100%;
	display: none;
	display: list-item;
	width: 200%;
}
nav#mainmenu ul li:not(:last-child) ul.pulldown {left: 0;}
nav#mainmenu ul li:last-child ul.pulldown {right: 0;}
nav#mainmenu ul li ul.pulldown li {
	font-weight: normal;
	text-align: left;
	overflow: hidden;
	height: 0;
	margin: 0;
	padding: 0 0.5em;
	display: block;
	background-color: #FFF;
}
nav#mainmenu ul li ul.pulldown li a {
	color: #000;
	padding: 0.5em;
	border: none;
	width: 100%;
	height: 100%;
	display: block;
	border-bottom: 1px solid #CCC;
}
nav#mainmenu ul li ul.pulldown li:last-child a {border-bottom: none;}
nav#mainmenu ul li ul.pulldown li a:before {
	color: #999;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f054";
	margin: 0 0.5em 0 0;
	display: inline-block;
}
nav#mainmenu ul li ul.pulldown li > :hover,
nav#mainmenu ul li ul.pulldown li > :focus {
	color: #00A5AD;
}
nav#mainmenu ul li:hover ul.pulldown li,
nav#mainmenu ul li:focus ul.pulldown li {
	overflow: visible;
	height: auto;
}
}

div.topimage,div.slideshow {
	margin: 0 auto;
	width: 100%;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	background-color: #FFF;
	/* box-shadow */
	box-shadow: 0 0 0.5em 0 rgba(0,0,0,0.25);
	display: block;
	overflow: hidden;
}
div.topimage img {
	width: 100%;
	margin: 0 auto;
	display: block;
	padding: 0;
	height: 500px;
	max-height: 500px;
	max-height: 50vw;
	object-fit: cover;/* この一行を追加するだけ！ */
}
div.slideshow:before,div.slideshow:after {
	position: absolute;
	z-index: +1;
}

div.main_container {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	display: block;
}
div.main_container>section {width: 95%;}
@media screen and (min-width:1020px) {div.main_container>section {width: 100%;}}
section div.container,
div.main_container div.container div.inner,
div.main_container div.container div.inner_left,
div.main_container div.container div.inner_right,
div.main_container div.container div.inner_left_mini,
div.main_container div.container div.inner_right_mini {
	width: 100%;
	max-width: 960px;
	height: auto;
	min-height: 1em;
	margin: 0 auto 2em auto;
	padding: 0.25em 0;
	display: block;
	overflow: hidden;
	vertical-align: top;
}
@media screen and (min-width:1020px) {
div.main_container div.container div.inner,
div.main_container div.container div.inner_left,
div.main_container div.container div.inner_right,
div.main_container div.container div.inner_left_mini,
div.main_container div.container div.inner_right_mini {
	width: 100%;
	max-width: 960px;
}
section div.container:after,
div.main_container div.container div.inner:after,
div.main_container div.container div.inner_left:after,
div.main_container div.container div.inner_right:after,
div.main_container div.container div.inner_left_mini:after,
div.main_container div.container div.inner_right_mini:after {
	float: none;
	clear: left;
	content: "";
	display: block;
}
}
div.main_container div.container div.inner div[class*="box"],
div.main_container div.container div.inner_left div[class*="box"],
div.main_container div.container div.inner_right div[class*="box"],
div.main_container div.container div.inner_left_mini div[class*="box"],
div.main_container div.container div.inner_right_mini div[class*="box"]  {
	margin: 0 auto 1em auto;
}
@media screen and (min-width:1020px) {
/*レイアウト　画面2分割(通常)版*/
div.main_container div.container div.inner_left div[class*="box"],
div.main_container div.container div.inner_right div[class*="box"] {
	width: 49%;
	position: relative;
}
div.main_container div.container div.inner_left div[class*="box"] {
	margin: 0 2% 1em 0;
	float: left;
}
div.main_container div.container div.inner_right div[class*="box"] {
	margin: 0 0 1em 2%;
	float: right;
}
div.main_container div.container div.inner_left div[class*="box"]:nth-child(even),
div.main_container div.container div.inner_right div[class*="box"]:nth-child(even) {
	margin: 0 0 1em 0;
}
div.main_container div.container div.inner ul li div.textbox:only-child,
div.main_container div.container div.inner div[class*="box"]:only-child,
div.main_container div.container div.inner_left div[class*="box"]:only-child,
div.main_container div.container div.inner_right div[class*="box"]:only-child {
	width: 100%;
	margin: 0 auto 1em auto;
}
/*レイアウト　画像ミニサイズ版*/
div.main_container div.container div.inner_left_mini div.photobox,
div.main_container div.container div.inner_right_mini div.photobox {
	width: 23%;
	clear: both;
}
div.main_container div.container div.inner_left_mini div[class*="box"] {
	margin: 0 2% 1em 0;
	float: left;
}
div.main_container div.container div.inner_right_mini div[class*="box"] {
	margin: 0 0 1em 2%;
	float: right;
}
div.main_container div.container div.inner_left_mini div.textbox,
div.main_container div.container div.inner_right_mini div.textbox {
	width: 75%;
	margin: 0 0 1em 0;
	position: relative;
}
div.main_container div.container div.inner ul li div.textbox:only-child,
div.main_container div.container div.inner div[class*="box"]:only-child,
div.main_container div.container div.inner_left_mini div[class*="box"]:only-child,
div.main_container div.container div.inner_right_mini div[class*="box"]:only-child {width: 100%;}
}
div.main_container div.container div.inner_left div.photobox,
div.main_container div.container div.inner_right div.photobox,
div.main_container div.container div.inner_left_mini div.photobox,
div.main_container div.container div.inner_right_mini div.photobox {
	text-align: center;
	border-radius: 1em;
	-webkit-border-radius: 1em;
	-moz-border-radius: 1em;
	overflow: hidden;
}
div.main_container div.container div.inner_left_mini div.photobox,
div.main_container div.container div.inner_right_mini div.photobox {background-color: #FFF;}
div.main_container div.container div.inner_left div.photobox img,
div.main_container div.container div.inner_right div.photobox img,
div.main_container div.container div.inner_left_mini div.photobox img,
div.main_container div.container div.inner_right_mini div.photobox img {
	width: 100%;
	height: auto;
	max-width: 100%;
	display: block;
	padding: 0;
	margin: 0 auto;
	position: relative;
}
div.main_container div.container div.inner_left_mini div.photobox img,
div.main_container div.container div.inner_right_mini div.photobox img {
	width: auto;
}
div.main_container div.container div.inner_left div.photobox a:focus img,div.main_container div.container div.inner_left div.photobox a:hover img,
div.main_container div.container div.inner_right div.photobox a:focus img,div.main_container div.container div.inner_right div.photobox a:hover img,
div.main_container div.container div.inner_left_mini div.photobox a:focus img,div.main_container div.container div.inner_left_mini div.photobox a:hover img,
div.main_container div.container div.inner_right_mini div.photobox a:focus img,div.main_container div.container div.inner_right_mini div.photobox a:hover img {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/*イントロダクション用*/
section#introduction {
	color: #FFF;
	padding: 1em 0;
	display: block;
	position: relative;
}
section#introduction div.container div.photobox,
section#introduction div.container div.textbox {
	margin: 0;
	float: none !important;
}
section#introduction div.container dl {
	width: 100%;
	display: block;
	margin: 0 0 1em 0;
	padding: 0 0 2em 0;
	overflow: hidden;
	text-align: center;
	vertical-align: top;
}
section#introduction div.container dl dt {
	width: 100%;
	display: block;
	margin: 0;
	padding: 0 0 1em 0;
	overflow: hidden;
}
section#introduction div.container dl dt img {
	width: 100%;
	height: auto;
	object-fit: cover;/* この一行を追加するだけ！ */
	overflow: hidden;
	display: block;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	margin: 0;
	padding: 0;
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}
section#introduction div.container dl dt img:focus,
section#introduction div.container dl dt img:hover,
section#introduction div.container dl dt img a:focus,
section#introduction div.container dl dt img a:hover {
	transform: scale(1.1);	/*画像の拡大率*/
}
section#introduction div.container dl dd {
	width: 100%;
	min-height: 2em;
	display: block;
	margin: 0.5em 0;
	padding: 0 1em;
	position: relative;
}
section#introduction div.container dl dt+dd {
	font-size: 150%;
	font-weight: bold;
}
section#introduction div.container dl dd:nth-child(3) {text-align: left;}
section#introduction div.container dl dd:last-child {margin: auto auto 0 auto;}
section#introduction div.container dl:first-child {background-color: #3CF}
section#introduction div.container dl:nth-child(2) {background-color: #00A5AD}
section#introduction div.container dl:nth-child(3) {background-color: #184B47}
@media screen and (min-width:1020px) {
section#introduction div.container {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
section#introduction div.container dl {
	width: 33.33%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
}
section#introduction a {color: inherit;}
section#introduction a.readmore {
	color: #FFF;
	border: 1px solid #FFF;
	background-color: transparent;
}
section#introduction a.readmore a,
section#introduction a.readmore:focus,
section#introduction a.readmore:hover {
	color: #333;
	background-color: #FFF;
}

/*ニュース用*/
section#news {
	margin: 0 auto;
	padding: 2em 0;
	background-color: #184b47;
	background-image: linear-gradient(45deg,rgba(0,0,0,0.5) 25%, transparent 25%, transparent 75%,rgba(0,0,0,0.5) 75%,rgba(0,0,0,0.5)),
	linear-gradient(45deg,rgba(0,0,0,0.5) 25%, transparent 25%, transparent 75%,rgba(0,0,0,0.5) 75%,rgba(0,0,0,0.5));
	background-size: 50px 50px;
	background-position: 0 0, 25px 25px;
}
section#news div.container {
	margin: 0 auto;
	padding: 2em;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	overflow: hidden;
	/* box-shadow */
	box-shadow: 0.1em 0.1em 0.25em 0 rgba(0,0,0,0.5);
	background-color: #FFF;
}
section#news h2 {
	font-size: 200%;
	margin: 0 auto 0.5em auto;
	border: none;
}
section#news div.container div.whatsnew {
	font-size: 125%;
}
section#news div.container div.whatsnew a span.newmark {
	display: inline-block;
	line-height: 150%;
	text-decoration: none;
}
section#news div.container div.whatsnew a {
	color: #C33;
	text-decoration: underline;
}

/*運行情報用*/
section#operating {
	margin: 0 auto;
	padding: 2em 0;
	background-color: rgba(255,0,0,0.25);
}
section#operating div.container {
	margin: 0 auto;
	padding: 2em;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	overflow: hidden;
	background-color: #FFF;
}
section#operating h2 {
	font-size: 200%;
	margin: 0 auto 0.5em auto;
	border: none;
	color: #900;
}
section#operating h2:before,
section#operating h2:after,
section#operating h2 span:after {
	content: none;
	display: none;
	background: none;
	background-image: none;
	background-color: transparent;
	width: 100%;
	height: 0;
	position: relative;
}
section#operating div.container ul li {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	position: relative;
	border: 1px solid #999;
	background: -moz-linear-gradient(top,  #FFF 0%, #F3F3F3 100%);
	background: -webkit-linear-gradient(top,  #FFF 0%, #F3F3F3 100%);
	background: linear-gradient(to bottom,  #FFF 0%, #F3F3F3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00FFFFFF', endColorstr='#00F3F3F3',GradientType=1 );
	background-color: #F3F3F3;
	margin: 0 auto;
	width: 100%;
	display: block;
}
section#operating div.container ul li dl {
	margin: 0 auto;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-align-items: center;
	align-items: center;
}
section#operating div.container ul li dl dt,
section#operating div.container ul li dl dd {
	margin: 0;
	position: relative;
}
section#operating div.container ul li dl dt {width: 20%}
section#operating div.container ul li dl dd {width: 80%;}
section#operating div.container ul li dl dd span {
	display: inline-block;
	margin: auto;
}
@media screen and (min-width:1020px) {
section#operating div.container ul {
	text-align: center;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
section#operating div.container ul li {
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
}
section#operating div.container ul li dl,
section#operating div.container ul li dl dt,
section#operating div.container ul li dl dd {
	margin: 0 auto;
	width: 100%;
	display: block;
}
section#operating div.container ul li dl dd {border-top: 1px solid #999;}
}
section#operating div.container ul li dl dt img {
	margin: 0 auto;
	width: 100%;
	max-width: 60px;
	height: auto;
}
section#operating div.container ul li a {
	color: inherit;
	text-decoration: none;
	width: 100%;
	height: 100%;
	display: block;
}

/*紹介ページ（乗り物）用*/
section#vehicle {}
section#vehicle div.container {}
div.vehicle table#inbound,div.vehicle table#outbound {table-layout: fixed;}
div.vehicle table#inbound tr th:after,
div.vehicle table#outbound tr th:after {
	color: inhert;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f061';
	display: inline;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translate(50%,-50%);/* Safari用 */
	transform: translate(50%,-50%);
	z-index: +1;
}
div.vehicle table#inbound tr th:last-child:after,
div.vehicle table#outbound tr th:last-child:after {content: none;}

/*ギャラリー用*/
section#gallery {}
section#gallery div.container {}
section#gallery div.inner_left {
	width: 100%;
	max-width: 960px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}
section#gallery div.inner_left div.box {
	text-align: center;
	position: relative;
}
section#gallery div.inner_left div.box h2,
section#gallery div.inner_left div.box div.thumbnail {margin: 0 auto;}

/*ムービー用*/
section#movie {}
section#movie div.container {}
section#movie div.inner,
section#movie div.inner ul {
	margin: 0 auto;
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
}
section#movie div.inner ul li {margin-bottom: 0.5em;}
section#movie div.inner ul li:only-child {
	float: none;
	margin: 0 auto;
	position: relative;
}
@media screen and (min-width: 1020px) {
section#movie div.inner ul li {
	float: left;
	width: 49%;
	margin-right: 2%;
}
section#movie div.inner ul li:nth-child(even) {margin-right: 0;}
section#movie div.inner ul li:only-child {
	float: none;
	margin: 0 auto;
	position: relative;
}
}
section#movie div.inner ul li div.youtube {
	width: 100% ;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	overflow: hidden;
	position: relative;
	letter-spacing: normal;
}
section#movie div.inner ul li div.youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	border-collapse: collapse;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

/*リンクページの案内用*/
/*バナーボックス用*/
div.container div.linkbanner,
div.container div.linkbanner>ul {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
	height: auto;
	overflow: hidden;
}
div.container div.linkbanner>ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: stretch;
	align-items: stretch;
}
div.container div.linkbanner>ul>li {
	position: relative;
	margin: 0 auto 0.5em auto;
	padding: 0;
	display: inline-block;
	overflow: hidden;
	text-align: center;
	vertical-align: top;
	line-height: 100%;
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
div.container div.linkbanner>ul>li img {
	width: 100%;
	max-width: 480px;
	height: auto;
}
/*テキストボックス用*/
div.container div.linkbox,
div.container div.linkbox>ul {
	margin: 0 auto;
	padding: 0;
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
	height: auto;
	overflow: hidden;
}
div.container div.linkbox>ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: stretch;
	align-items: stretch;
}
div.container div.linkbox>ul>li {
	width: 32%;
	position: relative;
	margin: 0 0.5% 1em 0.5%;
	padding: 0.5em 1em;
	display: inline-block;
	overflow: hidden;
	text-align: center;
	vertical-align: top;
	line-height: 125%;
	border: 1px solid #00A5AD;
	background-color: #FFF;
	border-radius: 1em;
	-webkit-border-radius: 1em;
	-moz-border-radius: 1em;
}
div.container div.linkbox>ul>li:only-child {margin: 0 auto 1em auto;}
div.container div.linkbox>ul>li div {
	display: block;
	width: 100%;
	margin: 0.5em auto;
	padding: 0;
}
div.container div.linkbox>ul>li div:first-child,
div.container div.linkbox>ul>li div:last-child {margin: 0 auto;}
div.container div.linkbox>ul>li div.name {
	color: #00A5AD;
	font-weight: bold;
	font-size: 125%;
	line-height: 125%;
	padding: 0 0 0.25em 0;
	border-bottom: 1px solid #00A5AD;
}
div.container div.linkbox>ul>li div.contact {
	background-color: #F3F3F3;
	padding: 0.25em 0;
}
div.container div.linkbox>ul>li div.contact a {
	font-weight: bold;
	text-decoration: none;
}
div.container div.linkbox>ul>li div.comment {text-align: left;}
div.container div.linkbox>ul>li div.name i {
	color: #333;
	margin-right: 0.5em;
	display: inline;
}

/*SNS用*/
section#sns {}
section#sns div.container {
	width: 100%;
	max-width: 100%;
}
section#sns div.inner {
	width: 100%;
	max-width: 960px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}
section#sns div.inner div.box,
section#sns div.inner div.box:only-child {
	text-align: center;
	padding: 1em;
	background-color: #FFF;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
}
@media screen and (min-width: 1020px) {
section#sns div.inner div.box {
	float: left;
	width: 49%;
	margin-right: 2%;
	position: relative;
}
section#sns div.inner div.box:nth-child(even) {margin-right: 0;}
section#sns div.inner div.box:only-child {
	float: none;
	width: 100%;
	max-width: 100%;
	margin-right: 0;
	position: relative;
}
}
section#sns div.inner div.box div {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
section#sns div.inner div.box div.name {
	color: #00A5AD;
	font-weight: bold;
	margin: 0 auto 1em auto;
	padding: 0 0 0.5em 0;
	border-bottom: 1px solid #00A5AD;
}
section#sns div.inner div.box div.name i,
section#sns div.inner div.box div.name:before {
	color: #333;
	font-family: "Font Awesome 5 Brands";
	font-weight: 900; /*Brand専用ウェイト*/
	content: '\f16d';
	margin-right: 0.5em;
	display: inline;
}

/*外部リンク集用*/
section#otherlink {
	margin: 0 auto;
	padding: 1em 0;
	text-align: center;
	background-color: rgba(204,175,116,0.25);
}
section#otherlink div.container {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
}
section#otherlink div.inner,
section#otherlink div.inner div.box {
	text-align: center;
	padding: 0;
	margin: 0 auto;
	width: auto;
}
section#otherlink div.inner div.box ul,
section#otherlink div.inner div.box ul li {
	-webkit-padding-start: 0;
	list-style: none;
	padding: 0;
	vertical-align: top;
}
section#otherlink div.inner div.box ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
section#otherlink div.inner div.box ul li {
	margin: 0.25em 0.5em;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
	text-align: center;
	vertical-align: middle;
}
section#otherlink div.inner div.box ul li img {
	margin: 0;
	padding: 0;
	/* グレースケールにする場合ここに書く */
}
section#otherlink div.inner div.box:first-child ul li img {
	width: auto;
	height: 80px;
}
section#otherlink div.inner div.box:nth-child(2) ul li img {
	width: auto;
	height: 60px;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
}
section#otherlink div.inner div.box ul li img:focus,
section#otherlink div.inner div.box ul li img:hover {
	/* グレースケールにする場合ここに書く */
}
section#otherlink div.inner div.box:first-child ul li:last-child {
	padding: 0;
	position: relative;
	line-height: 100%;
	border: 1px solid transparent;
	background-color: transparent;
	width: auto;
	height: auto;
	display: block;
}
section#otherlink div.inner div.box:first-child ul li:last-child a {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
	color: #999;
	text-decoration: none;
}
@media screen and (min-width:1020px) {
section#otherlink div.inner div.box:first-child ul li:last-child a {
	top: 50%;
	left: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
}
section#otherlink div.inner div.box:first-child ul li:last-child a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	display: inline;
}
@media screen and (min-width:1020px) {
section#otherlink div.inner div.box:first-child ul li:last-child {
	width: 80px;
	height: 80px;
	display: inline-block;
}
section#otherlink div.inner div.box:first-child ul li:last-child a:before {
	display: block;
}
}
section#otherlink div.inner div.box:first-child ul li:last-child:focus,
section#otherlink div.inner div.box:first-child ul li:last-child:hover {
	color: inherit;
	border: 1px solid #999;
	background-color: #FFF;
}
/*観光情報用*/
section#sightseeinginfo {
	margin: 0 auto;
	padding: 1em 0;
	text-align: center;
	background-color: rgba(0,165,173,0.25);
}
section#sightseeinginfo div.container {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	overflow: visible;
}
section#sightseeinginfo ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	padding: 0;
}
section#sightseeinginfo ul li {
	margin: 0.5em 0;
	padding: 0;
	display: block;
}
section#sightseeinginfo ul li img {
	width: 100%;
	height: auto;
	min-height: 120px;
	display: block;
	/* box-shadow */
	box-shadow: 0 0 0.25em 0 rgba(0,0,0,0.25);
}
@media screen and (min-width:1020px) {
section#sightseeinginfo ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
section#sightseeinginfo ul li {
	margin: 0 0.5% 0.5em 0;
	-webkit-flex-basis: 33%;
	flex-basis: 33%;
}
section#sightseeinginfo ul li:nth-child(3n) {margin-right: 0;}/* 3の倍数(＝3,6,9……)番目だけに適用 */
}
section#sightseeinginfo ul li:focus img,section#sightseeinginfo ul li:hover img {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/*路線バス用*/
section#tankaibus {}
section#tankaibus div.container {}
section#tankaibus div[class*="inner"] div[class*="box"] div.table_area {overflow: scroll;}
section#tankaibus div[class*="inner"] div[class*="box"] div.table_area table {table-layout: auto;}
@media screen and (min-width: 1020px) {
section#tankaibus div[class*="inner"] div[class*="box"] div.table_area {overflow: hidden;}
section#tankaibus div.container table {table-layout: auto;}
}
section#tankaibus div.container table tr.markup td {font-weight: bold;}
section#tankaibus div.container table tr.markup {background-color: #FCC;}
section#tankaibus div.container table tr.markup2 {background-color: #FFFFE6;}
section#tankaibus div.container table tr th {
	color: #FFF;
	border: 1px solid #FFF;
	background-image: none;
}
section#tankaibus div.container table tr th,
section#tankaibus div.container table tr td {
	padding: 0.25em 0.25em;
	line-height: 125%;
}
section#tankaibus div.container table tr td:not(.midashi):empty {/* 右上がりの斜線 */
	background: -moz-linear-gradient(to bottom right, transparent 49%, #E8641B 49%, #E8641B 51%, transparent 51%, transparent);
	background: -webkit-linear-gradient(to bottom right, transparent 49%, #E8641B 49%, #E8641B 51%,transparent 51%, transparent);
	background: linear-gradient(to bottom right, transparent 49%, #E8641B 49%, #E8641B 51%,transparent 51%, transparent);
}
section#tankaibus div.container figure,
section#tankaibus div.container table tr td {border: 1px solid #E8641B;}
section#tankaibus div.container h4,
section#tankaibus div.container figure figcaption,
section#tankaibus div.container table tr th {background-color: #E8641B;}
section#tankaibus div.container table tr td.midashi {background-color: #fceae1;}
section#tankaibus div.container figure figcaption {color: #FFF;}
section#tankaibus div.container figure figcaption:before,
section#tankaibus div.container h4 span:before {
	color: inherit;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f55e';
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
}
@media screen and (min-width: 1020px) {
section#tankaibus div.container div.image_pannel ul li img {
	height: 195px;
	width: auto;
}
}
section#tankaibus div.container div.table_title {
	color: #E8641B;
	background-color: #fceae1;
}
section#tankaibus div.container div.table_area table tr th sup,
section#tankaibus div.container div.table_area table tr td sup {display: block;}

/*高速バス用*/
section[id*="expbus_"] {}
section[id*="expbus_"] div.container {}
section[id*="expbus_"] div[class*="inner"] div[class*="box"] div.table_area {overflow: hidden;}
section[id*="expbus_"] div[class*="inner"] div[class*="box"] div.table_area table {table-layout: fixed;}
@media screen and (min-width: 1020px) {
section[id*="expbus_"] div[class*="inner"] div[class*="box"] div.table_area {overflow: hidden;}
section[id*="expbus_"] div.container table {table-layout: fixed;}
}
section[id*="expbus_"] div.container table tr.markup td {font-weight: bold;}
section[id*="expbus_"] div.container table tr.markup {background-color: #FFFFE6;}
section[id*="expbus_"] div.container table tr th {
	color: #FFF;
	border: 1px solid #FFF;
	background-image: none;
}
section[id*="expbus_"] div.container table tr th,
section[id*="expbus_"] div.container table tr td {
	padding: 0.25em 0;
	line-height: 125%;
}
section#expbus_kyoto div.container table tr td:not(.midashi):empty {/* 右上がりの斜線 */
	background: -moz-linear-gradient(to bottom right, transparent 49%, #E4007F 49%, #E4007F 51%, transparent 51%, transparent);
	background: -webkit-linear-gradient(to bottom right, transparent 49%, #E4007F 49%, #E4007F 51%,transparent 51%, transparent);
	background: linear-gradient(to bottom right, transparent 49%, #E4007F 49%, #E4007F 51%,transparent 51%, transparent);
}
section#expbus_osaka div.container table tr td:not(.midashi):empty {/* 右上がりの斜線 */
	background: -moz-linear-gradient(to bottom right, transparent 49%, #0068B7 49%, #0068B7 51%, transparent 51%, transparent);
	background: -webkit-linear-gradient(to bottom right, transparent 49%, #0068B7 49%, #0068B7 51%,transparent 51%, transparent);
	background: linear-gradient(to bottom right, transparent 49%, #0068B7 49%, #0068B7 51%,transparent 51%, transparent);
}
section#expbus_kyoto div.container figure,
section#expbus_kyoto div.container table tr td {border: 1px solid #E4007F;}
section#expbus_kyoto div.container h4,
section#expbus_kyoto div.container figure figcaption,
section#expbus_kyoto div.container table tr th {background-color: #E4007F;}
section#expbus_kyoto div.container table tr td.midashi {background-color: #fbddee;}
section#expbus_osaka div.container figure,
section#expbus_osaka div.container table tr td {border: 1px solid #0068B7;}
section#expbus_osaka div.container h4,
section#expbus_osaka div.container figure figcaption,
section#expbus_osaka div.container table tr th {background-color: #0068B7;}
section#expbus_osaka div.container table tr td.midashi {background-color: #ddebf5;}
section[id*="expbus_"] div.container figure figcaption {color: #FFF;}
section[id*="expbus_"] div.container figure figcaption:before,
section[id*="expbus_"] div.container h4 span:before {
	color: inherit;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f55e';
	display: inline;
	margin: 0 0.25em 0 0;
	padding: 0;
}
@media screen and (min-width: 1020px) {
section[id*="expbus_"] div.container div.image_pannel ul li img {
	height: 195px;
	width: auto;
}
}
section#expbus_kyoto div.container div.table_title {
	color: #E4007F;
	background-color: #fbddee;
}
section#expbus_osaka div.container div.table_title {
	color: #0068B7;
	background-color: #ddebf5;
}
/* 高速バス内のダウンメニュー */
div.down_button ul.expbus li[class*="button"] a,
div.down_button ul.expbus li[class*="button"]:focus a,
div.down_button ul.expbus li[class*="button"]:hover a {color: #FFF;}
div.down_button ul.expbus li.button_kyoto,
div.down_button ul.expbus li.button_kyoto:focus,
div.down_button ul.expbus li.button_kyoto:hover {background-color: #E4007F;}
div.down_button ul.expbus li.button_osaka,
div.down_button ul.expbus li.button_osaka:focus,
div.down_button ul.expbus li.button_osaka:hover {background-color: #0068B7;}

/*交通アクセス用*/
section#gettinghere {}
section#gettinghere div.container {}
@media screen and (min-width:1020px) {
section#gettinghere div.container div.inner_left div[class*="box"] {
	float: none;
	width: 50%;
	margin: 0 auto 1em auto;
	position: relative;
}
section#gettinghere div.container div.inner_left div[class*="box"]:nth-child(even) {}
section#gettinghere div.container div.inner_right div[class*="box"] {
	float: none;
	width: 50%;
	margin: 0 auto 1em auto;
	position: relative;
}
section#gettinghere div.container div.inner_right div[class*="box"]:nth-child(even) {}
section#gettinghere div.container div.inner ul li div.textbox:only-child,
section#gettinghere div.container div.inner div[class*="box"]:only-child {
	float: none;
	width: 50%;
	margin: 0 auto 1em auto;
}
section#gettinghere div.container div.inner:after,
section#gettinghere div.container div.inner div[class*="box"]:last-child:after {	
	display: block;
	clear: both;
}
}
section#gettinghere div.container dl {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	margin: 0 auto 2em auto;
	padding: 0;
	vertical-align: top;
}
section#gettinghere div.container dl:after {
	width: 100%;
	height: 1px;
	background-color: #CCC;
	display: block;
	content: "";
	margin: 1em auto;
	padding: 0;
}
@media screen and (min-width:1020px) {
section#gettinghere div.container dl dt img {
	width: 50%;
	max-width: 480px;
}
}
section#gettinghere div.container dl dt,
section#gettinghere div.container dl dt img,
section#gettinghere div.container dl dd {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
section#gettinghere div.container dl dt img {height: auto;}
section#gettinghere div.container dl dd {
	position: relative;
	order: -1;
}

/*モデルコース用*/
section#modelcourse,
section#modelcourse div.container{}
section#modelcourse div.container div.inner_left,
section#modelcourse div.container div.inner_right {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	display: block;
	position: relative;
	float: none;
}
section#modelcourse div.root,
section#modelcourse div.root ul {
	margin: 0 auto 1em auto;
	padding: 0;
	width: 100%;
	max-width: 480px;
	display: block;
	text-align: center;
}
section#modelcourse div.root ul li {
	margin: 0.25em 0;
	display: block;
	-webkit-padding-start: 0;
	list-style: none;
}
section#modelcourse div.root ul li[class*="vehicle"] {
	padding: 1em 0 1em 1em;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
	text-align: left;
	width: 50%;
}
section#modelcourse div.root ul li[class*="vehicle"]:before {
	margin: 0;
	padding: 0;
	display: inline-block;
	content: "";
	width: 15px;
	height: 100%;
	background-size: contain;
	background-repeat: repeat-y;
	left: 0;
	top: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
section#modelcourse div.root ul li.vehicle_ship:before {background-image: url(images/vehicleline_ship.png);}
section#modelcourse div.root ul li.vehicle_cablelift:before {background-image: url(images/vehicleline_cablelift.png);}
section#modelcourse div.root ul li.vehicle_bus:before {background-image: url(images/vehicleline_bus.png);}
section#modelcourse div.root ul li.vehicle_expbus:before {background-image: url(images/vehicleline_expbus.png);}
section#modelcourse div.root ul li.vehicle_nariaibus:before {background-image: url(images/vehicleline_nariaibus.png);}
section#modelcourse div.root ul li.vehicle_train:before {background-image: url(images/vehicleline_train.png);}
section#modelcourse div.root ul li.vehicle_expcar:before {background-image: url(images/vehicleline_expcar.png);}
section#modelcourse div.root ul li.vehicle_car:before {background-image: url(images/vehicleline_car.png);}
section#modelcourse div.root ul li.vehicle_foot:before {background-image: url(images/vehicleline_foot.png);}
section#modelcourse div.root ul li[class*="vehicle"] p {
	margin: 0.5em 0;
	padding: 0;
	display: block;
}
section#modelcourse div.root ul li[class*="vehicle"] p:before {
	margin: 0;
	padding: 0;
	display: inherit;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 20px;
	width: 20px;
	height: 20px;
	background-size: 20px 20px;
	background-repeat: no-repeat;
}
section#modelcourse div.root ul li.vehicle_ship p:before {content: '\f21a';}
section#modelcourse div.root ul li.vehicle_cablelift p:nth-child(1):before {
	content: "";
	background-image: url(images/pict_cablecar.png);
}
section#modelcourse div.root ul li.vehicle_cablelift p:nth-child(2):before {
	content: "";
	background-image: url(images/pict_chairlift.png);
}
section#modelcourse div.root ul li.vehicle_bus p:before,
section#modelcourse div.root ul li.vehicle_expbus p:before,
section#modelcourse div.root ul li.vehicle_nariaibus p:before {content: '\f55e';}
section#modelcourse div.root ul li.vehicle_train p:before {content: '\f239';}
section#modelcourse div.root ul li.vehicle_expcar p:before,
section#modelcourse div.root ul li.vehicle_car p:before {content: '\f1b9';}
section#modelcourse div.root ul li.vehicle_foot p:before {content: '\f554';}
section#modelcourse div.root ul li[class*="spot"] {
	width: 100%;
	padding: 1em;
	text-align: center;
	display: inline-block;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	z-index: +1;
}
section#modelcourse div.root div.photobox,
section#modelcourse div.root div.textbox {
	margin: 0 auto;
	width: 100%;
	display: block;
	position: relative;
	float: none;
}
section#modelcourse div.root div.textbox {text-align: left;}
section#modelcourse div.root p.title {
	margin: 0 auto;
	padding: 0;
}
section#modelcourse div.root ul li.spot_sightseeing p.title {
	margin: 0 auto;
	padding: 0;
	font-size: 150%;
	line-height: 150%;
	font-weight: bold;
}
section#modelcourse div.oneday {}
section#modelcourse div.halfaday {}
section#modelcourse div.oneday div.root ul li.spot_sightseeing p.title {color: #639;}
section#modelcourse div.halfaday div.root ul li.spot_sightseeing p.title {color: #063;}
/* モデルコース所要時間 */
section#modelcourse div.oneday div.hour,
section#modelcourse div.halfaday div.hour {
	display: block;
	margin: 0 auto 1em auto;
	padding: 0.5em;
	width: 100%;
}
section#modelcourse div.oneday div.hour {background-color: #F3E6F3;}
section#modelcourse div.halfaday div.hour {background-color: #E6F3E6;}
section#modelcourse div.hour dl {
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 480px;
	text-align: center;
	background-color: #FFF;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
}
section#modelcourse div.oneday div.hour dl {border: 2px solid #639;}
section#modelcourse div.halfaday div.hour dl {border: 2px solid #063;}
section#modelcourse div.hour dl dt,
section#modelcourse div.hour dl dd {
	margin: 0 auto;
	padding: 0.25em 0.5em;
	display: block;
}
section#modelcourse div.oneday div.hour dl dt,
section#modelcourse div.halfaday div.hour dl dt {color: #FFF;}
section#modelcourse div.oneday div.hour dl dt {background-color: #639;}
section#modelcourse div.halfaday div.hour dl dt {background-color: #063;}
section#modelcourse div.oneday div.hour dl dd,
section#modelcourse div.halfaday div.hour dl dd {
	font-weight: bold;
	position: relative;
	font-size: 125%;
}
section#modelcourse div.oneday div.hour dl dd {color: #639;}
section#modelcourse div.halfaday div.hour dl dd {color: #063;}
section#modelcourse div.hour dl dd:before {
	color: #333;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f017';
	display: block;
}
/* モデルコース目的地 */
section#modelcourse div.oneday div.root ul li.spot_sightseeing {
	background: -moz-linear-gradient(top,  #FFF 0%, #F3E6F3 100%);
	background: -webkit-linear-gradient(top,  #FFF 0%, #F3E6F3 100%);
	background: linear-gradient(to bottom,  #FFF 0%, #F3E6F3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00FFFFFF', endColorstr='#00F3E6F3',GradientType=1 );
	background-color: #F3E6F3;
	/* box-shadow */
	box-shadow: 0 0.25em 0.5em 0 rgba(0,0,0,0.25);
}
section#modelcourse div.halfaday div.root ul li.spot_sightseeing {
	background: -moz-linear-gradient(top,  #FFF 0%, #E6F3E6 100%);
	background: -webkit-linear-gradient(top,  #FFF 0%, #E6F3E6 100%);
	background: linear-gradient(to bottom,  #FFF 0%, #E6F3E6 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00FFFFFF', endColorstr='#00E6F3E6',GradientType=1 );
	background-color: #E6F3E6;
	/* box-shadow */
	box-shadow: 0 0.25em 0.5em 0 rgba(0,0,0,0.25);
}
section#modelcourse div.root ul li.spot_boatdock {/* 乗船場 */
	color: #FFF;
	background-color: #363A90;
}
section#modelcourse div.root ul li.spot_busstop {/* 路線バス停 */
	color: #FFF;
	background-color: #E8641B;
}
section#modelcourse div.root ul li.spot_train {/* 鉄道駅 */
	color: #FFF;
	background-color: #F19EC2;
}
/* モデルコース内のダウンメニュー */
div.down_button ul[class*="modelcourse"] li a,
div.down_button ul[class*="modelcourse"] li:focus a,
div.down_button ul[class*="modelcourse"] li:hover a {color: #FFF;}
div.down_button ul[class*="modelcourse"] li:first-child,
div.down_button ul[class*="modelcourse"] li:first-child:focus,
div.down_button ul[class*="modelcourse"] li:first-child:hover {background-color: #639;}
div.down_button ul[class*="modelcourse"] li:nth-child(2),
div.down_button ul[class*="modelcourse"] li:nth-child(2):focus,
div.down_button ul[class*="modelcourse"] li:nth-child(2):hover {background-color: #063;}

/*会社概要用*/
section#company {}
section#company div.container{}
section#company div.container table {table-layout: auto;}
section#company div.container table tr th {
	padding: 1em 0;
	vertical-align: top;
} 
section#company div.container table tr td {
	padding: 1em;
	text-align: left;
}
@media screen and (max-width: 767px) {
section#company div.container table {
	border-collapse: separate;
	border-spacing: 0 5px;
	border: none;
}
section#company div.container table tr th,
section#company div.container table tr td {
	width: 100%;
	display: block;
	text-align: center;
	border: none;
}
}
section#company div.container table tr:nth-last-child(-n + 7) td {text-align: left;}
@media screen and (min-width:1020px) {section#company div.container table tr td {text-align: left;}}

/*メールフォーム用*/
section#mailform {}
section#mailform div.container{}
section#mailform div.container table {table-layout: auto;}
section#mailform div.container table tr th {
	width: 30%;
	text-align: center;
} 
section#mailform div.container table tr td {
	width: 70%;
	text-align: left;
}
.mwform-checkbox-field input,
.mwform-radio-field input {margin: 0;}
.mw_wp_form .horizontal-item {margin-right: 2em;}
form {vertical-align: top;}
form table {text-align: left;}
input,textarea,select,button {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
input,textarea {
	padding: 0.25em 0.5em;
	margin: 0 auto;
}
input[type="button"],input[type="submit"],input[type="reset"] {
	padding: 0.5em 1em;
	margin: 0 auto;
	-webkit-transition: all 0.2s 0s;
	transition: all 0.2s 0s;
}
input[type="submit"] {
	color: #333;
	background: -webkit-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -moz-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -o-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -ms-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: linear-gradient(to bottom, #b2e5ff 0%, #3CF 100%);
	background-color: #b2e5ff;
	/* box-shadow */
	box-shadow: 0.1em 0.1em 0.25em 0 rgba(0,0,0,0.5);
	border: none;
	border-radius: 2em;
	-webkit-border-radius: 2em;
	-moz-border-radius: 2em;
	cursor: pointer;
}
input[type="submit"]:hover,input[type="submit"]:focus,input[type="submit"]:active {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
	-webkit-transition: all 0.2s 0s;
	transition: all 0.2s 0s;
}
table tr td textarea,table tr td input[type="text"],table tr td input[type="email"] {
	width: 100%;
	display: block;
}
form .mwform-checkbox-field label,form .mwform-radio-field label,
table tr td input[type=checkbox] {display: inline-block;}
label {overflow: hidden}

/*キャッシュレス用*/
section#payment {}
section#payment div.container{}
section#payment div.container table {table-layout: fixed;}
section#payment div.container table tr th {text-align: center;}
section#payment div.container table tr td ul {margin: 0 auto;}
@media screen and (min-width:1020px) {section#payment div.container table tr td ul {width: max-content;}}
section#payment div.container table tr td div.creditcard {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	display: block;
}
section#payment div.container table tr td div.creditcard ul {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	display: block;
	-webkit-padding-start: 0;
	list-style: none;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
section#payment div.container table tr td div.creditcard ul li {
	margin: 0;
	padding: 0;
	height: 40px;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
section#payment div.container table tr td div.creditcard ul li img {
	margin: 0;
	padding: 0;
	width: auto;
	height: 100%;
}

/*加盟団体紹介用*/
section#touristassociation {}
section#touristassociation div.container {}
section#touristassociation div.container ol {}

/*検索フォーム用*/
section#searchform {}
section#searchform div.container {}
section#searchform div.container div.searchlist ul {
	list-style: disc outside;
	text-align: left;
	-webkit-padding-start: 20px;
}

/*プライバシーポリシー用*/
section#privacypolicy {}
section#privacypolicy div.container{}
section#privacypolicy div.container ol {
	width: 100%;
	max-width: 720px;
}
section#privacypolicy div.container ol>li {
	font-weight: normal;
	margin: 0 0 1em 2.25em;
	padding: 0 0 0 1em;
	border-left: 2px solid #CCC;
}
section#privacypolicy div.container ol>li:before {margin: 0 0.5em 0 0;}

div.select_page,
div.select_page ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: block;
	text-align: center;
	vertical-align: top;
	width: 100%;
	max-width: 715px;
}
div.select_page ul {
	-webkit-padding-start: 0;
	list-style: none;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
div.select_page ul li {
	vertical-align: top;
	width: 49%;
	display: inline-block;
	margin: 0 2% 0.5em 0;
	padding: 0;
	-webkit-padding-start: 0;
	list-style: none;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
div.select_page ul li:nth-child(even) {margin-right: 0;}
div.select_page ul li img {
	width: 100%;
	height: auto;
	overflow: hidden;
	object-fit: cover;/* この一行を追加するだけ！ */
	margin: 0;
	padding: 0;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
}
@media screen and (min-width:1020px) {
div.select_page ul li {
	width: 235px;
	display: inline-block;
	margin: 0 5px 0.5em 0;
}
div.select_page ul li:nth-child(even) {margin-right: 5px;}
div.select_page ul li:nth-child(3n) {margin-right: 0;}
div.select_page ul li img {
	width: 235px;
	height: 235px;
	margin: 0;
	padding: 0;
}
div.select_page ul li:focus img,
div.select_page ul li:hover img {
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}
}

section#select_menu,
section#select_menu div.pannel,
section#select_menu div.pannel ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0 auto;
	padding: 0;
	display: block;
	text-align: center;
	vertical-align: middle;
	width: 100%;
	max-width: 960px;
	-webkit-padding-start: 0;
	list-style: none;
}
section#select_menu div.pannel ul li {
	width: 100%;
	display: block;
	margin: 0 auto 0.5em auto;
	padding: 0;
	-webkit-padding-start: 0;
	list-style: none;
}
section#select_menu div.pannel ul li div.inner {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
}
section#select_menu div.pannel ul li div.photobox {position: relative;}
section#select_menu div.pannel ul li a figure figcaption {
	color: #00A5AD;
	font-weight: bold;
}
section#select_menu div.pannel ul li a {
	color: inherit;
	display: block;
	text-decoration: none;
	margin: 0;
	padding: 1em;
}
section#select_menu div.pannel ul li a:focus,
section#select_menu div.pannel ul li a:hover {background-color: rgba(0,165,173,0.25);}
section#select_menu div.pannel ul li div.photobox:after {
	color: inherit;
	font-size: 300%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	display: inline;
	margin: 0;
	padding: 0;
	top: 50%;
	right: 0;
	-webkit-transform: translate(0%,-50%);
	transform: translate(0%,-50%);
	position: absolute;
}
section#select_menu div.pannel ul li div.photobox img {
	width: 200px;
	height: 200px;
	overflow: hidden;
	object-fit: cover;/* この一行を追加するだけ！ */
	margin: 0 auto;
	padding: 0;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
@media screen and (min-width:1020px) {
section#select_menu div.pannel ul li {
	text-align: left;
	width: 100%;
	margin: 0 0 1em 0;
}
section#select_menu div.pannel ul li div.inner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: center;
	align-items: center;
}
section#select_menu div.pannel ul li:nth-child(4n) {margin-right: 0;}
section#select_menu div.pannel ul li div.photobox img {
	width: 200px;
	height: 200px;
	margin: 0;
	padding: 0;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	position: relative;
}
section#select_menu div.pannel ul li figure {
	margin: 0;
	padding: 0;
}
section#select_menu div.pannel ul li figure figcaption,
section#select_menu div.pannel ul li figure figcaption div {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	top: 0;
	left: 0;
	position: absolute;
	font-weight: normal;
}
section#select_menu div.pannel ul li figure figcaption div {background-color: rgba(0,0,0,0.5)}
section#select_menu div.pannel ul li figure figcaption div p.text {
	top: 50%;
	left: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin: 0;
	padding: 0;
}
section#select_menu div.pannel ul li:focus div.photobox img,
section#select_menu div.pannel ul li:hover div.photobox img {
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}
section#select_menu div.pannel ul li:focus figure figcaption,
section#select_menu div.pannel ul li:hover figure figcaption {
	display: none;
	-webkit-transition: all 0.2s 0s;
	transition: all 0.2s 0s;
}
section#select_menu div.pannel ul li a:focus div.photobox:after,
section#select_menu div.pannel ul li a:hover div.photobox:after {display: inline;}
section#select_menu div.pannel ul li div.photobox:after {display: none;}
section#select_menu div.pannel ul li div.photobox {width: 200px;}
section#select_menu div.pannel ul li div.textbox {
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
section#select_menu div.pannel ul li div.photobox:after,
section#select_menu div.pannel ul li a:focus div.photobox:after,
section#select_menu div.pannel ul li a:hover div.photobox:after,
section#select_menu div.pannel ul li a figure figcaption,
section#select_menu div.pannel ul li a figure figcaption:focus,
section#select_menu div.pannel ul li a figure figcaption:hover {color: #FFF}
section#select_menu div.pannel ul li a {
	color: inherit;
	display: block;
	text-decoration: none;
}
}

/*フッター用*/
footer {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 1em 0 100px 0;
	background-color: #F3F3F3;
	/* box-shadow */
	box-shadow: 0 0 0.5em 0 rgba(0,0,0,0.25);
}
footer div.container {
	width: 100%;
	max-width: 960px;
	text-align: center;
	margin: 0 auto;
	padding: 0;
}
footer div.container div.inner {
	text-align: center;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
footer div.container div.inner div.box div.headoffice img {
	width: auto;
	max-width: 280px;
	height: auto;
	max-height: 40px;
}
footer div.container div.inner div.box {
	padding: 0;
	margin: 0;
}
footer div.container div.inner div.box ul,
footer div.container div.inner div.box ul li {
	-webkit-padding-start: 0;
	list-style: none;
	padding: 0;
}
footer div.container div.inner div.box div.headoffice,
footer div.container div.inner div.box div.headoffice ul,
footer div.container div.inner div.box div.headoffice ul li {
	width: 100%;
	text-align: center;
	margin: 0 auto;
	line-height: 100%;
}
footer div.container div.inner div.box div.headoffice ul li:first-child,
footer div.container div.inner div.box div.headoffice ul li:nth-child(2),
footer div.container div.inner div.box div.headoffice ul li:nth-child(4) {font-weight: bold;}
footer div.container div.inner div.box div.sightsections,
footer div.container div.inner div.box div.sightsections>div,
footer div.container div.inner div.box div.sightsections ul {
	-webkit-padding-start: 0;
	list-style: none;
	text-align: left;
	margin: 0 auto 0 0;
}
footer div.container div.inner div.box div.sightsections ul li {text-align: left;}
footer div.container div.inner div.box div.sightsections a,
footer div.container div.inner div.box div.sightsections li:before {
	color: #666;
	text-decoration: none;
}
footer div.container div.inner div.box div.sightsections li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	font-size: 50%;
	vertical-align: top;
}
footer div.container div.inner div.box div.sightsections {
	margin: 0;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
footer div.container div.inner div.box div.sightsections>div {
	-webkit-flex-grow: wrap;
	flex-grow: 1;
}
footer div.container div.inner div.box div.headoffice {
	margin: 0;
	padding: 0;
	display: block;
}
footer div.container div.inner div.box div.headoffice:before {
	margin: 1em auto;
	padding: 0;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	display: block;
}
@media screen and (min-width:1020px) {
footer div.container div.inner {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
footer div.container div.inner div.box:not(:nth-child(2)) {
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
footer div.container div.inner div.box:nth-child(2) {
	-webkit-flex-basis: 300px;
	flex-basis: 300px;
}
footer div.container div.inner div.box div.headoffice:before {
	margin: 0;
	padding: 0;
	content: none;
	width: 100%;
	/* box-shadow */
	box-shadow: none;
	display: none;
}
}
footer div.box div.otherlink {
	text-align: center;
	padding: 0;
	margin: 0;
	width: auto;
	display: block;
}
@media screen and (min-width:1020px) {
footer div.box div.otherlink {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-around;
	justify-content: space-around;
}
}
footer div.box div.otherlink:before {
	margin: 1em auto;
	padding: 0;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	display: block;
}
footer div.box div.otherlink div {
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
footer div.box div.otherlink div ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	vertical-align: top;
}
footer div.box div.otherlink div ul li {
	padding: 0;
	letter-spacing: normal;/* 文字間を通常に戻す */
	text-align: center;
	vertical-align: middle;
}
footer div.box div.otherlink div.link_tourism ul li {
	margin: 0.25em 0;
	display: block;
}
footer div.box div.otherlink div.link_references ul li {
	margin: 0 0.25em;
	display: inline-block;
}
footer div.box div.otherlink div.link_references ul li:last-child {
	width: 100%;
	display: block;
}
@media screen and (min-width:1020px) {
footer div.box div.otherlink div.link_tourism ul li,
footer div.box div.otherlink div.link_references ul li {
	width: auto;
	margin: 0 0.25em;
	display: inline-block;
}
footer div.box div.otherlink div.link_references ul li:last-child {display: block;}
}
footer div.box div.otherlink div.link_tourism ul li a,
footer div.box div.otherlink div.link_references ul li a {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
	color: #999;
	text-decoration: none;
}
footer div.box div.otherlink div.link_references ul li:last-child a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	display: inline;
}
footer div.box div.otherlink div.link_tourism ul li img,
footer div.box div.otherlink div.link_references ul li img {
	width: auto;
	height: 50px;
	margin: 0;
	padding: 0;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
footer div.box div.otherlink div.link_tourism ul li img:focus,
footer div.box div.otherlink div.link_tourism ul li img:hover,
footer div.box div.otherlink div.link_references ul li img:focus,
footer div.box div.otherlink div.link_references ul li img:hover {
	-webkit-filter: grayscale(0);
	-moz-filter: grayscale(0);
	-ms-filter: grayscale(0);
	-o-filter: grayscale(0);
	filter: grayscale(0);
}
footer div.copyright {font-size: 75%;}
footer div.copyright:before {
	margin: 1em auto;
	padding: 0;
	content: "";
	width: 100%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	display: block;
}

/* 一覧ページネーション */
div.pagination {
	text-align: center;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 2em auto 0 auto;
	padding: 0;
	position: relative;
}
div.pagination ul {
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	width: auto;
	display: block;
	margin: 0 auto;
	padding: 0;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
div.pagination ul li {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0.25em;
	padding: 0;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
	color: #FFF;
}
div.pagination ul li .current,
div.pagination a {
	display: block;
	margin: 0;
	padding: 0.25em 0.5em;
	text-decoration: none;
}
div.pagination a {
	color: inherit;
	background-color: #999;
}
div.pagination ul li .current,div.pagination ul li:focus a,div.pagination ul li:hover a {background-color: #CCC;}


/*固定ページ用*/
section#basepage {}
section#basepage div.container {}
section#basepage div.container div.entry {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto 1em auto;
	padding: 0;
	clear: both;
}
/*投稿ページ用*/
section#blog {}
section#blog div.container {}
section#blog div.container div.entry_list>ul {
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
	display: block;
	margin: 0 auto;
	padding: 0;
}
section#blog div.container div.entry_list>ul li {
	-webkit-padding-start: 0;
	list-style: none;
	padding: 0 0 2em 0;
	margin: 0 auto 2em auto;
	border-bottom: 1px solid #CCC;
}
section#blog div.container div.entry_list div.entry_list_inner {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin: 0 auto;
	padding: 0;
}
section#blog div.container div.entry_list div.entry_list_inner div.textbox,
section#blog div.container div.entry_list div.entry_list_inner div.photobox {
	margin: 0;
	padding: 0;
	vertical-align: top;
}
section#blog div.container div.entry_list div.entry_list_inner div.textbox {width: 77.5%;}
section#blog div.container div.entry_list div.entry_list_inner div.photobox {
	text-align: center;
	width: 20%;
	min-height: 80px;
	object-fit: cover;/* この一行を追加するだけ！ */
	position: relative;
	background-color: #FFF;
}
section#blog div.container div.entry_list div.entry_list_inner div.photobox img {
	width: 100%;
	height: auto;
	padding: 0;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
@media screen and (min-width:1020px) {
section#blog div.container div.entry_list div.entry_list_inner {}
section#blog div.container div.entry_list div.entry_list_inner div.textbox,
section#blog div.container div.entry_list div.entry_list_inner div.photobox {
	display: inline-block;
	margin: 0;
	vertical-align: top;
}
section#blog div.container div.entry_list div.entry_list_inner div.photobox {min-height: 120px;}
}
section#blog div.container div.entry_title,
section#blog div.container div.entry_time,
section#blog div.container div.entry_detail,
section#blog div.container div.entry_blogpost,
section#blog div.container div.entry_link,
section#blog div.container div.comments {
	text-align: left;
	width: 100%;
	max-width: 960px;
	display: block;
}
section#blog div.container div.entry_title {
	color: #333;
	font-size: 150%;
	font-weight: bold;
	margin: 0 auto;
	padding: 0.5em 0;
	border-bottom: 4px dotted #666;
}
section#blog div.container div.entry_title a {
	color: inherit;
	display: block;
	padding: 0;
}
section#blog div.container div.entry_detail {
	margin: 0 auto;
	padding: 0;
	clear: both;
}
section#blog div.container div.entry_blogpost {
	min-height: 200px;
	min-height: 20vh;
	margin: 0 auto 5em auto;
	padding: 1em 0;
}
section#blog div.container div.entry_blogpost img {
	width: auto;
	height: auto;
	max-width: 960px;
}
section#blog div.container div.entry_detail div {
	width: 100%;
	display: block;
	margin: 0.25em auto;
}
section#blog div.container div.entry_time a,
section#blog div.container div.entry_detail div.entry_category a,
section#blog div.container div.entry_detail div.entry_tag a {
	color: inherit;
}
section#blog div.container div.entry_time {
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
section#blog div.container div.entry_time div {
	width: auto;
	display: inline-block;
	margin: 0 0.25em 0 0;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
section#blog div.container div.entry_time div.date {
	color: #FFF;
	padding: 0 0.25em;
	background-color: #3CF;
}
section#blog div.container div.entry_time div.hour {
	color: inherit;
	padding: 0;
	font-size: 125%;
}
section#blog div.container div.entry_detail div.entry_category ul,
section#blog div.container div.entry_detail div.entry_tag ul {
	-webkit-padding-start: 0;
	list-style: none;
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
	line-height: 125%;
}
section#blog div.container div.entry_detail div.entry_category ul li,
section#blog div.container div.entry_detail div.entry_tag ul li {
	margin: 0 0.5em 0 0;
	padding: 2px 5px;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
	line-height: 100%;
	border: none;
}
section#blog div.container div.entry_detail div.entry_category ul li {
	color: #FFF;
	background-color: #999;
	font-size: 75%;
}
section#blog div.container div.entry_detail div.entry_category a {
	color: inherit;
	text-decoration: none;
}
section#blog div.container div.entry_detail div.entry_tag ul li {
	color: #999;
	font-size: 75%;
}
section#blog div.container div.entry_detail div.entry_category ul:before,
section#blog div.container div.entry_detail div.entry_tag ul li:before {
	color: #999;
	font-size: 100%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin: 0 0.5em 0 0;
	padding: 0;
}
section#blog div.container div.entry_detail div.entry_category ul:before {content: "\f07c";}
section#blog div.container div.entry_detail div.entry_tag ul li:before {content: "\f02b";}
section#blog div.container div.entry_link {}
/* ブログ用コメント欄(使わないけど一応設定しておく) */
section#blog div.container div.comments-area {
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: center;
	margin: 1em auto;
}
/* ブログ用ページナビ */
section#blog div.container div.entry_pagenavi {
	width: 100%;
	max-width: 960px;
	display: block;
	text-align: center;
	margin: 1em auto;
	padding: 0.5em 0;
	border-top: 1px dotted #CCC;
	border-bottom: 1px dotted #CCC;
}
section#blog div.container div.entry_pagenavi ul {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0 auto;
}
section#blog div.container div.entry_pagenavi li {
	margin: 0 0;
	padding: 0;
	display: block;
	width: 100%;
}
@media screen and (min-width:1020px) {
section#blog div.container div.entry_pagenavi ul {
	letter-spacing: -.40em;/* 文字間を詰めて隙間を削除する */
}
section#blog div.container div.entry_pagenavi li.prev,
section#blog div.container div.entry_pagenavi li.next {
	width: 45%;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
section#blog div.container div.entry_pagenavi li.back {
	width: 10%;
	display: inline-block;
	letter-spacing: normal;/* 文字間を通常に戻す */
}
}
section#blog div.container div.entry_pagenavi ul li i {
	margin: 0;
	padding: 0 0.5em;
	color: inherit;
}
section#blog div.container div.entry_category #markup,
section#blog div.container div.entry_tag #markup {
	background-color: #FCC;
}

/* ウィジェット用基本 */
div.post_wrapper,
div.post_main {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
}
div.post_main p {
	width: 100%;
	display: block;
	margin: 1em 0;
}
div.side-left,
div.side-right {
	max-width: 200px;
	display: block;
	margin: 0 auto;
	padding: 0;
}
@media screen and (min-width:1020px) {
div.post_wrapper {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
div.side-left,
div.side-right {
	max-width: 200px;
	min-height: 40vh;
	min-height: 400px;
	display: block;
	margin: 0;
	padding: 0;
}
div.side-left {order: -1;}
div.post_main {
	display: block;
	margin: 0;
	min-height: 40vh;
	min-height: 400px;
}
}
div.side-left .widget,
div.side-right .widget {
	width: 100%;
	display: block;
	text-align: left;
	vertical-align: top;
	padding: 0;
}
div.side-left .widget {margin: 0 50px 2em 0;}
div.side-right .widget {margin: 0 0 2em 50px;}
.widget #widget_title {
	width: 97.5%;
	text-align: center;
	vertical-align: top;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0;
	background: -moz-linear-gradient(top,  #FFF 0%, #F3F3F3 100%);
	background: -webkit-linear-gradient(top,  #FFF 0%, #F3F3F3 100%);
	background: linear-gradient(to bottom,  #FFF 0%, #F3F3F3 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00FFFFFF', endColorstr='#00F3F3F3',GradientType=1 );
	background-color: #F3F3F3;
	/* box-shadow */
	box-shadow: 0 0 0.5em 0 rgba(0,0,0,0.25);
}
/* RSS */
.widget_rss {
	vertical-align: top;
	margin: 0 auto 0.5em auto;
	padding: 1px 0 0 0;
	background-image: none;
}
.widget_rss ul {
	list-style-type: none;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.widget_rss ul li {
	margin: 0 0 3px 0;
	padding: 0;
}
.widget_rss .rss-date {
	font-size: 10px;
	line-height: 12px;
}
.widget_rss rssSummary {
	font-size: 10px;
	line-height: 12px;
}
/* ウィジェットカテゴリ */
.widget_categories ul {
	list-style-type: square;
	list-style-position: outside;
	margin: 0 0 0.5em 0;
	padding: 0;
	-webkit-padding-start: 20px;
}
.widget_categories ul li {
	margin: 0 0 0.25em 0;
	padding: 0;
}
.widget_categories ul.children {
	list-style-type: circle;
	list-style-position: outside;
	margin: 0 0 0 10px;
	padding: 0;
}
.widget_categories ul.children li {
	margin: 5px 0 0 0;
	padding: 0;
}
/* カレンダー */
.widget_calendar table {
	text-align: center;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background-color: transparent;
	border: none;
}
.widget_calendar caption {
	text-transform: uppercase;
	font-size: 100%;
	font-weight: bold;
	caption-side: top;
	text-align: center;
}
.widget_calendar thead th {
	font-size: 75%;
	padding: 0;
}
.widget_calendar thead th:first-child {
	color: #F36;
	background-color: #FCC;
}
.widget_calendar thead th:last-child {
	color: #09F;
	background-color: #CFF;
}
.widget_calendar thead,
.widget_calendar tbody {background-color: #FFF;}
.widget_calendar tbody th,
.widget_calendar tbody td {
	padding: 0.25em 0;
	background-color: #FFF;
}
.widget_calendar tfoot tr td {border: none;}
.widget_calendar tbody tr td.today {
	color: inherit;
	background-color: #CCE6FF;
}
.widget_calendar tbody a {display: block;}

.widget_tag_cloud .tagcloud {
	line-height: normal;
	margin: 0 0 0.5em 0;
	padding: 0;
}
.widget_text .textwidget {
	line-height: 1.25;
	margin: 0;
	padding: 0;
}
.widget_archive ul,.widget_archive ul li,
.widget_nav_menu ul,.widget_nav_menu ul li,
.widget_meta ul,.widget_meta ul li,
.widget_pages ul,.widget_pages ul li,
.widget_recent_comments ul,.widget_recent_comments ul li,
.widget_recent_entries ul,.widget_recent_entries ul li {
	list-style-type: none;
	margin: 0 0 0.5em 0;
	padding: 0;
}
/* ウィジェット検索 */
.widget_search {margin: 0.25em 0 0.5em 0;}
.widget_search {margin: 0 0 5px 0;}
.widget_search #searchform {
	position: relative;
	margin: 0;
	padding: 0;
}
.widget_search #s {
	width: 156px;
	height: 24px;
	border: none;
	color: #333;
	padding: 0.1em 0.25em 0.1em 0.25em;
	background-color: #E6E6E6;
}
.widget_search #searchsubmit {
	position: absolute;
	top: 0;
	_top: 1px;
	left: 176px;
	border-radius: 0;
}

/*見出し用*/
h1,h2,h3,h4,h5,h6,h7,h8,h9,h10 {
	width: 100%;
	display: block;
	word-break: keep-all;
	word-wrap: break-word;
	font-weight: bold;
}
div.main_container>h1,div.main_container>h2,div.main_container>h3,div.main_container>h4,div.main_container>h5,
div.main_container>h6,div.main_container>h7,div.main_container>h8,div.main_container>h9,div.main_container>h10 {
	margin: 0 auto 1em auto;
}
h1 span,h2 span,h3 span,h4 span,h5 span,
h6 span,h7 span,h8 span,h9 span,h10 {
	max-width: 960px;
	margin: 0 auto;
	display: inline-block;
	word-break: keep-all;
	word-wrap: break-word;
}
h1 a,h2 a,h3 a,h4 a,h5 a,h6 a,h7 a,h8 a,h9 a,h10 a,
h1 a:focus,h2 a:focus,h3 a:focus,h4 a:focus,h5 a:focus,h6 a:focus,h7 a:focus,h8 a:focus,h9 a:focus,h10 a:focus,
h1 a:hover,h2 a:hover,h3 a:hover,h4 a:hover,h5 a:hover,h6 a:hover,h7 a:hover,h8 a:hover,h9 a:hover,h10 a:hover {
	color: inherit;
	text-decoration: none;
}
/*松のマークが１つ付く見出し*/
h1 {
	color: #184B47;
	text-align: center;
	margin: 0 auto;
	padding: 1em 0 0 0;
	position: relative;
	font-size: 175%;
	line-height: 125%;
	background-color: transparent;
	background-image: repeating-linear-gradient(135deg, transparent, transparent 0%, transparent 25%, rgba(197,210,209,0.25) 25%, rgba(197,210,209,0.25) 50%, transparent 50%, transparent 75%, rgba(197,210,209,0.25) 75%, rgba(197,210,209,0.25) 100%, transparent 100%);
	background-size: 10px 10px;
}
h1 span {
	margin: 0 auto;
	padding: 0 0 1em 0;
	position: relative;
	display: block;
	width: 100%;
}
h1:after {
	display: block;
	content: url(https://www.tankai.jp/en/wp-content/themes/inbound/images/illust_pinetree.png);
	margin: 0;
	padding: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: +2;
}
h1 span:before,h1 span:after {
	position: absolute;
	content: '';
	width: 45%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	bottom: 0;
	z-index: +1;
}
h1 span:before {left: 0;}
h1 span:after {right: 0;}
h1 span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
/*両脇に松のマークが付く見出し*/
h2 {
	color: #ccaf74;
	text-align: center;
	margin: 0 auto 1em auto;
	padding: 0 0 0.5em 0;
	font-size: 125%;
	border-bottom: 1px solid #ccaf74;
	position: relative;
	max-width: 480px;
}
h2 span {
	padding: 0 30px;
}
h2:before,h2:after {
	content: "";
	background-image: url(images/icon_matsu.png);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	width: 30px;
	height: 30px;
	top: 50%;
	position: absolute;
}
h2:before {
	left: 0;
	-webkit-transform: translate(0,-50%);/* Safari用 */
	transform: translate(0,-50%);
}
h2:after {
	right: 0;
	-webkit-transform: translate(0,-50%);/* Safari用 */
	transform: translate(0,-50%);
}
h2 span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
/*背景グラデの見出し*/
h3 {
	text-align: center;
	margin: 0.25em auto 1em auto;
	padding: 0.5em;
	font-size: 150%;
	position: relative;
	background: -moz-linear-gradient(left,  rgba(255,255,255,0) 0%, #ccaf74 25%, #ccaf74 75%,rgba(255,255,255,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(255,255,255,0) 0%, #ccaf74 25%, #ccaf74 75%,rgba(255,255,255,0) 100%);
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%, #ccaf74 25%, #ccaf74 75%,rgba(255,255,255,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ccaf74', endColorstr='#00ccaf74',GradientType=1 );
}
h3 span {
	margin: 0;
	padding: 0;
	position: relative;
	z-index: +1;
}
h3 span:before,
h3 span:after {
	content: "";
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin: 0;
	padding: 0;
	width: 110px;
	height: 25px;
	top: 50%;
	position: absolute;
	z-index: -1;
}
h3 span:before {
	left: 0;
	background-image: url(images/line_wafuu-left.png);
	-webkit-transform: translate(-50%,-50%);/* Safari用 */
	transform: translate(-50%,-50%);
}
h3 span:after {
	right: 0;
	background-image: url(images/line_wafuu-right.png);
	-webkit-transform: translate(50%,-50%);/* Safari用 */
	transform: translate(50%,-50%);
}
@media screen and (min-width: 1020px) {
h3 span:before {
	-webkit-transform: translate(-100%,-50%);/* Safari用 */
	transform: translate(-100%,-50%);
}
h3 span:after {
	-webkit-transform: translate(100%,-50%);/* Safari用 */
	transform: translate(100%,-50%);
}
}
h3 span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
/*背景色オレンジ(※変えたい時はCSSに都度付加する)の見出し*/
h4 {
	font-size: 125%;
	line-height: 150%;
	color: #FFF;
	text-align: center;
	margin: 0 auto 1em auto;
	padding: 0.25em 0.5em;
	background-color: #E8641B;
}
h4 span {
	padding: 0;
	position: relative;
}
h4 span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
/*h5 ブログ専用の小見出し*/
h5 {
	font-size: 100%;
	line-height: 125%;
	color: #E8641B;
	border: 1px solid #E8641B;
	text-align: left;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0.5em;
}
h5 span {
	padding: 0;
	position: relative;
}
/*h6 ブログ専用の大見出し*/
h6 {
	font-size: 125%;
	line-height: 150%;
	color: #FFF;
	background-color: #E8641B;
	text-align: left;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0.5em;
}
h6 span {
	padding: 0;
	position: relative;
}
/*上下にオレンジの二重線の見出し*/
h7 {
	font-size: 100%;
	line-height: 125%;
	color: #E8641B;
	text-align: center;
	margin: 0 auto 1em auto;
	padding: 0.25em 0.5em;
	border-top: 4px double #E8641B;
	border-bottom: 4px double #E8641B;
}
h7 span {
	padding: 0;
	position: relative;
}
h7 span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}

/*画像パネル*/
div.image_pannel {
	margin: 0 auto 1em auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	line-height: 100%;
	vertical-align: top;
}
div.image_pannel ul,
div.image_pannel ul li {
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0 auto 1em auto;
	padding: 0;
	display: block;
}
div.image_pannel ul,
div.image_pannel ul li img {
	height: auto;
	width: 100%;
}
@media screen and (min-width: 1020px) {
div.image_pannel ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
div.image_pannel ul li {margin: 0 1% 1em 1%;}
}

/*詳しく見るボタン*/
a.readmore {
	margin: 1em auto 0 auto;
	padding: 0.5em 0;
	text-align: center;
	vertical-align: middle;
	display: block;
	color: #333;
	border: 1px solid #333;
	background-color: #FFF;
	width: auto;
	max-width: 200px;
	min-width: 200px;
	-webkit-transition: all 0.2s ease-in-out 0s;
	transition: all 0.2s ease-in-out 0s;
}
a.readmore,
a.readmore a {
	color: #333;
	text-decoration: none;
}
a.readmore:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	display: inline;
	margin: 0 0.25em;
	padding: 0;
}
a.readmore:focus,
a.readmore:hover {
	color: #FFF;
	background-color: #333;
}

/* ページ内で移動するボタン(例外あり) */
div.skip_button {
	color: #333;
	margin: 1em auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	line-height: 100%;
	text-align: center;
	vertical-align: top;
}
div.skip_button ul {
	-webkit-padding-start: 0;
	list-style: none;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
div.skip_button ul li {
	text-align: center;
	-webkit-padding-start: 0;
	list-style: none;
	margin: 0;
	vertical-align: top;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
}
@media screen and (min-width: 1020px) {
div.skip_button ul {
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
div.skip_button ul li {
	margin: 0 1em 1em 1em;
	-webkit-flex-basis: auto;
	flex-basis: auto;
}
}
div.skip_button ul li a {
	color: #333;
	text-decoration: none;
	display: block;
	transition: 0.2s ease-in-out 0s;
	-webkit-transition: 0.2s ease-in-out 0s;
}
div.skip_button ul li:focus a,div.skip_button ul li:hover a {color: inherit;}
div.skip_button ul li dl,div.skip_button ul li dl dt,div.skip_button ul li dl dd {
	margin: 0.5em auto 0 auto;
	display: block;
}
div.skip_button ul li dl dt {
	position: relative;
	color: #FFF;
	width: 60px;
	height: 60px;
	background: -webkit-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -moz-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -o-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -ms-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: linear-gradient(to bottom, #b2e5ff 0%, #3CF 100%);
	background-color: #b2e5ff;
	border: 1px solid #b2e5ff;
	/* box-shadow */
	box-shadow: 0 1px 0 0 rgba(255,255,255,0.5) inset;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
div.skip_button ul li dl dt span {
	position: absolute;
	font-size: 30px;
	display: inline-block;
	top: 50%;
	left: 50%;
	position: absolute;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
div.skip_button ul li dl dt a,
div.skip_button ul li dl dt span {
	color: #FFF;
}
div.skip_button ul li dl dt::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: -1;
	content: "";
	width: 50%;
	height: 1em;
	background-color: rgba(0,0,0,0.25);
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-transform: translate(-50%,50%);
	transform: translate(-50%,50%);
}
div.skip_button ul li:focus dl dt,
div.skip_button ul li:hover dl dt {
	color: #FFF;
	-webkit-transform: translateY(-0.5em);
	transform: translateY(-0.5em);
	transition: 0.2s ease-in-out 0s;
	-webkit-transition: 0.2s ease-in-out 0s;
}
div.skip_button ul li:focus dl dt::after,
div.skip_button ul li:hover dl dt::after {
	width: 25%;
	height: 0.5em;
	position: absolute;
	bottom: 0;
	left: 50%;
	content: "";
	background-color: rgba(0,0,0,0.25);
	-webkit-transform: scale(-50%,0.75em);
	transform: translate(-50%,0.75em);
}

/* 違うページに移動ボタン */
div.jump_button {
	margin: 1em auto 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	line-height: 100%;
	text-align: center;
	vertical-align: top;
}
div.jump_button ul {
	-webkit-padding-start: 0;
	list-style: none;
	width: auto;
	display: block;
	margin: 0 auto;
	padding: 0;
	-webkit-padding-start: 0;
	list-style: none;
	text-align: center;
}
div.jump_button ul li {
	margin: 0.25em auto;
	padding: 0;
	text-align: center;
	vertical-align: middle;
	color: #333;
	background-color: #E6E6E6;
	border: 1px solid #E6E6E6;
	display: inline-block;
	width: auto;
	max-width: 200px;
	min-width: 200px;
	border-radius: 1em;
	-webkit-border-radius: 1em;
	-moz-border-radius: 1em;
}
div.jump_button ul li a:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: '\f054';
	display: inline;
	padding: 0;
	margin-right: 0.5em;
}
div.jump_button ul li:before,div.jump_button ul li:focus:before,div.jump_button ul li:hover:before,
div.jump_button ul li a,div.jump_button ul li:focus a,div.jump_button ul li:hover a {color: #333;}
div.jump_button ul li a {
	display: block;
	margin: auto 0;
	text-decoration: none;
	padding: 0.5em 0;
}
div.jump_button ul li:focus a,
div.jump_button ul li:hover a {
	color: #FFF;
}
div.jump_button ul li:focus,
div.jump_button ul li:hover {
	background: -webkit-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -moz-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -o-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: -ms-linear-gradient(top, #b2e5ff 0%, #3CF 100%);
	background: linear-gradient(to bottom, #b2e5ff 0%, #3CF 100%);
	background-color: #b2e5ff;
	border: 1px solid #b2e5ff;
	transition: 0.2s 0s;
	-webkit-transition: 0.2s 0s;
}
/* ページを移動するボタン2 */
div.down_button {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 960px;
	display: block;
	line-height: 100%;
	text-align: center;
	vertical-align: top;
}
div.down_button ul {
	width: 100%;
	display: block;
	margin: 0 auto;
	padding: 0;
	-webkit-padding-start: 0;
	list-style: none;
}
div.down_button ul li {
	margin: 0 0.5% 0.25em 0.5%;
	padding: 0;
	background-color: #E6E6E6;
	text-align: center !important;
	position: relative;
}
div.down_button ul li a:before {
	color: inherit;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: inline;
	padding: 0;
	margin: 0 0.25em 0 0;
	position: absolute;
	left: 1em;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);/* Safari用 */
	transform: translate(-50%, -50%);
}
div.down_button ul li:focus a:before,
div.down_button ul li:hover a:before {color: inherit;}
div.down_button ul li a:before {content: '\f054';}
@media screen and (min-width: 1020px) {
div.down_button ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
}
div.down_button ul li {
	max-width: 24%;
	min-width: 24%;
	flex-grow: 1;
	-webkit-flex-grow: 1;
}
}
div.down_button ul li svg {
	padding: 0;
	margin: auto 0.5em auto 0;
}
div.down_button ul li a {
	color: #333;
	display: block;
	margin: auto 0;
	text-decoration: none;
	padding: 1em;
}
div.down_button ul li:focus a,div.down_button ul li:hover a {color: #FFF;}
div.down_button ul li:focus,div.down_button ul li:hover {background-color: #99E6FF;}

/* 予約・問い合わせバー */
section#reserve {
	text-align: center;
	padding: 0;
	margin: 0;
	line-height: 150%;
	box-sizing: border-box;
	width: 100%;
	left: 0;
	bottom: 0;
	position: -webkit-fixed; /* safari対応 */
	position: fixed;
	background: -moz-linear-gradient(top,  #9a9cc7 0%, #363A90 100%);
	background: -webkit-linear-gradient(top,  #9a9cc7 0%, #363A90 100%);
	background: linear-gradient(to bottom,  #9a9cc7 0%, #363A90 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9a9cc7', endColorstr='#363A90',GradientType=0 );
	background-color: #363A90;
	z-index: 1000;
	/* box-shadow */
	box-shadow: 0 0 0.5em 0 rgba(0,0,0,0.5);
}
section#reserve ul {
	-webkit-padding-start: 0;
	list-style: none;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0.5em 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
section#reserve ul li {
	margin: 0;
	padding: 0;
	width: 33.33%;
	list-style-type: none;
	border-left: 1px solid rgba(255,255,255,0.5);
	border-right: 1px solid rgba(0,0,0,0.5);
}
section#reserve ul li dl {
	margin: 0 auto;
	padding: 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-direction: column;
	flex-direction: column;
	height: 70px;
}
section#reserve ul li dl dt {
	margin: 0 auto;
	padding: 0.25em 0;
	display: block;
}
section#reserve ul li dl dd {
	margin: auto;
	padding: 0;
	display: block;
}
section#reserve ul li dl dt:before {
	margin: 0;
	padding: 0;
	color: #FFF;
	font-size: 200%;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	display: block;
}
section#reserve ul li:first-child dl dt:before {content: '\f5a0';}
section#reserve ul li:nth-child(2) dl dt:before {content: '\f274';}
section#reserve ul li:nth-child(3) dl dt:before {content: '\f059';}
section#reserve ul li a {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	color: #FFF;
	display: block;
	text-decoration: none;
}
section#reserve ul li:focus,
section#reserve ul li:hover {
	opacity: 0.5;
	-webkit-opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=50)";/* IE 8 */
}

/* グーグルマップ */
div.googlemap {
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
	height: auto;
	padding-bottom: 75%;/* 縦横比 */
	overflow: hidden;
	position: relative;
	background-color: #FFF;
}
div.googlemap iframe,
div.googlemap object,
div.googlemap embed,
div.googlemap iframe html {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
div.googlemap iframe {
	border-collapse: collapse;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
.gsc-search-box table {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	width: 100%;
}
.gsc-search-box table tr th,
.gsc-search-box table tr td {
	font-weight: inherit;
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	overflow: visible;
}

.red {color: #F00;}
/*投稿ページ用スタイル*/
.bold{font-weight:bold;}
.post_frame-blue,
.post_frame-emerald,
.post_frame-green,
.post_frame-tankaibus,
.post_frame-kyoto,
.post_frame-osaka,
.post_frame-red {
	margin: 0 auto 1em auto;
	padding: 1em;
	width: 100%;
	display: block;
}
.post_frame-blue {background-color: #E6F3FF;}
.post_frame-emerald {background-color: #ddf3f4;}
.post_frame-green {background-color: #e0e7e7;}
.post_frame-tankaibus {background-color: #fceae1;}
.post_frame-kyoto {background-color: #fbddee;}
.post_frame-osaka {background-color: #ddebf5;}
.post_frame-red {background-color: #C00;}
[class*="post_frame"] {
	border: 1px solid #333;
	border-radius: 0.5em;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
}


/*文頭に薄青色の■と下線が付く見出し*/
div.title_square {
	text-align: left;
	margin: 0 auto 1em auto;
	padding: 0 0 0.25em 0;
	font-weight: bold;
	font-size: 100%;
	position: relative;
	border-bottom: 1px solid #999;
}
div.title_square span {
	margin: 0;
	padding: 0 0 0 0.5em;
	position: relative;
	border-left: 5px solid #b2e5ff;
	display: inline-block;
	width: 100%;
}
div.title_square span svg {
	color: #363A90;
	font-weight: normal;
	display: inline-block;
}
/*松のマークが１つ付く見出し(h1ではない&背景なし)*/
div.title_matsu {
	color: #184B47;
	text-align: center;
	margin: 0 auto;
	padding: 0;
	position: relative;
	font-weight: bold;
	font-size: 175%;
	line-height: 125%;
	background-color: transparent;
	background-image: none;
}
div.title_matsu span {
	margin: 0 auto;
	padding: 0 0 1em 0;
	position: relative;
	display: block;
	width: 100%;
}
div.title_matsu:after {
	display: block;
	content: url(images/illust_pinetree.png);
	margin: 0;
	padding: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
div.title_matsu span:before,.title_matsu span:after {
	position: absolute;
	content: '';
	width: 45%;
	height: 1px;
	background-color: #CCC;
	/* box-shadow */
	box-shadow: 0 1px 0 0 #FFF;
	bottom: 0;
	z-index: -1;
}
div.title_matsu span:before {left: 0;}
div.title_matsu span:after {right: 0;}
div.title_matsu span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
/*オレンジのぼかし縁取りが付く小見出し*/
.subtitle_orange {
	color: #FFF;
	text-align: center;
	margin: 0 auto 0.5em auto;
	padding: 0.25em 0;
	font-size: 125%;
	font-weight: bold;
}
.subtitle_orange span {
	padding: 0;
	position: relative;
	text-shadow: 1px 1px 2px #E8641B, -1px 1px 2px #E8641B, 1px -1px 2px #E8641B, -1px -1px 2px #E8641B;
}
.subtitle_orange span svg {
	color: inherit;
	font-weight: normal;
	display: inline-block;
}
section#sightseeinginfo div.container .subtitle_orange {margin: 0 auto;}
/*パンくずリンク*/
section#pankuzu {
	color: #666;
	margin: 0 auto 2em auto;
	padding: 0.25em 0;
	text-align: left;
	font-size: 75%;
	vertical-align: top;
	width: 100%;
	max-width: 960px;
}
section#pankuzu ul {
	padding: 0;
	margin: 0 auto;
	width: 100%;
	max-width: 960px;
}
section#pankuzu ul li {
	/* liを横並び＆ブレットを消す */
	display: inline;
	list-style-type: none;
	line-height: 100%;
}
section#pankuzu ul li:before {
	/* liの後に記号追加 */
	content:">";
	margin: 0 0.25em;
}
section#pankuzu ul li:first-child:before {content:none;}




@-webkit-keyframes   99%,to {-webkit-transform: translate(-100%);}
}
@-moz-keyframes   99%,to {-moz-transform: translate(-100%);}
}
@-ms-keyframes   99%,to {-ms-transform: translate(-100%);}
}
@-o-keyframes   99%,to {-o-transform: translate(-100%);}
}
@keyframes   99%,to {transform: translate(-100%);}
}

