@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/* ===== Kindleまとめ買い（カード型 / kbundle-） ===== */
.kbundle-item{
  background:transparent;
  border:1px solid #e5e5e5;
  border-radius:12px;
  padding:1.3rem;
  margin:1.2rem 0;
  display:flow-root;   /* フロートを内包 */
}

/* フロート方式。編集画面が <p> で包んでも配置が変わらない */
.kbundle-item .kbundle-cover{
  float:left;
  width:280px;
  margin:0 1.3em 0 0;
}
.kbundle-item .kbundle-info{ margin-left:calc(280px + 1.3em); }

/* 編集画面が差し込む空段落を無効化 */
.kbundle-item p:empty{ display:none; margin:0; }
.kbundle-item > p{ margin:0; }

/* 表紙 */
.kbundle-item .kbundle-cover{ display:block; margin:0; }
.kbundle-item .kbundle-cover img{
  width:100%; height:auto; display:block; margin:0;
  max-height:340px;              /* PCの天地を抑える。不要なら削除 */
  object-fit:contain;
  object-position:top center;
}
.kbundle-noimage{
  display:flex; width:100%; aspect-ratio:1/1.2; background:#f0f0f0;
  align-items:center; justify-content:center;
  color:#999; font-size:.85rem;
}

/* 情報：テーマの段落マージンを打ち消す */
.kbundle-item .kbundle-info p{ margin:0; }

.kbundle-item .kbundle-info .kbundle-title{
  font-size:1.25rem; font-weight:700; line-height:1.45;
  margin:0 0 .5em; color:#1d1d1f;
}
.kbundle-item .kbundle-info .kbundle-author,
.kbundle-item .kbundle-info .kbundle-vols,
.kbundle-item .kbundle-info .kbundle-pay,
.kbundle-item .kbundle-info .kbundle-point{
  font-size:1rem; line-height:1.75; color:#444;
}
.kbundle-item .kbundle-info .kbundle-author{ margin:0 0 .35em; }
.kbundle-item .kbundle-info .kbundle-vols{ margin:0 0 .8em; }
.kbundle-item .kbundle-info .kbundle-pay{ margin:0 0 .3em; }
.kbundle-item .kbundle-info .kbundle-point{ margin:0 0 .3em; }

/* 完結ラベル */
.kbundle-tag{
  display:inline-block; background:#222; color:#fff;
  font-size:.78rem; font-weight:600; line-height:1;
  padding:.34em .6em .3em; border-radius:6px;
  margin-left:.45rem; vertical-align:.08em; white-space:nowrap;
}

/* 還元率ラベル */
.kbundle-label{
  display:inline-block; background:#ffe6ea; color:#ff2d55;
  font-size:.88rem; font-weight:600; line-height:1;
  padding:.32em .55em .28em; border-radius:6px;
  margin-left:.45rem; vertical-align:.05em; white-space:nowrap;
}

