@charset "utf-8";

.searchbox01 .type-select .btn-group .btn.active:before {
  display: none;
}

.binlist-calendar {
  min-height: auto;
}

.ttl-box{
  margin-bottom: 15px;
}

.bin-time-box{
  background: #f7f7f7;
  padding: 10px 10px;
  border-radius: 10px;
}
.bin-ttl-box {
  padding-bottom: 10px;
}

.dep-arr-box {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.dep-arr-box .item{
  width: 49.5%;
  order: 1;
}
.dep-arr-box .item a {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;

  text-align: center;
  border: 1px solid #ddd;
  background: #fff;
  border-radius: 10px;
  border:none;
  padding: 15px 3px;
  text-decoration: none;
}

.dep-arr-box .item a:hover {
  background: #fff5f9;
}

/*.dep-arr-box .item a:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 10px;
  width: 16px;
  height: 16px;
  background: url(/static/3/img/ferry/i-win01.svg) no-repeat center center;
}

.dep-arr-box .item a:hover:before {
  background: url(/static/3/img/ferry/i-win02.svg) no-repeat center center;
}*/

.dep-arr-day-txt {
  font-size: 14px;
  letter-spacing: -0.8px;
}

.dep-arr-time-txt {
  font-size: 20px;
  font-weight: bold;
  margin: 0 8px;
}

.dep-arr-txt {
  font-size: 14px;
  font-weight: bold;
}

.dep-arr-port {
  font-size: 14px;
}
.dep-arr-port:before {
  content: "\f3c5";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 5px;
  color: #F53D7E;
}
.dep-arr-port,
.card h3.dep-arr-port{
  font-size: 14px;
  padding: 0;
  margin: 0;
  font-weight: normal;
}
.dep-arr-port:before,
.card h3.dep-arr-port:before{
  color: #000;
  font-size: 10px;
}
.dep-arr-port b,
.card h3.dep-arr-port b{
  display: block;
  font-weight: normal;
}
.card-body .notice-check label {
  font-size: 14px;
  font-weight: bold;
  color: #cc0000;
  text-align: center;
  cursor: pointer;
}

.card-body .notice-check input {
  cursor: pointer;
}

.notice-check a {
  display: block;
  padding: 15px 10px;
  color: #cc0000;
  font-weight: bold;
  text-align: center;
  background: #FEEBF2;
  text-decoration: none;
}

.notice-check a i {
  margin-right: 7px;
}

.notice-check a:hover {
  background: #fbdee9;
}

.ferry-thumb-box-header {
  position: relative;
  font-weight: bold;
  padding: 10px 30px 0px 10px;
}

.ferry-thumb-box-body {
  display: flex;
  justify-content: center;
  gap: 15px;
  padding: 10px 0 12px 0;
}

.ferry-thumb-box-body img {
  max-width: 150px;
  height: 100px;
  object-fit: cover;
}

.ferry-thumb-box-body img:nth-child(2n) {
  max-width: calc(50% - 15px);
}

.card .ferry-thumb-box h3 {
  padding-top: 5px;
  margin: 0;
}

.card .ferry-thumb-box .ellipsis {
  top: 5px;
  transform: initial;
  right: 5px;
}

.bin-box-ferry-in {
  padding: 0 17px;
}

.bin-box-ferry-in .messege-box02 {
  margin-bottom: 10px;
}


.ferry-bin-list {
  background: #FAFAFA;
}

.ferry-bin-list .bin-box-ferry-in {
  padding: 15px 17px;
}
.ferry-bin-list .bin-box-ferry-in + .bin-box-ferry-in {
  padding: 0px 17px 15px;
}
.ferry-plan-card + .ferry-plan-card{
  margin-top:10px !important;
}
.ferry-bin-list .card {
  margin-bottom: 0px !important;
}

.ferry-bin-list .card-body {
  padding: 15px;
}

.ferry-bin-list .card-header h3 {
  position: relative;
  font-size: 14px;
  padding: 0;
  margin: 0;
}

.ferry-bin-list-price {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ferry-bin-list-price {
  width: 100%;
}

.ferry-bin-list-price+.ferry-bin-list-price {
  margin-top: 7px;
}

.ferry-plan-card-header h4 {
  font-size: 14px;
  font-weight: bold;
}

.card-body h3 {
  padding: 0;
}

.card-body h4 {
  font-size: 13px;
  font-weight: bold;
  margin-bottom: 5px;
}

.room-type-label {
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  margin-left: 5px;
  padding: 2px 7px 1px 7px;
  background: #3bafda;
  vertical-align: 3px;
  border-radius: 2px;
}

ul.room-info {
  margin-top: 7px;
  font-size: 0;
}

ul.room-info li {
  font-size: 13px;
  line-height: 1;
  color: #666;
  display: inline-block;
}

ul.room-info li:not(:last-child):after {
  display: inline-block;
  content: "|";
  margin: 0 7px;
  color: #bbb;
}

.ferry-bin-list h3 .ellipsis {
  right: 0;
}


.discount-label-group {
  margin-top: 5px;
}

.discount-label {
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  margin-right: 2px;
  padding: 2px 7px 1px 7px;
  background: #3bafda;
  vertical-align: 3px;
  border-radius: 2px;
}

.bin-box-ferry-in .card-header {
  border-bottom: none;
  padding-bottom: 0;
}

.ferry-plan-card-body {
  padding-top: 5px;
}

.ferry-bin-list-price .price-line {
  font-size: 18px;
  font-weight: bold;
  color: #cc0000;
}

.ferry-bin-list-price {
  width: 100%;
}

.ferry-bin-list .card-body .ferry-bin-list-btn-set {
  width: 180px;
}

.ferry-bin-list .card-body .ferry-bin-list-btn-set a.bin-cartbtn {
  width: 100%;
  font-size: 14px;
  padding: 10px 7px;
  margin: 0;
  border-radius: 7px;
}

a.ferry-bin-plan-link {
  display: block;
  border-radius: 4px;
  border: 1px solid #ddd;
  padding: 15px;
}

a.ferry-bin-plan-link:hover {
  text-decoration: none;
  background: #FEEBF2;
}

a.ferry-bin-plan-link+a.ferry-bin-plan-link {
  margin-top: 10px;
}

.messege-box02 a:after {
  font-size: 18px;
  content: "\f077";
}

.messege-box02 a.collapsed:after {
  font-size: 18px;
  content: "\f078";
}

.info-box {
  display: block;
  padding: 10px 20px;
  border: 1px solid #f9adc8;
  border-radius: 2px;
  background: #FEEBF2;
  text-decoration: none;
  color: #cc0000;
  margin-bottom: 15px;
}

.info-box a.messege-ttl-link {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 12px;
  color: #cc0000;
  position: relative;
}

.info-box a.messege-ttl-link:hover {
  text-decoration: none;
}

.info-box a.messege-ttl-link.collapsed:after {
  display: block;
  content: "\f078";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 0px;
}

.info-box a.messege-ttl-link:after {
  display: block;
  content: "\f077";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 0px;
}

.info-label {
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  padding: 2px 7px;
  background: #cc0000;
  border-radius: 2px;
}

.info-box .messege-ttl,
.info-box a .messege-ttl {
  font-size: 14px;
  font-weight: bold;
}

.info-box-ttl-link {
  font-size: 14px;
  font-weight: bold;
  display: inline-block;
}

.info-box .info-box-in p {
  font-size: 12px;
  margin-top: 12px;
}

.info-box i {
  font-size: 20px;
  margin-left: 7px;
  margin-right: 22px;
}

.info-box ul li a {
  font-size: 14px;
  color: #cc0000;
  margin-top: 10px;
  display: inline-block;
  text-decoration: underline;
}

.bin-box-ferry-in .info-box-group {
  display: flex;
  flex-flow: column;
  gap: 7px;
  margin: 15px 0;
}

.bin-box-ferry-in .info-box-group .info-box {
  margin: 0;
}

.ferry-thumb-box {
  padding: 15px 20px 15px 20px;
}

dl.ferry-company {
  display: flex;
}

dl.ferry-company dt,
dl.ferry-company dd {
  font-size: 13px;
  font-weight: normal;
}

dl.ferry-company:first-child {
  margin-top: 5px;
}

.ferry-thumb-box+.info-box-group {
  margin-top: 0;
}


.info-box ul li {
  padding-bottom: 7px;
  border-bottom: 1px solid #f9adc8;
}

.info-box ul li:last-child {
  padding-bottom: 0px;
  border-bottom: none;
}

.ferry-bin-list-price-left p {
  font-size: 12px;
}

.ferry-bin-list-price-right {
  width: 115px;
}

.ferry-bin-notice {
  color: #333;
  font-weight: bold;
  padding: 10px 5px;
  margin-bottom: 12px;
  text-align: center;
  background: #eee;
}

.ferry-bin-list-price-right .price-line {
  text-align: right;
}

.ferry-bin-list-price-right .other-search-txt {
  font-size: 14px;
  font-weight: bold;
  color: #F53D7E;
}

.ferry-bin-list-price-right .other-search-txt:after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: 7px;
}

.modal-body h3 {
  font-size: 12px;
  font-weight: bold;
  margin: 0 0 5px 0;
  padding: 0;

}

.modal-body h4 {
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 10px;
}

.modal-body img,
.modal-body p {
  margin-bottom: 10px;
}

.modal .searchbox01,
.modal .searchbox01 .btn-group {
  margin: 0;
}

.modal .btn-search {
  margin-top: 0;
}

table.tbl-ship-info {
  margin-bottom: 15px;
  width: 100%;
  color: #666;
}

table.tbl-ship-info th {
  width: 83px;
}

table.tbl-ship-info td {
  width: calc(100% - 83px);
}

table.tbl-ship-info th,
table.tbl-ship-info td {
  font-size: 12px;
  vertical-align: top;
}


table.tbl-ship-info-border {
  margin-bottom: 15px;
  width: 100%;
  color: #666;
}

table.tbl-ship-info-border:last-child {
  margin-bottom: 0;
}

table.tbl-ship-info-border tr {
  border-top: 1px solid #ddd;
}

table.tbl-ship-info-border tr:last-child {
  border-bottom: 1px solid #ddd;
}

table.tbl-ship-info-border th {
  width: 83px;
}

table.tbl-ship-info-border td {
  width: calc(100% - 83px);
}

table.tbl-ship-info-border th,
table.tbl-ship-info-border td {
  font-size: 12px;
  vertical-align: top;
  padding: 8px 0 5px 5px;
}

.row table.tbl-ship-info-border {
  margin-top: 15px;
}

.box-border {
  padding: 15px;
  border: 1px solid #ddd;
}

.about-child {
  position: relative;
}

.about-child img {
  position: absolute;
  top: 0;
  right: 0;
  width: auto;
}


.about-child dl {
  display: flex;
  gap: 15px;
  color: #666;
}

.about-child dl dt,
.about-child dl dd {
  padding: 2px 0px;
}

.about-child dl:last-child {
  margin-bottom: 15px;
}

.about-child-box {
  max-width: 285px;
  margin: 0 auto 15px auto;
  text-align: center;
}


.about-child-box .row {
  margin-bottom: 10px;
}

.about-child-box .col-6 {
  padding: 0;
}

.about-child-box .col-6 p {
  margin: 0;
}

.passenger-box .card .card-header h3 {
  color: #555;
  padding: 0;
  margin: 0;
}

.passenger-box label {
  display: block;
  position: relative;
}
.select-style-box + .txt-afterinput{
  margin-top: 20px;
}
.passenger-box .form-control {
  margin-bottom: 10px;
}

button:focus {
  outline: none;
}

.btn-add-search {
  display: block;
  border: none;
  outline: none;
  background: #333;
  width: 100%;
  padding: 7px 5px;
  margin-top: 4px;
  border-radius: 4px;
  font-size: 12px;
  color: #fff;
  cursor: pointer;
}

.txt-required:after {
  display: block;
  content: "必須";
  font-size: 12px;
  font-weight: normal;
  color: #F53D7E;
  position: absolute;
  top: 0;
  right: 0;
}

.child-link {
  position: relative;
  display: block;
  margin-top: 7px;
  padding: 7px 10px 7px 22px;
  font-size: 12px;
  text-align: center;
  background: #f4f4f4;
}

.child-link:before {
  display: inline-block;
  content: "\f059";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 7px;
}

.child-link:hover {
  text-decoration: none;
  color: #F53D7E;
}

.question-link {
  position: relative;
  display: inline-block;
  font-size: 14px;
}

.question-link:before {
  display: inline-block;
  content: "\f059";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 5px;
}

.btn-mypage-import-data {
  border-radius: 3px;
  outline: none;
  border: none;
  font-size: 12px;
  color: #fff;
  padding: 7px 10px 5px 10px;
  margin: 0 0 10px auto;
  background: #333;
}

.btn-mypage-import-data:hover {
  cursor: pointer;
  opacity: 0.8;
}

.pregnant-box {
  margin-top: 7px;
  padding: 15px;
  background: #fff8fb;
  border-radius: 4px;
  border: 1px solid #f9adc8;
}

dl.car-info {
  display: flex;
  align-items: center;
  gap: 15px;
}

dl.car-info dt {
  width: 70px;
}

dl.car-info dd {
  width: calc(100% - 85px);
}

dl.car-info dt,
dl.car-info dd {
  font-size: 14px;
  padding: 5px;
}

dl.car-info dd .form-control {
  margin: 0 !important;
}

.select-style-box.discount-select .btn .discount-txt {
  font-weight: normal;
  margin-right: 10px;
}

.select-style-box.discount-select .btn .price-num {
  color: #f53d7e;
}

.card.discount-card .card-footer {
  font-weight: normal;
  background: #fff;
}

.card.discount-card .card-footer a {
  color: #333;
}

.card.discount-card .select-style-box.discount-select .btn-group {
  margin: 0;
}

.card.discount-card .card-footer dl.totalprice dt {
  color: #333;
  width: 200px;
  text-align: left;
}

.card.discount-card .card-footer dl.totalprice.discount-before {
  margin-top: 7px;
}

.card.discount-card .card-footer dl.totalprice.discount-before dt {
  font-size: 12px;
  font-weight: normal;
}

.card.discount-card .card-footer dl.totalprice.discount-before dd {
  font-size: 18px;
}

.btn-back {
  position: relative;
}

.btn-back:after {
  position: relative;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 20px;
  content: "\f053";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #333;
}

.btn-next,
.btn-passenger{
  position: relative;
}
.btn-passenger{
  display: block;
  width: 100%;
  max-width: 280px;
  margin:0 auto;
}

.btn-next:after{
  position: relative;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 20px;
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fff;
  height: initial;
  visibility: visible;
}

ul.status-list {
  display: flex;
  flex-flow: column;
  gap: 20px;
}

ul.status-list li {
  padding-top: 20px;
  border-top: 1px solid #ddd;
}

ul.status-list li h3 {
  font-size: 14px;
}

ul.status-list li:first-child {
  padding-top: 0px;
  border-top: none;
}

.modal .card-body ul.status-list li p:last-child {
  margin-bottom: 0;
}


@media(min-width: 992px) {
  .card.discount-card .card-footer {
    padding: 20px 30px;
  }

  .card-header h2 {
    font-size: 16px;
  }

  .modal .card-header {
    padding: 10px 15px;
  }

  .modal .card-header h2 {
    font-size: 14px;
    margin-bottom: 0;
  }
}

@media(max-width:991px) {

  #sidebar .btn-center01.onlysm,
  #sidebar .btn-next.onlysm {
    display: block !important;
  }
}

