@charset "UTF-8";

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  text-decoration: none;
}

/* HTML5 display-role reset for older browsers */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.8;
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Sans JP", sans-serif;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

main {
  display: block;
}

html {
  font-size: 10px;
  margin-top: 0 !important;
}

@supports (-webkit-touch-callout: none) {
  html {
    height: -webkit-fill-available;
  }
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

/*///////////////////////////////

bace

/////////////////////////////*/

/*///////////////////////////////

variable

/////////////////////////////*/

/*-----------------------------
ブレークポイント
-----------------------------*/

/*-----------------------------
color
-----------------------------*/

/*///////////////////////////////

mixin

/////////////////////////////*/

/*-----------------------------
font
-----------------------------*/

/*-----------------------------
bace
-----------------------------*/

html {
  scroll-behavior: smooth;
}

header,
main,
footer {
  font-weight: 400;
  color: #1e1e1e;
}

main {
  overflow: hidden;
}

p {
  line-height: 1.8;
}

a {
  -webkit-transition: 0.2s;
  transition: 0.2s;
  color: #333;
}

a:hover {
  opacity: 0.7;
}

.header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 1000;
}

.header.change-color{
	background-color: #fff;
    transition: 0.3s;
}

.header-inner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  padding: 0 4rem;
}

.header-logo {
  width: 25rem;
  margin-right: auto;
  margin-left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 2rem 0;
}


.header-logo a {
  display: block;
  position: relative;
  background: none;
}

.header-logo a::before {
  -webkit-transition: opacity 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
  transition: opacity 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background: url(../images/logo.png) no-repeat center center;
  background-size: contain;
  opacity: 0;
}

.header-logo a img {
  -webkit-transition: opacity 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
  transition: opacity 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
}


.header.change-color .header-logo a::before{
	opacity: 1;
}


.header_navList {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-left: 2rem;
}

.header_navitem {
  margin-right: 2rem;
}

.header_navitem a {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: bold;
  text-align: center;
}


.header.change-color .header_navitem a {
	color: #333;
}

.header.change-color .header_navitem.menu_item--contact a{
	color: #fff;
}

.header_navitem a .icon {
  width: 1.8rem;
  margin-right: 0.5rem;
}

.header_navitem.menu_item--contact a {
  border: 1px solid #f59103;
  padding: 1rem 2.8rem;
  border-radius: 5rem;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  opacity: 1;
  background-color: #f59103;
  color: #fff;
}

.header_navitem.menu_item--contact a .icon {
  width: 2.5rem;
  margin-right: 0.8rem;
}

.header_navitem.menu_item--contact:hover a {
  opacity: 0.8;
}

.header-btn {
  position: absolute;
  top: 0;
  right: 0;
  width: 8rem;
  height: 8rem;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 10;
  background-color: #3ac482;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-btn span {
  display: block;
  width: 50%;
  height: 0.3rem;
  background: #fff;
  position: absolute;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  margin: 0 auto;
}

.header-btn span:nth-of-type(1) {
  top: 2.5rem;
}

.header-btn span:nth-of-type(2) {
  top: 4rem;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.header-btn span:nth-of-type(3) {
  bottom: 2.5rem;
}

.header-btn.active span {
  background: #fff;
}

.header-btn.active span:nth-of-type(1) {
  top: 22%;
  -webkit-transform: translateY(2rem) rotate(-45deg);
  transform: translateY(2rem) rotate(-45deg);
}

.header-btn.active span:nth-of-type(2) {
  left: 50%;
  opacity: 0;
  -webkit-animation: active-btn05-bar02 0.8s forwards;
  animation: active-btn05-bar02 0.8s forwards;
}

.header-btn.active span:nth-of-type(3) {
  bottom: 24%;
  --webkit-transform: translateY(-2rem) rotate(45deg);
  -webkit-transform: translateY(-2rem) rotate(45deg);
  transform: translateY(-2rem) rotate(45deg);
}

.header_nav {
  position: fixed;
  z-index: 2;
  top: 0;
  right: 0;
  background: #000;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  width: 100%;
  height: 100vh;
  visibility: hidden;
  -webkit-transform: translateX(-300%);
  transform: translateX(-300%);
}

.header_nav.active {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  opacity: 0.8;
  -webkit-transition: 0.8s;
  transition: 0.8s;
  visibility: visible;
}

.header-menu {
  width: 100%;
  margin-right: 0;
  margin-left: auto;
  padding-top: 100px;
}

.header-menu_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #333;
}

.header-menu_item:first-of-type .header-menu_link p,
.header-menu_item:last-of-type .header-menu_link p {
  color: rgba(255, 255, 255, 0.3);
  line-height: 1;
  margin-left: 0.2rem;
  font-size: 1.3rem;
}

.header-menu_item:not(.border) {
  padding: 2.4rem 0;
}

.header-menu_item-btn {
  width: 48%;
  margin-top: 4rem;
}

.header-menu_item span {
  display: block;
}

.header-menu_item .en {
  font-size: 2.4rem;
}

.header-menu_item .ja {
  color: #65727a;
  font-size: 2rem;
}

.header-menu_link {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 500;
}

.header-menu_link p {
  margin-bottom: 10px;
}

.header-menu_link p span {
  font-size: 1.2rem;
  padding: 0.4rem 0.8rem;
  border: 2px solid #fff;
}

body.active {
  height: 100%;
  overflow: hidden;
}

.footer {
  background-color: #fff;
  padding: 6rem 0 1rem;
}

.footer_logo {
  width: 33rem;
}

.footer_wrap {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 3rem;
}

.footer_wrap_left {
  width: 40%;
}

.footer_wrap_left p {
  margin-top: 3rem;
  font-weight: bold;
}

.footer_wrap_right {
  width: 60%;
}

