@charset "UTF-8";
/* CSS Document */

/*float*/
#float{
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: var(--wall-nvy);
  padding-bottom: calc(env(safe-area-inset-bottom) + min(15px,5vw));
  display: none;
  translate:0 0;
  transition:translate var(--transit);
  color: #fff;
}
.float-inner{
  padding: min(15px,4vw) min(15px,4vw) 0;
  text-align: center;
  gap:min(15px,3vw);
}
.float-inner .in-title{
  font-weight: 700;
  font-size: min(18px,calc(100vw/22));
  font-feature-settings: "palt";
}
.float-inner .rect-button{
  height: 3em;
  font-feature-settings: "palt";
}
.float-inner .rect-button a{
  padding-left: 1em;
  padding-right: 1em;
  font-size: min(20px,calc(100vw/22));
}
/*hum
=====================================*/
#hum-btn {
  position: fixed;
  top: 0px;
  right: 10px;
  width: min(100px, 17vw);
  aspect-ratio: 1;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
  z-index: 100;
  cursor: pointer;
}
#hum-btn button {
  width: min(48px, 10vw);
  height: 5px;
  background: var(--clr-gry);
  position: relative;
  transition: background var(--transit);
}
#hum-btn button::before, #hum-btn button::after {
  content: "";
  width: 100%;
  height: 5px;
  border-radius: 2px;
  position: absolute;
  left: 0;
  background: var(--clr-gry);
  transition: transform var(--transit);
  transform-origin: center;
}
#hum-btn button::before {
  top: -15px;
}
#hum-btn button::after {
  bottom: -15px;
}
#hum-btn.open button {
  background: none;
}
#hum-btn.open button::before, #hum-btn.open button::after {
  top: calc(50% - 2px);
  background: #fff;
}
#hum-btn.open button::before {
  transform: rotate(-45deg);
}
#hum-btn.open button::after {
  transform: rotate(45deg);
}
#l-nav {
  position: fixed;
  height: 100dvh;
  top: 0;
  right: 0;
  background: var(--wall-nvy);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 99;
  visibility: hidden;
  opacity: 0;
  translate: 100% 0;
  -webkit-transition: all var(--transit);
  -o-transition: all var(--transit);
  transition: all var(--transit);
}
#l-nav.is-view {
  opacity: 1;
  visibility: visible;
  translate: 0 0;
}
.l-nav_inner {
  width: 100%;
  min-height: 100%;
  padding: min(80px, 20vw) min(30px, 4vw);
  color: #fff;
  display: grid;
  place-content: center;
  place-items: center;
}
.l-nav_menu li a {
  font-size: min(24px, calc(100vw/15));
  text-align: center;
  display: block;
  padding: min(10px, 3vw);
  font-weight: 600;
}
.l-nav_button {
  width: min(280px, 100%);
  margin-top: min(40px, 10vw);
}
.l-nav_button .rect-button {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  height: 5em;
}
.l-nav_logo {
  width: min(280px, 100%);
  margin-top: min(50px, 10vw);
}
/*header
=====================================*/
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  background: #fff;
  height: min(100px, 17vw);
  box-shadow: 0 0 8px rgba(0, 0, 0, .15);
}
.head-inner {
  width: min(1440px, 100%);
  padding: min(15px, 4vw) min(120px, 22vw) min(15px, 2.5vw) min(20px, 4vw);
  display: grid;
  grid-template-columns: min(700px, 45%) auto;
  gap: min(20px, 4vw);
  justify-content: space-between;
  -ms-align-items: center;
  align-items: center;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media(min-width:1540px) {
  .head-inner {
    padding-right: min(20px, 4vw);
  }
}
.head-inquiry {
  font-weight: 700;
}
.head-inquiry .dial {
  
}
.head-inquiry .dial a {
  display: block;
  padding-left: 1em;
  color: var(--clr-org);
  font-weight: 700;
  font-size: clamp(1.25rem, 0.682rem + 2.84vw, 2.813rem); /*20-45*/
}
.head-inquiry .dial a::before {
  content: "";
  width: .85em;
  background: url("../images/lp202502/icon-dial.svg") no-repeat center/cover;
  aspect-ratio: 1/0.7317;
  position: absolute;
  left: 0;
  top: 50%;
  translate: 0 -50%;
}
.head-inquiry .dial .text{
  font-size: clamp(0.625rem, 0.398rem + 1.14vw, 1.25rem);
}

/*content ++++++++++++++++++++++++++++++++++++++++++++++++*/
.rect-button {}
.rect-button a {
  width: 100%;
  height: 100%;
  background: linear-gradient(#faa244 35%, #f97d2a 65%, #faa244);
  display: grid;
  place-content: center;
  font-weight: 700;
  font-size: min(24px, calc(100vw/22));
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0px 5px 4px #c65c14;
}
.cta-button-wrap .rect-button {
  width: min(485px, 100%);
  min-height: 65px;
}
/*title*/
.sec-title {
  color: var(--clr-nvy);
  font-weight: 700;
}
.sec-title .sub {
  font-size: clamp(1.125rem, 0.716rem + 2.05vw, 2.25rem); /*18-36*/
  padding-left: .5em;
  padding-right: .5em;
}
.sec-title .sub::before, .sec-title .sub::after {
  content: "";
  width: 2px;
  height: 1em;
  background: var(--clr-nvy);
  position: absolute;
  top: 50%;
  translate: 0 -50%;
}
.sec-title .sub::before {
  left: 0;
  rotate: -40deg;
}
.sec-title .sub::after {
  right: 0;
  rotate: 40deg;
}
.sec-title .main {
  font-size: clamp(1.5rem, 0.955rem + 2.73vw, 3rem); /*24-48*/
  line-height: 1.2;
}
.sec-title.cnt {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  text-align: center;
  gap: min(10px, 3vw);
}

@media(hover) {
  .rect-button:hover a {
    translate: 0 2px;
    box-shadow: 0px 3px 2px #c65c14;
  }
}

/*hero ++++++++++++++++++++++++++++++++++++++++++++*/

#hero.grid-hero {
  width: 100%;
}
.grid-hero-inner {
  width: min(1480px, 100%);
  padding-left: min(50px, 4vw);
  padding-right: min(50px, 4vw);
  margin-left: auto;
  margin-right: auto;
  padding-bottom: min(160px, 15vw);
  padding-top: min(70px,10vw);
}
.grid-hero-inner::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% 0;
  background: url("../images/lp202502/hero_pc.png") no-repeat center/cover;
}
.grid-hero-title {
  width: min(836px, 70vw);
  padding: min(80px, 10vw) min(30px, 3vw) min(50px, 6vw);
  gap: min(30px, 5vw);
  background-color: #fff;
  margin-right: auto;
}
.grid-hero-title::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/lp202502/wall-grid.png") repeat center/min(100px, calc(100vw/5));
  opacity: .75;
}
.grid-hero-title .thema {
  width: min(700px, 100%);
  background: var(--clr-nvy);
  padding: min(30px, 10vw) min(20px, 3vw) min(20px, 3vw);
  font-weight: 700;
}
.grid-hero-title .thema .tag {
  width: 5.75em;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  color: var(--clr-nvy);
  border: currentColor 2px solid;
  font-size: clamp(1.5rem, 1.477rem + 0.11vw, 1.563rem); /*16-25*/
  padding: min(12px, 3vw);
  translate: max(-15px, -3vw) -50%;
}
.grid-hero-title .thema .text {
  color: #fff;
  text-align: center;
  font-size: clamp(1.75rem, 1.432rem + 1.59vw, 2.625rem); /*28-42*/
  z-index: 1;
  text-shadow: 2px 2px 0 var(--clr-nvy), -2px 2px 0 var(--clr-nvy), 2px -2px 0 var(--clr-nvy), -2px -2px 0 var(--clr-nvy);
  line-height: calc(35/30);
}
.grid-hero-title .title {
  width: 100%;
}
.grid-hero-title .comment h3 {
  font-size: clamp(1rem, 0.909rem + 0.45vw, 1.25rem); /*16-20*/
  line-height: calc(40/28);
  font-weight: 700;
  text-align: center;
}
.grid-hero-profile {
  width: 100%;
  aspect-ratio: 1/0.7641;
  max-height: 800px;
  display: none;
}
.grid-hero-profile .catch {
  width: min(1170px, 100%);
  position: absolute;
  left: 50%;
  top: 20%;
  translate: -50% 0;
}
.grid-hero-profile .catch p {
  width: min(589px, 60vw);
}
.grid-hero-profile-detail {
  width: min(727px, 100%);
  padding: min(80px, 10vw) min(70px, 5vw) min(80px, 8vw);
  /*  aspect-ratio:1/0.4443;*/
  background: url("../images/lp202502/prof-shape.png") no-repeat center/100% 100%;
}
.grid-hero-profile-detail .in-title {
  position: absolute;
  top: 0;
  left: min(80px, 6vw);
  width: min(176px, 30%);
  translate: 0 -25%;
}
.grid-prof-head {
  color: var(--clr-nvy);
  display: grid;
  grid-template-columns: calc(clamp(1.25rem, 0.659rem + 2.95vw, 2.875rem)*2.2) auto;
  gap: min(20px, 2vw);
  font-weight: 700;
  -ms-align-items: center;
  align-items: center;
}
.grid-prof-head > p {
  font-size: clamp(1.25rem, 0.659rem + 2.95vw, 2.875rem); /*20-46*/
  letter-spacing: .1em;
}
.grid-prof-head > div {
  font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem); /*14-18*/
  line-height: calc(20/16);
  letter-spacing: .1em;
}
.grid-prof-head .name span {
  font-size: 1.6em;
  padding-left: .5em;
}
.grid-prof-comment {
  margin-top: min(20px, 3vw);
}
.grid-prof-comment p {
  line-height: calc(28/18);
}

