
			.top-height {
	height:400px
}

.pos-top .p-postList__item{
	background-color:#121723;
	padding:0px!important;
	border-radius:20px;
	color:#fff!important;
	width:49%
}
/* 画像ラッパーを基準にする */
.-col4 .p-postList__thumb,
.c-postThumb__figure {
  position: relative;
  overflow: hidden;
}
.-col4 .p-postList__cat {
	background-color:#FF2D55;
	color:#fff;
	padding:5px;
	border-radius:6px;
	padding-left:15px;
	padding-right:15px
}
.sp-phone {
    position: relative;
    width: 200px;
    margin-bottom: 0px;
	margin: 0 auto;
}
.sp-full .slide img {
	padding-right:15px!important
}

/* カラーカバー本体 */
.-col4 .c-postThumb__figure::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  opacity: 0.55;
}

/* 画像は下に */
.-col4 .c-postThumb__img {

  z-index: 1;
}

/* ===== 色分け ===== */

/* 1つ目 */
.-col4 .p-postList__item:nth-child(1) .c-postThumb__figure::after {
  background: rgba(120, 20, 20, 0.7);
}

.-col4 .p-postList__item:nth-child(2) .c-postThumb__figure::after {
  background: rgba(20, 40, 120, 0.7);
}

.-col4 .p-postList__item:nth-child(3) .c-postThumb__figure::after {
  background: rgba(20, 120, 60, 0.7);
}

.-col4 .p-postList__item:nth-child(4) .c-postThumb__figure::after {
  background: rgba(120, 80, 20, 0.7);
}

.-col4 .p-postList__item:nth-child(5) .c-postThumb__figure::after {
  background: rgba(80, 20, 120, 0.7);
}

.-col4 .p-postList__item {
	position:relative;
	border-radius:30px!important
}
.-col4 .p-postList__thumb {
	box-shadow:none;
}
.-col4  .p-postList__body {
	position:absolute;
	bottom:0px;
	padding:10px;
	color:#fff!important;
	font-weight:700;
}
.-col4 .c-postThumb__figure {
	height:300px;
	border-radius:14px
}
.-col4 .icon-folder:before {
   display:none;
}
.-col4 .p-postList__cat  {
	position:absolute;
	z-index:1;
	bottom:85px;
	padding:5px;
	font-weight:700;
	font-size:11px;
	left:10px
}
/* 投稿リストブロックのカード型とサムネイル型を4列表示にする */
@media (min-width: 960px) {
  .-col4 .-type-card.-pc-col3 .p-postList__item, .-col4 .-type-thumb.-pc-col3 .p-postList__item{
    width: calc(100% / 5);
  }
}
.creators-template-default #content {
	padding-bottom:2em;
}
.fade-in {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.6s ease, transform 0.8s ease;
}

.fade-in.is-show {
  opacity: 1;
  transform: translateY(0);
}

.carten {
  position: relative;
  display: inline-block;
  overflow: hidden;

  color: transparent;
}

/* テキスト表示 */
.carten.is-show {
  animation: textReveal 0.4s ease forwards;
  animation-delay: 0.4s;
}

/* 緑の幕 */
.carten::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #42E9AB;
  transform: translateX(-100%);
}

/* 幕アニメーション */
.carten.is-show::before {
  animation: curtainOpen 0.8s ease forwards;
}

@keyframes curtainOpen {
  0% {
    transform: translateX(-100%);
  }
  50% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}

@keyframes textReveal {
  to {
    color: inherit!important;
  }
}

.post-template-default #content {
padding-top:4em;
	padding-bottom:4em
}
.pos-top .p-postList.p-postList {
	gap:25px
}
.pos-top .p-postList__body {
  display: flex;
  flex-direction: column;
}
.id_18 .p-postList__body {
  display: flex;
  flex-direction: column;
}

.pos-top .p-postList__times {
	margin:0px;
}
 
