<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/* main section
--------------------------------------------------------------------*/
/* general style */
body * {
  box-sizing: border-box;
}
body {
  font-family: "Noto Sans JP", sans-serif;
}
section {
  padding: 20px 0 40px;
}

.f-size130 {
  font-size: 130% !important;
}
.f-size150 {
  font-size: 150% !important;
}
.f-size170 {
  font-size: 170% !important;
}
.bold {
  font-weight: bold;
}
.red {
  color: #e8440d;
  font-weight: bold;
}
.yellow {
  color: #ffe489;
}
.green {
  color: #247031;
}
.inner {
  width: 1024px;
  margin: 0 auto;
  padding: 0 1rem;
}
/* .page_block {
  width: 1024px;
  margin: 0 auto;
} */
img:not([width]) {
  width: auto;
  max-width: 100%;
  height: auto;
}
/* page
------------------------------------------------------------*/
.js-tablet #page {
  min-height: 1600px;
}
a {
  color: #121212;
  text-decoration: none;
}
h2.title {
  padding: 0 3px;
  text-align: center;
  font-size: 275%;
  color: #e50012;
  /* margin-bottom: 60px; */
  line-height: 1.5;
}
h2.title--type02 {
  padding: 0 3px;
  text-align: center;
  font-size: 275%;
  color: #e50012;
  /* margin-bottom: 60px; */
  line-height: 1.5;
  position: relative;
}
h2.title--type02 span {
  position: relative;
  display: inline-block;
  padding: 0 0.5em;
}
h2.title--type02:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  content: "";
  border-top: 1px solid;
}
h2.title span:before {
  position: absolute;
  top: 50%;
  left: 0;
  background: url("../imgs/ic_01.png") no-repeat;
  content: "";
  width: 35px;
  height: 76px;
  transform: translateY(-50%);
}
h2.title span:after {
  position: absolute;
  top: 50%;
  right: 0;
  background: url("../imgs/ic_02.png") no-repeat;
  content: "";
  width: 35px;
  height: 76px;
  transform: translateY(-50%);
}
h2.title span {
  position: relative;
  display: inline-block;
  padding: 0 52px;
  color: #65421c;
}
h2.title br {
  display: none;
}
p,
li {
  line-height: 1.6;
}
.for_guidance {
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px !important;
}
.l_inner {
  margin-right: auto;
  margin-left: auto;
}
.l_col_wrap {
  display: table;
  table-layout: fixed;
}
.l_col_wrap &gt; * {
  display: table-cell;
  vertical-align: top;
}
/* header
------------------------------------------------------------*/
header.page {
  border-top: 5px solid #e50012;
  -webkit-box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.15);
}
header.page &gt; .l_inner {
  padding: 0 10px;
}
header.page .logo {
  line-height: 0;
}
header.page .g_col_unit1 {
  width: 100%;
  line-height: 0;
}
header.page .g_col_unit1 &gt; * {
  vertical-align: middle;
}
header.page .g_col_unit1 {
  padding: 15px 0;
}
header.page .g_col_unit1 .g_col_unit1-2-1 {
  display: table;
  width: auto;
  margin-left: auto;
}
header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
  display: table-cell;
  vertical-align: middle;
}
header.page .g_col_unit1 .g_col_unit1-2-1 br {
  display: none;
}

