@charset "UTF-8";
/*************************************
* CSSリセット
*************************************/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

ol, ul {
  list-style: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: #000;
  outline: none; }

a:hover {
  text-decoration: none;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

table {
  border-collapse: collapse;
  border-spacing: 0; }
  table a {
    color: #0784c8; }

input, select {
  vertical-align: middle;
  border-radius: 0; }
  @media (max-width: 500px) {
    input, select {
      font-size: 16px !important; } }

input:not([type="checkbox"]), textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  width: 100%;
  padding: 10px;
  height: auto;
  vertical-align: middle;
  border: 1px solid #bfbfbf;
  font-size: 1.6rem; }
  @media (max-width: 500px) {
    input:not([type="checkbox"]), textarea {
      font-size: 1.4rem; } }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none; }

img {
  line-height: 1;
  vertical-align: bottom; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 62.5%;
  overflow-y: scroll; }

body {
  line-height: 1.8;
  font-size: 1.8rem;
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  color: #000;
  word-wrap: break-word;
  overflow-wrap: break-word;
  overflow-x: hidden; }
  @media (max-width: 500px) {
    body {
      font-size: 1.4rem; } }

img {
  max-width: 100%;
  height: auto; }

.sp-view {
  display: none !important; }

.clearfix:after {
  content: '';
  display: block;
  clear: both; }

h1, h2 {
  font-weight: normal;
  line-height: 1; }

h3, h4 {
  font-weight: normal;
  font-weight: normal; }

#container {
  position: relative;
  background: #fff; }

.inner {
  width: 90%;
  max-width: 1100px;
  margin: 0 auto; }

.sw-Section {
  margin-bottom: 100px; }

/*************************************
* ヘッダー
*************************************/
.st-Header {
  width: 100%; }
  .st-Header .st-Header_Inner {
    max-width: 90%;
    margin: 0 auto;
    height: 74px;
    align-items: center;
    display: flex;
    justify-content: space-between; }
  .st-Header .st-Header_Logo {
    max-width: 35%;
    width: 100%;
    vertical-align: middle; }
    .st-Header .st-Header_Logo img {
      height: 34px; }
      @media (max-width: 1024px) {
        .st-Header .st-Header_Logo img {
          height: auto; } }

