/*
Theme Name: twentynineteen_child　
Theme URI: https://sankyu.cp.jp/
Description: Child theme for twentynineteen
Author: temstech
Author URI: https://tems-tech.com/
Template: twentynineteen
Version: 0.2.0　
*/

.edit-link {
  display: none;
}
span.tk {
  display: inline-block;
}
body {
  margin: 0;
  overflow-x: hidden;
  text-align: justify;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI",
    YuGothic, "Yu Gothic Medium", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
    Meiryo, sans-serif !important;
}
.skip-link.screen-reader-text {
  display: none;
}
body a {
  transition: 0.2s;
}
p {
  margin: 0;
}

.sp-only {
  display: none;
}
.pc-only {
  display: block;
}
a[href^="tel:"] {
  cursor: default;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  a[href^="tel:"] {
    pointer-events: auto;
  }
}

.font-red {
  color: #d11619;
}

button,
button::after {
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}

button {
  background: none;
  display: block;
  font-size: 18px;
  font-weight: normal;
  position: relative;
  text-transform: uppercase;
}

button::before,
button::after {
  content: "";
  position: absolute;
  z-index: -1;
}

button:hover {
  color: #fff;
  cursor: pointer;
}
button::after {
  height: 0;
  left: 0;
  top: 0;
  width: 100%;
}

button:hover:after {
  height: 100%;
}

/* BUTTON 1 */
.btn-1 {
  margin: 2em 7em 2em 7em;
  padding: 2em 4em;
  border: 1px solid #008acc;
  color: #008acc;
  font-weight: bold;
}
.btn-1:hover {
  background-color: #008acc;
  color: white;
}
.btn-1:before {
}
.btn-1:after {
  background: #008acc;
}

.btn-1-2 {
  margin: 2em 7em 2em 7em;
  padding: 2em 4em;
  border: 1px solid #61ac70;
  color: #61ac70;
  font-weight: bold;
}
.btn-1-2:hover {
  background-color: #61ac70;
}
/*.btn-1-2::before,
.btn-1-2::after {
	background: #61AC70;
}*/

/* BUTTON 2 */
.btn-2 {
  margin: 2em auto;
  padding: 2em 5em;
  border: 1px solid #008acc;
  color: #008acc;
  font-weight: bold;
}
.btn-2::before,
.btn-2::after {
  background: #008acc;
}
.btn-2:hover {
  background: #008acc;
  color: white;
}

.btn-2-2 {
  margin: 2em auto;
  padding: 2em 5em;
  background: #fff;
  border: 1px solid #fff;
  color: #74c290;
  font-weight: bold;
}
.btn-2-2::before,
.btn-2-2::after {
  background: #74c290;
}
.btn-2-2:hover {
  background: #74c290;
}

.btn-2-3 {
  margin: 2em auto;
  padding: 2em 5em;
  background: #fff;
  border: 1px solid #74c290;
  color: #74c290;
  font-weight: bold;
}
.btn-2-3::before,
.btn-2-3::after {
  background: #74c290;
}
.btn-2-3:hover {
  background: #74c290;
}

/* BUTTON 3 */
.btn-3 {
  margin: 2em auto;
  padding: 2em 5em;
  border: 1px solid #fff;
  color: #fff;
  font-weight: bold;
}
.btn-3::before,
.btn-3::after {
  background: #fff;
}
.btn-3:hover {
  background: #fff;
  color: #006fb0;
}

/* トップのふわっと出るロゴと背景 */

body {
  background-color: #fff;
}
body.home {
  animation: colorchange 3s ease 0s 1 normal;
  -webkit-animation: colorchange 3s ease 0s 1 normal;
}
@keyframes colorchange {
  0% {
    background-color: #000033;
  }
  90% {
    background-color: #000033;
  }
  100% {
    background-color: #fff;
  }
}
@-webkit-keyframes colorchange {
  0% {
    background-color: #000033;
  }
  90% {
    background-color: #000033;
  }
  100% {
    background-color: #fff;
  }
}

body:not(.home) {
  animation: constant 1s ease 0s 1 normal;
  -webkit-animation: constant 1s ease 0s 1 normal;
}

