@charset "UTF-8";

/* 共通部分
-----------------------------------*/
html {
    font-size: 100%;
}
body {
    font-family: '游明朝',"Yu Mincho", 'Candara', serif;
    line-height: 1.7;
    color: #432;
}
a {
    text-decoration: none;
    font-family : '游明朝',"Yu Mincho", 'Candara';
    color: #000;
}
/*--リンクホバーエフェクト設定-----*/
a span {
  position: relative;
  display: inline-block;
  transition: .3s;
}
a span::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: '';
  width: 0;
  height: 1px;
  background-color: #ffffff;
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
a span:hover::after {
  width: 100%;
}

img {
    width: 100%;
}

li p {
    font-size: 1rem;
}
h2 span {
    font-size: 1.5rem;
}
.page-header {
      display: flex;
}
/* header
----------------------------------*/

.top-logo {
      width: 100%;
      height: 100vh;
      border: solid 0px #fff;
      position: relative;
}
.top-logo img {
      width: 330px;
      position: absolute;
      top: 30px;
      right: 0;
      bottom: 0px;
      left: 0;
      margin: auto;
      /* じわっと画像が表示される */
      animation: fadeIn 2s ease 0s 1 normal;
        -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

.width {
      width: 100vw;
}



/*ヘッダーメニュー・レスポンシブ対応設定*/
.inner {
    width: 100%;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}

/* header */
#top-head {
    top: -100px;
    position: absolute;
    width: 100%;
    margin: 20px auto 0;
    padding: 80px 0 0;
    line-height: 1;
    z-index: 999;
    border: 0px solid #fff;
}
#top-head a,
#top-head {
    color: #fff;
    text-decoration: none;
}
#top-head .inner {
    position: absolute;
}
#top-head img {
    position: absolute;
    left: 20px;
    top:20px;
    width: 180px;
}
#global-nav ul {
    position: relative;
    width: 100%;
    top: 20px;
    text-align: right;
    list-style: none;
    font-size: 0.8rem;
    border: 0px solid #432;
    line-height: 1.7;
}

#global-nav ul li {
    padding: 0 20px;
    display: inline-block;
    text-align: center;
}
#global-nav ul li a {
    padding: 0 0px;
}

/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0px;
    height: 80px;
    background: #fff;
    background: rgba(255,255,255,.8);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}

#top-head.fixed #global-nav ul {
  position: relative;
  width: ;
  top: 10px;
  display: inline-block;
  text-align: center;
  list-style: none;
  font-size: 1.3rem;
  line-height: 1.7;
}
#top-head.fixed #global-nav ul li {
    width: ;
    display: inline-block;
    text-align: center;
    padding: 0 20px;
    border: 0px solid #432;
}
#top-head.fixed #global-nav ul li a {
    font-size: 1rem;
    color: #333;

}
#top-head.fixed #global-nav  a:hover {
    color: #bbb;
}

/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

/* home
----------------------------------*/
.home-content {
      text-align: center;
      margin-top: 10%;
}
.home-content p {
      font-size: 1.125rem;
      margin: 10px 0 42px;
}

#home {
      background-image: url(../images/page-title/top01.jpg);
      background-size: cover;
      height:auto;
      margin-bottom: 0px;
      background-attachment: fixed;
      background-repeat: no-repeat;
      background-position: top center;
      position: relative;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}


.touka {
      background-color: rgba(0,0,0,0.5);
      height: 50%;
      padding: 50px 0;
      border: 0px solid #fff;
      display: block;
}


/* home 紹介文字 */
.center-moji {
      color: #fff;
      font-size: 1.1rem;
      padding: 0px auto;
      margin:0px auto;
      width: 60%;
      text-align: center;
}
.center-moji02 {
      font-size: 1.1rem;
      padding: 0px auto;
      margin: 60px auto;
      width: 65%;
      text-align: center;
}
.catch-copy p {
      line-height: 1.3rem;
}
/*下矢印*/
.arrow-bottom {
  position: relative;
  display: block;
  text-align: center;
  width: 50px;
  height: 50px;
  bottom: 100px;
  margin:auto;
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}
/*上矢印*/
.arrow-top {
  position: relative;
  display: block;
  text-align: center;
  width: 20px;
  height: 20px;
  bottom: 20px;
  margin:auto;
  border-top: 3px solid #727272;
  border-left: 3px solid #727272;
  transform: rotate(45deg);
}


