/*
Theme Name: musokogyo
Author: lop
Description: 
Version: 1.0.0
*/

/*--------------------------------------------------------------
    TABLE OF CONTENTS
----------------------------------------------------------------
- Foundation
  - reset css
  - base
- Layout
- Page
  - home
  - blog
  - contact
--------------------------------------------------------------*/



/*--------------------------------------------------------------
    Foundation
--------------------------------------------------------------*/


/*  reset css
----------------------------------------------------------------
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
--------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
caption, tfoot, thead,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
body {
  line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display:block;
}
nav ul {
  list-style:none;
}
blockquote, q {
  quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}
a {
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}
table {
  border-collapse:collapse;
  border-spacing:0;
}
hr {
  display:block;
  height:1px;
  border:0;
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}
input, select {
  vertical-align:middle;
}


/*  base
--------------------------------------------------------------*/

body {
  background: #fff;
  color: #3e3e3f;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.2;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 13px;
  }
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

a {
  color: #3e3e3f;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  text-decoration: none;
}
a:hover, a:focus, a:active {
  opacity: 0.5;
  outline: 0;
  text-decoration: underline;
}

h1,
h2,
h3,
h4,
strong {
  font-weight: 400;
}

ul,
ol {
  list-style: none;
}

button {
  padding: 0;
  background-color: transparent;
  border: 0;
  color: inherit;
  font-size: inherit;
  outline: none;
  cursor: pointer;
}

.pc {
  display: block;
}
.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}


/*--------------------------------------------------------------
    Layout
--------------------------------------------------------------*/

.wrap {
  max-width: 990px;
  padding-left: 20px;
  padding-right: 20px;
  margin: 0 auto;
}

.center-box {
  text-align: center;
}

.right-box {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
}

/*--------------------------------------------------------------
    Object
--------------------------------------------------------------*/

/*  細長い文字  ------------*/
.long-text p,
.long-text a {
  display: inline-block;
  -webkit-transform: scale(0.85, 1);
          transform: scale(0.85, 1);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  width: 115%;
}
.center-text {
  margin: 0 0 3em;
  font-size: 1.4em;
  font-weight: 100;
  line-height: 2;
  text-align: center;
  font-family: "Sawarabi Mincho", serif;
}
.left-text {
  max-width: 550px;
  margin: 5em auto;
  font-size: 1.3em;
  font-weight: bold;
  line-height: 2;
  font-family: "Sawarabi Mincho", serif;
}

.bg-gray {
  background: url(/wp-content/uploads/2019/12/bg01.jpg
  );
}

@media screen and (max-width: 768px) {
  .center-text,
  .left-text {
    margin: 0 0 3em;
  }
}


/*--------------------------------------------------------------
    Page
--------------------------------------------------------------*/



/*  slider  ------------*/
.slider_css {
  height: 1000px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
.slider_css ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.slider_css ul li {
  background-size: cover;
  width: 100%;
  height: 1000px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-duration: 32s;
          animation-duration: 32s;
}
.slider_css ul li:nth-child(1) {
  background-image: url("https://test-muso.yakudats.com/wp-content/uploads/2020/02/top1-s.jpg");
  -webkit-animation-name: slider-zoomout;
          animation-name: slider-zoomout;
  -webkit-animation-delay: -3s;
          animation-delay: -3s;
}
.slider_css ul li:nth-child(2) {
  background-image: url("https://test-muso.yakudats.com/wp-content/uploads/2020/02/top2-s.jpg");
  -webkit-animation-name: slider-zoomout;
          animation-name: slider-zoomout;
  opacity: 0;
  -webkit-animation-delay: 5s;
          animation-delay: 5s;
}
.slider_css ul li:nth-child(3) {
  background-image: url("https://test-muso.yakudats.com/wp-content/uploads/2020/02/top3-s.jpg");
  -webkit-animation-name: slider-zoomout;
          animation-name: slider-zoomout;
  opacity: 0;
  -webkit-animation-delay: 13s;
          animation-delay: 13s;
}
.slider_css ul li:nth-child(4) {
  background-image: url("https://test-muso.yakudats.com/wp-content/uploads/2020/02/top4-s.jpg");
  -webkit-animation-name: slider-zoomout;
          animation-name: slider-zoomout;
  opacity: 0;
  -webkit-animation-delay: 21s;
          animation-delay: 21s;
}
.slider_css ul li img {
  width: 130%;
}
@media only screen and (max-width: 768px) {
  .slider_css {
    height: 300px;
  }
  .slider_css ul li {
    background-size: contain;
    background-repeat: no-repeat;
  }
}


@-webkit-keyframes slider-zoomin {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  12.5% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  27.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
}


@keyframes slider-zoomin {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  12.5% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  27.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
}
@-webkit-keyframes slider-zoomout {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  12.5% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  27.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes slider-zoomout {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.3);
            transform: scale(1.3);
  }
  12.5% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  27.5% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}