/*CTA*/
.sec-cta-blc {
  background: var(--wall-nvy);
  color: #fff;
  padding-top: min(30px, 8vw);
  padding-bottom: min(50px, 10vw);
}
.sec-cta-blc .top-text {
  font-size: min(24px, calc(100vw/28));
  line-height: calc(32/24);
}
.cta-detail-box {
/*  width: min(900px,100%);*/
  display: grid;
  grid-template-columns:min(140px, 18vw) auto ;
  gap: min(20px, 4vw);
  margin-left: auto;
  margin-right: auto;
  -ms-align-items: center;
  align-items: center;
  justify-content: center;
}
.cta-detail-box .icon{
  grid-area: 1 / 1 / 2 / 2;
}
.cta-detail-box .thema{
  grid-area: 1 / 2 / 2 / 3;
}

.cta-detail-box .event-schedule{
  grid-area: 2 / 1 / 3 / 3; 
}

.cta-detail-box .thema dl {
  display: grid;
  font-size: clamp(0.875rem, 0.648rem + 1.14vw, 1.5rem); /*14-24*/
  grid-template-columns: 4.5em auto;
  -ms-align-items: baseline;
  align-items: baseline;
  gap: .85em min(1em,3vw);
  margin-top: min(10px,3vw);
}
.cta-detail-box .thema dl dt p {
  width: 100%;
  border: 1px solid currentColor;
  text-align: center;
  padding: 5px 3px;
}
.cta-detail-box .thema dd p {
  font-size: min(1.9167em,calc(100vw/19));
  font-weight: 600;
  line-height: 1.2;
}
.cta-detail-box .event-schedule {
  display: grid;
  grid-template-columns: 5em auto;
  -ms-align-items: baseline;
  align-items: baseline;
  font-size: min(27px, calc(100vw/20));
  justify-content: center;
}
.cta-detail-box .event-schedule dt{
  text-align: center;
}
.cta-detail-box .event-schedule dd {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap:min(10px,3vw) min(15px,3vw);
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
}
.cta-detail-box .event-schedule dd p{
  line-height: 1.2;
}
.cta-detail-box .event-schedule dd p span.date {
  font-size: min(1.5em,calc(100vw/15));
  font-weight: 600;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: .025em;
}
.cta-detail-box .event-schedule dd p span.time{
  display: inline-block;
}
.cta-button-wrap {
  margin-top: min(50px, 8vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
}
/*section profile*/
.sec-profile-blc{
  padding-top: min(100px,15vw);
  padding-bottom: min(100px,15vw);
}
.sec-profile-box{
  width: min(950px,100%);
  display: grid;
  grid-template-columns: min(400px,30vw) auto;
  gap:min(50px,5vw) min(70px,4vw);
  margin-top: min(70px,5vw);
  margin-left: auto;
  margin-right: auto;
}
.sec-profile-box .thumb::after{
  content: "";
  position: absolute;
  background:url("../images/lp202502/profile-title.svg") no-repeat center/cover;
  aspect-ratio:1/0.5455;
  width: 40%;
  top: 0;
  left: 0;
  translate:-23% -25%;
}
.sec-profile-box .detail .prof-name{
  color: var(--clr-nvy);
  font-weight: 600;
  letter-spacing: .1em;
  font-size: min(20px,calc(100vw/25));
  line-height: calc(28/20);
}

.sec-profile-box .detail .prof-name .tag span{
  display: inline-block;
}
.sec-profile-box .detail .prof-name .name span{
  font-size: 1.65em;
  padding-left: .5em;
}
.sec-profile-box .detail .in-text{
  font-size: min(18px,3.6vw);
  line-height: calc(28/18);
  margin-top: min(25px,6vw);
}
/*feature*/
.sec-seminar-feature {
  padding-top: min(100px, 12vw);
  padding-bottom: min(100px, 12vw);
}
.sec-seminar-feature::before {
  content: "";
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0;
  translate: -50% 0;
  background: url("../images/lp202502/wall-grid.png") repeat center/min(100px, calc(100vw/5));
  opacity: .25;
}
.seminar-feature-box {
  margin-top: min(70px, 10vw);
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: min(40px, 8vw);
}
.seminar-contents-list {
  counter-reset: count 0;
}
.seminar-contents-list > li:not(:first-child) {
  margin-top: min(30px, 5vw);
}
.seminar-contents-list > li{
  padding-left: 1.8em;
  display: grid;
  grid-template-columns: 1fr;
  gap:min(20px, 3vw);
  
}
.seminar-contents-list > li .list-title {
  font-size: min(24px, calc(100vw/25));
  font-weight: 700;
  line-height: calc(30/24);
}
.seminar-contents-list > li::before {
  counter-increment: count 1;
  content: counter(count)'.';
  position: absolute;
  left: 0;
  top: 0;
  font-size: min(24px, calc(100vw/25));
  font-weight: 700;
  line-height: calc(30/24);
}
.seminar-contents-list > li .comment {
}
.seminar-contents-list > li .comment p {
  line-height: calc(24/16);
}
.seminar-feature_detail {
  background: #fff;
  width: 100%;
  border: 1px solid #bfbfbf;
}
.seminar-feature_detail > div {
  display: grid;
  grid-template-columns: 12em auto;
  line-height: calc(24/16);
}
.seminar-feature_detail > div:not(:last-child) {
  border-bottom: 1px solid #bfbfbf;
}
.seminar-feature_detail dt {
  background: #fbfbfb;
  padding: min(10px, 2vw) min(18px, 4vw);
}
.seminar-feature_detail dd {
  padding: min(10px, 3vw) min(20px, 4vw);
  border-left: 1px solid #bfbfbf;
}
.seminar-feature_detail dd.date{
  gap:5px min(1em,3vw);
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
/*アドバイス*/
.sec-advice-blc {
  padding-top: min(100px, 12vw);
  padding-bottom: min(170px, 17vw);
}
.sec-advice-box {
  margin-top: min(70px, 8vw);
  padding-left: min(50px, 4vw);
  padding-right: min(50px, 4vw);
}
.advice-item > div::after {
  content: "";
  position: absolute;
  width: min(120px, 13vw);
  aspect-ratio: 1;
  border-radius: 100vmax;
  overflow: hidden;
  bottom: 0;
  translate: 0 50%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: var(--imgLink);
}
.advice-item {
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: flex-start;
  align-items: flex-start;
  gap: min(50px, 8vw);
}
.advice-item:not(:first-child) {
  margin-top: min(80px, 10vw);
}
.advice-item > div.ans {
  margin-left: auto;
}

.advice-item > div.que::after {
  left: max(-50px, -6vw);
}
.advice-item.item01 > div.que::after{
  --imgLink: url("../images/lp202502/icon_voice01.png")
}
.advice-item.item02 > div.que::after{
  --imgLink: url("../images/lp202502/icon_voice02.png")
}
.advice-item.item03 > div.que::after{
  --imgLink: url("../images/lp202502/icon_voice03.png")
}
.advice-item.item04 > div.que::after{
  --imgLink: url("../images/lp202502/icon_voice04.png")
}
.advice-item > div.ans::after{
  right: max(-50px, -6vw);
  --imgLink: url("../images/lp202502/icon_tanaka.png");
}

.advice-item > div .comment {
  width: min(772px, 80vw);
  border: 2px solid var(--box-clr);
  border-radius: min(15px, 5vw);
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  -o-flex-direction: column;
  flex-direction: column;
  -ms-align-items: center;
  align-items: center;
  padding: min(30px, 6vw) min(20px, 3vw) min(20px, 4vw);
  line-height: calc(32/18);
}
.advice-item > div.que .comment > * + * {
  margin-top: min(15px, 3vw);
}
.advice-item > div.que .comment > * {
  width: min(550px, 100%);
}
.advice-item > div.ans .comment > * {
  width: min(620px, 100%);
}
.advice-item > div.ans .comment > * + *{
  margin-top: min(30px, 5vw);
}
.advice-item > div.ans .comment strong{
  font-weight: 700;
}
.advice-item .comment .in-title {
  font-weight: 700;
  font-size: min(22px, 4.2vw);
  line-height: calc(30/22);
}
.advice-item .que {
  color: var(--txt-clr);
}
.advice-item:nth-child(odd) .que {
  --box-clr: #fa713b;
  --txt-clr: #e2714d;
}
.advice-item:nth-child(even) .que {
  --box-clr: #f7b467;
  --txt-clr: #c79254;
}
.advice-item > div.ans {
  --box-clr: var(--wall-nvy);
}
.advice-item .ans .in-title {
  color: var(--clr-nvy);
}
.advice-item .ans .sub-title {
  font-weight: 700;
  line-height: 1.4;
}

.acd-comment .box-text{
  overflow: hidden;
  height: 6em;
  transition:all var(--transit);
}
.acd-comment .box-text::after{
  content: "";
  width: 100%;
  height: 2.5em;
  background: linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,1) 80%);
  position: absolute;
  bottom: 0;
  left: 0;
  transition:opacity var(--transit);
}
.acd-read-more{
  color: var(--wall-nvy);
  margin-top: 5px;
  font-weight: 600;
}
.acd-read-more span{
  border-bottom: 1px solid currentcolor;
}
.acd-comment .box-text.open::after{
  opacity: 0;
}
/*footer
=====================================*/
.foot-nav {
  padding-top: min(20px, 4vw);
  padding-bottom: min(20px, 4vw);
  gap: .5em 1em;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}
