@charset "utf-8";
/*
Theme Name: responsive_088
Theme URI: http://c-tpl.com/
Description: responsive_088
Version: 1.0
Author: Cloud template
Author URI: http://c-tpl.com/
Tags: simple

	Cloud template v1.0
	 http://c-tpl.com/

	This theme was designed and built by Cloud template,
	whose blog you will find at http://c-tpl.com/

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img {border: 0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}

body{
font:80%/1.5 "Lucida Sans Unicode", "Lucida Grande", Arial, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
color:#252525;
-webkit-text-size-adjust: none;
background:url(images/bg.png);
}


/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color:#777;
}

a:hover, a:active{
-webkit-transition:opacity 1s;-moz-transition:opacity 1s;-o-transition:opacity 1s;
outline: none;
color:#999;
}


/**** Clearfix ****/
nav .panel:after, nav#mainNav:after, .newsTitle:after, .bg:after,.post:after{content:""; display: table;clear: both;}
nav .panel,nav#mainNav,.newsTitle,.bg, .post{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"], textarea{
	vertical-align:middle;
	max-width:90%;
	line-height:30px;
	height:30px;
	padding:1px 5px;
	border:1px solid #d4d4d7;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	font-size:100%;
	color:#555;
	background:#fcfcfc;
}
textarea{
	height:auto;
	line-height:1.5;
}
input[type="submit"],input[type="reset"],input[type="button"]{
	padding:3px 10px;
	background: #c01a1a;
	background: -moz-linear-gradient(top, #c01a1a 0%, #a31717 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#c01a1a), color-stop(100%,#a31717));
	background: -webkit-linear-gradient(top, #c01a1a 0%,#a31717 100%);
	background: -o-linear-gradient(top, #c01a1a 0%,#a31717 100%);
	background: -ms-linear-gradient(top, #c01a1a 0%,#a31717 100%);
	background: linear-gradient(to bottom, #c01a1a 0%,#a31717 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c01a1a', endColorstr='#a31717',GradientType=0 );
	border:0;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	line-height:1.5;
	font-size:100%;
	color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
	background: #c01a1a;
	background: -moz-linear-gradient(top, #a31717 0%, #c01a1a 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#a31717), color-stop(100%,#c01a1a));
	background: -webkit-linear-gradient(top, #a31717 0%,#c01a1a 100%);
	background: -o-linear-gradient(top, #a31717 0%,#c01a1a 100%);
	background: -ms-linear-gradient(top, #a31717 0%,#c01a1a 100%);
	background: linear-gradient(to bottom, #a31717 0%,#c01a1a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a31717', endColorstr='#c01a1a',GradientType=0 );
}

*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
#front_wrapper, .inner {
	margin:0 auto;
	width:960px;
}
#wrapper {
	margin:0 auto 50px;
	width:960px;
}
#header{
	overflow:hidden;
	background:#fff;
}
#header .inner{
	width: 95%;
}
#content{
	float:left;
	width:710px;
	padding:0 auto 30px;
}
#sidebar{
	float:right;
	width:225px;
	padding:0 0 30px;
}
#footer{
	clear:both;
	padding-top:20px;
	background:#fff;
}

/* ヘッダー
*****************************************************/
#header .bg{background:#eeeeee;}

/* サイト説明文 + 住所
----------------------------------*/
#header h1,#header p{
	float:left;
	padding:3px 0;
	color: #000;
	font-size:80%;
	font-weight:normal;
}
#header p{
	float:right;
}

#header .pc {
	display: block;
} 


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
	clear:both;
	float:left;
	padding:30px 0;
	color: #515151;
	font-size:160%;
	font-weight:bold;
}

/* サブナビゲーション
----------------------------------*/
#header ul{
	float:right;
}
#header ul li{
	display: inline;
	margin-left: 10px;
	font-size: 12px;
	font-weight: 500;
}
#header ul li a{
	/*--padding-left:10px;
	color:#252525;
	background:url(images/arrowSub.png) no-repeat 0 50%;--*/
}

#header ul li a:hover{background-position:3px 50%;}

/* トップページ　メイン画像
----------------------------------*/
#mainImg{
	clear:both;
	margin-top:25px;
	line-height:0;
	text-align:center;
	z-index:0;
}
.post{
	margin:0 0 20px 0;
	padding:10px;
	border:1px solid #dadada;
	background: #fff;
}
.wideslider {
	margin: 0px auto 40px;
}

/* タイポグラフィ
*****************************************************/
h2.title{
	clear:both;
	margin:30px 0 0;
	padding:7px 10px;
	font-size:100%;
	border:1px solid #dadada;
	border-bottom:0;
	background:#fff url(images/border.png) repeat-x 0 100%;
}
h2.first{margin-top:0;}
.dateLabel{
	margin:0 0 10px;
	text-align:right;
	font:italic 1em "Palatino Linotype", "Book Antiqua", Palatino, serif;
}
.post p{
	padding-bottom:15px;
}
.post ul{
	margin: 0 0 10px 10px;
}
.post ul li{
	margin-bottom:5px;
	padding-left:15px;
	background:url(images/bullet.png) no-repeat 0 8px;
}
.post ol{
	margin: 0 0 10px 30px;
}
.post ol li{
	list-style:decimal;
}
.post h1{
	margin:20px 0;
	padding:5px 0;
	font-size:100%;
	color: #252525;
	border-bottom:3px solid #ccc;
}
.post h2{
	margin:10px 0;
	padding-bottom:2px;
	font-size:130%;
	font-weight:normal;
	color: #333;
	border-bottom:2px solid #515151;
}
.post h3{
	margin:10px 0;
	font-size:120%;
	font-weight:bold;
	background:#555;
	color:#fff;
	padding: 5px 10px;
	border-bottom:2px solid #ccc;
	overflow: hidden;
}
.catalog_box {
	margin: 0 10px;
	overflow: hidden;
}
.post blockquote {
	clear:both;
	padding:10px 0 10px 15px;
	margin:10px 0 25px 30px;
	border-left:5px solid #ccc;
}
.post blockquote p{padding:5px 0;}

.post table{
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
	margin:0 auto 10px;
	font-family: serif;
}
.post table th{
	padding:7px 10px 7px 5px;
	border: 1px #ccc solid;
	font-weight:bold;
	background:#f2f2f2;
}
.post table td{
	padding:7px 5px;
	border: 1px #ccc solid;
	background:#fff;
}
.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

.post img{max-width:100%;height:auto;}

img.aligncenter {
	display: block;
	margin:5px auto;
}
img.alignright, img.alignleft{
	padding:4px;
	margin:0 0 2px 7px;
	display:inline;
}
img.alignleft{margin: 0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float: left;}

/* サイドバー　ウィジェット
*****************************************************/
section.widget, .widgetInfo{
	margin: 0 0 20px;
	padding: 10px 7px;
	border:1px solid #dadada;
	background: #fff;
}
#side_company {
	padding: 0;
}
#side_company .companyTitle {
    clear: both;
    margin: 0 0 10px;
    padding: 10px 5px;
    font-size: 100%;
    color: #FFF;
    border-bottom: 1px solid #ccc;
	background: #000;
}
#side_company .company_info {
	margin: 0 5px 10px;
}