/*  header  ------------*/
header {

  -webkit-backface-visibility:hidden;
  backface-visibility:hidden;
  overflow: hidden;
}
.header-nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 2;
}
nav {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  overflow: hidden;
  font-weight: bolder;
  padding-right: 10px;
}
nav .header-logo {
  width: 137px;
  flex-shrink: 0;
}
nav .header-logo .custom-logo {
  display: block;
  width: 124.5px;
  height: 50px;
}
nav ul {
  display: -webkit-box;
  display: flex;
  /* flex-wrap: wrap; */
  -webkit-box-pack: end;
          justify-content: flex-end;
}
nav ul > li {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  height: 50px;
  z-index: 1;
}
nav ul > li/* :not(:first-child) */ {
  margin-left: 1em;
}
nav ul > li:hover .sub-menu {
  display: block;
  min-height: 50px;
}

nav .sub-menu {
  display: none;
  position: absolute;
  left: 0;
  top: 50px;
  width: 100%;
  background: #ccc;
}
.g-nav {
  -webkit-box-pack: center;
          justify-content: center;
          height: 0;

}
.g-nav li {
  margin-top: -35px;
  height: 0;
}
.g-nav a {
  width: 100%;
  color: #fff;
}
.g-nav p {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  min-height: 70px;
  font-size: 1.2em;
  font-weight: bold;
  word-break: break-all;
}
.g-nav a:hover {
  opacity: 1;
  text-decoration: none;
  margin-top: 9em;
}
.tab-area {
  -webkit-box-flex: 1;
          flex: 1;
}
.tab-area input,
.tab-area label {
  display: none;
}

@media screen and (max-width: 768px) {
  .tab-area .tab-item {
    height: 0;
    opacity: 0;
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  .tab-area label {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .tab-area label::before {
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    position: absolute;
    top: -0.5em;
    right: 0;
    color: #fff;
    content: '\f0c9';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 2em;
  }
  .tab-area input:checked + label::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    content: '\f067';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  }
  .tab-area input:checked + label + .tab-item {
    opacity: 1;
    height: auto;
  }
  .tab-area input:checked + label + .tab-item li {
    height: 3.5em;
  }
  nav {
    position: relative;
    overflow: visible;
  }
  .g-nav {
    position: absolute;
    top: 50px;
    right: 0;
    display: block;
    z-index: 1;
  }
  .g-nav li {
    margin-top: 0;
    background: rgba(0, 0, 0, 0.7);
    overflow: hidden;
  }
  .g-nav p {
    min-height: 3em;
  }
  .g-nav a {
    margin-top: -3em;
    padding-left: 0.5em;
    padding-right: 0.5em;
    -webkit-tap-highlight-color: transparent;
  }
  .g-nav a:hover {
    opacity: 1;
    text-decoration: none;
    margin-top: 4em;
  }
}
@-webkit-keyframes zoomUp {
  0% {
      -webkit-transform: scale(1);
      transform: scale(1);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}

@keyframes zoomUp {
  0% {
      -webkit-transform: scale(1.5);
      transform: scale(1.5);
  }
  100% {
      -webkit-transform: scale(1.15);
      transform: scale(1.15);
  }
}


/*    ------
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
    -webkit-animation: zoomUp 12s linear 0s;
    animation: zoomUp 12s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
*/

/* Firefoxのみに適用 */
@-moz-document url-prefix() {
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
    -webkit-animation: zoomUp 12s linear 0s;
    animation: zoomUp 12s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
}

/* Chromeのみに適用 */
@media screen and (-webkit-min-device-pixel-ratio:0) {
.swiper-slide-active .slide-img,
.swiper-slide-duplicate-active .slide-img,
.swiper-slide-prev .slide-img {
    -webkit-animation: zoomUp 12s linear 0s;
    animation: zoomUp 12s linear 0s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
}


.slide-img {
    background-size: cover; 
    background-position: center center;
    height: 100vh;
    height: calc(100vh - 50px);
    overflow: hidden;
}

.header-mv {
  position: relative;
  height: 100vh;
  height: calc(100vh - 50px);
  overflow: hidden;
}

.mv-logo {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  height: 100%;
  text-align: center;
  color: #fff;
  font-size: 2em;
  line-height: 1.5;
  font-family: "Sawarabi Mincho", serif;
}
.logo-wrap img {
  margin-bottom: 1em;
}

.post-title {
  position: relative;
  overflow: hidden;
}
.post-title h1 {
  position: absolute;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 20px;
  color: #fff;
  font-size: 3em;
  text-align: center;
}
.post-title h1 div {
  padding-top: 50px;
}
.post-title h1 p {
  display: inline-block;
  width: 118%;
}
.post-title h1 span {
  padding-top: 0.2em;
  font-size: 0.7em;
  font-weight: bolder;
}
.post-title img {
  width: 100%;
  height: 28em;
  -o-object-fit: cover;
     object-fit: cover;
}
.post-title h1 hr {
  max-width: 540px;
  margin: 0 auto;
  margin-top: 0.2em;
  border-top: 1px solid #fff;
  -webkit-animation: title-border 2s 1;
          animation: title-border 2s 1;
}
@-webkit-keyframes title-border {
  0% {
    max-width: 0;
  }
  100% {
    max-width: 540px;
  }
}
@keyframes title-border {
  0% {
    max-width: 0;
  }
  100% {
    max-width: 540px;
  }
}

#breadcrumb {
  max-width: 1400px;
  margin: 1em 1em 3em;
}
#breadcrumb ul li {
  display: inline-block;
}
#breadcrumb ul li:not(:first-child)::before {
  content: '>';
  padding: 0 0.5em;
}