@media(min-width:768px) {
  .select-style-box.discount-select .btn {
    display: flex !important;
    justify-content: space-between;
  }
}

@media(max-width:767px) {
  .select-style-box.discount-select .btn {
    display: flex !important;
    flex-flow: column;
    gap: 5px;
  }

  .select-style-box .discount-price {
    text-align: right;
  }
.ferry-plan-card + .ferry-plan-card{
  margin-top:0px !important;
}
}

.searchbox01 .people-selection {
  margin-bottom: 0;
}

#sidebar .searchbox01 .people-selection {
  margin-bottom: 10px;
}

.select-payment-box label {
  margin-bottom: 5px;
}

.card-logo-set {
  margin-bottom: 10px;
}

.card-logo-set .btn:after,
.select-1 .btn:after {
  display: none;
}

.card-logo-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #ccc;
  border-radius: 4px;
  cursor: pointer;
  padding: 10px;
}

.card-logo-btn.active-card .fa-cc-visa,
.card-logo-btn.active-card .fa-cc-mastercard,
.card-logo-btn.active-card .fa-cc-jcb,
.card-logo-btn.active-card .fa-cc-amex {
  color: #f53d7e !important;
}

.select-payment-box h3 {
  font-size: 13px;
  padding: 0;
}

.select-1 .label-btn {
  display: block;
  position: relative;
  padding: 12px 15px 12px 45px;
  border: 1px solid #DBDBDB;
  border-radius: 4px;
  cursor: pointer;
  font-size: 13px;
  transition: all 0.2s ease;
}

.select-1 .label-btn:before {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  left: 15px;
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 18px;
  color: #E7E7E7;
}

.select-1 .label-btn.active-btn {
  color: #fff;
  background: #f53d7e;
}

.select-1 .label-btn.active-btn:before {
  color: #fff;
}

.select-style-box .btn-group {
  margin: 15px 0;
}

.select-style-box .btn {
  padding: 10px 10px 10px 35px;
  border-radius: 4px !important;
}

.select-style-box .btn:after {
  font-size: 16px;
  left: 10px;
  right: initial;
}

.select-style-box .btn+.btn {
  margin-top: 10px;
}

.notice-check01 {
  margin-bottom: 10px;
}

.notice-check01 a {
  display: block;
  padding: 12px 15px;
  border: 1px solid #f9adc8;
  border-radius: 2px;
  background: #FEEBF2;
  text-decoration: none;
  font-weight: bold;
  color: #cc0000;
}

.notice-check01 a:hover {
  background: #fbd4e2;
  text-decoration: none;
}

.notice-check01 a dl {
  display: flex;
  gap: 15px;
  text-align: left;
  font-size: 13px;
}

.notice-check01 dl dt {
  width: 60px;
}

.notice-check01 dl dd {
  font-size: 16px;
  width: calc(100% - 70px);
  padding-top: 2px;
}

.notice-check01 dl dt .label01 {
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  padding: 3px 7px 1px 7px;
  margin: 0;
  background: #cc0000;
  border-radius: 2px;
  display: block;
  text-align: center;
  line-height: 1.5;
}

.notice-check01 dl dt .label02 {
  font-size: 14px;
  font-weight: bold;
  color: #cc0000;
  padding: 3px 7px 1px 7px;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #cc0000;
  display: block;
  text-align: center;
  line-height: 1.5;
}


.notice-check02 {
  margin-bottom: 10px;
}

.notice-check02 a {
  display: block;
  padding: 10px;
  border: 1px solid #f9adc8;
  border-radius: 2px;
  background: #FEEBF2;
  text-decoration: none;
  font-weight: bold;
  color: #cc0000;
}

.notice-check02 a:hover {
  background: #fbd4e2;
  text-decoration: none;
}

.notice-check02 a dl {
  display: flex;
  gap: 10px;
  text-align: left;
  font-size: 13px;
}

.notice-check02 dl dt {
  width: 40px;
}

.notice-check02 dl dd {
  width: calc(100% - 50px);
}

.notice-check02 dl dt .label01 {
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  padding: 2px 7px;
  background: #cc0000;
  border-radius: 2px;
}

.notice-check02 dl dt .label02 {
  font-size: 12px;
  font-weight: bold;
  color: #cc0000;
  padding: 2px 7px;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #cc0000;
}







.notice-check03 {
  background: #FEEBF2;
  border-radius: 2px;
}

.notice-check03 dl {
  display: flex;
  padding: 10px;
  gap: 15px;
  border: 1px solid #f9adc8;
  border-radius: 2px;
  background: #FEEBF2;
  text-decoration: none;
  color: #cc0000;
}