#banners img{
	max-width:225px;
	height:auto;
	padding-bottom:10px;
}

section.widget h3{
	clear:both;
	margin:0 0 10px;
	padding:5px 0;
	font-size:100%;
	font-weight:normal;
	color: #333;
	border-bottom:1px dotted #ccc;
}

section.widget a{
	display:block;
	padding:3px 0 3px 13px;
	text-decoration:underline;
	background:url(images/arrow.png) no-repeat 0 50%;
}

section.widget a:hover{
	text-decoration:none;
	background-position: 3px 50%;
}

#searchform input[type="text"]{
	line-height:1.7;
	height:24px;
	width:100px;
	vertical-align:bottom;
}


/* お知らせ　
-------------*/
.newsTitle{
	clear:both;
	margin:0 0 20px;
	padding:5px 0;
	font-size:100%;
	color: #333;
	border-bottom:1px dotted #ccc;
}

.newsTitle h3{
	float:left;
	font-weight:normal;
}

.newsTitle p{
	float:right;
	padding:0 0 0 10px;
	font-size:.8em;
	background:url(images/arrow.png) no-repeat 0 50%;
}

.news p{
	clear:both;
	padding-bottom:2px;
	border-bottom: 1px dotted #ccc;
}

.news p:last-child{border:0;}

.news p a{
	display:block;
	padding:5px 0;
	color:#333;
	font-style:italic;
	font:italic 110% "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.news a span{
	color:#515151;
	font:normal 90% Arial, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
}

.news span{padding-left:10px;}

.news a:hover span{color:#777;}

#pagination {
	text-align:center;
	margin:0 auto;
}

#pagination a {
	text-align:center;
	margin: 5px;
	font-size:1.2em;
	padding:3px 7px;
	display:inline-block;
	border:1px solid #c01a1a;
}
#pagination a:link    { color:#ffffff; background:#c01a1a; }
#pagination a:visited { color:#ffffff; background:#c01a1a; }
#pagination a:hover   { color:#ffffff; background:#a31717; }
#pagination a:active  { color:#ffffff; background:#a31717; }

#pagination a.pagination-active         { color:#c01a1a; background:#ffffff;}
#pagination a.pagination-active:link    { color:#c01a1a; background:#ffffff;}
#pagination a.pagination-active:visited { color:#c01a1a; background:#ffffff;}
#pagination a.pagination-active:hover   { color:#ffffff; background:#a31717;}
#pagination a.pagination-active:active  { color:#ffffff; background:#a31717;}

/* フッター
*****************************************************/
#footer ul{
	padding-bottom:30px;
	font-size:85%;
}
#footer ul li{
	display:inline-block;
	vertical-align:text-top;
	text-align:left;
	padding:5px 0;
	margin:0 2em 0 0;
	background:url(images/arrow.png) no-repeat 0 12px;
}
#footer ul li	a{
	display:block;
	padding:0 0 0 12px;
	overflow:hidden;
}
#footer ul li	a:hover{text-decoration:underline;}
#footer ul li li{
	display:block;
	padding:0;
	margin:0 0 0 10px;
	background-position:0 5px;
}
*:first-child+html #footer ul li{display:inline;}
*:first-child+html #footer ul ul,*:first-child+html #footer ul li li a,*:first-child+html #footer ul li li{display:none;}

#copyright{
	clear:both;
	padding:10px;
	text-align:center;
	font-size:75%;
	zoom:1;
	color:#fff;
	background:#2b2b2b;
}

/* page navigation
------------------------------------------------------------*/
.pagenav{
	clear:both;
	width: 100%;
	height: 30px;
	margin: 5px 0 20px;
}
.prev{float:left}

.next{float:right;}

#pageLinks{
	clear:both;
	color:#c01a1a;
	text-align:center;
}

/* トップページ 最新記事3件
------------------------------------------------------------*/
.thumbWrap{
	width:735px;
	margin:20px -25px 20px 0;
}
.thumbWrap li{
	float:left;
	width: 220px;
	margin:0 25px 0 0;
	padding:2px 0 40px;
	background:none;
}

