html{
	scroll-behavior: smooth;
	scroll-padding-top: 20px;
}
/* PC版はコンテンツ幅が640px固定 */
.chapter {
	width: 100%;
	max-width: 640px;
	padding-left: 10px;
	padding-right: 10px;
	margin: auto;
}

/* グループ記事 */
.lecture_group_div .lecture_group {
	display: block;
	padding: 10px 10px 10px 5px;
	border-radius: 10px;
	background: #f8f8f8;
	margin-bottom: var(--lecture_margin_m);
}

.lecture_group_div .lecture_group li {
	list-style-type: none;
	font-size: 12px;
}

.lecture_group_div .lecture_group li a {
	position: relative;
	padding-left: 17px;
	color: #0B649B;
}

.lecture_group_div .lecture_group li a:before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: 1px solid #0B649B;
	position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    margin: auto;
}

.lecture_group_div .lecture_group li a:hover {
	text-decoration: none;
}

.lecture_group_div .lecture_group .selected {
	position: relative;
	display: inline-block;
	padding-left: 17px;
	color: #333;
	font-weight: bold;
}

.lecture_group_div .lecture_group .selected:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #0B649B;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}

.lecture_group_div .lecture_group .selected:dir(rtl),
.lecture_group_div .lecture_group li a:dir(rtl) {
	padding-right: 17px;
}

.lecture_group_div .lecture_group .selected:dir(rtl):before,
.lecture_group_div .lecture_group li a:dir(rtl):before {
	right: 0;
	left: auto;
}

.lecture_group_div .lecture_group .selected:dir(rtl):before {
	border-width: 5px 8px 5px 0px;
	border-color: transparent #0B649C transparent transparent;
}

/* 目次要素：ここから */
.chapter .contents-box {
	width: var(--lecture_size_l);
	background-color: #f8f8f8;
	border: none;
	border-radius: 10px;
	list-style-type: none;
	padding: 20px;
	margin: 0 0 var(--lecture_margin_xl);
}

/* 「目次」という文字 */
.chapter .contents-title {
	font-size: 16px;
	color: #333333;
	height: 24px;
	font-weight: bold;
	margin-bottom: 5px;
}

/* 実際の目次 */
.chapter .contents-body {
	margin-left: 0;
	padding-left: 0;
}

.chapter .contents-body > ul {
	padding-left: 10px;
}
.chapter .contents-body > ul:dir(rtl) {
	padding-left: 0px;
	padding-right: 10px;
}

.chapter .contents-body > ul > li {
	font-weight: bold;
	padding: 0;
	padding-bottom: 3px;
	margin-bottom: 0;
	margin-left: auto;
	list-style-type: square;
	list-style-type: none;
}

.chapter .contents-body > ul > li::marker {
	color: #ff9f38;
	font-size: 32px;
}

.chapter .contents-body > ul > li > a {
	vertical-align: 4px;
	display: inline-block;
}

.chapter .contents-body ul li a:hover {
	opacity: 0.5;
	transition: all 0.3s;
	text-decoration: none;
}

.chapter .contents-body ul > li > ul {
	padding-left: 1.5em;
	padding-bottom: 8px;
} 

.chapter .contents-body ul > li > ul:dir(rtl) {
	padding-left: 0;
	padding-right: 1.5em;
} 

.chapter .contents-body > ul > li > ul > li {
	font-size: 12px;
	font-weight: normal;
	padding: 0;
	padding-top: 3px;
	margin: 0;
}

.chapter .contents-body > ul > li > ul > li::marker {
	color: #333333;
	font-size: 10px;
}

.chapter .contents-body > ul > li > ul > li > a {
	color: #333333;
}
/* 目次要素：ここまで */
:root{
	--lecture_size_s:580px;
	--lecture_size_m:600px;
	--lecture_size_l:620px;
	--lecture_margin_s:1rem;
	--lecture_margin_m:2rem;
	--lecture_margin_l:5rem;
	--lecture_margin_xl:6rem;
	--beginner_lecture_CLR:#2780d6;
}

/* margin-bottom */
.chapter .lecture_txtBox p,.chapter .lecture_txtBox ul,.chapter .lecture_txtBox table {
	margin-bottom: var(--lecture_margin_s);
}

.chapter .lecture_thumbnail_img{
	width: var(--lecture_size_l);
	margin-bottom: var(--lecture_margin_l);
}
.chapter .lecture_thumbnail_img img{
	width: 100%;
	height: auto;
	margin: auto;
	border-radius: 10px;
	box-shadow: 0px 0px 5px 0px #3333331c;
}

.chapter iframe{
	width: 640px;
	height: 360px;
	margin: auto;
	margin-bottom: var(--lecture_margin_s);
}

