@charset "UTF-8";
/*-------------------------------------------
 variable
-------------------------------------------*/
/***  color  ***/
/***  font-size  ***/
/***  screen  ***/
/***  font(NotoSansJP)  ***/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
/***  point  ***/
/*-------------------------------------------
 reset
-------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, button, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video,
main {
  margin: 0;
  padding: 0;
  border: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  vertical-align: baseline; }

ol, ul {
  list-style: none; }

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

input[type="submit"],
input[type="button"] {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }

select {
  background-color: transparent;
  color: #000000;
  border: none;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer; }

/*-------------------------------------------
 style
-------------------------------------------*/
/***  tag  ***/
html {
  font-size: 62.5%; }
  @media screen and (max-width: 767px) {
    html {
      font-size: 57.5%; } }
  @media screen and (max-width: 500px) {
    html {
      font-size: 52.5%; } }

body {
  font-family: 'Noto Sans JP','游ゴシック Medium',YuGothic,YuGothicM,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro',メイリオ,Meiryo,sans-serif;
  font-weight: 400;
  color: #261A0C;
  font-size: 1.8rem;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  line-height: 1; }

ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  ul li {
    list-style-type: inherit; }

button {
  background: none;
  border: none;
  padding: 0; }

a {
  color: #333333;
  text-decoration: none;
  -webkit-transition: all ease-in-out .2s;
  transition: all ease-in-out .2s; }
  a:hover {
    opacity: 0.6;
    -webkit-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s; }
    @media screen and (max-width: 500px) {
      a:hover {
        opacity: 1.0; } }

h1, h2, h3, h4, h5 {
  font-weight: normal; }

main {
  overflow-x: hidden;
  position: relative; }

article {
  max-width: 100%;
  width: 100%; }

section {
  max-width: 1064px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.0rem;
  padding-right: 2.0rem; }

img {
  max-width: 100%; }
  img.circle {
    -webkit-clip-path: circle(50% at 50% 50%);
            clip-path: circle(50% at 50% 50%); }