/* 見出しH2 */
.midashi {
       font-size: 2rem;
       color: #432;
       background:;
       margin: 0% auto;
       width: 60%;
       padding-left:20px;
       text-align: left;
       border-bottom: 1px #432 solid;
}
/* 見出しH3 */
.midashi02 {
       font-size: 1.5rem;
       color: #432;
       background:;
       margin: 0% auto;
       width: 60%;
       padding-left:20px;
       text-align: left;
       border-bottom: 1px #432 solid;
}

.midashi03{
    font-size: 1.5rem;
    letter-spacing: 0.2rem;
    color: #4D4D4D;
    width: 100%;
    padding-left: 10px;
    text-align: left;
    border-bottom: 0.1px #B5B5B5 solid;
}
.news {
      margin: 50px auto 100px;
      width: 750px;
      text-align: left;

}
.news li {
     border-bottom: solid 0.5px #dddddd;
     margin: 20px auto;
     list-style: none;
}

/* TOP画面 大きな背景画像 */
.big-bg {
      height: 100vh;
      width: 100%;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
    }

/* ページトップの見出し */
.page-title {
      position: absolute;
      left:0;
      right: 0;
      margin: auto;
      text-align: center;
      margin: 0 auto;
      font-size: 2.5rem;
      text-transform: uppercase;
      font-weight: normal;
      color: #fff;
      margin: 150px auto 0;
      border-bottom: 0.5px solid #fff;
      width: 250px;
}
.page-title-02 {
      position: absolute;
      left:0;
      right: 0;
      margin: auto;
      text-align: center;
      margin: 0 auto;
      font-size: 1.8rem;
      text-transform: uppercase;
      font-weight: normal;
      color: #fff;
      margin: 200px auto 0;
}

/* ボタン */
.button {
      -webkit-transition: all 0.3s;
      transition: all 0.3s;
      font-size: 1rem;
      border-radius: 0.5rem;
      border: #4C4C4C 1px solid;
      background: none;
      color: #4C4C4C;
      padding: 15px 70px;
      margin: 0px auto 50px;
      text-align: center;
}

.button:hover {
      background: #4C4C4C;
      color: #fff;
}
.button-wrapper {
      text-align: center;
      margin:0 auto 50px;
}
.button-wrapper2 {
      text-align: left;
      margin:0 auto 50px;
}

.banner_box{
     width:70%;
     border: solid 0px;
     margin: 0px auto;
     display: flex;
     justify-content: center;
}

.box1{
     font-size: 0.9rem;
     width:100%;
     border: solid 0px;
     margin: 0px 25px;
     overflow: hidden;
}

.home-jarnal {
      margin:30px auto 50px;
      width: 62%;
      display: flex;
      justify-content: space-between;
      border: solid 0px;

}
.jarnal-item {
      font-size: 0.9rem;
      padding: 18px 15px;
      width: 320px;
      height: 70%;
      overflow: hidden;
      position: relative;
      text-align: center;

}
.jarnal-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
}
.back_color{
     background: #EDEDED;
     border: 0px solid;
     padding-top: 70px;
}
/* ------画像マスクエフェクト設定----------*/
/*画像サイズ設定*/
.size1{
  width:100%;
  height: 200px;
  overflow: hidden;
}

.toGray{
-webkit-filter: grayscale(0%);
-moz-filter: grayscale(0%);
-o-filter: grayscale(0%);
-ms-filter: grayscale(0%);
filter: grayscale(0%);
transition:0.5s;
transition:0.5s;
}

.toGray:hover{
-webkit-filter: grayscale(100%);
-moz-filter: grayscale(100%);
-o-filter: grayscale(100%);
-ms-filter: grayscale(100%);
filter: grayscale(100%);
}


/* 日付見出し */
.jarnal-item h3 {
      font-size: 1.3rem;
      text-align: center;
      border-bottom: solid 1px #B5B5B5;
      margin:10px auto;
}





/*タイトル画像ふわっと表示設定-----------
/* じわっと画像が表示される ---------　一度追加していたら不要*/
@keyframes fadeIn { /*上のbody内で呼び出しているアニメーションと名前をそろえる*/
    0% {opacity: 0} /* 始め */
    100% {opacity: 1} /* 終わり */
}

/*古いブラウザ用　---------　一度追加していたら不要*/
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

/*タイトル文字ふわっと表示設定-----------------*/
.effect-fade {
 opacity : 0;
 transform : translate(0, 45px);
 transition : all 800ms;
}
.effect-fade02 {
 opacity : 0;
 transform : translate(0, 80px);
 transition : all 1900ms;
}

.effect-fade.effect-scroll {
 opacity : 1;
 transform : translate(0, 0);
}

