@charset "UTF-8";
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; -webkit-box-sizing: border-box; box-sizing: border-box; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; color: #615959; }

ins { background-color: #ff9; color: #000; text-decoration: none; }

mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

th { font-weight: normal; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

input, select, textarea, img { vertical-align: middle; }

ul, dl, ol { list-style: none; }

*:focus { outline: none; }

.fs70 { font-size: 70%; }

.fs80 { font-size: 80%; }

.fs90 { font-size: 90%; }

.fs100 { font-size: 100%; }

.fs110 { font-size: 110%; }

.fs120 { font-size: 120%; }

.fs130 { font-size: 130%; }

.fs140 { font-size: 140%; }

.fs150 { font-size: 150%; }

.fs160 { font-size: 160%; }

.fs170 { font-size: 170%; }

.fs180 { font-size: 180%; }

.fs190 { font-size: 190%; }

.fs200 { font-size: 200%; }

.fs300 { font-size: 300%; }

.fs400 { font-size: 400%; }

.b { font-weight: 700; }

.u { text-decoration: underline; }

.del { text-decoration: line-through; }

.red { color: #d7535e !important; }

.blue { color: #2c3b5b !important; }

.green { color: #6ab39a !important; }

.orange { color: #e17514 !important; }

.gray { color: #f2f2f2 !important; }

.bold { font-weight: bold !important; }

.center { text-align: center !important; }

.right { text-align: right !important; }

.left { text-align: left !important; }

.floatR { float: right; margin: 0 0 1em 1em; }

.floatL { float: left; margin: 0 1em 1em 0; }

.clear { clear: both; }

a img.fade { background: none !important; outline: none; -webkit-transition: all .3s; transition: all .3s; }

a:hover img.fade { opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha( opacity=70 )"; background: none !important; }

.att { padding-left: 1em; text-indent: -1em; }

.att_box { margin: 2em 0 2.5em; padding: 1em 1.2em; line-height: 2.0; border: 1px dotted #cccccc; background: #fcfcfc; box-shadow: 0px 4px 0px 0px #f7f7f7; }

.overflowH { overflow: hidden; }

.col-1 { width: 8.333%; }

.col-2 { width: 16.666%; }

.col-3 { width: 25%; }

.col-4 { width: 33.333%; }

.col-5 { width: 41.666%; }

.col-6 { width: 50%; }

.col-7 { width: 58.333%; }

.col-8 { width: 66.666%; }

.col-9 { width: 75%; }

.col-10 { width: 83.333%; }

.col-11 { width: 91.666%; }

.col-12 { width: 100%; }

@media (max-width: 770px) { .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11 { width: 100%; } }
.mb0em { margin-bottom: 0em !important; }

.mb05em { margin-bottom: .5em !important; }

.mb1em { margin-bottom: 1em !important; }

.mb2em { margin-bottom: 2em !important; }

.mb3em { margin-bottom: 3em !important; }

.mb4em { margin-bottom: 4em !important; }

.mb5em { margin-bottom: 5em !important; }

.pt0em { padding-top: 0em !important; }

.pt1em { padding-top: 1em !important; }

.pt2em { padding-top: 2em !important; }

.pt3em { padding-top: 3em !important; }

.pt4em { padding-top: 4em !important; }

.pt5em { padding-top: 5em !important; }

.p3vw { padding: 3vw 0 !important; }

.m0 { margin: 0 !important; }

.mt0 { margin-top: 0 !important; }

.mr0 { margin-right: 0 !important; }

.mb0 { margin-bottom: 0 !important; }

.ml0 { margin-left: 0 !important; }

.m5 { margin: 5px !important; }

.mt5 { margin-top: 5px !important; }

.mr5 { margin-right: 5px !important; }

.mb5 { margin-bottom: 5px !important; }

.ml5 { margin-left: 5px !important; }

.m10 { margin: 10px !important; }

.mt10 { margin-top: 10px !important; }

.mr10 { margin-right: 10px !important; }

.mb10 { margin-bottom: 10px !important; }

.ml10 { margin-left: 10px !important; }

.m15 { margin: 15px !important; }

.mt15 { margin-top: 15px !important; }

.mr15 { margin-right: 15px !important; }

.mb15 { margin-bottom: 15px !important; }

.ml15 { margin-left: 15px !important; }

.m20 { margin: 20px !important; }

.mt20 { margin-top: 20px !important; }

.mr20 { margin-right: 20px !important; }

.mb20 { margin-bottom: 20px !important; }

.ml20 { margin-left: 20px !important; }

.m25 { margin: 25px !important; }

.mt25 { margin-top: 25px !important; }

.mr25 { margin-right: 25px !important; }

.mb25 { margin-bottom: 25px !important; }

.ml25 { margin-left: 25px !important; }

.m30 { margin: 30px !important; }

.mt30 { margin-top: 30px !important; }

.mr30 { margin-right: 30px !important; }

.mb30 { margin-bottom: 30px !important; }

.ml30 { margin-left: 30px !important; }

.m35 { margin: 35px !important; }

.mt35 { margin-top: 35px !important; }

.mr35 { margin-right: 35px !important; }

.mb35 { margin-bottom: 35px !important; }

.ml35 { margin-left: 35px !important; }

.m40 { margin: 40px !important; }

.mt40 { margin-top: 40px !important; }

.mr40 { margin-right: 40px !important; }

.mb40 { margin-bottom: 40px !important; }

.ml40 { margin-left: 40px !important; }

.m45 { margin: 45px !important; }

.mt45 { margin-top: 45px !important; }

.mr45 { margin-right: 45px !important; }

.mb45 { margin-bottom: 45px !important; }

.ml45 { margin-left: 45px !important; }

.m50 { margin: 50px !important; }

.mt50 { margin-top: 50px !important; }

.mr50 { margin-right: 50px !important; }

.mb50 { margin-bottom: 50px !important; }

.ml50 { margin-left: 50px !important; }

.m55 { margin: 55px !important; }

.mt55 { margin-top: 55px !important; }

.mr55 { margin-right: 55px !important; }

.mb55 { margin-bottom: 55px !important; }

.m60 { margin: 60px !important; }

.mt60 { margin-top: 60px !important; }

.mr60 { margin-right: 60px !important; }

.mb60 { margin-bottom: 60px !important; }

.ml60 { margin-left: 60px !important; }

.m65 { margin: 65px !important; }

.mt65 { margin-top: 65px !important; }

.mr65 { margin-right: 65px !important; }

.mb65 { margin-bottom: 65px !important; }

.ml65 { margin-left: 65px !important; }

.m70 { margin: 70px !important; }

.mr70 { margin-right: 70px !important; }

.mb70 { margin-bottom: 70px !important; }

.ml70 { margin-left: 70px !important; }

.m75 { margin: 75px !important; }

.mt75 { margin-top: 75px !important; }

.mr75 { margin-right: 75px !important; }

.mb75 { margin-bottom: 75px !important; }

.ml75 { margin-left: 75px !important; }

.m80 { margin: 80px !important; }

.mt80 { margin-top: 80px !important; }

.mr80 { margin-right: 80px !important; }

.mb80 { margin-bottom: 80px !important; }

.ml80 { margin-left: 80px !important; }

.p0 { padding: 0 !important; }

.pt0 { padding-top: 0 !important; }

.pr0 { padding-right: 0 !important; }

.pb0 { padding-bottom: 0 !important; }

.pl0 { padding-left: 0 !important; }

.p5 { padding: 5px !important; }

.pt5 { padding-top: 5px !important; }

.pr5 { padding-right: 5px !important; }

.pb5 { padding-bottom: 5px !important; }

.pl5 { padding-left: 5px !important; }

.p10 { padding: 10px !important; }

.pt10 { padding-top: 10px !important; }

.pr10 { padding-right: 10px !important; }

.pb10 { padding-bottom: 10px !important; }

.pl10 { padding-left: 10px !important; }

.w70 { width: 70px !important; }

.w290 { width: 290px !important; }

.w440 { width: 100%; max-width: 440px !important; }

.w682 { width: 100%; max-width: 682px !important; }

.w710 { width: 720px !important; }

.w50p { width: 50% !important; }

.w60p { width: 60% !important; }

.w70p { width: 70% !important; }

.w80p { width: 80% !important; }

.w90p { width: 90% !important; }

.w100p { width: 100% !important; }

/* 共通設定
----------------------------- */
body { position: relative; font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; font-size: 15px; font-weight: normal; line-height: 1.2; color: #3B4043; overflow-x: hidden; }

@media all and (-ms-high-contrast: none) { *::-ms-backdrop, main { display: block; } }
img { width: auto; max-width: 100%; }

sup { font-size: 60%; display: inline-block; vertical-align: top; }

.spi, .spb, .spt { display: none; }

.pci { display: inline; }

.pcb { display: block; }

.pct { display: table; }

a { color: #3B4043; text-decoration: none; }
a.pdf:before { content: "\f1c1"; font-family: "Font Awesome 5 Free"; color: #ff2116; margin-right: 0.5em; font-weight: 900; font-weight: normal; vertical-align: middle; font-size: 18px; }
a.doc:before { content: "\f1c2"; font-family: "Font Awesome 5 Free"; color: #104092; margin-right: 0.5em; font-weight: 900; font-weight: normal; vertical-align: middle; font-size: 18px; }
a.xls:before { content: "\f1c3"; font-family: "Font Awesome 5 Free"; color: #155b37; margin-right: 0.5em; font-weight: 900; font-weight: normal; vertical-align: middle; font-size: 18px; }
a.external:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #3B4043; margin-right: 0.5em; font-weight: 900; vertical-align: middle; margin-left: .5em; margin-right: 0; font-size: 17px; }

a:hover { opacity: .7; }

a[href^="tel:"] { text-decoration: underline; }

p.txt a { text-decoration: underline; }

.full { width: 100%; }

.mainCol { color: #0B2D73; }

section ~ section { margin-top: 60px; }

main ~ footer { margin-top: 120px; }

.grid { margin-left: -10px; margin-right: -10px; zoom: 1; }

.grid::after { clear: both; content: ""; display: table; }

.unit { box-sizing: border-box; float: left; padding-left: 10px; padding-right: 10px; }

.flexbox > .unit { float: none; }

.flexbox { display: flex; }

.tbl { display: table; }

.inner { max-width: 1240px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }

.inner ~ .inner { margin-top: 30px; }

/*  画像  */
figure { margin-top: 20px; }
figure figcaption { margin-top: 10px; font-size: 14px; }
figure ~ figure { margin-top: 20px; }

/*  背景色  */
.wrap section.bg_yellow { background: #fffed7; margin: 60px -200% 0; padding: 40px 200%; }

.wrap section.bg_gray { background: #E5EAF1; margin: 60px -200% 0; padding: 40px 200%; }

.wrap section.banner_area { background: #5978B7; margin: 60px -200% 0; padding: 70px 200% 120px; color: #fff; }

.grey { background-color: #ececec; }

.yellow { background-color: #fffed7; }

.white { background-color: #fff; border: solid 3px #51a9d1; }

/*  枠  */
.frame { padding: 0.5em 1em; margin: 2em 0; border-radius: 10px; }
.frame p.txt { margin-top: 0 !important; }
.frame ul.circle { margin-top: 0 !important; }

/*  リスト  */
ul.circle { margin-top: 20px; list-style: disc; padding-left: 1.5em; }
ul.circle li { margin-bottom: 10px; line-height: 1.78em; }
ul.circle li:last-of-type { margin-bottom: 0; }
ul.circle li a { text-decoration: underline; }

ol.numberList { list-style-type: decimal; margin-top: 20px; padding-left: 1.5em; }
ol.numberListli:last-of-type { margin-bottom: 0; }

/*  ボタン  */
.s_btnLink { margin-top: 10px; }
.s_btnLink a { border: 1px solid #0B2D73; background: #0B2D73; display: inline-block; padding: .6em 2em; color: #fff; font-size: 16px; border-radius: 2px; }
.s_btnLink a:hover { background: #fff; color: #0B2D73; opacity: 1; transition: .3s; }
.s_btnLink a.external:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0.5em; font-weight: 900; }
.s_btnLink a.external:hover:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0.5em; font-weight: 900; transition: .3s; }

.b_btnLink { margin-top: 10px; }
.b_btnLink a { border: 1px solid #0B2D73; background: #0B2D73; display: inline-block; padding: .8em 2em; color: #fff; font-size: 20px; border-radius: 2px; }
.b_btnLink a:hover { background: #fff; color: #0B2D73; opacity: 1; transition: .3s; }
.b_btnLink a.external:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0.5em; font-weight: 900; }
.b_btnLink a.external:hover:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0.5em; font-weight: 900; transition: .3s; }

#totop { width: 9.375vw; height: 9.375vw; max-width: 50px; max-height: 50px; min-width: 40px; min-height: 40px; position: fixed; border: solid 2px #CDD6DD; background: #fff; bottom: 10px; right: 10px; }
#totop a { position: relative; display: flex; justify-content: center; align-items: center; height: 100%; width: 100%; text-decoration: none; text-align: center; }
#totop a::after { content: "\f062"; font-family: "Font Awesome 5 Free"; color: #959EA7; margin-right: 0; font-weight: 900; font-size: 24px; display: block; }

/* header
----------------------------- */
header { padding-top: 10px; width: 100%; background: #fff; position: fixed; z-index: 9999; }
header .header_inner { max-width: 1240px; margin: 0 auto; padding-left: 20px; padding-right: 20px; }
header .header_inner::after { content: ""; clear: both; display: block; }
header .header_inner .header_logo { float: left; }
header .header_inner .header_logo img { height: 40px; }
header .header_inner .header_utility { float: right; }
header .header_inner .header_utility .search { display: inline-block; vertical-align: top; }
header .header_inner .header_utility .search .search_form form input[type="text"] { font-size: 17px; padding: 0 10px; border: 2px solid #0B2D73; border-right: none; border-top-left-radius: 4px; border-bottom-left-radius: 4px; vertical-align: top; height: 40px; box-sizing: border-box; background: no-repeat right bottom url(http://www.google.com/cse/images/google_custom_search_smwide.gif); }
header .header_inner .header_utility .search .search_form form button[type="submit"] { background: #fff; border: 2px solid #0B2D73; border-left: none; border-top-right-radius: 4px; border-bottom-right-radius: 4px; height: 40px; margin-left: -0.5em; box-sizing: border-box; }
header .header_inner .header_utility .search .search_form form button[type="submit"]:before { content: "\f002"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0; font-weight: 900; font-size: 20px; vertical-align: middle; cursor: pointer; }
header .header_inner .header_utility .contact { background: #0B2D73; display: inline-table; vertical-align: top; border: 2px solid #0B2D73; border-radius: 4px; margin-left: 10px; height: 40px; }
header .header_inner .header_utility .contact a { display: table-cell; vertical-align: middle; padding: 0 10px; color: #fff; font-weight: bold; font-size: 20px; }
header .header_inner .header_utility .contact a:hover { background: #fff; color: #0B2D73; opacity: 1; transition: .3s; }
header .header_inner .header_utility .contact + .contact { margin : 0; }
header .header_inner .header_utility .link { display: inline-block; }
header .header_inner .header_utility .link ul { display: inline-table; height: 40px; }
header .header_inner .header_utility .link ul li { display: table-cell; vertical-align: middle; padding-left: 20px; }
header .header_inner .header_utility .link ul li a:hover { opacity: 1; }
header .header_inner .header_utility .link ul li i { position: relative; }
header .header_inner .header_utility .link ul li i:hover .balloon { display: inline; }
header .header_inner .header_utility .link ul li i .balloon { position: absolute; display: none; padding: 8px 0; background-color: #fff; width: 90px; left: -39px; top: 100%; margin-top: 18px; font-size: 70%; text-align: center; border: 2px solid #0B2D73; border-radius: 5px; }
header .header_inner .header_utility .link ul li i .balloon:before { border-bottom: 12px solid #0B2D73; border-left: 10px solid transparent; border-right: 10px solid transparent; top: -12px; left: 40%; content: ""; position: absolute; }
header .header_inner .header_utility .link ul li i .balloon:after { border-bottom: 12px solid #fff; border-left: 10px solid transparent; border-right: 10px solid transparent; top: -9px; left: 40%; content: ""; position: absolute; }
header .header_inner .header_toContractor { float: right; position: relative; }
header .header_inner .header_toContractor p { font-size: 13px; text-align: center; color: #fff; position: absolute; top: 40%; right: 15%; }
header .header_inner #nav_toggle { display: none; }
header nav { margin-top: 10px; width: 100%; background: #0B2D73; }
header nav .close { display: none; }
header nav ul.global_nav { max-width: 1240px; margin: 0 auto; padding: 6px 20px; display: flex; justify-content: space-between; }
header nav ul.global_nav li { float: left; font-weight: bold; font-size: 20px; }
header nav ul.global_nav li.current span, header nav ul.global_nav li.current a { border-bottom: solid 1px #fff; padding-bottom: 2px; }
header nav ul.global_nav li span, header nav ul.global_nav li a { text-decoration: none; color: #fff; }
header nav ul.global_nav li span:hover, header nav ul.global_nav li a:hover { opacity: .7; }
header nav ul.global_nav ul.gnav_submenu { display: none; }
header .member_type { width: 100%; border-bottom: 1px solid #000; }
header .member_type ul::after { content: ""; clear: both; display: block; }
header .member_type ul.memberType_navi { max-width: 1240px; margin: 0 auto; padding: 0 60px; }
header .member_type ul.memberType_navi li { float: left; font-weight: bold; font-size: 22px; width: 33.33%; padding: 10px 0; text-align: center; }
header .member_type ul.memberType_navi li span { cursor: pointer; }
header .member_type ul.memberType_navi li span::before { content: ''; width: 30px; height: 30px; display: inline-block; margin-right: .5em; vertical-align: middle; }
header .member_type ul.memberType_navi li span.icon_red::before { background-image: url("../img/icon_memberType_01.svg"); background-size: contain; }
header .member_type ul.memberType_navi li span.icon_purple::before { background-image: url("../img/icon_memberType_02.svg"); background-size: contain; }
header .member_type ul.memberType_navi li span.icon_green::before { background-image: url("../img/icon_memberType_03.svg"); background-size: contain; }
header .modal_box { position: fixed; z-index: 7777; display: none; width: 100%; margin: 0; padding: 20px 2vw 20px; background: #fff; box-sizing: border-box; box-shadow: 0px 4px 2px 0px rgba(0, 0, 0, 0.1); }
header .modal_box .inner { position: relative; }
header .modal_box .inner h2 { background: #8d93a0; color: #fff !important; font-size: 22px !important; font-weight: bold; padding: 7px 15px; }
header .modal_box .inner h2 a { color: #fff; }
header .modal_box .inner h2 a:before { content: "\f144"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0; font-weight: 900; font-size: 22px; vertical-align: middle; margin-right: 8px; color: #fff; }
header .modal_box .inner .flexbox { width: 100%; margin-top: 10px; }
header .modal_box .inner .flexbox .ttl { font-weight: bold; }
header .modal_box .inner .flexbox p.ttl { border-bottom: solid 1px #000; }
header .modal_box .inner .flexbox ul li { margin-top: 10px; }
header .modal_box .inner .flexbox ul li.ttl + .ttl { margin-top: 30px; }
header .modal_box .inner .flexbox ul.sub_category li { text-indent: -1.3em; padding-left: 1.3em; margin-left: 7px; }
header .modal_box .inner .flexbox ul.sub_category li a:before { content: "\f144"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0; font-weight: 900; font-size: 15px; vertical-align: middle; margin-right: 5px; }
header .modal_box .inner .flexbox ul.sub_category + li { margin-top: 30px; }
header .modal_box .inner .flexbox div.category ul.sub_category { float: left; }
header .modal_box .inner .close_btn { display: none; }
header .modal_close { position: absolute; top: 6px; right: 25px; display: block; width: 30px; font-size: 24px; color: #fff; text-align: center; cursor: pointer; }
header .modal_close i { line-height: 30px; vertical-align: bottom; }
header #memberType_manu_01 h2 { background: #EF7373; color: #fff; }
header #memberType_manu_01 h2:before { content: url("../img/icon_memberType_01.svg"); width: 31px; height: 31px; display: inline-block; vertical-align: middle; }
header #memberType_manu_02 h2 { background: #946ED5; color: #fff; }
header #memberType_manu_02 h2:before { content: url("../img/icon_memberType_02.svg"); width: 31px; height: 31px; display: inline-block; vertical-align: middle; }
header #memberType_manu_03 h2 { background: #A7CF00; color: #0B2D73 !important; }
header #memberType_manu_03 h2:before { content: url("../img/icon_memberType_03.svg"); width: 31px; height: 31px; display: inline-block; vertical-align: middle; }

.modal_bg { position: fixed; top: 0; left: 0; z-index: 6666; display: none; width: 100%; height: 120%; background-color: rgba(9, 11, 133, 0.2); }

main { background: repeat-x url(../img/bgimg.jpg); background-size: auto 300px; }

/* breadcrumbs
----------------------------- */
.breadcrumbs { width: 100%; margin: 0 auto 20px; padding-top: 20px; }
.breadcrumbs ul { max-width: 1240px; margin: 0 auto; padding-left: 20px; padding-right: 20px; display: flex; font-size: 13px; }
.breadcrumbs ul li { margin-right: 10px; font-size: 13px; float: left; }
.breadcrumbs ul li a { color: #868686; }
.breadcrumbs ul li:first-child a::before { content: "\f015"; font-family: "Font Awesome 5 Free"; color: #aaa; margin-right: 0; font-weight: 900; }
.breadcrumbs ul li + li::before { content: "\f054"; font-family: "Font Awesome 5 Free"; color: #aaa; margin-right: 0; font-weight: 900; margin-right: 10px; }

/* anchor
----------------------------- */
.anchor { max-width: 1240px; margin: 60px auto 0; padding-left: 20px; padding-right: 20px; }
.anchor ul { margin-left: -30px; }
.anchor ul::after { content: ""; clear: both; display: block; }
.anchor ul li { margin-left: 30px; float: left; }
.anchor ul li::before { content: "\f0d7"; font-family: "Font Awesome 5 Free"; color: #5978B7; margin-right: 0; font-weight: 900; font-size: 26px; margin-right: 5px; vertical-align: middle; }
.anchor + .wrap { margin-top: 20px !important; }

/* footer
----------------------------- */
footer { width: 100%; background: #0B2D73; }
footer .unit { padding-left: 5px; padding-right: 5px; }
footer .footer_inner { max-width: 1240px; margin: 0 auto; padding: 40px 20px; }
footer .footer_inner .flexbox { flex-wrap: wrap; }
footer .footer_inner ul::after { content: ""; clear: both; display: block; }
footer .footer_inner ul + ul { margin-top: 20px; }
footer .footer_inner ul li { font-size: 14px; margin-bottom: .8em; }
footer .footer_inner ul li.ttl a { color: #c7d8e8; }
footer .footer_inner ul ul { padding-left: 1em; }
footer .footer_inner ul ul li a { color: #fff; }
footer .footer_inner .copyright { text-align: center; color: #fff; font-size: 14px; }
footer a.external:after { content: "\f35d"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0.5em; font-weight: 900; font-size: 14px; }

/* Top
----------------------------- */
#top .hero_area { width: 100%; /* slider */ }
#top .hero_area .hero_img { margin: 0 auto; }
#top .hero_area .hero_img h1 { margin: 0 5px; text-align: center; position: relative; }
#top .hero_area .hero_img h1.top-l .sliderOnBox { top: 5%; left: 3%; }
#top .hero_area .hero_img h1.top-r .sliderOnBox { top: 5%; right: 3%; }
#top .hero_area .hero_img h1.btm-l .sliderOnBox { bottom: 5%; left: 3%; }
#top .hero_area .hero_img h1.btm-r .sliderOnBox { bottom: 5%; right: 3%; }
#top .hero_area .hero_img h1 .sliderOnBox { position: absolute; }
#top .hero_area .slick-slide { transition: all ease-in-out .3s; opacity: .2; }
#top .hero_area .slick-active { opacity: .5; }
#top .hero_area .slick-current { opacity: 1; }
#top .tab_btn { max-width: 930px; margin: 0 auto; }
#top .tab_btn ul::after { content: ""; clear: both; display: block; }
#top .tab_btn ul li { float: left; width: 33.333%; padding-left: 5px; padding-right: 5px; }
#top .tab_btn ul li.current { transition: .3s; }
#top .tab_btn ul li.current a { background: #0B2D73; color: #fff; }
#top .tab_btn ul li a { padding: 15px 0; display: block; text-align: center; color: #0B2D73; border: 1px solid #0B2D73; font-size: 22px; font-weight: bold; cursor: pointer; }
#top .tab_btn ul li a:hover { opacity: 1; }
#top .sp_btn { display: none; }
#top .tab_contents .grid ~ .grid { margin-top: 30px; }
#top .tab_contents.three-disp_enable .three-disp { display: block; }
#top .tab_contents.three-disp_enable .three-disp .grid { margin-left: -25px; margin-right: -25px; }
#top .tab_contents.three-disp_enable .three-disp .grid .unit { padding-left: 25px; padding-right: 25px; }
#top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail { margin: 15px -400% 0; padding: 30px 400%; }
#top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_02 .list, #top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_05 .list, #top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_08 .list { margin-left: -117%; }
#top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_03 .list, #top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_06 .list, #top .tab_contents.three-disp_enable .three-disp .grid .unit span .purpose_detail.purpose_09 .list { margin-left: -234%; }
#top .tab_contents.three-disp_enable .four-disp { display: none; }
#top .tab_contents.four-disp_enable .four-disp { display: block; }
#top .tab_contents.four-disp_enable .four-disp .grid { margin-left: -5px; margin-right: -5px; }
#top .tab_contents.four-disp_enable .four-disp .grid .unit { padding-left: 5px; padding-right: 5px; }
#top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail { margin: 15px -500% 0; padding: 30px 500%; }
#top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_02 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_06 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_10 .list { margin-left: -105%; }
#top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_03 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_07 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_11 .list { margin-left: -210%; }
#top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_04 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_08 .list, #top .tab_contents.four-disp_enable .four-disp .grid .unit span .purpose_detail.purpose_12 .list { margin-left: -315%; }
#top .tab_contents.four-disp_enable .three-disp { display: none; }
#top .tab_contents#purpose_area { margin-top: 20px; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items { position: relative; text-align: center; margin-bottom: 20px; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items:hover { opacity: .8; /*cursor: pointer;*/ }
#top .tab_contents#purpose_area .grid .unit span .purpose_items .inner_item { width: 80%; position: absolute; top: 80%; left: 50%; transform: translate(-50%, -80%); -webkit-transform: translate(-50%, -80%); }
#top .tab_contents#purpose_area .grid .unit span .purpose_items h3 { font-size: 18px; font-weight: bold; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul { display: inline-table; height: 40px; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li { display: table-cell; vertical-align: middle; padding-right: .5em; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li i { content: ''; width: 31px; height: 31px; display: inline-block; margin-right: 0; vertical-align: middle; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li i.icon_red { background-image: url("../img/icon_memberType_01.svg"); background-size: contain; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li i.icon_purple { background-image: url("../img/icon_memberType_02.svg"); background-size: contain; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li i.icon_green { background-image: url("../img/icon_memberType_03.svg"); background-size: contain; }
#top .tab_contents#purpose_area .grid .unit span .purpose_items ul li:last-of-type { padding-right: 0; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail { display: none; position: relative; background: #0B2D73; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail:before { content: ""; position: absolute; top: -30px; left: 50%; margin-left: -15px; border: 15px solid transparent; border-bottom: 15px solid #0B2D73; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list { width: 330%; padding-left: 20px; display: inline-flex; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list.l_side { justify-content: flex-start; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list.r_side { justify-content: flex-end; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list.c_side { justify-content: center; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul { list-style: disc; padding-left: 1.5em; color: #fff; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul ~ ul { margin-left: 40px; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li { margin-top: 15px; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li:first-of-type { margin-top: 0; }
#top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li a { color: #fff; }
#top .tab_contents#keyword_area { margin-top: 80px; }
#top .tab_contents#keyword_area .search { vertical-align: top; text-align: center; }
#top .tab_contents#keyword_area .search p { font-size: 20px; }
#top .tab_contents#keyword_area .search .search_form { margin-top: 40px; }
#top .tab_contents#keyword_area .search .search_form form input[type="text"] { font-size: 17px; padding: 0 10px; border: 2px solid #0B2D73; border-right: none; border-top-left-radius: 4px; border-bottom-left-radius: 4px; vertical-align: top; height: 45px; box-sizing: border-box; background: no-repeat right bottom url(http://www.google.com/cse/images/google_custom_search_smwide.gif); }
#top .tab_contents#keyword_area .search .search_form form button[type="submit"].loupe { background: #fff; border: 2px solid #0B2D73; border-left: none; border-top-right-radius: 4px; border-bottom-right-radius: 4px; height: 45px; margin-left: -0.5em; box-sizing: border-box; }
#top .tab_contents#keyword_area .search .search_form form button[type="submit"].loupe:before { content: "\f002"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0.5em; font-weight: 900; font-size: 28px; margin-right: 15px; vertical-align: middle; cursor: pointer; }
#top .tab_contents#keyword_area .search .search_form form button[type="submit"].btn { margin: 40px auto 0; padding: .5em 0; width: 18%; display: block; background: #0B2D73; border: none; border-radius: 4px; color: #fff; font-size: 15px; font-weight: bold; cursor: pointer; }
#top .tab_contents#keyword_area .search .search_form form button[type="submit"].btn:hover { opacity: .7; }
#top .tab_contents#kind_area { margin-top: 50px; }
#top .tab_contents#kind_area .kind_btn { width: 100%; }
#top .tab_contents#kind_area .kind_btn ul::after { content: ""; clear: both; display: block; }
#top .tab_contents#kind_area .kind_btn ul li { float: left; width: 25%; padding-left: 5px; padding-right: 5px; }
#top .tab_contents#kind_area .kind_btn ul li a { padding: 8px 0; display: block; text-align: center; color: #0B2D73; border: 1px solid #0B2D73; font-size: 17px; cursor: pointer; }
#top .tab_contents#kind_area .kind_btn ul li a:hover { background: #0B2D73; color: #fff; opacity: 1; transition: .3s; }
#top .tab_contents#kind_area .kind_btn + .grid { margin-top: 50px; }
#top .tab_contents#kind_area .grid ~ .grid { margin-top: 20px; }
#top .tab_contents#kind_area a .kind_items { display: table; width: 100%; padding: 15px; border: solid 1px #0B2D73; border-radius: 15px; height: 202px; }
#top .tab_contents#kind_area a .kind_items::after { content: ""; clear: both; display: block; }
#top .tab_contents#kind_area a .kind_items:hover { opacity: .7; }
#top .tab_contents#kind_area a .kind_items h3 { display: table-cell; vertical-align: middle; font-size: 26px; font-weight: bold; }
#top .tab_contents#kind_area a .kind_items img { display: table-cell; float: right; height: 100%; }
#top .news { background: #E5EAF1; padding: 60px 0; }
#top .news h3 { font-size: 22px; }
#top .news ul { margin-top: 25px; width: 100%; }
#top .news ul li { border-top: solid 1px #3B4043; padding: 1em 0; }
#top .news ul li span { width: 12%; display: inline-block; }
#top .news ul li span.info, #top .news ul li span.imp { width: 9%; color: #fff; text-align: center; padding: 5px 0; border-radius: 5px; }
#top .news ul li span.info { background: #0B2D73; }
#top .news ul li span.imp { background: #FF0202; }
#top .news ul li .newstitle { width: 74%; display: inline-block; margin-left: 2em; vertical-align: middle; }
#top .news ul li .newstitle a { text-decoration: underline; }
#top .news ul li .newstitle br { display: block; content: ""; margin: 5px 0; }
#top .news ul li:last-of-type { border-bottom: solid 1px #3B4043; }
#top .news .past_news { width: 35%; margin: 40px auto 0; text-align: center; background: #0B2D73; border: solid 1px #fff; border-radius: 4px; }
#top .news .past_news:hover { opacity: .7; }
#top .news .past_news a { display: block; padding: 15px 0; font-size: 18px; color: #fff; font-weight: bold; }
#top .news .past_news a:hover { opacity: 1; }
#top .event h3 { margin-bottom: 25px; font-size: 22px; text-align: center; }
#top .event .banner_area { background: #E5EAF1; margin-top: 40px; padding: 60px 0; }
#top .event .banner_area .w20 { width: 20%; }
#top main ~ footer { margin-top: 0; }

/* 2階層以下共通
----------------------------- */
#category h2, #detail h2, #contact h2, #news h2 { margin-bottom: 20px; font-size: 20px; font-weight: bold; color: #5978B7; }
#category h3, #detail h3, #contact h3, #news h3 { margin: 30px 0 20px; font-size: 19px; font-weight: bold; color: #5978B7; }
#category h4, #detail h4, #contact h4, #news h4 { margin: 30px 0 20px; font-size: 18px; font-weight: bold; color: #5978B7; }
#category .box, #detail .box, #contact .box, #news .box { padding: 5px; background: #5978B7; color: #fff; }
#category .border, #detail .border, #contact .border, #news .border { padding: 5px; border-bottom: solid 1px #5978B7; }
#category .border_red, #detail .border_red, #contact .border_red, #news .border_red { padding: 5px; border-bottom: solid 1px #c60013; }
#category .square:before, #detail .square:before, #contact .square:before, #news .square:before { content: "\25a0"; font-family: "Font Awesome 5 Free"; color: #5978B7; margin-right: 0; font-weight: 900; font-size: 23px; display: inline-block; vertical-align: middle; }
#category .faq, #category .faq_show, #detail .faq, #detail .faq_show, #contact .faq, #contact .faq_show, #news .faq, #news .faq_show { color: #000; padding: 10px 5px; border-bottom: solid 1px #000; }
#category .h2_fs, #detail .h2_fs, #contact .h2_fs, #news .h2_fs { font-size: 20px; }
#category .h3_fs, #detail .h3_fs, #contact .h3_fs, #news .h3_fs { font-size: 19px; }
#category .h4_fs, #detail .h4_fs, #contact .h4_fs, #news .h4_fs { font-size: 18px; }
#category .hero_area, #detail .hero_area, #contact .hero_area, #news .hero_area { width: 100%; }
#category .hero_area .hero_img, #detail .hero_area .hero_img, #contact .hero_area .hero_img, #news .hero_area .hero_img { max-width: 1240px; margin: 0 auto; padding-left: 20px; padding-right: 20px; position: relative; }
#category .hero_area .hero_img .hero_txt, #detail .hero_area .hero_img .hero_txt, #contact .hero_area .hero_img .hero_txt, #news .hero_area .hero_img .hero_txt { position: absolute; top: 50%; left: 50%; -ms-transform: translate(-560px, -50%); transform: translate(-560px, -50%); }
#category .hero_area .hero_img .hero_txt h1, #detail .hero_area .hero_img .hero_txt h1, #contact .hero_area .hero_img .hero_txt h1, #news .hero_area .hero_img .hero_txt h1 { font-size: 26px; color: #fff; font-weight: bold; display: inline-block; }
#category .hero_area .hero_img .hero_txt .icon, #detail .hero_area .hero_img .hero_txt .icon, #contact .hero_area .hero_img .hero_txt .icon, #news .hero_area .hero_img .hero_txt .icon { display: inline-block; }
#category .hero_area .hero_img .hero_txt .icon ul, #detail .hero_area .hero_img .hero_txt .icon ul, #contact .hero_area .hero_img .hero_txt .icon ul, #news .hero_area .hero_img .hero_txt .icon ul { display: inline-table; }
#category .hero_area .hero_img .hero_txt .icon ul li, #detail .hero_area .hero_img .hero_txt .icon ul li, #contact .hero_area .hero_img .hero_txt .icon ul li, #news .hero_area .hero_img .hero_txt .icon ul li { display: table-cell; vertical-align: middle; padding-left: 10px; }
#category .hero_area .hero_img .hero_txt .icon ul li i, #detail .hero_area .hero_img .hero_txt .icon ul li i, #contact .hero_area .hero_img .hero_txt .icon ul li i, #news .hero_area .hero_img .hero_txt .icon ul li i { content: ''; width: 28px; height: 28px; display: inline-block; vertical-align: middle; }
#category .hero_area .hero_img .hero_txt .icon ul li i.icon_red, #detail .hero_area .hero_img .hero_txt .icon ul li i.icon_red, #contact .hero_area .hero_img .hero_txt .icon ul li i.icon_red, #news .hero_area .hero_img .hero_txt .icon ul li i.icon_red { background-image: url("../img/icon_memberType_01.svg"); background-size: contain; }
#category .hero_area .hero_img .hero_txt .icon ul li i.icon_purple, #detail .hero_area .hero_img .hero_txt .icon ul li i.icon_purple, #contact .hero_area .hero_img .hero_txt .icon ul li i.icon_purple, #news .hero_area .hero_img .hero_txt .icon ul li i.icon_purple { background-image: url("../img/icon_memberType_02.svg"); background-size: contain; }
#category .hero_area .hero_img .hero_txt .icon ul li i.icon_green, #detail .hero_area .hero_img .hero_txt .icon ul li i.icon_green, #contact .hero_area .hero_img .hero_txt .icon ul li i.icon_green, #news .hero_area .hero_img .hero_txt .icon ul li i.icon_green { background-image: url("../img/icon_memberType_03.svg"); background-size: contain; }
#category .hero_area .hero_img .hero_txt p, #detail .hero_area .hero_img .hero_txt p, #contact .hero_area .hero_img .hero_txt p, #news .hero_area .hero_img .hero_txt p { font-weight: bold; letter-spacing: .1em; margin-top: 40px; }
#category .hero_area .hero_img.no_pic img, #detail .hero_area .hero_img.no_pic img, #contact .hero_area .hero_img.no_pic img, #news .hero_area .hero_img.no_pic img { display: none; }
#category .hero_area .hero_img.no_pic .hero_txt, #detail .hero_area .hero_img.no_pic .hero_txt, #contact .hero_area .hero_img.no_pic .hero_txt, #news .hero_area .hero_img.no_pic .hero_txt { position: static; transform: none; }
#category .hero_area .hero_img.no_pic .hero_txt h1, #detail .hero_area .hero_img.no_pic .hero_txt h1, #contact .hero_area .hero_img.no_pic .hero_txt h1, #news .hero_area .hero_img.no_pic .hero_txt h1 { color: #0B2D73; }
#category .contents_list .inner .grid, #detail .contents_list .inner .grid, #contact .contents_list .inner .grid, #news .contents_list .inner .grid { margin-left: -20px; margin-right: -20px; }
#category .contents_list .inner .unit, #detail .contents_list .inner .unit, #contact .contents_list .inner .unit, #news .contents_list .inner .unit { padding-left: 20px; padding-right: 20px; }
#category .contents_list .inner .unit h2, #detail .contents_list .inner .unit h2, #contact .contents_list .inner .unit h2, #news .contents_list .inner .unit h2 { background: #5978B7; padding: 5px; font-size: 20px; font-weight: bold; color: #fff; }
#category .contents_list .inner .unit .category_item, #detail .contents_list .inner .unit .category_item, #contact .contents_list .inner .unit .category_item, #news .contents_list .inner .unit .category_item { display: flex; width: 100%; margin-top: 30px; padding-left: 10px; padding-right: 10px; }
#category .contents_list .inner .unit .category_item p.trim-image-to-circle, #detail .contents_list .inner .unit .category_item p.trim-image-to-circle, #contact .contents_list .inner .unit .category_item p.trim-image-to-circle, #news .contents_list .inner .unit .category_item p.trim-image-to-circle { vertical-align: top; width: 115px; height: 115px; border-radius: 50%; }
#category .contents_list .inner .unit .category_item p.trim-image-to-circle.center, #detail .contents_list .inner .unit .category_item p.trim-image-to-circle.center, #contact .contents_list .inner .unit .category_item p.trim-image-to-circle.center, #news .contents_list .inner .unit .category_item p.trim-image-to-circle.center { background-position: center center; }
#category .contents_list .inner .unit .category_item p.trim-image-to-circle.right, #detail .contents_list .inner .unit .category_item p.trim-image-to-circle.right, #contact .contents_list .inner .unit .category_item p.trim-image-to-circle.right, #news .contents_list .inner .unit .category_item p.trim-image-to-circle.right { background-position: right center; }
#category .contents_list .inner .unit .category_item p.trim-image-to-circle.left, #detail .contents_list .inner .unit .category_item p.trim-image-to-circle.left, #contact .contents_list .inner .unit .category_item p.trim-image-to-circle.left, #news .contents_list .inner .unit .category_item p.trim-image-to-circle.left { background-position: left center; }
#category .contents_list .inner .unit .category_item .item_l, #detail .contents_list .inner .unit .category_item .item_l, #contact .contents_list .inner .unit .category_item .item_l, #news .contents_list .inner .unit .category_item .item_l { width: auto; }
#category .contents_list .inner .unit .category_item .item_l ~ .item_r, #detail .contents_list .inner .unit .category_item .item_l ~ .item_r, #contact .contents_list .inner .unit .category_item .item_l ~ .item_r, #news .contents_list .inner .unit .category_item .item_l ~ .item_r { padding-left: 30px; vertical-align: top; }
#category .contents_list .inner .unit .category_item .item_r, #detail .contents_list .inner .unit .category_item .item_r, #contact .contents_list .inner .unit .category_item .item_r, #news .contents_list .inner .unit .category_item .item_r { width: 100%; height: 115px; }
#category .contents_list .inner .unit .category_item .item_r ul.circle, #detail .contents_list .inner .unit .category_item .item_r ul.circle, #contact .contents_list .inner .unit .category_item .item_r ul.circle, #news .contents_list .inner .unit .category_item .item_r ul.circle { margin-top: 20px; list-style: disc; padding-left: 1.5em; }
#category .contents_list .inner .unit .category_item .item_r ul.circle li, #detail .contents_list .inner .unit .category_item .item_r ul.circle li, #contact .contents_list .inner .unit .category_item .item_r ul.circle li, #news .contents_list .inner .unit .category_item .item_r ul.circle li { margin-bottom: 10px; }
#category .contents_list .inner .unit .category_item .item_r ul.circle li:last-of-type, #detail .contents_list .inner .unit .category_item .item_r ul.circle li:last-of-type, #contact .contents_list .inner .unit .category_item .item_r ul.circle li:last-of-type, #news .contents_list .inner .unit .category_item .item_r ul.circle li:last-of-type { margin-bottom: 0; }
#category .contents_list .inner .unit .more, #detail .contents_list .inner .unit .more, #contact .contents_list .inner .unit .more, #news .contents_list .inner .unit .more { text-align: right; margin-bottom: 40px; }
#category .contents_list .inner .unit .more a, #detail .contents_list .inner .unit .more a, #contact .contents_list .inner .unit .more a, #news .contents_list .inner .unit .more a { border: 1px solid #0B2D73; display: inline-block; padding: .4em 1em; border-radius: 2px; }
#category .contents_list .inner .unit .more a:hover, #detail .contents_list .inner .unit .more a:hover, #contact .contents_list .inner .unit .more a:hover, #news .contents_list .inner .unit .more a:hover { background: #0B2D73; color: #fff; opacity: 1; transition: .3s; }
#category .contents_list .inner .unit figure .enlarge, #detail .contents_list .inner .unit figure .enlarge, #contact .contents_list .inner .unit figure .enlarge, #news .contents_list .inner .unit figure .enlarge { overflow: hidden; }
#category .contents_list .inner .unit figure .enlarge img, #detail .contents_list .inner .unit figure .enlarge img, #contact .contents_list .inner .unit figure .enlarge img, #news .contents_list .inner .unit figure .enlarge img { display: block; transition: 0.5s; }
#category .contents_list .inner .unit figure .enlarge img:hover, #detail .contents_list .inner .unit figure .enlarge img:hover, #contact .contents_list .inner .unit figure .enlarge img:hover, #news .contents_list .inner .unit figure .enlarge img:hover { transform: scale(1.1, 1.1); }
#category .contents_list .inner .unit figure .lineTtl, #detail .contents_list .inner .unit figure .lineTtl, #contact .contents_list .inner .unit figure .lineTtl, #news .contents_list .inner .unit figure .lineTtl { position: relative; background: #5978B7; padding: 1em .6em; color: #fff; font-size: 110%; font-weight: bold; }
#category .contents_list .inner .unit figure .lineTtl::after, #detail .contents_list .inner .unit figure .lineTtl::after, #contact .contents_list .inner .unit figure .lineTtl::after, #news .contents_list .inner .unit figure .lineTtl::after { content: "\f105"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; font-size: 26px; position: absolute; right: 15px; top: 11px; }
#category .contents_list .inner .unit figure .lineTtl:hover, #detail .contents_list .inner .unit figure .lineTtl:hover, #contact .contents_list .inner .unit figure .lineTtl:hover, #news .contents_list .inner .unit figure .lineTtl:hover { opacity: .9; }
#category .tbl_scroll, #detail .tbl_scroll, #contact .tbl_scroll, #news .tbl_scroll { width: 100%; max-width: 980px; position: relative; }
#category .hand, #detail .hand, #contact .hand, #news .hand { background: #333; opacity: .8; position: absolute; top: 60%; left: 50%; transform: translate(-50%, -60%); padding: 30px; border-radius: 10px; color: #fff; font-size: 8px; z-index: 150; }
#category .hand img, #detail .hand img, #contact .hand img, #news .hand img { width: 127px; height: 150px; }
#category table, #detail table, #contact table, #news table { width: 100%; border-top: solid 1px; border-bottom: solid 1px; }
#category table.th_left th, #detail table.th_left th, #contact table.th_left th, #news table.th_left th { text-align: left; }
#category table.td_center td, #detail table.td_center td, #contact table.td_center td, #news table.td_center td { text-align: center; }
#category table.td_right td, #detail table.td_right td, #contact table.td_right td, #news table.td_right td { text-align: right; }
#category table tr, #detail table tr, #contact table tr, #news table tr { border-bottom: solid 1px; }
#category table tr:last-of-type, #detail table tr:last-of-type, #contact table tr:last-of-type, #news table tr:last-of-type { border-bottom: none; }
#category table th, #detail table th, #contact table th, #news table th { padding-top: .8em; padding-right: .4em; padding-bottom: .8em; padding-left: .4em; vertical-align: middle; background: #F0F6F6; font-weight: bold; word-break: break-word; }
#category table td, #detail table td, #contact table td, #news table td { padding-top: .8em; padding-right: .4em; padding-bottom: .8em; padding-left: .4em; vertical-align: middle; }
#category table td.text_c, #detail table td.text_c, #contact table td.text_c, #news table td.text_c { text-align: center; }
#category table td.text_r, #detail table td.text_r, #contact table td.text_r, #news table td.text_r { text-align: right; }
#category table.type01 tr:nth-of-type(odd), #detail table.type01 tr:nth-of-type(odd), #contact table.type01 tr:nth-of-type(odd), #news table.type01 tr:nth-of-type(odd) { background: #F0F6F6; }
#category table.type02 th, #detail table.type02 th, #contact table.type02 th, #news table.type02 th { width: 35%; }
#category table.type02 td, #detail table.type02 td, #contact table.type02 td, #news table.type02 td { width: 65%; }
#category table.sheet tr:nth-of-type(odd), #detail table.sheet tr:nth-of-type(odd), #contact table.sheet tr:nth-of-type(odd), #news table.sheet tr:nth-of-type(odd) { background: #F0F6F6; }
#category table.sheet tr:last-of-type, #detail table.sheet tr:last-of-type, #contact table.sheet tr:last-of-type, #news table.sheet tr:last-of-type { border-bottom: solid 1px; }
#category table.type_quiz th, #detail table.type_quiz th, #contact table.type_quiz th, #news table.type_quiz th { width: 25%; background: #0B2D73; color: #fff; border-bottom: solid 1px #fff; }
#category table.type_quiz th.last, #detail table.type_quiz th.last, #contact table.type_quiz th.last, #news table.type_quiz th.last { border-bottom: solid 1px #000; }
#category table.type_quiz td, #detail table.type_quiz td, #contact table.type_quiz td, #news table.type_quiz td { width: 75%; }
#category .wrap .rightNavi, #detail .wrap .rightNavi, #contact .wrap .rightNavi, #news .wrap .rightNavi { width: 25%; padding-left: 10px; padding-right: 10px; position: absolute; top: 0; right: 0; }
#category .wrap .rightNavi p.title, #detail .wrap .rightNavi p.title, #contact .wrap .rightNavi p.title, #news .wrap .rightNavi p.title { padding: 15px 15px; background: #7689b0; color: #fff; font-weight: bold; font-size: 110%; }
#category .wrap .rightNavi .naviBox, #detail .wrap .rightNavi .naviBox, #contact .wrap .rightNavi .naviBox, #news .wrap .rightNavi .naviBox { background: #e6e9f0; padding: 25px 20px; }
#category .wrap .rightNavi .naviBox ul li, #detail .wrap .rightNavi .naviBox ul li, #contact .wrap .rightNavi .naviBox ul li, #news .wrap .rightNavi .naviBox ul li { padding: 8px; padding-left: .8em; text-indent: -.8em; line-height: 1.2em; }
#category .wrap .rightNavi .naviBox ul li a, #detail .wrap .rightNavi .naviBox ul li a, #contact .wrap .rightNavi .naviBox ul li a, #news .wrap .rightNavi .naviBox ul li a { color: #0B2D73; }
#category .wrap .rightNavi .naviBox ul li a:before, #detail .wrap .rightNavi .naviBox ul li a:before, #contact .wrap .rightNavi .naviBox ul li a:before, #news .wrap .rightNavi .naviBox ul li a:before { content: "\f105"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0.5em; font-weight: 900; font-size: 18px; margin-right: .2em; vertical-align: middle; }
#category .wrap .rightNavi .naviBox ul li.active, #detail .wrap .rightNavi .naviBox ul li.active, #contact .wrap .rightNavi .naviBox ul li.active, #news .wrap .rightNavi .naviBox ul li.active { margin-left: -.5em; margin-right: -.5em; padding-left: 1.3em; text-indent: -.8em; background: #7689b0; }
#category .wrap .rightNavi .naviBox ul li.active a, #detail .wrap .rightNavi .naviBox ul li.active a, #contact .wrap .rightNavi .naviBox ul li.active a, #news .wrap .rightNavi .naviBox ul li.active a { color: #fff; }
#category .wrap .rightNavi .naviBox ul li.active a:before, #detail .wrap .rightNavi .naviBox ul li.active a:before, #contact .wrap .rightNavi .naviBox ul li.active a:before, #news .wrap .rightNavi .naviBox ul li.active a:before { content: "\f105"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0.5em; font-weight: 900; margin-right: .2em; }
#category .wrap .rightNavi .naviBox ul li + ul li, #detail .wrap .rightNavi .naviBox ul li + ul li, #contact .wrap .rightNavi .naviBox ul li + ul li, #news .wrap .rightNavi .naviBox ul li + ul li { margin-left: 1em; }

/* カテゴリトップ
----------------------------- */
#category .contents_list .enlarge { margin-right: 6px; margin-left: 6px; }
#category .contents_list .lineTtl { margin-right: 6px; margin-left: 6px; }

/* 汎用詳細（3階層）
----------------------------- */
#detail .hero_area .hero_img .hero_txt h1, #news .hero_area .hero_img .hero_txt h1 { color: #0B2D73; }
#detail .wrap, #news .wrap { width: 100%; margin: 60px auto 0; }
#detail .wrap .grid, #news .wrap .grid { position: relative; }
#detail .wrap section.banner_area .col-6 > .flexbox .unit, #news .wrap section.banner_area .col-6 > .flexbox .unit { padding-left: 5px; padding-right: 5px; }
#detail .wrap section .faq_wrap h2.faq, #news .wrap section .faq_wrap h2.faq { position: relative; padding-right: 2em; font-weight: normal; cursor: pointer; }
#detail .wrap section .faq_wrap h2.faq:hover, #news .wrap section .faq_wrap h2.faq:hover { opacity: .7; }
#detail .wrap section .faq_wrap h2.faq:after, #news .wrap section .faq_wrap h2.faq:after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #000; margin-right: 0; font-weight: 900; font-size: 20px; position: absolute; top: 50%; margin-top: -12px; right: 10px; }
#detail .wrap section .faq_wrap h2.faq.open:after, #news .wrap section .faq_wrap h2.faq.open:after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #000; margin-right: 0; font-weight: 900; }
#detail .wrap section .faq_wrap h2.faq_show, #news .wrap section .faq_wrap h2.faq_show { position: relative; padding-right: 2em; font-weight: normal; cursor: pointer; }
#detail .wrap section .faq_wrap h2.faq_show:hover, #news .wrap section .faq_wrap h2.faq_show:hover { opacity: .7; }
#detail .wrap section .faq_wrap h2.faq_show:after, #news .wrap section .faq_wrap h2.faq_show:after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #000; margin-right: 0; font-weight: 900; font-size: 20px; position: absolute; top: 50%; margin-top: -12px; right: 10px; }
#detail .wrap section .faq_wrap h2.faq_show ~ .answer, #news .wrap section .faq_wrap h2.faq_show ~ .answer { display: block; }
#detail .wrap section .faq_wrap h2.faq_show.open:after, #news .wrap section .faq_wrap h2.faq_show.open:after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #000; margin-right: 0; font-weight: 900; }
#detail .wrap section .faq_wrap .answer, #news .wrap section .faq_wrap .answer { display: none; }
#detail .wrap section .faq_wrap .answer p, #news .wrap section .faq_wrap .answer p { margin-top: 0; }
#detail .wrap section .faq_wrap ~ .faq_wrap, #news .wrap section .faq_wrap ~ .faq_wrap { margin-top: 30px; }
#detail .wrap section .book_wrap, #news .wrap section .book_wrap { margin-bottom: 20px; border-top: 2px solid #eee; border-bottom: 2px solid #eee; }
#detail .wrap section .book_wrap h2, #news .wrap section .book_wrap h2 { padding: 10px 5px; border-bottom: 1px solid #eee; color: #3b4043; }
#detail .wrap section .book_wrap .floatL, #news .wrap section .book_wrap .floatL { width: 30%; }
#detail .wrap .contents, #news .wrap .contents { width: 75%; padding-left: 10px; padding-right: 10px; font-size: 16px; }
#detail .wrap .contents .inner, #news .wrap .contents .inner { width: 100%; padding-left: 0; padding-right: 0; }
#detail .wrap .contents .inner p, #news .wrap .contents .inner p { margin-top: 10px; line-height: 1.8em; }
#detail .wrap .contents .inner p.lead, #news .wrap .contents .inner p.lead { font-size: 18px; }
#detail .wrap .contents .inner ol.numberList, #news .wrap .contents .inner ol.numberList { margin-top: 20px; }
#detail .wrap .contents .inner ol.numberList li, #news .wrap .contents .inner ol.numberList li { margin-bottom: 10px; line-height: 1.78em; }
#detail .wrap .contents .inner ol.numberList li span, #news .wrap .contents .inner ol.numberList li span { padding: 0 .3em; }
#detail .wrap .contents .inner ol.numberList li:last-of-type, #news .wrap .contents .inner ol.numberList li:last-of-type { margin-bottom: 0; }
#detail .wrap .contents .inner .floatBox, #news .wrap .contents .inner .floatBox { margin-top: 20px; }
#detail .wrap .contents .inner .floatBox::after, #news .wrap .contents .inner .floatBox::after { content: ""; clear: both; display: block; }

/* ニュース一覧
----------------------------- */
#news .news { padding: 60px 0; }
#news .news h3 { font-size: 22px; }
#news .news ul { margin-top: 25px; width: 100%; }
#news .news ul li { border-top: solid 1px #3B4043; padding: 1em 0; }
#news .news ul li span { width: 12%; display: inline-block; }
#news .news ul li span.info, #news .news ul li span.imp { width: 9%; color: #fff; text-align: center; padding: 5px 0; border-radius: 5px; }
#news .news ul li span.info { background: #0B2D73; }
#news .news ul li span.imp { background: #FF0202; }
#news .news ul li .newstitle { width: 74%; display: inline-block; margin-left: 2em; vertical-align: middle; }
#news .news ul li .newstitle a { text-decoration: underline; }
#news .news ul li .newstitle br { display: block; content: ""; margin: 5px 0; }
#news .news ul li:last-of-type { border-bottom: solid 1px #3B4043; }
#news .news .past_news { width: 35%; margin: 40px auto 0; text-align: center; background: #0B2D73; border: solid 1px #fff; border-radius: 4px; }
#news .news .past_news:hover { opacity: .7; }
#news .news .past_news a { display: block; padding: 15px 0; font-size: 18px; color: #fff; font-weight: bold; }
#news .news .past_news a:hover { opacity: 1; }

/* ご意見・お問い合わせフォーム
----------------------------- */
#contact section { padding-left: 10px; padding-right: 10px; }
#contact p { line-height: 1.8em; }
#contact input, #contact textarea { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }
#contact input[type="number"]::-webkit-inner-spin-button, #contact input[type="number"]::-webkit-outer-spin-button { -webkit-appearance: none !important; margin: 0 !important; -moz-appearance: textfield !important; }
#contact .wrap { width: 100%; margin: 60px auto 0; }
#contact .wrap form.form { margin-top: 20px; }
#contact .wrap form.form .form_group { border-bottom: 1px solid #0B2D73; padding: 15px 0; margin: 0 auto; }
#contact .wrap form.form .form_group:first-of-type { border-top: 1px solid #0B2D73; }
#contact .wrap form.form .form_group .unit { position: relative; padding-left: 0; padding-right: 0; }
#contact .wrap form.form .form_group .unit .form_label { position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
#contact .wrap form.form .form_group .unit .form_label .red { margin-left: .3em; display: inline-block; }
#contact .wrap form.form .form_group .unit .form_input { background-color: #fff; border: 1px solid #0B2D73; border-radius: 2px; width: 100%; min-height: 40px; padding: 5px 10px; box-sizing: border-box; }
#contact .wrap form.form .form_group .unit .form_input.name_box { width: 35%; }
#contact .wrap form.form .form_group .unit .form_input.name_box:first-of-type { margin-right: 20px; }
#contact .wrap form.form .form_group .unit .form_input.num_box { width: 100px; }
#contact .wrap form.form .form_group .unit .form_input.quiz_box, #contact .wrap form.form .form_group .unit .form_input.age_box { width: 5em; }
#contact .wrap form.form .form_group .unit .form_input.middle_box { width: 60%; }
#contact .wrap form.form .form_group .unit .form_input.errors ~ span { display: block; }
#contact .wrap form.form .form_group .unit .form_radio { margin-right: 30px; }
#contact .wrap form.form .form_group .unit .form_radio input[type="radio"] { box-sizing: border-box; padding: 0; vertical-align: baseline; }
#contact .wrap form.form .form_group .unit .form_radio:last-of-type { margin-right: 0; }
#contact .wrap form.form .form_group .unit .address_box { width: 100%; }
#contact .wrap form.form .form_group .unit .address_box input { width: 75%; }
#contact .wrap form.form .form_group .unit .address_box + .address_box { margin-top: 20px; }
#contact .wrap form.form .form_group .unit .form_select { width: 125px; padding: 10px; margin-right: 5px; vertical-align: baseline; }
#contact .wrap form.form .form_group .unit .form_textarea { background-color: #fff; border: 1px solid #0B2D73; border-radius: 2px; width: 100%; min-height: 40px; padding: 5px 10px; box-sizing: border-box; }
#contact .wrap form.form .form_group .unit .form_textarea.errors + span { display: block; }
#contact .wrap form.form .form_group .unit .errors { border: 1px solid red; }
#contact .wrap form.form .form_group .unit span { display: none; color: #e22838; padding-top: 10px; line-height: 1.8em; }
#contact .wrap form.form .form_notes { border-top: 4px double #0B2D73; padding: 1.5em 2em; margin: 5vw 0; }
#contact .wrap form.form .form_btn { text-align: center; margin-top: 5vw; }
#contact .wrap form.form .form_btn button { background: #0B2D73; color: #fff; width: 35%; padding: 10px 0; border: solid 1px #0B2D73; border-radius: 2px; font-size: 17px; }
#contact .wrap form.form .form_btn button:hover { background: #fff; color: #0B2D73; opacity: 1; transition: .3s; cursor: pointer; }
#contact .wrap form.form .form_btn button ~ button { margin-left: 20px; }
#contact button, #contact input, #contact select, #contact textarea { font-family: inherit; font-size: 100%; }
#contact .wrap form.form .form_group .unit .response { display: inline-block; }

@media (max-width: 1200px) { #top .hero_area .hero_img h1 { margin: 0; }
  #top .hero_area .hero_img h1 img { width: 100%; }
  #top .tab_contents#kind_area .kind_btn ul li a { font-size: 1.7vw; }
  #category .hero_area .hero_img .hero_txt, #detail .hero_area .hero_img .hero_txt, #contact .hero_area .hero_img .hero_txt { left: 0; padding: 0 60px; -ms-transform: translate(0, -50%); transform: translate(0, -50%); }
  #category .hero_area .hero_img.no_pic .hero_txt, #detail .hero_area .hero_img.no_pic .hero_txt, #contact .hero_area .hero_img.no_pic .hero_txt { padding: 0; } }
@media (min-width: 1256px) { /* top ----------------------------- */
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list { width: 1200px; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul ~ ul { margin-left: 80px; } }
@media (max-width: 1256px) {     /* 2階層以下共通
----------------------------- */
  #category .tbl_scroll, #detail .tbl_scroll, #contact .tbl_scroll { overflow-x: auto; }
  #category table.type01, #detail table.type01, #contact table.type01 { width: 980px; display: table; }
  #category table.fixheader, #category table.fixheader_2, #category table.fixheader_3, #category table.fixheader_4, #category table.fixheader_5, #detail table.fixheader, #detail table.fixheader_2, #detail table.fixheader_3, #detail table.fixheader_4, #detail table.fixheader_5, #contact table.fixheader, #contact table.fixheader_2, #contact table.fixheader_3, #contact table.fixheader_4, #contact table.fixheader_5 { display: none !important; }
  #category table.sheet, #category table.sheet_2, #category table.sheet_3, #category table.sheet_4, #category table.sheet_5, #detail table.sheet, #detail table.sheet_2, #detail table.sheet_3, #detail table.sheet_4, #detail table.sheet_5, #contact table.sheet, #contact table.sheet_2, #contact table.sheet_3, #contact table.sheet_4, #contact table.sheet_5 { display: block; min-width: 980px; -webkit-overflow-scrolling: touch; }
  #category table.sheet tbody, #category table.sheet_2 tbody, #category table.sheet_3 tbody, #category table.sheet_4 tbody, #category table.sheet_5 tbody, #detail table.sheet tbody, #detail table.sheet_2 tbody, #detail table.sheet_3 tbody, #detail table.sheet_4 tbody, #detail table.sheet_5 tbody, #contact table.sheet tbody, #contact table.sheet_2 tbody, #contact table.sheet_3 tbody, #contact table.sheet_4 tbody, #contact table.sheet_5 tbody { display: block; overflow-y: scroll; overflow-x: hidden; height: calc(100vh/2.5); }
  #category table.tblCol_5 th[colspan*="2"], #detail table.tblCol_5 th[colspan*="2"], #contact table.tblCol_5 th[colspan*="2"] { min-width: calc(calc(980px / 5) * 2); }
  #category table.tblCol_5 th[colspan*="3"], #detail table.tblCol_5 th[colspan*="3"], #contact table.tblCol_5 th[colspan*="3"] { min-width: calc(calc(980px / 5) * 3); }
  #category table.tblCol_5 th, #category table.tblCol_5 td, #detail table.tblCol_5 th, #detail table.tblCol_5 td, #contact table.tblCol_5 th, #contact table.tblCol_5 td { min-width: calc(980px / 5); }
  #category table.tblCol_6 th[colspan*="2"], #detail table.tblCol_6 th[colspan*="2"], #contact table.tblCol_6 th[colspan*="2"] { min-width: calc(calc(980px / 6) * 2); }
  #category table.tblCol_6 th[colspan*="3"], #detail table.tblCol_6 th[colspan*="3"], #contact table.tblCol_6 th[colspan*="3"] { min-width: calc(calc(980px / 6) * 3); }
  #category table.tblCol_6 th, #category table.tblCol_6 td, #detail table.tblCol_6 th, #detail table.tblCol_6 td, #contact table.tblCol_6 th, #contact table.tblCol_6 td { min-width: calc(980px / 6); }
  #category table.tblCol_7 th[colspan*="2"], #detail table.tblCol_7 th[colspan*="2"], #contact table.tblCol_7 th[colspan*="2"] { min-width: calc(calc(980px / 7) * 2); }
  #category table.tblCol_7 th[colspan*="3"], #detail table.tblCol_7 th[colspan*="3"], #contact table.tblCol_7 th[colspan*="3"] { min-width: calc(calc(980px / 7) * 3); }
  #category table.tblCol_7 th, #category table.tblCol_7 td, #detail table.tblCol_7 th, #detail table.tblCol_7 td, #contact table.tblCol_7 th, #contact table.tblCol_7 td { min-width: calc(980px / 7); }
  #category table.tblCol_8 th[colspan*="2"], #detail table.tblCol_8 th[colspan*="2"], #contact table.tblCol_8 th[colspan*="2"] { min-width: calc(calc(980px / 8) * 2); }
  #category table.tblCol_8 th[colspan*="3"], #detail table.tblCol_8 th[colspan*="3"], #contact table.tblCol_8 th[colspan*="3"] { min-width: calc(calc(980px / 8) * 3); }
  #category table.tblCol_8 th, #category table.tblCol_8 td, #detail table.tblCol_8 th, #detail table.tblCol_8 td, #contact table.tblCol_8 th, #contact table.tblCol_8 td { min-width: calc(980px / 8); }
  #category table.tblCol_9 th[colspan*="2"], #detail table.tblCol_9 th[colspan*="2"], #contact table.tblCol_9 th[colspan*="2"] { min-width: calc(calc(980px / 9) * 2); }
  #category table.tblCol_9 th[colspan*="3"], #detail table.tblCol_9 th[colspan*="3"], #contact table.tblCol_9 th[colspan*="3"] { min-width: calc(calc(980px / 9) * 3); }
  #category table.tblCol_9 th, #category table.tblCol_9 td, #detail table.tblCol_9 th, #detail table.tblCol_9 td, #contact table.tblCol_9 th, #contact table.tblCol_9 td { min-width: calc(980px / 9); }
  #category table.tblCol_10 th[colspan*="2"], #detail table.tblCol_10 th[colspan*="2"], #contact table.tblCol_10 th[colspan*="2"] { min-width: calc(calc(980px / 10) * 2); }
  #category table.tblCol_10 th[colspan*="3"], #detail table.tblCol_10 th[colspan*="3"], #contact table.tblCol_10 th[colspan*="3"] { min-width: calc(calc(980px / 10) * 3); }
  #category table.tblCol_10 th, #category table.tblCol_10 td, #detail table.tblCol_10 th, #detail table.tblCol_10 td, #contact table.tblCol_10 th, #contact table.tblCol_10 td { min-width: calc(980px / 10); }
  #category table.tblCol_11 th[colspan*="2"], #detail table.tblCol_11 th[colspan*="2"], #contact table.tblCol_11 th[colspan*="2"] { min-width: calc(calc(980px / 11) * 2); }
  #category table.tblCol_11 th[colspan*="3"], #detail table.tblCol_11 th[colspan*="3"], #contact table.tblCol_11 th[colspan*="3"] { min-width: calc(calc(980px / 11) * 3); }
  #category table.tblCol_11 th, #category table.tblCol_11 td, #detail table.tblCol_11 th, #detail table.tblCol_11 td, #contact table.tblCol_11 th, #contact table.tblCol_11 td { min-width: calc(980px / 11); }
  #category table.tblCol_12 th[colspan*="2"], #detail table.tblCol_12 th[colspan*="2"], #contact table.tblCol_12 th[colspan*="2"] { min-width: calc(calc(980px / 12) * 2); }
  #category table.tblCol_12 th[colspan*="3"], #detail table.tblCol_12 th[colspan*="3"], #contact table.tblCol_12 th[colspan*="3"] { min-width: calc(calc(980px / 12) * 3); }
  #category table.tblCol_12 th[colspan*="5"], #detail table.tblCol_12 th[colspan*="5"], #contact table.tblCol_12 th[colspan*="5"] { min-width: calc(calc(980px / 12) * 5); }
  #category table.tblCol_12 th, #category table.tblCol_12 td, #detail table.tblCol_12 th, #detail table.tblCol_12 td, #contact table.tblCol_12 th, #contact table.tblCol_12 td { min-width: calc(980px / 12); }
  #category table.tblCol_13 th[colspan*="2"], #detail table.tblCol_13 th[colspan*="2"], #contact table.tblCol_13 th[colspan*="2"] { min-width: calc(calc(980px / 13) * 2); }
  #category table.tblCol_13 th[colspan*="3"], #detail table.tblCol_13 th[colspan*="3"], #contact table.tblCol_13 th[colspan*="3"] { min-width: calc(calc(980px / 13) * 3); }
  #category table.tblCol_13 th[colspan*="5"], #detail table.tblCol_13 th[colspan*="5"], #contact table.tblCol_13 th[colspan*="5"] { min-width: calc(calc(980px / 13) * 5); }
  #category table.tblCol_13 th, #category table.tblCol_13 td, #detail table.tblCol_13 th, #detail table.tblCol_13 td, #contact table.tblCol_13 th, #contact table.tblCol_13 td { min-width: calc(980px / 13); }
    /* ご意見・お問い合わせフォーム
----------------------------- */
  #contact .wrap form.form .form_group .unit .form_select { width: 125px; margin-bottom: 20px; }
  #contact .wrap form.form .form_group .unit .address_box input { width: 100%; }
  #contact .wrap form.form .form_group .unit .response { display: block; margin-top: 20px; } }
@media (max-width: 1017px) { #category .wrap .rightNavi, #detail .wrap .rightNavi, #contact .wrap .rightNavi, #news .wrap .rightNavi { width: 100% !important; margin-top: 20px; padding-left: 0; padding-right: 0; position: static !important; }
  #category .wrap .contents, #detail .wrap .contents, #contact .wrap .contents, #news .wrap .contents { width: 100%; padding-left: 0; padding-right: 0; } }
@media (min-width: 992px) { nav { display: block !important; } }
@media (max-width: 991px) {
  header { padding-top: 30px; }
  header .header_inner { padding-left: 10px; padding-right: 10px; }
  header .header_inner .header_logo { float: none; text-align: center; }
  header .header_inner .header_logo img { max-width: 55%; }
  header .header_inner .header_utility { display: none; }
  header .header_inner #nav_toggle { display: block; width: 40px; height: 40px; padding: 5px; position: absolute; z-index: 4; top: 30px; right: 15px; cursor: pointer; }
  header .header_inner #nav_toggle div { position: relative; }
  header .header_inner #nav_toggle span { display: block; height: 3px; background: #0B2D73; position: absolute; width: 100%; -webkit-transition: 0.5s ease-in-out; -moz-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; }
  header .header_inner #nav_toggle span:nth-child(1) { top: 0px; left: 0; }
  header .header_inner #nav_toggle span:nth-child(2) { top: 10px; left: 0; }
  header .header_inner #nav_toggle span:nth-child(3) { top: 20px; right: 12px; width: 60%; }
  header nav { display: none; position: absolute; margin-top: 0; top: 0; width: 100%; background: #fff; left: 0; z-index: 9999; }
  header nav ul.global_nav { display: block; margin: 0 auto; width: 100%; padding: 0 20px; }
  header nav ul.global_nav li { width: 100% !important; margin: 0 auto; float: none; text-align: left; font-size: 15px; padding: 0; border-top: 1px solid #000; }
  header nav ul.global_nav li.current a { border-bottom: none; padding-bottom: 14px; font-weight: bold; }
  header nav ul.global_nav li a { display: block; padding: 14px; color: #3B4043; font-weight: normal; }
  header nav ul.global_nav li:first-of-type { border-top: none; }
  header nav ul.global_nav li:last-of-type { float: none; }
  header nav ul.global_nav .submenu_link { position: relative; }
  header nav ul.global_nav .submenu_link a { display: block; }
  header nav ul.global_nav .submenu_link a::after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #3B4043; margin-right: 0; font-weight: 900; font-size: 20px; position: absolute; top: 10px; right: 15px; vertical-align: middle; }
  header nav ul.global_nav .on:first-of-type { border-bottom: none; }
  header nav ul.global_nav .on a::after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #3B4043; margin-right: 0; font-weight: 900; }
  header nav ul.global_nav .gnav_submenu { padding-left: 1em; }
  header nav ul.global_nav .gnav_submenu .submenu_item { border-top: none; }
  header nav ul.global_nav .gnav_submenu .submenu_item a { padding: 5px 5px 5px 14px; }
  header nav ul.global_nav .gnav_submenu .submenu_item:last-of-type { padding-bottom: 14px; }
  header nav .close { width: 100%; display: block; text-align: center; background: #0B2D73; border-bottom: solid #fff 1px; cursor: pointer; }
  header nav .close a { display: block; padding: 20px 0; color: #fff; }
  header nav .close a:before { content: "\f057"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; font-size: 16px; vertical-align: middle; margin-right: 5px; }
  header.open #nav_toggle span:nth-child(1) { top: 15px; -webkit-transform: rotate(135deg); -moz-transform: rotate(135deg); transform: rotate(135deg); }
  header.open #nav_toggle span:nth-child(2) { width: 0; left: 50%; }
  header.open #nav_toggle span:nth-child(3) { top: 15px; right: 0; width: 100%; -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); transform: rotate(-135deg); }
  header .member_type { margin-top: 20px; }
  header .member_type ul.memberType_navi { padding: 0; border-top: 1px solid #000; }
  header .member_type ul.memberType_navi li { padding: 15px 0; border-right: 1px solid #000; text-align: center; font-size: 3vw; }
  header .member_type ul.memberType_navi li:last-of-type { padding-right: 10px; border-right: none; }
  header .member_type .modal_box { overflow-y: scroll; height: 83%; }
  header .member_type .modal_box .inner .flexbox { display: flex; flex-wrap: wrap; justify-content: space-between; }
  header .member_type .modal_box .inner .flexbox .category ~ .category { margin-top: 20px; }
  header .member_type .modal_box .inner .flexbox .category:nth-of-type(2) { margin-top: 0; }
  header .member_type .modal_box .inner .flexbox .unit ~ .unit { margin-top: 0 !important; }
  header .member_type .modal_box .inner .flexbox .col-3 { width: 50%; }
  header .member_type .modal_box .inner .close_btn { width: 70%; display: block; margin: 40px auto 0; text-align: center; background: #0B2D73; border-radius: 4px; cursor: pointer; }
  header .member_type .modal_box .inner .close_btn:hover { opacity: .7; }
  header .member_type .modal_box .inner .close_btn a { display: block; padding: 20px 0; color: #fff; }
  header .member_type .modal_box .inner .close_btn a:before { content: "\f057"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; font-size: 16px; vertical-align: middle; margin-right: 5px; }
  header .member_type .modal_box .inner .close_btn a:hover { opacity: 1; }

}
@media (max-width: 770px) { .pci, .pcb, .pct { display: none; }
  .spi { display: inline; }
  .spb { display: block; }
  .spt { display: table; }
  /*  背景色  */
  .wrap section.bg_yellow { margin: 60px 0 0; padding: 40px 10px; }
  .wrap section.bg_gray { margin: 60px 0 0; padding: 40px 10px; }
  .wrap section.banner_area { margin: 60px 0 0; padding: 70px 10px 120px; }
  .flexbox { display: block; }
  .inner { width: 100%; padding-left: 10px; padding-right: 10px; }
  .breadcrumbs { display: none; }

  /* top ----------------------------- */
  #top .tab_btn { display: none; }
  #top .sp_btn { position: relative; display: block; margin: 0 -10px; background: #0B2D73; border-bottom: solid 1px #fff; text-align: center; cursor: pointer; }
  #top .sp_btn:hover { opacity: .8; }
  #top .sp_btn span { display: block; padding: 15px 0; font-size: 20px; color: #fff; font-weight: bold; }
  #top .sp_btn span::after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; font-size: 22px; position: absolute; top: 15px; right: 10px; vertical-align: middle; }
  #top .sp_btn.open span::after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; }
  #top .sp_btn#purpose { margin-top: -64px; }
  #top .tab_contents .grid ~ .grid { margin-top: 0; }
  #top .tab_contents#purpose_area { margin-top: 0; }
  #top .tab_contents#purpose_area .grid { margin-left: 0; margin-right: 0; }
  #top .tab_contents#purpose_area .grid .unit { border-bottom: solid 1px #707070; padding: 20px 0; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_items h3 { display: inline-block; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_items .inner_item { width: auto; margin-top: 40px; position: static; transform: none; -webkit-transform: none; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_items .inner_item::after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0; font-weight: 900; font-size: 22px; position: absolute; right: 0; vertical-align: middle; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_items ul { vertical-align: middle; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail { display: none; background: none; margin: 0; padding: 30px 0; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail:before { content: none; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list { width: auto; display: block; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul { display: block; color: #3B4043; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul ~ ul { margin-top: 10px; margin-left: 0; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li { margin-top: 10px; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li:first-of-type { margin-top: 0; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail .list ul li a { color: #3B4043; }
  #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_02 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_03 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_04 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_05 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_06 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_07 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_08 .list, #top .tab_contents#purpose_area .grid .unit span .purpose_detail.purpose_09 .list { margin-left: 0; }
  #top .tab_contents#purpose_area .grid .unit span.open .inner_item::after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #0B2D73; margin-right: 0; font-weight: 900; }
  #top .tab_contents#keyword_area { margin: 40px 0; }
  #top .tab_contents#keyword_area .search .search_form { margin-top: 40px; }
  #top .tab_contents#keyword_area .search .search_form form input[type="text"] { width: 80%; }
  #top .tab_contents#keyword_area .search .search_form form button[type="submit"].btn { width: 45%; }
  #top .tab_contents#kind_area { margin-top: 40px; }
  #top .tab_contents#kind_area .kind_btn ul li { width: 50%; padding: 2.5px; }
  #top .tab_contents#kind_area .kind_btn ul li a { font-size: 17px; }
  #top .tab_contents#kind_area .kind_btn + .grid { margin-top: 50px; }
  #top .tab_contents#kind_area .grid .unit.unit { margin-top: 10px; }
  #top .tab_contents#kind_area .grid ~ .grid { margin-top: 10px; }
  #top .tab_contents#kind_area a .kind_items h3 { font-size: 22px; }
  #top .news { padding: 60px 0; }
  #top .news h3 { font-size: 22px; }
  #top .news ul { margin-top: 25px; width: 100%; }
  #top .news ul li { border-top: solid 1px #3B4043; padding: 1em 0; }
  #top .news ul li span { width: 90px; display: inline-block; }
  #top .news ul li span.info, #top .news ul li span.imp { width: auto; padding: 5px 10px; }
  #top .news ul li .newstitle { width: auto; display: block; margin-top: 8px; margin-left: 0; }
  #top .news .past_news { width: 100%; }
  #top .event .flexbox { display: flex; }
  #top .event .flexbox .unit { padding-left: 5px; padding-right: 5px; }
  #top .event .flexbox .unit:first-of-type { padding-left: 10px; }
  #top .event .flexbox .unit:last-of-type { padding-right: 10px; }
  /* 2階層以下共通 ----------------------------- */
  #category h2, #category h3, #detail h2, #detail h3, #contact h2, #contact h3, #news h2, #news h3 { font-size: 18px; }
  #category h4, #detail h4, #contact h4, #news h4 { font-size: 16px; }
  #category .h2_fs, #category .h3_fs, #detail .h2_fs, #detail .h3_fs, #contact .h2_fs, #contact .h3_fs, #news .h2_fs, #news .h3_fs { font-size: 18px; }
  #category .h4_fs, #detail .h4_fs, #contact .h4_fs, #news .h4_fs { font-size: 16px; }
  #category .hero_area .hero_img, #detail .hero_area .hero_img, #contact .hero_area .hero_img, #news .hero_area .hero_img { width: 100%; padding-left: 0; padding-right: 0; }
  #category .hero_area .hero_img .hero_txt, #detail .hero_area .hero_img .hero_txt, #contact .hero_area .hero_img .hero_txt, #news .hero_area .hero_img .hero_txt { padding: 0 30px; }
  #category .hero_area .hero_img .hero_txt h1, #detail .hero_area .hero_img .hero_txt h1, #contact .hero_area .hero_img .hero_txt h1, #news .hero_area .hero_img .hero_txt h1 { font-size: 22px; }
  #category .hero_area .hero_img .hero_txt .icon ul li i, #detail .hero_area .hero_img .hero_txt .icon ul li i, #contact .hero_area .hero_img .hero_txt .icon ul li i, #news .hero_area .hero_img .hero_txt .icon ul li i { width: 24px; height: 24px; }
  #category .hero_area .hero_img .hero_txt p, #detail .hero_area .hero_img .hero_txt p, #contact .hero_area .hero_img .hero_txt p, #news .hero_area .hero_img .hero_txt p { font-weight: bold; letter-spacing: .1em; margin-top: 40px; }
  #category .hero_area .hero_img.no_pic, #detail .hero_area .hero_img.no_pic, #contact .hero_area .hero_img.no_pic, #news .hero_area .hero_img.no_pic { margin-top: 30px; padding-left: 10px; padding-right: 10px; }
  #category .inner .grid, #detail .inner .grid, #contact .inner .grid, #news .inner .grid { margin-left: -10px; margin-right: -10px; }
  #category .inner .grid ~ .grid, #detail .inner .grid ~ .grid, #contact .inner .grid ~ .grid, #news .inner .grid ~ .grid { margin-top: 50px; }
  #category .inner .unit, #detail .inner .unit, #contact .inner .unit, #news .inner .unit { padding-left: 10px; padding-right: 10px; }
  #category .inner .unit ~ .unit, #detail .inner .unit ~ .unit, #contact .inner .unit ~ .unit, #news .inner .unit ~ .unit { margin-top: 50px; }
  #category .inner .unit .tbl p, #detail .inner .unit .tbl p, #contact .inner .unit .tbl p, #news .inner .unit .tbl p { padding-left: 50px; }
  #category table.type02 th, #detail table.type02 th, #contact table.type02 th, #news table.type02 th { width: 100%; display: block; text-align: left; }
  #category table.type02 td, #detail table.type02 td, #contact table.type02 td, #news table.type02 td { width: 100%; display: block; padding-left: 1em; }
  /* category（2階層） ----------------------------- */
  #category .contents_list .inner .unit h2 { font-size: 18px; }
  #category .contents_list img { width: 100%; }
  /* detail（3階層） ----------------------------- */
  #detail .wrap { margin-top: 30px; padding-left: 10px; padding-right: 10px; }
  #detail .wrap section.banner_area .unit ~ .unit { margin-top: 0; }
  #detail .wrap section.banner_area .col-6 > .flexbox { display: flex; }
  #detail .wrap section.banner_area .col-6 > .flexbox .unit { padding-left: 10px; padding-right: 10px; }
  #detail .wrap section.banner_area .col-6 > .flexbox .col-6 { width: 50%; }
  /* ニュース一覧 ----------------------------- */
  #news .news ul { margin-top: 25px; width: 100%; }
  #news .news ul li { border-top: solid 1px #3B4043; padding: 1em 0; }
  #news .news ul li span { width: 90px; display: inline-block; }
  #news .news ul li span.info, #news .news ul li span.imp { width: auto; padding: 5px 10px; }
  #news .news ul li .newstitle { width: auto; display: block; margin-top: 8px; margin-left: 0; }
  /* ご意見・お問い合わせフォーム ----------------------------- */
  #contact .wrap { margin-top: 30px; padding-left: 10px; padding-right: 10px; }
  #contact .wrap form.form .grid ~ .grid { margin-top: 0; }
  #contact .wrap form.form .form_group { padding: 25px 0; }
  #contact .wrap form.form .form_group .unit { position: static; }
  #contact .wrap form.form .form_group .unit .form_label { position: static; }
  #contact .wrap form.form .form_group .unit ~ .unit { margin-top: 10px; }
  #contact .wrap form.form .form_notes { padding: 1em; }
  footer .unit { padding-left: 0; padding-right: 0; }
  footer .flexbox { display: block; }
  footer .footer_inner { padding: 30px 20px; }
  footer .footer_inner .grid { margin-left: 0; margin-right: 0; }
  footer .footer_inner .unit + .unit { margin-top: 10px; }
  footer .footer_inner ul + ul { margin-top: 10px; }
  footer .footer_inner ul li { margin-bottom: 0; line-height: 2em; }
  footer .footer_inner ul li.ttl { width: 100%; float: none; }
  footer .footer_inner ul li.submenu_link { position: relative; }
  footer .footer_inner ul li.submenu_link a { display: block; }
  footer .footer_inner ul li.submenu_link a::after { content: "\f078"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; font-size: 20px; position: absolute; right: 0; vertical-align: middle; }
  footer .footer_inner ul li.on a::after { content: "\f077"; font-family: "Font Awesome 5 Free"; color: #fff; margin-right: 0; font-weight: 900; }
  footer .footer_inner ul li a { font-size: 15px; }
  footer .footer_inner ul ul { float: none; width: auto; }
  footer .footer_inner ul ul.submenu { display: none; }
  footer .footer_inner .copyright { margin-top: 50px; } }
@media (max-width: 530px) { header .member_type ul.memberType_navi li { font-size: 3vw; }
  header .member_type ul.memberType_navi li:first-of-type { width: 28.5%; }
  header .member_type ul.memberType_navi li:nth-of-type(2) { width: 33%; }
  header .member_type ul.memberType_navi li:last-of-type { width: 38.5%; }
  header .member_type ul.memberType_navi li span::before { width: 25px; height: 25px; margin-right: .2em; }
  header .member_type .modal_box .inner .flexbox .col-3 { width: 100%; }
  header .member_type .modal_box .inner .flexbox .category:nth-of-type(2) { margin-top: 20px; }
  #top .event .flexbox { flex-wrap: wrap; justify-content: space-between; text-align: center; }
  #top .event .flexbox .unit { margin-bottom: 15px; }
  #top .event .banner_area { padding: 40px 0; }
  #top .event .banner_area .unit:nth-of-type(odd) { padding-left: 10px; }
  #top .event .banner_area .unit:nth-of-type(even) { padding-right: 10px; }
  #top .event .banner_area .w20 { width: 50%; }
    /* detail（3階層）
----------------------------- */
  #detail .wrap section .floatBox .block { float: none; display: block; margin: 0 0 1em 0; text-align: center; }
  #detail .wrap section .book_wrap .floatL { width: 100%; }
  #detail .wrap section .book_wrap .block { text-align: left; } }
@media (max-width: 500px) {     /* detail（3階層）
----------------------------- */
  #detail .wrap section .floatL { float: none; display: block; margin: 0 0 1em 0; text-align: center; }
  #detail .wrap section .floatR { float: none; display: block; margin: 0 0 1em 0; text-align: center; } }

/*# sourceMappingURL=common.css.map */
