@charset "UTF-8";
/* ↓↓↓↓↓↓↓↓↓ flow↓↓↓↓↓↓↓↓↓ */
.title_bg.main_bg_4 {
  background: url("../img/rental_boat.jpg") no-repeat center/cover;
  opacity: 0.6; }
  .title_bg.main_bg_4::after {
    content: "RENTAL BOAT"; }

.boat_intro {
  padding-top: 200px; }
  .boat_intro .content_area {
    padding-top: 160px;
    padding-bottom: 160px;
    max-width: 870px;
    display: flex;
    flex-direction: column;
    align-items: center; }
  .boat_intro h2 {
    width: 480px;
    position: relative;
    z-index: 1; }
    .boat_intro h2::before {
      content: "";
      display: block;
      width: 81.66%;
      height: 139.04%;
      background: url("../img/boat_bg.svg") no-repeat center/contain;
      opacity: 0.2;
      position: absolute;
      z-index: -1;
      top: 0;
      right: 50%;
      transform: translate(50%, -50%); }
  .boat_intro .deco_dot {
    display: flex;
    margin-bottom: 40px; }
    .boat_intro .deco_dot span {
      display: block;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      margin-right: 8px;
      background: #0099a9;
      opacity: .2; }
      .boat_intro .deco_dot span:last-child {
        margin-right: 0; }
  .boat_intro .boat_intro_text {
    text-align: center;
    line-height: 1.75;
    margin-bottom: 100px; }
  .boat_intro .example_box {
    display: flex;
    justify-content: space-between; }
  .boat_intro .example_item {
    width: calc(50% - 15px); }
  .boat_intro .example_text {
    width: fit-content;
    min-width: 360px;
    padding: 10px 0;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    background: #0099a9;
    border-radius: 100px;
    margin: 0 auto 20px; }
  @media screen and (max-width: 1100px) {
    .boat_intro {
      padding-top: 0; }
      .boat_intro .content_area {
        padding: 180px 0 60px;
        align-items: center; }
      .boat_intro h2 {
        width: 276px;
        margin-bottom: 30px; }
      .boat_intro .deco_dot {
        margin-bottom: 30px; }
        .boat_intro .deco_dot span {
          width: 6px;
          height: 6px;
          margin-right: 6px; }
      .boat_intro .boat_intro_text {
        text-align: center;
        letter-spacing: 0.05em;
        margin-bottom: 60px;
        font-size: 1.4rem; }
      .boat_intro .example_box {
        flex-direction: column;
        max-width: 400px; }
      .boat_intro .example_item {
        width: 100%; }
        .boat_intro .example_item:first-child {
          margin-bottom: 40px; }
      .boat_intro .example_text {
        min-width: 300px;
        padding: 8px 0;
        font-size: 1.6rem;
        margin: 0 auto 20px; } }