.effect-fade02.effect-scroll {
 opacity : 1;
 transform : translate(0, 0);
}


/* ニュースページ
---------------------------------------------*/
#news {
      background-image: url(../images/page-title/news01.jpg),linear-gradient(#fff,#35221C);
      background-blend-mode: luminosity;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      top :0;
      width: 100%;
      height: 400px;
      margin-bottom: 0px;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}


/*--
#news::before{
  height: 400px;
	透過した黒を重ねる
	background-color: rgba(0,0,0,0.5);
 どの範囲に重ねるかを指定
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

--*/

/* 見出しH2 */
.midashi02 {
       font-size: 1.5rem;
       color: #432;
       background:;
       margin: 0% auto;
       width: 850px;
       text-align: left;
       border-bottom: 1px #432 solid;
}
.midashi02 span {
      font-size: 1rem;
}
.news-container {
      width:800px;
      margin: 0 auto 150px;
      padding: 30px 0;
}
/* 会社情報ページ
----------------------------------------------*/
#company {
      background-image: url(../images/page-title/image02.jpg),linear-gradient(#fff,#001D35);
      background-blend-mode: luminosity;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      width: 100%;
      height: 400px;
      margin-bottom: 0px;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#company::before{
  height: 400px;
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.4);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}
.company-container {
      font-size: 0.9rem;
      margin:100px auto;
      width:820px;
      display: flex;
      justify-content: flex-start;
      border: 0px solid;
}
.company-item01 {
      border:;
      margin: 10px;
      padding:30px;
      border: 0px solid;
}
.company-item02 {
      width: 600px;
      border:0px solid;
      text-align: left;
      margin: 10px;
      padding:0 0 0 0px;
}
.company-item01 img {
      width: 260px;
}

.company-item02 th {
      width:100px;
      text-align: center;
}
table {
      border-collapse: collapse;
}
th {
      width:;
      padding: 10px;
      border-bottom: 1px solid #bbbbbb;
}
td {
      padding-left: 50px;
      border-bottom: 1px solid #bbbbbb;
}

/*歴史・沿革
-------------------------------------------- */
/*歴史・沿革ボックス */
.company-container02 {
      margin:50px auto;
      width:800px;
      text-align:center;
      border: 0px solid;
}