@media (min-width: 641px) {
  body {
    min-width: 1220px;
    line-height: 1.625;
  }
  .l_inner {
    max-width: 1220px;
    padding-right: 10px;
    padding-left: 10px;
  }
  header.page .logo.u-can {
    display: block;
    width: 144px;
  }
  header.page .g_col_unit1 &gt; * {
    width: 50%;
  }
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    padding-left: 25px;
  }
}
@media (max-width: 640px) {
  header.page .g_col_unit1 .g_col_unit1-1 {
    width: 20.78%;
  }
  header.page .g_col_unit1 .g_col_unit1-2 {
    width: auto;
  }
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    padding-left: 20px;
  }
}
@media screen and (max-width: 568px) {
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    font-size: 90%;
  }
}
@media screen and (max-width: 530px) {
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    padding-left: 25px;
    text-align: center;
  }
  header.page .g_col_unit1 .g_col_unit1-2-1 br {
    display: inline-block;
  }
}
@media screen and (max-width: 375px) {
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    padding-left: 20px;
    font-size: 75%;
  }
}
@media screen and (max-width: 320px) {
  header.page .g_col_unit1 .g_col_unit1-2-1 &gt; * {
    padding-left: 15px;
  }
}
/* breadcrumb */
.breadcrumb-nav {
  padding: 10px 1.5rem 5px;
  font-size: 1rem;
}
.breadcrumb-nav__list {
  width: 100%;
  margin-bottom: 0;
}
.breadcrumb-nav__item {
  display: inline;
}
.breadcrumb-nav__link {
  margin-right: 5px;
  color: #e25452;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.breadcrumb-nav__link--top::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 3px;
  background: url(../imgs/icon_home.svg) no-repeat center center;
  vertical-align: -0.2em;
}
.breadcrumb-nav__link::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 12px;
  margin-left: 10px;
  background: url(../imgs/icon_breadcrumb.svg) no-repeat center center;
}
@media screen and (min-width: 768px) {
  .breadcrumb-nav {
    font-size: 1.1rem;
  }
  .breadcrumb-nav__link {
    margin-right: 7px;
  }
  .breadcrumb-nav__link--top::before {
    width: 16px;
    height: 16px;
    vertical-align: -0.15em;
  }
  .breadcrumb-nav__link::after {
    margin-left: 12px;
  }
}
@media screen and (min-width: 414px) {
  .breadcrumb-nav {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

/* mainVisual */
#mainVisual {
  position: relative;
  padding: 0;
}
#mainVisual::before {
  content: "";
  background: url(/special/syumi_cam/imgs/mv_bg_l.png) center top repeat;
  width: 50%;
  height: 519px;
  position: absolute;
  left: 0;
  top: 0;
}
#mainVisual::after {
  content: "";
  background: url(/special/syumi_cam/imgs/mv_bg_r.png) center top repeat;
  width: 50%;
  height: 519px;
  position: absolute;
  right: 0;
  top: 0;
}

@media screen and (max-width: 1245px) {
  #mainVisual::before,
  #mainVisual::after {
    display: none;
  }
}
#mainVisual {
  background: url(../imgs/bg.png);
  background-repeat: no-repeat;
  background-position: top left;
  background-size: cover;
  overflow-y: hidden;
}
#mainVisual .inner {
  position: relative;
  height: 519px;
  width: 1040px;
  margin: 0 auto;
  z-index: 99;
  padding: 30px 0;
  background: url(../imgs/img05.png);
  background-repeat: no-repeat;
  background-position: top 90% right 0;
  background-size: 245px auto;
}

.mainvisual_ttl {
  margin: 0 auto;
}
#mainVisual h1 {
  margin: 0 auto;
  text-align: center;
  max-width: 640px;
  position: relative;
  border-bottom: 2px solid #fff;
  padding: 0 10px 2px;
}
#mainVisual h1 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
#mainVisual p.term {
  margin-top: 30px;
  position: relative;
  display: inline-block;
}

#mainVisual div.lead {
  /* position: absolute;
  left: 40px;
  bottom: 20px; */
  display: inline-block;
  margin-top: 10px;
  display: flex;
  align-items: flex-start;
}

