@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    0.0.5
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
.article h1 {
padding: 0.5em;/*文字周りの余白*/
color: #000000;/*文字色*/
background: #FBEFFB;/*背景色*/
border-bottom: solid 3px #ff2158;/*下線*/
}

.article h2 {
	margin-top:3em;
	padding: 0.8em;/*文字周りの余白*/
	color: #ffffff;/*文字色*/
	background: #ff5680; /*背景色*/
	border-left: solid 5px #ff2158; /* 左線（実線 太さ 色）*/
}

.article h3{
	border:0;
	margin-top:2em;
	font-size:18px;
	border-bottom: solid 2px #FF7700;
	border-left: solid 5px #ff2158; /* 左線（実線 太さ 色）*/
}

.categoryid-100 .article h3{
	margin-top:4em;
}

.article h4{
	color: #000000;/*文字色*/
	border-top: none;
	border-bottom: dashed 2px #ff96ae;/*線の種類（点線）2px 線色*/
	font-size:16px;
}

.sidebar h3 {
	border:0;
    background: #ff96ae; /*背景色*/
	padding: 0.5em;/*文字周りの余白*/
	color: white;/*文字を白に*/
	border-radius: 0.5em;/*角の丸み*/
}

/*--アプリーチカスタマイズ--*/
#appreach-box {
  max-width: 500px;
  border: 2px solid #7fbfff;
  background: #eaffff;
  padding: 4px 6px;
  margin: 0px 0px 20px;
  border-radius: 0px;
  line-height: 1.4;
  box-shadow: 5px 6px 1px 0 rgba(127, 127, 255, .10);
}

#appreach-box br {
  display: none;
}

#appreach-image {
  margin-right: 15px !important;
  margin-bottom: 0 !important;
}

#appreach-appname {
  color: #3a3a3a;
  font-size: 1.1em;
  font-weight: bold;
}

#appreach-developer, #appreach-price, .appreach-powered {
  color: #999;
  font-size: 10px !important;
}

#appreach-box .appreach-links {
  margin-top: 10px;
}

#appreach-itunes-link {
  margin-right: 10px;
}

#appreach-box .appreach-links img:hover {
  opacity: 0.8;
}
.appreach-links:before {
content: url(https://apps-island.com/wp-content/uploads/2019/09/app-dl3.png) "\A";
white-space:pre-line;
}
/*アプリボックス*/
.app-zone {
  text-align: left;
  max-width: 500px;
  border: 2px solid #7fbfff;
  background: #f9ffff;
  padding: 4px 6px;
  margin: 10px 0px 20px;
  border-radius: 0px;
  line-height: 1.4;
  box-shadow: 5px 6px 1px 0 rgba(127, 127, 255, .10);
}

.app-zone p {
    margin: 0px;
}

.app-zone br {
  display: none;
}

.app-image {
 float: left;
  border-radius: 10%;
  overflow: hidden;
  margin: 10px 15px 5px 10px !important;
  width: 25% !important;
  height: auto !important;
  max-width: 120px !important;
}
.app-info{
 margin: 10px;
}

.app-name {
  color: #3a3a3a;
  font-size: 1.15em;
  font-weight: bold;
}

.app-more {
  color: #999;
  font-size: 10px !important;
  margin-top: 3px;
}

.app-links {
  margin-top: 5px;
  float: left;
}

.app-itunes-link,.app-gplay-link {
  margin-right: 10px;
  display: inline-block;
}

.app-zone .app-links img:hover {
  opacity: 0.8;
}
.app-links:before {
content: url(https://apps-island.com/wp-content/uploads/2021/01/app-dl6.png) "\A";
white-space:pre-line;
margin-left:10px;
}
.app-footer{
  margin-bottom: 5px;
  clear: left;
}

/*おすすめタブ*/
.osusume2 ul {
  background-color: #EFFBFB;
  border: solid 2px #A9F5F2;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
  margin-top: 2em;
}

.osusume2 ul li {
  color: #0040FF;
  font-weight:bold;
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;
}
.osusume2 ul li:before {/*リストのアイコン*/
  font-family: FontAwesome;
  content: "\f00c";
  position: absolute;
  left : 1em; /*左端からのアイコンまでの距離*/
  color: #0040FF; /*アイコン色*/
}
.osusume2 ul li:after {/*タイトルタブ*/
    background: #A9F5F2;
  	color: #fff;
  	font-weight: bold;
  	position: absolute;
  	left: -2px;
  	bottom: 100%;
  	padding: 1px 7px;
  	content: "POINT";/*タブの文字*/
  	letter-spacing: 0.05em;/*字間*/
}

/*記事下特集用（おすすめ3）*/
.osusume3 ul {
  border: solid 2px #ff938b;
  font-weight: bold;
  background: #fffaf1;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
}

.osusume3 ul li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
}

.osusume3 ul li:before {
  font-family: FontAwesome;
  content: "\f1b0";/*アイコン種類*/
  position: absolute;
  left : 1em; /*左端からのアイコンまで*/
  color: #ff938b; /*アイコン色*/
}

/*内部リンク用(特集記事下）*/
.osusume4 ul {
  border: solid 2px skyblue;
  border-radius: 5px;
  padding: 0.5em 1em 0.5em 2.3em;
  position: relative;
}

.osusume4 ul li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;
  font-weight:bold;
}

.osusume4 ul li:before {/*疑似要素*/
  font-family: FontAwesome;
  content: "\f138";/*アイコンの種類*/
  position: absolute;
  left : 1em;/*左端からのアイコンまでの距離*/
  color: skyblue;/*アイコン色*/
}
/*黒板風おすすめ枠*/
.osusume5{
  position: relative;
  border: 0.5em solid #E9A971;
  background: #369595;
  padding: 1.5em 0;
  font-weight: bold;
  border-radius: 0.3em;
}

.osusume5 ul{
  padding: 0 1.7em 0 1.7em;
}

.osusume5 ul li {
  color:#fff;
  line-height:1.5;
  padding: 0.5em 0;
  list-style: none;
  border-bottom: 0.15em solid rgba(255, 255, 255, 0.33);
}

.osusume5 ul li:before {/*疑似要素*/
  font-family: FontAwesome;
  content: "\f00c";
  position: absolute;
  left: 0.5em; /*左端からのアイコンまでの距離*/
  color: #ffff6b; /*アイコン色*/
}

.osusume5:before,
.osusume5:after {
  position: absolute;
  content: "";
  right: 0;
  bottom: 0;
}

.osusume5:before {
 right: 10px;
 border-width:2px 1.5em;
 border: solid 4px #fff; /*チョーク（白）*/
 width: 10px;
 border-radius: 3px 2px 0 2px;
 box-sizing:content-box;
}

.osusume5:after {
 right: 40px;
 border: solid 4px #ffff6b; /*チョーク（黄色）*/
 width: 15px; 
 border-radius: 8px 5px 2px 5px;
 box-sizing:content-box;
}

