@charset "utf-8";
#contents img {max-width: 100%;}
.page_title { margin-bottom: 78px !important;}
#contents h1 span {font-size: 3.0rem !important; margin:0 !important; border: none !important; padding: 0 !important;}
#contents h2 {font-size: 2.5rem !important; padding-bottom: 5px !important; border-bottom: 1px solid #000; margin-bottom: 45px !important;}
#contents h3 {font-size: 2rem !important; margin: 0 0 15px !important; padding:0;}
#contents h4 {font-size: 1.8rem !important; margin-bottom: 15px !important;}
/*#contents h3 + p,#contents h3 + ul,#contents h3 + ol, #contents h3 + article, #contents h3 + div, #contents h3 + h4, #contents h3 + section, #contents h3 + table {margin-top: -25px !important;}*/

p + h3, p + h4 {/*margin-top: 50px !important;*/}

#contents .nav_local_s h2 {margin-bottom: 30px !important;}

#wrapper section, #wrapper article {/*margin: 60px 0 !important;*/ margin-bottom: 60px;}
#wrapper section.bggray {padding: 30px; background: rgb(241,241,241); }
#wrapper section.bgblue {padding: 30px; background: rgb(242,246,251); }
#wrapper section.bgblue h3,#wrapper section.bgblue h4 {text-align: center;}
#wrapper section > *:last-child, article.bggray > *:last-child {margin-bottom: 0 !important;}
#wrapper section > *:first-child, article.bggray > *:first-child {margin-top: 0 !important;}

.nav_local_s h2, #page_links {margin-bottom: 35px !important;}

.float_img_r > figure {float: right; margin:0 0 25px 25px;}
.float_img_l > figure {float: left; margin:0 25px 25px 0; }