@media screen and (max-width: 768px) {
  .post-title h1 {
    font-size: 2em;
  }
  .post-title img {
    height: 20em;
  }
}

/*  main  ------------*/

main {
  padding-bottom: 100px;
  overflow: hidden;
}
.paging {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
}
.paging .next::after {
  content: '→';
}
.paging .prev::before {
  content: '←';
}

.page-numbers {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
}
.page-numbers li {
  padding: 0 0.5em;
}
.page-numbers li:not(:last-child) {
  border-right: 1px solid #3e3e3f;
}

@media screen and (max-width: 768px) {
  main {
    padding-bottom: 50px;
  }
}


/*  footer  ------------*/


.footer-menu {
  padding-top: 5em;
  padding-bottom: 1em;
  border-top: 2px solid #d2d3d5;
}
.footer-menu > *:not(:last-child) {
  margin-bottom: 1em;
}
.footer-widgets {
  display: -webkit-box;
  display: flex;
  justify-content: space-around;
}
.f-nav {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
}
.f-nav li:not(:last-child) {
  margin-right: 1em;
}

.copyright {
  padding-top: 1em;
  padding-bottom: 1em;
  text-align: center;
}
.copyright small {
  font-size: 0.8em;
}
@media screen and (max-width: 768px) {
  .footer-widgets {
    display: block;
    text-align: center;
  }
  .footer-widgets> div {
    margin-bottom: 1em;
  }
}

/*  home
--------------------------------------------------------------*/
 
.home .header-nav {
  position: static;
  background: #fff;
}
.home .header-nav.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 2;
}
.home .header-nav.fixed a {
  color: #fff;
}

.home .g-nav a {
  color: inherit;
}
.home .tab-area label::before {
  color: #3e3e3f;
}

.home .home-news {
  margin: 8em 0;
  padding: 8em 20px 4em;
  text-align: center;
}

.home .home-news h2 img {
	height: 50px;
}

.home .link-list {
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
          justify-content: space-between;
  max-width: 810px;
  margin: 0 auto;
}
.home .link-list a {
  width: 46%;
}
.home .link-list li {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  margin-bottom: 4em;
  text-align: center;
}
.home .link-list li.border-gray {
  background: #d1d2d4;
  border: 4px solid #d1d2d4;
}
.home .link-list li.border-black {
  background: #312f30;
  border: 4px solid #312f30;
  color: #fff;
}
.home .link-list li img {
  width: 50%;
  -o-object-fit: cover;
     object-fit: cover;
  height: 158px;
}
.home .link-list li p {
  -webkit-box-flex: 1;
          flex: 1;
  padding: 0.3em 0;
}
.home .link-list li span {
  display: block;
  font-size: 1.5em;
}

.home .center-text {
  margin-top: 3em;
  margin-bottom: 0;
}


@media screen and (max-width: 768px) {

  .home .g-nav a {
    color: #fff;
  }
  .home .link-list,
  .home .link-list li {
    display: block;
  }
  .home .link-list li img {
    width: 100%;
    height: 20vw;
  }
  .home .link-list li {
    width: 100%;
  }
  .home .link-list li p {
    margin-left: 0;
  }

  .home #pg-10-1 > .panel-row-style-for-10-1 {
    padding: 0;
    padding-top: 3em;
  }
  .home #pg-10-2 {
    text-align: center;
  }
  .home #pg-10-2 img {
    width: 270px;
  }
  
}

.home .recruit {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  max-width: 540px;
  background: #bfc214;
  margin: 0 auto;
  text-align: center;
}
.home .recruit p {
  -webkit-box-flex: 1;
          flex: 1;
  padding: 0.3em 0;
}
.home .recruit p span {
  display: block;
  font-size: 1.5em;
}

.home .special-report {
  max-width: 540px;
  margin: 0 auto;
  background: #312f30;
  color: #fff;
  text-align: center;
}
.home .special-report p {
  padding: 4em 0;
  margin-left: 2%;
}
.home .special-report p span {
  display: block;
  font-size: 1.5em;
}
@media screen and (max-width: 768px) {
  .home .special-report p {
    margin-left: 0;
  }
  .home .special-report {
    margin: 0 20px;
  }
}



/*  Blog
--------------------------------------------------------------*/
.news-list {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  flex-wrap: wrap;
  max-width: 920px;
  margin: 5em auto 0;
}
.news-list::after{
  content:"";
  display: block;
  width:30%;
}
.news-list a {
  width: 30%;
  display: block;
  border-top: 3px solid #312f30;
  margin-bottom: 4em;
  padding: 2em 0;
  text-align: left;
}
.news-list a:hover {
  background: #ccc;
  opacity: 1;
  text-decoration: none;
}
.news-list img {
  width: 100%;
  height: 180px;
  -o-object-fit: cover;
     object-fit: cover;
}
.news-list .day {
  font-weight: bold;
}
.news-list .cat-list li {
  display: inline-block;
}
.news-list a > li > * {
  padding: 0.3em 0;
}

