@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
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
.video-container {
  margin: 0px auto;
}

.post-17 .date-tags {
  display: none;
}

.logo-image {
  margin: 0px;
  padding: 0px;
}

.logo-header {
  margin: 8px;
  padding: 0px;
  height: 65px;
}

.site-name-text {
  margin: 0px;
  padding: 0px;
}

.tagline {
  margin: 5px 0 0px 0;
  font-size: 14px;
}

.article h1 {
  font-size: 17px;
}

.article h2 {
  font-size: 16px;
  margin-top: 1.0em;
  margin-bottom: 1.0em;
}

.article h3 {
  font-size: 15px;
  margin-top: 1.0em;
  margin-bottom: 1.0em;
}

.article h4 {
  font-size: 15px;
  margin-top: 1.0em;
  margin-bottom: 1.0em;
}

.article h5 {
  font-size: 15px;
  margin-top: 1.0em;
  margin-bottom: 1.0em;
}

/*吹き出しアイコンサイズPC*/
.speech-person {
    width: 120px;
}

/*吹き出しアイコンサイズスマホ*/
@media screen and (max-width: 480px){
  .speech-person {
    width: 80px;
    min-width: 80px;
  }
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/* ▼PC：各項目の横余白を詰める */
@media (min-width: 1024px){
  .mc2-ul-mb {
    padding: 0;
    margin: 0 0 0 1.25em !important;
  }
}

/* スマホ */
@media screen and (max-width: 767px) {
  .video-container {
    width: 95% !important;
    max-width: 95% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .video-container .video iframe {
    width: 100% !important;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
    display: block;
  }
  .mc2-ul-mb {
    padding: 0;
    margin: 0 0 0 -0.25em !important;
  }
}

/* タブレット */
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .video-container {
    width: 95% !important;
    max-width: 95% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .video-container .video iframe {
    width: 100% !important;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
    display: block;
  }
  
  .mc2-ul-mb {
    padding: 0;
    margin: 0 0 0 0em !important;
  }
}

.page-id-5625 .entry-title,
.page-id-5679 .entry-title,
.page-id-5050 .entry-title,
.page-id-5057 .entry-title,
.page-id-17 .entry-title,
.page-id-107 .entry-title,
.page-id-131 .entry-title,
.page-id-253 .entry-title,
.page-id-266 .entry-title,
.page-id-333 .entry-title,
.page-id-385 .entry-title,
.page-id-1981 .entry-title,
.page-id-2180 .entry-title,
.page-id-1401 .entry-title {
  display: none;
}

/* チェックマーク付きリスト項目 */
ul.check-list li {
  list-style: none;
  position: relative;
  padding-left: 1.4em;
}

ul.check-list-mb li {
  list-style: none;
  position: relative;
  padding-left: 0.5em;
}

/* チェックマーク付きリスト */
ul.check-list li::before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  color: #2ecc71;
}

ul.check-list-mb li::before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: -1em;
  color: #2ecc71;
}

/* グローバルナビ全体 */
#navi {
  all: unset;
  display: block !important;
  width: 100% !important;
  background-color: #ff3333 !important; /* 空色 */
  text-align: center !important;
  border: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ナビ内コンテナ */
#navi .navi-in {
  all: unset;
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 32px !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 auto !important;
}

/* ロゴ部分 */
.logo-header {
  all: unset;
  display: block !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* ロゴ疑似要素を完全破壊 */
.logo-header::before,
.logo-header::after {
  display: none !important;
  content: none !important;
}

/* header-container-in も全無力化 */
#header-container-in,
.header-container-in {
  all: unset;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* 通常状態 */
#navi ul li a {
  color: #ffffff !important;             /* 通常白 */
  text-decoration: none !important;      /* 下線なし */
  transition: none !important;           /* アニメーションなし */
  position: relative !important;         /* 疑似要素潰すための前提 */
}

#navi ul li a:hover {
  color: #ffb300 !important;  /* ← マジでまっきっき */
}

/* 下線の疑似要素を完全に削除 */
#navi ul li a::after {
  content: none !important;
  display: none !important;
}

.main-links-wrapper {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  margin-bottom: 10px;
  font-size: 0.95em;
}

.main-links-wrapper a {
  color: #005bbb;
  text-decoration: none;
}

.main-links-wrapper a:hover {
  text-decoration: underline;
}



