@charset "UTF-8";
/*
theme Name: 岡本＆パートナーズ様
Author: OKAMOTO & PARTNERS
Description: original theme
version： 1.0.0
*/
/*! コメント残す場合 */
/*---------------------------------------------
	リセット
---------------------------------------------*/
article,
aside,
hgroup,
header,
address,
figure,
figcaption {
  margin: 0;
  padding: 0;
}

ul {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-padding-start: 0;
          padding-inline-start: 0;
  padding: 0;
}

p {
  -webkit-margin-before: 0px;
          margin-block-start: 0px;
  -webkit-margin-after: 0px;
          margin-block-end: 0px;
  -webkit-margin-start: 0px;
          margin-inline-start: 0px;
  -webkit-margin-end: 0px;
          margin-inline-end: 0px;
}

h1,
h2,
h3,
h4,
h5,
h6,
dl,
dt,
dd,
ul,
li,
p {
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  margin: 0;
}

/*---------------------------------------------
	画像
---------------------------------------------*/
img {
  width: 100%;
}

/*---------------------------------------------
	body
---------------------------------------------*/
html {
  scroll-behavior: smooth;
  overflow-y: scroll;
}

body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6em;
  text-align: left;
  overflow-x: hidden;
  font-family: "Sawarabi Gothic", serif;
}

/*---------------------------------------------
	Anchor
---------------------------------------------*/
a {
  outline: none;
  color: #0085B2;
}

a:link {
  text-decoration: none;
  text-decoration: underline;
}

a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

a:active {
  text-decoration: none;
}

a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.fontgreen {
  color: #2D7143 !important;
}

/*---------------------------------------------
	section color
---------------------------------------------*/
.bg_color_1 {
  background-color: #F5F3F0;
}

.bg_color_2 {
  background-color: #F5F3F0;
}

/*---------------------------------------------
	column
---------------------------------------------*/
@media screen and (max-width: 989px) {
  section {
    width: 95%;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (max-width: 989px) {
  .column_1_wrapper {
    width: 95%;
    display: block;
    margin: 0 auto;
  }
}
@media screen and (min-width: 990px) {
  .column_1_wrapper {
    width: 1200px;
    display: block;
    margin: 0 auto;
  }
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}

@media screen and (max-width: 989px) {
  .flex_wrapper {
    width: 95%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin: 0 auto;
  }
}
@media screen and (min-width: 990px) {
  .flex_wrapper {
    max-width: 1200px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin: 0 auto;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (min-width: 990px) {
  .flex_half {
    width: 49%;
  }
}

@media screen and (min-width: 990px) {
  .flex_half:nth-child(odd) {
    margin-right: 1%;
  }
}

@media screen and (min-width: 990px) {
  .flex_3item {
    width: 32%;
  }
}
@media screen and (max-width: 989px) {
  .flex_3item {
    margin-top: 20px;
  }
}

@media screen and (min-width: 990px) {
  .flex_3item2 {
    width: 65%;
  }
}

@media screen and (min-width: 990px) {
  .flex_4item {
    width: 24%;
  }
}

@media screen and (min-width: 990px) {
  .flex_5item {
    width: 19%;
  }
}

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

.flex_wrapper.justleft {
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
}

/*---------------------------------------------
	br
---------------------------------------------*/
@media screen and (min-width: 990px) {
  .sp_br {
    display: none;
  }
}

@media screen and (max-width: 989px) {
  .pc_br {
    display: none;
  }
}

/*---------------------------------------------
	display
---------------------------------------------*/
@media screen and (max-width: 989px) {
  .pc_only {
    display: none;
  }
}

@media screen and (min-width: 990px) {
  .sp_only {
    display: none;
  }
}

/*---------------------------------------------
	color
---------------------------------------------*/
.fontpink {
  color: #FF7373;
}

.bggray {
  background-color: #F5F3F0;
  border-radius: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem 2.5rem;
  margin-bottom: 1rem;
  position: relative;
}
@media screen and (max-width: 989px) {
  .bggray {
    padding: 2rem 1.5rem;
  }
}

.bggray .gttl {
  color: #2D7143;
  font-weight: bold;
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
  border-bottom: 2px solid #2D7143;
}

/*---------------------------------------------
	minview(inline)
---------------------------------------------*/
#mainview_inline {
  width: 100%;
  height: 400px;
}

/*---------------------------------------------
	パンくず
---------------------------------------------*/
#breadcrumb {
  background-color: #F5F3F0;
}
@media screen and (min-width: 990px) {
  #breadcrumb {
    margin-bottom: 3rem;
  }
}
@media screen and (max-width: 989px) {
  #breadcrumb {
    display: none;
  }
}

@media screen and (min-width: 990px) {
  #breadcrumb > div {
    width: 1200px;
    display: block;
    position: relative;
    margin: 0 auto;
  }
}

#breadcrumb ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
}

#breadcrumb ul li {
  padding: 5px 10px;
  text-align: left;
  font-size: 12px;
  font-size: 0.75rem;
  position: relative;
}

#breadcrumb ul li a {
  color: #0085B2;
}

#breadcrumb ul li::before {
  content: "›";
  width: 1em;
  height: 1em;
  line-height: 1;
  text-align: center;
  font-size: 1em;
  color: inherit;
  position: absolute;
  top: 50%;
  right: -5px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

#breadcrumb ul li:last-child {
  margin-right: 0;
  padding-right: 0;
}

#breadcrumb ul li:last-child::before {
  content: normal;
}

/*---------------------------------------------
	button
---------------------------------------------*/
.btn_base {
  background-color: #2D7143;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  border-radius: 10px;
  padding: 15px 50px;
  display: inline-block;
  text-decoration: none !important;
}

.btn {
  display: block;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  text-decoration: none !important;
  background-repeat: no-repeat;
  background-position: 95% 50%;
  border-radius: 10px;
  -webkit-box-shadow: 2px 5px 0 #ccc;
          box-shadow: 2px 5px 0 #ccc;
  padding: 20px 50px 20px 0;
  background-image: url("../img/common/icon_arrow_double_white.png");
}
@media screen and (max-width: 989px) {
  .btn {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 1rem;
    text-align: center;
  }
}
@media screen and (min-width: 990px) {
  .btn {
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: 0.1em;
    padding: 1rem;
  }
}

.btn span {
  display: block;
  opacity: 50%;
}
@media screen and (max-width: 989px) {
  .btn span {
    font-size: 10px;
    font-size: 0.625rem;
    letter-spacing: 0.2em;
  }
}
@media screen and (min-width: 990px) {
  .btn span {
    font-size: 12px;
    font-size: 0.75rem;
    letter-spacing: 0.3em;
  }
}

.btn.blue {
  background-color: #0085B2;
}

.btn.pink {
  background-color: #FF7373;
}

@media screen and (min-width: 990px) {
  .btn.w250 {
    width: 250px;
    text-align: center;
    margin: auto auto;
  }
}
@media screen and (max-width: 989px) {
  .btn.w250 {
    width: 80%;
    margin: 0 auto;
  }
}

/*---------------------------------------------
	img:hover
---------------------------------------------*/
.hover:hover {
  -webkit-transition: all 0.6s ease 0s;
  transition: all 0.6s ease 0s;
  opacity: 0.6;
}

/*---------------------------------------------
	margin
---------------------------------------------*/
.m50 {
  margin: 50px auto;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
}

.mt30 {
  margin-top: 30px;
}

.mt50 {
  margin-top: 50px;
}

@media screen and (min-width: 990px) {
  .mt100 {
    margin-top: 100px;
  }
}
@media screen and (max-width: 989px) {
  .mt100 {
    margin-top: 50px;
  }
}

.mt1rem {
  margin-top: 1rem !important;
}

.mr20 {
  margin-right: 20px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb50 {
  margin-bottom: 50px;
}

@media screen and (min-width: 990px) {
  .mb100 {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 989px) {
  .mb100 {
    margin-bottom: 50px;
  }
}

/*---------------------------------------------
	paragraph
---------------------------------------------*/
.tac {
  text-align: center !important;
}

.tal {
  text-align: left !important;
}

.tar {
  text-align: right !important;
}

/*---------------------------------------------
	table
---------------------------------------------*/
table.nml {
  width: 100%;
  margin: 0 auto;
}

table.nml th {
  background: #2D7143;
  color: #FFFFFF;
  padding: 10px 20px;
}
@media screen and (max-width: 989px) {
  table.nml th {
    border-bottom: none;
    display: block;
    width: 100%;
  }
}

table.nml td {
  padding: 10px 20px;
  background: #F5F3F0;
}
@media screen and (max-width: 989px) {
  table.nml td {
    border-bottom: none;
    display: block;
    width: 100%;
  }
}

/*---------------------------------------------
	タイトル
---------------------------------------------*/
h2.nml {
  letter-spacing: 0.2rem;
  font-weight: bold;
  font-family: "Sawarabi Mincho", sans-serif;
  line-height: 1em;
  text-align: center;
}
@media screen and (min-width: 990px) {
  h2.nml {
    font-size: 30px;
    font-size: 1.875rem;
  }
}
@media screen and (max-width: 989px) {
  h2.nml {
    line-height: 1.2em;
  }
}

h2.nml span {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: bold;
  text-align: center;
  color: #2D7143;
  display: block;
}
@media screen and (max-width: 989px) {
  h2.nml span {
    line-height: 1em !important;
  }
}

h2.nml em {
  color: #2D7143;
  font-style: normal;
}

h2.enttl {
  letter-spacing: 0.2rem;
  color: #333333;
  font-weight: bold;
  text-align: center;
  margin: auto auto;
  line-height: 1.5em;
}
@media screen and (min-width: 990px) {
  h2.enttl {
    font-size: 40px;
    font-size: 2.5rem;
    margin-top: 5rem;
  }
}
@media screen and (max-width: 989px) {
  h2.enttl {
    margin-bottom: 2rem;
    margin-top: 2rem;
  }
}

h2.enttl span {
  display: block;
  margin: -1rem auto 1rem auto;
  font-size: 16px;
  font-size: 1rem;
  color: #2D7143;
}
@media screen and (max-width: 989px) {
  h2.enttl span {
    margin: 0rem auto 1rem auto;
  }
}

h2.catch {
  color: #333333;
  font-weight: bold;
  font-family: "Sawarabi Mincho", sans-serif;
  line-height: 1.6em;
}
@media screen and (min-width: 990px) {
  h2.catch {
    font-size: 34px;
    font-size: 2.125rem;
  }
}

/*---------------------------------------------
	角丸
---------------------------------------------*/
.radius {
  border-radius: 10px;
}

/*---------------------------------------------
	アニメーション
---------------------------------------------*/
.effect-fade.fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: 1s;
  transition: 1s;
}

.effect-fade.fadeInDown {
  opacity: 0;
  -webkit-transform: translateY(-30px);
          transform: translateY(-30px);
  -webkit-transition: 2s;
  transition: 2s;
}

.effect-fade.SlideInLeft {
  opacity: 0;
  -webkit-transform: translateX(-30px);
          transform: translateX(-30px);
  -webkit-transition: 2s;
  transition: 2s;
}

.effect-fade.SlideInRight {
  opacity: 0;
  -webkit-transform: translateX(30px);
          transform: translateX(30px);
  -webkit-transition: 2s;
  transition: 2s;
}

.effect-fade.FadeIn {
  opacity: 0;
  -webkit-transform: translateX(-30px);
          transform: translateX(-30px);
  -webkit-transition: 2s;
  transition: 2s;
}

.effect-fade.delay-lv1 {
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s;
}

.effect-fade.delay-lv2 {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s;
}

.effect-fade.delay-lv3 {
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s;
}

.effect-fade.delay-lv4 {
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s;
}

.effect-fade.delay-lv5 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}

/*---------------------------------------------
	パララックス設定（min高さは各所に）
---------------------------------------------*/
.parallax-window {
  background: transparent;
}

.parallax-slider {
  top: 0;
  left: 0;
}

/*---------------------------------------------
	固有：大見出し
---------------------------------------------*/
.headline {
  overflow: hidden;
}

.headline h2 {
  letter-spacing: 0.2rem;
  color: #333333;
  display: block;
  text-indent: 0.5em;
  margin-top: 10px;
}
@media screen and (min-width: 990px) {
  .headline h2 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}
