﻿/* CSS layout */


/* CSS layout */

body {
	width:calc(100vw - 10px);
	overflow-x: hidden;
	padding-top: 0px;
    margin: 0 auto;/*ここで中央寄せを指定する。*/
	border-top: 5px solid ;
	border-top-color: #ffcc99;
	color : #000000;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#container {
	width: 100%;
	max-width: 1024px;
	background-color: #F4EFEC;
	margin-right: auto;
	margin-left: auto;
}

math {
	font-family:STIX, IPAmjMincho, serif;
}
.anchor{
    display: block;
    padding-top: 10px;
    margin-top: 0px;
}

/* =======================================
	Cookie使用の承諾
======================================= */
.cookie-consent {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
	left: 0;
    bottom: 0;
    width: 100%;
    font-size: 12px;
    color: #fff;
    background: rgba(0,0,0,.7);
    padding: 1.2em;
    box-sizing: border-box;
    visibility: hidden;
	z-index: 10000;
}
.cookie-consent.is-show {
    visibility: visible;
}
.cookie-consent a {
    color: #fff !important;
}

.cookie-text {
	margin: 0 20px;
	line-height: 1.5;
}
.cookie-agree {
    color: #fff;
    background: dodgerblue;
    padding: .5em 1.5em;
}
.cookie-agree:hover {
    cursor: pointer;
}
/* パッと消える */
.cc-hide1 {
    display: none;
}

/* ゆっくり消える 
.cc-hide2 {
    animation: hide 1s linear 0s;
    animation-fill-mode: forwards;
}*/
@keyframes hide {
    from {
    opacity: 1;
}
to {
    opacity: 0;
    visibility: hidden;
    }
}

/* メディアクエリ */

@media screen and (max-width: 600px) {
    .cookie-consent {
		flex-direction: column;
    }
    .cookie-text {
		margin-bottom: 1em;
    }
}

/* =======================================
	文書内の共通的な装飾等
======================================= */
/* 水平線の規定 */

/* 通常の水平線*/
.horizontal {
	clear: both;
	border:0;
	border-top: 1px solid #bbb;
	border-bottom: 1px solid #fff;
	width: 100%;
	margin: 12px 0px 2px 0px;
	float:left;
}

/*最上部の水平線*/
.horizontaltop {
	clear: both;
	background-color: #dddddd;
	height: 3px; 
	width: 100%;
	margin: 2px 0px 5px 0px;
	border:0;
	border-top: 1px solid #bbb;
	border-bottom: 1px solid #fff;
	float:left;
}

.horizontal2 {
	margin: 20px 0px 0px 10px;
	height: 4px; 
	width: auto;
}

/* 上付き文字 */sup {
font-size: 60.0%;
vertical-align: top;
position: relative;
top: -0.2em;
font-weight: 700;
}
sub {
font-size: 75.5%;
vertical-align: bottom;
position: relative;
top: 0.1em;
}

