@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ LP-オブザーブ
*/

/* SP表示 */
.sp_only480 { display:none!important; }
.pc_only480 { display:block!important; }

/* 480px以下 */
@media (max-width:480px){
.sp_only480{display:block!important;}
.pc_only480{display:none!important;}
}

/* ------------------------------
  header common
------------------------------ */
#lp-content .post_content{
font-size: clamp(16px, 2vw, 18px) !important;
  letter-spacing: .1em;
}
.post_content h2 {
	margin: 0em 0 1em;
}
h3:before {
  background:none!important;
}
ul {
  list-style: none!important;
  padding: 0 !important;
}
.mb10 {
  margin-bottom: 10px;
}
.mv-bottom {
  border-top:6px #418ccf solid;
  padding-top:.3em!important;
  background-color:#62d7ff;
}

.lp-head {
  background-color: #0d487d;
  padding: 1.5em 0 .5em !important;
}
.lp-head h1 {
  color:#fff;
  font-size: clamp(1.5rem, 1.378rem + 0.61vw, 1.875rem) !important;
  letter-spacing: .1em;
  margin-bottom:0;
}
.lp-head .-in {
  max-width:700px;
  text-align: center;
  margin: auto;
}

.mask-image figure {
  object-fit: cover;
  border-radius: 30px;
  overflow: hidden;
  display: block;
}
/*ページ内のボタン*/
.in_btn .wp-block-button__link {
  padding: 10px;
  font-size: clamp(15px, 2vw, 16px);
  background: linear-gradient(90deg, #7DD9FA 0%, #3bb3e6 50%, #0A82CB 100%);
}
.lp_h2 {
  position: relative;
  padding: 0em .5em .1em;
  letter-spacing: 0.06em !important;
  margin-bottom: 2rem !important;
  font-size: clamp(24px, 2vw, 30px) !important;
}
.lp_h2:before {
  position: absolute;
  content: "";
  top:100%;
  left: 0;
  width: 100%;
  height: 8px;
  background: linear-gradient(to right, #56b0ff 0%, #f5d35f 100%);
  transform: skewX(-15deg);
  border-radius: 8px;
}


/*ここからコンテンツ*/
.mv {
  letter-spacing: .1em;
  font-weight:500;
	padding-top: 5em !important;
  padding-bottom: 3em!important;
}
.mv h1 {
  color: #307cd3;
  margin-bottom: .5rem !important;
  font-size: clamp(20px, 2vw, 26px);
}
.mv h2 {
  padding:0!important;
	margin-top: 0;
  margin-bottom: 1rem !important;
  font-size: clamp(1.5rem, 1.378rem + 0.61vw, 1.875rem) !important;
}
.mv p {
  padding:1rem 0;
}
.mv .date {
  font-size: clamp(17px, 2vw, 20px);
  font-weight: 600;
  background: linear-gradient(-45deg, transparent 25%, #d2e4f3 25%, #d2e4f3 50%, transparent 50%, transparent 75%, #d2e4f3 75%, #d2e4f3);
  background-size: 6px 6px;
  padding: 1rem 1rem 1rem 2rem;
	color:#10497c;
}
.mv .date .swl-inline-icon:after {
    background: #418ccf;
}
.mv .intro_theme {
  padding: 0rem 3rem 0 3rem;
}
.mv .intro_theme p {
  padding:0;
}

.wrap1 {
  padding-bottom:0rem !important;
}
.wrap1 .sem-details,
.wrap1 .sem-price,
.wrap1 .sem-schedule {
  padding-right:2rem;
  padding-left:2rem;
}
.wrap1 .kaijou {
  background-color: #f5d35f;
  padding: 8px 16px;
  margin-bottom: .8em;
  width: 130px;
  border-radius: 10px;
  letter-spacing: .1em;
  font-size: clamp(20px, 2vw, 22px);
}
.wrap1 .sem-details .date,
.wrap1 .sem-details .place {
  font-size: clamp(20px, 2vw, 22px);
margin-bottom: .5em;
	padding: 0 .8em;
}
.wrap1 .sem-details span,
.wrap1 .date span {
	color:#7275cf;
	margin-right:.3em;
}
.wrap1 .place img {
	margin-right:.7em;
}
.wrap1 .col2 {
  background: #f5f8fb;
  border-radius: 15px;
  padding: 1rem 1rem;
}
.wrap1 .place {
font-size: clamp(18px, 2vw, 22px);	
}
.wrap1 .place img {
  vertical-align: sub;
}
.wrap1 .sem-price h2 {
  font-size: clamp(19px, 2vw, 22px);
}
.wrap1 .sem-price p {
  font-size: clamp(14px, 2vw, 16px);
}
.wrap1 .sem-schedule-wrap {
  padding-top: 3rem !important;
}
.wrap1 .sem-schedule p {
  line-height: 1.8;
}

.wrap2 {
  padding-bottom: 6rem !important;
}
.wrap2 h2 {
  font-size: clamp(1.5rem, 1.378rem + 0.61vw, 1.875rem) !important;
  margin-bottom: 0.5em;
}
.wrap2 h3, .wrap8 h3, .wrap9 h3 {
  margin-bottom: 0.5em !important;
  font-size: clamp(20px, 2vw, 22px) !important;
}

.wrap2 .voice-wrap .swell-block-dl__dd {
    margin-left: 0em;
	    padding: .5em;
	font-size: clamp(15px, 2vw, 16px);
}

.wrap3 {
padding-bottom: 2em !important;	
}
.wrap3 .manabi {
  background-color: #fff;
  border-radius: 20px;
  text-align: center;
  margin: auto;
  padding:1.8rem 2.4rem 1rem;
  line-height: 1.8;
  max-width: 700px;
}
.wrap3 .manabi h2 {
  font-size: clamp(20px, 2vw, 22px);
  margin-bottom: 1em;
}
.wrap3 .manabi li {
  margin-top:0;
  margin-bottom: 1em;
  padding-left: 2em;
  text-indent: -1.5em;
  line-height: 1.8;
  font-weight: 300;
  text-align: left;
}
.wrap3 .manabi li .icon-pen:before {
  padding-right: 10px;
color:#418ccf;
}

.wrap4 h2 {
  font-size: clamp(24px, 2vw, 30px)!important;
}
.wrap4 p, .wrap6 p, .sem-schedule .txt {
  line-height: 1.8;
}
.wrap4 li {
margin-bottom: .8em;
}

.block6-in {
  border-radius: 20px;
  border: 4px solid #F7F7F7!important;
  background: #ECF0F4;
  padding: .1rem .5rem .5rem;
}
.block6-in .swell-block-box-menu__text{
  line-height: 1.5;
  font-size: 16px;
}

.wrap5 .mask-image  {
max-width: 260px;
text-align: center;
margin: 0px auto 20px;
}
.wrap5 .-in, .wrap7 p, .wrap8 p, .wrap9 .message, .wrap9 .-in {
  padding-right:2rem;
  padding-left:2rem;
}
.wrap5 li, .wrap5 p {
	margin-top: 0;
  margin-bottom:1em;
font-size: clamp(15px, 2vw, 16px);
}
.wrap5 .swell-block-columns__inner {
  row-gap: 0rem;
}
.wrap5 .gest_name {
  font-size: clamp(20px, 2vw, 22px);
  text-align: center;
}
.wrap5 .gest2 {
margin-top: 4rem;	
}
.wrap5, .wrap9 {
	background-color: rgba(236,240,244,0.5)!important;
}
.wrap6 {
  padding-bottom:8rem !important;
}
.wrap6 .col3-in h3 {
  color: #307cd3;
  font-size: clamp(18px, 2vw, 19px);
  margin-top: .8em;
  padding: 0;
  margin-bottom: .5em;
  text-align: center;
	line-height: 1.8;
}
.wrap6 .col3-in .txt {
  font-size: clamp(15px, 2vw, 16px); 
}
.wrap6 .h2-observe {
  font-size: clamp(20px, 2vw, 22px);
}
.wrap6 .h2-observe img {
  vertical-align: bottom;
}
.wrap6 .has-border.-border04 {
background-color: #f7f7f7;
}
.wrap6 .has-border.-border04 p {
  line-height: 1.8;
  font-size: clamp(15px, 2vw, 16px); 
}
.wrap7 {
  padding-bottom:6rem !important;
}
.wrap7 p, .wrap8 .-in  {
  line-height: 1.8;
  font-weight: 500;
}
.wrap8 p, .wrap9 .message {
  line-height: 1.8;
}
.wrap8 .in-2 {
  padding-top: 3rem;
}
.wrap8 .in-2 h2 {
  font-size: clamp(20px, 2vw, 22px)!important;
}
.wrap8 .in-2 img {
  padding:1rem 2rem 2rem;
}

.wrap9 .message {
  font-weight: 500;
	font-size: clamp(16px, 2vw, 18px)!important;
}
.wrap9 .-in {
  font-size: clamp(15px, 2vw, 16px);
}


/* ------------------------------
   SP / PC 表示切り替え
------------------------------ */
@media (max-width: 1024px) {
.mv, .wrap1, .wrap2, .wrap3, .wrap4, .wrap5, .wrap6, .wrap7, .wrap8, .wrap9 { 
  padding-right:2rem;
  padding-left:2rem;
}
	.mv {
    padding-top: 4em !important;
	}
.mv .flag-box img {
  width: 100%;
  object-fit: cover;
  height: 220px!important;
}
}

@media (max-width: 820px) {
.mv .intro_theme {
  padding: 0rem 1rem 0 1rem;
}
.wrap1 .sem-details, .wrap1 .sem-price, .wrap1 .sem-schedule {
  padding-right: 1rem;
  padding-left: 1rem;
}
.wrap1 .sem-details .date,
.wrap1 .sem-details .place{
padding: 0em;
}
.wrap8 .in-2 img {
  padding:1rem 0rem 2rem;
}
}

@media (max-width: 768px) {
.wp-block-columns .wp-block-column {
   margin: auto!important;
}
.mv {
  padding-top: 3em !important;
}
.mv .flag-box img {
  height: 160px!Important;
}
.wrap5 .-in, .wrap7 p, .wrap8 p, .wrap9 .message, .wrap9 .-in {
    padding-right: 1rem;
    padding-left: 1rem;
}
.wrap6 .col3-in .txt {
  text-align: left;
}
.block6-in {
  padding:0;
}
}

@media (max-width: 480px) {
.lp-head .-in {
    display: inline-block;		
}
.lp-head .l-article {
text-align: center;	
}
.lp-head .-in img {
	height: 50px!important;
}	
.mv {
padding-top: 2em !important;		
}
.mv h2 {
	margin-bottom: 1.5rem !important;
	line-height: 1.8;
}
.mv p {
    padding: 0;
}	
.mv .date {
	padding: 1rem 1rem 1rem 1rem;
}
.mv .l-article, .wrap1 .l-article, .wrap2 .l-article, .wrap3 .l-article, .wrap4 .l-article, .wrap5 .l-article, .wrap6 .l-article {
  padding-left: 0;
  padding-right: 0;
}
.intro_theme {
  display:block;
}
.mv .intro_theme p {
  margin-bottom: 2rem !important;		
}
.intro_theme img, .wrap4 img {
  height:160px;
}
.mv .intro_theme {
  padding: 0;
}
.wrap1 .sem-details, .wrap1 .sem-price, .wrap1 .sem-schedule,
.wrap5 .-in, .wrap7 div, .wrap7 p, .wrap8 div, .wrap8 p, .wrap9 div, .wrap9 .message, .wrap9 .-in {
  padding-right: 0rem;
   padding-left: 0rem;
}
.wrap3 .manabi {
  padding: 1.5rem 1rem 1rem;
  text-align: left;
}
.wrap4 {
  padding-bottom: 2em !important;
}

.wrap2 {
  padding-right: 1rem;
  padding-left: 1rem;
}
.block6-in .swell-block-box-menu__text {
  font-size: 14px;
}
.wrap5 .mask-image, .wrap9 .mask-image {
width: 200px;
}
.wrap2 .has-border.-border04,
.wrap6 .has-border.-border04 {
padding: 1.5rem 1rem;
}
.wrap6 {
  padding-bottom: 6rem !important;
}
.wrap6 .h2-observe img {
	float: inline-end;
}
.wrap8 p {
text-align: left;
}
.wrap9 .is-style-stitch {
  text-align: left;
}
.wrap9 h3 {
text-align: center;
}
.wrap9 .-in .swell-block-columns__inner {
flex-direction: column-reverse;
}
}



/* ------------------------------
   固定申し込みボタン
------------------------------ */
 .fixed-cta{
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  padding: 12px;
  background: rgba(255,255,255,0.95);
  box-shadow: 0 -2px 10px rgba(0,0,0,0.08);
  z-index: 9999;
} 

.cta-note {
  text-align:center;
  font-size:13px;
  font-weight:700;
  color:#0A82CB;
  margin-bottom:6px;
}
.fixed-cta__btn{
  display:block;
  max-width:500px;
  margin:auto;
  padding:10px;
  text-align:center;
  font-weight:700;
  font-size:18px;
  color:#fff;
  text-decoration:none;
  background: linear-gradient(90deg,#7DD9FA 0%, #3bb3e6 50%, #0A82CB 100%);
  border-radius:40px;
  text-shadow:0 1px 2px rgba(0,0,0,0.25);
   box-shadow:
  0 6px 16px rgba(10,130,203,0.35),
  0 0 0 4px rgba(125,217,250,0.25);
/* animation: cta-pulse 2.5s infinite; */
}

@media (max-width: 480px) {
.lp-head figure {
	 float:none!important;
    display:block!important;
    margin:20px auto!important;	
	}
.fixed-cta__btn{
	max-width:320px;
    padding: 8px;
	box-shadow:
  0 0 0 4px rgba(125,217,250,0.25);
}
.cta-note {
	margin-bottom: 3px;
}
.fixed-cta {
	padding: 8px 10px 10px;
}
}
/*
@keyframes cta-pulse{
  0%{
    transform:scale(1);
    box-shadow:
    0 6px 16px rgba(10,130,203,0.35),
    0 0 0 0 rgba(125,217,250,0.45);
  }

  70%{
    transform:scale(1.03);
    box-shadow:
    0 10px 20px rgba(10,130,203,0.45),
    0 0 0 12px rgba(125,217,250,0);
  }

  100%{
    transform:scale(1);
  }
}*/