.osusume5-title {
  margin-bottom:-0.3em;
  color: #ffff6b;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}

/*ユーザーレビュー*/
.user-osusume{
    margin: 10px 0;
	border-radius: 10px;
	border: 1px solid #e9e9e9;
	background: #f9fcfb;
}

.user-osusume p{
    padding: 0;
	margin: 0;
}

.user-osusume .top-title{
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	padding: 10px 10px 10px 15px;
	border-radius: 5px 5px 0 0;
	background: #16b782;
}

.user-osusume .top-title:before{
	display: inline-block;
	transform: scaleX(-1);
    font-family: FontAwesome;
	content: '\f075';
	margin-right: 5px;
}

.user-osusume-box{
	padding: 0 16px;
}

.user-osusume .review-title ,.review-title-bad{
    font-size: 16px;
	font-weight: bold;
}

.user-osusume .review-title:before{
    font-family: FontAwesome;
	content: '\f004';
	margin-right: 5px; 
	color: #ff197a;
}

.user-osusume .review-title-bad:before{
    font-family: FontAwesome;
	content: '\f004';
	margin-right: 5px; 
	color: #7f7fff;
}

.user-osusume .review{
    padding: 20px 0;
	font-size: 13px;
	line-height: 1.5;
	border-top: 1px solid #bce0d1;
}

.user-osusume .review:first-child{
    border: none;
}

/*特集個別ページリンク*/
.syosai {
    border:1px solid #ef858c;
    margin: 1em 0em 3em;
    background: #ffffff;
}
.syosai .syosai-title {
    font-size: 1.1em;
    background: #ef858c;
    padding: 4px 10px;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.syosai a{
  text-decoration: none;
  font-weight:bold;
}
.syosai p {
    padding: 15px 10px;
	margin: 0;
}
/*おすすめアプリ紹介ボックス（H2下）*/
.osusume-app{
    position: relative;
    margin: 2em 0;
    padding: 1em 0.5em 0.5em 0.5em;
    font-size: 12px;
    border: solid 3px #7f7fff;
    border-radius: 5px;
}

.osusume-app ul{
  padding: 0em 1em;
}

.osusume-app li{
  list-style: none;
  width: 100%;
  float: left;
  padding:0.3em 0;
  border-bottom: 0.1em solid rgba(150,150,255, 0.4);
}

.osusume-app ul li:before{
  display: none; 
}

.osusume-app ul:after{
  display: table;
  content: "";
  clear: both;
}

.osusume-app li img{
  float: left;
  padding: 10px 10px 9px 0px;
  height: auto;
}

.osusume-app li a{
  color: #333333 !important;
  text-decoration: none !important;
  display: block;
}

.osusume-app li span{
  font-size: 15px;
  color: #7f7fff;
  font-weight: bold;
}

.osusume-app li p{
  margin:0;
}

.osusume-title {
    position: absolute;
    display: inline-block;
    top: -10px;
    left: 10px;
    padding: 0 9px;
    font-size: 17px;
    font-weight: bold;
    background: #fff;
    color: #7f7fff; 
    line-height: 1;
}

.osusume-dl{
  font-size: 10px !important;
  color: #ffffff !important;
  font-weight: bold;
  padding: 0.1em 0.5em;
  margin: 0.1em 0.1em;
  background-color: #ff7f7f;
  border-radius: 7px;
  letter-spacing:1px;
  float: right;
}

.osusume-dl:before{
  font-family: FontAwesome;
  content: "\f019";
  color: #ffffff;
  margin-right:3px;
}
/* ---------☆マーク------------ */
.half {
position:relative;
white-space: nowrap;
}
.half:before {
content: attr(data-heading);
overflow: hidden;
position: absolute;
width: 50%;
}

/* ---------事前登録------------ */
.zizen {
    position: relative;
    margin: 2em 0;
    padding: 0em 1em;
    border: double 3px #ff6699;
    border-radius: 8px;
}
.zizen .box-title {
    position: absolute;
    display: inline-block;
    top: -16px;
    left: 10px;
    padding: 0 9px;
    font-size: 15px;
    background: #FFF;
    color:  #ff6699;
    font-weight: bold;
}
.zizen p {
    margin: 1; 
    padding: 1;
}

/* ヘッダー */
@media screen and (max-width: 768px){
  .logo-image {
    padding: 5px 2;
  }
}

@media screen and (max-width: 480px){
  .logo-image {
    padding: 2;
  }
} 

/*テーブルリンクバー削除*/
table a {
	text-decoration: none;  
}

/* Cocoon2.0.0対応：評価星 */
.rating-star .fa, .fas {
    font-weight: 100 !important;
    font-family: "FontAwesome" !important;
}

/*吹き出し設定*/
.speech-person {
  width: 70px;
	min-width: 70px;
}

.speech-wrap .speech-icon img,.speech-wrap  .speech-icon amp-img{
	border:2px solid #ff7f7f;
	background:#fffcfc;/*画像部分の「背景色」*/
	margin-top:0.5em;
}

.speech-wrap .speech-balloon{
	border:2px solid #ff7f7f !important;
	background:#fffcfc !important;/*コメント部分の「背景色」*/
	margin-top:0.5em;
}

.speech-wrap.sbs-think .speech-balloon::before,.speech-wrap.sbs-think .speech-balloon::after{
	border:2px solid #ff7f7f;
}
/*吹き出しの間だけの調整*/
.speech-wrap+.speech-wrap { margin-top:-1em; }

/*青キャラ吹き出し*/

.sb-id-25 .speech-icon img,.sb-id-26 .speech-icon img,.sb-id-27 .speech-icon img,.sb-id-28 .speech-icon img,.sb-id-29 .speech-icon img,.sb-id-30 .speech-icon img{
border:2px solid #7fbfff;
	background:#f9ffff;/*アイコン部分の「背景色」*/
}

.sb-id-25 .speech-balloon,.sb-id-26 .speech-balloon,.sb-id-27 .speech-balloon,.sb-id-28 .speech-balloon,.sb-id-29 .speech-balloon,.sb-id-30 .speech-balloon{
border:2px solid #7fbfff !important;
	background:#f9ffff !important;/*コメント部分の「背景色」*/
}

.sb-id-25.sbs-think .speech-balloon::before,.sb-id-25.sbs-think .speech-balloon::after,.sb-id-26.sbs-think .speech-balloon::before,.sb-id-26.sbs-think .speech-balloon::after,.sb-id-27.sbs-think .speech-balloon::before,.sb-id-27.sbs-think .speech-balloon::after,.sb-id-28.sbs-think .speech-balloon::before,.sb-id-28.sbs-think .speech-balloon::after,.sb-id-29.sbs-think .speech-balloon::before,.sb-id-29.sbs-think .speech-balloon::after,.sb-id-30.sbs-think .speech-balloon::before,.sb-id-30.sbs-think .speech-balloon::after{
border:2px solid #7fbfff;
}

/*ピンクの子の吹き出し先端部分*/
.sb-id-20 .speech-balloon::before,.sb-id-21 .speech-balloon::before,.sb-id-22 .speech-balloon::before,.sb-id-23 .speech-balloon::before,.sb-id-24 .speech-balloon::before{
  border-right: 12px solid #ff7f7f;
}
.sb-id-20 .speech-balloon::after,.sb-id-21 .speech-balloon::after,.sb-id-22 .speech-balloon::after,.sb-id-23 .speech-balloon::after,.sb-id-24 .speech-balloon::after {
	border-right: 12px solid #fff9fc;
}

@media screen and (max-width: 480px){
	.sb-id-20>.speech-balloon::before,.sb-id-21>.speech-balloon::before,.sb-id-22>.speech-balloon::before,.sb-id-23>.speech-balloon::before,.sb-id-24>.speech-balloon::before {
		border-right: 7px solid #ff7f7f;
	}
	.sb-id-20>.speech-balloon::after,.sb-id-21>.speech-balloon::after,.sb-id-22>.speech-balloon::after,.sb-id-23>.speech-balloon::after,.sb-id-24>.speech-balloon::after { 
		border-right: 7px solid #fff9fc;
	}
}
/*青の子の吹き出し先端部分*/
.sb-id-25 .speech-balloon::before,.sb-id-26 .speech-balloon::before,.sb-id-27 .speech-balloon::before,.sb-id-28 .speech-balloon::before,.sb-id-29 .speech-balloon::before,.sb-id-30 .speech-balloon::before {
  border-right: 12px solid #7fbfff;
}
.sb-id-25 .speech-balloon::after,.sb-id-26 .speech-balloon::after,.sb-id-27 .speech-balloon::after,.sb-id-28 .speech-balloon::after,.sb-id-29 .speech-balloon::after,.sb-id-30 .speech-balloon::after{
	border-right: 12px solid #f9ffff;
}

@media screen and (max-width: 480px){
	.sb-id-25>.speech-balloon::before,.sb-id-26>.speech-balloon::before,.sb-id-27>.speech-balloon::before,.sb-id-28>.speech-balloon::before,.sb-id-29>.speech-balloon::before,.sb-id-30>.speech-balloon::before {
		border-right: 7px solid #7fbfff;
	}
	.sb-id-25 .speech-balloon::after,.sb-id-26 .speech-balloon::after,.sb-id-27 .speech-balloon::after.sb-id-28 .speech-balloon::after,.sb-id-29 .speech-balloon::after,.sb-id-30 .speech-balloon::after { 
		border-right: 7px solid #f9ffff;
	}
}

/*ボタンCSS*/
.square_btn{
    display: inline-block;
    padding: 0.5em 1.5em;
    text-decoration: none;
    background: #ff3265;/*ボタン色*/
    font-size:18px;
    color: #FFF;
    border-bottom: solid 5px #cb0000;
    border-radius: 10px;
}
.square_btn:active {/*ボタンを押したとき*/
    -ms-transform: translateY(4px);
    -webkit-transform: translateY(4px);
    transform: translateY(4px);/*下に動く*/
    box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2);/*影を小さく*/
    border-bottom: none;
}

/*行間隔*/
p {
    line-height: 1.75;
    margin: 1.5em 0;
}

/*ビデオタグ*/
.wp-video {
    margin:auto;
}

/*ダウンロードボタン余白*/
.wp-image-13348,.appdl{
	margin-top:2em;
	padding-right:7px;
}

.wp-image-13351{
	margin-top:2em;
}

/*iPad余白空間*/
@media screen and (min-width: 600px) and (max-width: 1023px) {
.article:not(#tinymce) {
    margin: 0 auto !important;
    width: 680px;
}
}

/*ブログカード*/
.blogcard {
	margin-top:3rem;
	padding: 1rem 1rem 2rem;
	color: #666;
	position: relative;
	border-color: #68d6cb !important; /* 枠線の色を変更 */
}

a.blogcard-wrap:hover{
	background-color: transparent!important;
	opacity: 0.8;
}

a.blogcard-wrap:hover img.blogcard-thumb-image{
	transform: scale(1.1);
	transition: .3s;
}

.blogcard-thumbnail {
	line-height: 0;
	margin-right: 1rem;
	overflow: hidden;
}

.blogcard-title{
	margin-bottom: .5rem;
}


.blogcard-snippet{
	display: none;
	font-size: 70%;
	line-height: 1.7;
	padding-right: 10%;
	
}

/* media Queries タブレットサイズ（600px～834px）のみ */
@media only screen and (min-width: 600px) and (max-width: 834px) {
	.blogcard-thumbnail {
    width: 160px !important;
	}
}

@media screen and (max-width: 480px){
    .blogcard-thumbnail{
	 width: 40%;
	}	
}

.internal-blogcard-footer{
	display: none; /* 内部ブログカードのアイコンとURLを非表示 */
}

.blogcard-label {
    background-color: #68d6cb!important;
}

.internal-blogcard::after{
	content: '続きを読む \00bb'; /* 内部リンク右下枠の文言 */
	position: absolute;
	bottom: .5rem;
	right: 1rem;
	font-size: 70%;
	background-color: #ffd242; /* 内部リンク右下枠の背景色 */
	padding: .4em 3em;
	font-weight: bold;
	color: #fff; /* 内部リンク右下枠の文字色 */
	border-radius: 2px;
}

/*ヘッダー隙間スタイル*/
.logo-image * {
  display: block;
}

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

/*Cocoon付箋の色調整*/
.blank-box.sticky.st-blue {
border-color: #51a8ff;
background-color: #eff7ff;
}

/*ボックス内リストli uiタグ*/

.blank-box li {
list-style-type: none;
padding-top:4px;
padding-bottom:4px;
margin: 0 0 0px -10px  !important;
}
 
.blank-box li::before {
position: relative;
display: inline-block;
top: -2px;
left: -12px;
width: 6px;
height: 6px;
content: '';
border-radius: 100%;
background: #ff2151;
}

/*アピールエリアの画像の縦横比を保持*/
#appeal {
    height: calc(100vw * calc(445 / 1500));
}

