@charset "UTF-8";
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	/* border-top: 3px solid #e60012; */
	color: #333333;
	font-size: 14px;
	/* margin-bottom: 500px; */
	min-width: 980px;
}
html {
	min-height: 100%;
	position: relative;
}
#pankuzu,
#container,
#container input,
#container button,
#container textarea {
	/*font-family: '小塚ゴシック Pro L','Kozuka Gothic Pro Light',sans-serif;*/
	/*font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック","MS PGothic",sans-serif;*/
	font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
}

#container button {
	cursor: pointer;
}

#container img {
	vertical-align: middle;
}
#container p img {
	vertical-align: baseline;
}

#pankuzu a,
#container a {
	color: #007dc4;
	text-decoration: none;
	cursor: pointer;
}

#pankuzu a,
#container a:hover,
a.hover {
	color: #52b4ed;
	text-decoration: underline;
}
#container a[href^="tel:"] {
	cursor: default;
	text-decoration: none;
}
#container form {
	display: inline;
}

/* ヘッダー
=====================================*/
/*
header {
	background: #fff;
	min-width: 980px;
	width: 100%;
}
header a {
	display: inline-block;
}
header img {
	vertical-align: top;
}
#h-top {
	margin: 0 auto 20px;
}
#h-top-l {
	float: left;
}
#h-top-r {
	float: right;
	margin-top: 20px;
	width: 370px;
}
#h-top-r a {
	text-decoration: none;
}
#h-logo {
	margin-top: 12px;
}
#h-nanji {
	margin-top: 8px;
}
#h-tel {
	float: left;
}
#h-info {
	display: inline-block;
}
#h-info a {
	padding: 11px 21px 11px 23px;
}
#h-menu > ul {
	height: 36px;
	margin: 0;
	text-indent: 0;
}
#h-menu > ul > li {
	border-right: 1px solid #b2b2b2;
	float: left;
	height: 21px;
	margin: 0;
	padding: 0;
	width: 25%;
}
#h-menu li:first-child {
	border-left: 1px solid #b2b2b2;
}
#h-menu > ul > li.what {
	width: 195px;
}
#h-menu > ul > li.lineup {
	width: 238px;
}
#h-menu > ul > li.example {
	width: 176px;
}
#h-menu > ul > li.r_and_d {
	width: 195px;
}
#h-menu > ul > li.glossary {
	width: 176px;
}
#h-menu > ul > li:before {
	display: none;
}
#h-menu > ul > li > a {
	color: inherit;
	display: block;
	height: 36px;
	font-size: 16px;
	font-weight: bold;
	padding: 2px 0;
	text-align: center;
	text-decoration: none;
}
#h-menu li.current > a, #h-menu > ul > li > a:hover {
	color: #bf1320;
	border-bottom: 3px solid #bf1320;
}
*/
/* ヘッダー end
=====================================*/

/* パンくず
=====================================*/
#pankuzu {
	background: #ebebeb;
	font-size: 12px;
	line-height: 100%;
	margin: 0 auto;
	padding: 15px 0;
}
#pankuzu ul {
	text-indent: 0;
}
#pankuzu li {
	display: inline-block;
	font-size: 12px;
	margin: 0;
	padding: 0;
}
#pankuzu li:before {
	background: none;
	content: '';
	height: auto;
	width: auto;
}
#pankuzu li:nth-child(n+2):before {
	content: '>';
	margin: 0 4px 0 0;
	vertical-align: baseline;
}
#pankuzu li:first-child {
	margin-left: 0;
}
#pankuzu a {
}
/* パンくず end
=====================================*/