img.line {
  border: 1px solid #dddddd; }
img.corner {
  border-radius: 0 !important; }

p {
  color: #333333;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 2.0;
  text-align: justify;
  margin-bottom: 2.0rem; }
  p strong {
    font-weight: 700; }
  p b {
    font-weight: 700; }
  p u {
    color: #EC1212;
    font-style: normal;
    text-decoration: none; }

/*-------------------------------------------
 class common
-------------------------------------------*/
body .pt00 {
  padding-top: 0; }
body .pt05 {
  padding-top: 0.5rem; }
body .pt10 {
  padding-top: 1.0rem; }
body .pt15 {
  padding-top: 1.5rem; }
body .pt20 {
  padding-top: 2.0rem; }
body .pt25 {
  padding-top: 2.5rem; }
body .pt30 {
  padding-top: 3.0rem; }
body .pt35 {
  padding-top: 3.5rem; }
body .pt40 {
  padding-top: 4.0rem; }
body .pt45 {
  padding-top: 4.5rem; }
body .pt50 {
  padding-top: 5.0rem; }
body .pr00 {
  padding-right: 0; }
body .pr05 {
  padding-right: 0.5rem; }
body .pr10 {
  padding-right: 1.0rem; }
body .pr15 {
  padding-right: 1.5rem; }
body .pr20 {
  padding-right: 2.0rem; }
body .pr25 {
  padding-right: 2.5rem; }
body .pr30 {
  padding-right: 3.0rem; }
body .pr35 {
  padding-right: 3.5rem; }
body .pr40 {
  padding-right: 4.0rem; }
body .pr45 {
  padding-right: 4.5rem; }
body .pr50 {
  padding-right: 5.0rem; }
body .pb00 {
  padding-bottom: 0; }
body .pb05 {
  padding-bottom: 0.5rem; }
body .pb10 {
  padding-bottom: 1.0rem; }
body .pb15 {
  padding-bottom: 1.5rem; }
body .pb20 {
  padding-bottom: 2.0rem; }
body .pb25 {
  padding-bottom: 2.5rem; }
body .pb30 {
  padding-bottom: 3.0rem; }
body .pb35 {
  padding-bottom: 3.5rem; }
body .pb40 {
  padding-bottom: 4.0rem; }
body .pb45 {
  padding-bottom: 4.5rem; }
body .pb50 {
  padding-bottom: 5.0rem; }
body .pl00 {
  padding-left: 0; }
body .pl05 {
  padding-left: 0.5rem; }
body .pl10 {
  padding-left: 1.0rem; }
body .pl15 {
  padding-left: 1.5rem; }
body .pl20 {
  padding-left: 2.0rem; }
body .pl25 {
  padding-left: 2.5rem; }
body .pl30 {
  padding-left: 3.0rem; }
body .pl35 {
  padding-left: 3.5rem; }
body .pl40 {
  padding-left: 4.0rem; }
body .pl45 {
  padding-left: 4.5rem; }
body .pl50 {
  padding-left: 5.0rem; }
body .mt00 {
  margin-top: 0; }
body .mt05 {
  margin-top: 0.5rem; }
body .mt10 {
  margin-top: 1.0rem; }
body .mt15 {
  margin-top: 1.5rem; }
body .mt20 {
  margin-top: 2.0rem; }
body .mt25 {
  margin-top: 2.5rem; }
body .mt30 {
  margin-top: 3.0rem; }
body .mt35 {
  margin-top: 3.5rem; }
body .mt40 {
  margin-top: 4.0rem; }
body .mt45 {
  margin-top: 4.5rem; }
body .mt50 {
  margin-top: 5.0rem; }
body .mr00 {
  margin-right: 0; }
body .mr05 {
  margin-right: 0.5rem; }
body .mr10 {
  margin-right: 1.0rem; }
body .mr15 {
  margin-right: 1.5rem; }
body .mr20 {
  margin-right: 2.0rem; }
body .mr25 {
  margin-right: 2.5rem; }
body .mr30 {
  margin-right: 3.0rem; }
body .mr35 {
  margin-right: 3.5rem; }
body .mr40 {
  margin-right: 4.0rem; }
body .mr45 {
  margin-right: 4.5rem; }
body .mr50 {
  margin-right: 5.0rem; }
body .mb00 {
  margin-bottom: 0; }
body .mb05 {
  margin-bottom: 0.5rem; }
body .mb10 {
  margin-bottom: 1.0rem; }
body .mb15 {
  margin-bottom: 1.5rem; }
body .mb20 {
  margin-bottom: 2.0rem; }
body .mb25 {
  margin-bottom: 2.5rem; }
body .mb30 {
  margin-bottom: 3.0rem; }
body .mb35 {
  margin-bottom: 3.5rem; }
body .mb40 {
  margin-bottom: 4.0rem; }
body .mb45 {
  margin-bottom: 4.5rem; }
body .mb50 {
  margin-bottom: 5.0rem; }
body .ml00 {
  margin-left: 0; }
body .ml05 {
  margin-left: 0.5rem; }
body .ml10 {
  margin-left: 1.0rem; }
body .ml15 {
  margin-left: 1.5rem; }
body .ml20 {
  margin-left: 2.0rem; }
body .ml25 {
  margin-left: 2.5rem; }
body .ml30 {
  margin-left: 3.0rem; }
body .ml35 {
  margin-left: 3.5rem; }
body .ml40 {
  margin-left: 4.0rem; }
body .ml45 {
  margin-left: 4.5rem; }
body .ml50 {
  margin-left: 5.0rem; }
body .mt-05 {
  margin-top: -0.5rem; }
body .mt-10 {
  margin-top: -1.0rem; }
body .mt-15 {
  margin-top: -1.5rem; }
body .mt-20 {
  margin-top: -2.0rem; }
body .mt-25 {
  margin-top: -2.5rem; }
body .mt-30 {
  margin-top: -3.0rem; }
body .mt-35 {
  margin-top: -3.5rem; }
body .mt-40 {
  margin-top: -4.0rem; }
body .mt-45 {
  margin-top: -4.5rem; }
body .mt-50 {
  margin-top: -5.0rem; }
body .mr-05 {
  margin-right: -0.5rem; }
body .mr-10 {
  margin-right: -1.0rem; }
body .mr-15 {
  margin-right: -1.5rem; }
body .mr-20 {
  margin-right: -2.0rem; }
body .mr-25 {
  margin-right: -2.5rem; }
body .mr-30 {
  margin-right: -3.0rem; }
body .mr-35 {
  margin-right: -3.5rem; }
body .mr-40 {
  margin-right: -4.0rem; }
body .mr-45 {
  margin-right: -4.5rem; }
body .mr-50 {
  margin-right: -5.0rem; }
body .mb-05 {
  margin-bottom: -0.5rem; }
body .mb-10 {
  margin-bottom: -1.0rem; }
body .mb-15 {
  margin-bottom: -1.5rem; }
body .mb-20 {
  margin-bottom: -2.0rem; }
body .mb-25 {
  margin-bottom: -2.5rem; }
body .mb-30 {
  margin-bottom: -3.0rem; }
body .mb-35 {
  margin-bottom: -3.5rem; }
body .mb-40 {
  margin-bottom: -4.0rem; }
body .mb-45 {
  margin-bottom: -4.5rem; }
body .mb-50 {
  margin-bottom: -5.0rem; }
body .ml-05 {
  margin-left: -0.5rem; }
body .ml-10 {
  margin-left: -1.0rem; }
body .ml-15 {
  margin-left: -1.5rem; }
body .ml-20 {
  margin-left: -2.0rem; }
body .ml-25 {
  margin-left: -2.5rem; }
body .ml-30 {
  margin-left: -3.0rem; }
body .ml-35 {
  margin-left: -3.5rem; }
body .ml-40 {
  margin-left: -4.0rem; }
body .ml-45 {
  margin-left: -4.5rem; }
body .ml-50 {
  margin-left: -5.0rem; }
body .tc {
  text-align: center; }
body .tl {
  text-align: left; }
body .tr {
  text-align: right; }
body .bb-n {
  border-bottom: none !important; }
body .mincho {
  font-family: 'Noto Serif JP'; }

.logos {
  overflow: hidden;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 50px; }
  .logos .icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: absolute;
    left: 0;
    margin-left: -1000px;
    -webkit-transition: 0;
    transition: 0; }
    .logos .icon.move01 {
      -webkit-transform: translateX(150px);
              transform: translateX(150px);
      -webkit-transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6);
      transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6); }
    .logos .icon.move02 {
      -webkit-transform: translateX(300px);
              transform: translateX(300px);
      -webkit-transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6);
      transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6); }
    .logos .icon.move-01 {
      -webkit-transform: translateX(-150px);
              transform: translateX(-150px);
      -webkit-transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6);
      transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6); }
    .logos .icon.move-02 {
      -webkit-transform: translateX(-300px);
              transform: translateX(-300px);
      -webkit-transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6);
      transition: 0.8s cubic-bezier(0.9, -0.6, 0.21, 1.6); }
    .logos .icon:nth-of-type(1) {
      top: 150px; }
    .logos .icon:nth-of-type(2) {
      top: 300px; }
    .logos .icon:nth-of-type(3) {
      top: 450px; }
    .logos .icon:nth-of-type(4) {
      top: 600px; }
    .logos .icon:nth-of-type(5) {
      top: 750px; }
    .logos .icon:nth-of-type(6) {
      top: 900px; }
    .logos .icon:nth-of-type(7) {
      top: 1050px; }
    .logos .icon:nth-of-type(8) {
      top: 1200px; }
    .logos .icon:nth-of-type(9) {
      top: 1350px; }
    .logos .icon:nth-of-type(10) {
      top: 1500px; }
    .logos .icon:nth-of-type(11) {
      top: 1650px; }
    .logos .icon:nth-of-type(12) {
      top: 1800px; }
    .logos .icon:nth-of-type(13) {
      top: 1950px; }
    .logos .icon:nth-of-type(14) {
      top: 2100px; }
    .logos .icon:nth-of-type(15) {
      top: 2250px; }
    .logos .icon:nth-of-type(16) {
      top: 2400px; }
    .logos .icon:nth-of-type(17) {
      top: 2550px; }
    .logos .icon:nth-of-type(18) {
      top: 2700px; }
    .logos .icon:nth-of-type(19) {
      top: 2850px; }
    .logos .icon:nth-of-type(20) {
      top: 3000px; }
    .logos .icon:nth-of-type(21) {
      top: 3150px; }
    .logos .icon:nth-of-type(22) {
      top: 3300px; }
    .logos .icon:nth-of-type(23) {
      top: 3450px; }
    .logos .icon:nth-of-type(24) {
      top: 3600px; }
    .logos .icon:nth-of-type(25) {
      top: 3750px; }
    .logos .icon:nth-of-type(26) {
      top: 3900px; }
    .logos .icon:nth-of-type(27) {
      top: 4050px; }
    .logos .icon:nth-of-type(28) {
      top: 4200px; }
    .logos .icon:nth-of-type(29) {
      top: 4350px; }
    .logos .icon:nth-of-type(30) {
      top: 4500px; }
    .logos .icon:nth-of-type(31) {
      top: 4650px; }
    .logos .icon:nth-of-type(32) {
      top: 4800px; }
    .logos .icon:nth-of-type(33) {
      top: 4950px; }
    .logos .icon:nth-of-type(34) {
      top: 5100px; }
    .logos .icon:nth-of-type(35) {
      top: 5250px; }
    .logos .icon:nth-of-type(36) {
      top: 5400px; }
    .logos .icon:nth-of-type(37) {
      top: 5550px; }
    .logos .icon:nth-of-type(38) {
      top: 5700px; }
    .logos .icon:nth-of-type(39) {
      top: 5850px; }
    .logos .icon:nth-of-type(40) {
      top: 6000px; }
    .logos .icon:nth-of-type(41) {
      top: 6150px; }
    .logos .icon:nth-of-type(42) {
      top: 6300px; }
    .logos .icon:nth-of-type(43) {
      top: 6450px; }
    .logos .icon:nth-of-type(44) {
      top: 6600px; }
    .logos .icon:nth-of-type(45) {
      top: 6750px; }
    .logos .icon:nth-of-type(46) {
      top: 6900px; }
    .logos .icon:nth-of-type(47) {
      top: 7050px; }
    .logos .icon:nth-of-type(48) {
      top: 7200px; }
    .logos .icon:nth-of-type(49) {
      top: 7350px; }
    .logos .icon:nth-of-type(50) {
      top: 7500px; }
    .logos .icon:nth-of-type(51) {
      top: 7650px; }
    .logos .icon:nth-of-type(52) {
      top: 7800px; }
    .logos .icon:nth-of-type(53) {
      top: 7950px; }
    .logos .icon:nth-of-type(54) {
      top: 8100px; }
    .logos .icon:nth-of-type(55) {
      top: 8250px; }
    .logos .icon:nth-of-type(56) {
      top: 8400px; }
    .logos .icon:nth-of-type(57) {
      top: 8550px; }
    .logos .icon:nth-of-type(58) {
      top: 8700px; }
    .logos .icon:nth-of-type(59) {
      top: 8850px; }
    .logos .icon:nth-of-type(60) {
      top: 9000px; }
    .logos .icon:nth-of-type(61) {
      top: 9150px; }
    .logos .icon:nth-of-type(62) {
      top: 9300px; }
    .logos .icon:nth-of-type(63) {
      top: 9450px; }
    .logos .icon:nth-of-type(64) {
      top: 9600px; }
    .logos .icon:nth-of-type(65) {
      top: 9750px; }
    .logos .icon:nth-of-type(66) {
      top: 9900px; }
    .logos .icon:nth-of-type(67) {
      top: 10050px; }
    .logos .icon:nth-of-type(68) {
      top: 10200px; }
    .logos .icon:nth-of-type(69) {
      top: 10350px; }
    .logos .icon:nth-of-type(70) {
      top: 10500px; }
    .logos .icon:nth-of-type(71) {
      top: 10650px; }
    .logos .icon:nth-of-type(72) {
      top: 10800px; }
    .logos .icon:nth-of-type(73) {
      top: 10950px; }
    .logos .icon:nth-of-type(74) {
      top: 11100px; }
    .logos .icon:nth-of-type(75) {
      top: 11250px; }
    .logos .icon:nth-of-type(76) {
      top: 11400px; }
    .logos .icon:nth-of-type(77) {
      top: 11550px; }
    .logos .icon:nth-of-type(78) {
      top: 11700px; }
    .logos .icon:nth-of-type(79) {
      top: 11850px; }
    .logos .icon:nth-of-type(80) {
      top: 12000px; }
    .logos .icon:nth-of-type(81) {
      top: 12150px; }
    .logos .icon:nth-of-type(82) {
      top: 12300px; }
    .logos .icon:nth-of-type(83) {
      top: 12450px; }
    .logos .icon:nth-of-type(84) {
      top: 12600px; }
    .logos .icon:nth-of-type(85) {
      top: 12750px; }
    .logos .icon:nth-of-type(86) {
      top: 12900px; }
    .logos .icon:nth-of-type(87) {
      top: 13050px; }
    .logos .icon:nth-of-type(88) {
      top: 13200px; }
    .logos .icon:nth-of-type(89) {
      top: 13350px; }
    .logos .icon:nth-of-type(90) {
      top: 13500px; }
    .logos .icon:nth-of-type(91) {
      top: 13650px; }
    .logos .icon:nth-of-type(92) {
      top: 13800px; }
    .logos .icon:nth-of-type(93) {
      top: 13950px; }
    .logos .icon:nth-of-type(94) {
      top: 14100px; }
    .logos .icon:nth-of-type(95) {
      top: 14250px; }
    .logos .icon:nth-of-type(96) {
      top: 14400px; }
    .logos .icon:nth-of-type(97) {
      top: 14550px; }
    .logos .icon:nth-of-type(98) {
      top: 14700px; }
    .logos .icon:nth-of-type(99) {
      top: 14850px; }
    .logos .icon:nth-of-type(100) {
      top: 15000px; }
    .logos .icon:nth-of-type(odd) span:nth-of-type(odd), .logos .icon:nth-of-type(odd) span:nth-of-type(even) {
      background-image: url("../img/common/logo_mizuho_04.svg"); }
    .logos .icon:nth-of-type(even) span:nth-of-type(even), .logos .icon:nth-of-type(even) span:nth-of-type(odd) {
      background-image: url("../img/common/logo_mizuho_04.svg"); }
    .logos .icon.anime span {
      -webkit-animation: linkanime 2.0s ease-in-out;
              animation: linkanime 2.0s ease-in-out;
      -webkit-transition: 0.4s cubic-bezier(0.9, -0.6, 0.21, 1.6);
      transition: 0.4s cubic-bezier(0.9, -0.6, 0.21, 1.6); }
    .logos .icon span {
      display: block;
      width: 50px;
      height: 50px;
      background: no-repeat center center;
      background-size: 50px auto;
      margin: 0 50px;
      opacity: 0;
      scale: 0; }
      .logos .icon span.load {
        -webkit-transform: translateY(0);
                transform: translateY(0);
        -webkit-transition: 0.4s cubic-bezier(0.9, -0.6, 0.21, 1.6);
        transition: 0.4s cubic-bezier(0.9, -0.6, 0.21, 1.6);
        opacity: 1;
        scale: 1; }