/*広告管理用タグ削除*/
.tag-link-1337{
    display: none;
}

/*光らせるボタン*/
.reflection-img{
    position    :relative;
	margin-top:-1em;
    overflow    :hidden;
}

.reflection {
    height      :100%;
    width       :25px;
    position    :absolute;
    top         :-180px;
    left        :0;
    background-color: #fff;
    opacity     :0;
    transform: rotate(45deg);
    animation: reflection 2s ease-in-out infinite;
    -webkit-transform: rotate(45deg);
    -webkit-animation: reflection 3s ease-in-out infinite;
    -moz-transform: rotate(45deg);
    -moz-animation: reflection 2s ease-in-out infinite;
    -ms-transform: rotate(45deg);
    -ms-animation: reflection 2s ease-in-out infinite;
    -o-transform: rotate(45deg);
    -o-animation: reflection 3s ease-in-out infinite;
}
 
@keyframes reflection {
    0% { transform: scale(0) rotate(45deg); opacity: 0; }
    80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { transform: scale(4) rotate(45deg); opacity: 1; }
    100% { transform: scale(50) rotate(45deg); opacity: 0; }
}
@-webkit-keyframes reflection {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-moz-keyframes reflection {
    0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-ms-keyframes reflection {
    0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
}
@-o-keyframes reflection {
    0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
    80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
    81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
    100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
}

/*TOCカスタマイズ*/
#toc_container {
	display: block !important;
	margin-bottom: 30px;
  	padding: 15px 20px 5px 20px;
  	background: #fff;
  	border: 3px solid #ffc1c1;
  	border-radius: 2px;
  	color: #666; }

#toc_container .toc_title {
  text-align: center;
  margin-bottom: 25px;
  margin-top: 0;
  padding-top: 0;
  color:#e597b2;
  padding-bottom: 0px;
  font-size: 1.5em;
  border-bottom: 2px solid #ffe4e1; }

#toc_container .toc_list {
  list-style-type: none !important;
  counter-reset: li; }

#toc_container .toc_list > li {
  position: relative;
  margin-bottom: 15px;
padding-top:2px;
  margin-left: 6px;
  line-height: 1.25em;
  font-size: 0.9em; }

