@charset "UTF-8";
/* ==========================================================================
   薬局サーチ index.css — the homepage. The prefecture search is a Japan map (/img/top/
   top_bg_top_search_map_no_area.png, 560x480) with the seven region buttons placed over their regions; each
   opens its prefecture list (common.js / index.js). See common.css for the provenance note.
   ========================================================================== */

.top-search {
  padding: 36px 0 40px;
  background: #f2f9fd;
}
.top-search .container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

/* ---- map ---- */
.top-search-map {
  position: relative;
  width: 560px;
  height: 480px;
  flex: 0 0 560px;
}
.top-search-map .img-map img {
  display: block;
  width: 560px;
  height: 480px;
}
.top-search-map .btn-area {
  position: absolute;
  z-index: 2;
}
.top-search-map .btn-area > a {
  display: block;
  padding: 5px 0;
  border-radius: 15px;
  background: #00a2e9;
  color: #fff;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  box-shadow: 0 2px 0 #0080b8;
}
.top-search-map .btn-area.long > a {
  width: 112px;
}
.top-search-map .btn-area.short > a {
  width: 64px;
}
.top-search-map .btn-area > a:hover,
.top-search-map .btn-area.is-active > a {
  background: #ff9600;
  box-shadow: 0 2px 0 #d97800;
  text-decoration: none;
}
.area-hokkaido-tohoku {
  left: 440px;
  top: 200px;
}
.area-kanto {
  left: 432px;
  top: 300px;
}
.area-koshinetsu-hokuriku {
  left: 262px;
  top: 228px;
}
.area-tokai {
  left: 352px;
  top: 372px;
}
.area-kinki {
  left: 262px;
  top: 384px;
}
.area-chugoku-shikoku {
  left: 108px;
  top: 300px;
}
.area-kyushu-okinawa {
  left: 40px;
  top: 404px;
}
.top-search-map .btn-area .area {
  display: none;
  position: absolute;
  left: 0;
  top: 36px;
  width: 200px;
  padding: 10px 12px;
  border: 1px solid #00a2e9;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15);
  z-index: 3;
}
.top-search-map .btn-area.is-active .area {
  display: block;
}
.top-search-map .btn-area .area ul {
  display: flex;
  flex-wrap: wrap;
}
.top-search-map .btn-area .area li {
  width: 50%;
  padding: 3px 0;
  font-size: 1.3rem;
}

/* ---- prefecture list beside the map ---- */
.top-search-list {
  flex: 0 0 390px;
  padding: 22px 24px;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
}
.top-search-list-tit {
  margin-bottom: 14px;
  font-size: 2rem;
  line-height: 1.4;
  color: #003a74;
}
.top-search-list-tit span {
  font-size: 1.5rem;
  color: #333;
}
.top-search-list .area dl {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
}
.top-search-list .area dt {
  width: 92px;
  padding: 7px 0;
  border-bottom: 1px dotted #ccc;
  font-weight: bold;
  color: #00a2e9;
}
.top-search-list .area dd {
  width: calc(100% - 92px);
  padding: 7px 0;
  border-bottom: 1px dotted #ccc;
}
.top-search-list .area dd a {
  display: inline-block;
  margin-right: 10px;
}
.top-search-sp {
  display: none;
}

/* ---- chains ---- */
.top-search-store {
  padding: 44px 0;
}
.top-search-store-tit,
.top-search-station-tit,
.top-drugstore-data-tit {
  margin-bottom: 22px;
  font-size: 2.4rem;
  text-align: center;
  color: #003a74;
}
.top-search-store-tit:after,
.top-search-station-tit:after,
.top-drugstore-data-tit:after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  margin: 10px auto 0;
  background: #00a2e9;
}
.store-tab ul {
  display: flex;
  justify-content: center;
  border-bottom: 2px solid #00a2e9;
}
.store-tab li {
  margin: 0 3px;
}
.store-tab a {
  display: block;
  min-width: 180px;
  padding: 10px 18px;
  border: 1px solid #ccc;
  border-bottom: none;
  border-radius: 4px 4px 0 0;
  background: #f6f6f6;
  color: #555;
  font-weight: bold;
  text-align: center;
}
.store-tab li.is-active a {
  border-color: #00a2e9;
  background: #00a2e9;
  color: #fff;
}
.store-tab a:hover {
  text-decoration: none;
}
.store-tab-contents {
  padding-top: 20px;
}
.store-tab-contents .store-list {
  display: none;
}
.store-tab-contents .store-list.is-active {
  display: block;
}
.store-tab-contents .store-list ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -6px;
}
.store-tab-contents .store-list li {
  width: calc(100% / 6 - 12px);
  margin: 0 6px 12px;
  border-radius: 4px;
}
.store-tab-contents .store-list li a {
  display: block;
  padding: 10px;
  color: #333;
  text-align: center;
}
.store-tab-contents .store-list li a:hover {
  background: #e8f6fd;
  text-decoration: none;
}
.store-tab-contents .store-list .img {
  display: block;
  background: #fff;
}
.store-tab-contents .store-list .img img {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
}
.store-tab-contents .store-list .txt {
  display: block;
  margin-top: 6px;
  font-size: 1.2rem;
  line-height: 1.4;
}
.store-btn-sp,
.station-btn-sp {
  display: none;
}

/* ---- stations ---- */
.top-search-station {
  padding: 44px 0;
  background: #f6f6f6;
}
.station-list dl {
  display: flex;
  border-bottom: 1px dotted #ccc;
}
.station-list dt {
  flex: 0 0 120px;
  padding: 10px 0;
  font-weight: bold;
  color: #003a74;
}
.station-list dd {
  flex: 1;
  padding: 10px 0;
  font-size: 1.3rem;
}
.station-list dd a {
  display: inline-block;
  margin-right: 14px;
}

/* ---- about ---- */
.top-about-us {
  padding: 48px 0;
}
.top-about-us .container {
  overflow: hidden;
}
.top-about-us .img {
  float: left;
  width: 360px;
  margin-right: 36px;
}
.top-about-us .img img {
  display: block;
  width: 100%;
  border-radius: 6px;
}
.top-about-us-tit {
  margin-bottom: 16px;
  font-size: 2.2rem;
  color: #003a74;
}
.top-about-us p {
  line-height: 2;
}

/* ---- data ---- */
.top-drugstore-data {
  padding: 44px 0;
  background: #f2f9fd;
}