.id_18 .p-postList__meta {
  order: -1; /* 上に持ってくる */
  margin-bottom: 0px;
	justify-content:start;
	padding-bottom:20px
}
.id_18 .p-postList__cat {
	background-color:#FF2D55;
	color:#fff;
	padding:5px;
	font-weight:500;
	border-radius:6px;
	padding-left:15px;
	padding-right:15px
}
.pos-top .p-postList__meta {
  order: -1; /* 上に持ってくる */
  margin-bottom: 0px;
	justify-content:start;
	padding-bottom:20px
}

.pos-top .p-postList__cat {
	background-color:#42E9AB;
	color:#000;
	padding:5px;
	font-weight:500;
	border-radius:6px;
	padding-left:15px;
	padding-right:15px
}
.pos-top .p-postList__body {
	padding:35px
}

.pos-top .p-postList__title {
	font-size:24px;
	margin-bottom:20px;
}
.pos-top .c-postTimes__posted {
	display:none;
}
.top #content {
    padding-top: 0em;
} 
.l-content {
    margin: 0 auto 0em;
}
.page-id-14 #breadcrumb {
		display:none;
}
.page-id-16 #breadcrumb {
		display:none;
}
.l-mainContent__inner>.post_content {
    margin: 0em 0;
}
.page-id-14 .c-pageTitle {
	display:none;
}
.page-id-16 .c-pageTitle {
	display:none;
}
.page-id-20 .p-breadcrumb {
	display:none;
}
.page-id-14 .l-content {
        padding-top: 0em;
    }
.page-id-16 .l-content {
        padding-top: 0em;
    }


.kv-title {
	font-size:72px!important;
	letter-spacing:-1px!important;
	line-height:1.4
}
.kv-text {
	font-size:20px;
}
.banner {
    position: absolute;
    bottom: 325px;
    left: 0;
    width: 54%;
}
td {
	padding:14px!important
}
.banner img {
	height:92px
}
.group {
	position:relative
}
.page-id-20 .c-pageTitle {
	display:none;
}
.page-id-20 .l-content {
        padding-top: 0em;
    }