.history th {
      background: #e6e6e6;
      width: 200px;
      border-top: 1px solid #bbbbbb;

}
.history td {
      padding: 20px 0 20px 40px;
      width: 800px;
      text-align: left;
      border-top: 1px solid #bbbbbb;
}
/*メッセージ画像*/
#message {
     background-image: url(../images/page-title/message.jpg);
     background-attachment: ;
     background-position: center bottom;
     background-repeat: no-repeat;
     height: 450px;
     margin-bottom: 0px;
     position: relative;
}
#message .mask02 {
	   width:			100%;
     height:			100%;
	   position:		absolute;
     background-color:	rgba(255,255,255,0.2);

}
.page-title02 {
  position: absolute;
  left:0;
  right: 0;
  margin: auto;
  text-align: center;
  margin: 0 auto;
  font-size: 2.5rem;
  text-transform: uppercase;
  font-weight: normal;
  color: #fff;
  margin: 170px auto 0;
  border-bottom: 0.5px solid #fff;
  width: 250px;
}
/*下線----------*/
.kasenn {
	position: relative;
	height: 3px;
	border-width: 0;
	background-image: -webkit-linear-gradient(left,
	transparent 0%,#4C4C4C 50%,transparent 100%);
	background-image:         linear-gradient(90deg,
	transparent 0%,#4C4C4C 50%,transparent 100%);
}



/* 製品情報ページ
-----------------------------------------------*/
#products {
      background-image: url(../images/page-title/products01.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      height: 400px;
      margin-bottom: 0px;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#products::before{
  height: 400px;
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.5);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

.products-container {
      width: 800px;
      border: solid 0px;
      margin: 20px auto 50px;
      display: flex;
      justify-content: space-between;
}
.products-item {
      width: 220px;
      height: 220px;
      margin-top: 30px;
      border: solid 0px;
      background: #fff;
}
.products-item img {
      width: 100%;
      height: 220px;
      object-fit: cover;
}
.title {
     font-size: 1.2rem;
     line-height: 150%;
}

/* ジャーナルページ
------------------------------------------------*/
#jarnal {
      background-image: url(../images/page-title/jarnal01.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      height: 400px;
      margin-bottom: 0px;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#jarnal::before{
  height: 400px;
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.2);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}

/*記事部分*/
.article {
  width: 74%;
  display: block;
}
/*サイドバー*/
.aside {
  width: 22%;
}
.aside_item {
  margin-bottom: 10px;
}
/*サイドバー固定設定*/
.aside-fixed {
  position: sticky;
  margin-bottom: 0;
  top: 80px;
  z-index: 1;
}

/*記事＋サイドバー枠*/
.jarnal-contents {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  margin-bottom: 50px;
  width: 60%;
  border: 0px solid;
  margin: 50px auto;
}
/*タイトル部分*/
.post-info {
  position: relative;
  padding-top: 4px;
  margin-bottom: 40px;
}
/*日付部分*/
.post-date {
  background: #4EBAD8;
  border-radius: 50%;
  color: #fff;
  width: 100px;
  height: 100px;
  font-size: 1.5rem;
  text-align: center;
  position: absolute;
  top: 0;
  padding-top: 13px;
}
/*日付部分水平線*/
.post-date span {
  font-size: 1rem;
  border-top: 1px rgba(255,255,255,.5) solid;
  padding-top: 6px;
  display: block;
  width: 60%;
  margin: 0 auto;
}
.post-title {
  font-size: 1.5rem;
  border-bottom: solid 1px #828282;
  padding-top: 10px;
}
/*タイトル部位置調整*/
.post-title,
.post-cat {
  margin-left: 120px;
}
/*サイドバー設定*/
.sub-title {
  font-size: 1.4rem;
  padding: 0 8px 3px;
  border-bottom: 2px #4EBAD8 solid;
  font-weight: normal;
}

.aside p {
  font-size: 0.9rem;
  padding: 12px 10px;
}

.sub-menu {
  font-size: 0.9rem;
  margin-bottom: 60px;
  list-style: none;
}
.sub-menu li{
  border-bottom: 1px #ddd solid;
}
.sub-menu a {
  color: #432;
  padding: 10px;
  display: block;
}
.sub-menu a:hover {
  color: #0bd;
}
.hr01 {
  border-width : 2px 0 0 0;
  border-style: dashed;
  border-color: #E2E2E2;
}

/*ブログ画像横並び設定*/
.yokonarabeimg{
display:inline-block;
width:calc(98% / 3);
}

.sub-title-img {
  background-position: center;
  margin: 10px auto;
  text-align: center;
}
.sub-title-img img {
  width: 130px;
  height: 130px;
  border-radius: 50%;
}



/* お問い合わせページ
-----------------------------------------------*/
#contact {
      background-image: url(../images/page-title/contact01.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      height: 400px;
      margin-bottom: 0px;
      /* じわっと画像が表示される */
      animation: fadeIn 1s ease 0s 1 normal;
        -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
#contact::before{
  height: 400px;
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.5);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}
.center {
     width:70%;
     margin: 0 auto;
     text-align: center;
}
.left {
     width:70%;
     margin: 0 auto;
}



/***ステップバーデザイン4***/
.step-wrap4 {
 counter-reset: count;
 margin: 0 auto;
 position: relative;
 border: 0px solid;
 max-width: 50%;
}
.step-content4 {
 padding: 1em 0 1.3em 2.5em;
 margin: 0;
 position: relative;
}
.step-content4::before {
 content: "";
 display: block;
 width: 70px;
 height: 70px;
 background: #4EBAD8;
 border-radius: 50%;
 position: absolute;
 top: 0;
 left: -3px;
}
.step-content4::after {
 content: "";
 display: block;
 height: calc(100% - 70px);
 border-left: solid 2px #ddd;
 position: absolute;
 top: 70px;
 left: 30px;
}
.step-label4 {
 color: #fff;
 font-weight: bold;
 font-size: 13px;
 position: absolute;
 top: 10px;
 left: 17px;
}
.step-label4::after {
 counter-increment: count;
 content: counter(count);
 position: absolute;
 font-size: 30px;
 top: 8px;
 left: 7px;
}
.step-title4 {
 font-weight: bold;
 color: #4EBAD8;
 font-size: 140%;
 margin-left: 2.5em;
}
.step-body4 {
 margin-top: 1rem;
 padding: 0 0 2em 4rem;
 border-bottom: solid 1px #ddd;
}
.step-wrap4 > :last-of-type::after {
 display: none;
}
/***ステップバーデザイン４***/



/* フッター
-------------------------------------------- */