.foot-nav::before {
  content: "";
  width: 100vw;
  height: 100%;
  background: var(--wall-blue);
  position: absolute;
  left: 50%;
  top: 0;
  translate: -50% 0;
}
.foot-nav li a {
  font-size: min(14px, 3.2vw);
}
/*responsive ++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media(max-width:768px) {

  #float.is-fit{
    translate:0 100%;
  }
  
  .head-inner{
    grid-template-columns: min(700px, 100%) auto;
  }
  .head-inquiry{
    display: none;
  }
  .grid-hero-inner{
    padding-top: min(20px,5vw);
    padding-bottom: min(40px,5vw);
  }
  .grid-hero-inner::before{
    background-image: url("../images/lp202502/hero_sp.png");
  }
  .grid-hero-title{
    width: 100%;
  }
  .grid-hero-profile{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: flex-end;
    align-items: flex-end;
    justify-content: flex-start;
  }
  .grid-prof-comment p {
    font-size: min(14px, calc(100vw/30));
  }
  .event-schedule > div.date{
    -ms-align-items: flex-start;
    align-items: flex-start;
  }
  .sec-profile-blc{
    display: none;
  }
}
@media(max-width:600px) {
  .grid-hero-title .thema .tag {
    padding-top: min(10px, 2vw);
    padding-bottom: min(10px, 2vw);
  }
  .grid-hero-title .comment h3 {
    font-size: calc(100vw/29.5);
  }
  .grid-prof-head > div, .grid-prof-comment p {
    font-size: calc(100vw/38);
  }
  .grid-hero-profile {
    aspect-ratio: 1;
  }
  .cta-detail-box .event-schedule{
    grid-template-columns: 2em auto;
    gap:1em;
  }
  .cta-detail-box .event-schedule dd{
    grid-template-columns: 1fr;
  }
}
@media(max-width:480px) {

  .cta-detail-box .thema {
    grid-template-columns: 1fr;
    justify-items: start;
  }
  .cta-detail-box .thema dt p {
    padding-left: 1em;
    padding-right: 1em;
  }
  .sec-cta-blc .top-text{
    font-size: min(24px, calc(100vw/33));
    text-align: center;
  }
  .event-schedule div.date dd{
    grid-template-columns: 1fr;
    font-size: min(28px, calc(100vw/17))
  }
  
  .advice-item > div::after{
    width: min(120px, 16vw);
    translate: 0 45%;
  }
  .advice-item > div .comment{
    width: 100%;
  }
  .advice-item > div.que .comment{
    padding-left: min(30px,10vw);
  }
  .seminar-feature_detail > div{
    grid-template-columns: 1fr;
  }
  .seminar-feature_detail dd{
    border-top:1px solid #bfbfbf;
    border-left: none;
  }
  
}