/* レイアウト大
=====================================*/
.content-area {
	min-width: 980px;
}
.inner {
	margin: 0 auto;
	width: 980px;
}
.inner:after {
	clear: both;
	content: '';
	display: block;
}
.clearfix:after {
	clear: both;
	content: '';
	display: block;
}
#main-wrapper {
	margin-bottom: 80px;
}
#page-title {
	background: #f6f6f6;
	height: 200px;
	margin-bottom: 30px;
}
#container {
	float: left;
	font-size: 14px;
	margin-right: 20px;
	line-height: 1.6;
	width: 715px;
}
section {
/*background: #fff;*/
}
.section_inner {
	margin: 0 0 40px 25px;
}
.section_child:after {
	content: '';
	clear: both;
	display: block;
}
.section_child {
	margin-bottom: 40px;
}
.section_child_s {
	margin-bottom: 20px;
}
#submenu {
	float: right;
	width: 245px;
}
/* 見出し
=====================================*/
#page-title h1 {
	font-size: 24px;
	line-height: 200px;
}
h2 {
	background: #ebebeb;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 20px;
	padding: 13px 25px;
	position: relative;
}
h2:before {
	background: #e60012;
	content: '';
	display: block;
	height: -webkit-calc(100% - 36px);
	height: calc(100% - 36px);
	left: 0;
	position: absolute;
	top: 18px;
	width: 8px;
}
h3 {
	border-bottom: 2px solid #ebebeb;
	font-size: 18px;
	line-height: 1.5;
	padding-bottom: 4px;
	margin-bottom: 13px;
}
h4 {
	color: #e60012;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: .5em;
}
h5 {
	font-weight: bold;
	margin-bottom: .5em;
}
/* コンテンツ
=====================================*/
.content-area:not(#top) #container img {
	width: 100%;
}
main section + section {
	margin-top: 80px;
}
strong {
	color: #d40000;
	font-weight: normal;
}
figure figcaption {
	font-size: 13px;
	margin-top: 10px;
	text-align: center;
}
p {
	margin-bottom: 1em;
}
p.read {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.7;
}
p.attention {
	padding-top: 5px;
	font-size: 13px;
	
}
p.bg_radius {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	background: #faecee;
	padding: 30px;
}
.red_t {
	color: #bf1320;
}
.italic {
	font-style: italic;
}
/* リスト
=====================================*/
ul.list {
	text-indent: 1em;
}
ul.list li {
	font-size: 13px;
	margin: 0 0 7px 8px;
	padding-left: 15px;
}
ul li:last-child {
	margin-bottom: 0;
}
ul.list > li:before {
	background: #e60012;
	border-radius: 5px;
	content: "";
	display: inline-block;
	height: 5px;
	margin-left: -30px;
	margin-right: 10px;
	vertical-align: middle;
	width: 5px;
}
ul.list ul li:before {
	border: 2px solid #e60012;
	border-radius: 5px;
	content: "";
	display: inline-block;
	height: 3px;
	margin-left: -30px;
	margin-right: 10px;
	vertical-align: middle;
	width: 3px;
}
ul.list_typenone li {
	padding-left: 0;
}
ul.list_typenone li:before {
	display: none;
}
ul.list1_1 li {
	display: inline-block;
	width : -webkit-calc(50% - 17px);
	width: calc(50% - 17px);
}
ul.list1_1_1 li {
	display: inline-block;
	width : -webkit-calc(33% - 17px);
	width: calc(33% - 17px);
}
ul ul {
	/*margin-left: 0;*/
	margin: 5px 0;
}
ul ul li:before {
	background: #fff;
	border: 2px solid #e60012;
	height: 4px;
	margin: 0 8px 0 -15px;
	width: 4px;
}
ul.link_list li {
	display: inline-block;
	float: left;
	padding-right: 20px;
}
ul.link_list li:first-child {
	padding-left: 0;
}
ol {
}
ol li {
	list-style-type: decimal;
	margin-left: 18px;
	margin-bottom: 7px;
}
ol ol {
	/*margin-left: 6px;*/
	margin: 5px 0 5px 6px;
}
dl {
}
dt {
	color: #e60012;
	font-weight: bold;
}
dt:nth-child(n+2) {
	margin-top: 1.6em;
}
dd {
	margin-top: .4em;
}
/* リンク
=====================================*/
.link a:before, a .link:before {
	border-bottom: 4px solid transparent;
	border-left: 4px solid #e60012;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	content: '';
	display: inline-block;
	vertical-align: middle;
	margin-right: 8px;
}
.link-external a:before, a.link-external:before {
	background: url(../img/icon_external.gif);
	content: '';
	display: inline-block;
	margin-right: 8px;
	height: 9px;
	vertical-align: middle;
	width: 11px;
}
.link-pdf a:before, a.link-pdf:before {
	background: url(../img/icon_pdf.gif);
	content: '';
	display: inline-block;
	margin-right: 8px;
	height: 15px;
	vertical-align: middle;
	width: 12px;
}
ul img.icon_link {
	margin-left: 8px;
}
ul.yoko li {
	display: inline-block;
	margin-left: -8px;
	margin-right: 30px;
}
.link-box {
	background: #fff;
	border: 1px solid #662e00;
	color: #662e00;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	line-height: 42px;
	width: 330px;
}
.link-box:hover {
	background-color: #faf4dc !important;
}
.col img + p.link ,
.l_col img + p.link {
	margin-top: 10px;
}