/* 最新記事リンク */
ul.thumb h3{
	margin-top:10px;
	padding:1px;
	font-weight:normal;
	font-size:100%;
	text-align:center;
	background:#fff;
	border:1px solid #dadada;
}
ul.thumb h3 span{
	display:block;
	padding:2px 3px;
	background:#fff;
}
ul.thumb h3 a{color:#252525;}
ul.thumb h3:hover span{background:#f3f3f3;}

/* メインメニュー　PC用
------------------------------------------------------------*/
/*--
@media only screen and (min-width: 1025px){
nav#mainNav{
	clear:both;
	position:relative;
	z-index:200;
	background:#202020;
}
nav#mainNav .inner{
	width: 90%;
}
nav#mainNav ul {
	width: 100%;
	height: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-around;
	justify-content: space-around;
	-webkit-align-items: stretch;
	align-items: stretch;
}
nav#mainNav ul li{
	/*float: left;
	position: relative;
	border-right: 1px solid #3a3a3a;
	width: 15%;
	height: auto;
}
nav#mainNav ul li:first-child {
	border-left:1px solid #3a3a3a;
}
nav#mainNav ul li a{
	display: flex;
	text-align: center;
	color: #fff;
	padding: 0;
	justify-content: center;
	align-items: center;
	height: 70px;
	flex-direction: row;
}
nav#mainNav ul li a span {
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.4;
}
nav#mainNav ul li a strong {

}
nav#mainNav ul li a span{
	display: none;
	font-family: 'Rajdhani', sans-serif;
	font-size: 14px;
	color: #5b5b5b;
	padding: 8px 0 0;
}
nav#mainNav ul li.current-menu-item a,
nav#mainNav ul li a:hover,
nav#mainNav ul li a:active,
nav#mainNav ul li.current-menu-parent a{
	background:#000;
}
nav#mainNav ul ul{width:160px;}

nav#mainNav ul li ul{display: none;}

nav#mainNav ul li:hover ul{
	display: block;
	position: absolute;
	top:60px;
	left:-2px;
	z-index:500;
}
nav#mainNav ul li li{
	padding:0 0 0 10px;
	margin:0;
	float: none;
	height:40px;
	line-height:40px;
	width:160px;
	background:#a31717;
	border:0;
	border-bottom:1px solid #dd5050;
}
nav#mainNav ul li li:first-child{border-left:0;}

nav#mainNav ul li li a{
	width:100%;
	height:40px;
	padding:0;
	line-height:40px;
	font-size:14px;
	text-align:left;
}

nav#mainNav ul li li a span{padding:0 10px;}

nav#mainNav ul li li a:hover,nav#mainNav ul li li.current-menu-item a{color:#edcbcb;}

nav#mainNav ul li:hover ul li:last-child{border:0;}

nav div.panel{
	display:block !important;
	width: 100%;
	float:left;
}

a#menu{display:none;}

}
--*/

/* 追加 */
.breadcrumbs {
margin: 20px auto 10px;
}
.breadcrumbs .post {
	border: none;
	background: none;
}
@media only screen and (max-width: 959px){

	.breadcrumbs {
		margin-left: 15px;
	}

}
.bigbnr {
margin:0 0 50px ;
display: flex;
flex-wrap: wrap;
flex-direction: row;
justify-content: center;
gap: 10px;
}
.bigbnr li {
width:24%;

}
.bigbnr li img {
width:100%;
}

a:hover img.hover {
opacity: 0.9;
filter: alpha(opacity=90);
-ms-filter: "alpha(opacity=90)";
}

.map {
width:100%;
height:300px;
}
.post ul.list-item {
margin:0;
}
.post ul.list-item li {
background:none;
padding:0;
}
.post ul.list-item h3 {
background:#2b5992;
}

.post ul.list-item li .box-img {
float:left;
width:38%;
text-align:center;
}
.post ul.list-item li .box-img img {
max-width:100%;
display:block;
margin:0 auto 10px ;
}
.post ul.list-item li .box-img span {
display:block;
}
.post ul.list-item li .box-img span a {
display:inline-block;
width:31%;
margin:1%;
}
.post ul.list-item li .box-img span a img {
margin:0;
}


.btn-pdf {
text-align:right;
margin:10px 0 0 0;
}

.btn-pdf a {
	border-radius: 5px;         /* css3 */
	-webkit-border-radius: 5px; /* Safari,Google Chrome */
	-moz-border-radius: 5px;    /* Firefox */
	-webkit-transition: all .3s;
	transition: all .3s;
	padding:7px 10px;
	font-weight:bold;
	display:inline-block;
}

.btn-pdf a:before {
font-family:FontAwesome;
content: '\f15c' ;
padding:0 5px 0 0 ;
}

.btn-pdf a:link    { color:#333333; text-decoration:none; background:#c6d2e7;}
.btn-pdf a:visited { color:#333333; text-decoration:none; background:#c6d2e7;}
.btn-pdf a:hover   { color:#ffffff; text-decoration:none; background:#c01a1a;}
.btn-pdf a:active  { color:#ffffff; text-decoration:none; background:#c01a1a;}



.post ul.list-item li .box-detail {
float:right;
width:60%;
}
.post ul.list-item li .box-detail h4 {
font-weight:bold;
padding:0 5px;
border-bottom:2px solid #555;
font-size:1.2em;
margin:0 auto 10px;
}

.must {
font-weight:bold;
color:#c61818;
}
#header .inner-in {
float:right;
width:600px;
margin:20px 0 0 0;
}
div.counter {
text-align:right;
margin:10px 0 0 ;
color:#bbb;
}

#header p.email {
float:right;
}

.intropic {
margin:0 15px 0 0;
float:left;
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	nav#mainNav{
	clear:both;
	width:98%;
	margin:10px auto;
	border:1px solid #d5d5d5;
	}

	nav#mainNav a.menu{
	width:100%;
	display:block;
	height:37px;
	line-height:37px;
	font-weight: bold;
	text-align:left;
  background:#fff url(images/menuOpen.png) no-repeat 5px 8px;
	}

	nav#mainNav a#menu span{padding-left:35px;}

	nav#mainNav a.menuOpen{
	background:#fff url(images/menuOpen.png) no-repeat 5px -34px;
	}

	nav#mainNav a#menu:hover{cursor:pointer;}

	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}

	nav#mainNav ul{margin:0;padding:0;}

	nav#mainNav ul li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	nav#mainNav ul li:first-child{border-top:1px solid #d5d5d5;}
	nav#mainNav ul li li:first-child{border-top:0;}

	nav#mainNav ul li a,nav#mainNav ul li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	border-bottom:1px dashed #ccc;
	background:#fff;
	}

	nav#mainNav ul li:last-child a{border:0;}
	nav#mainNav ul li li:last-child a{border:0;}
	nav#mainNav ul li li:last-child a{border-bottom:1px dashed #ccc;}

 	nav#mainNav ul li a span{display:none;}

	nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:hover,nav#mainNav ul li.current-menu-item a,nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active{
	background:#f6f6f6;
	}

	nav#mainNav ul li li{
	float:left;
	border:0;
	}

	nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a{
  padding-left:40px;
	background:#fff url(images/sub1.png) no-repeat 20px 18px;}

	nav#mainNav ul li li.current-menu-item a,nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover{
		background:#f6f6f6 url(images/sub1.png) no-repeat 20px -62px;}

	nav#mainNav ul li li:last-child a{background:#fff url(images/subLast.png) no-repeat 20px 20px;}
	nav#mainNav ul li li:last-child.current-menu-item a,nav#mainNav ul li li:last-child a:hover,nav#mainNav ul li.current-menu-item li:last-child a:hover{background:#f6f6f6 url(images/subLast.png) no-repeat 20px -65px;}

	nav div.panel{float:none;}

	#mainImg{margin-bottom:20px;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
	#wrapper, #header, .inner{width:100%;}

	#header h1, #header p{padding:5px 10px;}
	#header h2{padding:20px 10px 0;}
	#header ul{padding:10px;}

	nav#mainNav ul, .thumbWrap{margin:0 auto;}
	nav#mainNav ul ul{padding:0;}

	nav div.panel{float:none;}

	#mainImg img{width:98%;height:auto;}

	#content, #sidebar{
		clear:both;
		width:95%;
		float:none;
		margin:0 auto;
		padding:10px 0;
	}

	#banners{width:100%;margin:0 auto;text-align:center;}
	#banners p{display:inline;margin:0 10px;}
	#banners p img{width:100%;height:auto;}

	section.widget_search{text-align:center;}

	#footer{margin:0;border:0;text-align:center;}

	#footer ul{	text-align:center;	}
	#footer ul li{margin-right:20px;}
	.thumbWrap{
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
		width:100%;
		margin:0 auto;
		padding-top:20px;
		overflow:auto;
		border:1px solid #dadada;
	}
	.thumbWrap ul.thumb li{width:30%; float:left;margin:0 1% 0 2%;}
	.thumbWrap img{width:100%;height:auto;}

	.bigbnr {
		margin:0  ;
	}
	.post table.flat th,
	.post table.flat td {
		display:block;
		width:98%;
		padding:1%;
	}
	.post table.flat td .size-full {
		width:98%;
	}
	.post ul.list-item li .box-img,
	.post ul.list-item li .box-detail {
		float:none;
		width:100%;
	}
	div.counter {
		text-align:center;
	}
	#header p.email {
		float:none;
		margin:10px auto 0;
	}
	.fleft,
	.fright {
		margin:0 auto 10px !important;
		float:none !important;
		display:block !important;
		max-width:100% !important;
	}

}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#header{text-align:center;}
	#header h1,#header p{float:none;}
	#header h2,#header ul{float:none;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
	#footer ul{text-align:left;padding:15px;}
	#footer ul ul{padding:0;}
}