.notice-check03 dl dt {
  width: 70px;
}

.notice-check03 dl dd {
  padding: 5px 0 0 0;
  font-size: 13px;
}

.notice-check03 dl dt .label02 {
  font-size: 12px;
  font-weight: bold;
  color: #cc0000;
  padding: 5px 7px 4px 7px;
  background: #fff;
  border-radius: 2px;
  border: 1px solid #cc0000;
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  height: 25px;
}

.card-body ul.discount-list li {
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-top: 10px;
}

.modal-body img,
.card-body img {
  width: 100%;
  height: auto;
}

.about-child img,
.modal-body .about-child img,
.card-body .about-child img,
.select-payment-box img {
  width: auto;
}

.card-body .wcolle-seat-ex img {
  width: 80px;
}

.card-body ul.discount-list li h3 {
  font-size: 14px;
  margin-bottom: 7px;
}

.card-body ul.discount-list li p {
  font-size: 12px;
  color: #444;
}

.label-return {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  margin-right: 10px;
  padding: 2px 10px 1px 10px;
  background: #3bafda;
  vertical-align: 3px;
  border-radius: 2px;
}

.label-return span {
  display: inline-block;
  margin: 0 -10px 0 -7px;
}

#main .card-body .people-selection dl {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

#main .card-body .people-selection dl dt {
  font-size: 14px;
  width: calc(100% - 200px);
}

#main .card-body .people-selection dl dd {
  width: 200px;
}

#main .card-body .people-selection dl dd .input-group {
  margin-bottom: 3px;
}

#main .card-body .people-selection input {
  text-align: center;
}

.add-price {
  font-size: 12px;
  text-align: right;
  padding-right: 10px;
  margin-bottom: 7px;
}

.add-price-num {
  font-size: 14px;
  font-weight: bold;
  color: #f53d7e;
  margin-left: 7px;
}

.btn-confirm {
  display: block;
  background: #FEEBF2;
  padding: 10px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  border: 1px solid #f9adc8;
  border-radius: 2px;
  text-decoration: none;
}

.btn-confirm:hover {
  background: #fbd4e2;
  text-decoration: none;
}

.btn-confirm:before {
  display: inline-block;
  margin-right: 10px;
  content: "";
  width: 15px;
  height: 15px;
  background: url(/static/3/img/ferry/i-win02.svg) no-repeat center center;
  background-size: cover;
}

.mt-5 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-3 {
  margin-bottom: 3px !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.ferry-select-room .card-header {
  position: relative;
  background: none;
}

.ferry-select-room .card-header h3 {
  font-size: 14px;
  padding: 0 15px 4px 20px;
  margin: 0;
}

.ferry-select-room .card-header h3:after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 15px;
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 18px;
  color: #E7E7E7;
}

.ferry-select-room .card-header h3:hover {
  cursor: pointer;
}

.ferry-select-room .card-header h3.active:after,
.ferry-select-room .card-header h3:hover:after {
  color: #f53d7e;
}

.ferry-select-room .card-body {
  padding: 15px;
}

.ferry-select-room .price-line {
  text-align: right;
}

.ferry-select-room .price-line .price-txt {
  color: #333;
}

.ferry-select-room .price-line .price-num {
  min-width: 70px;
  display: inline-block;
}

.room-type {
  font-size: 11px;
  font-weight: normal;
  color: #fff;
  padding: 3px 7px 2px 7px;
  background: #3bafda;
  vertical-align: 3px;
  display: inline-block;
  vertical-align: 2px;
  border-radius: 2px;
}

h3 .room-type {
  margin-left: 10px;
}

.ferry-select-room .room-type {
  margin-bottom: 7px;
}

.ferry-select-room {
  margin: 15px 0;
}

.ferry-select-room .card {
  box-shadow: 0px 0px 4px #ccc;
  margin-bottom: 15px !important;
}

.ferry-select-room .row {
  margin-bottom: 10px;
}

.modal .totalprice {
  border-bottom: 1px solid #ddd;
  margin-bottom: 20px;
}

.modal .totalprice:last-child {
  margin-bottom: 0px;
}

table.tbl-price {
  border-collapse: seprate;
  border-spacing: 0px;
  width: 100%;
  margin: 7px 0 15px 0;
}

table.tbl-price th,
table.tbl-price td {
  font-size: 12px;
  padding: 6px 10px 5px 10px;
  border: 1px solid #ddd;
}

table.tbl-price th {
  font-weight: normal;
  width: 70%;
  background: #fafafa;
}

.subtotal {
  border-top: 3px double #ddd !important;
}


table.tbl-price th[colspan="2"] {
  font-weight: bold;
  background: #f4f4f4;
}

table.tbl-price td {
  width: 30%;
  text-align: right;
}

#acc-child {
  margin: 15px 0;
  padding: 20px;
  border: 1px solid #ddd;
}

#acc-child h2 {
  margin-bottom: 15px;
}

.searchbox01 dl.about-child dt {
  float: none;
  width: 35px;
  line-height: 1;
}

.searchbox01 dl.about-child dd {
  margin-left: 0;
}

.btn-next-return {
  position: relative;
  font-size: 14px;
  font-weight: bold;
  color: #F53D7E;
  background: #fff;
  padding: 12px 10px;
  margin: 15px auto;
  border: 2px solid #F53D7E;
  display: inline-block;
  letter-spacing: 6px;
  text-align: center;
  border-radius: 2px;
  max-width: 400px;
  text-decoration: none;
}

.btn-next-return:hover {
  color: #F53D7E;
  background: #fff0f5;
}

.btn-next-return:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 10px;
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

ul.page-link-group {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  max-width: 500px;
  margin: 20px auto 30px auto;
}

ul.page-link-group li a.page-link {
  text-align: center;
  border-radius: 4px;
  color: #F53D7E;
  box-shadow: none;
}

ul.page-link-group li a.page-link:hover {
  color: #fff;
  background: #F53D7E;
}

ul.page-link-group li a.page-link:after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 12px;
  content: "\f063";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

ul.txt-link li p {
  font-weight: bold;
  padding: 20px 0;
}

.card-comfirm table.tbl-ship-info-border {
  margin: 0;
}

.card-comfirm table.tbl-ship-info-border th,
.card-comfirm table.tbl-ship-info-border td {
  font-size: 13px;
  color: #333;
}

.card-comfirm table.tbl-ship-info-border th {
  width: 120px;
  padding: 5px 0;
}

.card-comfirm table.tbl-ship-info-border td {
  padding: 10px;
}

.card-comfirm table.tbl-ship-info-border th .bg {
  padding: 5px 10px;
  background: #F2F2F2;
  text-align: center;
}

.card-comfirm a,
.card-comfirm table.tbl-ship-info-border td a {
  font-size: 13px;
  color: #F53D7E;
  text-decoration: underline;
}

.card-comfirm .totalprice a {
  font-size: 16px;
  color: #333;
  text-decoration: none;
  position: relative;
  padding-right: 20px;
}

.card-comfirm .totalprice a:after {
  font-size: 16px;
  content: "\f077";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  right: 0px;
  color: #F53D7E;
}

.card-comfirm .totalprice a.collapsed:after {
  content: "\f078";
}

.card-comfirm h3 {
  font-size: 14px;
  margin: 15px 0 5px 0;
}

.card-notice h3 {
  font-size: 14px;
  margin: 0px 0 5px 0;
}

.card-notice p {
  font-size: 12px;
}

.card-notice p+p {
  margin-top: 10px;
}

table.passengers-list th {
  width: 80px;
}

table.passengers-list td:last-child {
  width: auto;
  text-align: left;
}

table.passengers-list td p {
  font-size: 13px;
}

.agree-box {
  width: 100%;
}

ul.link-list {
  font-size: 0;
}

ul.link-list:after {
  content: "";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}

ul.link-list li {
  float: left;
  margin-right: 15px;
}

ul.link-list li a {
  font-size: 14px;
  text-decoration: underline;
}

ul.link-list li a:hover {
  text-decoration: none;
}

/* popupアイコン */
.i-popup {
  position: relative;
}

.i-popup:hover {
  color: #F53D7E;
  text-decoration: none;
}

.i-popup:after {
  display: inline-block;
  margin-left: 10px;
  content: "";
  width: 15px;
  height: 15px;
  background: url(/fstc/3/image/common/icon/i-win01.svg) no-repeat center center;
  background-size: cover;
  position: absolute;
  top: 1px;
}




@media(min-width:992px) {
  .menu-fixed {
    display: none;
  }

  .select-payment-box .btn:after {
    top: 10px;
  }
}

@media(max-width:575px) {
  header:has(#obi-10man)+article {
    margin-top: 100px;
  }
}

@media(max-width:767px) {
  .binlist-calendar {
    padding-bottom: 0;
  }

  .modal .searchbox01,
  .searchbox01 .btn-group {
    margin-bottom: 0;
  }

  #mb-searchbox .modal-body {
    padding-bottom: 0;
  }

  #mb-searchbox .modal-footer button.btn-search {
    margin: 0 auto;
  }

  #mb-searchbox .modal-footer {
    padding: 20px 0;
  }

  .sort-box {
    margin-top: 15px;
  }

  .dep-arr-box {
  margin-bottom: 0;
  margin-top: 10px;
  }

  .bin-box .card-header {
    padding: 10px 15px 10px 15px;
  }

  .dep-arr-day-txt {
    font-size: 12px;
  }

  .dep-arr-time-txt {
    font-size: 17px;
    margin: 0 4px;
  }

