@charset "utf-8";

/* ===================================
   外部CSSの読み込み
   =================================== */
@import url("https://unpkg.com/sanitize.css");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");
@import url("animation.css");
@import url("inview.css");

/* ===================================
   CSS変数（テーマカラー）
   =================================== */
:root {
    --primary-color: #ffffff;
    --secondary-color: #626f78;
    --primary-text-color: #333333;
}

/* ===================================
   全体の設定
   =================================== */
html,body {
	border:solid 1px #ffb51b;
	max-width: 1200px;
	margin: auto;
	background: #fff3e1;
}

@media screen and (min-width:900px) {
	html, body {
		font-size: 20px;
	}
}

body {
	font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: none;
	background: #ffffff;
	color: #333333;
}

/* リセット */
figure {margin: auto 0;}
dd {margin: 0;}
nav {margin: 0;padding: 0;}

/* table全般の設定 */
table {border-collapse:collapse;}

/* 画像全般の設定 */
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}

/* videoタグ */
video {max-width: 100%;}

/* iframeタグ */
iframe {width: 100%;}

/* 他 */
input {font-size: 1rem;}

/* ===================================
   リンクテキスト全般の設定
   =================================== */
a {
	color: #696a6a;
	transition: 0.3s;
}

a:hover {
	opacity: 0.8;
}

a {
  text-decoration: none;
}

/* ===================================
   sectionとarticleの余白
   =================================== */
main > section,
main > article {
	width: 76%;
	margin: auto;
	line-height: 2;
}

@media screen and (max-width:430px) {
	main > section,
	main > article {
		width: 90%;
		margin: auto;
		line-height: 2;
	}
}

/* ===================================
   コンテナ（サイト全体を囲むブロック）
   =================================== */
#container {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	overflow-x: hidden;
	background: #ffffff;
}

/* ===================================
   header（ロゴが入った最上段のブロック）
   =================================== */
header a {color: inherit;}
header {
	background: var(--primary-color);
	color: var(--primary-text-color);
	text-align: center;
	font-weight: bold;
	width: 100%;
	margin: auto;
	position: fixed;
	left: 0;
	right: 0;
	max-width: 1200px;
	margin-top: -10px;
}

@media screen and (min-width:370px) {
	header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding-right: 65px;
		background: #ffb51b;
		z-index: 99;
		margin-top: -10px;
	}
}

/* ロゴ */
#logo img {display: block;}
#logo {
	margin: 0;
	margin-bottom: 5%;
	width: 100px;
}

@media screen and (min-width:370px) {
	#logo {
		margin-bottom: 0;
	}	
}

.img-sp {
    display: none;
}

@media screen and (max-width:900px) {
    .img-pc {
        display: none;
    }

    .img-sp {
        display: block;
    }
}

/* ===================================
   header右側のボタン
   =================================== */
header .btn {
	padding: 0; 
	margin: 25px 0 10px 0;
	list-style: none;
}

header .btn li a {
	display: block;text-decoration: none;
	background: linear-gradient(#ffffff, #dddddd);
	color: #333;
	border-radius: 3px;
	padding: 0.5rem 1.5rem;
}

/* ===================================
   メニューブロック初期設定
   =================================== */
#menubar {display: none;}
#menubar ul {list-style: none;margin: 0;padding: 0;  }
#menubar a {display: block;text-decoration: none;}

.large-screen #menubar {display: block;flex: 1;}
.small-screen #menubar.display-block {display: block;}

#menubar_hdr.display-none {display: none;}

.ddmenu_parent ul {display: none;}

a.ddmenu {cursor: default;}

/* ddmenuを指定しているメニューに矢印アイコンをつける設定 */
a.ddmenu::before {
	font-family: "Font Awesome 6 Free";
	content: "\f078";
	font-weight: bold;
	margin-right: 1em;
	font-size: 0.8rem;
}

.large-screen #menubar span{
	border-bottom: 2px solid #66BDC4;
	background: #ffffff;
}