.news-cat {
  margin-right: 0.5em;
}
.news-cat::before {
  content: '■';
  padding-right: 0.2em;
}
.news-cat.cat-item-1::before {
  color: #b8b8b8;
}
.news-cat.cat-item-2::before {
  color: #479dff;
}
.news-cat.cat-item-3::before {
  color: #47ff9a;
}
.news-cat.cat-item-13::before {
  color: #fcff47;
}
.news-cat.cat-item-12::before {
  color: #ffbb00;
}
.news-cat.cat-item-4::before {
  color: #be33ff;
}
.news-cat.cat-item-15::before {
  color: #ff3392;
}
.news-cat.cat-item-14::before {
  color: #000000;
}

@media screen and (max-width: 768px) {
  .news-list {
    display: block;
  }
  .news-list a {
    width: 100%;
  }
  .news-list img {
    height: 56vw;
  }
}

.category-area {
  position: relative;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  width: 256px;
  height: 4em;
  background: #ccc;
  text-align: center;
}
.category-area p {
  width:auto;
}
.category-area p span {
  display: block;
  font-size: 1.5em;
}
.category-list {
  position: absolute;
  top: 4em;
  left: 0;
  width: 100%;
  display: none;
}
.category-list li {
  padding: 0.5em;
  margin-top: 0;
  background: rgba(0, 0, 0, 0.7);
  overflow: hidden;
}
.category-list a {
  color: #fff;
}
.category-area:hover .category-list {
  display: block;
}

/*  Single
--------------------------------------------------------------*/
.single .content-wrap {
  max-width: 860px;
}
.single .content-wrap h2 {
  display: -webkit-box;
  display: flex;
  padding: 0.6em 0;
  border-bottom: 3px solid #312f30;
}
.single .content-wrap h2 p {
  -webkit-box-flex: 1;
          flex: 1;
  font-weight: bold;
  font-size: 1.3em;
  text-align: left;
}
.single .content-wrap h2 .date {
  display: inline-block;
  width: 6em;
}
.single .cat-list {
  -webkit-box-pack: end;
          justify-content: flex-end;
  width: 13em;
}

.single .news-cat {
  display: inline-block;
}
.single .entry-content h2 ul {
  width: 20em;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: end;
          justify-content: flex-end;
}
.single .entry-content {
  max-width: 630px;
  margin: 2em auto;
}
.single .entry-content p {
  line-height: 2;
  margin-bottom: 2em;
}
.single .entry-content img {
/* max-width: 100%;  */
  margin: 2em auto;
}
.single .entry-content h3 {
  margin-top: 3em;
  margin-bottom: 1em;
  padding: 0.3em 1em;
  background: #231f20;
  color: #fff;
  font-size: 1.1em;
}
.single .entry-content h4 {
  margin-top: 3em;
  margin-bottom: 1em;
  padding: 0.3em 1em;
  background: #4b4c4d;
  color: #fff;
  font-weight: normal;
}

.single #comments {
  max-width: 630px;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .single .content-wrap h2 {
    display: block;
  }
  .single .content-wrap h2 p {
    text-align: left;
  }
  .single .content-wrap h2 .news-cat {
    text-align: right;
  }
  .single .cat-list {
    margin-top: 0.5em;
    width: 100%;
  }
}

/*  Page
--------------------------------------------------------------*/
.page .single .content-wrap h2 p {
  max-width: 700px;
  margin: 0 auto;
}
.page .single .entry-content img {
  width: 100%;
  height: auto;
}
.page .single .entry-content p {
  margin-bottom: 0;
}

/*  CHALLENGING THE EXTREMES
--------------------------------------------------------------*/
.challenging {
  padding: 20px!important;
  padding-bottom: 4em!important;
}

.challenging .center-text {
  position: relative;
  max-width: 700px;
  margin: 3em auto;
}
.challenging .story li {
  max-width: 500px;
  margin: 0 auto;
  padding: 1em 0;
  border-bottom: 1px solid #3e3e3f;
}
.challenging .story li:not(:first-child) {
  padding-left: 10em;
}

.challenging .link-box {
  display: block;
  max-width: 500px;
  margin: 1em auto 3em;
  background: #231f20;
  color: #fff;
  font-size: 1.2em;
  line-height: 1.5;
  text-align: center;
}
.challenging .link-box p {
  padding: 1.5em;
}
.challenging .link-box span {
  font-size: 1.5em;
}
.challenging hr {
  max-width: 1100px;
  margin: 0 auto;
  border-color: #3e3e3f;
}
.challenging .material-list {
  max-width: 700px;
  margin: 2em auto 0;
}

