@charset "utf-8" ;

/* ページ全体 */
body{
  display:grid;
  grid-template-columns: 20px 1fr 20px;
  grid-template-rows: 
    [head] 100px
    [mainimg] auto
    [title] auto
    [contents] auto
    [recent] auto
    [falcon] auto
    [foot] 40px;
    min-width: 375px; 
}

a:hover {
  text-decoration:underline;
  }

/* パーツの配置 */
body > * {
  grid-column: 2 / -2
}

/* ヘッダー */
header {
  position: fixed;
  width: 100%;
  height: 100px;
  grid-row: head;
  grid-column: 1 / -1;
  background: #333333;
}
#logo1{
  width: 83px;
  margin-top: 40px;
  margin-left: 20px;
}

.pc_ue,.pc_shita{
  display: none;
}

/* ハンバーガーナビ */
.nav{
  position: fixed;
  top: 100px;
  width: 100%;
  background: #484848;
  color: #ffffff;
  justify-content: center;
  align-items: center;
  z-index: 100;
  /* 初期：非表示 */
  visibility: hidden;
  opacity: 0;
  /* ふわっと表示 */
  transition: 0.5s ease-in-out;
}
.nav li:not(:last-child){
  margin-bottom: 30px;
}
.nav a{
  color: #ffffff;
}
.nav ul{
  padding-top: 30px;
  padding-bottom: 40px;
  padding-left: 20px;
  padding-right: 20px;
}

.shita{
  background: #898989;
}
.shita li:first-child {
  padding-top: 20px;
  padding-bottom: 10px;
  border-bottom: #ffffff 2px solid;
}

/* ナビゲーションボタン（開く） */
#navbtn{
position: fixed;
top: 41px;
right: 19px;
padding: 0;
outline: none;
border: none;
background: none;
width: 30px;
height: 18px;
cursor: pointer;
}

#navbtn::before,
#navbtn::after{
content : '';
display: block;
height: 2px;
background-color: #ffffff;
transform: translateY(8px);
transition: 0.3s ease-in-out;
}

#navbtn::before{
transform: translateY(-9px);
box-shadow: 0 9px #ffffff;
}

/* ナビゲーションボタン（閉じる） */
.open #navbtn{
z-index: 100;
}
.open #navbtn::before{
transform: translateY(1px) rotate(-45deg);
box-shadow: none;
}
.open #navbtn::after{
transform: translateX(1px)  rotate(45deg);
box-shadow: none;
}
/* ナビゲーションメニュー 開いた時*/
.open .nav{
visibility: visible;
opacity: 1;
}

/* メインイメージ */
figure{
  grid-column: 1 / -1;
  grid-row: mainimg / span 2;
  position: relative;
  width: 100%;
  height: 335px;
  overflow   : hidden;
  z-index: -1;
}
figure img{
  position: absolute;
 
  width: 100%;
  height: auto;
  opacity: 0;
  animation :slideshow 24s linear infinite;
}

.pc { display: none !important; }
.sp { display: block !important; }

 /*=== スライドのアニメーション ========================= */
 @keyframes slideshow {
  0%{
    opacity: 0;
  }
  10%{
    opacity: 1;
  }
  28%{
    opacity: 1
  }
  38%{
    opacity: 0;
  }
  100%{
    opacity: 0;
  }
}
figure img:nth-child(2){
  animation-delay: 8s;
}
 
figure img:last-child{
  animation-delay: 16s;
}

h1{
  grid-row: title;
  justify-self: center;
  margin-bottom: 18px;
  font: normal normal normal 18px/31px Hiragino Kaku Gothic ProN;
  letter-spacing: 0px;
  color: #FFFFFF;
  text-shadow: 2px 2px 0px #00000080;
  z-index: -1;
}

h2{
  grid-row: contents;
  background: #333333;
  color: #ffffff;
  width: 100%;
  line-height: 60px;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
}

section{
  grid-row: recent;
}

article img{
  margin-bottom: 20px;
}
article h3{
  font-size: 18px;
  margin-bottom: 20px;
  color: #0074D9;
}

article a{
  color: #0074D9;
}

article a:visited{
  color: #0074D9;
}
article p{
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 40px;
}

#falcon{
  grid-row: falcon;
  grid-column: 1 / -1;
  background: #333333;
  color: #ffffff;
  font-size: 12px;
  padding-bottom: 44px;
}

#falcon p{
  margin-left: 20px;
  line-height: 20px;
}
#falcon a{
  color: #ffffff;
}
#falcon a:visited{
  color: #ffffff;
}

#name{
  padding-top: 40px;
  padding-bottom: 20px;
}

footer{
  grid-row: foot;
  grid-column: 1 / -1;
  background: #000000;
  color: #ffffff;
  font-size: 12px;
  text-align: center;
  line-height: 40px;
}

/* サブページ */
.subimg{
  grid-column: 1 / -1;
  grid-row: mainimg;
  margin-bottom: 40px;
}
#subtitle{
  grid-row: title;
  margin-bottom: 40px;
}
.bunrui{
  border: #707070 solid 1px;
  text-align: center;
  line-height: 24px;
  width: 70px;
  margin-bottom: 10px;
  font-size: 90%;
}