#mainVisual div.lead p.txt {
  font-weight: 400;
  font-size: 117%;
  line-height: 1.8;
  color: #fff;
  background: rgba(126, 2, 5, 0.6);
  padding: 10px;
  border-radius: 6px;
  display: inline-block;
}
#mainVisual .lead_img {
  width: 140px;
  aspect-ratio: 438/797;
}
#mainVisual .lead_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  vertical-align: bottom;
}
.mainVisual_tx {
  margin-top: 15px;
  font-weight: bold;
  display: inline-block;
}
.mainVisual_tx p:nth-child(1) {
  font-size: 30px;
  color: #fff;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}
.mainVisual_tx p:nth-child(2) {
  color: #fff;
  display: flex;
  align-items: flex-end;
  margin-top: 8px;
}
.mainVisual_tx p:nth-child(2) span:nth-of-type(1) {
  display: flex;
  align-items: center;
}
.mainVisual_tx p:nth-child(2) span:nth-of-type(2) {
  font-size: 25px;
}
.mainVisual_tx p:nth-child(2) span &gt; span:nth-child(1) {
  color: #ffe489;
  border: 2px solid #ffe489;
  padding: 0 8px;
  font-size: 30px;
  display: inline-block;
}
.mainVisual_tx p:nth-child(2) span &gt; span:nth-child(2) {
  color: #ffe489;
  padding: 0 6px;
  font-size: 60px;
  line-height: 1;
  display: inline-block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
}
.mainVisual_tx p:nth-child(2) span:nth-of-type(2) {
  font-size: 36px;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;

  line-height: 1;
}
/* details */
#details {
  padding-top: 80px;
  background-color: #fff1cd;
  padding-bottom: 90px;
}
.details_contents {
  text-align: center;
}
.details_contents p:nth-of-type(1) {
  font-size: 30px;
  border: 2px solid #65421c;
  color: #65421c;
  background-color: #fff;
  display: inline-block;
  font-weight: bold;
  padding: 10px 20px;
  border-radius: 16px;
  line-height: 1.2;
}
.details_contents p:nth-of-type(1) span {
  font-size: 35px;
  color: #c60001;
}
.details_contents p:nth-of-type(2) {
  font-size: 25px;
  color: #353535;
  margin-top: 30px;
  font-weight: bold;
}
.details_contents p:nth-of-type(3) {
  font-size: 44px;
  color: #c60001;
  margin-top: 4px;
  font-weight: bold;
  letter-spacing: -0.01em;
  line-height: 1.5;
}
.details_contents p:nth-of-type(3) span:nth-of-type(1) {
  background-color: #ffe489;
}
.details_contents p:nth-of-type(3) span + span {
  font-size: 36px;
  color: #353535;
}
.details_img {
  margin: 40px auto 0;
  max-width: 600px;
}
.details_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.details_btn {
  margin-top: 40px;
  text-align: center;
}
.details_btn .btn {
  background-color: #ffd3ea;
  background: url("../imgs/ic_03.png") no-repeat;
  background-color: #ffd3ea;
  background-position: bottom 16px center;
  background-size: 50px auto;
  border: 5px solid #65421c;
  color: #65421c;
  padding: 25px 45px 45px;
  border-radius: 90px;
  box-shadow: 0 12px #65421c;
  font-size: 36px;
  font-weight: bold;
  text-decoration: none;
  display: inline-block;
  box-sizing: border-box;
  transition: 0.3s;
}
.details_btn .btn:hover {
  text-decoration: none;
  opacity: 0.6;
  transition: 0.3s;
}
/* #details a br {
  display: none;
} */
/* useful */
#useful {
  padding-top: 80px;
}
.useful_title {
  margin-bottom: 60px;
}

#useful .block {
  overflow: hidden;
  margin-bottom: 40px;
  display: flex;
  justify-content: space-between;
}
#useful h3 {
  font-size: 200%;
  color: #e50012;
  background-color: #ffe489;
  line-height: 1.2;
  padding: 15px 20px;
}
/* #useful h3 br {
  display: none;
} */
#useful .block_img {
  width: 49%;
}
#useful .block_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#useful .block_contents {
  width: 49%;
}
#useful .block_contents p {
  padding-top: 40px;
  color: #353535;
  font-weight: 400;
  font-size: 18px;
}
#useful .reverse {
  flex-direction: row-reverse;
}
#useful .details {
  padding: 15px;
  border: 1px solid #353535;
  margin-top: 50px;
  font-weight: 400;
  line-height: 1.7;
  background-color: #f2f0eb;
  color: #434343;
}
#useful .details ul li:before {
  content: "■";
  margin-right: 7px;
}
#useful .details ul {
  overflow: hidden;
}
#useful .details ul li {
  float: left;
  margin-right: 15px;
}

/*deadline*/
#deadline {
  padding-top: 40px;
  text-align: center;
  background-color: #fff1cd;
}
.deadline_title {
  margin-bottom: 20px;
}
.deadline_title span {
  position: relative;
  background: url("../imgs/img07.png") no-repeat;
  background-color: #fff1cd;
  background-position: left 22px center;
  background-size: 140px 140px;
  padding-left: 200px;
}
#deadline h2.title--type02 span {
  padding-left: 180px;
  padding-top: 40px;
  padding-bottom: 40px;
}
#deadline h2.title--type02 br {
  display: none;
}
.deadline_obi {
  background-color: #c60001;
  padding: 20px;
}
.deadline_term {
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  display: inline-block;
  position: relative;
}
.deadline_term:before,
.deadline_term:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #fff;
  width: 3px;
  height: 36px;
  margin: 0 0.8em;
  margin-top: -0.2em;
  vertical-align: middle;
}

.deadline_term:before {
  transform: rotate(-24deg);
}

.deadline_term:after {
  transform: rotate(24deg);
}