#toc_container .toc_list > li:after {
  counter-increment: li;
  content: counter(li) ;
  position: absolute;
  left: -35px!important;
  top: 4px;
  background: none;
  font-size: 1.4em;
  letter-spacing: 0px;
  color: #e597b2; }

#toc_container .toc_list > li a {
  text-decoration: none !important;
color:#666; }

#toc_container .toc_list > li a:hover {
  text-decoration: underline !important; }

#toc_container .toc_list > li ul {
  list-style-type: disc;
  margin-top: 15px;
  padding-left: 20px;
  color: #e597b2; }

#toc_container .toc_list > li > ul li {
  font-size: 0.9em;
  margin-bottom: 8px; }

#toc_container .toc_toggle {
    font-size: 0.6em;
    margin-left: 4px;
}

#toc_container .toc_toggle a {
    text-decoration: none;
    color: #e597b2;
}

#toc_container .toc_toggle a:hover {
    color: #e597b2;
}

@media only screen and (min-width: 641px) {
  #toc_container {
    padding: 20px 40px 10px 40px; }

  #toc_container .toc_title {
    font-size: 1.5em; }

  #toc_container .toc_list > li {
    margin-bottom: 18px;
    margin-left: 12px;
    font-size: 1em; }

  #toc_container .toc_list > li:after {
    left: -48px;
    top: 0px;
    font-size: 26px; } }

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1240px以下*/
@media screen and (max-width: 1240px){
  /*必要ならばここにコードを書く*/
}
/*1030px以下*/
@media screen and (max-width: 1030px){
  /*必要ならばここにコードを書く*/
	/*table*/
	table th {
  		font-size:14px;
  		padding : 5px 9px;
	}
	table td {
		font-size:14px;
  		padding : 5px 9px;
	}
}

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

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
/*エディタ枠カスタマイズ2019/9*/
#tinymce.main.article {
    max-width: 710px;
}

/************************************
** グッドバッドボックス
************************************/
.gb-box-wrap{
    background:#fff4f4;
    padding: 1.5em;
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: 5px;
    margin-top: 3px;
}
.gb-box-icon:before{
    font-size:2em;
    padding-right:0.5em;
}
.gb-good:before{
    font-family: "FontAwesome";
    content: '\f164';
    color:#ff96ae;
}
.gb-bad:before{
    font-family: "FontAwesome";
    content: '\f165';
    color:#35c9ff;
}
.gb-box{
    border-left:1px solid #ff96ae;
}
.gb-box-wrap ul{
   list-style: none;
   padding:0;
   margin:0 0 0 0.5em;
}
.gb-box-wrap ul li { 
   position: relative;
   margin:0.5em 0 !important;
   padding: 0 0 0.5em 1.4em;
}
.gb-box-wrap ul li:last-child{ 
   border:none;
}
.gb-box-wrap ul li:before {
   background-color:  #ff96ae;
   position: absolute;
   content: '';
   top:10px;
   left:8px;
   width: 7px;
   height: 7px;
   border-radius: 4px;
}
.sm-bal{
    font-size: 0.9em;
    display: inline-block;
    position: relative;
    background: #ff96ae;
    color: #fff4f4;
    line-height: 1.5;
    border-radius: 15px;
    z-index: 1;
    margin: 0;
    padding: 0.5em 1em;
}
.sm-bal:after{
    content: '';
    position: absolute;
    margin-left: -22px;
    border: 10px solid transparent;
    border-top: 10px solid #ff96ae;
    top: 100%;
    left: 40px;
}
.sm-bal p{
    margin:0;
}
.bad-color-bal{
    background: #35c9ff;
}
.bad-color-bal:after{
    border-top: 10px solid #35c9ff;
}
.bad-color{
    background:#f4fcff;
}
.bad-color .gb-box-icon i{
    color:#35c9ff;
}
.bad-color .gb-box{
    border-left:1px solid #35c9ff;
}
.bad-color ul li:before {
     background-color:  #35c9ff; 
}
/* スマホ */
@media screen and (max-width: 559px) {
	.gb-box-icon:before{
		font-size:1.6em;
	}
}

/* ---おすすめ記事一覧（記事下)--- */
table.si-pickup-table td {
    padding: 0;
}

table.si-pickup-table td span a {
    color: #444;
    white-space: normal;
    /* margin: 5px 5px 10px 5px; */
    font-size: 13px!important;
    font-weight: 200!important;
    line-height: 1.4;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    margin-bottom: 5px;
    text-align: center;
}

table.si-pickup-table, table.si-pickup-table td, table.si-pickup-table th {
    border: 1px solid transparent;
}

/* 記事下カテゴリー一覧 */
h2.related-entry-heading span {
  color: #555;
}

.related-entry-card-thumb img {
  border-radius: 10px;
  box-shadow: 0 2px 4px rgb(0 0 0 / 22%);
}

.entry-card-title,
.related-entry-card-title {
  color: #555;
}

.rect-mini-card .related-entry-card-wrap {
  border-bottom: 1px dashed #ccc; /* 区切り線 */
}

.related-entry-card .cat-label {
  display: none; /* カテゴリー非表示 */
}