.footer-line {
      border: solid 0.5px #fff;
      width:100%;
      text-align: center;
      margin: 30px 0px;
}
.footer-line02 {
      border: solid 0.5px #C1C1C1;
      width:100%;
      text-align: center;
      margin: 30px 0px;
}
.footer01 {
      width:100%;
      border: solid 0px;
      background: #4C4C4C;
      color: #fff;
      font-size: 0.8rem;
      display: flex;
      justify-content: center;
}
.footer01 img {
      width: 40%;
      margin: 0 auto;
      text-align: center;
}
.footer02 {
     display: flex;
     border: 0px solid;
     background: #e6e6e6;
}
.footer-menu01 {
      width: 30%;
      margin: 60px 0px;
      text-align: left;
      border: 0px solid #fff;
}
.img-footer{
     text-align: center;
}
.footer-menu02 {
      width: 40%;
      margin: 60px 0px;
      text-align: left;
      border: 0px solid #fff;
      line-height: 30px;
}
.footer-menu03 {
      width: 100px;
      margin: 30px 20px;
      border: 0px solid;
}
.footer-menu02 a {
      color: #fff;
}
.footer-menu02 a {
  position: relative;
  display: inline-block;
  transition: .3s;
}
.footer-menu02 a::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: '';
  width: 0;
  height: 1px;
  background-color: #fff;
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
.footer-menu02 a:hover::after {
  width: 100%;
}

/*フッターコピーライト*/
footer {
      background: #4C4C4C;
      text-align: center;
      padding: 10px 0;
      color: #CECECE;
}
footer p {
      font-size: 1.3rem;
}






/* モバイル版
--------------------------------------------------------------------------------------------------------------------------*/
@media (max-width: 480px) {
  body {
      font-family: sans-serif;
  }
  a {
      font-family : sans-serif;
      color: #000;
  }


  .main-nav {
        display: none;
  }

  .logo-left {
        width:50px;
        border: 0px solid #fff;
        position: absolute; /* 絶対位置指定（左上）*/
        top: 0;
        left: 0;
  }

  .top-logo {
        width: 100%;
        height: 100vh;
        border: solid 0px #fff;
        position: relative;
  }
  .top-logo img {
        width: 150px;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0px;
        left: 0;
        margin: auto;
  }


  /* home
  ----------------------------------*/
  #home::before {
    content:"";
    display:block;
    top: 0;
    left: 0;
    background-size: cover;
    z-index:-1;
    width:100%;
    min-height:100%;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top center;
  }

  .home-content {
        text-align: center;
        margin-top: 10%;
  }
  .home-content p {
        font-size: 1.125rem;
        margin: 10px 0 42px;
  }
  .big-bg{
    height: auto;
    width: 100vw;
  }
  .touka {
        background-color: rgba(0,0,0,0.3);
        height: 50%;
        padding: 50px 0;
        border: 0px solid #fff;
  }
  /* home 紹介文字 */
  .center-moji {
        color: #fff;
        font-size: 1rem;
        padding: 100px auto;
        margin:100px auto;
        width: 75%;
        text-align: center;
  }
  .center-moji h1 {
        font-size: 1.8rem;
  }
  .center-moji02 {
        font-size: 1.1rem;
        padding: 100px auto;
        margin:100px auto;
        width: 100vh;
        text-align: center;
  }
  .catch-copy p {
        line-height: 1.3rem;
  }

  .arrow-bottom {
    width: 40px;
    height: 40px;
  }
  /* 見出しH2 */
  .midashi {
         width: 90%;
         text-align: center;
         border-bottom: 1px #432 solid;
  }
  /* HOME-NEWS-----------*/
  .news {
        width: 85%;
        text-align: left;
  }
  .news li span {
       font-size: 0.3rem;
  }
  .news li {
       list-style-type: none;
       font-size: 0.3rem;
  }

  /* TOP画面 大きな背景画像 */
  .big-bg {
        height: 100vh;
        background-size: cover;
        background-position: center top;
        background-repeat: no-repeat;
      }

  /* ページ見出し */
  .page-title {
        font-size: 2.5rem;
        text-transform: uppercase;
        font-weight: normal;
        color: #fff;
        text-align: center;
        margin: 120px auto;
        border-bottom: 0.5px solid #fff;
        width: 250px;
  }
  .page-title-02 {
        margin: 170px auto;
        width: 500px;
  }
  /* HOME-JARNAL--------*/
  .home-jarnal {
        margin:50px auto 50px;
        flex-direction: column;
        align-items: center;
  }
  .home-jarnal h3 {
        font-size: 1.5rem;
  }
  .jarnal-item {
        padding: 30px;
        width: 300px;
        overflow: hidden;
        position: relative;
  }

  .midashi {
    padding: 0;
  }
  /* 画像マスクエフェクト設定----------*/

  .maskimg02 {
        width:100%;
        height: 300px;
        overflow: hidden;
        position: relative;
  }
  .maskimg02 .caption {
        margin: 70px auto;

  }

  /* TOPメニュー画像 */
  #top-menu01 {
        height: 200px;
        margin-bottom: 0;
  }
  #top-menu02 {
        height: 200px;
        margin-bottom: 0;
  }
  .maskimg02 {
        height: 200px;

  }

  /* ニュースページ
  ------------------------------------*/
  #news {
        height: 300px;
  }
  #news::before{
    height: 300px;
  }
  .bktouka {
         height: 300px;
  }
  .midashi02 {
        font-size: 1rem;
        width: 80%;
  }
  .midashi02 span {
        font-size: 0.8rem;
  }

  .news-container {
        width:80%;
  }

  /* 会社情報ページ
  ---------------------------------------*/
  #company {
        height: 300px;
  }
  #company::before{
    height: 300px;
  }
  .company-container {
        margin:auto 0;
        width:100%;
        flex-direction: column;
        align-items: center;
        text-align: center;
        border: solid 0px;
  }

  .company-item02 {
        width:100%;
        font-size: 0.8rem;
        margin:0 0px;
        padding: 0 0px;
        border: solid 0px;
        text-align: center;
  }
  .company-item02 table {
        display: inline-block;
  }
  .company-item01 img {
        width: 180px;
        margin: auto 0;
  }
  .midashi span {
      display: none;
  }

  /*歴史・沿革
  ------------------------ */
  /*歴史・沿革ボックス */
  .company-container02 {
        margin: 50px auto;
        width: 100%;
        border: 0px solid;
  }

  .history th {
        font-size: 0.7rem;
        width: 25%;
        text-align:center;
  }
  .company-container02 span {
        display: none;
  }
  .history td {
        font-size: 0.9rem;
        padding: 10px 10px 10px 10px;
        width: 75%;
  }
  /*メッセージ画像*/
  #message {
       background-size: auto 300px;
       height: 300px;
  }

  .center-moji02 {
        font-size: 0.8rem;
        margin:20px auto;
        width: 85%;
  }
  .page-title02 {
    font-size: 2rem;
    padding: 80px 0 0 0;
    width:170px;
  }
  /* 製品情報ページ
  -----------------------------------------------*/
  #products {
        height: 300px;
  }
  #products::before{
    height: 300px;
  }
  .products-container {
        width: 100%;
        border: solid 0px;
        margin:;
        flex-direction: column;
        align-items: center;
  }
  .products-item {
        width: 60%;
        margin: 0 0 30px 0;
        border: solid 0px;
        background: #432;
  }
  .products-item img {
        width: 100%;
  }

  /*JARNALページ-----------------------------------*/
