@charset "UTF-8";
/* ==========================================================================
   薬局サーチ common.css
   The 2019-08 build on the S3 bucket (pharmacy-search-production/20190801092328) was never archived; this file
   is written for the site's own markup in EPARK's 2019 design language (palette and type of the EPARK
   くすりの窓口 stylesheets of the same weeks: #333 text, #00a2e9 primary, #ff9600 / #fc7700 accents).
   ========================================================================== */

*,
*:before,
*:after {
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-size: 1.4rem;
  line-height: 1.6;
  color: #333;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
}
a {
  color: #00a2e9;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
ul,
ol {
  list-style: none;
}
h1,
h2,
h3,
h4 {
  font-weight: bold;
  line-height: 1.4;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* ---- helpers ---- */
.only-sp {
  display: none;
}
.only-pc {
  display: inline;
}
div.only-pc {
  display: block;
}
.bg-gray {
  background: #f6f6f6;
}
.mfp-hide {
  display: none !important;
}

/* ---- frame ---- */
.wrapper {
  min-width: 1000px;
  overflow: hidden;
}
.container {
  width: 980px;
  margin: 0 auto;
  position: relative;
}
.container:after,
.row:after {
  content: "";
  display: block;
  clear: both;
}

/* ---- header ---- */
.header {
  background: #fff;
  border-top: 4px solid #00a2e9;
  border-bottom: 1px solid #e5e5e5;
}
.header .container {
  display: flex;
  align-items: center;
  height: 76px;
}
.header .logo {
  margin: 0;
  line-height: 1;
}
.header .logo a {
  display: block;
}
.header .logo img {
  width: 200px;
  height: auto;
}
.header .logo-txt {
  margin-left: 24px;
  padding-left: 24px;
  border-left: 1px solid #ccc;
  font-size: 1.3rem;
  color: #555;
  line-height: 1.5;
}

/* ---- global navigation (home) ---- */
.globalnavi {
  background: #00a2e9;
}
.globalnavi ul {
  display: flex;
}
.globalnavi li {
  flex: 1;
  border-left: 1px solid rgba(255, 255, 255, 0.35);
}
.globalnavi li:last-child {
  border-right: 1px solid rgba(255, 255, 255, 0.35);
}
.globalnavi a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  height: 58px;
  padding: 0 10px;
  color: #fff;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.25;
  text-align: center;
}
.globalnavi a span {
  font-size: 1.2rem;
  font-weight: normal;
}
.globalnavi a br + span {
  width: 100%;
}
.globalnavi a:hover {
  background: #0091d1;
  text-decoration: none;
}

/* ---- breadcrumb ---- */
.breadcrumb {
  background: #f6f6f6;
  border-bottom: 1px solid #e5e5e5;
}
.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  padding: 10px 0;
  font-size: 1.2rem;
  color: #777;
}
.breadcrumb li:after {
  content: "\203A";
  margin: 0 8px;
  color: #aaa;
}
.breadcrumb li:last-child:after {
  display: none;
}

/* ---- page structure ---- */
.page {
  padding-bottom: 40px;
}
.page-contents {
  padding-top: 24px;
}
.section + .section {
  margin-top: 40px;
}
.row {
  position: relative;
}
.main {
  float: left;
  width: 690px;
}
.side {
  float: right;
  width: 270px;
}
.block + .block {
  margin-top: 20px;
}
.half {
  width: 48.5%;
}

/* ---- generic buttons ---- */
.btn a,
a.btn {
  display: inline-block;
  min-width: 220px;
  padding: 11px 30px;
  border-radius: 4px;
  background: #00a2e9;
  color: #fff;
  font-weight: bold;
  text-align: center;
  box-shadow: 0 2px 0 #0080b8;
}
.btn a:hover,
a.btn:hover {
  opacity: 0.85;
  text-decoration: none;
}
.btn-area {
  margin-top: 14px;
}

/* ---- ranking boxes (home: .top-ranking, prefecture page: .ranking) ---- */
.top-ranking,
.ranking {
  display: flex;
  justify-content: space-between;
}
.ranking-box {
  width: 48.5%;
  border: 1px solid #ddd;
  border-radius: 4px;
  background: #fff;
}
.ranking-box-tit {
  padding: 12px 16px;
  border-radius: 4px 4px 0 0;
  background: #003a74;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
}
.ranking-box-list {
  padding: 16px 20px;
}
.ranking-box-list p {
  margin-bottom: 12px;
  font-size: 1.3rem;
  line-height: 1.7;
  color: #555;
}
.ranking-box-list li {
  display: flex;
  align-items: baseline;
  padding: 8px 0;
  border-bottom: 1px dotted #ccc;
  font-weight: bold;
}
.ranking-box-list li a {
  margin-left: 4px;
}
.ranking-box-list li span {
  margin-left: auto;
  font-weight: normal;
  color: #fc7700;
}
.ranking-box-list li:nth-child(-n+3) {
  font-size: 1.6rem;
}

/* ---- footer ---- */
.footer {
  margin-top: 40px;
  background: #f6f6f6;
  border-top: 1px solid #e5e5e5;
}
.footer > .container {
  padding: 32px 0 24px;
}
.footer-search-area,
.footer-search-store {
  margin-bottom: 24px;
}
.footer-search-area-tit,
.footer-search-store-tit {
  margin-bottom: 12px;
  padding-left: 10px;
  border-left: 4px solid #00a2e9;
  font-size: 1.5rem;
}
.footer .area dl {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
  border-top: 1px dotted #ccc;
}
.footer .area dt {
  width: 120px;
  padding: 7px 0;
  font-weight: bold;
  border-bottom: 1px dotted #ccc;
}
.footer .area dd {
  width: calc(100% - 120px);
  padding: 7px 0;
  border-bottom: 1px dotted #ccc;
}
.footer .area dd a {
  display: inline-block;
  margin-right: 12px;
}
.footer .store-list ul {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
}
.footer .store-list li {
  width: 20%;
  padding: 4px 0;
}
.footer-search-store-btn-sp {
  display: none;
}
.footer-bottom {
  background: #003a74;
  color: #fff;
}
.footer-bottom .container {
  padding: 18px 0;
  text-align: center;
}
.footer-link ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  font-size: 1.2rem;
}
.footer-link li + li:before {
  content: "|";
  margin: 0 12px;
  color: rgba(255, 255, 255, 0.5);
}
.footer-link a {
  color: #fff;
}
.footer-copyright {
  margin-top: 8px;
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.75);
}