/*記事下プロフィール*/
.author-name {
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 10px;
}
.author-box .author-name a {
    text-decoration: none;
    color: #333;
}
.author-box p {
    margin-top: 0.3em;
    line-height: 1.6;
}
.author-box p a {
    text-decoration: none;
    color: #008cee;
}
.author-box p a:hover {
    text-decoration: underline;
    color: #008cee;
}
.author-box .sns-follow-buttons a.follow-button {
    font-size: 20px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    margin-bottom: 4px;
    margin-right: 8px;
    background: none;
    color: #fff;
}
.author-box a.follow-button span {
    line-height: 40px;
}
.author-box a.follow-button span::before {
    font-size: 22px;
}
.author-box .icon-twitter-logo::before {
    font-family: FontAwesome;
    content: "\f099"
}
.author-box .icon-facebook-logo::before {
    font-family: FontAwesome;
    content: "\f09a";
}
.author-box .icon-instagram-new::before {
    font-family: FontAwesome;
    content: "\f16d";
}
.author-box .icon-hatebu-logo::before {
    font-family: Verdana;
    content: 'B!';
    font-weight: bold;
}
.author-box .icon-google-plus-logo::before {
    font-family: FontAwesome;
    content: "\f0d5";
}
.author-box .icon-youtube-logo::before {
    font-family: FontAwesome;
    content: "\f167";
}
.author-box .icon-pinterest-logo::before {
    font-family: FontAwesome;
    content: "\f231";
}
.author-box .icon-amazon-logo::before {
    font-family: FontAwesome;
    content: "\f270";
}
.author-box .icon-github-logo::before {
    font-family: FontAwesome;
    content: "\f09b";
}
.author-box .website-button { background-color: #47555c !important; }
.author-box .twitter-button { background-color: #1da1f2 !important; }
.author-box .facebook-button { background-color: #3b5998 !important; }
.author-box .hatebu-button { background-color: #2c6ebd !important; }
.author-box .google-plus-button { background-color: #dd4b39 !important; }
.author-box .instagram-button { background: #e1306c !important; }
.author-box .youtube-button { background-color: #ef1515 !important; }
.author-box .flickr-button { background-color: #0063dc !important; }
.author-box .pinterest-button { background-color: #bd081c !important; }
.author-box .line-button { background-color: #00c300 !important; }
.author-box .amazon-button { background-color: #ff9900 !important; }
.author-box .rakuten-room-button { background-color: #c42e7f !important; }
.author-box .github-button { background-color: #333 !important; }
.author-box .feedly-button { background-color: #2bb24c !important; }
.author-box .rss-button { background-color: #f26522 !important; }
.author-box .soundcloud-button { background-color: #ff7700 !important; }
#main .author-box {
    border: none;
    border-radius: 3px;
    margin: 1em 0;
    line-height: 1.4;
    position: relative;
    padding: 1.4% 2% 1.8% 0;
    box-shadow: 0 5px 20px -5px rgba(105,115,131,.35);
}
#main .author-widget-name {
    display: inline-block;
    position: relative;
    margin: 10px 0 0 -170px;
    padding: 6px 12px;
    border-radius: 20px;
    background: #eaedf2;
    color: #555;
    font-size: 14px;
    font-weight: 700;
    z-index: 1;
}
#main .author-widget-name::before {
    position: absolute;
    content: '';
    z-index: -1;
    bottom: -30px;
    left: 60px;
    border: 15px solid transparent;
    border-top: solid 30px #eaedf2;
    transform: rotate(-40deg);
}
#main .author-thumb {
    float: left;
    margin: 0;
    padding-top: 70px;
    width: 200px;
    text-align: center;
}
#main .author-thumb img {
    border: solid 5px #dfe2e8;
    width: 100px;
}
#main .author-content {
    margin: -30px 0 0 200px;
    padding-left: 30px;
    border-left: 2px #eaedf2 dashed;
}
#main .author-box .author-name {
    line-height: 1;
}
#main .author-box p {
    font-size: .95em;
}
@media screen and (max-width: 480px){
#main .author-box {
    margin: 1em 10px;
    padding: 16px;
    text-align: center;
}
#main .author-widget-name {
    margin: 0;
}
#main .author-widget-name::before {
    left: 50px;
}
#main .author-thumb {
    float: none;
    margin: 0;
    padding-top: 20px;
    width: 100%;
}
#main .author-box .author-name {
    font-size: 14px;
}
#main .author-content {
    margin: 10px 0 0 0;
    padding-left: 0;
    border: none;
}
#main .author-box p {
    font-size: 14px;
    text-align: left;
}
#main .author-box .sns-follow-buttons {
    justify-content: center;
}
}

/************************************
** 新規 2019/9
************************************/
/************************************
** main
************************************/
.home #main{
	background:none;
	padding-top:0;
}
/************************************
** ヘッダー
************************************/
.logo-image {
       padding: 2em 0 1em;
}

/* モバイルヘッダーの背景とアイコンの色 */
.mobile-menu-buttons .menu-button {
    background: #ffced9;
}
/*768px以下*/
@media screen and (max-width: 768px){
	.header div.header-in, .appeal div.appeal-in{
		display:none;
	}
	.menu-drawer li {
    	font-size: 0.8em;
	}
	.menu-close-button::before{
		color:#ff96ae;
	}
	.menu-drawer a{
		display:inline-block;
	}
	.menu-drawer li:before{
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		content: "\f138";
    	font-size: 0.9em;
    	margin-right: 8px;
		color:#ff96ae;
	}
	.menu-drawer .sub-menu li:before{
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
	content: "\f054";
	}
	.mobile-header-menu-buttons{
		position:absolute;
	}
	.mobile-menu-buttons .menu-icon{
		color:#ff96ae;
	}
	.mobile-header-menu-buttons .menu-icon{
	     margin: 10px 0 0 0;		
	}
	.mobile-menu-buttons .menu-caption{
		display:none;
	}
}
/*(スマホ)480px以下*/
@media screen and (max-width: 480px){
	.logo-image {
       padding: 1.3em 2em 0.5em;
	}
	.logo-menu-button a{
		padding:0.1em 0 0;
	}
}