.post-info {
  width: 100%;
  flex-direction: column;
  align-items: center;
}
.post-title{
  margin: 0 0 0 90px;
  padding: 0px;
  font-size: 1.1rem;
}
.post-cat {
  margin: 0 0 0 90px;
}
.post-date {
   width: 80px;
   height: 80px;
   font-size: 1.2rem;
}
.post-date span {
    font-size: 0.8rem;
}
  .article {
    width: 100%;
    margin: 0 auto;
  }
  .aside {
      width: 100%;
      margin-top: 150px;
      text-align: center;
      font-size: 0.8rem;
  }
  .aside {
      font-size: 0.8rem;
  }
  .article p {
      font-size: 0.7rem;
  }

  /*ブログ画像横並び設定*/
  .yokonarabeimg{
  width:calc(100% / 3.2);
  }


/*  お問い合わせページ：フロー部分-----------------------*/
/***ステップバーデザイン4***/

.step-wrap4 {
 margin: 0 auto;
 max-width: 80%;
}
.step-content4 {
 position: relative;
 flex-direction: column;
 align-items: center;
 border: 0px solid;
 text-align: center;
 padding: 36px 0 0px 0;
}
.step-content4::before {
 position: absolute;
 border: 0px solid;
 margin: 20px 0 0 0;
}
.step-content4::after {
 display: none;
  margin: 20px 20px 0 0;
}
.step-label4 {
  position: absolute;
  top: 0;
  left: 0;
  padding: 10px 0 0 15px;
  border: 0px solid;
  margin: 20px 20px 0 0;
}
.step-label4::after {
 border: 0px solid;
 padding: 11px 0 0 17px;
}
.step-title4 {
 padding: 0 auto;
 margin: 0 0 0 40px;
 width: 100%;
 border: 0px solid;
}
.step-body4 {
 width: 100%;
 margin: 35px 0 0px 0;
 padding: 0 0 30px 0;
 border-bottom: solid 1px #ddd;
 font-size: 0.9rem;
}
.step-wrap4 > :last-of-type::after {
 display: none;
}




  /* フッター-----------------------*/
  .footer01{
       background: #4C4C4C;
  }
  .footer-menu01.img-footer img {
        width: 150px;
  }

  .footer-menu02 p {
        line-height: normal;
        border: 0px solid;
        font-size: 0.8rem;
  }
  .footer-menu02 span {
       display: none;
  }

  /*フッターコピーライト*/
  footer {
        background: #e6e6e6;
        text-align: center;
        padding: 10px 0;
  }
  footer p {
        font-size: 1rem;
  }


}