/*文字飾り*/
span.under1 {/*文字の下半分をマーカー色塗り*/
    background: linear-gradient(transparent 50%, #a8eaff 50%);
}
span.under2 {/*カラーマーカー（緑）*/
    background: linear-gradient(transparent 0, #8effa1 0);
}
span.under3 {/*文字の下側カラーマーカー（赤）*/
    background: linear-gradient(transparent 80%, #ff99ab 80%);
}
mark.under3 {/*文字の下側カラーマーカー（赤）*/
    background: linear-gradient(transparent 80%, #ff99ab 80%);
}
span.under4 {/*文字の下側アンダーライン（赤）*/
    border-bottom: solid 2px red;
}
span.enclosed1 {/*囲み文字*/
    border: 1px solid;
    margin: 0 0.2rem;
}
span.red {
	color: #f00;
	font-weight: 700;
}
span.doubleline { /*二重取り消し線（オレンジ）*/
    background-image:url(img/doubleLine_orange.png);
    background-repeat:repeat-x;
    background-position: center;
}
span.doubleline2 { /*二重取り消し線（オレンジ）*/
    background-image:url(img/doubleLine_aqua.png);
    background-repeat:repeat-x;
    background-position: center;
}
span.nobr {
    white-space: nowrap;
}

/* =======================================
	各種のリンク
======================================= */
/* ボタン付きリンク */
a.auto-styleh4 {
	display: block;
	position:relative;
	margin: 25pt 7pt 0 25pt;
	padding: 5px 5px 5px 2.5em;
	background: url(../img/point022_01.png) 0.5em 0.7em no-repeat ;/* 行頭のポイント */
	line-height: 1.6; /* 行間のスペースを指定 */
    text-decoration: none;
	text-indent: 0em;
	text-align: left;
	font-size: medium;
	border-style: solid ; 
	border-width: 1px; 
	border-radius: 10px 10px 0 0; 
	border-color: #0000ff; 
	width: auto;
	background-color: #f0f0f0;
	clear: both;
}
a.auto-styleh4:hover {
	top: -5px;
	right: 5px;
	box-shadow: 5px 5px 5px #999;
}
.arrow_a_b {/* 矢印アイコン（動きあり）*/
	display: inline-block;
	position: relative;
	border-radius: 10px;
}

span.Normal-span-2 {
	display: block;
	margin: 0rem 7pt 1rem 25pt;
	padding: 0.2rem 0.5rem 1rem 0.5rem;
	border-style: solid ; 
	border-width: 0 1px 1px 1px; 
	border-radius: 0 0 10px 10px;
	border-color: #0000ff; 
	background-color: #ffffff;
}

/*リンク用ボタン*/
a.Tool{
	display:	block;
	float: right;
	position:relative;
	margin: 5pt 10pt 10pt 5pt;
	padding: 3px 10px;
	text-align: left;
	font-size: medium;
	font-weight: bold;
	font-family: Century;
	border-style: solid ; 
	border-width: 2px; 
	border-radius: 10px; 
	border-color: green; 
	width: auto; 
}
a.Tool:hover {
	top: -5px;
	right: 5px;
	box-shadow: 5px 5px 5px #999;
}

/*行内リンク*/
a.link_pdf {
	padding:0 22px 1px 0;
	background: url(../img/icon-pdf.png) no-repeat right 1px;
}
a.link_external {
	padding:0 22px 1px 0;
	background: url(../img/icon-external.png) no-repeat right 1px;
}
a.link_extlink {
	padding:0 22px 1px 0;
	background: url(../img/icon-extlink.png) no-repeat right 1px;
}
a.link_excel {
	padding:0 22px 1px 0;
	background: url(../img/icon-excel.png) no-repeat right 1px;
}
a.link_word {
	padding:0 22px 1px 0;
	background: url(../img/icon-word.png) no-repeat right 1px;
}

/* 枠内に納めたり、回り込ませないための行 */
p.end {
    clear: both;
}

/* =======================================
	各種のイラスト
======================================= */
/* 拡大するイラスト（右小）の表示 */
div.picbox-illustration {
    display: block;
    float: right;
    margin: 1rem 10px 10px 15px;
}
p.fig-table {
	font-size:14px;
	color: #006400;
	text-align:center;
	margin:0;
	padding:0;
}
img.illustration-right {
    float: left;
    height: 120px;
    margin-bottom: 5px;
}
img.illustration-right-big {
    float: left;
    height: 240px;
    margin-bottom: 5px;
}
p.piczoom{/* 拡大しますの表示（右） */
	margin: 5px 0px 5px 0px;
	text-align: right;
	text-justify: inter-ideograph;
    text-decoration: none;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

/* 拡大するイラスト（左）の表示 */
div.picbox-illustration-left {
    display: block;
    float: left;
    margin: 2rem 10px 1.5rem 15px;
}
img.illustration-left {
    float: left;
    width: 80%;
    margin-bottom: 5px;
	border: 1px #660000 solid;
}

p.piczoom-left{/* 拡大しますの表示（左） */
	margin: 5px 0px 5px 1rem;
	text-align: left;
	text-justify: inter-ideograph;
    text-decoration: none;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
/* 拡大するイラスト（中央）の表示 */
div.picbox-illustration-ppt {
    display: block;
    float: left;
    margin: 2rem 10px 1.5rem 15px;
}
img.illustration-ppt {
    float: left;
    width: 90%;
    margin-bottom: 5px;
}

/* 拡大しないイラストの表示 */
div.picbox-gen {
    display: block;
    float: right;
    margin: 1rem 0 15px 2rem;
}
div.picbox-genl {
    display: block;
    float: left;
    margin: 1rem 15px 15px 4rem;
}
div.picbox-right {
    display: block;
    float: right;
    margin: 1px 0px 5px 15px;
}
img.origin{
	border: #000 1px solid;
}
img.right{
    width: 150px;
}
img.border {
	border: 1px #000000 solid;
}
.illustration-gen {
    float: left;
    height: 120px;
    margin-bottom: 5px;
}
.illustration-genv {
    float: left;
    height: 180px;
    margin-bottom: 5px;
}
.illustration-fig {
    float: left;
    margin-bottom: 5px;
}

/* 拡大しないアイキャッチ写真（右）の表示 */
span.phot-setumeiwakunai {
    float: right;
	width: 90%;
	aspect-ratio: 340 / 227;
	margin-bottom: 10px;
}
@media (min-width: 390px) {
	span.phot-setumeiwakunai {
		width: 210px;
		height: 195px;
		margin-left: 1rem;
	}
}
img.phot-setumeiwakunai {
	width:100%;
	aspect-ratio: 340 / 227;
	object-fit: cover;
}
video.phot-setumeiwakunai {
	width:100%;
	height:auto;
}
p.document-2{/* 資料出所の表示 */
	margin: 5px 0px 5px 10%;
	padding-left: 1em;
	text-indent: -1em;
	text-align: left;
	text-justify: inter-ideograph;
    text-decoration: none;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

/* =======================================
	headerボックスのスタイル設定
======================================= */
header {
	/*背景色を設定*/
	width: auto;
	background-color: #F4EFEC;
}

.hm-Header {
	display: block;
	width: auto;
	padding: 0.5rem 2rem 0.5rem 0.2rem;
}

li.recent {
	color:#a0a;
}

.hm-Header a {
	color: #444;
	text-decoration:none;
}

.hm-Header a:hover {
	color: #45c80d;
}

/*header内のトップのロゴのスタイル設定*/
div.itemtop {
	width: 10px;
	height: 50px;
}

div.heijilogo {
	clear: both;
	position:relative;
	line-height: 1;
	margin-bottom: 5px;
}
div.heijilogo:hover {
	top: -6px;
	right: 6px;
	box-shadow: 6px 6px 6px rgba(0,0,0,0.2);
}

/* 最上部のナビゲーションメニューのスタイル */
.hm-Header_NavItems {
	display: flex;
	flex-wrap: nowrap;
	list-style-type: none;
	list-style-position: outside;
	color: #257a01;
	text-decoration: none;
	margin: 0;
	padding: 0;
	font-family: 'Oleo Script Swash Caps', cursive;
	font-size: 24px;
}

.hm-Header_NavItem {
	margin: 0 1rem 0 0;
/*	text-transform: uppercase;*/
}

.hm-Header_NavItem:last-child {
	margin-right: 0;
}


@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	.hm-Header {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		font-family: 'Oleo Script Swash Caps', cursive;
		font-size: 24px;
	}

	.hm-Header_Logo {
		margin: 0;
	}

	/* 750px以上のナビゲーションメニューのスタイル */
	.hm-Header_NavItem {
		margin: 0 2rem 0 0;
/*		text-transform: uppercase;*/
	}
}



/* =======================================
	スライドショー
======================================= */
h1.top-h1 {
	display: block;
	text-align: center;
	z-index: 200;
	font-size: 45px;
	color: #ff0;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight:bold;
	-webkit-text-stroke-color: #000; /* 文字の縁取り */
	-webkit-text-stroke-width: 1px;
	text-shadow: 8px 6px 5px #333; /* 文字の影 */
	position: relative;
	top: 33px;
}
@media all and (max-width: 1024px) and (min-width:600px) {
	/* 1024px以上でFlexboxを有効にしてレイアウトを切り替える */
	h1.top-h1 {
		font-size: 4vw;
		top: 3vw;
	}
}
@media all and (max-width:600px) {
	h1.top-h1 {
		font-size: 24px;
		top: 2vw;
	}
}

/* .viewer-movie
------------------------- */
.viewer-movie {
	display: flex;
	clear: both;
	margin: -235px auto 0;
	width: 100%;
	height:30vw;/* 高さを指定 */
	max-height:300px;/* 高さを指定 */
	position: relative;
	align-items: end;/* 下側のみ表示 */
	overflow: hidden;
}
.top-movie {
	width: 100%;
}
/* .viewer
------------------------- */
.viewer {
	clear: both;
	margin: -235px auto 0;
	width: 100%;
	height: 25vw;
	max-height: 250px;
	position: relative;
	overflow: hidden;
}
.viewer ul {
	width: 100%;
	overflow: hidden;
	position: relative;
}
.viewer ul li {
	top: 0;
	left: 0;
	width: 100%;
	position: absolute;
}
.viewer ul li img {
	width: 100%;
}

/* sideNavi
------------------------- */
.viewer .btnPrev,
.viewer .btnNext {
	margin-top: -25px;
	top: 50%;
	width: 50px;
	height: 50px;
	position: absolute;
	z-index: 101;
}
.viewer .btnPrev {
	left: 10px;
	background: #ccc url(../img/btnPrev.jpg) no-repeat center center;
}
.viewer .btnNext {
	right: 10px;
	background: #ccc url(../img/btnNext.jpg) no-repeat center center;
}


.viewer ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

.viewer ul {
	display: inline-block;
	overflow: hidden;
}

/* =======================================
	サブページのページタイトル
======================================= */
h1.subtop-h1 {
	display: block;
	z-index: 200;
	font-size: 70px;
	color: #ff0;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight:bold;
	-webkit-text-stroke-color: #000; /* 文字の縁取り */
	-webkit-text-stroke-width: 1px;
	text-shadow: 8px 6px 5px #333; /* 文字の影 */
	position: relative;
	top: 10px;
	left:130px;
}
@media all and (max-width: 1024px) {
	/* 1024px以上でFlexboxを有効にしてレイアウトを切り替える */
	h1.subtop-h1 {
		font-size: 6.3vw;
		position: relative;
		top: 1.7vw;
		left:12vw;
		}
}
h1.subtop-h1-s {
	display: block;
	z-index: 200;
	font-size: 47px;
	color: #ff0;
    font-family: 'M PLUS Rounded 1c', sans-serif;
    font-weight:bold;
	-webkit-text-stroke-color: #000; /* 文字の縁取り */
	-webkit-text-stroke-width: 1px;
	text-shadow: 8px 6px 5px #333; /* 文字の影 */
	position: relative;
	top: 10px;
	left:130px;
}
@media all and (max-width: 1024px) {
	/* 1024px以上でFlexboxを有効にしてレイアウトを切り替える */
	h1.subtop-h1-s {
		font-size: 4.2vw;
		position: relative;
		top: 1.7vw;
		left:12vw;
		}
}

img.subtop-h1-back {
	margin: -70px 0 0 0 ;
	width:100%;
	max-width: 1024px;
	height:10vw;
	max-height: 100px;
}
@media all and (max-width: 1024px) {
	/* 1024px以上でFlexboxを有効にしてレイアウトを切り替える */
	img.subtop-h1-back {
		margin: -6vw 0 0 0 ;
		width:100%;
		max-width: 1024px;
		height:10vw;
			}
}

/* =======================================
	ClearFixElements
======================================= */
/*navボックスのスタイル設定*/
nav.main {
	clear: both;
	/*内余白の上を5px、左右を15px、下を15pxに設定*/
	padding: 5px 0 15px;
	/*外余白を0pxに設定*/
	margin: 0px;
}
nav.main ul {
	margin: 0px auto;
	padding: 0px;
	box-sizing: border-box;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}
nav.main li {
	list-style: none;
	background: #8a9b0f;
	background: linear-gradient(#008, #004);
	box-shadow: inset 0 1px 1px rgba(255,255,255,0.5),inset 0 -1px 1px rgba(0,0,0,0.9);
	text-align: center;
	box-sizing: border-box;
	margin: 2px;
	flex: 1 0 140px;
}
nav.main li a {
	color: #ffffff;
	text-decoration-line: none;
}
nav.main li:hover {
	background: linear-gradient(#00c, #008);
}
nav.main li a:hover {
	color: #ffff00;
	text-decoration-line: none;
}

a.top-navi {
	display: block;
	padding: 15px 10px;
	height: auto;
	width: auto;
}
/* =======================================
	パンくずリスト
======================================= */
.cp_breadcrumb *, .cp_breadcrumb *:after, .cp_breadcrumb *:before {
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.cp_breadcrumb {
	overflow: hidden;
	width: 100%;
	margin: 0.5rem auto;
	padding: 0;
	list-style: none;
    font-size: small;
    white-space: nowrap; /* 改行（行送り）を禁止させる */
    overflow-x: auto;  /* 横スクロールを可能にする */
	-webkit-overflow-scrolling: touch;
	overflow-y: hidden;
}
.cp_breadcrumb::-webkit-scrollbar{ /* スクロールバー全体 */
    width: 15px;
}
 
.cp_breadcrumb::-webkit-scrollbar-thumb{ /* スクロールバーのある部分 */
    background: #F70841;
    border-radius: 10px;
}
.cp_breadcrumb::-webkit-scrollbar-track-piece:start{ /* スクロールバーが表示されてない部分（前） */
    background: #ffa5ba;
}
.cp_breadcrumb::-webkit-scrollbar-track-piece:end{ /* スクロールバーが表示されてない部分（後ろ） */
    background: #ffa5ba;
}

.cp_breadcrumb li {
	display: inline-block;
	margin: 0 1.5rem 0 0;
}
.cp_breadcrumb a {
	position: relative;
	z-index: 1;
	padding: 0.2rem 0.8rem 0.2rem 1.1rem;
	text-decoration: none;
	color: #ffffff;
	border-radius: 0.4rem 0 0 0.4rem;
	background: #808;
	display: inline-block;
	height: 1.4rem;
	line-height: 1rem;
	-webkit-transition:all 0.3s;
	transition: all 0.3s;
}
.cp_breadcrumb a:hover {
	background: #a0a;
}
.cp_breadcrumb a::after{
	background: #808;
	content: "";
	height: 2rem;
	position: absolute;
	right: -1rem;
	top: calc(50% - 1rem);
	width: 2rem;
	z-index: -1;
	transform: rotate(45deg);
	border-radius: .3rem;
	-webkit-transition:all 0.3s;
	transition: all 0.3s;
}
.cp_breadcrumb a:hover::after {
	background: #a0a;
}
.cp_breadcrumb li:last-child a {
	cursor: default;
	pointer-events: none;
	color: #000;
	background: transparent !important;
	font-weight: bold;
    padding-left: 0px;
}
.cp_breadcrumb li:last-child a:hover {
	background: none;
}
.cp_breadcrumb li:last-child a::before,
.cp_breadcrumb li:last-child a::after {
	content: normal;
}

/* =======================================
	main
======================================= */

#main {
	float: left;
	display: block;
	width: 100%;
}
@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	#main {
/*		display: flex;
		flex-wrap: wrap;
		flex-direction: row; */
		width: calc(100% - 250px);
		margin-right: 10px;
		justify-content: space-between;
	}
}

section.normal-con {
	width: 100%;
}

/* =======================================
	このページのポイントの枠
======================================= */

div.sample-box-top {
	border: 2px ridge #da4033;
	border-radius: 4px;
	margin: 2.5em 0.5em 0em 0.5rem;
	padding: 1em 1em 0.5em 0em;
	position: relative;
}

div.sample-box-top::before {
    background-color: #F4EFEC;
	font-size: 20px;
    color: #da4033;
    content: "このページのポイント";
    font-weight: bold;
    left: 1em;
    padding: 0.5em;
    position: absolute;
    top: -1em;
}

/* 中段（このページのポイント）内の文章 */
p.sample-box-top{
	list-style: none;
	background: url(../img/point027_04.png) 0 0.5rem no-repeat;/* 行頭のポイント */
	margin: 10px 0px 0px 10px;
	padding: 0px 0px 0px 1em;
	line-height:2.0em;
	text-indent: 0em;
	font-size: medium;
	font-family: Century;
	text-align: left;
}
@media (max-width: 300px) {
	p.sample-box-top {
		clear: both;
	}
}

/* =======================================
	目次
======================================= */
span.mokuji-frame {
	clear: both;
	margin-top: 5px;
}
ul.mokuji {
	margin: 0px 7px 10px 10px;
	border: solid 2px #ffb03f;
	padding: 0.5em;
	position: relative;
	margin-top: 2em;
	background-color: #ffffff;
}
ul li.mokuji-1 {
	list-style: none;
	text-decoration:none;
	background: url(../img/point022_01.png) 0.5rem 0.5rem no-repeat;/* 行頭のポイント */
	margin: 5px 0px 0px 10px;
	padding: 0px 0px 0px 3rem;
	line-height:1.5rem;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	font-family: Century;
	font-weight: 700;
	text-align: left;
}
ul li.mokuji-1:after { /*タイトルタブ*/
	background: #ffb03f;
	color: #fff;
	font-weight: bold;
	position: absolute;
	left: -2px;
	bottom: 100%;
	padding: 1px 5px 1px 35px;
	content: "目次";/*タブの文字*/
	letter-spacing: 1.05em;/*字間*/
}
ul li.mokuji-2 {
	list-style: none;
	text-decoration:none;
	background: url(../img/point022_04.png) 1.5rem 0.5rem no-repeat;/* 行頭のポイント */
	margin: 5px 0px 0px 10px;
	padding: 0px 0px 0px 6rem;
	line-height:1.5rem;
	text-indent: -3rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	font-family: Century;
	text-align: left;
}

ul.mokuji a {
	text-decoration:none;
}
ul.mokuji a.mokuji-link-1 {
	text-decoration:none;
}
ul.mokuji a.mokuji-link-2 {
	text-decoration:none;
}

/* =======================================
	日付
======================================= */
p.date {
	margin: 10px 7px 10px 0;
	text-align: right;
	text-justify: inter-ideograph;
	font-size: medium;
    color: #009800;
	width: auto;
	clear: both;
}
p.date:first-child{
    margin-top: 20px;
}
p.date2{
	margin: 10px 5px 10px 0;
	text-align: right;
	text-justify: inter-ideograph;
	font-size: medium;
    color: #009800;
	width: auto;
}
p.date2:first-child{
    margin-top: 20px;
}
/* =======================================
	筆者
======================================= */
p.writer1 {
	margin: 10px 2.2rem 10px 0;
	text-align: right;
	text-justify: inter-ideograph;
	font-size: medium;
    color: #000000;
	width: auto;
	clear: both;
}

span.name2 {
	letter-spacing: 1rem;
}
p.joint {
	margin: 10px 1.7rem 10px 0;
}
/* =======================================
	h2～H6
======================================= */
/* 見出しh2を規定 */
h2.midashi-style2 {
	clear: both;
	margin: 10px 7px 0px 0px;
	padding: 10px 10px 10px 5rem;
	text-indent: -2rem;
	text-align: left;
	line-height: 30px;
	font-size:large;
	color:#4a1086;
	background: url(../img/lgbt_rainbow_heart_mini.png) 0.7em 0.7em no-repeat, linear-gradient(to bottom, #fff 0%, #f0f0f0 100%);
	border: 1px solid #ccc;
	border-top: 4px solid #1c66fe;
	box-shadow: 0 -1px 0 rgba(255, 255, 255, 1) inset;
}
p.h2-note {
	float: right;
	font-size: small;
	color: #008000;
	margin: 5px 0 30px 0;
}

/* 見出しh3 */
h3.midashi-style3 {
	display: block;
	font-size: 20px;
    font-weight: 600;
    color: #800000;
	text-align: left;
	margin: 20px 10px 0px 1rem;
	padding: 10px 0px 5px 3rem;
	text-indent: -3rem;
	line-height: 1.6rem;
	width: auto; 
}

h3.midashi-style3-top {
	display: block;
	font-size: medium;
	font-weight: bold;
	text-align: left;
	border-style: solid ; 
	border-width: 1px 1px 0 1px; 
	border-color: red; 
	border-radius: 10px 10px 0 0; 
	margin: 20px 10px 0px 1rem;
	padding: 10px 0px 10px 1rem;
	width: calc (93% - 2rem);
	background-color: lavender; 
}
a.top-midashi {
	text-decoration: none;
	color:#808
}
section.midashi-style3-waku{
	display: block;
	margin: 0px 10px 0px 1rem;
	padding: 10px 0px 10px 1rem;
	width: calc (93% - 2rem);
	border-style: solid ; 
	border-width: 0 1px 1px; 
	border-color: red; 
	border-radius: 0 0 10px 10px; 
	font-size: medium;
	background-color: #ffffff; 
}

/* 見出しh4 */
.midashi-style4 {
    clear: both;
	width: auto; 
	margin: 20px 5px 5px 10px; 
    padding:0 0 0 4rem;
	text-indent: -2rem;
	font-size: large;
    font-weight: 600;
    color: #800000;
	line-height: 1.6;
	text-align: left;
}
.midashi-style3 + .midashi-style4 {
	margin-top: 15px;
}

/* 見出しh5 */
.midashi-style5 {
	width: auto; 
	margin: 20px 5px 5px 10px; 
    padding:0 0 0 5rem;
	text-indent: -3rem;
	font-size: medium;
    font-weight: 600;
    color: #800000;
	line-height: 1.6;
	text-align: left;
}
.midashi-style4 + .midashi-style5 {
	margin-top: 15px;
}

/* 見出しh6 */
.midashi-style6 {
	width: auto; 
	margin: 20px 5px 5px 10px; 
    padding:0 0 0 8em;
	text-indent: -2em;
	font-size: medium;
    font-weight: 600;
    color: #800000;
	line-height: 1.6;
	text-align: left;
}
.midashi-style5 + .midashi-style6 {
	margin-top: 15px;
}
/* =======================================
	「お知らせ」ボックス
======================================= */

div.oshirase-box1 {
	margin: 20px 5pt 20px 0;
	padding:10px;
	height: 250px;  /* 高さを制限(※) */
	overflow: auto; /* スクロールバーを表示(※) */
	border:  1px #000000 solid;  /* 枠線を追加 */
	background-color: #ffffff; /* 背景色を追加 */
	text-align: justify;
	font-family: Century;
	font-size: medium;
	color: #000000;
	line-height:1.7rem;  /* 行間のスペースを指定 */
	box-shadow: 5px 5px 10px #999 inset;
}
div.oshirase-boxe {
	margin: 10px 5pt 0 0;
	padding:10px;
	height: 80px;  /* 高さを制限(※) */
	border:  1px #000000 solid;  /* 枠線を追加 */
	background-color: #ffffff; /* 背景色を追加 */
	text-align: justify;
	font-family: ＭＳ 明朝; 
	font-family: Century;
	font-size: medium;
	color: #000000;
	line-height:1.7rem;  /* 行間のスペースを指定 */
}

/*お知らせボックスの下にある注意書き*/
.oshirase-tyuuki {
	text-align: right;
	font-size: small;
	margin-top: 10px;
	color: #008800;
}

dt.oshirase-date {
	margin-top: 0.8rem;
	background: url(../img/point027_04.png) 0.5rem 0.5rem no-repeat;/* 行頭のポイント */
	padding-left: 2rem;
	font-weight: 700;
	color: #660000;
}
dd.MsoNormalNew2 {
	margin-left: 2rem;
}

/* =======================================
	通常の文章の枠
======================================= */
span.Normal-span-1 {
	display: block;
	margin: 1rem 0.5rem 1rem 1rem;
	padding: 1rem 0.5rem;
	border: solid 1px #808;
	border-radius: 5px;
	background-color: #ffffff;
}


span.Normal-span-3 {
	display: block;
	margin: 1rem 0.5rem 1rem 3rem;
	padding: 1rem 0.5rem;
	border: solid 1px #808;
	border-radius: 5px;
	background-color: #ffffff;
}
@media (max-width: 500px) {
	span.Normal-span-3 {
		margin: 1rem 0.5rem 1rem 0.5rem;
	}
}

/* =======================================
	通常の文章
======================================= */
p.Normal{/*通常の文 */
	margin-top: 15px;
	margin-left: 0em;
    padding-left: 1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 2.0em;
	width: auto;
}
@media (max-width: 300px) {
	p.Normal{/*通常の文 */
		clear: both;
	}
}
@media (max-width: 389.5px) {
	p.phot {/* 通常のコメント */
		clear: both;
	}
}
p.normal :first-child {
	margin-top: 0;
}

p.no-rot{/* 回り込みさせない */
	clear: both;
}
p.second{/* 文字下げなし */
	text-indent: 0em;
}
p.open-line {/* 上に行を開けたいとき */
	margin-top: 1rem;
}
p.in-table{/* 左を開けたくないとき */
	margin-left: 0em;
    padding-left: 1em;
	text-indent: -1em;
}

p.Normal-n-b{/* ボタン付き箇条書き */
	margin-top: 0.8rem;
	background: url(../img/point026_01.png) 0.1rem 0.5rem no-repeat;/* 行頭のポイント */
	padding: 0 0.5rem 0 1.5rem;
	text-align: justify;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
@media (max-width: 350px) {
	p.big-pic {/* ボタン付き箇条書き */
		clear: both;
	}
}

p.Normal-n{/* 箇条書き（次下げ幅大） */
	margin-top: 15px;
	margin-left: 1em;
    padding-left: 7em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Normal-n2{/* 箇条書き（次下げ幅小） */
	margin-top: 15px;
	margin-left: 1em;
    padding-left: 4em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Normal-n3{/* 箇条書き（次下げ幅小） */
	margin-top: 15px;
	margin-left: 1em;
    padding-left: 2em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Normal-n4{/* 箇条書き（次下げ幅最小） */
	margin-top: 10px;
	margin-left: 1em;
    padding-left: 0em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Normal-nh{/* 箇条書きの表題 */
	margin-top: 15px;
	margin-left: 1em;
    padding-left: 2em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Normal-nt{/* 箇条書き（表の中） */
	margin-top: 0px;
	margin-left: 0em;
    padding-left: 1em;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.4; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.Normal-nt2{/* 箇条書き（表の中） */
	margin-top: 0px;
	margin-left: 0em;
    padding-left: 2em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.4; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
b.num {
    color: brown;
    font-weight: 900;
}
p.Normal-ns{/* 箇条書き（spanの中） */
	margin-top: 15px;
	margin-left: 0em;
    padding-left: 2em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.Normal-ns2{/* 箇条書き（spanの中） */
	margin-top: 10px;
	margin-left: 0em;
    padding-left: 3em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.Comment{/* 通常のコメント */
	margin-top: 5px;
	margin-left: 1em;
    padding-left: 8em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.8; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.Comment :first-child {
	margin-top: 15px;;
}
p.Comment-para2{/* 通常のコメント２行目 */
	margin-top: 5px;
	margin-left: 1em;
    padding-left: 8em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.8; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.Comment + span.note1 {
    margin-top: 1.5rem;
}

p.Comment-norot{/* 通常のコメント 回り込む*/
	margin-top: 5px;
	margin-left: 1em;
    padding-left: 8em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.8; /* 行間のスペースを指定 */
	width: auto;
}
p.Comment-norot :first-child {
	margin-top: 15px;;
}
p.Comment-para2-norot{/* 通常のコメント２行目 */
	margin-top: 5px;
	margin-left: 1em;
    padding-left: 8em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
}
p.Comment-norot + span.note1 {
    margin-top: 1.5rem;
}

p.Comment-s{/* spanの中のコメント */
	margin: 10px 0 5px 1rem;
    padding-left: 7em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.Comment-s-para2{/* spanの中のコメント２行目 */
	margin: 5px 0 10px 1rem;
    padding-left: 7em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
@media (max-width: 500px) {
	p.Comment,Comment-para2,Comment-s,Comment-s-para2,Comment-norot,Comment-para2-norot{/* 通常のコメント */
		padding-left: 2em;
	}
}

/* =======================================
	表
======================================= */

table.usually {
	border: 1px #0000ff solid;
	margin: 1rem 10px;
}
th.usually-th {
	border: 1px #0000ff solid;
	padding:5px 5px;
	line-height: 1.7rem;;
}
td.usually-td {
	border: 1px #0000ff solid;
	padding:5px 5px;
	line-height: 1.7rem;;
}
th,td.center {
	text-align: center;
}

/* =======================================
	箇条書きのボックス
======================================= */

span.note1 { /* 箇条書きのボックス */
    display: block;
    border: ridge #55aaff ;
    margin: 1rem 0 1rem 3rem;
    padding: 5px 5px 5px 10px;
    background: #fff;
}
@media (max-width: 500px) {
	span.note1 { /* 箇条書きのボックス */
		margin: 1rem 0 1rem 1rem;
	}
}
span.note-in { /* 箇条書きのボックス */
    display: block;
    border: ridge #8255ff ;
    margin: 1rem 0.5rem 1rem 2rem;
    padding: 5px 5px 5px 10px;
    background: #fff;
}

p.note1-title1 { /* 箇条書きのボックス内の表題（太字） */
    margin-top: 0rem;
	text-align: justify;
	text-justify: inter-ideograph;
    color: #006400;
    font-weight: 700;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
b.note1-title1 { /* 箇条書きのボックス内の表題（太字） */
    margin-top: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
    color: #006400;
    font-weight: 700;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1-title2 { /* 箇条書きのボックス内の小見出（青文字、太字） */
    margin-top: 1rem;
    padding-left: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
    color: #006400;
    font-weight: 700;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}

ul.linote2 {
    margin-top: 0.4rem;
}
li.listn1{ /* 箇条書きのボックス内のリスト */
    list-style-type: none;
    padding: 5px 5px 5px 25px;
	text-align: justify;
	background: url(../img/point049_01.gif) 0.1rem 0.6rem no-repeat;
    line-height: 1.7rem;
}
li.listn2{ /* 箇条書きのボックス内のリスト */
    list-style-type: none;
    padding-left: 40px;
	background: url(../img/point027_04.png) 1.5rem 0.3rem no-repeat;
    line-height: 1.7rem;
}
li.listn3{ /* 箇条書きのボックス内のリスト */
    list-style-type: none;
    padding-left: 3rem;
	text-indent: -3rem;
    line-height: 1.7rem;
}
li.listn4{ /* 箇条書きのボックス内のリスト */
    list-style-type: none;
	padding-top: 0.5rem;
    padding-left: 2rem;
	text-indent: -2rem;
    line-height: 1.7rem;
}
li.Normal-n{/* 箇条書きのボックス内の箇条書き（第１段階） */
	margin: 0 0  0 1.5em;
    list-style: none;
	text-indent: -1em;
	text-align: justify;
	text-justify: inter-ideograph;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
li.Normal-n:first-child {
	margin-top: 5px;
}
li.Normal-n2{/* 箇条書きのボックス内の箇条書き（第２段階） */
	margin: 0 0  0 1.5em;
    list-style: none;
    padding-left: 1em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
li.Normal-n2:first-child {
	margin-top: 15px;
}

p.note1-pf { /* 箇条書きのボックス内の数式 */
    margin: 15px 0;
    padding-left: 3rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
    font-weight: 550;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}

p.note { /* 箇条書きのボックス内の通常の段落 */
    padding: 10px 3px 10px 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1 { /* 箇条書きのボックス内の通常の段落 */
    padding-left: 2rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1-2 { /* 箇条書きのボックス内の通常の段落　一時下げなし */
	margin-top: 15px;
    padding-left: 2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1-3 { /* 箇条書きのボックス内の通常の段落 */
    padding-left: 1rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1-4 { /* 箇条書きのボックス内の通常の段落 */
    padding: 10px 5px 5px 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note1-9{/* 解説文中の通常のコメント */
	margin: 12px 0 12px 0;
    padding-left: 8em;
    padding-right: 10px;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.note1-9-para2{/* 解説文中の通常のコメント */
	margin: 12px 0 12px 0;
    padding-left: 8em;
    padding-right: 10px;
	text-indent: 1em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
p.caption{/* 図等のキャプション */
	margin: 3px 0 0 0;
    padding-left: 2rem;
    padding-right: 1rem;
	text-indent: -2rem;
	text-align: right;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}

p.note-en {
    padding: 10px 3px 3px 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	color: #0000ff;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.note-jp {
    padding: 3px 3px 10px 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.blue {
	color:#00f;
}
p.pack {
	margin-top: 5px;
}


/* =======================================
	引用文（ブロック単位）
======================================= */
blockquote.quote{/* 引用文（ブロック単位） */
    position: relative;
    margin: 15px 0 5px 3rem;
    padding: 15px 10px 5px 15px;
    box-sizing: border-box;
    font-style: italic;
    background: #fef4f4;
    color: #222;
    border-left: 4px solid #9dd4ff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}
@media (max-width: 500px) {
	blockquote.quote{/* 引用文（ブロック単位） */
		margin: 15px 0 5px 1rem;
	}
}

blockquote.quote:before{/* 引用符（ブロック単位） */
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 3px;
    content: "“";
    font-family: sans-serif;
    color: #9dd4ff;
    font-size: 45px;
    line-height: 1;
}
p.pquote{/* 引用文各段落（ブロック単位） */
    padding: 0;
    margin: 7px 0;
    line-height: 1.6;
	text-indent: 1em;
}

blockquote cite {
    display: inline-block;
	margin: 5px 5px 5px 0;
    padding-left: 8em;
	text-indent: -2em;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
    color: #006400;
	line-height: 1.6; /* 行間のスペースを指定 */
	width: auto;
	clear: both;
}
@media (max-width: 500px) {
	blockquote cite{/* 引用文（ブロック単位） */
		padding-left: 3em;
	}
}

/* =======================================
	前後の問題への異動ボタン
======================================= */
div.move {
    display: block;
    width: auto;
    margin: 20px auto 0 auto;
    clear: both;
}

.Bmove {
    position: relative;
    display: block;
    float: left;
    margin: 1rem 0 1.5rem 0.5rem;
    padding: 1em 1em;
    text-decoration: none;
    color: #FFF;
    background: #008000;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #006400;/*線色*/
}
.Bmove:hover {
    background: #33dd33;
}
.Bmove:active {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

.Bmove-recent {
    position: relative;
    display: block;
    float: left;
    margin: 1rem 0 1.5rem 0.5rem;
    padding: 1em 1em;
    text-decoration: none;
    color: #FFF;
    background: #808080;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #646464;/*線色*/
}

.BNmove {
    position: relative;
    display: block;
    float: left;
    margin: 1rem 0.7rem 1.5rem 0.7rem;
    padding: 1em 1.5em;
    text-decoration: none;
    color: #FFF;
    background: #008000;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #006400;/*線色*/
}
.BNmove:hover {
    background: #33dd33;
}
.BNmove:active {
    box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}


.BNmove-stop {
    position: relative;
    display: block;
    float: left;
    margin: 1rem 0.7rem 1.5rem 0.7rem;
    padding: 1em 1.5em;
    text-decoration: none;
    color: #FFF;
    background: #808080;/*色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    font-weight: bold;
    border: solid 2px #646464;/*線色*/
}
/* =======================================
	リンク集のためのCSS
======================================= */
div.MsoNormal{
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: small;
	font-family: Century;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
ul.samplu-box-gyou{
	line-height: 1.7;  /* 行間のスペースを指定 */
	position: relative;
	width: auto;
}
li.samplu-box-line{
	list-style: none;
	margin: 15px 0px 0px 15px;
	padding: 0 0 0 1.5em;
	background: url(../img/point026_07.png) 0em 0.4em no-repeat;
	text-indent: 0em;
}
li.samplu-box-line-sub{
	list-style: none;
	margin: 5px 0px 0px 5px;
	padding: 0 0 0 3em;
	background: url(../img/point026_05.png) 2em 0.4em no-repeat;
	text-indent: 1em;
}
li.samplu-box-comm{
	list-style: none;
	margin-top: 7px;
    color: #f00;
    font-weight: 600;
}
li em{
	font-style: normal;
	color: red;
}
.samplu-box-gyou2{
	background-color: #eeeeee;
	border-left: 3px solid #c92ad2;
	color: #000;
/*	margin-bottom:.0001pt;
	margin-right: 0mm;
	margin-top: 0mm;*/
	margin-left: 4em;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
	padding-right: 10px;
	font-size: small;
	line-height: 1.6;  /* 行間のスペースを指定 */
	position: relative;
	width: 85%;
}

h3.tyuusyaku2 {
	clear: both;
	margin-top: 2rem;
	font-size: 20px;
	font-weight:bold;
	color:maroon;
	list-style:none;
}
.tyuusyaku{
	width: inherit;
/*	border-style:solid;
	border-color:aqua;
	border-width: 1px;
	background-color: #eee;*/
	margin-left: 3.5rem;
	padding: 3px 5px 5px 0;
	color:green;
	list-style:none;
}

.youtube {
    display: block;
    margin: 5px 0 5px 15px;
    float: right;
    width: 180px;
    height: 105px;
}
iframe.list-ytube {
	float: right;
	width: 180px;
	height: 105px;
}

div.youtube-big {
    display: block;
    margin: 5px 0 5px 15px;
    width: calk(100vw - 250px);
	height:calk(100vw / 5);
	background-color: #808;
}
iframe.list-ytube-big {
	float: right;
	width: 75%;
	height: 100%;
}
@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	div.youtube-big {
		display: block;
		float: left;
		padding: auto;
		width: 75%;
		max-width: 1024px;
	}
}

a.table-link {
    position: relative;
    display: inline-block;
    padding-bottom: 0px;
    text-decoration: none;
	font-weight: 700;
    transition: color 0.3s;
}
a.table-link::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: '';
  width: 0;
  height: 2px;
  background-color: #dc143c;
  transition: .3s;
  transform: translateX(-50%);
}
a.table-link:hover::after{
  width: 100%;
}
a.table-link:link {
    color: #0044cc;
}
a.table-link:visited {
    color: #663399;
}
a.table-link:hover {
    color: #dc143c;
}
a.table-link:focus {
    color: #8b4513;
}

/* =======================================
	主に判決文用
======================================= */
h2.in-the-text {
	margin: 2rem 25% 0 25%;
	text-align: center;
	text-justify: inter-ideograph;
	text-align-last: justify;       /* Chrome・Firefox用 */
	text-justify: inter-ideograph;  /* IE・Edge用 */
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
@media (min-max:400px) {
	h2.in-the-text {
		margin: 2rem 30% 0 9rem;
	}
}
h3.in-the-text {
	margin-top: 1rem ;
	padding-left: 2rem;
	text-indent: -2rem;
	text-justify: inter-ideograph;
	font-size: medium;
	font-weight: 700;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
h4.in-the-text {
	margin-top: 1rem ;
	padding-left: 2rem;
	text-indent: -1rem;
	text-justify: inter-ideograph;
	font-size: medium;
	font-weight: 700;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-0{
	margin-top: 15px;
    padding-left: 0rem;
	text-indent: 0rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-0-2{
	margin-top: 15px;
    padding-left: 5rem;
	text-indent: -2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-1{
	margin-top: 10px;
    padding-left: 1rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-2-l{
	margin-top: 10px;
    padding-left: 2rem;
	text-indent: -1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-2{
	margin-top: 10px;
    padding-left: 2rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-3-l{
	margin-top: 10px;
    padding-left: 3rem;
	text-indent: -2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-3-l-b{
	margin-top: 10px;
    padding-left: 4rem;
	text-indent: -3rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-3{
	margin-top: 10px;
    padding-left: 3rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-4-l{
	margin-top: 10px;
    padding-left: 4rem;
	text-indent: -1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-4-l{
	margin-top: 10px;
    padding-left: 4rem;
	text-indent: -1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-3-4{
	margin-top: 10px;
    padding-left: 4rem;
	text-indent: -4rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-4{
	margin-top: 10px;
    padding-left: 4rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-4-list{
	margin-top: 10px;
    padding-left: 13rem;
	text-indent: -9rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
@media (max-width:400px){
	p.level-4-list {
		padding-left: 7rem;
		text-indent: -1rem;
	}
}
p.level-5-l{
	margin-top: 10px;
    padding-left: 5rem;
	text-indent: -2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-5{
	margin-top: 10px;
    padding-left: 5rem;
	text-indent: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-5-list{
	margin-top: 10px;
    padding-left: 17rem;
	text-indent: -11rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
@media (max-width:400px){
	p.level-5-list {
		padding-left: 7rem;
		text-indent: -1rem;
	}
}
p.level-left {
	margin-top: 10px;
	text-indent: 1rem;
	text-align: right;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
p.level-left-long {
	margin: 10px 0 0 10rem;
	text-align: justify;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}

.noindent {
	padding-left: 0;
	text-indent: 0;
}
/* =======================================
	主に関連コンテンツ
======================================= */
p.oshirase {/* 関連コンテンツ*/
	margin-top: 30px;  /* 段落間のスペースを指定 */
	margin-left: 10px;
	font-weight: bold;
	color: #da4033;
	text-shadow:#fff -1px -1px 1px,#333 1px 1px 1px;
}
div.MsoNormal{
	margin: 10px 0 1em 2em;
	text-align: justify;
	width: auto;
	border: 0.5px solid #c92ad2;
	border-radius: 3px;
	box-shadow: inset 4px 4px 8px rgba(255,255,255,0.5),inset -4px -4px 8px rgba(0,0,0,0.2);
}
img.top-small {
	z-index: 1;
	position: relative;
	float: left;
	width:100%;
	aspect-ratio: 340 / 227;
	object-fit: cover;
	margin-right: 1rem;
	border-radius: 3px;
}
@media (min-width:450px) and (max-width:1200px) {
	img.top-small {
		width:170px;
		height: 113.5px;
		object-fit: cover;
		}
}
@media (min-width:1200.5px) {
	img.top-small {
		width:220px;
		height: 147px;
		object-fit: cover;
	}
}
a.top-small {
	position: relative;
	text-decoration: none;
}
.samplu-box-gyou{
	display: block;
	color: #000;
	margin-top: 5px;
	margin-left: 1em;
	padding: 5px 10px;
	font-size: 15px;
	line-height: 1.6rem;  /* 行間のスペースを指定 */
	position: relative;
	width: auto;
}
@media (min-width:450px) {
	.samplu-box-gyou {
		margin-top: 0;
		clear: none;
	}
}
.samplu-box-title{
	display: block;
	color: #00f;
	margin-top: 30px;
	margin-left: 1em;
	padding: 5px 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6rem;  /* 行間のスペースを指定 */
	position: relative;
	width: auto;
}
@media (min-width:450px) {
	.samplu-box-title {
		margin-top: 0;
		clear: none;
	}
}
.Related-content-gyou{
	display: block;
	color: #000;
	margin-top: 5px;
	margin-left: 1em;
	padding: 5px 10px;
	font-size: 15px;
	line-height: 1.6rem;  /* 行間のスペースを指定 */
	position: relative;
	width: auto;
}
@media (min-width:450px) {
	.Related-content-gyou {
		margin-top: 0;
		clear: none;
	}
}
.Related-content-title{
	display: block;
	color: #00f;
	margin-top: 30px;
	margin-left: 1em;
	padding: 5px 10px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.6rem;  /* 行間のスペースを指定 */
	position: relative;
	width: auto;
}
@media (min-width:450px) {
	.Related-content-title {
		margin-top: 0;
		clear: none;
	}
}

/* =======================================
	条文
======================================= */
.inbox { /* 解説中の法令の枠 */
    border: 1px #00f solid;
    margin: 5px 0.5rem 5px 2rem;
    padding: 2px 0.5rem;
    background-color: #f5f5f5;
}

.low { /* 法令の名称 */
    margin-top: 15px;
    font-weight: bold;
    color: #00f;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
.Prov-h5 + p.low { /* 法令の名称 */
    margin-top: 30px;
}
.low + p.low { /* 法令の名称 */
    margin-top: 5px;
    font-weight: 500;
}

.Prov-k { /* 解説中の条文の表題（） */
    margin-top: 15px;
	text-indent: -1rem;
    padding-left: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
.low + p.Prov-k { /* 法令名の直後の条文の表題を詰める */
    margin-top: 3px;
}

.Prov-h { /* 条文（項） */
    margin-top: 2px;
	text-indent: -1rem;
    padding-left: 1rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
.Prov-h-2 { /* 条文（項）２字下げ */
    margin-top: 2px;
	text-indent: -2rem;
    padding-left: 2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}
.Prov-h2 { /* 条文（号） */
    margin-top: 2px;
	text-indent: -1rem;
    padding-left: 2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}

.Prov-h2-para2 { /* 条文（号） */
    margin-top: 2px;
	text-indent: -2rem;
    padding-left: 3rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}

.Prov-h2s { /* 字下げ２文字（号） */
    margin-top: 2px;
	text-indent: -2rem;
    padding-left: 2rem;
	text-align: justify;
	text-justify: inter-ideograph;
	font-size: medium;
	line-height: 1.7; /* 行間のスペースを指定 */
	width: auto;
}


/* =======================================
	プライバシーポリシーの条文
======================================= */
.paragraph {
    display: block;
    margin: 15px 5px 5px;
}

.paragraph {
    margin: 5px 0 0.7rem 1rem;
}

h3.title {
    margin-top: 1rem;
    padding-left: 1rem;
    line-height: 1.7rem;
    color: #800000;
}

em.provisions {
    font-weight: bold;
}

p.article {
    line-height: 1.7rem;
    padding-left: 1rem;
    text-indent: -1rem;
}

p.article-sub {
    line-height: 1.7rem;
    padding-left: 2rem;
    text-indent: -1rem;
}

/* =======================================
	SNSボタンについて横並びにするため
======================================= */

.social {
	width:100%;
	height: calc (100% - 15px);
	margin: 15px 0 0 15px;
	padding: 5px 0 5px 0;
}

.social_inner {
	position: relative;
	left: 0%;
	float: left;
}

.facebook,
.twitter,
.hatebu,
.LINE {
	position: relative;
	left: 0%;
	float: left;
	margin: 1rem 10px 0 0;
}

.facebook {width: 170px;height: 30px;padding-left: 0px;}
.fb_iframe_widget > span {vertical-align: baseline !important;}
.twitter {width: 84px;padding-left: 5px;height: 30px;}
.hatebu {width: 123px;padding-left: 12px;height: 30px;}
.LINE  {width: 75px;padding-left: 5px;}

/* =======================================
	aside
======================================= */

#aside {
	float: left;
	display: block;
	margin-top: 1rem;
	width: 100%;
}
@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	#aside {
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		float: right;
		width: 240px;
		margin-top: 0;
		justify-content: space-between;
	}
}

/*left_contactは外部へのリンクボタンを規定*/

div.left_contact {
	width: 230px;
	height: 100%;
	border-radius: 4px;
	margin: 30px 0 15px;
	padding: 5px;
}

.btn {
    display: inline-block;           /* 改行なしのブロック要素 */
    position: relative;              /* 相対位置指定 */
    width: 220px ;
	height: 40px;
	margin: 3px auto;
	padding: 0px auto;
	font-family: Arial,Helvetica,sans-serif;
	font-size: 12px;
    text-align: center;              /* 水平方向は中央揃え */
    vertical-align: middle;
    line-height: 2.5rem;               /* 行の高さ */
}
.btn span {
    display: block;                  /* ブロック要素 */
    position: absolute;              /* 親要素の左上を基準位置 */
    width: 100%;                     /* 横幅 */
    height: 100%;                    /* 高さ */
    transform-style: preserve-3d;    /* 重なりを3Dで表示 */
    transition: 0.3s;   /* 変化時間 */
}
.btn span:nth-child(1) {
    color: #ffffff;
    background: #fd9535;/*色*/
    border: solid 2px #d27d00;/*線色*/
    border-radius: 4px;/*角の丸み*/
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
    transform: rotateY(0deg);        /* 縦軸の回転なし */
    transform-origin: 60% 0% -90px;   /* transformの起点 */
}
.btn span:nth-child(2) {
    color: #ffffff;
    background: #03A9F4;/*色*/
    border: solid 2px #0f9ada;/*線色*/
    border-radius: 4px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
    text-shadow: 0 1px 0 rgba(0,0,0,0.2);
    transform: rotateY(90deg);/* 縦軸で90度回転 */
    transform-origin: 60% 0 -90px;   /* transformの起点 */
}
.btn:hover span:nth-child(1) {
    transform: rotateY(-90deg);      /* 縦軸で前方に90度回転 */
}
.btn:hover span:nth-child(2) {
    transform: rotateY(0deg);        /* 縦軸の回転なし */
}

/*検索ボックス全体を規定*/
#cse-search-box {
	float: left;
	width: 100% !important;
	height: 70px;
	margin-right: 0px;
}
#cse-search-box table.gsc-search-box td.gsc-input {
	padding: 0 !important;
}
#cse-search-box input[type=text] {/*検索ボックスの入力枠を規定*/
	border-radius: 5px 0 0 5px;
	height: 45px;
	padding: 0px 5px 0px !important;
	width:  calc(100% - 150px) !important;
	float: left;
	margin-top: 10px;
	margin-left: 5px;
	box-shadow: inset 2px 2px 4px rgba(0,0,0,0.2);
}
#cse-search-box input[type=submit] {/*検索ボタンを規定*/
	background-color: #66aaee;
	border: 1px solid #666666;
	border-radius: 0 5px 5px 0;
	font-weight: bold;
	font-size: large;
	color: #FFFFFF;
	float: right;
	height: 50px;
	margin-top: 10px;
	margin-left: 0 !important;
	margin-right: 5px;
	width: 120px;
	text-shadow: -1px -1px 1px rgba(0,0,0,0.3);
	box-shadow: inset 1px 1px 2px rgba(255,255,255,0.5),inset -1px -1px 2px rgba(0,0,0,0.2);
	transition: background-color 0.3s,color 0.3s;
}

@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	#cse-search-box {
		width: 240px !important;
		height: 50px;
		display: flex;
		flex-wrap: wrap;
		flex-direction: row;
		float: right;
		width: 240px;
		margin-top: 0;
		justify-content: space-between;
	}
	#cse-search-box input[type=text] {
		height: 25px;
		width:165px !important;
	}
	#cse-search-box input[type=submit] {
		font-size: small;
		height: 26px;
		width: 50px;
	}
}
.twitter-box {
    margin-top: 20px;
    font-size: small;
	width: 240px;
}
.twitter-box-right {
	float: right;
    margin: 20px 10px 10px 15px;
    font-size: small;
	width: 240px;
}
p.SNS-box {
    margin-top: 10px;
    font-size: 20px;
    font-weight: 900;
    color: #00f
}
@media (max-width: 500px) {
	blockquote.twitter-tweet {
		width:90vw
	}
}

iframe.ytube {
	display: block;
	margin:1rem auto 0 auto;
	width:75vw;
	height:42.2vw;
}

@media all and (min-width: 750px) {
	/* 750px以上でFlexboxを有効にしてレイアウトを切り替える */
	iframe.ytube {
		width:80%;
		max-width: 560px;
		max-height: 315px;
		}
}



/* =======================================
	go-top
======================================= */
#page-top1{
	display: block;
	z-index: 9999;
	position: fixed;
	bottom: 10px;
	right: 10px;
	width: 50px;
	height:50px;
	border-radius:60px;
	padding: 5px 5px 5px 5px;
	background: #59d;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
	text-shadow: -1px -1px 1px rgba(0,0,0,0.3);
	box-shadow: inset 2px 2px 8px rgba(255,255,255,0.5),inset -2px -2px 8px rgba(0,0,0,0.2);
	transition: background-color 0.3s,color 0.3s;
	filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;
}

#page-top1:hover{
	background: #099;
	color: #fff;
	filter:alpha(opacity=100);
    -moz-opacity: 1.0;
    opacity: 1.0;
    transform: rotatey(180deg);  /* 回転 */
    transition: 0.5s;             /* 0.3秒かけて動く */
}


/* =======================================
	footer
======================================= */

#footer {
	clear: both;
	width: 100%;
	font-size: small;
}
div.foot-nav {
    display: block;
    float: right;
    margin: 10px 6rem 10px 0;
	font-size: small;}
a.foot-a {
    display: block;
    clear: both;
    line-height: 1.7rem;
}

p.footer {
    clear: both;
	text-align: center;
	margin: 20px auto;
	padding: 5px 0;
	font-size: small;
}