#deadline h3 {
  font-size: 60px;
  /* letter-spacing: 0.3em; */
  color: #ffe489;
  font-weight: bold;
}
#deadline h3 span {
  font-size: 46px;
  color: #fff;
}
#deadline h3 br {
  display: none;
}
/* #deadline p span {
  font-size: 160%;
  font-weight: bold;
  color: #c60001;
} */
.deadline_contents {
  padding-left: 135px;
  background: url("../imgs/img04.png") no-repeat;
  background-position: left center;
  max-width: 750px;
  margin: 0 auto 40px;
}
.deadline_contents p:nth-of-type(1) {
  font-size: 30px;
  border: 2px solid #65421c;
  color: #65421c;
  background-color: #fff;
  display: inline-block;
  font-weight: bold;
  padding: 10px 20px;
  border-radius: 16px;
  line-height: 1.2;
}
.deadline_contents p:nth-of-type(1) span {
  font-size: 35px;
  color: #c60001;
}
.deadline_contents p:nth-of-type(2) {
  font-size: 25px;
  color: #353535;
  margin-top: 30px;
  font-weight: bold;
}
.deadline_contents p:nth-of-type(3) {
  font-size: 44px;
  color: #c60001;
  margin-top: 4px;
  font-weight: bold;
  letter-spacing: -0.01em;
  line-height: 1.5;
}
.deadline_contents p:nth-of-type(3) span:nth-of-type(1) {
  background-color: #ffe489;
}
.deadline_contents p:nth-of-type(3) span + span {
  font-size: 36px;
  color: #353535;
}
#deadline ul {
  font-size: 81.25%;
  width: 70%;
  margin: 36px auto 0;
}
#deadline li {
  position: relative;
  padding-left: 1em;
  text-align: left;
}
#deadline ul li:before {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  content: "※";
}
/*link*/

#link {
  padding-top: 40px;
  text-align: center;
}
.link_title {
  margin-bottom: 20px;
}
.link_title span {
  position: relative;
  background: url("../imgs/img08.png") no-repeat;
  background-color: #fff;
  background-position: right 22px center;
  background-size: 140px 140px;
}
#link h2.title--type02 span {
  padding-right: 180px;
  padding-top: 40px;
  padding-bottom: 40px;
}

.link_lead {
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 50px;
  color: #353535;
  position: relative;
}
.link_lead:before,
.link_lead:after {
  position: relative;
  display: inline-block;
  content: "";
  background: #121212;
  width: 2px;
  height: 36px;
  margin: 0 0.8em;
  margin-top: -0.2em;
  vertical-align: middle;
}

.link_lead:before {
  transform: rotate(-24deg);
}

.link_lead:after {
  transform: rotate(24deg);
}
#link h2.title--type02 br {
  display: none;
}
#link h3.category {
  display: flex;
  align-items: center;
  font-size: 23px;
  font-weight: bold;
  line-height: 1.2;
  text-align: left;
  padding-top: 20px;
  margin-bottom: 10px;
}
#link h3.category.first {
  padding-top: 0;
}
#link h3.category::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  margin-right: 10px;
}
#link h3.category.category01::before {
  background: url(../imgs/icon_cource_01.png) no-repeat center center/cover;
}
#link h3.category.category02::before {
  background: url(../imgs/icon_cource_02.png) no-repeat center center/cover;
}
#link h3.category.category03::before {
  background: url(../imgs/icon_cource_03.png) no-repeat center center/cover;
}
#link h3.category.category04::before {
  background: url(../imgs/icon_cource_04.png) no-repeat center center/cover;
}
#link h3.category.category05::before {
  background: url(../imgs/icon_cource_05.png) no-repeat center center/cover;
}
#link h3.category.category06::before {
  background: url(../imgs/icon_cource_06.png) no-repeat center center/cover;
}
#link h3.category.category01 {
  color: #ebb116;
}
#link h3.category.category02 {
  color: #717d30;
}
#link h3.category.category03 {
  color: #717d30;
}
#link h3.category.category04 {
  color: #69543f;
}
#link h3.category.category05 {
  color: #b282c0;
}
#link h3.category.category06 {
  color: #e79b8d;
}
#link .block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 25px;
  flex-wrap: wrap;
}
#link .block .course {
  position: relative;
  width: calc((100% - 160px) / 5);
}
#link .block .course p {
  padding-bottom: 10px;
  margin-top: 5px;
  font-weight: bold;
}
#link .block .course:nth-of-type(n + 2) {
  margin-left: 40px;
}
#link .block .course:nth-of-type(n + 6) {
  margin-top: 40px;
}
#link .block .course:nth-of-type(6) {
  margin-left: 0;
}
#link .block a.course .ov {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  border-radius: 3px;
  background: url(../imgs/ov.gif) 0 0 repeat;
  z-index: -1;
  transition: opacity 200ms;
}
#link .block a.course:hover img {
  opacity: 0.5;
}
#link .block a.course:hover .ov {
  opacity: 1;
  filter: alpha(opacity=100);
}

