@charset "utf-8";
@import url("nav.css");
/* =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-size: 100%;
  font-family: inherit;
  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-size: 18px;
  font-family:"Yu Gothic","Helvetica Neue", "Helvetica", "Hiragino Sans", "Arial",  "Meiryo", sans-serif;
  font-weight:500;
  lin-height: 1.8;
  letter-spacing: 1px;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
/* リンク
------------------------------------------------------------*/
a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-size: 100%;
  font-weight: bold;
  color: #e16162;
}
.blog_top a, .blog_post a {
  text-decoration: underline;
}
a:hover, a:active {
  outline: none;
  color: #cdcdcd;
}
a, a img {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a:hover img {
  opacity: 0.5;
}
img {
  margin: 0;
  image-rendering: -webkit-optimize-contrast;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  border: 0;
  max-width: 100%;
  vertical-align: bottom;
  max-height: 100%;
  width: auto;
  height: auto;
}
/* 基本
------------------------------------------------------------*/
body {
  color: #fff;
  position: relative;
  background: #232946;
}
#warapper {
  width: 100%;
  position: relative;
}

.inner {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  position: relative;
}

h2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 0;
  letter-spacing: 2px;
  color: #232946;
}

h2 {
  position: relative;
  display: inline-block;
  padding: 0 100px;
}
h2:before, h2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 50px;
  height: 2px;
  background-color: #232946;
}

h2:before {
  left:0;
}
h2:after {
  right: 0;
}
/* ヘッダー
------------------------------------------------------------*/
header {
  text-align: center;
}
header .inner {
  height: 160px;
  max-width: 1280px;
}
header .logo {
  padding-top: 8px;
  width: 100%;
}
header .logo img {
  width: 90%;
  max-width: 261px;
  height: auto;
}
header .logo h1 {
  font-size: 0.75rem;
  margin: 0 0 20px;
  white-space: nowrap;
}
header .logo h1 br {
  display: none;
}
.add {
  position: absolute;
  top: 35%;
  right: 10px;
  font-size: 0.95rem;
  letter-spacing: 4px;
}
.add li:first-child {
  color: #ffffff;
  padding: 5px 1em;
  margin-bottom: .3em;
  position: relative;
}

.add li:first-child:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000000;
    transform: skew(-25deg);
    content: '';
    z-index: -1;
}
.add li:last-child {
  font-size: 1.2rem;
  font-weight: 900;
  height: 30px;
  letter-spacing: 1px;
}
.add li:last-child a {
  color: #ffffff;
}
.add li:last-child a:hover {
  color: #cdcdcd;
}
/*　ビジュアル
------------------------------------------------------------*/
#visualbox {
  margin-top: 0em;
  padding: 0 1.6em 1.6em;
}
#main_visual, #sub_visual {
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  z-index:-1;
}
#main_visual span{
position:absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width:auto;
max-width:800px;
}
#main_visual img, #sub_visual img {
  width: 100%;
  object-fit: cover;
  object-position: 30%;
  font-family: 'object-fit: cover; object-position: 30%;';
}
#main_visual img{
height:480px;
}
#sub_visual img{
height:380px;
}
#main_visual img.one {
object-position: 50% 80%;
  font-family: 'object-fit: cover; object-position: 50% 80%;';
}
video {
  display: block;
  width: 100%;
  height: 640px;
  object-fit: cover;
}
/*　サブページ・ブログページ全体＆トップ
------------------------------------------------------------*/
.blog_top, .blog_post {
  width: 90%;
  max-width:960px;
  margin: 0 auto;
  line-height: 1.8;
  font-size: 1rem
}
.blog_top{
padding:0 0 5em;
}
.blog_top ul li{
display:flex;
justify-content: space-around;
padding:2em 0;
text-align:left;
border-bottom:1px dashed #ccc;
}

