@charset "UTF-8";
.p_kv {
 text-shadow: 2px 2px 4px rgb(0 0 0 / 70%);
 color: #fff;
 background-image: url("../../../images/page/access/access_bg03.jpg");
}

.p_access .access .desc {
 margin-top: -6px;
 color: #fff;
 padding-bottom: 50px;
}
@media screen and (min-width: 1024px) {
 .p_access .access .desc {
  margin-top: -8px;
 }
}
.p_access .access .desc p {
 text-align: center;
}
.p_kv .h400 {
 height: 200px;
}
@media screen and (min-width: 768px) {
 .p_kv .h400 {
  height: 400px;
 }
}

.p_access .section_comment {
 color: #fff;
}

.p_access .section_title {
 font-size: 23px;
 font-weight: bold;
 padding-bottom: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .section_title {
  font-size: 25px;
  font-weight: bold;
  padding-bottom: 38px;
 }
}

.p_access .section_comment02 {
 color: #fff;
 padding-top: 100px;
}
@media screen and (min-width: 768px) {
 .p_access .section_comment02 {
  color: #fff;
  padding-top: 200px;
 }
}

.p_access .section_title02 {
 font-size: 23px;
 font-weight: bold;
 padding-bottom: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .section_title02 {
  font-size: 25px;
  font-weight: bold;

  padding-bottom: 38px;
 }
}

.p_access .section_comment03 {
 color: #000;
 padding-top: 50px;
}
@media screen and (min-width: 768px) {
 .p_access .section_comment03 {
  color: #000;
  padding-top: 100px;
 }
}

.p_access .section_title03 {
 font-size: 23px;
 font-weight: bold;
 padding-bottom: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .section_title03 {
  font-size: 25px;
  font-weight: bold;

  padding-bottom: 38px;
 }
}

.p_access .section_main_title {
 font-size: 20px;
 line-height: 1.2em;
 padding-bottom: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .section_main_title {
  font-size: 35px;
  padding-bottom: 30px;
 }
}
.p_access .section_sub_title {
 font-size: 18px;
}
@media screen and (min-width: 768px) {
 .p_access .section_sub_title {
  font-size: 28px;
 }
}

.p_access .access_contents {
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: flex-start;
 padding-top: 50px;
 gap: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .access_contents {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 70px;
  gap: 30px;
  flex-direction: column;
 }
}

.p_access .access_comment {
 display: flex;
 flex-direction: column;
 line-height: 2em;
 width: 100%;
 gap: 15px;
 font-size: 15px;
}
@media screen and (min-width: 768px) {
 .p_access .access_comment {
  display: flex;
  flex-direction: column;
  line-height: 2em;
  width: 50%;
  gap: 15px;
  font-size: 18px;
 }
}

.p_access .access_img {
 display: flex;
 flex-direction: column;
 align-items: center;
 width: 100%;
 gap: 30px;
}
@media screen and (min-width: 768px) {
 .p_access .access_img {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 50%;
  gap: 30px;
 }
}

.p_access .access_title {
 font-size: 22px;
}
@media screen and (min-width: 768px) {
 .p_access .access_title {
  font-size: 22px;
 }
}

.p_access .access_map {
 display: contents;
}
/* 地図の全幅表示 */
.p_access .access_map iframe {
 width: 100%; /* 親要素の幅いっぱいにする */
 max-width: 1200px; /* 最大幅を100%に設定 */
 height: 450px; /* 高さは任意に設定 */
 border: none;
 display: block; /* ブロック要素として表示 */
 margin: 0; /* 余白をなくす */
}

.p_access .access_map_text {
 line-height: 2em;
 font-size: 15px;
}
@media screen and (min-width: 768px) {
 .p_access .access_map_text {
  line-height: 2em;
  font-size: 18px;
 }
}
