@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;
}
.attention,
.error-message {
    color: #d63638;
    font-weight: 600;
}

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;
}

textarea {
	font-size: 100%;
}

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

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

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

body * {
	line-height: 1.22em;
}

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

#header_copy {
	font-size: 13px;
	line-height: 20px;
	color: #555;
	padding: 5px 0;
	text-align: center;
	background-color: #f2f2f2;
}

#header {
	margin-bottom: 50px;
	border-bottom: 5px solid #c00000;
}

#header .inbox {
	width: 960px;
	margin: 0 auto;
	padding: 24px 0 25px;
}

#header .logo {
	float: left;
	width: 320px;
	text-align: center;
}

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

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

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

.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;
}

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

.closing {
	padding: 23px 0 54px;
	border-top: 2px solid #333;
	border-bottom: 2px solid #333;
	background-color: #fff9f1;
}

.closing_gray {
	border-top: 2px solid #d4d0ca;
	border-bottom: 2px solid #d4d0ca;
}

.txt_closing,
.txt_closing_s {
	position: relative;
	text-align: center;
}

.txt_closing {
	margin-top: -88px;
}

.txt_closing_s {
	margin-top: -58px;
}

.closing_inner {
	width: 913px;
	margin: 0 auto;
}

.t_closing {
	margin-bottom: 37px;
	text-align: center;
}

.tel_closing {
	width: 470px;
	float: left;
}

.btn_closing {
	width: 420px;
	float: right;
	padding-top: 6px;
}

.btn_closing a {
	border-radius: 5px;
	display: block;
	height: 66px;
	text-align: center;
	box-shadow: 0 0 27px 4px rgba(0, 0, 0, 0.1);
	padding-top: 14px;
	background-color: #43bf00;
	animation: btn_closing_before 0.5s 1 linear both;
}

.btn_closing a:hover {
	animation: btn_closing_after 0.5s 1 linear both;
}

@keyframes btn_closing_before {
	from {
		-webkit-transform: translateY(5px);
		-ms-transform: translateY(5px);
		transform: translateY(5px);
		opacity: 0.75;
		box-shadow: 0 0 27px 3px rgba(0, 0, 0, 0.2);
	}
	to {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes btn_closing_after {
	from {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	to {
		-webkit-transform: translateY(5px);
		-ms-transform: translateY(5px);
		transform: translateY(5px);
		opacity: 0.75;
		box-shadow: 0 0 27px 3px rgba(0, 0, 0, 0.2);
	}
}

/*---------- 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: #f2f2f2;
}

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

#footer .logo {
	float: left;
	width: 355px;
}

#ssl {
	float: right;
	width: 282px;
	padding-top: 10px;
}

#ssl_seal {
	width: 121px;
	float: left;
}

#ssl p {
	width: 146px;
	float: right;
	font-size: 10px;
	line-height: 1.4;
}

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

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

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

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

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

.tl {
	border: 1px solid #cbcbcb;
	background-color: #fff;
}

.tl_inner {
	border-top: 10px solid #ffd3d3;
	padding: 25px 30px;
	display: flex;
	justify-content: space-around;
	align-items: flex-end;
}

.tl_inner h1,
.tl_inner h2 {
	color: #333;
	line-height: 1;
	font-size: 28px;
	margin-right: auto;
	font-weight: bold;
}

.tl_inner p {
	text-align: right;
	margin-left: auto;
	color: #666;
	line-height: 20px;
	font-size: 14px;
}

/* 段落 */

.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;
}

.fs10 {
	font-size: 10px;
}

.fs12 {
	font-size: 12px;
	line-height: 1.4;
}

.fs13 {
	font-size: 13px;
	line-height: 1.4;
}

.fs14 {
	font-size: 14px;
	line-height: 1.4;
}

.fs16 {
	font-size: 16px;
	line-height: 24px;
}

.fs18 {
	font-size: 18px;
	line-height: 28px;
}

.fs24 {
	font-size: 24px;
}

.fs25 {
	font-size: 25px;
}

/* 強調 */

.bold {
	font-weight: bold;
}

/* 赤字 */

.red {
	color: #d70012;
}

.gray {
	color: #888;
}

/* レイアウト */

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

.center {
	text-align: center;
}

.left {
	float: left;
}

.right {
	text-align: right;
}

.ml20 {
	margin-left: 20px;
}

.mt10 {
	margin-top: 10px;
}

.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;
}

.mb120 {
	margin-bottom: 120px;
}

.mrl60 {
	margin-right: 60px;
	margin-left: 60px;
}

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