.blog_top ul li span.imag{
display:block;
width:35%;
max-width:300px;
position:relative;
}
.blog_top ul li span.imag img{
width:100%;
height:100%;
max-height:300px;
object-fit: cover;
  object-position: 50%;
  font-family: 'object-fit: cover; object-position: 50%;';
}
.blog_top ul li span.icon{
position:absolute;
top:0;
left:0;
  color: #fff;
  font-weight:600;
	background: #333;
	 padding: 0px 10px;
	font-size: .75rem;
  height: auto;
  z-index: 1;
}
.blog_top ul li div{
width:55%;
}
.blog_top ul li div h3{
font-size:1.25rem;
line-height:1.4;
margin-bottom:.3em;
text-align:left;
padding:0 !important;
width:100%;
color:#000;
font-weight:700;
}
.blog_top ul li div p{
font-weight:500;
}
.blog_top ul a{
display:block;
text-decoration: none;
color:#333;
}
.blog_top ul a:hover{
background-color:rgba(0,0,0,0.1);
}
.blog_top ul a:hover img{
opacity: 1;
}

/* お知らせ
------------------------------------------------------------*/
#news .blog_top dl{
display:flex;
text-align:left;
padding:1.5em 0;
border-bottom:1px solid #ccc;
scroll-margin-top: 60px;
}
#news .blog_top dl dt{
font-weight:700;
}
#news .blog_top dl dt,
#news .blog_top dl dd{
padding:0 1em;
}
#news .blog_top dl dd h3{
display:block;
color:#000;
font-weight:700;
font-size:1.15rem;
text-shadow:none;
margin-bottom:.5em;
line-height:1.3;
}
#news .blog_top dl dd img{
float:left;
width:80%;
height:auto;
margin:1em 10px 10px;
object-fit: cover;
  object-position: 50%;
  font-family: 'object-fit: cover; object-position: 50%;';
}

/*　ポップアップ用矢印
.lum-gallery-button {
  display: none !important;
}*/

/*　サブページ・ブログ記事用
------------------------------------------------------------*/
.blog_top h2, .blog_post h2 {
  position: relative;
}
.blog_post h3 {
  background: url(../image/blog_titleline.png) bottom left no-repeat;
  font-weight: bold;
  letter-spacing: 2px;
  font-size: 1.625rem;
  text-align: left;
  padding: 1em .5em .5em;
  border-bottom: 2px solid #c7b299;
  margin-bottom: .5em;
}
.blog_post h3.ore {
  background: none;
  border: none;
  color: #ef5a24;
  padding: 0;
  letter-spacing: 1px;
  line-height: 1.4;
}
.blog_post p, .blog_post ul {
  font-weight: normal;
  text-align: left;
}
.blog_post .stamp{
margin-bottom:1em;
}
.blog_post .stamp span.icon{
margin-left:.5em;
background:#333;
color:#fff;
padding:0 10px;
}
.blog_post .stamp span.time{
font-size:.875rem;
}
.blog_post img {
  width: 100%;
  max-width:960px;
  height:500px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.blog_post .kiji {
  width: 100%;
  margin:2em auto 8em;
}
.blog_post .kiji:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
.blog_post .kiji div {
  width:100%;
  margin:1.5em auto;
  text-align: left;
}
.blog_post .kiji p {
  margin: 1.5em 0;
}
.blog_post .kiji img {
 width:100%;
 max-width:960px;
}
.blog_post .kiji span {
  font-weight: bold;
  font-size: 1.35rem;
}
.blog_post .kiji .jigyoubox{
margin-top:2em;
}
.blog_post .kiji .jigyoubox dl{
display:flex;
justify-content:space-between;
align-items:flex-start;
background:#fff;
padding:2em;
margin-bottom:3em;
}
.blog_post .kiji .jigyoubox dl:nth-child(2),
.blog_post .kiji .jigyoubox dl:nth-child(4){
flex-direction: row-reverse;
}
.blog_post .kiji .jigyoubox dt{
width:46%;
}
.blog_post .kiji .jigyoubox dt img{
max-height:230px;
}
.blog_post .kiji .jigyoubox dd{
width:50%;
}
.blog_post .kiji .jigyoubox dd h3{
padding:0;
margin-bottom:1.1em;
border-bottom:2px solid #e16162;
font-size:1.5rem;
}
img.rig {
  float: right;
  width: 380px;
  height: 200px;
  margin: 0 1em;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  clear: left;
}
img.lef {
  float: left;
  width: 380px;
  height: 200px;
  margin: 0 1em;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  clear: right;
}

/*　「会社概要」頁
------------------------------------------------------------*/
.blog_post .campany_come{
padding:0 1em;
}
.blog_post .campany_come p{
font-size:1.15rem;
font-weight:600;
}
.blog_post .campany_come img{
width: 100%;
max-width:428px;
height: auto;
margin:0 auto;
}
.colbox{
 background:#181818;
 padding:3em 4em;
 margin-top:3em !important;
}
table {
  width: 100%;
   border-collapse: collapse;
  border-spacing: 0;
  margin: 0 auto;
 color:#fff;
}
table th {
  padding: 15px;
  width: 28%;
  border-bottom: 1px #fff dashed;
   font-weight:600;
}
table.two th {
  background: #ffffff url(../image/th_bg2.png);
}
table td {
width:72%;
box-sizing: border-box;
  padding: 15px 0;
   border-bottom: 1px #fff dashed;
   font-weight:600;
} table td br{
  display:none;
  }
table a{
color:rgba(79,196,207,1);
text-decoration: none !important;
}
table tr th:first-child,
table tr:first-child td{
border-top: 1px #fff dashed;
}
table td dt{
font-weight:700;
}
table td dt:before{
content:"【";
}
table td dt:after{
content:"】";
}

/* サイドバー　ウィジェット*/
#sidebar {
  width: 27%;
  min-width:200px;
}
.widget {
  padding: .5em 1em .5em;
  margin-bottom: 2em;
}
.widget ul {
  text-align: left;
  padding: .5em 0;
}