@media screen and (max-width: 989px) {
  .headline h2 {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.headline h2 span {
  font-size: 14px;
  font-size: 0.875rem;
  display: block;
  padding-top: 10px;
}

.headline h2 p {
  padding-top: 30px;
}

.headline.pink h2 span {
  color: #FF7373;
}

.headline.blue h2 span {
  color: #0085B2;
}

.headline.green h2 span {
  color: #2D7143;
}

.headline h2:before {
  content: "";
  background-size: contain;
  width: 90px;
  height: 90px;
  display: block;
  float: left;
}

.headline.blue h2:before {
  background-image: url("../img/common/icon_headline_blue.png");
}

.headline.pink h2:before {
  background-image: url("../img/common/icon_headline_pink.png");
}

.headline.green h2:before {
  background-image: url("../img/common/icon_headline_green.png");
}

/*---------------------------------------------
	固有：キャッチ
---------------------------------------------*/
h3.catchcopy {
  font-size: 20px;
  font-size: 1.25rem;
  letter-spacing: 0.1em;
  line-height: 1.6em;
  color: #2D7143;
  text-align: center;
}

h3.catchcopy + p {
  margin-top: 2rem;
}

h3.catchcopy.blue {
  color: #0085B2;
}

h3.catchcopy.pink {
  color: #FF7373;
}

h3.catchcopy.green {
  color: #2D7143;
}

/*---------------------------------------------
	固有：段落
---------------------------------------------*/
p {
  margin: 1rem auto;
}

/*---------------------------------------------
	固有：サイズ調整
---------------------------------------------*/
.w80 {
  width: 90%;
  margin: auto auto;
}
@media screen and (min-width: 990px) {
  .w80 {
    max-width: 1050px;
  }
}

p.attention {
  color: #FF7373;
  background: #FFFFFF;
  border: 2px solid #FF7373;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 1rem;
  text-align: center;
  margin: 2rem auto;
}

/*---------------------------------------------
	固有：SNSボタン
---------------------------------------------*/
.snsbtn {
  margin: 1rem auto;
  width: 100px;
}

.snsbtn img {
  height: 30px;
  width: 30px;
}

/*---------------------------------------------
	固有：ブロック
---------------------------------------------*/
.greenblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}

.greenblock h4 {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #2D7143;
  color: #FFFFFF;
  border-radius: 10px 10px 0 0;
  text-align: left;
  padding: 1rem 2rem;
}

.greenblock h4 + p {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1rem 2rem;
  text-align: left;
  margin: 0;
}
@media screen and (max-width: 989px) {
  .greenblock h4 + p {
    padding: 1rem 1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.greenblock h4 span {
  background-color: #FFFFFF;
  color: #2D7143;
  padding: 0.5rem 1rem;
}
@media screen and (min-width: 990px) {
  .greenblock h4 span {
    margin-left: 2rem;
  }
}
@media screen and (max-width: 989px) {
  .greenblock h4 span {
    display: block;
    margin-top: 0.5rem;
    text-align: center;
  }
}

.greenblock .greenblock-inner {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .greenblock .greenblock-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 90%;
    margin: 1rem auto;
  }
}
@media screen and (max-width: 989px) {
  .greenblock .greenblock-inner {
    width: 95%;
    margin: 1rem auto;
    padding: 0 1rem;
  }
}

@media screen and (min-width: 990px) {
  .greenblock .greenblock-inner .img {
    width: 25%;
    padding: 1rem 0;
  }
}
@media screen and (max-width: 989px) {
  .greenblock .greenblock-inner .img {
    margin-bottom: 1.5rem;
  }
}

.greenblock .answer {
  position: relative;
  margin: 1rem auto;
}
@media screen and (min-width: 990px) {
  .greenblock .answer {
    padding-left: 5rem !important;
  }
}
@media screen and (max-width: 989px) {
  .greenblock .answer {
    margin: 0 auto;
  }
}

@media screen and (min-width: 990px) {
  .greenblock .answer:before {
    font-size: 30px;
    font-size: 1.875rem;
    content: "A.";
    color: #DFE7DE;
    position: absolute;
    top: 1rem;
    left: 2rem;
  }
}

@media screen and (min-width: 990px) {
  .greenblock .greenblock-inner .txt {
    width: 70%;
    padding: 1rem 0;
  }
}

.greenblock .greenblock-inner .txt h5 {
  color: #B2B200;
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 0.1em;
}

.greenblock .gblist {
  list-style: none;
}

.greenblock .gblist li {
  margin-left: 1.4em;
  text-indent: -1.4em;
}

.greenblock .gblist li:before {
  content: "";
  width: 10px;
  height: 10px;
  display: inline-block;
  background-color: #B2B200;
  border-radius: 50%;
  margin-right: 0.8rem;
}

.seminar_table {
  width: 100%;
  background: #F0F9F8;
  padding: 0.5rem 1em;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
}

.seminar_table table {
  width: 98%;
  margin: 1rem auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

@media screen and (max-width: 989px) {
  .seminar_table table tr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.seminar_table th {
  background: #2C7072;
  border-bottom: 1px solid #ccc !important;
  color: #FFFFFF;
  text-align: center;
}

.seminar_table td {
  background: #FFF;
  border-bottom: 1px solid #ccc !important;
}

.seminar_table th,
.seminar_table td {
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 989px) {
  .seminar_table th,
  .seminar_table td {
    width: 100%;
  }
}

/*---------------------------------------------
	ロゴ
---------------------------------------------*/
@media screen and (min-width: 990px) {
  header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    min-height: 100px;
    margin-bottom: 1rem;
  }
}
@media screen and (max-width: 989px) {
  header {
    text-align: center;
  }
}

@media screen and (min-width: 990px) {
  #logo {
    width: 28rem;
    padding-top: 1rem;
    margin-left: 1rem;
  }
}
@media screen and (max-width: 989px) {
  #logo {
    width: 100%;
    text-align: left;
  }
}

#logo img {
  image-rendering: -webkit-optimize-contrast;
}
@media screen and (max-width: 989px) {
  #logo img {
    width: 60%;
    margin-left: 1rem;
    margin-top: 0.5rem;
  }
}

#logo span {
  font-size: 0.8rem;
  text-align: center;
  display: block;
  background-color: #D3E5E5;
}

#mainphoto {
  width: 100%;
  min-height: 360px;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  background-color: #D4E5E5;
}
@media screen and (max-width: 989px) {
  #mainphoto {
    min-height: 100px;
  }
}

#mainphoto h1 {
  font-size: 30px;
  font-size: 1.875rem;
  position: absolute;
  top: 40%;
  left: 20%;
}
@media screen and (max-width: 989px) {
  #mainphoto h1 {
    text-align: center;
    position: relative;
    display: block;
    font-size: 20px;
    font-size: 1.25rem;
    letter-spacing: 0.2em;
    top: 2rem;
    left: unset;
    color: #FFFFFF;
    text-shadow: 0 0 8px #000;
  }
}

/* --- メガメニュー ---------------------------------------- */
/* ①メニューボタンのスタイル */
@media screen and (min-width: 990px) {
  .menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    list-style: none;
  }
  .menu .menu_list {
    width: auto;
    padding: 0 1rem;
  }
  .menu .menu_list > a {
    display: block;
    padding: 10px 0;
    text-align: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    text-decoration: none;
    color: #000000;
    font-size: 16px;
    font-size: 1rem;
  }
  .menu .menu_list span {
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    color: #DFE7DE;
    text-align: center;
    letter-spacing: 0.1em;
    text-align: center;
    margin: 0 0 -0.3rem 0;
    padding: 0;
  }
  /* ②メガメニューのスタイル */
  .menu_contents {
    background: #2D7143;
    display: none;
    position: absolute;
    min-width: 700px;
    top: 100%;
    left: 0;
    width: 100%;
    border-radius: 0 0 10px 10px;
    z-index: 99;
  }
  .menu_contents .menu_content_inline {
    width: 90%;
    margin: 2rem auto;
    padding: 1rem 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-top: 1px solid #FFFFFF;
    border-bottom: 1px solid #FFFFFF;
  }
  .menu_contents ul {
    width: 95%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .menu_contents li {
    width: 50%;
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    list-style: none inside;
    padding: 0.8rem 0 1rem 0.8rem;
    border: 1px solid #2D7143;
    background-color: #F5F3F0;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
  }
  .menu_contents li:before {
    content: " ";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("../img/common/icon_book.png");
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 0.3rem;
    margin-top: 0.2rem;
  }
  .menu_contents li a {
    color: #2D7143;
    text-decoration: none;
  }
  .menu_contents li:first-child {
    border-radius: 10px 0 0 0;
  }
  .menu_contents li:nth-child(2) {
    border-radius: 0 10px 0 0;
  }
  .menu_contents li:nth-child(9) {
    border-radius: 0 0 0 10px;
  }
  .menu_contents li:nth-child(10) {
    border-radius: 0 0 10px 0;
  }
  .menu_contents li.none::before {
    background-image: none !important;
  }
}
@media screen and (max-width: 989px) {
  nav {
    -webkit-transition: 0.3s ease-in-out !important;
    transition: 0.3s ease-in-out !important;
  }
  a:hover {
    text-decoration: none !important;
  }
  .overlay {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100%;
    background: #283330;
    opacity: 0.5;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    z-index: 10;
  }
  header .inner {
    position: relative;
    padding: 1.5em;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  nav {
    overflow: auto;
    position: fixed;
    top: 0;
    left: -70%;
    width: 70%;
    max-width: 320px;
    height: 100%;
    background: #FFFFFF;
    opacity: 0;
    z-index: 9999;
    -webkit-box-shadow: 0 0 2px gray;
            box-shadow: 0 0 2px gray;
  }
  .navOpen nav {
    opacity: 1;
    left: 0;
  }
  nav ul li#nav00 a {
    border: none;
  }
  nav ul {
    list-style-type: disc;
  }
  nav ul li {
    border-bottom: 1px solid #ddd;
    width: 100%;
    text-align: left;
    font-weight: bold;
  }
  nav ul li span {
    display: none;
  }
  nav ul li a {
    position: relative;
    display: block;
    padding: 1em 1em 1em 1.5em;
    text-decoration: none;
    text-decoration: none !important;
    color: #2D7143;
    font-size: 14px;
    font-size: 0.875rem;
  }
  nav ul li a:hover {
    background: rgba(255, 255, 255, 0.6);
  }
  .menu_contents ul {
    background: #DFE7DE;
  }
  .menu_contents ul li a {
    font-size: 14px;
    font-size: 0.875rem;
    text-indent: 1rem;
    padding: 0.5rem 1rem;
    font-weight: normal;
  }
  .menu_contents ul li a:before {
    content: "―";
    margin-right: 0.5rem;
  }
  .navBtn {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    cursor: pointer;
    z-index: 11;
    font-weight: bold;
    background-color: #2D7143;
    background-repeat: no-repeat;
    background-size: contain;
    text-align: center;
    width: 60px;
    height: 60px;
  }
  .navBtn:after {
    width: 53px;
    position: absolute;
    top: 33px;
    left: 9px;
    right: 0;
    text-align: center;
    font-size: 10px;
    color: #FFFFFF;
  }
  .navOpen .navBtn:after {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 36px;
    left: 8px;
    right: 0;
    text-align: right;
    font-size: 10px;
    color: #FFFFFF;
  }
  .navBtn span {
    display: block;
    height: 2px;
    width: 20px;
    background: #FFFFFF;
    border-radius: 0px;
    -webkit-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
    margin-left: 1.4rem;
    margin-top: 1.2rem;
  }
  .navBtn span:nth-of-type(2),
  .navBtn span:nth-of-type(3) {
    margin-top: 5px;
  }
  .navOpen .navBtn span:nth-of-type(1) {
    -webkit-transform: translateY(9px) translateX(0) rotate(45deg);
    transform: translateY(6px) translateX(0) rotate(45deg);
    background: #FFFFFF;
  }
  .navOpen .navBtn span:nth-of-type(2) {
    margin-top: 5px;
    opacity: 0;
    -webkit-transform: translateY(9px);
    transform: translateY(9px);
    background: #FFFFFF;
  }
  .navOpen .navBtn span:nth-of-type(3) {
    -webkit-transform: translateY(-9px) translateX(0) rotate(-45deg);
    transform: translateY(-7px) translateX(0) rotate(-45deg);
    background: #FFFFFF;
  }
  .navOpen ul li a:after {
    position: absolute;
    top: 50%;
    right: 1.5em;
    display: inline-block;
    content: "";
    width: 7px;
    height: 7px;
    margin-top: -4px;
    margin-right: -4px;
    vertical-align: middle;
    border-top: 3px solid;
    border-right: 3px solid #ccc;
    border-top: 3px solid #ccc;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    -ms-transform: rotate(45deg);
  }
}
@media screen and (min-width: 990px) {
  #contact {
    width: 300px;
    margin-right: 1rem;
  }
}
@media screen and (max-width: 989px) {
  #contact {
    width: 100%;
    margin-right: 1rem;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    -webkit-box-shadow: 0 0 8px #283330;
            box-shadow: 0 0 8px #283330;
  }
}

#contact ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  list-style: none;
  width: 100%;
}
@media screen and (min-width: 990px) {
  #contact ul {
    border-radius: 0 0 10px 10px;
    -webkit-box-shadow: 4px 6px #ddd;
            box-shadow: 4px 6px #ddd;
  }
}

#contact ul li:first-child {
  background-color: #2D7143;
}
@media screen and (min-width: 990px) {
  #contact ul li:first-child {
    width: 220px;
    border-radius: 0 0 0 10px;
  }
}
@media screen and (max-width: 989px) {
  #contact ul li:first-child {
    width: 50%;
    padding-bottom: 0.5rem;
  }
}

@media screen and (min-width: 990px) {
  #contact ul li:last-child {
    width: 80px;
    background-color: #283330;
    border-radius: 0 0 10px 0;
  }
}
@media screen and (max-width: 989px) {
  #contact ul li:last-child {
    width: 50%;
    background-color: #283330;
    padding-bottom: 0.5rem;
  }
}

@media screen and (min-width: 990px) {
  #contact ul li.tel {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    text-align: right;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1rem 1.5rem 1rem 1rem;
  }
}

@media screen and (min-width: 990px) {
  #contact ul li.tel span {
    font-size: 12px;
    font-size: 0.75rem;
    font-weight: bold;
    display: block;
  }
}

#contact ul li.tel a {
  color: #FFFFFF;
  text-decoration: none;
}

#contact ul li.tel p {
  display: inline;
  line-height: 0.5em;
}
@media screen and (max-width: 989px) {
  #contact ul li.tel p {
    display: none;
  }
}