/* テーブル
=====================================*/
table {
	width: 100%;
	font-size: 13px;
}
th {
	background: #ededed;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	color: #333333;
	font-weight: bold;
	line-height: 1.2;
	padding: 7px;
	text-align: center;
	vertical-align: middle;
}
td {
	background: #f7f7f7;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	padding: 10px 7px;
	text-align: center;
	vertical-align: middle;
}
.table_th2 th {
	background: #f3efeb;
	width: auto;
}
.table_th2 tr.th_row th {
	background: #ded3c8;
	width: auto;
}
.table_th2 th[colspan="2"] {
	width: 20%;
}
table span {
	font-size: 11px;
}

/* カラム系
=====================================*/
.pattern1_1:after, .pattern1_1_1:after, .pattern1_1_1_1:after, .pattern1_1_1_1_1:after, .pattern1_1_1_1_1_1:after, .pattern2_1:after, .pattern1_2:after, .pattern3_1:after, .pattern1_3:after {
	content: '';
	display: block;
	clear: both;
}
div[class*="pattern"] + div[class*="pattern"] {
	margin-top: 30px;
}
.col {
	margin-right: 30px;
}
.pattern1 .col {
	float: none;
	margin-right: 0;
}
figure {
	width: 100%;
}
.content-area:not(#top) .col img {
	width: inherit;
	height: inherit;
}
.col img + p {
	margin-top: 2em;
}
/* section_innerなし */
.pattern1_1 .col {
	float: left;
	margin-right: 19px;
	width: 348px;
}
.pattern1_1_1 .col {
	float: left;
	width: 216px;
	margin-right: 20px;
}
.pattern1_2 .l_col,
.pattern2_1 .r_col {
	width: 216px;
}
.pattern1_2 .l_col,
.pattern2_1 .l_col {
	margin-right: 20px;
}
.pattern1_2 .r_col,
.pattern2_1 .l_col {
	width: 454px;
}
.pattern2_1 .l_col,
.pattern2_1 .r_col,
.pattern1_2 .l_col,
.pattern1_2 .r_col {
	float: left;
}
.pattern1_1_1_1 .col {
	width: 165px;
	margin-right: 10px;
}
.pattern1_1_1_1_1 .col {
	margin-right: 20px;
	width: 176px;
}


