@charset "UTF-8";
/* reset CSS */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box; }

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1.2; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

img {
  width: 100%; }

/* 2024winter.css */
html {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", Arial, sans-serif;
  font-size: 62.5%; }

body {
  background-color: #fff5c8;
  font-size: 1.6rem;
  letter-spacing: 0.025em; }

.body-container {
  width: 100%; }

.body-inner {
  background-image: url(../img/campaign/2025winter/img/top_cover.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  margin: 0 auto; }

.inner-wrap {
  width: 100%;
  max-width: 900px;
  margin: 0 auto; }

.inner-wrap.white {
  background-color: #fff;
  padding-bottom: 5rem; }

#gnavi ul li a {
  font-size: 1.4rem; }

.toiawase span {
  font-size: 1.3rem; }

.page-footer .sec_header h2 {
  font-size: 2.3rem; }

.page-footer .sec_header .sec_md {
  font-size: 1.4rem; }

.page-footer .contact_box .footer_flex {
  font-size: 1.7rem; }

.page-footer .contact_box .footer_flex .tel_box .tel span {
  font-size: 1.7rem; }

.page-footer .contact_box .footer_flex .tel_box .tel {
  font-size: 3rem; }

.page-footer .contact_box .footer_flex .uketuke {
  font-size: 1.3rem; }

.page-footer .contact_box .footer_flex .mail .toiawase span {
  font-size: 1.7rem; }

#footer-container .ft_row .ft_col_rt .ft_sitemap_block {
  font-size: 1.4rem; }

#footer-container .ft_row .ft_sitemap_block .ft_st_col > ul > li > ul.sub-menu {
  font-size: 1.3rem !important; }

.page-footer #footer-container .ft_row .ft_col_lt .ft_jyusho_txt {
  font-size: 1.3rem; }

.page-footer #footer-container .ft_row .ft_col_lt .ft_tel_txt {
  font-size: 1.3rem; }

#footer-container .ft_copyright small {
  font-size: 1.1rem; }

body #gnavi ul {
  padding: 0 10px !important; }

body #gnavi ul li:hover li {
  padding: 10px 0 !important; }

header #gnavi ul li:hover .sub-menu {
  bottom: -100px; }

@media screen and (max-width: 900px) {
  .page-header {
    height: 55px; }

  .page-header #header-container {
    background-color: #fff5c8; }

  .drawer--right.drawer-open .drawer-hamburger {
    right: 26rem !important; }

  .drawer-open .sliding-menu-content {
    width: 26rem; }

  .sliding-menu-content a {
    font-size: 1.4rem; }

  .page-footer .sec_header h2 {
    font-size: 2.2rem; }

  .page-footer .sec_header .sec_md {
    font-size: 1rem; }

  .page-footer .contact_box .footer_flex {
    font-size: 1.3rem; }

  .page-footer .contact_box .footer_flex .tel_box .tel {
    font-size: 2.4rem; }

  .page-footer .contact_box .footer_flex .uketuke {
    font-size: 1.3rem; }

  .page-footer .contact_box .footer_flex .mail .toiawase span {
    font-size: 1.4rem; }

  #footer-container .ft_row .ft_col_rt .ft_sitemap_block {
    font-size: 1.4rem; }

  #footer-container .ft_row .ft_sitemap_block_under li {
    font-size: 1.4rem; }

  .page-footer #footer-container .ft_row .ft_col_lt .ft_jyusho_txt {
    font-size: 1.3rem; }

  .page-footer #footer-container .ft_row .ft_col_lt .ft_tel_txt {
    font-size: 1.3rem; }

  #footer-container .ft_copyright small {
    font-size: 1.1rem; } }
@media screen and (max-width: 900px) {
  .body-inner {
    padding-left: 3rem;
    padding-right: 3rem; }

  .inner-wrap {
    width: 100%;
    padding-bottom: 0;
    background-color: transparent; }

  .inner-wrap.white {
    background-color: transparent;
    padding-bottom: 0rem; } }
/* 共通パーツ */
.title-bar {
  background-color: #beaf85;
  color: #fff;
  text-align: center;
  font-size: 2.5rem;
  font-weight: 600;
  padding: 1rem 0;
  margin-bottom: 3rem;
  letter-spacing: 0.1em; }

.course-entry .title-bar {
  background-color: #000;
  padding: 0.5rem 0; }

.white-space-pc {
  white-space: nowrap; }

.white-space {
  white-space: nowrap; }

@media screen and (max-width: 900px) {
  .title-bar {
    font-size: 2.8rem;
    padding: 0.5rem 0; }

  .white-space-pc {
    white-space: normal; } }
/* top */
.sec_top {
  margin: 0 auto;
  aspect-ratio: 900 / 650;
  background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0.6) 41%, rgba(255, 255, 255, 0.6) 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 3px;
  flex-wrap: nowrap; }

.sec_top-title {
  margin: 0 auto;
  width: 100%;
  padding: 0; }

@media screen and (max-width: 900px) {
  .sec_top {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 0rem; } }
/* course */
.sec_course {
  max-width: 800px;
  margin: 0 auto; }

.sec_course-wrap-01 {
  padding-top: 2em; }

.sec_course-wrap-02 {
  padding: 2rem 0 0; }

.caution-entry {
  font-weight: 600;
  display: flex;
  flex-direction: row;
  justify-content: center;
  border: 1px solid #000;
  padding: 1rem;
  width: fit-content;
  margin: 0 auto; }

.cau-large {
  font-size: 2.5rem;
  margin-right: 0.5rem; }

.cau-small {
  font-size: 1.4rem;
  letter-spacing: 0; }

.course-exp {
  position: relative; }

.course-exp-text-01 {
  width: 78%;
  margin-bottom: 2rem; }

.course-exp-point {
  position: absolute;
  top: 0;
  right: -1.5rem;
  width: 19.5rem; }

.course-area {
  width: 100%;
  margin-bottom: 1rem; }
  .course-area.course-area-wchance {
    border: 5px solid #81c0e9;
    box-shadow: 2px 2px 2px 2px rgba(4, 0, 0, 0.2); }

.course-content-area-wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: center; }

.course-cut-first {
  width: 100%;
  display: flex;
  padding: 2.5rem 0 2rem;
  align-items: stretch;
  justify-content: space-between; }

.course-cut-second {
  width: 100%;
  display: flex;
  padding: 1rem 0 2rem;
  align-items: stretch;
  justify-content: space-between; }

.course-content-area {
  width: 48%;
  padding: 0;
  position: relative; }

.course-content-area::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 18.5rem;
  height: 12rem;
  top: -2rem;
  right: 0rem;
  background-image: url(../img/campaign/2025winter/img/course_01cut-point-01.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 100; }

.course-content-area.course-cut-02::before {
  background-image: url(../img/campaign/2025winter/img/course_01cut-point-02.png); }

.course-content-area.course-cut-03::before {
  background-image: url(../img/campaign/2025winter/img/course_01cut-point-02.png); }

.course-content-area.course-cut-04::before {
  background-image: url(../img/campaign/2025winter/img/course_01cut-point-03.png); }

