    @charset "UTF-8";
    * {
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
    }
    /* ------------------------------------------------------------------
        Reset styles
    -------------------------------------------------------------------*/
    html {
      overflow-x: hidden;
      background: #FFF;
    }
    body {
      -webkit-text-size-adjust: none;
      -ms-text-size-adjust: none;
      word-wrap: break-word;
    }
    body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, object, iframe, pre, code, p, blockquote, form, fieldset, legend, table, th, td, caption, tbody, tfoot, thead, article, aside, figure, footer, header, hgroup, menu, nav, section, audio, video, canvas {
      margin: 0;
      padding: 0;
    }
    article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, menu {
      display: block;
    }
    audio:not([controls]) {
      display: none;
      height: 0;
    }
    [hidden] {
      display: none;
    }
    table {
      border-collapse: collapse;
      border-spacing: 0;
    }
    fieldset, img {
      border: none;
    }
    address, caption, cite, code, dfn, em, strong, th, var {
      font-style: normal;
      font-weight: normal;
    }
    ul, ol, menu {
      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: none;
      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;
    }
    legend {
      color: #000;
    }
    a img, map a {
      border: none;
    }
    a:hover, a:active, a:focus {
      outline: 0;
    }
    embed {
      width: 100%;
    }
    audio, canvas, video {
      display: inline-block;
    }
    audio:not([controls]) {
      display: none;
      height: 0;
    }
    img, object, embed {
      max-width: 100%;
      height: auto;
    }
    object, embed {
      height: 100%;
    }
    img {
      -ms-interpolation-mode: bicubic;
    }
    /* ------------------------------------------------------------------
        common
    -------------------------------------------------------------------*/
    body {
      background: #fff;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
      color: #333;
    }
    a:link {
      color: #333;
    }
    a:visited {
      color: #333;
    }
    a:hover {
      color: #333;
      opacity: .8
    }
    a:active {
      color: #333;
    }
    .clearfix:after {
      clear: both;
    }
    .clearfix:before, .clearfix:after {
      content: " ";
      display: table;
    }
    #wrapper {
      width: 100%;
      margin: 0 auto;
      padding: 0;
      box-sizing: border-box;
      position: relative;
      letter-spacing: 0.025em;
    }
    /* ------------------------------------------------------------------
        header
    -------------------------------------------------------------------*/
    header.header {
      width: 100%;
      text-align: center;
      padding: 40px 0;
    }
    header.header .h_logo {
      width: 200px;
      margin: 0 auto;
    }
    /* sub page */
    header.header_sub {
      width: 100%;
      padding: 40px 0;
    }
    header.header_sub .inner {
      max-width: 880px;
      margin: 0 auto;
    }
    header.header_sub .inner .h_logo_sub {
      display: flex;
      justify-content: flex-start;
      align-items: center;
    }
    header.header_sub .inner .h_logo_sub span {
      font-size: 2.25rem;
      margin-left: 20px;
    }
    @media screen and (max-width: 769px) {
      header.header, header.header_sub {
        padding: 5.33%;
      }
      header.header .h_logo {
        width: 100px;
        margin: 0 auto;
      }
      header.header_sub .inner .h_logo_sub a {
        display: block;
        width: 50px;
      }
      header.header_sub .inner .h_logo_sub span {
        font-size: 1.5rem;
        display: block;
        width: 90.1408%;
      }
    }
    /* ------------------------------------------------------------------
        content
    -------------------------------------------------------------------*/
    main {
      display: block;
    }
    .section {
      padding: 40px 0 60px;
    }
    .container {
      max-width: 880px;
      margin: 0 auto;
    }
    /* main */
    .company-overview {
      width: 100%;
      font-size: 1rem;
      line-height: 1.8;
    }
    .company-overview tr {
      border-top: 1px solid #dddddd;
      border-bottom: 1px solid #dddddd;
    }
    .company-overview th, .company-overview td {
      padding: 14px 20px 17px;
      text-align: left;
      vertical-align: top;
    }
    .company-overview th {
      width: 200px;
      font-weight: bold;
    }
    /* sub page */
    .container p {
      font-stretch: 1rem;
      line-height: 1.8;
      margin-bottom: 40px;
    }
    .container p.txt_right {
      text-align: right !important;
    }
    .mb0 {
      margin-bottom: 0 !important;
    }
    .container p.indent {
      padding-left: 3em;
    }
    ul.indent li {
      padding-left: 1.8em;
      text-indent: -1.8em;
    }
    ul.indent4em {
      margin-bottom: 40px;
    }
    ul.indent4em li {
      padding-left: 4em;
      text-indent: -1.8em;
    }
    ul.indent5em li {
      padding-left: 5em;
      text-indent: -1.8em;
    }
    ol {
      margin: 40px 0 40px 2em;
    }
    ol > li {
      list-style: decimal;
    }
    ol > li + li {
      margin-top: 0.5em;
    }
    h2.heading {
      margin-top: 80px;
      font-size: 1.5rem;
      font-weight: bold;
      margin-bottom: 20px;
    }
    h3.heading {
      margin-top: 80px;
      font-size: 1.25rem;
      font-weight: bold;
      color: #005a85;
      margin-bottom: 20px;
    }
    .p-privacy-contact-info {
      margin-bottom: 40px;
    }
    .p-privacy-contact-info dt, .p-privacy-provision dt {
      float: left;
      margin-right: 5px;
    }
    .p-privacy-contact-info dd, .p-privacy-provision dd {
      overflow: hidden;
    }
    .p-privacy-provision {
      font-size: 0.875rem;
    }
    .p-privacy-provision dt {
      margin-right: 10px;
    }
    .p-privacy-rule-table th, .p-privacy-rule-table td {
      border: 1px solid #dddddd;
      padding: 20px;
      text-align: left;
      vertical-align: top;
    }
    .p-privacy-rule-table td:first-child {
      width: 50%;
    }
    @media screen and (max-width: 769px) {
      main {
        padding: 0 5.33%;
      }
      .section {
        padding: 20px 0 40px;
      }
      h2.heading {
        font-size: 1.25rem;
      }
      h3.heading {
        font-size: 1rem;
      }
      .company-overview th, .company-overview td {
        width: 100%;
        display: block;
      }
      .company-overview th {
        padding-bottom: 0;
      }
    }
    /* ------------------------------------------------------------------
        footer
    -------------------------------------------------------------------*/
    footer.footer {
      width: 100%;
      padding: 40px 0 0;
      background: #eee;
    }
    .footer_inner {
      padding: 0 40px;
    }
    .footer_links {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    margin: 20px 0 40px;
    align-content: space-around;
    align-items: center;
    flex-direction: row;
    justify-content: center;
    }
    .footer_links li {
      width: calc(32% - 15px);
      margin: 0 20px 20px 0;
    }