.chapter .lecture_style_box{
	width: var(--lecture_size_m);
	margin: auto;
}
.chapter .lecture_style_box h4{
	width: auto;
	color: #383d4c;
	font-size: 18px;
	padding-left: 0;
	padding-right: 20px;
	padding-top: var(--lecture_margin_s); /* ページ遷移した際に余白を持たせる */
	margin-top: var(--lecture_margin_xl);
	margin-bottom: var(--lecture_margin_s);
}
.chapter .lecture_style_box h4:dir(rtl){
	padding-left: 20px;
	padding-right: 0;
}
.chapter .lecture_style_box h4::before{
	display: inline-block;
	content: '';
	height: 20px;
	width: 7px;
	margin-right: 5px;
	background-color: var(--beginner_lecture_CLR);
	position: relative;
	top: 3px;
	right: 5px;
}
.chapter .lecture_style_box h4:dir(rtl){
	padding-left: 20px;
	padding-right: 0px;
}
.chapter .lecture_style_box h4:dir(rtl)::before{
	right: auto;
	left: 5px;
}

/* 章・節で構成される場合の見出しデザイン */
.chapter .lecture_style_box.section-box h4{
	padding: 15px;
	background: #f8f8f8;
	border-bottom: solid 3px var(--beginner_lecture_CLR);
	border-radius: 3px;
}
.chapter .lecture_style_box.section-box h4::before{
	display: none;
	content: none;
}
.chapter .lecture_style_box.section-box h5{
	width: auto;
	color: #383d4c;
	font-size: 18px;
	padding-left: 0;
	padding-right: 20px;
	padding-top: var(--lecture_margin_s); 
	margin-top: var(--lecture_margin_l);
	margin-bottom: var(--lecture_margin_s);
}
.chapter .lecture_style_box.section-box h5:dir(rtl){
	padding-left: 20px;
	padding-right: 0;
}
.chapter .lecture_style_box.section-box h5::before{
	display: inline-block;
	content: '';
	height: 20px;
	width: 7px;
	margin-right: 5px;
	background-color: var(--beginner_lecture_CLR);
	position: relative;
	top: 3px;
	right: 5px;
}
.chapter .lecture_style_box.section-box h5:dir(rtl){
	padding-left: 20px;
	padding-right: 0px;
}
.chapter .lecture_style_box.section-box h5:dir(rtl)::before{
	right: auto;
	left: 5px;
}

/* 画像とテキスト１組で扱うbox */
.chapter div.lecture_txtBox{ 
	width: var(--lecture_size_s);
	padding-left: 0;
	padding-right: 0;
	margin-bottom: var(--lecture_margin_l);
}
/* 文章は基本的にpタグで囲う */
.chapter .lecture_txtBox p,.chapter .lecture_txtBox ol,.chapter .lecture_txtBox ul{
	width: 100%;
	color: #333333;
	line-height: 1.8;
	margin-left: auto;
	margin-right: auto;
}
.chapter .lecture_txtBox>img{
	max-width: 100%;
	margin-bottom: var(--lecture_margin_s);
	box-shadow: 0px 0px 5px 0px #3333331c;
}

/* 画像に数字が振られた箇所のテキストなど */
.chapter .lecture_txtBox p b{
	font-weight: bold;
	margin: auto 2px;
	white-space: normal;
}

.chapter .lecture_txtBox a{
	color: #0B649B; /* ibisPaintWEBのURLと統一させる */
	overflow-wrap: break-word; /* URLが見切れてしまうのを避ける */
}
/* 囲い・引用 */
.chapter p.lecture_quote{
	display: block;
	background-color: #f8f8f8;
	border-radius: 10px;
	padding: 15px 20px;
	margin-top: var(--lecture_margin_s);
	margin-bottom: var(--lecture_margin_m);
}

/* 制作時のポイント、コツや小話を記載 */
.chapter p.lecture_point, .chapter p.lecture_topic{
	display: block;
	background-color: #f8f8f8;
	border-radius: 10px;
	padding: 15px 20px;
	margin-top: var(--lecture_margin_s);
	margin-bottom: var(--lecture_margin_m);
	font-size: 12px;
}
/* 制作時のポイント、コツ */
.chapter p.lecture_point::before{
	content: "POINT";
	display: block;
	color: var(--beginner_lecture_CLR);
	font-weight: bold;
	line-height: 24px;
	letter-spacing: 1px;
}
/* 小話 */
.chapter p.lecture_topic::before{
	content: "TOPIC";
	display: block;
	color: var(--beginner_lecture_CLR);
	font-weight: bold;
	line-height: 24px;
	letter-spacing: 1px;
}