.course-content-area {
  box-shadow: 2px 2px 4px 4px rgba(4, 0, 0, 0.2); }
  .course-content-area.course-wchance-04 {
    width: 100%;
    box-shadow: unset;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .course-content-area.course-wchance-04::before {
      background-image: url(../img/campaign/2025winter/img/course_01cut-point-chance.png);
      width: 12rem;
      height: 12.1rem;
      top: -2rem;
      left: -2rem; }

.course-img {
  width: 92%;
  position: relative;
  margin: 1rem auto;
  padding: 0 1.5rem; }

.course-wchance-04 .course-img {
  width: 30%;
  margin: -3rem -1.2rem 0rem 0rem; }

.course-wchance-04 .course-img::before {
  top: 1rem; }

.course-wchance-04 .course-img::before {
  background-image: url(../img/campaign/2025winter/img/course_02wchance-point.png); }

.course-content-exp {
  padding: 0 1.5rem;
  display: flex;
  justify-content: space-between; }

.course-wchance-04 .course-content-exp {
  flex-direction: column;
  padding: 0 0rem 0 8rem; }

.course-name-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-start;
  height: auto; }

.course-name {
  position: relative;
  width: 100%;
  display: block;
  padding: 5px 6px; }
  .course-name img.pc_only {
    height: 46px;
    width: auto; }
  .course-name img.sp_only {
    height: 100%;
    width: auto; }

.course-wchance-04 .course-name-wrap {
  margin-left: 4rem;
  margin-top: 1.5rem;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  height: auto; }

.course-name-large {
  position: relative; }

.course-name-large::before {
  content: "";
  position: absolute;
  display: inline-block;
  width: 11rem;
  height: 5.3rem;
  top: -4.7rem;
  left: -3.5rem;
  background-image: url(../img/campaign/2025winter/img/course_wchance_more.png);
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 100; }

.course-name-large img {
  width: 20.4rem;
  height: auto; }

.course-wchance-04-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch; }

/* .course-name-main {
  margin-bottom: 0.5rem;
  font-size: 2.1rem;
} */
.course-area-wchance .course-name-main {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1; }

.course-area-wchance .course-name-main .course-name-small {
  font-size: 1.2rem;
  font-weight: 600;
  text-align: left;
  margin-bottom: 0rem; }

.course-name-small {
  font-size: 1rem;
  font-weight: 600;
  text-align: right;
  letter-spacing: -0.05rem; }

.course-name-small02 {
  font-size: 1rem;
  font-weight: 600;
  text-align: right;
  margin-top: 1rem;
  margin-bottom: 1rem; }

.course-count {
  font-size: 8rem;
  color: #e50012;
  font-weight: 600;
  letter-spacing: -0.3rem;
  transform: scale(0.95, 1); }

.course-wchance-04 .course-count {
  text-align: right;
  margin-top: 0rem;
  font-size: 8rem;
  letter-spacing: -0.2rem;
  line-height: 1; }

.course-count span {
  font-size: 3.2rem;
  letter-spacing: -0.1rem;
  transform: scale(1, 1); }

.course-wchance-04 .course-count span {
  font-size: 40%; }

.course-name-details {
  list-style: none;
  padding-left: 0;
  font-size: 1.4rem;
  font-weight: 600; }

.course-name-details li {
  position: relative;
  /* 相対位置指定で ::before の位置を調整しやすくする */
  padding-left: 0.8em;
  /* ●の位置に合わせてインデントを調整 */ }

.course-name-details li::before {
  content: "●";
  /* ●を表示 */
  position: absolute;
  /* 絶対位置指定で●をリストアイテムの左に出す */
  left: 0;
  top: 3px;
  font-size: 0.8rem; }