/* タブレット版
-----------------------------------------------------------------------------------------------------------------------*/
@media (max-width: 1024px){

  .news {
      width: 60%;
  }
  .footer-menu01 {
    width: 40%;
  }
  .footer-menu02 {
    width: 60%;
  }

}

/* タブレット版
-----------------------------------------------------------------------------------------------------------------------*/
@media (max-width: 768px){

  body {
      font-family: '游明朝',"Yu Mincho", 'Candara', serif;
      line-height: 1.7;
      color: #432;
  }
  a {
      text-decoration: none;
      font-family : '游明朝',"Yu Mincho", 'Candara';
      color: #000;
  }


.main-nav {
      display: none;
}

#top-head img {
      display: none;
}

.top-logo {
      width: 100%;
      height: 100vh;
      border: solid 0px #fff;
      position: relative;
}



/* home
----------------------------------*/
#home::before {
content: "";
background: url(img/pege-title/top01.jpg) no-repeat top center;
background-size: cover;
display: block;
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: -1;
transform: translateZ(0);
}


.home-content {
      text-align: center;
      margin-top: 10%;
}
.home-content p {
      font-size: 1.125rem;
      margin: 10px 0 42px;
}


.touka {
      background-color: rgba(0,0,0,0.3);
      height: 50%;
      padding: 0px 0;
      border: 0px solid #fff;
}
/* home 紹介文字 */
.center-moji {
      color: #fff;
      font-size: 1rem;
      padding: 100px auto;
      margin:100px auto;
      width: 75%;
      text-align: center;
}
.center-moji h1 {
      font-size: 1.8rem;
}
.center-moji02 {
      font-size: 1.1rem;
      padding: 0px auto;
      margin:0px auto;
      width: 90%;
      text-align: center;
}
.catch-copy p {
      line-height: 1.3rem;
}

.arrow-bottom {
  width: 40px;
  height: 40px;
}
/* 見出しH2 */
.midashi {
       width: 90%;
       text-align: center;
       border-bottom: 1px #432 solid;
}

.midashi03 {
       font-size: 1.3rem
}

/* HOME-NEWS-----------*/
.news {
      width: 85%;
      text-align: left;
}

.news span {
      font-size: 0.8rem;
}
.news li {
     list-style-type: none;
}
.news a {
     font-size: 0.7rem;
}

/* TOP画面 大きな背景画像 */
.big-bg {
      background-attachment: fixed;
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
    }

/* ページ見出し */
.page-title {
      font-size: 2.5rem;
      text-transform: uppercase;
      font-weight: normal;
      color: #fff;
      text-align: center;
      margin: 120px auto;
      border-bottom: 0.5px solid #fff;
      width: 250px;
}
.page-title-02 {
  font-size: 1.7rem;
  padding: 120px 0 0 0;
  margin: 50px auto;
  width:170px;
}

/*トップページ画像リンク-----*/
.banner_box {
  flex-direction: column;
  text-align: center;
}
.box1 {
  text-align: center;
  padding-top: 30px;
}
.button-wrapper2 {
  text-align: center;
}

/* HOME-JARNAL--------*/
.home-jarnal {
      width: 70%;
      margin: auto;
      flex-direction: column;
      align-items: center;
}
.home-jarnal h3 {
      font-size: 1.5rem;
}
.jarnal-item {
      padding: 30px;
      width: 100%;
      position: relative;
}

/* 画像マスクエフェクト設定----------*/

.maskimg02 {
      width:100%;
      height: 300px;
      overflow: hidden;
      position: relative;
}
.maskimg02 .caption {
      margin: 70px auto;

}
.maskimg02 {
      height: 200px;
}