@media screen and (min-width: 990px) {
  #contact ul li.tel img {
    width: 30px;
    height: 30px;
    margin-right: 0.5rem;
    vertical-align: middle;
  }
}
@media screen and (max-width: 989px) {
  #contact ul li.tel img {
    width: 40px;
    height: 40px;
    margin-right: 0.5rem;
    vertical-align: middle;
    margin-top: 0.5rem;
  }
}

#contact ul li.mail {
  text-align: center;
}

@media screen and (min-width: 990px) {
  #contact ul li.mail img {
    width: 40px;
    height: 30px;
    vertical-align: middle;
    margin-top: 25%;
  }
}
@media screen and (max-width: 989px) {
  #contact ul li.mail img {
    width: 40px;
    height: 30px;
    vertical-align: middle;
    margin-top: 1rem;
  }
}

/* --- mainview ---------------------------------------- */
#mainview {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 990px) {
  #mainview {
    width: 100%;
    height: 600px;
  }
}
@media screen and (max-width: 989px) {
  #mainview {
    width: 100%;
    height: 300px;
    margin-top: 10px;
  }
}

/* 動画埋め込み */
.c-video {
  position: relative;
  width: 100%;
}
.c-video__title {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 10;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  padding: 30px;
  text-align: center;
  font-size: 45px;
  font-weight: 300;
  line-height: 1.6;
  white-space: nowrap;
  color: #FFFFFF;
  background-color: #FFFFFF;
  -webkit-backdrop-filter: blur(3px);
          backdrop-filter: blur(3px);
}
.c-video__embed {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ナビゲーション ---------------------------------------- */
nav ul#menu-global {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

nav ul.sub-global {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

/*---------------------------------------------
	お知らせ（統合版）
---------------------------------------------*/
#news_2022 {
  width: 95%;
  margin: 1rem auto;
  display: block;
  -webkit-box-shadow: 0 0 8px gray;
          box-shadow: 0 0 8px gray;
  border-radius: 10px;
}
@media screen and (min-width: 990px) {
  #news_2022 {
    width: 600px;
    margin: 0;
    top: 30rem;
    right: 0;
    position: absolute;
  }
}
@media screen and (min-width: 990px) and (max-width: 1600px) {
  #news_2022 {
    top: 25rem;
  }
}
@media screen and (max-width: 989px) {
  #news_2022 {
    width: 100%;
    margin: 0;
    bottom: 0;
    right: 0;
  }
}

#news_2022 h2 {
  background-color: #2D7143;
  color: #FFFFFF;
  border-radius: 10px 0 0 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1rem 2rem;
  font-size: 18px;
  font-size: 1.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-weight: normal;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 989px) {
  #news_2022 h2 {
    font-size: 16px;
    font-size: 1rem;
    padding: 1rem;
    border-radius: 0;
  }
}
#news_2022 h2 a {
  font-size: 12px;
  font-size: 0.75rem;
  color: #FFFFFF;
  text-decoration: none;
}

#news_2022 .news_inner {
  width: 100%;
  background-color: #283330;
  border-radius: 0 0 0 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 1rem;
}

@media screen and (max-width: 989px) {
  #news_2022 .news_inner.pc {
    display: none;
  }
}

#news_2022 .news_inner.sp {
  border-radius: 0;
}
@media screen and (min-width: 990px) {
  #news_2022 .news_inner.sp {
    display: none;
  }
}

#news_2022 .news_inner dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 1rem;
  border-bottom: 1px solid #2D7143;
  margin-bottom: 0.3rem;
}
#news_2022 .news_inner dl dt {
  font-size: 12px;
  font-size: 0.75rem;
  color: #DFE7DE;
  font-weight: bold;
}
@media screen and (min-width: 990px) {
  #news_2022 .news_inner dl dt {
    width: 170px;
  }
}
#news_2022 .news_inner dl dt span {
  font-size: 11px;
  font-size: 0.6875rem;
  display: inline-block;
  background-color: #DFE7DE;
  color: #283330;
  text-align: center;
  padding: 0 5px;
  margin-left: 0.5rem;
  border-radius: 50px;
}
#news_2022 .news_inner dl dd {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: left;
}
@media screen and (min-width: 990px) {
  #news_2022 .news_inner dl dd {
    width: calc(100% - 200px);
  }
}
#news_2022 .news_inner dl dd a {
  color: #FFFFFF;
  text-decoration: none;
}
#news_2022 .news_inner dl dd a:hover {
  color: #2C7072;
}

#news_2022 .news_inner dl:last-child {
  border-bottom: none;
}

@media screen and (min-width: 990px) {
  .indexmain {
    margin-top: 150px;
  }
}
@media screen and (min-width: 990px) and (max-width: 1600px) {
  .indexmain {
    margin-top: 200px;
  }
}

/*---------------------------------------------
	お知らせ（タブ切り替え）
---------------------------------------------*/
#news {
  width: 95%;
  margin: 1rem auto;
  display: block;
}
@media screen and (min-width: 990px) {
  #news {
    width: 600px;
    margin: 0;
    top: 25rem;
    right: 0;
    position: absolute;
  }
}
@media screen and (max-width: 989px) {
  #news {
    width: 100%;
    margin: 0;
    bottom: 0;
    right: 0;
  }
}

.tab-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 20px 0;
}

.tab-label {
  color: White;
  background: LightGray;
  font-weight: bold;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  text-align: center;
  padding: 10px 0.5em;
  -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
          order: -1;
  position: relative;
  z-index: 1;
  cursor: pointer;
  border-radius: 5px 5px 0 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.tab-label:not(:last-of-type) {
  margin-right: 5px;
}

.tab-content {
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
  background-color: #283330;
  border-radius: 0 0 10px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* アクティブなタブ */
.tab-switch:checked + .tab-label.news-tab {
  background-color: #2D7143;
}

.tab-switch:checked + .tab-label.seminar-tab {
  background-color: #2C7072;
}

.tab-switch:checked + .tab-label + .tab-content {
  height: auto;
  overflow: auto;
  opacity: 1;
  -webkit-transition: 0.5s opacity;
  transition: 0.5s opacity;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 990px) {
  .tab-switch:checked + .tab-label + .tab-content {
    padding: 1rem;
  }
}

/* ラジオボタン非表示 */
.tab-switch {
  display: none;
}

label.news-tab {
  background-color: #2D7143;
  background-image: url("../img/common/under_arrow.png");
  background-repeat: no-repeat;
  background-position: 95% 50%;
}

label.seminar-tab {
  background-color: #2C7072;
  background-image: url("../img/common/under_arrow.png");
  background-repeat: no-repeat;
  background-position: 95% 50%;
}

.newsbox {
  width: 90%;
  margin: 1rem auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1rem 1.5rem 1rem;
}
@media screen and (max-width: 989px) {
  .newsbox {
    width: 95%;
    padding: 0 0.5rem 1rem 0.5rem;
  }
}

.newsbox span {
  color: #FFFFFF;
  font-size: 12px;
  font-size: 0.75rem;
  text-align: center;
  display: inline-block;
  margin: 0 0 0.5rem 1rem;
  padding: 0.1rem 1rem;
}

.newsbox p {
  margin: 0;
}

.newsbox p.date {
  padding: 0 1rem;
  color: #FFFFFF;
  font-size: 14px;
  font-size: 0.875rem;
}

.newsbox p.title {
  padding: 0 1rem;
  color: #FFFFFF;
}

.newsbox p.title a {
  text-decoration: underline;
  color: #FFFFFF;
}

.tab-content.info .newsbox {
  border: 2px solid #2D7143;
}

.tab-content.info .newsbox span {
  background: #2D7143;
}

.tab-content.seminar .newsbox {
  border: 2px solid #2C7072;
}

.tab-content.seminar .newsbox span {
  background: #2C7072;
}

/*---------------------------------------------
	各ページタイトル
---------------------------------------------*/
#mainview #pagettl h1 {
  font-family: "Sawarabi Mincho", sans-serif;
  font-weight: bold;
  color: #333333;
  text-shadow: #FFFFFF 1px 1px 0px, #FFFFFF -1px 1px 0px, #FFFFFF 1px -1px 0px, #FFFFFF -1px -1px 0px;
}
@media screen and (min-width: 990px) {
  #mainview #pagettl h1 {
    padding-left: 5rem;
    padding-top: 10rem;
    font-size: 46px;
    font-size: 2.875rem;
  }
}
@media screen and (max-width: 989px) {
  #mainview #pagettl h1 {
    text-align: center;
    font-size: 30px;
    font-size: 1.875rem;
    padding-top: 5rem;
  }
}

#mainview #pagettl h1 span {
  display: block;
  font-family: "Sawarabi Gothic", serif;
  text-indent: 0.3rem;
  font-size: 20px;
  font-size: 1.25rem;
  color: #0085B2;
  letter-spacing: 0.2em;
}
@media screen and (min-width: 990px) {
  #mainview #pagettl h1 span {
    margin-top: 1rem;
  }
}
@media screen and (max-width: 989px) {
  #mainview #pagettl h1 span {
    text-align: center;
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
}