.footer_navlist {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.footer_nav_item.insta {
  width: 5rem;
  margin-left: 1.5rem !important;
}

.footer_nav_item a {
  display: block;
}

.footer_nav_item a .ja {
  display: block;
  color: #65727a;
  font-size: 1.2rem;
}

.footer_nav_item + .footer_nav_item {
  margin-left: 3rem;
}

.footer_sns_logo {
  width: 5rem;
  margin: 2rem auto 0;
}

.footer_copy {
  font-weight: bold;
}

.inner {
  margin-right: auto;
  margin-left: auto;
  width: 90%;
}

.inner.w-1200 {
  max-width: 1200px;
}

.inner.w-1100 {
  max-width: 1100px;
}

.inner.w-1080 {
  max-width: 1080px;
}

.inner.w-980 {
  max-width: 990px;
}

.inner.w-900 {
  max-width: 900px;
}

.inner.w-600 {
  max-width: 600px;
}

.sec-ttl {
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
}

.sec-ttl span {
  display: block;
}

.sec-ttl .en {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.3;
}

.sec-ttl .ja {
  font-size: 3.3rem;
  margin-top: 1rem;
}

.ttl--l {
  font-weight: bold;
  font-size: 6.5rem;
}

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

.txt--center-sp {
  text-align: center;
}

.txt--left {
  text-align: left;
}

.txt--right {
  text-align: right;
}

.txt--b {
  font-weight: bold;
}

.txt--l {
  font-size: 2.2rem;
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.border {
  border: 1px solid #333;
}

.table_content_wrap02 {
  width: 100%;
  margin-top: 6rem;
  list-style: none;
}

.table_content_inner {
  list-style: none;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.table_content_row {
  position: relative;
  border-bottom: solid 2px #d2d2d2;
}

.table_content_row::after {
  content: "";
  display: block;
  width: 18%;
  height: 2px;
  background: #3ac482;
  position: absolute;
  bottom: -2px;
  left: 0;
}

.table_content_row:last-child {
  border-bottom: none;
}

.table_content_row:last-child::after {
  content: none;
}

.table_h02 {
  color: #333;
  font-weight: 500;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30%;
  flex: 0 0 30%;
  padding: 2rem;
  line-height: 1.8;
}

.table_h02_b {
  color: #333;
  font-weight: 500;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30%;
  flex: 0 0 30%;
  padding: 2rem;
  line-height: 1.8;
}

.table_d02 {
  color: #535353;
  font-weight: 400;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70%;
  flex: 0 0 70%;
  padding: 2rem;
  line-height: 1.8;
}

.table_d02_b {
  color: #535353;
  font-weight: 400;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 70%;
  flex: 0 0 70%;
  padding: 2rem;
  line-height: 1.8;
}

.border {
  border: 1px solid #333;
}

.cmn__sec {
  position: relative;
}

#breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: nowrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding: 4rem 0;
}

#breadcrumb ul li {
  display: inline-block;
  color: #333;
  position: relative;
  font-size: 1.8rem;
  padding: 0 2px;
  text-transform: uppercase;
  line-height: 1.3;
}

#breadcrumb ul li a {
  color: #333;
  text-decoration: none;
}

#breadcrumb ul li + li {
  margin-left: 2.5rem;
}

#breadcrumb ul li + li::before {
  content: "＞";
  margin: 0 1rem;
  font-size: 1.2rem;
  position: absolute;
  top: 0.5rem;
  left: -2.8rem;
}