.site-description {
  display: none;
}
.catch-title-logo {
  position: absolute;
  top: 30vh;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  width: 100%;
  z-index: 100;
}
.catch-title-logo img {
  width: 400px;
}
.home .catch-logo-image {
  animation: constant 1s ease 0s 1 normal;
  -webkit-animation: constant 1s ease 0s 1 normal;
}
@keyframes constant {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes constant {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.slides {
  padding-left: 0;
  list-style: none;
}
.slides img {
  height: 100%;
}

.home .header-container,
.contents-02 {
  animation: fadeIn 3s ease 0s 1 normal;
  -webkit-animation: fadeIn 3s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.header-container {
  margin-top: 100px !important;
  margin-bottom: 0 !important;
  position: relative;
  width: 100%;
}
.main-contents-container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

header.site-header {
  z-index: 200;
  position: fixed;
  width: 90%;
  top: 0;
  background-color: rgba(255, 255, 255, 0.8);
  margin-top: -1em;
  padding: 1em 5% 0.5em;
}
.home header.site-header {
  animation: menu 3s ease 0s 1 normal;
  -webkit-animation: menu 3s ease 0s 1 normal;
}
@keyframes menu {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes menu {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.header-contact {
  display: inline-block;
  float: right;
  margin-top: 1em;
}

.header-mail {
  font-size: 18px;
  color: #fff;
  background-color: #eec72c;
  border-radius: 10px;
  padding: 10px 25px;
  margin-left: 1em;
  font-weight: bold;
  border: 1px solid #eec72c;
}

.header-contact a .header-mail {
  background-size: 200% 100%;
  background-image: -webkit-linear-gradient(left, transparent 50%, #fff 50%);
  background-image: linear-gradient(to right, transparent 50%, #fff 50%);
  -webkit-transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1)
      0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
  transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
}
.header-contact a:hover .header-mail {
  background-color: #eec72c;
  background-position: -100% 100%;
  color: #eec72c;
}

.header-mail i {
  margin-right: 7px;
}
.header-entry {
  font-size: 18px;
  color: #fff;
  background-color: #a6bd54;
  border-radius: 10px;
  padding: 9px 15px;
  margin-left: 10px;
  font-weight: bold;
  border: 1px solid #a6bd54;
}
.header-contact a .header-entry {
  background-size: 200% 100%;
  background-image: -webkit-linear-gradient(left, transparent 50%, #fff 50%);
  background-image: linear-gradient(to right, transparent 50%, #fff 50%);
  -webkit-transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1)
      0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
  transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
}
.header-contact a:hover .header-entry {
  background-color: #a6bd54;
  background-position: -100% 100%;
  color: #a6bd54;
}

.header-contact a {
  text-decoration: none;
}
.flex-direction-nav {
  display: none;
}

.menu li:nth-child(1),
.menu li:nth-child(10),
.menu li:nth-child(11),
.menu li:nth-child(12),
.menu li:nth-child(13),
.menu li:nth-child(14) {
  display: none;
}
.menu {
  position: relative;
}
.menu ul {
  list-style: none;
  display: flex;
  margin-top: 0;
  margin-bottom: 0;
  justify-content: initial;
  transition: 0.2s;
  padding-left: 0;
  left: 0;
}
.menu.fixed {
  top: 1em;
  position: fixed;
}
.menu li {
  width: 12.5%;
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 1366px) {
  header.site-header {
    max-width: 1230px;
  }
  .menu li {
    width: 150px;
  }
}
@media screen and (max-width: 1024px) {
  header.site-header {
    max-width: 924px;
  }
  .menu li {
    width: 108px;
  }
}
.menu li.page-item-113 {
  width: 220px;
}
.menu li:not(:nth-child(9)) {
  border-right: 1px solid #000;
}
.menu li a {
  text-decoration: none;
  line-height: 1em;
  color: #000;
  display: inline-block;
  vertical-align: middle;
}

.menu li a {
  position: relative;
  display: inline-block;
  text-decoration: none;
}
.menu li a::after {
  position: absolute;
  bottom: -6px;
  left: 0;
  content: "";
  width: 100%;
  height: 2px;
  background: #009fe6;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
}
.menu li a:hover::after {
  transform: scale(1, 1);
}

.home #content {
  margin-top: -16.5em;
}

header .entry-title {
  text-align: center;
}
header img {
  width: 400px;
}

.header-background-image {
  position: relative;
}

.header-background-image img {
  width: 100%;
}
.header-logo {
  position: absolute;
  top: 0;
  width: 100%;
}
.header-logo img {
  width: 100%;
}

/* ヘッダーのキャッチコピー */
.catch-title-text {
  position: absolute;
  top: 0;
  width: 100%;
  height: auto;
  text-align: center;
  z-index: 100;
}
.home .catch-title-text {
  padding-top: 25%;
}

.catch-title-text h1 {
  font-size: 48px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  color: #fff;
  -moz-text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.74);
  -webkit-text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.74);
  -ms-text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.74);
  text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.74);
}

/* ヘッダーのガット船シルエット */
.header-gatt-image {
  display: none;
  position: absolute;
  bottom: 75px;
  right: 0;
}
.header-gatt-image img {
  position: relative;
  width: 43vw;
  opacity: 0.8;
  right: 10px;
}
.header-gatt-image img {
  animation: anime_header_gatt 8s ease-in-out 0s 1 normal; /* アニメーション指定 */
  -webkit-animation: anime_header_gatt 8s ease-in-out 0s 1 normal;
}

@keyframes anime_header_gatt {
  0% {
    right: -500px;
  }
  100% {
    right: 10px;
  }
}
@-webkit-keyframes anime_header_gatt {
  0% {
    right: -500px;
  }
  100% {
    right: 10px;
  }
}

/* トップページ コンテンツ */
.main-contents-container {
  clear: both;
}

/* コンテンツ1 */
.contents-01 {
  padding: 2em 10% 0;
  display: flex;
}
.delighter .contents-01 {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .contents-01 {
  opacity: 1;
  transform: none;
}

.contents-01 img {
  width: 50%;
  height: 100%;
}
.contents-01 .contents-text {
  width: 50%;
  margin-left: 3em;
}

.contents-01 h2 {
  font-size: 32px;
  color: #008acc;
}
.contents-01 h2::after {
  content: "　SANKYU GROUP";
  font-size: 16px;
}

.contents-01 h3 {
  font-size: 30px;
  color: #008acc;
}
.contents-01 .box {
  height: 50vh;
}
.contents-01 p {
  font-size: 20px;
  line-height: 2em;
}

/* スクロールして特定箇所で枠や文字が表示される */

.contents-01 .box {
  position: relative;
  font-size: 0.8em;
  padding: 10px;
}

/* コンテンツ2 */
.display-flex {
  display: flex;
  flex-direction: row;
  justify-content: center;
  gap: 5em;
}
@media screen and (max-width: 1024px) {
	.display-flex {
	  gap: 2em;
	  padding-bottom: 3em;
	}
	.contents-02-1,
	.contents-02-2 {
		flex-basis: 50%;
	}
}
@media screen and (max-width: 480px) {
	.display-flex {
		flex-direction: column;
	}
	.contents-02-1,
	.contents-02-2 {
		flex-basis: 100%;
	}
}
.contents-02 {
  background-color: #009fe6;
  text-align: center;
}
.contents-02 section {
  height: 50vh;
}
@media screen and (max-width: 1600px) {
	.contents-02 section {
	  height: 75vh;
	}
}
@media screen and (max-width: 1400px) {
	.contents-02 section {
	  height: 55vh;
	}
}

.contents-02 img {
  width: 50%;
}

.contents-02 h2 {
  font-size: 32px;
  color: #fff;
  padding-top: 1em;
}
.contents-02 h2::after {
  content: "SERVICE";
  font-size: 16px;
  display: block;
}
.contents-02-1 .contents-outer {
  background-color: #e8f0ea;
  width: 100%;
  padding: 1em;
  margin-left: -1em;
}
.contents-02-1 .contents-border {
  border: 1px solid #236dab;
  background-color: #fff;
  text-align: left;
  width: 100%;
  height: 100%;
  filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
}
.contents-02-1 .contents-border {
  padding: 0;
}
.contents-02-2 .contents-outer {
  background-color: #e8f0ea;
  width: 100%;
  padding: 1em;
}
.contents-02-2 .contents-border {
  border: 1px solid #62a372;
  background-color: #fff;
  text-align: left;
  width: 100%;
  height: 100%;
  filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
}
.contents-02-2 .contents-border {
  padding: 0;
}
.contents-border h2 {
  color: #fff;
  border-bottom: 2px solid;
  padding-top: 0;
  margin-top: 0;
}
.contents-02-1 .contents-border h2 {
  background-color: #236dab;
  padding: 20px 40px;
  min-height: 72px;
}
.contents-02-1 .contents-border h2::after {
  content: "　SANKYU KAIUN";
  font-size: 16px;
  display: inline-block;
}
.contents-02-2 .contents-border h2 {
  background-color: #62a372;
  padding: 20px 40px;
}
.contents-02-2 .contents-border h2::after {
  content: "　SANKYU-REMATECH";
  font-size: 16px;
  display: inline-block;
}

.contents-border h4 {
  font-size: 24px;
  margin: 0;
  padding: 0 40px;
}
.contents-02-1 .contents-border h4 {
  color: #008acc;
}
.contents-02-2 .contents-border h4 {
  color: #61ac70;
}
.contents-border p {
  font-size: 20px;
  padding: 0 0 0 40px;
}
.contents-border a {
  width: 50%;
  font-size: 20px;
  text-align: center;
  padding: 1.5em;
  border: 1px solid #008acc;
  text-decoration: none;
  margin: 1em;
  display: inline-block;
  color: #008acc;
}
.contents-border a::after {
  content: "　>";
}
.contents-02-2 .contents-border h2 {
  line-height: 1em;
}

/* スクロールして特定箇所で枠や文字が表示される */
.contents-02-2 .box:first-child {
  z-index: 100;
}

.contents-02 .box {
  position: relative;
  font-size: 0.8em;
  padding: 0;
}

.contents-02 .contents-02-1 .delighter .box {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.contents-02 .contents-02-1 .delighter.started .box {
  opacity: 1;
}
/*.contents-02 .contents-02-1 .delighter .box:nth-child(1) { transform: translate(-25%, 0); }
.contents-02 .contents-02-1 .delighter .box:nth-child(2) { transform: translate(40%, -110%); }
*/

.contents-02 .contents-02-2 .delighter .box {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.contents-02 .contents-02-2 .delighter.started .box {
  opacity: 1;
}
/*.contents-02 .contents-02-2 .delighter .box:nth-child(1) { transform: translate(5%, 10%); }
.contents-02 .contents-02-2 .delighter .box:nth-child(2) { transform: translate(25%, -75%); }
*/

/* コンテンツ3 */
.contents-03 {
  padding: 2em 10% 0;
  display: flex;
  justify-content: center;
}
.delighter .contents-03 {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .contents-03 {
  opacity: 1;
  transform: none;
}

.contents-03 .contents-service {
  width: 45%;
  margin: 2em;
  border: 1px solid #008acc;
  background-color: #fff;
}
.contents-service img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}
.contents-service-text {
  padding: 0 3em;
}
.contents-03 h2 {
  font-size: 32px;
  color: #008acc;
  text-align: center;
}
.contents-03 .contents-service:nth-child(1) h2::after {
  content: "SILICA SAND";
  font-size: 16px;
  display: block;
}
.contents-03 .contents-service:nth-child(2) h2::after {
  content: "INDUSTRIAL WASTE TREATMENT";
  font-size: 16px;
  display: block;
}

.contents-03 h3 {
  font-size: 30px;
  color: #008acc;
}
.contents-03 .box {
  height: 50vh;
}
.contents-03 p {
  font-size: 20px;
  line-height: 1.5em;
}

/* コンテンツ4 */
.contents-04 {
  padding: 3em 0;
  text-align: center;
  background-image: url(/wp-content/uploads/sankyu-adopt-background.png);
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
}
.delighter .contents-04 {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .contents-04 {
  opacity: 1;
  transform: none;
}
.contents-04 h2 {
  font-size: 40px;
  margin: 0;
}
.contents-04 h2::after {
  content: "RECRUIT";
  font-size: 20px;
  display: block;
}
.contents-04 img {
  width: 100px;
}
.contents-04 h1 {
  font-size: 50px;
  margin: 0;
}
.contents-04 h1::after {
  content: "LET'S CREATE AN IDEAL COMPANY TOGETHER";
  font-size: 20px;
  display: block;
}
.sub-adopt-banner {
  background-color: #006fb0;
  display: flex;
  padding: 0 17% 2em;
}

/* お知らせ */
.contents-05 {
  background-color: #f5f5f5;
  padding-bottom: 1em;
}
.delighter .contents-05 {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .contents-05 {
  opacity: 1;
  transform: none;
}

div.whatsnew {
  width: 50%;
  text-align: center;
  margin: 0 auto;
}
div.whatsnew h1 {
  color: #008acc;
}
div.whatsnew h1::before {
  content: "NEWS";
  font-size: 40px;
  color: #008acc;
  display: block;
}

div.whatsnew hr {
  color: #008acc;
}
div.whatsnew dl {
  border-left: 1px solid #008acc;
  border-right: 1px solid #008acc;
  background-color: #fff;
}
div.whatsnew dt {
  float: none;
}
div.whatsnew dd {
  text-align: left;
  padding-left: 5%;
}
.contents-05 button {
  background-color: #fff;
}

/* フッターの波と船 */
.ship {
  position: relative;
  height: 20vh;
  width: 100%;
}

.ship img {
  display: block;
  position: absolute;
  left: 10%;
  z-index: 100;
  width: 220px;
  height: 160px;
  animation: fuwafuwa 5s infinite alternate linear;

  -ms-animation: fuwafuwa 5s infinite alternate linear;
  -webkit-animation: fuwafuwa 5s infinite alternate linear;
  -moz-animation: fuwafuwa 5s infinite alternate linear;
}

@keyframes fuwafuwa {
  0% {
    bottom: 30%;
  }
  50% {
    bottom: 40%;
  }
  100% {
    bottom: 30%;
  }
}

@-ms-keyframes fuwafuwa {
  0% {
    bottom: 30%;
  }
  50% {
    bottom: 40%;
  }
  100% {
    bottom: 30%;
  }
}

@-webkit-keyframes fuwafuwa /* Safari and Chrome */ {
  0% {
    bottom: 30%;
  }
  50% {
    bottom: 40%;
  }
  100% {
    bottom: 30%;
  }
}

@-moz-keyframes fuwafuwa /* Firefox */ {
  0% {
    bottom: 30%;
  }
  50% {
    bottom: 40%;
  }
  100% {
    bottom: 30%;
  }
}

#ocean {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -moz-linear-gradient(top, #4566a1, #4566a1);
  background: -webkit-linear-gradient(top, #4566a1, #4566a1);
  background: -o-linear-gradient(top, #4566a1, #4566a1);
  background: linear-gradient(to bottom, #4566a1, #4566a1);
}

.wave {
  background: #009fe6;
  display: inline-block;
  height: 60%;
  width: 10px;
  position: absolute;
  -webkit-animation-name: dostuff;
  -moz-animation-name: dostuff;
  -ms-animation-name: dostuff;
  animation-name: dostuff;
  -webkit-animation-duration: 5s;
  -moz-animation-duration: 5s;
  -ms-animation-duration: 5s;
  animation-duration: 5s;
  -webkit-animation-iteration-count: infinite;
  -moz-animation-iteration-count: infinite;
  -ms-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-transition-timing-function: ease-in-out;
}

@keyframes dostuff {
  0% {
    height: 60%;
  }
  50% {
    height: 40%;
  }
  100% {
    height: 60%;
  }
}

@-ms-keyframes dostuff {
  0% {
    height: 60%;
  }
  50% {
    height: 40%;
  }
  100% {
    height: 60%;
  }
}

@-webkit-keyframes dostuff {
  0% {
    height: 60%;
  }
  50% {
    height: 40%;
  }
  100% {
    height: 60%;
  }
}

@-moz-keyframes dostuff /* Firefox */ {
  0% {
    height: 60%;
  }
  50% {
    height: 40%;
  }
  100% {
    height: 60%;
  }
}
.ship-and-ocean {
  position: relative;
}

/* お問合せ */
footer {
  margin-top: -2em;
}
.footer-container {
  background-color: #fff;
  text-align: center;
}
.site-info {
  display: none;
}
.footer-contact {
  color: #fff;
  background-color: #009fe6;
  height: 64vh;
  text-align: left;
}
.footer-contact section .box:nth-child(1) {
  z-index: 1;
}
.footer-contact section .box:nth-child(2) {
  z-index: 2;
}

.footer-contact h1::before {
  content: "CONTACT";
  font-size: 40px;
  color: #fff;
  display: block;
}
.footer-contact h1 {
  font-size: 20px;
}
.footer-contact p {
  font-size: 20px;
}
.footer-contact a {
  text-decoration: none;
  color: #fff;
  transition: 0.2s;
}
.footer-contact .footer-mail {
  transition: 0.2s;
}
.footer-contact .footer-mail:hover {
  background-color: #fff;
  color: #eec72c;
  font-weight: bold;
}
.footer-contact img {
  width: 460px;
}
.common-contact-ship img {
  width: 220px;
}
.footer-tel {
  width: 460px;
  text-align: center;
  margin-bottom: 1em;
}
.footer-tel h3 {
  font-size: 46px;
  margin: 0;
  letter-spacing: 8px;
}
.footer-mail {
  width: 410px;
  height: 65px;
  padding: 2em;
  background-color: #eec72c;
  margin-top: 2em;
  border-radius: 1em;
  text-align: center;
}
.footer-mail p {
  font-size: 28px;
  margin-top: 10px;
}

/* スクロールして特定箇所で枠や文字が表示される */
.footer-contact .box:first-child {
  z-index: 100;
}

.footer-contact .box {
  position: relative;
  font-size: 0.8em;
  padding: 0;
}

.footer-contact .delighter .box {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.footer-contact .delighter .box:nth-child(1) {
  transform: translate(10%, 10%);
}
.footer-contact .delighter .box:nth-child(2) {
  transform: translate(50%, -46%);
}

.footer-contact .delighter.started .box {
  opacity: 1;
}

/* フッターリンク */

.footer-links-container {
  display: flex;
  text-align: left;
  padding: 1em 10%;
  background-color: #4566a1;
}
.footer-links {
  width: 24%;
}
.footer-links:nth-child(2) {
  width: 41%;
}
.footer-links:nth-child(3) {
  width: 33%;
}
.footer-links:nth-child(2) {
  padding-top: 4em;
}
.footer-links p {
  color: #b7c4db;
  padding: 0 0 10px 90px;
}
.footer-links ul,
.footer-links-bottom ul {
  list-style: none;
  padding-left: 0;
}
.footer-links li {
  line-height: 2em;
  color: #fff;
}
.padding-link {
  padding-left: 20px;
}
.padding-link-child {
  padding-left: 40px;
}
.padding-link-child:before {
  content: "> ";
  color: #ffffff;
}
.footer-links:nth-child(2) li:not(:first-child)::before {
  content: "> ";
  color: #ffffff;
}
.footer-links li a,
.footer-links-bottom li a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color: #fff;
}
.footer-links-bottom li a {
  color: #b7c4db;
}
.footer-links li a::after,
.footer-links-bottom li a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 2px;
  background: #009fe6;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform 0.3s;
}
.footer-links li a:hover::after,
.footer-links-bottom li a:hover::after {
  transform: scale(1, 1);
}
.footer-links img {
  width: 100%;
}

.footer-links-bottom,
.footer-copyright {
  background-color: #4566a1;
  text-align: center;
  color: #fff;
}
.footer-links-bottom {
  padding: 0 10%;
}
.footer-links-bottom ul {
  margin: 0;
}
.footer-links-bottom ul li {
  display: inline;
  padding-right: 10px;
}
.footer-copyright {
  margin-bottom: 0;
  padding: 5px 10% 20px;
  color: #b7c4db;
}

/* サブページ共通 */
body:not(.home):not(.post-template-default):not(.archive) .entry-header {
  display: none;
}
.sub-header-background-image {
  position: relative;
}
.sub-header-background-image img {
  width: 100%;
}
body:not(.home) .catch-title-text {
  top: 30%;
}
body:not(.home) .catch-title-text h1 {
  margin-bottom: 0;
  letter-spacing: 5px;
}
body:not(.home) .catch-title-text h3 {
  color: #fff;
  font-size: 36px;
  margin: 0;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
h2.sub-contents-catch {
  text-align: center;
  font-size: 32px;
  color: #00a0e8;
}

/* 三久海運株式会社 */

.sub-contents-explain {
  display: flex;
  border-top: 2px solid #00a0e8;
  border-bottom: 2px solid #00a0e8;
  border-left: 2px solid #00a0e8;
}

.sub-explain-title {
  padding: 0;
  position: relative;
  width: 230px;
}
.sub-explain-title h3 {
  transform: rotate(-90deg);
  white-space: normal;
  font-weight: normal;
  position: absolute;
  width: 100px;
  bottom: 25px;
  right: 0;
  font-size: 26px;
  color: #00a0e8;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.sub-explain-text {
  border-left: 5px solid #00a0e8;
  padding: 3em 4em 2em;
  font-size: 20px;
  width: 100%;
}
.sub-explain-text div {
  margin-bottom: 1em;
}

.delighter .sub-contents-detail {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .sub-contents-detail {
  opacity: 1;
  transform: none;
}

.sub-contents-detail {
  background-color: #f5f5f5;
  display: flex;
  padding: 2em 15% 4em;
}
.sub-sankyu-kaiun-image {
  width: 50%;
}
.sub-sankyu-kaiun-image img {
  width: 88%;
}

.sub-info-text {
  position: relative;
}
.sub-info-text div {
  margin-left: 1em;
}
.sub-info-title {
  width: 120%;
  background-color: #00a0e8;
  color: #fff;
  padding: 10px 20px;
  margin: 0;
}
.sub-info-text ul:before {
  content: "";
  color: #2b69ba;
  position: absolute;
  top: 0;
  left: -17px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 16px 16px 0;
  border-color: transparent #2b69ba transparent transparent;
}
.sub-info-text li {
  font-size: 20px;
}
.sub-info-text {
  width: 125.5%;
  margin: 0 1em;
  border-left: 1px solid #00a0e8;
  border-right: 1px solid #00a0e8;
  border-bottom: 1px solid #00a0e8;
  background-color: #fff;
}
.sub-sankyu-kaiunn-info .sub-info-text:nth-child(2) {
  border-bottom: none;
}
.sub-info-text ul {
  margin: 0;
  padding: 2em 0 2em 3em;
}
img.sub-detail-footer-image {
  width: 100%;
}

.sankyu-kaiun-contents-container {
  padding: 2em 10% 0;
  display: flex;
}
.delighter .sankyu-kaiun-contents-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .sankyu-kaiun-contents-container {
  opacity: 1;
  transform: none;
}

.sankyu-kaiun-contents-container .contents-service {
  width: 45%;
  margin: 2em;
  border: 1px solid #008acc;
}
.sankyu-kaiun-contents-container img {
  width: 100%;
}
.contents-service-text {
  padding: 0 3em;
}
.sankyu-kaiun-contents-container h2 {
  font-size: 32px;
  color: #008acc;
  text-align: center;
}

.sankyu-kaiun-contents-container h3 {
  font-size: 30px;
  color: #008acc;
}
.sankyu-kaiun-contents-container .box {
  height: 50vh;
}
.sankyu-kaiun-contents-container p {
  font-size: 20px;
  line-height: 1.5em;
}
.sankyu-kaiun-contents-container a {
  width: 67%;
  font-size: 20px;
  text-align: center;
  padding: 2em;
  border: 1px solid #008acc;
  text-decoration: none;
  margin: 2em;
  display: inline-block;
  color: #008acc;
}
.sankyu-kaiun-contents-container a::after {
  content: "　>";
}

.delighter .sub-about-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .sub-about-container {
  opacity: 1;
  transform: none;
}
.sub-about-container {
  text-align: center;
  margin-bottom: 3em;
}
.sub-about-title {
  font-size: 36px;
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
}
.sub-about-title:before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px; /*線の上下位置*/
  display: inline-block;
  width: 60px; /*線の長さ*/
  height: 5px; /*線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%); /*位置調整*/
  background-color: #009fe6; /*線の色*/
  border-radius: 2px; /*線の丸み*/
}
.sub-about-container table {
  text-align: left;
  padding: 0 20%;
  font-size: 20px;
}
.sub-about-container th {
  padding: 1em 2em;
  width: 10em;
  border-top: 2px solid #383838;
  vertical-align: top;
}
.sub-about-container td {
  width: 20em;
  padding: 1em 5em;
  border-top: 1px solid #adadad;
}
.sub-about-container iframe {
  margin-top: 1em;
}

/* 珪砂 */
.keisya-contents-container {
  display: flex;
  padding: 2em 10%;
  flex-wrap: wrap;
}
.keisya-box {
  margin: 0.5em;
  width: 48%;
}

.keisya-header {
  display: flex;
}
.keisya-image img {
  width: 250px;
  height: 250px;
  object-fit: cover;
}
.keisya-info {
  margin-left: 1em;
  width: 100%;
}
.keisya-info h2 {
  margin: 0;
  background-color: #00a0e8;
  color: #fff;
  padding: 0 5%;
  width: 90%;
}
.keisya-info p {
  padding: 1em;
  font-size: 18px;
}
.keisya-button {
  text-align: center;
  padding: 1em 4.5em;
  border: 1px solid #00a0e8;
  position: absolute;
  right: 0;
  margin-top: -4em;
}
.keisya-button:after {
  content: ">";
  margin-left: 1em;
  display: inline-block;
}

.keisya-footer {
  margin-top: -0.5em;
  margin-bottom: 1em;
}
.keisya-detail {
  width: 100%;
}
.keisya-detail th {
  text-align: left;
  vertical-align: top;
  width: 10em;
  background-color: #00a0e8;
  color: #fff;
  padding: 1em 3em 1em 1em;
}
.keisya-detail td {
  padding: 0.5em;
  border: 1px solid #00a0e8;
}

.hidden_box {
  position: relative;
}

/*ボタン装飾*/
.hidden_box label {
  cursor: pointer;
  background-color: #fff;
  transition: 0.2s;
}

/*ボタンホバー時*/
.hidden_box label:hover {
  background: #00a0e8;
  color: #fff;
}

/*チェックは見えなくする*/
.hidden_box input {
  display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
  height: auto;
  opacity: 1;
}

.keisya-contents-after {
  text-align: center;
  width: 100%;
  font-size: 20px;
}

/* 工場・ヤード */
.yard-contents-container {
  padding: 1em 10%;
}
.main-contents-container section:nth-child(odd) .yard-contents-container {
  background-color: #f5f5f5;
}
.main-contents-container section:last-child .yard-contents-container {
  padding-bottom: 3em;
}
.yard-contents-container h2 {
  margin: 1em;
  padding: 0 1em;
  border-left: 7px solid #adb8c3;
}
.yard-contents-container img.yard-middle-image {
  width: 100%;
}
.yard-info-container {
  margin-top: 2em;
  box-shadow: 14px 14px 4px -10px #adb8c3;
}
.yard-info-title {
  background-color: #00a0e8;
  color: #fff;
  padding: 0.5em 1em;
  margin: 0;
}
.yard-info-text {
  margin-left: 1em;
  padding: 1em;
  font-size: 16px;
  background-color: #fff;
  position: relative;
}
.yard-info-text:before {
  content: "";
  color: #2b69ba;
  position: absolute;
  top: 0;
  left: -17px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 16px 16px 0;
  border-color: transparent #2b69ba transparent transparent;
}

.yard-image-container {
  margin-top: 3em;
  display: flex;
  flex-wrap: wrap;
}
.yard-image-box {
  width: 32%;
  margin-right: 2%;
}
.yard-image-container .yard-image-box:nth-child(3),
.yard-image-container .yard-image-box:nth-child(6) {
  margin-right: 0;
}
.yard-image-box img {
  width: 100%;
}

.yard-name {
  margin-bottom: 1em;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  display: flex;
  align-items: center;
}
.yard-name img {
  width: 30px;
  margin-right: 10px;
}
.yard-name span {
  padding-left: 2.5em;
}

.delighter .yard-contents-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .yard-contents-container {
  opacity: 1;
  transform: none;
}

/* サンキュウ・リマテック株式会社 */
h2.sub-contents-catch.rematech {
  text-align: center;
  font-size: 32px;
  color: #82ba85;
}
.sub-contents-explain.rematech {
  display: flex;
  border-top: 2px solid #82ba85;
  border-bottom: 2px solid #82ba85;
  border-left: 2px solid #82ba85;
}

.sub-explain-title.rematech h3 {
  transform: rotate(-90deg);
  white-space: normal;
  font-weight: normal;
  position: absolute;
  width: 100px;
  bottom: 25px;
  right: 0;
  font-size: 26px;
  color: #82ba85;
  line-height: 25px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.sub-explain-text.rematech {
  border-left: 5px solid #82ba85;
  padding: 3em 3em 2em;
  font-size: 20px;
}
.sub-explain-text div {
  margin-bottom: 1em;
}

.delighter .rematech-contents-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .rematech-contents-container {
  opacity: 1;
  transform: none;
}
.rematech-contents-container {
  padding: 2em 10% 0;
  display: flex;
}
.delighter .rematech-contents-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .rematech-contents-container {
  opacity: 1;
  transform: none;
}

.rematech-contents-container .contents-service {
  width: 45%;
  margin: 2em;
  border: 1px solid #82ba85;
  background-color: #74c290;
}
.rematech-contents-container img {
  width: 100%;
  border-bottom: 10px solid #00836d;
}
.contents-service-text {
  padding: 0 3em;
}
.rematech-contents-container h2 {
  font-size: 32px;
  font-weight: normal;
  color: #fff;
  text-align: left;
  height: 104px;
}

.rematech-contents-container h3 {
  font-size: 30px;
  color: #82ba85;
}
.rematech-contents-container .box {
  height: 50vh;
}
.rematech-contents-container p {
  font-size: 20px;
  line-height: 1.5em;
}
.rematech-contents-container a {
  width: 67%;
  font-size: 20px;
  text-align: center;
  padding: 2em;
  border: 1px solid #82ba85;
  text-decoration: none;
  margin: 2em;
  display: inline-block;
  color: #008acc;
}
.rematech-contents-container a::after {
  content: "　>";
}

.delighter .rematech-about-detail {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .rematech-about-detail {
  opacity: 1;
  transform: none;
}

.rematech-about-detail {
  margin-top: -5px;
}
.rematech-about-title {
  margin: 0;
  background-color: #82ba85;
  color: #fff;
  padding: 0.5em 15%;
  font-size: 28px;
}
.rematech-about-container {
  margin: 0 15% 2em;
  border-left: 1px solid #82ba85;
  padding-bottom: 1em;
}
.rematech-about-container h3 {
  padding: 2%;
  font-size: 26px;
  color: #82ba85;
  margin: 0;
}
.rematech-about-container p {
  padding-left: 2%;
  font-size: 18px;
  width: 80%;
}
.rematech-middle-image {
  padding-top: 2em;
}

.rematech-trans-box {
  margin-top: 2em;
}

/*ボタン装飾*/
.rematech-about-container .hidden_box label {
  cursor: pointer;
  background-color: #fff;
  transition: 0.2s;
  padding: 0 2%;
  font-size: 26px;
  color: #82ba85;
  margin: 0;
  font-weight: bold;
}
.rematech-detail {
  margin-bottom: 1em;
  margin-left: 10px;
}
.rematech-detail table {
  font-size: 18px;
}
.rematech-detail th {
  padding: 5px 15px;
  background-color: #82ba85;
  color: #fff;
}
.rematech-detail td {
  border: 1px solid #c42619;
  padding: 0 1em;
}
.border-space th {
  background-color: #fff;
}
.border-space td {
  border: none;
}
.special-permission th {
  font-size: 20px;
}
.special-permission td {
  padding: 0.5em 1em;
}
.rematech-trans-box a.contents-button {
  width: 45%;
  font-size: 18px;
  text-align: center;
  padding: 1.5em;
  border: 1px solid #82ba85;
  color: #82ba85;
  text-decoration: none;
  margin: 2em auto 3em;
  display: block;
  background-color: #fff;
}
.rematech-trans-box a.contents-button::after {
  content: "　>";
}

.rematech-banner {
  margin: 1em 20% 3em;
  font-size: 24px;
  text-align: center;
  border: 2px solid #7d6114;
  border-left: 50px solid #7d6114;
  border-right: 50px solid #7d6114;
  padding: 1em;
  position: relative;
}
.rematech-banner a {
  color: #7d6114;
  text-decoration: none;
}
.rematech-banner a:hover {
  font-weight: bold;
}
.rematech-banner:after {
  content: ">";
  position: absolute;
  top: 2em;
  right: -1.5em;
  color: #fff;
}
.page-id-113 hr {
  border-color: #009fe6;
}

/* 産業廃棄物リサイクル */
.delighter .recycle-contents-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .recycle-contents-container {
  opacity: 1;
  transform: none;
}

.recycle-01 .recycle-title {
  background-image: url(/wp-content/uploads/recycle-title-background-01.png);
  background-repeat: repeat-x;
  background-size: contain;
  margin: 0;
  color: #fff;
  text-align: center;
  font-size: 34px;
  padding: 2em;
}
.recycle-01 .recycle-title-under {
  background-color: #c4e6d1;
}
.recycle-explain {
  font-size: 20px;
  font-weight: bold;
  padding: 1em 20%;
}
img.recycle-zero-emission {
  margin-bottom: 1em;
  padding: 10px;
  padding-left: 20%;
  background-color: #5fba83;
}
.recycle-flow-01 {
  padding: 1em 15%;
}
.recycle-flow-01 img:nth-child(1) {
  width: 300px;
}
.recycle-flow-01 img:nth-child(2) {
  width: 200px;
  padding: 10%;
  display: initial;
}
.recycle-flow-01 img:nth-child(3) {
  display: none;
}
.recycle-flow-01 img:nth-child(4) {
  width: 240px;
  padding: 7% 0;
}

.recycle-flow-02 img {
  width: 100%;
  border-top: 1em solid #c4e6d1;
  border-bottom: 1em solid #c4e6d1;
}

.recycle-02 .recycle-title {
  background-image: url(/wp-content/uploads/recycle-title-background-02.png);
  background-repeat: repeat-x;
  background-size: contain;
  margin: 2em 0 0;
  color: #fff;
  text-align: center;
  font-size: 34px;
  padding: 2em;
}
.recycle-02 .recycle-title-under {
  background-color: #e7e6d1;
}

.recycle-owned-box-01 {
  padding: 1em 10% 0;
  font-size: 22px;
}
.recycle-owned-text {
  vertical-align: top;
  padding: 1em;
}
.font-huge {
  font-size: 50px;
  font-weight: bold;
  margin-right: 10px;
  color: #eeba00;
}
.recycle-owned-box-02 {
  display: flex;
  justify-content: flex-end;
  padding: 0 10%;
  position: relative;
}
.recycle-owned-box-02 img {
  width: 220px;
}
.owned-text {
  font-size: 22px;
  font-weight: bold;
  color: #eeba00;
  padding: 1%;
  position: absolute;
  bottom: 0;
  right: 28%;
}
.recycle-truck-image {
  padding: 1em 10%;
  display: flex;
  flex-wrap: wrap;
}
.recycle-truck-image img {
  width: 19.8%;
  height: 100%;
  border: 1px solid #eeba00;
}
.recycle-ship-image {
  padding: 1em 10% 5em;
  display: flex;
  flex-wrap: wrap;
}
.recycle-ship-box {
  width: 49%;
}
.recycle-ship-box.mt {
  margin-top: 4em;
}
.recycle-ship-box img {
  width: 100%;
  height: 100%;
  border: 5px solid #eeba00;
}
.recycle-ship-box:first-child img {
  border-right: none;
}
.recycle-ship-name {
  border-left: 5px solid #eeba00;
  padding: 0.2em 1em;
}

/* 環境方針 */

.contents-env {
  text-align: center;
  background-color: #009fe6;
}
.contents-env section {
  height: 70vh;
}

.contents-env img {
  width: 35%;
}

.contents-env h2 {
  font-size: 32px;
  color: #fff;
  padding: 0;
  margin: 0;
  /*  padding-top: 1em;*/
}
.contents-env-1 section,
.contents-env-2 section {
  background-color: #5780b5;
}
.contents-env-2 section {
  margin-top: 0;
}
.contents-env-1 .contents-border {
  background-color: #fff;
  text-align: left;
  width: 60%;
  height: auto;
  filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
  padding: 2em;
}
.contents-env .contents-border h2 {
  color: #008acc;
  border-bottom: 2px solid #adadad;
}
.contents-env .contents-border h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #383838;
  width: 30%;
}
.contents-env .contents-border p {
  padding: 20px 20px 0;
}
.contents-env-2 .contents-border {
  background-color: #fff;
  text-align: left;
  width: 60%;
  height: auto;
  filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
  padding: 2em;
}
.contents-border h2 {
  color: #fff;
  border-bottom: 2px solid;
  padding-top: 0;
}
.contents-env-1 .contents-border li {
  font-size: 20px;
  list-style: decimal;
}
.contents-env-2 .contents-border li {
  font-size: 20px;
  list-style: decimal;
}

/* スクロールして特定箇所で枠や文字が表示される */
.contents-env-2 .box:first-child {
  z-index: 100;
}

.contents-env .box {
  position: relative;
  font-size: 0.8em;
  padding: 0;
}

.contents-env .contents-env-1 .delighter .box {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.contents-env .contents-env-1 .delighter.started .box {
  opacity: 1;
}
.contents-env .contents-env-1 .delighter .box:nth-child(1) {
  transform: translate(-29%, 15%);
}
.contents-env .contents-env-1 .delighter .box:nth-child(2) {
  transform: translate(33%, -100%);
}

.contents-env .contents-env-2 .delighter .box {
  opacity: 0;
  transition: all 0.3s ease-out;
}
.contents-env .contents-env-2 .delighter.started .box {
  opacity: 1;
}
.contents-env .contents-env-2 .delighter .box:nth-child(1) {
  transform: translate(3%, 15%);
}
.contents-env .contents-env-2 .delighter .box:nth-child(2) {
  transform: translate(29%, -72%);
}

@media screen and (max-width: 1400px) {
  .contents-env section {
    height: 55vh;
  }
  .contents-env .contents-env-1 .delighter .box:nth-child(2) {
    transform: translate(30%, -60%);
  }
  .contents-env .contents-env-2 .delighter .box:nth-child(1) {
    transform: translate(3%, 15%);
  }
}
@media screen and (max-width: 1024px) {
  .contents-env section {
    height: auto;
  }
  .contents-env .contents-env-1 .delighter .box:nth-child(2) {
    transform: translate(30%, -35%);
  }
  .contents-env .contents-env-2 .delighter .box:nth-child(1) {
    transform: translate(3%, 7%);
  }
}
@media screen and (max-width: 768px) {
  .contents-env .contents-env-1 .delighter .box:nth-child(1) {
    transform: translate(25%, 0);
  }
  .contents-env .contents-env-1 .delighter .box:nth-child(2) {
    transform: translate(0, -80px);
  }

  .contents-env .contents-env-2 .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .contents-env .contents-env-2 .delighter .box:nth-child(2) {
    transform: translate(25%, -60px);
  }
}
@media screen and (max-width: 480px) {
.contents-env .contents-env-1 .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .contents-env .contents-env-1 .delighter .box:nth-child(2) {
    transform: translate(0, -80px);
  }

  .contents-env .contents-env-2 .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .contents-env .contents-env-2 .delighter .box:nth-child(2) {
    transform: translate(0, -60px);
  }
}

.iso-box {
  padding: 2em;
  display: flex;
  border: 2px solid #009fe6;
  margin: 2em 15%;
}
.iso-box img {
  width: 200px;
}
.iso-detail {
  margin-left: 2em;
  width: 100%;
}
.iso-detail h3 {
  padding: 0.5em 1em;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  font-size: 22px;
}
.iso-detail table {
  text-align: left;
  width: 100%;
}
.iso-detail th {
  padding: 0.5em 1em;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  font-size: 20px;
}
.iso-detail td {
  padding: 0.5em 1em;
  border: 1px solid #ccc;
  font-size: 18px;
}
.iso-footer {
  display: flex;
  width: 50%;
  margin: 0 auto 5em;
}
.iso-footer-date {
  width: 60%;
}
.iso-corp-name {
  width: 40%;
}
.iso-corp-name p {
  margin-bottom: 1em;
}

/* 採用情報 */

#demand,
#requirements,
#career-flow,
#internship {
  position: relative;
  top: -75px;
}

.sub-contents-links {
  padding: 1em 0 4em;
  display: flex;
  justify-content: center;
}
.sub-contents-links a span {
  list-style: none;
  margin-top: 0;
  margin-bottom: 0;
  justify-content: space-between;
  transition: 0.2s;
  padding: 0.5em 2em;
  border: 1px solid #d11619;
  border-left: 10px solid #d11619;
  width: 195px;
  text-align: center;
  display: inline-block;
}

.sub-contents-links a span::after {
  content: ">";
  margin-left: 10px;
}
.sub-contents-links a {
  color: #000;
  text-decoration: none;
}
.sub-contents-links a:hover {
  color: #fff;
  background-color: #d11619;
}

.sub-careers-title {
  text-align: center;
}
.sub-careers-title img {
  width: 200px;
}
.sub-career-catch {
  display: flex;
  justify-content: center;
}
.sub-career-catch img {
  width: 100px;
  height: 100px;
  padding: 1.5%;
}
.sub-career-catch .sub-contents-catch {
  text-align: left;
  color: #000;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.sub-contents-explain.career {
  border-top: 2px solid #d11619;
  border-bottom: 2px solid #d11619;
  border-left: 2px solid #d11619;
}
.sub-explain-text.career {
  border-left: none;
  padding: 2em 15% 1em;
  font-size: 22px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
    "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.sub-career-explain-internship {
  display: flex;
  background-color: #ebf5eb;
  padding: 2em 0;
}
.career-explain-left {
  width: 52%;
}
.career-explain-left h2 {
  padding: 5px 0 5px 25%;
  font-size: 28px;
  color: #fff;
  background-color: #4a4a4a;
}
.career-explain-left div {
  padding: 10px 10px 10px 25%;
  font-size: 18px;
}

.career-explain-right {
  width: 44%;
}

.career-explain-right img {
  width: 80%;
  padding: 1em 20% 1em 2em;
}

.sub-internship-link {
  padding: 1em 0 3em;
  background-color: #ebf5eb;
  justify-content: space-between;
  text-align: center;
  margin-bottom: 3em;
}
.sub-internship-link a span {
  list-style: none;
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0;
  transition: 0.2s;
  padding: 0.5em 2em;
  border: 1px solid #d11619;
  border-left: 10px solid #d11619;
  font-size: 20px;
  text-align: center;
  background-color: #fff;
}
.sub-internship-link a:hover span {
  background-color: #d11619;
  color: #fff;
}
.sub-internship-link a span::after {
  content: ">";
  margin-left: 10px;
}
.sub-internship-link a span {
  color: #000;
  text-decoration: none;
}

.sub-requirements-container {
  padding: 2em 20%;
}
.sub-requirements-container th {
  width: 35%;
  padding: 1em;
  font-size: 20px;
  border-top: 5px solid #d11619;
}
.sub-requirements-container table tbody tr:last-child th {
  border-bottom: 5px solid #d11619;
}
.sub-requirements-container td {
  width: 130%;
  padding: 1em;
  display: block;
  padding: 1em;
  font-size: 20px;
  border-top: 5px solid #adadad;
}
.sub-requirements-container table tbody tr:last-child td {
  border-bottom: 5px solid #adadad;
}
.paddingleft20px {
  padding-left: 20px;
}
.paddingleft40px {
  padding-left: 40px;
}

.sub-contact-link {
  padding: 1em 0 1em;
  justify-content: space-between;
}
.sub-contact-link a span {
  list-style: none;
  display: inline-block;
  margin-top: 0;
  margin-bottom: 0;
  transition: 0.2s;
  padding: 0.5em 2em;
  border: 1px solid #d11619;
  border-left: 10px solid #d11619;
  font-size: 18px;
  text-align: center;
  background-color: #fff;
}
.sub-contact-link a:hover span {
  background-color: #d11619;
  color: #fff;
}
.sub-contact-link a span::after {
  content: ">";
  margin-left: 10px;
}
.sub-contact-link a span {
  color: #000;
  text-decoration: none;
}
.career-flow-message {
  width: 75%;
  margin: 2em auto;
  font-size: 22px;
  font-weight: bold;
}

.sub-career-flow-background {
  padding: 3em;
  background-color: #ebf5eb;
}

.career-flow-image {
  width: 55%;
  margin: 2em auto;
  display: block;
}
.career-flow-remarks {
  width: 70%;
  margin: 2em auto;
  font-size: 20px;
  text-indent: -1.3em;
  padding-left: 1em;
}

.career-flow-box {
  display: flex;
  width: 70%;
  margin: 0 auto 2em;
}
.career-flow-step img {
  width: 135px;
}
.career-flow-text {
  margin-left: 2em;
}
.career-flow-text h3 {
  font-size: 30px;
  margin: 0;
  color: #d11619;
  font-weight: bold;
}
.career-flow-text p {
  font-size: 20px;
}
.career-middle-image {
  margin-bottom: 3em;
}

.career-internship-image {
  width: 65%;
  margin: 3em auto;
}
.career-internship-image img {
  width: 100%;
}

h2.career-internship-example {
  width: 50%;
  margin: 1em auto;
  text-align: center;
  padding: 7px;
  font-size: 34px;
  color: #fff;
  background-color: #4a4a4a;
}
.sub-internship-container {
  padding-bottom: 1em;
}
.sub-internship-container table {
  table-layout: fixed;
  width: 50%;
  margin: 0 auto;
}
.sub-internship-container th {
  width: 40%;
  background-color: #ebf5eb;
  font-size: 20px;
  padding: 10px;
  text-align: center;
  border-bottom: 1px solid #000;
}
.sub-internship-container td {
  width: 60%;
  font-size: 20px;
  padding: 1em 1em 1em 2em;
  border-bottom: 1px solid #000;
}
.internship-kaiun {
  background-color: #009fe6;
  color: #fff;
  padding: 3px;
  border-radius: 1em;
  width: 175px;
  font-size: 18px;
  text-align: center;
  margin-left: -1em;
}
.internship-rematech {
  background-color: #82ba85;
  color: #fff;
  padding: 3px;
  border-radius: 1em;
  width: 290px;
  font-size: 18px;
  text-align: center;
  margin-left: -1em;
}
.sub-internship-container tr:last-child th,
.sub-internship-container tr:last-child td {
  border-bottom: none;
}

.career-internship-remarks {
  margin: 2em auto;
  width: 56%;
  font-size: 22px;
  font-weight: bold;
}
.internship-entry {
  background-color: #d11619;
  text-align: center;
  padding: 3em;
}
.internship-entry a {
  background-color: #fff;
  border-radius: 1em;
  padding: 1em 3em;
  font-size: 28px;
  font-weight: bold;
  text-decoration: none;
  color: #d11619;
  border: 1px solid #fff;
}
.internship-entry a {
  background-size: 200% 100%;
  background-image: -webkit-linear-gradient(left, transparent 50%, #d11619 50%);
  background-image: linear-gradient(to right, transparent 50%, #d11619 50%);
  -webkit-transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1)
      0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
  transition: background-position 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0.1s,
    color 0.5s ease 0s, background-color 0.5s ease;
}
.internship-entry a:hover {
  background-color: #d11619;
  background-position: -100% 100%;
  border: 1px solid #fff;
  color: #fff;
}

.delighter .career-demand-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .career-demand-container {
  opacity: 1;
  transform: none;
}

.delighter .career-requirements-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .career-requirements-container {
  opacity: 1;
  transform: none;
}

.delighter .sub-career-flow-background {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .sub-career-flow-background {
  opacity: 1;
  transform: none;
}

.delighter .career-internship-container {
  opacity: 0;
  transition: all 0.7s ease-out;
}
.delighter.started .career-internship-container {
  opacity: 1;
  transform: none;
}

/* お知らせ一覧 */

.byline,
time.updated,
.cat-links,
.comments-link,
.entry-meta,
.post-navigation,
.comments-area {
  display: none;
}
.archive footer,
.post-template-default footer {
  margin-top: 0;
}
.posted-on svg {
  display: none;
}

.archive .site-content,
.post-template-default .site-content {
  display: flex;
}
.archive .content-area,
.post-template-default .content-area {
  width: 65%;
  margin-right: 3%;
}
.archive #sidebar-aside,
.post-template-default #sidebar-aside {
  width: 35%;
}
#npcatch li,
.widget_archives li,
.sidebar li {
  list-style: none;
}

/* お知らせ */
#pg-618-1 {
  width: 80%;
  margin: 2em auto 5em;
}
.post-template-default .site-content,
.archive .site-content {
  width: 80%;
  margin: 5em auto;
}
#pg-618-1 a,
.post-template-default .site-content a,
.archive .site-content a {
  text-decoration: none;
  color: #000;
}
.post-template-default .site-content h1.entry-title {
  font-size: 28px;
  color: #009fe6;
}

.post-template-default .site-content .entry-content {
  padding: 1em;
  border: 2px solid #009fe6;
}
.entry-date {
  padding: 10px;
  color: #d11619;
  position: relative;
  top: 5px;
}

#panel-618-1-0-0 {
  margin-bottom: 3em;
}
#npcatch,
#my_sidebar_widget {
  padding-left: 0;
  list-style: none;
}
#panel-618-1-0-0 .widget-title {
  display: none;
}
#npcatch li,
#my_sidebar_widget li {
  clear: both;
}
#panel-618-1-0-0 #npcatch li,
.archive #primary #npcatch li {
  margin-bottom: 2em;
}
#npcatch li a {
  padding: 0;
}
#npcatch li img,
#my_sidebar_widget li img {
  float: left;
  margin-bottom: 1em;
  margin-right: 1em;
}
#panel-618-1-0-0 #npcatch li,
.archive #primary #npcatch li {
  height: 150px;
  border: 1px solid #009fe6;
}
#panel-618-1-0-0 #npcatch li .postdate,
.archive #primary #npcatch li .postdate {
  padding-top: 5px;
}
#panel-618-1-0-0 #npcatch li .title,
.archive #primary #npcatch li .title {
  font-size: 20px;
  margin-top: 5px;
  text-align: left;
}
.archive #npcatch li .title {
  margin-bottom: 0;
}
.archive .content-area img {
  width: 150px;
  height: 150px;
  object-fit: cover;
}
.archive .site-content .entry-content {
  display: none;
}
#pgc-618-1-1 .widget-title,
#my_sidebar_widget h2 {
  text-align: center;
  color: #adadad;
  font-size: 20px;
}