/*---------------------------------------------
	メインイメージ
---------------------------------------------*/
#about #mainphoto {
  background-image: url("../img/common/main_img/main_img_about.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #about #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#plabor #mainphoto {
  background-image: url("../img/common/main_img/main_img_plabor.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #plabor #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#sinsurance #mainphoto {
  background-image: url("../img/common/main_img/main_img_sinsurance.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #sinsurance #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#linsurance #mainphoto {
  background-image: url("../img/common/main_img/main_img_linsurance.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #linsurance #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#subsidy #mainphoto {
  background-image: url("../img/common//main_img/main_img_subsidy.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #subsidy #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#salary #mainphoto {
  background-image: url("../img/common//main_img/main_img_salary.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #salary #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#pension #mainphoto {
  background-image: url("../img/common//main_img/main_img_pension.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #pension #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#onemaster #mainphoto {
  background-image: url("../img/common//main_img/main_img_solo.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #onemaster #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#regulations #mainphoto {
  background-image: url("../img/common//main_img/main_img_rule.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #regulations #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#union #mainphoto {
  background-image: url("../img/common//main_img/main_img_group.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #union #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#staff #mainphoto {
  background-image: url("../img/common//main_img/main_img_staff.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #staff #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#service #mainphoto {
  background-image: url("../img/common//main_img/main_img_service.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #service #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#training #mainphoto {
  background-image: url("../img/common//main_img/main_img_training.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #training #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#support #mainphoto {
  background-image: url("../img/common//main_img/main_img_support.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #support #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#order #mainphoto {
  background-image: url("../img/common//main_img/main_img_order.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #order #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#howto #mainphoto {
  background-image: url("../img/common//main_img/main_img_howto.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #howto #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#info #mainphoto,
#allpost #mainphoto {
  background-image: url("../img/common//main_img/main_img_info.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #info #mainphoto,
  #allpost #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#contactus #mainphoto,
#seminar_form #mainphoto {
  background-image: url("../img/common//main_img/main_img_contactus.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #contactus #mainphoto,
  #seminar_form #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#access #mainphoto {
  background-image: url("../img/common//main_img/main_img_access.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #access #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#consulting #mainphoto {
  background-image: url("../img/common//main_img/main_img_consulting.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #consulting #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#dcsupport #mainphoto {
  background-image: url("../img/common//main_img/main_img_dcsupport.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #dcsupport #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#dispute #mainphoto {
  background-image: url("../img/common//main_img/main_img_dispute.jpg");
  background-size: cover;
}
@media screen and (max-width: 989px) {
  #dispute #mainphoto {
    background-size: contain;
    background-position: right;
    background-repeat: no-repeat;
  }
}

#index2 #mainphoto {
  display: none;
}

#index2 #breadcrumb {
  display: none;
}

/*---------------------------------------------
	フッター
---------------------------------------------*/
footer {
  background: url("../img/common/bg.png") repeat;
  padding-top: 50px;
  margin-top: 100px;
  background-repeat: no-repeat;
  background-position: bottom center;
  position: relative;
}
@media screen and (min-width: 990px) {
  footer {
    background-size: cover;
  }
}
@media screen and (max-width: 989px) {
  footer {
    background-size: 200%;
  }
}

@media screen and (min-width: 990px) {
  .footer_wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (min-width: 990px) {
  .footer_wrapper h2 img {
    width: 350px;
  }
}

.footer_wrapper #contact {
  width: 100%;
}
@media screen and (min-width: 990px) {
  .footer_wrapper #contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 989px) {
  .footer_wrapper #contact {
    margin: 20px auto;
  }
}

@media screen and (min-width: 990px) {
  .footer_wrapper #contact .tel {
    width: 60%;
  }
}

@media screen and (max-width: 989px) {
  .footer_wrapper #contact > .tel span {
    font-size: 18px;
    font-size: 1.125rem;
  }
}

@media screen and (max-width: 989px) {
  .footer_wrapper #contact > .tel a {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

@media screen and (max-width: 989px) {
  .footer_wrapper #contact > .tel p {
    font-size: 14px;
    font-size: 0.875rem;
    padding: 1em 0;
  }
}

@media screen and (min-width: 990px) {
  .footer_wrapper #contact .contactbtn {
    width: 30%;
  }
}

@media screen and (min-width: 990px) {
  .footer_wrapper #contact .btn {
    min-width: 200px;
  }
}

.footer_wrapper .attention {
  border: 1px solid #FF7373;
  color: #FF7373;
  padding: 0.5rem 1rem;
  font-weight: bold;
  font-size: 14px;
  font-size: 0.875rem;
  text-align: center;
  margin-top: 20px;
}

.googlemap iframe {
  width: 100%;
  border-radius: 20px 20px 0 0;
  margin: 30px auto 0 auto;
}
@media screen and (min-width: 990px) {
  .googlemap iframe {
    height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .googlemap iframe {
    height: 300px;
  }
}

.googlemap p {
  background-color: #2D7143;
  color: #FFFFFF;
  font-size: 22px;
  font-size: 1.375rem;
  text-align: center;
  width: 100%;
  padding: 1em 0;
  border-radius: 0 0 20px 20px;
  margin: 0;
}
@media screen and (max-width: 989px) {
  .googlemap p {
    font-size: 16px;
    font-size: 1rem;
  }
}
.googlemap p span {
  font-size: 1rem;
  margin-top: 1rem;
}

footer .flogo {
  width: 100%;
  position: relative;
  text-align: left;
}
@media screen and (max-width: 989px) {
  footer .flogo {
    text-align: center;
    min-height: 220px;
  }
}

footer .flogo img {
  width: 400px;
}
@media screen and (max-width: 989px) {
  footer .flogo img {
    width: 80%;
  }
}

footer .flogo .partner_logo {
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 989px) {
  footer .flogo .partner_logo {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    top: 8rem;
  }
}
footer .flogo .partner_logo img {
  width: 120px;
}
@media screen and (max-width: 989px) {
  footer .flogo .partner_logo img {
    width: 80px;
  }
}

@media screen and (min-width: 990px) {
  footer .sns {
    position: absolute;
    top: 3rem;
    left: 420px;
  }
}
@media screen and (max-width: 989px) {
  footer .sns {
    width: 150px;
    text-align: center;
    margin: 0 auto;
  }
}

footer .sns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  list-style: none;
}

footer .sns ul li img {
  width: 30px;
  height: 30px;
  margin-right: 0.5rem;
}

.fcontact {
  width: 100%;
  background-color: #DFE7DE;
  background-image: url("../img/common/footer_bg.png");
  background-position: top right;
  background-repeat: no-repeat;
  background-size: contain;
  text-align: center;
  padding: 2rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 2rem auto;
}
@media screen and (max-width: 989px) {
  .fcontact {
    padding-top: 10rem;
  }
}

.fcontact p {
  font-weight: bold;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 989px) {
  .fcontact p {
    margin-bottom: 1rem;
  }
}

.fcontact ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
}
@media screen and (min-width: 990px) {
  .fcontact ul {
    width: 600px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 989px) {
  .fcontact ul {
    width: 90%;
    margin: 0 auto;
  }
}

.fcontact ul li {
  width: 50%;
}
@media screen and (max-width: 989px) {
  .fcontact ul li {
    width: 100%;
    text-align: center;
  }
}

.fcontact ul li a {
  text-decoration: none;
}

@media screen and (min-width: 990px) {
  .fcontact ul li:first-child {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: bold;
    text-align: right;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1.5rem 1.5rem 1rem 1rem;
  }
}

@media screen and (min-width: 990px) {
  .fcontact ul li:first-child span {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    display: block;
  }
}

.fcontact ul li:first-child a {
  color: #000000;
  text-decoration: none;
}

.fcontact ul li:first-child p {
  display: inline;
}
@media screen and (max-width: 989px) {
  .fcontact ul li:first-child p {
    font-size: 30px;
    font-size: 1.875rem;
    margin-top: 0.5rem;
  }
}

@media screen and (max-width: 989px) {
  .fcontact ul li:first-child p span {
    font-size: 16px;
    font-size: 1rem;
    display: block;
  }
}

.fcontact ul li:first-child img {
  vertical-align: middle;
}
@media screen and (min-width: 990px) {
  .fcontact ul li:first-child img {
    width: 30px;
    height: 30px;
    margin-right: 0.5rem;
  }
}
@media screen and (max-width: 989px) {
  .fcontact ul li:first-child img {
    width: 30px;
    height: 30px;
    margin-right: 0.5rem;
    vertical-align: top;
  }
}

@media screen and (min-width: 990px) {
  .fcontact ul li:last-child img {
    width: 30px;
    height: 24px;
    margin-right: 0.5rem;
    vertical-align: middle;
  }
}
@media screen and (max-width: 989px) {
  .fcontact ul li:last-child img {
    width: 40px;
    height: 30px;
    margin-right: 0.5rem;
    vertical-align: top;
  }
}

.fcontact .btn_base {
  margin-top: 1rem;
}
@media screen and (min-width: 990px) {
  .fcontact .btn_base {
    width: 100%;
  }
}

/*---------------------------------------------
	ページトップ
---------------------------------------------*/
#pageTop {
  position: fixed;
  bottom: 4rem;
  right: 2rem;
  z-index: 999;
}

#pageTop a {
  display: block;
  padding: 1.5rem;
  border: 1px solid #2C7072;
  color: #0085B2;
  font-weight: bold;
  text-decoration: none;
  border-radius: 50%;
  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;
  position: relative;
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

#pageTop a:after {
  position: absolute;
  top: 60px;
  left: 0px;
  right: 0;
  margin: 0 auto;
  content: "";
  display: inline-block;
  font-size: 12px;
  font-size: 0.75rem;
  color: #0085B2;
  text-align: center;
}

/*---------------------------------------------
	コピーライト
---------------------------------------------*/
.copyright {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #2D7143;
  letter-spacing: 0.2em;
  font-size: 12px;
  font-size: 0.75rem;
  text-align: center;
  padding: 1rem;
  line-height: 1.5em;
  font-weight: bold;
}

/*---------------------------------------------
	グループ会社
---------------------------------------------*/
#groupbnr {
  width: 100%;
  background-color: #283330;
  padding: 1rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 2rem;
}

#groupbnr .totalbox {
  padding: 1rem;
  min-height: unset;
}

#groupbnr h2 {
  color: #FFFFFF;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #groupbnr h2 {
    font-size: 16px;
    font-size: 1rem;
    letter-spacing: 0.1em;
  }
}

#groupbnr .mark {
  text-align: center;
}

#groupbnr .mark img {
  width: 200px;
}

@media screen and (min-width: 990px) {
  #groupbnr ul li {
    width: calc((100% - 20px) / 3);
  }
}

@media screen and (max-width: 989px) {
  #groupbnr ul li {
    width: 100%;
  }
}

#zantei {
  background-color: #F7F8FA;
}

#zantei h1 {
  margin-top: 2rem;
}

@media screen and (min-width: 990px) {
  #zantei h1 img {
    width: 500px;
  }
}
@media screen and (max-width: 989px) {
  #zantei h1 img {
    width: 90%;
  }
}

@media screen and (min-width: 990px) {
  #zantei .tel img {
    width: 300px;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #zantei .tel img {
    width: 70%;
    margin-top: 4rem;
  }
}

#zantei header {
  display: none;
}

@media screen and (min-width: 990px) {
  #zantei h2.zantei {
    font-size: 2rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #zantei h2.zantei {
    font-size: 1.2rem;
    margin-top: 2rem;
  }
}

/*---------------------------------------------
	サービス紹介
---------------------------------------------*/
.serverbook {
  background-image: url("../img/common/icon_service_book.png");
  background-repeat: no-repeat;
  background-position: 3% 3%;
}
@media screen and (max-width: 989px) {
  .serverbook {
    background-size: 30%;
    background-position: 0 3%;
  }
}

.serverbook h2 {
  text-align: center;
  color: #333333;
  padding: 2rem 0;
  line-height: 1em;
}
@media screen and (max-width: 989px) {
  .serverbook h2 {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: left;
    padding: 2rem 0 2rem 8rem;
    line-height: 1.4em;
  }
}

#servicelist,
#servicelist-sub,
#servicelist-ex {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 0 0 8px #ccc;
          box-shadow: 0 0 8px #ccc;
  border-radius: 15px;
}

#servicelist-sub,
#servicelist-ex {
  margin-top: 3rem;
}
@media screen and (max-width: 989px) {
  #servicelist-sub,
  #servicelist-ex {
    margin-top: 1rem;
  }
}

#servicelist-sub .service-box {
  width: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.5rem 2.5rem;
}
@media screen and (max-width: 989px) {
  #servicelist-sub .service-box {
    width: 100%;
    padding: 1rem 1.8rem;
    border-bottom: 1px solid #ddd;
  }
}

#servicelist .service-box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #servicelist .service-box {
    width: 33.3333333333%;
    padding: 2rem 2.5rem;
  }
}
@media screen and (max-width: 989px) {
  #servicelist .service-box {
    width: 100%;
    padding: 1rem 1.8rem;
    border-bottom: 1px solid #ddd;
  }
}

#servicelist-ex .service-box {
  width: 33.3333333333%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.5rem 2.5rem;
}
@media screen and (max-width: 989px) {
  #servicelist-ex .service-box {
    width: 100%;
    padding: 1rem 1.8rem;
    border-bottom: 1px solid #ddd;
  }
}

#servicelist .service-box a,
#servicelist-sub .service-box a,
#servicelist-ex .service-box a {
  text-decoration: none;
}

#servicelist .service-box h3 img,
#servicelist-sub .service-box h3 img,
#servicelist-ex .service-box h3 img {
  width: 25px;
  vertical-align: middle;
  margin-right: 1rem;
}

#servicelist .service-box p,
#servicelist-sub .service-box p,
#servicelist-ex .service-box p {
  font-size: 16px;
  font-size: 1rem;
  padding: 0.5rem 0;
  margin: 0 auto;
}
@media screen and (max-width: 989px) {
  #servicelist .service-box p,
  #servicelist-sub .service-box p,
  #servicelist-ex .service-box p {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

#servicelist .service-box a h3,
#servicelist-sub .service-box a h3,
#servicelist-ex .service-box a h3 {
  letter-spacing: 0.1em;
}
@media screen and (max-width: 989px) {
  #servicelist .service-box a h3,
  #servicelist-sub .service-box a h3,
  #servicelist-ex .service-box a h3 {
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0em;
  }
}

#servicelist .service-box:nth-child(1),
#servicelist .service-box:nth-child(2),
#servicelist .service-box:nth-child(3),
#servicelist-sub .service-box:nth-child(1),
#servicelist-sub .service-box:nth-child(2),
#servicelist-sub .service-box:nth-child(3) {
  background-color: #F5F3F0;
}

#servicelist .service-box:nth-child(1) a h3,
#servicelist .service-box:nth-child(2) a h3,
#servicelist .service-box:nth-child(3) a h3 {
  color: #2D7143;
  background-image: url("../img/common/icon_arrow_double.png");
  background-repeat: no-repeat;
  background-position: 100% 0;
}

#servicelist-sub .service-box:nth-child(1) a h3,
#servicelist-sub .service-box:nth-child(2) a h3,
#servicelist-sub .service-box:nth-child(3) a h3 {
  color: #2C7072;
  background-image: url("../img/common/icon_arrow_double_blue.png");
  background-repeat: no-repeat;
  background-position: 100% 0;
}
@media screen and (max-width: 989px) {
  #servicelist-sub .service-box:nth-child(1) a h3,
  #servicelist-sub .service-box:nth-child(2) a h3,
  #servicelist-sub .service-box:nth-child(3) a h3 {
    text-align: left;
  }
}

#servicelist .service-box:nth-child(1) a p,
#servicelist .service-box:nth-child(2) a p,
#servicelist .service-box:nth-child(3) a p,
#servicelist-sub .service-box:nth-child(1) a p,
#servicelist-sub .service-box:nth-child(2) a p {
  color: #333333;
}

#servicelist .service-box:nth-child(4) a h3,
#servicelist .service-box:nth-child(5) a h3,
#servicelist .service-box:nth-child(6) a h3,
#servicelist-sub .service-box:nth-child(3) a h3,
#servicelist-sub .service-box:nth-child(4) a h3,
#servicelist-ex .service-box:nth-child(1) a h3,
#servicelist-ex .service-box:nth-child(2) a h3,
#servicelist-ex .service-box:nth-child(3) a h3 {
  color: #FFFFFF;
  background-image: url("../img/common/icon_arrow_double_white.png");
  background-repeat: no-repeat;
  background-position: 100% 0;
}

@media screen and (max-width: 989px) {
  #servicelist-sub .service-box:nth-child(3) a h3,
  #servicelist-sub .service-box:nth-child(4) a h3,
  #servicelist-ex .service-box:nth-child(1) a h3,
  #servicelist-ex .service-box:nth-child(2) a h3,
  #servicelist-ex .service-box:nth-child(3) a h3 {
    text-align: left;
  }
}

#servicelist .service-box:nth-child(4) a p,
#servicelist .service-box:nth-child(5) a p,
#servicelist .service-box:nth-child(6) a p,
#servicelist-sub .service-box:nth-child(3) a p,
#servicelist-sub .service-box:nth-child(4) a p,
#servicelist-ex .service-box:nth-child(1) a p,
#servicelist-ex .service-box:nth-child(2) a p,
#servicelist-ex .service-box:nth-child(3) a p {
  color: #FFFFFF;
}

#servicelist .service-box:nth-child(4),
#servicelist .service-box:nth-child(5),
#servicelist .service-box:nth-child(6) {
  background-color: #2D7143;
}

#servicelist-sub .service-box:nth-child(3),
#servicelist-sub .service-box:nth-child(4) {
  background-color: #2C7072;
}

#servicelist-ex .service-box:nth-child(1),
#servicelist-ex .service-box:nth-child(2),
#servicelist-ex .service-box:nth-child(3) {
  background-color: #85B200;
}

