@charset "utf-8";

/* =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: 14px/2 'Noto Sans JP',"メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
color:#333;
-webkit-text-size-adjust:100%;
background:#fff;
}


/* リンク設定
------------------------------------------------------------*/
a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
color: #333/*#07B935*/;

}

a:hover, a:active{
outline: none;
color:#6f6f6f;
}
img {
	max-width: 100%;
}
.text-center {
	text-align: center !important;
}
.text-right {
	text-align: right !important;
}
.text-left {
	text-align: left !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt50 {
	margin-top: 50px !important;
}
/**** Clearfix ****/
nav .panel:after, #mainNav:after, .newsTitle:after, .bg:after,.post:after, ul.post li:after,#mainNav .inner:after,p:after {content:""; display: table;clear: both;}
nav .panel,#mainNav,.newsTitle,.bg, .post, ul.post li,#mainNav .inner{zoom: 1;}


/* フォーム
------------------------------------------------------------*/
input[type="text"],
input[type="email"],
input[type="tel"],
select[name="都道府県"],
input[type="date"],
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:#ff0007;
border:0;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
line-height:1.5;
font-size:120%;
color:#fff;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background:#000;
cursor:pointer;
}

*:first-child+html input[type="submit"]{padding:3px;}


/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:880px;
}

#header{
overflow:hidden;
}

#content{
float:left;
width:627px;
padding:22px 0;
}

#sidebar{
float:right;
width:233px;
padding:22px 0;
}
#sidebar .banner a img {
	-webkit-transition: 500ms;
	-moz-transition: 500ms;
	-o-transition: 500ms;
	transition: 500ms;
}
#sidebar .banner a:hover img {
	box-shadow: 0 3px 15px rgba(0,0,0,0.4);
	opacity:1;
}
.menu_llst {
	margin-bottom: 20px;
}
.menu_llst h3 {
	border:solid 1px #ff0007;
	padding: 1px;
}
.menu_llst h3 span {
	font-size: 1.1rem;
	display: block;
	padding: 0 10px;
	background-color:#ff0007;
	color:#fff;
}

.menu_llst li a {
	display: block;
	padding: 5px;
	border-bottom:dotted 1px #ccc;
	/*color: #07B935;*/
	color:#333;
	transition:all 0.5s;
}
.menu_llst li a:hover {
	background-color:#ddd;
}
#footer{
clear:both;
background-color: #3c3c3c;
}


/* ヘッダー
*****************************************************/

/* サイト説明文
----------------------------------*/
#header h1{
padding:5px 0;
font-size:80%;
font-weight:normal;
position: relative;
}
#header h1 a {
	position: absolute;
	top:0;
	right:0;
}
#header h1 a img {
	background-color: #b91c22;
	width:280px;
	-webkit-transition: 500ms;
-moz-transition: 500ms;
-o-transition: 500ms;
transition: 500ms;
}
#header h1 a img:hover {
	background-color: #000;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
clear:both;
float:left;
padding:20px 5px 15px;
color: #000;
font-weight:bold;
position: relative;
}
#header h2 .logo_info {
	position: absolute;
	top:-.9em;
	left: .5em;
	font-size:1.2rem;
}
#header h2 .logo_info .years {
	font-size: 1.3em;
	color:#b91c22;
}

/* コンタクト
----------------------------------*/
.contact{
float:right;
padding:20px 0 0;
text-align:right;
color:#000;
font-size:90%;
}

.contact .tel{
margin-bottom:-3px;
font-size:240%;
font-weight: 800;
line-height: 1
}