.midashi{
  font-size: 18px;
  font-weight: 600;
}

#naiyou{
  grid-row: contents;
  font-size: 14px;
  line-height: 26px;
  margin-bottom: 20px;
}

#naiyou p{
  margin-bottom: 40px;
}

#naiyou a{
  color: #0074D9;
}
#naiyou a:visited{
  color: #0074D9;
}

.bold{
  font-weight: 600;
}

#works{
  grid-row: recent;
}

.sample img{
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}
.lastsample img{
  margin-bottom: 60px;
}

#works img{
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}
.lastsample img{
  margin-bottom: 60px;
}
.mmsubtitle{
  font-size: 16px;
  font-weight: 600;
  padding-top: 20px;
  padding-bottom: 30px;
}

.aboutsubtitle{
  font-weight: 600;
}

  /* 誤薬防止画像配置 */
  .goyakubox {
    list-style: none;
    margin-bottom: 40px;
    color: #000000;
  }
 .shitayajirushi{
    width: 30px;
    margin: auto;
    padding-top: 10px;
    padding-bottom: 20px;
}

.pdfA,.pdfB{
  width: 50%;
  height: auto;
 }
  
 .leafpdf{
  margin-bottom: 2em;
  width: 50%;
 }

 .iconpdf{
   width: 30px;
   height: auto;
 }


/* メールフォーム */


 /*=== PC版ここから ========================= */
@media(min-width: 769px){
/* ハンバーガーナビかくす */
#navbtn{
  display:none;
}
.nav{
  display: none;
}

body{
  grid-template-columns: 1fr minmax(770px, 1120px) 1fr;
  grid-column-gap: 20px;
  grid-template-rows: 
  [head] 100px
  [navi] 40px
  [mainimg] auto
  [title] auto
  [contents] auto
  [recent] auto
  [falcon] auto
  [foot] 40px;
}

/* ヘッダー */
header {
  position: fixed;
  width: 100%;
  height: 100px;
  grid-row: head;
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
}
#logo1{
  width: 124px;
  margin-top: 0;
  margin-left: 40px;
}

ul {
  color: #ffffff;
}

ul a{
  color: #ffffff;
}

ul a:visited{
  color: #ffffff;
}

.pc_ue{
  font-size: 14px;
  margin-left: auto;
  display: flex;
  list-style:none
}

.pc_ue li{
  padding-right: 20px;
}

.pc_shita{
  font-size: 12px;
  position: fixed;
  top: 100px;
  width: 100%;
  height: 26px;
  grid-column: 1 / -1;
  grid-row: navi;
  display: flex;
  list-style:none;
  background: #898989;
  padding-top: 14px;
}
.pc_shita li{
  margin-left: auto;
}

.pc_shita li:last-child{
  padding-right: 20px;
}

figure{
  position: relative;
  grid-column: 2 / -2;
  grid-row: mainimg / span 2;
  width: 100%;
  height: 400px;
  overflow   : hidden;
  z-index: -1;
}
figure img{
  position: absolute;
  width: 100%;
  height: auto;
  opacity: 0;
  animation :slideshow 24s linear infinite;
}
.pc { display: block !important; }
.sp { display: none !important; }

.subimg{
  grid-column: 2 / -2;
}

h1{
  grid-row: title;
  justify-self: end;
  font-size: 2em;
  font-weight: 600;
  line-height: 1.5em;
  padding-right: 30px;
  text-shadow: 3px 3px 0px #00000080;
}

section{
  display: grid;
  grid-column-gap: 30px;
}

.topsection{
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto;
}
.adsection{
  width: 80%;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr auto;
}

.lastsample img{
  margin-bottom: 60px;
}

/* プロモーション画像配置 */
.prmsection {
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(4, auto);
  grid-column-gap: 60px;
  grid-row-gap: 60px;
  }
  
  .div1 { grid-area: 1 / 1 / 2 / 3; }
  .div2 { grid-area: 1 / 3 / 2 / 5; }
  .div3 { grid-area: 1 / 5 / 2 / 7; }
  .div4 { grid-area: 2 / 1 / 3 / 4; }
  .div5 { grid-area: 2 / 4 / 3 / 7; }
  .div6 { grid-area: 3 / 1 / 4 / 3; }
  .div7 { grid-area: 3 / 3 / 4 / 7; }
  .div8 { grid-area: 4 / 1 / 5 / 3; }
  .div9 { grid-area: 4 / 3 / 5 / 5; 
           margin-bottom: 60px;
  }
  .div10 { grid-area: 4 / 5 / 5 / 7; 
            margin-bottom: 60px;
  }

  /* 誤薬防止画像配置 */
  .goyakubox {
  display: flex;
  list-style: none;
  margin-bottom: 40px;
}
ul>li{
  display:flex;
  align-items: center;
  justify-content: center;
}

.pdfA,.pdfB{
  width: 50%;
  height: auto;

 }

}
