/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Sep 03 2025 | 13:31:45 */
/* 
@media (max-width: 640px) 
@media (min-width: 960px) 
var(--color_main)
サブカラーの設定
var(--color_deep01)
var(--color_deep02)
var(--color_deep03)
*/
/* -------------
○○〇の設定
-----------------------------*/
/* -------------
コンセプトエリア　
-----------------------------*/
.post_content .concept-absolute{  
  position: absolute;
 top: -50px;
    left: -1%;
    width: 100%;
}
/* 背景画像を上下とも斜めに切り取り */
.stripe-line {
  position: relative;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  clip-path: polygon(0 15%, 100% 0, 100% 85%, 0% 100%);
}
@media (max-width: 768px) {
/* 背景画像を上下とも斜めに切り取り */
.stripe-line {
  clip-path: polygon(0 2%, 100% 0, 100% 95%, 0% 100%);
}
 .post_content .concept-absolute {
    top: -36px;
    left: -3%;
}
.concept-absolute span{
    font-size: 24vw!important;
}
.post_content .concept-heading span{
    font-size: 6vw!important;
}
.post_content .concept-img{
    width: 120px;
    margin-left: auto;
}
}
.concept-relative{
position:relative;
}
.concept-relative .swell-block-fullWide__inner{
	position:static;
}
/* ベース（太さ・角丸・長さは変数で調整可） */
hr.eight-line-bw-lr {
  --line-h: 1px;
  --line-radius: 999px;
  --line-width: 100%;
  border: none;
  display: block;
  height: var(--line-h);
  width: var(--line-width);
  margin: 1.5em auto;
  border-radius: var(--line-radius);
  background-repeat: no-repeat;
z-index:3;
position:relative;
}
hr.eight-line-bw-lr {
  background: linear-gradient(to right, #000 0%, #fff 100%);
}
/* ----------------------------------- */
/* SNS運用代行エリア*/
/* ----------------------------------- */
.swell-block-accordion__title {
    text-align: center;
	background:#fff;
}
.c-switchIconBtn, .c-switch_icon_btn {
    position: absolute;
    top: 105%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    border-radius: 50%; /* 円形 */
    width: 28px;
    height: 28px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
	    box-shadow: 1px 1px 14px #ddd;
}

/* hover時 */
.c-switchIconBtn:hover,
.c-switch_icon_btn:hover {
    transform: translate(-50%, -50%) scale(1.2);
    box-shadow: 0 6px 12px rgba(0,0,0,0.2);
}
/* クリックした瞬間にふんわり拡大 */
.c-switchIconBtn:active, 
.c-switch_icon_btn:active {
    transform: translate(-50%, -50%) scale(1.3);
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
@keyframes clickEffect {
  0%   { transform: translate(-50%, -50%) scale(1);   opacity: 1; }
  50%  { transform: translate(-50%, -50%) scale(1.3); opacity: 0.8; }
  100% { transform: translate(-50%, -50%) scale(1);   opacity: 1; }
}
.c-switchIconBtn.animate,
.c-switch_icon_btn.animate {
  animation: clickEffect 0.4s ease;
}
.swell-block-accordion__title .swell-block-accordion__label{
padding:0;
}
.swell-block-accordion__body{
padding: 1em 0;
}
/* サービスコンテンツ */
/* 4つ並びのカラムの高さ合わせる */
.eight-28-arrange-main{
    padding: 0 2em;
}
.eight-28-arrange-main .flex-arrange {
  display: flex;
  flex-grow: 1;
  padding: 2em 1em 0.4em;
  position: relative;
}
.eight-28-arrange-main .flex-arrange .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.eight-28-arrange-main .flex-arrange .wp-block-group__inner-container .flex-arrange-text {
  flex-grow: 1;
    width: fit-content;
    margin: 0 auto;
}
/* 各カラムのスタイル調整 */
.eight-28-arrange-main .swell-block-column {
  display: flex;
  justify-content: center;
  flex: 1 1 auto;
  position: relative;
}

/* カラム内のコンテンツ配置 */
.eight-28-arrange-main .flex-arrange {
  display: flex;
  flex-grow: 1;
  padding: 2em 1em 0.4em;
  position: relative;
  justify-content: center;
}
/* 左上の枠 */
.eight-28-arrange-main .flex-arrange::before {
  content: "";
  position: absolute;
  top: -6px;
  left: -6px;
  width: 40px;
  height: 40px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  pointer-events: none;
}

/* 右下の枠 */
.eight-28-arrange-main .flex-arrange::after {
  content: "";
  position: absolute;
  bottom: -6px;
  right: -6px;
  width: 40px;
  height: 40px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  pointer-events: none;
}
.eight-28-arrow {
    position: relative;
    display: flex;
}
.eight-28-arrow:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 18px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 0;
    right: -30px;
    bottom: 0;
    margin: auto;
}
.eight-28-arrow:nth-of-type(4):before {
content: '';
display:none;
}
@media(max-width: 960px){
.eight-28-arrow:nth-of-type(2):before {
content: '';
display:none;
}
}
/*お問い合わせボタン */
@property --angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}
.eight-btn-red .swell-block-button__link {
  --border-width: 2px;
  --time: .9s;
  display: inline-block;
    padding: 1em 0;
  text-decoration: none;
  background: transparent;
  overflow: hidden;
box-shadow: 6px 6px 20px 0 rgba(46, 25, 147, .1), -10px -10px 40px 0 rgba(46, 25, 147, .02);
}
.eight-btn-red .swell-block-button__link:hover {
  background:#ddd;
}
.eight-btn-red .swell-block-button__link::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: var(--border-width);
 background: conic-gradient(#f1f1f1 var(--angle), transparent 0);
  -webkit-mask:
    linear-gradient(#e63946 0 0) content-box,
    linear-gradient(#e63946 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  transition: --angle var(--time) ease;
}
.eight-btn-red .swell-block-button__link:hover::before,
.eight-btn-red .swell-block-button__link:focus-visible::before {
  --angle: 360deg;
}
.eight-btn-red .swell-block-button__link:active {
  transform: translateY(1px);
}
/* ----------------------------------- */
/* 実績・導入事例エリア*/
/* ----------------------------------- */
.eight-top-bottom-border {
    border-top: solid 1px var(--color_main);
    border-bottom: solid 1px var(--color_main);
    padding: 0.9em;
}
.wp-block-group.justify-center {
    justify-content: center;
}
.btn-line figure{
    margin: 0 0.6em 0 0!important;
}
.btn-line a {
  position: relative;
  display: inline-block;
  padding-bottom: 4px;
  transition: color 0.3s ease;
}
.btn-line a::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 2px;
  background-color: currentColor;
  transition: all 0.4s ease;
  transform: translateX(-50%);
}
/* hover時：中央から両端に広がる */
.btn-line a:hover::after {
  width: 100%;
}
.youtube-wrap {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube-wrap iframe {
  width: 100%;
  height: 100%;
}
@media (max-width: 600px) {
.post_content .products-en span{
font-size:10vw!important;
}
.youtube-wrap {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 の比率 (高さ ÷ 幅 × 100) */
  height: 0;
  overflow: hidden;
}
.youtube-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
}
}
/* ----------------------------------- */
/* よくあるご質問エリア*/
/* ----------------------------------- */
.c-triDecor {
  position: relative;
  --tri-color: #FFF9EE; 
  --tri-size: 280px;
--tri-size-sp:120px;}

.c-triDecor::before,
.c-triDecor::after {
  content: "";
  position: absolute;
  width: var(--tri-size);
  height: var(--tri-size);
  background: var(--tri-color);
  clip-path: polygon(0 0, 100% 0, 0 100%);
  pointer-events: none;
  z-index: 0;
}

.c-triDecor::before {
  top: 0;
  left: 0;
}

.c-triDecor::after {
  right: 0;
  bottom: 0;
  clip-path: polygon(100% 100%, 0 100%, 100% 0);
}

.c-triDecor .swell-block-fullWide__inner {
  position: relative;
  z-index: 1;
}
@media (max-width: 768px) {
  .c-triDecor::before,
  .c-triDecor::after {
    width: var(--tri-size-sp);
    height: var(--tri-size-sp);
  }
}
/* COMPANY */
/* .company-center {
    justify-content: center;
    display: flex;
    width: 100%;
} */
/* ----------------------------------- */
/* CTAエリア*/
/* ----------------------------------- */
.eight-27-arrange-main .swell-block-column {
  display: flex;
  justify-content: center;
  flex: 1 1 auto;
}
.eight-27-arrange-main .flex-arrange {
  display: flex;
  flex-grow: 1;
  padding: 2em 1em 0.4em;
    position: relative;
}
.eight-27-arrange-main .flex-arrange .wp-block-group__inner-container {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.eight-27-arrange-main .flex-arrange .wp-block-group__inner-container .flex-arrange-text {
  flex-grow: 1;
    justify-content: center;
    align-items: center;
}
.blue_ .swell-block-button__link{
    border-radius: 0;
}
.blue_ .swell-block-button__link:hover{
border: 1px solid var(--color_main);
}
.blue_ .swell-block-button__link span:hover{
color:var(--color_main);
}
.blue_ .swell-block-button__link:hover svg:not([fill]) {
    fill:var(--color_main);
}
/* その他 */
.heading-h2 .swell-block-columns__inner {
    justify-content: center;
    max-width: 900px;
    margin: 0 auto;
}