.widget li {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.widget:last-child li{
border:0;
}

.widget li a {
  color: #000000;
  font-size:1rem;
  font-weight: normal;
  padding: .3em 5px;
  display: block;
  height:100%;
}

.widget li a:hover {
  background-color: rgba(0, 0, 0, .1);
}
.widget h3 {
   font-weight: 700;
  font-size: 1.3rem;
  line-height: 1;
  border-bottom: solid 1px #333;
  padding: 0.3em 0.5em .5em;
  text-align: left;
  color:#000;
  letter-spacing: 2px;
}
/* お問い合わせ
------------------------------------------------------------*/
.tel_contact_box{
background:#000;
color:#fff;
margin:2em auto 6em;
padding:3em 0;
width:95%;
}
.tel_contact_box a{
text-decoration: none;
}

.tel_contact_box div span{
font-size:2rem;
}
/* page navigation
------------------------------------------------------------*/
.pager, .navigation {
  text-align: center !important;
  margin: 4em 0;
}
.pager a{
text-decoration: none;
}
.pager span a, .pager a span, .navigation a {
  padding: 3px 10px;
  margin: 0 1px;
  border-radius: 5px;
  text-decoration: none;
  color: #fff;
  background: rgba(0, 0, 0, 1);
}
.pager a span, .navigation a {
  cursor: pointer;
}
.pager span a:hover, .pager a span:hover, .navigation a:hover {
  background: rgba(0, 0, 0, .3);
}
/* メニュー
------------------------------------------------------------*/
/* レイアウト
------------------------------------------------------------*/
#main {
  text-align: center;
  padding-bottom: 0;
  background:url("../image/back.jpg");
background-color:rgba(255,255,255,0.6);
background-blend-mode:lighten;
  color:#000;
}
.sub #main{


}

.sub #main .inner{
  display: flex;
  justify-content:center;
  align-items: flex-start;
  padding-top: 4em;
  background:none;
  max-width:1200px;
}
.sub #main{
padding-top:5em;
}