/* 注釈 */
.chapter .lecture_txtBox .lecture_cmt{
	font-size: 12px;
	color: #a8a8a8;
}
/* 強調 */
.chapter .lecture_txtBox .lecture_attention{
	font-size: 12px;
	font-weight: bold;
	color: #0B649B;
}
/* リンク */
.chapter .lecture_txtBox a{
	color: #0B649B;
	margin: 0 5px;
	font-weight: bold;
	overflow-wrap: break-word; /* URLが見切れてしまうのを避ける */
}
.chapter .lecture_txtBox a:hover{
	text-decoration: none;
	opacity: 0.5;
	transition: all 0.3s;
}
/* 使用ツール 、ブラシなど*/
.chapter ul.lecture_use_tools {
	width: var(--lecture_size_s);
	margin: auto auto var(--lecture_margin_m);
	border-top: solid #f1f1f1 3px;/*上のボーダー*/
	border-bottom: solid #f1f1f1 3px;/*下のボーダー*/
	padding: 0.5em 0 0.5em 1.5em;
}
.chapter ul.lecture_use_tools li {
	line-height: 1.5;
		padding: 0.5em 0;
}

/* FAQのリンク先 */
.chapter .lecture_txtBox.faq{
	padding-top: 20px;
}

.chapter .lecture_txtBox.faq .paragraph{
	color: #ff3838;
	padding: 0.5em 0;
}

/* table */
.chapter .lecture_txtBox table {
	width: 100%;
}

.chapter .lecture_style_box td > img {
	box-shadow: none;
	margin: auto;
}

/* 折り返したくない単語 */
.chapter .nowrap {
	white-space: nowrap
}

/* メニュー */
#g-nav{
	position:fixed;
	z-index: 999;
	top:0;
	left: -120%;
	width: 350px;
	height: 100vh;
	background:#f8f8f8;
	opacity: 0.95;
	transition: all 0.4s;
}

#g-nav.panelactive{
    left: 0;
}

#g-nav.panelactive #g-nav-list{
    position: fixed;
    z-index: 999; 
    width: 350px;
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
	box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.10);
}

.g-nav-title {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	font-size: 17px;
	margin: 30px 10px 20px 10px;
}

.g-nav-title img {
	margin-right: 10px;
	margin-bottom: 2px;
}

.g-nav-title img:dir(rtl) {
	margin-left: 10px;
}

#g-nav .lecture_group {
	text-align: center;
	width: 85%;
	margin: 0 auto;
}

#g-nav .lecture_group li {
	margin: 0 0 10px 0;
	padding: 0;
}

#g-nav .lecture_group li a {
	border-radius: 3px;
	padding: 5px;
	border: 2px solid #2780d6;
	background-color: #ffffff;
	color: #333333;
	text-decoration: none;
	font-size: 12px;
	font-weight: bold;
	display: block;
}

#g-nav .lecture_group li a:hover {
	color: #8e8e8e;
	transition: all .4s;
}

#g-nav .lecture_group .selected {
	padding: 5px;
	margin: 0 0 10px 0;
	border: 2px solid #2780d6;
	background-color: #2780d6;
	border-radius: 3px;
	color: #ffffff;
	font-size: 12px;
	font-weight: bold;
}

#g-nav .index {
	margin-bottom: 100px; 
}

#g-nav .index .contents-box {
	background-color: #ffffff;
	width: 85%;
	padding: 15px;
	border: 2px solid #2780d6;
	border-radius: 5px;
	margin: 0 auto;
}

#g-nav .index .contents-body > ul {
	padding-left: 10px;
}

#g-nav .index .contents-body > ul > li {
	padding-bottom: 3px;
}

#g-nav .index .contents-body > ul > li a {
	color: #2780d6;
	font-size: 12px;
}

#g-nav .index .contents-body ul > li > ul > li {
	margin-left: 0;
}

#g-nav .index .contents-body ul > li > ul > li a {
	color: #333333;
	font-size: 12px;
}

#g-nav li{
  list-style: none;
}

/*メニュー開閉ボタン*/
.openbtn{
	position:fixed;
	z-index: 9999;
	bottom: 15px;
	left: 20px;
	cursor: pointer;
}

.lecture_menu {
	width: 50px;
	height: 50px;
	background-image: url("/img/lecture/common/lecture_menu_open.png");
    transition: all .4s;
}
  
.lecture_close {
	width: 50px;
	height: 50px;
	background-image: url("/img/lecture/common/lecture_menu_close.png");
	transition: all .4s;
}

.lecture_menu:before {
	content: "";
	width: 50px;
	height: 50px;
	background-color: #ffffff;
	border-radius: 10px;
	opacity: 0.8;
	position: absolute;
	z-index: -1;
}

/* 機械翻訳表示のスタイル */
.lecture_machine_translated {
	border: solid 1px black;
	width: 100%;
	background-color: #f0f8ff;
	padding: 6px;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 31px;
}