/* #link .block.first a.course:nth-of-type(3) {
  width: 30%;
}
#link .block.first a.course:nth-of-type(3) img {
  width: 33%;
}
#link .block a.course .ov {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  border-radius: 3px;
  background: url(../imgs/ov.gif) 0 0 repeat;
  z-index: -1;
  transition: opacity 200ms;
}
#link .block a.course:hover {
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  padding: 0;
}
#link .block a.course:hover img {
  opacity: 0.5;
}
#link .block .course img {
  float: left;
  width: 40%;
  margin-right: 6px;
}
#link .block .course p {
  padding-top: 44px;
  font-weight: bold;
  font-size: 103%;
  text-align: left;
}
#link .block .course .caution {
  font-weight: normal;
  font-size: 65%;
  display: block;
}
#link .block.last {
  text-align: left;
}
#link .block.last a {
  display: inline-block;
}

body.SP #link a.course:hover .ov {
  opacity: 0;
}
body.SP #link .block a.course:hover {
  border-top: none;
  border-bottom: none;
  padding: 1px 0;
}
#link .block .course .font_80 {
  font-size: 80%;
}
#link .block .course .font_65 {
  font-size: 65%;
} */

/* 1281 over ************************************/
@media screen and (min-width: 1281px) {
}

/* 769-1280 ************************************/
@media screen and (max-width: 1200px) {
}