/* フッター
------------------------------------------------------------*/
footer {
  background-color: #232946;
  position: relative;
  color: #ffffff;
  font-size:95%;
}
footer .inner {
  margin: 0 auto 4em;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  padding-top: 3em;
}
footer a {
  color: #ffffff;
}
#addbox {
  width: 26%;
}
#map {
  margin-left: 2em;
  width: 60%;
  box-shadow: 0px 0px 5px -1px #555;
}
footer .logo img {
  width: 100%;
  height: auto;
}
footer .logo {
  max-width: 300px;
  margin-bottom: 0em;
}
.logobox {
  position: relative;
}
.logobox ul {
  line-height: 1.5;
  padding-top: .5em;
}
.logobox li {
  white-space: nowrap;
}
/* フッターボタン */
.footbtn a {
  position: relative;
  display: flex;
  justify-content: center;
  background: rgba(79,196,207,0.8);
  padding: 1em;
  margin: 1em .3em 0;
  outline: none;
  color: #fff;
  width: 95%;
}
.footbtn a:hover {
  background-color:  rgba(79,196,207,1);
}
.footbtn a, .footbtn a:before, .footbtn a::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.footbtn a:before, .footbtn a::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
  left: 0;
  width: 100%;
  height: 50%;
}
.footbtn a:before {
  top: 0;
}
.footbtn a::after {
  bottom: 0;
}
.footbtn a:hover:before, .footbtn a:hover::after {
  height: 0;
  background-color: #584D52;
}
#map {
  position: relative;
  padding-bottom: 27%;
  height: 0;
  overflow: hidden;
}
#map2 {
  position: relative;
  width:100%;
  padding-bottom: 80%;
  height: 0;
  overflow: hidden;
  margin-top:0;
}
#map iframe, #map object, #map embed, #map2 iframe, #map2 object, #map2 embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.navi {
  max-width: 960px;
  margin: 3em auto 2em;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  font-size:.85rem;
}
.navi li {
  width: 20%;
  text-align: center;
}
.navi li a {
  display: block;
  height:30px;
  line-height:30px;
}
.navi li a:hover {
  background: rgba(0,0,0,0.2);
}
.copyright{
  text-align: center;
  padding: 1em 0;
  border-top: dashed 1px #ffffff;
}
.copyright a {
}
.copyright span{
display:block;
margin:1em 0 0;
}
/* トップページ
------------------------------------------------------------*/
.top1{

}
.top1 ul {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  align-items: center;
  padding: 5em 0 4em;
  width: 98%;
  margin: 0 auto;
 color:#000000;
}