/* RPWEタイトルの下線を完全に消す */
.rpwe-block li a {
  text-decoration: none !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* 擬似要素での線やアイコンを削除 */
.rpwe-block li a::before,
.rpwe-block li a::after {
  content: none !important;
  background: none !important;
  border: none !important;
  display: none !important;
}

/* 日付を左に、タイトル右に並べる */
.rpwe-block li {
  display: flex !important;
  align-items: center !important;
  gap: 0.5em !important;
  border: none !important;
  margin-left: 1.0em !important;
}

/* 日付のスタイル */
.rpwe-block li time,
.rpwe-block li .rpwe-time {
  order: -1;
  white-space: nowrap;
  color: #666;
  font-size: 15px;
}

/* RPWEのタイトルh3の下線を消す */
.rpwe-block h3 {
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  background-image: none !important;
  margin: 0;
  padding: 0;
}

/* h3内のリンクの下線も消す */
.rpwe-block h3 a {
  text-decoration: none !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  background-image: none !important;
  font-size: 15px;
  margin: 0 !important;
  padding: 0 !important;
}

/* hover時の下線も消す */
.rpwe-block h3 a:hover {
  border-bottom: none !important;
}

/* 本文 */
p.content_text {
  padding: 0;
  margin: 0.5em 1em 1em 1em;
}

/* 本文（最後） */
p.content_text_last {
  padding: 0;
  margin: 0.5em 1em 0 1em;
}

/* 画像 */
div.content_image {
  padding: 0 !important;
}

/* 画像 (mobile) */
div.content_image_mb {
  padding: 0 !important;
  margin: 0 auto !important;
  width: 90%;
}

/* 画像TOP (mobile) */
div.content_image_mb_top {
  padding: 0 !important;
  margin: auto 0 !important;
  width: 100%;
}

/* 本文（テーブル内） */
p.content_table_text {
  padding: 0 0;
  margin: 0 0 1em 0.5em;
}

.mc2-link-list {
list-style: none;
padding-left: 1em;
margin: 0;
}

.mc2-link-list li {
margin: 0.35em 0;
}

.mc2-link-list a {
text-decoration: underline;
}

.mc2-link-list i {
margin-right: 0.45em;
font-size: 0.9em;
}

h2.icon-title {
  display: grid;
  grid-template-columns: 1.4em 1fr; /* 左：アイコン固定幅 / 右：本文 */
  column-gap: 0.35em;
  align-items: baseline;
	
  padding-left: 0.25em !important;
  line-height: 1.4;
  color: #0000ff;
  padding-bottom: 0.4em;
  font-family: inherit !important;
}

h2.icon-title::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.4em;
  text-align: center;
  line-height: 1;
}

h3.icon-title {
  display: grid;
  grid-template-columns: 1.4em 1fr; /* 左：アイコン固定幅 / 右：本文 */
  column-gap: 0.35em;
  align-items: baseline;
	
  padding-left: 0.25em !important;
  line-height: 1.4;
  color: #0000ff;
  padding-bottom: 0.4em;
  font-family: inherit !important;
}


h3.icon-title::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.4em;
  text-align: center;
  line-height: 1;
}

h4.icon-title {
  display: grid;
  grid-template-columns: 1.4em 1fr; /* 左：アイコン固定幅 / 右：本文 */
  column-gap: 0.35em;
  align-items: baseline;
	
  padding-left: 0.25em !important;
  line-height: 1.4;
  color: #0000ff;
  padding-bottom: 0.4em;
  font-family: inherit !important;
}


h4.icon-title::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.4em;
  text-align: center;
  line-height: 1;
}

li.icon-title {
  display: grid;
  grid-template-columns: 1.8em 1fr; /* 左：アイコン固定幅 / 右：本文 */
  column-gap: 0.55em;
  align-items: baseline;
  padding-left: 0.25em !important;
  padding-right: 0.25em !important;
  line-height: 1.4;
  color: #555555;
  padding-bottom: 0;
  font-family: inherit !important;
}

li.icon-title::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1em;
  text-align: center;
  line-height: 1;
}

span.icon-title {
  display: grid;
  grid-template-columns: 1.4em 1fr; /* 左：アイコン固定幅 / 右：本文 */
  column-gap: 0.35em;
  align-items: baseline;
	
  padding-left: 0.25em !important;
  line-height: 1.4;
  color: #333333;
  padding-bottom: 0.0em;
  font-family: inherit !important;
}