/* 角丸設定 */
@media screen and (min-width: 990px) {
  #servicelist .service-box:nth-child(1),
  #servicelist-sub .service-box:nth-child(1) {
    border-radius: 15px 0 0 0;
  }
  #servicelist .service-box:nth-child(3),
  #servicelist-sub .service-box:nth-child(2) {
    border-radius: 0 15px 0 0;
  }
  #servicelist .service-box:nth-child(4),
  #servicelist-sub .service-box:nth-child(3) {
    border-radius: 0 0 0 15px;
  }
  #servicelist .service-box:nth-child(6),
  #servicelist-sub .service-box:nth-child(4) {
    border-radius: 0 0 15px 0;
  }
  #servicelist-ex .service-box:nth-child(1) {
    border-radius: 15px 0 0 15px;
  }
  #servicelist-ex .service-box:nth-child(3) {
    border-radius: 0 15px 15px 0;
  }
}
@media screen and (max-width: 989px) {
  #servicelist .service-box:nth-child(1),
  #servicelist-sub .service-box:nth-child(1),
  #servicelist-ex .service-box:nth-child(1) {
    border-radius: 15px 15px 0 0;
  }
  #servicelist .service-box:nth-child(6),
  #servicelist-sub .service-box:nth-child(4),
  #servicelist-ex .service-box:nth-child(3) {
    border-radius: 0 0 15px 15px;
  }
}
/*---------------------------------------------
	ポイント
---------------------------------------------*/
#totalsupport {
  margin: 5rem auto;
}

@media screen and (min-width: 990px) {
  .index_parallax {
    min-height: 500px;
    padding-top: 10rem;
    padding-bottom: 5rem;
  }
}
@media screen and (max-width: 989px) {
  .index_parallax {
    min-height: 200px;
    padding-top: 5rem;
  }
}

#totalsupport h2 {
  text-shadow: #FFFFFF 1px 1px 0px, #FFFFFF -1px 1px 0px, #FFFFFF 1px -1px 0px, #FFFFFF -1px -1px 0px;
}

.totalbox {
  border-radius: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
@media screen and (min-width: 990px) {
  .totalbox {
    min-height: 500px;
    padding: 2rem 3rem;
    background-color: #FFFFFF;
  }
}
@media screen and (max-width: 989px) {
  .totalbox {
    min-height: 200px;
  }
}

.sr_point {
  background-color: #2D7143;
  border-radius: 15px;
}
@media screen and (min-width: 990px) {
  .sr_point {
    width: 48%;
  }
}

.tax_point {
  background-color: #2C4472;
  border-radius: 15px;
}
@media screen and (min-width: 990px) {
  .tax_point {
    width: 48%;
  }
}

.plus {
  display: block;
  background-color: #333333;
  color: #FFFFFF;
  font-weight: bold;
  font-size: 60px;
  font-size: 3.75rem;
  border-radius: 50px;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 1.2rem;
  width: 80px;
  height: 80px;
}
@media screen and (min-width: 990px) {
  .plus {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    z-index: 9999;
  }
}
@media screen and (max-width: 989px) {
  .plus {
    margin: 1rem auto;
  }
}

.sr_badge,
.tax_badge {
  display: block;
  position: absolute;
  -webkit-filter: drop-shadow(5px 5px 10px #333333);
          filter: drop-shadow(5px 5px 10px #333333);
}
@media screen and (min-width: 990px) {
  .sr_badge,
  .tax_badge {
    width: 100px;
    top: -1rem;
    left: 1.5rem;
  }
}
@media screen and (max-width: 989px) {
  .sr_badge,
  .tax_badge {
    width: 60px;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
}

.totalbox h3 {
  color: #FFFFFF;
  text-align: center;
  padding: 1.5rem 0;
  letter-spacing: 0.1rem;
}

.totalbox ul {
  background-color: #FFFFFF;
  margin: 0 auto 1rem auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0 0 10px 10px;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1rem;
}
@media screen and (min-width: 990px) {
  .totalbox ul {
    width: calc(100% - 2rem);
  }
}

.totalbox ul li {
  width: 49%;
  margin-bottom: 0.5rem;
  padding: 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  font-weight: bold;
}

.totalbox .sr_point ul li {
  background-color: #DFE7DE;
  color: #2D7143;
}

.totalbox .tax_point ul li {
  background-color: #BECCE7;
  color: #2C4472;
}

/*---------------------------------------------
	スタッフ紹介
---------------------------------------------*/
#staff .flex_wrapper .youtube {
  border-radius: 20px;
}
@media screen and (min-width: 990px) {
  #staff .flex_wrapper .youtube {
    width: 70%;
  }
}

#staff .flex_wrapper .youtube iframe {
  width: 100%;
  border-radius: 20px;
}
@media screen and (min-width: 990px) {
  #staff .flex_wrapper .youtube iframe {
    height: 580px;
  }
}
@media screen and (max-width: 989px) {
  #staff .flex_wrapper .youtube iframe {
    height: 300px;
    margin-bottom: 1rem;
  }
}

@media screen and (max-width: 989px) {
  #staff .flex_wrapper .staff {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

#staff .flex_wrapper .staff a {
  width: 48%;
  text-decoration: none;
}
@media screen and (max-width: 989px) {
  #staff .flex_wrapper .staff a {
    width: 100%;
  }
}

#staff .flex_wrapper .staff a img {
  border-radius: 15px 15px 0 0;
  vertical-align: bottom;
}

#staff .flex_wrapper .staff a h3 {
  border-radius: 0 0 15px 15px;
  background-color: #2D7143;
  text-align: center;
  color: #FFFFFF;
  padding: 1rem 0;
  letter-spacing: 0.1em;
  background-image: url("../img/common/icon_arrow_double_white.png");
  background-repeat: no-repeat;
  background-position: 95% 50%;
  text-decoration: none;
}
@media screen and (max-width: 989px) {
  #staff .flex_wrapper .staff a h3 {
    padding: 0.5rem 0;
    font-size: 16px;
    font-size: 1rem;
  }
}

#staff .flex_wrapper .staff a h3:nth-child(2) {
  margin-bottom: 1rem;
}

.index-subc {
  text-align: center;
}
.index-subc img {
  max-width: 600px;
  margin: 0 auto;
}

/*---------------------------------------------
	事業所概要
---------------------------------------------*/
.conceptblock {
  background-color: #F5F3F0;
  border-radius: 10px;
  position: relative;
}