.top1 p, .top2 p {
  line-height: 2;
  margin: .7em 0;
}
.top1 h2, .top2 h2 {
  margin-bottom: 1em;
  letter-spacing: 2px;
}
.top1 h2{
text-align:left;
padding:0 100px 0 0;
}
.top1 h2:before{
background:none;
}
.top1 h2:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 50px;
  height: 2px;
  background-color: #232946;
}
.top1 h2 br {
  display: none;
}
.btn {
  display: inline-block;
  width: 100%;
  max-width: 580px;
  text-align: center !important;
  background-color: #3e588c;
  font-size: 1.5rem;
  color: #FFF;
  text-decoration: none;
  font-weight: bold;
  padding: 16px 24px;
  border-bottom: 4px solid #2d4066;
  box-shadow: 0px 0px 5px -1px #555;
  margin-bottom: 4em;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn a, .btn2 a {
  color: #fff;
  text-decoration: none;
  display: block;
  width: 100%;
  height: 100%;
}
.btn:hover {
  transform: translateY(4px);
}
.btn2 {
  text-align: center;
  font-size: 2rem !important;
  background-color: #e07f1e;
  border-bottom: 4px solid #db6000;
  margin-top: 1em !important;
  letter-spacing: 3px;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.top1 li {
  text-align: left;
  width: 50%;
  margin-right: 30px;
}
.top1 li:first-child {
  margin-right: 0;
  width: 58%;
}
.top1 li:last-child img {
  width: 100%;
  height: 400px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.top2 {
  padding: 5em 0 4em;
background:url("../image/business_img01.jpg") 90% 50% /cover no-repeat;
background-color:rgba(255,255,255,0.8);
background-blend-mode:lighten;
}
.top2 a {
  color: #fff;
}
.top2 ul {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-between;
  width:98%;
  max-width:1020px;
  margin: 0 auto;
  padding: 2em 0 3em;
}
.top2 li {
  width: 32%;
  margin: 0;
  padding-top:1em;
  background: #181818;
}
.top2 ul:after {
display: block;
content:"";
width: 31%;
}
.top2 li div img {
  width: 90%;
  height: 200px;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}
.top2 li h3 {
  display: block;
  width: 90%;
  text-align: center;
  line-height: 1.6;
  margin: .8em auto;
  font-size:.95rem;
}
/* top3*/
.top3{
background:#fff;
}
.top3 .inner {
  width: 80%;
  max-width: 1080px;
  padding: 5em 0 4em;
}
.top3 h2 {
  position: relative;

  margin-bottom: 1em;
  background: none;
}
.top3 span {
  display: block;
  margin-top: 3em;
  font-size:.95rem;
}
.top3 span a{
color:#f25042;
}

a.fuwa {
  display: block;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: #181818;
  font-weight:500;
  font-size:1rem;
}
dl.newsline {
  display: flex;
  flex-direction: row;
 align-content:center;
 align-items:center;
  flex-wrap: nowrap;
  margin: 0;
  border-bottom: 1px dashed #927C52;
  padding: 1em .7em;
  line-height: 1.4;
  text-align: left;
}
a.fuwa:hover {
  background: rgba(239, 239, 239, .6);
  color: #181818;
}
dl.newsline dt {
 
}
dl.newsline time {
  max-width: 180px;
  margin-left: 10px;
  margin-right: 30px;
  font-size: 90%;
  background: #181818;
  white-space: nowrap;
  color: #fff;
  padding: 3px 10px;
  font-weight:700;
}
/* その他
------------------------------------------------------------*/
/* ページトップ */
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 100;
}
#pageTop a {
  display: block;
  z-index: 999;
  padding: 40px 0 0;
  width: 80px;
  height: 80px;
  background: #000;
  color: #fff;
  text-decoration: none;
  text-align: center;
  border-radius: 50%;
  font-size: 80%;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}
#pageTop a::before {
  font-family: 'Font Awesome 5 Free';
  content: '\f102';
  font-size: 20px;
  color: #fff;
  position: absolute;
  width: 20px;
  height: 20px;
  top: -35px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
/* マーカー */
.border {
  background: linear-gradient(transparent 45%, rgba(193, 39, 45, 0.3) 45%);
}
.border_ore {
  background: url(../image/underline_ore.png) left bottom repeat-x;
}
/* 米印 */
.kome {
  list-style-type: none;
  text-indent: -1em;
}
.kome:before {
  display: inline;
  content: "※";
}
/* ◇印 */
ul.sikaku li {
  list-style-type: none;
  text-indent: -1em;
}
ul.sikaku li:before {
  display: inline;
  content: "◆";
}
.object-fit-img {
  width: 100%;
  height: auto;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

/* 横100 */
.wid100 {
  width: 100% !important;
}
/* リスト数字 */
dl.ol {
  counter-reset: number 0;
}
dl.ol dt:before {
  counter-increment: number 1;
  content: counter(number) ".";
}

/* フォント */
.dai {
  font-size: 1.625rem;
}
.tyu {
  font-size: 1.375rem;
}
.syo {
  font-size: 0.75rem;
}
.bold {
  font-weight: bold;
}
.red {
  color: #DC3033;
}
.b {
  font-weight: 900;
}
.normal {
  font-weight: 400;
}
/* リンクカラー */
.a_color a {
  color: #ffffff;
}
.b_color a {
  color: #333333;
}
.a_color a:hover, .b_color a:hover {
  opacity: .5;
}
/* マーカー */
.marker_pink {
  background: linear-gradient(transparent 60%, #f8e7dc 60%);
}
.marker_green {
  background: linear-gradient(transparent 60%, #BADDDD 60%);
}
/* 入替 */
.sp {
  display: none;
}
/* 余白 */
.pad0 {
  padding: 0 !important;
}
.pad1 {
  padding: 1em !important;
}
.mar0 {
  margin: 0 !important;
}
.mar_t2 {
  margin-top: 2em;
}
/* クリック */
.click {
  font-size: 50%;
  display: block;
  line-height: .8;
  padding-top: 1em;
}
/* 1280px以下
------------------------------------------------------------*/
@media screen and (max-width: 1279px) {
body {
  font-size: 97%;
  }
#main_visual img, #sub_visual img {
  height: 380px;
}
  #visualbox {
    padding: 0;
  }
  #addbox {
    width: 30%;
  }
  h2 {
  font-size: 1.75rem;
}
.top1 h2{
padding:0;
}
.top1 h2:after {
background:none;
}


}
/* 960px以下
------------------------------------------------------------*/
@media screen and (max-width: 959px) {
  /*font*/
  body {
    font-size: 93%;
  }
  .inner{
  width:88%;
  }
  header {
    background: none;
    margin-bottom: 0;
  }
  header .inner {
    width: 96%;
    top: 180px;
    height: 56px;
    font-weight: 700;
  }
  header .logo h1 {
    color: #ffffff;
  }
  header .logo img {}
  .add {
    position: relative;
    text-align: center;
	right:0;
  }
  .add li:first-child {
    background: none;
    color: #ffffff;
    padding: 5px 1em;
    margin-bottom: .3em;
    text-shadow: none;
  }
  .add li:first-child:before {
  top: 50%;
left: 50%;
transform: translate(-50%, -50%) skew(-25deg);
-webkit-transform: translate(-50%, -50%) skew(-25deg);
-ms-transform: translate(-50%, -50%) skew(-25deg);
width:90%;
max-width:320px;
}
  .add li:last-child a {
    color: #ffffff;
  }
  #main {
    padding-bottom: 0;
  }
  .logobox li {
    font-size: 0.875rem;
  }
  .logobox li.dai {
    font-size: 1.3rem;
  }
  #visualbox {
	padding: 0;
  }
  #main_visual img, #sub_visual img {
    filter: brightness(50%);
  }
