@charset "utf-8";
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.1.5/css/all.min.css');
/**二色ライン**/
.is-style-color-bar{
border-bottom: solid 3px #cce4ff;
position: relative;
margin:30px 0;
color:#5472cd;
padding-bottom:5px;
}
.is-style-color-bar:after{
position: absolute;
content: " ";
display: block;
border-bottom: solid 3px #5472cd;
bottom: -3px;
width: 20%;
}

/**タイトル両サイドライン**/
.is-style-title_line {
display: flex;
justify-content: center;
align-items: center;
text-align: center;
color:#2d91a3;
margin-top:10px;
margin-bottom:10px;
}

.is-style-title_line::before,
.is-style-title_line::after {
content: '';
width: 70px;
height: 3px;
background-color:  currentColor !important;
}

.is-style-title_line::before {
margin-right: 20px;
}
.is-style-title_line::after {
margin-left: 20px;
}

/**タイトル短い下線**/
.is-style-under_line {
position: relative;
display: flex;
justify-content: center;
align-items: center;
text-align:center;
color:#2d91a3;
margin-bottom:45px;
}
.is-style-under_line:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 60px;
height: 5px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color:  currentColor !important;
border-radius: 2px;
}

.is-style-long_under_line{
  /*線の種類（実線） 太さ 色*/
  border-bottom: solid 3px  currentColor !important;
}

/**リスト**/
.is-style-list_mark li:before{
font-family:"Font Awesome 5 Free";
content:'\f0da';
font-weight:900;
padding-right:5px;
color:#424242;
}

.is-style-list_check li:before{
font-family:"Font Awesome 5 Free";
content:'\f00c';
font-weight:900;
padding-right:5px;
color:#2f9cb7;
}

.is-style-list_pen li:before{
font-family:"Font Awesome 5 Free";
content:'\f5ac';
font-weight:900;
padding-right:5px;
color:#2f9cb7;
}
/**小さい色文字**/
.note{
font-size:15px;
color:#385563;
padding:2px 4px;
}

mark{
background-color:transparent !important;
}

/**マーカー青緑**/
.marker-ao {
background-image: repeating-linear-gradient(-45deg,#9fe3f4 0, #9fe3f4 3px,transparent 3px, transparent 6px);
background-repeat: no-repeat;
background-position: left bottom;
background-size: 100% 30%;
}

/**マーカー黄色**/
.novel_mark{
background-image: repeating-linear-gradient(-45deg,#FFE47D 0, #FFE47D 3px,transparent 3px, transparent 6px);
background-repeat: no-repeat;
background-position: left bottom;
background-size: 100% 30%;
}

/**引用**/
.entry-content blockquote {
	font-style:initial;
	color:initial;
	background:initial;
	box-sizing:initial;
	position:initial;
	margin:initial;
}
.entry-content blockquote:before{
	opacity:initial;
}
.entry-content blockquote:after{
	display:initial;
	font-size:initial;
	opacity:initial;
	bottom:initial;
	right:initial;
}

blockquote.is-style-quote1{
    position: relative;
    padding: 10px 10px 10px 32px;
    box-sizing: border-box;
    color: #464646;
    background: #CBF3FC;
	margin-bottom:20px;
}

blockquote.is-style-quote1:before{
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    content: "\f10d";
	font-family:"Font Awesome 5 Free";
    color: #CBF3FC;
    font-size: 22px;
    line-height: 1;
    z-index: 2;
    font-weight: 900;
}

blockquote.is-style-quote1:after{
    position: absolute;
    content: '';
    left: 0;
    top: 0;
    border-width: 0 0 40px 40px;
    border-style: solid;
    border-color: transparent #ffffff;
}

 blockquote.is-style-quote1 p {
    position: relative;
    padding: 0;
    margin: 10px 0;
    z-index: 3;
    line-height: 1.7;
}

 blockquote.is-style-quote1 cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

/**上付きをメガフォンに**/
sup{
	top:initial;
}
sub, sup{
	position: initial;
    font-size: initial;
}
sub, sup:before{
	font-family:"Font Awesome 5 Free";
	content:'\f0a1';
	font-weight:900;
	margin-right:5px;
}

/* ========== シャドウ付きカード風 ========== */
.is-style-shadow-card {
    text-align: center;
    display: inline-block;
}

.is-style-shadow-card img {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

.is-style-shadow-card figcaption {
    margin-top: 0.5em;
    font-size: 0.9em;
    color: #555;
    white-space: pre-wrap; 
}

/* ========== 枠付き（白背景） ========== */
.is-style-bordered-box {
    background: #fff;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    text-align: center;
    display: inline-block;
}

.is-style-bordered-box img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    height: auto;
}

.is-style-bordered-box figcaption {
    margin-top: 0.5em;
    font-size: 0.9em;
    color: #555;
    white-space: pre-wrap; 
}

/**区切り線**/
/* 点線（短め） */
.is-style-dotted-line {
    border: none !important;
    border-top: 2px dotted  currentColor !important;
    width: 50%;
    margin: 1.5em auto;
    background-color: transparent !important;
}

/* 破線（短め） */
.is-style-dashed-line {
    border: none !important;
    border-top: 2px dashed  currentColor !important;
    width: 40%;
    margin: 1.5em auto;
    background-color: transparent !important;
}

/* 装飾風（濃い点線＋余白） */
.is-style-fancy-divider {
    border: none !important;
    border-top: 3px dotted  currentColor !important;
    width: 60%;
    margin: 2em auto;
    background-color: transparent !important;
}