@charset "utf-8";

/* ==========================================================================
  tabNavi
  ========================================================================== */
.tabNavi {
  border-bottom: 1px solid #b3b3b3;
}
.tabNavi .container {
}
.tabNavi ul {
  display: flex;
  padding: 0;
  list-style: none;
  justify-content: space-between;
}
.tabNavi li {
}
.tabNavi a {
  display: block;
  text-align: center;
}
.tabNavi .current a {
  border-color: #00b7e7;
}

@media screen and (max-width: 767px) {
  .tabNavi {
    margin-bottom: 50px;
  }
  .tabNavi .container {
  }
  .tabNavi ul {
    margin: 0;
  }
  .tabNavi li {
    width: calc(33.33% - 8px);
  }
  .tabNavi a {
    height: 100%;
    padding-bottom: 10px;
    border-bottom: 4px solid #f3f3f3;
    font-size: 1.3rem;
    line-height: 1.4;
    box-sizing: border-box;
  }
}

@media screen and (min-width: 768px) {
  .tabNavi {
    margin-bottom: 95px;
  }
  .tabNavi .container {
  }
  .tabNavi ul {
    margin: 0 80px;
  }
  .tabNavi li {
    width: calc(33.33% - 7px);
  }
  .tabNavi a {
    padding-bottom: 20px;
    border-bottom: 8px solid #f3f3f3;
    font-size: 2.6rem;
    font-weight: 300;
    letter-spacing: .05em;
    transition: border-color .2s ease-out;
  }
  .tabNavi a:hover {
    border-color: #00b7e7;
    transition: border-color .2s ease-out;
  }
}

/* ==========================================================================
  tabContent
  ========================================================================== */