#main_visual span{
display:none;
}
video {
  height: 400px;
  }

  /*　ブログページ
------------------------------------------------------------*/
.sub #main{
padding-top:5em;
}
  .sub #main .inner {
    -webkit-flex-direction: column;
    flex-direction: column;
    align-items: center;
    padding-top: 2em;
	width:90%;
  }
  .blog_top, .blog_post {
    width: 100%;
	padding-bottom:0;
  }
  .sub #main h2:before, .sub #main h2:after{
  display: none;
   }
   .sub #main h2{
   padding:0;
   width:90%;
   }
  .blog_top ul a {
    width: 100%;
  }
  .blog_post .kiji {
    width: 100%;
    margin:0 auto 4em;
  }
  .blog_post .kiji div {

  }
  
  /* お知らせ
------------------------------------------------------------*/
#news .blog_top dl{
flex-direction: column;
}
#news .blog_top dl dd img{
margin:1em 0 0;
}
   /*　「会社概要」頁
------------------------------------------------------------*/
.blog_post .campany_come{
padding:0;
}
.blog_post .campany_come p{
font-size:1.05rem;
}
.blog_post .campany_come p br{
display:none;
}
 .colbox table td br{
  display:block;
  }
  #sidebar {
    width: 100%;
    max-width: 900px;
    display: flex;
    justify-content: space-between;
    flex-flow: wrap;
    margin-top: 0;
  }
  .widget {
    width: 48%;
  }
  footer .inner {
    margin: 0 auto 4em;
    justify-content: space-around;
  }
  .footbtn a {
    width: 100%;
  }
  #addbox {
    width: 30%;
  }
  #map {
    padding-bottom: 30%;
    width: 56%;
  }
  .copyright {
    font-size: .812rem;
  }
  #nami_box {
    background: none;
  }
  .top1 h2,
  .top2 h2{
font-size:1.65rem;
}
  .top2 li {
    margin: 1em 0em;
  }
  .top2 ul {
    padding: 0em 0 2em;
  }
  .top2 li div img {
    height: 140px;
  }
  .top3 h2 {
    margin-bottom: .5em;
  }
  dl.newsline time {}
  
}
/* 768px以下
------------------------------------------------------------*/
@media screen and (max-width: 768px) {
#main {
  background:#fff;
}
  .top1 h2 {
    text-align: center;
	display:block;
  }
  header .logo img {
    margin-right: 20px;
  }
  .logobox {}
  .logobox li {
    font-size: 1rem;
	text-align:center;
  }
  .logobox li:last-child {
    width: 100%;
  }
  footer .logo {margin:0 auto;}
  footer .logo img{
  margin-left:-.2em;
  }
  .footbtn a {
    padding: .8em 4em;
	margin:1em auto 0;
  }
  footer {
    padding-top: 1em;
  }
  footer .inner {
    -webkit-flex-direction: column;
    flex-direction: column;
    padding-top: 30px;
    margin-bottom: 0;
  }
  #addbox, #map {
    width: 90%;
    margin: 0 auto 2em;
  }
  #map {
    padding-bottom: 50%;
  }
  .navi {
    display: none;
  }
  
  .top1 ul {
    flex-direction: column;
    width: 100%;
    padding: 4em 0;
  }
  .top1 li {
    margin: 0;
  }
  .top1 li:first-child {
    width: 100%;
    padding: 0;
    margin: 0 auto;
  }
  .top1 li:first-child div.inbox {
    width: 90%;
    margin: 0 auto;
  }
  .top1 li:last-child {
    display: none;
  }
  .top2 li:last-child img {
    max-height: 400px;
  }
  .top2 ul {
    flex-wrap: wrap;
    width: 90%;
    margin: 0 auto;
  }
  .top2 li {
    width: 49%;
  }
  .top2 li div img {}