/* 641 over ***********************************
@media screen and (min-width: 640px) {
  #useful .block .flaot_l,
  #useful .block .flaot_r {
    width: 600px;
  }
}
*/
/* 640 below ************************************/
@media screen and (max-width: 640px) {
  .page_block {
    width: 100%;
    /* padding-left: 2% !important;
    padding-right: 2% !important; */
  }
  .inner {
    width: 100%;
    padding: 0;
  }
  h2.title {
    /* font-size: 260%; */
    font-size: 24px;
  }
  h2.title--type02 {
    font-size: 24px;
  }

  h2.title br {
    display: inline-block;
  }
  h2.title span {
    padding: 0 26px;
  }
  h2.title span:before {
    position: absolute;
    top: 50%;
    left: 0;
    background: url(../imgs/ic_01.png) no-repeat;
    content: "";
    width: 17.5px;
    height: 38px;
    background-size: contain;
    transform: translateY(-50%);
  }
  h2.title span:after {
    position: absolute;
    top: 50%;
    right: 0;
    background: url(../imgs/ic_02.png) no-repeat;
    content: "";
    width: 17.5px;
    height: 38px;
    background-size: contain;
    transform: translateY(-50%);
  }
  #mainVisual {
    position: static;
    background: url(../imgs/bg.png);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: cover;
  }
  #mainVisual .inner {
    background-position: top 85% right;
    width: 100%;
  }
  #mainVisual .inner {
    padding: 20px 15px 28px;
    height: auto;
    background: none;
  }
  #mainVisual h1 {
    max-width: 100%;
    border-bottom: 1px solid #fff;
    padding-bottom: 4px;
  }
  .mainVisual_ttl {
    width: 100%;
  }
  #mainVisual p.term {
    margin-top: 15px;
    width: 200px;
  }
  #mainVisual p.term img {
    width: 100%;
  }
  .mainVisual_contents {
    max-width: 375px;
    margin: 0 auto;
    background: url(../imgs/img05.png);
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 115.5px auto;
  }
  .mainVisual_tx p:nth-child(1) {
    font-size: 18px;
  }
  .mainVisual_tx p:nth-child(2) {
    align-items: flex-end;
    margin-top: 8px;
    font-size: 25px;
  }
  .mainVisual_tx p:nth-child(3) {
    font-size: 25px;
    color: #fff;
    font-family: "Noto Serif JP", serif;
    font-weight: 500;
  }
  .mainVisual_tx p:nth-child(2) span:nth-of-type(1) {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
  .mainVisual_tx p:nth-child(2) span:nth-of-type(2) {
    font-size: 25px;
    margin-left: 3px;
  }
  .mainVisual_tx p:nth-child(2) span &gt; span:nth-child(1) {
    font-size: 16px;
    /* width: 186px; */
    text-align: center;
  }
  .mainVisual_tx p:nth-child(2) span &gt; span:nth-child(2) {
    font-size: 40px;
    margin-top: 8px;
    padding: 0;
    margin-left: -6px;
  }
  .mainVisual_tx p:nth-child(2) span:nth-of-type(2) {
    font-size: 25px;
  }

  #mainVisual div.lead {
    width: 100%;
    position: static;
    align-items: flex-end;
    margin: 10px calc(50% - 50vw);
    width: 100vw;
    margin-bottom: -28px;
  }
  #mainVisual .lead_img {
    width: 110px;
    margin-left: 2px;
  }

  #mainVisual div.lead p.txt {
    font-size: 14px;
    width: calc(100% - 110px);
    margin-right: 15px;
    margin-left: 5px;
    margin-bottom: 28px;
  }
  #details {
    padding: 50px 15px 45px;
  }
  .details_contents p:nth-of-type(1) {
    font-size: 18px;
    border-radius: 8px;
  }
  .details_contents p:nth-of-type(1) span {
    font-size: 21px;
  }
  .details_contents p:nth-of-type(2) {
    margin-top: 20px;
    font-size: 15px;
  }
  .details_contents p:nth-of-type(3) {
    font-size: 27px;
    letter-spacing: -0.1em;
  }
  .details_contents p:nth-of-type(3) span + span {
    font-size: 22px;
  }
  .details_img {
    margin-top: 25px;
  }
  .details_btn {
    margin-top: 23px;
  }
  .details_btn .btn {
    font-size: 21px;
    box-shadow: 0 6px #65421c;
    padding: 15px 22px 25px;
    border: 2.5px solid #65421c;
    background-size: 31px auto;
    background-position: bottom 6px center;
    line-height: 1.2;
  }
  #useful {
    padding: 55px 15px 50px;
  }
  .useful_title {
    margin-bottom: 15px;
  }
  #useful h3 {
    font-size: 24px;
    padding: 8px;
  }
  #useful .block {
    flex-direction: column;
  }
  #useful .block_img {
    width: 100%;
    margin-top: 18px;
  }
  #useful .block_contents {
    width: 100%;
  }
  #useful .block_ttl {
    text-align: center;
  }
  #useful .block_contents p {
    padding-top: 18px;
    font-size: 14px;
  }

  #useful .block:nth-of-type(n + 2) {
    margin-top: 47px;
  }
  #useful .details {
    margin-top: 37px;
    font-size: 14px;
  }
  #useful .details ul li {
    float: none;
    margin-right: 0;
  }
  #deadline {
    padding: 29px 15px 48px;
  }
  .deadline_title {
    margin-bottom: 5px;
  }
  .deadline_title span {
    position: relative;
    background: url("../imgs/img07.png") no-repeat;
    background-color: #fff1cd;
    background-position: left 12px center;
    background-size: 80px 80px;
  }
  #deadline h2.title--type02 span {
    padding-left: 100px;
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .deadline_obi {
    margin-left: -15px;
    margin-right: -15px;
    padding: 16px;
  }
  #deadline h3 {
    font-size: 30px;
    margin-top: 5px;
  }
  #deadline h3 span {
    font-size: 24px;
  }
  .deadline_contents {
    padding-left: 68px;
    margin: 0 auto 20px;
    text-align: center;
    background-size: 67.5px auto;
    background-position: left bottom;
    max-width: 425px;
    text-align: center;
  }
  .deadline_contents p:nth-of-type(1) {
    font-size: 16px;
    padding: 5px 10px;
    border-radius: 8px;
    text-align: center;
  }
  .deadline_contents p:nth-of-type(1) span {
    font-size: 20px;
  }
  .deadline_contents p:nth-of-type(2) {
    font-size: 16px;
    margin-top: 20px;
  }
  .deadline_contents p:nth-of-type(3) {
    font-size: 22px;
    margin-top: 4px;
    letter-spacing: -0.1em;
  }
  .deadline_contents p:nth-of-type(3) span + span {
    font-size: 20px;
  }
  .deadline_term {
    font-size: 20px;
  }
  #deadline ul {
    font-size: 81.25%;
    width: 70%;
    margin: 18px auto 0;
  }
  #deadline li {
    position: relative;
    padding-left: 1em;
    text-align: left;
  }
  #deadline ul li:before {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    content: "※";
  }
  #deadline li {
    text-align: left;
  }
  #deadline ul {
    width: 100%;
  }
  #deadline li {
    margin-bottom: 7px;
  }
  #link {
    padding: 25px 0 43px;
    padding-left: 2% !important;
    padding-right: 2% !important;
  }
  .link_title {
    margin-bottom: 5px;
  }
  .link_title span {
    position: relative;
    background: url("../imgs/img08.png") no-repeat;
    background-color: #fff;
    background-position: right 12px center;
    background-size: 80px 80px;
  }
  #link h2.title--type02 span {
    padding-right: 100px;
    padding-top: 25px;
    padding-bottom: 25px;
  }

  .link_lead {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .link_lead:before,
  .link_lead:after {
    height: 24px;
  }
  .deadline_term:before,
  .deadline_term:after {
    height: 24px;
  }

  #link .block .course .caution {
    font-weight: normal;
    font-size: 60%;
    display: block;
    text-align: left;
  }
  #link .block .course {
    width: calc((100% - 40px) / 3);
  }
  #link .block .course p {
    padding-bottom: 10px;
    margin-top: 5px;
  }
  #link .block a.course:hover .ov {
    opacity: 0;
    filter: alpha(opacity=0);
  }

  #link .block .course:nth-of-type(n + 2) {
    margin-left: 20px;
  }
  #link .block .course:nth-of-type(n + 4) {
    margin-top: 20px;
  }
  #link .block .course:nth-of-type(3n + 1) {
    margin-left: 0;
  }

  .mainVisual_ttl p.term {
    font-size: 170%;
  }
}