/* ===================================
   大きな端末用のメニューブロック設定
   =================================== */
.large-screen #menubar > nav > ul {
	display: flex;
	margin-left: 30px;
	font-size: 0.9rem;
	letter-spacing: 0.1em;
}
.large-screen #menubar li a {
	padding: 10px;
}

/* ===================================
   大きな端末、小さな端末、共通のドロップダウンメニュー設定
   =================================== */
.large-screen #menubar ul ul,
.small-screen #menubar ul ul {
	animation: opa1 0.5s 0.1s both;
}

/* ===================================
   大きな端末用のドロップダウンメニュー
   =================================== */
.large-screen #menubar ul ul {
	position: absolute;z-index: 100;
	border-radius: 10px;
	overflow: hidden;
	text-align: center;
	color: #ffffff;
}

.large-screen #menubar ul ul a {
	color: inherit;
	background: rgba(0,0,0,0.7);
	padding: 10px 20px;
}

.large-screen #menubar span{
	border-bottom: 2px solid #cc7a00;
}

/* ===================================
   小さな端末用の開閉ブロック
   =================================== */
.small-screen #menubar.display-block {
	position: fixed;overflow: auto;z-index: 100;
	left: 0px;top: 0px;
	width: 100%;
	height: 100%;
	padding: 100px 20px 20px;
	background: rgba(0,0,0,0.9);
	text-align: center;
	animation: animation1 0.2s both;
	color: #ffffff;
}

.small-screen #menubar a {
	color: inherit;
	padding: 10px;
}

.small-screen #menubar span{
	border-bottom: 2px solid #ffb51b;
}

/* ===================================
   3本バー（ハンバーガー）アイコン設定
   =================================== */
#menubar_hdr {
	animation: opa1 0s 0.2s both;
	position: fixed;z-index: 101;
	cursor: pointer;
	right: 10px;
	top: 20px;
	padding: 16px 14px;
	width: 46px;
	height: 46px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background: var(--primary-color);
}

#menubar_hdr span {
	display: block;
	transition: 0.3s;
	border-top: 2px solid var(--primary-text-color);
}

/* ×印が出ている状態の設定（1本目および3本目のバーの共通設定） */
#menubar_hdr.ham span:nth-of-type(1),
#menubar_hdr.ham span:nth-of-type(3) {
	transform-origin: center center;
	width: 20px;
}

/* ×印が出ている状態の設定（1本目のバー） */
#menubar_hdr.ham span:nth-of-type(1){
	transform: rotate(45deg) translate(3.8px, 5px);
}

/* ×印が出ている状態の設定（3本目のバー） */
#menubar_hdr.ham span:nth-of-type(3){
	transform: rotate(-45deg) translate(3.8px, -5px);
}

/* ×印が出ている状態の設定（2本目のバー） */
#menubar_hdr.ham span:nth-of-type(2){
	display: none;
}

/* ===================================
   Footerメニューブロック初期設定
   =================================== */
#menubar_footer {display: none;}
#menubar_footer ul {list-style: none;margin: 0;padding: 0;}
#menubar_footer a {display: block;text-decoration: none;}

.large-screen #menubar_footer {display: block;flex: 1;}
.small-screen #menubar_footer.display-block {display: block;}

#menubar_hdr.display-none {display: none;}

.ddmenu_parent ul {display: none;}

a.ddmenu {cursor: default;}

/* ddmenuを指定しているメニューに矢印アイコンをつける設定 */
a.ddmenu::before {
	font-family: "Font Awesome 6 Free";
	content: "\f078";
	font-weight: bold;
	margin-right: 1em;
	font-size: 0.8rem;
}

#menubar_footer span{
	border-bottom: 2px solid #eb6600;
}

/* ===================================
   大きな端末用のメニューブロック設定
   =================================== */
.large-screen #menubar_footer > nav > ul {
	display: flex;
	margin-left: 30px;
	font-size: 0.7rem;
	letter-spacing: 0.1em;
}
.large-screen #menubar_footer li a {
	padding: 10px;
}