/*  .dep-arr-box {
    gap: 10px;
  }

  .dep-arr-box .item a:before {
    right: 5px;
  }*/

  .dep-arr-port {
    font-size: 13px;
  }
  .dep-arr-port,
  .card h3.dep-arr-port{
  font-size: 12px;
  letter-spacing: -0.5px;
  padding: 0 5px;
  }
  .dep-arr-box .item a {
  padding: 10px 3px;
  }

  .ferry-thumb-box-header {
    padding: 10px 10px 0px 0;
  }

  .ferry-thumb-box-body {
    gap: 10px;
  }

  .ferry-thumb-box-body img {
    width: 31%;
    height: 65px;
  }

  .card .ferry-thumb-box h3 {
    padding-right: 5px;
  }

  .card .ferry-thumb-box .ellipsis {
    right: 0px;
  }

  .ferry-bin-list-price-left {
    width: calc(100% - 115px);
  }

  .ferry-bin-list-price-right {
    width: 115px;
  }

  .ferry-bin-list .card-body .multiple-block {
    width: 100%;
  }

  .notice-check a {
    font-size: 14px;
    padding: 10px;
  }

  .ferry-bin-list .card-body {
    display: flex;
    flex-flow: column;
    gap: 7px;
  }

  .ferry-bin-list .card-body .ferry-bin-list-price {
    width: 100%;
  }

  .bin-search-result-text-notfound p {
    font-size: 14px;
  }

  table.cancel-txt {
    margin-bottom: 15px;
  }

  table.cancel-txt th {
    width: 75%;
  }

  table.cancel-txt td {
    width: 25%;
  }

  .label-return {
    font-size: 14px;
    margin-bottom: 5px;
  }

  .ferry-thumb-box {
    padding: 15px 0px 15px 0px;
  }

  dl.ferry-company {
    width: 100%;
  }

  dl.ferry-company dt {
    width: 53px;
  }

  dl.ferry-company dd {
    width: calc(100% - 73px);
  }

  .ferry-bin-list h3 .ellipsis {
    top: 16px;
    right: -8px;
  }

  .ferry-bin-list .card-header {
    padding-top: 20px;
  }

  .ferry-bin-list .bin-box-ferry-in h3 {
    line-height: 1.6;
    padding-top: 3px;
    padding-right: 15px;
  }

  .modal a.child-link.collapsed:after,
  .modal a.child-link:after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    right: 10px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  }

  .modal a.child-link.collapsed:after {
    content: "\f078";
  }

  .modal a.child-link:after {
    content: "\f077";
  }
}

@media(max-width:991px) {
  .menu-fixed .btn-search {
    max-width: 80%;
  }
}

@media(min-width:450px) and (max-width:767px) {
  .ferry-thumb-box-body img {
    width: 120px;
    height: 80px;
  }
}

@media(max-width:376px) {

  .dep-arr-time-txt {
    font-size: 16px;
  }

  .dep-arr-txt {
    font-size: 13px;
  }

  .info-box {
    padding: 10px;
  }

  .info-box a.collapsed:after,
  .info-box a:after {
    right: 0px;
  }

}


/*上書きのスタイルCSS--------------------------------- */

.txt-13{
  font-size: 13px !important;
}
.ellipsis a{
  color: #080808;
}
.card-body p font{
  color: #f95151 !important;
}
h2.title-seo-relation{
  text-align: center;
  padding: 20px 0;
  margin-bottom: 15px;
  font-weight: bold;
  border-bottom: 1px solid #eee;
}
h2.title-seo-relation span{
  font-size: 22px;
  padding: 0 5px;
}
#bus_terminal-link table{
  margin-top: 0;
}
@media (max-width: 767px) {
h2.title-seo-relation{
  padding: 5px 0 10px 0;
}
h2.title-seo-relation span{
  font-size: 18px;
}
}


.btn-group .btn{
  overflow-wrap: break-word;
  word-break: auto-phrase;
  white-space:initial;
  display: flex !important;
  align-items: center;
  min-height: 44px;
  justify-content: space-between;
}
.select-style-box .btn-group{
  margin: 0;
}
.select-style-box .btn{
  padding: 10px 10px 10px 40px;
  font-weight: normal;
}
.binlist-calendar .btn-group .btn{
  justify-content: center;
}
.ellipsis{
  font-size: 14px !important;
}
.btn-next:after{
  display: none;
}
.room-type-label{
  padding: 5px 5px 3px;
  background: #516ece;
  border-radius: 4px;
}
table.tbl-price{
  margin-top: 0;
}
.text-color-pink{
  color: #f53d7e;
}
.mb-20{
  margin-bottom: 20px !important;
}
.card-body .btn-change{
  margin-top: 20px;
}
.btn-search .result-all-num{
  color: #fff;
  line-height: 0.5;
  font-size: 20px;
}
.searchbox01.card-topsearch{
  background: none;
  box-shadow: none;
  padding: 0;
}
.searchbox01.card-topsearch .card-body{
  padding: 0;
}
.searchbox01.card-topsearch .btn-search{
  display: none !important;
}
@media (max-width: 991px) {
.searchbox01.card-topsearch .btn-search{
  display: block !important;
}
}


/*検索結果*/
/*.bin-time-box{
  background: #f7f7f7;
  padding: 10px 10px;
  border-radius: 10px;
}*/
/*.ttl-box{
  margin-bottom: 15px;
}*/
.bin-box .card-header{
  padding: 10px 10px 0;
  border-bottom: none;
}
.bin-box .card .card-header{
  padding: 15px 15px 0 15px;
}
.card-header .bin-ttl-box h2{
  font-size: 16px;
  margin-top: 0;
  padding: 5px 5px 0 5px;
}
.dep-arr-line{
  margin-bottom: 5px;
}
/*.dep-arr-box{
  gap:0;
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}*/
/*.dep-arr-box .item{
  width: 49.5%;
  order: 1;
}*/
/*.dep-arr-box .item a{
  border-radius: 10px;
  border:none;
  padding: 15px 3px;
}*/
.notice-check{
  width: 100%;
  order: 3;
}

/*.dep-arr-box .item a:before{
  display: none;
}*/

/*.dep-arr-port,
.card h3.dep-arr-port{
  font-size: 14px;
  padding: 0;
  margin: 0;
  font-weight: normal;
}
.dep-arr-port:before,
.card h3.dep-arr-port:before{
  color: #000;
  font-size: 10px;
}
.dep-arr-port b,
.card h3.dep-arr-port b{
  display: block;
  font-weight: normal;
}*/
.dep-arr-time-txt{
  font-size: 24px;
  color: #000;
  margin:0;
}
.dep-arr-txt{
  font-size: 11px;
}
.dep-arr-txt{
  display: inline-flex;
  width: 28px;
  height: 28px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  background: #6f6f6f;
  font-size: 14px;
  color: #fff;
  position: relative;
  top: -6px;
  border-radius: 4px;
}
.dep-arr-txt.label-arr{
  border: solid 1px #6f6f6f;
  background: #fff;
  color: #707070;
}
.notice-check a{
  background: #fff4f4;
  position: relative;
  margin-top: 10px;
  color: #ec7190;
  border-radius: 10px;
  border: 1px solid #ec7190;
  text-align: left;
  padding: 10px 15px 10px 35px;
  font-size: 13px;
}
.notice-check a:before{
  content: "\f071";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top:8px;
  left: 15px;
  font-size: 14px;
}
.card-body h4{
  font-size: 16px;
}
.ferry-bin-list .card-body{
  padding: 10px 15px 15px 15px;
}
.ferry-bin-plan-only-link{
  display: block;
  font-size: 13px;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 10px 10px 8px 10px;
  margin-bottom: 10px;
}
.ferry-bin-plan-only-link p{
  font-size: 13px;
}
a.ferry-bin-plan-link + a.ferry-bin-plan-link{
  margin-top: 10px;
}
.bin-box-ferry-in > .card{
  box-shadow: none;
}
.ferry-bin-list .bin-box-ferry-in h3{
  font-size: 14px;
  line-height: 1.4;
}
ul.room-info li{
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: #999;
}
.ferry-bin-list-price{
  align-items: flex-end;
}
a.ferry-bin-plan-link{
  position: relative;
  padding: 15px 45px 12px 15px;
  border-radius: 10px;
  box-shadow: 0px 0px 6px rgba(204, 204, 204, 0.5);
  border:1px solid #d9d9d9;
}
a.ferry-bin-plan-link:after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top:50%;
  right: 10px;
  color:#fff;
  transform: translate(0, -50%);
    font-size: 16px;
    background: #333;
    border-radius: 100px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 2px;
}
.ferry-bin-list-price-right .other-search-txt:after{
  display: none;
}
.ferry-bin-list-price-right{
  text-align: right;
}
.ferry-bin-list-price-right .other-search-txt{
  font-size: 14px;
  font-weight: normal;
}
.ferry-bin-list-price .price-line{
  font-size: 18px;
  color: #F53D7E;
}
.box-border .ferry-bin-list-price .price-line{
  font-size: 13px;
  color: #000;
}
.text-yen:before{
  content: "￥";
  font-size: 80%;
}
.text-yen:after{
  content: "～";
  font-size: 80%;
}
.text-yen.priceonly:after{
  display: none;
}
.ferry-bin-list-price-left p{
  font-size: 13px;
  color: #999;
}
.ferry-bin-list-price + .ferry-bin-list-price{
  border-top: 1px dotted #ccc;
  padding-top: 7px;
  position: relative;
}
/*.ferry-bin-plan-link .ferry-bin-list-price + .ferry-bin-list-price:before{
  content: "\f055";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: -8px;
  left: 0;
  color: red;
  font-size: 10px;
  color: #ccc;
  background: #fff;
  padding-right: 3px;
}*/
a.ferry-bin-plan-link:hover .ferry-bin-list-price:before{
  background: #FEEBF2;
}
.discount-label{
  font-size: 11px;
  font-weight: normal;
  border: solid 1px #F53D7E;
  background: #fff;
  color: #F53D7E;
}
.info-box-in{
  background: #fff;
  margin-top: 10px;
  padding: 5px 15px;
  border-radius: 10px;
}
.info-box-type01 .info-box-in{
  background: #fff;
  margin-top: 0;
  padding: 0;
}
.bin-box-ferry-in .info-box-group{
  padding: 0 20px;
}
.info-box-type01{
  background: none;
  border:1px solid #cdcdcd;
  padding: 15px 25px;
  border-radius: 10px;
}
.info-box-type01 .messege-ttl{
  color: #333;
}
.info-box.info-box-type01 i{
  color: #f95151;
  margin-right: 10px;
}
.info-box.info-box-type01 ul{
  padding-left: 30px;
}
.info-box.info-box-type01 ul li a{
  color: #333;
}
.info-box.info-box-type01 ul li{
  border-bottom: none;
  position: relative;
  padding-left: 15px;
  padding-bottom: 0;
}
.info-box.info-box-type01 ul li:before{
  content: "・";
  position: absolute;
  top: 8px;
  left: -3px;
  color: #212529;
}