#pgc-618-1-1 ul li,
#my_sidebar_widget #npcatch li,
#my_sidebar_widget #archives-2 li {
  border-top: 3px solid #adadad;
  padding: 10px 0;
}
#pgc-618-1-1 ul,
#my_sidebar_widget #archives-2 ul {
  padding-left: 0;
  list-style: none;
}

.site-featured-image {
  display: none;
}

/* お問合せ */
.contact-container {
  width: 70%;
  margin: 0 auto 5em;
}
.contact-tel-banner a img {
  width: 80%;
  margin: 0 auto;
}
#wpcf7-f615-p121-o1 {
  width: 75%;
  margin: 0 auto;
}
#wpcf7-f615-p121-o1 p {
  margin: 1em 0;
}
#wpcf7-f615-p121-o1 label,
span.wpcf7-not-valid-tip {
  font-size: 20px;
}
#wpcf7-f615-p121-o1 .wpcf7-list-item-label {
  font-size: 20px;
}
.sub-contents-title {
  text-align: center;
  font-size: 28px;
}
.wpcf7-acceptance .wpcf7-list-item-label {
  font-size: 16px !important;
}

.sub-privacy-link {
  font-size: 20px;
}
input {
  width: 100%;
  height: 35px;
  border-radius: 5px;
  font-size: 20px;
}
textarea {
  width: 100%;
  border-radius: 5px;
  font-size: 20px;
}
input[type="checkbox"] {
  transform: scale(1.5);
  width: initial;
  height: initial;
}
#wpcf7-f615-p121-o1 input[type="submit"] {
  width: 40%;
  height: 100px;
  background-color: #008acc;
  color: #fff;
}
.contact-after-text {
  font-size: 18px;
}

