/* CSS Document */

/* FONT --------------------------------------------------------------------------------------------------------------------------------------------------------- */

/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600&display=swap'); */
/* @import url("https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap"); */
/* 
@font-face {
    font-family: "Avenir Next World Thin";
    src:
        url("../fonts/bae40acb-d6f4-4286-8b5c-a268303f2bcf.woff2")
            format("woff2"),
        url("../fonts/de44dcbe-a981-426e-b310-c56554485383.woff") format("woff");
    font-display: swap;
} */

@font-face {
    font-family: "Avenir Next World";
    src: url("../fonts/AvenirNextWorld-Regular.ttf") format("truetype");
    font-display: swap;
    font-weight: 400;
    unicode-range: U+0020-007F;
}

:root {
    --darkBlue: #003ead;
    --minimedBlue: #0067f0;
    --lightSilver: #f1f4f4;
    --darkSilver: #b7b6b6;
    --text: #191919;
    --ja: "Meiryo UI", "メイリオ UI", Arial;
    --en: "Avenir Next World", Arial;

    --red: #cd0025;
    --orange: #ff6d00;
    --yellow: #faac1c;
    --green: #11a359;
    --white: #ffffff;
    --lightBlue: #00ffff;
    --darkGreen: #11a359;
    --lightGreen: #55f975;
    --darkPink: #f91296;
    --lightPink: #ff85df;
}

body {
    font-family:
        "Avenir Next World", "Meiryo UI", "メイリオ UI", Arial, Helvetica,
        sans-serif;
    border-top: 4px solid var(--minimedBlue);
    color: var(--text);
    font-size: 16px;
    line-height: 1.7;
    background: var(--lightSilver);
    overflow-x: hidden;
}

.en_font {
    font-family: var(--en);
}

a {
    color: var(--text);
}
a:hover {
    color: var(--minimedBlue);
}
a.ul_none {
    color: var(--text);
    text-decoration: none;
}
a.ul_none:hover {
    color: var(--orange);
    text-decoration: none;
}
a.topbanner {
    color: #fff;
    text-decoration: none;
}
a.topbanner:hover {
    color: #fff;
    text-decoration: none;
}
a.en_bn {
    color: #fff !important;
    text-decoration: none;
}
a.en_bn:hover {
    color: #fff;
    text-decoration: none !important;
    opacity: 0.8;
}
a.entop_event {
    color: var(--text);
    text-decoration: none;
}
a.entop_event:hover {
    color: var(--text);
    text-decoration: none;
}
a.calender2022 {
    color: var(--text);
    text-decoration: none !important;
}
a.calender2022:hover {
    color: var(--orange);
    text-decoration: none !important;
}

h4 {
    color: var(--text);
    margin: 0px 0px 10px;
    line-height: 1.5;
    font-size: 110%;
    border-bottom: 2px solid #afafaf;
    clear: both;
}

/*h3*/
.h3_wrapper {
    display: flex;
}
.h3_circle_number {
    width: 30px;
    height: 30px;
    margin-right: 15px;
    margin-bottom: 10px; /*padding-top: 10px;*/
    background-color: var(--minimedBlue);
    border-radius: 50%;
    text-align: center;
    box-sizing: border-box;
    font-weight: bold;
    color: #ffffff;
    vertical-align: middle;
}
/*見出し_縦線*/
.txt_line {
    border-left: solid 5px var(--minimedBlue);
    padding-left: 10px;
}
.txt_line_gr {
    border-left: solid 5px #7eca2a;
    padding-left: 10px;
}
.txt_line_pk {
    border-left: solid 5px #e5057f;
    padding-left: 10px;
}
/* base --------------------------------------------------------------------------------------------------------------------------------------------------------- */