/* 新メニュー(2024.10~
------------------------------------------------------------*/
body #header {
	font: unset;
    font-family: "Noto Sans JP", sans-serif;
    color: #252525;
}
#header .inner {
    width: 100%;
}

#header h2 {
    margin-left: 40px;
    padding: 0;
    position: relative;
    top: 4px;
}

#header h2 img {
	width: 180px;
}

#header .top_menu_wrap {
	display: flex;
    align-items: center;
    justify-content: space-between;
	height: 90px;
}

#header .top_menu_wrap .right_box {
	display: flex;
    align-items: center;
	width: 100%;
	height: 100%;
	justify-content: flex-end;
	gap: 30px;
}
#header .top_menu_wrap .right_box .btn {
    height: 60px;
    border-radius: 4px;
    width: 200px;
    background: #DF002C;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-weight: 700;
    margin-right: 40px;
    position: relative;
}
#header .top_menu_wrap .right_box .btn img {
	width: 24px;
	height: 18px;
	margin-right: 8px;
}

#header .top_menu_wrap .right_box .inner_wrap {
	display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 10px;
}

#header .top_menu_wrap .wrap {
    display: flex;
    align-items: flex-start;
    gap: 2px;
    flex-direction: column;
}

#header .top_menu_wrap .wrap a ,
#header .top_menu_wrap .wrap p {
	font-size: 14px;
	font-weight: 700;
	color: #252525;
	margin: 0;
	padding: 0;
}

#header .top_menu_wrap .line {
	border-left: 1px solid #dbdbdb;
    width: 1px;
    height: 50px;
}

#header .top_menu_wrap .wrap span {
	color: #DF002C;
	margin-right: 2px;
}
#header .top_menu_wrap ul {
	display: flex;
    flex-direction: row;
    margin: 0;
	padding: 0;
    gap: 30px;
}

#header .top_menu_wrap ul li {
	font-size: 15px;
	font-weight: 700;
    margin: 0;
	padding: 0;
}
#header .top_menu_wrap ul li a{
	background: none;
    margin: 0;
	padding: 0;
	position: relative;
}

#header .top_menu_wrap ul li a:hover {
	color: #DF002C;
	transition: 0.2s;
}

#header .top_menu_wrap .right_box .inner_wrap .sub_menu li {
	font-size: 14px;
}

#header .bottom_menu_wrap ul li a:hover{
	border-bottom: 1px solid #DF002C;
    padding-bottom: 4px;
	transition: 0.2s;
}
#header .top_menu_wrap .right_box .btn:hover {
	background: #8B001B;
	transition: 0.2s;
}
#header .color_bar {
	display: flex;
    width: 100%;
    height: 4px;
    background: #DF002C;
}

#header .top_menu_wrap .right_box .inner_wrap .main_menu li a:hover::after {
	content: "";
    width: 100%;
    height: 4px;
    background: #DF002C;
    position: absolute;
    bottom: -20px;
    left: 0;
	transition: 0.2s;
}

@media screen and (max-width: 1320px){
	#header .top_menu_wrap ul {
		gap: 20px;
	}
	#header .top_menu_wrap .right_box {
		gap: 15px;
	}
	#header .top_menu_wrap .right_box .btn {
		width: 160px;
		margin-right: 20px;
	}
	#header .top_menu_wrap .wrap a,
	#header .top_menu_wrap .wrap p {
		font-size: 13px;
	}
	#header .top_menu_wrap ul li {
		font-size: 14px;
	}
}


/* レスポンシブメニュー
------------------------------------------------------------*/
#header .pc ,
#mainNav {
	display: block;
 }
 #header .sp ,
 #nav_sp {
	display: none;
 }

@media screen and (max-width: 1120px){
	#header .pc ,
	#mainNav {
	display: none;
 }
 #header .sp {
	display: block;
 }

#nav_pc {
	display: none;
}
#nav_sp{
	display: block;
	height: 75px;
}
#header h1, #header p {
	float: none;
}
#menu{
	display: none;
	background: #fff;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	margin: 0 auto;
	z-index: 999;
	position: fixed;
}
#menu li {
	text-align: left;
	border-bottom: 1px solid #e9e9e9;
}
#menu li a {
	font-size: 15px;
	font-weight: 700;
	text-decoration: none;
	display: block;
	padding: 10px 0 10px 0px;
}
#menu li a:hover {
	color: #717171;
}
#sp-icon {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	right: 4vw;
	top: 13px;
	z-index: 9999;

	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	position: fixed;
	z-index: 9999;
}
#sp-icon:hover {
	cursor: pointer;
}
#sp-icon span,
#sp-icon span:before,
#sp-icon span:after {
	display: inline-block;
	width: 25px;
	height: 2px;
	position: absolute;
	transition-property: transform;
	transition-duration: 0.3s;
	background: #252525;
}
#sp-icon span {
	left: 50%;
	top: 50%;
	transform: translate( -50%, -50% );
}
#sp-icon span:before {
	content: "";
	transform: translateY( -10px ) rotate( 0deg );
}
#sp-icon span:after {
	content: "";
	transform: translateY( 10px ) rotate( 0deg );
}
.sp-open span {
	background: transparent !important;
}

.sp-open span:before {
	transform: rotate( 45deg ) !important;
}

.sp-open span:after {
	transform: rotate( -45deg ) !important;
}
.menu_bg {
	display: flex;
	width: 100%;
	height: 100vh;
	justify-content: center;
	padding: 85px 0 0;
	background: #FFFFFF;
	top: 0px;
	position: relative;
	z-index: 9999;
}
.menu_bg::before {
	content: "";
	position: absolute;
	top: 0;
	height: 4px;
	width: 100%;
}

.menu_bg .sp_logo {
	position: absolute;
	left: 4vw;
	top: 10px;
	max-width: 200px;
	width: 100%;
}
.menu_bg .sp_logo p {
	margin-bottom: 2px;
}

#nav_sp .sub_menu {
	background-color: #222222;
	width: 100%;
	display: flex;
	flex-direction: row;
	align-items: center;
	padding-top: 0px;
}

#nav_sp ul {
	display: flex;
    width: 90%;
    flex-wrap: wrap;
	justify-content: space-between;
}
#header ul li {
	width: 46%;
	display: flex;
	align-items: center;
}

#nav_sp .sub_menu li a{
	border: none;
	color: #dfdfdf;
	font-size: 11px;
	text-align: center;
	padding: 10px;
}
#nav_sp .sub_menu li{
	width: 90%;
	border-top: none;
	margin-top: 10px;
	padding: 0
}
.menu_bg nav {
	width: 100%;
	position: relative;
}
.menu_bg .inner {
	display: flex;
	width: 100%;
	justify-content: center;
	flex-direction: column;
	align-items: center;
	background: #fff;
}
.menu_bg .inner ul {
	width: 90%;
}

.child {
	display: none;
}
#nav_sp .contact_wrap {
	display: flex;
	flex-direction: column;
	gap: 30px;
	padding-top: 30px;
	align-items: center;
	padding-bottom: 30px;
}