.large-screen #menubar_footer ul ul a {
	color: inherit;
	background: rgba(0,0,0,0.7);
	padding: 10px 30px;
}

/* ===================================
   コンテンツ（mainの1つ外側のブロック）
   =================================== */
#contents {
	flex: 1;
	padding-top: 72px;
}

/* ===================================
   mainブロック
   =================================== */
main h2 {
	font-size: 2.2rem;
	font-weight: bold;
	padding:0.0em 0;
	border-top:solid 3px #ffd264;
	border-bottom:solid 3px #ffd264;
	margin-top: 50px;
	line-height: 1.5;
}

main h2 span {
	display: block;
	font-size: 0.3em;
	opacity: 0.5;
	letter-spacing: 0.5em;
}

@media screen and (max-width:450px) {
	main h2 {
		font-size: 1.8rem;
		font-weight: bold;
		padding:0.0em 0;
		border-top:solid 3px #ffd264;
		border-bottom:solid 3px #ffd264;
		margin-top: 50px;
	}
}

main h2.normal {
	text-align: left;
	font-size: 3rem;
	border-bottom: 1px solid #d1d3d3;
	margin-bottom: 0.5em;
}

h3 {
	padding: 0em 0.5em;
	font-size: 20px;
	background: transparent;
	color: #ee8804;
	line-height: 1.5;
}

h3 span{
	font-size: 150%;
	display: inline-block;
	margin: 5px 0 0 0;
}

h3 .segments1 {
	padding: 0em 0.5em;
	font-size: 20px;
	background: transparent;
	color: #298693;
	line-height: 1.5;
}

h3 span .segments1{
	font-size: 150%;
	display: inline-block;
	margin: 20px 0 0 0;
}

h5 {
	padding: 0.5em 0.5em;
	font-size: 1.2rem;
	line-height: normal;
	margin-top: 5px;
	margin-bottom: 5px;
}

h5 span{
	font-size: 80%;
	display: inline-block;
	margin: 20px 0 0 0;
}

p span{font-size: 80%}

/* ===================================
   フッターメニュー
   =================================== */
#footermenu {
	margin: 0;
	padding: 20px;
	text-align: center;
	font-size: 0.8rem;
}

#footermenu li {
	display: inline-block;
	padding: 0 10px;
}

/* ===================================
   フッター設定
   =================================== */
footer small {font-size: 100%;}
footer {
	font-size: 0.7rem;
	background: var(--primary-color);
	color: var(--primary-text-color);
	text-align: center;
	padding: 20px;
	max-width: 1200px;
	margin: auto;
}

footer a {color: inherit;text-decoration: none;}

footer .pr {display: block;}

/* ===================================
   横長タイプのボックス
   =================================== */
.list-normal .list {
	padding: 2rem 0;
}

.list-normal .list figure {
	margin-bottom: 1rem;
}

.list-normal .list h4 {
	margin: 0;
	margin-bottom: 0.5em;
	font-size: 1.3rem;
}

.list-normal .list p {
	margin: 0;
	font-size: 0.9rem;
}

@media screen and (min-width:900px) {
	.list-normal .list div {
		flex: 1;
	}

	.list-normal .list {
		display: flex;
		align-items: center;
	}

	.list-normal .list figure {
		margin-bottom: 0;
		width: 40%;
		margin-right: 2rem;
	}
}

/* ===================================
   お客様の声で使っているボックス（2カラムブロック）
   =================================== */
.list-half .list {
	display: flex;
	flex-direction: column;
}

.list-half .list p {
	line-height: 2;
	padding: 15px 10px;
}

.list-half .list img {	
	padding: 15px 5px;
}

.list-half .list h4 {
	margin: 10px;
	font-size: 1.5rem;
}

.list-half .image-l img, .list-half .image-r img {
	border-radius: 0px;
}

