.display-pc { display: block; }
.display-sp { display: none; }

/********************************************
  ▼ 背景画像
*********************************************/


html, body {
  height: 100%;
  margin: 0;
  font-size: 16px;
}

body {
  position: relative;
  z-index: 0;
  font-family:
    "Noto Sans JP",
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Yu Gothic",
    "YuGothic",
    "Meiryo",
    sans-serif;
}

/* 固定背景レイヤー
body::before {
  content: "";
  position: fixed;
  inset: 0;
  background: url("../img/common/bg_pc.jpg") center / cover no-repeat;
  z-index: -1;
} */

/* スマホ表示（768px以下）
@media screen and (max-width: 768px) {
  body::before {
  content: "";
  position: fixed;
  inset: 0;
  background: url("../img/common/bg_sp.jpg") center / cover no-repeat;
  z-index: -1;
}
} */


/********************************************
  ▼ メインカラム
*********************************************/
.keySection {
  width:100%;
  max-width:1200px;
  margin:20px auto 0;
}
@media screen and (max-width: 768px) {
  .keySection {
    max-width: 100%;
  }
}

h3.heading-gradient {
  font-size: clamp(2em, 4.5vw, 4em);
  font-weight: bold;
  background: linear-gradient(to bottom, #af2c10, #554202);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 3px rgba(0,0,0,.4));
  margin:1em 0 0;
  padding:0;
  text-align:center;
  font-family:
    "Hiragino Mincho ProN",
    "ヒラギノ明朝 ProN",
    "Yu Mincho",
    "游明朝",
    "MS PMincho",
    serif;
}

/* =========================================
  ▼ topGreeting
========================================= */
.topGreeting,
.topNo1 {
  display: flex;
  gap: 2em;
  align-items: flex-start;
}
/* contents_inner 内で水平中央 */
.contents_inner,
.contents_inner02 {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding: 0 0.5em 2em;
  text-align: center;
  box-sizing: border-box;
}
.contents_inner {
  background: url("../img/top/bg_Cinner.png") top left  / 300px auto no-repeat;
}
.contents_inner02 {
  background: url("../img/top/bg_Cinner02.png") top right  / 400px auto no-repeat;
}
.topNo1 {
  margin:3em 0 0;
}
/* 文字は単色、背景は中央から左右へ透過 */
.contents_inner h3.heading-gradient{
  display: inline-block; /* 背景を文字幅に合わせる */
  color: #461900;
  -webkit-text-fill-color: #461900;
  -webkit-background-clip: initial;
  font-size: clamp(1.2em, 4.5vw, 2em);
  font-weight: bold;
  margin: 3em 0 2em;
  padding: 0.25em 3em;  /* 帯の太さ・左右幅 */
  /* 中央#ecc801 → 左右に透過 */
  background: linear-gradient(
    90deg,
    rgba(236, 200, 1, 0) 0%,
    #ecc801 50%,
    rgba(236, 200, 1, 0) 100%
  );
  box-shadow: none;
  filter: none;
}
.contents_inner02 h3.heading-gradient{
  color: #461900;
  -webkit-text-fill-color: #461900;
  -webkit-background-clip: initial;
  font-size: clamp(1.2em, 4.5vw, 2em);
  margin: 3em 0 2em;
  background: none;
  box-shadow: none;
  filter: none;
}

/* 6:4 */
.topGreeting .topGbox01{ flex: 6; text-align:left; box-sizing:border-box; }
.topGreeting .topGbox02{ flex: 4; text-align:left; box-sizing:border-box; }
/* 4:6 */
.topNo1 .topNbox01{ flex: 4; text-align:left; box-sizing:border-box; }
.topNo1 .topNbox02{ flex: 6; text-align:center; box-sizing:border-box; }

/* 見出し */
.topGreeting h5{
  font-size: clamp(1.3em, 4.5vw, 2.1em);
  color: #461900;
  margin: 0 0 1em;
  line-height: 1.5;
  font-family:
    "Hiragino Mincho ProN",
    "ヒラギノ明朝 ProN",
    "Yu Mincho",
    "游明朝",
    "MS PMincho",
    serif;
}
/* span：薄いピンクのライン（文字に少し被る / 高さ1/3程度） */
.topGreeting h5 span{
  position: relative;
  display: inline-block;
  z-index: 0;
}

.topGreeting h5 span::after{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 33%;                 /* テキストの約1/3 */
  bottom: 0.08em;              /* 少し文字に被せる */
  background: rgba(255, 182, 193, 0.55); /* 薄いピンク */
  z-index: -1;                 /* 文字の背面へ */
}

.topNo1 h5{
  font-size: clamp(1.3em, 4.5vw, 2.1em);
  color: #461900;
  margin: 0 0 0.1em;
  line-height: 1.5;
  font-family:
    "Hiragino Mincho ProN",
    "ヒラギノ明朝 ProN",
    "Yu Mincho",
    "游明朝",
    "MS PMincho",
    serif;
}

.topGreeting h6,
.topNo1 h6 {
  font-size: 1.1em;
  margin:0.5em 0;
}
.topNo1 h6 {
  color: #461900;
  font-family:
    "Hiragino Mincho ProN",
    "ヒラギノ明朝 ProN",
    "Yu Mincho",
    "游明朝",
    "MS PMincho",
    serif;
}

.contents_inner p,
.contents_inner02 p{
  line-height:1.8;
}
.topGbox02 img,
.topNo1 img{
  width:100%;
  height:auto;
}
.topGbox02 p {
  font-size:0.9em;
}
.topNbox02 p {
  font-size:0.7em;
}

/* =========================================
  ▼ No.1 seal
========================================= */
.no1_seal{
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;

  display: flex;
  flex-wrap: wrap;
  justify-content: center;  /* ← 行全体を中央寄せ（2列目も中央） */
  gap: 1.2em;
  box-sizing: border-box;
}

/* 2カラム同幅 */
.no1_seal .no1_Sinner{
  flex: 0 0 calc((100% - 1.2em) / 2); /* ← 2列で同じ幅 */
  background-color: #FFEFEC;
  color:#461900;
  font-weight:bold;
  text-align:center;
  display: flex;
  align-items: center;
  gap: 0.8em;

  padding: 1em;
  box-sizing: border-box;
}

/* 文章（1つ目のp）＝画像幅を引いた残りを全て使う */
.no1_seal .no1_Sinner > p:first-child{
  flex: 1;                 /* ← 残り幅を全部使う */
  margin: 0;
}

/* 画像側（2つ目のp）＝右端固定 */
.no1_seal .no1_Sinner > p:last-child{
  margin: 0;
  flex: 0 0 auto;
  margin-left: auto;       /* ← 右端へ押し出す */
  display: flex;
  justify-content: flex-end;
}

/* imgは全体の2割くらい（ただし上限も付けると安定） */
.no1_seal .no1_Sinner img{
  width: 100%;
  max-width: 80px;         /* 任意：大きくなりすぎ防止 */
  height: auto;
  display: block;
}

/* =========================================
  ▼ スマホ：縦並び＆幅100%
========================================= */
@media (max-width: 768px){
  .no1_seal{
    flex-direction: column;
    align-items: center;
  }

  .no1_seal .no1_Sinner{
    flex: none;
    width: 100%;
  }

  .no1_seal .no1_Sinner img{
    width: 56px;           /* 任意：スマホは固定の方が安定 */
    max-width: none;
  }
}

@media (max-width: 768px){
  .topGreeting,
  .topNo1{
    flex-direction: column; /* ← 縦並び */
  }
  .topGreeting .topGbox02{ display:flex; gap:1em; }
  .topGbox02 .topGinner01{ flex: 4; box-sizing:border-box; }
  .topGbox02 .topGinner02{ flex: 6;}
  .topGreeting h6 {
    margin: 0 0 0.3em;
  }
  .contents_inner02 h3.heading-gradient {
    margin: 1em 0 2em;
  }
.contents_inner02 p{
    text-align:left;
  }
  /* 幅制御をリセット（念のため） */
  .topGreeting .topGbox01,
  .topGreeting .topGbox02,
  .topNo1 .topNbox01,
  .topNo1 .topNbox02{
    flex: none;
    width: 100%;
  }
  .contents_inner {
    background: url("../img/top/bg_Cinner.png") top left  / 50% auto no-repeat;
  }
  .contents_inner02 {
    background: url("../img/top/bg_Cinner02.png") top right  / 50% auto no-repeat;
  }
}

/********************************************
  ▼ メインカラム
*********************************************/
.newsSection, .eventSection {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding: 1em;
  position:relative;
  box-sizing: border-box;
  text-align:left;
}
.news_detail .newsSection {
  background-color:#fff;
}


@media screen and (max-width: 768px) {
  .keySection h3 img {
  width:200px;
}
}

.newsSection h3 {
  text-align:center;
  border-bottom:1px solid #555;
  padding:0 0 0.5em;
  margin:0;
}
.newsSection .newsDate {
  text-align:right;
  font-family: "Expletus Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: italic;
  font-size:90%;
  
}


/* 全体 */
.main_up {
  width:100%;
  height:auto;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 5em;
  margin: 0 auto;
  padding: 0;
  text-align:center;
  background:
    url("../img/common/bg_3box.png") top center / 600px auto repeat;
}

/* 下層ページ全体 */
.mainBox {
  width:100%;
  height:auto;
  margin: 0;
  padding: 0;
}
.mainBox_inner {
  width:100%;
  max-width:800px;
  height:auto;
  margin: 0 auto;
  padding: 0;
}

/********************************************
  ▼ トップ3box
*********************************************/
.box3{
  width:100%;
  margin:0 auto;
  padding:0 0 5em;
  box-sizing:border-box;
}


/* ===============================
   各カラム
================================ */
.box3-inner {
  display:flex;
  flex-wrap:wrap;
  gap:1.5em;
  align-items:stretch;

  width:100%;
  max-width:1000px;
  margin:0 auto;
  padding:0;
  box-sizing:border-box;
}
.box3-inner > div{
  display: flex;
  flex-direction: column;
  flex: 1 1 calc((100% - 3em) / 3);

  overflow: hidden;
  /* background: #fff;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  transition: transform .3s ease, box-shadow .3s ease; */
}

/* ホバー効果 */
.box3-inner a{
  display:block;
  width:100%;
  height:100%;
  color:#461900;
}
.box3-inner a:hover{
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
}

/* ===============================
   見出し部分
================================ */
.box3-inner h4{
  margin: 0;
  padding: 1em;
  background: #CD4C3B;
  color: #fff;
  display: flex;
  flex-direction: column;   /* img → テキスト縦並び */
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-size: 1.1rem;
  line-height: 1.4;
  text-align: center;
  box-sizing: border-box;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
}

/* アイコン画像 */
.box3-inner h4 img{
  display: block;
  width: auto;
  height: 80px;
  padding:0 0 0.3em;
}

/* ===============================
   本文
================================ */
.box3-inner p{
  margin: 0;
  padding: 1em 0;
  line-height: 1.5;
  font-size: 0.95em;
  flex: 1;                 /* 高さ揃え用 */
  text-align:justify;
  word-break:break-all;
  text-justify:inter-character;
}

/* span強調 */
.box3 p span{
  font-weight: bold;
  color: #CD4C3B;
}

/* ===============================
   タブレット（2カラム）
================================ 
@media (max-width: 900px){
  .box3 > div{
    flex: 1 1 calc((100% - 24px) / 2);
  }
}*/

/* ===============================
   スマホ
================================ */
@media (max-width: 768px){
  .box3{
    gap: 16px;
    padding:0 0.5em 5em;
    background: none;
  }
  .box3-inner {
    gap:1em;
  }
  .box3-inner p {
    font-size: 0.8em;
  }
  .box3-inner h4 img{
  height: 50px;
}
}




.top_contents {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0 0 3em;
  background: linear-gradient(
    to bottom,
    #FFF8F2 0%,
    #FFFEFD 100%
  );
}

.top_problem {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0 0 3em;

  background:
    linear-gradient(
      to bottom,
      #504624 0%,
      #816505 100%
    ) top / 100% 765px no-repeat,
    #fff;
}
.top_Pinner {
	width:100%;
	height:auto;
	margin:0 auto;
  background: url("../img/top/bg_problem.png") top left  / 1300px 808px no-repeat;
}

.teaser-video {
  width:100%;
  padding: 1em;
  background: #fff;
  border-radius: 6px;
  position:relative;
  box-sizing: border-box;
}

.main_wrapper {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  margin: 0 auto;
  max-width: 100%;
  padding: 0;
}
 /* .main_up img {
  max-width:100%;
  height:auto;
  padding:1em;
  box-sizing: border-box;
} */

@media screen and (max-width: 768px) {
  .main_up {
  gap: 2em;
}
.teaser-video {
  width:100%;
  padding: 0;
}
}

.word-img {
  width: 100%;
  padding: 1em;

  /* 高さは中の背景で表現 */
  aspect-ratio: 198 / 43; /* ← 元画像の比率に合わせて調整 */

  background-image: url("../img/word_01.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  box-sizing: border-box;
}

/* スマホ用（画像切り替え） */
@media screen and (max-width: 768px) {
  .word-img {
    width: 95%;
    background-image: url("/assets/img/word_01_sp.png");
    aspect-ratio:99 / 43;
  }
}

.bnr-img {
  display: block;
  width: 60%;
  padding: 1em;
  margin:0 auto;

  /* 高さは中の背景で表現 */
  aspect-ratio: 32 / 5; /* ← 元画像の比率に合わせて調整 */

  background-image: url("../img/bnr_20260225_pc.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  box-sizing: border-box;
}

/* スマホ用（画像切り替え） */
@media screen and (max-width: 768px) {
  .bnr-img {
    width: 95%;
    background-image: url("/assets/img/bnr_20260225_sp.jpg");
    aspect-ratio:51 / 19;
  }
}

.thumbox {
  display: flex;
  flex-wrap: wrap;
  justify-content:center;
  gap: 1em;              /* サムネ間余白 */
}

/* 各サムネ */
.thumbox a,
.thumbox img {
  flex: 0 0 calc(20% - 1em); /* 5列 */
  box-sizing: border-box;
  padding:0;
}

.thumbox img {
  width: 100%;
  height: auto;
  display: block;
}
@media screen and (max-width: 768px) {

  .thumbox a,
  .thumbox img {
    flex: 0 0 calc(100% - 1em); /* 2列 */
  }

}



/* メインビジュアル（左：7） */
/* PC（横並び） */
.main_img {
  width: 100%;
  height:auto;
  margin-bottom:5em;
}

/* ▼ スマホ（縦並び） */
@media screen and (max-width: 768px) {
  .main_img {
    /* width: 100%;
    flex: none; */
    margin-bottom:3em;
  }
}


.main_img img {
  width: 100%;
  height: auto;
  display: block;
}

/* メインスライダー */
.slid_main {
  width: 100%;
}

/* 画像共通 */
.slid_main img {
  width: 100%;
  height: auto;
  display: block;
}

/* ▼ スマホ調整 */
@media screen and (max-width: 768px) {

  .main_img {
    max-height: auto;      /* ← 好みで調整 */
    overflow: hidden;
  }

  .slid_main img {
    height: auto;          /* ← 上と揃える */
    object-fit: cover;     /* トリミング */
  }
}

/* ==========================
   slick ドット（サイバー脈動）
========================== */
.slick-dotted.slick-slider {
    margin-bottom: 50px;
}

/* ドット全体位置 */
.slick-dots {
  bottom: -40px;
  display:none;
}

/* クリック領域 */
.slick-dots li {
  width: 20px;
  height: 20px;
  margin: 0 0.5em;
}

/* ボタン */
.slick-dots li button {
  width: 20px;
  height: 20px;
  padding: 0;
  position: relative;
}

/* 通常ドット */
.slick-dots li button:before {
  content: "";
  display: block;
  margin: auto;

  width: 10px;
  height: 10px;
  border-radius: 50%;

  background: rgba(76, 22, 0, 1);


  transition: all 0.3s ease;
}

/* アクティブドット：脈動 */
.slick-dots li.slick-active button:before {
  background: rgba(76, 22, 0, 1);

  animation: cyberPulse 1.8s ease-in-out infinite;
}

/* hover（PC） */
.slick-dots li button:hover:before {
  transform: scale(1.3);
  box-shadow:
    0 0 10px rgba(255, 255, 0, 1),
    0 0 20px rgba(255, 255, 0, 0.9);
}


/* ==========================
   脈動アニメーション
========================== */
@keyframes cyberPulse {
  0% {
    transform: scale(1);
    box-shadow:
      0 0 6px rgba(255, 255, 0, 0.6),
      0 0 10px rgba(255, 255, 0, 0.4);
    opacity: 1;
  }

  50% {
    transform: scale(1.6);
    box-shadow:
      0 0 12px rgba(255, 255, 0, 1),
      0 0 24px rgba(255, 255, 0, 0.9),
      0 0 30px rgba(255, 255, 0, 0.7);
    opacity: 0.9;
  }

  100% {
    transform: scale(1);
    box-shadow:
      0 0 6px rgba(255, 255, 0, 0.6),
      0 0 10px rgba(255, 255, 0, 0.4);
    opacity: 1;
  }
}

/* タッチデバイスでは hover を無効化 */
@media (hover: none) {
  .slick-dots li button:hover:before {
    transform: none;
    box-shadow: none;
    opacity:0.3;
  }
}


/* フォーカスでは光らせない
.slick-dots li button:focus:before {
  opacity: 0.4;
  
} */


/* slick ドットここまで */


/* 右側（動画 + お知らせ：3） */
.main_sub {
  flex: 3;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media screen and (max-width: 768px) {
  .main_sub {
    gap: 50px;
}
}

/* Youtubeデフォルト（スマホ用） */
.youtubebox iframe,
.teaser-video iframe {
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
}

/* お知らせ */
.defbox,
.youtubebox,
.infobox {
  padding: 1em;
  background: #fff;
  position:relative;
}
.defbox h3,
.youtubebox h3,
.infobox h3 {
  font-family: "Expletus Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: italic;
  font-size: 150%;
  margin: 0 0 0.5em;

  background: linear-gradient(
    90deg,
    #ff0000,
    #ff7f00,
    #ffff00,
    #00ff00,
    #00ffff,
    #0000ff,
    #8b00ff
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.btnBox {
    margin:2em 0 0;
}

.btnMore {
  display: block;
  align-items: center;
  justify-content: center;
  gap: 0.5em;

  padding: 0.5em 1.5em;
  margin: 0;

  font-family: "Expletus Sans", sans-serif;
  font-size: 150%;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;

  color: #fff;
  text-decoration: none;
  text-align:center;
  position: relative;
  overflow: hidden;
  box-shadow:
    0 3px 2px rgba(0,0,0,0.25);
  transition: all 0.3s ease;
}

.btn_news {
    background: linear-gradient(
    135deg,
    #ff0000,
    #d30202
  );
}
.btn_event {
    background: linear-gradient(
    135deg,
    #009cff,
    #0281d2
  );
}

/* テキスト */
.btnMore .more {
  position: relative;
  z-index: 2;
}

/* 光のスライド */
.btnMore::before {
  content: "";
  position: absolute;
  top: 0;
  left: -120%;
  width: 120%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent,
    rgba(255,255,255,0.4),
    transparent
  );
  transition: left 0.6s ease;
}

/* hover */
.btnMore:hover {
  transform: translateY(2px);
  box-shadow:
    0 0 0 rgba(0,0,0,0.35);
}

.btnMore:hover::before {
  left: 120%;
}
/********************************************
  ▼ タイトル関連
*********************************************/
.titleSection {
  width:100%;
  max-width:1200px;
  margin:5em auto 0;
  padding: 0;
  text-align:center;
}


.title_news {
  background-image: url("../img/common/title_news_pc.png");
}

.title_event {
  background-image: url("../img/common/title_event_pc.png");
}

.title_news,
.title_event {
    width: 100%;
    padding: 1em;
    aspect-ratio: 33 / 5;
    -webkit-mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 12%,
    black 88%,
    transparent 100%
  );
  mask-image: linear-gradient(
    to right,
    transparent 0%,
    black 12%,
    black 88%,
    transparent 100%
  );
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    box-sizing: border-box;
}

/* スマホ用（画像切り替え） */
@media screen and (max-width: 768px) {
  .titleSection {
  margin:3em auto 0;
  }
  .title_news {
    background-image: url("/assets/img/common/title_news_sp.png");
  }
    .title_event {
    background-image: url("/assets/img/common/title_event_sp.png");
  }
    .title_news, .title_event {
    aspect-ratio:53 / 15;
  }
}


/********************************************
  ▼ 下層ページ用
*********************************************/
/* 4列グリッド（PC） */
.hinmokuBox{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.2em;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* 1アイテム（画像＋文字） */
.hinmokuBox .hinmoku{
  display: flex;
  flex-direction: column;
  align-items: center;   /* 横中央 */
  text-align: center;    /* 文字中央 */
  border:1px solid #ccc;
}

/* 画像 */
.hinmokuBox .hinmoku img{
  width: 100%;
  height: auto;
  display: block;
}

/* 文字：画像の下中央 */
.hinmokuBox .hinmoku p{
  margin: 0.5em 0 0;
  padding: 0;
}

/* スマホ：縦1列 */
@media (max-width: 768px){
  .hinmokuBox{
    grid-template-columns: 1fr;
  }
}

a.btnform5 {
    background: #6b5935 url(/wp/wp-content/uploads/2021/02/ico_track.png) no-repeat;
    background-position: top 50% right 10px;
    background-size: 12%;
    padding-top: 0 !important;
    line-height: 80px !important;
    color: #ffffff;



/******************************
  ▼ スマホ（768px以下）で縦並び
******************************/
@media screen and (max-width: 768px) {
  .main_wrapper {
    flex-direction: column;
  }

  .main_sub {
    width: 100%;
  }
}

/********************************************
  ▼ お知らせ用
*********************************************/
/* リストのマークを消す */
.eventUl {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;           /* 横並び */
  align-items: center;
  gap: 1em;
}

/* li 共通 */
.eventUl li {
  margin: 0;
  padding: 2em 0;
  font-size: 16px;
}

/* 日付（1つ目の li） */
.eventUl li:first-child {
  background: #000;
  color: #fff;
  font-size:70%;
  min-width:80px;
  text-align:center;
  border-radius: 100vh;
  white-space: nowrap;
  padding: 0.2em 0.7em;
  
}
.newsBox {
  border-top:1px solid #333;
  
}
.newsBox a {
  text-decoration:none;
  
}

@media screen and (max-width: 768px) {
  .eventUl {
    flex-direction: column;
    align-items: flex-start;
    gap:0.5em;
  }
  .eventUl li {
    margin: 0;
  padding: 0 0 1em;
  }

/* 日付（1つ目の li） */
  .eventUl li:first-child {
    margin: 1em 0 0;
  }
}



@media screen and (max-width: 768px) {
.display-pc { display: none; }
.display-sp { display: block; }
}