/* トップページ　メイン画像
----------------------------------*/
#mainImg{
clear:both;
line-height:0;
text-align:center;
z-index:0;
background: url(../images/main_bgimg.jpg);
background-position: center;
background-size: cover;
position: relative;
}
#mainImg .main_text {
	position: absolute;
	left:50%;
	bottom:20px;
	margin-left: -400px;
	width:580px;
	background-color: rgba(0,0,0,.5);
	color:#fff;
	font-size: 1.3rem;
	line-height: 1.5;
	text-align: left;
	padding: 10px;
}
p {
	text-align: justify;
	text-justify:inter-character;
}
p.lead {
	font-size: 1.2em;
}
#wrapper strong {
	font-weight: bold;
	color:#000;
	background-color:#F0F80D;
}
.under_line {
	background:linear-gradient(transparent 70%, #FF0007 0%);
	color:#F0F80D;
	font-weight: 600;
}
#mainImg a:hover{opacity:.8;}

.post{
margin:0 0 20px 0;
padding:20px 0;
/*border:1px solid #d5d5d5;
*/background:#fff;
}

.toppage h4{
margin:0 0 10px;
font-size:16px;
font-weight:normal;
color:#333;
}

.toppage{padding:10px;}



/* 記事ループ
*****************************************************/
.list{
padding:10px 0;
border-bottom:1px dashed #dcdcdc;
}

.list:last-child{border:0;}

.post .list p{padding:0;}

.list span{padding-left:10px;}


/* タイポグラフィ
*****************************************************/
h2.title{
clear:both;
margin:0;
padding:7px 10px 7px 10px;
font-size:110%;
color:#000;
border:1px solid #d5d5d5;
border-bottom:0;
background:#fff url(../images/headingBg.png) repeat-x 0 100%;
}
h2.title2{
	background-color:#ff0007;
	color:#fff;
	padding:7px 10px;
	font-size: 1.3rem;
}

.dateLabel{
text-align:right;
font-weight:bold;
color:#858585;
}


.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:150%;
color: #000;
/*border-bottom:3px solid #000;*/
}

.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 5px;
font-size:100%;
font-weight:normal;
color:#2e2c2c;
border-bottom:1px solid #515151;
}
.post h3.title {
	color:#DB040C;
	font-weight: 800;
	font-size: 1.1rem;
}
.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: 1px #ccc solid;
border-collapse: collapse;
border-spacing: 0;
margin:10px 0 20px;
width: 100%;
}

.post table tr:nth-child(odd){
  background-color: #eee
}

.post table th, .post table td {
	padding: 10px;
}
.post table th{
border: #ccc solid;
border-width: 0 0 1px 1px;
/*background:#efede7;*/
text-decoration-color: center;
text-align: center;
font-weight: bold;
vertical-align: middle;
}

.post table td{
border: 1px #ccc solid;
border-width: 0 0 1px 4px;
/*background:#fff;*/
}

.post table td i {
	padding-right: 5px;
}

.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{
margin: 10px 0 15px 15px;
display:inline;
}

img.alignleft{
	margin:10px 15px 15px 0;
	display:inline;
}

.alignright{float:right;}
.alignleft{float:left;}

#gallery-1 img{
border:1px solid #eaeaea !important;
padding:5px;
background:#fff;
}

#gallery-1 img:hover{background:#fffaef;}

#top_caution {
	border:dashed 10px #C10211;
	margin:10px auto 20px;
	padding: 0 15px 15px;
}
#top_caution h2 {
	font-size: 1.5rem;
}



/* サイドバー　ウィジェット
*****************************************************/
.widget ul, .widget_search, #calendar_wrap, .textwidget{
margin:1px 0 20px 0;
padding:10px 10px 10px 17px;
border:1px solid #d5d5d5;
background: #fff;

}

.widget ul ul{
border:0;
margin:0;
padding:0 0 0 10px;
}

p.banner{padding-bottom:15px;}

p.banner img{
max-width:100%;
height:auto;
}

p.banner img:hover{
cursor:pointer;
opacity:.8;
}

.widget h3{
clear:both;
margin:0 0 -1px;
padding:7px 10px 7px 10px;
font-size:110%;
border:1px solid #d5d5d5;
border-bottom:0;
color:#000;
background:#fff url(images/headingBg.png) repeat-x 0 100%;
}

.widget li a{
display:block;
padding:7px 0 7px 12px;
background:url(images/arrow.gif) no-repeat 0 12px;
border-bottom:1px dashed #dcdcdc;
}

.widget li:last-child a{border:0;}

#searchform input[type="text"]{
line-height:1.7;
height:24px;
width:90px;
vertical-align:bottom;
}