/* 主価格 */
.kbundle-item .kbundle-info .kbundle-main{ margin:.5em 0 0; line-height:1.4; }
.kbundle-price{ color:#ff2d55; font-weight:800; font-size:1.65rem; }
.kbundle-avg{
  font-size:.95rem; color:#555;
  margin-left:.55rem; white-space:nowrap;
}

/* 備考 */
.kbundle-item .kbundle-info .kbundle-note{
  background:#f5f5f6; border-radius:8px;
  padding:.65em 1em; margin:.8em 0 0;
  font-size:.95rem; line-height:1.6; color:#444;
}

/* ボタン */
.kbundle-item .kbundle-info .kbundle-btn{
  display:block; width:100%; box-sizing:border-box;
  background:#FFA41C; color:#111;
  text-align:center; text-decoration:none;
  padding:.9rem 1.2rem; font-weight:800;
  border-radius:12px; border:none;
  margin:1.1em 0 0;
  transition:filter .12s ease, transform .05s ease;
}
.kbundle-item .kbundle-info .kbundle-btn:hover{ filter:brightness(.92); }
.kbundle-item .kbundle-info .kbundle-btn:active{ transform:translateY(1px); }

/* ===== モバイル ===== */
@media (max-width:768px){
  .kbundle-item{ padding:1rem; margin:.9rem 0; }

  /* 縦積み。DOM順どおり 表紙 → 情報（ボタン込み） */
  .kbundle-item .kbundle-cover{
    float:none; width:100%; margin:0 0 .9em;
  }
  .kbundle-item .kbundle-info{ margin-left:0; }

  /* 縦長表紙の頭打ち。横長montageは届かないので影響なし */
  .kbundle-item .kbundle-cover img{
    max-height:300px;
    object-position:center;
  }

  .kbundle-item .kbundle-info .kbundle-title{ font-size:1.1rem; margin:0 0 .4em; }
  .kbundle-price{ font-size:1.45rem; }
  .kbundle-item .kbundle-info .kbundle-author,
  .kbundle-item .kbundle-info .kbundle-vols,
  .kbundle-item .kbundle-info .kbundle-pay,
  .kbundle-item .kbundle-info .kbundle-point{ font-size:.95rem; }
  .kbundle-item .kbundle-info .kbundle-vols{ margin:0 0 .6em; }
  .kbundle-item .kbundle-info .kbundle-btn{ margin:1em 0 0; }
}



/* =========================================================
   new.css  — companion CSS for kindle_new.html
   CSS prefix: knew-
   新刊まとめリスト用。ガジェット版(kgadget-)をベースに:
     - H2見出しなし
     - 価格は取り消し線なし、赤太字「N円」表記
   ========================================================= */

.knew-container {
  margin: 0 0 32px;
  color: #222;
  line-height: 1.6;
}

/* -------- カード -------- */
.knew-card {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 20px;
  padding: 16px;
  margin: 0 0 20px;
  background: #fff;
  border: 1px solid #e3e6ea;
  border-radius: 8px;
  align-items: start;
}

.knew-image {
  grid-column: 1;
  grid-row: 1;
}
.knew-image a { display: block; }
.knew-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
}

.knew-info {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
}

/* -------- タイトル・発売元 -------- */
.knew-title {
  font-size: 1.1em;
  font-weight: bold;
  margin: 0 0 4px;
  line-height: 1.35;
}
.knew-maker {
  font-size: 0.9em;
  color: #666;
  margin: 0 0 12px;
}

/* -------- 価格（赤太字、取り消し線なし） -------- */
.knew-price {
  color: #d00;
  font-weight: bold;
  font-size: 1.25em;
  margin: 0 0 12px;
}

/* -------- 発売日など -------- */
.knew-specs {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 12px;
  row-gap: 4px;
  margin: 0 0 12px;
  padding: 10px 12px;
  background: #f8f9fb;
  border-radius: 6px;
  font-size: 0.92em;
}
.knew-specs dt {
  color: #666;
  font-weight: normal;
  margin: 0;
}
.knew-specs dd {
  margin: 0;
  color: #222;
}

/* -------- ボタン -------- */
.knew-btn-wrap { margin: 0; }
.knew-btn {
  display: inline-block;
  padding: 10px 22px;
  background: linear-gradient(180deg, #ffa841 0%, #ff8a00 100%);
  color: #fff !important;
  font-weight: bold;
  text-decoration: none !important;
  border-radius: 6px;
  font-size: 0.98em;
  border: 1px solid #e07a00;
  box-shadow: 0 1px 0 rgba(0,0,0,0.05);
}
.knew-btn:hover { opacity: 0.9; }

/* -------- モバイル -------- */
@media (max-width: 768px) {
  .knew-card {
    grid-template-columns: 1fr;
    padding: 12px;
    gap: 12px;
  }
  .knew-image {
    grid-column: 1; grid-row: 1;
    max-width: 200px;
    margin: 0 auto;
  }
  .knew-info {
    grid-column: 1; grid-row: 2;
  }
  .knew-title { font-size: 1.05em; }
  .knew-price { font-size: 1.2em; }
  .knew-specs { font-size: 0.88em; padding: 8px 10px; }
  .knew-btn { display: block; text-align: center; padding: 12px; }
}



/* =========================================================
   gadget.css  — companion CSS for kindle_gadget.html
   CSS prefix: kgadget-
   WordPress の style.css / 追加CSS 等に読み込ませて使用。
   ========================================================= */

.kgadget-container {
  margin: 0 0 32px;
  color: #222;
  line-height: 1.6;
}

/* -------- H2 見出し -------- */
.kgadget-h2 {
  margin: 32px 0 16px !important;
  padding: 10px 14px !important;
  font-size: 1.35em !important;
  font-weight: bold !important;
  color: #222 !important;
  background: #f2f5f8 !important;
  border-left: 5px solid #2b7cff !important;
  border-bottom: none !important;
  line-height: 1.4 !important;
}

/* -------- カード -------- */
.kgadget-card {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 20px;
  padding: 16px;
  margin: 0 0 20px;
  background: #fff;
  border: 1px solid #e3e6ea;
  border-radius: 8px;
  align-items: start;
}

.kgadget-image {
  grid-column: 1;
  grid-row: 1;
}
.kgadget-image a {
  display: block;
}
.kgadget-image img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 4px;
}