.bg_area_content {
  position: relative;
  z-index: 1;
  background: #edf4f5; }
  .bg_area_content:last-child {
    background: #fff;
    margin-bottom: 160px; }
  .bg_area_content .content_area {
    padding-top: 100px;
    padding-bottom: 100px; }
  .bg_area_content .bg {
    background: #003f91;
    height: 100%;
    width: 100%;
    max-width: 1680px;
    margin-left: auto;
    border-radius: 100px 0 0 100px;
    position: relative;
    z-index: 1; }
  @media screen and (max-width: 1100px) {
    .bg_area_content:last-child {
      margin-bottom: 0; }
    .bg_area_content .content_area {
      padding-top: 80px;
      padding-bottom: 80px; }
    .bg_area_content .bg {
      border-radius: 0; } }

.contact .h2_line {
  margin-bottom: 50px; }
  .contact .h2_line .h2_sub {
    color: #fff; }
    .contact .h2_line .h2_sub::after {
      background: #fff; }
.contact .content_area {
  max-width: 870px; }
.contact .content_box {
  display: flex;
  justify-content: space-between;
  width: 100%; }
.contact .conent_text {
  width: 50%; }
.contact .reserve_box {
  margin-left: 20px; }
.contact .reserve_text {
  font-weight: bold;
  display: flex;
  align-items: center;
  margin-bottom: 8px; }
  .contact .reserve_text::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    background: url("../img/tri.svg") no-repeat center/contain;
    margin-left: 4px;
    margin-bottom: -2px;
    transform: rotate(90deg); }
@media screen and (max-width: 1100px) {
  .contact .h2_line {
    margin-bottom: 32px; }
  .contact .content_area {
    max-width: 870px;
    padding: 60px 0; }
  .contact .content_box {
    flex-direction: column; }
  .contact .conent_text {
    width: 100%;
    max-width: 600px;
    margin-bottom: 40px; }
  .contact .reserve_box {
    margin-left: 0; }
  .contact .direct {
    margin: 0; } }

.spec .content_container {
  padding-top: 160px;
  padding-bottom: 160px;
  display: flex;
  justify-content: space-between; }
  .spec .content_container .spec_img_box {
    width: 50%; }
  .spec .content_container .main_img {
    position: relative;
    width: 100%;
    margin-bottom: 20px; }
    .spec .content_container .main_img::before {
      content: "";
      display: block;
      padding-top: 75%; }
    .spec .content_container .main_img img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .spec .content_container .sub_img {
    display: flex;
    justify-content: space-between; }
    .spec .content_container .sub_img li {
      width: 19%;
      cursor: pointer; }
      .spec .content_container .sub_img li img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
  .spec .content_container .content_box {
    width: calc(50% - 30px); }
  .spec .content_container h2 {
    margin-bottom: 40px; }
  .spec .content_container .spec_item {
    display: flex;
    margin-bottom: 10px; }
    .spec .content_container .spec_item:last-child {
      margin-bottom: 0; }
    .spec .content_container .spec_item dt {
      font-weight: bold;
      width: 25%; }
    .spec .content_container .spec_item dd {
      width: 75%; }
      .spec .content_container .spec_item dd::before {
        content: "："; }
.spec .main_bg_3 {
  height: 100%; }
@media screen and (max-width: 1100px) {
  .spec .content_container .spec_item dt {
    width: 40%; }
  .spec .content_container .spec_item dd {
    width: 60%; } }
@media screen and (max-width: 600px) {
  .spec .content_container {
    padding: 0;
    flex-direction: column-reverse; }
    .spec .content_container .spec_img_box {
      width: 100%; }
    .spec .content_container .main_img {
      margin-bottom: 10px; }
    .spec .content_container .content_box {
      width: 100%;
      margin-bottom: 40px; }
    .spec .content_container h2 {
      margin-bottom: 32px; }
    .spec .content_container .spec_item dt {
      width: 30%; }
    .spec .content_container .spec_item dd {
      width: 70%; } }

.info .content_area {
  padding-top: 120px;
  padding-bottom: 120px; }
.info .content_box:first-child {
  margin-bottom: 60px; }
.info h3 {
  padding: 10px 36px;
  font-weight: bold;
  color: #fff;
  font-size: 2.8rem;
  border-radius: 100px;
  background: #0099a9;
  margin-bottom: 30px;
  width: fit-content; }
.info .guide_list {
  padding-left: 30px; }
  .info .guide_list .guide_item {
    margin-bottom: 10px; }
    .info .guide_list .guide_item:last-child {
      margin-bottom: 0; }
    .info .guide_list .guide_item::before {
      content: "・"; }
.info .price_table {
  border-collapse: collapse;
  margin-left: 30px; }
  .info .price_table th {
    background: #edf4f5;
    width: 160px;
    padding: 24px;
    text-align: center;
    border: 1px solid #797f80;
    vertical-align: middle; }
  .info .price_table td {
    width: 400px;
    padding-left: 30px;
    border: 1px solid #797f80;
    vertical-align: middle; }
@media screen and (max-width: 1100px) {
  .info .content_area {
    padding: 80px 0; }
  .info .content_box:first-child {
    margin-bottom: 40px; }
  .info h3 {
    padding: 8px 20px;
    font-size: 2rem;
    margin-bottom: 16px; }
  .info .guide_list {
    padding-left: 0; }
  .info .price_table {
    margin-left: 0; }
    .info .price_table th {
      width: 30%;
      padding: 14px; }
    .info .price_table td {
      width: 70%;
      padding: 14px 14px 14px 16px; } }
@media screen and (max-width: 600px) {
  .info table {
    width: 100%; } }
