@charset "UTF-8";
/* color ////////////////////////////////////////////////////////////////////////// */
/* 相続LPカラー --------------------- */
/* mixin ////////////////////////////////////////////////////////////////////////// */
/* flex box --------------------------------------------------------------------------- */
/* レイアウト -------------------- */
/* 装飾 -------------------- */
/* base ////////////////////////////////////////////////////////////////////////// */
* {
  box-sizing: border-box; }

h1, h2, h3, h4, h5, h6, p, ol, ul, li, dl, dt, dd, section, figure {
  margin: 0px 0px 0px 0px;
  padding: 0px 0px 0px 0px;
  letter-spacing: 0.02em; }

p, ul, ol, li, dl {
  line-height: 1.6em; }

strong {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700; }

img {
  margin: 0px;
  padding: 0px;
  border: none;
  vertical-align: bottom;
  height: auto;
  max-width: 100%; }

body {
  margin: 0px;
  padding: 0px 0px 0px 0px;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  color: #222;
  font-size: 1rem;
  font-size: 18px;
  word-wrap: break-word;
  word-break: break-all;
  width: 100vw;
  overflow-x: hidden; }
  @media screen and (max-width: 499px) {
    body {
      font-size: 1rem; } }

body.fixed {
  position: fixed; }

a {
  color: cornflowerblue;
  transition: 0.1s; }

a:hover {
  text-decoration: none; }

.btn-contact {
  line-height: 1em; }
  .btn-contact a:before {
    padding: 0px 0.5em 0px 0px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0e0"; }
  .btn-contact a {
    display: block;
    margin: auto;
    padding: 1em 0px;
    text-decoration: none;
    color: #fff;
    border-color: #CEA957;
    border-style: solid;
    border-width: 2px;
    background-color: #CEA957;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    border-radius: 4px;
    box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0.1);
    max-width: 300px; }
  .btn-contact a:hover {
    box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
    -webkit-transform: translate3D(2px, 2px, 0px);
    transform: translate3D(2px, 2px, 0px); }

.btn-more {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1em; }
  .btn-more a {
    display: block;
    padding: 0.5em 1em;
    text-decoration: none;
    background-color: #005e91;
    border-color: #005e91;
    border-style: solid;
    border-width: 1px;
    color: #fff;
    border-radius: 4px; }
  .btn-more a:hover {
    background-color: #fff;
    color: #005e91; }

.btn-line a {
  display: block; }
.btn-line a:hover {
  -webkit-transform: translate3D(2px, 2px, 0px);
  transform: translate3D(2px, 2px, 0px); }

.fee {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .fee li {
    list-style: none;
    margin: 0px 5px;
    padding: 18px 0px 0px 0px;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    background-color: #ff5422;
    background-image: url("../images/saimu/bg-white-opa.svg");
    background-position: right -36px  bottom -36px;
    background-repeat: no-repeat;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 2.2em;
    box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.16);
    text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.16);
    text-align: center; }
    .fee li .price0 {
      font-size: 100px; }
    .fee li .ok {
      display: block;
      font-size: 84px;
      line-height: 70px; }
  @media screen and (max-width: 1024px) {
    .fee li {
      padding: 16px 0px 0px 0px;
      width: 160px;
      height: 160px;
      font-size: 24px;
      line-height: 2.2em;
      background-position: right -48px  bottom -48px; }
      .fee li .price0 {
        font-size: 80px; }
      .fee li .ok {
        font-size: 70px;
        line-height: 56px; } }
  @media screen and (max-width: 699px) {
    .fee li {
      margin: 0px 2px;
      padding: 12px 0px 0px 0px;
      width: 120px;
      height: 120px;
      font-size: 20px;
      line-height: 2em;
      background-position: right -60px  bottom -60px; }
      .fee li .price0 {
        font-size: 60px; }
      .fee li .ok {
        font-size: 50px;
        line-height: 40px; } }
  @media screen and (max-width: 499px) {
    .fee li {
      margin: 0px 2px;
      padding: 6px 0px 0px 0px;
      width: 94px;
      height: 94px;
      font-size: 20px;
      line-height: 1.8em;
      border-radius: 10%;
      background-position: right -70px  bottom -70px; }
      .fee li .price0 {
        font-size: 50px; }
      .fee li .ok {
        font-size: 44px;
        line-height: 38px; } }