/* カレンダー */
#calendar_wrap table{margin:0 auto;width:90%;}
#calendar_wrap table caption{padding:10px 0;text-align:center;font-weight:bold;}
#calendar_wrap table th, #calendar_wrap table td{padding:3px;text-align:center;}
#calendar_wrap table th:nth-child(6),#calendar_wrap table td:nth-child(6){color:#0034af;}
#calendar_wrap table th:nth-child(7),#calendar_wrap table td:nth-child(7){color:#950000;}
#calendar_wrap table td#prev{text-align:left;}
#calendar_wrap table td#next{text-align:right;}
#calendar_wrap a{color:#c71a28;font-weight:bold;}


/* お知らせ　
-------------*/
.newsTitle{
clear:both;
margin:0;
padding:7px 10px;
font-size:110%;
border:1px solid #d5d5d5;
border-bottom:0;
color:#000;
background:#fff url(images/headingBg.png) repeat-x 0 100%;
}

.newsTitle h3{
float:left;
font-weight:normal;
}

.newsTitle p{
float:right;
padding:0 0 0 10px;
font-size:80%;
background:url(images/arrow.gif) no-repeat 0 5px;
}
.newsTitle a {
	background: #d5d5d5;
	color: #000;
	padding: 2px 5px;
	display: block;
}

#top_news li {
	margin:0;
	padding: 0;
}
#top_news li a {
	padding: 10px;
	display: block;
	transition:all 0.8s;
}
#top_news li a:hover {
	background-color:#ddd;
}
#top_news li a h3 {
	color:#D9040A;
}


#top_news li img {
	width: 135px;
	height: 92px;
	object-fit: cover;
}
.news {
	border:solid 1px #ccc;
	margin-bottom: 20px;
	padding: 5px;
}
.news p{
clear:both;
padding-bottom:2px;
border-bottom:1px dashed #dcdcdc;
line-height: 1.2;
}

.news p:last-child{border:0;}

.news p a{
display:block;
padding:5px 0;
color:#333;
font-style:italic;
font-size: 12px;
}

.news a span{
color:#515151;
display: block;
font-size: 14px;
}


.news a:hover span{color:#6f6f6f;}


#w_100 {
	clear: both;
	padding: 50px 0 80px ;
	background-image: url(../images/double-bubble-outline.png) ;
	background-repeat: repeat;
}
.okigaru {
	text-align: center;
	font-weight: 800;
	font-size: 3vw;
}
.W_880 {
	width: 880px;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}

.tel_bnr a img {
	background-color: #13547a ;
	transition: all 0.8s;
}
.mail_bnr a img {
	background-color: #0c3483 ;
	transition: all 0.8s;
}
.W_880 a img:hover {
	background-color: #222;

}
/*.tel_bnr a img {
	background-image: linear-gradient(to top, #13547a 0%, #80d0c7 100%);
}
.mail_bnr a img {
	background-image: linear-gradient(to top, #0c3483 0%, #a2b6df 100%, #6b8cce 100%, #a2b6df 100%);
}
.W_880 a img:hover {
	background-image: linear-gradient(to top, #434343 0%, black 100%);

}*/

#page_top{
  width: 100px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: -60px;

}
#page_top a{
  position: relative;
  display: block;
  width: 100px;
  height: 60px;
  background: rgba(255,0,7);
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f102';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -40px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a::after{
  content: 'PAGE TOP';
  font-size: 13px;
  color: #fff;
  position: absolute;
  top: 30px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
#page_top a:hover {
	background-color:#000;
}

/* フッター
*****************************************************/
#footer ul{
padding:30px 0 25px;
text-align:center;
}

#footer li{
display:inline-block;
padding: 5px 16px;
border-left:1px dotted #777;
}
*:first-child+html #footer li{display:inline;}

#footer li:first-child{border:0;}

#footer li a{
text-decoration:none;
color:#777;
}

#footer li a:hover{color:#ccc;}

#footer ul ul{display:none;}

#copyright{
clear:both;
padding:10px 0 37px;
text-align:center;
color:#ccc;
font-size:12px;
}


/* page navigation
------------------------------------------------------------*/
.pagenav{
clear:both;
width: 100%;
height: 30px;
margin: 5px 0 20px;
}

.prev{float:left}

.next{float:right;}

#pageLinks{
clear:both;
color:#4f4d4d;
text-align:center;
}


/* トップページ 最新記事4件
------------------------------------------------------------*/
ul.post{
padding:0;
}