#nav_sp .contact_wrap .tel_btn ,
#nav_sp .contact_wrap .contact_btn  {
	border: 2px solid #FFFFFF;
	border-radius: 3px;
	height: 80px;
	width: 290px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#nav_sp .contact_wrap .contact_btn  {
	background: #252525;
}

#nav_sp .contact_wrap img{
margin-right: 10px;
}

#nav_sp .contact_wrap .tel_btn{
	font-size: 20px;
	font-weight: 700;
	color: #FFFFFF;
}

#nav_sp .contact_wrap .contact_btn{
	font-size: 16px;
	font-weight: 700;
	color: #252525;
	margin-left: 0;
}
.sp-accordion{
	position: relative;
}

.sp-accordion-inner  a {
	padding-left: 12px;
}
#nav_sp .inner .logo_area {
	width: 90%;
}
#nav_sp .inner .logo_area h1 {
	padding:10px;
}
header h1 {
	padding: 10px 0;
}

header .logo_area {
	padding: 0;
	height: 100%;
	display: flex;
	align-items: center;
}
   .menu_bg {
	padding: 75px 0 0;
}
.menu_bg .inner {
	position: relative;
}
#sp-icon {
	width: 40px;
	height: 40px;
	top: 18px;
	text-align: left;
}
#nav_sp .sub_menu {
	flex-direction: row;
	position: relative;
}
#nav_sp .contact_wrap {
	position: relative;
	gap: 12px;
	padding-top: 20px;
}
#nav_sp .contact_wrap .tel_btn, 
#nav_sp .contact_wrap .contact_btn {
	height: 60px;
}
#nav_sp .sub_menu a {
	margin:unset !important;
}
.menu_bg nav {
	top: 0;
	height: 100vh;
	overflow-y: scroll;
}
.menu_bg {
	top: 0;
}
.menu_bg .sp_logo {
	top:0;
	height: 75px;
	display: flex;
	align-items: center;
}

#nav_sp .btn {
	background: #164682;
    padding: 6px 18px;
    color: white;
    font-weight: 600;
    display: flex;
    width: 240px;
    height: 40px;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
}

#nav_sp .title_p {
	font-size: 18px;
    font-weight: 700;
	border-bottom: 1px solid #252525;
	width: 90%;
	margin-top: 20px;
	padding-bottom: 10px;
	display: flex;
	justify-content: center;
}

#nav_sp .contact_wrap {
	width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
	padding: 0;
}
#nav_sp .contact_wrap .wrap {
	display: flex;
    align-items: center;
    column-gap: 40px;
}

#nav_sp .contact_wrap .wrap p ,
#nav_sp .contact_wrap .wrap a {
	font-size: 18px;
	color: #252525;
	font-weight: 500;
}


.wideslider {
	margin: 0px auto 40px;
}
#nav_sp .logo_area a img {
	left: 4vw;
    position: relative;
}
#nav_sp li span {
	font-size: 11px;
    letter-spacing: -1px;
}

#nav_sp .contact_wrap .wrap span {
	color: #c01a1a;
    font-family: 'Rajdhani', sans-serif;
	font-weight: 700;
}
}

@media screen and (max-width: 960px){
	#nav_sp ul {
		width: 95%
	}
}

@media screen and (max-width: 640px){
	#nav_sp ul {
		width: 100%
	}
    #menu li a {
        font-size: 12px;
		padding: 8px 0 8px 0px;
	}
	#nav_sp .title_p {
        font-size: 16px;
		margin-top: 0;
	}
	#nav_sp .wrap p ,
	#nav_sp .wrap a {
		font-size: 16px !important;
	}
	#nav_sp .contact_wrap .wrap {
		flex-direction: column;
	}
	.menu_bg .sp_logo h1 a img,
	#nav_sp .logo_area a img {
		width: 160px;
	}
	#nav_sp .contact_wrap {
		gap: 8px;
	}
	#nav_sp .contact_wrap .wrap p {
		padding-bottom: 2px;
	}
}



/* TOP・組織概要の追加・変更
------------------------------------------------------------*/

/* TOP製品画像ランダム */
.top_productimg {
	margin-bottom: 30px;
	width: 100%;
	display: flex;
    justify-content: center;
	background: aliceblue;
}
.top_productimg ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	max-width: 765px;
}
.top_productimg ul li {
    width: 170px;
    height: 170px;
    object-fit: cover;
	text-align: center;
	display: inline-block;
	float: left;
}
.top_productimg ul li img {
    width: 170px;
    height: 170px;
    object-fit: cover;
}

@media only screen and (max-width: 959px){
	.top_productimg {
		margin-bottom: 10px;
	}
}

/* 組織概要のご挨拶 */
.greeting {
}
.greeting .post .left {
	float: left;
	width: 410px;
}
.greeting .post .right {
	float: right;
	width: 240px;
}
@media only screen and (max-width: 959px){
	.greeting .post .left {
		float: inherit;
		width: 100%;
	}
	.greeting .post .right {
		float: inherit;
		width: 100%;
		text-align: center;
	}
}

/* パンフレット */
.pamphlet {
	margin-bottom: 10px;
}
.pamphlet ul {
	margin-bottom: 0px;
	margin-left: 0px;
}
.pamphlet ul li {
	text-align: center;
	display: inline-block;
	float: left;
	margin-right: 7px;
	text-decoration: none;
	background: none;
	margin-bottom: 0px;
	padding-left: 0px;
}
.pamphlet ul li:last-child {
	margin-right: 0px;
}
.pamphlet .pamphlet_link {
	text-align:right;
}
@media only screen and (max-width: 780px){
	.pamphlet ul li {
		text-align: center;
		display: block;
		float: inherit;
		margin-right: 0px;
	}
}