/************************************
** トップ h2
************************************/
.home .article h2{
    padding: 0.5em 0;
	margin:2em 0.2em 1.5em;
    color: #fff;
    background: #ff96ae;
	border:2px dashed #fcd4dd;
	font-size:1em;
	text-align:center;
	letter-spacing:1px;
	border-radius:2px;
	box-shadow: 0 0 0 4px #ff96ae;
}
.home .article h2:first-child{
	margin:-0.6em 0.2em 1.5em;
}
/*(スマホ)480px以下*/
@media screen and (max-width: 768px){
.home .article h2:first-child{
	margin:1em 0;
}
}
/************************************
** グローバルメニュー
************************************/
@media (min-width: 1024px) {
#header-container .navi {
    border-top: 2px dashed #fcd4dd;
	border-bottom: 2px dashed #fcd4dd;
    padding: 2px 0;
    box-shadow: 0 0 0 4px #ff96ae;
}
}
#navi .navi-in>.menu-header .sub-menu {
    border-bottom: 2px dashed #fcd4dd;
	border-left: 2px dashed #fcd4dd;
	border-right: 2px dashed #fcd4dd;
    box-shadow: 0 0 0 4px #ff96ae;
}
.header-container-in.hlt-top-menu .logo-header img{
	max-height:100%;	
	height:auto;
    max-width: 210px;
    vertical-align: middle;
    margin: 20px 0;
}
.navi{
	background:none;
}
.navi-in > ul .sub-menu{
	background:#fff;
	box-shadow: 0 0 10px rgba(30,30,30,.1);
}
.navi-in > ul li{
	width:auto;
	padding:0 10px;
	height:50px;
	line-height:50px;
	letter-spacing:1px;
}
.navi-in a{
	font-size:13px;
	font-weight:bold;
	display: inline-block;
	position: relative;
	color:#fff;
	padding:0 20px;
	display:block;
	text-decoration:none;
}
.navi-in a:hover{
	background:none !important;
}
.navi-in a:before{
	position: absolute;
	left: 0;
	bottom:6px;
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background: #fff;
	transform: scale(0, 1);
	transition: 0.4s;
}
.navi-in a:hover:before {
	transform: scale(1);
}
.navi-in > ul .sub-menu a{
	color:#666;
	font-size:12px;
}
.navi-in > ul .sub-menu a:before{
	background: #fff;
}
.header-container-in.hlt-top-menu .logo-header{
	max-height:100%;
}
@media screen and (max-width: 834px){
#navi .navi-in > .menu-mobile li a {
    font-size: 12px;
}
}
/************************************
** トップページカスタマイズ
************************************/
.home .article-footer{
	display:none;
}
.home .top-wrap{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content:space-between;
	-ms-flex-wrap: wrap;
	flex-wrap:wrap;
	margin-bottom:1rem;
}
.home .top-wrap .blogcard{
	border:none;
	padding:0;
	margin:0;
}
.home .top-wrap .blogcard-wrap{
	border:none;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
	background:#fff;
	padding:0 !important;
	margin:1rem 0 !important;
	flex-basis:48%;
}
.home .top-wrap .blogcard-wrap:hover{
	transform: translateY(-3px);
	box-shadow: 0px 3px 18px 3px rgba(0, 0, 0, 0.08);
	opacity:1 !important;
}
.home .top-wrap .blogcard-wrap:hover .blogcard-thumbnail img{
	transform:none;
}
.home .top-wrap .blogcard-content{
	flex:unset;
	 width: 100%;
    margin: 0;
    padding: 1em;
}
.home .top-wrap a.blogcard-wrap:hover{
	background:#fff !important;
}
.home .top-wrap .blogcard-thumbnail {
    margin: 0 !important;
    flex: unset;
    overflow: visible;
	width:100% !important;
	float:none;
}
.home .top-wrap .blogcard-title{
	line-height:1.6;
	letter-spacing:1px;
}
.home .top-wrap .internal-blogcard::after{
	display:none;
}
/*(スマホ)480px以下*/
@media screen and (max-width: 480px){
	.home .top-wrap .blogcard-wrap{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction:column;
		margin:0.5rem 0 !important;
	}
}
/************************************
** トップページボタン
************************************/
.home .btn{
background:#4acfff;
	border-radius:30px;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
	letter-spacing:1px;
}
.home .btn:hover{
	transform: translateY(-1px);
	box-shadow: 0px 3px 18px 3px rgba(0, 0, 0, 0.08);
	opacity:1 !important;
}
/************************************
** トップページタブ切り替え
************************************/
.tabs {
  width: 100%;
  margin: 0 auto;
	font-size:1.1em;
}
.tabs .tab {
  font-size: 0.8em;
  font-weight: bold;
  letter-spacing: 2px;
  text-align: center;
  box-shadow: inset 1px 1px 0 0 #e0ddd1, 1px 1px 0 0 #e0ddd1, 1px 0 0 0 #e0ddd1;
  height: 48px;
  line-height: 48px;
  text-align: center;
  display: block;
  float: left;
  transition: all 0.2s ease;
}
.tabs .tab:first-of-type {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.tabs .tab:last-of-type {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.tab-content {
  display: none;
  clear: both;
  overflow: hidden;
  padding-top: 1em;
}
.tabs .hover:hover {
  opacity: 0.75;
}
@media screen and (max-width: 480px) {
  .tabs .hover:hover {
    opacity: 1;
  }
}
.tabs input[type=radio] {
  display: none;
}
.more-btn {
  text-align: center;
}
/************************************
** アプリ欄カテゴリタブ
************************************/
.app-tab {
  background: #fff;
  width: calc(100%/2);
  color: #aaa;
}
#new:checked ~ #new-content,#recommend:checked ~ #recommend-content,#review:checked ~ #review-content,#advanced:checked ~ #advanced-content{
  display: block;
}
/*選択されているタブ*/
.tabs input:checked + .app-tab {
  background: #4acfff;
  color: #fff;
}
/************************************
** その他カテゴリタブ
************************************/
.other-tab {
  background: #fff;
  width: calc(100%/3);
  color: #aaa;
}
#capture:checked ~ #capture-content,#maplestorym:checked ~ #maplestorym-content,#miscellaneous:checked ~ #miscellaneous-content{
  display: block;
}
/*選択されているタブ*/
.tabs input:checked + .other-tab {
  background: #4acfff;
  color: #fff;
}
/************************************
** アニメーション設定
************************************/
.tab-content{
  animation-name:fade-in;
  animation-duration:0.5s; 
  animation-timing-function: ease-out;
  animation-delay:0s;
}
@keyframes fade-in {
  0% {opacity: 0; transform: translate3d(0,20px,0);}
  100% {opacity: 1; transform: translate3d(0,0,0);}
}