ul.post li{
margin:0 10px;
padding:20px 0 15px;
border-bottom:1px dashed #dcdcdc;
}

ul.post li:last-child{border:0;}

ul.post img{
float:left;
margin:0 15px 5px 0;
}

ul.post h3{
margin:0 0 10px 10px;
font-size:14px;
font-weight:normal;
color:#333;
border:0;
}

/* ぱんくず
------------------------------------------------------------*/
.cp_breadcrumb *, .cp_breadcrumb *:after, .cp_breadcrumb *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_breadcrumb {
	padding: 0.5em 1em;
	color: #fff;
	border-radius: 0.5em;
	box-sizing: border-box;
}
.cp_breadcrumb a {
	text-decoration: none;
	color: #07B935;
}
.cp_breadcrumb .breadcrumbs {
	padding-left: 0;
	margin-top: 0;
	margin-bottom: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.cp_breadcrumb li {
	display: inline-block;
	position: relative;
	padding-right: calc(16px + 8px);
	margin-right: 8px;
	color: #515151/*#07B935*/;
}

.cp_breadcrumb li::before {
	content: '>';
	width: 1em;
	height: 1em;
	line-height: 1;
	text-align: center;
	font-size: 1em;
	font-weight: bold;
	color: inherit;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.cp_breadcrumb li:last-child {
	margin-right: 0;
	padding-right: 0;
	color: #000;
}
.cp_breadcrumb li:last-child::before {
	content: normal;
}
.cp_breadcrumb i {
	padding-right:  5px;
}

/* メインイメージ
------------------------------------------------------------*/

.keyImg .inner {
	position: relative;
	height: 250px;
}
.keyImg .inner h1 {
	color: #000;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 30px;
	font-weight: bold;
	padding: 20px 30px;
	background: rgba(255,255,255,0.6);
}
/* index.html
------------------------------------------------------------*/
.guest {
	display: flex;
	justify-content: space-between;
	padding: 10px;
	border: 1px solid #333;
	background: #;
}
.img-guest {
	width: 49.5%;
}
.msg-guest {
	width: 49.5%;
	text-align: center;
}
.msg-guest p:first-of-type {
	font-size: 25px;
	line-height: 35px;
	margin-bottom: 15px;
}
.msg-guest p:nth-of-type(2) {
	font-size: 16px;
	line-height: 26px;
	margin-bottom: 30px;
}
.msg-guest a {
	display: block;
	padding: 5px;
	margin: 0 auto;
	background: #fb801e;
	width: 330px;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}
.msg-guest a:hover {
	opacity: 0.8;
}
/* company.html
------------------------------------------------------------*/
.keyImg-company {
	background: url(../images/company_bg.jpg) no-repeat center;
	background-size: cover;
	max-width: 100%;
}
.greeting-intro {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
}
.daihyo {
	margin-bottom: 40px;
}
.daihyo p {
	margin-bottom: 20px;
}
.daihyo-title {
	font-size: 18px;
}
.daihyo-main {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.daihyo-right {
	width: 40%;
}
.daihyo-right .daihyo-intro {
	text-align: right;
	margin-bottom: 0;
}
.daihyo-left {
	width: 58%;
}
.daihyo-name {
	font-size: 26px;
	padding-left: 10px;
}
.katagaki {
	text-align: right;
	line-height: 1.4;
	margin-bottom: 30px;
}
.post h3.com-color {
	color: #000;
}
.video {
	margin-bottom: 40px;
}
.youtube iframe {
	width: 100%;
}

/* aboutus.html
------------------------------------------------------------*/
.keyImg-aboutus {
	background: url(../images/aboutus_bg.jpg) no-repeat center;
	background-size: cover;
	max-width: 100%;
}
.title-about {
	margin:  0;                 /* デフォルトCSS打ち消し */
    font-size:  24px;           /* 文字サイズ指定 */
    position:  relative;        /* 位置調整 */
    font-weight:  normal;       /* 文字の太さ調整 */
    margin-bottom: 15px;        /* 周りの余白指定 */
    border-radius:  2px; 
}
.title-about-point {
	 background-color: #db040c;  /* 背景色指定 */
    border-radius:  50%;        /* 丸くする */
    padding:  5px 15px;             /* 余白指定 */
    font-size: 30px;            /* 文字サイズ指定 */
    color: #fff;                /* 文字色指定 */
    margin-right: 5px;          /* 周りの余白指定 */
}

/* flow.html
------------------------------------------------------------*/
.keyImg-flow {
	background: url(../images/flow_bg.jpg) no-repeat center;
	background-size: cover;
	max-width: 100%;
}
.flow {
	margin: 0 auto 50px;
}
.flow .flow-box {
	margin: 0 auto 33px;
	width: 100%;
	padding: 10px;
	border: 3px solid #261DA0;
	position: relative;
	box-sizing: border-box;
}
.flow .flow-box:after {
	border-top:25px solid #FAF037;
	border-left: 70px solid transparent;
	border-right: 70px solid transparent;
	content: "";
	position: absolute;
	bottom: -28px;
	left: 50%;
	margin-left: -70px;
}
.flow .flow-box:last-child:after {
	border: none;
}
.flow .flow-box span {
	font-family: 'Lexend Tera', sans-serif;
	font-family: 'Open Sans', sans-serif;
	font-size: 30px;
	padding-left: 5px;
	background: linear-gradient(transparent 50%, #faf037 50%);
}

/* voice.html
------------------------------------------------------------*/
.keyImg-voice {
	background: url(../images/voice_bg.jpg) no-repeat 20% 62%;
	background-size: cover;
	max-width: 100%;
}

.voice-intro {
	margin-bottom: 10px;
}
.voice-contents {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
}
.contents-left {
	width: 25%;
	text-align: center;
}
.contents-left-p {
	font-weight: bold;
	font-size: 16px;
	/*background: #eee;*/
	color: #261DA0;
	border: none;
}
.contents-right {
	width: 100%;
	position: relative;
  	display: inline-block;
  	/*margin: 0.5em;*/
  	padding: 0 15px 15px 15px;
  	min-width: 120px;
  	max-width: 100%;
  	font-size: 14px;
  	/*background: #eee;*/
  	border: solid 3px #555;
  	line-height: 22px;

  	box-sizing: border-box;
}
.post .contents-right .voice-title {
	padding: 5px 0 10px;
}
.voice-box i {
	margin-right: 5px;
}
.contents-right p {
	margin: 0;
    padding: 0;
}

/* faq.html
------------------------------------------------------------*/
.keyImg-faq {
	background: url(../images/faq_bg.jpg) no-repeat center;
	background-size: cover;
	max-width: 100%;
}
.post .faq-intro {
	margin-bottom: 20px;
}

.acd-check{
    display: none;
}
.acd-label{
    background: #0068b7;
    color: #fff;
    display: block;
    padding: 10px;
    position: relative;
}
.acd-label:after{
    background: #00479d;
    box-sizing: border-box;
    content: '\f067';
    display: block;
    font-family: "Font Awesome 5 Free";
    /*height: 52px;*/
    padding: 10px 20px;
    position: absolute;
    right: 0;
    top: 0px;
    font-weight: 900;
}
.acd-content{
    border: 1px solid #333;
    border-top: none;
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-content p {
	padding: 10px;
}
.acd-check:checked + .acd-label:after{
    content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
    margin-bottom: 30px;
}

/* contact.html
------------------------------------------------------------*/
.keyImg-contact {
	background: url(../images/contact_bg.jpg) no-repeat center;
	max-width: 100%;
}
/* thanks.html
------------------------------------------------------------*/
.thanks-content {
	margin-bottom: 10px;
}

.thanks-content2 {
	margin-bottom: 20px;
}

.top_btn {
	width: 150px;
	display: block;
	padding: 10px;
	text-decoration: none;
	color: #fff;
	text-align: center;
	background: #b91c22;
	margin: 0 auto;
}

/* blog.html
------------------------------------------------------------*/
.keyImg-blog {
	background: url(../images/blog_bgimg.jpg) no-repeat center;
	max-width: 100%;
}
.post .category-header {
	margin-top: 0;
}
.post .category-lists {
	display: flex;
	margin: 10px 0 20px;
}
.post .category-list {
	background: none;
	padding:0 15px 0 0;
}
.post .category-list a {
	padding: 10px;
	display: block; 
	border: 1px solid #ff0007;
	background: #fff;
}
.post .category-list a:hover {
	color: #fff;
	background: #ff0007;
}

.post .category-lists .category-select {
	background: #ff0007;
	color: #fff;
}

.post .blog-contents {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.post .blog-content {
	width: 47.5%;
	position: relative;
	margin-bottom: 30px;
}
.post .blog-content a {
	display: block;
}
.post .blog-content > a:hover {
	background: #eee;
	opacity: 0.8;
}
.post .blog-category {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 10px;
	font-size: 12px;
	color: #fff;
	background: #ff0007;
}
.post .blog-header {
	margin: 0;
	padding: 0;
	line-height: 30px;
}

.post .page-navi {
	display: flex;
	justify-content: center;
	margin-top: 20px;

}
.post .page-navi li {
	background: none;
	border: 1px solid #333;
	text-align: center;
	margin: 0 5px;
	padding-left: 0px;
}
.post .page-navi li:nth-of-type(2) {
	background: #333;
}

.post .page-navi li:nth-of-type(4) {
	border: 1px solid #fff;
	padding-top: 20px;
	color: #333;
}
.post .page-navi a {
	display: block;
	padding: 10px;
	color: #333;
}
.post .page-navi .back {
	color: #fff;
}
.post .page-navi a:hover {
	background: #333;
	color: #fff;
}
.post .blog-date {
	text-align: right;
}

/* blog2.html
------------------------------------------------------------*/
.post .blog2-tag i:nth-of-type(2) {
	padding-left: 10px;
}
.post .blog2-title {
	margin-top: 0;
	padding-top: 0;
	line-height: 30px;
}
.post .blog2-content {
	padding-bottom: 50px;
	margin-bottom: 20px;
	border-bottom: 3px solid #ddd;
}
.post .blog2-title {
	font-size: 2em;
  	padding: 0.5em 0;
  	border-bottom: none;
}
.post .blog2-content h2 {
	font-size: 1.8em;
	margin: 1em 0 0.5em;
	background: #ff333a;
	border-bottom: none;
	color: #fff;
}
.post .blog2-content h3 {
	margin: 1em 0 0.5em;
	padding-left: 0.25em;
	font-size: 1.6em;
	border-bottom: none;
	border-left: solid 7px #ff333a;
}
.post .blog2-content h4 {
	margin: 1em 0 0.5em;
	font-size: 1.4em;
	border-bottom: 1px solid #ff333a;
}
.post .blog2-content h5 {
	margin: 1em 0 0.5em;
	font-size: 1.2em;
}
.post .blog2-content p {
	/*margin-bottom: 1em;*/
}
.post .blog2-content a {
	color: #ff333a;
	text-decoration: underline;
}
.post .blog2-content .ulist,
.post .blog2-content .olist {
	margin: 0 0 10px 40px;
}
.post .blog2-content ul li {
	list-style: disc;
}
#wrapper .post .blog2-content strong {
	background: none;
}

.post .blog2-footer ul {
	display: flex;
	justify-content: space-between;
}
.post .blog2-footer li {
	background: none;
	padding-left: 0;
}
.post .blog2-footer a {
	padding: 10px;
	display: block; 
	border: 1px solid #333;
	background: #fff;
	color: #333;

}
.post .blog2-footer a:hover {
	background: #333;
	color: #fff;
}
.post .i-left {
	margin-right: 5px;
}
.post .i-right {
	margin-left: 5px;
}

/* buy-land.html
------------------------------------------------------------*/
.keyImg-land {
	background: url(../images/land_bgimg.jpg) no-repeat center;
	max-width: 100%;
}
.sell-lead {
	margin-bottom: 50px;
}
.content1 {
	margin-bottom: 50px;
}
.content1-flex {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.post .content1-left {
	width: 49%;
}
.post .content1-left img {
	width: 100%;
}
.post .content1-right {
	/*width: 49%;*/
	padding: 0;
  	position: relative;
  	margin-bottom: 0;
  	margin-left:0;
}
.post .content1-right ul {
	margin-left: 0;
}
.post .content1-right li {
	background: none;
	line-height: 1.5;
  	padding: 0.5em 0em 0.5em 2em;
  	list-style-type: none!important;
  	background-image: linear-gradient(to right,#5472cd 50%, #a3adcc 100%);
  	color: #fff;
  	margin-bottom: 5px;
}

.post .content1-right li:before {
  	font-family: "Font Awesome 5 Free";
  	content: "\f111";
  	position: absolute;
  	font-weight: 900;
  	left : 0.5em;
  	color: white;
}
.content2 {
	margin-bottom: 50px;
}
.content2 ul {
  padding: 0.5em 0;
  position: relative;
  margin-left: 0;
}

.content2 ul li {
  line-height: 1.5;
  padding: 0.25em 0.5em;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 0;
  background: #dfefff;
  box-shadow: 0px 0px 0px 5px #dfefff;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
  color: #454545;
}
.content2 .check {
	color: #fc801e;
	padding-right: 5px;
}

.content3 .u-line {
	border-bottom: solid 3px #a8d4ff;
	font-size: 16px;
}

.content3 .u-line:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #5472cd;
  width: 5%;
}
.content3 .u-line span {
	font-size: 20px;
	vertical-align: baseline;
}

/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width: 1025px){
#mainNav{
clear:both;
position:relative;
z-index:200;
width:100%;
margin:0 auto;
background:#ff0007;
}

#mainNav .inner{
padding-left:1px;
border-left:1px solid #fff;
}

#mainNav li{
float: left;
position: relative;
border-right:1px solid #ccc;
}

#mainNav li a{
display: block;
text-align: center;
_float:left;
color:#fff;
height:35px;
line-height:45px;
font-size:110%;
margin-right:1px;
padding:10px 32px;
}

#mainNav li a span,#mainNav li a strong{
display:block;
font-size:90%;
line-height:1.4;
}

#mainNav li a span{
font-size:70%;
font-weight:normal;
}