.fedein {
  opacity: 0;
  -webkit-transform: translate(0, 30px);
  transform: translate(0, 30px);
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.fedein.isAnimate {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}

.slick-list {
  overflow: visible !important;
}

.slick-prev,
.slick-next {
  z-index: 20;
}

.slick-prev {
  left: 4rem;
}

.slick-next {
  right: 4rem;
}

.slick-prev:before {
  content: "\f053";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 700;
  color: #00ada9;
  font-size: 2.2rem;
}

.slick-next:before {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  font-weight: 700;
  color: #00ada9;
  font-size: 2.2rem;
}

.slick-slide {
  margin: 0 1.5rem;
}

.accordion-item {
  color: #fff;
  margin-top: 8rem;
  counter-increment: home-service-number 1;
}

.index_accordion_title {
  cursor: pointer;
  padding: 3rem 0;
}

.index_accordion_title span {
  display: inline-block;
  padding: 0 2rem;
  font-size: 2.2rem;
}

.index_accordion_text {
  display: none;
  padding: 1rem 2rem 3rem;
}

.index_accordion_text span {
  position: relative;
  display: block;
  margin-top: 3rem;
  width: 12rem;
  margin-left: auto;
}

.index_accordion_text span::before {
  /* くの字の表示設定 */
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0rem;
  /* ②棒が長くなった分、右へ7px移動 */
  width: 0.5rem;
  height: 0.5rem;
  border-top: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 1;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.index_accordion_text span::after {
  /* 棒の表示設定 */
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0rem;
  width: 1.5rem;
  /* ①棒の長さを15⇒20pxに変更 */
  height: 0.2rem;
  background: #fff;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

.index_accordion_text span a {
  position: relative;
  color: #fff;
  display: inline-block;
  padding-right: 2.5rem;
}

.index_accordion_text span a::before {
  background: #fff;
  content: "";
  width: 100%;
  height: 0.2rem;
  position: absolute;
  left: 0;
  bottom: 0;
  margin: auto;
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-transform: scale(0, 1);
  transform: scale(0, 1);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.index_accordion_text span a:hover::before {
  -webkit-transform-origin: left top;
  transform-origin: left top;
  -webkit-transform: scale(1, 1);
  transform: scale(1, 1);
}

.index_accordion_text span:hover::before {
  right: -2rem;
  border-top: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
}

.index_accordion_text span:hover::after {
  right: -2rem;
  background: #fff;
}

/* タイトルの背景色 */

.accordion-item:nth-of-type(1) {
  border-top: rgba(255, 255, 255, 0.3) solid 1px;
  border-bottom: rgba(255, 255, 255, 0.3) solid 1px;
}

.accordion-item:nth-of-type(2) {
  border-top: 1rgba 255, 255, 255, 0.3 solid 1px;
  border-bottom: rgba(255, 255, 255, 0.3) solid 1px;
}

.accordion-item:nth-of-type(2) {
  margin-top: 0rem;
}

/* 矢印 */

.index_accordion_title {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.index_accordion_title::before {
  -webkit-transition: all 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
  transition: all 0.4s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
  -webkit-transition-property: background, color;
  transition-property: background, color;
  content: counter(home-service-number, decimal-leading-zero);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 5.5rem;
  height: 5.5rem;
  border: #fff solid 1px;
  border-radius: 50%;
  color: #fff;
  font-family: "Figtree", "Noto Sans JP", "Hiragino Kaku Gothic ProN",
    "Hiragino Sans", Meiryo, sans-serif;
  font-size: 2.2rem;
  font-weight: 600;
  line-height: 1;
}

.index_accordion_title .fas {
  font-size: 2rem;
  color: rgba(255, 255, 255, 0.4);
}

.index_accordion_title.open:before {
  background: #fff;
  color: #3ac482;
}

.color-light-green {
  color: #e2eae3;
}

.color-green {
  color: #0e532a;
}

.color-white {
  color: #fff;
}

.color-black {
  color: #333;
}

.color-yellow {
  color: #987b00;
}

.back-green {
  background-color: #00786a;
}

.back-gray {
  background-color: #f8f8f8;
}

.back-black {
  background-color: #000;
}

.marker-green {
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    color-stop(70%, transparent),
    color-stop(70%, rgb(235, 154, 122))
  );
  background: -webkit-linear-gradient(transparent 70%, rgb(235, 154, 122) 70%);
  background: linear-gradient(transparent 70%, rgb(235, 154, 122) 70%);
}

.line-green {
  position: relative;
  border-bottom: solid 2px #d2d2d2;
  padding-bottom: 1.5rem;
  padding-left: 1rem;
}

.line-green::after {
  content: "";
  display: block;
  width: 18%;
  height: 2px;
  background: #3ac482;
  position: absolute;
  bottom: -2px;
  left: 0;
}

.index_main {
  position: relative;
  width: 100%;
  overflow: hidden;
  position: relative;
  height: 80rem;
}

.index_main_slider {
  width: 100%;
  height: 100%;
}

.index_main_slider .slick-list {
  width: 100%;
  height: 100%;
}

.index_main_slider .slick-track {
  height: 100%;
}

.index_main_slider .slick-slide {
  margin: 0;
}

.index_main_visual {
  width: 100%;
  height: 100%;
  background: url(../images/main01.png) center no-repeat;
  background-position: center;
  background-size: cover;
  z-index: -1;
}

.index_main_visual:nth-child(2) {
  background: url(../images/main02.png) center no-repeat;
  background-position: center;
  background-size: cover;
}

.index_main_visual:last-child {
  background: url(../images/main03.png) center no-repeat;
  background-position: center;
  background-size: cover;
}

.index_main_copy {
  position: absolute;
  top: 20%;
  color: #fff;
}

.index_main_copy h1 {
  font-size: 5.5rem;
  font-weight: bolder;
}

.index_main_copy .sub {
  font-size: 2rem;
  font-weight: bold;
  margin-top: 2rem;
}

.index_main_news {
  position: absolute;
  bottom: 0;
  background-color: #fff;
}

.index_main_news_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #595757;
  font-weight: 600;
}

.index_main_news_list li {
  position: relative;
  padding: 2rem 4rem;
}

.index_main_news_list li a {
  display: flex;
  align-items: center;
}

.index_main_news_list li time {
  position: relative;
  font-size: 1.4rem;
  margin-right: 2rem;
}

.index_main_news_list li + li a {
  padding-right: 10rem;
}

.index_about {
  padding: 10rem 0 17rem;
  background-image: url(../images/index_about01.png);
  background-position: center;
  background-size: cover;
}

.index_about_ttl {
  font-size: 3rem;
  font-weight: 500;
  margin-bottom: 4rem;
}

.index_about_content {
  margin-top: 5rem;
  font-weight: bold;
  line-height: 1.5;
}

.index_about_txt {
  width: 90%;
  margin: 0 auto;
}

.index_about_txt_slider {
  overflow: hidden;
  width: 100%;
  background: #fff; /* 背景色は適宜調整 */
}

.slider-track {
  display: flex;
  width: calc(200%); /* 画像2枚分の横幅 */
  animation: scroll 20s linear infinite;
}

.slider-track img {
  width: auto;
  height: 12rem; /* 高さは自由に調整 */
}

.slider-track img + img{
	margin-left: 4rem;
}

@keyframes scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.index_service {
  position: relative;
  padding: 8rem 0 20rem;
  z-index: 1;
  background: url(../images/service_bg.png) center / cover no-repeat;
  background-position: center;
  background-size: cover;
}

.index_service .inner {
  position: relative;
}

.index_service .sec-ttl {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.index_service .sec-ttl .ja {
  font-size: 4rem;
}

.index_service .sec-ttl .en {
  margin-left: 2rem;
  font-size: 2.4rem;
}

.index_service_list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.index_service_listwrap {
  position: absolute;
  top: 15rem;
  left: 0;
}

.index_service_list li {
  position: relative;
  width: calc(40% - 3rem);
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  padding-bottom: 4rem;
  z-index: 1;
  background-color: #fff;
}

.index_service_list li + li {
  margin-left: 5rem;
}

.index_service_txtBox {
  padding: 2rem 2rem 4rem;
}

.index_service_txtBox h3 {
  font-size: 2rem;
  color: #00786a;
  margin-bottom: 1rem;
}

.index_service_txtBox p {
  font-size: 1.5rem;
}

.index_service_txtBox a {
  position: absolute;
  bottom: 2rem;
  right: 2rem;
  width: 4rem;
  display: block;
  margin-left: auto;
}

.index_news {
  padding-top: 60rem;
}

.index_news .sec-ttl img {
  margin-right: auto;
  margin-left: 0;
  width: 20rem;
}

.index_news_Listwrap {
  margin-top: 6rem;
}

.index_news_list {
  border-bottom: 0.2rem solid #00786a;
  padding: 3rem 3rem 3rem 0rem;
  list-style: none;
  font-weight: bold;
}

.index_news_list:first-child {
  border-top: 0.2rem solid #00786a;
}

.index_news_list a {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.index_news_list_time {
  width: 15%;
  text-align: center;
}

.index_news_list_cont {
  margin-left: 3rem;
  width: 70%;
}

.index_news_arrow {
  width: 3rem;
}

.index_news_btn {
  width: 32rem;
  margin: 4rem auto 0;
}

.index_news_btn a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 3rem;
  font-weight: bold;
  border-radius: 2.8rem;
  border: 0.3rem solid #00786a;
}

.index_news_btn a::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  border-top: solid 0.2rem #00786a;
  border-right: solid 0.2rem #00786a;
  position: absolute;
  top: 50%;
  right: 3rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.index_info {
  padding-top: 10rem;
}

.index_info_item {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url(../images/info02.png) center / cover no-repeat;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}

.index_info_item a {
  display: block;
  padding: 3rem 0 18rem;
}

.index_info_item .sec-ttl .en {
  font-size: 2.8rem;
}

.index_info_item .sec-ttl .ja {
  font-size: 3.3rem;
}

.index_info_item:nth-child(2) {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url(../images/info01.png) center / cover no-repeat;
}

.recruit_main_mv {
  background-image: url(../images/recruit_main.png);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: 35rem;
  margin-top: 9rem;
}

.recruit_main_ttl {
  font-size: 8rem;
  width: 33rem;
  font-weight: 300;
  line-height: 1.5;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.recruit_main_ttl .en img {
  width: 22rem;
  margin: 0 auto;
}

.recruit_concept {
  background-color: #f4f3f1;
  padding: 10rem 0;
}

.recruit_concept_ttl {
  font-weight: 400;
  font-size: 5rem;
}

.recruit_interview {
  padding: 10rem 0 8rem;
}

.recruit_interview .sec-ttl {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 2.5;
}

.recruit_interview_wrap {
  margin-top: 6rem;
}

.recruit_interview_icon_list {
  margin: 6rem 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.recruit_interview_icon_item {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit_interview_icon_itemImg {
  width: 11.5rem;
}

.recruit_interview_icon_item + .recruit_interview_icon_item {
  margin-left: 10rem;
}

.recruit_interview_icon_item h3 {
  font-weight: 400;
  margin-left: 2rem;
  line-height: 1.5;
}

.recruit_interview_icon_item h3 span {
  display: block;
}

.recruit_interview_icon_item h3 .division {
  font-size: 2rem;
}

.recruit_interview_icon_item h3 .name {
  font-size: 3rem;
}

.recruit_interview_list {
  margin-top: 10rem;
}

.recruit_interview_item {
  position: relative;
  background-color: #fff;
}

.recruit_interview_item + .recruit_interview_item {
  margin-top: 6rem;
}

.recruit_interview_item:nth-child(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}

.recruit_interview_item_txt {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  padding: 8rem 5rem;
}

.recruit_interview_item_img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
}

.recruit_interview_item_ttl {
  font-weight: 400;
  line-height: 1.5;
}

.recruit_interview_item_ttl span {
  display: block;
}

.recruit_interview_item_ttl .division {
  font-size: 4rem;
}

.recruit_interview_item_ttl .name {
  font-size: 5rem;
  margin-bottom: 1rem;
}

.recruit_interview_item_ttl .en {
  font-family: "Savoye LET", sans-serif;
  font-size: 4rem;
}

.recruit_interview_item .txt--m {
  font-size: 2rem;
  border-bottom: 1px solid #333;
  padding-bottom: 2rem;
}

.recruit_interview_item_accordion_title {
  font-size: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 400;
  margin-top: 8rem;
}

.recruit_interview_item_accordion_title span {
  display: inline-block;
  margin-right: 1rem;
}

.recruit_interview_item_accordion_txt {
  font-size: 2rem;
  margin-top: 2rem;
  line-height: 1.8;
}

.recruit_point {
  background-image: url(../images/recruit_point.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 10rem 0;
}

.recruit_point_txtBox {
  margin-bottom: 8rem;
}

.recruit_point_txtBox img {
  width: 30rem;
  margin: 0 auto 6rem;
}

.recruit_point_txtBox h3 {
  font-size: 4rem;
  font-weight: 400;
}

.recruit_point_list {
  padding: 4rem 0;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recruit_point_list li {
  width: calc(33.3333333333% - 5rem);
}

.recruit_point_listwrap p {
  font-size: 2.4rem;
  margin-top: 3rem;
}

.recruit_requirements {
  padding: 6rem 0;
}

.recruit_requirements .sec-ttl {
  margin-bottom: 5rem;
}

.recruit_requirements .sec-ttl img {
  width: 46rem;
}

.recruit_requirements .sec-ttl .ja {
  position: relative;
  font-size: 2.4rem;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit_requirements .sec-ttl .ja::before,
.recruit_requirements .sec-ttl .ja::after {
  border-top: 2px solid black;
  content: "";
  width: 1.5rem;
}

.recruit_requirements .sec-ttl .ja::before {
  margin-right: 2rem;
}

.recruit_requirements .sec-ttl .ja::after {
  margin-left: 2rem;
}

.recruit_requirements_item {
  margin-top: 6rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recruit_requirements_left {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 48%;
  flex: 0 0 48%;
}

.recruit_requirements_leftImg {
  height: 100%;
}

.recruit_requirements_leftImg img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 100%;
}

.recruit_requirements_right {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 48%;
  flex: 0 0 48%;
}

.recruit_requirements_right_txtBox h2 span {
  display: block;
}

.recruit_requirements_right_txtBox h2 .txt--l {
  font-size: 5rem;
}

.recruit_requirements_right_txtBox h2 .txt--m {
  font-size: 4rem;
  line-height: 1.5;
}

.recruit_requirements_right_txtBox p {
  font-size: 2.4rem;
  font-weight: bold;
  margin-top: 3rem;
}

.recruit_requirements_right_table {
  font-size: 2rem;
}

.recruit_requirements_right_table + .recruit_requirements_right_table {
  margin-top: 0.5rem;
}

.recruit_btn {
  width: 33rem;
  margin: 6rem auto 0;
}

.recruit_btn a {
  width: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.5rem;
  font-size: 2rem;
}

.recruit_btn a span {
  display: inline-block;
  width: 1.5rem;
  margin-right: 1rem;
}

.about_desc {
  padding: 10rem 0 0;
}

.about_desc .sec-ttl .ja {
  margin-top: 3rem;
}

.about_desc p {
  margin-top: 4rem;
  line-height: 2.5;
}

.about_message_inner {
  padding: 15rem 0 0;
}

.about_message_inner h3 {
  font-size: 2.5rem;
  font-weight: 400;
}
.about_message_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 3rem;
}

.about_message_txt {
  width: 60%;
}

.about_message_txt p {
  line-height: 2;
}

.about_message_txt strong {
  text-align: right;
  display: block;
  font-size: 3.6rem;
  font-family: "Crimson Text", "游明朝", "Yu Mincho", "YuMincho",
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS 明朝",
    serif;
}

.about_message_txt strong span {
  font-size: 2.2rem;
  margin-right: 1rem;
}

.about_message_img {
  width: 36%;
}

.about_table_sec {
  padding: 14rem 0;
}

.about_access_sec {
  padding: 14rem 0 0;
}

.about_access_map {
  margin-top: 5rem;
}
.contact_sec_formwrap {
  margin-top: 4rem;
}

/* .contact_sec_formwrap a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0.8rem 4rem;
  font-weight: bold;
  background: rgb(243, 159, 125);
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(243, 159, 125)),
    to(rgb(231, 33, 26))
  );
  background: -webkit-linear-gradient(
    left,
    rgb(243, 159, 125) 0%,
    rgb(231, 33, 26) 100%
  );
  background: linear-gradient(
    90deg,
    rgb(243, 159, 125) 0%,
    rgb(231, 33, 26) 100%
  );
  color: #fff;
  max-width: 20rem;
  margin: 0 auto;
} */

.contact_sec_form table {
  width: 100%;
  margin-bottom: 6rem;
}

.contact_sec_form table th,
.contact_sec_form table td {
  float: left;
  width: 100%;
  padding: 0 0 2.5rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: left;
}

.contact_sec_form table td input[type="text"],
.contact_sec_form table td input[type="email"],
.contact_sec_form table td input[type="tel"],
.contact_sec_form table td textarea {
  height: 6rem;
  font-size: 1.2rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  border: 1px solid #404040;
}

.contact_sec_form table td input[type="text"],
.contact_sec_form table td input[type="email"],
.contact_sec_form table td input[type="tel"],
.contact_sec_form table td input[type="number"],
.contact_sec_form table td select,
.contact_sec_form table td textarea {
  color: #333;
  width: 100%;
  height: 4.5rem;
  font-size: 1.3rem;
  padding: 0.5rem 1rem 0.5rem 1rem;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #a4a4a4;
}

.contact_sec_form_btn input {
  width: 100%;
  border: none;
  cursor: pointer;
  color: #333 !important;
  border-radius: 8rem;
  padding: 1.5rem 3.3rem;
  margin-bottom: 2.4rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  color: transparent;
  font-size: 1.8rem;
}

.form-section {
  position: relative;
  margin-top: 2rem;
}

.form-section table {
  width: 100%;
}

.form-section table tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #ccc;
}

.form-section table tr:last-child {
  border: none;
}

.form-section table th {
  vertical-align: middle;
  font-weight: bold !important;
  border-width: 1px 0px 1px 1px !important;
  width: 30%;
  text-align: center;
}

.form-section table td {
  width: 70%;
}

.form-section table th,
.form-section table td {
  /* border: #ddd solid !important; */
  padding: 3rem 1.5rem;
  line-height: 1.2em;
  vertical-align: top;
  font-weight: bold;
}

.form-section .txt18,
.rq {
  font-size: 1.8rem;
}

.form-section .rq .form-section .txt20 {
  margin: 4rem 0 2rem;
  font-size: 1.8rem;
}

.form-section .name-list td {
  display: block;
}

.form-section .name-list td p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.form-section .name-list td .name {
  display: inline-block;
  width: 15%;
}

.form-section td input[type="text"],
.form-section td input[type="email"],
.form-section td input[type="tel"],
.form-section td input[type="number"],
.form-section td select,
.form-section td textarea {
  color: #333;
  display: inline-block;
  width: 100%;
  height: auto;
  padding: 2rem 3rem 2rem 2rem;
  -webkit-appearance: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #a4a4a4;
  background: #fff;
}

.form-section td .note {
  color: #969696;
  display: block;
  margin-top: 1.5rem;
  font-size: 1.4rem;
}

.form-section .remaining p {
  display: block;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 0;
  color: #de0000;
  line-height: 1.4em;
  text-align: center;
}

.form-section .number {
  font-size: 1.8rem;
  line-height: 1.4em;
}

.items {
  font-size: 1.8rem;
}

.essential {
  background: #ff462e;
  color: #fff;
  font-size: 1.3rem;
  padding: 0.3rem 1.2rem;
  font-weight: normal;
  border-radius: 0.5rem;
  margin-left: 2rem;
}

.form-section .wpcf7-list-item {
  display: block;
  margin: 0;
  border-radius: 5px;
  padding: 0 10px;
  position: relative;
  cursor: pointer;
}

.wpcf7-list-item + .wpcf7-list-item {
  margin-top: 1rem;
}

input[type="checkbox"] {
  display: none;
}

.wpcf7-list-item-label {
  position: relative;
  height: 2rem;
  line-height: 2rem;
  padding-left: 3rem;
  display: inline-block;
}

.wpcf7-list-item-label::before {
  content: "";
  display: block;
  width: 2.3rem;
  height: 2.3rem;
  border: 0.2rem solid;
  background: #fff;
  position: absolute;
  left: 0;
  top: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
  content: "";
  display: block;
  background-image: url(../images/check_green.png);
  background-size: cover;
  background-repeat: no-repeat;
  content: "";
  height: 1.5rem;
  left: 0.3rem;
  position: absolute;
  top: 0.3rem;
  width: 1.5rem;
}

.form-section .btn-wrapper {
  text-decoration: none;
  position: relative;
  display: block;
  width: 20rem;
  letter-spacing: 0.2rem;
  text-align: center;
  border: none;
  margin: 5rem auto;
}

.form-section .btn {
  background-color: #000;
  width: 100%;
  height: 100%;
  padding: 1.5rem 0;
  border-radius: 0.5rem;
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-align-items: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  color: #fff;
}




.service_desc {
  padding: 5rem 0;
}

.service_desc .sec-ttl {
  line-height: 1.8;
}

.service_desc .sec-ttl .ja {
  margin-top: 3rem;
  font-size: 3rem;
}

.service_desc p {
  margin-top: 3rem;
  line-height: 2.5;
  font-size: 1.8rem;
}

.service_desc_list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.service_desc_listwrap {
  margin-top: 7rem;
}

.service_desc_list li {
  width: calc(33.3333333333% - 4rem);
}

.service_desc_list li h3 {
  font-size: 2rem;
}

.service_desc_list li a {
  position: relative;
  padding: 1.5rem;
  display: block;
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
}

.service_desc_list li a::after {
  position: absolute;
  top: 2.2rem;
  right: 2rem;
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  background-image: url(../images/service_arrow.png);
  background-size: 2.5rem;
  background-position: center;
  background-repeat: no-repeat;
}

.service_desc_list li + li {
  margin-left: 3rem;
}

.service_sec {
  padding: 10rem 0 0;
}

.service_sec_ttl {
  font-size: 3rem;
  color: #00786a;
}

.service_sec_info {
  margin: 5rem 0 5rem;
}

.service_sec_info#feature {
  margin: 5rem 0 10rem;
}

.service_sec_info p {
  margin-top: 3rem;
  font-weight: 500;
}

.service_sec_infoImg img {
  width: 13rem;
  margin: 0 auto 1rem;
}

.service_sec_infoInner {
  margin-top: 3rem;
}

.service_sec_infoInner p {
  font-weight: 500;
}

.service_sec_info_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.service_sec_info_list li {
  width: calc(20% - 1rem);
  margin-top: 2rem;
}

.service_sec_info_list li p {
  font-weight: 500;
  font-size: 1.6rem;
  margin-top: 0;
}

.service_sec_info_desc {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 8rem;
}

.service_sec_info_desc_img {
  width: 30%;
}

.service_sec_info_desc_cont {
  width: 66%;
  font-size: 1.8rem;
}

.service_sec_info_desc_cont p {
  margin-top: 0;
}

.service_sec_strongInner {
  margin-top: 8rem;
}

.service_sec_strongImg {
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
}

.service_sec_strong_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.service_sec_strong_list li {
  width: calc(25% - 2rem);
}

.service_sec_strong_ttl {
  text-align: center;
  min-height: 15rem;
}

.service_sec_strong_ttl h3 {
  font-size: 2.4rem;
  background-color: #057c46;
  color: #fff;
  padding: 0.8rem 0;
}

.service_sec_strong_ttl p {
  margin: 1rem 0;
  font-size: 2rem;
  line-height: 1.5;
}

.service_sec_strong_txtBox {
  margin-top: 2.4rem;
}

.service_sec_strong_txtBox h3 {
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.service_sec_strong_txtBox p {
  margin-top: 0rem;
}

.service_sec_skill {
  padding-top: 5rem;
}

.service_sec_skill_list {
  margin-top: 5rem;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.service_sec_skill_cont {
  width: 48%;
  font-size: 1.8rem;
  font-weight: bold;
}

.service_sec_skill_img {
  width: 46%;
}

.service_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 3rem;
  padding-bottom: 10rem;
}

.service_list_inner {
  position: relative;
}

.service_list_inner h3 {
  font-size: 3.3rem;
  font-weight: bold;
  color: #00786a;
}

.service_list_txt {
  width: 50%;
}

.service_list_txt p {
  line-height: 2;
  font-weight: 500;
  font-size: 1.6rem;
}

.service_list_txt strong {
  display: block;
  font-size: 2rem;
  margin-bottom: 1.5rem;
}

.service_list_img {
  position: absolute;
  top: 0;
  right: -20rem;
  width: 65%;
}

.business_desc {
  padding: 5rem 0;
}

.business_desc .sec-ttl .ja {
  margin-top: 3rem;
}

.business_desc p {
  margin-top: 4rem;
  line-height: 2.5;
}

.business_desc_list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.business_desc_listwrap {
  margin-top: 7rem;
}

.business_desc_list li {
  width: calc(33.3333333333% - 4rem);
}

.business_desc_list li h3 {
  font-size: 2rem;
}

.business_desc_list li a {
  position: relative;
  padding: 1.5rem;
  display: block;
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
}

.business_desc_list li a::after {
  position: absolute;
  top: 2.2rem;
  right: 2rem;
  content: "";
  width: 2.5rem;
  height: 2.5rem;
  background-image: url(../images/service_arrow.png);
  background-size: 2.5rem;
  background-position: center;
  background-repeat: no-repeat;
}

.business_desc_list li + li {
  margin-left: 3rem;
}

.business_sec {
  padding: 15rem 0 0;
}

.business_sec_ttl {
  font-size: 2.6rem;
  color: #00786a;
}

.business_sec_info {
  margin: 10rem 0 5rem;
}

.business_sec_info#feature {
  margin: 0 0 5rem;
}

.business_sec_info#rental
  .business_sec_info_list
  li:first-child
  .service_sec_infoImg
  img {
  width: 15rem;
}

.business_sec_info p {
  margin-top: 3rem;
  font-weight: 500;
}

.business_sec_infoImg img {
  width: 10rem;
  margin: 0 auto 4rem;
}

.business_sec_infoInner {
  margin-top: 8rem;
}

.business_sec_infoInner p {
  font-weight: 500;
}

.business_sec_info_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.business_sec_info_list li {
  width: calc(25% - 3rem);
}

.business_sec_info_list li p {
  font-weight: 500;
  font-size: 1.6rem;
}

.business_sec_strongInner {
  margin-top: 8rem;
}

.business_sec_strongImg {
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
}

.business_sec_strong_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.business_sec_strong_list li {
  width: calc(33.3333333333% - 4rem);
}

.business_sec_strong_txtBox {
  margin-top: 2.4rem;
}

.business_sec_strong_txtBox h3 {
  font-size: 1.8rem;
  margin-bottom: 1rem;
}

.business_sec_strong_txtBox p {
  margin-top: 0rem;
}

.business_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 3rem;
  padding-bottom: 20rem;
}

.business_list_inner {
  position: relative;
}

.business_list_inner h3 {
  font-size: 3.3rem;
  font-weight: bold;
  color: #00786a;
}

.business_list_txt {
  width: 50%;
}

.business_list_txt p {
  line-height: 2;
  font-weight: 500;
  font-size: 1.5rem;
}

.business_list_txt strong {
  display: block;
  font-size: 2rem;
  margin-bottom: 1.5rem;
}

.business_list_img {
  position: absolute;
  top: 0;
  right: -20rem;
  width: 65%;
}

.business_bannerwrap {
  margin-top: 8rem;
}

.business_bannerwrap h3 {
  font-size: 1.8rem;
  margin-bottom: 4rem;
}

.business_bannerwrap .inner {
  -webkit-box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  box-shadow: 0.8rem 0.8rem 1rem 0.1rem rgba(89, 87, 87, 0.5);
  background-color: #fff;
  padding: 3rem 4rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.business_banner_logo {
  width: 45rem;
  margin: 0 auto 5rem;
}

.business_banner_img {
  width: 25%;
}

.business_banner_cont {
  width: 73%;
  font-weight: bold;
}

.business_banner_cont img {
  width: 30rem;
  margin-bottom: 2rem;
}

.business_banner_cont .more_btn {
  width: 32rem;
  margin-left: auto;
}

.business_banner_cont .more_btn a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem 3rem;
  font-weight: bold;
  background: rgb(217, 226, 74);
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(rgb(217, 226, 74)),
    color-stop(50%, rgb(112, 193, 74)),
    to(rgb(3, 159, 73))
  );
  background: -webkit-linear-gradient(
    left,
    rgb(217, 226, 74) 0%,
    rgb(112, 193, 74) 50%,
    rgb(3, 159, 73) 100%
  );
  background: linear-gradient(
    90deg,
    rgb(217, 226, 74) 0%,
    rgb(112, 193, 74) 50%,
    rgb(3, 159, 73) 100%
  );
  color: #fff;
  border-radius: 2.5rem;
}

.business_banner_cont .more_btn a::after {
  content: "";
  display: block;
  width: 1rem;
  height: 1rem;
  border-top: solid 0.2rem #fff;
  border-right: solid 0.2rem #fff;
  position: absolute;
  top: 50%;
  right: 3rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.detail_mv {
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 20rem 0;
}

.detail_mv#about {
  background-image: url(../images/about_mv.png);
}

.detail_mv#service {
  background:url(../images/serivce_mv.png) center / cover no-repeat;
}

.detail_mv#contact {
  background-image: url(../images/about_mv.png);
}


.detail_mv#news {
	background-image: url(../images/news_mv.png);
}

.detail-ttl {
  font-weight: bolder;
  line-height: 1.5;
}

.detail-ttl span {
  display: block;
}

.detail-ttl .ja {
  font-size: 4.2rem;
}

.detail-ttl .en {
  font-size: 2.4rem;
}

#news_archive {
  padding: 80px 0;
}