.banner_box p {
  font-size: 0.8rem;
}
.box1 {
  width: 100%;
  margin: 0 10px;
}
.button {
   width: 30%;
   font-size: 0.8rem;
}


/* ニュースページ
------------------------------------*/
#news {
      height: 300px;
}
#news::before{
  height: 300px;
}
.bktouka {
       height: 300px;
}
.midashi02 {
      font-size: 1rem;
      width: 80%;
}
.midashi02 span {
      font-size: 0.8rem;
}
.news-container {
      width:80%;
}

/* 会社情報ページ
---------------------------------------*/
#company {
      height: 300px;

}
#company::before{
      height: 300px;
}
.company-container {
      display: inline-block;
      margin:auto 0;
      width:100%;
      flex-direction: column;
      align-items: center;
      text-align: center;
      border: solid 0px;
}

.company-item02 {
      font-size: 0.8rem;
      width: 100%;
      margin: 50px auto;
      padding: 0 0px;
      border: solid 0px;
      text-align: center;
}
.company-item02 table {
      display: inline-block;
      text-align: left;
}
.company-item01 img {
      width: 180px;
      margin: auto 0;
}
.midashi span {
    display: none;
}

/*歴史・沿革
------------------------ */
/*歴史・沿革ボックス */
.company-container02 {
      margin: 50px auto;
      padding: 0;
      width: 100%;
      text-align: center;
      border: 0px solid;
}

.history th {
      font-size: 0.7rem;
      width: 25%;
      text-align:center;
}
.company-container02 span {
      display: none;
}
.history td {
      font-size: 0.9rem;
      padding: 10px 10px 10px 10px;
      width: 75%;
}
/*メッセージ画像*/
#message {
     height: 300px;
     width: 100%;
}
.center-moji02 {
      font-size: 0.8rem;
      margin:70px auto;
      width: 85%;
}
.page-title02 {
  margin: 100px auto 0;
}
/* 製品情報ページ
-----------------------------------------------*/
#products {
      height: 300px;
}
#products::before{
  height: 300px;
}
.products-container {
      width: 100%;
      border: solid 0px;
      margin:;
      flex-direction: column;
      align-items: center;
}
.products-item {
      width: 60%;
      margin: 0 0 30px 0;
      border: solid 0px;
      background: #432;
}
.products-item img {
      width: 100%;
}

/*JARNALページ-----------------------------------*/
#jarnal {
      height: 300px;

}
#jarnal::before{
      height: 300px;
}

.jarnal-contents {
  flex-direction: column;
}
.article{
  width: 100%;
}
.aside {
    width: 100%;
    margin-top: 150px;
}


/* お問い合わせページ
-----------------------------------------------*/
#contact {
      height: 300px;
}
#contact::before{
  height: 300px;
}


/* フッター-----------------------*/
.footer01{
     background-color: #4C4C4C;
     width: 100%;
     border: 0px solid;
     flex-direction: column;
     align-items: center;
}
.footer01 img {
      width: 140px;
}
.footer-menu01 {
      font-size: 1rem;
      width: 100%;
      height: 100%;
      margin: auto;
      padding-top: 30px;
      border: 0px solid;
      text-align: center;
}
.footer-menu02{
      font-size: 0.6rem;
      width: 100%;
      height: 100%;
      margin: auto;
      padding-top: 20px;
      padding-bottom: 20px;
      border: 0px solid;
      text-align: center;
}


/*フッターコピーライト*/
footer {
      background: #4C4C4C;
      text-align: center;
      padding: 10px 0;
      border: 0px;
}
footer p {
      font-size: 1rem;
}


/* メニューバー設定
------------------------------------------*/

@media screen and (max-width: 1000px) {
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        background:rgba(0,0,0,0.5);
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }
    #top-head.fixed .logo,
    #top-head img {
        width: 56px;
        position: absolute;
        left: 0px;
        top: 0px;
        color: #333;
        font-size: 26px;
    }
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        display: block;
        margin: auto;
        text-align: center;
        top: -560px;
        background: rgba(0,0,0,0.7);
        width: 100%;
        text-align: center;
        margin: 60px auto 0;
        padding: 0px 0 30px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        width:100%;
        display: block;
        list-style: none;
        right: 0;
        bottom: 0;
        font-size: 1rem;
    }
    #global-nav ul li {
        width: 100%;
        display: block;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        display: block;
        text-align: center;
        width: 100%;
        color: #fff;
        padding: 10px 0;
        font-size: 1rem;
        border: 0px solid;
    }
    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}