span.icon-title::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.4em;
  text-align: center;
  line-height: 1;
}

ul.content_caution li.icon-title {
  display: grid;
  grid-template-columns: 1.4em 1fr;
  column-gap: 0.35em;
  align-items: baseline;
}


/* 本文テーブル基本 */
table.content_basic {
  padborder-collapse: collapse;
  background: #ffffff;
  border: none;
  box-shadow: none;
  margin-bottom: 0;
}

/* 本文テーブル両端空け */
div.content_basic {
  padding: 0 1em;
}

/* プロフィールボックス */
div.content_profile {
  padding: 0 1em;
}

div.content_profile_mb {
  margin: 0 auto !important;
  width: 90%;
}


/* 最低動作環境 */
div.requirements {
  padding: 0 1em;
}

/* 注意書きリスト */
ul.content_caution {
  padding: 0em 0.5em 0 1em !important;
  margin: 0 !important;
  color: #AAAAAA !important;
}

/* 注意書きリスト項目 */
li.content_caution {
  list-style: none !important;
  margin: 0em !important;
  line-height: 1.8 !important;	
}

/* 注意書きリスト（テーブル内） */
ul.content_caution_table_right {
  list-style-type: "※ " !important;
  padding: 0 !important;
  margin: 0 0 1em 1em !important;
  font-size: 90%; color: #555555 !important;
}

/* 大きな文字 */
span.content_large {
  font-size: 110%;
}

/* 枠付き画像 */
img.border_image {
  width: 100%;
  border: solid 1px black;
}

.icon-title.mark_star::before {
  content: "\f005"; /* チェックマークなど */
}

span.mark_kirakira::before {
  content: "\2728"; /* キラキラ */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: inline-block;
  width: 1.4em;
  text-align: center;
  line-height: 1;
}

.recommend-more {
margin-top: 0.4em;
}

.recommend-more summary {
display: inline-block;
cursor: pointer;
color: #1478d4;
font-weight: bold;
list-style: none;
}

.recommend-more summary::-webkit-details-marker {
display: none;
}

.recommend-more summary::after {
content: " ▼";
font-size: 0.85em;
}

.recommend-more[open] summary::after {
content: " ▲";
}

.recommend-more .content_text {
margin-top: 0.6em;
}


.icon-title.mark_headphones::before {
  content: "\f025"; /* fa-headphones */
}

.icon-title.mark_order::before {
  content: "\f07a"; /* fa-shopping-cart */
}

.icon-title.mark_campaign::before {
  content: "\f02c"; /* fa-tags */
}

.icon-title.mark_building::before {
  content: "\f1ad"; /* building */
}

.icon-title.mark_product::before {
  content: "\f5fc"; /* building */
}

.icon-title.mark_price::before {
  content: "\f02b"; /* fa-yen-sign */
}

.icon-span.mark_price::before {
  content: "\f02b"; /* fa-yen-sign */
}

.icon-title.mark_package::before {
  content: "\f109";
}

.icon-title.mark_note::before {
  content: "\f06a"; 
}

.icon-title.mark_feature::before {
  content: "\f1b2";
}

h2.icon-title.mark_feature::before {
  content: "\f022";
}

.icon-title.mark_book_open::before {
  content: "\f518";
}

.icon-title.mark_flow::before {
  content: "\f0ae";
}

.icon-title.mark_mail::before {
  content: "\f01c";
}

.icon-title.mark_shipping::before {
  content: "\f0d1";
}

.icon-title.mark_refund::before {
  content: "\f2ea";
}

.icon-title.mark_download::before {
  content: "\f019"; /* fa-download */
}

.icon-title.mark_filedown::before {
  content: "\f56d";
}

.icon-title.mark_install::before {
  content: "\f0cb";
}

.icon-title.mark_history::before {
  content: "\f1da";
}

.icon-title.mark_bookmark::before {
  content: "\f02e";
}

.icon-title.mark_license::before {
  content: "\f084";
}

.icon-title.mark_tutorial::before {
  content: "\f19d";
}

.icon-title.mark_news::before {
  content: "\f0f3";
}

.icon-title.mark_demo::before {
  content: "\f03d";
}

.icon-title.mark_recommend::before {
  content: "\f075";
}

.icon-title.mark_profile::before {
  content: "\f007";
}

.icon-title.mark_requirements::before {
  content: "\f085";
}