/* 採用エントリー */
.entry-container {
  width: 70%;
  margin: 0 auto 5em;
}
#wpcf7-f649-p151-o1 {
  width: 75%;
  margin: 0 auto;
}
#wpcf7-f649-p151-o1 p {
  margin: 1em 0;
}
#wpcf7-f649-p151-o1 label,
span.wpcf7-not-valid-tip {
  font-size: 20px;
}
#wpcf7-f649-p151-o1 .wpcf7-list-item-label {
  font-size: 20px;
}
#wpcf7-f649-p151-o1 input[type="submit"] {
  width: 40%;
  height: 100px;
  background-color: #d11619;
  color: #fff;
}
input[type="radio"] {
  transform: scale(1.5);
  width: initial;
  height: initial;
}
#wpcf7-f649-p151-o1 select {
  width: 100px;
  height: 35px;
  border-radius: 5px;
  font-size: 18px;
}

/* 個人情報保護方針 */
.main-contents {
  width: 70%;
  margin: 6em auto 5em;
}
.subpage-mainSection-title {
  text-align: center;
  font-size: 32px;
  color: #00a0e8;
}
.company-info {
  margin-top: 2em;
}

/* サイトマップ */
#post-125 {
  margin-top: 8em;
}
#post-125 .entry-header {
  display: block;
}
#post-125 .entry-title {
  font-size: 28px;
  color: #00a0e8;
}
#post-125 .entry-content {
  margin-bottom: 3em;
}
.wsp-container {
  padding: 0 10%;
}
#post-125 .wsp-pages-list .page-item-115 br {
  display: none;
}