.info-box-type02{
  border:none;
  background: #fff4f4;
  border-radius: 10px;
  border:solid 1px #ec7190;
  padding: 10px 10px;
}
.info-box.info-box-type03 a.messege-ttl-link{
  color: #cc7300;
}
.info-box.info-box-type02 a.messege-ttl-link{
  color: #ec7190;
}
.info-box-type02 .messege-ttl{
  color: #ec7190;
}
.info-box-type02 .info-label{
  color: #fff;
  background: #ec7190;
}
.info-box.info-box-type02 ul{
  padding: 0;
}
.info-box.info-box-type02 ul + ul{
  border-top: 1px solid #ec7190;
  margin-top: 10px;
}
.info-box.info-box-type02 ul li{
  margin-top: 0;
  padding: 10px 5px;
  border-bottom: none;
  color: #333;
  font-size: 12px;
}
.info-box.info-box-type02 ul li p{
  margin-top: 0;
  color: #333;
}
.info-box.info-box-type02 ul li + li{
  margin-top: 0;
  border-top: 1px dotted #ccc;
}
.info-box-type03{
  border:none;
  background: #f2f8fc;
  border-radius: 10px;
  border: 1px solid #516ece;
  padding: 10px 10px;
}
.info-box.info-box-type03 i{
  margin-right: 0;
}
.info-box.info-box-type03 a.messege-ttl-link{
  color: #516ece;
}
.info-box-type03 .messege-ttl{
  color: #516ece;
}
.info-box-type03 .info-label{
  color: #cc7300;
  background: #fff;
  border:1px solid #cc7300;
}
.info-box.info-box-type03 ul{
  padding: 0;
}
.info-box.info-box-type03 ul + ul{
  border-top: 1px solid #516ece;
  margin-top: 10px;
}
.info-box.info-box-type03 ul li{
  margin-top: 0;
  padding: 10px 5px;
  border-bottom: none;
  color: #333;
  font-size: 12px;
}
.info-box.info-box-type03 ul li p{
  margin-top: 0;
  color: #333;
}
.info-box.info-box-type03 ul li + li{
  margin-top: 0;
  border-top: 1px dotted #ccc;
}
ul.room-info li:not(:last-child):after{
  margin:0 2px;
}
.box-border .ferry-bin-list-price-left p{
  color: #666;
}
.box-search-result{
  background: #fff;
  padding: 20px 25px;
  border-radius: 4px;
  box-shadow: 0px 0px 6px #ccc;
}
.box-search-result + .box-search-result{
  margin-top: 10px;
}

/*復路人数変更不可の注意文*/
.box-search-result .attention-text{
  color: #F53D7E;
  margin-top: 10px;
  font-size: 14px;
}

#open-ouro{
  padding-top: 10px;
}
.search-result-text{
  display: flex;
  margin: 0;
  text-align: left;
  font-size: 11px;
}
.card-topsearch.searchbox01 dl.search-result-text dt{
  font-size: 14px;
  line-height: 1.4;
  width: 100px;
  font-weight: normal;
}
.card-topsearch.searchbox01 dl + dl{
  border-top: 1px dotted #ccc;
  padding-top: 10px;
  margin-top: 10px !important;
}
.card-topsearch.searchbox01 dl.search-result-text dd{
  line-height: 1.4;
  font-size: 14px;
  width: calc(100% - 100px);
}
.card-topsearch.searchbox01 dl.search-result-text dd b{
  font-weight: normal;
}
.list-result-people{
  display: flex;
  flex-wrap: wrap;
}
.list-result-people > li + li{
  margin-left: 10px;
}
.list-result-people > li b{
  font-weight: normal;
}
.searchbox01 .select-style-box .btn-group>.btn{
  height: 44px;
  display: flex !important;
  align-items: center;
}
@media (max-width: 767px) {
.bin-box .card-header{
  border-bottom: none;
}
.bin-box .card .card-header{
  padding: 10px 10px 0 10px;
}
.card-header .bin-ttl-box h2{
  font-size: 12px;
  margin-top: 0;
}
/*.dep-arr-box{
  gap:0;
  margin-bottom: 0;
  margin-top: 10px;
}*/
/*.dep-arr-box .item a{
  padding: 10px 3px;
}
.dep-arr-box .item a:before{
  display: none;
}*/
.ferry-bin-list .bin-box-ferry-in{
  position: relative;
  z-index: 1;
  padding: 10px;
}
.info-box.info-box-type01 ul{
  padding-left: 5px;
  margin-top: 5px;
}

/*.dep-arr-port,
.card h3.dep-arr-port{
  font-size: 12px;
  letter-spacing: -0.5px;
  padding: 0 5px;
}*/
.dep-arr-time-txt{
  font-size: 16px;
  letter-spacing: -0.8px;
}
.dep-arr-txt{
  display: inline-flex;
  width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  line-height: 1;
  background: #6f6f6f;
  font-size: 11px;
  color: #fff;
  position: relative;
  top: -3px;
  border-radius: 4px;
}
.dep-arr-txt.label-arr{
  border: solid 1px #6f6f6f;
  background: #fff;
  color: #707070;
}
.notice-check a{
  position: relative;
  margin-top: 10px;
}
.card-body h4{
  font-size: 13px;
}
.ferry-bin-list .card-body{
  padding: 10px 10px;
}
a.ferry-bin-plan-link + a.ferry-bin-plan-link{
  margin-top: 0;
}
.ferry-bin-list .bin-box-ferry-in h3{
  font-size: 14px;
  line-height: 1.4;
}
ul.room-info li{
  line-height: 1.2;
  letter-spacing: -0.5px;
}
.ferry-bin-list-price{
  align-items: flex-end;
}
.ferry-bin-list-price-left{
  width: calc(100% - 125px);
}
a.ferry-bin-plan-link{
  position: relative;
  padding: 10px 30px 8px 10px;
}
a.ferry-bin-plan-link:after {
  right: 8px;
  font-size: 14px;
  width: 18px;
  height: 18px;
  padding-left: 2px;
}
.ferry-bin-list-price-right .other-search-txt:after{
  display: none;
}
.ferry-bin-list-price-right{
  text-align: right;
}
.ferry-bin-list-price-right .other-search-txt{
  font-size: 12px;
  font-weight: normal;
}
.ferry-bin-list-price .price-line{
  font-size: 14px;
  color: #F53D7E;
}
.box-border .ferry-bin-list-price .price-line{
  font-size: 11px;
}
.ferry-bin-list-price-left p{
  font-size: 11px;
}
.bin-box-ferry-in .info-box-group{
  padding: 0;
}
.info-box-type01{
  padding: 10px 15px;
}
.info-box i{
  font-size: 14px;
}
.info-box-type02,
.info-box-type03{
  padding: 10px 10px;
}
.card-topsearch.searchbox01 dl.search-result-text dt{
  font-size: 12px;
}
.card-topsearch.searchbox01 dl + dl{
  padding-top: 5px;
  margin-top: 5px !important;
}
.card-topsearch.searchbox01 dl.search-result-text dd{
  font-size: 13px;
}
.box-search-result{
  background: #fff;
  padding: 10px 15px;
  border-radius: 4px;
  box-shadow: 0px 0px 6px #ccc;
}
/*復路人数変更不可の注意文*/
.box-search-result .attention-text{
  font-size: 12px;
}
}


/*選択確認*/
.btn-confirm{
  font-size: 14px;
  font-weight: bold;
  color: #333;
  padding: 10px 20px;
  margin:20px auto 0;
  border: 2px solid #333;
  display:block;
  text-align: center;
  border-radius: 2px;
  text-decoration: none;
  background: none;
  width: 100%;
  max-width: 300px;
}
.btn-confirm:before{
  display: none;
}
.btn-confirm:hover {
    color: #fff;
    text-decoration: none;
    background: #333;
}
.add-price{
  margin-bottom: 0;
  margin-top: 5px;
}
.add-price + dl.clearfix{
  margin-top: 10px;
}
.notice-check02{
  margin-bottom: 15px;
}
.notice-check02 a{
  border:none;
  font-weight: normal;
}
#main .card-body .people-selection dl dt{
  font-size: 13px;
  width: 70%;
  padding-right: 10px;
  font-weight: normal;
}
#main .card-body .people-selection dl dd{
  width: 30%;
}
.people-selection .input-group-btn .btn-right,
.people-selection .input-group-btn .btn-left,
.people-selection input{
  border-color: #DBDBDB;
}