.challenging .center-text h3 {
  position: absolute;
  top: 0;
  left: -65px;
  height: 600px;
  padding-top: 2em;
  font-size: 24px;
  text-align: left;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  z-index: 1;
}
.challenging .center-text h3::before {
  position: absolute;
  top: 10px;
  left: -12px;
  display: block;
  z-index: -1;
}
.challenging .center-text.section01 h3::before {
  content: url(images/no01.png);
}
.challenging .center-text.section02 h3::before {
  content: url(images/no02.png);
}
.challenging .center-text.section03 h3::before {
  content: url(images/no03.png);
}
.challenging .center-text.section04 h3::before {
  content: url(images/no04.png);
}
/* .challenging .center-text h3::after {
  position: absolute;
  top: 60px;
  left: 2px;
  display: inline-block;
  width: 54px;
  height: 4px;
  background: #3e3e3f;
  content: '';
} */
.page-id-81 hr {
  margin-left: -20px;
  margin-right:  -20px;
}
#panel-81-5-0-1 h3{
  font-family: "Sawarabi Mincho", serif;
  font-size: 1.5em;
}
#panel-81-5-0-2 {
  padding: 0 20px;
}
#panel-81-5-0-3 {
  padding: 0 20px;
}

@media screen and (max-width: 768px) {
  .challenging .center-text {
    margin: 3em auto 0;
  }
  .challenging .center-text h3 {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block;
    height: auto;
    padding-top: 0;
    padding-left: 80px;
    margin-bottom: 20px;
    -webkit-writing-mode: rl;
        -ms-writing-mode: rl;
            writing-mode: rl;
    font-size: 1.2em;
  }
  .challenging .center-text h3::before {
    position: absolute;
    top: -10px;
    left: 0;
    padding-top: 0;
    width: 60px;
    height: 60px;
    font-size: 1.2em;
  }
  .challenging .center-text h3::after {
    top: 30px;
    left: 10px;
    width: 40px;
    height: 2px;
  }
  .challenging .story li:not(:first-child) {
    padding-left: 5em;
  }
}  


/*  CUSTOM & ORIGINAL JIGS
--------------------------------------------------------------*/
.jigs {
  padding: 20px!important;
  padding-bottom: 4em!important;
}
.jigs > * {
  max-width: 1000px;
  margin: 0 auto;
}


.jigs img {
  width: 100%;
}

.jigs .center-text {
  position: relative;
  margin: 0;
}
.jigs .story li {
  max-width: 500px;
  padding: 1em 0;
  border-bottom: 1px solid #3e3e3f;
}
.jigs .story li:not(:first-child) {
  padding-left: 10em;
}

.jigs .link-area {
  display: block;
  text-align: right;
}
.jigs .link-area img {
  width: auto;
}

.jigs .center-text h3 {
  position: relative;
  padding-top: 20px;
  padding-left: 5em;
  font-size: 28px;
  margin-bottom: 40px;
  font-size: 1.2em;
  text-align: left;
  z-index: 1;

  display: inline-block;
  -webkit-transform: scale(0.90, 1);
          transform: scale(0.90, 1);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  width: 110%;
}
.jigs .center-text h3::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 94px;
  height: 94px;
  background: #b9be17;
  font-size: 36px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  text-align: center;
  -webkit-writing-mode: rl;
      -ms-writing-mode: rl;
          writing-mode: rl;
  content: '01';
  z-index: -1;
}
.jigs .center-text h3::after {
  position: absolute;
  top: 60px;
  left: 20px;
  display: inline-block;
  width: 100%;
  height: 4px;
  background: #3e3e3f;
  content: '';
}
.jigs .center-text.section01 h3::before {
  content: '01';
}
.jigs .center-text.section02 h3::before {
  content: '02';
}
.jigs .center-text.section03 h3::before {
  content: '03';
}
#pl-102 a {
  margin-top: 2em;
}
#pg-102-0 {
  margin-bottom: 0!important;
}
.panel-row-style-for-102-0 {
  margin-bottom: 0!important;
}


@media screen and (max-width: 768px) {
  .jigs .center-text {
    margin: 3em auto 0;
  }
  .jigs .story li:not(:first-child) {
    padding-left: 5em;
  }

  #pg-102-2 .widget_media_image {
    margin-bottom: 0!important;
  }
}  


/*  CUSTOM & ORIGINAL MACHINES
--------------------------------------------------------------*/
.machines {
  padding: 20px!important;
  padding-bottom: 4em!important;
}
.machines > * {
  max-width: 1000px;
  margin: 0 auto;
}

.machines img {
  width: 100%;
}

.machines .center-text {
  position: relative;
  margin: 0;
}
.machines .story li {
  max-width: 500px;
  padding: 1em 0;
  border-bottom: 1px solid #3e3e3f;
}
.machines .story li:not(:first-child) {
  padding-left: 10em;
}

.machines .link-area {
  display: block;
  text-align: right;
}
.machines .link-area img {
  width: auto;
}

.machines .center-text h3 {
  position: relative;
  padding-top: 20px;
  padding-left: 5em;
  font-size: 28px;
  margin-bottom: 40px;
  font-size: 1.2em;
  text-align: left;
  z-index: 1;

  display: inline-block;
  -webkit-transform: scale(0.9, 1);
          transform: scale(0.9, 1);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  width: 110%;
}
.machines .center-text h3::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 94px;
  height: 94px;
  background: #b9be17;
  font-size: 36px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  text-align: center;
  -webkit-writing-mode: rl;
      -ms-writing-mode: rl;
          writing-mode: rl;
  content: '01';
  z-index: -1;
}
.machines .center-text h3::after {
  position: absolute;
  top: 60px;
  left: 20px;
  display: inline-block;
  width: 500px;
  height: 4px;
  background: #3e3e3f;
  content: '';
}
.machines .center-text.section01 h3::before {
  content: '01';
}
.machines .center-text.section02 h3::before {
  content: '02';
}