.tabContent {
}
.tabContent .container {
}
.tabContent .tabItem dl {
  margin: 0;
  border-bottom: 1px solid #b3b3b3;
}
.tabContent .tabItem dt {
  display: flex;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217px%22%20height%3D%2217px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(255%2C%2069%2C%20106)%22%20d%3D%22M16.292%2C7.083%20L10.271%2C7.083%20C10.058%2C7.083%209.917%2C6.942%209.917%2C6.729%20L9.917%2C0.709%20C9.917%2C0.283%209.633%2C-0.000%209.209%2C-0.000%20L7.792%2C-0.000%20C7.368%2C-0.000%207.084%2C0.283%207.084%2C0.709%20L7.084%2C6.729%20C7.084%2C6.942%206.943%2C7.083%206.730%2C7.083%20L0.709%2C7.083%20C0.283%2C7.083%20-0.001%2C7.367%20-0.001%2C7.792%20L-0.001%2C9.208%20C-0.001%2C9.633%200.283%2C9.917%200.709%2C9.917%20L6.730%2C9.917%20C6.943%2C9.917%207.084%2C10.059%207.084%2C10.270%20L7.084%2C16.292%20C7.084%2C16.716%207.368%2C17.001%207.792%2C17.001%20L9.209%2C17.001%20C9.633%2C17.001%209.917%2C16.716%209.917%2C16.292%20L9.917%2C10.270%20C9.917%2C10.059%2010.058%2C9.917%2010.271%2C9.917%20L16.292%2C9.917%20C16.717%2C9.917%2017.000%2C9.633%2017.000%2C9.208%20L17.000%2C7.792%20C17.000%2C7.367%2016.717%2C7.083%2016.292%2C7.083%20Z%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
}
.tabContent .tabItem dt.open {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217px%22%20height%3D%223px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(255%2C%2069%2C%20106)%22%20d%3D%22M16.292%2C0.083%20L0.709%2C0.083%20C0.283%2C0.083%20-0.001%2C0.366%20-0.001%2C0.791%20L-0.001%2C2.209%20C-0.001%2C2.634%200.283%2C2.917%200.709%2C2.917%20L16.292%2C2.917%20C16.717%2C2.917%2017.000%2C2.634%2017.000%2C2.209%20L17.000%2C0.791%20C17.000%2C0.366%2016.717%2C0.083%2016.292%2C0.083%20Z%22%2F%3E%3C%2Fsvg%3E');
}
.tabContent .tabItem dt .ico {
  display: block;
  background: #fcff00;
  border-radius: 50%;
  font-family: 'Advent Pro', sans-serif;
  font-weight: 600;
  text-align: center;
}
.tabContent .tabItem dt .txt {
  display: block;
  letter-spacing: .05em;
  box-sizing: border-box;
}
.tabContent .tabItem dd {
  display: flex;
  margin: 0;
  justify-content: space-between;
}
.tabContent .tabItem dd .ico {
  display: block;
  background: #ff456a;
  border-radius: 50%;
  color: #fff;
  font-family: 'Advent Pro', sans-serif;
  font-weight: 600;
  text-align: center;
}
.tabContent .tabItem dd .txt {
  display: block;
  letter-spacing: .05em;
  box-sizing: border-box;
}
.tabContent .tabItem dd p {
}
.tabContent .tabItem dd a {
  color: #ff456a;
  border-bottom: 1px solid #ff456a;
}
.tabContent .tabItem dd a[target="_blank"]::after {
  content: '';
  display: inline-block;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212px%22%20height%3D%2212px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(255%2C%2069%2C%20106)%22%20d%3D%22M10.999%2C12.000%20L7.000%2C12.000%20L7.000%2C11.000%20L10.999%2C11.000%20L10.999%2C0.999%20L0.999%2C0.999%20L0.999%2C5.001%20L0.000%2C5.001%20L0.000%2C0.999%20L0.000%2C-0.001%20L0.999%2C-0.001%20L10.999%2C-0.001%20L12.001%2C-0.001%20L12.001%2C0.999%20L12.001%2C11.000%20L12.001%2C12.000%20L10.999%2C12.000%20ZM0.999%2C8.000%20L0.999%2C7.001%20L4.000%2C7.001%20L5.000%2C7.001%20L5.000%2C8.000%20L5.000%2C11.000%20L4.000%2C11.000%20L4.000%2C8.724%20L1.120%2C11.605%20L0.412%2C10.898%20L3.309%2C8.000%20L0.999%2C8.000%20Z%22%2F%3E%3C%2Fsvg%3E');
  background-size: contain;
}
.tabContent .txtArea {
  letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
  .tabContent {
  }
  .tabContent .container {
  }
  .tabContent .tabItem {
    margin: 0 -20px 50px;
  }
  .tabContent .tabItem dl {
    padding: 15px 20px;
  }
  .tabContent .tabItem dt {
    background-position: right center;
    background-size: 15px 15px;
  }
  .tabContent .tabItem dt.open {
    background-size: 15px 2px;
  }
  .tabContent .tabItem dt .ico {
    width: 38px;
    height: 38px;
    font-size: 2.1rem;
    line-height: 38px;
  }
  .tabContent .tabItem dt .txt {
    width: calc(100% - 50px);
    padding-right: 30px;
    font-size: 1.4rem;
  }
  .tabContent .tabItem dd {
    padding: 20px 0 10px;
  }
  .tabContent .tabItem dd .ico {
    width: 38px;
    height: 38px;
    font-size: 2.1rem;
    line-height: 38px;
  }
  .tabContent .tabItem dd .txt {
    width: calc(100% - 50px);
    padding-right: 30px;
    font-size: 1.3rem;
  }
  .tabContent .tabItem dd p {
  }
  .tabContent .tabItem dd a[target="_blank"]::after {
    width: 9px;
    height: 9px;
    margin-left: 3px;
  }
  .tabContent .txtArea {
    margin: 0 0 15px;
    font-size: 1.3rem;
  }
}