#news_archive a {
  text-decoration: none;
  color: #333;
}

.blog-cont .media {
  padding: 30px 0 40px;
  border-bottom: 1px solid #e9e9e9;
}

.media .category-news .media-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
}


.media .category-news .media-body .entry-meta {
   font-size: 1.8rem;
}

.media .media-body .image {
  position: relative;
  margin-right: 5rem;
  margin-top: 2.4rem;
  width: 30rem;
}

.media .media-body .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.media .media-body .entry-meta_items_term {
  position: absolute;
  top: 0;
  color: #fff;
  border-radius: 5px;
  padding: 5px 20px;
  background-color: #333;
}

.media-body .post-content .media-heading {
  font-weight: 100;
  line-height: 1.5;
  margin-bottom: 20px;
  /*   padding: 40px 0 20px; */
  color: #333;
}

.media-body .post-content {
  text-align: left;
  margin-top: 44px;
}


.media-body .post-content .heading3 {
	font-size: 2.2rem;
}

.media-body .post-content a {
  color: #000;
}

.media-body .post-content a p {
  line-height: 2;
}

.media-body .post-content .media-heading a:hover {
  color: #333;
  text-decoration: underline;
}

.media-body .post-content .media-body_excerpt:hover {
  text-decoration: underline;
}

.container_single {
  width: 100%;
  margin: 0 auto;
  margin-top: 8%;
}