.conceptblock h2 {
  color: #2D7143;
  font-weight: bold;
  letter-spacing: 0.4em;
  font-size: 40px;
  font-size: 2.5rem;
  display: block;
  position: absolute;
  top: -2rem;
  left: 12rem;
}
@media screen and (max-width: 989px) {
  .conceptblock h2 {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

.conceptblock.mission {
  margin: 5rem auto 7rem auto;
}
@media screen and (max-width: 989px) {
  .conceptblock.mission {
    margin: 5rem auto;
  }
}

/* MISSION */
.conceptblock.mission img {
  width: 140px;
  position: absolute;
  top: -3rem;
  left: 2rem;
}
@media screen and (max-width: 989px) {
  .conceptblock.mission img {
    width: 60px;
    top: -4rem;
    left: 1rem;
  }
}

.conceptblock.mission h2 {
  display: block;
  position: absolute;
  top: -2rem;
  left: 12rem;
}
@media screen and (max-width: 989px) {
  .conceptblock.mission h2 {
    top: -1.5rem;
    left: 6rem;
  }
}

.conceptblock.mission p {
  padding: 3rem 3rem 3rem 12rem;
}
@media screen and (max-width: 989px) {
  .conceptblock.mission p {
    padding: 3rem 2rem;
  }
}

/* VISION */
.conceptblock.vision img {
  width: 180px;
  position: absolute;
  top: -3rem;
  right: 1rem;
}
@media screen and (max-width: 989px) {
  .conceptblock.vision img {
    width: 70px;
    top: -4rem;
    left: 2rem;
  }
}

@media screen and (min-width: 990px) {
  .conceptblock.vision h2 {
    display: block;
    position: absolute;
    top: -2rem;
    left: 3rem;
  }
}
@media screen and (max-width: 989px) {
  .conceptblock.vision h2 {
    top: -1.5rem;
    left: 7rem;
  }
}

.conceptblock.vision p {
  padding: 3rem 15rem 3rem 3rem;
}
@media screen and (max-width: 989px) {
  .conceptblock.vision p {
    padding: 3rem 2rem;
  }
}

/* 特長 */
.point_img {
  width: 350px;
  display: block;
  margin: 2rem auto;
}
@media screen and (max-width: 989px) {
  .point_img {
    width: 65%;
  }
}

.pointblock {
  background-color: #F5F3F0;
  border-radius: 10px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 2rem;
}
@media screen and (min-width: 990px) {
  .pointblock {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

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

span.pointtag {
  display: block;
  position: absolute;
  top: -1rem;
  left: 2rem;
  background-color: #2D7143;
  color: #FFFFFF;
  font-size: 12px;
  font-size: 0.75rem;
  text-align: center;
  padding: 0.2rem 2rem;
  letter-spacing: 0.2em;
  z-index: 999;
}

@media screen and (min-width: 990px) {
  .pointblock div {
    width: 20%;
    text-align: right;
  }
}
@media screen and (max-width: 989px) {
  .pointblock div {
    text-align: center;
  }
}

@media screen and (min-width: 990px) {
  .pointblock p {
    width: 75%;
    padding: 2rem 1rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (max-width: 989px) {
  .pointblock p {
    padding: 0 1.5rem 2rem 1.5rem;
  }
}

.pointblock p strong {
  font-weight: bold;
  color: #2D7143;
  font-size: 20px;
  font-size: 1.25rem;
}
@media screen and (max-width: 989px) {
  .pointblock p strong {
    display: block;
    text-align: center;
  }
}

.pointblock.large .point_inner {
  width: 90%;
  margin: 10px auto;
  background-color: #FFFFFF;
  border-radius: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2em;
}
@media screen and (max-width: 989px) {
  .pointblock.large .point_inner {
    padding: 1em;
  }
}
.pointblock.large .point_inner dt {
  border-bottom: 1px solid #2D7143;
  color: #2D7143;
  font-weight: bold;
  padding: 0.5em 1em 0.5em 1em;
  margin-bottom: 0.5em;
}
.pointblock.large .point_inner ul {
  list-style: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1rem;
}
.pointblock.large .point_inner ul li {
  text-indent: -1.4em;
  padding-left: 1em;
}
@media screen and (max-width: 989px) {
  .pointblock.large .point_inner ul li {
    text-indent: -1em;
  }
}
.pointblock.large .point_inner ul li::before {
  content: "●";
  color: #2D7143;
  margin-right: 0.5em;
}
@media screen and (max-width: 989px) {
  .pointblock.large .point_inner ul li::before {
    margin-right: 0;
  }
}

.pointblock.large {
  padding-bottom: 1rem;
}

@media screen and (min-width: 990px) {
  .pointblock.large div {
    width: 10%;
    text-align: right;
  }
}
@media screen and (max-width: 989px) {
  .pointblock.large div {
    text-align: center;
  }
}

@media screen and (min-width: 990px) {
  .pointblock.large p {
    width: 85%;
    padding: 2rem 1rem 1rem 1rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
@media screen and (max-width: 989px) {
  .pointblock.large p {
    padding: 0 1.5rem 2rem 1.5rem;
  }
}

.pointblock div img.point1 {
  width: 80px;
  margin-top: 3rem;
}

.pointblock div img.point2 {
  width: 54px;
  margin-top: 2rem;
}

/*20240530追加*/
.point_inner.womens dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
@media screen and (max-width: 989px) {
  .point_inner.womens dd {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.point_inner.womens dd .womens_img {
  width: 260px;
  border-radius: 20px;
}
@media screen and (max-width: 989px) {
  .point_inner.womens dd .womens_img {
    margin: 0 auto;
  }
}

/*---------------------------------------------
	スタッフ紹介
---------------------------------------------*/
.staff_photo.kogiso {
  position: relative;
  background-image: url(../img/staff/photo_staff_01_main.jpg?date=20240719);
  background-repeat: no-repeat;
  background-position: top right;
}
@media screen and (min-width: 990px) {
  .staff_photo.kogiso {
    min-height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.kogiso {
    padding-top: 15em;
    min-height: 450px;
    background-size: 150%;
    background-position: 100% 0;
  }
}

.staff_photo.yamamoto {
  position: relative;
  background-image: url(../img/staff/photo_staff_02_main.jpg?date=20240719);
  background-repeat: no-repeat;
  background-position: top left;
}
@media screen and (min-width: 990px) {
  .staff_photo.yamamoto {
    min-height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.yamamoto {
    padding-top: 15em;
    min-height: 450px;
    background-size: 150%;
    background-position: 45% 0;
  }
}

.staff_photo.tsujimura {
  position: relative;
  background-image: url(../img/staff/photo_staff_03b_main.jpg?date=20240719);
  background-repeat: no-repeat;
  background-position: top left;
}
@media screen and (min-width: 990px) {
  .staff_photo.tsujimura {
    min-height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.tsujimura {
    padding-top: 15em;
    min-height: 450px;
    background-size: 150%;
    background-position: 0% 0;
  }
}

.staff_photo.sugiura {
  position: relative;
  background-image: url(../img/staff/photo_staff_04b_main.jpg?date=20220322);
  background-repeat: no-repeat;
  background-position: top right;
}
@media screen and (min-width: 990px) {
  .staff_photo.sugiura {
    min-height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.sugiura {
    padding-top: 15em;
    min-height: 450px;
    background-size: 150%;
    background-position: 80% 0;
  }
}

.staff_photo.hatakenaka {
  position: relative;
  background-image: url(../img/staff/photo_staff_05b_main.jpg?date=20240719);
  background-repeat: no-repeat;
  background-position: top left;
}
@media screen and (min-width: 990px) {
  .staff_photo.hatakenaka {
    min-height: 500px;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.hatakenaka {
    padding-top: 15em;
    min-height: 450px;
    background-size: 150%;
    background-position: 10% 0;
  }
}

.staff_photo.kogiso .staff_intro {
  background-color: #283330;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .staff_photo.kogiso .staff_intro {
    width: 600px;
    position: absolute;
    top: 6.5rem;
    left: 0;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.kogiso .staff_intro {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.staff_photo.yamamoto .staff_intro {
  background-color: #004848;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .staff_photo.yamamoto .staff_intro {
    width: 600px;
    position: absolute;
    top: 6.5rem;
    right: 0;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.yamamoto .staff_intro {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.staff_photo.tsujimura .staff_intro {
  background-color: #283330;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .staff_photo.tsujimura .staff_intro {
    width: 600px;
    position: absolute;
    top: 6.5rem;
    right: 0;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.tsujimura .staff_intro {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.staff_photo.sugiura .staff_intro {
  background-color: #004848;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .staff_photo.sugiura .staff_intro {
    width: 600px;
    position: absolute;
    top: 6.5rem;
    left: 0;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.sugiura .staff_intro {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.staff_photo.hatakenaka .staff_intro {
  background-color: #283330;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  .staff_photo.hatakenaka .staff_intro {
    width: 600px;
    position: absolute;
    top: 6.5rem;
    right: 0;
  }
}
@media screen and (max-width: 989px) {
  .staff_photo.hatakenaka .staff_intro {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.staff_intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 3rem 2rem;
}
@media screen and (max-width: 989px) {
  .staff_intro {
    padding: 3rem 1rem 3rem 2rem;
  }
}

.staff_intro h3 {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  text-orientation: mixed;
  vertical-align: top;
  color: #FFFFFF;
  font-family: "Yu Mincho", sans-serif;
  letter-spacing: 0.2rem;
  border-right: 1px solid #FFFFFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.5rem 0 0;
  width: 120px;
}
@media screen and (max-width: 989px) {
  .staff_intro h3 {
    width: 60px;
    padding: 0 1rem 0 0;
    line-height: normal;
  }
}

.staff_intro h3 img {
  width: 39px;
}
@media screen and (max-width: 989px) {
  .staff_intro h3 img {
    width: 25px;
  }
}

.staff_intro h3 span {
  color: #FFFFFF;
  display: block;
  font-weight: normal;
  text-align: left;
  font-size: 16px;
  font-size: 1rem;
}
@media screen and (max-width: 989px) {
  .staff_intro h3 span {
    font-size: 11px;
    font-size: 0.6875rem;
  }
}

/*
.staff_intro h3 span:last-child{
	@include media(desk){
        margin-top:-0.8rem;
    }
	@include media(sp){
        margin-top:-0.5rem;
    }
}
*/
.staff_intro p {
  width: 380px;
  color: #FFFFFF;
  font-weight: normal;
}
@media screen and (max-width: 989px) {
  .staff_intro p {
    width: calc(100% - 90px);
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

@media screen and (min-width: 990px) {
  .staffprof {
    margin-top: 2rem;
  }
}

.staffprof h4 {
  color: #FFFFFF;
  text-align: center;
  padding: 0.2rem 2rem;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (max-width: 989px) {
  .staffprof h4 {
    width: 100%;
  }
}

#staff_01 .staffprof h4,
#staff_03 .staffprof h4,
#staff_05 .staffprof h4 {
  background-color: #2D7143;
}

#staff_02 .staffprof h4,
#staff_04 .staffprof h4 {
  background-color: #2C7072;
}

@media screen and (min-width: 990px) {
  .staffprof h4.hobby {
    padding: 0.6rem 2rem 0.5rem 2rem;
  }
}

.staffprof ul {
  list-style: none;
  margin-top: 1rem;
}
@media screen and (max-width: 989px) {
  .staffprof ul {
    margin-top: 2rem;
    padding-bottom: 2rem;
  }
}

.staffprof ul li:before {
  content: "●";
  margin-right: 1rem;
}

#staff_01 .staffprof ul li:before,
#staff_03 .staffprof ul li:before,
#staff_05 .staffprof ul li:before {
  color: #2D7143;
}

#staff_02 .staffprof ul li:before,
#staff_04 .staffprof ul li:before {
  color: #2C7072;
}

@media screen and (min-width: 990px) {
  .staff_sns {
    position: absolute;
    top: 3.5rem;
    right: 0;
  }
}

.staff_sns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  list-style: none;
}

.staff_sns ul li img {
  width: 30px;
}

.staff_sns ul li {
  margin-right: 0.5rem;
}

.staffprof ul li {
  margin-bottom: 0.5rem;
  margin-left: 2em;
  text-indent: -2em;
}
@media screen and (max-width: 989px) {
  .staffprof ul li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.staffprof ul li span {
  font-weight: bold;
  margin-right: 1rem;
}

#staff_01 .staffprof ul li span,
#staff_03 .staffprof ul li span,
#staff_05 .staffprof ul li span {
  color: #2D7143;
}

#staff_02 .staffprof ul li span,
#staff_04 .staffprof ul li span {
  color: #2C7072;
}

.staffprof .flex_half p {
  padding: 1rem;
  font-size: 14px;
  font-size: 0.875rem;
}

@media screen and (min-width: 990px) {
  .staffprof h4.hobby + p {
    width: 950px;
    text-align: left;
  }
}
@media screen and (max-width: 989px) {
  .staffprof h4.hobby + p {
    padding: 1rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

.staffprof:nth-of-type(2) {
  margin-top: 2rem;
}

#staff_02,
#staff_03,
#staff_04,
#staff_05 {
  margin-top: 5rem;
}

.partner-ttl {
  background-color: #004848;
  color: #FFFFFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding: 2rem 2rem;
  font-size: 1.6rem;
  font-weight: bold;
}

.partner-block {
  background-color: #DFE7DE;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem;
  margin-bottom: 5rem;
}

/*---------------------------------------------
　業務内容
---------------------------------------------*/
.qblock .bggray h3 {
  font-size: 20px;
  font-size: 1.25rem;
}

.qblock .bggray .btn {
  margin: 0.5rem auto;
}
@media screen and (min-width: 990px) {
  .qblock .bggray .btn {
    width: 80%;
    max-width: 23rem;
  }
}

.qblock .bggray .person {
  position: absolute;
  top: -2rem;
  left: 40%;
}

.qblock .bggray .person img {
  width: 90px;
}

.qblock .bggray .person + h3 {
  margin-top: 3rem;
}

#plabor_block .flex_wrapper .flex_half .greenblock,
#support_block .greenblock,
#subsidy_block .greenblock,
#pension_block .greenblock,
#salary_block .greenblock,
#howto_block .greenblock,
#order_block .greenblock,
#regulations_block .greenblock,
#training_block .greenblock,
#onemaster_block .greenblock,
#sinsurance_block .greenblock,
#linsurance_block .greenblock,
#union_block .greenblock {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #FFFFFF;
  border-radius: 10px;
  -webkit-box-shadow: 2px 2px 4px #ccc;
          box-shadow: 2px 2px 4px #ccc;
  width: 100%;
}

#subsidy_block .greenblock,
#pension_block .greenblock,
#salary_block .greenblock,
#regulations_block .greenblock,
#onemaster_block .greenblock,
#howto_block .greenblock,
#sinsurance_block .greenblock,
#linsurance_block .greenblock,
#union_block .greenblock {
  width: 90%;
  margin: 1rem auto;
}

/*---------------------------------------------
　s01 - 人事労務顧問
---------------------------------------------*/
#plabor_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 15rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #plabor_block {
    margin-top: 10rem;
  }
}

#plabor_block .imgblock {
  position: absolute;
  top: -8rem;
  left: 5rem;
}
@media screen and (max-width: 989px) {
  #plabor_block .imgblock {
    left: 3rem;
  }
}

#plabor_block .imgblock img {
  width: 450px;
}
@media screen and (max-width: 989px) {
  #plabor_block .imgblock img {
    width: 225px;
  }
}

#plabor_block .txtblock {
  float: right;
  width: 50%;
}
@media screen and (max-width: 989px) {
  #plabor_block .txtblock {
    width: 90%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#plabor_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 3rem 0 2rem 0;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #plabor_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5em;
  }
}

#plabor_block .txtblock ul {
  list-style: none;
  margin-bottom: 3rem;
  padding-left: 1rem;
}
@media screen and (max-width: 989px) {
  #plabor_block .txtblock ul {
    margin-bottom: 1rem;
  }
}

#plabor_block .txtblock ul li {
  color: #B2B200;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  text-indent: -1rem;
  padding: 0.2rem 0;
}
@media screen and (max-width: 989px) {
  #plabor_block .txtblock ul li {
    font-size: 16px;
    font-size: 1rem;
  }
}

#plabor_block .txtblock ul li:before {
  content: "●";
  color: #B2B200;
  margin-left: 1rem;
}

#plabor_block .flex_wrapper {
  width: 95%;
}

#plabor_block .flex_wrapper .flex_half {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 989px) {
  #plabor_block .flex_wrapper .flex_half {
    width: 95%;
    margin: 1rem auto;
  }
}

/*---------------------------------------------
　就業規則の作成
---------------------------------------------*/
.borderblock {
  border: 2px solid #2D7143;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem;
  margin: 1.5rem auto;
  position: relative;
}
@media screen and (max-width: 989px) {
  .borderblock {
    padding: 2rem 1.5rem;
  }
}

.borderblock ul {
  list-style: none;
  margin-top: 1.5rem;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.borderblock h3 {
  color: #2D7143;
}

.borderblock ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}

.borderblock ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#regulations_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #regulations_block {
    margin-top: 10rem;
  }
}

#regulations_block .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #regulations_block .imgblock {
    top: -4rem;
  }
}
@media screen and (max-width: 989px) {
  #regulations_block .imgblock {
    right: 6rem;
    top: -10rem;
  }
}

#regulations_block .imgblock img {
  width: 240px;
}
@media screen and (max-width: 989px) {
  #regulations_block .imgblock img {
    width: 150px;
  }
}

#regulations_block .txtblock {
  float: left;
  width: 50%;
}
@media screen and (min-width: 990px) {
  #regulations_block .txtblock {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #regulations_block .txtblock {
    width: 85%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

.regulations02 {
  margin-top: 5rem !important;
}

#regulations_block .txtblock.flow {
  float: unset;
  width: 85%;
  padding-top: 1px;
}
@media screen and (min-width: 990px) {
  #regulations_block .txtblock.flow {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #regulations_block .txtblock.flow {
    padding-top: 2rem;
  }
}

#regulations_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0 0.5rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #regulations_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 1rem 0;
    text-align: center;
  }
}

#regulations_block .greenblock ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#regulations_block .greenblock ul li {
  margin-left: 1.5rem;
  margin-bottom: 0.4rem;
}
@media screen and (max-width: 989px) {
  #regulations_block .greenblock ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#regulations_block .greenblock ul li:before {
  content: "●";
  color: #B2B200;
  margin-right: 0.5rem;
}

#regulations_block .greenblock dl {
  border: 1px solid #2D7143;
  border-radius: 10px;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 2rem;
}
@media screen and (min-width: 990px) {
  #regulations_block .greenblock dl {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

#regulations_block .greenblock dl dt {
  font-weight: bold;
  color: #2D7143;
  margin-right: 0.5rem;
}

#regulations_block .greenblock .tac img {
  margin-left: 5rem;
  width: 38px;
}
@media screen and (max-width: 989px) {
  #regulations_block .greenblock .tac img {
    margin-left: 0rem;
  }
}

/*---------------------------------------------
　s02 - 助成金申請
---------------------------------------------*/
#subsidy_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
  padding-top: 2rem;
}

#subsidy_block h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  text-align: center;
  padding-bottom: 1rem;
}

@media screen and (max-width: 989px) {
  #subsidy_block .greenblock-inner .txt p {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

/*---------------------------------------------
　s03 - 給与計算代行
---------------------------------------------*/
@media screen and (min-width: 990px) {
  #salary_fac .item {
    width: 30%;
    margin: 1rem auto;
  }
}

#salary_fac .item p {
  margin-top: 3rem;
  color: #2D7143;
  font-weight: bold;
}

#salary_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 8rem;
  padding-bottom: 2rem;
}

#salary_block .imgblock {
  position: absolute;
  left: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #salary_block .imgblock {
    top: -7rem;
  }
}
@media screen and (max-width: 989px) {
  #salary_block .imgblock {
    left: 4rem;
    top: -8rem;
  }
}

#salary_block .imgblock img {
  width: 300px;
}
@media screen and (max-width: 989px) {
  #salary_block .imgblock img {
    width: 225px;
  }
}

#salary_block .txtblock {
  float: right;
  width: 50%;
}
@media screen and (max-width: 989px) {
  #salary_block .txtblock {
    width: 90%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#salary_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #salary_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 5rem 0 3rem 0;
  }
}

#salary_block .salary_merit {
  width: 90%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  margin: 0 auto;
}

#salary_block .salary_merit ul {
  list-style: none;
  width: 100%;
}