@-webkit-keyframes linkanime {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  25% {
    -webkit-transform: scale(1.5) rotate(2turn);
            transform: scale(1.5) rotate(2turn); }
  50% {
    -webkit-transform: scale(0.5);
            transform: scale(0.5); }
  75% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }

@keyframes linkanime {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1); }
  25% {
    -webkit-transform: scale(1.5) rotate(2turn);
            transform: scale(1.5) rotate(2turn); }
  50% {
    -webkit-transform: scale(0.5);
            transform: scale(0.5); }
  75% {
    -webkit-transform: scale(1.25);
            transform: scale(1.25); }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1); } }
/*--------------------------------------

	kv

--------------------------------------*/
/*** header  ***/
header {
  position: fixed;
  left: calc(50% - 210px);
  bottom: 5.0rem;
  z-index: 999; }
  @media screen and (max-width: 500px) {
    header {
      width: 100%;
      left: 0;
      bottom: 2.0rem;
      padding-left: 2.0rem;
      padding-right: 2.0rem; } }
  header .wrap {
    background-color: rgba(255, 255, 255, 0.8);
    width: 420px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    padding: 1.5rem 2.5rem;
    border: 1px solid #BDCAD6;
    border-radius: 8.0rem; }
    @media screen and (max-width: 500px) {
      header .wrap {
        max-width: 420px;
        width: 100%;
        padding: 1.5rem 2.0rem; } }
    header .wrap h1 {
      max-width: 280px;
      width: 100%; }
      @media screen and (max-width: 500px) {
        header .wrap h1 {
          width: calc(100% - 8.0rem); } }
      header .wrap h1 img {
        width: 100%; }
    header .wrap .burger {
      background-color: #EC1212;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: 6.0rem;
      height: 6.0rem;
      border-radius: 6.0rem;
      position: relative;
      cursor: pointer; }
      header .wrap .burger .memu02 {
        display: none;
        position: absolute; }

.menu-wrap {
  display: none;
  background-color: rgba(255, 255, 255, 0.95);
  width: 100%;
  height: 100%;
  overflow-y: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  position: fixed;
  top: 0;
  z-index: 998; }
  @media screen and (max-width: 500px) {
    .menu-wrap {
      padding-left: 0;
      padding-right: 0; } }
  .menu-wrap .wrap {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center; }
    @media screen and (max-width: 500px) {
      .menu-wrap .wrap {
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: start; } }
  .menu-wrap .menu {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding-bottom: 5.0rem; }
    @media screen and (max-width: 500px) {
      .menu-wrap .menu {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        padding-bottom: 15.0rem; } }
  @media screen and (max-width: 500px) {
    .menu-wrap .logo {
      background-color: #ffffff;
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      padding: 2.5rem 2.0rem 2.0rem;
      margin-bottom: 1.0rem; } }
  .menu-wrap .logo figure {
    width: 120px;
    padding-right: 2.5rem; }
    @media screen and (max-width: 500px) {
      .menu-wrap .logo figure {
        width: 260px;
        padding-right: 0; } }
    .menu-wrap .logo figure img {
      width: 100%; }
      @media screen and (max-width: 1000px) {
        .menu-wrap .logo figure img.pc {
          display: none; } }
      .menu-wrap .logo figure img.sp {
        display: none; }
        @media screen and (max-width: 500px) {
          .menu-wrap .logo figure img.sp {
            display: block; } }
  .menu-wrap ul:nth-of-type(1) {
    padding-right: 4.0rem; }
    @media screen and (max-width: 500px) {
      .menu-wrap ul:nth-of-type(1) {
        width: 100%;
        padding-right: 0; } }
  .menu-wrap ul li {
    margin-bottom: 1.0rem; }
    @media screen and (max-width: 500px) {
      .menu-wrap ul li {
        width: 100%;
        margin-bottom: 0; } }
    .menu-wrap ul li a {
      color: #233664;
      font-size: 1.8rem;
      font-weight: 700;
      line-height: 1.3;
      padding: 1.0rem 0;
      display: block; }
      @media screen and (max-width: 500px) {
        .menu-wrap ul li a {
          width: 100%;
          padding-left: 2.0rem;
          padding-right: 2.0rem; } }
      .menu-wrap ul li a span {
        color: #EA6067;
        font-size: 1.6rem;
        font-weight: 400;
        display: block;
        margin-top: 0.5rem; }
        @media screen and (max-width: 500px) {
          .menu-wrap ul li a span {
            margin-top: 0; } }
    .menu-wrap ul li .sub-menu {
      padding-left: 2.0rem;
      padding-right: 0; }
      @media screen and (max-width: 500px) {
        .menu-wrap ul li .sub-menu {
          padding-left: 4.0rem; } }
      .menu-wrap ul li .sub-menu li {
        margin-bottom: 0.5rem; }
      .menu-wrap ul li .sub-menu a {
        font-size: 1.6rem;
        font-weight: 600;
        padding: 0.5rem 0; }