.id_18 .c-pageTitle {
	display:none;
}
.pos .p-postList__body {
  display: flex;
  flex-direction: column;
}
.p-postList__meta :before {
    margin-right: .25em;
	display:none
}
.footer-col p {
	font-family: "Bebas Neue", sans-serif;
	font-size:23px;
	letter-spacing:1px
}
.logo-1 {
	width:120px;

}
.footer-logo {
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 2px;
    margin-bottom: 0px!important;
}
.footer-col ul {
	padding-left:0px;
}
.u-thin {
    opacity: 1!important;
}
.pos .p-postList__cat {
	background-color:#FF2D55;
	color:#fff;
	padding:5px;
	border-radius:6px;
	padding-left:15px;
	padding-right:15px
}
.c-postTimes__posted {
	font-size:16px;
	color:#000000
}
.pos .p-postList__meta {
  order: -1;   /* ← これで一番上 */
  margin-bottom: 0px;
}
.c-gnav a {
	font-weight:bold;
	font-size:16px
}
.c-gnav>.menu-item>a .ttl {
    display: block;
    font-size: 16px;
}
.-type-list .p-postList__link {
	border:solid 1px #D9D9D9;
		padding:20px;
	border-radius:30px;
	gap:40px;
	justify-content: space-around;
	align-items:center;
}
.-type-list .p-postList__thumb {
	width: 25%;
	border-radius:20px;
}
.-type-list .p-postList__body {
	width:70%
}
.bebas {
	 font-family: "Bebas Neue", sans-serif;
}
.page-id-20 .l-mainContent__inner>.post_content {
    margin: 0em 0;
    padding: 0 var(--swl-pad_post_content, 0);
}
.number-text {
	font-size:32px;
	 font-weight:600;
	letter-spacing:0.9px;
}
.number-text strong {
	font-size:64px;
		 font-weight:400;
	 font-family: "Bebas Neue", sans-serif;
	line-height:1.4
}
.h2-title {
	font-size:48px!important;
	letter-spacing:-0.25px!important;
}
.h3-title {
	font-size:32px!important;
	letter-spacing:-0.25px!important;
}
.h4-title {
	font-size:28px!important;
	letter-spacing:-0.25px!important;
}
.mark_yellow {
    background: -webkit-linear-gradient(transparent 64%, var(--color_mark_yellow) 0%);
    background: linear-gradient(transparent 64%, #FFD82D 0%);
}
.en-title {
	font-size:32px;
	letter-spacing:2px;
	line-height:1.2
}

.servide-culum {
	padding:12px!important;
	padding-top:20px!important;
	padding-bottom:15px!important;
	border-radius;10px!important
}
.wp-block-columns .servide-culum {
	border-radius:0px 0px 16px 16px
}
.contact-culum {
	border-radius:40px;
	
}

/* ===== Contact Form 7 Custom ===== */
.cf7-custom-form {
  padding: 40px;
  max-width: 760px;
  margin: 0 auto;
  border-radius: 12px;
  font-family: "Noto Sans JP", sans-serif;
}

/* 行 */
.cf7-custom-form .form-row {
  margin-bottom: 28px;
}

/* ラベル */
.cf7-custom-form .form-label {
  display: block;
  font-weight: 700;
  margin-bottom: 10px;
  color: #222;
}

/* radio */
.cf7-custom-form .radio-group {
  display: flex;
  gap: 24px;
}

.cf7-custom-form input[type="radio"] {
  margin-right: 6px;
}

/* input / textarea */
.cf7-custom-form input[type="text"],
.cf7-custom-form input[type="tel"],
.cf7-custom-form input[type="email"],
.cf7-custom-form textarea {
  width: 100%;
  padding: 16px 18px;
  border-radius: 12px;
  border: 2px solid #333;
  background: #eef9f7;
  font-size: 15px;
  box-sizing: border-box;
}

.cf7-custom-form textarea {
  min-height: 200px;
  resize: vertical;
}

/* placeholder */
.cf7-custom-form ::placeholder {
  color: #666;
}

/* privacy text */
.cf7-custom-form .privacy-text {
  font-size: 13px;
  color: #333;
  margin-top: 20px;
}

/* submit */
.cf7-custom-form .submit-wrap {
  text-align: center;
  margin-top: 40px;
}

.cf7-custom-form input[type="submit"] {
  background: transparent;
  border: 2px solid #124538;
  color: #124538;
  font-size: 16px;
  padding: 14px 60px;
  border-radius: 999px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.cf7-custom-form input[type="submit"]:hover {
  background: #79c7b7;
  color: #fff;
}
.wpcf7-form-control-wrap {
    position: relative;
    width: 100%;
}
.form-label {
	width:24%
}
.form-row p {
	display:flex;
	gap:30px
}
.form-row br {
	display:none;
	
}
.wpcf7-spinner {
	display:none;
}

.main-caption {
    font-size: 32px;
    font-weight: 900;
    letter-spacing: 0.16rem;
    position: relative;
    text-align: center;
	margin-bottom:0px
}
.main-caption._contact::after {
    content: "CONTACT";
}
.main-caption span {
    display: block;
    position: relative;
    z-index: 2;
}
.main-caption::after {
    color: #30B49F;
    display: block;
    position: absolute;
    top: 1px;
    right: 0;
    left: 4px;
    margin-inline: auto;
    z-index: 1;
}
.main-title {
    font-size: 15px;
    margin-top: 0px;
    margin-bottom: 24px;
    text-align: center;
	font-weight:bold
}
#top_title_area {
		height:400px
	}
@media (max-width: 768px)  {
	#top_title_area {
		height:390px!important
	}
	.top-height {
	height:390px
}
	.h2-title {
	font-size:28px!important;
	letter-spacing:-0.25px!important;
}
	#top_title_area {
		height:340px
	}