#pgc-w5e1747c04ff1a-0-0 {
  display: block;
}
#panel-w5e1747c04ff1a-0-1-1 {
  display: none;
}
#pl-131 a {
  margin-top: 2em;
}

@media screen and (max-width: 768px) {
  .machines .center-text h3::after {
    width: 100%;
  }
  #panel-w5e1747c04ff1a-0-1-1 {
    display: block;
  }
  #pgc-w5e1747c04ff1a-0-0 {
    display: none;
  }
}  


/*  SPECIAL REPORTS
--------------------------------------------------------------*/
.special-reports {
  padding: 20px!important;
  padding-bottom: 4em!important;
}
.special-reports > * {
  max-width: 1000px;
  margin: 0 auto;
}

.special-reports img {
  width: 100%;
}
.special-reports .so-panel {
  margin-bottom: 0!important;
}
.special-reports .center-text {
  position: relative;
  margin: 0;
}

.special-reports p {
  padding-left: 20px;
}

.special-reports h3 {
  position: relative;
  padding-top: 20px;
  padding-left: 5em;
  font-size: 28px;
  margin-bottom: 40px;
  font-size: 1.2em;
  text-align: left;
  z-index: 1;
}
.special-reports h3::before {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  width: 94px;
  height: 94px;
  background: #b9be17;
  font-size: 36px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  text-align: center;
  -webkit-writing-mode: rl;
      -ms-writing-mode: rl;
          writing-mode: rl;
  content: '01';
  z-index: -1;
}
.special-reports h3::after {
  position: absolute;
  top: 60px;
  left: 20px;
  display: inline-block;
  width: 100%;
  height: 4px;
  background: #3e3e3f;
  content: '';
}

@media screen and (max-width: 768px) {
  .special-reports h3::after {
    width: 100%;
  } 
}

/*  SPECIAL REPORTS-2
--------------------------------------------------------------*/

