@charset "utf-8";
/* reset
------------------------------------------------------------------- */
/* A Modern CSS Reset */
*, *::before, *::after {
    box-sizing: border-box;
}
body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
    margin: 0
}
ul[role="list"], ol[role="list"] {
    list-style: none
}
html {
    scroll-behavior: smooth;
}
body {
    min-height: 100vh;
    text-rendering: optimizeSpeed;
}
a:not([class]) {
    text-decoration-skip-ink: auto;
}
img, picture {
    max-width: 100%;
    display: block;
}
input, button, textarea, select {
    font: inherit;
}

img {
    vertical-align: middle;
}
h1, h2, h3, h4 {
    font-weight: normal;
}

/* 全体構造
------------------------------------------------------------------- */
html {
    font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
    color: #000;
    background-color: #FFF;
}

body {
    font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

.container {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    max-width: 1040px;
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.container-box {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    background-color: #FFF;
    max-width: 1000px;
    width: 100%;
    padding: 50px 30px;
    margin: 0 auto;
}

.container-box2 {
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.8;
    max-width: 1000px;
    width: 100%;
    padding: 50px 30px;
    margin: 0 auto;
}

.container-box-wrapper {
    padding: 80px 15px;
}

.container-box-wrapper2 {
    padding: 80px 15px;
}

.f-serif {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
}

a {
    color: #0083B7;
    text-decoration: underline;
    transition : all 0.5s ease 0s;
}

.t-center {
    text-align: center;
}

.fs-13 {
    font-size: 1.3rem;
}

.fs-14 {
    font-size: 1.4rem;
}

.fw-b {
    font-weight: 600;
}

.cl-blue {
    color: #0083B7;
}

.border-box-end {
    font-size: 1.8rem;
    font-weight: 600;
    color: #F90000;
    border: 1px solid #F90000;
    padding: 10px;
    margin: 20px 0;
}

.mgb-10 {
    margin-bottom: 10px;
}

.mgb-20 {
    margin-bottom: 20px;
}

.mgb-30 {
    margin-bottom: 30px;
}

figcaption {
    font-size: 1.4rem;
    margin-top: 10px;
}

.linkbtn a {
    color: #000;
    font-size: 2.5rem;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    background-color: #FFF000;
    box-shadow: 3px 3px 0px rgba(0,0,0,0.67);
    display: block;
    border-radius: 10px;
    max-width: 350px;
    padding: 10px 0;
}

.linkbtn a:hover {
    background-color: #FFFC7D;
}

.linkbtn-2 a {
    color: #FFF;
    font-size: 2.5rem;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    background-color: #0083B7;
    box-shadow: 3px 3px 0px rgba(0,0,0,0.67);
    display: block;
    border-radius: 10px;
    max-width: 350px;
    padding: 10px 0;
}

.linkbtn-2 a:hover {
    background-color: #46CAFF;
}

.linkbtn-mg a {
    margin: 80px auto;
}

.linkbtn-mg-last a {
    margin: 80px auto 0px;
}


/* コンテンツ
------------------------------------------------------------------- */
/*header {
    width: 100%;
    height: 600px;
    background-image: url(../images/title_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

@media only screen and (max-width:599px) {
    header {
        height: 450px;
    }
}

header h1 {
    max-width: 700px;
    width: 100%;
    margin: 0 auto;


.header-inner {
    padding: 60px 30px 0;
}
}*/

header {
    max-width: 1200px;
    margin: 0 auto;
}

.lead-top {
    font-size: 1.8rem;
    margin: 20px 0 50px;
}


.lead {
    font-size: 1.8rem;
    margin: 50px 0;
}

.date-img {
    width: 250px;
    margin: 20px auto;
}

.border-box {
    border: 1px solid #0083B7;
    padding: 10px;
    margin: 20px 0;
}

.booth-img {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.booth-img img {
    width: 280px;
}

.u-line {
    border-bottom: 1px solid #707070;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.cpd-img {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.cpd-img img {
    width: 120px;
}

.u-line {
    border-bottom: 1px solid #707070;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.footer-indent {
    margin-left: 0em;
}

.footer-mark {
    width: 133px;
}

/* block */
.col-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap :wrap;
}

.col-2 {
    width: 48.5%;
}

.col-3 {
    width: 32%;
}

.col-9 {
    width: 48.5%;
}

.ly-img .col-2 {
    margin-bottom: 30px;
}

.ly-img .col-9 {
    margin-bottom: 30px;
}

.col-cpd-wrapper {
    display: flex;
    border-top: 1px solid #0083B7;
    border-bottom: 1px solid #0083B7;
    padding: 10px 0;
    margin: 50px 0 30px;
}

.col-cpd-mk {
    width: 80px;
}

.col-cpd-txt {
    flex:1;
    padding-left: 10px;
}

.col-lecture-wrapper {
    display: flex;
    justify-content: space-between;
}

.col-lecture-txt {
    width: 64%;
}

.col-lecture-img  {
    width: 32%;
}

.col-schedule-txt {
    width: 78%;
}

.col-schedule-img  {
    width: 20%;
}

.text-line span {
    display: inline-block;
}


@media only screen and (max-width:1000px) {
.sp-br-none br {
    display: none;
}
}

@media only screen and (max-width:599px) {
    .col-wrapper {
        display: block;
    }
    .col-2, .col-3, .col-schedule-txt, .col-schedule-img {
        width: 100%;
}
    .col-2:not(:last-child) ,.col-3:not(:last-child), .col-schedule-txt {
        margin-bottom: 30px;
}
	
    .col-9 {
        width: 100%;
}
    .col-9:not(:last-child) {
        margin-bottom: 30px;
}
    }

.block-pd80 {
    padding-top: 80px;
    padding-bottom: 80px;
}

.block-pd50 {
    padding-top: 50px;
    padding-bottom: 50px;
}

.bg-glay {
    background-color: #F5F5F5;
}

/* title */
.title-bgc-dblue {
    font-size: 1.8rem;
    color: #FFF;
    background: #003E4A;
    padding: 6px 10px;
    margin: 30px 0 20px;
}

.title-bgc-dblue-2 {
    font-size: 2.8rem;
    color: #FFF;
    text-align: center;
    background: #003E4A;
    padding: 10px;
    margin: 50px 0;
}

.title-bgc-blue {
    font-size: 1.8rem;
    color: #FFF;
    background: #0083B7;
    padding: 6px 10px;
    margin: 50px 0 20px;
}

.title-line {
    font-size: 2.8rem;
    text-align: center; 
    position: relative;
    margin-bottom: 50px;
}

@media only screen and (max-width:599px) {
    .title-line, .title-bgc-dblue-2 {
        font-size: 2.4rem;
    }
}


.title-squareicon {
    font-size: 1.8rem;
    border-bottom: 1px solid #0083B7;
    padding-bottom: 5px;
    margin: 50px 0 30px;
}

.title-squareicon::before {
    content: '■';
    color: #0083B7;
}

.title-access {
    background-color: #CADCE8;
    padding: 3px 5px;
    margin: 15px 0;
}

/* list */
.list-disc {
    padding: 0;
    margin: 0 0 0 1.5em;
}

.list-none {
    list-style: none;
    padding: 0;
    margin: 0;
}

.list-schedule {
    display: flex;
    flex-wrap :wrap;
}

.list-schedule dt {
    width: 4.5em;
}

.list-schedule dd {
    width: calc(100% - 4.5em);
}

.list-number  {
    list-style: none;
    margin: 0;
    text-indent: -1em;
   padding-left: 1em;
}

.list-footerlink li  {
    display: inline-block;
    margin-right:  20px;
}

/* メインタイトル（PC表示時） */
.main-title {
  font-size: 4.5rem;
  font-weight: 600;
  text-align: center;
  color: #003399;
  line-height: 1.2;
  margin-bottom: 1em;
  font-family: "Hiragino Mincho ProN", "游明朝", "YuMincho", "MS PMincho", serif;
}

/* サブタイトル（PC表示時） */
.sub-title {
  font-size: 1.9rem;
  text-align: center;
  line-height: 1.2;
}

/* スマホ表示時（幅599px以下） */
@media only screen and (max-width: 599px) {
  .main-title {
    font-size: 2.2rem;
    font-family: "Hiragino Mincho ProN", "游明朝", "YuMincho", "MS PMincho", serif; /* モバイルでも明朝体維持 */
  }

  .sub-title {
    font-size: 1.5rem;
  }
}