@charset "UTF-8";
/* ====================================================
reset style
==================================================== */
html {
  overflow-y: scroll;
  overflow-x: hidden;
  font-size: 10px;
  /* Base font size, change to 14px or 16px if needed */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

* {
  box-sizing: border-box; }

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

fieldset, img {
  border: 0; }

img {
  vertical-align: middle;
  max-width: 100%; }

address, caption, cite, code, dfn, var {
  font-style: normal;
  font-weight: normal; }

li {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit; }

/*to enable resizing for IE*/
input, textarea, select {
  *font-size: 100%; }

/*because legend doesn't inherit in IE */
legend {
  color: #000; }

del, ins {
  text-decoration: none; }

main {
  display: block; }

section {
  position: relative; }

/* ====================================================
Font
==================================================== */
/* ====================================================
Media Query
==================================================== */
/* ====================================================
Margin PC and SP
==================================================== */
@media screen and (min-width: 835px) {
  .mbpc-0 {
    margin-bottom: 0px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-0 {
    margin-bottom: 0px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-1 {
    margin-bottom: 1px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-1 {
    margin-bottom: 1px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-2 {
    margin-bottom: 2px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-2 {
    margin-bottom: 2px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-3 {
    margin-bottom: 3px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-3 {
    margin-bottom: 3px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-4 {
    margin-bottom: 4px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-4 {
    margin-bottom: 4px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-5 {
    margin-bottom: 5px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-5 {
    margin-bottom: 5px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-6 {
    margin-bottom: 6px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-6 {
    margin-bottom: 6px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-7 {
    margin-bottom: 7px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-7 {
    margin-bottom: 7px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-8 {
    margin-bottom: 8px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-8 {
    margin-bottom: 8px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-9 {
    margin-bottom: 9px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-9 {
    margin-bottom: 9px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-10 {
    margin-bottom: 10px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-10 {
    margin-bottom: 10px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-11 {
    margin-bottom: 11px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-11 {
    margin-bottom: 11px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-12 {
    margin-bottom: 12px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-12 {
    margin-bottom: 12px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-13 {
    margin-bottom: 13px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-13 {
    margin-bottom: 13px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-14 {
    margin-bottom: 14px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-14 {
    margin-bottom: 14px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-15 {
    margin-bottom: 15px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-15 {
    margin-bottom: 15px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-16 {
    margin-bottom: 16px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-16 {
    margin-bottom: 16px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-17 {
    margin-bottom: 17px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-17 {
    margin-bottom: 17px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-18 {
    margin-bottom: 18px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-18 {
    margin-bottom: 18px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-19 {
    margin-bottom: 19px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-19 {
    margin-bottom: 19px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-20 {
    margin-bottom: 20px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-20 {
    margin-bottom: 20px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-21 {
    margin-bottom: 21px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-21 {
    margin-bottom: 21px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-22 {
    margin-bottom: 22px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-22 {
    margin-bottom: 22px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-23 {
    margin-bottom: 23px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-23 {
    margin-bottom: 23px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-24 {
    margin-bottom: 24px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-24 {
    margin-bottom: 24px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-25 {
    margin-bottom: 25px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-25 {
    margin-bottom: 25px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-26 {
    margin-bottom: 26px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-26 {
    margin-bottom: 26px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-27 {
    margin-bottom: 27px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-27 {
    margin-bottom: 27px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-28 {
    margin-bottom: 28px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-28 {
    margin-bottom: 28px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-29 {
    margin-bottom: 29px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-29 {
    margin-bottom: 29px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-30 {
    margin-bottom: 30px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-30 {
    margin-bottom: 30px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-31 {
    margin-bottom: 31px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-31 {
    margin-bottom: 31px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-32 {
    margin-bottom: 32px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-32 {
    margin-bottom: 32px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-33 {
    margin-bottom: 33px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-33 {
    margin-bottom: 33px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-34 {
    margin-bottom: 34px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-34 {
    margin-bottom: 34px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-35 {
    margin-bottom: 35px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-35 {
    margin-bottom: 35px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-36 {
    margin-bottom: 36px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-36 {
    margin-bottom: 36px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-37 {
    margin-bottom: 37px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-37 {
    margin-bottom: 37px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-38 {
    margin-bottom: 38px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-38 {
    margin-bottom: 38px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-39 {
    margin-bottom: 39px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-39 {
    margin-bottom: 39px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-40 {
    margin-bottom: 40px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-40 {
    margin-bottom: 40px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-41 {
    margin-bottom: 41px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-41 {
    margin-bottom: 41px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-42 {
    margin-bottom: 42px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-42 {
    margin-bottom: 42px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-43 {
    margin-bottom: 43px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-43 {
    margin-bottom: 43px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-44 {
    margin-bottom: 44px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-44 {
    margin-bottom: 44px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-45 {
    margin-bottom: 45px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-45 {
    margin-bottom: 45px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-46 {
    margin-bottom: 46px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-46 {
    margin-bottom: 46px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-47 {
    margin-bottom: 47px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-47 {
    margin-bottom: 47px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-48 {
    margin-bottom: 48px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-48 {
    margin-bottom: 48px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-49 {
    margin-bottom: 49px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-49 {
    margin-bottom: 49px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-50 {
    margin-bottom: 50px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-50 {
    margin-bottom: 50px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-51 {
    margin-bottom: 51px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-51 {
    margin-bottom: 51px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-52 {
    margin-bottom: 52px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-52 {
    margin-bottom: 52px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-53 {
    margin-bottom: 53px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-53 {
    margin-bottom: 53px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-54 {
    margin-bottom: 54px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-54 {
    margin-bottom: 54px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-55 {
    margin-bottom: 55px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-55 {
    margin-bottom: 55px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-56 {
    margin-bottom: 56px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-56 {
    margin-bottom: 56px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-57 {
    margin-bottom: 57px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-57 {
    margin-bottom: 57px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-58 {
    margin-bottom: 58px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-58 {
    margin-bottom: 58px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-59 {
    margin-bottom: 59px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-59 {
    margin-bottom: 59px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-60 {
    margin-bottom: 60px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-60 {
    margin-bottom: 60px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-61 {
    margin-bottom: 61px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-61 {
    margin-bottom: 61px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-62 {
    margin-bottom: 62px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-62 {
    margin-bottom: 62px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-63 {
    margin-bottom: 63px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-63 {
    margin-bottom: 63px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-64 {
    margin-bottom: 64px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-64 {
    margin-bottom: 64px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-65 {
    margin-bottom: 65px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-65 {
    margin-bottom: 65px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-66 {
    margin-bottom: 66px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-66 {
    margin-bottom: 66px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-67 {
    margin-bottom: 67px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-67 {
    margin-bottom: 67px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-68 {
    margin-bottom: 68px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-68 {
    margin-bottom: 68px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-69 {
    margin-bottom: 69px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-69 {
    margin-bottom: 69px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-70 {
    margin-bottom: 70px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-70 {
    margin-bottom: 70px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-71 {
    margin-bottom: 71px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-71 {
    margin-bottom: 71px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-72 {
    margin-bottom: 72px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-72 {
    margin-bottom: 72px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-73 {
    margin-bottom: 73px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-73 {
    margin-bottom: 73px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-74 {
    margin-bottom: 74px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-74 {
    margin-bottom: 74px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-75 {
    margin-bottom: 75px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-75 {
    margin-bottom: 75px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-76 {
    margin-bottom: 76px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-76 {
    margin-bottom: 76px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-77 {
    margin-bottom: 77px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-77 {
    margin-bottom: 77px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-78 {
    margin-bottom: 78px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-78 {
    margin-bottom: 78px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-79 {
    margin-bottom: 79px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-79 {
    margin-bottom: 79px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-80 {
    margin-bottom: 80px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-80 {
    margin-bottom: 80px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-81 {
    margin-bottom: 81px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-81 {
    margin-bottom: 81px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-82 {
    margin-bottom: 82px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-82 {
    margin-bottom: 82px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-83 {
    margin-bottom: 83px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-83 {
    margin-bottom: 83px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-84 {
    margin-bottom: 84px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-84 {
    margin-bottom: 84px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-85 {
    margin-bottom: 85px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-85 {
    margin-bottom: 85px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-86 {
    margin-bottom: 86px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-86 {
    margin-bottom: 86px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-87 {
    margin-bottom: 87px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-87 {
    margin-bottom: 87px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-88 {
    margin-bottom: 88px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-88 {
    margin-bottom: 88px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-89 {
    margin-bottom: 89px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-89 {
    margin-bottom: 89px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-90 {
    margin-bottom: 90px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-90 {
    margin-bottom: 90px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-91 {
    margin-bottom: 91px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-91 {
    margin-bottom: 91px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-92 {
    margin-bottom: 92px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-92 {
    margin-bottom: 92px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-93 {
    margin-bottom: 93px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-93 {
    margin-bottom: 93px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-94 {
    margin-bottom: 94px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-94 {
    margin-bottom: 94px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-95 {
    margin-bottom: 95px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-95 {
    margin-bottom: 95px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-96 {
    margin-bottom: 96px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-96 {
    margin-bottom: 96px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-97 {
    margin-bottom: 97px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-97 {
    margin-bottom: 97px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-98 {
    margin-bottom: 98px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-98 {
    margin-bottom: 98px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-99 {
    margin-bottom: 99px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-99 {
    margin-bottom: 99px !important; } }
@media screen and (min-width: 835px) {
  .mbpc-100 {
    margin-bottom: 100px !important; } }
@media screen and (max-width: 834px) {
  .mbsp-100 {
    margin-bottom: 100px !important; } }
html {
  visibility: hidden;
  opacity: 0; }

html.wf-active {
  visibility: visible;
  opacity: 1;
  transition: 0.5s; }

body {
  color: #000000;
  font-family: vdl-v7marugothic, sans-serif;
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  line-height: 1.4;
  overflow: hidden; }

.no-scroll {
  overflow: hidden; }

@media screen and (max-width: 1024px) {
  .main-page {
    padding-top: 61.91px; } }

#header {
  background-color: #fff;
  position: relative; }
  @media screen and (min-width: 1025px) {
    #header.fixed {
      padding-bottom: 81.5px; }
      #header.fixed .nav-menu {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 900; } }
  @media screen and (max-width: 1024px) {
    #header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 900; } }
  #header .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: none;
    padding: 0 11px 0 35px; }
    @media screen and (max-width: 1200px) {
      #header .inner {
        padding: 0 10px; } }
    @media screen and (max-width: 1024px) {
      #header .inner {
        padding: 10px; } }
    #header .inner .h-l {
      display: flex;
      align-items: center; }
    #header .inner .h-r {
      display: flex;
      align-items: center;
      padding: 11px 0; }
    #header .inner .h-txt {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-weight: 300;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.57; }
      @media screen and (max-width: 1440px) {
        #header .inner .h-txt {
          display: none; } }
    #header .inner .h-phone {
      padding-left: 47px;
      margin-right: 13px;
      position: relative;
      display: inline-block;
      text-align: center; }
      @media screen and (max-width: 1024px) {
        #header .inner .h-phone {
          display: none; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        #header .inner .h-phone {
          position: relative;
          top: 10px; } }
      #header .inner .h-phone:before {
        content: '';
        position: absolute;
        z-index: 1;
        width: 37px;
        height: 41px;
        background: url("../img/common/ico-phone.svg") no-repeat center/contain;
        left: 0;
        bottom: 19px; }
      #header .inner .h-phone__txt {
        font-weight: 700;
        font-size: 15.86px;
        font-size: 1.586rem;
        line-height: 1.36; }
        @media screen and (max-width: 1200px) {
          #header .inner .h-phone__txt {
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.6; } }
        @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
          #header .inner .h-phone__txt {
            line-height: 1;
            margin-bottom: 16px; } }
      #header .inner .h-phone__num {
        font-weight: 800;
        font-size: 34.14px;
        font-size: 3.414rem;
        line-height: 1;
        border-bottom: 1px solid #000000;
        padding-bottom: 6px; }
        @media screen and (max-width: 1200px) {
          #header .inner .h-phone__num {
            font-size: 25px;
            font-size: 2.5rem; } }
        @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
          #header .inner .h-phone__num {
            padding-bottom: 0;
            line-height: 0.5;
            margin-bottom: 5px; } }
      #header .inner .h-phone__time {
        font-weight: 500;
        font-feature-settings: "palt";
        letter-spacing: 1px;
        font-size: 14.2px;
        font-size: 1.42rem;
        line-height: 1.7; }
        @media screen and (max-width: 1200px) {
          #header .inner .h-phone__time {
            font-size: 10px;
            font-size: 1rem; } }
    #header .inner .h-btn {
      display: flex; }
      @media screen and (max-width: 1024px) {
        #header .inner .h-btn {
          display: none; } }
      #header .inner .h-btn a {
        width: 192px;
        display: block;
        margin-left: 10px; }
    #header .inner .logo {
      width: 290px;
      flex-shrink: 0;
      margin-right: 41px; }
      @media screen and (max-width: 1200px) {
        #header .inner .logo {
          margin-right: 20px; } }
      @media screen and (max-width: 1024px) {
        #header .inner .logo {
          width: 200px; } }
    #header .inner .mobile-icon {
      width: 26px;
      height: 30px;
      transition: background .5s;
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      cursor: pointer;
      z-index: 999;
      display: none; }
      @media screen and (max-width: 1024px) {
        #header .inner .mobile-icon {
          display: block; } }
      #header .inner .mobile-icon span {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%);
        display: block;
        width: 100%;
        height: 2px;
        margin-top: -2px;
        background-color: #009650;
        font-size: 0;
        user-select: none;
        transition: background-color 0.3s;
        border-radius: 3px; }
        #header .inner .mobile-icon span:before, #header .inner .mobile-icon span:after {
          position: absolute;
          left: 0;
          width: 100%;
          height: 100%;
          background: #009650;
          content: '';
          transition: transform 0.3s;
          border-radius: 3px; }
        #header .inner .mobile-icon span:before {
          top: -8px; }
        #header .inner .mobile-icon span:after {
          bottom: -8px; }
      #header .inner .mobile-icon.mobile-close span {
        background-color: transparent; }
        #header .inner .mobile-icon.mobile-close span:before, #header .inner .mobile-icon.mobile-close span:after {
          width: 100%;
          background: #FFFFFF; }
        #header .inner .mobile-icon.mobile-close span:before {
          transform: translateY(0) rotate(45deg);
          top: 0; }
        #header .inner .mobile-icon.mobile-close span:after {
          transform: translateY(0) rotate(-45deg);
          bottom: 0; }
  #header .nav-menu {
    background-color: #009650; }
    @media screen and (max-width: 1024px) {
      #header .nav-menu {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        height: 100vh;
        padding: 60px 20px 0;
        overflow-y: scroll;
        z-index: 900; }
        #header .nav-menu.active {
          display: block; } }
    #header .nav-menu .show-menu {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      padding: 0px;
      max-width: 1200px;
      margin: 0 auto; }
      @media screen and (max-width: 1024px) {
        #header .nav-menu .show-menu {
          padding: 0;
          justify-content: center;
          margin: 0 -10px; } }
      #header .nav-menu .show-menu > .item:nth-child(1) a img {
        width: 18px; }
      #header .nav-menu .show-menu > .item:nth-child(2) a img {
        width: 27px; }
      #header .nav-menu .show-menu > .item:nth-child(3) a img {
        width: 17px; }
      #header .nav-menu .show-menu > .item:nth-child(41) a img {
        width: 28px; }
      #header .nav-menu .show-menu > .item:nth-child(51) a img {
        width: 20px; }
      #header .nav-menu .show-menu > .item {
        width: 20%;
        position: relative; }
        @media screen and (max-width: 1024px) {
          #header .nav-menu .show-menu > .item {
            width: 100%;
            padding: 0 10px;
            margin-bottom: 20px; } }
        #header .nav-menu .show-menu > .item:before {
          content: '';
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0px;
          width: 1px;
          height: 30%;
          background-color: #fff;
          margin: auto; }
          @media screen and (max-width: 1024px) {
            #header .nav-menu .show-menu > .item:before {
              display: none; } }
        #header .nav-menu .show-menu > .item:after {
          content: '';
          position: absolute;
          top: 0;
          bottom: 0;
          right: -1px;
          width: 1px;
          height: 30%;
          z-index: 100;
          background-color: #fff;
          height: 30%;
          margin: auto; }
          @media screen and (max-width: 1024px) {
            #header .nav-menu .show-menu > .item:after {
              display: none; } }
        @media screen and (max-width: 1200px) {
          #header .nav-menu .show-menu > .item:first-child:before {
            display: none; } }
        #header .nav-menu .show-menu > .item > a {
          display: flex;
          justify-content: center;
          align-items: center;
          font-size: 17px;
          font-size: 1.7rem;
          font-weight: bold;
          color: #FFFFFF;
          padding: 28px 0; }
          @media screen and (max-width: 1024px) {
            #header .nav-menu .show-menu > .item > a {
              text-align: center;
              position: relative; } }
          #header .nav-menu .show-menu > .item > a > img {
            margin-right: 10px; }
            @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
              #header .nav-menu .show-menu > .item > a > img {
                position: relative;
                top: 2px; } }
          @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
            #header .nav-menu .show-menu > .item > a > span {
              position: relative;
              top: 7px; } }
        #header .nav-menu .show-menu > .item-btn {
          display: none; }
          @media screen and (max-width: 1024px) {
            #header .nav-menu .show-menu > .item-btn {
              padding: 0 10px;
              display: flex;
              align-items: center;
              justify-content: flex-start; }
              #header .nav-menu .show-menu > .item-btn > a {
                width: 130px; } }

#footer {
  background-color: #E4F6E8; }
  #footer .f-main {
    display: flex;
    flex-wrap: wrap;
    padding: 79px 0 80px; }
    @media screen and (max-width: 834px) {
      #footer .f-main {
        padding: 50px 0 30px; } }
  #footer .f-l {
    width: 35.5%;
    padding-right: 20px; }
    @media screen and (max-width: 834px) {
      #footer .f-l {
        width: 100%;
        padding-right: 0; } }
  #footer .f-r {
    width: 64.5%;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 834px) {
      #footer .f-r {
        width: 100%;
        display: block; } }
  #footer .f-logo {
    display: block;
    margin: 7px 0 18px;
    width: 290px; }
    @media screen and (max-width: 834px) {
      #footer .f-logo {
        width: 200px;
        margin: 0 0 20px; } }
  #footer .f-address {
    font-weight: 500;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.57;
    margin-bottom: 40px; }
    @media screen and (max-width: 834px) {
      #footer .f-address {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 30px; } }
  #footer .f-btn {
    max-width: 372px;
    display: block; }
    @media screen and (max-width: 834px) {
      #footer .f-btn {
        margin-bottom: 30px; } }
  #footer .f-menu {
    width: 220px; }
    @media screen and (max-width: 1024px) {
      #footer .f-menu {
        width: 156px; } }
    @media screen and (max-width: 834px) {
      #footer .f-menu {
        width: auto;
        display: flex;
        flex-wrap: wrap;
        margin: 0 -10px 20px; } }
    #footer .f-menu li {
      color: #009650;
      font-weight: bold;
      font-size: 17px;
      font-size: 1.7rem;
      line-height: 1.5;
      margin-bottom: 20px; }
      @media screen and (max-width: 834px) {
        #footer .f-menu li {
          font-size: 15px;
          font-size: 1.5rem;
          width: 50%;
          padding: 0 10px;
          margin-bottom: 10px; } }
  #footer .f-block {
    width: calc(100% - 220px); }
    @media screen and (max-width: 1024px) {
      #footer .f-block {
        width: calc(100% - 156px); } }
    @media screen and (max-width: 834px) {
      #footer .f-block {
        width: 100%; } }
  #footer .f-ttl {
    font-weight: bold;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.5;
    color: #009650;
    padding-bottom: 12px;
    border-bottom: 1px solid #009650;
    margin-bottom: 15px; }
    @media screen and (max-width: 834px) {
      #footer .f-ttl {
        font-size: 15px;
        font-size: 1.5rem;
        padding-bottom: 8px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      #footer .f-ttl {
        padding-bottom: 5px;
        margin-bottom: 20px; } }
  #footer .f-list {
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 834px) {
      #footer .f-list {
        margin: 0 -10px; } }
    #footer .f-list ul {
      width: 45%; }
      @media screen and (max-width: 834px) {
        #footer .f-list ul {
          width: 50%;
          padding: 0 10px; } }
      #footer .f-list ul li {
        font-weight: 500;
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.5;
        margin-bottom: 11px;
        padding-right: 10px; }
        @media screen and (max-width: 834px) {
          #footer .f-list ul li {
            font-size: 15px;
            font-size: 1.5rem;
            padding-right: 0; } }
      #footer .f-list ul:nth-child(even) {
        width: 55%; }
        @media screen and (max-width: 834px) {
          #footer .f-list ul:nth-child(even) {
            width: 50%; } }
        #footer .f-list ul:nth-child(even) li {
          padding-right: 0; }
  #footer .f-copyright {
    background: url("../img/common/bg-footer.svg") repeat-x left top;
    padding: 59px 20px 25px;
    color: #009650;
    font-weight: 500;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: right; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      #footer .f-copyright {
        padding-top: 69px 20px 15px; } }

.box-contact {
  background-color: #009650;
  text-align: center;
  padding: 75px 0 75px; }
  @media screen and (max-width: 834px) {
    .box-contact {
      padding: 50px 0; } }
  .box-contact__ttl {
    font-weight: 800;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.36;
    margin-bottom: 33px;
    color: #FFFFFF; }
    @media screen and (max-width: 1024px) {
      .box-contact__ttl {
        font-size: 32px;
        font-size: 3.2rem; } }
    @media screen and (max-width: 834px) {
      .box-contact__ttl {
        font-size: 22px;
        font-size: 2.2rem;
        margin-bottom: 30px; } }
  .box-contact__btn {
    position: relative;
    z-index: 2;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -14px; }
    .box-contact__btn .item {
      width: 50%;
      padding: 0 14px; }
      @media screen and (max-width: 834px) {
        .box-contact__btn .item {
          width: 100%;
          max-width: 330px;
          margin: 0 auto 25px; }
          .box-contact__btn .item:last-child {
            margin-bottom: 0; } }
      .box-contact__btn .item p {
        margin-top: 11px;
        font-weight: bold;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5;
        color: #FFFFFF; }
        @media screen and (max-width: 1024px) {
          .box-contact__btn .item p {
            font-size: 18px;
            font-size: 1.8rem; } }
        @media screen and (max-width: 834px) {
          .box-contact__btn .item p {
            font-size: 14px;
            font-size: 1.4rem; } }
        @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
          .box-contact__btn .item p {
            margin-top: 20px; } }

#pagetop {
  position: fixed;
  right: 2rem;
  bottom: 11rem;
  display: block;
  background: #aaa;
  width: 6rem;
  height: 6rem;
  z-index: 100;
  border-radius: 50%; }
  #pagetop a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%; }
  #pagetop a::after {
    position: absolute;
    content: "";
    display: block;
    width: 1.2rem;
    height: 1.2rem;
    margin: auto;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 2.5rem;
    left: 0;
    right: 0; }

#pagetop:hover {
  opacity: 0.7;
  transition: 0.3; }

.inner {
  display: block;
  max-width: 1230px;
  padding: 0 25px;
  margin: 0 auto; }
  .inner-1490 {
    max-width: 1520px; }
  .inner-980 {
    max-width: 1030px; }

.clearfix {
  *zoom: 1; }
  .clearfix:before {
    content: "";
    display: table; }
  .clearfix:after {
    clear: both;
    content: "";
    display: table; }

a {
  color: inherit;
  text-decoration: none;
  -webkit-backface-visibility: hidden;
  -webkit-transition: all .3s ease;
  -moz-transition: all .3s ease;
  -ms-transition: all .3s ease;
  -o-transition: all .3s ease;
  transition: all .3s ease; }
  a:hover {
    opacity: 0.7; }
  @media screen and (min-width: 835px) {
    a[href^="tel"] {
      pointer-events: none; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    a[href^="tel"] {
      display: inline-block; } }

@media screen and (max-width: 834px) {
  .pc {
    display: none !important; } }
@media screen and (max-width: 1200px) {
  .pc-xl {
    display: none !important; } }
@media screen and (max-width: 1024px) {
  .pc-ipd {
    display: none !important; } }
@media screen and (max-width: 990px) {
  .pc-lg {
    display: none !important; } }
@media screen and (max-width: 640px) {
  .pc-sm {
    display: none !important; } }
@media screen and (max-width: 374px) {
  .pc-xs {
    display: none !important; } }

@media screen and (min-width: 835px) {
  .sp {
    display: none !important; } }
@media screen and (min-width: 1025px) {
  .sp-ipd {
    display: none !important; } }
@media screen and (min-width: 991px) {
  .sp-lg {
    display: none !important; } }
@media screen and (min-width: 641px) {
  .sp-sm {
    display: none !important; } }
@media screen and (min-width: 375px) {
  .sp-xs {
    display: none !important; } }

.ttl-comp01 {
  position: relative;
  text-align: center;
  font-weight: 800;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1.5;
  padding-bottom: 22px;
  margin-bottom: 32px; }
  @media screen and (max-width: 834px) {
    .ttl-comp01 {
      font-size: 30px;
      font-size: 3rem;
      padding-bottom: 10px;
      margin-bottom: 30px; } }
  .ttl-comp01:after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 1;
    width: 189px;
    height: 16px;
    background: url("../img/index/bg-ttl.png") no-repeat center/contain;
    transform: translateX(-50%); }
    @media screen and (max-width: 834px) {
      .ttl-comp01:after {
        width: 95px;
        height: 8px; } }
.ttl-comp02 {
  position: relative;
  font-weight: 900;
  font-size: 40px;
  font-size: 4rem;
  text-align: center;
  padding-bottom: 55px; }
  @media screen and (max-width: 834px) {
    .ttl-comp02 {
      font-size: 24px;
      font-size: 2.4rem;
      padding-bottom: 30px; } }
  .ttl-comp02:after {
    content: "";
    position: absolute;
    background: url("../img/service/line-ttl.png") center no-repeat;
    background-size: contain;
    width: 189px;
    height: 16px;
    bottom: 32px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media screen and (max-width: 834px) {
      .ttl-comp02:after {
        width: 130px;
        bottom: 12px; } }
.ttl-comp03 {
  text-align: center;
  color: #009650;
  font-weight: bold;
  font-size: 42px;
  font-size: 4.2rem;
  line-height: 1.4;
  margin-bottom: 38px; }
  @media screen and (max-width: 834px) {
    .ttl-comp03 {
      font-size: 26px;
      font-size: 2.6rem;
      margin-bottom: 30px; } }
.ttl-comp04 {
  position: relative;
  border-radius: 5px;
  background: #009650;
  color: #ffffff;
  font-weight: bold;
  font-size: 28px;
  font-size: 2.8rem;
  padding: 13px 20px 20px 42px;
  margin-bottom: 42px;
  box-shadow: 10px 10px 0 #E4F6E8; }
  @media screen and (max-width: 834px) {
    .ttl-comp04 {
      font-size: 22px;
      font-size: 2.2rem;
      padding: 11px 20px 14px 35px;
      margin-bottom: 30px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .ttl-comp04 {
      padding: 18px 20px 2px 42px; } }
  .ttl-comp04:before {
    content: "";
    position: absolute;
    background: #ffffff;
    width: 3px;
    height: 14px;
    top: 50%;
    left: 23px;
    transform: translateY(-50%); }
  .ttl-comp04.orange {
    background: #EA5504;
    box-shadow: 10px 10px 0 #fde5d9; }
  .ttl-comp04.violet {
    background: #BA79B1;
    box-shadow: 10px 10px 0 #f5ebf3; }
.ttl-comp05 {
  color: #009650;
  font-weight: bold;
  font-size: 26px;
  font-size: 2.6rem;
  margin-bottom: 13px; }
  .ttl-comp05.orange {
    color: #EA5504; }
  .ttl-comp05.violet {
    color: #BA79B1; }

.txt-basic {
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif; }
  @media screen and (max-width: 834px) {
    .txt-basic {
      font-size: 14px;
      font-size: 1.4rem; } }
.txt-basic02 {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.67;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  font-feature-settings: "palt" 1; }
  @media screen and (max-width: 834px) {
    .txt-basic02 {
      font-size: 16px;
      font-size: 1.6rem; } }
.txt-lead {
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.48;
  margin-bottom: 56px; }
  @media screen and (max-width: 834px) {
    .txt-lead {
      font-size: 16px;
      font-size: 1.6rem;
      margin-bottom: 30px; } }
  .txt-lead strong {
    font-weight: 500;
    font-size: 27px;
    font-size: 2.7rem;
    line-height: 1.48; }
    @media screen and (max-width: 834px) {
      .txt-lead strong {
        font-size: 20px;
        font-size: 2rem; } }
.txt-center {
  text-align: center; }
.txt-right {
  text-align: right; }
.txt-left {
  text-align: left; }

.btn-comp01 {
  display: inline-block;
  background-color: #009650;
  width: 100%;
  max-width: 460px;
  padding: 20px 35px 23px;
  position: relative;
  border-radius: 999px;
  color: #FFFFFF;
  font-weight: 800;
  font-size: 21px;
  font-size: 2.1rem; }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .btn-comp01 {
      padding: 28px 35px 15px; } }
  .btn-comp01:after {
    content: '';
    position: absolute;
    z-index: 1;
    width: 10px;
    height: 16px;
    background: url("../img/index/ico-next.png") no-repeat center/contain;
    top: 50%;
    right: 24px;
    transform: translateY(-50%); }
.btn-comp02 {
  display: inline-block;
  width: 100%;
  max-width: 380px;
  text-align: center;
  padding: 6px 5px 4px;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 400;
  font-size: 20.09px;
  font-size: 2.009rem;
  line-height: 1.82;
  border: 1px solid #000000;
  border-radius: 999px; }
  @media screen and (max-width: 834px) {
    .btn-comp02 {
      font-size: 18px;
      font-size: 1.8rem; } }
.btn-phone {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  border-radius: 999px;
  height: 90px; }
  @media screen and (max-width: 834px) {
    .btn-phone {
      height: 65px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .btn-phone {
      padding-top: 30px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) and (max-width: 834px) {
    .btn-phone {
      padding-top: 20px; } }
  .btn-phone small {
    flex-shrink: 0;
    font-weight: bold;
    font-size: 19.1px;
    font-size: 1.91rem;
    margin-right: 17px; }
    @media screen and (max-width: 1024px) {
      .btn-phone small {
        font-size: 16px;
        font-size: 1.6rem;
        margin-right: 8px; } }
    @media screen and (max-width: 834px) {
      .btn-phone small {
        display: none; } }
  .btn-phone img {
    flex-shrink: 0;
    margin-right: 5px; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .btn-phone img {
        position: relative;
        top: -5px; } }
  .btn-phone span {
    flex-shrink: 0;
    font-weight: 800;
    font-size: 44px;
    font-size: 4.4rem;
    line-height: 1; }
    @media screen and (max-width: 1200px) {
      .btn-phone span {
        font-size: 38px;
        font-size: 3.8rem; } }
    @media screen and (max-width: 1024px) {
      .btn-phone span {
        font-size: 30px;
        font-size: 3rem; } }
    @media screen and (max-width: 834px) {
      .btn-phone span {
        font-size: 25px;
        font-size: 2.5rem; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .btn-phone span {
        position: relative;
        top: 10px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) and (max-width: 834px) {
      .btn-phone span {
        top: 2px; } }
.btn-inquiry {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FF8200;
  border-radius: 999px;
  height: 90px; }
  @media screen and (max-width: 834px) {
    .btn-inquiry {
      height: 65px; } }
  .btn-inquiry img {
    flex-shrink: 0;
    margin-right: 10px; }
  .btn-inquiry span {
    color: #FFFFFF;
    font-weight: 800;
    font-size: 23.73px;
    font-size: 2.373rem;
    line-height: 1.44; }
    @media screen and (max-width: 1024px) {
      .btn-inquiry span {
        font-size: 19px;
        font-size: 1.9rem; } }
    @media screen and (max-width: 834px) {
      .btn-inquiry span {
        font-size: 14px;
        font-size: 1.4rem; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .btn-inquiry span {
        position: relative;
        top: 10px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) and (max-width: 834px) {
      .btn-inquiry span {
        top: 4px; } }

.breadcrumb {
  font-size: 15px;
  font-size: 1.5rem;
  font-weight: 500;
  text-align: right;
  margin-bottom: -41px;
  padding-top: 20px;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 834px) {
    .breadcrumb {
      font-size: 14px;
      font-size: 1.4rem; } }
  .breadcrumb a {
    position: relative;
    color: #009650;
    padding: 0 5px 0 2px; }
    .breadcrumb a:first-child:after {
      content: "";
      position: absolute;
      background: url("../img/service/home.png") center no-repeat;
      background-size: contain;
      width: 15px;
      height: 17px;
      margin: 0;
      top: 0;
      left: -20px; }
    .breadcrumb a span {
      padding: 0; }
  .breadcrumb span {
    padding-left: 6px; }

.sec-mv {
  position: relative; }
  .sec-mv .slider-home .item {
    outline: none !important; }
    .sec-mv .slider-home .item img {
      width: 100%;
      height: calc(100vh - 189px);
      max-height: 750px;
      min-height: 580px;
      object-fit: cover; }
      @media screen and (max-width: 834px) {
        .sec-mv .slider-home .item img {
          min-height: calc(100vh - 62px); } }
  .sec-mv .ttl-mv {
    position: absolute;
    z-index: 4;
    max-width: 800px;
    width: 56vw;
    top: 47%;
    left: 50%;
    transform: translate(-50%, -50%); }
    @media screen and (max-width: 834px) {
      .sec-mv .ttl-mv {
        width: 300px;
        top: 50%; } }
  .sec-mv .ico-mv {
    position: absolute;
    z-index: 2;
    text-align: right;
    max-width: 380px;
    max-height: 50vh;
    width: 24vw;
    bottom: 0;
    overflow: hidden;
    right: 5px;
    z-index: 100; }
    @media screen and (max-width: 1468px) {
      .sec-mv .ico-mv {
        right: 0; } }
    @media screen and (max-width: 1200px) {
      .sec-mv .ico-mv {
        width: 249px; } }
    @media screen and (max-width: 834px) {
      .sec-mv .ico-mv {
        width: 187px; } }

.box-btn {
  padding: 79px 0 75px; }
  @media screen and (max-width: 834px) {
    .box-btn {
      padding: 50px 0 30px; } }
  .box-btn .inner {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media screen and (max-width: 834px) {
      .box-btn .inner {
        flex-wrap: wrap; } }
    .box-btn .inner > a {
      max-width: 426px;
      margin: 0 18px; }
      @media screen and (max-width: 834px) {
        .box-btn .inner > a {
          margin: 0 10px 20px; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .box-btn .inner > a {
          width: 426px; } }

.sec-living-problem {
  background: url("../img/index/bg-01.jpg") no-repeat center/cover;
  padding: 85px 0 87px; }
  @media screen and (max-width: 834px) {
    .sec-living-problem {
      padding: 50px 0; } }
  .sec-living-problem .block-ttl {
    text-align: center;
    font-weight: 800;
    font-size: 38.4px;
    font-size: 3.84rem;
    line-height: 1.24;
    margin-bottom: 42px;
    color: #FFFFFF; }
    @media screen and (max-width: 1024px) {
      .sec-living-problem .block-ttl {
        font-size: 30px;
        font-size: 3rem; } }
    @media screen and (max-width: 834px) {
      .sec-living-problem .block-ttl {
        font-size: 22px;
        font-size: 2.2rem; } }
    .sec-living-problem .block-ttl > span {
      display: inline-block;
      position: relative;
      padding: 0 26px; }
      .sec-living-problem .block-ttl > span:before, .sec-living-problem .block-ttl > span:after {
        content: '';
        position: absolute;
        z-index: 1;
        top: 70%;
        transform: translateY(-50%); }
        @media screen and (max-width: 834px) {
          .sec-living-problem .block-ttl > span:before, .sec-living-problem .block-ttl > span:after {
            top: 50%; } }
      .sec-living-problem .block-ttl > span:before {
        width: 18px;
        height: 31px;
        left: 0;
        background: url("../img/index/bg-ttl-l.png") no-repeat center/contain; }
      .sec-living-problem .block-ttl > span:after {
        width: 19px;
        height: 31px;
        right: 0;
        background: url("../img/index/bg-ttl-r.png") no-repeat center/contain; }
    .sec-living-problem .block-ttl .green {
      color: #009650; }
  .sec-living-problem .block-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -9.5px 30px; }
    .sec-living-problem .block-list .col {
      width: 33.3333333%;
      padding: 0 9.5px; }
      @media screen and (max-width: 834px) {
        .sec-living-problem .block-list .col {
          width: 100%; } }
    .sec-living-problem .block-list .item {
      background-color: #fff;
      border-radius: 15px;
      min-height: 110px;
      padding: 15px 45px 15px 27px;
      display: flex;
      align-items: center;
      position: relative;
      margin-bottom: 20px; }
      @media screen and (max-width: 1024px) {
        .sec-living-problem .block-list .item {
          padding: 15px 45px 15px 15px; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .sec-living-problem .block-list .item {
          padding: 33px 45px 6px 27px; } }
      .sec-living-problem .block-list .item:after {
        content: '';
        position: absolute;
        z-index: 1;
        width: 22px;
        height: 22px;
        background: url("../img/index/ico-arrow-next.png") no-repeat center/contain;
        top: 50%;
        right: 17px;
        transform: translateY(-50%); }
      .sec-living-problem .block-list .item__img {
        width: 62px;
        text-align: center; }
        @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
          .sec-living-problem .block-list .item__img {
            position: relative;
            top: -10px; } }
      .sec-living-problem .block-list .item__content {
        width: calc(100% - 62px);
        padding-left: 20px; }
        @media screen and (max-width: 1024px) {
          .sec-living-problem .block-list .item__content {
            padding-left: 15px; } }
      .sec-living-problem .block-list .item__ttl {
        font-weight: 800;
        font-size: 23px;
        font-size: 2.3rem;
        line-height: 1.17; }
        @media screen and (max-width: 1024px) {
          .sec-living-problem .block-list .item__ttl {
            font-size: 20px;
            font-size: 2rem; } }
        @media screen and (max-width: 834px) {
          .sec-living-problem .block-list .item__ttl {
            font-size: 18px;
            font-size: 1.8rem; } }
      .sec-living-problem .block-list .item__txt {
        font-weight: 500;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.6; }
        @media screen and (max-width: 834px) {
          .sec-living-problem .block-list .item__txt {
            font-size: 13px;
            font-size: 1.3rem; } }
      .sec-living-problem .block-list .item--lg {
        padding: 38px 20px 65px;
        margin-bottom: 18px;
        display: block;
        text-align: center; }
        @media screen and (max-width: 1024px) {
          .sec-living-problem .block-list .item--lg {
            padding: 38px 25px 65px; } }
        .sec-living-problem .block-list .item--lg:after {
          top: auto;
          right: auto;
          left: 50%;
          bottom: 20px;
          transform: translateX(-50%); }
        .sec-living-problem .block-list .item--lg .item__img {
          width: 100%;
          margin-bottom: 16px;
          height: 72px;
          display: flex;
          justify-content: center;
          align-items: center; }
          @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
            .sec-living-problem .block-list .item--lg .item__img {
              margin-bottom: 26px;
              top: 0; } }
        .sec-living-problem .block-list .item--lg .item__content {
          width: 100%;
          padding-left: 0; }
        .sec-living-problem .block-list .item--lg .item__ttl {
          margin-bottom: 17px; }
      .sec-living-problem .block-list .item--mark:before {
        content: '';
        position: absolute;
        z-index: 1;
        width: 117px;
        height: 82px;
        top: -5px;
        left: -6px;
        background: url("../img/index/ttl-mark.png") no-repeat center/contain; }

.sec-contact-us {
  padding: 68px 0 86px;
  background: url("../img/index/bg-02.png") repeat-x left bottom, #009650; }
  @media screen and (max-width: 834px) {
    .sec-contact-us {
      padding: 50px 0; } }
  .sec-contact-us .block-wrap {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap; }
    @media screen and (max-width: 834px) {
      .sec-contact-us .block-wrap {
        display: block; } }
  .sec-contact-us .block-content {
    width: 70%;
    padding: auto; }
    @media screen and (max-width: 834px) {
      .sec-contact-us .block-content {
        width: auto;
        padding: 0; } }
  .sec-contact-us .block-img {
    width: 30%; }
    @media screen and (max-width: 834px) {
      .sec-contact-us .block-img {
        width: auto;
        text-align: center;
        padding-left: 20%; }
        .sec-contact-us .block-img img {
          width: 155px; } }
    @media screen and (max-width: 661px) {
      .sec-contact-us .block-img {
        padding-left: 0; } }
  .sec-contact-us .block-ttl {
    font-weight: 800;
    font-size: 37.7px;
    font-size: 3.77rem;
    line-height: 1.34;
    margin-bottom: 25px;
    color: #FFFFFF; }
    @media screen and (max-width: 1024px) {
      .sec-contact-us .block-ttl {
        font-size: 30px;
        font-size: 3rem; } }
    @media screen and (max-width: 834px) {
      .sec-contact-us .block-ttl {
        font-size: 20px;
        font-size: 2rem; } }
  .sec-contact-us .block-txt {
    font-weight: 600;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.8;
    margin-bottom: 30px;
    color: #FFFFFF; }
    @media screen and (max-width: 834px) {
      .sec-contact-us .block-txt {
        font-size: 16px;
        font-size: 1.6rem; } }

.sec-corres-area {
  padding: 82px 0 85px;
  background-color: #E4F6E8; }
  @media screen and (max-width: 834px) {
    .sec-corres-area {
      padding: 50px 0; } }
  .sec-corres-area .block {
    display: flex; }
    @media screen and (max-width: 834px) {
      .sec-corres-area .block {
        flex-wrap: wrap; } }
    .sec-corres-area .block-img {
      width: 61%;
      padding: 0px 4.4% 0 1.15%; }
      @media screen and (max-width: 1024px) {
        .sec-corres-area .block-img {
          width: 56%;
          padding-left: 0; } }
      @media screen and (max-width: 834px) {
        .sec-corres-area .block-img {
          width: 100%;
          padding: 0;
          text-align: center;
          margin-bottom: 30px; } }
    .sec-corres-area .block-content {
      width: 39%; }
      @media screen and (max-width: 1024px) {
        .sec-corres-area .block-content {
          width: 44%; } }
      @media screen and (max-width: 834px) {
        .sec-corres-area .block-content {
          width: 100%; } }
      .sec-corres-area .block-content .item {
        background-color: #fff;
        border-radius: 50px;
        box-shadow: 3px 3px 1px rgba(0, 0, 0, 0.05);
        padding: 36px 41px;
        margin-bottom: 33px; }
        @media screen and (max-width: 834px) {
          .sec-corres-area .block-content .item {
            padding: 30px; } }
        .sec-corres-area .block-content .item:last-of-type {
          margin-bottom: 23px; }
        .sec-corres-area .block-content .item__ttl {
          display: flex;
          align-items: center;
          font-weight: bold;
          font-size: 29.17px;
          font-size: 2.917rem;
          line-height: 1.4;
          color: #009650;
          margin-bottom: 15px; }
          @media screen and (max-width: 834px) {
            .sec-corres-area .block-content .item__ttl {
              font-size: 26px;
              font-size: 2.6rem; } }
          @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
            .sec-corres-area .block-content .item__ttl {
              margin-bottom: 10px; } }
          .sec-corres-area .block-content .item__ttl img {
            width: 20px;
            margin-right: 11px; }
            @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
              .sec-corres-area .block-content .item__ttl img {
                position: relative;
                top: -10px; } }
        .sec-corres-area .block-content .item__list {
          display: flex;
          flex-wrap: wrap; }
          .sec-corres-area .block-content .item__list li {
            font-weight: 500;
            font-size: 20px;
            font-size: 2rem;
            line-height: 1.65;
            padding-right: 10px; }
            @media screen and (min-width: 375px) {
              .sec-corres-area .block-content .item__list li:nth-child(3n+1) {
                width: 42%; } }
            @media screen and (min-width: 375px) {
              .sec-corres-area .block-content .item__list li:nth-child(3n+2) {
                width: 34%; } }
            @media screen and (min-width: 375px) {
              .sec-corres-area .block-content .item__list li:nth-child(3n+3) {
                width: 24%;
                padding-right: 0; } }
            @media screen and (max-width: 374px) {
              .sec-corres-area .block-content .item__list li:nth-child(odd) {
                width: 55%; } }
            @media screen and (max-width: 374px) {
              .sec-corres-area .block-content .item__list li:nth-child(even) {
                padding-right: 0;
                width: 45%; } }
            .sec-corres-area .block-content .item__list li.full {
              width: 100%; }
    .sec-corres-area .block-txt {
      text-align: right;
      font-weight: 500;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.81; }
      @media screen and (max-width: 834px) {
        .sec-corres-area .block-txt {
          font-size: 16px;
          font-size: 1.6rem; } }

.sec-unique-network {
  padding: 96px 0 114px;
  background: url("../img/index/bg-04.png") repeat-x left bottom, url("../img/index/bg-03.jpg") no-repeat center/cover; }
  @media screen and (max-width: 834px) {
    .sec-unique-network {
      padding: 50px 0; } }
  .sec-unique-network .block-ttl {
    text-align: center;
    font-weight: 800;
    font-size: 39px;
    font-size: 3.9rem;
    line-height: 1.57;
    margin-bottom: 50px; }
    @media screen and (max-width: 1024px) {
      .sec-unique-network .block-ttl {
        font-size: 36px;
        font-size: 3.6rem; } }
    @media screen and (max-width: 834px) {
      .sec-unique-network .block-ttl {
        font-size: 22px;
        font-size: 2.2rem;
        margin-bottom: 30px; } }
    .sec-unique-network .block-ttl span {
      color: #009650;
      background-image: linear-gradient(to right, #FFFF50 50%, transparent 50%);
      background-size: 200% 15px;
      background-repeat: no-repeat;
      background-position: 0% .9em;
      display: inline-block; }
  .sec-unique-network .block-list {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 50px; }
    @media screen and (max-width: 834px) {
      .sec-unique-network .block-list {
        margin: 0 -10px 30px; } }
    .sec-unique-network .block-list li {
      width: 100%;
      max-width: 249px;
      margin: 0 14px; }
      @media screen and (max-width: 834px) {
        .sec-unique-network .block-list li {
          margin: 0 10px; } }
  .sec-unique-network .block-txt {
    text-align: center;
    font-weight: 500;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.7; }
    @media screen and (max-width: 834px) {
      .sec-unique-network .block-txt {
        font-size: 15px;
        font-size: 1.5rem; } }

.over {
  display: block; }

.mv-page {
  position: relative; }
  .mv-page img {
    width: 100%;
    height: 293px;
    object-fit: cover;
    font-family: "object-fit: cover"; }
    @media screen and (max-width: 834px) {
      .mv-page img {
        height: 210px; } }
  .mv-page__wrap {
    position: absolute;
    width: 100%;
    top: 45%;
    transform: translateY(-50%); }
    @media screen and (max-width: 834px) {
      .mv-page__wrap {
        top: 50%; } }
  .mv-page__ttl {
    color: #009650;
    font-weight: bold;
    font-size: 48px;
    font-size: 4.8rem;
    margin-left: -8px;
    line-height: 0.9; }
    @media screen and (max-width: 834px) {
      .mv-page__ttl {
        font-size: 30px;
        font-size: 3rem;
        margin-left: 0; } }
    @media screen and (max-width: 374px) {
      .mv-page__ttl {
        font-size: 24px;
        font-size: 2.4rem; } }
    .mv-page__ttl span {
      position: relative;
      font-size: 23.76px;
      font-size: 2.376rem;
      padding-left: 33px;
      letter-spacing: 1.6px;
      color: #000000;
      text-transform: capitalize; }
      @media screen and (max-width: 834px) {
        .mv-page__ttl span {
          font-size: 18px;
          font-size: 1.8rem;
          padding-left: 20px; } }
      .mv-page__ttl span:after {
        content: "";
        position: absolute;
        background: #000000;
        width: 20px;
        height: 1px;
        left: 4px;
        top: 16px; }
        @media screen and (max-width: 834px) {
          .mv-page__ttl span:after {
            width: 12px;
            top: 13px; } }

.sec-problems {
  padding: 37px 0 71px;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .sec-problems {
      padding: 50px 0; } }
  .sec-problems .img-light {
    display: block;
    margin: 0 auto; }

.problems-ttl {
  position: relative;
  display: inline-block;
  text-align: center;
  font-weight: 900;
  font-size: 38px;
  font-size: 3.8rem;
  margin: 27px 0 43px; }
  @media screen and (max-width: 1024px) {
    .problems-ttl {
      font-size: 27px;
      font-size: 2.7rem;
      margin-bottom: 30px; } }
  @media screen and (max-width: 640px) {
    .problems-ttl {
      font-size: 18px;
      font-size: 1.8rem; } }
  .problems-ttl:before, .problems-ttl:after {
    content: "";
    position: absolute;
    background: #000000;
    width: 3px;
    height: 33px;
    border-radius: 30%;
    bottom: -2px; }
  .problems-ttl:before {
    left: -21px;
    transform: rotate(-29deg); }
  .problems-ttl:after {
    right: -15px;
    transform: rotate(29deg); }
  .problems-ttl span {
    color: #009650; }

.problems-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  max-width: 910px;
  margin: 0 auto; }
  .problems-wrap .item {
    width: 25%;
    padding: 0 15px; }
    @media screen and (max-width: 640px) {
      .problems-wrap .item {
        width: 50%;
        padding: 10px; } }
  .problems-wrap img {
    width: 100%; }

.problems-txt {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 500;
  margin-top: 34px;
  line-height: 1.9; }
  @media screen and (max-width: 834px) {
    .problems-txt {
      font-size: 14px;
      font-size: 1.4rem;
      margin-top: 10px;
      line-height: 1.6; } }

.sec-service {
  background: #E4F6E8;
  padding: 70px 0 72px; }
  @media screen and (max-width: 834px) {
    .sec-service {
      padding: 50px 0; } }

.list-service {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px; }
  .list-service__item {
    width: 33.333%;
    padding: 15px; }
    @media screen and (max-width: 990px) {
      .list-service__item {
        width: 50%; } }
    @media screen and (max-width: 640px) {
      .list-service__item {
        width: 100%; } }
  .list-service__wrap {
    display: block;
    background: #ffffff;
    border-radius: 15px;
    overflow: hidden;
    height: 100%; }
  .list-service__img {
    position: relative;
    overflow: hidden; }
    .list-service__img:before {
      content: "";
      display: block;
      padding-bottom: calc(224 / 380 * 100%); }
    .list-service__img .thumbnail {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
    .list-service__img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .list-service__content {
    padding: 29px 30px 29px 30px; }
    @media screen and (max-width: 1200px) {
      .list-service__content {
        padding: 20px; } }
  .list-service__ttl {
    display: flex;
    align-items: center;
    font-weight: 900;
    font-size: 23px;
    font-size: 2.3rem;
    height: 64px;
    margin-bottom: 17px; }
    @media screen and (max-width: 1200px) {
      .list-service__ttl {
        font-size: 19px;
        font-size: 1.9rem; } }
    .list-service__ttl img {
      max-width: 60px;
      max-height: 66px; }
      @media screen and (max-width: 640px) {
        .list-service__ttl img {
          width: 40px; } }
    .list-service__ttl span {
      padding-left: 21px;
      line-height: 1.25; }
      @media screen and (max-width: 640px) {
        .list-service__ttl span {
          padding-left: 15px; } }
  .list-service__btn {
    display: block;
    width: auto;
    text-align: center;
    background: #009650;
    color: #ffffff;
    font-weight: 500;
    font-size: 16px;
    font-size: 1.6rem;
    border-radius: 25px;
    margin-top: 15px;
    padding: 10px 0 10px;
    line-height: 1; }
  .list-service .txt-basic {
    letter-spacing: -1px;
    text-align: justify; }
    @media screen and (max-width: 1200px) {
      .list-service .txt-basic {
        height: 140px;
        letter-spacing: 0; } }
    @media screen and (max-width: 640px) {
      .list-service .txt-basic {
        height: auto; } }

.sec-sell {
  padding: 69px 0 64px;
  text-align: center; }
  @media screen and (max-width: 834px) {
    .sec-sell {
      padding: 50px 0; } }

.sell-ttl {
  position: relative;
  display: inline-block;
  font-weight: 900;
  font-size: 34px;
  font-size: 3.4rem;
  margin-bottom: 34px; }
  @media screen and (max-width: 990px) {
    .sell-ttl {
      font-size: 27px;
      font-size: 2.7rem; } }
  @media screen and (max-width: 640px) {
    .sell-ttl {
      font-size: 20px;
      font-size: 2rem;
      margin-bottom: 15px; } }
  .sell-ttl:before, .sell-ttl:after {
    content: "";
    position: absolute;
    background: #000000;
    width: 3px;
    height: 33px;
    border-radius: 30%;
    bottom: -4px; }
  .sell-ttl:before {
    left: -21px;
    transform: rotate(-29deg); }
    @media screen and (max-width: 640px) {
      .sell-ttl:before {
        left: -7px; } }
  .sell-ttl:after {
    right: -9px;
    transform: rotate(29deg); }
  .sell-ttl span {
    position: relative; }
    .sell-ttl span:after {
      content: "";
      position: absolute;
      background: #FFFF50;
      width: 100%;
      height: 14px;
      border-radius: 5px;
      bottom: 1px;
      left: 0;
      z-index: -1; }

.list-sell {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px; }
  @media screen and (max-width: 640px) {
    .list-sell {
      margin: 0 -5px; } }
  .list-sell__item {
    width: 50%;
    padding: 15px; }
    @media screen and (max-width: 990px) {
      .list-sell__item {
        width: 100%; } }
    @media screen and (max-width: 640px) {
      .list-sell__item {
        padding: 5px; } }
  .list-sell__wrap {
    border: 1px solid #808080;
    border-radius: 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding: 18px 9px 15px 32px; }
    @media screen and (max-width: 1200px) {
      .list-sell__wrap {
        padding: 10px; } }
  .list-sell__img {
    width: 23.4%;
    position: relative;
    overflow: hidden; }
    .list-sell__img:before {
      content: "";
      display: block;
      padding-bottom: calc(127 / 127 * 100%); }
    .list-sell__img .thumbnail {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
    .list-sell__img img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .list-sell__content {
    width: 74.3%;
    padding: 0 20px;
    font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
    font-size: 21px;
    font-size: 2.1rem;
    text-align: left; }
    @media screen and (max-width: 1200px) {
      .list-sell__content {
        padding: 0 10px; } }
    @media screen and (max-width: 640px) {
      .list-sell__content {
        padding: 0;
        font-size: 14px;
        font-size: 1.4rem; } }
  .list-sell__ttl {
    border-bottom: 1px solid #009650;
    font-weight: bold;
    padding-bottom: 12px;
    letter-spacing: -1px; }
    @media screen and (max-width: 640px) {
      .list-sell__ttl {
        padding-bottom: 0; } }
  .list-sell__txt {
    position: relative;
    display: inline-block;
    font-weight: bold;
    padding-top: 10px; }
    @media screen and (max-width: 640px) {
      .list-sell__txt {
        padding-top: 7px; } }
    .list-sell__txt span {
      background: #FF0000;
      font-weight: 600;
      line-height: 1;
      display: inline-block;
      font-size: 15.5px;
      font-size: 1.55rem;
      padding: 5px 7px;
      color: #ffffff; }
      @media screen and (max-width: 1200px) {
        .list-sell__txt span {
          font-size: 14px;
          font-size: 1.4rem; } }
      @media screen and (max-width: 640px) {
        .list-sell__txt span {
          font-size: 9px;
          font-size: 0.9rem;
          padding: 2px 3px 1px; } }

.sec-usage {
  padding: 66px 0 103px; }

.list-step {
  display: flex;
  border: 3px solid #009650;
  border-radius: 18px;
  background: #E4F6E8;
  margin: 51px -3px 86px; }
  @media screen and (max-width: 834px) {
    .list-step {
      border: 0;
      flex-wrap: wrap;
      margin: 15px 0px 0;
      margin-bottom: 5rem;
      border-radius: 0;
      border-top: 2px solid #009650;
      border-bottom: 1px solid #009650; } }
  .list-step__item {
    width: 20%; }
    .list-step__item:first-child {
      width: 26%; }
    .list-step__item:last-child a:after {
      display: none; }
    @media screen and (max-width: 834px) {
      .list-step__item {
        width: 100% !important;
        border-bottom: 1px solid #009650; } }
  .list-step a {
    position: relative;
    display: block;
    text-align: center;
    color: #009650;
    font-weight: bold;
    font-size: 20px;
    font-size: 2rem;
    padding: 40px 0 36px; }
    @media screen and (max-width: 990px) {
      .list-step a {
        padding: 33px 0 30px;
        font-size: 16px;
        font-size: 1.6rem; } }
    @media screen and (max-width: 834px) {
      .list-step a {
        padding: 20px 0 21px; } }
    .list-step a:after {
      content: "";
      position: absolute;
      width: 57px;
      height: 57px;
      border-right: 3px solid #009650;
      border-bottom: 3px solid #009650;
      transform: rotate(-45deg) skew(-16deg, -16deg);
      top: 22px;
      right: -14px; }
      @media screen and (max-width: 990px) {
        .list-step a:after {
          width: 47px;
          height: 47px;
          top: 17px; } }
      @media screen and (max-width: 834px) {
        .list-step a:after {
          display: none; } }
    .list-step a span {
      position: absolute;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 52px;
      height: 52px;
      font-weight: 900;
      border-radius: 50%;
      font-size: 22.39px;
      font-size: 2.239rem;
      background: #009650;
      color: #ffffff;
      padding-bottom: 5px;
      top: -28px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -o-transform: translateX(-50%);
      transform: translateX(-50%); }
      @media screen and (max-width: 834px) {
        .list-step a span {
          font-size: 19px;
          font-size: 1.9rem;
          top: 7px;
          left: 35px;
          width: 50px;
          height: 50px; } }
      .list-step a span:after {
        content: "";
        position: absolute;
        background: #ffffff;
        width: 16px;
        height: 3px;
        bottom: 10px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%); }

.list-usage__item {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 136px; }
  @media screen and (max-width: 640px) {
    .list-usage__item {
      margin-bottom: 65px; } }
  .list-usage__item:after {
    content: "";
    position: absolute;
    background: url("../img/use/ar-down.png") center no-repeat;
    background-size: contain;
    width: 30px;
    height: 56px;
    bottom: -91px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media screen and (max-width: 640px) {
      .list-usage__item:after {
        width: 20px;
        bottom: -60px; } }
  .list-usage__item:last-child {
    margin-bottom: 0; }
    .list-usage__item:last-child:after {
      display: none; }
.list-usage__wrap {
  width: 41.5%;
  position: relative; }
  @media screen and (max-width: 1200px) {
    .list-usage__wrap {
      width: 36.5%; } }
  @media screen and (max-width: 990px) {
    .list-usage__wrap {
      width: 100%; } }
.list-usage__img {
  position: relative;
  overflow: hidden; }
  .list-usage__img:before {
    content: "";
    display: block;
    padding-bottom: calc(353 / 498 * 100%); }
  .list-usage__img .thumbnail {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
  .list-usage__img img {
    width: 100%;
    height: 100%;
    object-fit: cover; }
.list-usage__number {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 92px;
  height: 92px;
  font-weight: 900;
  border-radius: 50%;
  font-size: 40px;
  font-size: 4rem;
  background: #009650;
  color: #ffffff;
  padding-bottom: 5px;
  top: -13px;
  right: -23px;
  z-index: 1; }
  @media screen and (max-width: 990px) {
    .list-usage__number {
      width: 80px;
      height: 80px;
      right: auto;
      left: -13px; } }
  @media screen and (max-width: 640px) {
    .list-usage__number {
      width: 75px;
      height: 75px;
      font-size: 30px;
      font-size: 3rem; } }
  .list-usage__number:after {
    content: "";
    position: absolute;
    background: #ffffff;
    width: 28px;
    height: 3px;
    bottom: 19px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
.list-usage__content {
  width: 54.8%;
  padding-right: 20px; }
  @media screen and (max-width: 1200px) {
    .list-usage__content {
      width: 60.8%; } }
  @media screen and (max-width: 990px) {
    .list-usage__content {
      width: 100%; } }
.list-usage__ttl {
  font-weight: bold;
  font-size: 29px;
  font-size: 2.9rem;
  color: #009650;
  padding: 9px 0 33px 0px; }
  @media screen and (max-width: 640px) {
    .list-usage__ttl {
      font-size: 24px;
      font-size: 2.4rem;
      padding: 10px 0 15px 4px; } }
.list-usage__tm {
  font-weight: bold;
  font-size: 21px;
  font-size: 2.1rem;
  padding: 0 0 14px 1px; }
  @media screen and (max-width: 640px) {
    .list-usage__tm {
      font-size: 17px;
      font-size: 1.7rem; } }

.contact-usage {
  margin-top: 32px; }
  @media screen and (max-width: 834px) {
    .contact-usage {
      margin-top: 0; } }
  .contact-usage__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    margin-top: 13px; }
  .contact-usage__btn {
    width: 37.4%;
    text-align: center;
    padding: 20px 0 20px;
    display: block;
    color: #ffffff;
    font-weight: bold;
    font-size: 17px;
    font-size: 1.7rem;
    border-radius: 7px; }
    @media screen and (max-width: 640px) {
      .contact-usage__btn {
        width: 100%;
        padding: 15px 0 15px;
        margin-bottom: 5px; } }
    .contact-usage__btn.green {
      background: #009650; }
    .contact-usage__btn.orange {
      background: #FF8200; }
  .contact-usage__content {
    width: 60%; }
    @media screen and (max-width: 640px) {
      .contact-usage__content {
        width: 100%; } }
  .contact-usage__tel {
    font-weight: 900;
    font-size: 34.22px;
    font-size: 3.422rem;
    letter-spacing: 1px;
    margin-top: -4px; }
    @media screen and (max-width: 640px) {
      .contact-usage__tel {
        font-size: 25px;
        font-size: 2.5rem;
        text-align: center; } }
    .contact-usage__tel img {
      margin: -5px -8px 0 0; }
  .contact-usage__txt {
    font-weight: 500;
    font-size: 15.59px;
    font-size: 1.559rem;
    letter-spacing: 0.7px; }
    @media screen and (max-width: 640px) {
      .contact-usage__txt {
        font-size: 13px;
        font-size: 1.3rem;
        letter-spacing: 0;
        text-align: center; } }
  .contact-usage__fly {
    border: 2px solid #FF8200;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    padding: 17px 0 17px;
    color: #FF8200;
    display: block;
    max-width: 325px;
    border-radius: 10px; }
    @media screen and (max-width: 640px) {
      .contact-usage__fly {
        max-width: 100%; } }
    .contact-usage__fly img {
      margin-right: 5px; }

.sec-area {
  padding: 43px 0 0; }
  @media screen and (max-width: 834px) {
    .sec-area {
      padding: 50px 0; } }
  .sec-area .img-location {
    display: block;
    margin: 0 auto;
    position: relative;
    left: -7px; }
  .sec-area .img-map {
    width: 100%; }
  .sec-area .map {
    background-color: #E4F6E8; }

.area-ttl {
  text-align: center;
  font-weight: 900;
  font-size: 38px;
  font-size: 3.8rem;
  margin: 34px 0 19px;
  letter-spacing: 2.6px; }
  @media screen and (max-width: 1200px) {
    .area-ttl {
      font-size: 27px;
      font-size: 2.7rem; } }
  @media screen and (max-width: 374px) {
    .area-ttl {
      font-size: 22px;
      font-size: 2.2rem; } }
  .area-ttl span {
    color: #009650; }

.area-txt {
  text-align: center;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.9;
  margin-bottom: 102px; }
  @media screen and (max-width: 1200px) {
    .area-txt {
      font-size: 16px;
      font-size: 1.6rem; } }
  @media screen and (max-width: 834px) {
    .area-txt {
      max-width: 500px;
      margin: 0 auto 50px;
      line-height: 1.5; } }

.list-area {
  margin: 2px 0 81px; }
  @media screen and (max-width: 834px) {
    .list-area {
      margin: 2px 0 30px; } }
  .list-area__item {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    border-bottom: 1px solid #C8C8C8;
    padding: 23px 0 29px; }
    @media screen and (max-width: 834px) {
      .list-area__item {
        padding: 15px 0; } }
  .list-area__ttl {
    width: 18.4%;
    font-weight: bold;
    font-size: 29.17px;
    font-size: 2.917rem;
    color: #009650;
    padding-left: 23px; }
    @media screen and (max-width: 1200px) {
      .list-area__ttl {
        font-size: 23px;
        font-size: 2.3rem;
        padding-left: 0; } }
    @media screen and (max-width: 834px) {
      .list-area__ttl {
        width: 146px; } }
    @media screen and (max-width: 374px) {
      .list-area__ttl {
        width: 125px;
        font-size: 19px;
        font-size: 1.9rem; } }
    .list-area__ttl img {
      margin-top: -5px; }
  .list-area__content {
    width: 81.6%;
    font-weight: 500;
    font-size: 20.09px;
    font-size: 2.009rem;
    display: flex;
    flex-wrap: wrap; }
    @media screen and (max-width: 834px) {
      .list-area__content {
        width: calc(100% - 146px);
        font-size: 18px;
        font-size: 1.8rem; } }
    @media screen and (max-width: 374px) {
      .list-area__content {
        width: calc(100% - 125px);
        font-size: 16px;
        font-size: 1.6rem; } }
    .list-area__content span {
      padding: 0 27px;
      margin: 8px 0 6px;
      border-right: 1px solid #000000;
      line-height: 1; }
      @media screen and (max-width: 834px) {
        .list-area__content span {
          padding: 0 15px; } }
      @media screen and (max-width: 374px) {
        .list-area__content span {
          padding: 0 9px; } }
      .list-area__content span:last-child {
        border-right: 0; }

.page-price_index .ttl-comp02 {
  margin-bottom: 26px; }

.sec-price {
  padding: 66px 0 32px; }
  @media screen and (max-width: 834px) {
    .sec-price {
      padding: 50px 0 0; } }

.list-price {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 27px -10px 108px; }
  @media screen and (max-width: 834px) {
    .list-price {
      margin: 30px -10px; } }
  .list-price__item {
    width: 25%;
    padding: 10px; }
    @media screen and (max-width: 990px) {
      .list-price__item {
        width: 50%; } }
    @media screen and (max-width: 640px) {
      .list-price__item {
        width: 50%;
        padding: 5px; } }
    @media screen and (max-width: 374px) {
      .list-price__item {
        width: 100%; } }
  .list-price__btn {
    display: block;
    font-weight: 500;
    font-size: 18px;
    font-size: 1.8rem;
    border: 3px solid #DEDEDE;
    text-align: center;
    padding: 18px 0 19px; }
    @media screen and (max-width: 1200px) {
      .list-price__btn {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 12px 0; } }

.price-ttl {
  color: #009650;
  font-size: 29.17px;
  font-size: 2.917rem;
  font-weight: bold;
  margin-bottom: 15px; }
  @media screen and (max-width: 834px) {
    .price-ttl {
      font-size: 22px;
      font-size: 2.2rem; } }

.table-price {
  margin-bottom: 83px;
  border-top: 1px solid #BABBBC;
  border-right: 1px solid #BABBBC;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (max-width: 990px) {
    .table-price {
      width: 100%;
      margin-top: 15px; } }
  @media screen and (max-width: 834px) {
    .table-price {
      margin-bottom: 50px; } }
  .table-price__item {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #BABBBC; }
  .table-price__headding {
    border-left: 1px solid #BABBBC;
    padding: 20px;
    background: #EFEFEF;
    width: 27%; }
    @media screen and (max-width: 834px) {
      .table-price__headding {
        width: 100%; } }
  .table-price__note {
    border-left: 1px solid #BABBBC;
    padding: 21px 18px 21px 18px;
    width: 35%; }
    @media screen and (max-width: 834px) {
      .table-price__note {
        width: 100%; } }
    .table-price__note .txt-basic {
      padding-left: 85px; }
      @media screen and (max-width: 1200px) {
        .table-price__note .txt-basic {
          padding-left: 80px; } }
  .table-price .full {
    width: 73%; }
    .table-price .full .table-price__list {
      padding-left: 0px; }
  .table-price__list.noindent {
    padding-left: 0px; }
  .table-price__content {
    width: 38%;
    border-left: 1px solid #BABBBC;
    text-align: right;
    padding: 20px 21px;
    width: 38%; }
    @media screen and (max-width: 834px) {
      .table-price__content {
        width: 100%; } }
    .table-price__content.flex {
      display: flex;
      align-items: center;
      justify-content: flex-end; }
  .table-price__ttl {
    font-weight: bold;
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px; }
  .table-price__tag {
    position: absolute;
    background: #808080;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 24px;
    color: #ffffff;
    padding: 0px 5px 0px 7px; }
    @media screen and (max-width: 1200px) {
      .table-price__tag {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 0px 5px 0px 7px; } }
    .table-price__tag:after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-top: 12px solid transparent;
      border-left: 6px solid #808080;
      border-bottom: 12px solid transparent;
      right: -6px;
      top: 0; }
  .table-price__list {
    padding-left: 85px; }
    @media screen and (max-width: 1200px) {
      .table-price__list {
        padding-left: 80px; } }
    .table-price__list .item + .item {
      margin-top: 1rem; }
    .table-price__list span {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 15px;
      height: 15px;
      border: 1px solid #000000;
      border-radius: 50%;
      top: -3px;
      left: -1px;
      font-size: 10px;
      font-size: 1rem;
      font-weight: bold; }
  .table-price__tm {
    font-weight: bold;
    line-height: 1.5;
    letter-spacing: -1px; }
  .table-price__card {
    background: #E00000;
    display: inline-block;
    font-weight: bold;
    color: #ffffff;
    padding: 1px 4px;
    margin: 12px -2px 0; }
  .table-price__line {
    padding-top: 5px; }
    .table-price__line .dot {
      padding-right: 8px; }
    .table-price__line .price {
      font-weight: bold;
      display: inline-flex;
      min-width: 57px;
      justify-content: flex-end; }
    .table-price__line .dash {
      position: relative;
      text-decoration: line-through;
      padding-right: 25px; }
      .table-price__line .dash:after {
        content: "→";
        position: absolute;
        top: -3px;
        right: 1px;
        font-size: 20px;
        font-size: 2rem; }
    .table-price__line .red {
      color: #E00000; }
    .table-price__line .space {
      padding: 0 50px 0 20px; }
  .table-price__desc {
    margin-top: 20px; }
    .table-price__desc.center {
      text-align: center; }
    .table-price__desc.left {
      text-align: left; }

table.border_bottom {
  margin-top: 2rem; }
  table.border_bottom th, table.border_bottom td {
    text-align: center;
    padding: 5px 15px; }
  table.border_bottom td {
    border-top: 1px solid #ccc; }

.box-scroll {
  touch-action: unset !important; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  top: 0; }

.sec-happiness-eight {
  padding-top: 48px; }
  @media screen and (max-width: 834px) {
    .sec-happiness-eight {
      padding-top: 0; } }
  .sec-happiness-eight .block {
    background: url("../img/about/bg-01.jpg") no-repeat center/cover;
    text-align: center;
    padding: 153px 0 119px; }
    @media screen and (max-width: 834px) {
      .sec-happiness-eight .block {
        padding: 50px 15px;
        margin: 0 -15px; } }
    .sec-happiness-eight .block-logo {
      margin-bottom: 64px; }
      @media screen and (max-width: 834px) {
        .sec-happiness-eight .block-logo {
          margin-bottom: 30px; } }
    .sec-happiness-eight .block-ttl {
      font-weight: bold;
      font-size: 38px;
      font-size: 3.8rem;
      line-height: 1.42;
      margin-bottom: 34px; }
      @media screen and (max-width: 834px) {
        .sec-happiness-eight .block-ttl {
          font-size: 22px;
          font-size: 2.2rem;
          margin-bottom: 30px; } }
      @media screen and (max-width: 374px) {
        .sec-happiness-eight .block-ttl {
          font-size: 20px;
          font-size: 2rem; } }
    .sec-happiness-eight .block-txt {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-weight: 400;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.89; }
      @media screen and (max-width: 834px) {
        .sec-happiness-eight .block-txt {
          font-size: 16px;
          font-size: 1.6rem; } }
      @media screen and (max-width: 374px) {
        .sec-happiness-eight .block-txt {
          font-size: 14px;
          font-size: 1.4rem; } }

.sec-company-profile {
  padding: 82px 0 94px; }
  @media screen and (max-width: 834px) {
    .sec-company-profile {
      padding: 50px 0; } }
  .sec-company-profile .block-list dl {
    display: flex;
    margin-bottom: 10px;
    background-color: #E4F6E8; }
    @media screen and (max-width: 834px) {
      .sec-company-profile .block-list dl {
        margin-bottom: 5px; } }
    .sec-company-profile .block-list dl:nth-child(even) {
      background-color: #EFEFEF; }
    .sec-company-profile .block-list dl dt, .sec-company-profile .block-list dl dd {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-weight: 400;
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.95;
      padding: 12px 21px 10px; }
      @media screen and (max-width: 834px) {
        .sec-company-profile .block-list dl dt, .sec-company-profile .block-list dl dd {
          font-size: 16px;
          font-size: 1.6rem;
          padding: 10px 15px 8px;
          line-height: 1.75; } }
      @media screen and (max-width: 374px) {
        .sec-company-profile .block-list dl dt, .sec-company-profile .block-list dl dd {
          font-size: 14px;
          font-size: 1.4rem; } }
    .sec-company-profile .block-list dl dt {
      width: 181px; }
      @media screen and (max-width: 834px) {
        .sec-company-profile .block-list dl dt {
          width: 126px; } }
    .sec-company-profile .block-list dl dd {
      width: calc(100% - 181px);
      border-left: 13px solid #FFFFFF; }
      @media screen and (max-width: 834px) {
        .sec-company-profile .block-list dl dd {
          width: calc(100% - 126px);
          border-left-width: 5px; } }

.sec-map {
  padding: 68px 0 69px; }
  @media screen and (max-width: 834px) {
    .sec-map {
      padding: 50px 0; } }
  .sec-map .ttl-comp03 {
    margin-bottom: 30px; }
  .sec-map .block-txt {
    font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
    font-weight: 400;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.82;
    margin-bottom: 31px;
    text-align: center; }
    @media screen and (max-width: 834px) {
      .sec-map .block-txt {
        font-size: 16px;
        font-size: 1.6rem; } }
    @media screen and (max-width: 374px) {
      .sec-map .block-txt {
        font-size: 14px;
        font-size: 1.4rem; } }

.box-img {
  display: flex; }
  .box-img li {
    width: 33.333333%; }
    .box-img li img {
      width: 100%;
      height: auto; }

.box-map {
  position: relative;
  height: 556px; }
  @media screen and (max-width: 834px) {
    .box-map {
      height: 278px; } }
  .box-map iframe {
    border: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1; }

.sec-tire {
  padding: 69px 0 94px; }
  @media screen and (max-width: 834px) {
    .sec-tire {
      padding: 50px 0; } }
  .sec-tire .inner {
    max-width: 1030px; }

.tire-ttl {
  text-align: center;
  font-weight: 900;
  font-size: 38px;
  font-size: 3.8rem;
  line-height: 1.34;
  margin-bottom: 46px; }
  @media screen and (max-width: 834px) {
    .tire-ttl {
      font-size: 27px;
      font-size: 2.7rem;
      margin-bottom: 30px; } }
  @media screen and (max-width: 640px) {
    .tire-ttl {
      font-size: 20px;
      font-size: 2rem; } }
  @media screen and (max-width: 374px) {
    .tire-ttl {
      font-size: 16px;
      font-size: 1.6rem; } }
  .tire-ttl span {
    color: #009650; }
.tire-sub {
  margin-bottom: 35px; }
  @media screen and (max-width: 834px) {
    .tire-sub {
      margin-bottom: 30px; } }
  .tire-sub img {
    width: 100%; }
.tire-txt {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 11px;
  line-height: 1.95; }
  @media screen and (max-width: 834px) {
    .tire-txt {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.6; } }
.tire-warning {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  text-align: center;
  color: #E93139;
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
  margin-bottom: 71px; }
  @media screen and (max-width: 834px) {
    .tire-warning {
      font-size: 18px;
      font-size: 1.8rem;
      margin-bottom: 50px; } }
  .tire-warning span {
    position: relative; }
    .tire-warning span:before {
      content: "";
      position: absolute;
      background: #FFFF00;
      border-radius: 5px;
      width: calc(100% + 8px);
      height: 17px;
      bottom: -3px;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -o-transform: translateX(-50%);
      transform: translateX(-50%); }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .tire-warning span:before {
          bottom: 2px; } }
  .tire-warning strong {
    position: relative;
    z-index: 1; }
.tire-wrap {
  position: relative;
  padding-top: 48px; }
  .tire-wrap:before {
    content: "";
    position: absolute;
    background: #DEDEDE;
    width: 100vw;
    height: 1px;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
.tire-note {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  text-align: right;
  color: #E93139;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 30px; }
  @media screen and (max-width: 640px) {
    .tire-note {
      text-align: left;
      font-size: 14px;
      font-size: 1.4rem;
      margin-bottom: 20px; } }

.list-anchor {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  border-radius: 15px;
  margin-bottom: 65px;
  overflow: hidden; }
  @media screen and (max-width: 834px) {
    .list-anchor {
      margin-bottom: 50px; } }
  .list-anchor li {
    width: calc(33.333% - 2px);
    text-align: center; }
    @media screen and (max-width: 640px) {
      .list-anchor li {
        width: 100%;
        margin-bottom: 4px; }
        .list-anchor li:last-child {
          margin-bottom: 0; } }
    .list-anchor li a {
      display: block;
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      color: #000000;
      background: #DEDEDE;
      font-weight: 500;
      font-size: 18px;
      font-size: 1.8rem;
      padding: 19px 10px 14px; }
      @media screen and (max-width: 834px) {
        .list-anchor li a {
          font-size: 16px;
          font-size: 1.6rem; } }
      .list-anchor li a span {
        position: relative;
        padding-left: 30px; }
        @media screen and (max-width: 640px) {
          .list-anchor li a span {
            width: 185px;
            display: inline-block;
            text-align: left; } }
        .list-anchor li a span:before {
          content: "";
          position: absolute;
          background: url("../img/tire/icon-arrow.png") center no-repeat;
          width: 22px;
          height: 22px;
          top: 48%;
          left: 0;
          transform: translateY(-50%); }

.list-tire__item {
  margin-bottom: 91px; }
  @media screen and (max-width: 834px) {
    .list-tire__item {
      margin-bottom: 50px; } }
  .list-tire__item:last-child {
    margin-bottom: 0; }
  .list-tire__item.green .list-tire__light, .list-tire__item.green .list-tire__dots:before, .list-tire__item.green .list-tire__number {
    background: #009650; }
  .list-tire__item.green .list-tire__head {
    background: #E4F6E8; }
  .list-tire__item.green .list-tire__light:after {
    border-left: 33px solid #009650; }
  .list-tire__item.orange .list-tire__light, .list-tire__item.orange .list-tire__dots:before, .list-tire__item.orange .list-tire__number {
    background: #EA5504; }
  .list-tire__item.orange .list-tire__head {
    background: #fde5d9; }
  .list-tire__item.orange .list-tire__light:after {
    border-left: 33px solid #EA5504; }
  .list-tire__item.violet .list-tire__light, .list-tire__item.violet .list-tire__dots:before, .list-tire__item.violet .list-tire__number {
    background: #BA79B1; }
  .list-tire__item.violet .list-tire__head {
    background: #f5ebf3; }
  .list-tire__item.violet .list-tire__light:after {
    border-left: 33px solid #BA79B1; }
.list-tire__txt {
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem; }
.list-tire__head {
  background: #E4F6E8;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 42px; }
.list-tire__light {
  position: relative;
  width: 306px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 23px;
  font-size: 2.3rem;
  padding: 31px 10px 33px 28px; }
  @media screen and (max-width: 834px) {
    .list-tire__light {
      font-size: 21px;
      font-size: 2.1rem;
      width: 100%;
      padding: 13px 10px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__light {
      padding: 39px 10px 25px 28px; } }
  .list-tire__light:after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-top: 51px solid transparent;
    border-bottom: 51px solid transparent;
    top: 0;
    right: -32px; }
    @media screen and (max-width: 834px) {
      .list-tire__light:after {
        display: none; } }
  .list-tire__light img {
    margin-right: 6px; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__light img {
        position: relative;
        top: -9px; } }
.list-tire__contents {
  width: calc(100% - 306px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 21px 20px 21px 76px; }
  @media screen and (max-width: 834px) {
    .list-tire__contents {
      width: 100%;
      padding: 15px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__contents {
      padding-bottom: 20px; } }
.list-tire__dots {
  position: relative;
  width: 100%;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  padding-left: 22px;
  line-height: 1.7; }
  @media screen and (max-width: 834px) {
    .list-tire__dots {
      font-size: 16px;
      font-size: 1.6rem; } }
  .list-tire__dots:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    top: 5px;
    left: 0; }
    @media screen and (max-width: 834px) {
      .list-tire__dots:before {
        top: 4px; } }
.list-tire__step {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 46px; }
  .list-tire__step .item {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(33.333% - 23px);
    border: 4px solid #DEDEDE;
    border-radius: 15px;
    padding: 23px 4px 22px 18px; }
    @media screen and (max-width: 834px) {
      .list-tire__step .item {
        width: 100%;
        margin-bottom: 20px;
        padding: 10px 15px; }
        .list-tire__step .item:last-child {
          margin-bottom: 0; } }
    .list-tire__step .item:last-child:after {
      display: none; }
    .list-tire__step .item:after {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      border-top: 6px solid transparent;
      border-left: 17px solid #000000;
      border-bottom: 6px solid transparent;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%);
      right: -31px; }
      @media screen and (max-width: 834px) {
        .list-tire__step .item:after {
          border-left: 10px solid #000000;
          top: calc(100% + 7px);
          left: 50%;
          right: auto;
          transform: translateX(-50%) rotate(90deg); } }
  .list-tire__step .list-tire__txt {
    width: calc(100% - 57px);
    padding-top: 4px; }
    @media screen and (max-width: 834px) {
      .list-tire__step .list-tire__txt {
        font-size: 17px;
        font-size: 1.7rem; } }
.list-tire__number {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  font-weight: bold;
  color: #ffffff;
  border-radius: 50%;
  font-size: 20px;
  font-size: 2rem;
  padding-bottom: 10px;
  margin-right: 10px; }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__number {
      padding: 7px 0 0; } }
  .list-tire__number:after {
    content: "";
    position: absolute;
    background: #ffffff;
    width: 12px;
    height: 3px;
    bottom: 9px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
.list-tire__price {
  display: flex;
  flex-wrap: wrap;
  border: 2px solid #EC6C00;
  margin-bottom: 74px; }
  @media screen and (max-width: 834px) {
    .list-tire__price {
      margin-bottom: 50px; } }
  .list-tire__price li {
    width: 50%;
    background: #fffada;
    border-right: 2px solid #EC6C00; }
    @media screen and (max-width: 640px) {
      .list-tire__price li {
        width: 100%; } }
    .list-tire__price li:last-child {
      border-right: 0;
      background: #fcecdc; }
      .list-tire__price li:last-child .list-tire__top:after {
        display: none; }
.list-tire__top {
  position: relative;
  background: #EC6C00;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  font-size: 32px;
  font-size: 3.2rem;
  padding: 2px 10px 5px; }
  @media screen and (max-width: 640px) {
    .list-tire__top {
      font-size: 24px;
      font-size: 2.4rem;
      padding: 10px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__top {
      padding: 17px 10px 0; } }
  .list-tire__top:after {
    content: "";
    position: absolute;
    background: #ffffff;
    width: 2px;
    height: 47px;
    top: 3px;
    right: -2px;
    z-index: 1; }
    @media screen and (max-width: 640px) {
      .list-tire__top:after {
        display: none; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__top:after {
        height: 54px; } }
.list-tire__box {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 27px 10px 28px; }
.list-tire__contact {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 43px; }
  @media screen and (max-width: 834px) {
    .list-tire__contact {
      margin-bottom: 30px; } }
  .list-tire__contact li {
    width: 48.8%; }
    @media screen and (max-width: 834px) {
      .list-tire__contact li {
        width: 100%;
        margin-bottom: 10px; }
        .list-tire__contact li:last-child {
          margin-bottom: 0; } }
  .list-tire__contact-tel {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    border: 4px solid #DEDEDE;
    border-radius: 10px;
    padding: 16px 8px 17px 20px;
    margin-top: 2px; }
    @media screen and (max-width: 1024px) {
      .list-tire__contact-tel {
        padding: 10px; } }
    @media screen and (max-width: 834px) {
      .list-tire__contact-tel {
        justify-content: center; } }
    @media screen and (max-width: 640px) {
      .list-tire__contact-tel {
        justify-content: space-between; }
        .list-tire__contact-tel img {
          width: 45px; } }
    @media screen and (max-width: 374px) {
      .list-tire__contact-tel img {
        width: 40px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__contact-tel {
        padding: 33px 8px 10px 20px; }
        .list-tire__contact-tel img {
          margin-top: -19px; } }
  .list-tire__contact-ttl {
    width: calc(100% - 78px);
    font-weight: 500;
    font-size: 17.39px;
    font-size: 1.739rem; }
    @media screen and (max-width: 1024px) {
      .list-tire__contact-ttl {
        width: calc(100% - 69px);
        font-size: 14px;
        font-size: 1.4rem; } }
    @media screen and (max-width: 834px) {
      .list-tire__contact-ttl {
        width: auto;
        margin-left: 8px; } }
    @media screen and (max-width: 640px) {
      .list-tire__contact-ttl {
        width: calc(100% - 50px);
        font-size: 12px;
        font-size: 1.2rem;
        margin-left: 0; } }
    @media screen and (max-width: 374px) {
      .list-tire__contact-ttl {
        font-size: 9px;
        font-size: 0.9rem; } }
    .list-tire__contact-ttl span {
      display: block;
      font-weight: 900;
      font-size: 39.41px;
      font-size: 3.941rem;
      line-height: 1;
      margin-bottom: 5px; }
      @media screen and (max-width: 1024px) {
        .list-tire__contact-ttl span {
          font-size: 33px;
          font-size: 3.3rem; } }
      @media screen and (max-width: 640px) {
        .list-tire__contact-ttl span {
          font-size: 28px;
          font-size: 2.8rem; } }
      @media screen and (max-width: 374px) {
        .list-tire__contact-ttl span {
          font-size: 23px;
          font-size: 2.3rem; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .list-tire__contact-ttl span {
          margin-bottom: -5px; } }
  .list-tire__contact-img img {
    width: 100%; }
.list-tire__bonus {
  background: #F2F2F2;
  padding: 32px 43px 30px;
  margin-bottom: 44px; }
  @media screen and (max-width: 834px) {
    .list-tire__bonus {
      padding: 15px;
      margin-bottom: 30px; } }
.list-tire__desc {
  text-align: center;
  font-weight: 500;
  color: #ffffff;
  font-size: 18px;
  font-size: 1.8rem;
  margin-bottom: 20px; }
  .list-tire__desc span {
    display: inline-block;
    background: #000000;
    padding: 0 5px 1px; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__desc span {
        padding: 12px 5px 0; } }
.list-tire__note {
  display: flex;
  font-weight: 500;
  font-size: 17px;
  font-size: 1.7rem;
  line-height: 2; }
  .list-tire__note.small {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.8; }
.list-tire__btn {
  position: relative;
  display: inline-block;
  background: #E4F6E8;
  border-radius: 22px;
  text-align: center;
  color: #009650;
  font-weight: 500;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 7px 50px 8px; }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__btn {
      padding: 13px 50px 2px; } }
  .list-tire__btn:after {
    content: "";
    position: absolute;
    border-top: 5px solid transparent;
    border-left: 13px solid #009650;
    border-bottom: 5px solid transparent;
    top: 15px;
    right: 21px; }
.list-tire__flex {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between; }
  @media screen and (max-width: 640px) {
    .list-tire__flex {
      margin-bottom: 20px; } }
.list-tire__sub {
  width: 325px; }
  @media screen and (max-width: 834px) {
    .list-tire__sub {
      width: 100%; } }
  .list-tire__sub img {
    width: 100%; }
.list-tire__table {
  width: calc(100% - 355px);
  max-width: 522px; }
  @media screen and (max-width: 834px) {
    .list-tire__table {
      width: 100%;
      max-width: 100%;
      margin-bottom: 20px; } }
  .list-tire__table .item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px; }
  .list-tire__table-head {
    width: 40.7%;
    background: #dddddd;
    padding: 23px 27px; }
    @media screen and (max-width: 990px) {
      .list-tire__table-head {
        padding: 15px 10px 12px; } }
    @media screen and (max-width: 640px) {
      .list-tire__table-head {
        width: 100%; } }
  .list-tire__table-contents {
    width: calc(59.3% - 10px);
    background: #F2F2F2;
    padding: 24px 26px 22px; }
    @media screen and (max-width: 990px) {
      .list-tire__table-contents {
        padding: 15px 10px 12px; } }
    @media screen and (max-width: 640px) {
      .list-tire__table-contents {
        width: 100%; } }
  .list-tire__table-ttl {
    font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
    font-size: 18px;
    font-size: 1.8rem; }
  .list-tire__table-txt {
    display: flex;
    flex-wrap: wrap;
    font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.65; }
    .list-tire__table-txt .name {
      width: 110px; }
    .list-tire__table-txt .number {
      width: 30px; }
    .list-tire__table-txt .price {
      font-weight: bold;
      width: calc(100% - 140px);
      padding-left: 20px; }
.list-tire__tick {
  display: flex;
  align-items: center;
  font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
  font-weight: 500;
  font-size: 17.31px;
  font-size: 1.731rem;
  margin-bottom: 12px; }
  @media screen and (max-width: 374px) {
    .list-tire__tick {
      font-size: 16px;
      font-size: 1.6rem; } }
  .list-tire__tick span {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    width: 21px;
    height: 21px;
    background: #BA79B1;
    color: #ffffff;
    font-size: 13px;
    font-size: 1.3rem;
    margin-right: 6px; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__tick span {
        padding-top: 5px;
        margin-top: -5px; } }
.list-tire__flow {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 46px; }
  @media screen and (max-width: 834px) {
    .list-tire__flow {
      margin-bottom: 30px; } }
  .list-tire__flow .item {
    width: calc(33.333% - 4px); }
    @media screen and (max-width: 640px) {
      .list-tire__flow .item {
        width: 100%;
        margin-bottom: 5px; }
        .list-tire__flow .item:last-child {
          margin-bottom: 0; } }
    .list-tire__flow .item:first-child .list-tire__flow-txt:before {
      display: none; }
    .list-tire__flow .item:last-child .list-tire__flow-txt:after {
      display: none; }
  .list-tire__flow-ttl {
    text-align: center;
    background: #BA79B1;
    color: #ffffff;
    font-weight: 500;
    font-size: 17.31px;
    font-size: 1.731rem;
    padding: 4px 10px 7px;
    margin-bottom: 5px; }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__flow-ttl {
        padding: 9px 10px 0; } }
  .list-tire__flow-txt {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    height: 113px;
    background: #F2F2F2;
    font-size: 17.31px;
    font-size: 1.731rem;
    padding: 15px 30px 15px 45px;
    line-height: 1.55; }
    @media screen and (max-width: 1024px) {
      .list-tire__flow-txt {
        justify-content: flex-start;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 3px 30px 3px 45px; } }
    @media screen and (max-width: 640px) {
      .list-tire__flow-txt {
        height: auto;
        padding: 10px 15px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__flow-txt {
        padding: 21px 30px 9px 45px; } }
    .list-tire__flow-txt:before {
      content: "";
      position: absolute;
      border-top: 56px solid transparent;
      border-left: 34px solid #ffffff;
      border-bottom: 56px solid transparent;
      top: 0;
      left: 0;
      z-index: 1; }
      @media screen and (max-width: 640px) {
        .list-tire__flow-txt:before {
          display: none; } }
    .list-tire__flow-txt:after {
      content: "";
      position: absolute;
      border-top: 56px solid transparent;
      border-left: 34px solid #F2F2F2;
      border-bottom: 56px solid transparent;
      top: 0;
      right: -34px;
      z-index: 2; }
      @media screen and (max-width: 640px) {
        .list-tire__flow-txt:after {
          display: none; } }
    .list-tire__flow-txt span {
      position: relative;
      z-index: 3; }
    .list-tire__flow-txt label {
      display: block;
      color: #E93139; }
.list-tire__size {
  width: calc(100% - 355px);
  max-width: 397px; }
  @media screen and (max-width: 834px) {
    .list-tire__size {
      width: auto;
      margin-bottom: 20px; } }
  @media screen and (max-width: 640px) {
    .list-tire__size {
      width: 100%;
      max-width: 100%; } }
.list-tire__block {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 13px; }
  .list-tire__block-left {
    width: 122px;
    text-align: center;
    background: #dddddd;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 28px 10px; }
    @media screen and (max-width: 640px) {
      .list-tire__block-left {
        width: 100%;
        padding: 10px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__block-left {
        padding: 33px 10px 18px; } }
  .list-tire__block-right {
    width: calc(100% - 133px);
    text-align: center;
    background: #F2F2F2;
    font-weight: 900;
    font-size: 21px;
    font-size: 2.1rem;
    padding: 8px 10px; }
    @media screen and (max-width: 640px) {
      .list-tire__block-right {
        width: 100%; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .list-tire__block-right {
        padding: 15px 10px 0; } }
    .list-tire__block-right span {
      color: #E93139;
      font-size: 44px;
      font-size: 4.4rem; }
    .list-tire__block-right label {
      font-size: 22px;
      font-size: 2.2rem; }
.list-tire__wrap {
  position: relative;
  text-align: center;
  max-width: 300px;
  background: #E93139;
  border-radius: 20px;
  font-weight: bold;
  color: #ffffff;
  font-size: 18.28px;
  font-size: 1.828rem;
  padding: 9px 5px 13px;
  margin-left: 132px;
  margin-bottom: 20px; }
  @media screen and (max-width: 834px) {
    .list-tire__wrap {
      padding-bottom: 10px; } }
  @media screen and (max-width: 640px) {
    .list-tire__wrap {
      margin: 0 auto 20px; } }
  @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    .list-tire__wrap {
      padding: 13px 5px 2px; } }
  .list-tire__wrap:before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 25px solid #E93139;
    top: -24px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }

@media screen and (max-width: 990px) {
  #tire03 .list-tire__light:after {
    border-top: 66px solid transparent;
    border-bottom: 66px solid transparent; } }

.page-service_unused-items_index .sec-tire {
  padding-bottom: 70px; }
.page-service_unused-items_index .tire-warning {
  margin-bottom: 0; }

.sec-waste-collection {
  padding-bottom: 98px;
  border-bottom: 1px solid #dedede; }
  @media screen and (max-width: 1024px) {
    .sec-waste-collection {
      padding-bottom: 70px; } }
  @media screen and (max-width: 834px) {
    .sec-waste-collection {
      padding-bottom: 50px; } }

.solve-block .ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 22px; }
  @media screen and (max-width: 834px) {
    .solve-block .ttl {
      margin-bottom: 15px; } }
  .solve-block .ttl span:first-of-type {
    margin-right: 24px; }
    @media screen and (max-width: 834px) {
      .solve-block .ttl span:first-of-type {
        margin-right: 15px; } }
    @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
      .solve-block .ttl span:first-of-type {
        position: relative;
        top: -17px; } }
  .solve-block .ttl span:last-of-type {
    font-size: 35.15px;
    font-size: 3.515rem;
    font-weight: bold;
    line-height: 1.2;
    color: #009650; }
    @media screen and (max-width: 834px) {
      .solve-block .ttl span:last-of-type {
        font-size: 24px;
        font-size: 2.4rem; } }
    @media screen and (max-width: 374px) {
      .solve-block .ttl span:last-of-type {
        font-size: 20px;
        font-size: 2rem; } }
.solve-block .box-check {
  padding: 37px 40px 34px 63px;
  background: #e4f6e8;
  margin-bottom: 100px; }
  @media screen and (max-width: 1024px) {
    .solve-block .box-check {
      padding: 20px 30px;
      margin-bottom: 60px; } }
  @media screen and (max-width: 834px) {
    .solve-block .box-check {
      padding: 20px;
      margin-bottom: 40px; } }
  .solve-block .box-check .list-check li {
    font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
    font-weight: bold;
    font-size: 20px;
    font-size: 2rem;
    padding-left: 56px;
    position: relative;
    margin-bottom: 24px; }
    @media screen and (max-width: 834px) {
      .solve-block .box-check .list-check li {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 15px;
        padding-left: 44px; } }
    .solve-block .box-check .list-check li:last-of-type {
      margin-bottom: 0; }
    .solve-block .box-check .list-check li:before {
      content: '';
      display: block;
      width: 42px;
      height: 33px;
      background: url("../img/unused-items/before.png") no-repeat center/100%;
      position: absolute;
      left: 0;
      top: -3px; }
      @media screen and (max-width: 834px) {
        .solve-block .box-check .list-check li:before {
          width: 30px;
          height: 23px;
          top: 0; } }
.solve-block .img-block {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -50px; }
  @media screen and (max-width: 640px) {
    .solve-block .img-block {
      max-width: 400px;
      width: 100%;
      margin: 0 auto; } }
  .solve-block .img-block .item {
    width: 50%;
    padding: 0 50px; }
    @media screen and (max-width: 640px) {
      .solve-block .img-block .item {
        width: 100%;
        padding: 0;
        margin-bottom: 30px; } }
    .solve-block .img-block .item:last-of-type {
      margin-bottom: 0; }
    .solve-block .img-block .item .img {
      margin-bottom: 18px; }
      @media screen and (max-width: 834px) {
        .solve-block .img-block .item .img {
          margin-bottom: 15px; } }
    .solve-block .img-block .item .caption {
      width: 140px;
      height: 26px;
      border-radius: 13px;
      font-size: 19.57px;
      font-size: 1.957rem;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      margin: 0 auto; }
      @media screen and (max-width: 834px) {
        .solve-block .img-block .item .caption {
          font-size: 14px;
          font-size: 1.4rem; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .solve-block .img-block .item .caption {
          padding-top: 12px; } }
      .solve-block .img-block .item .caption.before {
        background: #009650; }
      .solve-block .img-block .item .caption.after {
        background: #ff8200; }

.sec-target {
  padding-top: 98px;
  padding-bottom: 105px; }
  @media screen and (max-width: 1024px) {
    .sec-target {
      padding: 70px 0; } }
  @media screen and (max-width: 834px) {
    .sec-target {
      padding: 50px 0; } }

.target-block {
  margin-bottom: 92px; }
  @media screen and (max-width: 834px) {
    .target-block {
      margin-bottom: 50px; } }
  .target-block .list-item {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 834px) {
      .target-block .list-item {
        flex-wrap: wrap; } }
    @media screen and (max-width: 834px) {
      .target-block .list-item .item {
        width: 100%;
        margin-bottom: 30px; } }
    .target-block .list-item .item__img {
      text-align: center;
      margin-bottom: 32px;
      height: 160px; }
      @media screen and (max-width: 834px) {
        .target-block .list-item .item__img {
          margin-bottom: 15px; } }
    .target-block .list-item .item__content {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      text-align: center;
      font-size: 17px;
      font-size: 1.7rem;
      font-weight: 500;
      line-height: 1.6; }
      @media screen and (max-width: 1024px) {
        .target-block .list-item .item__content {
          font-size: 15px;
          font-size: 1.5rem; } }
      @media screen and (max-width: 834px) {
        .target-block .list-item .item__content {
          font-size: 14px;
          font-size: 1.4rem; } }

.price-block .ttl-comp04 {
  margin-bottom: 28px; }
  @media screen and (max-width: 834px) {
    .price-block .ttl-comp04 {
      margin-bottom: 14px; } }
.price-block .tire-note {
  margin-bottom: -6px; }
  @media screen and (max-width: 834px) {
    .price-block .tire-note {
      margin-bottom: 15px; } }
.price-block .item-block {
  margin-bottom: 70px;
  display: flex;
  flex-wrap: wrap; }
  @media screen and (max-width: 1024px) {
    .price-block .item-block {
      margin-bottom: 35px; } }
  .price-block .item-block:last-of-type {
    display: block;
    margin-bottom: 0; }
    .price-block .item-block:last-of-type .ttl {
      margin-bottom: 10px; }
  .price-block .item-block .ttl {
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: bold;
    color: #009650;
    line-height: 1.4;
    margin-bottom: 20px; }
    @media screen and (max-width: 834px) {
      .price-block .item-block .ttl {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 15px; } }
  .price-block .item-block .col-l {
    width: calc(100% - 39.69%);
    padding-right: 46px; }
    @media screen and (max-width: 1024px) {
      .price-block .item-block .col-l {
        padding-right: 30px; } }
    @media screen and (max-width: 834px) {
      .price-block .item-block .col-l {
        width: 100%;
        padding-right: 0;
        margin-bottom: 15px; } }
    .price-block .item-block .col-l .txt-lead {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      line-height: 1.45;
      text-align: center;
      padding: 8px 0;
      background: #babbbc;
      margin-bottom: 11px; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .col-l .txt-lead {
          font-size: 14px;
          font-size: 1.4rem; } }
    .price-block .item-block .col-l .price {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-size: 21px;
      font-size: 2.1rem;
      font-weight: bold;
      text-align: center;
      padding: 16px 0;
      background: #f2f2f2;
      margin-bottom: 20px; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .col-l .price {
          font-size: 16px;
          font-size: 1.6rem;
          padding: 10px 0; } }
      .price-block .item-block .col-l .price span {
        font-size: 33.83px;
        font-size: 3.383rem;
        font-weight: bold;
        color: #e93139;
        line-height: 1; }
        @media screen and (max-width: 834px) {
          .price-block .item-block .col-l .price span {
            font-size: 24px;
            font-size: 2.4rem; } }
    .price-block .item-block .col-l .list-dots .item {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.625;
      margin-bottom: 25px;
      letter-spacing: -1px; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .col-l .list-dots .item {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 15px;
          letter-spacing: 0; } }
      .price-block .item-block .col-l .list-dots .item p {
        margin-bottom: 5px; }
      .price-block .item-block .col-l .list-dots .item:last-of-type {
        margin-bottom: 0;
        margin-right: -210px; }
        @media screen and (max-width: 834px) {
          .price-block .item-block .col-l .list-dots .item:last-of-type {
            margin-right: 0; } }
  .price-block .item-block .col-r {
    width: 39.69%;
    padding-top: 55px; }
    @media screen and (max-width: 834px) {
      .price-block .item-block .col-r {
        width: 100%;
        padding-top: 0; } }
    .price-block .item-block .col-r .caption {
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
      text-align: right;
      font-size: 16px;
      font-size: 1.6rem;
      margin-top: 10px; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .col-r .caption {
          font-size: 14px;
          font-size: 1.4rem; } }
  .price-block .item-block .txt-desc {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.375;
    margin-bottom: 30px; }
    @media screen and (max-width: 834px) {
      .price-block .item-block .txt-desc {
        font-size: 12px;
        font-size: 1.2rem; } }
  .price-block .item-block .table-ttl {
    font-size: 19.57px;
    font-size: 1.957rem;
    font-weight: 500;
    margin-bottom: 12px; }
    @media screen and (max-width: 834px) {
      .price-block .item-block .table-ttl {
        font-size: 15px;
        font-size: 1.5rem; } }
  .price-block .item-block .table table {
    width: 100%;
    background: #fff; }
    @media screen and (max-width: 640px) {
      .price-block .item-block .table table {
        width: 500px; } }
    .price-block .item-block .table table tr th, .price-block .item-block .table table tr td {
      width: 33.33%;
      background: #000;
      padding: 7px 0; }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .price-block .item-block .table table tr th, .price-block .item-block .table table tr td {
          padding: 11px 0 3px; } }
    .price-block .item-block .table table tr th {
      font-size: 17.59px;
      font-size: 1.759rem;
      color: #fff;
      background: #009650;
      text-align: center;
      border-right: 5px solid #fff; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .table table tr th {
          font-size: 15px;
          font-size: 1.5rem; } }
      .price-block .item-block .table table tr th:last-of-type {
        border-right: none; }
    .price-block .item-block .table table tr td {
      font-size: 20px;
      font-size: 2rem;
      text-align: center;
      background: #fff;
      border-bottom: 1px solid #babbbc;
      padding: 8px 0; }
      @media screen and (max-width: 834px) {
        .price-block .item-block .table table tr td {
          font-size: 16px;
          font-size: 1.6rem; } }
      @media all and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        .price-block .item-block .table table tr td {
          padding: 16px 0 2px; } }
      .price-block .item-block .table table tr td:first-of-type {
        background: #f2f2f2; }
      .price-block .item-block .table table tr td:last-of-type {
        font-weight: bold; }
    .price-block .item-block .table table tr:last-of-type td {
      border-bottom: none; }

@media screen and (max-width: 640px) {
  .scroll {
    overflow: auto;
    margin-right: -25px; } }

.forestry-block {
  margin: 43px 0 0; }
  @media screen and (max-width: 834px) {
    .forestry-block {
      margin: 30px 0 0; } }
  .forestry-block .box-check {
    margin-bottom: 104px; }
    @media screen and (max-width: 834px) {
      .forestry-block .box-check {
        margin-bottom: 50px; } }
    .forestry-block .box-check .list-check {
      max-width: 766px;
      margin: 0 auto; }
.forestry-box {
  padding: 0 0 6px; }
  @media screen and (max-width: 834px) {
    .forestry-box {
      padding: 0; } }
  .forestry-box__item {
    margin-bottom: 66px; }
    @media screen and (max-width: 834px) {
      .forestry-box__item {
        margin-bottom: 50px; } }
    .forestry-box__item:last-child {
      margin-bottom: 0; }
  .forestry-box__des {
    margin-bottom: 35px;
    padding: 0 0 0 6px; }
    @media screen and (max-width: 834px) {
      .forestry-box__des {
        margin-bottom: 15px;
        padding: 0; } }
  .forestry-box__list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -17px; }
    @media screen and (max-width: 1024px) {
      .forestry-box__list {
        margin: 0 -5px; } }
    .forestry-box__list .list-item {
      width: 33.33%;
      padding: 0 17px;
      margin-bottom: 35px; }
      @media screen and (max-width: 1024px) {
        .forestry-box__list .list-item {
          padding: 0 5px;
          margin-bottom: 10px; } }
      @media screen and (max-width: 640px) {
        .forestry-box__list .list-item {
          width: 50%; } }
      @media screen and (max-width: 374px) {
        .forestry-box__list .list-item {
          width: 100%; } }
      .forestry-box__list .list-item .txt-basic {
        line-height: 1.66;
        font-feature-settings: "palt" 1;
        padding: 0 4px; }
      .forestry-box__list .list-item--full {
        width: 100%;
        margin-top: 2px; }
        @media screen and (max-width: 834px) {
          .forestry-box__list .list-item--full {
            margin: 0; } }
        @media screen and (min-width: 835px) {
          .forestry-box__list .list-item--full .list-inn {
            padding: 24px 15px 29px 16px; }
          .forestry-box__list .list-item--full .list-ttl {
            margin-bottom: 9px; } }
    .forestry-box__list .list-inn {
      display: block;
      width: 100%;
      height: 100%;
      padding: 10px 15px 4px 16px;
      border: 4px solid #dedede;
      border-radius: 15px;
      min-height: 374px; }
      @media screen and (max-width: 834px) {
        .forestry-box__list .list-inn {
          padding: 10px;
          border-radius: 10px;
          border-width: 2px;
          min-height: auto; } }
    .forestry-box__list .list-ttl {
      display: flex;
      align-items: center;
      font-weight: bold;
      margin-bottom: 11px; }
      .forestry-box__list .list-ttl .number {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 46px;
        width: 46px;
        height: 46px;
        border-radius: 50%;
        background: #009650;
        color: white;
        font-size: 20px;
        font-size: 2rem;
        position: relative;
        padding: 0 0 8px 0;
        margin-right: 16px; }
        @media screen and (max-width: 1024px) {
          .forestry-box__list .list-ttl .number {
            font-size: 17.5px;
            font-size: 1.75rem; } }
        @media screen and (max-width: 834px) {
          .forestry-box__list .list-ttl .number {
            font-size: 15px;
            font-size: 1.5rem;
            min-width: 32px;
            width: 32px;
            height: 32px;
            padding: 0 0 5px;
            margin-right: 10px; } }
        .forestry-box__list .list-ttl .number:before {
          position: absolute;
          content: '';
          height: 3px;
          width: 14px;
          background: white;
          left: 50%;
          transform: translateX(-50%);
          bottom: 9px; }
          @media screen and (max-width: 834px) {
            .forestry-box__list .list-ttl .number:before {
              bottom: 5px;
              height: 2px; } }
      .forestry-box__list .list-ttl .txt {
        font-size: 23px;
        font-size: 2.3rem;
        padding: 0 0 2px 0; }
        @media screen and (max-width: 1024px) {
          .forestry-box__list .list-ttl .txt {
            font-size: 20px;
            font-size: 2rem; } }
        @media screen and (max-width: 834px) {
          .forestry-box__list .list-ttl .txt {
            font-size: 17px;
            font-size: 1.7rem;
            padding: 0;
            font-feature-settings: "palt" 1; } }
    .forestry-box__list .list-img {
      margin-bottom: 10px; }
      .forestry-box__list .list-img img {
        display: block;
        width: 100%;
        border-radius: 5px; }
    .forestry-box__list .list-f {
      display: flex;
      flex-wrap: wrap;
      margin: 0 -10px;
      font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif; }
      @media screen and (max-width: 834px) {
        .forestry-box__list .list-f {
          margin: 0 -5px; } }
      .forestry-box__list .list-f .f-item {
        width: 33.33%;
        padding: 0 10px;
        max-width: 294px; }
        @media screen and (max-width: 834px) {
          .forestry-box__list .list-f .f-item {
            padding: 0 5px; } }
        .forestry-box__list .list-f .f-item:nth-child(3n+2) {
          margin: 0 auto; }
        .forestry-box__list .list-f .f-item .list-img {
          position: relative;
          margin-bottom: 56px; }
          @media screen and (max-width: 834px) {
            .forestry-box__list .list-f .f-item .list-img {
              margin-bottom: 30px; } }
          .forestry-box__list .list-f .f-item .list-img:after {
            position: absolute;
            content: '';
            border-top: 22px solid #949494;
            border-left: 14px solid transparent;
            border-right: 14px solid transparent;
            bottom: -43px;
            left: calc(50% - 14px); }
            @media screen and (max-width: 834px) {
              .forestry-box__list .list-f .f-item .list-img:after {
                border-width: 16px 10px 0 10px;
                bottom: -24px; } }
          .forestry-box__list .list-f .f-item .list-img .note {
            position: absolute;
            bottom: 0;
            left: 0;
            font-size: 16px;
            font-size: 1.6rem;
            font-weight: 500;
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            width: 67px;
            height: 28px;
            background: #003d92; }
            @media screen and (max-width: 834px) {
              .forestry-box__list .list-f .f-item .list-img .note {
                font-size: 14px;
                font-size: 1.4rem;
                width: 60px;
                height: 24px; } }
          .forestry-box__list .list-f .f-item .list-img:nth-child(even) .note {
            background: #ff8200; }
          .forestry-box__list .list-f .f-item .list-img:last-child {
            margin-bottom: 0; }
            .forestry-box__list .list-f .f-item .list-img:last-child:after {
              display: none; }
  .forestry-box__subTtl {
    font-weight: bold;
    color: #009650;
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 1.2;
    margin: 0 0 16px; }
    @media screen and (max-width: 1024px) {
      .forestry-box__subTtl {
        font-size: 22px;
        font-size: 2.2rem; } }
    @media screen and (max-width: 834px) {
      .forestry-box__subTtl {
        font-size: 19px;
        font-size: 1.9rem;
        margin: 0 0 15px; } }
    .forestry-box__subTtl + .txt-basic {
      line-height: 2;
      font-feature-settings: "palt" 1;
      letter-spacing: -0.1px;
      margin-bottom: 46px; }
      @media screen and (max-width: 834px) {
        .forestry-box__subTtl + .txt-basic {
          letter-spacing: 0;
          margin-bottom: 30px; } }
  .forestry-box__list02 {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -50px 17px; }
    @media screen and (max-width: 990px) {
      .forestry-box__list02 {
        margin: 0 -30px 20px; } }
    @media screen and (max-width: 834px) {
      .forestry-box__list02 {
        margin: 0 -15px 20px; } }
    .forestry-box__list02 .list02-item {
      width: 50%;
      padding: 0 50px;
      margin-bottom: 50px; }
      @media screen and (max-width: 990px) {
        .forestry-box__list02 .list02-item {
          padding: 0 30px;
          margin-bottom: 30px; } }
      @media screen and (max-width: 834px) {
        .forestry-box__list02 .list02-item {
          padding: 0 15px; } }
      .forestry-box__list02 .list02-item:nth-child(even) .list02-img:after {
        display: none; }
      .forestry-box__list02 .list02-item:nth-child(even) .list02-ttl > * {
        background: #ff8200; }
      .forestry-box__list02 .list02-item .txt-basic {
        line-height: 1.66; }
    .forestry-box__list02 .list02-img {
      position: relative;
      margin-bottom: 20px; }
      .forestry-box__list02 .list02-img:after {
        position: absolute;
        content: '';
        border-left: 22px solid #949494;
        border-top: 14px solid transparent;
        border-bottom: 14px solid transparent;
        right: -65px;
        top: calc(50% - 13px); }
        @media screen and (max-width: 990px) {
          .forestry-box__list02 .list02-img:after {
            right: -42px; } }
        @media screen and (max-width: 834px) {
          .forestry-box__list02 .list02-img:after {
            border-width: 10px 0 10px 16px;
            right: -24px; } }
      .forestry-box__list02 .list02-img img {
        display: block;
        width: 100%;
        border-radius: 15px; }
    .forestry-box__list02 .list02-ttl {
      display: flex;
      justify-content: center;
      margin-bottom: 15px; }
      .forestry-box__list02 .list02-ttl > * {
        font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "Meiryo", "メイリオ", "MS Pゴシック", Arial, Helvetica, Verdana, sans-serif;
        font-weight: 500;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.2;
        min-width: 140px;
        min-height: 26px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        background: #009650;
        color: white;
        border-radius: 13px;
        padding: 3px 0 0 0; }
        @media screen and (max-width: 1024px) {
          .forestry-box__list02 .list02-ttl > * {
            font-size: 18px;
            font-size: 1.8rem; } }
        @media screen and (max-width: 834px) {
          .forestry-box__list02 .list02-ttl > * {
            font-size: 16px;
            font-size: 1.6rem;
            padding: 0; } }
  .forestry-box__wrap {
    background: #e4f6e8;
    border-radius: 10px;
    padding: 27px 28px 28px 28px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: 68px; }
    @media screen and (max-width: 834px) {
      .forestry-box__wrap {
        padding: 15px;
        margin-bottom: 30px; } }
    .forestry-box__wrap .wrap-ttl {
      font-size: 23px;
      font-size: 2.3rem;
      font-weight: bold;
      line-height: 1.41;
      width: 167px;
      padding: 3px 0 0 0;
      font-feature-settings: "palt" 1;
      letter-spacing: 1.5px; }
      @media screen and (max-width: 1024px) {
        .forestry-box__wrap .wrap-ttl {
          font-size: 20px;
          font-size: 2rem; } }
      @media screen and (max-width: 834px) {
        .forestry-box__wrap .wrap-ttl {
          font-size: 17px;
          font-size: 1.7rem;
          letter-spacing: 1px;
          padding: 0; } }
      @media screen and (max-width: 640px) {
        .forestry-box__wrap .wrap-ttl {
          width: 100%;
          text-align: center;
          margin-bottom: 15px; } }
    .forestry-box__wrap .wrap-img {
      display: flex;
      width: calc(100% - 167px); }
      @media screen and (max-width: 640px) {
        .forestry-box__wrap .wrap-img {
          width: 100%; } }
      .forestry-box__wrap .wrap-img > * {
        width: 48.2%; }
        .forestry-box__wrap .wrap-img > *:nth-child(even) {
          margin-left: auto; }
      .forestry-box__wrap .wrap-img img {
        display: block;
        width: 100%;
        border-radius: 10px; }

.service_ttl {
  font-weight: 600;
  margin-bottom: 5rem; }

.service_list {
  padding: 30px;
  border: 3px solid #ccc;
  border-radius: 5px;
  transition: all 0.2s;
  margin-bottom: 1.75rem; }
  .service_list h3 {
    font-weight: 600; }
  .service_list p {
    display: block;
    padding-top: 2rem; }

.service_list:hover {
  border: 3px solid #009650;
  background: #EAEDF3; }

/*# sourceMappingURL=styles.css.map */