/* エラーページ */
.error404 #content {
  margin-top: 8em;
}
.error404 #primary {
  margin-bottom: 3em;
}
.error404 .page-content {
  display: none;
}

/** タブレット端末  **/

@media screen and (max-width: 1024px) {
  /* BUTTON 1 */
  .btn-1 {
    margin: 2em 0;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 1 */
  .btn-1-2 {
    margin: 2em 0;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 2 */
  .btn-2 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }

  .btn-2-2 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }
  .btn-2-3 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 3 */
  .btn-3 {
    margin: 0 auto;
    padding: 2em 1em;
    width: 90%;
  }

  .contents-02 .contents-02-1 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .contents-02 .contents-02-1 .delighter.started .box {
    opacity: 1;
  }
  .contents-02 .contents-02-1 .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .contents-02 .contents-02-1 .delighter .box:nth-child(2) {
    transform: translate(0, -80px);
  }

  .contents-02 .contents-02-2 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .contents-02 .contents-02-2 .delighter.started .box {
    opacity: 1;
  }
/*  .contents-02 .contents-02-2 .delighter .box:nth-child(1) {
    transform: translate(0, 240px);
  }
  .contents-02 .contents-02-2 .delighter .box:nth-child(2) {
    transform: translate(0, -145%);
  }*/

  .contents-02 section {
    height: 100%;
  }

  .contents-02 img {
    width: 100%;
    max-height: 270px;
    object-fit: cover;
  }
}

/************************/
/******** モバイル ********/
/************************/