/* チラシ */
.flyer {
	margin-bottom: 50px;
	width: 1000px;
}
.flyer ul {
	margin-bottom: 10px;
}
.flyer ul li {
	width: 50%;
	text-align: center;
	display: inline-block;
	float: left;
}
.flyer .flyer_link {
	text-align:right;
}
@media only screen and (max-width: 959px){
	.flyer {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.flyer ul li img {
		max-width: 90%;
	}
}


/* law
------------------------------------------------------------*/

.law .inbox {
	margin-bottom: 10px;
}

.law .inbox h4 {
	font-weight: bold;
}

.law .inbox table th {
	width: 20%;
}
@media only screen and (max-width: 959px){
	.law .inbox table th {
		width: 98%;
	}
}



/* ヘッダー右エリア
------------------------------------------------------------*/
/*--
#header .inner-in {
    width: 680px;
    margin-top: 10px;
    font-size: 15px;
}
#header h2 {
	width: 180px;
    padding: 40px 0 30px;
}
#header h2 img {
	width: 100%;
}
#header .head_contact {
    float: right;
}
#header .head_contact .left_box {
    float: left;
    margin: 25px 10px 0 0;
}
#header .head_contact .left_box p {
	font-size: 13px;
	font-weight: 600;
	line-height: 160%;
	letter-spacing: 0;
	clear: both;
}
#header .head_contact .right_box {
    float: right;
}
#header .head_contact p,
#header .head_contact a {
    font-size: 20px;
    font-family: 'Rajdhani', sans-serif;
    line-height: 125%;
}
#header .head_contact p {
    color: #4a4a4a;
}
#header .head_contact p span {
    font-weight: bold;
    font-size: 85%;
    vertical-align: middle;
    color: #c01a1a;
}
#header .head_contact a {
    color: #000;
}
#header .head_contact .btn_style {
    display: block;
    background: #040404;
    border: 2px solid #040404;
    color: #fff;
    margin-top: 2px;
    padding: 8px 10px;
    font-size: 65%;
    text-align: center;
}
#header .head_contact .btn_style:hover {
    background: #fff;
    color: #040404;
}
#header ul {
    margin-top: 8px;
    padding-bottom: 5px;
}
@media only screen and (max-width: 644px) {
	#header .inner-in {
		float:none;
		width:auto;
	}
	#header h2 {
		padding: 20px 10px 0;
	}
	#header .head_contact p,
	#header .head_contact a {
	    font-size: 20px;
	}
	#header .head_contact .left_box {
		float: none;
		margin: 0;
	}
	#header .head_contact .right_box {
	    float: none;
	}
	#header .head_contact {
	    float: none;
	}
	#header .head_contact .btn_style {
	    width: 80%;
	    margin: 5px auto 0;
	}
	#header ul {
	    margin-top: 0;
	}
}
.post table.sp {
	display: none;
}
.post p.sp {
	display: none;
}

@media only screen and (max-width: 959px){
	.post table.pc {
		display: none;
	}
	.post p.pc {
		display: none;
	}
	.post table.sp {
		display: inline-table;
	}
	.post p.sp {
		display: block;
	}
}
--*/
/* TOPページスタイル
------------------------------------------------------------*/
#top_style body {
	font-family: "Noto Sans JP", sans-serif;
    color: #252525;
    -webkit-text-size-adjust: none;
}

#top_style #wrapper {
	width: 100%;
}
#top_style #content {
	width: 100%;
	display: flex;
    flex-direction: column;
    align-items: center;
	margin: 40px 0 0px;
}
#top_style #sidebar {
    float: inline-start;
    width: 100%;
    padding: 0;
	display: flex;
    flex-direction: column;
    align-items: center;
}

#top_style #front_wrapper {
	width: 100%;
}

/*-- title --*/
.en_title {
	font-size: 14px !important;
}
.ja_title {
    font-size: 28px !important;
}

@media screen and (max-width: 640px) {
	.en_title {
		font-size: 13px !important;
	}
	.ja_title {
		font-size: 20px !important;
	}
	#top_style #content {
		padding: 0;
	}
}

/*-- 製品のご案内 --*/
#top_style #product_block {
	max-width: 1080px;
	width: 90%;
}

#top_style #product_block .title_box {
	margin-bottom: 40px;
}

#top_style #product_block .ja_title {
    text-align: center;
    font-family: 'Noto Sans JP';
    font-weight: 600;
    letter-spacing: 1px;
    position: relative;
    top: -2px;
}

#top_style #product_block .en_title {
	text-align: center;
	color: #df002c;
	font-family: 'Rajdhani';
	font-weight: 700;
	letter-spacing: 1px;
	margin-bottom: 5px;
}

#top_style .dl_btn {
    width: 80%;
    display: flex;
    height: 42px;
    background: #164682;
    color: white;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 13px;
    margin-bottom: 20px;
}

#top_style .tri_btn {
	margin-bottom: 0;
	background: #262626;
}
#top_style .dl_btn:hover {
	opacity: 0.8;
	transition: 0.2s;
}

#top_style .dl_btn img {
	width: 20px;
	height: auto;
    margin-right: 10px;
}

#top_style .tri_btn img {
	width: 12px;
}

#top_style .bigbnr {
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 30px;
    width: 100%;
    justify-content: center;
    align-items: center;
	margin: 0 0 50px;
}

#top_style .bigbnr li {
	width: 240px;
    margin: 0;
	gap: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#top_style  .bigbnr li p {
	font-size: 14px;
	font-weight: 500;
	line-height: 190%;
	width: 100%;
	margin-bottom: 15px;
}

#top_style  .bigbnr li .title {
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 0px;
    letter-spacing: 0.03em;
}

@media screen and (max-width: 640px) {
	#top_style  .bigbnr {
		margin: 0;
	}
}


/*-- 製品 --*/
#top_style .top_productimg .text_wrap {
	width: 100%;
    text-align: center;
	margin-bottom: 50px;
	font-family: "Zen Old Mincho", serif;
	font-weight: 600;
	letter-spacing: 1px;
}
#top_style .top_productimg .text_wrap p {
	color: white;
	font-size: 28px;
	font-weight: 700;
}

#top_style .top_productimg .text_wrap .big_p {
	font-size: 36px;
	margin-bottom: 5px;
}

#top_style .top_productimg {
	background-image: url(../images/index/product_bg.jpg);
    background-color: #f3f3f3;
    background-repeat: no-repeat;
	background-position: center;
    padding: 70px 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-size: cover;
	margin: 0;
}
#top_style .top_productimg ul {
	margin-bottom: 20px;
	gap: 25px;
}
#top_style .top_productimg ul:after {
    content: none;
}
#top_style .top_productimg .btn_wrap {
    display: flex;
    align-items: center;
    flex-direction: row;
    column-gap: 20px;
}

#top_style .top_productimg .btn {
    width: 270px;
    height: 60px;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    font-weight: 600;
	border: 2px solid #FFFFFF;
}

#top_style .top_productimg .tr_btn ,
#top_style .top_productimg .pdf_btn {
	position: relative;
}

#top_style .top_productimg .tr_btn img{
	width: 12px;
	height: 12px;
	margin-right: 10px;
}

#top_style .top_productimg .pdf_btn img {
	width: 20px;
	height: 20px;
	margin-right: 10px;
}

#top_style .top_productimg .btn:hover {
	color: #252525;
	background-color: #FFFFFF;
	transition: 0.2s;
}

#top_style .top_productimg .tr_btn::before {
	content: "";
	background-image: url(../images/index/triangle.svg);
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	width: 12px;
	height: 12px;
	left: 70px;
	top: 50%;
	transform: translateY(-50%);
}
#top_style .top_productimg .pdf_btn::before {
	content: "";
	background-image: url(../images/index/pdf_icon.svg);
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
	left: 40px;
	top: 50%;
	transform: translateY(-50%);
}

#top_style .top_productimg .tr_btn:hover::before {
	background-image: url(../images/index/triangle_black.svg);
}
#top_style .top_productimg .pdf_btn:hover::before {
	background-image: url(../images/index/pdf_icon_black.svg);
}

#top_style .top_productimg .btn span {
	position: relative;
    left: 25%;
    transform: translateX(-50%);
}