/************************************
** エントリーカード
************************************/
/*(PCタブレット)481px以上*/
@media screen and (min-width: 481px){
.home .top-card-wrap .widget-entry-cards{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content:space-between;
	-ms-flex-wrap: wrap;
	flex-wrap:wrap;
	margin-bottom:1rem;
}
.home .top-wrap .blogcard{
	border:none;
	padding:0;
	margin:0;
}
.home .top-card-wrap .widget-entry-cards .a-wrap{
	border:none;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
	background:#fff;
	padding:0 !important;
	margin:1rem 0 !important;
	flex-basis:48%;
}
.home .top-card-wrap .widget-entry-cards .a-wrap:hover{
	transform: translateY(-3px);
	box-shadow: 0px 3px 18px 3px rgba(0, 0, 0, 0.08);
	opacity:1 !important;
}
.home .top-card-wrap .widget-entry-cards:hover .blogcard-thumbnail img{
	transform:none;
}
.home .top-card-wrap .widget-entry-cards figure {
    margin: 0 !important;
    flex: unset;
    overflow: visible;
	width:100%;
	float:none;
}
.home .top-card-wrap .widget-entry-cards  .widget-entry-card-content{
	line-height:1.6;
	letter-spacing:1px;
	flex:unset;
	width: 100%;
    margin: 0;
    padding: 1em;
	font-weight:bold;
	color:#666;
	font-size:16px;
}
.home .top-card-wrap .cf::after{
	content:unset;
}
}
/*(スマホ)480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	.home .top-card-wrap .widget-entry-cards .a-wrap {
    line-height: 1.6;
    padding: 0;
    background: #fff;
    margin-bottom: 15px;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
}
.home .top-card-wrap .widget-entry-cards figure{
	padding:0.5px;
	margin:0;
	width:150px;
	float:left;
}
.home .top-card-wrap .widget-entry-cards figure img{
	display:block;
}
.home .top-card-wrap .widget-entry-card-content {
margin-left: 150px;
    line-height: 1.5;
    letter-spacing: 0.5px;
    font-weight: bold;
    font-size: 0.95em;
    color: #666;
    padding: 0.5em;
}
.home .top-card-wrap .widget-entry-cards .a-wrap:hover{
	transform: translateY(-3px);
	box-shadow: 0px 3px 18px 3px rgba(0, 0, 0, 0.08);
	opacity:1 !important;
}
	.home .entry-content{
		margin-bottom:0;
	}
}
/************************************
** エントリーカード
************************************/
.navi-footer-in > .menu-footer li.menu-item a:before{
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f138";
	font-size: 0.9em;
    margin-right: 8px;
}
.navi-footer-in > .menu-footer li,.navi-footer-in > .menu-footer li:last-child{
	border:none;
}
/************************************
** サイドバー人気記事
************************************/
.popular-entry-card-title{
	letter-spacing: 1px;
    font-size: 16px;
    color: #666;
    font-weight: bold;
    line-height: 1.6;
}
/************************************
** サイドバーカテゴリー
************************************/
.widget_categories ul li a{
font-size: 0.9em;
    font-weight: bold;
    color: #666;
}
.widget_categories ul li a:before{
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f138";
    font-size: 0.9em;
    margin-right: 8px;
	color:#ff96ae;
}
.widget_categories .post-count{
	color:#aaa;
}
/************************************
** サイドバープロフィール
************************************/
.sidebar .author-box{
	border:none;
}
.sidebar .author-box .author-name a{
	color: #666;
    padding: 1em 0;
    display: block;
	font-size:14px;
}
.sidebar .author-box .sns-follow,.sidebar .author-box .sns-follow-message{
	display:block !important;
}
.sidebar .author-box p{
	letter-spacing:1px;
	line-height:1.8;
	font-size:14px;
}
.sidebar .author-box .sns-follow-message{
	margin-top:35px;
	letter-spacing:1px;
	font-size:12px;
	margin-bottom:10px;
}
.sidebar .author-box .sns-follow-message:before{
	content:"＼";
	margin-right:5px;
}
.sidebar .author-box .sns-follow-message:after{
	content:"／";
	margin-left:5px;
}
.sidebar .author-box .sns-follow-buttons a {
    width: 40px;
    height: 40px;
    line-height: 40px;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
}
.sidebar .author-box .sns-follow-buttons .twitter-button,.sidebar .author-box .sns-follow-buttons .twitter-button:hover{
	background:#00acee;
	color:#fff;
	border:none;
}
.sidebar .author-box .sns-follow-buttons .feedly-button,.sidebar .author-box .sns-follow-buttons .feedly-button:hover {
    background: #2bb24c;
	color:#fff;
	border:none;
}
.sidebar .author-box .sns-follow-buttons .rss-button,.sidebar .author-box .sns-follow-buttons .rss-button:hover{
	background:#f26522;
	color:#fff;
	border:none;	
}
/************************************
** ページトップへ
************************************/
.go-to-top{
	bottom:20px;
	right:20px;
}
.go-to-top-button {
    background: #ff96ae;
    color: #fff;
    width: 55px;
    height: 55px;
	border-radius: 50%;
	box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.18);
}
/************************************
** フッター
************************************/
@media screen and (max-width: 1023px){
.navi-footer {
    padding: 0 10px;
    margin-bottom: 15px;
}
}
@media screen and (max-width: 834px){
	.navi-footer-in > .menu-footer li.menu-item a {
		text-align:left;
		padding:3px 0;
	}
	.navi-footer-in > .menu-footer{
		display:block;
	}
	.navi-footer-in > .menu-footer li.menu-item{
		width:100%;
	}
}
/************************************
** スマホ スクロール上部固定
************************************/
.p-spfixed-ad{
	position:fixed;
	top:0;
	left:0;
	background: #fff4ff; /* 背景色 */
    margin: 0;
    padding: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	box-shadow: 0 3px 15px rgba(100,100,100,.1); /* 影 */
	z-index:99999;
	width:100%;
	display:none;
}
.p-spfixed-ad br{
	display:none;
}
.p-spfixed-ad-text{
	font-size: 12px; /* 文字大きさ */
	font-weight: 600; /* 文字太さ */
    margin: 0;
	color: #523c41;/* 文字色 */
	padding: 0 10px;/* 文字余白 */
	line-height: 1.3;/* 文字行間 */
	max-width: 180px;/* 文字最大幅 */
    text-align: justify;
	margin-right: auto;
}
.p-spfixed-ad  img{
	display:block;
}
.p-spfixed-ad > img{
	-ms-flex-preferred-size: 40px;/* アイコン横幅 */
	flex-basis: 40px;/* アイコン横幅 */
	max-width:40px;/* アイコン横幅最大 */
	height:40px;/* アイコン高さ */
	margin-left:10px;/* アイコン余白 */
	border-radius: 30%;/* アイコン角丸 */
}
.p-spfixed-ad .p-spfixed-ad-btn{
	-ms-flex-preferred-size: 130px;/* ボタン横幅 */
	flex-basis: 130px;/* ボタン横幅 */
	padding:7px;/* ボタン余白 */
}
/*560px以上 タブレット*/
@media screen and (min-width: 560px){
	.p-spfixed-ad{
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.p-spfixed-ad-text{
		max-width:100%;
	}
}

p:empty::before {
    display: none;
}
/************************************
** 新アプリダウンロード枠
************************************/
.appbox {
  text-align: left;
  padding: 15px 10px;
  border: 2px solid #4ACFFF;
  overflow: hidden;
  max-width: 500px;
  background: #f9ffff;
  margin: 10px 0px 20px;
  box-shadow: 5px 6px 1px 0 rgba(127, 127, 255, .10);
}
.appbox p {
  margin: 0;
}
.appbox a:after {
  display: none;
}
.appbox__icon {
float:left;
  border-radius: 10%;
  overflow: hidden;
  margin: 0 1em 0 0 !important;
  width: 25% !important;
  height: auto !important;
  max-width: 120px !important;
}

.appbox__name {
  font-size: 1.15em;
  font-weight: bold;
  line-height: 1.5em !important;
  max-height: 3em;
  overflow: hidden;
}

.appbox ul {
margin: 0;
    padding: 0;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.5px;
    display: flex;
    flex-wrap: wrap;
}
.appbox ul li{
list-style:none;
border-radius:6px;
padding:1.0px 10px;
background:#ff96ae;
color:#FFFFFF;
font-weight:600;
margin-bottom:1em;
margin-right:3px;
}
.appbox__btn a{
  color:#fff;
  text-decoration:none !important;
  background:#ff5656;
  border-bottom: solid 4px #4f0d0d;
  padding: 0.5em 1em !important;
  border-radius: 7px;
  margin: 0.2em auto 0 !important;
  display: flex;
  align-items: center;
  font-size:16px;
}
.appbox__btn:hover{
  opacity:0.9;
}
.appbox__btn a:active {
  -webkit-transform: translateY(4px);
  transform: translateY(4px);
  border-bottom: none;
}
.appbox__btn .appbox__btn-em{
    line-height: 1.3;
    text-align: center;
    font-weight: 600;
    font-size: 0.9em;
    display: block;
    color: #ff5656;
    background: #fff;
    padding: 3px !important;
    margin: 0 !important;
    border-radius: 7px;
    min-width: 45px;
    max-width: 80px;
}
.appbox__btn .appbox__btn-text{
  font-weight: 600;
  font-size: 0.9em;
  color:#fff;
  letter-spacing: 0.5px;
  line-height: 18px;
  margin: 0.6em auto 0.6em 0 !important;
  padding: 0 0.5em !important;
}
.appbox__btn i,.appbox__btn svg{
  color:#fff;
  min-width:22px;
}
@media screen and (max-width: 600px) {
.appbox__detail {
    min-height: 90px;
   margin-bottom: 7px;
}
}
@media screen and (max-width: 320px){
.appbox__detail {
    min-height: 72px;
}
}


/*バッチ調整CSS*/
.badge {
    padding: 2px 5px 1.5px !important;
	 font-size: 12px !important;
	border-radius: 3px !important;
	font-weight: 600;
}

/*動画紹介用CSSお試し*/
.dougasyokai {
  text-align: center; /* コンテナ全体を中央寄せ */
	margin-top: 0em;
	margin-bottom: 0.5em;
}

.dougasyokai-text {
  font-size: 15px; /* テキストのサイズ */
  font-weight: bold;
  color: #ff7f7f; /* 文字色 */
  margin-bottom 0px; /* テキストの下に余白 */
  background-color: #fff9fc; /* 背景色 */
  display: inline-block; /* テキストにフィットするサイズに */
  padding: 4px 15px; /* テキストの周りに余白 */
  border-radius: 18px; /* 背景色の角を丸める */
}
/*スクロールテーブルお試し*/
.table_box {
    overflow-x: auto;
    display: block;
}

.table_box table  th {
  background: #efe0ff; /* 背景色 */
  min-width: 80px; 
}

.table_box table td {
    white-space: nowrap;
  text-align: center;
  box-sizing: border-box;
  min-width: 140px; /* 日本語の5文字分に相当する最小幅を設定 */
  white-space: pre-wrap; /* 改行を含む空白文字を保持し、折り返しを許可 */
  word-wrap: break-word; /* 長い単語の途中で折り返しを許可 */
  word-break: break-all; /* 文字の途中で折り返しを許可 */
}

/* スクロールバー全体を対象にする */
.table_box::-webkit-scrollbar {
    width: 10px; /* スクロールバーの幅 */
    height: 10px; /* スクロールバーの高さ */
}

/* スクロールバーの背景部分をカスタマイズ */
.table_box::-webkit-scrollbar-track {
    background: #f1f1f1; /* スクロールバーの背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分をカスタマイズ */
.table_box::-webkit-scrollbar-thumb {
    background: #888; /* スクロールバーの操作部分の背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分にホバーした時のスタイル（ここまでテーブル） */
.table_box::-webkit-scrollbar-thumb:hover {
    background: #555; /* ホバー時のスクロールバーの操作部分の背景色 */
}

/* 【テキスト一体型】テキストをコピーさせるショートコードのデザイン */
.clipCopyUnion {
    position: relative;
}

.clipCopyUnion .clipCopyUnionPopup {
    position: absolute;
    margin: 1.5em 0;
    padding: 4px 6px;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    background: #333;
    border-radius: 6px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    display: none;
    top: -50px;
    left: 45%; /* ポップアップの左右の位置を決定 */
}

.clipCopyUnion .clipCopyUnionPopup:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -9px;
    border: 8px solid transparent;
    border-top: 8px solid #333;
}

.clipCopyUnion:hover .clipCopyUnionPopup {
    display: none;
}

button.clipCopyUnionButton {
    width: 100%;
    color: #333333;
    background: #fafafa;
    border-radius: 4px;
    border-bottom: solid 3px #CCCCCC;
    border-left: solid 0px;
    border-right: solid 0px;
    border-top: solid 0px;
    padding: 2px 0px;
}

button.clipCopyUnionButton:hover {
    border-bottom: solid 2px #CCCCCC;
    opacity: 0.7;
}


.balloon1 {
    position: relative;
    display: inline-block;
    margin: 1.5em 0;
    padding: 4px 6px;
    max-width: 100%;
    color: #FFF;
    font-size: 12px;
    font-weight: bold;
    background: #333;
    border-radius: 6px;
left: 47%;
box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
}

.balloon1:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -9px;
    border: 8px solid transparent;
    border-top: 8px solid #333;
}

.balloon1 p {
  margin: 0;
  padding: 0;
}

/*ブロックエディタカスタムテキスト*/
.cocoon-custom-text-1{
	color: #FF6600;
	font-weight: bold;
}
.cocoon-custom-text-2{
	color: #FF0000;
	font-weight: bold;
}

/*ビジュアルエディターのスタイルを書く*/
.block-editor-writing-flow {
max-width: 680px;
	margin-left: 1em;
}

/*テーブルリンクの全体設定*/
.table-cell-link td {
  padding: 0;
  height: 0;
}

.table-cell-link a {
  display: flex;
  flex-wrap: wrap;
  height: 100%;
  padding: 2px 5px;
  align-items: center;
}

.table-cell-link a span {
  width: 100%;
}

/* テーブルおすすめ特集リンク仮 */
.table-cell-box td {
    position: relative;
}


.table-cell-box td a.cell-link {
    position: relative;
    z-index: 2;
    text-decoration: none;
    display: inline-block; /* 文字のレイアウトを維持 */
}

/* `a.cell-link` の擬似要素を使ってセル全体をクリック可能にする */
.table-cell-box td a.cell-link::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

/* ホバー時の色をセル全体に適用 */
.table-cell-box td:hover {
    background-color: rgba(0, 0, 0, 0.1);
}

/* クリック範囲を広げる */
.table-cell-box td a.cell-link {
    display: block;
    width: 100%;
    height: 100%;
}

/* スマホ記事下のH2デザイン */
.h2_osusume { 
    padding: 0.5em 0 !important;
    color: #fff !important;
    background: #ff96ae !important;
    border: 2px dashed #fcd4dd;
    border-left: 2px dashed #fcd4dd !important;
    font-size: 1em !important;
    text-align: center !important;
    letter-spacing: 1px;
    border-radius: 2px !important;
    box-shadow: 0 0 0 4px #ff96ae;
}

/* ───────── 2025/広告用ボタンカスタマイズアニメーション定義 ───────── */
@keyframes floatUpDown{
  0%,100%{ transform:translateY(0); }
  50%    { transform:translateY(-4px); }
}

@keyframes gentleGlow{
  0%,100%{ box-shadow:0 4px 6px rgba(0,0,0,.12); }
  50%    { box-shadow:0 4px 14px rgba(255,150,80,.55); }
}

@keyframes whitePulse{
  0%,100%{ filter:brightness(1); }
  50%    { filter:brightness(1.25); }
}

/* ───────── ボタン本体 ───────── */
.cta-btn{
  display:inline-block;
  width:100%;
  margin:8px 0; padding:12px 10px;
  font:700 16px/1 sans-serif;
  color:#fff; text-align:center; text-decoration:none;
  background: linear-gradient(135deg, #ff7d7d 0%, #ffa64d 100%);
  border-radius:8px;

  /* ★ 3つのアニメを同時に適用 ★ */
  animation:
    floatUpDown 3s ease-in-out infinite,
    gentleGlow  3s ease-in-out infinite,
    whitePulse  2.8s ease-in-out infinite;

  transition:transform .12s ease;
  will-change:transform, box-shadow, filter;   /* パフォーマンスヒント */
}
.cta-btn:hover { transform:scale(1.03); }
.cta-btn:active{ transform:scale(0.95); }

/* 動きを減らしたいユーザーへの配慮 */
@media (prefers-reduced-motion: reduce){
  .cta-btn{ animation:none; }
}