#mainNav li.current-menu-item a, #mainNav li a:hover, #mainNav li.current-menu-parent a,#mainNav ul li a:hover span, #mainNav li.current-menu-item a span{
color:#fff;
background:#000;
}

#mainNav ul ul{
width:160px;
border-top:0;
}

#mainNav li ul{display:none;}

#mainNav li:hover ul{
display:block;
position:absolute;
top:45px;
left:-1px;
z-index:500;
}

#mainNav li li{
margin:0;
float:none;
height:35px;
line-height:35px;
width:160px;
background:#000;
border-bottom:1px dotted #747474;
}

#mainNav li li a, #mainNav li.current-menu-parent li a,#mainNav li.current-menu-item li a{
width:100%;
height:40px;
padding:0 0 0 10px;
line-height:40px;
font-size:95%;
text-align:left;
color:#fff;
}

#mainNav li li.current-menu-item a,#mainNav li li a:hover{color:#fff;}

nav div.panel{
display:block !important;
float:left;
}

a#menu{display:none;}

}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
	#mainNav{
	clear:both;
	width:100%;
	margin:0 auto;
	background:#ff0007;
	}

	#mainNav a.menu{
	width:100%;
	display:block;
	height:37px;
	line-height:37px;
	font-weight: bold;
	text-align:left;
	color:#fff;
  background: url(../images/menuOpen.png) no-repeat 5px 8px;
	}

	#mainNav a#menu span{padding-left:35px;}

	#mainNav a.menuOpen{
	background: url(../images/menuOpen.png) no-repeat 5px -34px;
	}

	#mainNav a#menu:hover{cursor:pointer;}

	nav .panel{
	display: none;
	width:100%;
	position: relative;
	right: 0;
	top:0;
	z-index: 1;
	}

	#mainNav ul{margin:0;padding:0;}

	#mainNav li{
	float: none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	#mainNav li a,#mainNav li.current-menu-item li a{
	display: block;
	padding:15px 10px;
	text-align:left;
	color:#fff;
	border-bottom:1px dashed #e5e5e5;
	}

	#mainNav li:last-child a{border:0;}
	#mainNav li li:last-child a{border:0;}
	#mainNav li li:last-child a{border-bottom:1px dashed #e5e5e5;}

 	#mainNav li a span{display:none;}

	#mainNav li.current-menu-item a,#mainNav li a:hover,#mainNav li.current-menu-item a,#mainNav li a:active, #mainNav li li.current-menu-item a, #mainNav li.current-menu-item li a:hover, #mainNav li.current-menu-item li a:active,#mainNav li.current-menu-item li a{
	background:#000;
	}

	#mainNav li li{
	float:left;
	border:0;
	}

	#mainNav li li a, #mainNav li.current-menu-item li a, #mainNav li li.current-menu-item a{
  padding-left:40px;
	background:url(images/sub1.png) no-repeat 20px -62px;
	}

	#mainNav li li.current-menu-item a,#mainNav li li a:hover, #mainNav li.current-menu-item li a:hover{
		background:#000 url(images/sub1.png) no-repeat 20px -62px;}

	#mainNav li li:last-child a{background:url(images/subLast.png) no-repeat 20px -65px;}
	#mainNav li li:last-child.current-menu-item a,#mainNav li li:last-child a:hover,#mainNav li.current-menu-item li:last-child a:hover{background:#000 url(images/subLast.png) no-repeat 20px -65px;}

	nav div.panel{float:none;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
  #wrapper, .inner{width:100%;}

	#header{width:96%;padding:0 2%;}

	.contact{padding:10px 0 10px;}

	#mainNav ul{margin:0 auto;}
	#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;
	}

	.banner{width:100%;margin:0 auto;text-align:center;}
  p.banner img{width:100%;height:auto;}

	.widget_search{text-align:center;}

	#footer ul {
		width: 60%;
		margin: 0 auto;
	}

	#footer li{margin-bottom:10px;}
	#footer .brd-none {
		border: none;
	}
	.W_880 {
		flex-wrap:wrap;
		max-width: 100%;
		justify-content: center;
	}
	.okigaru {
		font-size: 5vw;
	}
	.top_banner img {
		width: 100%;
		max-width: 100%;
		height: auto;
	}

}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width: 644px){
	#header h2{padding:0;}
	#header h2 .logo_info {
		position: relative;
		display: block;
		max-width: 100%;
		text-align: center;
		line-height: 1;
		top:auto;
		left: auto;
	}
	#header h2 img{max-width:90%;}
  .contact{padding:0;}
	#header{text-align:center;}
	#header h2,.contact{float:none;}
	.contact{padding:0 0 20px;}
	.contact p{text-align:center;}
	#headerInfo{width:250px;margin:0 auto;}
	img.alignright, img.alignleft{display: block;	margin:5px auto;}
	.alignright,.alignleft{float:none;}
	#mainImg .main_text {
		position: relative;
		max-width:100%;
		left:auto;
		bottom:auto;
		margin:0;
		box-sizing: border-box;
		font-size: 1rem;
	}
	img {
		max-width: 100%;
	}
	#header h1 a {
		display: none;
	}
	.sell-lead img {
		width: 100%;
	}
	/*メインイメージ*/
	.keyImg {
	}
	.keyImg .inner {
		height: 150px;
	}
	.keyImg .inner h1 {
		display: none;
		/*top: 25%;
		left: 3%;
		transform: none;
		font-size: 26px;
		padding: 10px;*/
	}
	/*company.html*/
	.daihyo-main {
		display: block;
	}
	.daihyo-right {
		width: 100%;
		text-align: center;
		margin-left: 0;
	}
	.daihyo-left {
		width:100%;
	}
	.daihyo-intro {
		text-align: center;
	}
	.katagaki {
		text-align: center;
	}
	/*voice.html*/
	.contents-right p {
		line-height: 24px;
	}
	/*blog.html*/
	.post .blog-contents {
		display: block;
	}
	/*content1*/
	.content1-flex {
		display: block;
	}
	.content .blog-content {
		width: 100%;
	}
	.post .content1-left {
		width: 100%;
	}
	.post .content1-right {
		width: 100%;
	}
	/*faq.html*/
	.acd-label {
		padding-right: 60px;
	}
	/*フッター*/
	#footer ul {
		width: 95%;
		margin: 0 auto;
	}
	#footer .brd-tab {
		border: none;
	}
	#footer .brd-none {
		border: none;
	}
	#footer .brd-sp {
		border-left:1px dotted #777;
	}

}