@media screen and (max-width: 640px){
	#top_style .top_productimg .btn_wrap {
		flex-direction: column;
		row-gap: 20px;
	}
	#top_style .top_productimg .text_wrap .big_p {
		font-size: 20px;
	}
	#top_style .top_productimg .text_wrap p {
		font-size: 18px;
	}
	#top_style .top_productimg .btn {
		width: 240px;
		height: 50px;
		font-size: 14px;
	}
	#top_style .top_productimg {
		padding: 40px 0;
	}
	#top_style .top_productimg ul {
		margin-bottom: 35px;
		gap: 15px;
		width: 88%;
	}
	#top_style .bigbnr li {
		width: 45%;
	}
	.top_productimg ul li ,
	.top_productimg ul li img {
		width: 150px;
		height: 150px;
        display: flex;
        justify-content: center;
        object-fit: cover;
        max-width: 100%;
    }
	#top_style .bigbnr li .title {
		font-size: 14px;
		line-height: 150%;
	}
	#top_style .bigbnr li p {
		font-size: 12px;
		margin-bottom: 5px;
	}
	#top_style .dl_btn {
		width: 100%;
		font-size: 12px;
	}
	#top_style .top_productimg .text_wrap {
		margin-bottom: 30px;
	}
}

/*-- お知らせ --*/
#top_style #sidebar_top .widgetInfo {
    max-width: 1000px;
    width: 90%;
    display: flex;
    flex-direction: row;
	gap: 100px;
	border: none;
	margin: 60px 0;
	justify-content: space-between;
	padding-top: 60px;
	left: 50%;
    position: relative;
    transform: translateX(-50%);
}

#top_style #sidebar_top .widgetInfo .title_box {
	display: flex;
    flex-direction: column;
	align-items: flex-start;
	width: 250px;
}

#top_style #sidebar_top .widgetInfo .title_box .en_title {
    text-align: center;
    color: #df002c;
    font-family: 'Rajdhani';
    font-weight: 700;
    letter-spacing: 1px;
	margin-bottom: 5px;
}

#top_style #sidebar_top .widgetInfo .title_box .ja_title {
	text-align: center;
    font-family: 'Noto Sans JP';
    font-weight: 600;
    letter-spacing: 1px;
    position: relative;
    top: -2px;
}
#top_style #sidebar_top .title_wrap a {
	font-size: 15px;
	color: #252525;
	font-weight: 700;
}

#top_style #sidebar_top .title_wrap {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
	width: max-content;
}

#top_style #sidebar_top .news ,
#top_style #sidebar_top .news table , 
#top_style #sidebar_top .news tbody {
	width: 100%;
	max-width: 700px;
	border-collapse: collapse;
}

#top_style #sidebar_top .news tr {
	width: 100%;
	border-top: 1px dotted #E6E6E6;
	display: flex;
    align-items: center;
}

#top_style #sidebar_top .news tr:last-child {
	border-bottom: 1px dotted #E6E6E6;
}

#top_style #sidebar_top .news th {
	width: 100px;
	font-family: 'Rajdhani';
    font-weight: 600;
    font-size: 14px;
}

#top_style #sidebar_top .news td {
	font-size: 13px;
    font-family: 'Noto Sans JP';
    font-weight: 500;
    letter-spacing: 1px;
	width: 80%;
}

#top_style #sidebar_top .news a {
	color: #252525;
	display: flex;
    width: 100%;
	padding: 13px 0;
}
#top_style #sidebar_top.news th a{
	padding: 14.5px;
}
#top_style #sidebar_top .news th a time{
	font-size: 14px;
	font-weight: 500;
	color: #686868;
}
#top_style #sidebar_top .news tr:hover {
	background-color: #fafafa;
}

#top_style #sidebar_top .newsTitle .title_wrap a {
	display: flex;
    justify-content: space-between;
    flex-direction: row;
    width: 120px;
    padding: 0 4px 4px 4px;
	border-bottom: 1px solid #DF002C;
}

#top_style #sidebar_top .newsTitle .title_wrap a:hover {
	width: 140px;
	transition: 0.2s;
}

#top_style #sidebar_top .newsTitle {
	width: 145px;
	border: none;
}

#top_style .newsTitle p {
	padding: 0;
	float: none;
}

#top_style #sidebar_top .newsTitle .title_wrap a:hover {
	color: #DF002C;
	transition: 0.2s;
}

@media screen and (max-width: 640px){
	#top_style #sidebar_top .widgetInfo {
		flex-direction: column;
		gap: 0;
		margin: 40px 0 40px;
		padding: 0;
	}
	#top_style #sidebar_top .title_wrap {
		flex-direction: row;
		align-items: flex-end;
		width: auto;
	}
	#top_style #sidebar_top .widgetInfo .title_box {
		width: auto;
	}
	#top_style #sidebar_top .newsTitle .title_wrap a {
		width: 100px;
		font-size: 14px;
		padding: 0 4px 1px 4px;
	}
	#top_style #sidebar_top .newsTitle {
		width: 100%;
		margin: 0 0 10px;
		padding-top: 0;
	}
	#top_style #sidebar_top .news td {
		font-size: 12px;
	}
	#top_style #sidebar_top .news th {
		width: 90px;
		font-size: 13px;
	}
	#top_style #sidebar_top .news th a time {
		font-size: 12px;
	}
	#top_style #sidebar_top .widgetInfo .title_box .en_title {
		font-size: 20px;
	}
	#top_style #sidebar_top .widgetInfo .title_box .ja_title {
		font-size: 24px;
	}
}

/*-- フライヤー --*/

#top_style #sidebar_top .flyer {
	margin-bottom: 0px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
	background: #F2F2F2;
    padding: 80px 0;
}

#top_style #sidebar_top .flyer ul {
    width: 100%;
    max-width: 660px;
	margin: 0;
}

#top_style #sidebar_top .flyer .flyer_link {
	margin-top: 30px;
    width: 260px;
    height: 60px;
    background: #DF002C;
    display: flex;
    align-items: center;
    justify-content: center;
}

#top_style #sidebar_top .flyer .flyer_link a {
	color: #FFFFFF;
	font-weight: 700;
}

#top_style #sidebar_top .flyer .contents_inner {
	max-width: 1000px;
	width: 90%;
	display: flex;
    flex-direction: row;
	justify-content: space-between;
}

#top_style #sidebar_top .flyer .title_box {
	display: flex;
    flex-direction: column;
	align-items: flex-start;
	width: 250px;
}

#top_style #sidebar_top .flyer .title_box .en_title {
	text-align: center;
	color: #df002c;
	font-family: 'Rajdhani';
	font-weight: 700;
	letter-spacing: 1px;
	margin-bottom: 5px;
}

#top_style #sidebar_top .flyer .title_box .ja_title {
	text-align: center;
    font-family: 'Noto Sans JP';
    font-weight: 600;
    letter-spacing: 1px;
    position: relative;
    top: -2px;
}
#top_style #sidebar_top .flyer.title_wrap a {
	font-size: 18px;
	color: #252525;
	font-weight: 700;
}

#top_style #sidebar_top .flyer .title_wrap {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: auto;
    width: 250px;
}
#top_style #sidebar_top .flyer ul li img {
	width: 250px;
	height: auto;
}