#salary_block .salary_merit ul li {
  background-color: #FFFFFF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 10px;
  -webkit-box-shadow: 2px 2px 4px #ccc;
          box-shadow: 2px 2px 4px #ccc;
  padding: 1rem 2rem;
  margin-bottom: 1rem;
  text-align: left;
  font-weight: bold;
}
@media screen and (max-width: 989px) {
  #salary_block .salary_merit ul li {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#salary_block .salary_merit ul li span {
  color: #2D7143;
  margin-right: 0.5rem;
}

/*---------------------------------------------
　s04 - 年金相談
---------------------------------------------*/
#pension_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 15rem;
  padding-bottom: 2rem;
}

#pension_block .imgblock {
  position: absolute;
  left: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #pension_block .imgblock {
    top: -7rem;
  }
}
@media screen and (max-width: 989px) {
  #pension_block .imgblock {
    left: 4rem;
    top: -11rem;
  }
}

#pension_block .imgblock img {
  width: 250px;
}
@media screen and (max-width: 989px) {
  #pension_block .imgblock img {
    width: 225px;
  }
}

#pension_block .txtblock {
  float: right;
  width: 50%;
}
@media screen and (max-width: 989px) {
  #pension_block .txtblock {
    width: 90%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#pension_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #pension_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 5rem 0 3rem 0;
  }
}

#pension_block .flex_wrapper {
  width: 95%;
}

#pension_block .flex_wrapper .flex_half {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 989px) {
  #pension_block .flex_wrapper .flex_half {
    width: 95%;
    margin: 1rem auto;
  }
}

/*---------------------------------------------
　ご依頼の流れ
---------------------------------------------*/
#howto_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #howto_block {
    margin-top: 10rem;
  }
}

#howto_block .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #howto_block .imgblock {
    top: -4rem;
  }
}
@media screen and (max-width: 989px) {
  #howto_block .imgblock {
    right: 2.5rem;
    top: -10rem;
  }
}

#howto_block .imgblock img {
  width: 400px;
}
@media screen and (max-width: 989px) {
  #howto_block .imgblock img {
    width: 250px;
  }
}

#howto_block .txtblock {
  float: left;
  width: 50%;
}
@media screen and (min-width: 990px) {
  #howto_block .txtblock {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock {
    width: 85%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#howto_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0 0.5rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 1rem 0;
    text-align: center;
  }
}

#howto_block .greenblock-inner p {
  width: 100%;
}
@media screen and (max-width: 989px) {
  #howto_block .greenblock-inner p {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#howto_block .arrow {
  text-align: center;
}

#howto_block .arrow img {
  width: 40px;
}

#howto_block .txtblock ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  list-style: none;
}
@media screen and (min-width: 990px) {
  #howto_block .txtblock ul {
    width: 600px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock ul {
    width: 90%;
    margin: 0 auto;
  }
}

#howto_block .txtblock ul li {
  width: 50%;
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock ul li {
    width: 100%;
    text-align: center;
  }
}

#howto_block .txtblock ul li a {
  text-decoration: none;
}

@media screen and (min-width: 990px) {
  #howto_block .txtblock ul li:first-child {
    font-size: 30px;
    font-size: 1.875rem;
    font-weight: bold;
    text-align: right;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1.5rem 1.5rem 1rem 1rem;
  }
}

@media screen and (min-width: 990px) {
  #howto_block .txtblock ul li:first-child span {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    display: block;
  }
}

#howto_block .txtblock ul li:first-child a {
  color: #000000;
  text-decoration: none;
}

#howto_block .txtblock ul li:first-child p {
  display: inline;
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock ul li:first-child p {
    font-size: 30px;
    font-size: 1.875rem;
    margin-top: 0.5rem;
  }
}

@media screen and (max-width: 989px) {
  #howto_block .txtblock ul li:first-child p span {
    font-size: 16px;
    font-size: 1rem;
    display: block;
  }
}

#howto_block .txtblock ul li:first-child img {
  vertical-align: middle;
}
@media screen and (min-width: 990px) {
  #howto_block .txtblock ul li:first-child img {
    width: 30px;
    height: 30px;
    margin-right: 0.5rem;
  }
}
@media screen and (max-width: 989px) {
  #howto_block .txtblock ul li:first-child img {
    width: 30px;
    height: 30px;
    margin-right: 0.5rem;
    vertical-align: top;
  }
}

/*---------------------------------------------
　創業支援
---------------------------------------------*/
.supportlist {
  margin: 1rem auto;
}

.supportlist h4 {
  background-color: #2D7143;
  color: #FFFFFF;
  text-align: center;
  padding: 0.5rem 1rem;
  border-radius: 50px;
}

@media screen and (min-width: 990px) {
  .supportlist .item {
    width: 32%;
  }
}

.supportlist ul {
  list-style: none;
  margin-top: 1.5rem;
  width: 95%;
  margin: 1rem auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.supportlist h3 {
  color: #2D7143;
}

.supportlist ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}

.supportlist ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#support_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 15rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #support_block {
    margin-top: 6rem;
  }
}

#support_block .imgblock {
  position: absolute;
  top: -11rem;
  left: 5rem;
}
@media screen and (max-width: 989px) {
  #support_block .imgblock {
    left: 1rem;
    top: -4rem;
  }
}

#support_block .imgblock img {
  width: 450px;
}
@media screen and (max-width: 989px) {
  #support_block .imgblock img {
    width: 225px;
  }
}

#support_block .txtblock {
  float: right;
  width: 50%;
}
@media screen and (max-width: 989px) {
  #support_block .txtblock {
    width: 90%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#support_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 3rem 0 2rem 0;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #support_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5em;
  }
}

#support_block .flex_wrapper {
  width: 95%;
}

#support_block .flex_wrapper .flex_half {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 989px) {
  #support_block .flex_wrapper .flex_half {
    width: 95%;
    margin: 1rem auto;
  }
}

/*---------------------------------------------
    一人親方の労災保険
---------------------------------------------*/
.onemaster h3 {
  margin-top: 2rem;
}

.onemaster .borderblock {
  border: 2px solid #2D7143;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0.5rem 2rem;
  margin: 1.5rem auto;
}
@media screen and (max-width: 989px) {
  .onemaster .borderblock {
    padding: 2rem 1.5rem;
  }
}

.onemaster .borderblock p {
  width: 90%;
  margin: 1rem auto;
}

#onemaster_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 7rem;
  padding-bottom: 2rem;
}

#onemaster_block .imgblock {
  position: absolute;
  top: -5rem;
  left: 5rem;
}
@media screen and (max-width: 989px) {
  #onemaster_block .imgblock {
    left: 3rem;
  }
}

#onemaster_block .imgblock img {
  width: 400px;
}
@media screen and (max-width: 989px) {
  #onemaster_block .imgblock img {
    width: 225px;
  }
}

#onemaster_block .txtblock {
  float: right;
  width: 50%;
}
@media screen and (max-width: 989px) {
  #onemaster_block .txtblock {
    width: 90%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#onemaster_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 3rem 0 2rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #onemaster_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    line-height: 1.5em;
    text-align: center;
  }
}

#onemaster_block .txtblock ul {
  list-style: none;
  margin-bottom: 3rem;
  padding-left: 1rem;
}
@media screen and (max-width: 989px) {
  #onemaster_block .txtblock ul {
    margin-bottom: 1rem;
    padding-right: 1rem;
  }
}

#onemaster_block .txtblock ul li {
  color: #B2B200;
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  text-indent: -1rem;
  padding: 0.2rem 0;
}
@media screen and (max-width: 989px) {
  #onemaster_block .txtblock ul li {
    font-size: 16px;
    font-size: 1rem;
  }
}

#onemaster_block .txtblock ul li:before {
  content: "●";
  color: #B2B200;
  margin-left: 1rem;
}

#onemaster_block .greenblock .greenblock-inner p {
  text-align: left;
  width: 100%;
  padding: 0;
}

#onemaster_block .greenblock ul {
  list-style: none;
  margin-bottom: 1rem;
}

#onemaster_block .greenblock ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (max-width: 989px) {
  #onemaster_block .greenblock ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#onemaster_block .greenblock ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#onemaster_block .greenblock dl {
  width: 100%;
  margin-bottom: 0.2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #onemaster_block .greenblock dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width: 989px) {
  #onemaster_block .greenblock dl {
    border-bottom: 1px dotted #ccc;
    padding-bottom: 0.5rem;
  }
}

#onemaster_block .greenblock dl dt {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (min-width: 990px) {
  #onemaster_block .greenblock dl dt {
    min-width: 260px;
  }
}
@media screen and (max-width: 989px) {
  #onemaster_block .greenblock dl dt {
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: bold;
  }
}

#onemaster_block .greenblock dl dt:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#onemaster_block .greenblock dl dd {
  margin-right: 0.5rem;
}
@media screen and (min-width: 990px) {
  #onemaster_block .greenblock dl dd {
    font-weight: bold;
    color: #B2B200;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

/*---------------------------------------------
   人材育成
---------------------------------------------*/
#training_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #training_block {
    margin-top: 10rem;
  }
}

#training_block .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #training_block .imgblock {
    top: -2rem;
  }
}
@media screen and (max-width: 989px) {
  #training_block .imgblock {
    right: 4.5rem;
    top: -3rem;
  }
}

#training_block .imgblock img {
  width: 350px;
}
@media screen and (max-width: 989px) {
  #training_block .imgblock img {
    width: 200px;
  }
}

#training_block .txtblock {
  float: left;
  width: 50%;
}
@media screen and (min-width: 990px) {
  #training_block .txtblock {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #training_block .txtblock {
    width: 85%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#training_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0 0.5rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #training_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    text-align: center;
  }
}

#training_block .flex_wrapper {
  width: 95%;
}

#training_block .flex_wrapper .flex_half {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 989px) {
  #training_block .flex_wrapper .flex_half {
    width: 95%;
    margin: 1rem auto;
  }
}

#training_block .greenblock-inner p {
  text-align: left;
  width: 100%;
}
@media screen and (max-width: 989px) {
  #training_block .greenblock-inner p {
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#training_block .greenblock-inner ul {
  list-style: none;
  margin: 1rem auto;
  width: 100%;
}

#training_block .greenblock-inner ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (max-width: 989px) {
  #training_block .greenblock-inner ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#training_block .greenblock-inner ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

/*---------------------------------------------
   研修・セミナー依頼
---------------------------------------------*/
.btnblock {
  width: 25%;
  margin: 1rem auto;
  text-align: center;
}
@media screen and (max-width: 989px) {
  .btnblock {
    width: 70%;
  }
}

#order_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #order_block {
    margin-top: 10rem;
  }
}

#order_block .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #order_block .imgblock {
    top: -2rem;
  }
}
@media screen and (max-width: 989px) {
  #order_block .imgblock {
    right: 4.5rem;
    top: -6rem;
  }
}

#order_block .imgblock img {
  width: 350px;
}
@media screen and (max-width: 989px) {
  #order_block .imgblock img {
    width: 200px;
  }
}

#order_block .txtblock {
  float: left;
  width: 50%;
}
@media screen and (min-width: 990px) {
  #order_block .txtblock {
    margin-left: 4rem;
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 989px) {
  #order_block .txtblock {
    width: 85%;
    float: unset;
    padding-top: 2rem;
    margin: 0 auto;
  }
}

#order_block .txtblock h3 {
  color: #2D7143;
  line-height: 1.5em;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 5rem 0 0.5rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #order_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    text-align: center;
  }
}

#order_block .flex_wrapper {
  width: 95%;
}

#order_block .flex_wrapper .flex_half {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 989px) {
  #order_block .flex_wrapper .flex_half {
    width: 95%;
    margin: 1rem auto;
  }
}

#order_block .greenblock-inner p {
  text-align: left;
  width: 100%;
}

#order_block .greenblock-inner ul {
  list-style: none;
  margin: 0 auto;
  width: 100%;
}

#order_block .greenblock-inner ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (max-width: 989px) {
  #order_block .greenblock-inner ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#order_block .greenblock-inner ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#order_block .flex_wrapper.mb1rem {
  margin-bottom: 1rem;
}

/*---------------------------------------------
　社会保険の手続き
---------------------------------------------*/
#sinsurance_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
  padding-top: 2rem;
}

#sinsurance_block h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  text-align: left;
  padding-top: 2rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 989px) {
  #sinsurance_block h3 {
    line-height: 1.2em;
    text-align: center;
  }
}

#sinsurance_block dl {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 95%;
  margin: 1rem auto;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 990px) {
  #sinsurance_block dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

#sinsurance_block dl dt {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (min-width: 990px) {
  #sinsurance_block dl dt {
    width: 69%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-image: url("../img/common/line.png");
    background-repeat: repeat-x;
    background-position: 0 60%;
    text-align: left;
  }
}
@media screen and (max-width: 989px) {
  #sinsurance_block dl dt {
    width: 100%;
    text-align: center;
  }
}

@media screen and (min-width: 990px) {
  #sinsurance_block dl dt strong {
    background-color: #FFFFFF;
    display: inline-block;
    padding: 0 1rem;
  }
  #sinsurance_block dl dt:before {
    content: "●";
    color: #2D7143;
    display: inline-block;
    padding-right: 1rem;
    background-color: #FFFFFF;
  }
  #sinsurance_block dl dd::before {
    content: "";
    display: inline-block;
    padding: 0;
    width: 12px;
    height: 9px;
    background-image: url("../img/common/icon_arrow_double.png");
    background-repeat: no-repeat;
    margin-right: 1rem;
  }
}
#sinsurance_block dl dd {
  padding: 0 2rem 0 0;
  text-align: left;
  color: #2D7143;
  font-weight: bold;
}
@media screen and (min-width: 990px) {
  #sinsurance_block dl dd {
    width: 25%;
  }
}
@media screen and (max-width: 989px) {
  #sinsurance_block dl dd {
    width: 100%;
    text-align: center;
  }
}