.special-reports02 .panel-grid-cell {
  margin-bottom: 3em;
  padding: 4px!important;
  font-size: 1.5em;
  line-height: 1.5;
}
.special-reports02 .panel-grid-cell:nth-child(odd) {
  background: #3e3e3f;
  color: #fff;
}
.special-reports02 .panel-grid-cell:nth-child(odd) a {
  color: #fff;
}
.special-reports02 .panel-grid-cell:nth-child(even) {
  background: #d1d2d4;
}
.special-reports02 .panel-grid-cell .widget_media_image {
  margin-bottom: 0!important;
}
.special-reports02 .panel-grid-cell .widget_media_image img {
  height: 20vw!important;
  margin-bottom: 0!important;width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.special-reports02 .panel-grid-cell .widget_text {
  text-align: center;
  padding: 10px;
}
@media screen and (min-width: 950px) {
  .special-reports02 .panel-grid-cell .widget_media_image img {
    height: 207px!important;
  }
}  
@media screen and (max-width: 780px) {
  .special-reports02 .panel-grid-cell {
    margin-bottom: 3em!important;
  }
  .special-reports02 .panel-grid-cell .widget_media_image img {
    height: 94vw!important;
  }
}  



/*  RECRUITMENT
--------------------------------------------------------------*/

.recruitment02 .center-text {
  margin: 0 auto;
  font-size: 1em;
}
.recruitment02 .center-text::after {
  display: block;
  padding-top: 2em;
  color: #b9be17;
  font-size: 0.5em;
  content: '\25A0\3000\25A0\3000\25A0';
}
.recruitment02 h3 {
  font-size: 1.2em;
  text-align: center;
  margin-bottom: 1em;
}

.page-id-169 .file {
  line-height: 0.8;
}

/*  stress
--------------------------------------------------------------*/
.stress {
  max-width: 900px;
  margin: 0 auto;
}
.stress table {
  border-collapse: separate;
  border-spacing: 0 8px;
  border-right: 2px #ffffff solid;
  border-left: 2px #ffffff solid;
}
.stress table * {
  box-sizing: border-box;
  vertical-align: middle;
}
.stress table tr:nth-child(even) {
  background: #f1f2d1;
  padding: 0.8em;
  border-spacing: 0;
}
.stress table tr:nth-child(odd) {
  background: #f3f3f3;
  padding: 0.8em;
  border-spacing: 0;
}
.stress table tr:nth-of-type(1) th {
  padding: 1em;
  border-left: 8px solid #fff;
  background: #b9be17;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.stress table tr:not(:nth-of-type(1)) th {
  border: 2px solid #b9be17;
  background: #fff;
  text-align: center;
}
.stress table tr td {
  padding: 0.5em;
  text-align: center;
}
.stress table tr td:nth-of-type(1) {
  border-left: 8px solid #fff;
}
@media screen and (max-width: 780px) {
  .stress table {
    font-size: 0.8em;
  }
}




/*  FACILITY
--------------------------------------------------------------*/
.facility {
  max-width: 730px;
  margin: 0 auto;
}
.facility table {
  border-collapse: separate;
  border-spacing: 0 8px;
}
.facility table * {
  box-sizing: border-box;
  vertical-align: middle;
}
.facility table tr:nth-child(even) {
  background: #f1f2d1;
  padding: 0.8em;
  border-spacing: 0;
}
.facility table tr:nth-child(odd) {
  background: #f3f3f3;
  padding: 0.8em;
  border-spacing: 0;
}
.facility table tr:nth-of-type(1) th {
  padding: 1em;
  border-left: 8px solid #fff;
  background: #b9be17;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.facility table tr:not(:nth-of-type(1)) th {
  border: 2px solid #b9be17;
  background: #fff;
  text-align: center;
}
.facility table tr td {
  padding: 0.5em;
  text-align: center;
}
.facility table tr td:nth-of-type(1) {
  border-left: 8px solid #fff;
}
@media screen and (max-width: 780px) {
  .facility table {
    font-size: 0.8em;
  }
}

/*  FAQ
--------------------------------------------------------------*/

.faq .center-text {
  margin: 0;
}
.faq .center-text::after {
  display: block;
  padding-top: 2em;
  color: #b9be17;
  font-size: 0.5em;
  content: '\25A0\3000\25A0\3000\25A0';
}
.faq-box {
  max-width: 700px;
  margin: 0 auto;
}
.faq-box .widget-title {
  position: relative;
  margin-left: 60px;
  padding-bottom: 0.5em;
  border-bottom: 2px solid #9c9c9e;
  font-size: 1.1em;
  font-weight: bold;
  line-height: 1.2;
}
.faq-box .widget-title::before {
  position: absolute;
  top: 50%;
  left: -60px;
  display: block;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  border-radius: 50%;
  background: #b9be17;
  color: #fff;
  text-align: center;
  line-height: 30px;
  font-weight: normal;
  content: 'Q';
}
.faq-box .textwidget {
  position: relative;
  margin-left: 60px;
  padding-top: 1em;
  line-height: 1.5;
}
.faq-box .textwidget::before {
  position: absolute;
  top: 50%;
  left: -60px;
  display: block;
  width: 30px;
  height: 30px;
  margin-top: -15px;
  border-radius: 50%;
  background: #9c9c9e;
  color: #fff;
  text-align: center;
  line-height: 30px;
  content: 'A';
}
@media screen and (max-width: 780px) {
  .faq-box .textwidget,
  .faq-box .widget-title {
    margin-left: 40px;
  }
  .faq-box .widget-title::before,
  .faq-box .textwidget::before {
    left: -40px;
  }
}

/*  OUR COMPANY
--------------------------------------------------------------*/
.company {
  max-width: 700px;
  margin: 0 auto 3em;
}
.company > div:nth-child(2) {
  -webkit-box-ordinal-group: 0;
          order: -1;
}
.company-table {
  max-width: 500px;
  margin: 0 auto 3em;
}
.company h3,
.company-box h3,
.company-table h3,
.company-map h3 {
  font-size: 1.2em;
  text-align: center;
}
.company h3::after,
.company-box h3::after,
.company-table h3::after,
.company-map h3::after {
  display: block;
  padding: 2em 0;
  color: #b9be17;
  font-size: 0.5em;
  content: '\25A0\3000\25A0\3000\25A0';
}
.company-table table {
  border-collapse: separate;
  border-spacing: 0 4px;
}
.company-table table tr:nth-child(even) {
  background: #f1f2d1;
  padding: 0.8em;
  border-spacing: 0;
}
.company-table table tr:nth-child(odd) {
  background: #f3f3f3;
  padding: 0.8em;
  border-spacing: 0;
}
.company-table table tr th {
  border-left: 8px solid #fff;
  border: 2px solid #b9be17;
  background: #fff;
  text-align: center;
}
.company-table table tr td {
  padding: 0.5em;
}
.company-table table tr td:nth-of-type(1) {

}
.company-table table tr td:nth-of-type(2) {

}
.company-box {
  max-width: 400px;
  margin: 0 auto 3em;
  text-align: center;
  line-height: 1.5;
}
.company-box h2 {
  font-weight: bold;
}
.company-box .textwidget {
  padding: 2em 0;
  border: 4px solid #b9be17;
}
.company-box .so-panel:nth-of-type(2) .textwidget {
  border: 4px solid #9c9c9e;
}
.company-box2 {
  max-width: 700px;
  margin: 0 auto 3em;
  text-align: left;
  line-height: 1.5;
}
.company-box2 h2 {
  font-weight: bold;
}
.company-box2 .textwidget {
  padding: 2em 0;
  border: 4px solid #b9be17;
}
.company-box2 .so-panel:nth-of-type(2) .textwidget {
  border: 4px solid #9c9c9e;
}
.company-map .map-area {
  max-width: 400px;
  margin: 2em auto 3em;
}

#pg-100-0,
#pg-100-0 .company-table {
  margin-bottom: 0!important;
}