.blog_top ul li span.imag{
width:40%;}
 .blog_post .stamp{
line-height:1;
padding-left:.5em;
}

.blog_post .kiji .jigyoubox dl,
.blog_post .kiji .jigyoubox dl:nth-child(2),
.blog_post .kiji .jigyoubox dl:nth-child(4){
flex-flow: column;
background:url("../image/back.jpg");
background-color:rgba(255,255,255,0.6);
background-blend-mode:lighten;
}
.blog_post .kiji .jigyoubox dt,
.blog_post .kiji .jigyoubox dd{
width:100%;
}
.blog_post .kiji .jigyoubox dd h3{
padding:0;
margin:.8em 0 .3em;
border-bottom:none;
font-size:1.35rem;
}

 
  .btn, .btn2 {
    margin-bottom: 2em;
  }
  /*　「会社概要」頁
------------------------------------------------------------*/
.colbox{
 padding:2em 2em 1em;
 background:url("../image/back.jpg");
background-color:rgba(255,255,255,0.6);
background-blend-mode:lighten;
}
  table {
    width: 100%;
    border: none;
    margin-bottom: 0;
  }
  table th, table td {
    display: block;
    width: auto;
    box-sizing: border-box;
	border:none !important;
	color:#181818;
  }
  table th{
  color:#fff;
  background:#181818;
  font-size:1.15rem;
  }
  table td span {

  }
  table a{
color: #e16162;
text-decoration: underline !important;
}
  img.rig, img.lef {
    float: none;
    width: 100%;
    height: 300px;
    margin: 0 0 1em;
  }

  
}
/* 644px以下
------------------------------------------------------------*/
@media screen and (max-width: 644px) {
 .blog_post .kiji{
  margin-bottom:2em;
  }
.blog_post img {
  height:380px;
  }
  .blog_post h2 br {
    display: none;
  }
 
}
/* 560px以下
------------------------------------------------------------*/
@media screen and (max-width: 559px) {

  h2 {
    font-size: 1.5rem;
  }
  footer .inner {
    margin-top: 20px;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
    font-weight: bold;
  }
  #main_visual img, #sub_visual img {
    height: 380px;
  }
  #sidebar {
    -webkit-flex-direction: column;
    flex-direction: column;
    margin: 0 auto 0;
    width: 98%;
  }