.box-border{
  padding: 10px 15ox;
  background: #fafafa;
  border:none;
}
.box-border > p{
  font-size: 13px;
  font-weight: bold;
}
dl.totalprice dd{
  font-size: 20px;
}
.add-price-num{
  font-size: 14px;
}
.notice-check03 dl dt .label02{
    font-size: 12px;
    font-weight: bold;
    color: #fff;
    padding: 2px 7px;
    background: #b8993e;
    border-radius: 2px;
    display: inline-block;
    height: auto;
    line-height: inherit;
    border:none;
}
.notice-check03 dl dt{
  width: 40px;
}
.notice-check03 dl{
    display: flex;
    gap: 10px;
    text-align: left;
    border: none;
  background: #fdf8e5;
}
.notice-check03 dl dd{
  padding: 0;
  color: #816506;
  width: calc(100% - 50px);
}
.notice-check01{
  border: none;
  background: #f3f8ff;
  border: 1px solid #256ec8;
  margin-bottom: 30px;
}
.notice-check01 dl dt{
  width: auto;
}
.notice-check01 dl dd{
  font-size: 14px;
  width: calc(100% - 75px);
  color: #256ec8;
}
.notice-check01 dl:after{
  color: #256ec8;
}
.notice-acc-contents{
  border-top: none;
  padding: 0;
}
.notice-check01 .notice-acc-contents p{
  color: #333;
}
.notice-check01 dl dt .label01{
  color: #256ec8;
  background: #fff;
  border: 1px solid #256ec8;
  font-size: 12px;
}
.i-label{
  background: #333;
  border-radius: 0 100px 100px 0;
}
.btn-next-return{
  letter-spacing: 1px;
  max-width: 200px;
}
.card-cancel-body p{
  font-size: 13px;
}
.modal-discount{
  display: block;
}
.modal-discount:hover{
  text-decoration: none;
}
.text-discount-more{
  margin-top: 10px;
}
.notice-important{
  border: solid 1px #f95757;
  padding: 15px;
  border-radius: 10px;
  background: #fff2f2;
}
.notice-important p,
.notice-usually p{
  font-size: 13px;
}
.notice-important + .notice-usually{
  margin-top: 15px;
}
.wrap-modalcontents .notice-important,
.wrap-modalcontents .notice-usually{
  font-size:14px;
}
.card-notice p{
  font-size: 13px;
}
@media (max-width: 767px) {
  .ferry-bin-list-price-right{
    width: 100px;
  }
  .ferry-bin-list-price-left{
    width: calc(100% - 110px);
  }
  .notice-check01 dl dt .label01{
    font-size: 12px;
  }
.totalprice-fixed-mb0{
  margin-bottom: 0px;
}
.totalprice-fixed{
  margin-bottom: 15px;
}
#main .card-body .people-selection dl dt{
  width: 50%;
}
#main .card-body .people-selection dl dd{
  width: 50%;
}
.card-body .notice-important p,
.card-body .notice-usually p{
  font-size: 13px;
}
.wrap-modalcontents .notice-important,
.wrap-modalcontents .notice-usually{
  font-size:13px;
}
}



/*確認画面*/
ul.page-link-group li a.page-link{
  font-size: 14px;
}
ul.page-link-group li a.page-link:after{
  font-size: 10px;
}
@media (max-width: 767px) {
ul.page-link-group li a.page-link{
  text-align: left;
}
}





/*バス検索ボックスの設定*/
.child-link{
  display: inline-block;
  padding: 0;
  margin: 0!important;
  background: none;
  margin-left: 10px !important;
  position: relative;
  top: -2px;
}
.room-type{
  margin-left: 15px;
}
#sidebar .select-wrap,
#sidebar .calendar-wrap,
#sidebar .wrap-search-detail dl{
  display: flex;
}
#sidebar .searchbox01 .wrap-search-detail dl dt{
  width: 105px;
}
#sidebar .searchbox01 .wrap-search-detail dl dd{
  width: calc(100% - 105px);
  margin-left: 0;
}
#sidebar .wrap-search-detail dl + dl{
  margin-top: 5px;
}
.ttl-box{
  padding-top: 15px;
}

.searchbox01 .day-selection input{
  margin-bottom: 0;
  height: 44px;
  border: 1px solid #DBDBDB;
  padding: 5px 5px 5px 20px;
}
.searchbox01 .card-body select{
  margin-bottom: 0;
  height: 44px;
  border: 1px solid #DBDBDB;
  padding: 5px 5px 5px 10px;
  position: relative;
}

.form-control:focus{
  box-shadow: none;
}
.searchbox01 .btn-search{
  margin: 15px auto 0;
  width: 100%;
  max-width: 100%;
  display: block;
  padding: 14px 5px;
}
.optionopen-selection{
  font-size: 14px;
  margin-top: 15px !important;
}
/*.searchbox01 .btn-reverse01{
  background: none;
  width: 100%;
  max-width: 34px;
  padding: 0;
  margin:0 auto;
}
.searchbox01 .btn-reverse01:hover{
  background: none;
}
.searchbox01 .btn-reverse01 img{
  margin:0 auto;
}
#sidebar .searchbox01 .btn-reverse01 img{
  transform: rotate(90deg);
}*/
.area-selection{
  align-items: center;
}
.searchbox01 dl + dl{
  margin-top: 0px;
}
.link-open-option{
  position: relative;
  padding-left: 25px;
  font-size: 14px;
  display: block;
}
.link-open-option:hover{
  text-decoration: none;
}
.link-open-option.collapsed:before{
    content: "\f0fe";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  position: absolute;
  top: 50%;
  left:0px;
  transform: translate(0, -50%);
}
.link-open-option:before{
    content: "\f0fe";
    font-family: "Font Awesome 5 Free";
    font-weight: normal;
  position: absolute;
  top: 50%;
  left:0px;
  transform: translate(0, -50%);
}
.option-selection .col-12 + .col-12{
  margin-top: 10px;
}
.select-peaple-wrap{
  display: flex;
  align-items: center;
}
.select-peaple-wrap dt{
  width: 50% !important;
  float: none !important;
  line-height: 1;
}
.select-peaple-wrap dd{
  width: 50%;
}
.select-peaple-wrap dd .input-group{
  margin: 0;
}
.select-peaple-wrap dd .input-group .form-control,
.select-peaple-wrap dd .input-group .btn-left,
.select-peaple-wrap dd .input-group .btn-right{
  height: 44px;
  text-align: center;
}
.searchbox01 .btn-group.select-carbike .btn{
  height: 44px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  font-size: 14px !important;
}
.searchbox01 .btn-group.select-carbike{
  overflow: hidden;
  border: 1px solid #DBDBDB;
}
.searchbox01 .btn-group.select-carbike .btn + .btn{
  border-left: 1px solid #ccc;
}
.select-peaple-wrap .input-group .fa-plus,
.select-peaple-wrap .input-group .fa-minus{
  color: #666;
}
.select-peaple-wrap .input-group-btn .btn{
  border-color: #707070;
}
.select-peaple-wrap .form-control{
  border-color: #707070;
}
.bin-search-result-text-notfound{
  padding: 20px 25px;
  border-radius: 10px;
}
.bin-search-result-text-notfound p{
  font-size: 14px;
  text-align: left;
}
/*.bin-search-result-text-notfound p b{
  color: #d44a4a;
}*/
#sidebar .searchbox01 .people-selection{
  margin-bottom: 0;
}
#sidebar .searchbox01 .people-selection .input-group:first-child{
  margin-bottom: 0;
}
.wrap-search-detail + .wrap-search-detail{
  margin-top: 15px;
}
@media (max-width: 767px) {
.ttl-box{
  padding-top: 15px;
}
.search-detail > .row + .row{
  margin-top: 10px;
}
.searchbox01.card{
  margin-bottom: 15px !important;
  background: none;
  box-shadow: none;
}
.searchbox01 .card-body{
  padding: 0px;
}
.searchbox01 dl dd{
  margin-left: 0;
}
/*.searchbox01 .day-selection input{
  margin-bottom: 0;
  height: 44px;
  border: 1px solid #707070;
  padding: 5px 5px 5px 20px;
}*/
.searchbox01 .card-body select{
  margin-bottom: 0;
  height: 44px;
  border: 1px solid #707070;
  padding: 5px 5px 5px 20px;
}
.form-control:focus{
  box-shadow: none;
}
.searchbox01 .btn-search{
  margin: 10px auto 0;
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 14px 5px;
}
.optionopen-selection{
  font-size: 14px;
  margin-top: 15px !important;
}
/*.searchbox01 .btn-reverse01{
  max-width: 54px;
  padding: 0 5px;
}
.searchbox01 .btn-reverse01 img{
  margin:0 auto;
}*/
.area-selection{
  align-items: center;
}
.searchbox01 dl + dl{
  margin-top: 5px;
}
.link-open-option{
  position: relative;
  padding-left: 20px;
  font-size: 13px;
}
.link-open-option:hover{
  text-decoration: none;
}
.link-open-option.collapsed:before{
    content: "\f0fe";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  position: absolute;
  top: 50%;
  left:0;
  transform: translate(0, -50%);
}
.link-open-option:before{
    content: "\f0fe";
    font-family: "Font Awesome 5 Free";
    font-weight: normal;
  position: absolute;
  top: 50%;
  left:0px;
  transform: translate(0, -50%);
}
.option-selection .col-12 + .col-12{
  margin-top: 10px;
}
.select-peaple-wrap{
  display: flex;
  align-items: center;
}
.select-peaple-wrap dt{
  width: 50% !important;
  float: none !important;
  line-height: 1;
}
.select-peaple-wrap dd{
  width: 50%;
}
.select-peaple-wrap dd .input-group{
  margin: 0;
}
.select-peaple-wrap dd .input-group .form-control,
.select-peaple-wrap dd .input-group .btn-left,
.select-peaple-wrap dd .input-group .btn-right{
  height: 44px;
  text-align: center;
}
.searchbox01 .btn-group.select-carbike .btn{
  height: 44px;
  display: flex !important;
  justify-content: center;
  align-items: center;
}
.searchbox01 .btn-group.select-carbike{
  border-radius: 100px;
  overflow: hidden;
  border: 1px solid #707070;
}
.searchbox01 .btn-group.select-carbike .btn + .btn{
  border-left: 1px solid #ccc;
}
.select-peaple-wrap .input-group .fa-plus,
.select-peaple-wrap .input-group .fa-minus{
  color: #666;
}
.select-peaple-wrap .input-group-btn .btn{
  border-color: #707070;
}
.select-peaple-wrap .form-control{
  border-color: #707070;
}
.bin-search-result-text-notfound{
  padding: 10px 15px;
}
.bin-search-result-text-notfound p{
  font-size: 13px;
  text-align: left;
}
}