.course-cut-01 .course-name {
  background-color: #7e3c92; }

.course-cut-02 .course-name {
  background-color: #e6326e; }

.course-cut-03 .course-name {
  background-color: #e6326e; }
.course-cut-03 .course-name-details {
  font-size: 1.2rem; }

.course-cut-04 .course-name {
  background-color: #804f21; }

.entry-buttons {
  display: flex;
  justify-content: space-between;
  margin: 3rem auto;
  max-width: 750px; }

.entry-button {
  width: 350px; }

.entry-caution {
  text-align: center;
  padding: 0.5rem 1rem;
  border: 1px solid #000;
  font-weight: 600;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  margin-bottom: 4rem;
  width: fit-content; }

.entry-caution p {
  display: inline-block; }

.entry-caution-large {
  font-size: 2rem; }

.entry-caution-large span {
  font-size: 1.8rem; }

.entry-caution-small {
  font-size: 1.3rem;
  margin-left: 0.5em; }

.entry-caution-small span {
  font-size: 1.2rem; }

@media screen and (max-width: 900px) {
  .sec_course {
    width: 100%;
    margin: 0 auto;
    max-width: none; }

  .sec_course-wrap-01 {
    background-color: #fff;
    padding: 3rem 3rem 1rem;
    padding-bottom: 1.5rem;
    margin-bottom: 4rem; }

  .caution-entry {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 1rem;
    margin: 1rem 1rem 2rem; }

  .cau-large {
    font-size: 3.2rem;
    margin-right: 0; }

  .cau-small {
    margin-top: 0.5rem;
    font-size: 1.7rem; }

  .course-exp {
    padding-bottom: 1.5rem; }

  .course-exp-pg {
    margin-bottom: 2rem; }

  .course-exp-text-01 {
    width: 65%;
    margin-bottom: 1rem; }

  .course-exp-point {
    width: 37%;
    right: -1rem;
    top: -0.5rem; }

  .course-area {
    margin-bottom: 2rem; }

  .course-area-wchance {
    margin-bottom: 0; }

  .course-content-area-wrap {
    padding: 0rem; }

  .course-cut-first,
  .course-cut-second {
    padding: 3rem 0;
    gap: 2.5rem; }

  .course-content-area {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 0; }

  .course-content-area::before {
    width: 23rem;
    height: 14.5rem;
    top: 4.5rem;
    left: 0rem;
    right: 0rem;
    margin-left: auto;
    margin-right: auto; }

  .course-content-area.course-wchance-04::before {
    background-image: url(../img/campaign/2025winter/img/course_01cut-point-chance.png);
    width: 12rem;
    height: 12.1rem;
    top: -2.5rem;
    left: 0.5rem;
    right: auto;
    margin-left: 0;
    margin-right: 0; }

  .course-content-area.course-wchance-04 {
    padding: 1rem; }

  .course-img {
    width: 90%;
    padding: 0;
    margin: 10.5rem auto 1.5rem; }

  .course-wchance-04 .course-img {
    width: 50%;
    margin: 0rem -1.2rem 0rem 0rem; }

  .course-img::before {
    width: 18rem;
    height: 11rem;
    left: -3rem; }

  .course-cut-03 .course-img::before {
    left: -3rem;
    top: 0; }

  .course-wchance-04 .course-img::before {
    top: 0; }

  .course-content-exp {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    margin: 0 1.5rem;
    height: 11em; }

  .course-cut-03 .course-content-exp,
  .course-cut-04 .course-content-exp {
    height: 12em; }

  .course-wchance-04 .course-content-exp {
    display: block;
    width: 100%;
    padding-left: 12rem;
    height: unset; }
    .course-wchance-04 .course-content-exp .course-name {
      display: block; }

  .course-name-wrapper {
    justify-content: flex-start;
    height: 5.8rem;
    margin: 0rem;
    padding: 0rem; }

  .course-name-large::before {
    display: none; }

  .course-name {
    font-size: 2.4rem;
    width: 100%;
    height: 100%;
    padding: 0 8px;
    margin-top: 0;
    line-height: 1.16;
    display: flex;
    align-items: center; }

  .course-name::before {
    top: 3px; }

  .course-wchance-04 .course-name-wrap {
    display: block;
    margin: 0rem; }

  .course-name-main {
    font-weight: 600;
    font-size: 2.4rem;
    margin-bottom: 0rem; }

  .course-area-wchance .course-name-main {
    font-size: 2rem; }

  .course-area-wchance .course-name-main .course-name-small {
    font-size: 2rem; }

  .course-name-small {
    font-size: 1.6rem;
    letter-spacing: -0.05em;
    text-align: left;
    margin-bottom: 0;
    margin-top: 0.8rem; }

  .course-count {
    font-size: 8rem;
    text-align: center;
    letter-spacing: -0.03em; }

  .course-wchance-04 .course-count {
    margin-top: 0;
    font-size: 6.4rem;
    text-align: left; }

  .course-count span {
    font-size: 35%; }

  .course-wchance-04 .course-count span {
    font-size: 35%; }

  .course-name-details {
    font-size: 2rem; }

  .course-cut-03 .course-name-details {
    font-size: 1.8rem;
    letter-spacing: -0.05em; }

  .course-img_sp_wrapper.sp_only {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-around;
    padding-left: 9.8rem;
    flex-wrap: wrap; }

  .course-img_sp_wrapper.sp_only .course-wchance-04-wrapper {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    margin-top: 0; }

  .entry-buttons {
    justify-content: center;
    flex-wrap: wrap;
    margin: 3rem auto 2rem;
    max-width: 100%; }

  .entry-buttons.sp_only {
    display: flex; }

  .entry-button {
    width: 90%;
    margin-bottom: 2rem; }

  .entry-buttons .entry-button:last-child {
    margin-bottom: 0rem; }

  .entry-line-text {
    font-size: 3rem;
    font-weight: 600;
    margin-bottom: 1rem; }

  .entry-line-text.text_red {
    color: #e50012; }

  .entry-caution {
    flex-wrap: wrap;
    padding: 0.5rem 1rem;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    margin-bottom: 4rem;
    width: fit-content; }

  .entry-caution p {
    display: inline-block; } }
/* sec_products */
.sec_products {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 8rem; }

.products-title {
  width: 80%;
  margin: 0 auto;
  margin-bottom: -5rem; }

.sec_products-wrap {
  background-color: #44af35;
  padding: 1rem;
  padding-top: 5rem;
  margin-bottom: 1rem; }

.products-list {
  background-color: #fff; }

.products-exp {
  display: flex;
  padding: 2rem;
  align-items: center; }

.products-exp-img {
  width: 42%; }

.products-exp-pg {
  color: #fff;
  font-weight: 600;
  line-height: 1.5;
  margin-left: -2rem;
  width: 80%; }

.products-exp-pg span {
  color: #fff000; }

.products-exp-pg > p:nth-child(1) {
  font-size: 1.7rem;
  margin-bottom: 1rem; }

.products-exp-pg-sup {
  font-size: 1.4rem; }

.under-emp {
  border-bottom: 1px solid #fff000;
  padding-bottom: 2px; }

.products-exp-pg-img {
  margin-left: 3rem;
  margin-bottom: 1rem;
  font-weight: 600; }

.products-exp-pg-img p {
  font-size: 1.6rem; }

.products-exp-pg-img-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center; }

.products-exp-pg-img-wrapper div {
  width: 49%; }

.products-exp-img-sp {
  display: none; }

.products-list-wrap {
  padding: 1rem 2rem;
  margin: 0 auto; }

.list-caution {
  width: 94%;
  margin: 0 auto 1rem; }

.course-name-pg {
  font-size: 2.2rem;
  font-weight: 600;
  margin-bottom: 2rem; }

.course-name-pg-small {
  font-size: 1.9rem; }

.small-circle {
  letter-spacing: -0.8rem;
  margin-right: 0.5rem; }

.course-name-pg p:nth-child(1) {
  color: #44af35;
  margin-bottom: 1rem; }

.course-name-pg p::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: #44af35;
  border-radius: 50%; }

.course-name-pg p:nth-child(2)::before {
  background-color: #ef8200; }

.course-name-pg p:nth-child(2) {
  color: #ef8200; }

.list-example-title {
  font-size: 2rem;
  color: #44af35;
  background-color: #e3f3e1;
  padding: 1rem;
  text-align: center;
  font-weight: 600; }

.list-examples {
  display: flex;
  width: 100%;
  padding: 2rem 0;
  flex-wrap: wrap; }

.list-example {
  display: flex;
  width: 33%;
  border-bottom: 1px solid #44af35;
  margin-bottom: 2rem;
  padding-bottom: 2rem; }

.list-example.list-example-03,
.list-example.list-example-04,
.list-example.list-example-05 {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0; }

.list-example-01 {
  width: 60%; }

.list-example-02 {
  width: 40%; }

.list-example-02,
.list-example-05 {
  justify-content: flex-end; }

.list-title {
  display: flex;
  flex-direction: column;
  width: 10rem;
  align-items: center;
  margin-right: 1rem;
  font-size: 1.2rem; }

.list-title-pg {
  position: relative; }

.list-title-pg::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -1.2rem;
  display: inline-block; }

.list-example-img {
  width: 12rem; }

.list-example-01 .list-example-img {
  width: 25rem; }

.products-about-subjects {
  margin-top: 4rem;
  font-size: 1.6rem;
  line-height: 1.5; }

.products-about-subjects p:not(:first-child) {
  padding-left: 1.6rem; }

.products-about-subjects p + p {
  margin-top: 2rem; }

@media screen and (max-width: 900px) {
  .sec_products {
    width: 100%;
    max-width: none;
    margin-bottom: 0;
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    width: 100vw; }

  .sec_products-inner {
    background-color: #44af35;
    margin-bottom: 1rem;
    padding: 3rem 3rem 1rem 3rem; }

  .products-title {
    width: 100%;
    margin-bottom: 0rem; }

  .sec_products-wrap {
    padding: 0; }

  .products-exp {
    padding: 0;
    margin-top: 2rem;
    align-items: center;
    justify-content: space-between; }

  .products-exp-img {
    width: 45%; }

  .products-exp-pg {
    color: #fff;
    font-weight: 600;
    margin-left: 0;
    width: 55%; }

  .products-exp-pg > p:nth-child(1) {
    font-size: 2.8rem;
    margin-bottom: 0; }

  .products-exp-pg-sup {
    margin-top: 3rem;
    font-weight: 600;
    color: #fff;
    font-size: 2rem;
    line-height: 1.5; }

  .products-exp-pg-sup span {
    color: #fff000; }

  .products-exp-img-sp {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 3rem; }

  .products-exp-img-sp .products-exp-pg-img {
    width: 100%;
    margin-left: 0;
    margin-bottom: 3rem;
    display: flex;
    align-items: center;
    justify-content: center; }

  .products-exp-img-sp .products-exp-pg-img p {
    color: #fff;
    font-size: 1.6rem;
    margin-right: 1rem; }

  .products-exp-img-sp .products-exp-pg-img img {
    width: 43%;
    min-width: 180px; }

  .products-list {
    margin: 0 auto; }

  .products-list-wrap {
    padding: 2rem;
    margin: 0 auto;
    margin-bottom: 2rem; }

  .list-caution {
    width: 90%;
    margin-bottom: 1rem; }

  .course-name-pg {
    font-size: 1.6rem;
    margin-bottom: 2rem;
    line-height: 1.5; }

  .course-name-pg-small {
    font-size: 1.4rem; }

  .small-circle {
    letter-spacing: -0.8rem;
    margin-right: 0.5rem; }

  .course-name-pg p:nth-child(1) {
    color: #44af35;
    margin-bottom: 1rem; }

  .course-name-pg p::before {
    width: 16px;
    height: 16px; }

  .list-example-title {
    font-size: 2rem;
    color: #44af35;
    background-color: #e3f3e1;
    padding: 1rem;
    text-align: center;
    font-weight: 600; }

  .list-examples {
    padding: 2rem 0; }

  .list-example,
  .list-example.list-example-03 {
    display: flex;
    width: 50%;
    border-bottom: 1px solid #44af35;
    margin-bottom: 2rem;
    padding: 0 0.5rem 2rem; }

  .list-example.list-example-04,
  .list-example.list-example-05 {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0; }

  .list-example-01 {
    width: 100%; }

  .list-example-02 {
    width: 50%; }

  .list-title {
    display: flex;
    flex-direction: column;
    width: fit-content;
    max-width: 12rem;
    align-items: center;
    margin-right: 1rem;
    font-size: 1.6rem; }

  .list-title-pg {
    position: relative; }

  .list-title-pg::before {
    content: "※";
    position: absolute;
    top: 0;
    left: -1.6rem;
    display: inline-block; }

  .list-example-img {
    width: fit-content; }

  .list-example-01 .list-example-img {
    width: fit-content; }

  .products-about-subjects {
    font-size: 2rem;
    padding: 0 3rem 3rem;
    line-height: 1.5; } }
/* sec_entry */
.sec_entry {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 7rem; }

.sec_entry-wrap {
  padding: 3rem 3rem 1rem 3rem; }

.entry-kind-title {
  margin: 2rem auto;
  padding: 0.5rem 1.5rem;
  background-color: #036eb7;
  color: #fff;
  font-weight: 600;
  text-align: center;
  width: fit-content; }

.entry-kind-title h3 {
  display: inline-block; }

.entry-line {
  margin-bottom: 5rem; }

.entry-line .entry-kind-title {
  background-color: #06c755; }

.entry-mail {
  margin-bottom: 5rem; }

.entry-kind-exp-p-01 {
  margin-bottom: 0.5rem;
  line-height: 1.5; }

.entry-kind-exp-p-02 {
  font-size: 1.2rem;
  margin-bottom: 2rem; }

.entry-kind-exp-p-03,
.entry-kind-exp-p-04 {
  font-weight: 600;
  line-height: 1.5; }

.entry-kind-exp-p-03 {
  margin-bottom: 0.5rem; }

.entry-kind-exp-p-04 {
  margin-bottom: 3rem; }

.entry-kind-exp p span.emp_blue {
  color: #036eb7; }

.download-area {
  margin: 0 auto;
  text-align: center; }

.download-area-pg-01 {
  font-weight: 600;
  margin-bottom: 1rem; }

.download-area-pg-02 {
  font-size: 1.5rem;
  margin: 2rem 0; }

.entry-mail-title {
  color: #fff;
  background-color: #000;
  padding: 0.5rem 2rem;
  width: fit-content;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 5rem;
  line-height: 1; }

.entry-env-01 .entry-mail-title {
  background-color: #000; }

.flow-content-li {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  border-bottom: 1px solid #000;
  position: relative;
  font-weight: 600;
  position: relative; }

.flow-content-li.entry-04 {
  border: none; }

.flow-content-li::before {
  content: "";
  background-image: url(../img/campaign/2025winter/img/entry-flow-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 4rem;
  height: 2rem;
  position: absolute;
  bottom: -1rem;
  left: 15rem; }

.flow-content-li::after {
  content: "";
  background-image: url(../img/campaign/2025winter/img/entry-flow-arrow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 4rem;
  height: 2rem;
  position: absolute;
  bottom: -1rem;
  right: 15rem; }

.entry-04.flow-content-li::before,
.entry-04.flow-content-li::after {
  display: none; }

.flow-content {
  line-height: 1.5;
  font-weight: 600;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }

.flow-content-img {
  width: 100%; }

.entry-hagaki-01 {
  border-right: 1px solid #000; }

.entry-env-03 {
  border-left: 1px solid #000; }

.entry-hagaki-01,
.entry-env-01 {
  padding-bottom: 25rem;
  width: 50%; }

.flow-content-pg {
  width: 23rem; }

.entry-02 .flow-content-pg,
.entry-04 .flow-content-pg {
  width: 100%;
  padding: 3rem 0; }

.entry-hagaki-01 .flow-content-pg {
  margin-right: 15rem; }

.entry-env-01 .flow-content-pg {
  margin-left: 15rem; }

.flow-content-pg::before {
  content: "1";
  background-color: #000;
  color: #fff;
  border-radius: 50%;
  width: 2.2rem;
  height: 2.2rem;
  font-size: 1.9rem;
  text-align: center;
  padding: 0.2rem;
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "メイリオ", "arial"; }

.entry-02 .flow-content-pg::before {
  content: "2"; }

.entry-hagaki-03 .flow-content-pg::before,
.entry-env-03 .flow-content-pg::before {
  content: "3"; }

.entry-04 .flow-content-pg::before {
  content: "4"; }

.flow-content-pg p {
  margin-left: 2.5rem;
  letter-spacing: 0; }

.entry-02 span {
  background-image: url(../img/campaign/2025winter/img/entry-flow-check.svg);
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
  width: 2rem;
  height: 2rem; }

.flow-content-pg p span {
  color: #009fe8; }

.entry-01 > .flow-content-img {
  position: absolute;
  top: 6rem;
  left: 0rem;
  right: 0;
  width: 90%;
  margin: 40px auto 0; }

.entry-03 .flow-content {
  width: 50%;
  padding: 1.5rem; }

.entry-03 .flow-content-pg {
  width: 100%; }

.entry-03 .flow-content-img {
  width: 90%;
  padding: 2rem; }

@media screen and (max-width: 900px) {
  .sec_entry {
    padding: 3rem 0rem;
    width: 100%;
    max-width: none;
    margin-bottom: 0;
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    width: 100vw; }

  .entry-kind-title {
    font-size: 2.2rem;
    margin: 2rem auto;
    padding: 0.5rem 1.5rem; }

  .entry-mail {
    margin-bottom: 5rem; }

  .entry-kind-exp-p-01 {
    margin-bottom: 0.5rem;
    line-height: 1.5; }

  .entry-kind-exp-p-02 {
    font-size: 1.6rem;
    margin-bottom: 2rem; }

  .entry-kind-exp-p-03,
  .entry-kind-exp-p-04 {
    margin-bottom: 2rem; }

  .entry-kind-exp {
    font-size: 2.6rem; }

  .entry-kind-exp .sp_small {
    color: #000;
    font-size: 1.6rem;
    font-weight: 400; }

  .download-area {
    margin: 0 auto;
    text-align: center; }

  .download-area-pg-01 {
    font-size: 2.4rem; }

  .download-area-pg-02 {
    font-size: 1.8rem;
    margin: 2rem 0;
    line-height: 1.5; }

  .entry-mail-title {
    padding: 0.5rem 2rem;
    font-size: 2.2rem;
    margin-bottom: 30rem;
    line-height: 1.5;
    width: 100%;
    background-color: #009fe8; }

  .entry-env-01 .entry-mail-title {
    background-color: #b74c96; }

  .flow-content-li {
    align-items: flex-start;
    border-bottom: 1px solid #000; }

  .flow-content-li.entry-04 {
    border: none; }

  .flow-content-li::before {
    left: 20%; }

  .flow-content-li::after {
    right: 20%; }

  .entry-04.flow-content-li::before,
  .entry-04.flow-content-li::after {
    display: none; }

  .flow-content {
    margin: 0 auto;
    flex-direction: column;
    justify-content: center;
    align-items: center; }

  .entry-hagaki-01,
  .entry-env-01 {
    padding-bottom: 7rem;
    width: 50%; }

  .entry-hagaki-01 {
    border-right: 1px solid #000;
    padding-right: 1rem; }

  .entry-env-01 {
    padding-left: 1rem; }

  .entry-env-03 {
    border-left: 1px solid #000; }

  .flow-content-pg {
    width: 100%;
    text-align: center; }

  .flow-content p {
    text-align: left; }

  .flow-content-pg::before {
    width: 2.7rem;
    height: 2.7rem;
    font-size: 2.4rem;
    padding: 0;
    line-height: 2.4rem;
    margin-top: 0.5rem; }

  .entry-01 .flow-content-pg p,
  .entry-03 .flow-content-pg p {
    width: 100%;
    margin-left: 0;
    margin-top: 3rem;
    margin-bottom: 2rem;
    font-size: 2.4rem; }

  .entry-02 .flow-content-pg,
  .entry-04 .flow-content-pg {
    width: 100%;
    padding: 3rem 0;
    font-size: 2.4rem; }

  .entry-hagaki-01 .flow-content-pg {
    margin-right: 0; }

  .entry-env-01 .flow-content-pg {
    margin-left: 0; }

  .entry-hagaki-01 .flow-content-img {
    width: 70%; }

  .entry-env-01 .flow-content-img {
    width: 80%; }

  .entry-01 > .flow-content-img {
    top: 5rem;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    max-height: 31rem;
    margin: 0 auto; }

  .entry-01 > .flow-content-img img {
    object-fit: contain;
    width: 100%;
    height: 100%; }

  .entry-03 .flow-content {
    width: 50%;
    padding: 1.5rem; }

  .entry-03 .flow-content-img {
    width: 100%;
    padding: 2rem; } }
/* recipet_area */
.recipt-area {
  margin-bottom: 5rem; }

.recipt-area-title {
  background-color: #e50012;
  color: #fff;
  padding: 0.5rem 2rem;
  font-size: 2rem;
  font-weight: 600;
  text-align: center;
  width: fit-content;
  margin: 0 auto;
  margin-bottom: -7rem; }

.recipt-area-wrap {
  border: 1px solid #e50012;
  border-radius: 10px;
  display: flex;
  padding: 2rem 0.5rem;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 5rem;
  padding-top: 4rem; }

.recipt-img-title {
  background-color: #e50012;
  color: #fff;
  border-radius: 6.5rem;
  font-size: 1.2rem;
  font-weight: 600;
  text-align: center;
  display: inline-block;
  padding: 0.3rem 1.5rem; }

.recipt-img {
  display: flex;
  width: 52%;
  text-align: center; }

.recipt-img-content {
  width: 50%;
  padding: 0 0.2rem 0 0.2rem; }

.recipt-img-content p {
  font-size: 1.2rem;
  margin: 1rem 0; }

.img-long img {
  width: 100%; }

.img-multi img {
  width: 85%; }

.recipt-pg {
  width: 48%; }

.recipt-pg-large {
  font-size: 1.7rem;
  font-weight: 600;
  margin-bottom: 2rem; }

.recipt-pg-small {
  font-size: 1.2rem;
  margin-left: 1.2rem;
  width: 94%; }

.recipt-pg-small p {
  position: relative;
  margin-bottom: 0.5rem; }

.recipt-pg-small p::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -1.2rem;
  display: inline-block; }

.entry-calculation-wrapper {
  margin-top: 5rem;
  background-color: #e9e5e2; }

.entry-recipt-calculation-wrap {
  display: flex;
  padding: 2rem;
  align-items: stretch;
  justify-content: center;
  gap: 2rem; }

.entry-recipt-calculation-image {
  width: 30%; }

.entry-recipt-calculation-cation {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem; }

.entry-recipt-calculation-cation-title {
  font-size: 2rem;
  padding: 0.5rem 0.2rem;
  border-bottom: 1px solid #000;
  font-weight: 600; }

.entry-recipt-calculation-cation-price {
  font-size: 3.2rem;
  font-weight: 600; }

.entry-recipt-calculation-cation-price span {
  font-size: 1.6rem; }

.entry-line-exp {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2rem; }

.entry-line-pg {
  width: 68%;
  line-height: 1.5; }

.entry-line-pg-small {
  font-size: 1.2rem;
  margin-bottom: 2rem; }

.entry-line-pg-deadline {
  color: #06c755;
  font-weight: 600; }

.entry-line-qr {
  display: flex;
  justify-content: space-between;
  width: 32%;
  margin-left: 1rem; }

.entry-line-qr-img:nth-child(1) {
  margin-right: 0.5rem;
  width: 90%; }

.entry-line-img {
  margin-top: 3rem;
  margin-bottom: 4rem; }

.entry-line-attention-title {
  color: #06c755;
  font-weight: 600;
  text-align: center;
  font-size: 1.6rem;
  margin-bottom: 2rem; }

.entry-line-attention-pg {
  font-size: 1.2rem; }

.entry-line-attention-pg p {
  margin-left: 1.2rem;
  line-height: 1.5;
  position: relative; }

.entry-line-attention-pg p::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -1.2rem;
  display: inline-block; }

@media screen and (max-width: 900px) {
  .recipt-area {
    margin-bottom: 5rem; }

  .recipt-area-title {
    padding: 0.5rem 2rem;
    font-size: 2.2rem;
    width: fit-content;
    margin-bottom: -7rem; }

  .recipt-area-wrap {
    padding: 1rem;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column;
    margin-top: 5rem;
    padding-top: 4rem; }

  .recipt-img-title {
    border-radius: 6.5rem;
    font-size: 1.8rem;
    padding: 0.3rem 1.5rem; }

  .recipt-img {
    display: flex;
    width: 100%; }

  .recipt-img-content {
    width: 100%;
    padding: 0; }

  .recipt-img-content p {
    font-size: 2rem;
    margin: 1rem 0; }

  .img-long img {
    width: 90%; }

  .img-multi img {
    width: 80%; }

  .recipt-pg {
    width: 100%; }

  .recipt-pg-large {
    font-size: 2.4rem;
    margin-bottom: 2rem;
    text-align: center; }

  .recipt-pg-small {
    font-size: 1.6rem;
    margin-left: 1.7rem;
    width: 94%; }

  .recipt-pg-small p::before {
    left: -1.7rem; }

  .recipt-pg-small p {
    margin-bottom: 0.5rem; }

  .entry-line-exp {
    flex-direction: column;
    margin-bottom: 0; }

  .entry-line-pg {
    font-size: 2.6rem;
    width: 100%; }

  .entry-line-pg-small {
    font-size: 1.6rem;
    margin-bottom: 2rem; }

  .entry-line-qr-img:nth-child(1) {
    margin-right: 0.5rem;
    width: 90%; }

  .entry-line-img {
    margin-bottom: 3rem; }

  .entry-line-attention-title {
    font-size: 2.4rem;
    margin-bottom: 2rem; }

  .entry-line-attention-pg {
    font-size: 1.6rem; }

  .entry-line-attention-pg p {
    margin-left: 1.7rem;
    line-height: 1.5; }

  .entry-line-attention-pg p::before {
    left: -1.7rem; }

  .entry-recipt-calculation-cation-title.sp_only {
    font-size: 3.2rem;
    text-align: center;
    padding-top: 2rem;
    margin: 0 2rem 1rem;
    display: block; }

  .entry-recipt-calculation-image {
    width: 45%; }

  .entry-recipt-calculation-cation-price {
    font-size: 4.4rem; }

  .entry-recipt-calculation-cation-price span {
    font-size: 2.2rem; }

  .entry-recipt-calculation-cation figure img {
    max-width: 250px; } }
/* sec_caution */
.sec_caution {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 5rem; }

.caution-pg-first {
  margin: 2rem 0; }

.caution-pg-sup {
  margin-bottom: 3rem; }

.caution-pg-sup p {
  font-size: 1.2rem;
  margin-left: 1.2rem;
  line-height: 1.5;
  position: relative; }

.caution-pg-sup p::before {
  content: "※";
  position: absolute;
  top: 0;
  left: -1.2rem;
  display: inline-block; }

.caution-pg-list p {
  font-size: 1.6rem;
  line-height: calc(24 / 16);
  position: relative;
  margin-left: 1.6rem; }

.caution-pg-list p::before {
  content: "●";
  position: absolute;
  top: 0;
  left: -1.6rem;
  display: inline-block; }

.caution-pg-list.caution-pg-list-wt p::before {
  content: "〇"; }

@media screen and (max-width: 900px) {
  .sec_caution {
    padding: 3rem 0rem;
    width: 100%;
    max-width: none;
    margin-bottom: 0;
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    width: 100vw; }

  .sec_caution-wrap {
    padding: 0rem 3rem 1rem 3rem;
    margin: 0 auto; }

  .caution-pg-first {
    margin: 2rem 0;
    line-height: 1.5;
    font-size: 2.6rem; }

  .caution-pg-sup {
    font-size: 1.6rem;
    margin-bottom: 3rem; }

  .caution-pg-sup p {
    font-size: 1.6rem;
    margin-left: 1.7rem;
    line-height: 1.5;
    position: relative; }

  .caution-pg-sup p::before {
    left: -1.7rem; }

  .caution-pg-list {
    line-height: 1.5; }

  .caution-pg-list p {
    font-size: 2.6rem;
    line-height: 1.35;
    position: relative;
    margin-left: 2.6rem;
    margin-bottom: 0.8rem; }

  .caution-pg-list p::before {
    top: 0;
    left: -2.6rem;
    display: inline-block; } }
/* sec_privacy */
.sec_privacy {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 5rem; }

.privacy-pg {
  font-size: 1.6rem;
  line-height: calc(24 / 16); }

@media screen and (max-width: 900px) {
  .sec_privacy {
    padding: 3rem 0rem;
    width: 100%;
    max-width: none;
    margin-bottom: 0;
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    width: 100vw; }

  .sec_privacy-wrap {
    padding: 0rem 3rem 1rem 3rem;
    margin: 0 auto; }

  .privacy-pg {
    font-size: 2.6rem;
    line-height: calc(24 / 16); } }
/* sec_contact */
.sec_contact {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 5rem; }

.sec_contact-content {
  max-width: 740px;
  padding-bottom: 3rem;
  border-bottom: 1px solid #000;
  margin: 0 auto;
  margin-bottom: 3rem; }

.contact-dial {
  display: flex;
  align-items: center;
  justify-content: space-between; }

.dial-title {
  color: #fff;
  font-weight: 600;
  background-color: #000;
  display: flex;
  padding: 0.2rem 1.5rem;
  border-radius: 1.6rem;
  font-size: 1.5rem;
  height: 2.3rem;
  align-items: center;
  line-height: 1;
  width: fit-content; }

.dial-num {
  font-weight: 600;
  font-size: 4rem; }

.dial-text {
  font-size: 1.2rem;
  line-height: calc(15 / 12); }

@media screen and (max-width: 900px) {
  .sec_contact {
    padding: 3rem 0rem;
    width: 100%;
    max-width: none;
    margin-bottom: 0;
    background-color: #fff;
    margin: 0 calc(50% - 50vw);
    width: 100vw; }

  .sec_contact-wrap {
    padding: 0rem 3rem 1rem 3rem;
    margin: 0 auto; }

  .sec_contact-content {
    max-width: 100%;
    padding-bottom: 3rem;
    margin: 0 auto;
    margin-bottom: 3rem; }

  .contact-dial {
    flex-direction: column;
    align-items: center;
    justify-content: space-between; }

  .dial-title {
    border-radius: 2.6rem;
    font-size: 2.4rem;
    height: 3.6rem;
    margin-bottom: 1rem; }

  .dial-num {
    font-size: 7rem; }

  .dial-text {
    font-size: 1.6rem; } }
/* taisho */
.sec_taisho {
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  padding-bottom: 3rem; }

.sec_taisho-wrap {
  max-width: 800px;
  margin: 0 auto;
  padding-bottom: 3rem; }

.sec_taisho-wrap .title-bar {
  background-color: #44af35; }

.taisho-way-title {
  background-color: #231815;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 600;
  width: fit-content;
  margin: 0 auto;
  padding: 0.5rem 2rem;
  margin-bottom: 2rem; }

.taisho-way-title h3 {
  display: inline-block;
  font-size: 1.9rem; }

.taisho-content {
  padding: 2rem;
  background-color: #e3f3e1;
  font-weight: 600;
  line-height: 1.5;
  font-size: 1.7rem; }

.taisho-content-pg {
  margin-bottom: 2rem; }

.taisho-content-pg p {
  font-size: 1.7rem; }

.taisho-content-pg p sup {
  font-size: 0.8em;
  vertical-align: top; }

.taisho-content-pg p.taisho-content-pg-small {
  font-size: 1.2rem;
  margin-top: 1rem; }

.text_red {
  color: #e50012; }

.text_under {
  border-bottom: 1px solid #e50012;
  padding-bottom: 1px; }

.taisho-img img + img {
  margin-top: 1rem; }

/* 共通パーツ */
.sp_only {
  display: none; }

.minsp_only {
  display: none; }

.minimum_only {
  display: none; }

.micro-only {
  display: none; }

@media screen and (max-width: 900px) {
  .title-bar {
    font-size: 2.8rem;
    padding: 0.5rem 0; }

  .white-space-pc {
    white-space: normal; }

  .pc_only {
    display: none; }

  .sp_only {
    display: inline-block; }

  .sec_taisho-wrap {
    max-width: none;
    padding: 0 3rem 3rem; }

  .taisho-way-title h3 {
    font-size: 2.4rem; }

  .taisho-content {
    font-size: 2.6rem; }

  .taisho-content-pg p {
    font-size: 2.6rem; }

  .taisho-content-pg p.taisho-content-pg-small {
    font-size: 1.6rem; } }
@media screen and (max-width: 768px) {
  .minsp_none {
    display: none; }

  .minsp_only {
    display: inline-block; }

  .cau-large {
    font-size: 2.3rem; }

  .cau-small {
    font-size: 1.2rem; }

  .course-cut-first {
    padding: 0rem 0 1.5rem;
    gap: 3vw; }

  .course-cut-second {
    padding: 1.5rem 0 1.5rem;
    gap: 3vw; }

  .course-content-area {
    padding: 0; }

  .course-img {
    width: 100%;
    margin-bottom: 1rem;
    padding: 0 1rem; }

  .course-content-exp {
    margin: 1rem; }

  .course-name-main {
    font-size: 2.4rem; }

  .course-name-details {
    font-size: 2rem;
    line-height: 1.2; }

  .course-name-details li {
    padding-left: 0.8em; }

  .course-name-details li::before {
    top: 10%; }

  .products-exp {
    gap: 1rem; }

  .products-exp-img,
  .products-exp-pg {
    width: 95%; }

  .products-exp-img-sp .products-exp-pg-img img {
    width: calc(100% - 4em); }

  .products-exp-pg > p:nth-child(1) {
    font-size: 2rem; }

  .title-bar {
    font-size: 2rem; }

  .entry-line-text {
    font-size: 2rem; }

  .list-title {
    max-width: 7.5rem;
    margin-right: 0.5rem;
    font-size: 1rem; }

  .list-title-pg::before {
    left: -1rem; }

  .products-about-subjects {
    font-size: 1.6rem;
    padding: 0 3rem 0rem; }

  .entry-line-pg {
    font-size: 1.6rem; }

  .entry-line-img {
    margin-top: 1rem;
    margin-bottom: 1rem; }

  .entry-line-attention-title {
    font-size: 1.6rem;
    margin-bottom: 1.5rem; }

  .entry-line-attention-pg {
    font-size: 1.2rem; }

  .entry-line-attention-pg p {
    margin-left: 1.3rem;
    line-height: 1.5; }

  .entry-line-attention-pg p::before {
    left: -1.3rem; }

  .entry-kind-exp {
    font-size: 1.6rem; }

  .entry-kind-exp-p-02 {
    font-size: 1.2rem; }

  .entry-kind-exp .sp_small {
    font-size: 1.2rem; }

  .entry-mail-title {
    font-size: 1.2rem; }

  .flow-content-pg::before {
    width: 1.7rem;
    height: 1.7rem;
    font-size: 1.4rem;
    padding: 0;
    line-height: 1.4rem;
    margin-top: 0.5rem; }

  .entry-01 .flow-content-pg p,
  .entry-03 .flow-content-pg p {
    width: 100%;
    margin-left: 0;
    margin-top: 3rem;
    margin-bottom: 2rem;
    font-size: 1.4rem; }

  .entry-02 .flow-content-pg,
  .entry-04 .flow-content-pg {
    width: 100%;
    padding: 3rem 0;
    font-size: 1.4rem; }

  .recipt-area-title {
    font-size: 1.8rem; }

  .recipt-img-title {
    font-size: 1.2rem; }

  .recipt-img-content p {
    font-size: 1rem; }

  .recipt-pg-large {
    font-size: 1.4rem; }

  .recipt-pg-small {
    font-size: 1.2rem;
    margin-left: 1.3rem; }

  .recipt-pg-small p::before {
    left: -1.3rem; }

  .recipt-pg-small p {
    margin-bottom: 0.5rem; }

  .entry-recipt-calculation-cation-title.sp_only {
    font-size: 2.4rem; }

  .entry-recipt-calculation-wrap {
    gap: 1rem; }

  .entry-01 > .flow-content-img {
    max-height: 28rem; }

  .entry-03 .flow-content.entry-hagaki-03 {
    padding: 1.5rem 1rem 0.5rem 0; }

  .entry-03 .flow-content.entry-env-03 {
    padding: 1.5rem 0rem 0.5rem 1rem; }

  .entry-03 .flow-content-img {
    padding: 1rem; }

  .caution-pg-first {
    font-size: 1.6rem; }

  .caution-pg-sup {
    font-size: 1.2rem; }

  .caution-pg-sup p {
    font-size: 1.2rem;
    margin-left: 1.3rem; }

  .caution-pg-sup p::before {
    left: -1.3rem; }

  .caution-pg-list p {
    font-size: 1.6rem;
    margin-left: 1.6rem; }

  .caution-pg-list p::before {
    left: -1.6rem; }

  .privacy-pg {
    font-size: 1.6rem; }

  .dial-title {
    font-size: 1.6rem; }

  .dial-num {
    font-size: 5rem; }

  .dial-text {
    font-size: 1.2rem; }

  .download-area-pg-01 {
    font-size: 2rem; }

  .download-area-pg-01 br.sp_only,
  .download-area-pg-02 br.sp_only {
    display: none; }

  .download-area-pg-02 {
    font-size: 1.4rem; }

  .sec_entry,
  .sec_caution,
  .sec_privacy,
  .sec_contact {
    padding: 2rem 0rem; }

  .taisho-way-title h3 {
    font-size: 1.5rem; }

  .taisho-content {
    font-size: 1.6rem; }

  .taisho-content-pg p {
    font-size: 1.6rem; }

  .taisho-content-pg p.taisho-content-pg-small {
    font-size: 1.6rem; }

  .sec_taisho .products-about-subjects {
    padding: 0 1rem 0rem; } }
@media screen and (max-width: 720px) {
  .sec_course-wrap-01 {
    padding: 3rem 3vw 1rem; }

  .course-content-area::before {
    width: 32vw;
    height: auto;
    aspect-ratio: 441/278;
    top: 1.7em;
    font-size: clamp(1.4rem, 3vw, 2.4rem); }

  .course-name-wrapper {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    justify-content: flex-start;
    height: 2.2em;
    margin: 0; }

  .course-name {
    width: 100%;
    margin-top: 0rem;
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    padding: 0 8px; }

  .course-name::before {
    width: 1.2em;
    height: 1.2em;
    font-size: clamp(1.3rem, 3vw, 1.8rem);
    top: 1px; }

  .course-name-main {
    font-size: clamp(1.4rem, 3vw, 2.4rem); }

  .course-area-wchance .course-name-main {
    font-size: clamp(1.4rem, 3vw, 2.4rem); }

  .course-area-wchance .course-name-main .course-name-small {
    font-size: clamp(1.3rem, 3vw, 2rem); }

  .course-img {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    margin: 4.6em auto 0.5em;
    padding: 0 0.5em; }

  .course-content-exp {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    height: 8em;
    margin: 0em 1rem 1em; }

  .course-cut-03 .course-content-exp,
  .course-cut-04 .course-content-exp {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
    height: 9em; }

  .course-name-details {
    font-size: clamp(1.3rem, 3vw, 2rem);
    margin: 0 -1rem; }

  .course-cut-03 .course-name-details {
    font-size: clamp(1.1rem, 2.6vw, 2rem);
    margin: 0 -1rem; }

  .course-count {
    font-size: clamp(3.8em, calc(3.8889rem + 0.5694vw), 7em); }

  .course-content-area.course-wchance-04::before {
    width: 14.5vw;
    height: auto;
    aspect-ratio: 258 / 262;
    left: 0.5rem; }

  .course-wchance-04 .course-content-exp {
    padding-left: 18%; }

  .course-name-large::before {
    width: 12.8vw;
    height: auto;
    aspect-ratio: 162 / 116;
    top: -3.5rem;
    left: -11.5vw; }

  .course-img_sp_wrapper.sp_only {
    padding-left: 12vw; }

  .course-wchance-04 .course-count {
    font-size: clamp(5rem, 3vw, 8rem); }

  .course-name-small {
    font-size: clamp(1rem, 2vw, 1.6rem); }

  .entry-recipt-calculation-cation-price {
    font-size: 3rem; }

  .entry-recipt-calculation-cation-price span {
    font-size: 1.5rem; }

  .entry-recipt-calculation-cation figure img {
    max-width: 180px; } }
@media screen and (max-width: 450px) {
  .minimum_none {
    display: none; }

  .minimum_only {
    display: inline-block; }

  .body-inner {
    padding-left: 1rem;
    padding-right: 1rem; }

  .sec_course-wrap-01,
  .sec_products-inner,
  .sec_entry-wrap {
    padding: 1rem 1.5rem 1rem;
    margin-bottom: 1rem; }

  .sec_caution-wrap,
  .sec_privacy-wrap,
  .sec_contact-wrap {
    padding: 0rem 1.5rem 0.5rem 1.5rem; }

  .course-cut-first,
  .course-cut-second {
    gap: 1rem; }

  .course-content-area::before {
    top: 1.8em; }

  .course-name-wrapper {
    height: 2.4em; }

  .course-name {
    font-size: 1.3rem;
    width: auto;
    margin-top: 0;
    line-height: 1.16; }

  .course-name::before {
    border-radius: 50%;
    width: 1.3rem;
    height: 1.3rem;
    font-size: 1rem;
    text-align: center;
    padding: 0.1rem;
    top: 1px; }

  .course-name-details {
    font-size: 1.3rem; }

  .course-name-details li::before {
    top: 5px;
    font-size: 0.8rem; }

  .course-count {
    font-size: 4em;
    text-align: center;
    letter-spacing: -0.03em; }

  .course-wchance-04 .course-count {
    font-size: 4rem; }

  .course-wchance-04 .course-count span {
    font-size: 35%; }

  .course-name-small {
    font-size: 0.8rem; }

  .cau-large {
    font-size: 1.7rem; }

  .course-name-main {
    font-size: 1.3rem; }

  .course-area {
    margin-bottom: 1rem; }

  .course-content-area.course-wchance-04 {
    padding: 0.5rem; }

  .course-area-wchance .course-name-main {
    font-size: 1.3rem; }

  .course-area-wchance .course-name-main .course-name-small {
    font-size: 1.2rem; }

  .course-img {
    margin-bottom: 0rem;
    padding: 0 0.5rem; }

  .course-content-area.course-wchance-04::before {
    width: 6rem;
    height: 6.5rem;
    top: -1.5rem;
    left: 0.25rem; }

  .course-wchance-04 .course-img {
    width: 48%;
    margin: 0rem -0.6rem 0rem 0rem; }

  .course-wchance-04 .course-content-exp {
    padding-left: 5.5rem;
    margin: 0.5rem 0rem; }

  .course-name-large::before {
    width: 4.5rem;
    height: 3.2rem;
    top: -1.7rem;
    left: -4.2rem; }

  .course-img_sp_wrapper.sp_only {
    padding-left: 0rem;
    flex-wrap: nowrap;
    justify-content: flex-end; }

  .products-exp {
    flex-direction: column-reverse; }

  .products-exp-pg > p:nth-child(1),
  .products-exp-pg-sup {
    font-size: 1.6rem; }

  .products-list-wrap {
    padding: 1rem; }

  .list-caution {
    width: 100%; }

  .list-title {
    max-width: 6rem;
    margin-right: 0.5rem;
    font-size: 0.9rem; }

  .list-example-title {
    font-size: 1.6rem;
    padding: 0.5rem; }

  .list-examples {
    padding: 1rem 0; }

  .products-about-subjects {
    font-size: 1.2rem;
    margin-top: 1rem;
    padding: 0 1.5rem 0rem; }

  .title-bar {
    font-size: 1.6rem;
    margin-bottom: 1.5rem; }

  .entry-kind-title {
    font-size: 2rem;
    margin: 1rem auto;
    padding: 0.5rem 1.5rem; }

  .entry-line-text {
    font-size: 1.6rem; }

  .entry-line-pg,
  .entry-line-pg-small {
    font-size: 1.4rem; }

  .entry-line-pg-deadline {
    text-align: center;
    font-size: 1.6rem; }

  .entry-buttons {
    margin: 2rem auto 1.5rem; }

  .entry-line-attention-title {
    font-size: 1.4rem;
    letter-spacing: 0; }

  .entry-line,
  .entry-mail {
    margin-bottom: 3rem; }

  .entry-kind-exp {
    font-size: 1.4rem; }

  .entry-kind-exp-p-03,
  .entry-kind-exp-p-04 {
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
    letter-spacing: 0; }

  .entry-mail-title,
  .entry-mail-title {
    margin-bottom: 28rem; }

  .entry-hagaki-01,
  .entry-env-01 {
    padding-bottom: 3rem; }

  .entry-recipt-calculation-wrap {
    padding: 1rem;
    gap: 0.5rem; }

  .entry-recipt-calculation-cation {
    width: 48%; }

  .entry-recipt-calculation-cation-price {
    font-size: 2rem; }

  .entry-recipt-calculation-cation-price span {
    font-size: 0.8rem; }

  .entry-recipt-calculation-image {
    width: 50%;
    margin: 0 auto; }

  .entry-recipt-calculation-cation figure img {
    max-width: unset;
    margin: 0 auto; }

  .entry-recipt-calculation-cation figure {
    width: 80%;
    text-align: center; }

  .entry-caution-large {
    font-size: 1.9rem; }

  .sec_entry,
  .sec_caution,
  .sec_privacy,
  .sec_contact {
    padding: 2rem 0rem 0rem; }

  .caution-pg-list p {
    font-size: 1.4rem; }

  .dial-num {
    font-size: 4rem; }

  .download-area-pg-01 {
    font-size: 1.8rem;
    text-align: left; }

  .download-area-pg-02 {
    text-align: left; } }
@media screen and (max-width: 425px) {
  .course-count {
    font-size: 3em; }

  .course-wchance-04 .course-img {
    width: 40%; } }
@media screen and (max-width: 375px) {
  .micro-only {
    display: block; }

  .course-content-area.course-wchance-04::before {
    width: 6rem;
    height: 6.5rem;
    top: -2.5rem;
    left: -1.75rem; }

  .course-content-exp {
    padding: 0 0.5em;
    margin: 0.5em 0.5rem 0.5em; }

  .course-name-details {
    font-size: 1.1rem;
    margin: 0; }

  .course-img {
    margin-top: 3.6em; }

  .course-wchance-04 .course-content-exp {
    padding-left: 3.5rem; } }
@media screen and (max-width: 320px) {
  .course-name-wrapper {
    height: 1.8em; }

  .course-content-area::before {
    top: 1.4em; }

  .course-name {
    padding: 0 4px; }

  .course-name-main {
    font-size: 1rem; }

  .course-name-details {
    font-size: 1rem;
    margin: 0; }

  .course-name-details li::before {
    top: 3px;
    font-size: 0.5rem; }

  .course-cut-03 .course-name-details {
    font-size: 1rem;
    margin: 0 auto; }

  .course-exp {
    padding-bottom: 0; }

  .course-content-exp {
    margin: 0.5em 0rem;
    padding: 0 0.5em;
    height: 6em; }

  .course-cut-03 .course-content-exp,
  .course-cut-04 .course-content-exp {
    height: 8em; }

  .cau-large {
    font-size: 1.8rem; } }