@media screen and (max-width: 768px) {
  body {
    overflow-x: hidden;
    box-sizing: border-box;
    margin: 0;
    right: 0;
    position: absolute;
  }

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

  .home #content {
    margin-top: -12.5em;
  }
  .home header .entry-title {
    display: none;
  }
  .site-title {
    margin-top: 0;
    position: relative;
    top: 10px;
  }
  .home .catch-title-text {
    padding-top: 18%;
  }
  .catch-title-logo {
    position: absolute;
    top: 25vh;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    width: 100%;
    z-index: 100;
  }
  .catch-title-logo img {
    width: 66.6%;
  }
  header.site-header {
    z-index: 200;
    position: relative;
    width: 95%;
    background-color: rgba(255, 255, 255, 0.8);
    margin-top: -1em;
    padding: 1em 2.5% 3.8em;
  }
  .home header.site-header {
    animation: menu 3s ease 0s 1 normal;
    -webkit-animation: menu 3s ease 0s 1 normal;
  }

  button {
    background: none;
    display: block;
    font-size: 15px;
    font-weight: normal;
    position: relative;
    text-transform: uppercase;
  }

  /* BUTTON 1 */
  .btn-1 {
    margin: 2em 0;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 1 */
  .btn-1-2 {
    margin: 2em 0;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 2 */
  .btn-2 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }

  .btn-2-2 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }
  .btn-2-3 {
    margin: 2em auto;
    padding: 2em 2em;
    width: 90%;
  }

  /* BUTTON 3 */
  .btn-3 {
    margin: 0 auto;
    padding: 2em 1em;
    width: 90%;
  }

  @keyframes colorchange {
    0% {
      background-color: #000033;
    }
    50% {
      background-color: #000033;
    }
    100% {
      background-color: #fff;
    }
  }
  @-webkit-keyframes colorchange {
    0% {
      background-color: #000033;
    }
    50% {
      background-color: #000033;
    }
    100% {
      background-color: #fff;
    }
  }
  .home .main-contents-container {
    animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
  }

  /* モバイル版メニュー */

  header .menu:nth-child(2) {
    display: none;
  }
  .menu li:nth-child(1),
  .menu li:nth-child(10),
  .menu li:nth-child(11),
  .menu li:nth-child(12),
  .menu li:nth-child(13),
  .menu li:nth-child(14) {
    display: block;
  }
  .menu ul {
    list-style: none;
    display: block;
    margin-top: 1em;
    margin-bottom: 0;
    position: absolute;
    justify-content: space-between;
    transition: 0.2s;
    padding-left: 0;
  }
  .menu li {
    width: 100%;
    font-size: 16px;
    padding: 5px 5px 5px 15px;
    text-align: left;
  }
  .menu li {
    border-right: none !important;
    border-bottom: 1px solid #999;
  }
  .menu li a {
    text-decoration: none;
    line-height: 2em;
    color: #000;
    display: inline-block;
    vertical-align: middle;
  }
  .menu li br {
    display: none;
  }

  #nav-drawer {
    position: relative;
  }

  /*チェックボックス等は非表示に*/
  .nav-unshown {
    display: none;
  }

  /*アイコンのスペース*/
  #nav-open {
    display: inline-block;
    width: 30px;
    height: 22px;
    vertical-align: middle;
    position: absolute;
    top: 1.5em;
    left: 0.65em;
  }
  #nav-open.fixed {
    top: 1em;
    position: fixed;
    background-color: #009fe6;
    padding: 10px 5px 8px 10px;
    border-radius: 5px;
    border: 1px solid #fff;
  }

  /*ハンバーガーアイコンをCSSだけで表現*/
  #nav-open span,
  #nav-open span:before,
  #nav-open span:after {
    position: absolute;
    height: 3px; /*線の太さ*/
    width: 25px; /*長さ*/
    border-radius: 3px;
    background: #555;
    display: block;
    content: "";
    cursor: pointer;
  }
  #nav-open.fixed span,
  #nav-open.fixed span:before,
  #nav-open.fixed span:after {
    background: #fff;
  }
  #nav-open span:before {
    bottom: -8px;
  }
  #nav-open span:after {
    bottom: -16px;
  }

  /*閉じる用の薄黒カバー*/
  #nav-close {
    display: none; /*はじめは隠しておく*/
    position: fixed;
    z-index: 99;
    top: 0; /*全体に広がるように*/
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: 0.3s ease-in-out;
  }

  /*中身*/
  #nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999; /*最前面に*/
    width: 80%; /*右側に隙間を作る（閉じるカバーを表示）*/
    max-width: 330px; /*最大幅（調整してください）*/
    height: 100%;
    background: #fff; /*背景色*/
    transition: 0.3s ease-in-out; /*滑らかに表示*/
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%); /*左に隠しておく*/
  }

  /*チェックが入ったらもろもろ表示*/
  #nav-input:checked ~ #nav-close {
    display: block; /*カバーを表示*/
    opacity: 0.5;
  }

  #nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%); /*中身を表示（右へスライド）*/
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  }

  header img {
    width: 100%;
  }

  .header-contact {
    display: inline-block;
    float: right;
    width: 100%;
    margin-top: 0;
  }
  .header-tel {
    display: inline-block;
    font-size: 26px;
    color: #000;
  }
  .header-mail {
    font-size: 14px;
    margin-left: 10px;
    float: right;
    padding: 10px 15px;
  }
  .header-mail i {
    margin-right: 7px;
  }
  .header-entry {
    font-size: 14px;
    margin-left: 10px;
    float: right;
  }

  .header-background-image img {
    width: 100%;
    position: relative;
    margin-top: 4em;
  }

  /* ヘッダーのキャッチコピー */
  .catch-title-text {
    position: absolute;
    top: 25vh;
    width: 100%;
    height: 100%;
    text-align: center;
  }
  .catch-title-text h1 {
    font-size: 20px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
    color: #fff;
    -moz-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.74);
    -webkit-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.74);
    -ms-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.74);
    text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.74);
  }
  #post-115 .catch-title-text h1 {
    -moz-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.35);
    -webkit-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.35);
    -ms-text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.35);
    text-shadow: 0px 0px 25px rgba(0, 0, 0, 0.35);
  }

  /* ヘッダーのガット船シルエット */
  .header-gatt-image {
    position: absolute;
    bottom: 220px;
    right: 0;
  }
  .header-gatt-image img {
    position: relative;
    width: 75vw;
    opacity: 0.8;
    right: 20px;
  }
  .header-gatt-image img {
    animation: anime_header_gatt 3s ease-in-out 1s 1 normal; /* アニメーション指定 */
    -webkit-animation: anime_header_gatt 3s ease-in-out 1s 1 normal;
  }

  @keyframes anime_header_gatt {
    0% {
      right: 0;
      opacity: 0;
    }
    100% {
      right: 20px;
      opacity: 0.8;
    }
  }
  @-webkit-keyframes anime_header_gatt {
    0% {
      right: 0;
      opacity: 0;
    }
    100% {
      right: 20px;
      opacity: 0.8;
    }
  }

  .home .main-contents-container {
    margin-top: -7em !important;
    margin-bottom: 0 !important;
  }

  /* コンテンツ1 */
  .contents-01 {
    padding: 2em 5px 0;
    display: block;
  }
  .delighter .contents-01 {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .contents-01 {
    opacity: 1;
    transform: none;
  }

  .contents-01 img {
    width: 100%;
    height: 100%;
  }
  .contents-01 .contents-text {
    width: 98%;
    padding: 0 5px;
    margin-left: 0;
  }

  .contents-01 h2 {
    font-size: 32px;
    color: #008acc;
  }
  .contents-01 h2::after {
    content: "　SANKYU GROUP";
    font-size: 16px;
  }

  .contents-01 h3 {
    font-size: 20px;
    color: #008acc;
  }
  .contents-01 .box {
    height: 100%;
  }
  .contents-01 p {
    font-size: 16px;
    line-height: 2em;
  }

  /* スクロールして特定箇所で枠や文字が表示される */

  .contents-01 .box {
    position: relative;
    font-size: 0.8em;
    padding: 10px;
  }

  /* コンテンツ2 */
  .contents-02 {
    /*  background-image: url(https://sankyu.trial.jp/wp-content/uploads/sankyu-background-01.jpg);
	  background-size: cover;
	  background-repeat: no-repeat; */
    background-color: #009fe6;
    text-align: center;
  }
  .contents-02 section {
    height: 100%;
  }

  .contents-02 img {
    width: 100%;
    max-height: 270px;
    object-fit: cover;
  }

  .contents-02 h2 {
    font-size: 26px;
    color: #fff;
    padding-top: 1em;
  }
  .contents-02 h2::after {
    content: "SERVICE";
    font-size: 14px;
    display: block;
  }

  .contents-border {
    background-color: #fff;
    text-align: left;
    width: 90%;
    height: 100%;
    padding: 10px;
  }
  .contents-border h2 {
    color: #fff;
    padding-top: 0;
    font-size: 24px;
  }

  .contents-border h4 {
    font-size: 20px;
    margin-right: 0;
    padding: 0 20px 10px;
  }
  .contents-border h4 br,
  .contents-border p br {
    display: none;
  }
  .contents-border p {
    font-size: 16px;
    margin-right: 15px;
  }
  .contents-border a {
    width: 75%;
    font-size: 16px;
    text-align: center;
    padding: 2em;
    border: 1px solid #008acc;
    text-decoration: none;
    margin: 2em 0;
    display: inline-block;
  }
  .contents-border a::after {
    content: "　>";
  }
  .contents-02-1 {
    width: 45%;
  }
  .contents-02-1 .contents-outer {
    background-color: #e8f0ea;
    width: 100%;
    margin-left: 0;
  }
  .contents-02-1 .contents-border {
    background-color: #fff;
    text-align: left;
    width: 100%;
    height: 100%;
    filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
  }
  .contents-02-1 .contents-border {
    padding: 0;
  }
  .contents-02-2 {
    width: 45%;
  }
  .contents-02-2 .contents-outer {
    background-color: #e8f0ea;
    width: 100%;
  }
  .contents-02-2 .contents-border {
    background-color: #fff;
    text-align: left;
    width: 100%;
    height: 100%;
    filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
  }
  .contents-02-2 .contents-border {
    padding: 0;
  }
  .contents-02-2 .contents-border h2 {
    line-height: 1em;
  }

  /* スクロールして特定箇所で枠や文字が表示される */
  .contents-02-2 .box:first-child {
    z-index: 100;
  }

  .contents-02 .box {
    position: relative;
    font-size: 0.8em;
    padding: 0;
  }

  .contents-02 .contents-02-1 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .contents-02 .contents-02-1 .delighter.started .box {
    opacity: 1;
  }
  .contents-02 .contents-02-1 .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .contents-02 .contents-02-1 .delighter .box:nth-child(2) {
    transform: translate(0, -80px);
  }

  .contents-02 .contents-02-2 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .contents-02 .contents-02-2 .delighter.started .box {
    opacity: 1;
  }
/*  .contents-02 .contents-02-2 .delighter .box:nth-child(1) {
    transform: translate(0, 240px);
  }
  .contents-02 .contents-02-2 .delighter .box:nth-child(2) {
    transform: translate(0, -145%);
  }*/

  /* コンテンツ3 */
  .contents-03 {
    padding: 2em 1em;
    display: block;
  }
  .delighter .contents-03 {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .contents-03 {
    opacity: 1;
    transform: none;
  }

  .contents-03 .contents-service {
    width: 99%;
    margin: 0 0 1em;
    border: 1px solid #008acc;
  }
  .contents-service img {
    width: 100%;
    object-fit: cover;
    height: 210px;
  }
  .contents-service-text {
    padding: 0 1em;
    text-align: center;
  }
  .contents-03 h2 {
    font-size: 26px;
    color: #008acc;
    text-align: center;
  }
  .contents-03 .contents-service:nth-child(1) h2::after {
    content: "SILICA SAND";
    font-size: 15px;
    display: block;
  }
  .contents-03 .contents-service:nth-child(2) h2::after {
    content: "INDUSTRIAL WASTE TREATMENT";
    font-size: 15px;
    display: block;
  }

  .contents-03 h3 {
    font-size: 30px;
    color: #008acc;
  }
  .contents-03 .box {
    height: 100%;
  }
  .contents-03 p {
    font-size: 15px;
    line-height: 1.5em;
  }

  /* コンテンツ4 */
  .contents-04 {
    padding: 2em 0;
    text-align: center;
    background-image: url(/wp-content/uploads/sankyu-adopt-background.png);
    background-size: cover;
    background-repeat: no-repeat;
    color: #fff;
  }
  .delighter .contents-04 {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .contents-04 {
    opacity: 1;
    transform: none;
  }
  .contents-04 h2 {
    font-size: 40px;
    margin: 0;
  }
  .contents-04 h2::after {
    content: "RECRUIT";
    font-size: 20px;
    display: block;
  }
  .contents-04 img {
    width: 100px;
  }
  .contents-04 h1 {
    font-size: 28px;
    margin: 0;
  }
  .contents-04 h1::after {
    content: "LET'S CREATE AN IDEAL COMPANY TOGETHER";
    font-size: 18px;
    display: block;
  }

  .sub-adopt-banner {
    background-color: #006fb0;
    display: block;
    padding: 2em 5% 2em;
  }

  /* お知らせ */
  .contents-05 {
    background-color: #f5f5f5;
    padding-bottom: 1em;
  }
  .delighter .contents-05 {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .contents-05 {
    opacity: 1;
    transform: none;
  }

  div.whatsnew {
    width: 100%;
    text-align: center;
    margin: 0 auto;
  }
  div.whatsnew h1 {
    color: #008acc;
  }
  div.whatsnew h1::before {
    content: "NEWS";
    font-size: 40px;
    color: #008acc;
    display: block;
  }

  div.whatsnew hr {
    color: #008acc;
  }
  div.whatsnew dl {
    border-left: 1px solid #008acc;
    border-right: 1px solid #008acc;
    background-color: #fff;
  }
  div.whatsnew dt {
    float: none;
  }
  div.whatsnew dd {
    text-align: left;
    padding-left: 5%;
  }
  .contents-05 a.contents-button {
    width: 70%;
    font-size: 18px;
    text-align: center;
    padding: 1.5em;
    border: 1px solid #008acc;
    text-decoration: none;
    margin: 1em auto 3em;
    display: block;
    background-color: #fff;
  }
  .contents-05 a.contents-button::after {
    content: "　>";
  }
  .contents-05 button {
    margin-top: 1em;
    margin-bottom: 3em;
  }

  .ship img {
    left: 5%;
    width: 150px;
    height: 120px;
  }
  .wave {
    background: #009fe6;
    display: inline-block;
    height: 60%;
    width: 15px;
  }
  .ship-and-ocean {
    margin-top: -1px;
  }

  /* お問合せ */
  footer {
    margin-top: -2em;
  }
  .footer-container {
    background-color: #fff;
    text-align: center;
  }
  .site-info {
    display: none;
  }
  .footer-contact {
    padding: 10px 10px 3em;
    color: #fff;
    background-color: #009fe6;
    height: 100%;
    text-align: left;
    margin-top: -26px;
  }
  .footer-contact h1::before {
    content: "CONTACT";
    font-size: 40px;
    color: #fff;
    display: block;
  }
  .footer-contact h1 {
    font-size: 20px;
  }
  .footer-contact p {
    font-size: 16px;
    margin-bottom: 20px;
  }
  .footer-contact a {
    text-decoration: none;
    color: #fff;
  }
  .footer-contact img {
    width: 180px;
    margin-bottom: 2em 0 0;
  }
  .footer-contact img {
    width: 100%;
  }
  .common-contact-ship img {
    width: 160px;
    margin-bottom: 2em;
  }
  .footer-tel {
    width: 100%;
    text-align: center;
    margin-bottom: 1em;
  }
  .footer-tel h3 {
    font-size: 46px;
    margin: 0;
    letter-spacing: 8px;
  }
  .footer-mail {
    width: 93%;
    height: 60px;
    padding: 1em;
    background-color: #eec72c;
    margin-top: 2em;
    border-radius: 1em;
    text-align: center;
  }
  .footer-mail p {
    font-size: 22px;
    margin-top: 12px;
  }

  /* スクロールして特定箇所で枠や文字が表示される */
  .footer-contact .box:first-child {
    z-index: 100;
  }

  .footer-contact .box {
    position: relative;
    font-size: 0.8em;
    padding: 0;
  }

  .footer-contact .delighter .box {
    transition: all 0.3s ease-out;
  }
  .footer-contact .delighter .box:nth-child(1) {
    transform: translate(0, 0);
  }
  .footer-contact .delighter .box:nth-child(2) {
    transform: translate(0, 0);
  }

  /* フッターリンク */

  .footer-links-container {
    display: block;
    text-align: left;
    padding: 0 1em 1em;
    margin-top: -2em;
  }
  .footer-links {
    width: 100% !important;
  }
  .footer-links li {
    line-height: 2em;
  }
  .footer-copyright {
    margin-bottom: 0;
    margin-left: auto;
    margin-right: auto;
    padding: 1em 1em 2em;
  }
  .footer-links p {
    color: #b7c4db;
    padding: 0 0 10px 80px;
  }

  /* サブページ共通 */
  body:not(.home):not(.post-template-default):not(.archive) .entry-header {
    display: none;
  }
  body:not(.home) .catch-title-text {
    top: 15%;
  }
  body:not(.home) .catch-title-text h1 {
    margin-bottom: 0;
    letter-spacing: 0;
  }
  body:not(.home) .catch-title-text h3 {
    color: #fff;
    font-size: 28px;
    margin: 0;
    line-height: 1.2em;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  h2.sub-contents-catch {
    text-align: center;
    font-size: 18px;
    color: #00a0e8;
    margin-left: 5px;
    margin-right: 5px;
  }
  .page-id-96 h2.sub-contents-catch br {
    display: none;
  }

  /* 三久海運株式会社 */

  .sub-contents-explain {
    display: block;
    border-top: 2px solid #00a0e8;
    border-bottom: 2px solid #00a0e8;
    border-left: none;
  }
  .sub-explain-title {
    padding: 0;
  }
  .sub-explain-title h3 {
    transform: rotate(0);
    white-space: nowrap;
    font-weight: normal;
    position: relative;
    padding-left: 1em;
    top: 15px;
    left: 0;
    font-size: 24px;
    color: #00a0e8;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  .sub-explain-text {
    border-top: 5px solid #00a0e8;
    border-left: none;
    padding: 1em;
    font-size: 16px;
    width: 90%;
  }
  .sub-explain-text br {
    display: none;
  }

  .delighter .sub-contents-detail {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .sub-contents-detail {
    opacity: 1;
    transform: none;
  }

  .sub-contents-detail {
    background-color: #f5f5f5;
    display: block;
    padding: 2em 0 4em;
  }
  .sub-sankyu-kaiun-image {
    display: none;
  }
  .sub-sankyu-kaiun-image img {
    width: 88%;
  }

  .sub-info-text {
    position: relative;
  }
  .sub-info-title {
    width: 89%;
    background-color: #00a0e8;
    color: #fff;
    padding: 10px 20px;
    margin: 0;
  }
  .sub-info-text ul:before {
    content: "";
    color: #2b69ba;
    position: absolute;
    top: 0;
    left: -17px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 16px 16px 0;
    border-color: transparent #2b69ba transparent transparent;
  }
  .sub-info-text li {
    font-size: 16px;
  }
  .sub-info-text {
    width: 95%;
    margin: 0 1em;
    border-left: 1px solid #00a0e8;
    border-right: 1px solid #00a0e8;
    border-bottom: 1px solid #00a0e8;
    background-color: #fff;
  }
  .sub-sankyu-kaiunn-info .sub-info-text:nth-child(2) {
    border-bottom: none;
  }
  .sub-info-text ul {
    margin: 0;
    padding: 2em 0 2em 3em;
  }
  img.sub-detail-footer-image {
    width: 100%;
  }

  .sankyu-kaiun-contents-container {
    padding: 2em 1em;
    display: block;
  }
  .delighter .sankyu-kaiun-contents-container {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .sankyu-kaiun-contents-container {
    opacity: 1;
    transform: none;
  }

  .sankyu-kaiun-contents-container .contents-service {
    width: 99%;
    margin: 0 0 1em;
    border: 1px solid #008acc;
  }
  .sankyu-kaiun-contents-container img {
    width: 100%;
  }
  .contents-service-text {
    padding: 0 1em;
  }
  .sankyu-kaiun-contents-container h2 {
    font-size: 30px;
    color: #008acc;
    text-align: center;
  }

  .sankyu-kaiun-contents-container h3 {
    font-size: 30px;
    color: #008acc;
  }
  .sankyu-kaiun-contents-container .box {
    height: 100%;
  }
  .sankyu-kaiun-contents-container p {
    font-size: 16px;
    line-height: 1.5em;
  }
  .sankyu-kaiun-contents-container a {
    width: 67%;
    font-size: 16px;
    text-align: center;
    padding: 2em;
    border: 1px solid #008acc;
    text-decoration: none;
    margin: 2em 1em;
    display: inline-block;
    color: #008acc;
  }
  .sankyu-kaiun-contents-container a::after {
    content: "　>";
  }

  .delighter .sub-about-container {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .sub-about-container {
    opacity: 1;
    transform: none;
  }
  .sub-about-container {
    text-align: center;
    margin-bottom: 3em;
  }
  .sub-about-title {
    font-size: 32px;
    position: relative;
    display: inline-block;
    margin-bottom: 1em;
  }
  .sub-about-title:before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -5px; /*線の上下位置*/
    display: inline-block;
    width: 60px; /*線の長さ*/
    height: 5px; /*線の太さ*/
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); /*位置調整*/
    background-color: #009fe6; /*線の色*/
    border-radius: 2px; /*線の丸み*/
  }
  .sub-about-container table {
    text-align: left;
    padding: 0;
    font-size: 16px;
  }
  .sub-about-container th {
    padding: 1em 1em;
    width: 0em;
    border-top: 2px solid #383838;
    vertical-align: top;
  }
  .sub-about-container td {
    width: 20em;
    padding: 1em;
    border-top: 1px solid #adadad;
  }
  .sub-about-container iframe {
    margin-top: 1em;
  }

  /* 珪砂 */
  .keisya-contents-container {
    display: block;
    padding: 2em 0;
    flex-wrap: nowrap;
  }
  .keisya-box {
    margin: 0.5em;
    width: 95%;
  }

  .keisya-header {
    display: block;
  }
  .keisya-image img {
    width: 220px;
  }
  .keisya-info {
    margin-left: 0;
  }
  .keisya-info h2 {
    margin: 0;
    background-color: #00a0e8;
    color: #fff;
    padding: 0 1em;
    width: 88%;
    font-size: 21px;
  }
  .keisya-info p {
    padding: 1em;
    font-size: 16px;
  }
  .keisya-button {
    position: relative;
    display: block;
    margin-top: 0;
  }

  .keisya-footer {
    margin-top: 0;
    margin-bottom: 1em;
  }
  .keisya-detail {
    width: 100%;
  }
  .keisya-detail th {
    width: 5em;
    padding: 1em;
  }
  .keisya-detail td {
    padding: 0.3em;
    border: 1px solid #00a0e8;
  }

  .hidden_box {
    position: relative;
  }

  /*ボタン装飾*/
  .hidden_box label {
    cursor: pointer;
    background-color: #fff;
    transition: 0.2s;
  }

  /*ボタンホバー時*/
  .hidden_box label:hover {
    background: #00a0e8;
  }

  /*チェックは見えなくする*/
  .hidden_box input {
    display: none;
  }

  /*中身を非表示にしておく*/
  .hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
  }

  /*クリックで中身表示*/
  .hidden_box input:checked ~ .hidden_show {
    height: auto;
    opacity: 1;
  }

  .keisya-contents-after {
    text-align: center;
    width: 95%;
    font-size: 16px;
  }

  /* 工場・ヤード */
  .yard-contents-container {
    padding: 1em 2%;
  }
  .yard-image-box {
    width: 49%;
    margin-right: 2%;
  }
  .yard-image-container .yard-image-box:nth-child(3) {
    margin-right: 2%;
  }
  .yard-image-container .yard-image-box:nth-child(2),
  .yard-image-container .yard-image-box:nth-child(4),
  .yard-image-container .yard-image-box:nth-child(6) {
    margin-right: 0;
  }
  .yard-name {
    margin-bottom: 1em;
    vertical-align: middle;
    font-size: 16px;
    font-weight: bold;
    position: relative;
  }
  .yard-name img {
    display: none;
  }
  .yard-name span {
    padding-left: 0;
  }
  .yard-info-text {
    margin-left: 1em;
    padding: 1em;
    font-size: 14px;
    background-color: #fff;
    position: relative;
  }

  /* サンキュウ・リマテック株式会社 */
  h2.sub-contents-catch.rematech {
    font-size: 18px;
  }
  .sub-contents-explain.rematech {
    display: block;
    border-left: none;
  }

  .sub-explain-title.rematech h3 {
    transform: rotate(0);
    white-space: normal;
    font-weight: normal;
    position: relative;
    padding-left: 1em;
    width: 100px;
    bottom: 25px;
    top: 15px;
    left: 0;
    font-size: 26px;
    color: #82ba85;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  .sub-explain-text.rematech {
    border-top: 5px solid #82ba85;
    border-left: none;
    padding: 1em;
    font-size: 16px;
  }
  .sub-explain-text.rematech br {
    display: none;
  }

  .rematech-contents-container {
    padding: 2em 1em;
    display: block;
  }
  .delighter .rematech-contents-container {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .rematech-contents-container {
    opacity: 1;
    transform: none;
  }

  .rematech-contents-container .contents-service {
    width: 99%;
    margin: 0 0 1em;
  }
  .rematech-contents-container img {
    width: 100%;
  }

  .rematech-contents-container h2 {
    font-size: 26px;
    height: 100%;
  }

  .rematech-contents-container h3 {
    font-size: 30px;
  }
  .rematech-contents-container .box {
    height: 100%;
  }
  .rematech-contents-container p {
    font-size: 16px;
    line-height: 1.5em;
  }
  .rematech-contents-container a {
    width: 67%;
    font-size: 16px;
    text-align: center;
    padding: 2em;
    border: 1px solid #82ba85;
    text-decoration: none;
    margin: 2em 1em;
    display: inline-block;
    color: #82ba85;
  }
  .rematech-contents-container a::after {
    content: "　>";
  }

  .delighter .rematech-about-detail {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .rematech-about-detail {
    opacity: 1;
    transform: none;
  }

  .rematech-about-detail {
    margin-top: -5px;
  }
  .rematech-about-title {
    margin: 0;
    background-color: #82ba85;
    color: #fff;
    padding: 0.5em 15%;
    font-size: 28px;
  }
  .rematech-about-container {
    margin: 0 2% 2em;
    border-left: 1px solid #82ba85;
    padding-bottom: 1em;
  }
  .rematech-about-container h3 {
    padding: 2%;
    font-size: 22px;
    color: #82ba85;
    margin: 0;
  }
  .rematech-about-container p {
    padding-left: 2%;
    font-size: 16px;
    width: 96%;
  }
  .rematech-middle-image {
    padding-top: 2em;
  }

  .rematech-trans-box {
    margin-top: 2em;
  }

  /*ボタン装飾*/
  .rematech-about-container .hidden_box label {
    cursor: pointer;
    background-color: #fff;
    transition: 0.2s;
    padding: 0 2%;
    font-size: 26px;
    color: #82ba85;
    margin: 0;
    font-weight: bold;
  }
  .rematech-detail table {
    font-size: 16px;
  }
  .rematech-detail th {
    padding: 5px 15px;
    background-color: #82ba85;
    color: #fff;
  }
  .rematech-detail td {
    border: 1px solid #c42619;
    padding: 0.5em 1em;
  }
  .border-space th {
    background-color: #fff;
  }
  .border-space td {
    border: none;
  }
  .special-permission th {
    font-size: 18px;
  }
  .special-permission td {
    padding: 0.5em 1em;
  }
  .rematech-trans-box a.contents-button {
    width: 45%;
    font-size: 18px;
    text-align: center;
    padding: 1.5em;
    border: 1px solid #82ba85;
    color: #82ba85;
    text-decoration: none;
    margin: 2em auto 3em;
    display: block;
    background-color: #fff;
  }
  .rematech-trans-box a.contents-button::after {
    content: "　>";
  }

  .rematech-banner {
    margin: 1em 5% 3em;
    font-size: 18px;
    text-align: center;
    border: 2px solid #7d6114;
    border-left: 50px solid #7d6114;
    border-right: 50px solid #7d6114;
    padding: 1em;
    position: relative;
  }
  .rematech-banner a {
    color: #7d6114;
    text-decoration: none;
  }
  .rematech-banner:after {
    content: ">";
    position: absolute;
    top: 3.5em;
    right: -1.5em;
    color: #fff;
  }

  /* 産業廃棄物リサイクル */
  .recycle-01 .recycle-title {
    background-image: url(/wp-content/uploads/recycle-title-background-01.png);
    background-repeat: repeat-x;
    background-size: cover;
    margin: 0;
    color: #fff;
    text-align: center;
    font-size: 20px;
    padding: 2em;
  }
  .recycle-01 .recycle-title-under {
    background-color: #c4e6d1;
  }
  .recycle-explain {
    font-size: 17px;
    font-weight: bold;
    padding: 1em 5%;
  }
  img.recycle-zero-emission {
    margin-bottom: 1em;
    padding: 10px;
    width: 75%;
    background-color: #5fba83;
  }
  .recycle-flow-01 {
    padding: 1em 0;
    text-align: center;
  }
  .recycle-flow-01 img:nth-child(1) {
    width: 200px;
  }
  .recycle-flow-01 img:nth-child(2) {
    display: none;
  }
  .recycle-flow-01 img:nth-child(3) {
    display: initial;
    width: 200px;
    padding: 0;
  }
  .recycle-flow-01 img:nth-child(4) {
    width: 200px;
    padding: 0;
  }

  .recycle-flow-02 img {
    width: 100%;
    border-top: 1em solid #c4e6d1;
    border-bottom: 1em solid #c4e6d1;
  }
  .recycle-ship-box.mt {
    margin-top: 0;
  }
  .recycle-02 .recycle-title {
    background-image: url(/wp-content/uploads/recycle-title-background-02.png);
    background-repeat: repeat-x;
    background-size: cover;
    margin: 1em 0 0;
    color: #fff;
    text-align: center;
    font-size: 20px;
    padding: 2em;
  }
  .recycle-02 .recycle-title-under {
    background-color: #e7e6d1;
  }

  .recycle-owned-box-01 {
    padding: 1em 5%;
    font-size: 16px;
  }
  .recycle-owned-box-01 td {
    display: block;
    width: 100%;
  }
  .recycle-owned-text {
    padding: 0;
  }
  .font-huge {
    font-size: 40px;
    font-weight: bold;
    margin-right: 5px;
    color: #eeba00;
    display: block;
  }
  .recycle-owned-box-02 {
    display: block;
    justify-content: flex-end;
    padding: 0 5%;
    position: relative;
  }
  .recycle-owned-box-02 img {
    display: none;
  }
  .owned-text {
    font-size: 20px;
    font-weight: bold;
    color: #eeba00;
    padding: 0 1%;
    position: relative;
    bottom: 0;
    right: 0;
  }
  .owned-text br {
    display: none;
  }
  .recycle-truck-image {
    padding: 1em 5%;
    display: flex;
    flex-wrap: wrap;
  }
  .recycle-truck-image img {
    width: 32%;
    height: 100%;
    border: 1px solid #eeba00;
  }
  .recycle-ship-image {
    padding: 1em 10% 3em;
    display: block;
  }
  .recycle-ship-box {
    width: 95%;
    margin-bottom: 1em;
  }
  .recycle-ship-box img {
    width: 100%;
    height: 100%;
    border: 5px solid #eeba00;
  }
  .recycle-ship-box:first-child img {
    border-right: 5px solid #eeba00;
  }
  .recycle-ship-name {
    border-left: 5px solid #eeba00;
    padding: 0.2em 1em;
  }

  /* 環境方針 */
  .contents-env {
    text-align: center;
    background-color: #009fe6;
  }
  .contents-env section {
    height: 100%;
  }
  .contents-env img {
    width: 50%;
  }
  .contents-env h2 {
    font-size: 28px;
  }
  .contents-env-2 section {
    margin-top: 4em;
  }
  .contents-env-1 .contents-border {
    background-color: #fff;
    text-align: left;
    width: 90%;
    height: 100%;
    filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
    padding: 10px;
  }
  .contents-env-2 .contents-border {
    background-color: #fff;
    text-align: left;
    width: 90%;
    height: 100%;
    filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
    padding: 10px;
  }

  .contents-border p {
    font-size: 15px;
  }
  .contents-env-1 .contents-border li {
    font-size: 16px;
    list-style: decimal;
  }
  .contents-env-2 .contents-border li {
    font-size: 16px;
    list-style: circle;
  }

  .contents-env .contents-env-1 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }
  .contents-env .contents-env-1 .delighter.started .box {
    opacity: 1;
  }

  .contents-env .contents-env-2 .delighter .box {
    opacity: 0;
    transition: all 0.3s ease-out;
  }

  .contents-env .contents-env-2 .delighter.started .box {
    opacity: 1;
  }

  .iso-box {
    padding: 0.5em;
    display: block;
    border: 2px solid #009fe6;
    margin: 2em 0;
  }
  .iso-box img {
    width: 150px;
  }
  .iso-detail {
    margin-left: 0;
    width: 100%;
  }
  .iso-detail h3 {
    padding: 0.5em 1em;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    font-size: 20px;
  }
  .iso-detail table {
    text-align: left;
    width: 100%;
  }
  .iso-detail th {
    padding: 0.5em 1em;
    background-color: #f5f5f5;
    border: 1px solid #ccc;
    font-size: 16px;
    width: 20px;
  }
  .iso-detail td {
    padding: 0.5em;
    border: 1px solid #ccc;
    font-size: 16px;
  }
  .iso-footer {
    display: block;
    width: 95%;
    margin: 0 auto 5em;
  }
  .iso-footer-date {
    width: 60%;
  }
  .iso-corp-name {
    width: 70%;
    padding-left: 30%;
  }
  .iso-corp-name p {
    margin-bottom: 1em;
  }

  /* 採用情報 */
  #demand,
  #requirements,
  #career-flow,
  #internship {
    position: relative;
    top: -25px;
  }

  .sub-contents-links {
    display: none;
  }
  .sub-contents-links a span {
    list-style: none;
    margin-top: 0;
    margin-bottom: 0;
    justify-content: space-between;
    transition: 0.2s;
    padding: 0.5em 0;
    border: 1px solid #d11619;
    border-left: 10px solid #d11619;
    width: 95%;
    text-align: center;
    display: inline-block;
  }
  .career-demand-container {
    margin-top: 20px;
  }
  .delighter .career-demand-container {
    opacity: 1;
    transition: none;
  }
  .delighter.started .career-demand-container {
    opacity: 1;
    transform: none;
  }
  .sub-careers-title img {
    width: 160px;
  }
  .sub-career-catch {
    display: flex;
    justify-content: center;
  }
  .sub-career-catch img {
    width: 70px;
    height: 70px;
    padding: 7% 1%;
  }
  .sub-career-catch .sub-contents-catch {
    text-align: left;
    color: #000;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  .sub-contents-explain.career {
    border-top: 2px solid #d11619;
    border-bottom: 2px solid #d11619;
    border-left: 2px solid #d11619;
  }
  .sub-explain-text.career {
    border-left: none;
    border-top: none;
    padding: 1em;
    font-size: 16px;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3",
      "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
  }
  .sub-career-explain-internship {
    display: block;
    background-color: #ebf5eb;
    padding: 2em 0;
  }
  .career-explain-left {
    width: 100%;
  }
  .career-explain-left h2 {
    padding: 5px 0 5px 10px;
    font-size: 23px;
    color: #fff;
    background-color: #4a4a4a;
  }
  .career-explain-left div {
    padding: 10px;
    font-size: 17px;
  }

  .career-explain-right {
    width: 95%;
  }

  .career-explain-right img {
    width: 95%;
    padding: 1em;
  }

  .sub-internship-link {
    padding: 0 0 3em;
    background-color: #ebf5eb;
    justify-content: space-between;
    text-align: center;
    margin-bottom: 3em;
  }
  .sub-internship-link a span {
    list-style: none;
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    transition: 0.2s;
    padding: 0.5em 2em;
    border: 1px solid #d11619;
    border-left: 10px solid #d11619;
    font-size: 18px;
    text-align: center;
    background-color: #fff;
  }
  .sub-internship-link a span::after {
    content: ">";
    margin-left: 10px;
  }
  .sub-internship-link a span {
    color: #000;
    text-decoration: none;
  }

  .sub-requirements-container {
    padding: 2em 5px;
  }
  .sub-requirements-container table {
    table-layout: fixed;
    width: 100%;
  }
  .sub-requirements-container th {
    width: 16%;
    padding: 1em;
    font-size: 18px;
    border-top: 5px solid #d11619;
  }
  .sub-requirements-container table tbody tr:last-child th {
    border-bottom: 5px solid #d11619;
  }
  .sub-requirements-container td {
    width: 84%;
    padding: 1em;
    display: table-cell;
    padding: 0.5em;
    font-size: 16px;
    border-top: 5px solid #adadad;
  }
  .sub-requirements-container table tbody tr:last-child td {
    border-bottom: 5px solid #adadad;
  }
  .paddingleft20px {
    padding-left: 20px;
  }
  .paddingleft40px {
    padding-left: 40px;
  }

  .sub-contact-link {
    padding: 1em 0 1em;
    justify-content: space-between;
  }
  .sub-contact-link a span {
    list-style: none;
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    transition: 0.2s;
    padding: 0.5em 1em;
    border: 1px solid #d11619;
    border-left: 10px solid #d11619;
    font-size: 16px;
    text-align: center;
    background-color: #fff;
  }
  .sub-contact-link a span::after {
    content: ">";
    margin-left: 10px;
  }
  .sub-contact-link a span {
    color: #000;
    text-decoration: none;
  }
  .career-flow-message {
    width: 90%;
    margin: 2em auto;
    font-size: 20px;
    font-weight: bold;
  }
  .sub-career-flow-background {
    padding: 3em 0;
    background-color: #ebf5eb;
  }
  .career-flow-image {
    width: 100%;
    margin: 2em auto;
    display: block;
  }
  .career-flow-remarks {
    width: 85%;
    margin: 2em auto;
    font-size: 15px;
    text-indent: -1.3em;
    padding-left: 1em;
  }
  .career-flow-box {
    display: block;
    width: 100%;
    margin: 0 auto 2em;
  }
  .career-flow-step img {
    width: 85px;
    padding-left: 10px;
  }
  .career-flow-text {
    margin: 10px;
  }
  .career-flow-text h3 {
    font-size: 28px;
    margin: 0;
    color: #d11619;
    font-weight: bold;
  }
  .career-flow-text p {
    font-size: 16px;
  }
  .career-middle-image {
    margin-bottom: 3em;
  }
  .career-internship-image {
    width: 95%;
    margin: 3em auto;
  }
  .career-internship-image img {
    width: 100%;
  }

  h2.career-internship-example {
    width: 90%;
    margin: 1em auto;
    text-align: center;
    padding: 7px;
    font-size: 24px;
    color: #fff;
    background-color: #4a4a4a;
  }
  .sub-internship-container {
    padding-bottom: 1em;
  }
  .sub-internship-container table {
    table-layout: fixed;
    width: 95%;
    margin: 0 auto;
  }
  .sub-internship-container th {
    width: 30%;
    background-color: #ebf5eb;
    font-size: 18px;
    padding: 10px;
    text-align: center;
    border-bottom: 1px solid #000;
  }
  .sub-internship-container td {
    width: 70%;
    font-size: 17px;
    padding: 1em;
    border-bottom: 1px solid #000;
    text-align: center;
  }
  .internship-kaiun {
    background-color: #009fe6;
    color: #fff;
    padding: 3px;
    border-radius: 0.5em;
    width: 100%;
    font-size: 13px;
    text-align: center;
    margin-left: 0;
  }
  .internship-rematech {
    background-color: #82ba85;
    color: #fff;
    padding: 3px;
    border-radius: 0.5em;
    width: 100%;
    font-size: 13px;
    text-align: center;
    margin-left: 0;
  }
  .sub-internship-container tr:last-child th,
  .sub-internship-container tr:last-child td {
    border-bottom: none;
  }

  .career-internship-remarks {
    margin: 2em auto;
    width: 90%;
    font-size: 18px;
    font-weight: bold;
  }
  .internship-entry {
    background-color: #d11619;
    text-align: center;
    padding: 2em 3em 3em;
  }
  .internship-entry a {
    background-color: #fff;
    border-radius: 1em;
    padding: 1em 2em;
    font-size: 24px;
    font-weight: bold;
    text-decoration: none;
    color: #d11619;
  }

  .delighter .yard-contents-container {
    opacity: 0;
    transition: all 0.7s ease-out;
  }
  .delighter.started .yard-contents-container {
    opacity: 1;
    transform: none;
  }

  /* お問合せ */
  .contact-container {
    width: 95%;
    margin: 0 auto 5em;
  }
  #wpcf7-f615-p121-o1 {
    width: 100%;
    margin: 0 auto;
  }
  #wpcf7-f615-p121-o1 label,
  span.wpcf7-not-valid-tip {
    font-size: 18px;
  }
  #wpcf7-f615-p121-o1 .wpcf7-list-item-label {
    font-size: 18px;
  }
  .sub-contents-title {
    text-align: center;
    font-size: 24px;
  }

  .sub-privacy-link {
    font-size: 18px;
  }
  input {
    width: 94%;
    height: 35px;
    border-radius: 5px;
    font-size: 20px;
  }
  textarea {
    width: 100%;
    border-radius: 5px;
    font-size: 20px;
  }
  input[type="checkbox"] {
    transform: scale(1.5);
    width: initial;
    height: initial;
    margin-bottom: 15px;
  }
  #wpcf7-f615-p121-o1 input[type="submit"] {
    width: 90%;
    height: 100px;
    background-color: #008acc;
    color: #fff;
  }
  .contact-after-text {
    font-size: 16px;
  }

  /* 採用エントリー */
  .entry-container {
    width: 100%;
    margin: 0 auto 5em;
  }
  #wpcf7-f649-p151-o1 {
    width: 95%;
    margin: 0 auto;
  }
  #wpcf7-f649-p151-o1 p {
    margin: 1em 0;
  }
  #wpcf7-f649-p151-o1 label,
  span.wpcf7-not-valid-tip {
    font-size: 18px;
  }
  #wpcf7-f649-p151-o1 .wpcf7-list-item-label {
    font-size: 18px;
  }
  #wpcf7-f649-p151-o1 input[type="submit"] {
    width: 90%;
    height: 100px;
    background-color: #d11619;
    color: #fff;
  }
  input[type="radio"] {
    transform: scale(1.5);
    width: initial;
    height: initial;
    margin-bottom: 15px;
  }
  #wpcf7-f649-p151-o1 select {
    width: 150px;
    height: 35px;
    border-radius: 5px;
    font-size: 18px;
    margin-bottom: 20px;
  }

  /* お知らせ一覧 */
  .byline,
  time.updated,
  .cat-links,
  .comments-link,
  .entry-meta,
  .post-navigation,
  .comments-area {
    display: none;
  }
  .archive footer,
  .post-template-default footer {
    margin-top: 0;
  }
  .posted-on svg {
    display: none;
  }

  .archive .site-content,
  .post-template-default .site-content {
    display: block;
  }
  .archive .content-area,
  .post-template-default .content-area {
    width: 100%;
    margin-right: 3%;
  }
  .archive #sidebar-aside,
  .post-template-default #sidebar-aside {
    width: 100%;
  }
  #npcatch li,
  .widget_archives li,
  .sidebar li {
    list-style: none;
  }

  /* お知らせ */
  #pg-618-1,
  .post-template-default .site-content,
  .archive .site-content {
    width: 95%;
    margin: 0 auto 5em;
  }
  #pg-618-1 a,
  .post-template-default .site-content a,
  .archive .site-content a {
    text-decoration: none;
    color: #000;
  }
  .post-template-default .site-content h1.entry-title {
    font-size: 28px;
    color: #009fe6;
    text-align: left;
  }

  .post-template-default .site-content .entry-content {
    padding: 1em;
    border: 2px solid #009fe6;
  }
  .entry-date {
    padding: 10px;
    color: #d11619;
    position: relative;
    top: 5px;
  }

  #panel-618-1-0-0 {
    margin-bottom: 3em;
  }
  #npcatch,
  #my_sidebar_widget {
    padding-left: 0;
    list-style: none;
  }
  #panel-618-1-0-0 .widget-title {
    display: none;
  }
  #npcatch li,
  #my_sidebar_widget li {
    clear: both;
  }
  #panel-618-1-0-0 #npcatch li,
  .archive #primary #npcatch li {
    margin-bottom: 2em;
  }
  #npcatch li a {
    padding: 0;
  }
  #npcatch li img,
  #my_sidebar_widget li img {
    float: left;
    margin-bottom: 1em;
    margin-right: 0;
  }
  #panel-618-1-0-0 #npcatch li,
  .archive #primary #npcatch li {
    height: 150px;
    border: 1px solid #009fe6;
  }
  #panel-618-1-0-0 #npcatch li .postdate,
  .archive #primary #npcatch li .postdate {
    padding-top: 5px;
  }
  #panel-618-1-0-0 #npcatch li .title,
  .archive #primary #npcatch li .title {
    font-size: 18px;
    margin-top: 5px;
    text-align: left;
  }
  .archive #npcatch li .title {
    margin-bottom: 0;
  }
  .archive .content-area img {
    width: 150px;
    height: 150px;
    object-fit: cover;
  }
  .archive .site-content .entry-content {
    display: none;
  }
  #pgc-618-1-1 .widget-title,
  #my_sidebar_widget h2 {
    text-align: center;
    color: #adadad;
    font-size: 20px;
  }

  #pgc-618-1-1 ul li,
  #my_sidebar_widget #npcatch li,
  #my_sidebar_widget #archives-2 li {
    border-top: 3px solid #adadad;
    padding: 10px 0;
  }
  #pgc-618-1-1 ul,
  #my_sidebar_widget #archives-2 ul {
    padding-left: 0;
    list-style: none;
  }

  .site-featured-image {
    display: none;
  }

  /* 個人情報保護方針 */
  .main-contents {
    width: 90%;
    margin: 2em auto 5em;
  }

  /* サイトマップ */
  #post-125 {
    margin-top: 2em;
  }
  #post-125 .entry-header {
    display: block;
  }
  #post-125 .entry-content {
    margin-bottom: 3em;
  }
  .wsp-container {
    padding: 0 2%;
  }
}

@media screen and (max-width: 480px) {
  .contents-env img {
    width: 100%;
  }
  .contents-02-1,
  .contents-02-2 {
    width: 100%;
  }
}