.txt-red {
  color: #D50B05; }

/* header --------------------------------------------------------------- */
@media screen and (min-width: 1025px) {
  header {
    padding: 10px 4vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

.site-id {
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1em; }
  .site-id a {
    color: #222;
    text-decoration: none; }
  .site-id a:hover {
    color: #888; }
  @media screen and (max-width: 1024px) {
    .site-id {
      margin: 20px 2vw;
      font-size: 20px;
      line-height: 20px; } }
  @media screen and (max-width: 799px) {
    .site-id {
      text-align: left; } }
  @media screen and (max-width: 359px) {
    .site-id {
      font-size: 18px; } }

.h-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.h-info-contact-phone .phone:before {
  display: inline-block;
  vertical-align: bottom;
  padding: 0px 2px 0px 0px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f095";
  font-size: 24px;
  color: #9f6e00; }
.h-info-contact-phone .phone {
  margin: 0px;
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 1em; }
.h-info-contact-phone .att {
  margin: 0px;
  font-size: 13px; }
@media screen and (max-width: 1024px) {
  .h-info-contact-phone {
    display: none; } }

.h-info-address {
  margin: 0px 0px 0px 18px;
  text-align: left;
  font-size: 12px;
  line-height: 1.4em; }
  @media screen and (max-width: 1024px) {
    .h-info-address {
      margin: 0px;
      padding: 1em 0px;
      width: 100vw;
      background-color: #F2F7FA;
      background-color: rgba(0, 94, 145, 0.15);
      text-align: center; }
      .h-info-address p:not(:last-child) {
        display: none; } }

/* nav --------------------------------------------------------------- */
@media screen and (min-width: 800px) {
  nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0px;
    padding: 0px 4vw;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-color: #005e91; }
    nav ul {
      margin: 0px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      nav ul li {
        margin: 0px;
        list-style: none;
        line-height: 16px;
        font-size: 16px; }
      nav ul a {
        display: block;
        margin: 0px;
        padding: 1em 1em;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
        color: #fff;
        text-decoration: none;
        border-color: #005e91;
        border-style: solid;
        border-width: 2px; }
      nav ul a:hover {
        background-color: rgba(26, 52, 89, 0.2);
        color: #005e91;
        background-color: #fff; } }
@media screen and (max-width: 799px) {
  nav {
    display: none;
    position: absolute;
    z-index: 100;
    top: 0px;
    padding: 60px 0px 200px;
    background-color: #005e91;
    width: 100vw;
    height: 100vh;
    overflow: scroll; }
    nav ul {
      margin: 0px;
      text-align: left; }
      nav ul li {
        margin: 0px 0px -1px;
        list-style: none;
        line-height: 16px;
        font-size: 16px; }
      nav ul a {
        display: block;
        margin: 0px;
        padding: 1em 1em;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
        color: #fff;
        text-decoration: none;
        border-color: #ddd;
        border-style: solid;
        border-width: 1px 0px 1px; }
      nav ul a:hover {
        background-color: rgba(26, 52, 89, 0.2);
        color: #005e91;
        background-color: #fff; } }

@media screen and (min-width: 800px) {
  .h-toggle {
    display: none; } }
@media screen and (max-width: 799px) {
  .h-toggle {
    z-index: 10000;
    position: fixed;
    top: 0px;
    right: 0px;
    display: block;
    color: #fff;
    width: 60px;
    height: 60px;
    border-color: #005e91;
    border-style: solid;
    border-width: 2px;
    background-color: #005e91;
    box-sizing: border-box;
    text-decoration: none; }

  .h-toggle::before {
    display: block;
    margin: 0px auto -8px auto;
    padding: 10px 0px 0px 0px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0c9";
    font-size: 20px;
    line-height: 20px; }

  .h-toggle::after {
    content: "メニュー";
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 10px;
    line-height: 10px; }

  .h-toggle:hover {
    color: #005e91;
    background-color: #fff; }

  .h-toggle.active {
    top: 0px;
    position: fixed;
    color: #fff;
    background-color: #999;
    transition: 0.2s;
    border-color: #999; }

  .h-toggle.active::before {
    content: ""; }

  .h-toggle.active::after {
    content: "閉じる"; }

  .h-toggle.active::hover {
    color: #999;
    background-color: #fff; } }
.h-btn-contact {
  margin: 0px;
  font-size: 16px;
  line-height: 16px; }
  .h-btn-contact a:before {
    padding: 0px 0.5em 0px 0px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0e0"; }
  .h-btn-contact a {
    display: block;
    margin: 0px;
    padding: 1em 2em;
    text-decoration: none;
    color: #fff;
    border-color: #CEA957;
    border-style: solid;
    border-width: 2px;
    background-color: #CEA957;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700; }
  .h-btn-contact a:hover {
    color: #CEA957;
    background-color: #fff; }
  @media screen and (max-width: 799px) {
    .h-btn-contact {
      margin: 2em auto;
      max-width: 300px; } }

/* footer contact --------------------------------------------------------------- */
.f-contact-wrap {
  padding: 4vw 8vw 4vw;
  background-color: rgba(159, 110, 0, 0.15); }
  @media screen and (max-width: 799px) {
    .f-contact-wrap {
      padding: 4vw 4vw 4vw; } }
  @media screen and (max-width: 499px) {
    .f-contact-wrap {
      padding: 2em 2vw 0vw; } }

.f-contact-header {
  margin: 0px 0px 1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  .f-contact-header h2 {
    margin: 1em 1em 1em 0px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 28px;
    font-weight: normal; }
  @media screen and (max-width: 799px) {
    .f-contact-header {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; }
      .f-contact-header h2 {
        margin: 0em 0em 1em 0px;
        font-size: 20px; } }

.f-contact-txt {
  text-align: justify;
  font-size: 14px; }
  @media screen and (max-width: 499px) {
    .f-contact-txt br {
      display: none; } }

.f-contact-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .f-contact-box li {
    list-style: none;
    padding: 1em;
    width: 49%;
    background-color: #fff; }
    .f-contact-box li h3 {
      margin: 0px 0px 1em;
      font-size: 16px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700; }
    .f-contact-box li .phone:before {
      display: inline-block;
      vertical-align: bottom;
      padding: 0px 2px 0px 0px;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f095";
      font-size: 24px;
      color: #9f6e00; }
    .f-contact-box li .phone {
      margin: 0px;
      font-family: 'Noto Serif JP', serif;
      font-weight: 400;
      font-size: 32px;
      line-height: 1em; }
    .f-contact-box li .att {
      margin: 1em 0px 0px;
      font-size: 13px; }
  @media screen and (max-width: 799px) {
    .f-contact-box li {
      margin: 0px auto 2vw;
      width: 100%; } }

/* footer --------------------------------------------------------------- */
footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0px auto 0px; }

.f-info {
  padding: 4vw;
  width: 50%; }
  @media screen and (max-width: 1024px) {
    .f-info {
      order: 2;
      padding: 4vw;
      width: 100%; } }
  @media screen and (max-width: 499px) {
    .f-info {
      padding: 2em 4vw; } }

.f-info-address {
  margin: 0px 0px 2em;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  text-align: left; }
  .f-info-address h2 {
    margin: 0px 0em 1em 0px;
    font-size: 16px;
    line-height: 1.0em; }
  .f-info-address p {
    margin: 0px 0px 1em;
    font-size: 14px;
    line-height: 1.4em; }
  .f-info-address dl {
    margin: 0px 0px 4px;
    font-size: 14px;
    line-height: 1.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-color: rgba(0, 0, 0, 0.2);
    border-style: solid;
    border-width: 0px 0px; }
  .f-info-address dl:last-child {
    border-width: 0px 0px 0px 0px; }
  .f-info-address dt {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    text-align: center;
    padding: 4px;
    width: 5em;
    background-color: #eee; }
  .f-info-address dd {
    padding: 4px; }
    .f-info-address dd li {
      list-style: none; }
  @media screen and (max-width: 499px) {
    .f-info-address p span {
      display: block; } }

@media screen and (max-width: 1024px) {
  .f-shoshi-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }

.f-shoshi {
  margin: 0px 2em 1em 0px;
  font-size: 14px;
  text-align: left; }
  @media screen and (max-width: 499px) {
    .f-shoshi {
      margin: 0px 0em 1em 0px; } }

.f-map {
  width: 50%; }
  .f-map iframe {
    margin: 0px;
    width: 100%;
    height: 100%; }
  @media screen and (max-width: 1024px) {
    .f-map {
      order: 1;
      width: 100%;
      height: 400px; } }

.f-menu-wrap {
  margin: 0px auto 1px;
  background-color: #f0f0f0;
  padding: 4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: left; }
  .f-menu-wrap ul {
    margin: 0px;
    font-size: 14px;
    line-height: 1em;
    text-align: left; }
  .f-menu-wrap li {
    list-style: none; }
  @media screen and (max-width: 1199px) {
    .f-menu-wrap {
      margin: 0em auto 1px; } }

.f-menu-box {
  padding: 1em; }
  @media screen and (max-width: 499px) {
    .f-menu-box {
      padding: 0.5em 0px; } }

.f-menu li {
  border-color: #ccc;
  border-style: solid;
  border-width: 0px 0px 0px; }
.f-menu a:before {
  content: "・"; }
.f-menu a {
  display: block;
  padding: 0.5em;
  text-decoration: none;
  color: #222; }
.f-menu a:hover {
  color: #888; }

.f-menu-box-title {
  padding: 0.5em;
  font-size: 14px;
  line-height: 1em;
  text-align: left;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700; }

.f-menu-sv {
  max-width: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .f-menu-sv li {
    margin: 0.5%;
    width: 32%;
    border-color: #ccc;
    border-style: solid;
    border-width: 0px 0px 0px; }
  .f-menu-sv a:before {
    content: ""; }
  .f-menu-sv a {
    display: block;
    padding: 0.5em;
    text-decoration: none;
    color: #222;
    background-color: #fff;
    border-radius: 4px; }
  .f-menu-sv a:hover {
    color: #888; }
  @media screen and (max-width: 799px) {
    .f-menu-sv li {
      margin: 0.5%;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      width: 49%; } }

.copy {
  margin: 3em auto;
  font-size: 12px; }
  @media screen and (max-width: 1024px) {
    .copy {
      margin: 3em auto 100px; } }

.pagetop-btn {
  position: fixed;
  right: 2vw;
  bottom: 2vw;
  width: 48px;
  height: 48px;
  color: #222;
  line-height: 48px;
  font-size: 24px; }
  @media screen and (max-width: 1024px) {
    .pagetop-btn {
      right: 10px;
      bottom: 70px; } }
  @media screen and (max-width: 499px) {
    .pagetop-btn {
      right: 10px; } }

.pagetop-btn:hover {
  color: #888; }

@media screen and (min-width: 1025px) {
  .f-contact-fixed {
    display: none; } }
@media screen and (max-width: 1024px) {
  .f-contact-fixed {
    position: fixed;
    z-index: 200;
    bottom: 0px;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
    box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, 0.1); }
    .f-contact-fixed li {
      list-style: none; }
    .f-contact-fixed li:first-child {
      padding: 10px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .f-contact-fixed li:first-child .phone:before {
        display: inline-block;
        vertical-align: bottom;
        padding: 0px 2px 0px 0px;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f095";
        font-size: 20px;
        color: #9f6e00; }
      .f-contact-fixed li:first-child .phone {
        margin: 0px;
        font-family: 'Noto Serif JP', serif;
        font-weight: 400;
        font-size: 24px;
        line-height: 30px; }
      .f-contact-fixed li:first-child .att {
        margin: 0px 0px 0px 10px;
        font-size: 13px; }
    .f-contact-fixed li:nth-child(2) {
      display: none; }
    .f-contact-fixed li:nth-child(3) {
      font-size: 16px;
      line-height: 46px; }
      .f-contact-fixed li:nth-child(3) a:before {
        padding: 0px 0.5em 0px 0px;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f0e0"; }
      .f-contact-fixed li:nth-child(3) a {
        display: block;
        margin: 0px;
        padding: 0em 2em;
        text-decoration: none;
        color: #fff;
        border-color: #CEA957;
        border-style: solid;
        border-width: 2px;
        background-color: #CEA957;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700; }
      .f-contact-fixed li:nth-child(3) a:hover {
        color: #CEA957;
        background-color: #fff; } }
@media screen and (max-width: 499px) {
  .f-contact-fixed li:first-child {
    display: none; }
  .f-contact-fixed li:nth-child(2) {
    width: 45vw;
    display: inherit;
    font-size: 15px;
    line-height: 46px; }
    .f-contact-fixed li:nth-child(2) a:before {
      padding: 0px 0.2em 0px 0px;
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      content: "\f095"; }
    .f-contact-fixed li:nth-child(2) a {
      display: block;
      margin: 0px;
      padding: 0em 0em;
      text-decoration: none;
      color: #fff;
      border-color: #005e91;
      border-style: solid;
      border-width: 2px;
      background-color: #005e91;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      width: 100%; }
    .f-contact-fixed li:nth-child(2) a:hover {
      color: #005e91;
      background-color: #fff; }
  .f-contact-fixed li:nth-child(3) {
    width: 55vw;
    font-size: 15px; }
    .f-contact-fixed li:nth-child(3) a:before {
      padding: 0px 0.2em 0px 0px; }
    .f-contact-fixed li:nth-child(3) a {
      padding: 0em 0em;
      width: 100%; } }

.f-info-contact-phone {
  padding: 8px 15px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  /*figure {
      height: 24px;
      img {
          width:auto;
          height: 100%;
      }
  }*/ }
  .f-info-contact-phone p.phone {
    margin: 2px 0px 0px 0px;
    font-size: 24px;
    line-height: 1em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700; }
    .f-info-contact-phone p.phone i {
      padding: 0px 4px 0px 0px;
      font-size: 20px; }
    .f-info-contact-phone p.phone span {
      display: inline-block;
      margin: 0px 0px 0px 0.5em;
      font-size: 12px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 400; }
  @media screen and (max-width: 599px) {
    .f-info-contact-phone {
      display: none; } }

@media screen and (min-width: 600px) {
  .f-btn-tel {
    display: none; } }
@media screen and (max-width: 599px) {
  .f-btn-tel {
    border-color: #eee;
    border-style: solid;
    border-width: 0px 1px 0px 0px; }
    .f-btn-tel a {
      display: block;
      padding: 0px 10px 0px;
      height: 50px;
      text-decoration: none;
      color: #fff;
      border-color: #4AA34A;
      border-style: solid;
      border-width: 2px;
      background-color: #4AA34A;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700; }
      .f-btn-tel a figure {
        margin: auto;
        padding: 0px; }
        .f-btn-tel a figure img {
          margin: auto;
          padding: 1px 0px 0px 0px;
          width: auto;
          height: 22px; }
      .f-btn-tel a p {
        margin: 5px 0px 0px;
        font-size: 11px;
        line-height: 1em; }
    .f-btn-tel a:hover {
      background-color: #fff;
      color: #4AA34A; } }

.f-btn-line {
  padding: 2px; }
  .f-btn-line figure {
    height: 46px; }
    .f-btn-line figure img {
      width: 46px;
      height: 46px; }
  .f-btn-line a:hover {
    opacity: 0.8; }

.f-btn-contact a:before {
  display: block;
  padding: 4px 0em 2px 0px;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0e0";
  font-size: 20px;
  line-height: 24px; }
.f-btn-contact a {
  display: block;
  padding: 0px 10px 0px;
  height: 50px;
  text-decoration: none;
  color: #fff;
  border-color: #FF8822;
  border-style: solid;
  border-width: 2px;
  background-color: #FF8822;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 11px;
  line-height: 1em; }
.f-btn-contact a:hover {
  background-color: #fff;
  color: #FF8822; }

/* home ////////////////////////////////////////////////////////////////////////// */
/* home １段目 --------------------------------------------------------------- */
@media screen and (min-width: 1025px) {
  .home1-sp {
    display: none; } }
@media screen and (max-width: 1024px) {
  .home1-sp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #f2f7fa; }
    .home1-sp li:first-child figure {
      margin: 0px 0px 0px auto; }
    .home1-sp li {
      list-style: none;
      width: 50%; }
      .home1-sp li figure {
        width: 100%;
        max-width: 300px; }
        .home1-sp li figure img {
          width: 100%;
          height: auto; } }

@media screen and (min-width: 1025px) {
  .home1 {
    padding: 12vw 8vw;
    background-color: #f2f7fa;
    background-image: url("../images/himawari/yamamoto01.png");
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 40vw;
    text-align: left; }
    .home1 h2 {
      margin: 0px 0px 2em;
      font-size: 28px;
      font-family: 'Noto Serif JP', serif;
      font-weight: 400;
      font-weight: normal; }
      .home1 h2 br.sp-only {
        display: none; }
      .home1 h2 span {
        font-size: 32px;
        color: #9f6e00; }
    .home1 ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
    .home1 li:first-child {
      padding: 50px 0px 0px 0px;
      line-height: 30px; }
      .home1 li:first-child span {
        display: block; }
    .home1 li {
      list-style: none;
      margin: 0px 10px 0px 0px;
      text-align: center;
      width: 160px;
      height: 160px;
      background-color: rgba(0, 94, 145, 0.9);
      color: #fff;
      line-height: 160px;
      font-size: 24px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      border: solid 1px rgba(255, 255, 255, 0.4);
      outline: solid 3px rgba(0, 94, 145, 0.9);
      outline-offset: 0px; } }
@media screen and (max-width: 1024px) {
  .home1 {
    position: relative;
    z-index: 1;
    margin: -140px auto 0px;
    padding: 100px 0px 0px;
    background: #005e91;
    background: linear-gradient(0deg, #005e91 0%, #005e91 60%, rgba(0, 94, 145, 0) 100%);
    color: #fff; }
    .home1 h2 {
      margin: 0px 0em 1.5em;
      font-size: 20px;
      font-family: 'Noto Serif JP', serif;
      font-weight: 400;
      font-weight: normal; }
      .home1 h2 span {
        font-size: 24px;
        color: #F4E3BE; }
    .home1 ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
    .home1 li {
      list-style: none;
      margin: 0px 0px 0px 0px;
      padding: 1em 0px;
      text-align: center;
      width: 50%;
      background-color: rgba(255, 255, 255, 0.1);
      color: #fff;
      border-color: #eee;
      border-style: solid;
      border-width: 1px 1px 1px 1px;
      font-family: 'Noto Sans JP', sans-serif;
      font-weight: 700;
      font-size: 16px; }
      .home1 li span:before {
        content: "・"; }
    .home1 li:nth-child(odd) {
      border-width: 1px 0px 0px 0px; }
    .home1 li:nth-child(even) {
      border-width: 1px 0px 0px 1px; } }
@media screen and (max-width: 499px) {
  .home1 h2 {
    font-size: 18px; }
    .home1 h2 br.sp-only {
      display: block; }
    .home1 h2 span.himawari {
      font-size: 20px; } }

/* home ２段目 --------------------------------------------------------------- */
@media screen and (min-width: 1025px) {
  .home2 {
    padding: 0vw 8vw;
    background-image: url("../images/himawari/sahoda01.png");
    background-position: right;
    background-repeat: no-repeat;
    background-size: 40vw;
    text-align: left; } }

.home2-cont {
  padding: 10vw 0px; }
  .home2-cont h2 {
    margin: 0px 0px 1em;
    font-size: 28px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal;
    color: #9f6e00; }
    .home2-cont h2 br {
      display: none; }
  .home2-cont h3 {
    margin: 0px 0px 2em;
    font-size: 24px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal;
    color: #005e91; }
  .home2-cont p {
    margin: 0px 0px 1.5em;
    font-size: 16px;
    max-width: 55vw;
    text-align: justify; }
  @media screen and (max-width: 1280px) {
    .home2-cont {
      padding: 6vw 0px; } }
  @media screen and (max-width: 1024px) {
    .home2-cont {
      padding: 6vw; }
      .home2-cont p {
        max-width: inherit; } }
  @media screen and (max-width: 799px) {
    .home2-cont {
      padding: 2em 4vw; }
      .home2-cont h2 {
        margin: 0px -2vw 1em;
        font-size: 20px; }
        .home2-cont h2 br {
          display: block; }
      .home2-cont h3 {
        margin: 0px 0vw 2em;
        font-size: 18px; } }

/* home ３段目 --------------------------------------------------------------- */
.home3 {
  padding: 8vw;
  background-color: rgba(159, 110, 0, 0.15); }
  .home3 h2 {
    margin: 0px;
    font-size: 24px;
    line-height: 1.6em;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal; }
  .home3 h3 {
    margin: 0px 0px 1em;
    font-size: 24px;
    line-height: 1.6em;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal; }
    .home3 h3 span {
      color: #9f6e00;
      font-size: 42px; }
  .home3 ul {
    margin: 50px auto 0px;
    max-width: 1100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .home3 li {
    list-style: none;
    padding: 20px;
    width: 32%;
    background-color: #fff; }
    .home3 li .home3-icon {
      margin: -50px auto 20px;
      background-color: #005e91;
      width: 80px;
      height: 80px;
      border-radius: 50%; }
      .home3 li .home3-icon i {
        font-size: 32px;
        color: #fff;
        line-height: 80px; }
    .home3 li h4 {
      margin: 0px 0px 1em;
      text-align: left;
      font-size: 18px;
      color: #9f6e00;
      font-weight: normal; }
    .home3 li p {
      margin: 0px 0px 1.5em;
      text-align: justify;
      font-size: 15px; }
  @media screen and (max-width: 1024px) {
    .home3 ul {
      margin: 0px auto; }
    .home3 li {
      margin: 0px 0px 1em;
      width: 100%;
      text-align: left; }
      .home3 li .home3-box-head {
        margin: 0px 0px 1em;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
      .home3 li .home3-icon {
        -ms-flex-negative: 0;
        flex-shrink: 0;
        margin: 0px 10px 0px 0px;
        text-align: center;
        width: 60px;
        height: 60px; }
        .home3 li .home3-icon i {
          line-height: 60px;
          font-size: 24px; }
      .home3 li h4 {
        margin: 0px;
        font-size: 16px;
        line-height: 1.4em; } }
  @media screen and (max-width: 499px) {
    .home3 {
      padding: 2em 4vw; }
      .home3 h2 {
        font-size: 18px; }
      .home3 h3 {
        font-size: 18px; }
        .home3 h3 span {
          font-size: 30px; }
      .home3 li {
        margin: 0px 0px 8px;
        padding: 1em; } }

/* home ４段目 --------------------------------------------------------------- */
.home4 {
  padding: 6vw 0px 8vw; }
  .home4 h2 {
    margin: 0px 0px 1em;
    font-size: 28px;
    line-height: 1.6em;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal; }

.sv-box-wrap {
  margin: auto;
  max-width: 1160px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (max-width: 1024px) {
    .sv-box-wrap {
      margin: 0px 1em; } }
  @media screen and (max-width: 799px) {
    .sv-box-wrap {
      margin: 0px 10px; } }

.sv-box {
  list-style: none;
  width: 33.33333%;
  /* 未対応ブラウザ用フォールバック */
  width: -webkit-calc(100% / 3);
  width: calc(100% / 3);
  text-align: left; }
  .sv-box a {
    display: block;
    padding: 1.5em;
    text-decoration: none;
    color: #222; }
    .sv-box a .btn-more2 {
      padding: 0.5em 1em;
      color: #fff;
      font-size: 14px;
      line-height: 1em;
      background-color: #005e91;
      border-color: #005e91;
      border-style: solid;
      border-width: 1px;
      border-radius: 4px; }
  .sv-box a:hover {
    background-color: rgba(0, 94, 145, 0.1);
    color: #888; }
    .sv-box a:hover .btn-more2 {
      background-color: #fff;
      color: #005e91; }
  .sv-box figure {
    width: 100%; }
    .sv-box figure img {
      width: 100%;
      height: auto; }
  @media screen and (max-width: 1024px) {
    .sv-box {
      width: 50%; } }
  @media screen and (max-width: 799px) {
    .sv-box {
      margin: 0px 0px 0px;
      width: 100%;
      border-color: #ddd;
      border-style: solid;
      border-width: 0px 0px 1px; }
      .sv-box a {
        padding: 10px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .sv-box a .btn-more2 {
          display: none; }
      .sv-box figure {
        margin: 0px 10px 0px 0px;
        -ms-flex-negative: 0;
        flex-shrink: 0;
        width: 100px; }
        .sv-box figure img {
          height: 100px;
          object-fit: cover; } }

.sv-box-headline {
  margin: 12px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .sv-box-headline h3 {
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal;
    color: #005e91;
    font-size: 20px; }
  @media screen and (min-width: 800px) {
    .sv-box-headline {
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; } }
  @media screen and (max-width: 799px) {
    .sv-box-headline {
      margin: 0px 0px 1em; }
      .sv-box-headline h3 {
        margin: 0px 0.5em 0px 0px;
        font-size: 18px;
        font-family: 'Noto Sans JP', sans-serif;
        font-weight: 700;
        font-weight: bold; }
      .sv-box-headline h3:before {
        padding: 0px 6px 0px 0px;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        content: "\f138"; } }

.sv-box-description p {
  font-size: 14px;
  text-align: left; }

/* home ５段目 --------------------------------------------------------------- */
.home5-img {
  width: 30vw; }
  .home5-img img {
    width: 100%;
    height: auto; }
  @media screen and (max-width: 799px) {
    .home5-img {
      margin: auto;
      width: 100%;
      max-width: 500px; }
      .home5-img img {
        height: 200px;
        object-fit: cover; } }
  @media screen and (max-width: 499px) {
    .home5-img img {
      height: 180px; } }

.home5 {
  margin: -15vw 0px 0px 25vw;
  padding: 6vw 10vw;
  background-color: rgba(0, 94, 145, 0.1);
  text-align: justify; }
  .home5 h2 {
    margin: 0px 0px 0.5em;
    font-size: 24px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal;
    color: #9f6e00; }
    .home5 h2 br {
      display: none; }
  .home5 h3 {
    margin: 0px 0px 2em;
    font-size: 28px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-weight: normal;
    color: #005e91; }
  .home5 p {
    margin: 0px 0px 1.5em;
    font-size: 16px; }
  @media screen and (max-width: 799px) {
    .home5 {
      margin: -12vw 0px 0px 0vw;
      padding: 16vw 6vw 8vw; }
      .home5 h2 {
        margin: 0px 0px 0em;
        font-size: 18px;
        text-align: center; }
      .home5 h3 {
        margin: 0px 0px 1em;
        font-size: 24px;
        text-align: center; } }

/* 各ページ共通 ///////////////////////////////////////////////////////// */
.breadcrumb {
  padding: 1em 4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 12px;
  background-color: #f6f6f6; }
  .breadcrumb li {
    list-style: none;
    text-align: left;
    line-height: 1.2em;
    color: #888; }
  .breadcrumb li:after {
    padding: 0px 0.5em;
    content: "/"; }
  .breadcrumb li:last-child:after {
    padding: 0px;
    content: ""; }
  @media screen and (min-width: 800px) {
    .breadcrumb {
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; } }
  @media screen and (max-width: 799px) {
    .breadcrumb {
      border-color: rgba(0, 94, 145, 0.2);
      border-style: solid;
      border-width: 0px 0px; } }

.page-title {
  margin: 2em auto;
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  font-size: 28px;
  line-height: 1.4em; }
  @media screen and (max-width: 799px) {
    .page-title {
      font-size: 20px; } }

.page-title:after {
  display: block;
  margin: 1em auto;
  height: 4px;
  width: 80px;
  content: "";
  background-color: #CEA957; }
  @media screen and (max-width: 799px) {
    .page-title:after {
      width: 60px; } }

/* 各種サービス ///////////////////////////////////////////////////////// */
.page-body {
  margin: auto;
  padding: 0vw 4vw 8vw;
  max-width: 1000px;
  text-align: justify; }
  .page-body .eyecatch {
    margin: auto auto 2em;
    text-align: center; }
    .page-body .eyecatch img {
      margin: auto; }
  .page-body h2 {
    margin: 0px 0px 1em;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    font-size: 20px; }
  .page-body h3 {
    margin: 0px 0px 1em;
    padding: 6px 6px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 18px;
    background-color: rgba(0, 94, 145, 0.8);
    border-color: #005e91;
    border-style: solid;
    border-width: 0px;
    color: #fff; }
  .page-body p {
    margin: 0px 0px 1.5em;
    font-size: 16px; }
  .page-body p:last-child {
    margin: 0px; }
  .page-body ul, .page-body ol {
    margin: 0px 0px 1.5em 1em;
    font-size: 16px; }
  .page-body ul:last-child,
  .page-body ol:last-child {
    margin: 0px 0px 0em 1em; }
  @media screen and (max-width: 1024px) {
    .page-body {
      padding: 0vw 4vw 12vw; } }

.service-cont {
  margin: 3em 0px; }

.service-needs {
  margin: 2em auto;
  padding: 2em;
  background-color: rgba(0, 94, 145, 0.15); }

/* 問い合わせ ///////////////////////////////////////////////////////// */
.contact-intro {
  margin: auto;
  padding: 0vw 4vw 2em;
  max-width: 1000px;
  text-align: justify; }
  .contact-intro p {
    margin: 0px 0px 1.5em;
    font-size: 16px; }

.contact-form {
  margin: auto;
  padding: 0em 4vw 2em;
  max-width: 1000px; }
  .contact-form dl {
    margin: auto auto -1px;
    padding: 1px 0px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-align: left;
    border-color: #ccc;
    border-style: solid;
    border-width: 1px 0px;
    font-size: 16px; }
    .contact-form dl dt:before {
      content: "任意";
      display: inline-block;
      margin: 0px 8px 0px 8px;
      padding: 0px 4px;
      background-color: #ddd;
      color: #444;
      border-radius: 3px;
      font-size: 12px; }
    .contact-form dl dt {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      padding: 0.6em 0.5em;
      width: 14em;
      font-size: 14px; }
    .contact-form dl dd {
      padding: 0.7em 0.5em 1em;
      width: 100%; }
      .contact-form dl dd .att {
        margin: 0px 0px 0.5em 0px;
        font-size: 14px;
        line-height: 1.5em;
        color: cadetblue; }
      .contact-form dl dd input[type="text"] {
        width: 100%;
        padding: 0.8em;
        border-color: #ddd;
        border-style: solid;
        border-width: 1px;
        background-color: #f6f6f6; }
      .contact-form dl dd input[type="text"].pref {
        margin: 0.3em 0px 0px 0px;
        width: 10em; }
      .contact-form dl dd input[type="tel"].zip {
        margin: 0.3em 0px 0px 0px;
        padding: 0.8em;
        border-color: #ddd;
        border-style: solid;
        border-width: 1px;
        background-color: #f6f6f6;
        width: 6em; }
      .contact-form dl dd input[type="tel"].zip1 {
        margin: 0.3em 0px 0px 0px;
        padding: 0.8em;
        border-color: #ddd;
        border-style: solid;
        border-width: 1px;
        background-color: #f6f6f6;
        width: 8em; }
      .contact-form dl dd textarea {
        width: 100%;
        height: 20em;
        padding: 0.8em;
        border-color: #ddd;
        border-style: solid;
        border-width: 1px;
        background-color: #f6f6f6; }
  .contact-form dl.must dt:before {
    content: "必須";
    display: inline-block;
    margin: 0px 8px 0px 8px;
    padding: 0px 4px;
    background-color: red;
    color: #fff;
    border-radius: 3px;
    font-size: 12px; }
  .contact-form dl.must dt span {
    display: inline-block;
    margin: 0px 8px 0px 0px;
    padding: 0px 4px;
    background-color: red;
    color: #fff;
    border-radius: 3px;
    font-size: 12px; }
  .contact-form dl.must dd input[type="text"] {
    border-color: #ddd;
    background-color: #FFE9EE; }
  .contact-form dl.must dd textarea {
    border-color: #ddd;
    background-color: #FFE9EE; }
  @media screen and (max-width: 799px) {
    .contact-form dl {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; }
      .contact-form dl dt {
        width: inherit; } }

.contact-cont {
  margin: auto;
  padding: 0vw 4vw 4em;
  max-width: 1000px;
  text-align: justify; }
  .contact-cont p {
    margin: 0px 0px 1.5em;
    font-size: 16px; }
  .contact-cont h3 {
    margin: 2em 0px 1em;
    color: red;
    font-size: 16px; }
  .contact-cont ul {
    margin: 0px 0px 1.5em 1em;
    font-size: 16px;
    text-align: left; }
  .contact-cont li {
    margin: 0px 0px 0.5em; }

.entry-submit {
  text-align: center; }
  .entry-submit .btn-submit {
    margin: 2em auto 1em; }
    .entry-submit .btn-submit input[type="submit"] {
      margin: auto;
      padding: 1em 2em;
      width: 200px;
      font-size: 16px;
      color: #fff;
      font-weight: bold;
      line-height: 1em;
      border-color: #FF8822;
      border-style: solid;
      border-width: 2px;
      background-color: #FF8822;
      border-radius: 4px; }
    .entry-submit .btn-submit input[type="submit"]:hover {
      color: #FF8822;
      background-color: #fff; }
  .entry-submit .btn-back {
    margin: 1em auto 1em; }
    .entry-submit .btn-back input[type="submit"] {
      padding: 1em 2em;
      font-size: 14px;
      line-height: 1em;
      border-color: #999;
      border-style: solid;
      border-width: 1px;
      background-color: #ccc;
      border-radius: 4px;
      color: #999; }
    .entry-submit .btn-back input[type="submit"]:hover {
      background-color: #999; }

/* 会社概要・アクセス ///////////////////////////////////////////////////////// */
.corp-info-address {
  margin: auto;
  padding: 0vw 4vw 2em;
  max-width: 1000px;
  text-align: justify;
  text-align: left; }
  .corp-info-address h2 {
    margin: 0px 0em 1em 0px;
    font-size: 16px;
    line-height: 1.0em; }
  .corp-info-address p {
    margin: 0px 0px 1em;
    font-size: 14px;
    line-height: 1.4em; }
  .corp-info-address dl {
    margin: 0px 0px 0px;
    font-size: 14px;
    line-height: 1.4em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-color: #ccc;
    border-style: solid;
    border-width: 1px 0px 0px; }
  .corp-info-address dl:last-child {
    border-width: 1px 0px 1px 0px; }
  .corp-info-address dt {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    padding: 1em 0px;
    width: 6em; }
  .corp-info-address dd {
    padding: 1em 0px; }
    .corp-info-address dd li {
      list-style: none; }
  @media screen and (max-width: 499px) {
    .corp-info-address p span {
      display: block; } }

.corp-map {
  margin: auto;
  padding: 0vw 4vw 4em;
  max-width: 1000px; }
  .corp-map iframe {
    margin: 0px;
    width: 100%;
    height: 480px; }

.corp-shoshi-wrap {
  margin: auto;
  padding: 0vw 4vw 4em;
  max-width: 1000px; }
  @media screen and (min-width: 800px) {
    .corp-shoshi-wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; } }

@media screen and (min-width: 800px) {
  .corp-shoshi {
    margin: 0px 2em;
    font-size: 14px;
    text-align: center; }
    .corp-shoshi figure {
      margin: auto auto 10px;
      max-width: 200px; }
      .corp-shoshi figure img {
        width: 100%;
        height: auto; }
    .corp-shoshi .cont {
      text-align: left; } }
@media screen and (max-width: 799px) {
  .corp-shoshi {
    margin: 0px 0px 2em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 14px; }
    .corp-shoshi figure {
      -ms-flex-negative: 0;
      flex-shrink: 0;
      margin: 0px 10px 0px 0px;
      width: 160px; }
      .corp-shoshi figure img {
        width: 100%;
        height: auto; }
    .corp-shoshi .cont {
      text-align: left; } }
@media screen and (max-width: 399px) {
  .corp-shoshi {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0px 0px 2em;
    font-size: 14px;
    text-align: center; }
    .corp-shoshi figure {
      margin: 0px 0px 1em;
      background-color: rgba(0, 94, 145, 0.1);
      text-align: center;
      width: 100%; }
      .corp-shoshi figure img {
        margin: auto auto;
        width: 140px;
        height: auto; }
    .corp-shoshi .cont {
      text-align: left; } }

/* 個人情報保護方針 --------------------------------------------------------------- */
.privacy-policy {
  margin: auto;
  padding: 4vw;
  max-width: 900px;
  text-align: justify; }
  .privacy-policy .back {
    margin: 0px 0px 3em 0px; }
  .privacy-policy section {
    margin: 2em 0px 3em; }
  .privacy-policy h1 {
    margin: 0px 0px 0.5em 0px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 20px;
    line-height: 1.4em;
    text-align: left; }
  .privacy-policy h2 {
    margin: 0px 0px 1em 0px;
    padding: 0px 0px 0.5em 0px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.4em;
    border-color: #222;
    border-style: solid;
    border-width: 0px 0px 2px 0px;
    text-align: left; }
  .privacy-policy h3 {
    margin: 0px 0px 1em 0px;
    padding: 0px 0px 0px 0.5em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.4em;
    border-color: #ccc;
    border-style: solid;
    border-width: 0px 0px 0px 10px;
    text-align: left; }
  .privacy-policy p {
    margin: 0px 0px 1em 0px;
    font-size: 16px;
    line-height: 1.6em; }
  .privacy-policy p.pp-sign {
    text-align: right; }