.icon-title.mark_doubt::before {
  content: "\f4ad";
}

.icon-title.mark_answer::before {
  content: "\f058";
}

.icon-title.mark_faq::before {
  content: "\f086";
}

.icon-title.mark_question::before {
  content: "\f059";
}

.icon-title.mark_manual::before {
  content: "\f02d";
}

.icon-title.mark_mode::before {
  content: "\f205";
}

.icon-title.mark_resolution::before {
  content: "\f108";
}

.icon-title.mark_cd::before {
  content: "\f51f";
}

.icon-title.mark_info::before {
  content: "\f4ad";
}

.icon-title.mark_support::before {
  content: "\f1cd";
}

.icon-title.mark_send_mail::before {
  content: "\f0e0";
}

.icon-title.mark_note_nomargin::before {
  content: "\f06a"; /* fa-info-circle */
}

.icon-title.mark_tips::before {
  content: "\f0a4";
}

.icon-title.mark_cd::before {
  content: "\f51f"; /* fa-compact-disc */
}


/* =========================================================
   Manecco2 LP (PC) - manecco2.css
   - HTML内の style 直書きを全て排除し、mc2-* に集約
   - Cocoonの既存クラス(content_*, mark_*, check-list 等)は尊重
========================================================= */

/* -----------------------------
  Base container
----------------------------- */
.mc2-wrap{
  max-width: 850px;
  margin: 0 auto;
  text-align: left;
}

/* utility (margin) */
.mc2-mb-0{ margin-bottom: 0; }
.mc2-mb-05{ margin-bottom: 0.5em; }

/* emphasis */
.mc2-em{ font-size: 120%; }

/* -----------------------------
  HERO table (PC + logo)
----------------------------- */
.mc2-hero{
  margin: 0 auto;
  border-collapse: collapse;
  background: #ffffff;
  border: none;
  box-shadow: none;
}
.mc2-hero td{
  border: none;
  background: #ffffff;
  vertical-align: middle;
}
.mc2-hero__left{
  width: 500px;
  text-align: center;
  padding-right: 0em;
  padding-left: 2em;
}
.mc2-hero__right{
  text-align: left;
  padding-right: 3em;
}
.mc2-hero__laptop{ width: 350px; height: auto; }
.mc2-hero__logo{ width: 350px; height: auto; }

/* -----------------------------
  Concept rows (2-column tables)
----------------------------- */
.mc2-row{
  margin: 0 0 1em 0;
  border-collapse: collapse;
  background: #ffffff;
  border: none;
  box-shadow: none;
  width: 100%;
}
.mc2-row td{
  border: none;
  background: #ffffff;
  vertical-align: middle;
}
.mc2-row__text{
  padding: 0 1em;
}
.mc2-row__img{
  width: 50%;
  vertical-align: middle;
}
.mc2-row__img--left{
  width: 50%;
  text-align: center;
  padding-right: 1em;
}
.mc2-row--end{
  margin: 0 0 2em 0;
}
.mc2-row__text--end{
  padding-right: 1em;
}

/* -----------------------------
  Video (responsive iframe)
----------------------------- */
.mc2-video{
  width: 100%;
}
.mc2-video iframe{
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
  display: block;
}

/* -----------------------------
  Generic image sizing helpers
  (match former inline widths)
----------------------------- */
.mc2-img-100{ width: 100%; height: auto; }
.mc2-img-50{ width: 50%; height: auto; }
.mc2-img-450{ width: 450px; height: auto; }
.mc2-img-500{ width: 500px; height: auto; }

/* Profile images (110px) */
.mc2-prof__img110{ width: 110px; height: auto; }
.mc2-prof__img110_mb{ width: 90px; height: auto; }

/* -----------------------------
  content_basic tables: left image + right list
  (あなたの元 inline: width: table cell 50%, padding-right, top alignment)
----------------------------- */
.mc2-basic__left{
  width: 50%;
  vertical-align: top;
  padding-right: 1em;
  border: none;
  background: #ffffff;
}
.mc2-basic__right{
  vertical-align: top;
  border: none;
  background: #ffffff;
  padding: 0;
}
.mc2-basic__leftpad{
  padding-left: 1em;
}
.mc2-basic__text{
  vertical-align: middle;
  border: none;
  background: #ffffff;
}
.mc2-basic__imgcol{
  width: 50%;
  vertical-align: top;
  border: none;
  background: #ffffff;
}
.mc2-basic__rightpad{
  padding-right: 1em;
}

