@charset 'UTF-8';

/* ------------------------------
 リセット
------------------------------ */

/* ブラウザのデフォルトをリセット */

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
	zoom: 1;
	margin: 0;
	padding: 0;
}

iframe {
	border: 0;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

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

fieldset,
img {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-weight: normal;
	font-style: normal;
}

ul,
ol,
li {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

q:before,
q:after {
	content: '';
}

abbr,
acronym {
	border: 0;
}

textarea {
	font-size: 100%;
}

/* For modern browsers */

.cf:before,
.cf:after {
	display: table;
	content: '';
}

.cf:after {
	clear: both;
}

.cf {
	zoom: 1;
}

a {
	text-decoration: underline;
	color: #007ccb;
}

a:link {
	color: #007ccb;
}

a:visited {
	color: #007ccb;
}

a:hover {
	text-decoration: none;
	color: #007ccb;
}

a:active {
	text-decoration: none;
	color: #007ccb;
}

/* ブラウザ間のフォントサイズを揃える */

body {
	font: 12px/1.22 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	position: relative;
	color: #333;
	background-color: #fff;
	*font-size: small;
	*font: x-small;
}

table {
	font: 100%;
	font-size: inherit;
}

/* Safarip99% */

select,
input,
textarea {
	font: 99%;
}

pre,
code {
	font: 115% monospace 'Osaka', 'ＭＳ Ｐゴシック', Arial, sans-serif;
	*font-size: 100%;
}

body * {
	line-height: 1.22em;
}

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

#header {
	border-bottom: 1px solid #e7e7e7;
}

#header .head_txt {
	width: 100%;
	padding: 8px 0;
	background-color: #003f95;
}

#header h1 {
	width: 960px;
	margin: 0 auto;
	font-size: 12px;
	color: #fff;
}

#header .inbox {
	width: 960px;
	margin: 0 auto;
	padding: 30px 0 20px;
}

#header .logo {
	float: left;
	width: 247px;
}

#header .header_closing {
	float: right;
	width: 674px;
}

#header .txtbox {
	text-align: right;
	margin-bottom: 18px;
}

#header .code_txt {
	display: inline;
	letter-spacing: -0.6px;
}

#header .company_link {
	margin: 5px 0 0 17px;
}

#header .company_link a {
	color: #333;
	line-height: 18px;
}

#header .header_closing .telbox {
	float: left;
	width: 364px;
}

#header .header_closing .telbox .tel_img {
	min-height: 43px;
	padding-left: 49px;
	background: url(../img/common/ico_tel_header.png) no-repeat left top;
}

#header .header_closing .telbox .open_txt {
	margin-top: 9px;
}

#header .header_closing .btn {
	float: right;
	width: 310px;
}

#header .header_closing .btn a {
	display: block;
	overflow: hidden;
	width: 310px;
	height: 0;
	padding-top: 70px;
	color: #fff;
	background: #fff url(../img/common/btn_header.png) no-repeat left top;
}

.fade:hover {
	opacity: 0.8;
	-webkit-opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: 'alpha(opacity=80)';
}

/*---------- contents ----------*/

.inbox {
	width: 960px;
	margin-right: auto;
	margin-left: auto;
}

.auto {
	margin-left: auto;
	margin-right: auto;
}

/*---------- closing ----------*/

.closing {
	border-bottom: 1px solid #e7edf5;
	padding-bottom: 40px;
	background-color: #f4f9ff;
}

.closing dt {
	margin-bottom: 40px;
	padding: 10px 0;
	background-color: #35a9d4;
}

.closing dd {
	padding: 23px 30px 26px;
	border-radius: 4px;
	background-color: #fff;
}

.closing ul {
	margin: 0 auto;
	position: relative;
	width: 900px;
	height: 84px;
}

.closing ul.staff:after {
	content: '';
	position: absolute;
	top: -124px;
	background: url(../img/top/i_closing.png);
	right: 13px;
	height: 128px;
	width: 115px;
}

.closing dd p {
	margin-bottom: 16px;
	border-bottom: 1px dotted #666;
	padding-bottom: 11px;
}

.closing_tel {
	padding-bottom: 31px;
	float: left;
	background: url(../img/top/bg_closing_tel.png) no-repeat left bottom;
}

.closing_btn {
	padding-top: 4px;
	float: right;
}

.closing .inbox {
	width: 900px;
}

/*---------- company ----------*/

#company_tl {
	margin-bottom: 60px;
	padding: 36px 0;
}

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

#footer_link {
	width: 960px;
	margin: 0 auto 20px;
}

#footer_link li {
	margin-right: 20px;
}

#footer_link li:last-child {
	margin-right: 0;
}

#footer_link li a {
	font-size: 12px;
	line-height: 1.4;
	padding-left: 11px;
	color: #666;
	background: url(../img/common/ico_ar.png) no-repeat left center;
}

#footer_link li a:hover {
	text-decoration: none;
	color: #333;
}

#footer_dsc {
	padding: 8px;
	font-size: 13px;
	text-align: center;
	background-color: #d1def0;
}

#footer .bgbox {
	padding: 20px 0;
	background-color: #fbfbfb;
}

#footer .bgbox .inbox {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#footer .logo {
	flex-basis: 262;
}

#ssl {
	display: flex;
	justify-content: space-between;
	flex-basis: 270px;
}

#ssl_seal {
	margin-right: 10px;
}

#ssl p {
	color: #333;
	font-size: 10px;
	line-height: 1.4;
}

#copyright {
	padding: 10px 0;
	background-color: #1b5bb2;
}

#copyright p {
	font-size: 12px;
	color: #fff;
}

#copyright_l {
	display: inline-block;
	width: 350px;
}

#copyright_r {
	display: inline-block;
	width: 590px;
	text-align: right;
}

/*---------- modules ----------*/

.tl {
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAMAAABh9kWNAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAZQTFRFFE6dADqJJATD7gAAABJJREFUeNpiYGBgBCJGEAIIMAAAJQAG7xHlRwAAAABJRU5ErkJggg==) repeat;
}

#tm_1 {
	background: url(../img/form/ico_tm_1.png) no-repeat left center;
}

#tm_2 {
	background: url(../img/form/ico_tm_2.png) no-repeat left center;
}

/* 段落 */

.xsmall {
	font-size: 12px;
	line-height: 18px;
}

.small {
	font-size: 16px;
	line-height: 23px;
}

.normal {
	font-size: 18px;
	line-height: 26px;
}

.normal span {
	line-height: 26px;
}

.large {
	font-size: 20px;
	line-height: 30px;
}

.large span {
	line-height: 30px;
}

/* 強調 */

.bold {
	font-weight: bold;
}

/* 赤字 */

.notice {
	color: #d00000;
}

/* レイアウト */

.center {
	text-align: center;
}

.left {
	float: left;
}

.right {
	text-align: right;
}

.ml20 {
	margin-left: 20px;
}

.mt20 {
	margin-top: 20px;
}

.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb30 {
	margin-bottom: 30px;
}

.mb40 {
	margin-bottom: 40px;
}

.mb50 {
	margin-bottom: 50px;
}

.mb60 {
	margin-bottom: 60px;
}

.mb70 {
	margin-bottom: 70px;
}

.mb80 {
	margin-bottom: 80px;
}

.mb90 {
	margin-bottom: 90px;
}

.mb100 {
	margin-bottom: 100px;
}

/*
--------------------------------------------------------------------------------
 END OF CSS
--------------------------------------------------------------------------------
*/