@media screen and (min-width:900px) {
	.list-half .list {
		flex-direction: row;
		justify-content: space-between;
	}
	
	.list-half .image-l, .list-half .image-r {
		width: 50%;
	}
	
	.list-half .image-r {
		margin-left: 2rem;
	}
	
	.list-half .image-l {
		order: -1;
		margin-right: 2rem;
	}

	.list-half .text{
		width: 50%;
	}
}

@media screen and (max-width:430px) {
	.list-half .list p {
		line-height: 2;
		padding: 0px 0px;
	}		
}

/* お礼のブロック */
.list-half .list-re {
	background: #e7f1f1;
	margin-top: -2rem;
	margin-bottom: 5rem;
	padding: 2rem;
	font-size: 0.9rem;
	border-radius: 10px;
	position: relative;
}

.list-half .list-re::before {
	content: "▲";
	font-size: 30px;
	color: #e7f1f1;
	position: absolute;
	top: -1.2em;
	left: calc(50% - 0.5em);
	transform: scale(1.5, 0.8);
}

/* ===================================
   3列タイプのボックス（grid）
   =================================== */
.list-grid .list {
	position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
	margin-bottom: 1rem;
}

.list-grid .list h4 {
	margin: -10px;
	margin-left: 1%;
}

.list-grid .list .text p {
	margin: 0;
	font-size: 12pt;
	line-height: 2;
}

.list-grid .list figure {
	margin-bottom: 1rem;
}

.list-grid .btn a {
	display: block;text-decoration: none;
	text-align: center;
	background: #66BDC4;
	color: #ffffff;
	padding: 5px 10px;
	margin-top: 1rem;
	border-radius: 22px;
}

@media screen and (min-width:900px) {
	.list-grid {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 2rem;
	}
	
	.list-four {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 2rem;
	}
	
	.list-grid .list {
		margin-bottom: 0;
	}

	a {
		text-decoration: none;
	}
}

/* ===================================
   「新着情報」ブロック
   =================================== */
.new {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}

.new dt,
.new dd {
	padding: 5px 0;
}

.new dt {
	width: 8em;
}

.new dt span {
	display: none;
}

.new dd {
	width: calc(100% - 8em);
}

@media screen and (min-width:900px) {
	.new dt {
		width: 14em;
		display: flex;
		justify-content: space-between;
	}

	.new dt span {
		display: inline-block;
		width: 7em;
		background: #999;
		color: #fff;
		font-size: 0.8em;
		text-align: center;
		margin-right: 1em;
		align-self: flex-start;
		line-height: 1.8;
		position: relative;top: 0.4em;
		border-radius: 2px;
	}

	.new dt span.icon-bg1 {
		background: #cd0000;
	}

	.new dt span.icon-bg2 {
		background: #006acd;
	}

	.new dd {
		width: calc(100% - 14em);
	}
}

/* ===================================
   FAQ
   =================================== */
.faq dt {
	border-radius: 3px;
	margin-bottom: 1rem;
	background: #fff;
	border: 1px solid #ccc;
	text-indent: -2rem;
	padding: 5px 1em 5px 3em;
}

.faq dt::before {
	font-family: "Font Awesome 5 Free";
    content: "\f059";
	padding-right: 1rem;
}

.faq dd {
	padding: 5px 1rem 30px 3rem;
}

.openclose {
	cursor: pointer;
}

/* ===================================
   詳細ページのサムネイル切り替えブロック
   =================================== */
.thumbnail-view {
	max-width: 1000px;
	margin: 0 auto 1rem;
	text-align: center;
}

.thumbnail {
	display: flex;
	justify-content: center;
	margin-bottom: 2rem;
}

.thumbnail img {
	width: 100px;
	margin: 2px;
	cursor: pointer;
	transition: 0.3s;
}

.thumbnail img:hover {
	opacity: 0.8;
}

/* ===================================
   詳細ページ（item.html）で使っている「前のページに戻る」ボタン
   =================================== */
.back {
	text-align: center;
}