/* 415-568 ************************************/
@media screen and (max-width: 568px) {
  /* #mainVisual div.lead {
    margin-top: 0;
  } */
  #link h3.category {
    font-size: 16px;
  }
  #link h3.category::before {
    width: 33px;
    height: 33px;
  }
  .mainVisual_ttl p.term {
    font-size: 170%;
  }
}

/* 415-530 ***********************************
@media screen and (max-width: 530px) {
  #mainVisual h1 {
    font-size: 230%;
  }
  #mainVisual div.title p.name {
    font-size: 300%;
  }
  #mainVisual div.title p.term {
    font-size: 110%;
  }
  #mainVisual div.title p.term span {
    font-size: 130%;
  }
  #mainVisual div.title p.term b {
    font-size: 140%;
  }
  #mainVisual div.title p.term b + b + b {
    font-size: 130%;
  }
}*/
@media screen and (max-width: 425px) {
}
@media screen and (max-width: 424px) {
  #deadline {
    padding-top: 33px;
  }
  .deadline_title {
    margin-bottom: 23px;
  }

  #deadline h2.title--type02 span {
    padding-left: 100px;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  #link {
    padding-top: 33px;
  }
  #link h2.title--type02 span {
    padding-right: 100px;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  .link_title {
    margin-bottom: 23px;
  }

  #link h2.title--type02 br {
    display: block;
  }
  #deadline h2.title--type02 br {
    display: block;
  }
}

/* 414 below **********************************/
@media screen and (max-width: 414px) {
  /* h2.title {
    font-size: 204%;
    margin-bottom: 40px;
  }
  #useful h2.title::before {
    content: none;
  }
  h2.title span {
    padding: 0 0.2em;
  }
  #mainVisual h1 {
    font-size: 200%;
    letter-spacing: -0.01em;
  }
  #mainVisual h1 .br {
    letter-spacing: -0.1em;
  }
  .mainVisual_ttl {
    margin-top: 0;
  }
  .mainVisual_ttl p {
    font-size: 170%;
    text-align: left;
    letter-spacing: -0.08em;
  }
  #mainVisual div.lead p {
    display: none;
  }
  #details {
    padding-top: 20px;
  }
  #deadline {
    padding-top: 40px;
  }
  #deadline h3 {
    font-size: 200%;
    margin: 15px 0;
  }
  #deadline h3 br {
    display: block;
  }
  #details div.lead {
    margin-bottom: 30px;
    letter-spacing: 0.05em;
  }
  #details a {
    font-size: 210%;
    margin-top: 25px;
  }
  #details a br {
    display: block;
  }
  #useful {
    padding-top: 40px;
  }
  #useful .block {
    margin-top: 30px;
  }
  #useful h3 {
    font-size: 180%;
    letter-spacing: -0.05em;
  }
  #useful h3 br {
    display: block;
  }
  #useful .details {
    margin-top: 25px;
  } */
  /* #link {
    padding-top: 40px;
  } */

  /* #mainVisual div.title p.name {
    font-size: 250%;
  }
  #mainVisual div.title p.term {
    font-size: 100%;
  }
  #mainVisual div.title p.term span {
    font-size: 130%;
  }
  #mainVisual div.title p.term b {
    font-size: 140%;
  }
  #mainVisual div.title p.term b + b + b {
    font-size: 120%;
  } */
}
@media screen and (max-width: 340px) {
}
/* 320 below **********************************/
@media screen and (max-width: 320px) {
  /* h2.small {
    letter-spacing: -0.18em;
  }
  #mainVisual h1 {
    font-size: 160%;
  }
  #link h2.title br {
    display: block;
  }
  #mainVisual div.title p.name {
    font-size: 200%;
  }
  #mainVisual div.title p.term {
    font-size: 100%;
  }
  #mainVisual div.title p.term span {
    font-size: 115%;
  }
  #mainVisual div.title p.term b {
    font-size: 125%;
  }
  #mainVisual div.title p.term b + b + b {
    font-size: 110%;
  } */
}