#top_style #sidebar_top .flyer .title_wrap a {
	width: 200px;
    height: 55px;
    border: 2px solid #252525;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
	position: relative;
}

#top_style #sidebar_top .flyer .title_wrap a img {
	width: 20px;
    height: 20px;
    margin-right: 10px;
}

#top_style #sidebar_top .flyer .btn::before {
	content: "";
	background-image: url(../images/index/pdf_icon_black.svg);
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
	left: 35px;
	top: 50%;
	transform: translateY(-50%);
}

#top_style #sidebar_top .flyer .btn:hover {
	background-color: #252525;
	color: #FFFFFF;
	transition: 0.2s;
}
#top_style #sidebar_top .flyer .btn:hover::before {
	background-image: url(../images/index/pdf_icon.svg);
}

#top_style #sidebar_top .flyer .btn span {
	position: relative;
    left: 22%;
    transform: translateX(-50%);
}
#top_style #sidebar_top .flyer .sp {
	display: none;
}

@media screen and (max-width: 640px){
	#top_style #sidebar_top .flyer .contents_inner {
		flex-direction: column;
	}
	#top_style #sidebar_top .flyer .sp {
		width: 200px;
		height: 52px;
		border: 2px solid #252525;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 15px;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
		margin-top: 20px;
		color: #252525;
	}
	#top_style #sidebar_top .flyer a img {
		width: 20px;
		height: 20px;
		margin-right: 10px;
	}
	#top_style #sidebar_top .flyer .title_wrap .pc {
		display: none;
	}
	#top_style #sidebar_top .flyer {
		padding: 40px 0;
		margin-top: 0;
	}
	#top_style #sidebar_top .flyer .title_box {
		margin-bottom: 20px;
	}
	#top_style #sidebar_top .flyer .title_box .en_title {
		font-size: 20px;
	}
	#top_style #sidebar_top .flyer .title_box .ja_title {
		font-size: 24px;
	}
}


/*-- フッター --*/
body #footer {
	font: unset;
    font-family: "Noto Sans JP", sans-serif;
    color: #252525;
}
#footer {
	padding: 0;
	width: 100%;
}

#footer .inner {
    display: flex;
    flex-direction: row;
    width: fit-content;
    padding: 60px 100px;
    margin: 0;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    gap: 100px;
}

#footer .inner .left_wrap {
	width: 30%;
}
#footer .inner .right_wrap {
	width: 40%;
}

#footer .inner .left_wrap img {
	margin-bottom: 35px;
}
#footer .inner ul {
	padding: 0;
	font-size: 100%;
}

#footer .inner ul li {
	padding: 7px 0;
	margin: 0 30px 0 0;
}

#footer .inner ul li a {
	color: #252525;
	font-size: 13px;
	font-weight: 500;
	position: relative;
}

#footer .inner ul li a::before {
    content: '';
    display: flex;
    width: 8px;
    height: 1px;
    background: #DF002C;
    position: absolute;
	left: 0;
    top: 50%;
    transform: translateY(-50%);
}

#footer .inner .right_wrap p {
	font-size: 15px;
	font-weight: 700;
	margin-bottom: 10px;
	text-align: justify;
}

#footer .inner span {
	border: 1px solid #FFFFFF;
	height: 150px;
}

@media screen and (min-width: 1890px){
	#footer .inner .right_wrap nav {
		width: 80%;
	}
}
@media screen and (max-width: 1100px){
	#footer .inner {
		gap: 50px;
		padding: 60px 0px;
	}
	#footer .inner ul {
		text-align: left !important;
	}
}
@media screen and (max-width: 840px){
	#footer .inner {
		padding: 40px 5%;
		flex-direction: column;
		gap:0;
		width: 90%;
	}
	#footer .inner .left_wrap ,
	#footer .inner .right_wrap {
		width: 100%;
	}
	#footer .inner ul {
		display: flex;
		flex-direction: column;
	}
	#footer .inner ul li a {
		font-size: 13px;
	}
	#footer .inner ul li {
		margin: 0;
	}
	#footer .inner .right_wrap p {
		font-size: 16px;
	}
	#footer .inner span {
		border-bottom: 1px solid #FFFFFF;
		height: 0;
		width: 100%;
		margin: 12px 0;
	}
	#footer .inner .left_wrap img {
		margin-bottom: 20px;
	}
}


/*-- コンタクト --*/
#footer .contact {
	background-image: url(../images/index/contact_bg.jpg);
	background-repeat: no-repeat;
	background-position: center;
    padding: 45px 0 50px;
    width: 100%;
    background-size: cover;
	margin: 0;
}

#footerp .contact .title_box {
	display: flex;
    flex-direction: column;
	align-items: center;
}

#footer .contact .title_box .en_title {
    text-align: center;
    color: #df002c;
    font-family: 'Rajdhani';
    font-weight: 700;
    letter-spacing: 1px;
    margin-bottom: 5px;
}

#footer .contact .title_box .ja_title {
	text-align: center;
    font-family: 'Noto Sans JP';
    font-weight: 600;
    letter-spacing: 1px;
    position: relative;
    top: -2px;
	color: #ffffff;
}

#footer .contact .wrap {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	flex-wrap: wrap;
	justify-content: center;
}

#footer .contact .wrap .form_btn  {
    background: #c70c0c;
    color: #FFFFFF;
    font-size: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 320px;
    height: 110px;
    justify-content: center;
    border-radius: 4px;
    font-weight: 600;
}

#footer .contact .wrap .form_btn:hover {
	filter: contrast(0.8);
	transition: 0.2s;
}

#footer .contact .wrap .form_btn img {
	width: 30px;
    margin-bottom: 8px;
}

#footer .contact .wrap {
	gap: 50px;
    margin-top: 50px;
}

#footer .contact .wrap .adress_box {
	/* display: flex; */
	/* flex-direction: column; */
	/* align-items: center; */
	width: 320px;
	height: 124px;
	color: #ffffff;
	/* border: 2px solid #fff; */
	border-radius: 4px;
	font-weight: 600;
	font-size: 15px;
	text-align: left;
	justify-content: center;
}

#footer .contact .wrap .adress_box a {
	color: #ffffff;
}

@media screen and (max-width: 640px){
	#footer .contact .wrap {
		display: block;
		gap: 20px;
		margin-top: 30px;
	}
	#footer .contact .title_box .en_title {
		font-size: 20px;
	}
	#footer .contact .wrap .form_btn {
		width: 80%;
		max-width: 280px;
		height: 90px;
		font-size: 14px;
		text-align: center;
		left: 50%;
        text-align: center;
        position: relative;
        transform: translateX(-50%);
        margin-bottom: 20px;
	}
	#footer .contact .wrap .form_btn img {
		width: 24px;
	}
	#footer .contact .wrap .adress_box {
		width: 100%;
		font-size: 13px;
		text-align: center;
		font-weight: 500;
	}
	#footer .contact {
		padding: 40px 0 0;
	}
}