/* check-list tweaks (keep Cocoon’s look, only remove former inline paddings) */
.mc2-check-list{
  padding: 0 5em !important;
  margin-top: 0.5em !important;
  margin-bottom: 0.5em !important;
}

.mc2-check-list-mb{
  padding: 0 1em !important;
  margin-top: 0.5em !important;
  margin-bottom: 0.5em !important;
}

.mc2-li-110{
  font-size: 110%;
}

div.check-list-frame {
border: 2px solid #33aa33;
background: #f0fff0 !important;
margin: 0 auto;
margin-top: 1em;
width: 96%;
}

/* -----------------------------
  Profile blocks inside content_profile tables
  (former: img cell width 110px / 200px, text vertical-align top)
----------------------------- */
.mc2-prof__imgcell{
  width: 120px;
  height: 120px;
  vertical-align: top;
}
.mc2-prof__textcell{
  vertical-align: top;
}
.mc2-prof__imgwide{
  width: 220px;
  vertical-align: top;
}

/* -----------------------------
  Requirements (PC)
  former: width 820px, font-size 15px, margin auto, no bg
----------------------------- */
.mc2-req__lead{
  margin-bottom: 1em !important;
  padding: 0 1em;
}

/* 最低動作環境テーブル */
.mc2-req {
  width: 820px;
  font-size: 15px;
  margin: 0 auto;
  border-collapse: collapse;
  background: none;
}

/* Cocoon側のtd余白を潰す */
.mc2-req td,
.mc2-req__key,
.mc2-req__val {
  padding-top: 0.25em !important;
  padding-bottom: 0.25em !important;
  vertical-align: middle !important;
}

/* 左列 */
.mc2-req__key {
  padding-right: 0.5em !important;
  text-align: right;
  width: 120px;
}

.mc2-req__key_mb {
  padding-right: 0.5em !important;
  text-align: right;
  width: 80px;
}

/* 右列 */
.mc2-req__val {
  padding-left: 0.5em !important;
}

/* td内のul */
.mc2-req__list {
  padding: 0 0 0 1.5em !important;
  margin: 0 !important; 
}

/* li側の余白も潰す */
.mc2-req__list li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.5 !important;
}

.mc2-req{
  width: 820px;
  font-size: 15px;
  margin: 0 auto;
  border-collapse: collapse;
  background: none;
}

.mc2-req__key--wide{
  width: 120px;
}