@media screen and (min-width: 768px) {
  .tabContent {
  }
  .tabContent .container {
  }
  .tabContent .tabItem {
    margin-bottom: 90px;
  }
  .tabContent .tabItem dl {
    padding: 8px 0;
  }
  .tabContent .tabItem dt {
    background-position: right 15px center;
    background-size: 17px 17px;
  }
  .tabContent .tabItem dt.open {
    background-size: 17px 2px;
  }
  .tabContent .tabItem dt .ico {
    width: 43px;
    height: 43px;
    font-size: 2.4rem;
    line-height: 43px;
  }
  .tabContent .tabItem dt .txt {
    width: calc(100% - 60px);
    padding-right: 40px;
    font-size: 1.7rem;
  }
  .tabContent .tabItem dd {
    padding: 15px 0;
  }
  .tabContent .tabItem dd .ico {
    width: 43px;
    height: 43px;
    font-size: 2.4rem;
    line-height: 43px;
  }
  .tabContent .tabItem dd .txt {
    width: calc(100% - 60px);
    padding: 10px 40px 0 0;
    font-size: 1.5rem;
  }
  .tabContent .tabItem dd p {
  }
  .tabContent .tabItem dd a {
    transition: border-color .2s ease-out;
  }
  .tabContent .tabItem dd a:hover {
    border-color: #fff;
    transition: border-color .2s ease-out;
  }
  .tabContent .tabItem dd a[target="_blank"]::after {
    width: 12px;
    height: 12px;
    margin-left: 5px;
  }
  .tabContent .txtArea {
    margin: 0 0 40px;
    font-size: 1.5rem;
  }
}


/* ==========================================================================
  contact
  ========================================================================== */
.contact {
}
.contact .container {
}
.contact .sectionTtl {
}
.contact .box {
  background: #f3f3f3;
}
.contact .linkArea {
}
.contact .btnLink {
}
.contact .telArea {
}
.contact .telArea .txt {
  display: block;
  line-height: 1;
}
.contact .telArea .tel {
  display: block;
  font-weight: 500;
  line-height: 1;
}
.contact .telArea .tel .ico {
}
.contact .telArea .name {
  display: block;
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .contact {
  }
  .contact .container {
  }
  .contact .sectionTtl {
    margin-bottom: 20px;
  }
  .contact .box {
    padding: 30px 25px;
    border-radius: 10px;
  }
  .contact .linkArea {
  }
  .contact .btnLink {
    width: 70%;
    margin: 0 auto 25px;
  }
  .contact .telArea {
  }
  .contact .telArea .txt {
    margin-bottom: 10px;
    font-size: 1.2rem;
  }
  .contact .telArea .tel {
    margin-bottom: 10px;
    font-size: 2.7rem;
  }
  .contact .telArea .tel .ico {
    margin-right: 3px;
    font-size: 1.5rem;
  }
  .contact .telArea .name {
    font-size: 1.2rem;
  }
}

@media screen and (min-width: 768px) {
  .contact {
  }
  .contact .container {
  }
  .contact .sectionTtl {
    margin-bottom: 45px;
  }
  .contact .box {
    display: flex;
    padding: 60px 30px;
    border-radius: 20px;
    justify-content: center;
  }
  .contact .linkArea {
    margin-right: 7.14%;
  }
  .contact .btnLink {
    width: 220px;
  }
  .contact .telArea {
    padding-left: 7.14%;
    border-left: 1px solid #b3b3b3;
  }
  .contact .telArea .txt {
    margin-bottom: 10px;
    font-size: 1.3rem;
  }
  .contact .telArea .tel {
    margin-bottom: 10px;
    font-size: 2.8rem;
  }
  .contact .telArea .tel .ico {
    margin-right: 2px;
    font-size: 1.2rem;
  }
  .contact .telArea .name {
    font-size: 1.5rem;
  }
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}


/* ==========================================================================
  template
  ========================================================================== */


@media screen and (max-width: 767px) {
}

@media screen and (min-width: 768px) {
}
