/* Phase85: layout層 (自動分類, scripts/phase85_split_css.py, 元ファイル: common2.css/style2.css) */

.news-tittle p,
.table td,
#company .l-grid4 p,
.shop-info .caption p,
.work_sheet h3,
#newslist .table th,
.c-cms-wrap.l-grid p,
.c-cms-wrap.l-grid li,
.c-cms-wrap.l-grid a {
font-size: 1.1rem;
}

 
/* =========================================================
  03 レイアウト補助
========================================================= */
.l-wrapper  {
  margin: 0 auto; 
  max-width: 1300px; 
}

.u_area h4,
#Otherservice .l-grid,
.office.l-wrapper.l-grid,
.pharmacy3_column .l-grid,
.pharmacy3 h3,
.pharmacy2_info .banner h2,
.patientmeal_career_index,
.banner h1.pharmacy_shousai2,
.banner h1.pharmacy_shousai1,
.shop_info_adress ul,
.map .l-grid,
.shop-info .center {
padding: 0;
}


.list_items,
.pharmacy3_column .l-grid {
  justify-content: space-around;
}


/* =========================================================
  04 背景画像・パララックス
========================================================= */
.l-parallax1 {
  background-image: url(/images/share/main-im2_1.jpg);
}


.l-parallax-1 {
  background-image: url(/images/business/patient_im2021_12_4.jpg);
}


.l-parallax2-1 {
  background-image: url(/images/business/patient_im2021_12_4.jpg);
}


.l-parallax2-2 {
  background-image: url(/images/business/patient_im202012_3.jpg);
}


.l-parallax3,
.l-parallax3-1 {
  background-image: url(/images/share/main_img_2025.jpg);
}


.l-parallax-4 {
  background-image: url(/images/business/pharmacy_20241119.jpg);
}


.l-parallax-15 {
  background-image: url(/images/business/pharmacy_im01_1.jpg);
}


.l-parallax-16 {
  background-image: url(/images/business/pharmacy_im01_8.jpg);
}


.l-parallax-19 {
  background-image: url(/images/business/shop_im07_2.jpg);
}


.l-parallax-20 {
  background-image: url(/images/business/shop_im02-1.jpg);
}


.l-parallax-21 {
  background-image: url(/images/business/shop_im05.jpg);
}


.l-parallax,
.l-parallax-1,
.l-parallax2,
.l-parallax-base {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}


#all-service .l-parallax-1-1 h2 {
  background-color: rgba(248, 71, 71, 0.7);
}


.l-parallax6 {
  background-color: rgba(255, 255, 255, 0.9);
}


.l-parallax6 {
  padding: 5% 10%;
}


.l-parallax6 table td {
  padding: 0.5rem;
  text-align: left;
}


/*
=========================================================
 style2.css 管理用構成ガイド
 更新日: 2026-07-08

 01 基本・文字・共通
 02 レイアウト・汎用
 03 ヘッダー・ナビ・フッター
 04 UI・共通部品
 05 トップ・ホーム
 06 会社・法人
 07 サービス
 08 薬局
 09 患者・医療
 10 患者食・食事
 11 売店・ショップ
 12 ベーカリー
 13 オフィス・事業
 14 採用
 15 ニュース・CMS
 16 フォーム・メール

 注意:
 現在のCSS適用順を維持するため、ルールの並べ替えは行っていません。
 このガイドは管理・検索用です。
=========================================================
*/


header {
  display: flex;
  justify-content: space-around;
  margin: 0 auto;
  padding: 0.5rem 0 0.1rem;
  background-color: rgba(0, 0, 0, 0.8);
  position: sticky;
  top: 0;
  z-index: 10;
}


header.news_top {
  display: flex;
  margin: 0 auto;
  padding: 0.5rem 0 0.1rem;
  background-color: rgba(0, 0, 0, 0.8);
  justify-content: space-around;
  margin: 0;
  position: sticky;
  top: 0;
  height: auto;
  width: auto;
  z-index: 10;
}


.annai.l-grid {
  background-color: #fff;
  padding: 3% 0 1%;
  justify-content: space-evenly;
}


.info_link_link li {
  padding: 1%;
}


.l-main-nav-sns {
  align-items: center;
  display: flex;
  padding: 0 0.5rem;
  justify-content: space-between;
}


