@charset "utf-8";
/* ==========================================================================
   ダイヤモンド交通  共通スタイル（common.css）
   旧 css/common.css（Shift_JIS）を UTF-8 / HTML5 構造向けに書き直したもの
   ========================================================================== */


/* --------------------------------------------------------------------------
   base
   -------------------------------------------------------------------------- */

html {
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	margin: 0;
	padding: 0;
	color: #666666;
	font-family: "MS UI Gothic", "ＭＳ Ｐゴシック", "MS PGothic", "Osaka", sans-serif;
	font-size: 0;
	line-height: 100%;
	background-color: #ffffff;
}

img { border: 0; vertical-align: text-bottom; }
.img { margin: 0; padding: 0; clear: both; }
h1.img, h2.img { font-size: 0; line-height: 0; font-weight: normal; }

form { margin: 0; padding: 0; }

a:link,
a:visited { color: #0073ff; text-decoration: underline; }
a:hover,
a:active  { color: #ff3333; text-decoration: underline; }


/* --------------------------------------------------------------------------
   global
   -------------------------------------------------------------------------- */

.global { margin: 0; padding: 0; }

.global_area {
	width: 948px;
	margin: 0 auto;
	padding: 0;
}


/* --------------------------------------------------------------------------
   header
   -------------------------------------------------------------------------- */

.header {
	width: 948px;
	margin: 0;
	padding: 8px 0 0;
	clear: both;
	background: url(../image/page_bg.gif) repeat-y;
	position: relative;
}

/* ヘッダー下端の枠（旧 header_end.gif） */
.header::after {
	content: "";
	display: block;
	clear: both;
	height: 5px;
	background: url(../image/header_end.gif) no-repeat 0 0;
}

.title_area {
	display: flow-root;
	width: 886px;
	margin: 0 auto 8px;
	padding: 0;
}

.title {
	width: 272px;
	margin: 0;
	padding: 0;
	float: left;
}

.title a,
.title img,
.head_tel img { display: block; }

.head_tel {
	width: 369px;
	margin: 0;
	padding: 0;
	float: right;
}

.top_img {
	width: 108px;
	height: 62px;
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	right: 426px;
	z-index: 10;
}

/* グローバルナビ ------------------------------------------------------ */

.head_menu {
	width: 948px;
	margin: 0;
	padding: 0;
}

.head_menu ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.head_menu ul::before,
.head_menu ul::after {
	content: "";
	display: block;
	flex: none;
	width: 31px;
	height: 33px;
}
.head_menu ul::before { background: url(../image/menu_side01.gif) no-repeat; }
.head_menu ul::after  { background: url(../image/menu_side02.gif) no-repeat; }

.head_menu li {
	flex: none;
	height: 33px;
	margin: 0;
	padding: 0;
}

/* メニュー間の区切り線（旧 menu_line.gif） */
.head_menu li + li {
	padding-left: 2px;
	background: url(../image/menu_line.gif) no-repeat 0 0;
}

.head_menu a {
	display: block;
	background-repeat: no-repeat;
	background-position: 0 0;
}

.head_menu img { display: block; }

/* マウスオーバー：下に敷いた _on 画像を見せる（旧 MM_swapImage の置き換え） */
.head_menu a:hover img,
.head_menu a:focus-visible img { opacity: 0; }

.gnav09 a { background-image: url(../image/menu09_on.gif); }
.gnav10 a { background-image: url(../image/menu10_on.gif); }
.gnav11 a { background-image: url(../image/menu11_on.gif); }
.gnav12 a { background-image: url(../image/menu12_on.gif); }
.gnav13 a { background-image: url(../image/menu13_on.gif); }
.gnav14 a { background-image: url(../image/menu14_on.gif); }
.gnav15 a { background-image: url(../image/menu15_on.gif); }

/* スマートフォン用のテキストラベル（PCでは非表示） */
.sp_label { display: none; }


/* --------------------------------------------------------------------------
   page visual（各ページ上部の見出し画像）
   -------------------------------------------------------------------------- */

.page_visual {
	margin: 0 0 4px;
	padding: 0;
	font-size: 0;
	line-height: 0;
}

.page_visual img { display: block; }


/* --------------------------------------------------------------------------
   main
   -------------------------------------------------------------------------- */

.main,
.main2 {
	display: block;
	width: 948px;
	margin: 0;
	padding: 0;
	clear: both;
}

.main  { background: url(../image/page_bg.gif) repeat-y; }
.main2 { background: url(../image/page_bg2.gif) repeat-y; }

/* 上端の枠（旧 body_head.gif ＋ 余白 / main_bg01.gif） */
.main::before,
.main2::before {
	content: "";
	display: block;
	height: 27px;
	background: url(../image/body_head.gif) no-repeat 0 0;
}
.main2::before {
	background:
		url(../image/body_head.gif) no-repeat 0 0,
		url(../image/main_bg01.gif) no-repeat 0 10px;
}

/* 下端（旧 余白 / main_bg02.gif） */
.main::after,
.main2::after {
	content: "";
	display: block;
	clear: both;
	height: 13px;
}
.main2::after {
	height: 23px;
	background: url(../image/main_bg02.gif) no-repeat 0 0;
}

.main_area {
	display: flow-root;
	width: 886px;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

.main_left {
	width: 650px;
	margin: 0;
	padding: 0;
	float: left;
}

.main_right {
	width: 220px;
	margin: 0;
	padding: 0;
	float: right;
}

.right_cp {
	width: 220px;
	margin: 0;
	padding: 0;
	background: url(../image/right_cp03.gif) repeat-y;
	clear: both;
}

.qr_text {
	width: 194px;
	margin: 0 auto;
	padding: 0;
	clear: both;
}

.qr_text p {
	margin: 0;
	padding: 5px 0;
	line-height: 1.5em;
	font-size: 12px;
	clear: both;
}

/* パンくずリスト */
.page_link {
	display: block;
	margin: 0;
	padding: 6px 0 5px 10px;
	font-size: 11px;
	line-height: 1em;
	color: #888888;
	font-weight: normal;
	background-color: #efefef;
}

.page_link a:link,
.page_link a:visited { color: #888888; text-decoration: none; }
.page_link a:hover,
.page_link a:active  { color: #ff6600; text-decoration: underline; }

.title_bar {
	width: 644px;
	height: 25px;
	margin: 0;
	padding: 15px 0 0 6px;
	background: url(../image/line.gif) no-repeat;
	background-position: 0 34px;
	clear: both;
	font-size: 16px;
	font-weight: bold;
	line-height: 1em;
	letter-spacing: 1px;
	color: #666666;
}

.pagetop {
	width: 650px;
	margin: 0;
	padding: 0;
	text-align: right;
	clear: both;
}


/* --------------------------------------------------------------------------
   footer
   -------------------------------------------------------------------------- */

.footer {
	width: 948px;
	margin: 0;
	padding: 0;
	clear: both;
}

/* 上下の枠（旧 footer_line.gif / footer_end.gif） */
.footer::before,
.footer::after {
	content: "";
	display: block;
	height: 4px;
}
.footer::before { background: url(../image/footer_line.gif) no-repeat; }
.footer::after  { background: url(../image/footer_end.gif) no-repeat; }

.footer_menu {
	width: 948px;
	margin: 0;
	padding: 0;
}

.footer_menu ul {
	display: flex;
	height: 19px;
	margin: 0;
	padding: 0;
	list-style: none;
	background: #0039ae;
}

.footer_menu li { flex: none; margin: 0; padding: 0; }
.footer_menu img { display: block; }
.footer_menu .footer_cp { margin-left: auto; }
.footer_menu small { display: block; }

/* スマートフォン用フッター（PCでは非表示） */
.sp_footer { display: none; }
.sp_only { display: none; }


/* --------------------------------------------------------------------------
   banner
   -------------------------------------------------------------------------- */

.pc_bana {
	width: 220px;
	height: 110px;
	margin: 0 0 10px;
	padding: 0;
	clear: both;
}

.sp_tel,
.sp_bana {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	clear: both;
}

.sp_bana { margin-top: 10px; }

.sp_tel a,
.sp_bana a { display: block; width: 100%; }

.sp_tel a img,
.sp_bana a img { width: 100%; height: auto; }


/* --------------------------------------------------------------------------
   utility
   -------------------------------------------------------------------------- */

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

.gap { clear: both; margin: 0; padding: 0; }

.txt_red  { color: #ff0000; }
.txt_pink { color: #ed145b; }
.fw_bold  { font-weight: bold; }
.ta_right { text-align: right; }
.d_block  { display: block; }

.visually_hidden {
	position: absolute !important;
	width: 1px; height: 1px;
	margin: -1px; padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

strong { font-weight: bold; }

/* 余白ユーティリティ（旧 spacer.gif の置き換え）は build 時に末尾へ自動出力 */

/* 余白ユーティリティ（build 時に自動生成） */
.gap3 { height: 3px; }
.gap4 { height: 4px; }
.gap5 { height: 5px; }
.gap6 { height: 6px; }
.gap8 { height: 8px; }
.gap9 { height: 9px; }
.gap10 { height: 10px; }
.gap12 { height: 12px; }
.gap16 { height: 16px; }
.gap18 { height: 18px; }
.gap20 { height: 20px; }
.gap22 { height: 22px; }
.gap24 { height: 24px; }
.gap28 { height: 28px; }
.gap30 { height: 30px; }
.gap40 { height: 40px; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mt6 { margin-top: 6px !important; }
.mt10 { margin-top: 10px !important; }
.mt12 { margin-top: 12px !important; }
.mt16 { margin-top: 16px !important; }
.mt18 { margin-top: 18px !important; }
.mt20 { margin-top: 20px !important; }
.mt26 { margin-top: 26px !important; }
.mt30 { margin-top: 30px !important; }
.pl45 { padding-left: 45px !important; }
.pl50 { padding-left: 50px !important; }