/*
    .footer_links li:nth-child(4n) {
      margin-right: 0;
    }
    .footer_links li:last-child {
      margin-right: auto;
    }
*/
    .footer_links li a {
      display: -webkit-inline-box;
      display: -webkit-inline-flex;
      display: -ms-inline-flexbox;
      display: inline-flex;
      webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      text-decoration: none;
      width: 100%;
      height: 100%;
      padding: .85em 2em;
      min-height: 80px;
      border-radius: 6px;
      background: #ddd;
      font-weight: bold;
    }
    .copyright {
      text-align: center;
      padding: 20px 0;
      background: #111;
    }
    .copyright small {
      color: #fff;
    }
    /* ------------------------------------------------------------------
        saiyou
    -------------------------------------------------------------------*/
    .saiyou-box {
      width: 70%;
      margin-left: auto;
      margin-right: auto;
      border: 1px solid #000;
      margin-bottom: 10%;
      padding: 3%;
    }
    .saiyou-box p.saiyou_ttl {
      margin-bottom: 3%;
      text-align: center;
      font-weight: bold;
      font-size: 120%;
    }
    .siyou-inbox {
      width: 62%;
      margin-left: auto;
      margin-right: auto;
      text-align: left;
    }
    .siyou-inbox dl {
      overflow: hidden;
    }
    .siyou-inbox dl dt {
      width: 60%;
      float: left;
      text-align: left;
      margin-top: 2%;
      margin-bottom: 2%;
    }
    .siyou-inbox dl dd {
      background-color: #000;
      color: #FFF;
      font-weight: bold;
      padding: 1%;
      width: 40%;
      float: right;
      text-align: center;
      margin-bottom: 2%;
    }
    .siyou-inbox a {
      color: #FFF;
      text-decoration: none;
    }
    @media screen and (max-width: 769px) {
      footer.footer {
        padding: 5.33%;
      }
      .footer_links li {
        width: calc(50% - 8px);
        margin: 0 16px 16px 0;
      }
      .footer_links li:nth-child(2n) {
        margin-right: 0;
      }
      .footer_links li:nth-child(4n) {
        margin-right: 0;
      }
      .footer_links li:last-child {
        margin-right: auto;
      }
      .footer_links li a {
        font-size: 0.85rem;
        padding: .85em 1em;
      }
      /*saiyou*/
      .saiyou-box {
        width: 95%;
      }
      .siyou-inbox {
        width: 97%;
      }
      .siyou-inbox dl dt {
        font-size: 90%;
      }
      .siyou-inbox dl dd {
        font-size: 80%;
      }
    }