.kgadget-info {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
}

/* -------- タイトル・メーカー -------- */
.kgadget-title {
  font-size: 1.1em;
  font-weight: bold;
  margin: 0 0 4px;
  line-height: 1.35;
}
.kgadget-maker {
  font-size: 0.9em;
  color: #666;
  margin: 0 0 12px;
}

/* -------- 価格ブロック -------- */
.kgadget-price {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin: 0 0 12px;
}
.kgadget-list {
  color: #888;
  text-decoration: line-through;
  font-size: 0.95em;
}
.kgadget-arrow {
  color: #888;
  font-size: 0.95em;
}
.kgadget-sale {
  color: #d00;
  font-weight: bold;
  font-size: 1.25em;
}
.kgadget-discount {
  display: inline-block;
  padding: 2px 8px;
  background: #ffe4ec;
  color: #d0006f;
  font-weight: bold;
  font-size: 0.85em;
  border-radius: 4px;
  line-height: 1.4;
}
.kgadget-price-single {
  color: #222;
  font-weight: bold;
  font-size: 1.2em;
}

/* -------- スペック -------- */
.kgadget-specs {
  display: grid;
  grid-template-columns: max-content 1fr;
  column-gap: 12px;
  row-gap: 4px;
  margin: 0 0 12px;
  padding: 10px 12px;
  background: #f8f9fb;
  border-radius: 6px;
  font-size: 0.92em;
}
.kgadget-specs dt {
  color: #666;
  font-weight: normal;
  margin: 0;
}
.kgadget-specs dd {
  margin: 0;
  color: #222;
}

/* -------- 紹介文 -------- */
.kgadget-desc {
  margin: 0 0 14px !important;
  font-size: 0.95em;
  color: #333;
  line-height: 1.7;
}