.h3-title {
	font-size:22px!important;
	letter-spacing:-0.25px!important;
}
.h4-title {
	font-size:24px!important;
	letter-spacing:-0.25px!important;
}
	.form-row p {
	display:block!important;
	gap:30px
}
	.img-kv {
		margin-right:0px!important;
		padding-left:10px;
	}
	.kv-group {
		display: flex;
    align-items: baseline;
	}
	.kv-title {
	font-size:40px!important;
	letter-spacing:-1px!important;
	line-height:1.4
}
	.banner {
    position: absolute;
    bottom: 235px;
    left: 0;
    width: 93%;
}
	.suma img {
		width:50%!important;
	}
	.tekt-fv {
		padding:10px
	}
	
	.sumaho {
		position:absolute;
		width:60%;
		right:0;
		top:20%;
		z-index:-1
	}
.banner img {
	display:none;
}
	.form-label {
	width:100%
}
	.cf7-custom-form {
    padding: 0px;
    max-width: 760px;
    margin: 0 auto;
    border-radius: 12px;
    font-family: "Noto Sans JP", sans-serif;
}
	.-type-list .p-postList__thumb {
	width: 100%;
	border-radius:20px;
}
.-type-list .p-postList__body {
	width:100%
}
	.-type-list .p-postList__link {
	border:solid 1px #D9D9D9;
		padding:20px;
	border-radius:30px;
	gap:20px;
	justify-content: space-around;
	align-items:center;
}
	.en-title {
	font-size:23px;
	letter-spacing:2px;
		line-height:1
}
}

.cre-culum {
	border-radius:20px;
	height:370px
}
.w-beforeFooter {
    margin: 0em auto 0em;
    overflow: hidden;
}

.footer {
    padding: 60px 40px;
	padding-bottom:20px!important;
}
#before_footer_widget {
	background-color:#1a1a1a;
	color:#fff
}

.home .pos .p-postList__cat {
    background-color: #42E9AB;
	color:#000;
	margin-right:20px
}
.home .pos .p-postList__body {
	display:flex!important;
	align-items:center;
	flex-direction: unset;
}

.creator-culum .wp-block-column {
	border-radius:15px
}
p {
		text-shadow:none;
	}
.suma {
position:relative;
    right: 0;
   bottom:1%
}

/* 背景画像を非表示（レイアウトは維持） */
.p-mainVisual__imgLayer img {
  opacity: 0;
}

/* メインビジュアル背景をグラデーションに */
.p-mainVisual__slide {
  background: linear-gradient(
    135deg,
    #c9a7e8 0%,
    #e58acb 25%,
    #ff7ab0 40%,
    #ff9f7f 60%,
    #a6d9ff 80%,
    #f6d7a7 100%
  );
}

/* 背景画像は非表示（レイアウト維持） */
.p-mainVisual__imgLayer img {
  opacity: 0;
}

/* グラデーション背景 + アニメーション */
.p-mainVisual__slide {
  position: relative;
  background: linear-gradient(
    135deg,
    #c9a7e8,
    #e58acb,
    #ff7ab0,
    #ff9f7f,
    #a6d9ff,
    #f6d7a7
  );
  background-size: 200% 200%;
  animation: gradientMove 18s ease infinite;
}

