@charset "UTF-8";
/* CSS Document */
/*----------------------*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap");
.fontNotoSerif {
  font-family: "Noto Serif JP", serif;
}
:where(.contents) img {
  width: auto;
}
.topObi01 {
  text-align: center;
  background-color: #092c85;
}
.topObi01 img {
  width: 683px;
  height: auto;
  /* padding: 10px 0; */
}
.mainvisualWrap01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/main_ttl_bg.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  height: 600px;
  position: relative;
}
.mainvisual01 img {
  margin-inline: auto;
  position: absolute;
  inset: 50px 0px auto 0px;
  width: 1024px;
}
.contents {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.Special {
  background: #ffe6f5;
  margin: 0 auto;
  padding-block: 4rem;
}
.Special_img p {
  width: 1024px;
}
.tv_inner {
  width: 100%;
  font-family: YuMincho, "Hiragino Mincho ProN", serif;
  text-align: center;
  margin: 4rem 0;
}
.tv_ttl {
  font-size: 24px;
  margin-bottom: 0.5rem;
  font-weight: 800;
}
.tv_inner p {
  width: 100%;
}
.tv_inner p {
  font-size: 19px;
  line-height: 2;
  font-weight: 600;
}
.tv_btn {
  width: 1024px;
  margin-inline: auto;
  display: flex;
  justify-content: center;
}
.tv_btn a:hover {
  opacity: 0.7;
}
.seoFlex01 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 50px;
}
.seoTextBox01 {
  width: 708px;
}
.movieBox01 {
  width: 286px;
}
.movieBox01 dt {
  background-color: #2f8743;
  color: #ffffff;
  font-size: 17px;
  line-height: 1.6em;
  font-weight: 500;
  letter-spacing: -0.05em;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-sizing: border-box;
  padding: 3px;
  height: 46px;
}

/*-----------------------------------
	2025/07/2
-------------------------------------*/

img {
  vertical-align: bottom;
}

.posiRe {
  position: relative;
}

a.hover:hover {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
  transition-duration: 0.3s;
}

.ancBlock01 {
  padding: 40px 0px;
  background: #0091d5;
  background: linear-gradient(
    0deg,
    rgba(0, 145, 213, 1) 0%,
    rgba(1, 54, 128, 1) 100%
  );
}
.ancFlex01 {
  display: flex;
  justify-content: center;
  gap: 0px 58px;
}

/*------------------------*/

.gourmetBlock01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/gourmet_bg01.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 80px 0px 80px;
}
.gourmetH201 {
  text-align: center;
  margin-bottom: 60px;
}
.gourmetH201 img {
  width: auto;
  height: 243px;
}
.gourmetBox01 {
  width: 1022px;
  margin: auto;
}
.gourmetBadge01 {
  width: 304px;
  position: absolute;
  top: -10px;
  left: -50px;
}
.gourmetText01 {
  width: 824px;
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
}
.gourmetFlex01 {
  display: flex;
  align-items: center;
  background-color: #000000;
  color: #ffffff;
  padding-right: 26px;
  font-size: 17px;
  line-height: 1.5em;
  font-weight: 500;
}
.gourmetFlex01 .box01 {
  flex-shrink: 0;
}
.gourmetFlex01 .box02 .h301 {
  margin-bottom: 13px;
}

.gourmetBox02 {
  background-color: #ffffff;
  border: 2px solid #9d2238;
  padding: 4px;
}
.gourmetBox02 .in01 {
  border: 1px solid #9d2238;
  padding: 0px;
}

.gourmetFlex02 {
  display: flex;
  margin-top: 8px;
  margin-bottom: 12px;
  padding: 0px 18px;
}
.gourmetFlex02 .box01 {
  width: 50%;
}

.gourmetTable01 {
}
.gourmetTable01 th {
  text-align: left;
  vertical-align: top;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: 500;
  white-space: nowrap;
  padding: 8px 1em 0px 0px;
}
.gourmetTable01 td {
  text-align: left;
  vertical-align: top;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: 500;
  padding: 0px 0px 0px;
}
.gourmetTable01 td li {
  margin-top: 8px;
}
.gourmetText02 {
  margin-top: 4px;
}
.gourmetText02 .s01 {
  display: inline-block;
  background-color: #e60012;
  padding: 5px 7px;
  color: #ffffff;
  font-size: 28px;
  line-height: 1em;
  font-weight: bold;
  vertical-align: middle;
}

