@charset "Shift_JIS";
html, body, div, span, h1, h2, p a, ol, ul, li { margin: 0; padding: 0; border: 0; font: inherit; vertical-align: baseline; }
html { line-height: 1; font-size: 62.5%; }
body { text-align: center; background-color: #fff; color: #6e6e6e; font-family: 'Noto Sans JP', sans-serif; font-weight: 400; font-size: 1.6rem; }
h1, h2 { font-weight: normal; }
/*h1, h2, .head1, .site_t, .bread { font-family: 'Noto Sans JP'; }*/
ul, ul li { list-style-type: none; }
a:link { color:#6e6e6e; text-decoration:none; opacity:1.0; }
a:hover { color:#6e6e6e; text-decoration:none; opacity:0.7; }
a:visited { color:#6e6e6e; text-decoration:none; }
a:active { color:#6e6e6e; text-decoration:none; opacity:0.7; }
.al_center { text-align: center; }
.al_right { text-align: right; }
.al_left { text-align: left; }
.mg_auto { margin-left: auto; margin-right: auto; }
.val_c { display: flex; align-items: center; }
.val_cc { display: flex; align-items: center; justify-content: center; }
.flex { display: flex; }
.flex_sp_btw { justify-content: space-between; }
.flex_wrap { flex-wrap: wrap; }
.flex_center { justify-content: center; }
.wrapper { width: 88vw; margin: 0 auto; }
.hakusho .bgc, .hakusho.bgc { background-color: #4380b9; }
.manabu .bgc, .manabu.bgc { background-color: #43b96a; }
.hataraku .bgc, .hataraku.bgc { background-color: #bf5a33; }
.npo .bgc, .npo.bgc { background-color: #b9436d; }
.other .bgc, .other.bgc { background-color: #b99443; }
.hakusho .ftc, .hakusho.ftc { color: #4380b9; }
.manabu .ftc, .manabu.ftc { color: #43b96a; }
.hataraku .ftc, .hataraku.ftc { color: #bf5a33; }
.npo .ftc, .npo.ftc { color: #b9436d; }
.other .ftc, .other.ftc { color: #b99443; }
.hakusho .bdc, .hakusho.bdc { border-color: #4380b9; }
.manabu .bdc, .manabu.bdc { border-color: #43b96a; }
.hataraku .bdc, .hataraku.bdc { border-color: #43b96a; }
.npo .bdc, .npo.bdc { border-color: #b9436d; }
.other .bdc, .other.bdc { border-color: #b99443; }
.site_t { width: 100%; padding: 10px 0; background-color: #efefef; color: #595757; margin-top: 0; }
.site_t span { display: block; font-size: 1.6rem; text-align: right; }
.head1 { padding: 30px 0 0; font-size: 2.8rem; font-weight: 200; }
.head1 span { display: block; text-align: left; border-bottom: 2px solid; padding-bottom: 6px; }
.head1 span.h1_num { display: inline-block; color: #fff; width: 30px; height: 24px; text-align: center;margin-right: 1em; }
ul.bread { justify-content: flex-end; margin-top: 10px;}
.bread li { border-right: 1px solid; padding: 0 20px; }
.bread li:first-child { border-left: 1px solid; }
section { padding-top: 50px; display: block; position: relative; }
section:last-of-type { padding-bottom: 150px; }
.head2 { padding: 6px 0 6px 1em; }
.head2 span{ display: block; text-align: left; color: #fff; font-size: 2.0rem; font-weight: bold; }
.list_num { text-align: left; margin: 20px 1em 0 3em; line-height: 1.4; }
.list_num li { margin-bottom: 1em; }
/*.list_num li a:after { content: '>>'; display: inline-block; margin-left: 3em; font-size: 12px; color: #4380b9; }*/
.list_num li a:hover { text-decoration: underline; }
.list_num li.nolink { color: #bbb; }
#bottom_bt { width: 100%; position: fixed; bottom: 0; left: 0; text-align: center; }
#bottom_bt ul { justify-content: flex-end; }
#bottom_bt li { padding: 10px 0; width: 220px; text-align: center; border-top-left-radius: 10px;border-top-right-radius: 10px; }
#bottom_bt li a { color: #fff; font-size: 1.8rem; }
#bottom_bt li.bt_close { background-color: #ababab; margin-left: 5px;}

body.home { overflow: hidden; height: auto; }
.home .site_t { width: 100%; height: 100px; background-color: #efefef; color: #595757;}
.home .site_t span { font-size: 4.0rem; }
.home #main { width: 100%; text-align: center;}
.home .wrapper { margin: 0; }
#buttons { padding-bottom: 30px; }
#buttons p { position: relative; width: 35vw; padding: 30px 1vw; border-width: 1px; border-style: solid; border-color: #ccc; font-size: 3.2rem; margin: 20px 0; padding-left: 50px; background-color: #fff; border-radius: 10px; overflow: hidden; box-shadow: 2px 2px 4px #eee; }
#buttons a:hover { opacity: 1;}
#buttons a:hover p { border-color: #999; }
#buttons p { line-height: 1.2; }
#buttons p span { position: absolute; width: 50px; height: 100%; text-align: center; color: #fff; left: 0; top: 0; }