.topics_detail {
  margin-bottom: 180px;
}

.topics_detail h2 {
  margin: 2.2em auto;
  width: 100%;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
  -ms-flex-pack: left;
  justify-content: left;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.4em 0.5em;
  line-height: 1.5;
  position: relative;
  font-size: 2.4rem;
}

.topics_detail .time {
  font-weight: bold;
  letter-spacing: 1px;
  margin: 0 auto 3em;
  font-size: 1.8rem;
}

.topics_detail .body {
  width: 100%;
  margin: 0 auto 1em;
  padding: 0 0 1em;
}

.topics_detail .body h1 {
  font-size: 3.8rem;
}

.topics_detail .body h2 {
  font-size: 3.2rem;
  margin-top: 20px;
}

.topics_detail .body h3 {
  font-size: 2.5rem;
  margin-top: 20px;
}

.topics_detail .body h4 {
  font-size: 2.2rem;
  margin-top: 20px;
}

.topics_detail .body p {
  font-size: 1.8rem;
  line-height: 2;
  margin-top: 20px;
}

.topics_detail .body .imege {
  margin-bottom: 80px;
}

.topics_detail .body img {
  width: 100%;
  height: 100%;
}

.topics_links {
  margin: 0 0 0;
  position: relative;
  width: 100%;
}

