<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>株式会社スタジオ・キーストン</title>
	<atom:link href="https://studio-keystone.net/feed/" rel="self" type="application/rss+xml" />
	<link>https://studio-keystone.net/</link>
	<description>圧倒的スピードのイラストデザインと、実行型ソリューション</description>
	<lastBuildDate>Fri, 22 May 2026 13:15:14 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://studio-keystone.net/wp-content/uploads/2026/04/cropped-studio-keystone-company-logo-32x32.jpg</url>
	<title>株式会社スタジオ・キーストン</title>
	<link>https://studio-keystone.net/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>NEW ART STYLE【基本タッチ】</title>
		<link>https://studio-keystone.net/new-art-style-basicstyle-260502/</link>
		
		<dc:creator><![CDATA[keystone-admin]]></dc:creator>
		<pubDate>Fri, 01 May 2026 22:49:10 +0000</pubDate>
				<category><![CDATA[イラストタッチ]]></category>
		<category><![CDATA[基本タッチ]]></category>
		<guid isPermaLink="false">https://studio-keystone.net/?p=6346</guid>

					<description><![CDATA[<p>NEW ART STYLE RELEASE！！ 【基本タッチ】 幅広い世代に親しまれるイラストタッチ 　お客様のニーズに合わせ、個性を抑えつつも視認性の高いイラストレーションを制作いたします。 　本スタイルはテレビ番組の [&#8230;]</p>
<p>投稿 <a href="https://studio-keystone.net/new-art-style-basicstyle-260502/">NEW ART STYLE【基本タッチ】</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top vk_block-margin-0--margin-bottom vk_block-margin-xxl--margin-top wp-block-hidden-mobile"><div class="vk_block-margin-md--margin-top"></div></div>



<style data-wp-block-html="css">
<style>

/* =============================================
   Wrapper (Astra & WordPress Full Width Reset)
   ============================================= */
.post-attribute-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    display: flex;
    justify-content: center; /* コンテナを中央に配置 */
}

/* =============================================
   Inner Container (Strict 1000px)
   ============================================= */
.post-attribute-container {
    width: 100%;
    max-width: 1000px; /* ここで1000pxに制限 */
    margin: 0 auto; /* 中央寄せ */
    padding: 0 20px; /* 画面端の余白（モバイル用） */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* 中身の要素は左寄せ */
}

/* =============================================
   Color Variants
   ============================================= */
.is-style-creative .post-meta-unit__parent { background-color: #EF8200; }
.is-style-creative .post-meta-unit__title::before { background-color: #EF8200; }
.is-style-solution .post-meta-unit__parent { background-color: #69BE2C; }
.is-style-solution .post-meta-unit__title::before { background-color: #69BE2C; }
.is-style-news .post-meta-unit__parent { background-color: #3C9BFA; }
.is-style-news .post-meta-unit__title::before { background-color: #3C9BFA; }
.is-style-blog .post-meta-unit__parent { background-color: #000000; }
.is-style-blog .post-meta-unit__title::before { background-color: #000000; }
.is-style-default .post-meta-unit__parent { background-color: #EF8200; } 
.is-style-default .post-meta-unit__title::before { background-color: #EF8200; } 

/* =============================================
   Post Meta Unit UI (Strict SVG Reproduction)
   ============================================= */
.post-meta-unit {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.post-meta-unit__parent {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    padding: 6px 16px;
    margin-bottom: 12px;
    display: inline-block;
    border-radius: 8px;
    line-height: 1.2;
    text-transform: none !important;
}

.post-meta-unit__title {
    font-size: 24px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.4;
    margin: 0 0 8px 0;
    padding: 0 0 0 16px; /* アクセント線との距離を調整 */
    position: relative;
    letter-spacing: -0.02em;
    text-transform: none !important;
}

.post-meta-unit__title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 6px;
    height: 1.1em;
}

.post-meta-unit__date {
    font-size: 16px;
    color: #000000; /* 日付部分を黒字に変更 */
    letter-spacing: 0.05em;
}

/* =============================================
   Mobile Safety
   ============================================= */
@media (max-width: 1000px) {
    .post-attribute-container {
        padding: 0 20px;
    }
}
</style>
</style>

<section class="post-attribute-section alignfull">
  <div class="post-attribute-container">
        <div class="post-meta-unit is-style-default">
        <span class="post-meta-unit__parent">
            イラストタッチ        </span>

        <h2 class="post-meta-unit__title">
            基本タッチ        </h2>

        <time class="post-meta-unit__date" datetime="2026-05-02T07:49:10+09:00">
            2026/05/02        </time>
    </div>
    
  </div>
</section>



<style data-wp-block-html="css">
<style>
/**
 * Works Post Title Styles
 * Methodology: BEM
 * 調整内容: 
 * 1. モバイル版の上部強制スペース（::before）を33px（前回の3分の2）に調整。
 * 2. PC版（768px以上）の数値・表示は絶対に変更せず保持。
 * 3. コードの省略なし。
 */

/* --- モバイル版（初期値） --- */
.c-post-title {
    width: 100% !important;
    display: block !important; /* 強制スペーサー有効化のためblock指定 */
    box-sizing: border-box;
    background-color: transparent;
    padding-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
}

/* モバイル版のみ：上部の強制スペースを33px（50pxの2/3）に設定 */
.c-post-title::before {
    content: "";
    display: block;
    width: 100%;
    height: 33px; /* 50px * 2/3 ≈ 33px */
    visibility: hidden;
    pointer-events: none;
}

.c-post-title__container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.c-post-title__text {
    /* 2025-2026標準のレスポンシブフォントサイズ */
    font-size: clamp(1.125rem, 0.8rem + 1.5vw, 1.75rem);
    font-weight: 700;
    
    /* 大文字小文字を保持 */
    text-transform: none; 
    
    /* モバイル用行間 */
    line-height: 1.3; 
    
    color: #000000;
    margin: 0;
    padding: 0;
    word-break: break-all;
    letter-spacing: 0.05em;
}

/* --- PC版（768px以上）：現状を完全に保持 --- */
@media (min-width: 768px) {
    /* PCでは強制スペーサーを非表示に */
    .c-post-title::before {
        display: none !important;
    }

    .c-post-title {
        display: flex !important; /* 現状のレイアウトを復元 */
        justify-content: center;
        align-items: center;
        padding-top: 40px !important;    /* 現状維持 */
        padding-bottom: 80px !important; /* 現状維持 */
    }
    
    .c-post-title__text {
        line-height: 1.5; /* 現状維持 */
    }
}
</style>

<section class="c-post-title">
    <div class="c-post-title__container">
        <h1 class="c-post-title__text">
            NEW ART STYLE RELEASE！！<br>
            【基本タッチ】
        </h1>
    </div>
</section>



<style data-wp-block-html="css">
<style>
/**
 * Works Post Subtitle (H2) - Refined Layout
 * Methodology: BEM
 * Target: WordPress Custom HTML Block (Astra Compatible)
 */

/* 共通設定 (PC版の現状をベースにカラーのみ黒へ) */
.c-post-subtitle-compact {
    width: 100%;
    padding-top: 7px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background-color: transparent;
    box-sizing: border-box;
}

.c-post-subtitle-compact__container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: left;
}

.c-post-subtitle-compact__text {
    /* PC版フォントサイズ: clampにより可変（現状維持） */
    font-size: clamp(0.875rem, 0.7rem + 0.8vw, 1.25rem);
    font-weight: 700;
    line-height: 1.2;
    color: #000000; /* テキストカラーを黒に変更 */
    margin: 0;
    padding: 0;
    border: none;
    word-break: break-all;
    letter-spacing: 0.03em;
}

/**
 * モバイル版修正 (max-width: 767px)
 * 1. テキスト左揃え
 * 2. フォントサイズ 12pt (16px)
 * 3. 下余白を無くし、上に余白を作る
 */
@media (max-width: 767px) {
    .c-post-subtitle-compact {
        padding-top: 20px;    /* 上に余白を作る */
        padding-bottom: 0px;  /* 下の余白を無くす */
        padding-left: 20px;
        padding-right: 20px;
    }

    .c-post-subtitle-compact__container {
        text-align: left;     /* 左揃え */
    }

    .c-post-subtitle-compact__text {
        font-size: 16px;      /* 12pt相当に固定 */
        color: #000000;       /* モバイルも黒を維持 */
    }
}
</style>

<section class="c-post-subtitle-compact">
    <div class="c-post-subtitle-compact__container">
        <h2 class="c-post-subtitle-compact__text">
            幅広い世代に親しまれるイラストタッチ
        </h2>
    </div>
</section>



<style data-wp-block-html="css">
<style>
/* * Works Post Lead Section 
 * WordPress Astra Theme / Custom HTML Block 
 */

/* セクション全体の定義 */
.p-works-lead {
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 20px !important; /* 左右余白のみ保持 */
}

/* PC版：擬似要素を使って上下に「1文字分」の物理的な箱を強制挿入 */
.p-works-lead::before,
.p-works-lead::after {
    content: "" !important;
    display: block !important;
    /* 1文字分(14pt)のバウンディングボックスを生成 */
    height: 14pt !important; 
    width: 100% !important;
    pointer-events: none !important;
}

/* コンテナ */
.p-works-lead__container {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

/* テキストスタイル */
.p-works-lead__text {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-weight: 500;
    line-height: 1.6;
    color: #000000 !important;
    font-size: 14pt !important;
}

/* レスポンシブ設定（モバイル版：絶対保持） */
@media (max-width: 767px) {
    /* モバイル時は擬似要素による強制余白を解除（または10px相当に調整） */
    .p-works-lead::before,
    .p-works-lead::after {
        height: 10px !important;
    }
    
    .p-works-lead {
        padding: 0 20px !important;
    }

    .p-works-lead__text {
        font-size: 11pt !important;
        line-height: 1.5 !important;
    }
}
</style>

<section class="p-works-lead">
    <div class="p-works-lead__container">
        <h3 class="p-works-lead__text">
            　お客様のニーズに合わせ、個性を抑えつつも視認性の高いイラストレーションを制作いたします。<br>
            　本スタイルはテレビ番組の解説フリップ、各種広告、広報誌などターゲットを特定せず「誰にでも正しく情報を伝えたい」シーンに最適です。癖のないクリーンな表現によりメインコンテンツの邪魔をすることなく視覚的な理解を助ける役割を果たします。
        </h3>
    </div>
</section>



<style data-wp-block-html="css">
/* --- Base Variables --- */
.as-section {
  --as-dynamic-marker-color: #EF8200; 
  --as-color-orange: #EF8200;
  --as-color-bg: #ffffff;
  --as-text-black: #000000;
  --as-transition-duration: 0.5s;
  --as-transition-curve: cubic-bezier(0.25, 1, 0.5, 1);
  
  position: relative;
  padding: clamp(40px, 8vw, 80px) 20px;
  background-color: var(--as-color-bg);
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  margin-bottom: 50px;
  line-height: 1.6;
}

.as-container { max-width: 1000px; margin: 0 auto; position: relative; z-index: 2; }

/* --- Grid & Cards --- */
.as-grid { 
  display: grid; 
  grid-template-columns: repeat(2, 1fr); 
  gap: 20px 15px; 
  margin-bottom: 40px; 
}

@media (min-width: 768px) { 
  .as-grid { 
    grid-template-columns: repeat(2, 1fr); 
    gap: 30px; 
  } 
}
@media (min-width: 1024px) { 
  .as-grid { 
    grid-template-columns: repeat(3, 1fr); 
  } 
}

.as-card-item { cursor: pointer; display: flex; flex-direction: column; }

.as-card__image-wrapper { 
  aspect-ratio: 1.5 / 1; 
  background-color: #d1d5d8; 
  overflow: hidden; 
  margin-bottom: 12px; 
  transition: transform var(--as-transition-duration) var(--as-transition-curve), box-shadow var(--as-transition-duration) var(--as-transition-curve);
}

.as-card__img { width: 100%; height: 100%; object-fit: cover; }

@media (min-width: 1024px) {
  .as-card-item:hover .as-card__image-wrapper { 
    transform: translateY(-8px) scale(1.03); 
    box-shadow: 0 10px 20px rgba(0,0,0,0.15); 
  }
}

.as-card__title { font-size: 13px; font-weight: bold; display: flex; align-items: flex-start; gap: 6px; line-height: 1.4; }
.as-card__marker { width: 4px; height: 1.2em; background-color: var(--as-dynamic-marker-color); flex-shrink: 0; margin-top: 2px; }

/* モバイル版のみタイトル2段表示と余白の調整 */
@media (max-width: 767px) {
  .as-card__image-wrapper {
    margin-bottom: 6px; 
  }
  .as-card__title {
    flex-wrap: wrap;
    gap: 2px; 
  }
  .as-card__marker {
    display: none; 
  }
  .as-card__text {
    flex-basis: 100%;
    padding-left: 0; 
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .as-card__title { font-size: 14px; align-items: center; }
  .as-card__marker { margin-top: 0; }
}

/* --- Popup --- */
.as-popup { 
  position: fixed; top: 0; left: 0; width: 100%; height: 100%; height: 100dvh; z-index: 10000; 
  display: flex; align-items: center; justify-content: center;
  overscroll-behavior: none;
}
.as-popup__overlay { 
  position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
  background-color: rgba(0, 0, 0, 0.8); 
}
.as-popup__wrapper { 
  position: relative; z-index: 10001; 
  width: 100%; 
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) { 
  .as-popup__wrapper { 
    width: 95%; 
    max-width: 1600px; 
    height: 100vh;
    margin: auto;
  } 
}
.as-popup__container { 
  display: flex; 
  align-items: center; 
  justify-content: center;
  width: 100%;
}
.as-popup__content { 
  flex: 1; 
  display: flex; 
  flex-direction: column; 
  justify-content: center; 
  width: 100%; 
  gap: 10px; 
}
@media (min-width: 768px) {
  .as-popup__content { padding-top: 40px; }
}
.as-popup__image-holder { 
  width: 100%; max-height: 65vh; 
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; background-color: transparent;
}
.as-popup__img { width: 100%; height: auto; max-height: 65vh; object-fit: contain; }

@media (min-width: 768px) {
  .as-popup__image-holder { 
    touch-action: none; 
    cursor: grab; 
    height: 85vh; 
    max-height: 85vh; 
  }
  .as-popup__img { 
    width: 100%; 
    height: 100%; 
    max-width: none; 
    max-height: none; 
    object-fit: contain; 
    will-change: transform; 
  }
  .as-popup__close-wrapper {
    margin-top: -45px; 
  }
  .as-popup__close {
    font-size: 24px; 
  }
}

/* モバイル版タイトル (2段表示) */
.as-popup__mobile-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: #fff;
  text-align: center;
  margin-top: 10px;
}
.as-popup__mobile-title .as-popup__category-text {
  font-size: 13px;
  font-weight: bold;
}
.as-popup__mobile-title .as-popup__title-text {
  font-size: 16px;
  font-weight: 900;
}

/* モバイル版ページ送り */
.as-popup__mobile-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  margin-top: 15px;
}

/* PC版インフォバー */
.as-popup__info-bar { padding: 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #fff; }
.as-popup__caption { flex: 1; display: flex; align-items: center; gap: 10px; justify-content: center; }
@media (max-width: 767px) { .as-popup__marker { display: none; } }
.as-popup__text-group { display: flex; flex-direction: column; line-height: 1.2; }
.as-popup__category-text { font-size: 12px; font-weight: bold; }
.as-popup__title-text { font-size: 16px; font-weight: 900; }
@media (min-width: 768px) {
  .as-popup__info-bar { padding: 20px 0; justify-content: flex-start; }
  .as-popup__caption { justify-content: flex-start; }
  .as-popup__text-group { flex-direction: row; gap: 15px; }
  .as-popup__category-text, .as-popup__title-text { font-size: 24px; }
}
.as-popup__close-wrapper { display: flex; justify-content: center; width: 100%; padding-top: 15px; }
.as-popup__close {
  background: transparent !important; border: none; cursor: pointer;
  color: #cccccc !important; font-size: 18px; font-weight: bold; transition: 0.3s;
  padding: 10px 20px;
}
.as-popup__close:hover { color: #ffffff !important; }
.as-popup__nav { background: transparent !important; border: none; cursor: pointer; color: #cccccc !important; transition: 0.3s; }
.as-popup__nav:hover { color: #ffffff !important; }
.as-nav-arrow { display: block; width: 20px; height: 20px; border-top: 4px solid currentColor; border-left: 4px solid currentColor; margin: 0 10px; }
.as-popup__nav--prev .as-nav-arrow { transform: rotate(-45deg); }
.as-popup__nav--next .as-nav-arrow { transform: rotate(135deg); }
@media (min-width: 768px) { .as-nav-arrow { width: 40px; height: 40px; border-width: 5px; margin: 0; } }

.as-sp-only { display: flex; }
.as-pc-only { display: none; }
@media (min-width: 768px) { .as-sp-only { display: none; } .as-pc-only { display: flex; } }

body.as-modal-open { overflow: hidden !important; position: fixed; width: 100%; }

/* --- モバイル用ポップアップのレイアウト調整 --- */
@media (max-width: 767px) {
  .as-popup__container {
    height: 100%;
    height: 100dvh;
  }
  .as-popup__content {
    height: 100%;
    gap: 0 !important; 
    padding-bottom: 0;
    display: flex;
    flex-direction: column;
    background: transparent !important;
  }
  .as-popup__image-holder {
    flex: 1;
    min-height: 0;
    max-height: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    touch-action: none !important; 
  }
  .as-popup__img {
    width: 100vw !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
  }
  
  .as-popup__mobile-title {
    background-color: transparent !important;
    margin-top: 0 !important;
    padding-top: 15px;
  }
  .as-popup__mobile-nav {
    background-color: transparent !important;
    margin-top: 0 !important;
    padding-top: 15px;
    padding-bottom: 5px;
  }
  .as-popup__close-wrapper {
    flex-shrink: 0;
    background-color: transparent !important;
    padding-top: 5px !important;
    padding-bottom: 20px !important;
  }
  
  .as-popup__close {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
}
</style>

<script data-wp-block-html="js">
document.addEventListener('DOMContentLoaded', () => {
  const portal = document.getElementById('as-popup-portal');
  if (!portal) return;

  const allCards = Array.from(document.querySelectorAll('.as-card-item'));

  const imgEl = portal.querySelector('.as-popup__img');
  const imgHolder = portal.querySelector('.as-popup__image-holder');
  // モバイル・PC両方のテキスト要素を取得
  const popupCategoryEls = portal.querySelectorAll('.as-popup__category-text');
  const popupTitleTextEls = portal.querySelectorAll('.as-popup__title-text');
  
  const prevBtns = portal.querySelectorAll('.as-popup__nav--prev');
  const nextBtns = portal.querySelectorAll('.as-popup__nav--next');
  const closeBtn = portal.querySelector('.as-popup__close');

  let currentIndex = 0;
  let scale = 1, posX = 0, posY = 0;
  let isDragging = false;
  let startX, startY;
  let evCache = [];
  let prevDiff = -1;
  let scrollPos = 0;

  // タップ・スワイプ判定用の座標変数
  let touchStartX = 0;
  let touchEndX = 0;
  let startXClick = 0;
  let startYClick = 0;

  const isMobile = () => window.innerWidth < 768;

  const lockScroll = () => {
    scrollPos = window.pageYOffset;
    document.body.classList.add('as-modal-open');
    document.body.style.top = `-${scrollPos}px`;
  };

  const unlockScroll = () => {
    document.body.classList.remove('as-modal-open');
    document.body.style.top = '';
    window.scrollTo(0, scrollPos);
  };

  const updateTransform = () => {
    imgEl.style.transform = `translate(${posX}px, ${posY}px) scale(${scale})`;
  };

  const resetZoom = () => {
    scale = 1; posX = 0; posY = 0;
    imgEl.style.transition = 'transform 0.3s ease';
    updateTransform();
  };

  const updatePopup = (index) => {
    const target = allCards[index]; 
    if(!target) return;
    
    imgEl.src = target.querySelector('.as-card__img').src;
    
    // PC用・モバイル用の各要素にテキストを反映
    const categoryText = target.querySelector('.as-card__category').textContent;
    const titleText = target.querySelector('.as-card__text').textContent;
    
    popupCategoryEls.forEach(el => el.textContent = categoryText);
    popupTitleTextEls.forEach(el => el.textContent = titleText);
    
    currentIndex = index;
    resetZoom();
  };

  const openPopup = (index) => {
    lockScroll();
    updatePopup(index);
    portal.style.display = 'flex';
    portal.setAttribute('aria-hidden', 'false');
  };

  const closePopup = () => {
    portal.style.display = 'none';
    portal.setAttribute('aria-hidden', 'true');
    unlockScroll();
    resetZoom();
  };

  const navigate = (dir) => {
    currentIndex = (currentIndex + dir + allCards.length) % allCards.length;
    updatePopup(currentIndex);
  };

  // --- スワイプページ送りの処理 ---
  const handleTouchStart = (e) => {
    if (!isMobile() || scale > 1) return;
    touchStartX = e.changedTouches[0].screenX;
  };

  const handleTouchEnd = (e) => {
    if (!isMobile() || scale > 1) return;
    touchEndX = e.changedTouches[0].screenX;
    
    const swipeThreshold = 50;
    if (touchEndX < touchStartX - swipeThreshold) {
      navigate(1);
    } else if (touchEndX > touchStartX + swipeThreshold) {
      navigate(-1);
    }
  };

  imgHolder.addEventListener('touchstart', handleTouchStart, { passive: true });
  imgHolder.addEventListener('touchend', handleTouchEnd, { passive: true });

  // --- 背景タップ・「閉じる」動作の実装 ---
  portal.addEventListener('pointerdown', (e) => {
    startXClick = e.clientX;
    startYClick = e.clientY;
  });

  portal.addEventListener('click', (e) => {
    if (Math.abs(e.clientX - startXClick) > 10 || Math.abs(e.clientY - startYClick) > 10) return;
    if (e.target.closest('.as-popup__nav')) return;
    if (!isMobile() && e.target.closest('.as-popup__img')) return;
    closePopup();
  });

  // --- ボタンクリック処理 ---
  document.addEventListener('click', (e) => {
    const card = e.target.closest('.as-card-item');
    if (card) {
      openPopup(allCards.indexOf(card));
    }
  });

  closeBtn.onclick = (e) => { e.stopPropagation(); closePopup(); };
  prevBtns.forEach(btn => btn.onclick = (e) => { e.stopPropagation(); navigate(-1); });
  nextBtns.forEach(btn => btn.onclick = (e) => { e.stopPropagation(); navigate(1); });

  // --- PCホイール / モバイル・PC両対応ドラッグ・ピンチズーム処理 ---
  imgHolder.addEventListener('wheel', (e) => {
    if (portal.style.display === 'none' || isMobile()) return;
    e.preventDefault(); 
    const delta = e.deltaY > 0 ? -0.2 : 0.2;
    scale = Math.min(Math.max(1, scale + delta), 4);
    if (scale <= 1) { posX = 0; posY = 0; }
    updateTransform();
  }, { passive: false });

  imgHolder.addEventListener('pointerdown', (e) => {
    evCache.push(e);
    if (scale > 1 && evCache.length === 1) {
      isDragging = true;
      imgEl.style.transition = 'none';
      startX = e.clientX - posX;
      startY = e.clientY - posY;
      imgEl.setPointerCapture(e.pointerId);
    }
  });

  imgHolder.addEventListener('pointermove', (e) => {
    if (portal.style.display === 'none') return;

    const index = evCache.findIndex((c) => c.pointerId === e.pointerId);
    if (index !== -1) evCache[index] = e;

    if (isDragging && evCache.length === 1) {
      posX = e.clientX - startX;
      posY = e.clientY - startY;
      updateTransform();
    }

    if (evCache.length === 2) {
      isDragging = false;
      const curDiff = Math.sqrt(Math.pow(evCache[0].clientX - evCache[1].clientX, 2) + Math.pow(evCache[0].clientY - evCache[1].clientY, 2));
      if (prevDiff > 0) {
        let delta;
        if (isMobile()) {
          delta = (curDiff - prevDiff) * 0.01;
        } else {
          delta = curDiff > prevDiff ? 0.05 : -0.05;
        }
        scale = Math.min(Math.max(1, scale + delta), 4);
        if (scale <= 1) { posX = 0; posY = 0; }
        updateTransform();
      }
      prevDiff = curDiff;
    }
  }, { passive: false });

  const stopDrag = (e) => {
    isDragging = false;
    evCache = evCache.filter((ev) => ev.pointerId !== e.pointerId);
    if (evCache.length < 2) prevDiff = -1;
    if (scale <= 1) resetZoom();
  };

  imgHolder.addEventListener('pointerup', stopDrag);
  imgHolder.addEventListener('pointercancel', stopDrag);
  imgHolder.addEventListener('pointerleave', stopDrag);

  window.addEventListener('keydown', (e) => {
    if (portal.style.display === 'flex') {
      if (e.key === 'Escape') closePopup();
      if (e.key === 'ArrowLeft') navigate(-1);
      if (e.key === 'ArrowRight') navigate(1);
    }
  });
});
</script>

<section class="as-section">
  <div class="as-container">
    <div class="as-grid">
      <!-- Item 1 -->
      <article class="as-card-item">
        <div class="as-card__image-wrapper">
          <img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/B-003-edo-period-market-shopping-illustration.jpg" alt="江戸時代の八百屋で小判や銭貨を使い買い物をする町人たちのイラスト。当時の通貨や商売の様子を親しみやすいタッチで描いた歴史解説のイラストです。" class="as-card__img" loading="lazy">
        </div>
        <div class="as-card__body">
          <div class="as-card__title">
            <span class="as-card__marker"></span>
            <span class="as-card__category">基本タッチ</span>
            <span class="as-card__text">小判や銭貨を使い買い物をする町人</span>
          </div>
        </div>
      </article>

      <!-- Item 2 -->
      <article class="as-card-item">
        <div class="as-card__image-wrapper">
          <img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/A-001-disaster-prevention-telephone-illustration.jpg" alt="災害用伝言ダイヤルの体験利用日を啓発するイラスト。公衆電話を使う女性とカレンダーを確認する女性を対比させ、毎月1日と15日の備えを促すイラストです。" class="as-card__img" loading="lazy">
        </div>
        <div class="as-card__body">
          <div class="as-card__title">
            <span class="as-card__marker"></span>
            <span class="as-card__category">基本タッチ</span>
            <span class="as-card__text">災害用伝言ダイヤルの体験利用日</span>
          </div>
        </div>
      </article>

      <!-- Item 3 -->
      <article class="as-card-item">
        <div class="as-card__image-wrapper">
          <img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/A-007-tomato-pruning-side-shoot-illustration.jpg" alt="トマトの栽培で重要な「脇芽欠き」のやり方を解説するイラスト。主枝と葉の付け根から出る小さな脇芽を、指先で摘み取っている様子です。" class="as-card__img" loading="lazy">
        </div>
        <div class="as-card__body">
          <div class="as-card__title">
            <span class="as-card__marker"></span>
            <span class="as-card__category">基本タッチ</span>
            <span class="as-card__text">トマトの「脇芽欠き」</span>
          </div>
        </div>
      </article>
    </div>
  </div>

  <div id="as-popup-portal" class="as-popup" style="display: none;" aria-hidden="true">
    <div class="as-popup__overlay"></div>
    <div class="as-popup__wrapper">
      <div class="as-popup__container">
        <button class="as-popup__nav as-popup__nav--prev as-pc-only" aria-label="前へ"><span class="as-nav-arrow"></span></button>
        
        <div class="as-popup__content">
          <div class="as-popup__image-holder">
            <img decoding="async" src="" alt="" class="as-popup__img" draggable="false">
          </div>
          
          <div class="as-popup__mobile-title as-sp-only">
             <div class="as-popup__category-text"></div>
             <div class="as-popup__title-text"></div>
          </div>
          
          <div class="as-popup__mobile-nav as-sp-only">
             <button class="as-popup__nav as-popup__nav--prev" aria-label="前へ"><span class="as-nav-arrow"></span></button>
             <button class="as-popup__nav as-popup__nav--next" aria-label="次へ"><span class="as-nav-arrow"></span></button>
          </div>
          
          <div class="as-popup__info-bar as-pc-only">
             <div class="as-popup__caption">
               <span class="as-card__marker as-popup__marker"></span>
               <div class="as-popup__text-group">
                 <span class="as-popup__category-text"></span>
                 <span class="as-popup__title-text"></span>
               </div>
             </div>
          </div>
          
          <div class="as-popup__close-wrapper">
            <button class="as-popup__close" aria-label="閉じる">閉じる</button>
          </div>
        </div>
        
        <button class="as-popup__nav as-popup__nav--next as-pc-only" aria-label="次へ"><span class="as-nav-arrow"></span></button>
      </div>
    </div>
  </div>
</section>



<style data-wp-block-html="css">
/* * Footer Component
 * 上下のバウンディングボックスを指示に基づき50%削減
 */
.as-footer {
  /* 指定の310px固定幅 */
  --as-btn-width: 310px; 
  --as-color-orange: #EF8200;
  --as-color-orange-bright: #ff9d2b;
  --as-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  
  text-align: center;
  margin-top: 30px; /* 60pxから30pxへ変更 */
  padding: 10px 0;  /* 20pxから10pxへ変更 */
}

.as-btn {
  /* 固定幅設定 */
  display: inline-flex;
  width: var(--as-btn-width);
  max-width: calc(100% - 40px); /* スマホ時の画面端マージン */
  
  /* 基本形状と内部要素の中央配置 */
  align-items: center;
  justify-content: center; /* 内部コンテンツを中央に集める */
  height: 56px;
  padding: 0 24px;
  background-color: var(--as-color-orange);
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: var(--as-transition);
  box-shadow: 0 4px 15px rgba(239, 130, 0, 0.2);
  box-sizing: border-box;
  overflow: hidden; /* ホバー時のアイコンのはみ出し防止 */
}

/* ホバー時の洗練されたアニメーション */
@media (hover: hover) {
  .as-btn:hover {
    background-color: var(--as-color-orange-bright);
    transform: translateY(-4px); /* 少し高めに浮かせ、存在感を出す */
    box-shadow: 0 10px 25px rgba(239, 130, 0, 0.35);
    color: #ffffff !important;
  }
}

.as-btn:active {
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(239, 130, 0, 0.2);
}

/* テキストとアイコンのグループ（中央整列の核） */
.as-btn__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px; /* テキストとアイコンの程よい間隔 */
}

.as-btn__text {
  text-align: center;
  letter-spacing: 0.05em; /* 優雅な字間 */
}

.as-btn__icon {
  font-family: sans-serif; /* 矢印の形を安定させる */
  font-size: 1.1em;
  font-weight: 400; /* 矢印を少し細くして洗練させる */
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

/* ホバー時にアイコンのみが右に少し動く遊び心 */
.as-btn:hover .as-btn__icon {
  transform: translateX(4px);
}

/* モバイル対応 */
@media (max-width: 350px) {
  .as-btn {
    width: 100%;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 0 16px;
  }
  .as-btn__content {
    gap: 8px; /* スマホでは間隔を少し狭く */
  }
}
</style>

<footer class="as-footer">
  <div class="as-container">
    <a href="/works/" class="as-btn">
      <span class="as-btn__content">
        <span class="as-btn__text">実績一覧に戻る</span>
        <span class="as-btn__icon" aria-hidden="true">&gt;&gt;</span>
      </span>
    </a>
  </div>
</footer>



<style data-wp-block-html="css">
/* * Footer Component
 * 上下のバウンディングボックスを指示に基づき50%削減
 */
.as-footer {
  /* 指定の310px固定幅 */
  --as-btn-width: 310px; 
  --as-color-orange: #EF8200;
  --as-color-orange-bright: #ff9d2b;
  --as-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  
  text-align: center;
  margin-top: 30px; /* 60pxから30pxへ変更 */
  padding: 10px 0;  /* 20pxから10pxへ変更 */
}

.as-btn {
  /* 固定幅設定 */
  display: inline-flex;
  width: var(--as-btn-width);
  max-width: calc(100% - 40px); /* スマホ時の画面端マージン */
  
  /* 基本形状と内部要素の中央配置 */
  align-items: center;
  justify-content: center; /* 内部コンテンツを中央に集める */
  height: 56px;
  padding: 0 24px;
  background-color: var(--as-color-orange);
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: var(--as-transition);
  box-shadow: 0 4px 15px rgba(239, 130, 0, 0.2);
  box-sizing: border-box;
  overflow: hidden; /* ホバー時のアイコンのはみ出し防止 */
}

/* ホバー時の洗練されたアニメーション */
@media (hover: hover) {
  .as-btn:hover {
    background-color: var(--as-color-orange-bright);
    transform: translateY(-4px); /* 少し高めに浮かせ、存在感を出す */
    box-shadow: 0 10px 25px rgba(239, 130, 0, 0.35);
    color: #ffffff !important;
  }
}

.as-btn:active {
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(239, 130, 0, 0.2);
}

/* テキストとアイコンのグループ（中央整列の核） */
.as-btn__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px; /* テキストとアイコンの程よい間隔 */
}

.as-btn__text {
  text-align: center;
  letter-spacing: 0.05em; /* 優雅な字間 */
}

.as-btn__icon {
  font-family: sans-serif; /* 矢印の形を安定させる */
  font-size: 1.1em;
  font-weight: 400; /* 矢印を少し細くして洗練させる */
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

/* ホバー時にアイコンのみが右に少し動く遊び心 */
.as-btn:hover .as-btn__icon {
  transform: translateX(4px);
}

/* モバイル対応 */
@media (max-width: 350px) {
  .as-btn {
    width: 100%;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 0 16px;
  }
  .as-btn__content {
    gap: 8px; /* スマホでは間隔を少し狭く */
  }
}
</style>

<footer class="as-footer">
  <div class="as-container">
    <a href="/artstylesample/" class="as-btn">
      <span class="as-btn__content">
        <span class="as-btn__text">タッチ見本一覧を見る</span>
        <span class="as-btn__icon" aria-hidden="true">&gt;&gt;</span>
      </span>
    </a>
  </div>
</footer>



<style data-wp-block-html="css">
/* --- CTA Section Style --- */
.wp-cta-section {
    --bg-dark: #231815;
    --accent-orange: #EF8200; 
    --accent-green: #62B42C;  
    --main-red: #C04851;
    --text-phone: #C04851;
    
    position: relative;
    background-color: var(--bg-dark);
    padding: 70px 24px 60px;
    margin: 40px auto;
    font-family: 'Noto Sans JP', sans-serif;
    overflow: hidden;
}

/* 左右のアクセントライン */
.wp-cta-section::before { 
    content: ""; 
    position: absolute; 
    left: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-orange); 
    z-index: 5; 
}
.wp-cta-section::after { 
    content: ""; 
    position: absolute; 
    right: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-green); 
    z-index: 5; 
}

.wp-cta-triangle-bg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 25px solid #ffffff;
    z-index: 10;
}

.wp-cta-container {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}

.wp-cta-title {
    color: #ffffff;
    text-align: center;
    font-size: clamp(1.1rem, 3vw, 1.6rem);
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.6;
}

.wp-cta-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (min-width: 768px) {
    .wp-cta-content {
        flex-direction: row;
        align-items: stretch;
    }
}

/* 共通カード設定 */
.wp-cta-card {
    flex: 1;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* --- 電話ボタン --- */
.wp-cta-card--phone {
    background: #ffffff;
    border-radius: 4px;
    padding: 30px 15px;
    text-align: center;
}

.phone-main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.phone-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    flex-shrink: 0;
}
.phone-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.phone-number {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 700;
    color: var(--text-phone);
    line-height: 1;
}

.phone-sub {
    margin-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.label-time {
    background: var(--main-red);
    color: #fff;
    font-size: 0.8rem;
    padding: 3px 12px;
    border-radius: 20px;
}
.text-time { color: var(--text-phone); font-size: 0.9rem; font-weight: 700; }

/* --- お問い合わせボタン（修正箇所） --- */
.wp-cta-card--mail {
    background: var(--main-red);
    border: 1px solid #ffffff;
    /* 外枠の定義 */
    outline: 4px solid var(--main-red);
    outline-offset: 0; /* 枠のズレを防止 */
    margin: 4px; 
    padding: 30px 15px;
    color: #ffffff !important; 
}

.card-mail-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #ffffff;
}

.mail-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    flex-shrink: 0;
}
.mail-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.mail-text {
    font-size: clamp(1rem, 2.5vw, 1.2rem);
    font-weight: 700;
    line-height: 1.5;
    color: #ffffff !important; 
    text-align: left;
}

/* ホバーアクションの統一 */
.wp-cta-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.3);
    filter: brightness(1.05); /* 1.1から少し抑えて白飛びを防止 */
}

/* お問い合わせボタン専用：ホバー時にoutlineデザインが崩れないよう明示 */
.wp-cta-card--mail:hover {
    outline: 4px solid var(--main-red); /* 枠デザインを固定 */
}
</style>

<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&amp;display=swap" rel="stylesheet">

<section class="wp-cta-section">
    <div class="wp-cta-triangle-bg"></div>

    <div class="wp-cta-container">
        <div class="wp-cta-header">
            <h2 class="wp-cta-title">お困り事がありましたら、まずはお気軽にご相談ください。</h2>
        </div>

        <div class="wp-cta-content">
            <a href="tel:0355508846" class="wp-cta-card wp-cta-card--phone">
                <div class="card-phone-inner">
                    <div class="phone-main">
                        <span class="phone-icon">
                            <svg viewBox="0 0 24 24"><path d="M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z" fill="#C04851"></path></svg>
                        </span>
                        <span class="phone-number">03-5550-8846</span>
                    </div>
                    <div class="phone-sub">
                        <span class="label-time">受付時間</span>
                        <span class="text-time">15：00〜23：00（土日祝日も可）</span>
                    </div>
                </div>
            </a>

            <a href="/contact/" class="wp-cta-card wp-cta-card--mail">
                <div class="card-mail-inner">
                    <div class="mail-icon">
                        <svg viewBox="0 0 24 24"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z" fill="#FFFFFF"></path></svg>
                    </div>
                    <div class="mail-text">
                        見積のご依頼やご相談<br>お問い合わせはこちら
                    </div>
                </div>
            </a>
        </div>
    </div>
</section>
<p>投稿 <a href="https://studio-keystone.net/new-art-style-basicstyle-260502/">NEW ART STYLE【基本タッチ】</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>お知らせ-ホームページをリニューアルしました</title>
		<link>https://studio-keystone.net/news260501/</link>
		
		<dc:creator><![CDATA[keystone-admin]]></dc:creator>
		<pubDate>Fri, 01 May 2026 06:00:52 +0000</pubDate>
				<category><![CDATA[お知らせ]]></category>
		<guid isPermaLink="false">https://studio-keystone.net/?p=6382</guid>

					<description><![CDATA[<p>ホームページのリニューアルと新事業展開のお知らせ 　平素より格別のご支援を賜り、誠にありがとうございます。 このたび、株式会社スタジオ・キーストンはさらなる創造的価値の提供と事業発展を目指し、ホームページを全面リニューア [&#8230;]</p>
<p>投稿 <a href="https://studio-keystone.net/news260501/">お知らせ-ホームページをリニューアルしました</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top vk_block-margin-0--margin-bottom vk_block-margin-xxl--margin-top wp-block-hidden-mobile"><div class="vk_block-margin-md--margin-top"></div></div>



<style data-wp-block-html="css">
<style>

/* =============================================
   Wrapper (Astra & WordPress Full Width Reset)
   ============================================= */
.post-attribute-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    display: flex;
    justify-content: center; /* コンテナを中央に配置 */
}

/* =============================================
   Inner Container (Strict 1000px)
   ============================================= */
.post-attribute-container {
    width: 100%;
    max-width: 1000px; /* ここで1000pxに制限 */
    margin: 0 auto; /* 中央寄せ */
    padding: 0 20px; /* 画面端の余白（モバイル用） */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* 中身の要素は左寄せ */
}

/* =============================================
   Color Variants (Unchanged)
   ============================================= */
.is-style-creative .post-meta-unit__parent { background-color: #EF8200; }
.is-style-creative .post-meta-unit__title::before { background-color: #EF8200; }
.is-style-solution .post-meta-unit__parent { background-color: #69BE2C; }
.is-style-solution .post-meta-unit__title::before { background-color: #69BE2C; }
.is-style-news .post-meta-unit__parent { background-color: #3C9BFA; }
.is-style-news .post-meta-unit__title::before { background-color: #3C9BFA; }
.is-style-blog .post-meta-unit__parent { background-color: #000000; }
.is-style-blog .post-meta-unit__title::before { background-color: #000000; }
.is-style-default .post-meta-unit__parent { background-color: #888888; }
.is-style-default .post-meta-unit__title::before { background-color: #888888; }

/* =============================================
   Post Meta Unit UI (Strict SVG Reproduction)
   ============================================= */
.post-meta-unit {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.post-meta-unit__parent {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    padding: 6px 16px;
    margin-bottom: 12px;
    display: inline-block;
    border-radius: 8px;
    line-height: 1.2;
    /* 修正箇所：英語の大文字小文字を維持 */
    text-transform: none !important;
}

.post-meta-unit__title {
    font-size: 24px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.4;
    margin: 0 0 8px 0;
    padding: 0 0 0 16px; /* アクセント線との距離を調整 */
    position: relative;
    letter-spacing: -0.02em;
    /* 修正箇所：英語の大文字小文字を維持 */
    text-transform: none !important;
}

.post-meta-unit__title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 6px;
    height: 1.1em;
}

.post-meta-unit__date {
    font-size: 16px;
    color: #888888;
    letter-spacing: 0.05em;
}

/* =============================================
   Mobile Safety
   ============================================= */
@media (max-width: 1000px) {
    .post-attribute-container {
        padding: 0 20px;
    }
}
</style>
</style>

<section class="post-attribute-section alignfull">
  <div class="post-attribute-container">
        <div class="post-meta-unit is-style-news">
        <span class="post-meta-unit__parent">
            お知らせ        </span>

        <h2 class="post-meta-unit__title">
            お知らせ        </h2>

        <time class="post-meta-unit__date" datetime="2026-05-01T15:00:52+09:00">
            2026/05/01        </time>
    </div>
    
  </div>
</section>



<style data-wp-block-html="css">
/* ==========================================================================
   Studio Keystone Announcement Styles (Color Brushed Up)
   ========================================================================== */

:root {
    --ks-primary: #1B2233;
    --ks-creative: #EF8200; /* クリエイティブ事業部カラー */
    --ks-solution: #69BE2C; /* ソリューション事業部カラー */
    --ks-bg-light: #FFFFFF;
    --ks-text-main: #333333;
    --ks-text-muted: #666666;
    --ks-white: #FFFFFF;
}

.ks-announcement {
    max-width: 900px;
    margin: 2rem auto;
    padding: clamp(1.5rem, 5vw, 3rem);
    background: var(--ks-bg-light);
    color: var(--ks-text-main);
    line-height: 1.8;
    font-family: "Noto Sans JP", sans-serif;
}

/* Header Section */
.ks-announcement__header {
    text-align: center;
    margin-bottom: 3rem;
    border-bottom: 1px solid #EEEEEE;
    padding-bottom: 2rem;
}

.ks-announcement__label {
    display: inline-block;
    color: var(--ks-primary);
    font-weight: 700;
    letter-spacing: 0.1em;
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
}

.ks-announcement__title {
    font-size: clamp(1.25rem, 4vw, 1.75rem);
    font-weight: 700;
    color: var(--ks-primary);
    margin: 0;
}

.ks-announcement__lead {
    margin-bottom: 3rem;
}

/* Service Grid Cards */
.ks-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .ks-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.ks-card {
    background: var(--ks-white);
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #EAEAEA;
    border-top-width: 4px; /* 上部にカラーストライプを配置 */
}

/* クリエイティブ事業部のスタイル適用 */
.ks-card--creative {
    border-top-color: var(--ks-creative);
}
.ks-card--creative:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(239, 130, 0, 0.15); /* オレンジの影 */
}

/* ソリューション事業部のスタイル適用 */
.ks-card--solution {
    border-top-color: var(--ks-solution);
}
.ks-card--solution:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(105, 190, 44, 0.15); /* グリーンの影 */
}

.ks-card__link {
    text-decoration: none;
    color: inherit;
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Card Figure (Image Area) */
.ks-card__figure {
    position: relative;
    margin: 0;
    width: 100%;
    aspect-ratio: 16 / 9;
    background-color: #E2E8F0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* ダミー背景グラデーション */
.ks-card__figure--creative {
    background: linear-gradient(135deg, #FFB347, var(--ks-creative));
}

.ks-card__figure--solution {
    background: linear-gradient(135deg, #A8E063, var(--ks-solution));
}

.ks-card__figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.ks-card:hover .ks-card__figure img {
    transform: scale(1.05);
}

.ks-card__figure-text {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    position: absolute;
    z-index: 1;
    text-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

/* Badge */
.ks-card__badge {
    position: absolute;
    top: 15px;
    left: 15px;
    color: var(--ks-white);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 0.4rem 0.8rem;
    border-radius: 4px;
    z-index: 2;
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}

.ks-card__badge--solution {
    background: var(--ks-solution);
}

/* Card Content */
.ks-card__inner {
    padding: 2rem 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.ks-card__title {
    font-size: 0.85rem;
    text-transform: uppercase;
    color: var(--ks-text-muted);
    margin-bottom: 0.5rem;
    letter-spacing: 0.05em;
}

.ks-card__name {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--ks-primary);
    margin-bottom: 1rem;
}

.ks-card__desc {
    font-size: 0.95rem;
    margin: 0 0 1.5rem 0;
    flex-grow: 1;
}

/* Card Action (Text Button) */
.ks-card__action {
    display: inline-flex;
    align-items: center;
    font-weight: 700;
    font-size: 0.95rem;
    margin-top: auto;
}

.ks-card__action::after {
    content: '→';
    margin-left: 8px;
    transition: transform 0.3s ease;
}

.ks-card:hover .ks-card__action::after {
    transform: translateX(5px);
}

/* 個別カラーのアクション適用 */
.ks-card__action--creative {
    color: var(--ks-creative);
}

.ks-card__action--solution {
    color: var(--ks-solution);
}

/* Footer Section */
.ks-announcement__footer {
    text-align: center;
    font-weight: 500;
    border-top: 1px solid #EEEEEE;
    padding-top: 2rem;
    margin-top: 1rem;
}
</style>

<section class="ks-announcement">
    <div class="ks-announcement__header">
        <h1 class="ks-announcement__title">ホームページのリニューアルと新事業展開のお知らせ</h1>
    </div>

    <div class="ks-announcement__body">
        <p class="ks-announcement__lead">
            　平素より格別のご支援を賜り、誠にありがとうございます。<br>
このたび、株式会社スタジオ・キーストンはさらなる創造的価値の提供と事業発展を目指し、ホームページを全面リニューアルいたしました。<br><br>

　今回のリニューアルでは、新たに「ソリューション事業部」を立ち上げ、これまで以上に皆様のビジネスを多角的にサポートできる体制を整えました。<br>
もっと面白く、もっとわかりやすく「描く力で伝え」「動かす力で支え」お客様の想いを確かな形にしビジネス課題の解決に貢献してまいります。<br><br>

　また、デザインやページ構成を一新し、弊社のサービスや活動内容をより分かりやすくお伝えできるサイトを目指しました。<br>
新事業部の詳細や、より実用的で有益な情報をこれまで以上に見やすくわかりやすい形で発信してまいります。<br><br>

　新たな体制でスタートした株式会社スタジオ・キーストンは、社員一丸となり、サービスのさらなる向上と新たな価値の創出に取り組んでまいります。<br>
　今後とも、変わらぬご愛顧を賜りますよう、何卒よろしくお願い申し上げます。




        </p>

        <div class="ks-grid">
            <article class="ks-card ks-card--creative">
                <a href="https://studio-keystone.net/service/creativeservice/" class="ks-card__link">
                    <figure class="ks-card__figure ks-card__figure--creative">
                        <span class="ks-card__figure-text">Illustration &amp; Design</span>
                    </figure>
                    <div class="ks-card__inner">
                        <h3 class="ks-card__title">Creative Division</h3>
                        <p class="ks-card__name">クリエイティブ事業部</p>
                        <p class="ks-card__desc">テレビ番組やメディア向けのシチュエーションイラストなど、「こんな雰囲気で」に応える幅広いタッチで情報伝達の質を高めます。広告や雑誌などジャンルに囚われずお客様のご要望にお応えします</p>
                        <span class="ks-card__action ks-card__action--creative">事業詳細を見る</span>
                    </div>
                </a>
            </article>

            <article class="ks-card ks-card--solution">
                <a href="https://studio-keystone.net/service/solutionservice/" class="ks-card__link">
                    <figure class="ks-card__figure ks-card__figure--solution">
                        <span class="ks-card__badge ks-card__badge--solution">New Business</span>
                        <span class="ks-card__figure-text">Business Solution</span>
                    </figure>
                    <div class="ks-card__inner">
                        <h3 class="ks-card__title">Solution Division</h3>
                        <p class="ks-card__name">ソリューション事業部</p>
                        <p class="ks-card__desc">新規事業から事業改善など企業が抱える課題ををご一緒に解決します。課題を整理し実務レベルのシステム構築から実装と改善まで、アドバイスだけで終わらないソリューションを提供いたします。</p>
                        <span class="ks-card__action ks-card__action--solution">事業詳細を見る</span>
                    </div>
                </a>
            </article>
        </div>

        <p class="ks-announcement__footer">
            新たな体制となった株式会社スタジオ・キーストンを、今後ともよろしくお願い申し上げます。
        </p>
    </div>
</section>



<style data-wp-block-html="css">
/* * Footer Component
 * スラッグ: news 対応
 * サイズ・構造は維持し、色（#3C9BFA）のみを変更
 */
.as-footer {
  /* デザイン変数 */
  --as-btn-width: 310px; 
  --as-color-blue: #3C9BFA;
  --as-color-blue-bright: #64B5FF;
  --as-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  
  text-align: center;
  margin-top: 30px; /* 既存値維持 */
  padding: 10px 0;  /* 既存値維持 */
}

.as-btn {
  /* レイアウト設計 */
  display: inline-flex;
  width: var(--as-btn-width);
  max-width: calc(100% - 40px);
  height: 56px;
  align-items: center;
  justify-content: center;
  
  /* 装飾 */
  background-color: var(--as-color-blue);
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  box-shadow: 0 4px 15px rgba(60, 155, 250, 0.2);
  transition: var(--as-transition);
  box-sizing: border-box;
  overflow: hidden;
}

/* インタラクション */
@media (hover: hover) {
  .as-btn:hover {
    background-color: var(--as-color-blue-bright);
    transform: translateY(-4px);
    box-shadow: 0 10px 25px rgba(60, 155, 250, 0.35);
    color: #ffffff !important;
  }
}

.as-btn:active {
  transform: translateY(-1px);
}

/* 内部要素（BEM構造） */
.as-btn__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.as-btn__text {
  letter-spacing: 0.05em;
}

.as-btn__icon {
  font-family: sans-serif;
  font-size: 1.1em;
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

.as-btn:hover .as-btn__icon {
  transform: translateX(4px);
}

/* レスポンス対応 (768px未満・350px未満) */
@media (max-width: 350px) {
  .as-btn {
    width: 100%;
    font-size: 14px;
    padding: 0 16px;
  }
  .as-btn__content {
    gap: 8px;
  }
}
</style>

<footer class="as-footer">
  <div class="as-container">
    <a href="/news/" class="as-btn">
      <span class="as-btn__content">
        <span class="as-btn__text">お知らせ一覧に戻る</span>
        <span class="as-btn__icon" aria-hidden="true">&gt;&gt;</span>
      </span>
    </a>
  </div>
</footer>



<style data-wp-block-html="css">
/* --- CTA Section Style --- */
.wp-cta-section {
    --bg-dark: #231815;
    --accent-orange: #EF8200; 
    --accent-green: #62B42C;  
    --main-red: #C04851;
    --text-phone: #C04851;
    
    position: relative;
    background-color: var(--bg-dark);
    padding: 70px 24px 60px;
    margin: 40px auto;
    font-family: 'Noto Sans JP', sans-serif;
    overflow: hidden;
}

/* 左右のアクセントライン */
.wp-cta-section::before { 
    content: ""; 
    position: absolute; 
    left: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-orange); 
    z-index: 5; 
}
.wp-cta-section::after { 
    content: ""; 
    position: absolute; 
    right: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-green); 
    z-index: 5; 
}

.wp-cta-triangle-bg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 25px solid #ffffff;
    z-index: 10;
}

.wp-cta-container {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}

.wp-cta-title {
    color: #ffffff;
    text-align: center;
    font-size: clamp(1.1rem, 3vw, 1.6rem);
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.6;
}

.wp-cta-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (min-width: 768px) {
    .wp-cta-content {
        flex-direction: row;
        align-items: stretch;
    }
}

/* 共通カード設定 */
.wp-cta-card {
    flex: 1;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* --- 電話ボタン --- */
.wp-cta-card--phone {
    background: #ffffff;
    border-radius: 4px;
    padding: 30px 15px;
    text-align: center;
}

.phone-main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.phone-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    flex-shrink: 0;
}
.phone-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.phone-number {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 700;
    color: var(--text-phone);
    line-height: 1;
}

.phone-sub {
    margin-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.label-time {
    background: var(--main-red);
    color: #fff;
    font-size: 0.8rem;
    padding: 3px 12px;
    border-radius: 20px;
}
.text-time { color: var(--text-phone); font-size: 0.9rem; font-weight: 700; }

/* --- お問い合わせボタン（修正箇所） --- */
.wp-cta-card--mail {
    background: var(--main-red);
    border: 1px solid #ffffff;
    /* 外枠の定義 */
    outline: 4px solid var(--main-red);
    outline-offset: 0; /* 枠のズレを防止 */
    margin: 4px; 
    padding: 30px 15px;
    color: #ffffff !important; 
}

.card-mail-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #ffffff;
}

.mail-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    flex-shrink: 0;
}
.mail-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.mail-text {
    font-size: clamp(1rem, 2.5vw, 1.2rem);
    font-weight: 700;
    line-height: 1.5;
    color: #ffffff !important; 
    text-align: left;
}

/* ホバーアクションの統一 */
.wp-cta-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.3);
    filter: brightness(1.05); /* 1.1から少し抑えて白飛びを防止 */
}

/* お問い合わせボタン専用：ホバー時にoutlineデザインが崩れないよう明示 */
.wp-cta-card--mail:hover {
    outline: 4px solid var(--main-red); /* 枠デザインを固定 */
}
</style>

<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&amp;display=swap" rel="stylesheet">

<section class="wp-cta-section">
    <div class="wp-cta-triangle-bg"></div>

    <div class="wp-cta-container">
        <div class="wp-cta-header">
            <h2 class="wp-cta-title">お困り事がありましたら、まずはお気軽にご相談ください。</h2>
        </div>

        <div class="wp-cta-content">
            <a href="tel:0355508846" class="wp-cta-card wp-cta-card--phone">
                <div class="card-phone-inner">
                    <div class="phone-main">
                        <span class="phone-icon">
                            <svg viewBox="0 0 24 24"><path d="M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z" fill="#C04851"></path></svg>
                        </span>
                        <span class="phone-number">03-5550-8846</span>
                    </div>
                    <div class="phone-sub">
                        <span class="label-time">受付時間</span>
                        <span class="text-time">15：00〜23：00（土日祝日も可）</span>
                    </div>
                </div>
            </a>

            <a href="/contact/" class="wp-cta-card wp-cta-card--mail">
                <div class="card-mail-inner">
                    <div class="mail-icon">
                        <svg viewBox="0 0 24 24"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z" fill="#FFFFFF"></path></svg>
                    </div>
                    <div class="mail-text">
                        見積のご依頼やご相談<br>お問い合わせはこちら
                    </div>
                </div>
            </a>
        </div>
    </div>
</section>
<p>投稿 <a href="https://studio-keystone.net/news260501/">お知らせ-ホームページをリニューアルしました</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>クリエイティブ事業実績｜テレビ朝日「林修の今、知りたいでしょ！」#256｜	株式会社ユーコム</title>
		<link>https://studio-keystone.net/creative-ucom-2601/</link>
		
		<dc:creator><![CDATA[keystone-admin]]></dc:creator>
		<pubDate>Sat, 31 Jan 2026 15:00:28 +0000</pubDate>
				<category><![CDATA[クリエイティブ事業]]></category>
		<category><![CDATA[株式会社ユーコム]]></category>
		<guid isPermaLink="false">https://test.studio-keystone.net/?p=5032</guid>

					<description><![CDATA[<p>テレビ朝日　「林修の今、知りたいでしょ！」　#256 イラスト制作 番組テーマの「金」の解説を視覚的にわかりやすく面白くしたイラストを制作 　テレビ朝日系列の番組『林修の今、知りたいでしょ！』にて、視聴者に「金」の専 [&#8230;]</p>
<p>投稿 <a href="https://studio-keystone.net/creative-ucom-2601/">クリエイティブ事業実績｜テレビ朝日「林修の今、知りたいでしょ！」#256｜	株式会社ユーコム</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-vk-blocks-spacer vk_spacer vk_spacer-type-margin-top vk_block-margin-0--margin-bottom vk_block-margin-xxl--margin-top wp-block-hidden-mobile"><div class="vk_block-margin-md--margin-top"></div></div>



<style data-wp-block-html="css">
<style>

/* =============================================
   Wrapper (Astra & WordPress Full Width Reset)
   ============================================= */
.post-attribute-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    display: flex;
    justify-content: center; /* コンテナを中央に配置 */
}

/* =============================================
   Inner Container (Strict 1000px)
   ============================================= */
.post-attribute-container {
    width: 100%;
    max-width: 1000px; /* ここで1000pxに制限 */
    margin: 0 auto; /* 中央寄せ */
    padding: 0 20px; /* 画面端の余白（モバイル用） */
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: flex-start; /* 中身の要素は左寄せ */
}

/* =============================================
   Color Variants (Unchanged)
   ============================================= */
.is-style-creative .post-meta-unit__parent { background-color: #EF8200; }
.is-style-creative .post-meta-unit__title::before { background-color: #EF8200; }
.is-style-solution .post-meta-unit__parent { background-color: #69BE2C; }
.is-style-solution .post-meta-unit__title::before { background-color: #69BE2C; }
.is-style-news .post-meta-unit__parent { background-color: #3C9BFA; }
.is-style-news .post-meta-unit__title::before { background-color: #3C9BFA; }
.is-style-blog .post-meta-unit__parent { background-color: #000000; }
.is-style-blog .post-meta-unit__title::before { background-color: #000000; }
.is-style-default .post-meta-unit__parent { background-color: #888888; }
.is-style-default .post-meta-unit__title::before { background-color: #888888; }

/* =============================================
   Post Meta Unit UI (Strict SVG Reproduction)
   ============================================= */
.post-meta-unit {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.post-meta-unit__parent {
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    padding: 6px 16px;
    margin-bottom: 12px;
    display: inline-block;
    border-radius: 8px;
    line-height: 1.2;
    /* 修正箇所：英語の大文字小文字を維持 */
    text-transform: none !important;
}

.post-meta-unit__title {
    font-size: 24px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.4;
    margin: 0 0 8px 0;
    padding: 0 0 0 16px; /* アクセント線との距離を調整 */
    position: relative;
    letter-spacing: -0.02em;
    /* 修正箇所：英語の大文字小文字を維持 */
    text-transform: none !important;
}

.post-meta-unit__title::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 6px;
    height: 1.1em;
}

.post-meta-unit__date {
    font-size: 16px;
    color: #888888;
    letter-spacing: 0.05em;
}

/* =============================================
   Mobile Safety
   ============================================= */
@media (max-width: 1000px) {
    .post-attribute-container {
        padding: 0 20px;
    }
}
</style>
</style>

<section class="post-attribute-section alignfull">
  <div class="post-attribute-container">
        <div class="post-meta-unit is-style-creative">
        <span class="post-meta-unit__parent">
            クリエイティブ事業        </span>

        <h2 class="post-meta-unit__title">
            株式会社ユーコム        </h2>

        <time class="post-meta-unit__date" datetime="2026-02-01T00:00:28+09:00">
            2026/02/01        </time>
    </div>
    
  </div>
</section>



<style data-wp-block-html="css">
<style>
/**
 * Works Post Title Styles
 * Methodology: BEM
 * 調整内容: 
 * 1. モバイル版の上部強制スペース（::before）を33px（前回の3分の2）に調整。
 * 2. PC版（768px以上）の数値・表示は絶対に変更せず保持。
 * 3. コードの省略なし。
 */

/* --- モバイル版（初期値） --- */
.c-post-title {
    width: 100% !important;
    display: block !important; /* 強制スペーサー有効化のためblock指定 */
    box-sizing: border-box;
    background-color: transparent;
    padding-bottom: 50px;
    padding-left: 20px;
    padding-right: 20px;
}

/* モバイル版のみ：上部の強制スペースを33px（50pxの2/3）に設定 */
.c-post-title::before {
    content: "";
    display: block;
    width: 100%;
    height: 33px; /* 50px * 2/3 ≈ 33px */
    visibility: hidden;
    pointer-events: none;
}

.c-post-title__container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: center;
}

.c-post-title__text {
    /* 2025-2026標準のレスポンシブフォントサイズ */
    font-size: clamp(1.125rem, 0.8rem + 1.5vw, 1.75rem);
    font-weight: 700;
    
    /* 大文字小文字を保持 */
    text-transform: none; 
    
    /* モバイル用行間 */
    line-height: 1.3; 
    
    color: #000000;
    margin: 0;
    padding: 0;
    word-break: break-all;
    letter-spacing: 0.05em;
}

/* --- PC版（768px以上）：現状を完全に保持 --- */
@media (min-width: 768px) {
    /* PCでは強制スペーサーを非表示に */
    .c-post-title::before {
        display: none !important;
    }

    .c-post-title {
        display: flex !important; /* 現状のレイアウトを復元 */
        justify-content: center;
        align-items: center;
        padding-top: 40px !important;    /* 現状維持 */
        padding-bottom: 80px !important; /* 現状維持 */
    }
    
    .c-post-title__text {
        line-height: 1.5; /* 現状維持 */
    }
}
</style>

<section class="c-post-title">
    <div class="c-post-title__container">
        <h1 class="c-post-title__text">
            テレビ朝日　「林修の今、知りたいでしょ！」　#256 イラスト制作
        </h1>
    </div>
</section>



<style data-wp-block-html="css">
<style>
/**
 * Works Post Subtitle (H2) - Refined Layout
 * Methodology: BEM
 * Target: WordPress Custom HTML Block (Astra Compatible)
 */

/* 共通設定 (PC版の現状をベースにカラーのみ黒へ) */
.c-post-subtitle-compact {
    width: 100%;
    padding-top: 7px;
    padding-bottom: 9px;
    padding-left: 20px;
    padding-right: 20px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background-color: transparent;
    box-sizing: border-box;
}

.c-post-subtitle-compact__container {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    text-align: left;
}

.c-post-subtitle-compact__text {
    /* PC版フォントサイズ: clampにより可変（現状維持） */
    font-size: clamp(0.875rem, 0.7rem + 0.8vw, 1.25rem);
    font-weight: 700;
    line-height: 1.2;
    color: #000000; /* テキストカラーを黒に変更 */
    margin: 0;
    padding: 0;
    border: none;
    word-break: break-all;
    letter-spacing: 0.03em;
}

/**
 * モバイル版修正 (max-width: 767px)
 * 1. テキスト左揃え
 * 2. フォントサイズ 12pt (16px)
 * 3. 下余白を無くし、上に余白を作る
 */
@media (max-width: 767px) {
    .c-post-subtitle-compact {
        padding-top: 20px;    /* 上に余白を作る */
        padding-bottom: 0px;  /* 下の余白を無くす */
        padding-left: 20px;
        padding-right: 20px;
    }

    .c-post-subtitle-compact__container {
        text-align: left;     /* 左揃え */
    }

    .c-post-subtitle-compact__text {
        font-size: 16px;      /* 12pt相当に固定 */
        color: #000000;       /* モバイルも黒を維持 */
    }
}
</style>

<section class="c-post-subtitle-compact">
    <div class="c-post-subtitle-compact__container">
        <h2 class="c-post-subtitle-compact__text">
            番組テーマの「金」の解説を視覚的にわかりやすく面白くしたイラストを制作
        </h2>
    </div>
</section>



<style data-wp-block-html="css">
<style>
/* * Works Post Lead Section 
 * WordPress Astra Theme / Custom HTML Block 
 */

/* セクション全体の定義 */
.p-works-lead {
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 20px !important; /* 左右余白のみ保持 */
}

/* PC版：擬似要素を使って上下に「1文字分」の物理的な箱を強制挿入 */
.p-works-lead::before,
.p-works-lead::after {
    content: "" !important;
    display: block !important;
    /* 1文字分(14pt)のバウンディングボックスを生成 */
    height: 14pt !important; 
    width: 100% !important;
    pointer-events: none !important;
}

/* コンテナ */
.p-works-lead__container {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

/* テキストスタイル */
.p-works-lead__text {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-weight: 500;
    line-height: 1.6;
    color: #000000 !important;
    font-size: 14pt !important;
}

/* レスポンシブ設定（モバイル版：絶対保持） */
@media (max-width: 767px) {
    /* モバイル時は擬似要素による強制余白を解除（または10px相当に調整） */
    .p-works-lead::before,
    .p-works-lead::after {
        height: 10px !important;
    }
    
    .p-works-lead {
        padding: 0 20px !important;
    }

    .p-works-lead__text {
        font-size: 11pt !important;
        line-height: 1.5 !important;
    }
}
</style>

<section class="p-works-lead">
    <div class="p-works-lead__container">
        <h3 class="p-works-lead__text">
            　テレビ朝日系列の番組『林修の今、知りたいでしょ！』にて、視聴者に「金」の専門的なテーマを視覚的に分かりやすく解説するための番組用イラストを制作しました。
        </h3>
    </div>
</section>



<style data-wp-block-html="css">
<style>
/* * Works Post Lead Section 
 * WordPress Astra Theme / Custom HTML Block 
 */

/* セクション全体の定義 */
.p-works-lead {
    width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 20px !important; /* 左右余白のみ保持 */
}

/* PC版：擬似要素を使って上下に「1文字分」の物理的な箱を強制挿入 */
.p-works-lead::before,
.p-works-lead::after {
    content: "" !important;
    display: block !important;
    /* 1文字分(14pt)のバウンディングボックスを生成 */
    height: 14pt !important; 
    width: 100% !important;
    pointer-events: none !important;
}

/* コンテナ */
.p-works-lead__container {
    width: 100% !important;
    max-width: 1000px !important;
    margin: 0 auto !important;
}

/* テキストスタイル */
.p-works-lead__text {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-weight: 500;
    line-height: 1.6;
    color: #000000 !important;
    font-size: 14pt !important;
}

/* レスポンシブ設定（モバイル版：絶対保持） */
@media (max-width: 767px) {
    /* モバイル時は擬似要素による強制余白を解除（または10px相当に調整） */
    .p-works-lead::before,
    .p-works-lead::after {
        height: 10px !important;
    }
    
    .p-works-lead {
        padding: 0 20px !important;
    }

    .p-works-lead__text {
        font-size: 11pt !important;
        line-height: 1.5 !important;
    }
}
</style>

<section class="p-works-lead">
    <div class="p-works-lead__container">
        <h3 class="p-works-lead__text">
            　バラエティ番組という性質上、画面に映る時間が短いカットでも、「何の内容なのか」が即座に判別できるような明快な構図とキャラクター配置を意識して制作しています。 <br>
            　「金」にまつわる多様なエピソードを番組のトーンに合わせた親しみやすい基本タッチのイラストで複数カット制作し、子供から大人まで幅広い層の視聴者が楽しみながら学べるよう工夫しました。  

        </h3>
    </div>
</section>



<style data-wp-block-html="css">
/* --- Base Variables --- */
.as-section {
  --as-dynamic-marker-color: #EF8200; 
  --as-color-orange: #EF8200;
  --as-color-bg: #ffffff;
  --as-text-black: #000000;
  --as-transition-duration: 0.5s;
  --as-transition-curve: cubic-bezier(0.25, 1, 0.5, 1);
  
  position: relative;
  padding: clamp(40px, 8vw, 80px) 20px;
  background-color: var(--as-color-bg);
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  margin-bottom: 50px;
  line-height: 1.6;
}

.as-container { max-width: 1000px; margin: 0 auto; position: relative; z-index: 2; }

/* --- Grid & Cards --- */
.as-grid { 
  display: grid; 
  grid-template-columns: repeat(2, 1fr); 
  gap: 20px 15px; 
  margin-bottom: 40px; 
}

@media (min-width: 768px) { 
  .as-grid { 
    grid-template-columns: repeat(2, 1fr); 
    gap: 30px; 
  } 
}
@media (min-width: 1024px) { 
  .as-grid { 
    grid-template-columns: repeat(3, 1fr); 
  } 
}

.as-card-item { cursor: pointer; display: flex; flex-direction: column; }

.as-card__image-wrapper { 
  aspect-ratio: 1.5 / 1; 
  background-color: #d1d5d8; 
  overflow: hidden; 
  margin-bottom: 12px; 
  transition: transform var(--as-transition-duration) var(--as-transition-curve), box-shadow var(--as-transition-duration) var(--as-transition-curve);
}

.as-card__img { width: 100%; height: 100%; object-fit: cover; }

@media (min-width: 1024px) {
  .as-card-item:hover .as-card__image-wrapper { 
    transform: translateY(-8px) scale(1.03); 
    box-shadow: 0 10px 20px rgba(0,0,0,0.15); 
  }
}

.as-card__title { font-size: 13px; font-weight: bold; display: flex; align-items: flex-start; gap: 6px; line-height: 1.4; }
.as-card__marker { width: 4px; height: 1.2em; background-color: var(--as-dynamic-marker-color); flex-shrink: 0; margin-top: 2px; }

@media (min-width: 768px) {
  .as-card__title { font-size: 14px; align-items: center; }
  .as-card__marker { margin-top: 0; }
}

/* --- Popup --- */
.as-popup { 
  position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10000; 
  display: flex; align-items: center; justify-content: center;
  overscroll-behavior: none;
}
.as-popup__overlay { 
  position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
  background-color: rgba(142, 158, 166, 0.9); 
}
.as-popup__wrapper { 
  position: relative; z-index: 10001; 
  width: 100%; 
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) { 
  .as-popup__wrapper { 
    width: 90%; 
    max-width: 1000px; 
    height: 100vh;
    margin: auto;
  } 
}
.as-popup__container { 
  display: flex; 
  align-items: center; 
  justify-content: center;
  width: 100%;
}
.as-popup__content { 
  flex: 1; 
  display: flex; 
  flex-direction: column; 
  justify-content: center; 
  width: 100%; 
  gap: 10px; 
}
@media (min-width: 768px) {
  .as-popup__content { padding-top: 60px; }
}
.as-popup__image-holder { 
  width: 100%; max-height: 65vh; 
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; background-color: transparent;
}
.as-popup__img { width: 100%; height: auto; max-height: 65vh; object-fit: contain; }
@media (min-width: 768px) {
  .as-popup__image-holder { touch-action: none; cursor: grab; max-height: 70vh; }
  .as-popup__img { width: auto; max-width: 100%; max-height: 70vh; will-change: transform; }
}
.as-popup__info-bar { padding: 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; color: #fff; }
.as-popup__caption { flex: 1; display: flex; align-items: center; gap: 10px; justify-content: center; }
@media (max-width: 767px) { .as-popup__marker { display: none; } }
.as-popup__text-group { display: flex; flex-direction: column; line-height: 1.2; }
.as-popup__category-text { font-size: 12px; font-weight: bold; }
.as-popup__title-text { font-size: 16px; font-weight: 900; }
@media (min-width: 768px) {
  .as-popup__info-bar { padding: 20px 0; justify-content: flex-start; }
  .as-popup__caption { justify-content: flex-start; }
  .as-popup__text-group { flex-direction: row; gap: 15px; }
  .as-popup__category-text, .as-popup__title-text { font-size: 24px; }
}
.as-popup__close-wrapper { display: flex; justify-content: center; width: 100%; padding-top: 15px; }
.as-popup__close {
  background: transparent !important; border: none; cursor: pointer;
  color: #cccccc !important; font-size: 18px; font-weight: bold; transition: 0.3s;
  padding: 10px 20px;
}
.as-popup__close:hover { color: #ffffff !important; }
.as-popup__nav { background: transparent !important; border: none; cursor: pointer; color: #cccccc !important; transition: 0.3s; }
.as-popup__nav:hover { color: #ffffff !important; }
.as-nav-arrow { display: block; width: 20px; height: 20px; border-top: 4px solid currentColor; border-left: 4px solid currentColor; margin: 0 10px; }
.as-popup__nav--prev .as-nav-arrow { transform: rotate(-45deg); }
.as-popup__nav--next .as-nav-arrow { transform: rotate(135deg); }
@media (min-width: 768px) { .as-nav-arrow { width: 40px; height: 40px; border-width: 5px; margin: 0; } }

.as-sp-only { display: flex; }
.as-pc-only { display: none; }
@media (min-width: 768px) { .as-sp-only { display: none; } .as-pc-only { display: flex; } }

body.as-modal-open { overflow: hidden !important; position: fixed; width: 100%; height: 100%; }

/* --- モバイル用ポップアップのレイアウト調整 --- */
@media (max-width: 767px) {
  .as-popup__container {
    height: 100dvh;
  }
  .as-popup__content {
    height: 100%;
    gap: 5px !important; 
    padding-bottom: 10px;
    display: flex;
    flex-direction: column;
  }
  .as-popup__image-holder {
    flex: 1;
    min-height: 0;
    max-height: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    touch-action: none !important; 
  }
  .as-popup__img {
    width: 100vw !important;
    height: 100% !important;
    max-height: none !important;
    object-fit: contain !important;
  }
  .as-popup__info-bar {
    flex-shrink: 0;
    padding: 5px 15px !important;
  }
  .as-popup__close-wrapper {
    flex-shrink: 0;
    padding-top: 0 !important;
  }
  .as-popup__close {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
}
</style>

<script data-wp-block-html="js">
document.addEventListener('DOMContentLoaded', () => {
  const portal = document.getElementById('as-popup-portal');
  if (!portal) return;

  const imgEl = portal.querySelector('.as-popup__img');
  const imgHolder = portal.querySelector('.as-popup__image-holder');
  const popupCategoryEl = portal.querySelector('.as-popup__category-text');
  const popupTitleTextEl = portal.querySelector('.as-popup__title-text');
  
  const prevBtns = portal.querySelectorAll('.as-popup__nav--prev');
  const nextBtns = portal.querySelectorAll('.as-popup__nav--next');
  const closeBtn = portal.querySelector('.as-popup__close');

  let currentIndex = 0;
  let scale = 1, posX = 0, posY = 0;
  let isDragging = false;
  let startX, startY;
  let evCache = [];
  let prevDiff = -1;
  let scrollPos = 0;

  // タップ・スワイプ判定用の座標変数
  let touchStartX = 0;
  let touchEndX = 0;
  let startXClick = 0;
  let startYClick = 0;

  const isMobile = () => window.innerWidth < 768;

  const lockScroll = () => {
    scrollPos = window.pageYOffset;
    document.body.classList.add('as-modal-open');
    document.body.style.top = `-${scrollPos}px`;
  };

  const unlockScroll = () => {
    document.body.classList.remove('as-modal-open');
    document.body.style.top = '';
    window.scrollTo(0, scrollPos);
  };

  const updateTransform = () => {
    imgEl.style.transform = `translate(${posX}px, ${posY}px) scale(${scale})`;
  };

  const resetZoom = () => {
    scale = 1; posX = 0; posY = 0;
    imgEl.style.transition = 'transform 0.3s ease';
    updateTransform();
  };

  const updatePopup = (index) => {
    const cards = Array.from(document.querySelectorAll('.as-card-item'));
    const target = cards[index];
    if(!target) return;
    
    imgEl.src = target.querySelector('.as-card__img').src;
    popupCategoryEl.textContent = target.querySelector('.as-card__category').textContent;
    popupTitleTextEl.textContent = target.querySelector('.as-card__text').textContent;
    currentIndex = index;
    resetZoom();
  };

  const openPopup = (index) => {
    lockScroll();
    updatePopup(index);
    portal.style.display = 'flex';
    portal.setAttribute('aria-hidden', 'false');
  };

  const closePopup = () => {
    portal.style.display = 'none';
    portal.setAttribute('aria-hidden', 'true');
    unlockScroll();
    resetZoom();
  };

  const navigate = (dir) => {
    const cards = Array.from(document.querySelectorAll('.as-card-item'));
    currentIndex = (currentIndex + dir + cards.length) % cards.length;
    updatePopup(currentIndex);
  };

  // --- スワイプページ送りの処理 ---
  const handleTouchStart = (e) => {
    if (!isMobile() || scale > 1) return;
    touchStartX = e.changedTouches[0].screenX;
  };

  const handleTouchEnd = (e) => {
    if (!isMobile() || scale > 1) return;
    touchEndX = e.changedTouches[0].screenX;
    
    const swipeThreshold = 50;
    if (touchEndX < touchStartX - swipeThreshold) {
      navigate(1);
    } else if (touchEndX > touchStartX + swipeThreshold) {
      navigate(-1);
    }
  };

  imgHolder.addEventListener('touchstart', handleTouchStart, { passive: true });
  imgHolder.addEventListener('touchend', handleTouchEnd, { passive: true });


  // --- 背景タップ・「閉じる」動作の実装 ---
  portal.addEventListener('pointerdown', (e) => {
    startXClick = e.clientX;
    startYClick = e.clientY;
  });

  portal.addEventListener('click', (e) => {
    // スワイプやピンチズーム等の指の移動があった場合はクリック（閉じる動作）と判定しない
    if (Math.abs(e.clientX - startXClick) > 10 || Math.abs(e.clientY - startYClick) > 10) return;

    // 「ナビゲーション（ページ送りボタン）」をクリックした場合は絶対に閉じない（全デバイス共通）
    if (e.target.closest('.as-popup__nav')) return;

    // PC版のみ、「画像自体」をクリックした場合は閉じない（モバイル版は画像タップでも閉じる）
    if (!isMobile() && e.target.closest('.as-popup__img')) return;
    
    // それ以外の要素（背景、モバイルでの画像、テキスト等）をタップした場合は閉じる
    closePopup();
  });


  // --- ボタンクリック処理 ---
  document.addEventListener('click', (e) => {
    const card = e.target.closest('.as-card-item');
    if (card) {
      const allCards = Array.from(document.querySelectorAll('.as-card-item'));
      openPopup(allCards.indexOf(card));
    }
  });

  closeBtn.onclick = (e) => { e.stopPropagation(); closePopup(); };
  prevBtns.forEach(btn => btn.onclick = (e) => { e.stopPropagation(); navigate(-1); });
  nextBtns.forEach(btn => btn.onclick = (e) => { e.stopPropagation(); navigate(1); });


  // --- PCホイール / モバイル・PC両対応ドラッグ・ピンチズーム処理 ---
  imgHolder.addEventListener('wheel', (e) => {
    if (portal.style.display === 'none' || isMobile()) return;
    e.preventDefault(); 
    const delta = e.deltaY > 0 ? -0.2 : 0.2;
    scale = Math.min(Math.max(1, scale + delta), 4);
    if (scale <= 1) { posX = 0; posY = 0; }
    updateTransform();
  }, { passive: false });

  imgHolder.addEventListener('pointerdown', (e) => {
    evCache.push(e);
    if (scale > 1 && evCache.length === 1) {
      isDragging = true;
      imgEl.style.transition = 'none';
      startX = e.clientX - posX;
      startY = e.clientY - posY;
      imgEl.setPointerCapture(e.pointerId);
    }
  });

  imgHolder.addEventListener('pointermove', (e) => {
    if (portal.style.display === 'none') return;

    const index = evCache.findIndex((c) => c.pointerId === e.pointerId);
    if (index !== -1) evCache[index] = e;

    if (isDragging && evCache.length === 1) {
      posX = e.clientX - startX;
      posY = e.clientY - startY;
      updateTransform();
    }

    if (evCache.length === 2) {
      isDragging = false;
      const curDiff = Math.sqrt(Math.pow(evCache[0].clientX - evCache[1].clientX, 2) + Math.pow(evCache[0].clientY - evCache[1].clientY, 2));
      if (prevDiff > 0) {
        let delta;
        if (isMobile()) {
          delta = (curDiff - prevDiff) * 0.01;
        } else {
          delta = curDiff > prevDiff ? 0.05 : -0.05;
        }
        scale = Math.min(Math.max(1, scale + delta), 4);
        if (scale <= 1) { posX = 0; posY = 0; }
        updateTransform();
      }
      prevDiff = curDiff;
    }
  }, { passive: false });

  const stopDrag = (e) => {
    isDragging = false;
    evCache = evCache.filter((ev) => ev.pointerId !== e.pointerId);
    if (evCache.length < 2) prevDiff = -1;
    if (scale <= 1) resetZoom();
  };

  imgHolder.addEventListener('pointerup', stopDrag);
  imgHolder.addEventListener('pointercancel', stopDrag);
  imgHolder.addEventListener('pointerleave', stopDrag);

  window.addEventListener('keydown', (e) => {
    if (portal.style.display === 'flex') {
      if (e.key === 'Escape') closePopup();
      if (e.key === 'ArrowLeft') navigate(-1);
      if (e.key === 'ArrowRight') navigate(1);
    }
  });
});
</script>

<section class="as-section">
  <div class="as-container">
    <div class="as-grid">
      <article class="as-card-item">
        <div class="as-card__image-wrapper">
          <img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/legend-gold-potato-farmer-illustration-26-01.jpg" alt="金沢の由来とも言われる「芋掘り藤五郎」の伝説。掘り出した芋に金がついていたエピソードの解説イラストです。" class="as-card__img" loading="lazy">
        </div>
        <div class="as-card__body">
          <div class="as-card__title">
            <span class="as-card__marker"></span>
            <span class="as-card__category">基本タッチ</span>
            <span class="as-card__text">「芋掘り藤五郎」の伝説</span>
          </div>
        </div>
      </article>

      <article class="as-card-item">
        <div class="as-card__image-wrapper"><img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/hidden-golden-buddha-statue-illustration-26-01.jpg" alt="劣化しない金の性質を象徴する、古い像の中から純金の仏像が現れる衝撃の瞬間を描いたイラスト。数千年前の金が輝きを失わない永続性を表現しました。" class="as-card__img" loading="lazy"></div>
        <div class="as-card__body"><div class="as-card__title"><span class="as-card__marker"></span><span class="as-card__category">基本タッチ</span><span class="as-card__text">劣化しない金の性質</span></div></div>
      </article>
      <article class="as-card-item">
        <div class="as-card__image-wrapper"><img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/gold-plating-electronic-circuit-26-01.jpg" alt="金の優れた導電性と耐食性を活かした、電子機器の基板へ金コーティングを施す最新技術の図解イラストです。" class="as-card__img" loading="lazy"></div>
        <div class="as-card__body"><div class="as-card__title"><span class="as-card__marker"></span><span class="as-card__category">基本タッチ</span><span class="as-card__text">電子機器の基板へ金コーティング</span></div></div>
      </article>
      <article class="as-card-item">
        <div class="as-card__image-wrapper"><img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/eternal-value-gold-vs-money-illustration-26-01.jpg" alt="国家の破綻や戦争の影響を受けない「不変の価値」を象徴する金のイラスト。数千年前から劣化せず、有事でも信頼される金の歴史的背景を説明しました。" class="as-card__img" loading="lazy"></div>
        <div class="as-card__body"><div class="as-card__title"><span class="as-card__marker"></span><span class="as-card__category">基本タッチ</span><span class="as-card__text">有事でも信頼される金の歴史</span></div></div>
      </article>
      <article class="as-card-item">
        <div class="as-card__image-wrapper"><img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/gold-smuggling-scam-airport_illustration-26-01.jpg" alt="テレビ番組の金特集イラスト。空港で闇バイトとして金の運び屋を依頼されるトラブルシーンのイメージイラストです。" class="as-card__img" loading="lazy"></div>
        <div class="as-card__body"><div class="as-card__title"><span class="as-card__marker"></span><span class="as-card__category">基本タッチ</span><span class="as-card__text">金の運び屋を依頼されるトラブル</span></div></div>
      </article>
      <article class="as-card-item">
        <div class="as-card__image-wrapper"><img decoding="async" src="https://studio-keystone.net/wp-content/uploads/2026/04/white-compact-car-icon-illustration-26-01.jpg" alt="一般的な乗用車（コンパクトカー）のアイコンイラストです。" class="as-card__img" loading="lazy"></div>
        <div class="as-card__body"><div class="as-card__title"><span class="as-card__marker"></span><span class="as-card__category">基本タッチ</span><span class="as-card__text">一般的な乗用車（コンパクトカー）</span></div></div>
      </article>
    </div>
  </div>

  <div id="as-popup-portal" class="as-popup" style="display: none;" aria-hidden="true">
    <div class="as-popup__overlay"></div>
    <div class="as-popup__wrapper">
      <div class="as-popup__container">
        <button class="as-popup__nav as-popup__nav--prev as-pc-only" aria-label="前へ"><span class="as-nav-arrow"></span></button>
        <div class="as-popup__content">
          <div class="as-popup__image-holder">
            <img decoding="async" src="" alt="" class="as-popup__img" draggable="false">
          </div>
          <div class="as-popup__info-bar">
             <button class="as-popup__nav as-popup__nav--prev as-sp-only" aria-label="前へ"><span class="as-nav-arrow"></span></button>
             
             <div class="as-popup__caption">
               <span class="as-card__marker as-popup__marker"></span>
               <div class="as-popup__text-group">
                 <span class="as-popup__category-text"></span>
                 <span class="as-popup__title-text"></span>
               </div>
             </div>
             
             <button class="as-popup__nav as-popup__nav--next as-sp-only" aria-label="次へ"><span class="as-nav-arrow"></span></button>
          </div>
          <div class="as-popup__close-wrapper">
            <button class="as-popup__close" aria-label="閉じる">閉じる</button>
          </div>
        </div>
        <button class="as-popup__nav as-popup__nav--next as-pc-only" aria-label="次へ"><span class="as-nav-arrow"></span></button>
      </div>
    </div>
  </div>
</section>



<style data-wp-block-html="css">
/* * Footer Component
 * 上下のバウンディングボックスを指示に基づき50%削減
 */
.as-footer {
  /* 指定の310px固定幅 */
  --as-btn-width: 310px; 
  --as-color-orange: #EF8200;
  --as-color-orange-bright: #ff9d2b;
  --as-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  
  text-align: center;
  margin-top: 30px; /* 60pxから30pxへ変更 */
  padding: 10px 0;  /* 20pxから10pxへ変更 */
}

.as-btn {
  /* 固定幅設定 */
  display: inline-flex;
  width: var(--as-btn-width);
  max-width: calc(100% - 40px); /* スマホ時の画面端マージン */
  
  /* 基本形状と内部要素の中央配置 */
  align-items: center;
  justify-content: center; /* 内部コンテンツを中央に集める */
  height: 56px;
  padding: 0 24px;
  background-color: var(--as-color-orange);
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: var(--as-transition);
  box-shadow: 0 4px 15px rgba(239, 130, 0, 0.2);
  box-sizing: border-box;
  overflow: hidden; /* ホバー時のアイコンのはみ出し防止 */
}

/* ホバー時の洗練されたアニメーション */
@media (hover: hover) {
  .as-btn:hover {
    background-color: var(--as-color-orange-bright);
    transform: translateY(-4px); /* 少し高めに浮かせ、存在感を出す */
    box-shadow: 0 10px 25px rgba(239, 130, 0, 0.35);
    color: #ffffff !important;
  }
}

.as-btn:active {
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(239, 130, 0, 0.2);
}

/* テキストとアイコンのグループ（中央整列の核） */
.as-btn__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px; /* テキストとアイコンの程よい間隔 */
}

.as-btn__text {
  text-align: center;
  letter-spacing: 0.05em; /* 優雅な字間 */
}

.as-btn__icon {
  font-family: sans-serif; /* 矢印の形を安定させる */
  font-size: 1.1em;
  font-weight: 400; /* 矢印を少し細くして洗練させる */
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

/* ホバー時にアイコンのみが右に少し動く遊び心 */
.as-btn:hover .as-btn__icon {
  transform: translateX(4px);
}

/* モバイル対応 */
@media (max-width: 350px) {
  .as-btn {
    width: 100%;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 0 16px;
  }
  .as-btn__content {
    gap: 8px; /* スマホでは間隔を少し狭く */
  }
}
</style>

<footer class="as-footer">
  <div class="as-container">
    <a href="/works/" class="as-btn">
      <span class="as-btn__content">
        <span class="as-btn__text">実績一覧に戻る</span>
        <span class="as-btn__icon" aria-hidden="true">&gt;&gt;</span>
      </span>
    </a>
  </div>
</footer>



<style data-wp-block-html="css">
/* * Footer Component
 * 上下のバウンディングボックスを指示に基づき50%削減
 */
.as-footer {
  /* 指定の310px固定幅 */
  --as-btn-width: 310px; 
  --as-color-orange: #EF8200;
  --as-color-orange-bright: #ff9d2b;
  --as-transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
  
  text-align: center;
  margin-top: 30px; /* 60pxから30pxへ変更 */
  padding: 10px 0;  /* 20pxから10pxへ変更 */
}

.as-btn {
  /* 固定幅設定 */
  display: inline-flex;
  width: var(--as-btn-width);
  max-width: calc(100% - 40px); /* スマホ時の画面端マージン */
  
  /* 基本形状と内部要素の中央配置 */
  align-items: center;
  justify-content: center; /* 内部コンテンツを中央に集める */
  height: 56px;
  padding: 0 24px;
  background-color: var(--as-color-orange);
  color: #ffffff !important;
  text-decoration: none !important;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: var(--as-transition);
  box-shadow: 0 4px 15px rgba(239, 130, 0, 0.2);
  box-sizing: border-box;
  overflow: hidden; /* ホバー時のアイコンのはみ出し防止 */
}

/* ホバー時の洗練されたアニメーション */
@media (hover: hover) {
  .as-btn:hover {
    background-color: var(--as-color-orange-bright);
    transform: translateY(-4px); /* 少し高めに浮かせ、存在感を出す */
    box-shadow: 0 10px 25px rgba(239, 130, 0, 0.35);
    color: #ffffff !important;
  }
}

.as-btn:active {
  transform: translateY(-1px);
  box-shadow: 0 2px 10px rgba(239, 130, 0, 0.2);
}

/* テキストとアイコンのグループ（中央整列の核） */
.as-btn__content {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px; /* テキストとアイコンの程よい間隔 */
}

.as-btn__text {
  text-align: center;
  letter-spacing: 0.05em; /* 優雅な字間 */
}

.as-btn__icon {
  font-family: sans-serif; /* 矢印の形を安定させる */
  font-size: 1.1em;
  font-weight: 400; /* 矢印を少し細くして洗練させる */
  transition: transform 0.3s ease;
  flex-shrink: 0;
}

/* ホバー時にアイコンのみが右に少し動く遊び心 */
.as-btn:hover .as-btn__icon {
  transform: translateX(4px);
}

/* モバイル対応 */
@media (max-width: 350px) {
  .as-btn {
    width: 100%;
    font-size: 14px;
    letter-spacing: 0.04em;
    padding: 0 16px;
  }
  .as-btn__content {
    gap: 8px; /* スマホでは間隔を少し狭く */
  }
}
</style>

<footer class="as-footer">
  <div class="as-container">
    <a href="/artstylesample/" class="as-btn">
      <span class="as-btn__content">
        <span class="as-btn__text">タッチ見本一覧を見る</span>
        <span class="as-btn__icon" aria-hidden="true">&gt;&gt;</span>
      </span>
    </a>
  </div>
</footer>



<style data-wp-block-html="css">
/* --- CTA Section Style --- */
.wp-cta-section {
    --bg-dark: #231815;
    --accent-orange: #EF8200; 
    --accent-green: #62B42C;  
    --main-red: #C04851;
    --text-phone: #C04851;
    
    position: relative;
    background-color: var(--bg-dark);
    padding: 70px 24px 60px;
    margin: 40px auto;
    font-family: 'Noto Sans JP', sans-serif;
    overflow: hidden;
}

/* 左右のアクセントライン */
.wp-cta-section::before { 
    content: ""; 
    position: absolute; 
    left: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-orange); 
    z-index: 5; 
}
.wp-cta-section::after { 
    content: ""; 
    position: absolute; 
    right: 0; top: 0; bottom: 0; 
    width: 8px; 
    background: var(--accent-green); 
    z-index: 5; 
}

.wp-cta-triangle-bg {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-top: 25px solid #ffffff;
    z-index: 10;
}

.wp-cta-container {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
}

.wp-cta-title {
    color: #ffffff;
    text-align: center;
    font-size: clamp(1.1rem, 3vw, 1.6rem);
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 1.6;
}

.wp-cta-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (min-width: 768px) {
    .wp-cta-content {
        flex-direction: row;
        align-items: stretch;
    }
}

/* 共通カード設定 */
.wp-cta-card {
    flex: 1;
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease, filter 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* --- 電話ボタン --- */
.wp-cta-card--phone {
    background: #ffffff;
    border-radius: 4px;
    padding: 30px 15px;
    text-align: center;
}

.phone-main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.phone-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    flex-shrink: 0;
}
.phone-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.phone-number {
    font-size: clamp(1.8rem, 4vw, 2.5rem);
    font-weight: 700;
    color: var(--text-phone);
    line-height: 1;
}

.phone-sub {
    margin-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.label-time {
    background: var(--main-red);
    color: #fff;
    font-size: 0.8rem;
    padding: 3px 12px;
    border-radius: 20px;
}
.text-time { color: var(--text-phone); font-size: 0.9rem; font-weight: 700; }

/* --- お問い合わせボタン（修正箇所） --- */
.wp-cta-card--mail {
    background: var(--main-red);
    border: 1px solid #ffffff;
    /* 外枠の定義 */
    outline: 4px solid var(--main-red);
    outline-offset: 0; /* 枠のズレを防止 */
    margin: 4px; 
    padding: 30px 15px;
    color: #ffffff !important; 
}

.card-mail-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #ffffff;
}

.mail-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 55px;
    height: 55px;
    flex-shrink: 0;
}
.mail-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block;
}

.mail-text {
    font-size: clamp(1rem, 2.5vw, 1.2rem);
    font-weight: 700;
    line-height: 1.5;
    color: #ffffff !important; 
    text-align: left;
}

/* ホバーアクションの統一 */
.wp-cta-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.3);
    filter: brightness(1.05); /* 1.1から少し抑えて白飛びを防止 */
}

/* お問い合わせボタン専用：ホバー時にoutlineデザインが崩れないよう明示 */
.wp-cta-card--mail:hover {
    outline: 4px solid var(--main-red); /* 枠デザインを固定 */
}
</style>

<link href="https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&amp;display=swap" rel="stylesheet">

<section class="wp-cta-section">
    <div class="wp-cta-triangle-bg"></div>

    <div class="wp-cta-container">
        <div class="wp-cta-header">
            <h2 class="wp-cta-title">お困り事がありましたら、まずはお気軽にご相談ください。</h2>
        </div>

        <div class="wp-cta-content">
            <a href="tel:0355508846" class="wp-cta-card wp-cta-card--phone">
                <div class="card-phone-inner">
                    <div class="phone-main">
                        <span class="phone-icon">
                            <svg viewBox="0 0 24 24"><path d="M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z" fill="#C04851"></path></svg>
                        </span>
                        <span class="phone-number">03-5550-8846</span>
                    </div>
                    <div class="phone-sub">
                        <span class="label-time">受付時間</span>
                        <span class="text-time">15：00〜23：00（土日祝日も可）</span>
                    </div>
                </div>
            </a>

            <a href="/contact/" class="wp-cta-card wp-cta-card--mail">
                <div class="card-mail-inner">
                    <div class="mail-icon">
                        <svg viewBox="0 0 24 24"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z" fill="#FFFFFF"></path></svg>
                    </div>
                    <div class="mail-text">
                        見積のご依頼やご相談<br>お問い合わせはこちら
                    </div>
                </div>
            </a>
        </div>
    </div>
</section>
<p>投稿 <a href="https://studio-keystone.net/creative-ucom-2601/">クリエイティブ事業実績｜テレビ朝日「林修の今、知りたいでしょ！」#256｜	株式会社ユーコム</a> は <a href="https://studio-keystone.net">株式会社スタジオ・キーストン</a> に最初に表示されました。</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