/* グラデーション移動 */
@keyframes gradientMove {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

@media (max-width: 960px) {
	/* 共通（PC含む） */
.p-mainVisual__slide {
  position: relative;
  background: linear-gradient(
    120deg,
    #c9a7e8,
    #e58acb,
    #ff7ab0,
    #ff9f7f,
    #a6d9ff,
    #f6d7a7
  );
  background-size: 400% 400%;
  animation: gradientMovePC 20s ease infinite;
}

/* PC用 */
@keyframes gradientMovePC {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* =========================
   スマホだけ動きを強調
========================= */
@media (max-width: 768px) {
  .p-mainVisual__slide {
    background-size: 250% 250%;
    animation: gradientMoveSP 12s linear infinite;
  }

  @keyframes gradientMoveSP {
    0% {
      background-position: 0% 0%;
    }
    50% {
      background-position: 100% 100%;
    }
    100% {
      background-position: 0% 0%;
    }
  }
}
}		
/* ==================== スマホ枠スライダー PC版 ==================== */



/* ===== スマホ全体 ===== */
.phone {
  position: relative;
  width: 300px;
}

/* 枠 */
.phone-frame {
  width: 100%;
  display: block;
  position: relative;
  z-index: 3;
  pointer-events: none;
}

/* 中身 */
.phone-screen {
  position: absolute;
  top: 3.5%;
  left: 6%;
  width: 90%;
  height: 93%;
  overflow: hidden;
  border-radius: 28px;
  z-index: 1;
  background: #000;
}

/* スライダー */
.slider {
  display: flex;
  height: 100%;
  transition: transform 0.6s ease;
max-width:1200px!important

}

.slide {
  flex: 0 0 100%;
  height: 100%;
max-width:270px!important;
background-color:#fff
}

.slide img {
  width: 100%;
  height: 100%!important;
  display: block; /* ← 超重要 */
padding-right:0px!important
}


/* ==================== スマホ枠スライダー SP版 ==================== */

/* ===== スマホ全体 ===== */
.sp-phone {
  position: relative;
  width: 200px;
}

/* 枠 */
.sp-phone-frame {
  width: 100%;
  display: block;
  position: relative;
  z-index: 3;
  pointer-events: none;
}

/* 中身 */
.sp-phone-screen {
  position: absolute;
  top: 3.5%;
  left: 6%;
  width: 90%;
  height: 93%;
  overflow: hidden;
  border-radius: 28px;
  z-index: 1;
  background: #000;
}

/* スライダー */
.sp-slider {
  display: flex;
  height: 100%;
  transition: transform 0.6s ease;
}

/* 各スライド */
.sp-slide {
  flex: 0 0 100%;
  height: 100%;
  max-width: 180px !important;
background-color:#fff;
}

/* 画像 */
.sp-slide img {
  width: 100%;
  height: 100% !important;
object-fit: contain;
  display: block;
  padding-right: 0px !important;
}


/* ==================== パートナーロゴ無限ループスライダー ==================== */

/* ===== スライダー枠 ===== */
.slider {
  width: 100%;
  max-width: 800px;
  overflow: hidden;
margin-bottom:0px
}

/* ===== 横並びトラック ===== */
.slider-track {
  display: flex;
  width: max-content;
  will-change: transform;
}

/* ===== 各スライド ===== */
.slide {
  flex-shrink: 0;
  width: 100%;
  max-width: 250px;
}

/* ===== 画像（切り取りなし） ===== */
.slide img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
padding-right:15px;
}


/* ==================== フッター ==================== */

/* =========================
   reset
========================= */




/* =========================
   footer
========================= */
.footer {
  padding: 60px 40px;
}

.footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 40px;
}

/* logo area */
.footer-logo {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 2px;
  margin-bottom: 20px;
}

.footer-logo span {
  color: #6fffe9;
}

.footer-address {
  font-size: 14px;
  line-height: 1.8;
  color: #ccc;
}

/* menu */
.footer-col h4 {
  font-size: 14px;
  letter-spacing: 1px;
  margin-bottom: 15px;
}

.footer-col ul {
  list-style: none;
}

.footer-col li {
  font-size: 14px;
  margin-bottom: 10px;
  color: #ccc;
}

.footer-col a {
  color: #ccc;
  text-decoration: none;
  transition: 0.3s;
}

.footer-col a:hover {
  color: #6fffe9;
}

/* highlight link */
.footer-col .highlight {
  color: #6fffe9;
  font-weight: bold;
}

/* =========================
   responsive
========================= */
@media screen and (max-width: 768px) {
  .footer {
    padding: 40px 20px;
  }

  .footer-inner {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .footer-logo {
    font-size: 22px;
  }
}