.wrap-select-list{
  margin-top: 15px;
}
.wrap-cancel + .wrap-cancel{
  margin-top: 30px;
}
.notice-message{
  margin-bottom: 15px;
}
.notice-message > a{
  display: block;
    padding: 10px;
    text-decoration: none;
    border-radius: 2px;
}
.notice-message dl{
  display: flex;
}
.notice-message dl dt{
  width: 40px;
}
.notice-message dl dd{
  width: calc(100% - 40px);
  padding-left: 10px;
  padding-top: 2px;
  font-size: 14px;
}
.notice-message dl dt span{
  font-size: 12px;
  font-weight: bold;
  color: #666;
  padding: 2px 7px;
  background: #ccc;
  border-radius: 4px;
}
.notice-message.messagever-equired dl dt span{
  color: #fff;
  background: #f95151;
}
.notice-message.messagever-equired > a{
    background: #fff4f4;
    color: #f95151;
    padding: 10px;
    border: 1px solid #f95151;
    border-radius: 10px;
}
.notice-message.messagever-important dl dt span{
  color: #fff;
  background: #516ece;
}
.notice-message.messagever-important dl{
    background: #f2f8fc;
    color: #516ece;
    padding: 10px;
    border: 1px solid #516ece;
    border-radius: 10px;
}
.notice-message.messagever-important dl dd{
  color: #516ece;
}
.wrap-subtotal{
  padding: 10px 10px;
  background: #f7f7f7;
}
.wrap-select-list + .wrap-subtotal{
  margin-top: 15px;
}
.wrap-subtotal a:hover{
  text-decoration: none;
}
.wrap-subtotal dl{
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}
.wrap-subtotal dl.discount-after{
  font-size: 120%;
  margin-bottom: 10px;
}
.wrap-subtotal dl dt{
  font-size: 12px;
  position: relative;
}
.wrap-subtotal dl.discount-before dt{
  font-weight: normal;
}
.wrap-subtotal a dl dt:after{
    display: inline-block;
    margin-left: 5px;
    content: "";
    width: 11px;
    height: 11px;
    background: url(/static/3/img/ferry/i-win01.svg) no-repeat center center;
    background-size: cover;
    position: relative;
    top: 1px;
}
.wrap-subtotal dl dd{
  text-align: right;
  margin-left: 7px;
  color: #f53d7e;
  font-weight: bold;
}
.wrap-subtotal dl dd .price-line{
  font-size: 16px;
}
dl.discount-before .text-yen{
  color: #666;
}
.add-price{
  font-size: 12px;
}
.add-price-num{
  font-size: 12px;
}
.box-border{
  margin-top: 10px;
}
.detail-title{
  padding-bottom: 0;
}





/*SEO用関連コンテンツ*/
@media (max-width: 767px) {
#area-link h2 span{
  font-size: 16px;
}
#blog-entry-box h3{
  font-size: 16px;
}
}



.select-1 .btn-group .btn{
  font-weight: normal;
}
.select-2 .btn-group .btn{
  font-weight: normal;
  justify-content: center;
  margin-bottom: 0;
}
.select-2 .btn-group{
  margin-bottom: 0;
}
.passenger-detail label.txt-afterinput,
.passenger-detail label.txt-required{
  margin-bottom: 10px;
}
.txt-alert{
  margin-top: 5px;
  margin-bottom: 5px;
}
.ellipsis-out + .txt-alert,
label + .txt-alert{
  margin-top: 5px;
}
.passenger-detail p{
  margin-bottom: 0;
}
.passenger-box .passenger-input + .passenger-input{
  margin-top: 15px;
}
.form-card .passenger-input + .passenger-input{
  margin-top: 15px;
}
.passenger-box .form-control{
  margin-bottom: 0px;
  min-height: 44px;
}
.card-footer a.question-link{
  margin: 0;
  padding: 0;
}
/*.text-question{
  margin: 10px 0 20px;
}*/
.btn-add-search{
  display: inline-flex;
  height: 44px;
  justify-content: center;
  align-items: center;
  margin:0;
  padding: 0px 15px;
  width: auto;
}
.btn-center01 .btn-back{
  width: 100%;
  max-width: 120px;
  font-size: 14px;
  font-weight: normal;
  padding: 10px 10px;
}
.btn-back:after{
  display: none;
}
.title-add-wrap{
  display: flex;
  margin: 17px 0;
  align-items: center;
}
.title-add-wrap .subtitle{
  margin: 0;
}
.text-question{
  margin-top: 15px;
}
.bin-box-ferry-in .text-question{
  margin-top: 0;
  margin-bottom: 15px;
}
.title-add-wrap .text-question{
  margin:0;
  margin-left: 15px;
}
.card-pet .text-question{
  margin-top: 0px;
}
.card.discount-card .card-footer{
  padding: 15px;
}
.discount-price{
  font-weight: bold;
  font-size: 12px;
  margin-top: 5px;
}
.discount-txt{
  font-size: 12px;
}
.select-style-box.discount-select .btn .price-num{
  font-weight: bold;
  font-size: 14px;
}
.card.car-input-card .card-body img{
  width: auto;
}
.pregnant-box{
  margin-top: 20px;
  background: #fff4f4;
  border-radius: 10px;
    border: 1px solid #ec7190;
}
.row-pregnant{
  margin-bottom: 20px;
}
.list-pregnant-info{
  margin: 10px 0 0;
}
.list-pregnant-info > li{
  font-size: 14px;
  padding-left: 20px;
  position: relative;
}
.list-pregnant-info > li:before{
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
.list-pregnant-info > li .expl_caution{
  color: #f95151;
}
@media (max-width: 767px) {
.passenger-box .div + .div{
  margin-top: 15px;
}
a.question-link{
  font-size: 13px;
}
.bin-box-ferry-in .text-question{
  margin-top: 0;
  margin-bottom: 5px;
}
.discount-select .btn-group .btn{
  display: block !important;
}
.title-add-wrap.baggage-ver{
  flex-wrap: wrap;
}
.title-add-wrap.baggage-ver .subtitle{
  margin-bottom: 5px;
}
.title-add-wrap.baggage-ver .subtitle,
.title-add-wrap.baggage-ver .text-question{
  width: 100%;
}
}


.card-comfirm h3{
  margin-top: 0;
}
.card-comfirm table.tbl-ship-info-border th{
  font-size: 11px;
  width: 100px;
}
table.tbl-ship-info-border td{
  width: calc(100% - 100px);
}
.card-comfirm table.tbl-ship-info-border td{
  position: relative;
  padding-right: 20px;
}
.card-comfirm table.tbl-ship-info-border td p{
  font-size: 13px;
}
.tbl-ship-info-border .ellipsis{
  top: 10px;
  right: 0px;
    transform: initial;
}
.tbl-ship-info-border .ellipsis a{
  color: #9B9B9B !important;
  padding: 5px 10px;
}
#tokushoho-text{
  margin-bottom: 20px;
}
.cxl-txt-box{
  padding: 12px 15px;
  border: 2px solid #ccc;
  border-radius: 5px;
}
ul.kome li {
    position: relative;
    padding-left: 18px;
    font-size: 14px;
    list-style: none;
}
ul.kome li + li {
    margin-top: 3px;
}
ul.kome li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "※";
}
.cxl-txt-box a {
    text-decoration: underline;
}
table.passengers-list th{
  width: 100px;
}
table.passengers-list td{
  width: calc(100% - 100px);
}
.passengers-num{
  font-size: 11px;
}
.confirm-detail{
  display: flex;
  align-items: flex-start;
}
.pay-confirm-detail-set dl.confirm-detail dt{
  width: 100px;
}
.pay-confirm-detail-set dl.confirm-detail dd{
  width: calc(100% - 100px);
  margin-left: 0;
  padding: 5px 10px;
}
.totalprice{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.card-comfirm .totalprice a:after{
  font-size: 12px;
}
dl.totalprice dt{
  float: none;
  margin:0;
  width: 160px;
}
#acc-price{
  padding-top: 15px;
}
/*.modal-body .select-style-box .btn:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 15px;
    left: auto;
    content: "\f058";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 24px;
    color: #E7E7E7;
}
.modal-body .select-style-box .btn:hover:after,
.modal-body .select-style-box .btn.active:after{
  color: #F53D7E;
}*/
.row-card-number{
  display: flex;
  align-items: center;
}
.col-card-number span + span{
  margin-left: 15px;
}
.btn-group .btn.card-no{
  padding-left: 10px;
}
.security-box p{
  margin-bottom: 0;
}
.wrap-confirm + .wrap-confirm{
  margin-top: 30px;
}
.wrap-confirm h3{
  margin-bottom: 15px;
}
.wrap-confirm-subtext{
  border:1px dotted #ccc;
  padding: 10px 15px;
  margin-top: 5px;
  border-radius: 2px;
}
.wrap-confirm-subtext p{
  font-size: 13px !important;
}
.wrap-notice-info-route + .wrap-notice-info-bin,
.wrap-notice-info-route + .wrap-notice-info-plan{
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px dotted #ccc;
}
.wrap-notice-info-bin + .wrap-notice-info-plan{
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px dotted #ccc;
}
.wrap-notice-info-route > div + div,
.wrap-notice-info-bin > div + div,
.wrap-notice-info-plan > div + div{
  margin-top: 10px;
}
.wrap-notice-info-route > div p,
.wrap-notice-info-bin > div p,
.wrap-notice-info-plan > div p{
  margin:0 !important;
}
.wrap-notice-info-route > div p + p,
.wrap-notice-info-bin > div p + p,
.wrap-notice-info-plan > div p + p{
  margin-top: 5px !important;
}
table.tbl-price th{
  width: 50%;
}
table.tbl-price td{
  width: 50%;
}
@media (max-width: 767px) {
.row-card-number{
  display: flex;
  align-items: flex-start;
}
.col-card-number span{
  display: block !important;
}
.col-card-number span + span{
  margin-top: 5px;
  margin-left: 0;
}
.btn-next-fixed{
  padding: 10px;
}
table.tbl-price th{
  width: 60%;
}
table.tbl-price td{
  width: 40%;
}
}