/*---------------------------------------------
　労働保険の手続き
---------------------------------------------*/
#linsurance_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
  padding-top: 2rem;
}
@media screen and (max-width: 989px) {
  #linsurance_block {
    margin-top: 3rem;
    padding-top: 1rem;
  }
}

#linsurance_block h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  text-align: center;
  padding-top: 2rem;
  padding-bottom: 1rem;
}
@media screen and (max-width: 989px) {
  #linsurance_block h3 {
    line-height: 1.2em;
    text-align: center;
  }
}

#linsurance_block .greenblock dl {
  width: 100%;
  margin-bottom: 0.2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #linsurance_block .greenblock dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (max-width: 989px) {
  #linsurance_block .greenblock dl {
    border-bottom: 1px dotted #ccc;
    padding-bottom: 0.5rem;
  }
}

#linsurance_block .greenblock dl dt {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
}
@media screen and (min-width: 990px) {
  #linsurance_block .greenblock dl dt {
    min-width: 260px;
  }
}
@media screen and (max-width: 989px) {
  #linsurance_block .greenblock dl dt {
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: bold;
  }
}

#linsurance_block .greenblock dl dt:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#linsurance_block .greenblock dl dd {
  margin-right: 0.5rem;
}
@media screen and (min-width: 990px) {
  #linsurance_block .greenblock dl dd {
    color: #B2B200;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#linsurance_block .greenblock .greenblock-inner p {
  text-align: left;
  width: 100%;
  padding: 0;
}

#linsurance_block .greenblock ul {
  list-style: none;
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

#linsurance_block .greenblock ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
  margin-right: 1rem;
}
@media screen and (max-width: 989px) {
  #linsurance_block .greenblock ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#linsurance_block .greenblock ul li:before {
  content: "●";
  color: #B2B200;
  display: inline-block;
  margin-left: 1.4rem;
}

#linsurance_block .greenblock-inner .hover {
  text-align: center;
  margin: 1rem auto;
}

/*---------------------------------------------
　労働保険事務組合
---------------------------------------------*/
@media screen and (min-width: 990px) {
  #union_dl dl {
    width: 90%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0.5rem auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 1rem;
  }
}

#union_dl h3 {
  margin-bottom: 2rem;
}

#union_dl dl dt {
  background-color: #2D7143;
  text-align: center;
  color: #FFFFFF;
  font-weight: bold;
  padding: 1rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #union_dl dl dt {
    border-radius: 10px 0 0 10px;
    width: 30%;
    padding: 1.5rem 0;
  }
}
@media screen and (max-width: 989px) {
  #union_dl dl dt {
    border-radius: 10px 10px 0 0;
  }
}

#union_dl dl dd {
  background-color: #F5F3F0;
  text-align: left;
  padding: 1rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #union_dl dl dd {
    border-radius: 0 10px 10px 0;
    width: 70%;
    padding: 1.5rem 2rem;
  }
}
@media screen and (max-width: 989px) {
  #union_dl dl dd {
    border-radius: 0 0 10px 10px;
    margin-bottom: 0.5rem;
    text-align: center;
  }
}

#union_ul .borderblock ul {
  margin: 1rem auto;
}
@media screen and (max-width: 989px) {
  #union_ul .borderblock ul {
    margin: 0.5rem auto;
  }
}

#union_block {
  background-color: #F5F3F0;
  border-radius: 20px;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 5rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 989px) {
  #union_block {
    margin-top: 10rem;
  }
}

#union_block .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  #union_block .imgblock {
    top: -3rem;
  }
}
@media screen and (max-width: 989px) {
  #union_block .imgblock {
    right: 5rem;
    top: -6rem;
  }
}

#union_block .imgblock img {
  width: 300px;
}
@media screen and (max-width: 989px) {
  #union_block .imgblock img {
    width: 200px;
  }
}

#union_block .txtblock {
  float: left;
  width: 55%;
}
@media screen and (min-width: 990px) {
  #union_block .txtblock {
    margin-left: 4rem;
  }
}
@media screen and (max-width: 989px) {
  #union_block .txtblock {
    width: 85%;
    float: unset;
    padding-top: 4rem;
    margin: 0 auto;
  }
}

#union_block .txtblock h3 {
  color: #2D7143;
  font-size: 30px;
  font-size: 1.875rem;
  margin: 4rem 0 0.5rem 0;
  text-align: left;
}
@media screen and (max-width: 989px) {
  #union_block .txtblock h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin: 1rem 0;
    text-align: center;
  }
}

#union_block .greenblock .greenblock-inner p {
  text-align: left;
  width: 95%;
  margin: 1rem auto;
}

#union_block .greenblock ul {
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 2rem;
}

#union_block .greenblock ul li {
  margin-left: 1.4rem;
  text-indent: -1.4rem;
  margin-right: 1rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 989px) {
  #union_block .greenblock ul li {
    text-indent: -1.5rem;
    font-size: 15px;
    font-size: 0.9375rem;
  }
}

#union_block .greenblock ul li:before {
  content: "●";
  color: #B2B200;
  margin-right: 0.5rem;
}

#union_block .greenblock.union_p p {
  padding: 1rem 2rem;
  text-align: left;
  width: 95%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#union_block h3.w80.fontgreen {
  margin: 2rem auto;
  text-align: center;
}
@media screen and (max-width: 989px) {
  #union_block h3.w80.fontgreen {
    text-align: left;
    width: 85%;
  }
}

/*---------------------------------------------
　DC導入サポート
---------------------------------------------*/
.box-ttl {
  text-align: left;
  font-weight: bold;
  color: #2D7143;
  font-size: 1.6rem;
  margin-top: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem 0 1rem 0;
}
.box-ttl span {
  font-size: 14px;
  margin-top: 15px;
}

.illust_dc .imgblock {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  .illust_dc .imgblock {
    top: -3rem;
  }
}
@media screen and (max-width: 989px) {
  .illust_dc .imgblock {
    right: 4rem !important;
    top: -8rem !important;
  }
}
.illust_dc .imgblock img {
  width: 300px !important;
}
@media screen and (max-width: 989px) {
  .illust_dc .imgblock img {
    width: 200px !important;
  }
}

.illust_harassment {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  .illust_harassment {
    top: -1rem;
  }
}
@media screen and (max-width: 989px) {
  .illust_harassment {
    right: 4rem !important;
    top: -10rem !important;
  }
}
.illust_harassment img {
  width: 250px !important;
}
@media screen and (max-width: 989px) {
  .illust_harassment img {
    width: 200px !important;
  }
}

.illust_job {
  position: absolute;
  right: 5rem;
  text-align: center;
}
@media screen and (min-width: 990px) {
  .illust_job {
    top: -3rem;
  }
}
@media screen and (max-width: 989px) {
  .illust_job {
    right: 4rem !important;
    top: -10rem !important;
  }
}
.illust_job img {
  width: 250px !important;
}
@media screen and (max-width: 989px) {
  .illust_job img {
    width: 175px !important;
  }
}

@media screen and (max-width: 989px) {
  .illust_border {
    margin-top: 10rem;
  }
}

/*---------------------------------------------
	アクセス
---------------------------------------------*/
dl.access {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0.5rem auto;
}
dl.access dt {
  background-color: #2D7143;
  color: #FFFFFF;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem 0;
  min-width: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 10px;
  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;
}
dl.access dd {
  width: calc(100% - 50px);
  padding: 0.5rem 1rem;
  text-align: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 18px;
  font-size: 1.125rem;
}
dl.access dd a {
  color: #2D7143;
  text-decoration: none;
}
dl.access dd span {
  font-size: 14px;
  font-size: 0.875rem;
}

/*---------------------------------------------
	フォーム
---------------------------------------------*/
#mailform table {
  margin: 0.5rem auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #mailform table {
    width: 80%;
  }
}
@media screen and (max-width: 989px) {
  #mailform table {
    width: 100%;
  }
}

#mailform table th {
  padding: 0.5rem 1rem;
  background: #BECCE7;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #mailform table th {
    width: 30%;
  }
}
@media screen and (max-width: 989px) {
  #mailform table th {
    width: 100%;
    display: block;
  }
}

#mailform table th span {
  color: #FF7373;
  border-radius: 10px;
  border: 1px solid #FF7373;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  margin-left: 0.5rem;
  padding: 0.2rem 0.5rem;
}

#mailform table td {
  padding: 0.5rem 1rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #mailform table td {
    width: 68%;
  }
}
@media screen and (max-width: 989px) {
  #mailform table td {
    width: 100%;
    display: block;
  }
}

#mailform select,
#mailform input[type=text],
#mailform input[type=number],
#mailform input[type=tel],
#mailform input[type=email],
#mailform textarea {
  border: 1px solid #0085B2;
  border-radius: 10px;
  padding: 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 990px) {
  #mailform select,
  #mailform input[type=text],
  #mailform input[type=number],
  #mailform input[type=tel],
  #mailform input[type=email],
  #mailform textarea {
    font-size: 16px;
    font-size: 1rem;
  }
}

#mailform select,
#mailform input[type=text],
#mailform input[type=submit],
#mailform textarea {
  width: 100%;
}

@media screen and (max-width: 989px) {
  #mailform input[type=tel],
  #mailform input[type=email] {
    width: 100%;
  }
}

.tac input[type=submit] {
  width: 300px;
  margin: 2rem auto;
  padding: 1rem 0;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.125rem;
  color: #FFFFFF;
  background: #2C7072;
  border-radius: 20px;
}

#mailform input,
#mailform textarea,
#mailform select {
  font-size: 18px;
  font-size: 1.125rem;
}

#mailform .contact-form {
  max-width: 90rem;
  padding: 6rem 5rem 2rem;
  -webkit-box-shadow: 10px 10px 50px -9px rgba(0, 0, 0, 0.2);
  box-shadow: 10px 10px 50px -9px rgba(0, 0, 0, 0.2);
  box-sizing: border-box; /*通常の記述*/
  -webkit-box-sizing: border-box; /*Google ChromeやSafariの機能を利用*/
  -moz-box-sizing: border-box; /*Firefoxの機能を利用*/
  border-radius: 8px;
  border-radius: 20px;
}
@media screen and (max-width: 989px) {
  #mailform .contact-form {
    padding: 6% 5%;
  }
}
#mailform .contact-form dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1rem;
  padding-bottom: 2.7rem;
  margin-bottom: 1.3rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-bottom: 1px solid #eee;
}
@media screen and (max-width: 989px) {
  #mailform .contact-form dl {
    padding: 1.5rem 0;
  }
}
#mailform .contact-form dl dt {
  font-size: 20px;
  font-size: 1.25rem;
  margin-bottom: 1.5rem;
  color: #01001A;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#mailform .contact-form dl dt span {
  display: inline-block;
  background: #2C7072;
  color: #FFFFFF;
  font-size: 14px;
  font-size: 0.875rem;
  padding: 0 1rem 0.2rem;
  margin-left: 1rem;
  border-radius: 4px;
}
#mailform .contact-form dl dt p {
  margin: unset !important;
}
#mailform .contact-form dl dd input,
#mailform .contact-form dl dd textarea,
#mailform .contact-form dl dd select {
  width: 100%;
  padding: 1.2rem 1.3rem 1.1rem;
  border-radius: 6px;
  border: 1px solid #CCC;
  box-sizing: border-box; /*通常の記述*/
  -webkit-box-sizing: border-box; /*Google ChromeやSafariの機能を利用*/
  -moz-box-sizing: border-box; /*Firefoxの機能を利用*/
}
#mailform .contact-form dl dd input::-webkit-input-placeholder {
  color: #CCC;
}
#mailform .contact-form dl dd input::-moz-placeholder {
  color: #CCC;
}
#mailform .contact-form dl dd input:-ms-input-placeholder {
  color: #CCC;
}
#mailform .contact-form dl dd input::-ms-input-placeholder {
  color: #CCC;
}
#mailform .contact-form dl dd input::placeholder {
  color: #CCC;
}
#mailform .contact-form .wpcf7-not-valid-tip {
  padding: 0.5rem 0 0 0.5rem;
}
#mailform .contact-form input[type=radio] {
  width: unset;
}
#mailform .contact-form label {
  cursor: pointer;
}
@media screen and (max-width: 989px) {
  #mailform .contact-form label {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
#mailform .contact-form input:checked + span {
  color: #487cff;
  font-weight: bold;
}
#mailform .contact-form .clinic-open input {
  max-width: 20rem;
}

@media screen and (max-width: 989px) {
  #mailform .wpcf7-list-item {
    padding: 0 !important;
    margin: 0 0 0 0.8rem;
  }
}

@media screen and (max-width: 989px) {
  #mailform dd.age input[type=number] {
    width: 50%;
  }
}
@media screen and (min-width: 990px) {
  #mailform dd.age input[type=number] {
    max-width: 200px !important;
  }
}

img.wpcf7-captchac {
  width: auto;
}

.form-cat label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.form-cat label > input[type=checkbox] {
  width: 20px !important;
}
@media screen and (max-width: 989px) {
  .form-cat label > input[type=checkbox] {
    width: 15px !important;
  }
}

/*---------------------------------------------
	サイドバーウィジェット検索
---------------------------------------------*/
.widget_search {
  background-color: #F5F3F0;
  border-radius: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1rem;
}
.widget_search button {
  margin-left: 1rem;
}/*# sourceMappingURL=style.css.map */