footer p {
  font-style: normal;
  padding: 0 0 0.3%;
  font-size: 0.6rem;
  color: #fff;
}

/* Phase136 Release v2最終修正: base.cssの全ページ共通ルール"h4,h5,h6,p,li{text-align:left}"が
   footer内のp要素にも効いてしまい、ロゴ・法人名・住所・電話番号・Copyright等が左寄せに
   なっていた(business/patient.htmlのみPhase129で個別に上書き済み)。footer配下をセレクタで
   明示的に中央揃えへ上書きし、サイト全体で統一する。デザイン(フォントサイズ・色・余白等)は
   変更しない。 */
footer,
footer address,
footer p,
footer small {
  text-align: center;
}

/* organization/webdir系ページが読み込むvendor/normalize.cssの"img{display:block}"により、
   footerロゴ画像がtext-align:centerの対象外(block要素はtext-alignで中央揃えされない)と
   なり左寄せのままだったため、margin:0 auto で確実に中央揃えする(vendorファイルは変更しない)。
   img側にinline-block等の変更は行わずmarginのみで対応するため、他ページの表示に影響しない。 */
footer img {
  margin: 0 auto;
}


.service-annai .l-grid {
  padding: 1% 20%;
}

  
.l-main-nav-sns li {
  padding: 0 0.3rem;
}


footer {
  background: #543;
  margin: 0 auto;
  line-height: 1.25;
  padding: 1% 0 0;
}


#link,
.policy_philosophy_link .annai.l-grid {
  padding: 3% 0 0;
}


.l-main-nav-sns-under {
  padding: 3% 0 0;
  justify-content: center;
}


#news_list .l-wrapper {
  margin: 0 auto;
  max-width: 500px;
}


.pharmacy-page_banner.annai.l-grid {
  padding: 3% 2% 2%;
}


.l-parallax7 {
  padding: 3% 10%;
  background-color: rgba(255, 255, 255, 0.9);
}


/* return button------------------------------------------------------------------------------ */
/*ハンバーガーメニュー*/
/*ヘッダーまわりはご自由に*/
#nav-drawer {
  position: fixed;
  padding: 1em;
  top: 0;
  z-index: 10;
}


/*アイコンのスペース*/
#nav-open {
  width: 30px;
  height: 5px;
  vertical-align: middle;
  display: none;
  color: #543;
}


/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span,
#nav-open span:before,
#nav-open span:after {
  position: absolute;
  height: 5px; /*線の太さ*/
  width: 50px; /*長さ*/
  border-radius: 3px;
  background: #432;
  display: block;
  content: "";
  cursor: pointer;
}


#nav-open span:before {
  bottom: -8px;
}


#nav-open span:after {
  bottom: -16px;
}


#nav-content a {
  color: #fff;
}


/*閉じる用の薄黒カバー*/
#nav-close {
  width: 100%;
  display: none; /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0; /*全体に広がるように*/
  left: 0;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: 0.3s ease-in-out;
}


/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  padding-top: 1em;
  top: 0;
  left: 0;
  z-index: 9999; /*最前面に*/
  width: 75%; /*右側に隙間を作る*/
  max-width: 330px; /*最大幅*/
  height: 100%;
  background: #432; /*背景色*/
  transition: 0.3s ease-in-out; /*滑らかに表示*/
  transform: translateX(-105%); /*左に隠しておく*/
}


#nav-content p {
  color: #fff; 
  font-size: 0.9rem;
  margin: 0.5rem 1rem;
  padding: 0;
  text-align: left;
}


/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block; /*カバーを表示*/
  opacity: 0.5;
}


#nav-input:checked ~ #nav-content {
  transform: translateX(0%); /*中身を表示*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
}


/* ------------------------------------------------HEADER----------------------------------- */
.l-parallax1 header,
.l-parallax-24 header {
  background-color: rgba(0, 0, 0, 0.9);
  position: sticky;
  top: 0;
  padding: 0.5rem 0;
  z-index: 3;
}


.mail-form .l-main-nav {
  height: 50px;
  padding-top: 2em;
}


.mail-form .l-main-nav,
.l-parallax6 li {
  margin-left: 2em;
}


.l-main-nav a {
  font-size: 0.8rem;
  padding: 0.5rem 1.5rem;
  color: #fff;
}