.row-shipname-info{
  display: flex;
  padding: 25px 20px;
}
.col-shipname-thum{
  max-width: 120px;
}
.col-shipname-text{
  width: calc(100% - 120px);
  padding-left: 10px;
  position: relative;
  padding-right: 15px;
}
.col-shipname-text h3,
.col-shipname-text h2{
  font-size: 13px;
  font-weight: normal;
  margin-bottom: 5px;
  padding: 0;
  font-weight: normal;
}
.col-shipname-text .ellipsis{
  top: 0;
  transform: initial;
  right: -10px;
}
.shipname-text{
  font-size: 14px;
  display: block;
  margin-top: 8px;
}
.bin-box-ferry-in .info-box-group{
  margin-top: 0;
}
.row-shipselect-info{
  display: flex;
}
.col-shipselect-info-thum{
  width: 25%;
}
.col-shipselect-info-text{
  width: 75%;
  padding-left: 20px;
}
.ferry-bin-list .bin-box-ferry-in h3{
  padding: 0 25px 0 0;
}
@media (max-width: 767px) {
.row-shipname-info{
  display: flex;
  padding: 25px 0px;
}
.col-shipname-thum{
  max-width: 80px;
}
.col-shipname-text{
  width: calc(100% - 80px);
}
.col-shipselect-info-thum{
  width: 30%;
}
.col-shipselect-info-text{
  width: 70%;
  padding-left: 10px;
}
}


.ferry-bin-list-price .ferry-bin-list-price-left small{
  display: block;
}



/* モーダル内の設定 */
.modal-body img,
.modal-body p{
  margin:0;
}
.modal-body h1 .room-type-label{
  margin-left: 0;
  margin-right: 10px;
}
.modal-inner-header h2{
  background: #333;
  color: #fff;
  padding: 10px 15px;
  font-size: 16px;
  margin-bottom: 15px;
}
.modal-total-price .modal-inner-header h2{
  background: none;
  padding: 0;
  text-align: center;
}
.modal-total-price .modal-inner-header h2 span{
  background: #333;
  color: #fff;
  padding: 10px 15px;
  font-size: 14px;
  display: inline-block;
  border-radius: 100px;
  text-align: center;
}
.modal-inner-body h3{
  border-bottom: 1px dotted #000;
  padding-bottom: 10px;
  margin-bottom: 15px;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.4;
}
.modal-inner-body h3 .room-type-label{
  margin-right: 10px;
  margin-left: 0;
  width: 70px;
  text-align: center;
}
.modal-inner-body h3 .room-type-label + span{
  width: calc(100% - 70px);
}
.wrap-modalcontents + .wrap-modalcontents{
  margin-top: 30px;
}
.modal-inner-body > .wrap-modalcontents + .wrap-modalcontents{
  margin-top: 30px;
}
.wrap-modalcontents p + p{
  margin-top: 5px;
}
.wrap-modalcontents p + table,
.wrap-modalcontents table + p,
.wrap-modalcontents p + img,
.wrap-modalcontents img + p,
.wrap-modalcontents table + img,
.wrap-modalcontents img + table{
  margin-top: 10px;
}

.ship-map + p{
  margin-top: 10px;
}

.row-equipment{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.row-equipment > img{
  width: 200px;
}
.row-equipment > p,
.row-equipment > table{
  width: calc(100% - 215px);
}
.row-equipment + p{
  margin-top: 10px;
}
.list-other-equipment{
  display: flex;
  flex-wrap: wrap;
}
.list-other-equipment > li{
  position: relative;
  padding-left: 15px;
  padding-right: 5px;
}
.list-other-equipment > li:before{
  content: "・";
  position: absolute;
  top: 0;
  left: 0;
}
table.tbl-ship-info{
  margin-bottom: 0;
}
ul.status-list{
  display: block;
  flex-flow:initial;
  gap: initial;
}
.modal-body ul.status-list > li{
  border: 1px solid #ccc;
  padding: 15px;
  border-radius: 4px;
}
ul.status-list > li + li{
  margin-top: 10px;
}
.modal-body ul.status-list li:first-child{
  border: 1px solid #ccc;
  padding: 15px;
}
@media (max-width: 767px) {
.row-equipment{
  display: block;
}
.row-equipment > img{
  width: 100%;
}
.row-equipment > p,
.row-equipment > table{
  width: 100%;
}
}

.card.card-room h2,
.card.card-room h3{
  display: flex;
  align-items: flex-start;
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: bold;
}
.card.card-room h2 .room-type-label,
.card.card-room h3 .room-type-label{
  margin-left: 0;
  margin-right: 10px;
  width: 70px;
  text-align: center;
}
.card.card-room h2 .room-type-label + span,
.card.card-room h3 .room-type-label + span{
  width: calc(100% - 80px);
  padding-top: 3px;
}
#open-room-price{
  margin-top: 10px;
}



.select-payment-box .security-box{
  margin-bottom: 20px;
}
.select-style-box .btn.card-no:after {
    position: absolute;
    top: 50%;
    left: auto;
    right: 15px;
    font-size: 24px;
}
#modal-card-list .select-style-box + .card{
  margin-top: 10px;
  margin-bottom: 0 !important;
}
#modal-card-list ul.txt-link li a{
  padding: 15px 0;
  min-height: 44px;
}



#confirm-txt-box {
    color: #f53d7e;
    font-weight: bold;
    text-align: center;
    border: 2px solid #f53d7e;
    max-width: 1140px;
    width: 94%;
    padding: 15px 10px;
    margin: 170px auto 20px auto;
}
@media (max-width: 767px) {
    #confirm-txt-box {
        margin: 70px auto 20px auto;
    }
}


.wrap-include-responsive{
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%;
  margin-bottom: 20px;
}
.wrap-include-responsive iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}



.box-regist .form-control{
  min-height: 44px;
}
.box-regist .select-2 .btn-group{
  margin-bottom: 10px;
}
.box-regist .address-search-set .btn-address-search{
  min-height: 44px;
}


#mb-searchbox .search-detail .dl-search{
  display: flex;
}
#mb-searchbox .searchbox01 .dl-search dt{
  float: none;
  display: flex;
  align-items: center;
}
#mb-searchbox .searchbox01 .dl-search dd{
  width: calc(100% - 105px);
}
#mb-searchbox .form-control{
  min-height: 44px;
}
#mb-searchbox .people-selection .input-group-btn .btn-right,
#mb-searchbox .people-selection .input-group-btn .btn-left,
#mb-searchbox .people-selection input{
  min-height: 44px;
}
#mb-searchbox .modal-footer{
  padding: 10px;
}
#mb-searchbox .btn-group .btn{
  justify-content: center;
}
#mb-searchbox .people-selection{
  margin-bottom: 5px;
}
.modal a.child-link:after{
  display: none;
}


.ferry-bin-notice{
  color: #d44a4a;
  border: 2px solid #d44a4a;
  background: #fff;
  padding: 10px 20px;
}
.ferry-bin-notice.notice-suspension{
  border-color: #707070;
  color: #707070;
}
.ferry-bin-notice.notice-salesstop{
  border-color: #f95151;
  color: #f95151;
}
.ferry-bin-notice.notice-full{
  border-color: #3f87be;
  color: #3f87be; 
}
@media (max-width: 767px) {

}


.modal-footer button{
  cursor: pointer;
}

.card-info-caveat .card-header,
.card-info-caution .card-header{
  background: none;
  border: none;
  padding-bottom: 0;
}
.card-info-caveat .card-header h2,
.card-info-caution .card-header h2{
  position: relative;
  padding-left: 40px;
  padding-top: 10px;
  border-bottom: 2px solid #333;
  padding-bottom: 10px;
}
.card-info-caveat .card-header h2{
  border-color: #f95151;
}
.card-info-caution .card-header h2{
  border-color: #f1c11c;
}
.card-info-caveat .card-header h2:before,
.card-info-caution .card-header h2:before{
    content: "\f071";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 7px;
    left: 7px;
    font-size: 120%;
}
.card-info-caveat .card-header h2:before{
  color: #f95151;
}
.card-info-caution .card-header h2:before{
  color: #f1c11c;
}
.card-info-caveat .modal-inner-header h2,
.card-info-caution .modal-inner-header h2{
  background: none;
  position: relative;
  padding-left: 40px;
  color: #333;
  border-bottom: 2px solid #333;
}
.card-info-caveat .modal-inner-header h2{
  border-color: #f95151;
}
.card-info-caution .modal-inner-header h2{
  border-color: #f1c11c;
}
.card-info-caveat .modal-inner-header h2:before,
.card-info-caution .modal-inner-header h2:before{
    content: "\f071";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 7px;
    left: 7px;
    font-size: 120%;
}
.card-info-caveat .modal-inner-header h2:before{
  color: #f95151;
}
.card-info-caution .modal-inner-header h2:before{
  color: #f1c11c;
}

@media (max-width: 767px) {
.card-info-caveat .card-header,
.card-info-caution .card-header{
  background: none;
  border: none;
  padding:10px 10px;
}
}



ul.page-link-group li a.page-link{
  background: #F53D7E;
  border: none;
  border-radius: 4px;
  color: #fff;
}
ul.page-link-group li a.page-link:after{
  content: "\f0dd";
}


.listBrand {
  margin: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;/*1蛻�*/
  flex-wrap: nowrap;
  overflow-x: scroll;
}

.listBrand li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 260px;
  margin: 8px 12px 14px 0;
}
.listBrand a {
  display: block;
  width: 260px;
  color: #333333;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}
.listBrand .img {
  position: relative;
  background: #EDEDED;
}
.listBrand .img:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 83%;
}
.listBrand .img img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 60%;
  height: auto;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.listBrand .name {
  padding: 5px 5px 0;
  font-size: 11px;
  line-height: 1.45;
  font-weight: 700;
  word-break: break-all;
  text-align: left;
}
.listBrand p {
  text-align: left;
  font-size: 11px;
  padding: 5px;
}


@media all and (min-width: 768px) {
  .listBrand {
    padding: 0 0 0 12px;
    flex-wrap: wrap;
    overflow-x: inherit;
  }
  .listBrand li {
    width: calc(33.33% - 12px);
    margin: 8px 12px 14px 0;
    border-radius: 4px;
  }
  .listBrand a {
    box-shadow: 0 0 6px #E7E7E7;
    width: 100%;
  }
  .listBrand a:hover {
    text-decoration: none;
    background: #FEEBF2;
  }
  .listBrand .img:before {
    padding-top: 68%;
  }
  .listBrand .img img {
    max-width: 60%;
  }
  .listBrand .name {
    font-size: 12px;
    line-height: 1.5;
    text-align: left;
  }
  .listBrand p {
    font-size: 12px;
  }
}