.sub #main{
padding:3em 0;
}
.sub #main .inner {
  display: block;
}
  .blog_post h3 {
    font-size: 1.25rem;
  }
  .blog_post p {
    font-size: 1rem;
  }
  .blog_top{
padding-bottom:0;
width:100%;
}

.blog_top ul li span.imag{
width:100%;
max-width:100%;
margin-bottom:1em;
}
  .blog_top ul a {
    padding: 0 1em;
  }
  .blog_top ul li {
    display:block;
	width:100%;
  }
  .blog_top ul li div {
    width: 100%;
    line-height: 1.5;
  }
  .blog_top ul a h3 {
    font-size: 1.125rem;
  }
  #news .blog_top dl dd img{
width:100% !important;
}
  .blog_post div br {
    display: none;
  }
  .blog_post .kiji .jigyoubox dd h3{
font-size:1.2rem;
}
/*　「会社概要」頁
------------------------------------------------------------*/
  table th{
  font-size:1rem;
  padding:8px 8px 8px 20px;
  }
  .widget {
    width: 100%;
  }
  #pagetop {
    right: 10px;
    bottom: 10px;
  }
  .top1, .top2 {
    line-height: 1.6;
  }
 .top1 h2 br{
 display:block;
 }
    .top1 li:first-child div.inbox {
    width: 90%;
  }
   .top1 br {
    display: none;
  }
   .top1 br.none {
    display: block;
  }
   .top1 ul {
    padding: 3em 0;
  }
  .btn, .btn2 {
    font-size: 1.35rem !important;
  }
  .top1 li:last-child img {
    max-height: 280px;
  }
  .top2 {
    padding-bottom: 2.5em;
  }
  .top2 ul {
    -webkit-flex-direction: column;
    flex-direction: column;
    padding: 0 0 1.5em;
  }
  .top2 li {
    width: 100%;
  }
  .top2 li div img {
    height: 200px;
  }
  .top3 .inner {
    padding: 4em 0;
  }
  .top3 h2 {
    margin-bottom: 0;
  }
  .top3 span {
    margin-top: 2em;
  }
  dl.newsline {
    display: block;
    font-size: 100%;
  }
  dl.newsline dt {
    margin-bottom: 2%;
  }
  dl.newsline time {
    margin: 0;
  }
  
   
  .tel_contact_box {
    max-width: 98%;
  }
  
  /* フォント */
  .dai {
    font-size: 1.375rem;
  }
  .tyu {
    font-size: 1.125rem;
  }
  .syo {
    font-size: 0.625rem;
  }
  #map {
    padding-bottom: 80%;
  }
}
/* 480px以下
------------------------------------------------------------*/
@media screen and (max-width: 480px) {
  header .logo img {
    margin: 0;
  }
  header .logo h1 {
  font-size: 0.7rem;
  margin: 0 0 30px;
}
    header .logo h1 br {
    display: block;
  }
   
  img.rig, img.lef {
    margin: 0;
  }
  
  .logobox li {
    font-size: 0.875rem;
  }
  .footbtn a {
    padding: .8em;
  }
  #map {
    padding-bottom: 100%;
  }

  .top2 h2,
  .top3 h2{
  padding:0;
  }
  .top2 h2:before,
  .top2 h2:after,
  .top3 h2:before,
  .top3 h2:after{
  background:none;
  }
  .top2 {
    padding: 3em 0;
  }
  
 .top3 .inner{
 padding:3em 0;
 }
 
}
/* 320px以下
------------------------------------------------------------*/
@media screen and (max-width: 320px) {

 
}