.youtube .l-grid {
  display: flex;
  height: auto;
  position: relative;
  padding-bottom: 0; /*これが縦横比*/
  margin: 0;
  overflow: hidden;
  flex-wrap: wrap;
  justify-content: center;
  flex-direction: row;
}


.l-parallax8 h3 {
  padding-top: 1em;
}


.l-parallax8 {
  background: rgba(255, 255, 255, 1);
  background-position: center;
  padding-bottom: 2%;
}


.pharmacy3_leaflet li,
.l-grid3 p,
.l-main-nav,
.l-main-nav2 {
  font-size: 0.9rem;
  align-items: center;
}

/* Phase107: css/vendor/normalize.cssのグローバルul{display:flex}ルールが
   このページの読込CSSに無いため、.main-navがブラウザ既定のdisplay:blockに
   なりliが縦並びになる。normalize.cssを読み込むページ(organization/webdir等)
   と同じ横並び表示にするため、.main-nav単体に限定してflex指定を追加する。
   （.main-nav2は未検証のため対象外） */
.l-main-nav {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: nowrap;
}


.l-main-nav-sns-sp {
  justify-content: center;
  align-items: center;
}


.pharmacy2_learning .l-grid {
  padding: 5% 2%;
  justify-content: space-around;
}


/* -----------------pharmacy3-------------------------- */
.pharmacy3_top header {
  position: sticky;
  top: 0;
  z-index: 3;
}


.pharmacy3_qrcode_intro .l-grid {
  justify-content: space-between;
  padding: 5% 10% 1%;
}


.pharmacy3_stoma_intro .l-grid {
  padding: 0 10%;
  justify-content: space-evenly;
}


.patientmeal-info .l-wrapper {
  padding: 2% 10% 5%;
  background-color: rgba(255, 255, 255, 0.9);
}


.patient_info_top .l-grid {
  justify-content: center;
  padding: 2% 0;
  margin: 0 10% 5%;
  background-color: #fff;
  box-shadow: inset -3px -3px 7px rgba(255, 255, 255, 1),
    inset 3px 3px 7px rgba(0, 0, 0, 0.25), inset 1px 1px 3px rgba(0, 0, 0, 0.2);
}


#blog .page-header {
  background-color: rgba(0, 0, 0, 0.7);
}


.l-wrapper .top-map {
  padding: 2em;
}


.c-section-title .l-parallax1 h2 {
  padding: 1% 25%;
}


.news-list .l-grid {
  display: block;
  padding: 0;
}


.shop-service .l-grid {
  width: 100%;
  padding: 0;
}


#Otherservice .l-grid,
.description p {
  padding: 0 5%;
}


.l-parallax6 h2 {
  padding: 1em;
}


.news-list.l-wrapper {
  margin: 2% 25%;
  padding: 3% 0;
}


.l-main-nav-sns img {
  height: 30px;
  width: auto;
}

/* Phase98: #linkがpages/top.cssにのみ分類されており、top.cssを読み込まない
   ページ(contact.html/plan.html/philosophy.html/customer_harassment.html/
   business/patient.html/business/md-bakery.html/newsinformation-h配下記事)で
   背景色が適用されず、固定背景画像が透けて見える不具合を修正 */
#link {
  background-color: #fff;
}

/* Phase101-D: 以下4セレクタ(.c-pagetop/.l-header-onlinestore/.l-nav-unshown/
   関連ルール)は、Phase83-85のCSS責務分離時にpages/business.css・
   pages/top.css・cms/cms-components.cssへ誤って分類され、それらを
   読み込まないページで表示崩れが生じていた不具合の修正
   (reports/pro-phase101A-visual-check.md, pro-phase101B-css-root-cause.md)。
   全ページ共通の要素のためlayout.cssへ集約する。 */

/* from common.css（元cms/cms-components.css） */
.c-pagetop a {
  filter: alpha(opacity=100);
  -moz-opacity: 0.5;
  opacity: 0.5;
}
.c-pagetop a:hover {
  filter: alpha(opacity=50);
  -moz-opacity: 1;
  opacity: 1;
}

/* from style2.css（元pages/top.css） */
.l-header-onlinestore a {
  font-size: 0.8rem;
  color: #fff;
  background-color: rgba(255, 11, 141, 1);
  padding: 0.5rem 0.5rem 0.4rem;
  border-radius: 3px;
  text-align: center;
}