/* section_innerあり*/
.section_inner .pattern1_1 .col {
	float: left;
	margin-right: 20px;
	width: 335px;
}
.section_inner .pattern1_1_1 .col {
	float: left;
	width: 216px;
	margin-right: 20px;
}
.section_inner .pattern1_2 .l_col,
.section_inner .pattern2_1 .r_col {
	width: 216px;
}
.section_inner .pattern1_2 .l_col,
.section_inner .pattern2_1 .l_col {
	margin-right: 20px;
}
.section_inner .pattern1_2 .r_col,
.section_inner .pattern2_1 .l_col {
	width: 454px;
}
.section_inner .pattern2_1 .l_col,
.section_inner .pattern2_1 .r_col,
.section_inner .pattern1_2 .l_col,
.section_inner .pattern1_2 .r_col {
	float: left;
}
.section_inner .pattern1_1_1_1 .col {
	width: 165px;
	margin-right: 10px;
}
.section_inner .pattern1_1_1_1_1 .col {
	margin-right: 20px;
	width: 176px;
}
.col:last-child, .pattern1_1 .col:nth-child(2n), .pattern2_1 .r_col:nth-child(2n), .pattern1_2 .l_col:nth-child(2n), .pattern1_1_1 .col:nth-child(3n), .pattern1_1_1_1 .col:nth-child(4n) {
	margin-right: 0;
}
.pattern1_2 .col:nth-child(2n+1), .pattern1_2 .col:nth-child(2n+1) img {
	width: 470px;
}
.pattern2_1 .col:nth-child(2n), .pattern2_1 .col:nth-child(2n) img {
	width: 307px;
}
/* サイドバー
=====================================*/
#sidenav li:before {
	display: none;
}
#sidenav li {
	margin: 0;
	padding: 0;
}
#top .col-r li.words a ,
#top .col-r li.qa a,
#sidenav a {
	color: inherit;
	display: block;
	text-decoration: none;
}
#side-main p {
	background: #333;
	border-radius: 5px 5px 0 0;
	color: #fff;
	margin: 0;
	text-align: center;
}
#side-main p a {
	background: none;
	padding: 30px 0;
}
#side-main p a:before {
	border: none;
	display: inline;
	margin: 0;
	padding: 0;
}
#side-main p img {
	vertical-align: top;
}
#side-main li:nth-child(n+2) {
	border-top: 1px dotted #ccc;
}
#side-main a {
	padding: 20px 30px;
}
#side-main a:before {
	border-bottom: 4px solid transparent;
	border-left: 4px solid #e60012;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	content: '';
	display: inline-block;
	margin-right: 6px;
	vertical-align: middle;
}
#side-main li.current a, #side-main li a:hover, #side-main ul .this_page {
	background: #ebebeb;
	color: #bf1320;
}
#side-sub {
	margin-top: 20px;
}
#side-sub ul li {
	font-size: 18px;
	margin-bottom: 10px;
}
#top .col-r a ,
#side-sub ul a {
	border: 2px solid #ccc;
	font-weight: bold;
	padding: 28px;
}
#top .col-r li a:hover ,
#side-sub ul a:hover {
	border-color: #bf1320;
	color: #bf1320;
}
#top .col-r li.words a,
#side-sub li.words a {
	background: url(../img/icon_words.png) no-repeat 156px center #ffffff;
	background-size: 42px 40px;
}
#top .col-r li.qa a,
#side-sub li.qa a {
	background: url(../img/icon_qa.png) no-repeat 156px center #ffffff;
	background-size: 42px 35px;
}
#top .col-r li.words a:before,#top .col-r li.qa a:before, 
#side-sub li.words a:before, #side-sub li.qa a:before {
	border-bottom: 4px solid transparent;
	border-left: 4px solid #e60012;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	content: '';
	display: inline-block;
	margin: 0 6px 3px 0;
	vertical-align: baseline;
}
#side-info {
	background: #ebebeb;
	font-size: 12px;
	padding: 30px 20px 20px;
	text-align: center;
}
#side-info p {
	font-weight: bold;
	margin-bottom: 5px;
}
#side-info .btn-info {
	color: #fff;
}
#side-btn {
	margin: 10px 20px;
}
#side-btn a {
	color: #fff;
}

/* カテゴリトップ
=====================================*/
.category_top #submenu, .category_top #bottom-info {
	display: none;
}
.category_top #container {
	width: 980px;
	margin: 0;
}
.category_top .pattern1_1_1 .col {
	width: 305px;
	margin-right: 20px;
}
.category_top .pattern1_1_1 .col:last-child {
	margin-right: 0;
}

/* ページトップ
======================================= */
#pageTop {
	display: block;
	bottom: 20px;
	position: fixed;
	right: 0;
}
#pageTop p {
	margin: 0;
}
#pageTop a {
	display: block;
	height: 80px;
	margin: 0 20px 0 0;
	width: 80px;
}