.clear {
    clear: both;
    font-size: 0px !important;
    line-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.clearfix::after {
    content: "";
    clear: both;
    display: table;
}

.dnone {
    display: none !important;
}

.bold {
    font-weight: bold !important;
}
.left {
    text-align: left !important;
}
.right {
    text-align: right !important;
} /* tright は廃止　*/
.center {
    text-align: center !important;
}
.uline {
    text-decoration: underline !important;
}
.italic {
    font-style: italic !important;
}

.vtop {
    vertical-align: top;
}
.vmid {
    vertical-align: middle;
}
.vbtm {
    vertical-align: bottom;
}

.pnav {
    text-align: right;
    font-size: smaller;
    clear: both;
}

.letter {
    letter-spacing: -1px;
}
.letter-2px {
    letter-spacing: -2px;
}
.letter-3px {
    letter-spacing: -3px;
}
.letter-4px {
    letter-spacing: -4px;
}

em {
    color: var(--yellow);
    font-size: 110%;
}

.box_simple {
    padding: 0.5em 1em;
    margin: 2em 0;
    border: solid 1px #666666;
}
.box_session {
    padding: 0.5em 1em;
    margin: 2em 0;
    background-color: #0099c4;
    color: #ffffff;
}

/* font color */

/* primary color */
.fc_electric_blue {
    color: var(--minimedBlue) !important;
}
.fc_navy_blue {
    color: var(--darkBlue) !important;
}
.fc_navy_blue_txt {
    color: var(--darkBlue) !important;
}
.fc_white {
    color: #ffffff !important;
}
.fc_atmospheric_white {
    color: #f5f5f5 !important;
}

/* accent color */
.fc_light_blue {
    color: #0fc9f7 !important;
}
.fc_teal {
    color: #00dc89 !important;
}
.fc_green {
    color: #7eca2a !important;
}
.fc_orange {
    color: #ff6d00 !important;
}
.fc_red {
    color: var(--red) !important;
}
.fc_pink {
    color: #e5057f !important;
}
.fc_purple {
    color: #c529bb !important;
}
.fc_lavender {
    color: #6548dd !important;
}
.fc_brown {
    color: #784d35 !important;
}
.fc_yellow {
    color: var(--yellow) !important;
}

/* body text color */
.fc_dark_gray {
    color: var(--text) !important;
}
.fc_dark_gray_tint {
    color: #777777 !important;
}

/* semantic color */
.fc_infomation {
    color: var(--minimedBlue) !important;
}
.fc_success {
    color: #14853d !important;
}
.fc_error_alert {
    color: var(--red) !important;
}
.fc_warning {
    color: #cf5009 !important;
}

/*width*/
.w3 {
    width: 3% !important;
}
.w5 {
    width: 5% !important;
}
.w7 {
    width: 7% !important;
}
.w8 {
    width: 8% !important;
}
.w10 {
    width: 10% !important;
}
.w20 {
    width: 20% !important;
}
.w30 {
    width: 30% !important;
}
.w33 {
    width: 33% !important;
}
.w40 {
    width: 40% !important;
}
.w50 {
    width: 50% !important;
}
.w60 {
    width: 60% !important;
}
.w66 {
    width: 66% !important;
}
.w70 {
    width: 70% !important;
}
.w75 {
    width: 75% !important;
}
.w80 {
    width: 80% !important;
}
.w85 {
    width: 85% !important;
}
.w90 {
    width: 90% !important;
}
.w95 {
    width: 95% !important;
}
.w100 {
    width: 100% !important;
}

/* margin */

.mb0 {
    margin-bottom: 0;
}
.mb5 {
    margin-bottom: 5px;
}
.mb8 {
    margin-bottom: 8px;
}
.mb15 {
    margin-bottom: 15px;
}
.mb1em {
    margin-bottom: 1em !important;
}
.mb2em {
    margin-bottom: 2em !important;
}
.mt15 {
    margin-top: 15px !important;
}
.mt0 {
    margin-top: 0 !important;
}
.mr50 {
    margin-bottom: 50px;
}
.mt1em {
    margin-top: 1em !important;
}
.mt2em {
    margin-top: 2em !important;
}

.mb2_5em {
    margin-bottom: 2.5em;
}
.mr15 {
    margin-right: 15px;
}

.ml1em {
    margin-left: 1em !important;
}
.ml2em {
    margin-left: 2em !important;
}
.ml3em {
    margin-left: 3em !important;
}

.pl1em {
    padding-left: 1em;
}
.pl2em {
    padding-left: 2em;
}
.pl5em {
    padding-left: 5em;
}
.pl10em {
    padding-left: 10em;
}
.pr1em {
    padding-right: 1em;
}
.pr5em {
    padding-right: 5em;
}
.pr10em {
    padding-right: 10em;
}

/* float */
.fright {
    float: right;
}
.fleft {
    float: left;
}

/* font_size */
.fs6 {
    font-size: 40% !important;
}
.fs7 {
    font-size: 47.6% !important;
}
.fs8 {
    font-size: 53.3% !important;
}
.fs10 {
    font-size: 66.67% !important;
}
.fs12 {
    font-size: 80% !important;
}
.fs16 {
    font-size: 100% !important;
}
.fs17 {
    font-size: 106.6% !important;
}
.fs18 {
    font-size: 113.3% !important;
}
.fs19 {
    font-size: 120% !important;
}
.fs20 {
    font-size: 126.6% !important;
}
.fs21 {
    font-size: 133.3% !important;
}
.fs22 {
    font-size: 140% !important;
}
.fs23 {
    font-size: 146.6% !important;
}
.fs24 {
    font-size: 153.3% !important;
}
.fs35 {
    font-size: 233.3% !important;
}
.fs45 {
    font-size: 300% !important;
}
.fsh2 {
    font-size: 200% !important;
}
.fsh3 {
    font-size: 160% !important;
}
/*.fs6{ font-size:40% !important; } 
.fs7{ font-size:47.6% !important; } 
.fs8{ font-size:53.3% !important; } 
.fs10{ font-size:66.67% !important; } 
.fs12{ font-size:80% !important; } 
.fs15{ font-size:100% !important; }
.fs16{ font-size:106.6% !important; } 
.fs17{ font-size:113.3% !important; } 
.fs18{ font-size:120% !important; } 
.fs19{ font-size:126.6% !important; } 
.fs20{ font-size:133.3% !important; }
.fs21{ font-size:140.0% !important; }
.fs22{ font-size:146.6% !important; }
.fs23{ font-size:153.3% !important; }
.fs35{ font-size:233.3% !important; }
.fs45{ font-size:300% !important; } 
.fsh2{font-size: 200%!important;} 
.fsh3{font-size: 160%!important;} */

span.note {
    color: #ff5900;
    font-size: 11px;
    font-weight: normal;
    padding: 0px 3px 0px 0px;
    vertical-align: top;
}

.dot-emphasis {
    text-emphasis: filled dot black;
    -webkit-text-emphasis: filled dot black;
}

.enclosing_sq {
    border: 1px solid var(--text);
    padding: 0 0.3em;
    margin: 0 1px;
}

/* list */
.cl_indent {
    text-indent: -1em !important;
    padding-left: 1em !important;
}
.cl_indent02 {
    text-indent: -1.6em !important;
    padding-left: 1.6em !important;
}
.cl_indent_list li {
    text-indent: -1.6em !important;
    padding-left: 1.6em !important;
}
.cl_indent03 {
    text-indent: -1.6em !important;
    padding-left: 1em !important;
}

/*上付き・下付き*/
span.sup {
    vertical-align: super;
    font-size: 60%;
}
span.sub {
    vertical-align: sub;
    font-size: 60%;
}
/* topへ */
p.pnav {
    text-align: right;
    font-size: smaller;
    clear: both;
}

/*wp-pagenavi*/
.wp-pagenavi {
    clear: both;
    text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
    color: #333;
    background-color: #fff;
    border: 1px solid #333;
    padding: 8px 15px;
    margin: 0 2px;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
}
.wp-pagenavi a:hover {
    color: #fff;
    background-color: #ccc;
    border-color: #999;
}
.wp-pagenavi span.current {
    color: #fff;
    background-color: #fc872e;
    border-color: #fc872e;
    font-weight: bold;
}

/* 加除式書籍　表 */
.books_org_l {
    float: left;
    padding-left: 5%;
}
.books_org_l_02 {
    float: left;
    padding-left: 5%;
}
.books_org_r {
    padding-left: 5%;
}
.books_org_r_02 {
    padding-left: 10%;
}
.books_org_02_l {
    float: left;
    padding-left: 8%;
}
.books_org_02_l_02 {
    float: left;
    padding-left: 10%;
}
.books_org_02_r {
    padding-left: 10%;
}
.books_org_02_r_02 {
    padding-left: 10%;
}

.books_org {
    float: left;
}
.books_org02 {
    float: left;
}

.btn--orange,
a.btn--orange {
    color: #fff;
    background-color: var(--orange);
}
.btn--orange:hover,
a.btn--orange:hover {
    color: #fff;
    background: var(--orange);
    opacity: 0.8;
}

.btn,
a.btn,
button.btn {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    padding: 1rem 4rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #fff;
    border-radius: 0.5rem;
}