/* -------- ボタン -------- */
.kgadget-btn-wrap {
  margin: 0;
}
.kgadget-btn {
  display: inline-block;
  padding: 10px 22px;
  background: linear-gradient(180deg, #ffa841 0%, #ff8a00 100%);
  color: #fff !important;
  font-weight: bold;
  text-decoration: none !important;
  border-radius: 6px;
  font-size: 0.98em;
  border: 1px solid #e07a00;
  box-shadow: 0 1px 0 rgba(0,0,0,0.05);
}
.kgadget-btn:hover {
  opacity: 0.9;
}

/* -------- モバイル -------- */
@media (max-width: 768px) {
  .kgadget-card {
    grid-template-columns: 1fr;
    padding: 12px;
    gap: 12px;
  }
  .kgadget-image {
    grid-column: 1;
    grid-row: 1;
    max-width: 200px;
    margin: 0 auto;
  }
  .kgadget-info {
    grid-column: 1;
    grid-row: 2;
  }
  .kgadget-title {
    font-size: 1.05em;
  }
  .kgadget-sale {
    font-size: 1.2em;
  }
  .kgadget-specs {
    font-size: 0.88em;
    padding: 8px 10px;
  }
  .kgadget-btn {
    display: block;
    text-align: center;
    padding: 12px;
  }
}


/* ===== Kindleセール（block.css） ===== */


/* ===============================
   本体
=============================== */
.ksale-item{
  padding:1.6rem 0;
  margin:1.8rem 0;
  border:0;
  display:flow-root;
}


/* ===============================
   タイトル（フォントはテーマ準拠）
=============================== */
.ksale-title{
  margin:0 0 1em 0;
}


/* ===============================
   レイアウト（CSS Grid 2カラム）
   DOM順: info → cover → btn
   PC表示: cover(左) | info+btn(右)
=============================== */
.ksale-layout{
  display:grid;
  grid-template-columns:380px 1fr;
  gap:1.2em;
  align-items:start;
}


/* ===============================
   画像（PC: 左カラム全段）
=============================== */
.ksale-cover{
  grid-column:1;
  grid-row:1 / 3;
}

.ksale-cover-link{
  display:block;
}

.ksale-cover img{
  width:100%;
  height:auto;
  display:block;
}


/* ===============================
   作品情報（PC: 右カラム上段）
=============================== */
.ksale-info{
  grid-column:2;
  grid-row:1;
  font-size:1.1rem;
  margin:0;
}

.ksale-info ul{
  margin:0 !important;
  padding:0 0 0 1.2em !important;
}

.ksale-info li{
  margin:.25rem 0;
  line-height:1.5;
}

.ksale-info li:first-child{
  margin-top:0;
}

.ksale-info strong{
  font-weight:600;
}


/* ===============================
   価格強調
=============================== */
.ksale-price{
  color:#ff2d55;
  font-weight:800;
  font-size:1.2rem;
}

.ksale-label{
  background:#ffe6ea;
  color:#ff2d55;
  font-size:.88rem;
  padding:.12rem .45rem;
  border-radius:6px;
  margin-left:.4rem;
}

.ksale-sub{
  display:inline;
  white-space:nowrap;
  font-size:.95rem;
  opacity:.8;
  margin-left:.35rem;
}


/* ===============================
   CTAボタン（PC: 右カラム下段）
=============================== */
.ksale-btn{
  grid-column:2;
  grid-row:2;
  align-self:start;

  display:block;
  width:100%;
  box-sizing:border-box;

  background:#FFA41C;
  color:#111;
  border:none;

  text-align:center;
  text-decoration:none;

  padding:1rem 1.2rem;
  font-weight:800;

  border-radius:12px;

  transition:filter .12s ease, transform .05s ease;
}

.ksale-btn:hover{
  filter:brightness(.92);
}

.ksale-btn:active{
  transform:translateY(1px);
}


/* ===============================
   画像なしプレースホルダー
=============================== */
.ksale-noimage{
  width:100%;
  aspect-ratio:1 / 1.2;
  background:#f0f0f0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#999;
  font-size:.85rem;
}


/* ===============================
   スマホ（768px以下で1カラム）
   DOM順のまま: info → cover → btn
=============================== */
@media (max-width:768px){

  .ksale-item{
    padding:.6rem 0;
    margin:.8rem 0;
  }

  .ksale-title{
    margin:0 0 .5em 0;
  }

  .ksale-layout{
    grid-template-columns:1fr;
    gap:.8em;
  }

  .ksale-info{
    grid-column:1;
    grid-row:auto;
    margin:0;
  }

  .ksale-cover{
    grid-column:1;
    grid-row:auto;
    max-width:520px;
  }

  .ksale-btn{
    grid-column:1;
    grid-row:auto;
    width:100% !important;
    max-width:100% !important;
  }
}

/* ===== Kindle技術書セール（tech.css） ===== */


/* ===============================
   本体
=============================== */
.ktech-item{
  padding:1.6rem 0;
  margin:1.8rem 0;
  border:0;
  display:flow-root;
}


/* ===============================
   タイトル（フォントはテーマ準拠）
=============================== */
.ktech-title{
  margin:0 0 1em 0;
}


/* ===============================
   レイアウト（CSS Grid 2カラム）
   DOM順: info → cover → desc → btn
   PC表示: cover(左) | info+desc+btn(右)
=============================== */
.ktech-layout{
  display:grid;
  grid-template-columns:380px 1fr;
  gap:1.2em;
  align-items:start;
}


/* ===============================
   画像（PC: 左カラム全段）
=============================== */
.ktech-cover{
  grid-column:1;
  grid-row:1 / 4;
}

.ktech-cover-link{
  display:block;
}

.ktech-cover img{
  width:100%;
  height:auto;
  display:block;
}


/* ===============================
   作品情報（PC: 右カラム上段）
=============================== */
.ktech-info{
  grid-column:2;
  grid-row:1;
  font-size:1.1rem;
  margin:0;
}

.ktech-info ul{
  margin:0 !important;
  padding:0 0 0 1.2em !important;
}

.ktech-info li{
  margin:.25rem 0;
  line-height:1.5;
}

.ktech-info li:first-child{
  margin-top:0;
}

.ktech-info strong{
  font-weight:600;
}


/* ===============================
   価格強調
=============================== */
.ktech-price{
  color:#ff2d55;
  font-weight:800;
  font-size:1.2rem;
}

.ktech-label{
  background:#ffe6ea;
  color:#ff2d55;
  font-size:.88rem;
  padding:.12rem .45rem;
  border-radius:6px;
  margin-left:.4rem;
}

.ktech-sub{
  display:inline;
  white-space:nowrap;
  font-size:.95rem;
  opacity:.8;
  margin-left:.35rem;
}


/* ===============================
   紹介文（PC: 右カラム中段）
=============================== */
.ktech-desc{
  grid-column:2;
  grid-row:2;
  margin:.8em 0 0 0;
  font-size:.95rem;
  line-height:1.65;
  color:#444;
}


/* ===============================
   CTAボタン（PC: 右カラム下段）
=============================== */
.ktech-btn{
  grid-column:2;
  grid-row:3;
  align-self:start;
  margin-top:.8em;

  display:block;
  width:100%;
  box-sizing:border-box;

  background:#FFA41C;
  color:#111;
  border:none;

  text-align:center;
  text-decoration:none;

  padding:1rem 1.2rem;
  font-weight:800;

  border-radius:12px;

  transition:filter .12s ease, transform .05s ease;
}

.ktech-btn:hover{
  filter:brightness(.92);
}

.ktech-btn:active{
  transform:translateY(1px);
}


/* ===============================
   画像なしプレースホルダー
=============================== */
.ktech-noimage{
  width:100%;
  aspect-ratio:1 / 1.4;
  background:#f0f0f0;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#999;
  font-size:.85rem;
}


/* ===============================
   スマホ（768px以下で1カラム）
   DOM順のまま: info → cover → desc → btn
=============================== */
@media (max-width:768px){

  .ktech-item{
    padding:.6rem 0;
    margin:.8rem 0;
  }

  .ktech-title{
    margin:0 0 .5em 0;
  }

  .ktech-layout{
    grid-template-columns:1fr;
    gap:.8em;
  }

  .ktech-info{
    grid-column:1;
    grid-row:auto;
    margin:0;
  }

  .ktech-cover{
    grid-column:1;
    grid-row:auto;
    max-width:520px;
  }

  .ktech-desc{
    grid-column:1;
    grid-row:auto;
    margin:0;
  }

  .ktech-btn{
    grid-column:1;
    grid-row:auto;
    width:100% !important;
    max-width:100% !important;
    margin-top:0;
  }
}


/* ===== Kindle小説セール（novel.css） ===== */


/* ===============================
   本体
=============================== */
.knovel-item{
  padding:1.6rem 0;
  margin:1.8rem 0;
  border:0;
  display:flow-root;
}


/* ===============================
   タイトル（フォントはテーマ準拠）
=============================== */
.knovel-title{
  margin:0 0 1em 0;
}


/* ===============================
   レイアウト（CSS Grid 2カラム）
   DOM順: info → cover(+comment) → btn
   PC表示: info(左上) | cover(右・全段)
           btn(左下)
=============================== */
.knovel-layout{
  display:grid;
  grid-template-columns:300px 1fr;
  gap:1.2em 1.4em;
  align-items:start;
}


/* ===============================
   作品情報（PC: 右カラム上段）
=============================== */
.knovel-info{
  grid-column:2;
  grid-row:1;
  font-size:1.05rem;
  margin:0;
}
.knovel-info ul{
  margin:0 !important;
  padding:0 0 0 1.2em !important;
}
.knovel-info li{
  margin:.3rem 0;
  line-height:1.6;
}
.knovel-info li:first-child{ margin-top:0; }


/* ===============================
   価格表示
=============================== */
.knovel-price{
  font-weight:700;
  font-size:1.15em;
  color:#c0392b;
}


/* ===============================
   ラベル（n%オフ / nn%還元）
   ピンク背景・赤太字
=============================== */
.knovel-label{
  display:inline-block;
  background:#ffe0ec;
  color:#c8102e;
  font-weight:700;
  font-size:.85em;
  padding:.05em .5em;
  border-radius:4px;
  margin-left:.3em;
  vertical-align:middle;
}


/* ===============================
   表紙（PC: 左カラム全段）
=============================== */
.knovel-cover{
  grid-column:1;
  grid-row:1 / 3;
  margin:0;
}
.knovel-cover-link{
  display:block;
}
.knovel-cover img{
  width:100%;
  height:auto;
  display:block;
}
.knovel-noimage{
  width:100%;
  aspect-ratio:2/3;
  background:#f0f0f3;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#86868b;
  font-size:.9rem;
}


/* ===============================
   コメント（表紙の下）
=============================== */
.knovel-comment{
  margin:.6em 0 0 0;
  font-size:.9rem;
  line-height:1.65;
  color:#333;
}


/* ===============================
   CTAボタン（PC: 右カラム下段）
=============================== */
.knovel-btn{
  grid-column:2;
  grid-row:2;
  display:inline-block;
  background:#ff9900;
  color:#fff !important;
  text-decoration:none;
  padding:.75em 1.5em;
  border-radius:6px;
  font-weight:700;
  align-self:end;
  justify-self:start;
}
.knovel-btn:hover{
  background:#e88b00;
}


/* ===============================
   モバイル（≤768px）
   縦積み：info → cover(+comment) → btn
   価格情報を先に見せる（衝動購入導線）
=============================== */
@media (max-width:768px){
  .knovel-item{
    padding:.6rem 0;
    margin:.8rem 0;
  }
  .knovel-title{
    margin:0 0 .5em 0;
  }
  .knovel-layout{
    grid-template-columns:1fr;
    gap:.8em;
  }
  .knovel-info{
    grid-column:1;
    grid-row:1;
  }
  .knovel-cover{
    grid-column:1;
    grid-row:2;
    max-width:420px;
    margin:0 auto;
  }
  .knovel-btn{
    grid-column:1;
    grid-row:3;
    width:100%;
    text-align:center;
    justify-self:stretch;
  }
}

/* ★★★★★★★★★★★★★★★★★★★★★ */

.shoplinkbtn1 a{background:#ea1e1e;}

/* 記事見出しH2 */
.article h2 {
    background: #007b43;
	color: #fff;
	margin-top:5em;
}


/* マンガ用 */
.comic {font-size: 0.8em;}
.comic td {font-weight: bold; text-align: center;width:50%;}



/* 動画センタリング */
.video-container {
margin: 0px auto;
}

/* 囲みボックス01(LinckBox) */
.linkbox {
background-color: #ffffff;
border: 1px #80b600 solid;
margin: 3em 0;

}

.linkbox h3 {
    margin: 0;
    padding: 6px 10px;
    background-color: #f1f8e0;
    border-bottom: 1px #80b600 solid;
    border-top: none;
    border-left: none;
    border-right: none;
    font-size: 100%;
    color: #80b600;
}

.linkbox ul {
margin: 10px;
line-height: 200%;
padding-left: 20px;
}

.linkbox br {
display: none;
}

/* 囲みボックス02(TopBox) */
.topbox {
background-color: #ffffff;
border: 1px #e61e1e solid;
margin-bottom: 2em;
}

.topbox h3 {
    margin: 0;
    padding: 6px 10px;
    background-color: #e61e1e;
    border-bottom: 1px #e61e1e solid;
    border-top: none;
    border-right: none;
    border-left: none; 
   font-size: 90%;
    color: #ffffff;
}

.topbox ul {
margin: 1em 10px;
line-height: 200%;
padding-left: 0;
list-style-type:disc;
}

/* 囲みボックス03(InfoBox) */
.infobox {
background-color: #ffffff;
border: 1px #fcb201 solid;
margin-bottom: 2em;
overflow:visible;
font-size:0.9em;
}
.infobox p{
margin: 16px;
}

.infobox h3 {
    margin: 0;
    padding: 6px 10px;
    background-color: #fcb201;
    border-bottom: 1px #fcb201 solid;
    border-top: none;
    border-left: none;
    border-right: none;
    font-size: 1.2em;
    color: #000000;
}

.infobox h3::before{
    font-family: 'FontAwesome';
    font-size: 1.3em;
    content: '\f05a';
    margin-right: 5px;
}

.infobox ul {
margin: 1em 10px;
line-height: 200%;
padding-left: 20px;
list-style-type:disc;
}

/* ボタン */
.linkbtn a{
display:block;
margin:0 auto;
margin-top:2em;
background:#febd69;
text-align:center;
text-decoration:none;
color:#333;
font-weight:bold;
font-size:1.1em;
border-radius: 5px;
padding: 8px 0 6px 0;
border-bottom: 3px solid #d18e38;
}

.linkbtn a:hover{
    opacity: 0.5;
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
}

.linkbtn br{
display: none;
}

.linkbtn-u a{
display:block;
margin:0 auto;
margin-top:0.6em;
background:#ed1717;
text-align:center;
text-decoration:none;
color:#f9f9f9;
font-weight:bold;
font-size:1.1em;
border-radius: 5px;
padding: 8px 0 6px 0;
}

.linkbtn-u a:hover{
    opacity: 0.5;
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
}

.linkbtn-u br{
display: none;
}

.graph .bar {height: 1.8em;}
.benchsheet2{font-size:0.8em! important;}

.btn-off a {
    display: block;
    margin: 0 auto;
    margin-top: 0.6em;
    background: #0e83df;
    text-align: center;
    text-decoration: none;
    color: #f9f9f9;
    font-weight: 700;
    font-size: 1em;
    border-radius: 3px;
    padding: 9px 0;
    height: 2.8em;
}
.btn-off a:hover{ opacity: 0.5;   filter: alpha(opacity=50);   -moz-opacity: 0.5;}
.btn-off br{display: none;}

.btn-amzn a { display: block;    margin: 0 auto;    margin-top: 0.8em;    background: #f69e2e;    text-align: center;    text-decoration: none;    color: #f9f9f9;    font-weight: bold;    font-size: 1em;    border-radius: 3px;    padding: 9px 0 ; height: 2.8em;  }
.btn-amzn a:hover{ opacity: 0.5;   filter: alpha(opacity=50);   -moz-opacity: 0.5;}
.btn-amzn br{display: none;}

.btn-raku a { display: block;    margin: 0 auto;    margin-top: 0.8em;    background: #DC143C;    text-align: center;    text-decoration: none;    color: #f9f9f9;    font-weight: bold;    font-size: 1em;    border-radius: 3px;    padding: 9px 0 ; height: 2.8em;  }
.btn-raku a:hover{ opacity: 0.5;   filter: alpha(opacity=50);   -moz-opacity: 0.5;}
.btn-raku br{display: none;}

.btn-pay a { display: block;    margin: 0 auto;    margin-top: 0.8em;    background: #34a92c;    text-align: center;    text-decoration: none;    color: #f9f9f9;    font-weight: bold;    font-size: 1em;    border-radius: 3px;    padding: 9px 0 ;   height: 2.8em;}
.btn-pay a:hover{ opacity: 0.5;   filter: alpha(opacity=50);   -moz-opacity: 0.5;}
.btn-pay br{display: none;}


/* ベンチマーク表（文字縮小版） */
.benchsheet2{
font-size:0.9em;
line-height:1.5em;
width:100%;
word-break: break-word;
margin-top: 0 !important;
}

.benchsheet2 th{
background:#e8e8e8;
text-align:left;
padding-left:20px;
}

.benchsheet2 td{
text-align:left;
}


.benchsheet2 .tdcenter{
text-align:center;
}

.benchsheet2 .thum{
width:100px;
padding:0;
text-align:left;
}

.benchsheet2 .thum img{
    margin: 0 1em 0 0 !important;
}


.benchsheet2 .bench-midashi{
background-color:#656565;
font-weight:bold;
color:#fff;
}

/* ベンチマーク表（改良版） */

.benchsheet3{
font-size:0.9em;
line-height:1.5em;
width:100%;
margin-top: 0 !important;
margin-bottom: 0 !important;
}

.benchsheet3 tr{
border-bottom:1px solid #a4a4a4;
	
}

.benchsheet3 th{
padding:12px;
min-width: 120px;
vertical-align: text-top;
text-align: left;
border:none;
background-color:#fff;
	width:40%;
}

.benchsheet3 td{
padding:12px 12px 12px 0;
border:none;
}

/* 棒グラフ */
.graph {
    position: relative; /* IE is dumb */
/*    width: 300px; */
    padding: 2px;
	display: flex;
	align-items: center;
}

.graph .bar {
    display: block;
    position: relative;
    background: #4a99e3;
    text-align: center;
    color: #f0ffff;
    height: 2em;
    line-height: 2em;
}
.graph .bar span { position: absolute; left: 1em; }

/* キャンペーンリンク */

.campaign-box {
  padding: 10px; 
  border:  1px solid #ccc;
margin-bottom:1em;
}
.campaign-box:after {
    content: '';
    display: block;
    clear: both;
}

.campaign-box img {
  max-width: 100%;
}

.campaign-box > div {
  float:  left;
  width: 50%;
}

.campaign-box-left {
  padding-left: 0;
}

.campaign-box-left p{
  margin: 0;
}

.campaign-box-left-300px {
  padding-left: 0;
}



.campaign-box-right {
  position: relative;
}


.campaign-box-right ul{
    padding-left: 0;
    line-height: 1.9em;
    font-size: 1em;
    list-style-type: none;
    margin-bottom: 25px;
}

.campaign-box-right li{
    border-bottom: 1px dashed #ccc;
}


.campaign-box-right h4 {
    margin: 0 0 10px 0;
    padding: 0;
border:none;
}

.campaign-box-left h4 {
    margin: 0 0 10px 0;
    padding: 0;
border:none;
}




.campaign-box-right p {
  font-size: 16px;
margin:0;
}

.campaign-box-right .campaign-btn {
    font-size:18px;
    text-decoration:none;
    letter-spacing: 1px;
    display:block;
    text-align:center;
margin-top:10px;    
padding: 10px 20px;
    color:#fff;
    background-color:#4479b8;

	border-radius:5px;
}

.campaign-box-right .campaign-btn a {
  text-decoration: none;
font-weight:bold;
  color:  #fff;
  display: block;
}

.campaign-box-right .campaign-btn br {
  display: none;
}

.campaign-box-right .campaign-btn a:hover{
    opacity: 0.5;
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
}


/* ほかの場所用 */
.float-box-right {
position: relative;
margin-left: 20px;
width:90%;
}


@media screen and (max-width: 720px) {

  .campaign-box > div {
    width: 100%;
  }
  .campaign-box-right {
    margin-top: 10px;
  }

  .campaign-box-right .campaign-label {
    right: -20px; 
  }


  .campaign-box-right ul {
    padding-left:0 !important; 
  }

.linkbox br {display: none;}
	.topbox ul{padding-left:0;	}

}

@media screen and (max-width: 440px) {


	.topbox ul{padding-left:0 !important;	}

}


.item{width:80px !important;}

/* 目次 */

.contents-box {
    background-color: #f1f1f1;
    margin: 0;
    padding: 15px;
    font-size: 95%;
}

.contents-box .midashi{
    border-bottom: 1px solid #ddd;
    margin: 0;
font-weight:bold;
}

.contents-box .midashi::before{
    font-family: 'FontAwesome';
    content: '\f046';
    margin-right: 5px;
    color: #80b600;
}


.contents-box ul{
list-style: none;
line-height:1.8em;
}

.contents-box .parent-list{
padding-left:0;
}

.contents-box .parent-list li{
font-weight:bold;
}


.contents-box .parent-list a{
text-decoration:none;
}

.contents-box .child-list a{
text-decoration:none;
}


.contents-box .child-list{
padding-left:10px;
}


.contents-box .child-list-item::before{
    font-family: 'FontAwesome';
    content: '\f105';}

/* 見だし */
.sheet-midashi{
margin-bottom: 0 !important;
font-weight:bold;
}

/* キャプション */
.wp-caption {
    border: none;
    border-radius: 0px;
    background-color: #fff;
    text-align: left;
}

.wp-caption-text{text-align:left;font-size: 0.85em;}
	
/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