.band {
  background-image: url("../img/common/band_mizuho_01.jpg");
  background-size: cover;
  background-position: center;
  width: 100%;
  max-width: 100%;
  height: 30.0rem;
  position: relative; }
  .band.transport {
    background-image: url("../img/common/band_transport_01.jpg"); }
  .band.civil-engineering {
    background-image: url("../img/common/band_civil-engineering_01.jpg"); }
  .band.playground {
    background-image: url("../img/common/band_playground_01.jpg"); }
  .band.building {
    background-image: url("../img/common/band_building_01.jpg"); }
  .band .wrap {
    background: rgba(45, 132, 242, 0.5);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    width: 28.0rem;
    height: 100%; }
    @media screen and (max-width: 500px) {
      .band .wrap {
        width: 20.0rem;
        padding-bottom: 1.5rem; } }
    .band .wrap h1 {
      color: #ffffff;
      font-size: 3rem;
      font-weight: 400;
      line-height: 1.2;
      letter-spacing: 0.25rem;
      -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: vertical-rl;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      text-shadow: 0.2rem 0.2rem 0.4rem rgba(0, 0, 0, 0.2);
      padding-top: 3.0rem; }
      @media screen and (max-width: 500px) {
        .band .wrap h1 {
          font-weight: 500;
          letter-spacing: 0;
          padding-top: 2.0rem; } }
      .band .wrap h1 img {
        width: 50px;
        margin-bottom: 1.0rem; }
    .band .wrap .supply {
      color: #ffffff;
      font-size: 1.8rem;
      text-align: right;
      -webkit-writing-mode: vertical-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: vertical-rl;
      margin-right: 0.5rem;
      padding-bottom: 3.0rem; }
      @media screen and (max-width: 500px) {
        .band .wrap .supply {
          padding-bottom: 2.0rem; } }