.back a {
	text-decoration: none;display: inline-block;
	padding: 0.5rem 2rem;
	border-radius: 30px;
	background: #eee;
}

.back a::before {
	font-family: "Font Awesome 5 Free";
	content: "\f0d9";
	padding-right: 0.8em;
	font-weight: bold;
	opacity: 0.5;
}

/* ===================================
   bg1（背景色がついたブロック）
   =================================== */
.bg1 {
	background: var(--secondary-color);
	color: var(--primary-text-color);
}

.bg1 a {
	color: inherit;
}

/* ===================================
   テーブル
   =================================== */
.ta1 caption {
	font-weight: bold;
	padding: 10px 5px;
	background: #555;
	margin-bottom: 15px;
	border-radius: 5px;
	color: #fff;
}

.ta1 {
	border-top: 1px solid #ccc;
	width: 100%;
	margin: 0 auto 2em;
}

.ta1 tr {
	border-bottom: 1px solid #ccc;
}

.ta1 th, .ta1 td {
	padding: 10px 5px;
	word-break: break-all;
}

.ta1 th {
	width: 30%;
	text-align: left;
	background: #f7f7f7;
}

@media screen and (min-width:900px) {
	.ta1 caption {
		padding: 5px 15px;
	}

	.ta1 th, .ta1 td {
		padding: 20px 15px;
	}

	.ta1 th {
		width: 20%;
	}
}

/* ===================================
   PAGE TOP（↑）設定
   =================================== */
.pagetop-show {display: block;}

.pagetop a {
	display: block;text-decoration: none;text-align: center;z-index: 99;
	position: fixed;
	right: 20px;
	bottom: 20px;
	background: rgba(0,0,0,0.3);
	width: 50px;
	line-height: 50px;
	color: #fff;
}

/* ===================================
   その他
   =================================== */