/* mark_note was inline color #666 in the original */
.mark_note{ color: #AAAAAA; }

/* -----------------------------
  Small responsive safety (PC narrow)
  - CocoonのPCブレークポイント次第で効く
----------------------------- */
@media (max-width: 900px){
  .mc2-req{ width: 100%; }
  .mc2-img-500{ width: 100%; }
}

/* Optional: prevent huge images from overflow */
.mc2-wrap img{
  max-width: 100%;
}

/* LP内のリンク用アイコン（Font Awesome）を非表示 */
.mc2-wrap .anchor-icon{
  display: none !important;
}

/* =========================================================
   PC用インラインスタイル置き換えクラス
   - 各ページのstyle=""直書きをここに集約
========================================================= */

/* --- 共通テキスト余白 --- */
.mc2-p {
  margin-bottom: 1.0em !important;
  padding: 0 1.0em;
}
.mc2-p-05 {
  margin-bottom: 0.5em !important;
  padding: 0 1.0em;
}
.mc2-p-0 {
  margin-bottom: 0 !important;
  padding: 0 1.0em;
}
.mc2-p-last {
  padding: 0 1.0em;
}

/* --- 注釈テキスト --- */
.mc2-note {
  padding: 0 1.0em;
  color: #666;
  margin-bottom: 1.0em !important;
}
.mc2-note-0 {
  padding: 0 0.5em;
  color: #666;
  margin-bottom: 0 !important;
}
.mc2-note-red {
  padding: 0 1.0em;
  color: red;
  margin-bottom: 0 !important;
}

/* --- 見出し付近のリード文 --- */
.mc2-lead {
  margin-bottom: 0.5em;
  padding: 0 1.0em;
  color: #666;
}
.mc2-lead-link {
  margin-bottom: 1.0em;
  padding: 0 1.0em;
  color: #666;
}

/* --- 画像（中央寄せ・枠付き） --- */
.mc2-img-border {
  border: 1px solid #000;
}
.mc2-img-border-blk {
  border: 1px solid black;
}

/* --- 画像キャプション（中央・太字） --- */
.mc2-caption {
  width: 100%;
  text-align: center;
  margin-bottom: 0 !important;
  padding: 0 1.0em;
}
.mc2-caption strong {
  display: block;
}

/* --- 汎用テーブル（ボーダーなし・白背景） --- */
.mc2-tbl {
  margin: 0 0 1em 0 !important;
  border-collapse: collapse;
  background: #ffffff;
  border: none;
  box-shadow: none;
}
.mc2-tbl td {
  border: none;
  background: #ffffff;
  vertical-align: top;
}
.mc2-tbl--mb0 {
  margin-bottom: 0 !important;
}
.mc2-tbl--mb05 {
  margin-bottom: 0.5em !important;
}
.mc2-tbl--mb2 {
  margin-bottom: 2em !important;
}
.mc2-tbl--mb3 {
  margin-bottom: 3em !important;
}

/* テーブルセル：左パディング付きテキスト */
.mc2-tbl__text {
  vertical-align: top;
  padding: 0 1em;
  border: none;
  background: #ffffff;
}
.mc2-tbl__text-mid {
  vertical-align: middle;
  padding: 0 1em;
  border: none;
  background: #ffffff;
}
/* テーブルセル：幅固定 */
.mc2-tbl__img400 {
  width: 400px;
  vertical-align: top;
  border: none;
  background: #ffffff;
}
.mc2-tbl__img300 {
  width: 300px;
  vertical-align: top;
  border: none;
  background: #ffffff;
}
.mc2-tbl__img320 {
  width: 320px;
  vertical-align: top;
  border: none;
  background: #ffffff;
}
.mc2-tbl__img380 {
  width: 380px;
  vertical-align: middle;
  padding-right: 0em;
  border: none;
  background: #ffffff;
}
.mc2-tbl__img50pct {
  width: 50%;
  vertical-align: top;
  border: none;
  background: #ffffff;
}

.mc2-tbl__arrow {
  vertical-align: middle !important;
  border: none;
  background: #ffffff;
}

.mc2-tbl__right-mid {
  vertical-align: middle;
  border: none;
  background: #ffffff;
}

/* --- ポーズ再生ページ：注意リスト --- */
.mc2-ul-caution {
  list-style: none;
  margin-bottom: 1.0em !important;
  padding: 0 3.5em;
}
/* --- 2カラム均等テーブル --- */
.mc2-tbl__half {
  width: 50%;
  vertical-align: top;
  padding: 0 1em;
  border: none;
  background: #ffffff;
}

/* --- インストールページ: 画像 --- */
.mc2-img-w450 { width: 450px; height: auto; }
.mc2-img-w600 { width: 600px; height: auto; }
.mc2-img-w700 { width: 700px; height: auto; }
.mc2-img-w80pct { width: 80%; height: auto; }
.mc2-img-w90pct { width: 90%; height: auto; }

/* --- ご注文ページ: 価格テーブル --- */
.mc2-price-tbl {
  line-height: 1.0em;
  width: 36em;
  margin: 0 0 1em 0;
  border-collapse: collapse;
  background: #ffffff;
  border: none;
  box-shadow: none;
}
.mc2-price-tbl td {
  border: none;
  background: #ffffff;
}
.mc2-price-tbl__label {
  text-align: right;
  width: 10em;
  padding-right: 0.5em;
}
.mc2-price-tbl__amount {
  text-align: right;
  width: 3em;
}
.mc2-price-tbl--red {
  color: red;
}

/* --- ご注文ページ: 商品パッケージ画像セル --- */
.mc2-pkg__imgcell {
  width: 300px;
  text-align: center;
  vertical-align: middle;
  padding-right: 1em;
  border: none;
  background: #ffffff;
}
.mc2-pkg__pricecell {
  vertical-align: middle;
  border: none;
  background: #ffffff;
}

/* --- メールアドレス画像ブロック --- */
.mc2-email-block {
  line-height: 0;
  margin-bottom: 0.5em;
  padding: 0 1.0em;
}
.mc2-email-img {
  height: 18px;
  margin: 0;
  padding: 0;
}

.mc2-email-img-mb {
  height: 16px;
  margin: 0;
  padding: 0;
}

/* --- 注文関連リスト --- */
.mc2-ol {
  padding: 0 1.0em 0 2.5em;
  margin-bottom: 1.0em !important;
}
.mc2-ul {
  padding: 0;
  margin: 0 0 0 2.5em !important;
}



/* --- 会社概要テーブル --- */
.mc2-corp-tbl {
  width: 770px;
  font-size: 15px;
  margin: 0 auto;
  border-collapse: collapse;
  background: none;
  margin-top: 1.5em;
}
.mc2-corp-tbl__key {
  padding-right: 0.5em;
  text-align: right;
  width: 120px;
}

.mc2-corp-tbl__key_mb {
  padding-right: 0.5em;
  text-align: right;
  width: 80px;
}

.mc2-corp-tbl__val {
  padding-left: 0.5em;
}
.mc2-corp-tbl__val--lh {
  padding-left: 0.5em;
  line-height: 1.6;
}

/* --- サポートページ: リスト --- */
.mc2-li-15 {
  font-size: 15px;
}

/* --- 強調テキスト（赤） --- */
.mc2-red { color: red; }

/* --- 大文字テキスト --- */
.mc2-em-110 { font-size: 110%; }
.mc2-em-120 { font-size: 120%; }
.mc2-em-125 { font-size: 125%; color: red; }

/* --- 比較テーブル（リピ効果ページ） --- */
.mc2-compare-tbl {
  width: 97%;
  margin: 0 auto 1em auto;
  border-collapse: collapse;
}
.mc2-compare-tbl th,
.mc2-compare-tbl td {
  padding: 8px;
  border: 1px solid #ccc;
}
.mc2-compare-tbl thead tr {
  background-color: #f0f0f0;
}
.mc2-compare-tbl th:first-child { width: 10%; }
.mc2-compare-tbl th:nth-child(2),
.mc2-compare-tbl th:nth-child(3) { width: 45%; }

/* --- 全幅画像ブロック --- */
.mc2-img-block {
  padding: 0 1.0em;
  margin-bottom: 1em;
}
.mc2-img-block--center {
  text-align: center;
}

/* --- インストールページ: シリアルNoの色付き強調 --- */
.mc2-serial-em {
  color: blue;
  font-size: 120%;
}

/* --- 機能紹介ページ: ポーズ時間設定の赤見出し --- */
p.mc2-pause-title {
  margin-bottom: 0;
  padding: 0 1.0em;
  color: red;
}

/* --- ダウンロードページ: スマホ非対応注意 --- */
.mc2-sp-warning {
  padding: 0 1.0em;
  border: 1px solid #FF5555;
  background: #FFDDDD;
  color: #AA3333;
}

/* --- ご注文ページ: キャンペーン終了日 --- */
.mc2-campaign-end {
  padding: 0 1em;
  color: red;
  margin-bottom: 0.5em;
}

/* --- ご注文ページ: 締めのCTA文 --- */
.mc2-cta {
  font-size: 110%;
  padding: 0 1.0em;
}

.campaign_price {
  color: red;
}

.price_table {
  border-collapse: collapse;
  margin: 0 auto;
  width: 60%;
  margin-left: 2.5em;
}

.price_table td {
  padding: 0;
  border: none;
  line-height: 2.5;
}
.price_label {
  text-align: left;
  white-space: nowrap;
  font-size: 100%;
}

.price_value {
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
  font-feature-settings: "tnum";
  font-size: 100%;
}

.price_table,
.price_table tr,
.price_table td {
  background: transparent !important;
  background-color: transparent !important;
}

/* --- 締めのCTA画像 --- */
.mc2-cta-img {
  width: 250px;
}

.mc2-cta-img-mb {
  width: 200px;
}

/* --- 上部マージン付き見出し（会社概要 自社プロダクト一覧など） --- */
.mc2-mt-2 {
  margin-top: 2.0em;
}

/* --- 会社概要: ロゴ行・ロゴ画像 --- */
.mc2-corp-tbl__logo {
  text-align: center;
  padding-top: 0.6em;
  padding-bottom: 0em;
}
.mc2-corp-logo {
  height: 45px;
}

/* --- 会社概要: メールアドレス画像上部のdiv --- */
.mc2-email-head {
  line-height: 0;
  margin-bottom: 0.25em;
}

/* --- mark_note_nomargin: アイコン付き注釈（余白なし） --- */
.mark_note_nomargin {
  margin-bottom: 0;
  padding: 0;
  color: #666;
}