.gourmetTextBox01 {
  text-align: center;
}
.gourmetTextBox01 .p01 {
  display: inline-block;
  border: 2px solid #e60012;
  padding: 3px 15px;
  color: #e60012;
  font-size: 20px;
  line-height: 1.3em;
  font-weight: bold;
}
.gourmetTextBox01 .p02 {
  display: inline-block;
  border: 1px solid #333333;
  padding: 5px 15px;
  color: #333333;
  font-size: 16px;
  line-height: 1.3em;
  font-weight: normal;
  margin-top: 20px;
}

/*------------------------*/

.hotelBlock01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/hotel_bg01.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 80px 0px;
}
.hotelH201 {
  text-align: center;
  margin-bottom: 35px;
}
.hotelH201 img {
  width: auto;
  height: 243px;
}

.hotelBox01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/hotel_frame_mid.jpg");
  background-position: top center;
  background-repeat: repeat-y;
  background-size: 100% auto;
  padding: 0px 23px;
}
.frameWrap01 {
  font-size: 0px;
  line-height: 0px;
}
.hotelTextBox01 {
  text-align: center;
  color: #ffffff;
  font-size: 24px;
  line-height: 1.5em;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 5px 20px;
  height: 160px;
}

.hotelImg01 img {
  width: 100%;
  height: auto;
}

.hotelFlex01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px 0px;
  padding: 0px 15px 15px;
  margin-top: 38px;
}

/*--------------------------*/

.siteBlock01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/site_bg01.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 80px 0px 60px;
}
.siteH201 {
  text-align: center;
  margin-bottom: 60px;
}
.siteH201 img {
  width: auto;
  height: 161px;
}

.siteFlex01 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 52px 0px;
}
.siteFlex01 li {
  width: 492px;
}
.siteH301 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/site_cont_tit_bg01.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%;
  width: 100%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #0a902c;
  font-size: 28px;
  line-height: 1em;
  font-weight: 600;
  margin: 10px auto 16px;
}
.siteText01 {
  font-size: 18px;
  line-height: 1.5em;
  font-weight: 500;
}

/*----------------------*/

.pointBlock01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/point_bg01.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 80px 0px;
}

.pointH201 {
  text-align: center;
  margin-bottom: 40px;
}
.pointH201 img {
  width: auto;
  height: 161px;
}

.pointFlex01 {
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 20px 0px;
}
.pointFlex01 li {
  width: 100%;
}

/*----------------------*/

.bottomBlock01 {
  background-color: #ffe6f5;
  padding: 40px 0px;
}

/*------------------------------
	2026/01/29
-------------------------------*/

.mainText01 {
  font-size: 12px;
  line-height: 1.6em;
  white-space: nowrap;
  text-align: right;
  position: absolute;
  bottom: -20px;
  right: 50%;
  margin-right: -512px;
}

.gourmetTextBox02 {
  color: #ffffff;
  font-size: 16px;
  line-height: 1.55em;
  letter-spacing: -0.05em;
  font-weight: bold;
  width: 488px;
  position: absolute;
  right: 13px;
  bottom: 17px;
}

/*-------------------*/

.hotelFlex02 {
  display: flex;
  align-items: center;
  gap: 0px 24px;
  padding: 16px;
}
.hotelFlex02 .box01 {
  width: 492px;
  flex-shrink: 0;
}
.hotelFlex02 .box02 {
  color: #ffffff;
  font-size: 26px;
  line-height: 1.5em;
  font-weight: 500;
  padding-bottom: 25px;
}
.slick-dots {
  display: flex;
  justify-content: center;
  gap: 10px;
}
.slick-dots button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  background: transparent;
  font-size: 0px;
  text-indent: -9999px;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  border: 1px solid #ffffff;
}
.slick-dots .slick-active button {
  background-color: #ffffff;
}

.hotelContBox01 {
  background-image: url("/attending/t/osa-d/cm-kmiferry/images/pc/hotel_cont_bg01.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 0px 15px 15px;
}
.hotelText01 {
  color: #ffffff;
  font-size: 29px;
  line-height: 1.5em;
  font-weight: 500;
  margin-top: 10px;
}

.aboutBottom01 {
  margin-top: 15px;
}