/* フッター
=====================================*/
/* 
footer {
	bottom: 0;
	background: #333;
	line-height: 100%;
	min-width: 980px;
	padding: 40px 0 0;
	position: absolute;
	width: 100%;
}
footer a {
	color: #fff;
	text-decoration: none;
}
footer a:hover {
	color: #fff;
}
#f-main {
	font-size: 14px;
	margin-bottom: 60px;
}
#f-main .col {
	float: left;
	margin-right: 20px;
	width: 225px;
}
#f-main p {
	font-size: 14px;
}
#f-main p:before {
	background: none;
	border-bottom: 4px solid transparent;
	border-left: 4px solid #fff;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	content: '';
	display: inline-block;
	height: 0;
	margin-right: 7px;
	width: 0;
}
#f-main p:nth-child(n+2), #f-main ul {
	margin-top: 16px;
}
#f-main ul li {
	padding: 0;
}
#f-main ul li:before {
	background: #dcdcdc;
	content: "";
	display: inline-block;
	height: 3px;
	margin: 0 10px 0 0;
	vertical-align: middle;
	width: 3px;
}
#f-main ul a {
	color: #dcdcdc;
	font-size: 12px;
	margin: 0;
}
#f-main li:nth-child(n+2) {
	margin-top: 13px;
}
#f-bottom {
	border-top: 1px solid #585858;
	font-size: 12px;
	padding: 20px 0;
}
#f-link {
	width: 650px;
}
#f-link ul {
	text-indent: 0;
}
#f-link li {
	float: left;
	font-size: 12px;
	margin: 0 30px 0 0;
	padding: 0;
}
#f-link li a:before {
	background: none;
	border-bottom: 4px solid transparent;
	border-left: 4px solid #fff;
	border-right: 0 solid transparent;
	border-top: 4px solid transparent;
	content: '';
	display: inline-block;
	height: 0;
	margin-right: 7px;
	width: 0;
}
#f-link li a.link-external:before {
	border: none;
	background: url(../img/icon_external_wh.gif);
	content: '';
	display: inline-block;
	margin-right: 8px;
	height: 9px;
	vertical-align: middle;
	width: 11px;
}
#f-link li:last-child {
	margin-left: 0;
}
#copyright {
	color: #fff;
	text-align: right;
	float: right;
} */
/* 共通パーツ
=====================================*/
/* ホバーアクション */
div:not(#h-bottom) a:hover img {
	opacity: 0.8;
	-moz-opacity: 0.8;
	filter: alpha(opacity=80);
}
.tel a {
	color: inherit;
	font-size: 16px;
	font-weight: bold;
	line-height: 34px;
}
.tel img {
	vertical-align: sub;
	margin-right: 2px;
}
a.btn-info {
	background: #bf1320;
	color: #fff;
	display: block;
	font-size: 12px;
	line-height: 100%;
	padding-top: 11px;
	padding-bottom: 11px;
	text-decoration: none;
}
a.btn-info:before {
	background: url(../img/icon_btn_info.png) no-repeat;
	background-size: 20px 14px;
	content: '';
	display: inline-block;
	height: 14px;
	margin-right: 10px;
	vertical-align: top;
	width: 20px;
}
#bottom-info {
	background: #ebebeb;
	margin-top: 80px;
	padding: 42px 60px 41px 51px;
}
#bottom-info p {
	font-size: 18px;
	font-weight: bold;
	margin: 0;
}
#bottom-info p.tel a {
	font-size: 21px;
	color: inherit;
}
#bottom-info p.tel img {
	vertical-align: middle;
	width: inherit !important;
}
#bottom-info .col-l {
	float: left;
	text-align: center;
	width: 273px;
}
#bottom-info .col-r {
	float: right;
	width: 273px;
}
#bottom-info .btn-info {
	font-size: 16px;
	text-align: center;
	padding: 20px 0;
	color: #FFF;
}
#bottom-info:after {
	content: '';
	clear: both;
	display: block;
}
#bottom-info .btn-info:hover {
	opacity: 0.8
}
/* 部分装飾
=====================================*/
.t_right {
	text-align: right !important;
}
.t_left {
	text-align: left !important;
}
.t_center {
	text-align: center !important;
}
.inline-block {
	display: inline-block !important;
}
.img_trans:hover {
	opacity: 0.8;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}

.footer-link,
.nav-link {
	font-size: 16px;
}