#pg-100-2 h3,
#pg-100-3 h3,
#pg-100-4 h3,
#pg-100-5 h3 {
  padding-top: 2em;
}


@media screen and (max-width: 780px) {
  .company img {
    width: 100%;
  }
  .company > div:nth-child(2) {
    -webkit-box-ordinal-group: 1;
            order: 0
  }
}


/*  THANK YOU
--------------------------------------------------------------*/
.thx .center-text {
  margin: 0;
}
.thx .center-text::after {
  display: block;
  padding-top: 2em;
  color: #b9be17;
  font-size: 0.5em;
  content: '\25A0\3000\25A0\3000\25A0';
}
.thx-box {
  max-width: 700px;
  margin: 0 auto;
}
.thx-box .textwidget {
  position: relative;
  margin-left: 60px;
  padding-top: 1em;
  line-height: 1.5;
}
.thx-box h2 {
  font-weight: bold;
}
.thk-box .textwidget {
  padding: 2em 0;
  border: 4px solid #b9be17;
}
.thx-box .so-panel:nth-of-type(2) .textwidget {
  border: 4px solid #9c9c9e;
}

@media screen and (max-width: 780px) {
  .company img {
    width: 100%;
  }
  .company > div:nth-child(2) {
    -webkit-box-ordinal-group: 1;
            order: 0
  }
}


/*  contact
--------------------------------------------------------------*/
.contact {
  padding: 3em 20px 3em!important;
}
.contact-form {
  padding: 3em 20px!important;
}
.contact h3,
.contact-form h3 {
  font-size: 1.2em;
  text-align: center;
  margin-bottom: 1em;
}
.contact p {
  text-align: center;
}
.contact .contact-btn {
  display: inline-block;
  margin: 0 auto;
  padding: 1em 2em;
  border: 4px solid #b9be17;
}
@media screen and (max-width: 780px) {
  .page-id-27 #breadcrumb {
    margin-bottom: 0;
  }
}


.wpcf7-form {
  max-width: 680px;
  margin: 0 auto;
}
.wpcf7-form > p {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  margin-bottom: 1.5em;

}
.wpcf7-form > p label {
  width: 250px;
  color: #9c9c9e;
  font-weight: normal;
}
.wpcf7-form > p span {
  -webkit-box-flex: 1;
          flex: 1;
  display: block;
}
.wpcf7-form > p > span > input,
.wpcf7-form > p > span > textarea {
  width: 100%;
}
.wpcf7-form select,
.wpcf7-form textarea,
.wpcf7-form input[type="text"],
.wpcf7-form input[type="password"],
.wpcf7-form input[type="datetime"],
.wpcf7-form input[type="datetime-local"],
.wpcf7-form input[type="date"],
.wpcf7-form input[type="month"],
.wpcf7-form input[type="time"],
.wpcf7-form input[type="week"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="search"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="color"],
.wpcf7-form input[type="button"],
.wpcf7-form input[type=submit] {
  height: 3em;
  padding: 0 1em;
  border: 1px solid #9c9c9e;
  border-radius: 6px;
  background: #fff;
  outline: none;
}
.wpcf7-form input[type="button"],
.wpcf7-form input[type=submit] {
  color: #9c9c9e;
  margin-right: 1em;
  padding: 0 60px;
}
.wpcf7-form textarea {
  height: auto;
}

.wpcf7-form .textarea,
.wpcf7-form .file {
  -webkit-box-align: start;
          align-items: flex-start;
}
.wpcf7-form .textarea label,
.wpcf7-form .file label {
  padding-top: 8px;
}
.wpcf7-form-control.wpcf7-radio,
.wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
  display: -webkit-box;
  display: flex;
}
.wpcf7-form-control.wpcf7-radio .wpcf7-list-item-label {
  padding-left: 8px;
  color: #9c9c9e;
}
.wpcf7-form .submit {
  display: block;
  text-align: center;
}
.wpcf7-form p.required {
  color: #d73064;
}
.wpcf7-form label.required::after {
  content: "(※)";
  color: #d73064;
}
input.wpcf7c-conf,
textarea.wpcf7c-conf {
  border: 0!important;
}
div.wpcf7 input[type="file"] {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .wpcf7-form > p {
    display: block;
  }
  .wpcf7-form .textarea label,
  .wpcf7-form .file label {
    display: block;
    padding-bottom: 8px;
  }
}

form.wpcf7-form {
    margin-top: -100px;
    padding-top: 100px;
}


.btn-flat-border {
  display: inline-block;
  padding: 0.3em 1em;
  text-decoration: none;
  color: #575757;
  border: solid 2px #575757;
  border-radius: 3px;
  -webkit-transition: .4s;
  transition: .4s;
}

.btn-flat-border:hover {
  background: #575757;
  color: white;
}

/* IE対応 */
@media all and (-ms-high-contrast: none) {
  /* ここに書く */
  .g-nav li {
    margin-top: -10px;
  }
  .challenging .center-text h3::before {
    top: -5px;
  }
}

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

/* 投稿ページ画像中央寄せ */
img.aligncenter {
	text-align: center;
	display: block;
}