.clearfix::after {content: "";display: block;clear: both;}
.color-education, .color-education a {color: #3dad00 !important;}
.color-media, .color-media a {color: #f45465 !important; }
.color-studio, .color-studio a {color: #cc0033 !important;}
.color-broadcast, .color-broadcast a {color: #3970d1 !important;}
.color-technology, .color-technology a {color: #c09c02 !important;}
.color-others, .color-others a {color: #613fcf !important;}

.color-theme, .color-theme a {color: var(--secondary-color) !important;}
.l {text-align: left !important;}
.c {text-align: center !important;}
.r {text-align: right !important;}
.ws {width: 100%;display: block;}
.wl {width: 100%;display: block;}
.mb0 {margin-bottom: 0px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb5rem {margin-bottom: 5rem !important;}
.look {display: inline-block;padding: 0px 10px;background: #eee;border: 1px solid #ccc; border-radius: 3px;margin: 5px 0; word-break: break-all;}
.small {font-size: 0.75em;}
.large {font-size: 2em; letter-spacing: 0.1em;}
.pc {display: none;}
.dn {display: none !important;}
.block {display: block !important;}

.btn2 a {
	display: block;text-decoration: none;
	text-align: center;
	background: linear-gradient(to bottom,  rgb(221,252,255) 0%,rgb(170,221,223) 25%,rgb(64,157,160) 100%);
	color: #333333;
	padding: 5px 10px;
	margin-top: 1rem;
	border-radius: 22px;
	text-shadow: 1px 1px 2px #ffffff;
}

.btn_education a {
	display: block;text-decoration: none;
	text-align: center;
	background: #f4f4f4;
	color: #3dad00;
	padding: 5px 10px;
	margin-top: 1rem;
	margin-bottom: 25px;
	border-radius: 22px;
	border: solid 1px #85C038;
}

.btn_technology a {
	display: block;text-decoration: none;
	text-align: center;
	background: #f4f4f4;
	color: #c09c02;
	padding: 5px 10px;
	margin-top: 1rem;
	border-radius: 22px; 
	border: solid 1px #f4c31f;
}

.btn_broadcast a {
	display: block;text-decoration: none;
	text-align: center;
	background: #f4f4f4;
	color: #3970d1;
	padding: 5px 10px;
	margin-top: 1rem;
	border-radius: 22px;
	border: solid 1px #6F98CF;
}

.btn_others a {
	display: block;text-decoration: none;
	text-align: center;
	background: #f4f4f4;
	color: #613fcf;
	padding: 5px 10px;
	margin-top: 1rem;
	border-radius: 22px;
	border: solid 1px #A192C4;
}

.return td{
	border: solid 1px #363636;
    padding: 10px;
}

hr {
  height: 0;
  margin: 0;
  padding: 0;
  border: 1px solid #ffd264;
}

@media screen and (min-width:900px) {
	.ws {width: 50%;display: inline;}
	.sh {display: none;}
	.pc {display: block;}
}

.box_tech p {
    margin: 10px auto;
    padding: 0;
}

.box_tech .box_tech-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #c09c02;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.box_broad {
	position: relative;
    padding: 1.5em 1em;
    margin: 0.5em 0;
    background: #FFF;
    border: solid 2px #3970d1;
    border-radius: 10px;
	box-sizing:content-box;
}

.box_broad p {
    margin: 10px auto;
    padding: 0;
}

.box_broad .box_broad-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #3970d1;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.box_others {
    position: relative;
    padding: 1.5em 1em;
    margin: 0.5em 0;
    background: #FFF;
    border: solid 2px #613fcf;
    border-radius: 10px;
	box-sizing:content-box;
}

.box_others p {
    margin: 10px auto;
    padding: 0;
}

.box_others .box_others-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #613fcf;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.inbox_ed {
	position: relative;
	background-color: #9ed859;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_ed::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #9ed859;
	top: 100%;
	left: 50%;
}

.inbox_ed h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_tech {
	position: relative;
	background-color: #f4c31f;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_tech::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #f4c31f;
	top: 100%;
	left: 50%;
}

.inbox_tech h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_broad {
	position: relative;
	background-color: #6f98cf;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_broad::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #6f98cf;
	top: 100%;
	left: 50%;
}

.inbox_broad h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_others {
	position: relative;
	background-color: #a192c4;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_others::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #a192c4;
	top: 100%;
	left: 50%;
}

.inbox_others h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

@media screen and (max-width:430px) {
	.inbox_ed {
		position: relative;
		background-color: #9ed859;
		padding: 10px;
		color: #ffffff;
		border-radius: 10px;
		margin-top: 20px;
	}	
}

.seg_box ul{
  padding-left:0;
}

.seg_box li{
	font-size: 16px;	
}

.highlight ul{
  padding-left:0;
}

.highlight li{
	list-style:none;
	list-style-type: decimal;
}

.highlight li::marker {
	font-size: 30px;
	font-weight: bold;
	color: #298693;
}

@media screen and (-webkit-min-device-pixel-ratio:0){
	.class_name{
		#menubar_hdr {
			animation: opa1 0s 0.2s both;
			position: fixed;
			z-index: 101;
			cursor: pointer;
			right: 10px;
			top: 20px;
			padding: 16px 14px;
			width: 46px;
			height: 46px;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			background: var(--primary-color);
		}	
	}
}_frame {
    padding: 0.5em 1.5em;
    margin: 0.5em 0;
    border: solid 2px #D6EDEC;
    border-radius: 10px;
	position: relative;
}

.box_frame {
    padding: 0.5em 1.5em;
    margin: 0.5em 0;
    border: solid 2px #ffd264;
    border-radius: 10px;
    position: relative;
}

.box_ed {
    padding: 1.5em 1em 0.5em 1em;
    margin: 0.5em 0;
    border: solid 2px #3dad00;
    border-radius: 10px;
	position: relative;
	box-sizing:content-box;
}

.box_ed p {
    margin: 10px 12px;
    padding: 0;
}

.box_ed .box_ed-title {
    position: absolute;
    display: inline-block;
    margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #3dad00;
    color: #ffffff;
    font-weight: bold;
	border-radius: 8px 0 10px 0;
}

.box_tech {
	position: relative;
    padding: 1.5em 1em;
    margin: 0.5em 0;
    border: solid 2px #c09c02;
    border-radius: 10px;
	box-sizing:content-box;
}

.box_tech p {
    margin: 10px auto;
    padding: 0;
}

.box_tech .box_tech-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #c09c02;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.box_broad {
	position: relative;
    padding: 1.5em 1em;
    margin: 0.5em 0;
    background: #FFF;
    border: solid 2px #3970d1;
    border-radius: 10px;
	box-sizing:content-box;
}

.box_broad p {
    margin: 10px auto;
    padding: 0;
}

.box_broad .box_broad-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #3970d1;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.box_others {
    position: relative;
    padding: 1.5em 1em;
    margin: 0.5em 0;
    background: #FFF;
    border: solid 2px #613fcf;
    border-radius: 10px;
	box-sizing:content-box;
}

.box_others p {
    margin: 10px auto;
    padding: 0;
}

.box_others .box_others-title {
    position: absolute;
    display: inline-block;
	margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px; 
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #613fcf;
    color: #ffffff;
    font-weight: bold;
	border-radius: 10px 0 10px 0;
}

.box_re {
    padding: 1.5em 1em 0.5em 1em;
    margin: 0.5em 0;
    border: solid 2px #ffd264;
    border-radius: 10px;
	position: relative;
	box-sizing:content-box;
}

.box_re p {
    margin: 10px 12px;
    padding: 0;
}

.box_re .box_re-title {
    position: absolute;
    display: inline-block;
    margin-top: -1.8em;
	margin-left: -1.2em;
    padding: 2px 20px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ffb51b;
    color: #ffffff;
    font-weight: bold;
	border-radius: 8px 0 10px 0;
}

.inbox_re {
	position: relative;
	background-color: #e7e6e2;
	padding: 10px;
	border-radius: 10px;
	margin-top: 20px;
	font-size: 90%;
}

.inbox_ed {
	position: relative;
	background-color: #9ed859;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_ed::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #9ed859;
	top: 100%;
	left: 50%;
}

.inbox_ed h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_tech {
	position: relative;
	background-color: #f4c31f;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_tech::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #f4c31f;
	top: 100%;
	left: 50%;
}

.inbox_tech h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_broad {
	position: relative;
	background-color: #6f98cf;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_broad::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #6f98cf;
	top: 100%;
	left: 50%;
}

.inbox_broad h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

.inbox_others {
	position: relative;
	background-color: #a192c4;
	padding: 10px;
	color: #ffffff;
	border-radius: 10px;
	margin-top: 20px;
}

.inbox_others::before {
	content: "";
	position: absolute;
	border: 12px solid transparent;
	border-top: 12px solid #a192c4;
	top: 100%;
	left: 50%;
}

.inbox_others h5 {
	margin: 0;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.2rem;
}

@media screen and (max-width:430px) {
	.inbox_ed {
		position: relative;
		background-color: #9ed859;
		padding: 10px;
		color: #ffffff;
		border-radius: 10px;
		margin-top: 20px;
	}	
}

.seg_box ul{
  padding-left:0;
}

.seg_box li{
	font-size: 16px;	
}

.highlight ul{
  padding-left:0;
}

.highlight li{
	list-style:none;
	list-style-type: decimal;
}

.highlight li::marker {
	font-size: 30px;
	font-weight: bold;
	color: #298693;
}

@media screen and (-webkit-min-device-pixel-ratio:0){
	.class_name{
		#menubar_hdr {
			animation: opa1 0s 0.2s both;
			position: fixed;
			z-index: 101;
			cursor: pointer;
			right: 10px;
			top: 20px;
			padding: 16px 14px;
			width: 46px;
			height: 46px;
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			background: var(--primary-color);
		}	
	}
}