.recommend-area {
  padding: 24px 0;
  background: #f2f0eb;
}
.unit {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.recommend-area__title {
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ccc;
  font-family: "NotoSansCJKjp Medium", sans-serif;
  font-size: 1.5rem;
  line-height: 1.3;
  color: #6a6b6b;
}
.recommend-block2 {
  margin-top: 2rem;
}
.course-nav {
  padding: 10px 0;
}
.course-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.course-nav__item + .course-nav__item {
  border-left: 1px solid #ccc;
}
.course-nav__item {
  width: 25%;
  height: 60px;
}
.course-nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0.3rem;
  font-size: 0.7rem;
  text-decoration: none;
  line-height: 1.71429;
}
.course-nav__text {
  display: inline-block;
  position: relative;
  padding-left: calc(7px + 0.3rem);
}
.course-nav__text::before,
.local-nav__link::before {
  position: absolute;
  left: 9px;
  top: 50%;
  margin-top: -5px;
  display: inline-block;
  width: 7px;
  height: 10px;
  margin-right: 0.5rem;
  background: url(../imgs/icon_link.svg) no-repeat left center;
  background-size: contain;
  content: "";
}
.course-nav__text::before {
  left: 0;
}
.footer {
  width: 100%;
  height: 45px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #e50012;
}
.footer__bottom {
  color: #fff;
}
.footer__copyright {
  font-size: 0.6em;
}
.pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 1;
  width: 60px;
  margin-top: 2rem;
  padding: 2px 2px 4px;
  border-radius: 100%;
  background: #cdc4b3;
  text-align: center;
}
.pagetop__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 54px;
  padding-top: 16px;
  border-radius: 100%;
  background: url(../imgs/icon_pagetop_btn.svg) no-repeat center top 12px #fff;
  font-size: 14px;
  background-size: 20px;
}
.pagetop__btn:hover {
  opacity: 0.7;
}
.display-sp--r {
  display: block;
}
.display-pc--r {
  display: none;
}

.display-sp {
  display: none;
}
.display-pc {
  display: block;
}
@media screen and (min-width: 768px) {
  .display-pc--r {
    display: block;
  }
  .display-sp--r {
    display: none;
  }
  .recommend-area {
    padding-top: 45px;
    padding-bottom: 45px;
  }
  .recommend-block2__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -10px;
    overflow: hidden;
  }
  .recommend-block2__item {
    margin: 0 10px;
  }
  .recommend-area__title {
    font-size: 1.5rem;
  }
  .recommend-area__title {
    margin-bottom: 2.5rem;
    font-size: 2rem;
  }
  .recommend-block2 {
    margin-top: 3.5rem;
  }
  .course-nav {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .pagetop {
    right: 20px;
    bottom: 20px;
  }
}
@media screen and (max-width: 640px) {
  .display-pc {
    display: none;
  }
  .display-sp {
    display: block;
  }
}
@media screen and (min-width: 320px) {
  .unit {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media screen and (min-width: 375px) {
  .course-nav__link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
    font-size: 0.8rem;
  }
}
@media screen and (min-width: 414px) {
}

@media screen and (min-width: 568px) {
  .course-nav__link {
    font-size: 1.1rem;
  }
  .course-nav__link {
    padding-right: 0.7rem;
    padding-left: 0.7rem;
    font-size: 1rem;
  }
}
</pre></body></html>