.topics_links .btn_wrap {
  margin: 40px 0;
}

.topics_links .links_move {
  position: absolute;
  left: 0;
  font-weight: bold;
  position: relative;
  padding: 10px 0 0 1.8em;
  letter-spacing: 1px;
  display: inline-block;
}

.topics_links .links_move a {
  text-decoration: none;
  color: #333333;
  /* 	font-family: Noto Serif JP, sans-serif; */
}

.topics_links .totopics a {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 240px;
  height: 42px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  background-color: #cc2d1d;
  border-radius: 5px;
  font-size: 1.2rem;
  cursor: pointer;
  -webkit-transition: 0.15s;
  transition: 0.15s;
}

.sp-none {
  display: none;
}

@media (min-width: 769px) {
  .color-white-pc {
    color: #fff;
  }

  .pc-none {
    display: none;
  }

  .sp-none {
    display: block;
  }
}

@media screen and (max-width: 1280px) {
  html {
    font-size: 0.78125vw;
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 1.33333vw;
  }
}

@media (max-width: 768px) {
  p {
    font-size: 1.8rem;
  }
	
	.header-inner{
		padding: 0 3rem;
	}

  .header-logo {
    width: 23rem;
	padding: 1.8rem 0;
  }

  .header-btn {
    margin-left: 2rem;
	width: 8.1rem;
    height: 8.1rem;
  }

  .footer {
    padding: 8rem 0 1rem;
  }

  .footer_logo {
    width: 40rem;
    margin: 0 auto 3rem;
  }

  .footer_wrap {
    display: block;
    padding-bottom: 6rem;
  }

  .footer_wrap_left {
    width: 100%;
  }

  .footer_wrap_left p {
    text-align: center;
    margin: 3rem 0 4rem;
  }

  .footer_wrap_right {
    width: 100%;
  }

  .footer_navlist {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .footer_nav_item {
    width: calc(33.3333333333% - 2rem);
    margin: 2rem 0;
  }

  .footer_nav_item a {
    font-size: 2rem;
  }

  .footer_nav_item a .ja {
    font-size: 1.6rem;
  }

  .footer_nav_item + .footer_nav_item {
    margin-left: 0;
  }

  .sec-ttl .en {
    font-size: 2.6rem;
  }

  .sec-ttl .ja {
    font-size: 3rem;
    margin-top: 1.5rem;
  }

  .ttl--l {
    font-size: 6rem;
  }

  .txt--center-sp {
    text-align: left;
  }

  .txt--l {
    font-size: 2.4rem;
  }

  .index_accordion_text {
    padding: 1rem 2rem 3rem 8rem;
    font-size: 1.8rem;
  }

  .index_accordion_title .fas {
    font-size: 3rem;
  }

  .color-white-pc {
    color: #000;
  }
	
	.index_main_copy {
		top: 30%;
	}

  .index_main_copy h1 {
    font-size: 4rem;
  }

  .index_main_news_list {
    -webkit-box-align: normal;
    -ms-flex-align: normal;
    align-items: normal;
  }

  .index_main_news_list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .index_about_ttl {
    font-size: 2.8rem;
  }

  .index_service_list {
    display: block;
  }

  .index_service_list li {
    width: 80%;
    margin: 0 auto 4rem;
  }
	
	.index_service_list li + li{
		margin: 0 auto 4rem;
	}

  .index_news {
    padding-top: 134rem;
  }

  .index_news_list_time {
    width: 20%;
  }

  .index_info_list {
    display: block;
  }

  .index_info_item .sec-ttl .en {
    font-size: 2.6rem;
  }

  .index_info_item .sec-ttl .ja {
    font-size: 3rem;
  }

  .recruit_main_mv {
    background-image: url(../images/recruit_main_sp.png);
    height: 120rem;
  }

  .recruit_main_ttl {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    top: 20%;
    width: 100%;
    text-align: center;
  }

  .recruit_main_ttl .en img {
    width: 26rem;
  }

  .recruit_interview .sec-ttl {
    font-size: 2.8rem;
  }

  .recruit_interview_wrap {
    margin-top: 3rem;
  }

  .recruit_interview_icon_item {
    display: block;
  }

  .recruit_interview_icon_itemImg {
    width: 15rem;
    margin: 0 auto 2rem;
  }

  .recruit_interview_icon_item + .recruit_interview_icon_item {
    margin-left: 7rem;
  }

  .recruit_interview_icon_item h3 {
    margin-left: 0;
    text-align: center;
  }

  .recruit_interview_icon_item h3 span {
    display: inline-block;
  }

  .recruit_interview_icon_item h3 .division {
    font-size: 2.4rem;
  }

  .recruit_interview_icon_item h3 .name {
    font-size: 3.5rem;
    margin-left: 1rem;
  }

  .recruit_interview_item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .recruit_interview_item:nth-child(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head {
    position: absolute;
    top: 23rem;
    right: 3rem;
    left: unset;
    background-color: #fff;
    padding: 2.5rem 3rem;
    width: 33rem;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head .txt--m {
    border-bottom: none;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head::before {
    content: "";
    position: absolute;
    top: 2rem;
    right: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses1.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item:nth-child(2n) .recruit_interview_item_head::after {
    content: "";
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses2.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_txt {
    padding: 3rem 5rem 8rem;
  }

  .recruit_interview_item_head {
    position: absolute;
    top: 23rem;
    left: 3rem;
    background-color: #fff;
    padding: 2.5rem 3rem;
    width: 33rem;
  }

  .recruit_interview_item_head .txt--m {
    border-bottom: none;
  }

  .recruit_interview_item_head::before {
    content: "";
    position: absolute;
    top: 2rem;
    right: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses1.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_head::after {
    content: "";
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    height: 4rem;
    width: 4rem;
    background-image: url(../images/parentheses2.png);
    background-size: 4rem;
    background-repeat: no-repeat;
    background-position: center;
  }

  .recruit_interview_item_ttl .division {
    font-size: 3.5rem;
  }

  .recruit_interview_item_ttl .name {
    font-size: 4rem;
  }

  .recruit_interview_item_ttl .en {
    font-size: 3.5rem;
  }

  .recruit_interview_item_accordion_title {
    font-size: 2.8rem;
    margin-top: 4rem;
  }

  .recruit_interview_item_accordion_txt {
    font-size: 2.2rem;
  }

  .recruit_point_txtBox {
    margin-bottom: 6rem;
  }

  .recruit_point_txtBox img {
    width: 25rem;
    margin: 0 auto 4rem;
  }

  .recruit_point_txtBox h3 {
    font-size: 3rem;
  }

  .recruit_point_list {
    padding: 6rem 0;
  }

  .recruit_point_list li {
    width: calc(33.3333333333% - 3rem);
  }

  .recruit_requirements_item:first-child {
    display: block;
    margin-top: 0;
    margin-bottom: 6rem;
  }

  .recruit_requirements_item:first-child .recruit_requirements_leftImg {
    display: none;
  }

  .recruit_requirements_item:first-child
    .recruit_requirements_right_txtBox
    h2
    .txt--l {
    font-size: 4rem;
    text-align: center;
  }

  .recruit_requirements_item:first-child
    .recruit_requirements_right_txtBox
    h2
    .txt--m {
    font-size: 3rem;
    line-height: 1.5;
    text-align: left;
    margin-top: 2rem;
  }

  .about_message_inner {
    padding: 8rem 0 0;
  }

  .about_message_list {
    padding-top: 3rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .about_message_img {
    margin-top: 4rem;
    width: 100%;
  }
	 .about_message_txt {
        width: 100%;
        padding-top: 5rem;
    }

  .contact_sec_formwrap a {
    max-width: 25rem;
    font-size: 2rem;
  }

  .service_desc_list {
    display: block;
  }

  .service_desc_listwrap {
    margin-top: 4rem;
  }

  .service_desc_list li {
    width: 90%;
    margin: 3rem auto 0;
  }

  .service_desc_list li h3 {
    font-size: 2.2rem;
  }

  .service_desc_list li a {
    padding: 2.5rem 2rem;
  }

  .service_desc_list li + li {
    margin-left: auto;
  }

  .service_sec {
    padding: 6rem 0 0;
  }

  .service_sec_info#feature {
    margin: 8rem 0;
  }

  .service_sec_info_list {
    flex-flow: wrap;
    justify-content: space-between;
  }

  .service_sec_infoInner {
    margin-top: 5rem;
  }

  .service_sec_info_list li {
    width: calc(50% - 0rem);
  }

  .service_sec_info#rental
    .service_sec_info_list
    li:first-child
    .service_sec_infoImg
    img {
    width: 20rem;
  }

  .service_sec_infoImg img {
    width: 20rem;
  }

  .service_sec_info_list li p {
    font-size: 2rem;
  }

  .service_sec_info_desc {
    display: block;
  }

  .service_sec_info_desc_img {
    width: 100%;
  }

  .service_sec_info_desc_cont {
    width: 100%;
  }

  .service_sec_info_desc_cont p {
    margin-top: 3rem;
  }

  .service_sec_strongImg {
    height: 30rem;
  }

  .service_sec_strongImg img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .service_sec_strong_list {
    display: block;
  }

  .service_sec_strong_list li {
    width: 100%;
    margin-top: 5rem;
  }

  .service_sec_strong_ttl {
    min-height: auto;
    margin-bottom: 3rem;
  }

  .service_sec_strong_ttl h3 {
    font-size: 2.6rem;
  }

  .service_sec_strong_txtBox h3 {
    font-size: 2rem;
  }

  .service_sec_skill_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-flow: column-reverse;
    flex-flow: column-reverse;
  }

  .service_sec_skill_cont {
    width: 100%;
    margin-top: 4rem;
  }

  .service_sec_skill_img {
    width: 100%;
  }

  .service_list {
    padding-top: 3rem;
    display: block;
    padding-bottom: 3rem;
  }

  .service_list_inner {
    padding: 3rem 0 0;
  }

  .service_list_txt p {
    font-size: 1.8rem;
  }

  .service_list_txt {
    width: 100%;
    padding-top: 3rem;
  }

  .service_list_txt strong {
    font-size: 2.2rem;
  }

  .service_list_img {
    position: unset;
    width: 100%;
  }

  .business_desc_list {
    display: block;
  }

  .business_desc_listwrap {
    margin-top: 4rem;
  }

  .business_desc_list li {
    width: 90%;
    margin: 2rem auto 0;
  }

  .business_desc_list li h3 {
    font-size: 2.2rem;
  }

  .business_desc_list li a {
    padding: 2.5rem 2rem;
  }

  .business_desc_list li + li {
    margin-left: 0;
  }

  .business_sec {
    padding: 6rem 0 0;
  }

  .business_sec_info#feature {
    margin: 8rem 0;
  }

  .business_sec_info#rental
    .business_sec_info_list
    li:first-child
    .service_sec_infoImg
    img {
    width: 12rem;
  }

  .business_sec_infoInner {
    margin-top: 5rem;
  }

  .business_sec_info_list li {
    width: calc(50% - 2rem);
  }

  .business_sec_strongImg {
    height: 30rem;
  }

  .business_sec_strongImg img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .business_sec_strong_list {
    display: block;
  }

  .business_sec_strong_list li {
    width: 100%;
    margin-top: 5rem;
  }

  .business_sec_strong_txtBox h3 {
    font-size: 2rem;
  }

  .business_list {
    padding-top: 3rem;
    display: block;
    padding-bottom: 3rem;
  }

  .business_list_inner {
    padding: 3rem 0 0;
  }

  .business_list_txt {
    width: 100%;
    padding-top: 3rem;
  }

  .business_list_txt strong {
    font-size: 2.2rem;
  }

  .business_list_img {
    position: unset;
    width: 100%;
  }

  .business_bannerwrap {
    margin-top: 6rem;
  }

  .business_bannerwrap h3 {
    font-size: 2rem;
  }

  .business_bannerwrap .inner {
    display: block;
    padding: 4rem 4rem;
  }

  .business_banner_img {
    width: 80%;
    margin: 0 auto 3rem;
  }

  .business_banner_cont {
    width: 100%;
  }

  .business_banner_cont .more_btn {
    width: 40rem;
    margin: 3rem auto 0;
  }

  .business_banner_cont .more_btn a {
    padding: 2rem 3rem;
    font-size: 1.8rem;
    border-radius: 3.5rem;
  }

  .detail-ttl .ja {
    font-size: 3.8rem;
  }

  .media .category-news .media-body {
    display: block;
  }

  .media .category-news .media-body .heading3 {
    font-size: 3.6666666vw;
    margin-bottom: 2.6666666667vw;
  }

  .media .media-body .image {
    width: 100%;
    margin-right: 0;
    height: 100%;
  }

  .media .media-body .image img {
    min-height: auto;
    height: 100%;
  }

  .media .media-body .post-content {
    text-align: left;
    margin-top: 40px;
  }

  .container_single {
    width: 100%;
  }

  .topics_detail {
    margin: 0em 0 4vw 0;
    border-bottom: 1px solid #999999;
  }

  .topics_detail h1 {
    margin: 2.6666666667vw auto;
    width: 100%;
    border-top: 2px solid #82050a;
    border-bottom: 2px solid #82050a;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    padding: 0.8em 0.5em;
    position: relative;
  }

  .topics_detail .body {
    width: 100%;
    margin: 0 auto 2vw;
    padding: 0 0 5.3333333333vw;
  }

  .topics_detail .body h1 {
    font-size: 4vw;
  }

  .topics_detail .body h2 {
    font-size: 3.8888888vw;
    margin-top: 4.6666666667vw;
  }

  .topics_detail .body h3 {
    font-size: 3.3333333333vw;
    margin-top: 3.6666666667vw;
  }

  .topics_detail .body h4 {
    font-size: 2.8vw;
    margin-top: 3.6666666667vw;
  }

  .topics_detail .body p {
    font-size: 2.55555vw;
    margin-top: 2.6666666667vw;
    line-height: 2;
  }

  .topics_links {
    margin: 0 auto;
    position: relative;
    width: 95%;
  }
}

.agreeTxt {
  display: flex;
  align-items: center;
  justify-content: center;
}

#kiyaku-checkbox {
	border: .1rem solid #333;
	appearance: auto !important;
}

#kiyaku-checkbox {
  display: inline-block !important;
  width: 2rem;
  height: 2rem;
  margin-right: .5rem;
  vertical-align: middle;
}


.agreeTxt input {
  width: 2rem;
  height: 2rem;
}

.privacy{
	text-decoration: underline;
}

.btn-wrapper .wpcf7-submit:disabled {
  background-color: #ccc;
  cursor: not-allowed;
}

.grecaptcha-badge { visibility: hidden; }