ul.notes_plane {margin-bottom: 25px;}
ul.notes_plane li::before {content: "※";}
ul.notes_plane li { list-style: none; font-size: 1.2rem; color: #666; padding-left: 1em; text-indent: -1em; line-height: 1.2; margin-bottom: 10px;}

ol.asterisk { counter-reset: number; list-style: none;}
ol.asterisk li {text-indent: -2.9rem; padding-left: 3rem;}
ol.asterisk li:before { counter-increment: number; content: "※"counter(number)" ";}

figure {margin: 50px 0;}
figure figcaption, table caption { text-align:center; margin: 10px 0;}

.text_left {text-align:left !important;}
.text_right {text-align:right !important;}

/* figure figcaption span {font-size: 2rem;} */
/** 20200710霑ｽ險� 
***********************************************************************************/
figure figcaption span {font-size: 1.8rem;} 

table {margin-bottom: 25px;}
table td {background: rgb(256,256,256);}

.flexBox {display: flex;}
.flexBox.sb {justify-content: space-between;}
.flexBox.sa {justify-content: space-around;}
.flexBox.ce {justify-content: center;}
.flexBox.ce > * {margin-left: 15px; margin-right: 15px;}
.flexBox > figure, .flexBox .figureBox {flex-shrink:0;}
.flexBox > figure.rightImg {margin: 0 30px 30px 0;}
.flexBox > figure.leftImg {margin: 0 0 30px 30px;}
.flexBox > figure.rightImg img, .flexBox > figure.leftImg img {width: 475px;}
.flexBox > figure.rightImg, .flexBox > figure.leftImg figcaption {text-align:left;}

.flexBox.fe {justify-content: flex-end; align-items: flex-end; text-align: right;}
.flexBox.fe figure, .flexBox.fe p {margin-top:0;margin-bottom:0; line-height:1.4}
.flexBox.fe p span {font-weight: bold; font-size: 1.8rem;}
.flexBox.fe figure {margin-left: 15px; max-width: 126px;}
.flexBox.fe.le{justify-content: left;text-align: left; margin-bottom:20px;}
.flexBox.fe.le figure {margin-right: 15px;margin-left:0;}

figure.centerImg {margin-left: auto; margin-right: auto;}

.flexBox.flexFix figure {width: 20%; margin-top: 0; margin-left: 5%;}
#contents .flexBox.flexFix figure img {margin:0;}
.flexBox.flexFix figcaption {text-align:left;}
.flexBox.flexFix p {width: calc(100% - 25%);}
 
.oversize {margin-top: -50px;width: 100vw; position: relative; left: 50%; right: 50%; margin-left: -50vw; margin-right: -50vw; }
.oversize figure img {width: 100%;}
.oversize em {position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); color: rgb(256,256,256); font-size: 3.5rem; text-shadow: 2px 0px 2px #000000; text-align:center;line-height: 1.2;}

ul#page_anchor li a span { position: absolute; top: 50%; left: 2%; right: 13%; transform: translateY(-50%) translateX(0%);}

.nav_local_s h2 {margin-top: 50px;}

ul.disc li {font-size: 1.6rem; margin-bottom: 0.5rem;}

/** 20200721インデックス� 
***********************************************************************************/
nav.sub_category > ul {width: 100%; margin-right: 0;justify-content: space-between; align-items: flex-start;}
nav.sub_category > ul li {width: auto; margin-right: 0; flex-basis: 30%; margin-bottom:0; }
nav.sub_category > ul li a {position: relative;min-height: 64px; display: block;border-bottom: 1px solid #0046AD;margin-bottom: 40px;}
nav.sub_category ul li a div::before {font-family: "Font Awesome 5 Free"; content: "\f054"; font-weight: 900; display: inline-block; margin-right: 10px; font-size: 12px; margin-left: -20px;position: absolute;top: 50%; transform: translateY(-50%);}

nav.sub_category > ul li a div {font-size: 1.6rem; text-align:left; color: inherit;margin-left: 20px; position:absolute; top: 50%; transform: translateY(-50%);}
nav.sub_category > ul li a div::after,nav.sub_category>ul li a:hover div:after {display: none;}

nav.sub_category ul li a div, nav.sub_category ul li a div::before {transition: all 0.2s ease 0s;}
nav.sub_category ul li a:hover div,nav.sub_category ul li a:hover div::before {color: #08d;}

nav.sub_category > ul li ul {margin-top:-10px;}
nav.sub_category > ul li ul li {margin-bottom: 0;}
nav.sub_category > ul li ul li a {border-bottom: none; min-height: 21px; margin-bottom: 20px; line-height: 1.2;}
nav.sub_category > ul li ul li a div {font-size: 1.4rem; }

/*2段組みにする場合
nav.sub_category > ul li.hasChild {flex-basis: 65%;}
nav.sub_category > ul li.hasChild ul {display: flex; justify-content: space-between; flex-wrap: wrap;}
nav.sub_category > ul li.hasChild ul li { flex-basis: 45%;}
*/

/** 20200710霑ｽ險� 
***********************************************************************************/
.txt_center{text-align: center;}

@media screen and (max-width: 599px) {
.page_title { margin-bottom: 40px !important;}
#contents h1 span {font-size: 28px !important;}
#contents h2 {font-size: 23px !important; padding-bottom: 10px !important; margin-bottom: 25px !important;}
#contents h3 { margin-bottom: 15px !important;}
#contents h4 { margin-bottom: 15px !important;}
#contents h2 + p, #contents h3 + p, #contents h2 + ul, #contents h3 + ul, #contents h3 + ol, #contents h3 + article  {margin-top: 0 !important;}
p + h3, p + h4 {margin-top: 40px !important;}

#wrapper section, #wrapper article {margin-bottom: 30px !important;}
#wrapper section.bggray {padding: 15px;}

.float_img_r figure {margin: 25px 0;}
.float_img_r figure figcaption,
.float_img_l figure figcaption {font-size: 18px !important; text-align: center; margin-top: 10px;}
.float_img_r > figure,.float_img_l > figure {float: none; margin:0 0 25px 0;}

.flexBox.flexFix {display: block;}
.flexBox.flexFix figure, .flexBox.flexFix p {width: 100%;}
.flexBox.flexFix figure, #contents .flexBox.flexFix figure img {margin: 0 auto;}
.flexBox.flexFix figcaption {text-align:center;}

.flexBox.fe figure {margin-left: auto;}

.oversize {margin-top: -30px;}
.oversize em {font-size: 2rem;}

nav.sub_category > ul li {flex-basis: 100%;}
nav.sub_category > ul li a {min-height: 58px; margin-bottom: 20px;}
nav.sub_category > ul li ul {margin-top: 0;}

ul#page_anchor li a span { position: inherit; left:0; right: 0;}

table {margin-top: 0;}

/** 20200710霑ｽ險� 
***********************************************************************************/
.flexBox{display: block;}
.flexBox > figure.leftImg{ margin: 20px 0 0 0; }

}

@media screen and (min-width: 600px) and (max-width: 999px) {
.float_img_r > figure, .float_img_l > figure {width: 50%;}

.flexBox.flexFix {display: block;}
.flexBox.flexFix figure, .flexBox.flexFix p {width: 100%;}
.flexBox.flexFix figure, #contents .flexBox.flexFix figure img {margin: 0 auto;}
.flexBox.flexFix figcaption {text-align:center;}

nav.sub_category > ul li {flex-basis: 47%;}

}