ul.bread {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  margin-top: 2.0rem;
  position: relative;
  z-index: 9; }
  ul.bread li {
    color: #666666;
    font-size: 1.4rem;
    line-height: 1.3;
    padding-right: 2.6rem;
    position: relative; }
    ul.bread li::after {
      content: '';
      width: 0.6rem;
      height: 0.6rem;
      border-top: solid 1px #666666;
      border-right: solid 1px #666666;
      -webkit-transform: rotate(45deg);
              transform: rotate(45deg);
      position: absolute;
      top: 50%;
      right: 1.3rem;
      margin-top: -0.3rem; }
      @media screen and (max-width: 767px) {
        ul.bread li::after {
          right: 1.0rem;
          margin-top: -0.5rem; } }
    ul.bread li:nth-last-of-type(1)::after {
      content: none; }
    ul.bread li a {
      color: #EA6067; }

/***  footer  ***/
.page-top {
  display: none;
  background-color: #233664;
  width: 6.0rem;
  height: 6.0rem;
  padding: 1.25rem 1.25rem 1.25rem 1.0rem;
  border-radius: 6.0rem;
  position: fixed;
  bottom: 1.0rem;
  right: 1.0rem;
  z-index: 100;
  cursor: pointer; }
  @media screen and (max-width: 500px) {
    .page-top {
      display: none !important; } }
  .page-top img {
    width: 100%; }

footer.top {
  margin-top: 15.0rem;
  margin-bottom: 10.0rem; }
  footer.top h2 {
    color: #261A0C;
    font-size: 2.8rem;
    font-weight: 900;
    line-height: 1.3;
    text-align: center;
    margin-bottom: 2.0rem; }
  footer.top ul.contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%; }
    @media screen and (max-width: 767px) {
      footer.top ul.contact {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    footer.top ul.contact li {
      padding-top: 0.5rem;
      padding-bottom: 0.5rem; }
      footer.top ul.contact li.tel {
        padding-right: 3.0rem;
        border-right: 1px solid #cccccc; }
        @media screen and (max-width: 767px) {
          footer.top ul.contact li.tel {
            margin-bottom: 1.0rem;
            padding-right: 0;
            border-right: none; } }
        footer.top ul.contact li.tel a {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
              -ms-flex-pack: center;
                  justify-content: center;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          -webkit-box-orient: vertical;
          -webkit-box-direction: normal;
              -ms-flex-direction: column;
                  flex-direction: column; }
          footer.top ul.contact li.tel a .ttl {
            font-size: 1.2rem;
            font-weight: 900;
            margin-bottom: 0.5rem; }
          footer.top ul.contact li.tel a .num {
            color: #233664;
            font-size: 3.8rem;
            font-weight: 900;
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: baseline;
                -ms-flex-align: baseline;
                    align-items: baseline; }
      footer.top ul.contact li.mail {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        padding-left: 3.0rem; }
        @media screen and (max-width: 767px) {
          footer.top ul.contact li.mail {
            padding-left: 0; } }
        footer.top ul.contact li.mail a {
          background-color: #ffffff;
          padding: 2.0rem;
          color: #233664;
          font-size: 2.2rem;
          font-weight: 700;
          display: block;
          border-radius: 1.0rem;
          -webkit-box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
                  box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
          position: relative; }
          @media screen and (max-width: 500px) {
            footer.top ul.contact li.mail a {
              font-size: 1.9rem; } }
          footer.top ul.contact li.mail a span {
            display: inline-block;
            padding-left: 1.0rem;
            padding-right: 1.5rem; }
          footer.top ul.contact li.mail a .icon_mail {
            width: 22px; }

footer.bottom {
  background-color: #E3EAEF;
  width: 100%;
  padding-top: 10.0rem;
  padding-bottom: 16.0rem;
  position: relative; }
  @media screen and (max-width: 767px) {
    footer.bottom {
      padding-top: 8.0rem; } }
  footer.bottom .just .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-bottom: 5.0rem; }
    @media screen and (max-width: 767px) {
      footer.bottom .just .wrap {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    @media screen and (max-width: 500px) {
      footer.bottom .just .wrap {
        padding-bottom: 0; } }
    footer.bottom .just .wrap .left {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      -webkit-box-orient: vertical;
      -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
              flex-direction: column-reverse; }
      @media screen and (max-width: 767px) {
        footer.bottom .just .wrap .left {
          width: 100%;
          -ms-flex-pack: distribute;
              justify-content: space-around;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
              -ms-flex-direction: row;
                  flex-direction: row;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center;
          margin-bottom: 6.0rem; } }
      @media screen and (max-width: 500px) {
        footer.bottom .just .wrap .left {
          margin-bottom: 2.0rem; } }
      footer.bottom .just .wrap .left h2 {
        margin-top: 6.0rem; }
        @media screen and (max-width: 767px) {
          footer.bottom .just .wrap .left h2 {
            margin-top: 0; } }
        @media screen and (max-width: 500px) {
          footer.bottom .just .wrap .left h2 {
            display: none; } }
        footer.bottom .just .wrap .left h2 a {
          display: block; }
    footer.bottom .just .wrap .right {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      @media screen and (max-width: 767px) {
        footer.bottom .just .wrap .right {
          -webkit-box-pack: space-evenly;
              -ms-flex-pack: space-evenly;
                  justify-content: space-evenly; } }
      @media screen and (max-width: 500px) {
        footer.bottom .just .wrap .right {
          display: none; } }
      footer.bottom .just .wrap .right ul:nth-of-type(1) {
        padding-right: 5.0rem; }
        @media screen and (max-width: 1000px) {
          footer.bottom .just .wrap .right ul:nth-of-type(1) {
            padding-right: 3.0rem; } }
      footer.bottom .just .wrap .right ul li {
        margin-bottom: 2.0rem; }
        footer.bottom .just .wrap .right ul li:nth-last-of-type(1) {
          margin-bottom: 0; }
        footer.bottom .just .wrap .right ul li a {
          font-size: 1.4rem;
          font-weight: 500;
          display: inline-block; }
          footer.bottom .just .wrap .right ul li a span {
            display: none; }
        footer.bottom .just .wrap .right ul li .sub-menu {
          margin-top: 1.5rem;
          padding-left: 1.5rem;
          padding-right: 0; }
  footer.bottom .just small {
    color: #000000;
    font-size: 1.4rem;
    text-align: center;
    display: block;
    border-top: 1px solid #ffffff;
    padding: 2.0rem 0.5rem; }

/*** common class ***/
.heading {
  color: #233664;
  font-size: 5rem;
  font-weight: 500;
  line-height: 1.5;
  margin-top: 8.0rem;
  margin-bottom: 0.5rem;
  position: relative;
  z-index: 9; }
  @media screen and (max-width: 500px) {
    .heading {
      font-size: 4.2rem; } }
  .heading.ptn01 {
    padding-right: 37.0rem; }
  .heading + .en {
    margin-bottom: 3.0rem;
    position: relative;
    z-index: 1; }

.sub-heading {
  color: #233664;
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 4.0rem;
  margin-bottom: 2.0rem; }

.title {
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.3;
  margin-top: 3.0rem;
  margin-bottom: 3.0rem; }

.sub-title {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 1.0rem; }

.en {
  color: #EC1212;
  font-size: 1.8rem;
  line-height: 1.6; }
  @media screen and (max-width: 500px) {
    .en {
      font-size: 1.6rem; } }

.kome {
  display: block;
  padding-left: 2.0rem;
  position: relative; }
  .kome::before {
    content: '※';
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    margin-top: auto;
    margin-bottom: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0; }

.mtxt {
  font-family: 'Noto Serif JP';
  font-size: 1.9rem; }

.mdesc {
  padding-left: 3.0rem;
  list-style-type: disc; }
  .mdesc li {
    font-family: 'Noto Serif JP';
    font-size: 1.9rem;
    line-height: 1.6;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem; }

.wide {
  max-width: 100%;
  width: 100%;
  padding: 0; }

.just {
  max-width: 1064px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 2.0rem;
  padding-right: 2.0rem; }

@media screen and (max-width: 500px) {
  .sp-just {
    max-width: 1064px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2.0rem;
    padding-right: 2.0rem; } }

.adjust {
  padding-right: 47.0rem; }
  @media screen and (max-width: 767px) {
    .adjust {
      padding-right: 2.0rem; } }

.box-one.transport .wrap::before {
  background-image: url(../img/page/transport_catch_01.webp); }
.box-one.civil-engineering .wrap::before {
  background-image: url(../img/page/civil-engineering_catch_01.webp); }
.box-one.playground .wrap::before {
  background-image: url(../img/page/playground_catch_01.webp); }
.box-one.building .wrap::before {
  background-image: url(../img/page/building_catch_01.webp);
  width: 945px;
  height: 765px;
  right: -450px; }
  @media screen and (max-width: 767px) {
    .box-one.building .wrap::before {
      width: calc(945px * 0.5);
      height: calc(765px * 0.5);
      right: -150px; } }
  @media screen and (max-width: 500px) {
    .box-one.building .wrap::before {
      right: -200px; } }
.box-one .wrap {
  position: relative; }
  .box-one .wrap::before {
    content: '';
    background-image: url(../img/page/top_president_01.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: 585px;
    height: 960px;
    position: absolute;
    bottom: 0;
    right: -150px; }
    @media screen and (max-width: 767px) {
      .box-one .wrap::before {
        width: calc(585px * 0.5);
        height: calc(960px * 0.5);
        bottom: auto;
        top: -500px;
        right: -50px; } }
    @media screen and (max-width: 500px) {
      .box-one .wrap::before {
        width: calc(585px * 0.4);
        height: calc(960px * 0.4);
        top: -400px; } }
  .box-one .wrap.syuzi {
    position: relative; }
    .box-one .wrap.syuzi figure {
      padding-right: 37.0rem;
      position: absolute;
      top: 15%; }
      @media screen and (max-width: 767px) {
        .box-one .wrap.syuzi figure {
          padding-left: 4.0rem;
          padding-right: 4.0rem; } }
      @media screen and (max-width: 500px) {
        .box-one .wrap.syuzi figure {
          padding-left: 2.0rem;
          padding-right: 2.0rem;
          top: 30%; } }
      .box-one .wrap.syuzi figure img {
        opacity: 0.15; }
  .box-one .wrap p {
    position: relative; }

.box-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .box-row figure {
    width: 100%;
    margin-bottom: 3.0rem; }
    @media screen and (max-width: 500px) {
      .box-row figure {
        margin-bottom: 2.5rem; } }
    .box-row figure ul.in2 {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex; }
      .box-row figure ul.in2 li {
        width: 50%; }
        .box-row figure ul.in2 li:nth-of-type(odd) {
          padding-right: 0.75rem; }
          @media screen and (max-width: 500px) {
            .box-row figure ul.in2 li:nth-of-type(odd) {
              padding-right: 0.5rem; } }
        .box-row figure ul.in2 li:nth-of-type(even) {
          padding-left: 0.75rem; }
          @media screen and (max-width: 500px) {
            .box-row figure ul.in2 li:nth-of-type(even) {
              padding-left: 0.5rem; } }
      .box-row figure ul.in2 img {
        width: 100%;
        height: auto;
        border-radius: 1.0rem; }
    .box-row figure figcaption {
      font-size: 1.8rem;
      font-weight: 700;
      text-align: center;
      line-height: 1.3;
      margin-top: 1.0rem; }
    .box-row figure .cap {
      background-color: #f3f3f3;
      font-size: 1.6rem;
      line-height: 1.3;
      text-align: left;
      display: inline-block;
      margin-bottom: 0.5rem;
      padding: 0.5rem 1.0rem; }
    .box-row figure p {
      margin-bottom: 0; }

.box-row2 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .box-row2.board > li {
    margin-bottom: 1.0rem; }
    @media screen and (max-width: 500px) {
      .box-row2.board > li {
        width: 100%; } }
    .box-row2.board > li:nth-of-type(odd) {
      padding-right: 0.5rem; }
    .box-row2.board > li:nth-of-type(even) {
      padding-left: 0.5rem; }
    .box-row2.board > li > div {
      background-color: #EDF6FF;
      padding: 2.5rem 2.5rem; }
    .box-row2.board > li h3 {
      font-size: 1.8rem;
      font-weight: 700;
      list-style: 1.3;
      margin-bottom: 1.0rem; }
    .box-row2.board > li p {
      line-height: 1.6; }
  .box-row2.pict figure {
    width: 50.0%;
    margin-bottom: 1.5rem; }
    @media screen and (max-width: 500px) {
      .box-row2.pict figure {
        margin-bottom: 1.0rem; } }
    .box-row2.pict figure:nth-of-type(odd) {
      padding-right: 0.75rem; }
      @media screen and (max-width: 500px) {
        .box-row2.pict figure:nth-of-type(odd) {
          padding-right: 0.5rem; } }
    .box-row2.pict figure:nth-of-type(even) {
      padding-left: 0.75rem; }
      @media screen and (max-width: 500px) {
        .box-row2.pict figure:nth-of-type(even) {
          padding-left: 0.5rem; } }
    .box-row2.pict figure img {
      margin-bottom: 0; }
  @media screen and (max-width: 500px) {
    .box-row2.full figure {
      width: 100%; } }
  .box-row2.full figure img {
    margin-bottom: 0; }
  .box-row2.bottom {
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline; }
  .box-row2 > div, .box-row2 > li, .box-row2 figure {
    width: 50%;
    margin-bottom: 3.0rem; }
    @media screen and (max-width: 500px) {
      .box-row2 > div, .box-row2 > li, .box-row2 figure {
        margin-bottom: 2.0rem; } }
    .box-row2 > div.img-bottom, .box-row2 > li.img-bottom, .box-row2 figure.img-bottom {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
          -ms-flex-align: end;
              align-items: end; }
    .box-row2 > div:nth-of-type(odd), .box-row2 > li:nth-of-type(odd), .box-row2 figure:nth-of-type(odd) {
      padding-right: 1.5rem; }
      @media screen and (max-width: 500px) {
        .box-row2 > div:nth-of-type(odd), .box-row2 > li:nth-of-type(odd), .box-row2 figure:nth-of-type(odd) {
          padding-right: 1.0rem; } }
      .box-row2 > div:nth-of-type(odd) .wrap p, .box-row2 > li:nth-of-type(odd) .wrap p, .box-row2 figure:nth-of-type(odd) .wrap p {
        color: #233664; }
    .box-row2 > div:nth-of-type(even), .box-row2 > li:nth-of-type(even), .box-row2 figure:nth-of-type(even) {
      padding-left: 1.5rem; }
      @media screen and (max-width: 500px) {
        .box-row2 > div:nth-of-type(even), .box-row2 > li:nth-of-type(even), .box-row2 figure:nth-of-type(even) {
          padding-left: 1.0rem; } }
      .box-row2 > div:nth-of-type(even) .wrap p, .box-row2 > li:nth-of-type(even) .wrap p, .box-row2 figure:nth-of-type(even) .wrap p {
        color: #EC1212; }
    .box-row2 > div.last, .box-row2 > li.last, .box-row2 figure.last {
      margin-bottom: 0; }
    .box-row2 > div .wrap, .box-row2 > li .wrap, .box-row2 figure .wrap {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: relative; }
      .box-row2 > div .wrap p, .box-row2 > li .wrap p, .box-row2 figure .wrap p {
        background: rgba(255, 255, 255, 0.5);
        font-weight: 700;
        line-height: 1.0;
        padding: 1.0rem 1.5rem;
        position: absolute;
        bottom: 0; }
    .box-row2 > div img, .box-row2 > li img, .box-row2 figure img {
      width: 100%;
      height: auto;
      margin-bottom: 1.0rem;
      border-radius: 1.0rem; }
      .box-row2 > div img.auto, .box-row2 > li img.auto, .box-row2 figure img.auto {
        width: auto;
        margin-bottom: 0; }
    .box-row2 > div figcaption, .box-row2 > li figcaption, .box-row2 figure figcaption {
      font-size: 1.8rem;
      font-weight: 600;
      line-height: 1.5;
      text-align: center;
      margin-top: 1.0rem;
      margin-bottom: 0.5rem; }
      @media screen and (max-width: 500px) {
        .box-row2 > div figcaption, .box-row2 > li figcaption, .box-row2 figure figcaption {
          font-size: 1.6rem; } }
    .box-row2 > div img, .box-row2 > li img, .box-row2 figure img {
      margin-bottom: 1.0rem;
      width: 100%;
      height: auto;
      margin-bottom: 1.5rem;
      border-radius: 1.0rem; }
    .box-row2 > div .cap, .box-row2 > li .cap, .box-row2 figure .cap {
      background-color: #f3f3f3;
      font-size: 1.6rem;
      line-height: 1.3;
      text-align: left;
      display: inline-block;
      margin-bottom: 1.0rem;
      padding: 0.5rem 1.0rem; }
    .box-row2 > div p, .box-row2 > li p, .box-row2 figure p {
      line-height: 1.6;
      margin-bottom: 0; }
      @media screen and (max-width: 500px) {
        .box-row2 > div p b, .box-row2 > li p b, .box-row2 figure p b {
          font-size: 1.6rem; } }

.box-row3 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .box-row3.pict figure {
    width: calc(33.3% - 0.666rem);
    margin-right: 1.0rem; }
    @media screen and (max-width: 500px) {
      .box-row3.pict figure {
        width: 50%;
        margin-right: 0; } }
    @media screen and (max-width: 500px) {
      .box-row3.pict figure:nth-of-type(odd) {
        padding-left: 0;
        padding-right: 0.5rem; } }
    @media screen and (max-width: 500px) {
      .box-row3.pict figure:nth-of-type(even) {
        padding-left: 0.5rem;
        padding-right: 0; } }
  .box-row3 figure {
    width: calc(33.3% - 2.0rem);
    margin-right: 3.0rem;
    margin-bottom: 2.0rem; }
    @media screen and (max-width: 500px) {
      .box-row3 figure {
        width: 50%;
        margin-right: 0; } }
    .box-row3 figure:nth-of-type(3n) {
      margin-right: 0; }
    @media screen and (max-width: 500px) {
      .box-row3 figure:nth-of-type(odd) {
        padding-left: 0;
        padding-right: 1.0rem; } }
    @media screen and (max-width: 500px) {
      .box-row3 figure:nth-of-type(even) {
        padding-left: 1.0rem;
        padding-right: 0; } }
    .box-row3 figure img {
      margin-bottom: 1.5rem;
      width: 100%;
      height: auto;
      margin-bottom: 1.0rem;
      border-radius: 1.0rem; }
    .box-row3 figure figcaption {
      font-size: 1.8rem;
      font-weight: 600;
      line-height: 1.5;
      text-align: center;
      margin-bottom: 0.5rem; }
      @media screen and (max-width: 500px) {
        .box-row3 figure figcaption {
          font-size: 1.6rem; } }
    .box-row3 figure p {
      margin-bottom: 0; }

.box-row4 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .box-row4 figure {
    width: calc(25% - 2.25rem);
    margin-right: 3.0rem;
    margin-bottom: 2.0rem; }
    @media screen and (max-width: 767px) {
      .box-row4 figure {
        width: 50%;
        margin-right: 0; } }
    .box-row4 figure:nth-of-type(4n) {
      margin-right: 0; }
    @media screen and (max-width: 767px) {
      .box-row4 figure:nth-of-type(odd) {
        padding-left: 0;
        padding-right: 1.0rem; } }
    @media screen and (max-width: 767px) {
      .box-row4 figure:nth-of-type(even) {
        padding-left: 1.0rem;
        padding-right: 0.5rem; } }
    .box-row4 figure img {
      margin-bottom: 1.5rem;
      width: 100%;
      height: auto;
      margin-bottom: 1.0rem;
      border-radius: 1.0rem; }
    .box-row4 figure p {
      font-size: 1.6rem;
      line-height: 1.5;
      margin-bottom: 0; }

.masu65 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 500px) {
    .masu65 {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .masu65 .img {
    width: 40.0rem; }
    @media screen and (max-width: 767px) {
      .masu65 .img {
        width: 30.0rem; } }
    @media screen and (max-width: 500px) {
      .masu65 .img {
        width: 100%;
        text-align: center;
        margin-bottom: 1.0rem; } }
    .masu65 .img img {
      width: 100%; }
      @media screen and (max-width: 500px) {
        .masu65 .img img {
          width: 50%; } }
  .masu65 .cont {
    width: calc(100% - 40.0rem);
    padding-left: 5.0rem; }
    @media screen and (max-width: 767px) {
      .masu65 .cont {
        width: calc(100% - 30.0rem);
        padding-left: 4.0rem; } }
    @media screen and (max-width: 500px) {
      .masu65 .cont {
        width: 100%;
        padding-left: 0; } }
    .masu65 .cont .btn {
      padding-left: 0; }

.box-range {
  width: 100%;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline; }
  .box-range figure {
    margin-right: 1.5rem; }
    @media screen and (max-width: 500px) {
      .box-range figure.sp100 {
        margin-right: 0; } }
    @media screen and (max-width: 500px) {
      .box-range figure.sp100 img {
        width: 100%; } }
    .box-range figure.sp70 {
      margin-right: 0;
      padding-right: 1.0rem; }
      @media screen and (max-width: 1000px) {
        .box-range figure.sp70 {
          width: 70%; } }
    @media screen and (max-width: 1000px) {
      .box-range figure.sp30 {
        width: 30%; } }
    .box-range figure:nth-last-of-type(1) {
      margin-right: 0; }
    .box-range figure img {
      margin-bottom: 0.5rem; }
    .box-range figure figcaption {
      font-size: 0rem;
      font-weight: 500;
      line-height: 1.6;
      margin-bottom: 1.0rem; }

.box-layout {
  width: 100%;
  position: relative; }
  @media screen and (max-width: 500px) {
    .box-layout.sp-deform {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .box-layout.sp-deform figure {
    text-align: cetner;
    padding-right: 0;
    width: 100% !important; }
    .box-layout.sp-deform figure img {
      width: 50%;
      margin-bottom: 1.0rem; }
  .box-layout.sp-deform .btn {
    padding-left: 0; }
    .box-layout.sp-deform .btn a {
      width: 100%; }
  .box-layout::after {
    content: "";
    clear: both;
    display: block; }
  .box-layout > figure {
    float: left;
    width: 50.0rem;
    padding-right: 3.5rem; }
    @media screen and (max-width: 767px) {
      .box-layout > figure {
        width: 40.0rem; } }
    @media screen and (max-width: 500px) {
      .box-layout > figure {
        width: 60%;
        padding-right: 2.5rem; } }
    .box-layout > figure.wid40 {
      width: 40.0rem; }
      @media screen and (max-width: 500px) {
        .box-layout > figure.wid40 {
          width: 50%; } }
    .box-layout > figure.wid35 {
      width: 35.0rem; }
      @media screen and (max-width: 500px) {
        .box-layout > figure.wid35 {
          width: 50%; } }
    .box-layout > figure.wid25 {
      width: 25.0rem; }
    .box-layout > figure.right {
      float: right;
      padding-right: 0;
      padding-left: 3.5rem; }
      @media screen and (max-width: 500px) {
        .box-layout > figure.right {
          padding-left: 2.5rem; } }
    .box-layout > figure figcaption {
      font-weight: 500;
      margin-bottom: 1.0rem; }
    .box-layout > figure img {
      border-radius: 1.0rem;
      margin-bottom: 0.5rem; }
  .box-layout p {
    margin-bottom: 0; }

.boards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  @media screen and (max-width: 767px) {
    .boards {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  .boards li {
    margin-bottom: 2.0rem;
    width: calc(50% - 1.0rem); }
    @media screen and (max-width: 767px) {
      .boards li {
        width: 100%; } }
    .boards li:nth-of-type(odd) {
      margin-right: 1.0rem; }
    .boards li .wrap-num {
      background-color: #ffffff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.1);
              box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.1);
      border-radius: 1.0rem;
      padding: 2.0rem; }
      .boards li .wrap-num h3 {
        font-size: 1.4rem;
        font-weight: 500;
        margin-bottom: 0.5rem; }
      .boards li .wrap-num .num {
        color: #FF8100;
        font-size: 5rem;
        font-weight: 700;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: baseline;
            -ms-flex-align: baseline;
                align-items: baseline;
        margin-bottom: 0.5rem; }
        @media screen and (max-width: 1000px) {
          .boards li .wrap-num .num {
            font-size: 3.8rem; } }
        .boards li .wrap-num .num img {
          margin-right: 0.5rem; }
      .boards li .wrap-num p {
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 0; }

.job {
  overflow: hidden;
  border-top: 6px solid #f3f3f3; }
  .job .jobs {
    max-width: 1064px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 8.0rem;
    padding-left: 2.0rem;
    padding-right: 10.0rem;
    padding-bottom: 1.0rem;
    position: relative; }
    @media screen and (max-width: 500px) {
      .job .jobs {
        padding-left: 0;
        padding-right: 0; } }
    .job .jobs::before {
      content: '';
      background-color: #f3f3f3;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: calc(100% - 10.0rem); }
      @media screen and (max-width: 500px) {
        .job .jobs::before {
          display: none; } }
    .job .jobs::after {
      content: '';
      background-image: url(../img/page/top_mix.svg);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center center;
      width: 49px;
      height: 632px;
      position: absolute;
      top: 10.0rem;
      right: 1.0rem; }
      @media screen and (max-width: 1000px) {
        .job .jobs::after {
          right: 2.0rem; } }
      @media screen and (max-width: 500px) {
        .job .jobs::after {
          display: none; } }
  .job .jobs-title {
    display: none;
    background-color: #2D84F2;
    padding: 2.0rem;
    margin-bottom: 3.0rem; }
    @media screen and (max-width: 500px) {
      .job .jobs-title {
        display: block; } }
    .job .jobs-title .heading {
      color: #ffffff;
      font-size: 2.8rem;
      font-weight: 600;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      margin-top: 0;
      margin-bottom: 0; }
      .job .jobs-title .heading p {
        color: #ffffff;
        padding-left: 1.5rem;
        margin-bottom: 0; }
  .job section {
    padding-left: 0; }
    @media screen and (max-width: 500px) {
      .job section {
        padding-left: 2.0rem; } }

.voice-list > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 100%;
  margin-bottom: 10.0rem; }
  @media screen and (max-width: 767px) {
    .voice-list > li {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }
  @media screen and (max-width: 500px) {
    .voice-list > li {
      margin-bottom: 6.0rem; } }
  .voice-list > li:nth-last-of-type(1) {
    margin-bottom: 0; }
  .voice-list > li .pict {
    width: 36.0rem; }
    @media screen and (max-width: 1000px) {
      .voice-list > li .pict {
        width: 28.0rem; } }
    .voice-list > li .pict figure {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; }
      .voice-list > li .pict figure img {
        width: 36.0rem;
        -webkit-clip-path: circle(50% at 50% 50%);
                clip-path: circle(50% at 50% 50%); }
        @media screen and (max-width: 1000px) {
          .voice-list > li .pict figure img {
            width: 28.0rem; } }
        @media screen and (max-width: 767px) {
          .voice-list > li .pict figure img {
            margin-bottom: 1.0rem; } }
      .voice-list > li .pict figure figcaption {
        color: #261A0C;
        font-size: 1.8rem;
        text-align: center;
        line-height: 2.0; }
        @media screen and (max-width: 767px) {
          .voice-list > li .pict figure figcaption {
            line-height: 1.6;
            margin-bottom: 2.0rem; } }
  .voice-list > li .voice {
    width: calc(100% - 36.0rem);
    padding-left: 4.0rem; }
    @media screen and (max-width: 1000px) {
      .voice-list > li .voice {
        width: calc(100% - 28.0rem);
        padding-left: 3.0rem; } }
    @media screen and (max-width: 767px) {
      .voice-list > li .voice {
        width: 100%;
        padding-left: 0; } }
    .voice-list > li .voice h3 {
      color: #261A0C;
      font-size: 1.8rem;
      font-weight: bold;
      line-height: 1.6;
      margin-bottom: 0.5rem; }
    .voice-list > li .voice p {
      font-size: 1.8rem; }

.work-point {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  .work-point > li {
    width: 33.3%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 2.0rem; }
    @media screen and (max-width: 767px) {
      .work-point > li {
        width: 50%; } }
    @media screen and (max-width: 500px) {
      .work-point > li {
        width: 100%;
        margin-bottom: 1.0rem; } }
    .work-point > li figure {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media screen and (max-width: 500px) {
        .work-point > li figure {
          -webkit-box-pack: start;
              -ms-flex-pack: start;
                  justify-content: flex-start; } }
      .work-point > li figure img {
        width: 60px; }
        @media screen and (max-width: 767px) {
          .work-point > li figure img {
            width: 50px; } }
        @media screen and (max-width: 500px) {
          .work-point > li figure img {
            width: 40px; } }
      .work-point > li figure figcaption {
        color: #FF8100;
        font-size: 1.8rem;
        font-weight: 600;
        line-height: 1.3;
        width: calc(100% - 60px);
        padding-left: 1.5rem;
        padding-right: 1.5rem; }
        @media screen and (max-width: 1000px) {
          .work-point > li figure figcaption {
            padding-left: 1.0rem; } }
        @media screen and (max-width: 767px) {
          .work-point > li figure figcaption {
            width: calc(100% - 50px); } }
        @media screen and (max-width: 500px) {
          .work-point > li figure figcaption {
            padding-left: 1.5rem; } }

@media screen and (max-width: 500px) {
  .list-item.list-slide {
    overflow: scroll; } }
@media screen and (max-width: 500px) {
  .list-item.list-slide table {
    width: 100%;
    min-width: 767px; } }
.list-item.history {
  background-image: url("../img/page/history_bk_01.webp");
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: relative; }
  .list-item.history table {
    background: none; }
.list-item table {
  background-color: #ffffff;
  width: 100%;
  border: 1px solid #B7B199;
  border-collapse: separate;
  border-radius: 1.0rem; }
  .list-item table tr:nth-last-of-type(1) th, .list-item table tr:nth-last-of-type(1) td {
    border-bottom: none; }
  .list-item table th, .list-item table td {
    color: #333333;
    font-size: 1.8rem;
    line-height: 1.6;
    vertical-align: top;
    border-bottom: 1px solid #B7B199;
    border-right: 1px solid #B7B199;
    padding: 1.0rem 1.5rem; }
    @media screen and (max-width: 500px) {
      .list-item table th, .list-item table td {
        padding-left: 1.0rem;
        padding-right: 1.0rem; } }
    .list-item table th:nth-last-of-type(1), .list-item table td:nth-last-of-type(1) {
      border-right: none; }
    .list-item table th.tc, .list-item table td.tc {
      text-align: center;
      vertical-align: middle; }
    .list-item table th.br, .list-item table td.br {
      border-right: 1px solid #B7B199; }
  .list-item table iframe {
    width: 100%; }

.list-disc {
  padding-left: 3.0rem;
  list-style-type: disc; }
  .list-disc li {
    list-style-type: inherit;
    font-size: inherit;
    line-height: inherit; }

.mov video {
  width: 100%;
  height: auto; }

.safety {
  background-image: url("../img/page/transport_behavioral_01.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  padding-top: 7.0rem;
  padding-bottom: 5.0rem; }
  .safety .affair {
    color: #333333;
    font-size: 2.4rem;
    font-weight: 900;
    text-align: center;
    line-height: 2.5; }
  .safety.guide {
    position: relative; }
    .safety.guide::after {
      content: '';
      background-image: url("../img/page/guideline_illust_01.svg");
      background-size: contain;
      background-position: right bottom;
      width: 610px;
      height: 515px;
      position: absolute;
      bottom: 0;
      right: 200px;
      zoom: 0.8; }
      @media screen and (max-width: 500px) {
        .safety.guide::after {
          width: 366px;
          height: 309px;
          right: 0;
          opacity: 0.5; } }
    @media screen and (max-width: 500px) {
      .safety.guide h3, .safety.guide p, .safety.guide li {
        font-weight: 600; } }
    .safety.guide li {
      text-shadow: 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff, 0px 0px 4px #ffffff; }

.paling {
  background-color: #dddddd;
  border-radius: 1.0rem;
  padding: 4.5rem;
  margin-top: 1.0rem;
  margin-bottom: 1.0rem; }
  @media screen and (max-width: 767px) {
    .paling {
      padding: 3.5rem; } }
  @media screen and (max-width: 500px) {
    .paling {
      padding: 2.0rem; } }
  .paling.blue {
    background-color: #EDF6FF; }
  .paling.pink {
    background-color: #FFF8F8; }
  .paling.red {
    background-color: #EC1212; }
    .paling.red p {
      color: #ffffff; }
  .paling .paling {
    padding: 3.5rem; }
    @media screen and (max-width: 767px) {
      .paling .paling {
        padding: 2.5rem; } }
    @media screen and (max-width: 500px) {
      .paling .paling {
        padding: 2.0rem; } }

/***  parts  ***/
.sign {
  font-size: 1.6rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  .sign b {
    font-size: 3rem;
    margin-left: 3.5rem; }

.btns-wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 500px) {
    .btns-wrap {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .btns-wrap a {
    color: #ffffff;
    font-size: 1.9rem;
    font-weight: 600;
    line-height: 1.3;
    width: calc(50% - 1.0rem);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 2.0rem;
    -webkit-box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
            box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
    border-radius: 1.0rem; }
    @media screen and (max-width: 500px) {
      .btns-wrap a {
        width: 100%;
        margin-bottom: 1.0rem;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem; } }
    .btns-wrap a:nth-of-type(odd) {
      background-color: #1A8353; }
    .btns-wrap a:nth-of-type(even) {
      background-color: #2D84F2; }
    @media screen and (max-width: 500px) {
      .btns-wrap a:nth-last-of-type(1) {
        margin-bottom: 0; } }
    .btns-wrap a.jump img {
      padding-left: 0.5rem; }
      @media screen and (max-width: 500px) {
        .btns-wrap a.jump img {
          width: 20px; } }

.btn {
  padding-left: 3.0rem; }
  .btn a {
    background-color: #ffffff;
    padding: 2.0rem;
    color: #233664;
    font-size: 2.2rem;
    font-weight: 700;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    border-radius: 1.0rem;
    -webkit-box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
            box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.25);
    position: relative; }
    .btn a span {
      display: inline-block;
      padding-left: 1.0rem;
      padding-right: 1.5rem; }

.illust {
  text-align: center;
  margin-top: 4.0rem; }

/* form */
.req {
  background: red;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.3;
  white-space: nowrap;
  display: inline-block;
  padding: 0.3rem 0.6rem;
  border-radius: 0.4rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem; }

.form-wrap {
  margin-top: 2.0rem;
  margin-bottom: 2.0rem; }
  .form-wrap ul.in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto; }
    .form-wrap ul.in li {
      font-size: 1.8rem;
      line-height: 1.3;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border-top: 1px solid #f3f3f3;
      padding-top: 1.5rem;
      padding-bottom: 1.5rem; }
      .form-wrap ul.in li:nth-of-type(odd) {
        width: 25.0rem; }
        @media screen and (max-width: 500px) {
          .form-wrap ul.in li:nth-of-type(odd) {
            width: 13.0rem;
            padding-right: 1.0rem; } }
      .form-wrap ul.in li:nth-of-type(even) {
        width: calc(100% - 25.0rem);
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem; }
        @media screen and (max-width: 500px) {
          .form-wrap ul.in li:nth-of-type(even) {
            width: calc(100% - 13.0rem); } }
      .form-wrap ul.in li.rbtn {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row; }
        @media screen and (max-width: 767px) {
          .form-wrap ul.in li.rbtn {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column; } }
        @media screen and (max-width: 767px) {
          .form-wrap ul.in li.rbtn > span {
            margin-bottom: 0.5rem; } }
      .form-wrap ul.in li input[type="text"], .form-wrap ul.in li input[type="email"], .form-wrap ul.in li textarea {
        font-family: 'Noto Sans JP','游ゴシック Medium',YuGothic,YuGothicM,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro',メイリオ,Meiryo,sans-serif;
        font-size: 1.8rem;
        width: 100%;
        padding: 1.0rem 1.5rem;
        border: 1px solid #dddddd;
        border-radius: 0.4rem;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        caret-color: auto; }
      .form-wrap ul.in li .error {
        color: #EC1212;
        font-size: 1.8rem;
        line-height: 1.3;
        display: block;
        text-align: left;
        margin-top: 0.5rem; }
  .form-wrap .btn-send {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-top: 1px solid #f3f3f3;
    padding-top: 5.0rem;
    margin-bottom: 15.0rem; }
    .form-wrap .btn-send span {
      cursor: pointer;
      position: relative; }
      .form-wrap .btn-send span::after {
        content: '';
        background-image: url("../img/common/icon_arrow_02.svg");
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        width: 1.0rem;
        height: 2.0rem;
        position: absolute;
        top: calc(50% - 1.0rem);
        right: 2.0rem; }
    .form-wrap .btn-send input[type="submit"] {
      background-color: #EC1212;
      color: #ffffff;
      font-size: 1.8rem;
      font-weight: 700;
      text-align: left;
      max-width: 100%;
      width: 30.0rem;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 1.5rem 4.0rem 1.5rem 2.5rem;
      margin-left: auto;
      margin-right: auto;
      border-radius: 0.4rem;
      cursor: pointer; }

.mw_wp_form .vertical-item + .vertical-item {
  margin-left: 25px;
  margin-top: 0; }
  @media screen and (max-width: 767px) {
    .mw_wp_form .vertical-item + .vertical-item {
      margin-left: 0; } }
.mw_wp_form .mwform-file-delete {
  display: none; }

/**/