/*************************************
* フッター
*************************************/
.st-footer {
  font-size: 1.4rem;
  padding-top: 40px;
  background: #189cba;
  color: #fff; }
  @media (max-width: 500px) {
    .st-footer .logo {
      max-width: 60%; } }
  .st-footer a {
    color: #fff; }
    @media (max-width: 500px) {
      .st-footer a {
        font-size: 1.2rem; } }
  .st-footer .lst_sns {
    padding-left: 25px;
    display: flex; }
    @media (max-width: 1024px) {
      .st-footer .lst_sns {
        padding: 0; } }
    .st-footer .lst_sns li {
      margin-right: 25px;
      width: 38px; }
    .st-footer .lst_sns a {
      display: block;
      background: #fff;
      text-align: center;
      position: relative;
      border-radius: 50%;
      padding: 50%; }
      .st-footer .lst_sns a i {
        color: #189cba;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        font-size: 2.4rem; }
  .st-footer .fnav-wrap {
    display: flex;
    width: 100%;
    justify-content: space-between; }
    @media (max-width: 1024px) {
      .st-footer .fnav-wrap {
        flex-wrap: wrap; } }
    .st-footer .fnav-wrap > div {
      padding-right: 10px; }
      .st-footer .fnav-wrap > div:last-of-type {
        padding-right: 0; }
      @media (max-width: 1024px) {
        .st-footer .fnav-wrap > div {
          width: calc(90% / 3); } }
      @media (max-width: 500px) {
        .st-footer .fnav-wrap > div {
          width: 50%;
          margin-bottom: 30px; } }
    .st-footer .fnav-wrap .col_01 {
      width: 287px; }
      @media (max-width: 1024px) {
        .st-footer .fnav-wrap .col_01 {
          width: 100%;
          margin-bottom: 30px;
          padding-right: 0; } }
      .st-footer .fnav-wrap .col_01 .txt {
        padding: 20px 0;
        border-bottom: 1px solid #fff;
        margin-bottom: 20px; }
    @media (max-width: 500px) {
      .st-footer .fnav-wrap .col_04 {
        width: 100%; } }
    .st-footer .fnav-wrap .pa {
      display: block;
      margin-bottom: 15px;
      font-size: 1.8rem;
      line-height: 1; }
      @media (max-width: 500px) {
        .st-footer .fnav-wrap .pa {
          font-size: 1.6rem;
          margin-bottom: 10px; } }
  .st-footer .lnk_management {
    font-size: 1.4rem;
    background: #54b6cc;
    padding: 15px 30px 15px 15px; }
  .st-footer .fnav-btm {
    display: flex;
    flex-wrap: wrap;
    margin-top: 30px; }
    @media (max-width: 500px) {
      .st-footer .fnav-btm {
        margin-top: 0; } }
    .st-footer .fnav-btm li {
      margin-right: 30px; }
  .st-footer .copyright {
    margin-top: 20px;
    background: #181818;
    padding: 10px;
    font-size: 1.4rem; }

#page-top {
  position: fixed;
  bottom: 70px;
  right: 40px;
  text-decoration: none;
  z-index: 1;
  width: 48px;
  height: 48px;
  background: #2c2c2c; }
  @media (max-width: 500px) {
    #page-top {
      bottom: 20px;
      right: 20px;
      width: 35px;
      height: 35px; } }
  #page-top::after {
    position: absolute;
    margin: auto;
    top: 10px;
    bottom: 0;
    right: 0;
    left: 0;
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    @media (max-width: 500px) {
      #page-top::after {
        width: 15px;
        height: 15px; } }

/*************************************
* 見出し
*************************************/
.sw-H1Block {
  padding: 50px 0;
  text-align: center;
  color: #fff;
  background: #189cba;
  font-size: 3rem;
  margin-bottom: 50px; }

/*************************************
* 共通
*************************************/
@media (max-width: 500px) {
  .pc-view {
    display: none !important; }
  .sp-view {
    display: block !important; } }

.op a:hover, a.op:hover {
  opacity: 0.7; }

.lnk {
  border-radius: 5px;
  text-align: center;
  font-size: 2.2rem;
  background: #e3536e;
  line-height: 1;
  display: inline-block;
  color: #fff;
  position: relative;
  padding: 15px 60px; }
  @media (max-width: 500px) {
    .lnk {
      padding: 15px 40px;
      font-size: 1.6rem; } }
  .lnk::after {
    position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    right: 20px;
    content: "";
    display: block;
    width: 7px;
    height: 7px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }

.sw-Form {
  width: 100%;
  max-width: 750px;
  margin: 0 auto; }

.sw-Form_Table {
  width: 100%; }
  .sw-Form_Table th {
    font-weight: normal;
    text-align: left;
    vertical-align: middle;
    padding: 15px;
    width: 30%; }
    @media (max-width: 500px) {
      .sw-Form_Table th {
        padding: 10px 0;
        padding-bottom: 0;
        display: block;
        width: 100%;
        border-bottom: none; } }
    .sw-Form_Table th span {
      color: #ff0000;
      font-size: 1.2rem; }
  .sw-Form_Table td {
    vertical-align: middle;
    padding: 15px; }
    @media (max-width: 500px) {
      .sw-Form_Table td {
        padding: 10px 0;
        display: block;
        border-bottom: none; } }

.sw-Buttons_Wrap {
  width: 100%;
  flex-wrap: wrap;
  display: flex;
  margin-top: 50px;
  justify-content: center; }
  @media (max-width: 500px) {
    .sw-Buttons_Wrap {
      justify-content: space-between; } }

.sw-Buttons {
  border: none !important;
  margin: 0 10px;
  font-size: 1.8rem;
  cursor: pointer;
  border-radius: 3px;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1;
  display: inline-block;
  position: relative;
  padding: 15px;
  max-width: 150px;
  width: 48% !important; }
  @media (max-width: 500px) {
    .sw-Buttons {
      margin: 0; } }

.sw-Buttons-reset {
  background: #efefef; }

.sw-Buttons-submit {
  background: #ef6262;
  color: #fff; }

/*************************************
* TOP
*************************************/
.tp-Header {
  width: 100%;
  position: absolute;
  justify-content: space-between;
  top: 0;
  left: 0;
  z-index: 999; }
  .tp-Header .tp-Header_Inner {
    max-width: 90%;
    margin: 0 auto;
    height: 74px;
    align-items: center;
    display: flex;
    justify-content: space-between; }
  .tp-Header .tp-Header_Logo {
    max-width: 35%;
    width: 100%;
    vertical-align: middle; }
    .tp-Header .tp-Header_Logo img {
      height: 34px; }
      @media (max-width: 1024px) {
        .tp-Header .tp-Header_Logo img {
          height: auto; } }
  .tp-Header .btn_reg {
    font-size: 1.8rem;
    color: #fff;
    background: #189cba;
    border-radius: 15px;
    padding: 5px 20px; }
    @media (max-width: 500px) {
      .tp-Header .btn_reg {
        font-size: 1.4rem; } }

.tp-Hero {
  text-align: center;
  line-height: 1;
  background: url(../img/index/tp-Hero_Image.jpg) no-repeat center center;
  background-size: cover;
  position: relative; }
  @media (min-width: 1025px) {
    .tp-Hero {
      height: 100vh; } }
  @media (max-width: 1024px) {
    .tp-Hero {
      height: 50vh;
      background-position: 80% center; } }
  .tp-Hero .tp-Hero_Text {
    position: absolute;
    left: 5%;
    color: #fff;
    line-height: 1;
    text-align: left; }
    @media (min-width: 1025px) {
      .tp-Hero .tp-Hero_Text {
        top: 50%;
        transform: translateY(-50%); } }
    @media (max-width: 1024px) {
      .tp-Hero .tp-Hero_Text {
        text-align: center;
        width: 90%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%); } }
  .tp-Hero .tp-Hero_Text-main {
    font-size: 4.8rem;
    margin-bottom: 35px; }
    @media (max-width: 500px) {
      .tp-Hero .tp-Hero_Text-main {
        font-size: 2.4rem;
        margin-bottom: 20px; } }
  .tp-Hero .tp-Hero_Text-sub {
    font-size: 2rem; }
    @media (max-width: 500px) {
      .tp-Hero .tp-Hero_Text-sub {
        font-size: 1.2rem; } }

.tp-Section {
  padding: 95px 0; }
  @media (max-width: 500px) {
    .tp-Section {
      padding: 35px 0; } }

.tp-H2Title {
  margin-bottom: 50px;
  font-weight: bold;
  text-align: center;
  font-size: 3.6rem; }
  @media (max-width: 500px) {
    .tp-H2Title {
      font-size: 2rem;
      margin-bottom: 20px; } }
  .tp-H2Title span {
    font-size: 1.8rem; }
    @media (max-width: 500px) {
      .tp-H2Title span {
        font-size: 1.2rem; } }

.tp-Reason {
  text-align: center; }
  .tp-Reason .tp-H2Title {
    color: #189cba; }
  .tp-Reason img {
    margin-top: 40px; }
    @media (max-width: 500px) {
      .tp-Reason img {
        margin-top: 20px; } }

.tp-Satisfaction {
  text-align: center;
  color: #fff;
  background: url(../img/index/bg_Satisfaction.jpg) no-repeat center center;
  background-size: cover; }
  .tp-Satisfaction .tp-Satisfaction_Columns {
    display: flex;
    max-width: 940px;
    margin: 95px auto 0;
    justify-content: space-between; }
    @media (max-width: 500px) {
      .tp-Satisfaction .tp-Satisfaction_Columns {
        display: block;
        margin-top: 40px; } }
    .tp-Satisfaction .tp-Satisfaction_Columns li {
      width: 32%;
      font-size: 1.6rem; }
      @media (max-width: 500px) {
        .tp-Satisfaction .tp-Satisfaction_Columns li {
          width: 100%;
          font-size: 1.4rem;
          margin-bottom: 40px; }
          .tp-Satisfaction .tp-Satisfaction_Columns li:last-child {
            margin-bottom: 0; }
          .tp-Satisfaction .tp-Satisfaction_Columns li img {
            display: block;
            max-width: 30%;
            margin: 0 auto;
            width: 100%; } }
      .tp-Satisfaction .tp-Satisfaction_Columns li p {
        margin-top: 20px; }
        @media (max-width: 500px) {
          .tp-Satisfaction .tp-Satisfaction_Columns li p {
            margin-top: 10px; } }

.tp-Service {
  text-align: center; }
  .tp-Service .tp-H2Title {
    color: #6bb82d; }
  .tp-Service .tp-Service_H3Title {
    font-size: 3rem;
    line-height: 1;
    margin-bottom: 30px; }
    @media (max-width: 500px) {
      .tp-Service .tp-Service_H3Title {
        font-size: 1.8rem;
        margin-bottom: 10px; } }
  .tp-Service .tp-Service_Columns {
    margin-top: 70px;
    display: flex;
    justify-content: space-between;
    text-align: left; }
    @media (max-width: 500px) {
      .tp-Service .tp-Service_Columns {
        margin-top: 35px;
        display: block; } }
  .tp-Service .tp-Service_Image {
    width: 41%; }
    @media (max-width: 500px) {
      .tp-Service .tp-Service_Image {
        width: 100%;
        margin-bottom: 20px; } }
  .tp-Service .tp-Service_Text {
    padding-top: 30px;
    width: 55%;
    padding-right: 19%;
    font-size: 1.6rem; }
    @media (max-width: 500px) {
      .tp-Service .tp-Service_Text {
        width: 90%;
        margin: 0 auto;
        font-size: 1.4rem;
        padding: 0; } }
  .tp-Service .tp-Service_Columns-left {
    flex-direction: row-reverse; }
    .tp-Service .tp-Service_Columns-left .tp-Service_Text {
      padding-right: 0;
      padding-left: 19%; }
      @media (max-width: 500px) {
        .tp-Service .tp-Service_Columns-left .tp-Service_Text {
          padding: 0; } }

.tp-Repeat {
  text-align: center;
  color: #fff;
  background: url(../img/index/bg_Repeat.jpg) no-repeat center center;
  background-size: cover; }
  .tp-Repeat .tp-Repeat_Columns {
    margin-top: 90px;
    max-width: 1225px;
    display: flex;
    justify-content: space-between; }
    @media (max-width: 500px) {
      .tp-Repeat .tp-Repeat_Columns {
        margin-top: 35px;
        display: block; } }
    .tp-Repeat .tp-Repeat_Columns > * {
      width: 48%; }
      @media (max-width: 500px) {
        .tp-Repeat .tp-Repeat_Columns > * {
          width: 100%; }
          .tp-Repeat .tp-Repeat_Columns > *:not(:last-child) {
            margin-bottom: 30px; } }
  .tp-Repeat .tp-Repeat_Table_Wrap {
    border-style: solid;
    border-width: 1px;
    border-color: white;
    background-color: rgba(1, 1, 1, 0.29);
    color: #fff;
    padding: 30px 15px 0; }
    @media (max-width: 500px) {
      .tp-Repeat .tp-Repeat_Table_Wrap {
        padding: 15px 15px 0; } }
    .tp-Repeat .tp-Repeat_Table_Wrap h3 {
      text-align: center;
      font-size: 2rem;
      font-weight: bold;
      margin-bottom: 20px; }
      @media (max-width: 500px) {
        .tp-Repeat .tp-Repeat_Table_Wrap h3 {
          font-size: 1.4rem;
          margin-bottom: 15px; } }
  .tp-Repeat .tp-Repeat_Table {
    align-items: center;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    .tp-Repeat .tp-Repeat_Table > * {
      margin-bottom: 20px; }
      @media (max-width: 500px) {
        .tp-Repeat .tp-Repeat_Table > * {
          margin-bottom: 10px; } }
    .tp-Repeat .tp-Repeat_Table dt {
      width: 135px;
      line-height: 1.5; }
      @media (max-width: 500px) {
        .tp-Repeat .tp-Repeat_Table dt {
          width: 100px; } }
      .tp-Repeat .tp-Repeat_Table dt span {
        display: block;
        line-height: 40px;
        font-size: 1.8rem;
        font-weight: bold;
        text-align: center; }
        @media (max-width: 500px) {
          .tp-Repeat .tp-Repeat_Table dt span {
            line-height: 30px;
            font-size: 1.2rem; } }
      .tp-Repeat .tp-Repeat_Table dt:nth-of-type(odd) span {
        background: #4292e1; }
      .tp-Repeat .tp-Repeat_Table dt:nth-of-type(even) span {
        background: #f9756d; }
    .tp-Repeat .tp-Repeat_Table dd {
      font-size: 1.6rem;
      text-align: left;
      width: calc(95% - 135px); }
      @media (max-width: 500px) {
        .tp-Repeat .tp-Repeat_Table dd {
          width: calc(95% - 100px);
          font-size: 1.2rem; } }

.tp-Staff {
  text-align: center;
  background: #f8f8f9; }
  .tp-Staff .tp-Staff_Inner {
    max-width: 940px; }
  .tp-Staff .tp-H2Title {
    color: #ea6767; }
  .tp-Staff .tp-Staff_Columns {
    display: flex;
    margin: 50px auto 30px;
    justify-content: space-between; }
    @media (max-width: 500px) {
      .tp-Staff .tp-Staff_Columns {
        margin: 25px auto 15px; } }
    .tp-Staff .tp-Staff_Columns li {
      width: 24%; }
  .tp-Staff .tp-Staff_Text {
    text-align: right;
    font-size: 1.4rem; }
    @media (max-width: 500px) {
      .tp-Staff .tp-Staff_Text {
        font-size: 1.2rem; } }

.tp-Media .tp-H2Title {
  color: #e88821; }

.tp-Contact {
  text-align: center; }
  .tp-Contact .tp-Contact_Link_Wrap {
    text-align: center;
    margin-top: 40px; }
    @media (max-width: 500px) {
      .tp-Contact .tp-Contact_Link_Wrap {
        margin-top: 20px; } }
    .tp-Contact .tp-Contact_Link_Wrap a {
      color: #fff;
      display: inline-block;
      border-radius: 15px;
      background-color: #189cba;
      max-width: 520px;
      width: 100%;
      line-height: 84px;
      font-size: 2.4rem; }
      @media (max-width: 500px) {
        .tp-Contact .tp-Contact_Link_Wrap a {
          width: 75%;
          border-radius: 10px;
          line-height: 50px;
          font-size: 1.6rem; } }

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