/*!
Theme Name: creative-one
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: creative-one
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

creative-one is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}

/*--------------------------------------------------------------
# verup.eccube-plus.com LP styles
--------------------------------------------------------------*/

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --orange: #F05A00;
  --orange-light: #FF6B1A;
  --dark: #1A1A1A;
  --gray: #666;
  --border: #E0E0E0;
  --white: #fff;
}
body { font-family: 'Hiragino Sans', 'Noto Sans JP', sans-serif; color: var(--dark); line-height: 1.6; }

/* HEADER */
.site-header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: #fff;
  box-shadow: 0 1px 8px rgba(0,0,0,0.08);
  padding: 0 48px; height: 68px;
  display: flex; align-items: center; justify-content: space-between;
}
.logo { text-decoration: none; display: inline-flex; align-items: center; }
.logo img { height: 52px; width: auto; display: block; }
.header-cta {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--orange); color: #fff !important;
  padding: 10px 20px; border-radius: 4px;
  font-size: 13px; font-weight: 700; text-decoration: none;
}

/* HERO */
.hero {
  background-size: 100% auto;
  background-position: center top;
  background-repeat: no-repeat;
  position: relative;
  padding: 60px 48px 72px;
  margin-top: 68px;
}
.hero::before { display: none; }
.hero-inner {
  position: relative; z-index: 2;
  max-width: 1200px; margin: 0 auto;
}
.hero-left { max-width: 560px; }
.hero-badge {
  display: inline-block;
  background: var(--orange); color: #fff;
  padding: 6px 16px; border-radius: 2px;
  font-size: 13px; font-weight: 700;
  margin-bottom: 20px;
}
.hero h1 {
  font-size: 46px; font-weight: 900; line-height: 1.25;
  color: #1a1a1a; margin-bottom: 20px; letter-spacing: -1px;
}
.hero h1 em { color: var(--orange); font-style: normal; }
.hero-checks {
  list-style: none; margin: 0 0 24px; padding: 0;
}
.hero-checks li {
  font-size: 14px; color: #333; padding: 5px 0 5px 22px;
  position: relative;
}
.hero-checks li::before {
  content: '✓'; position: absolute; left: 0;
  color: var(--orange); font-weight: 700;
}
.hero-prices {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 10px; margin-bottom: 28px;
}
.hero-price-item {
  background: rgba(255,255,255,0.92); border: 2px solid var(--orange);
  border-radius: 6px; padding: 12px 14px; text-align: center;
}
.hero-price-route {
  font-size: 11px; font-weight: 700; color: #555;
  margin-bottom: 6px; white-space: nowrap;
}
.hero-price-item .hero-price-num {
  font-size: 28px; font-weight: 900; color: var(--orange); line-height: 1;
}
.hero-price-item .hero-price-num span { font-size: 14px; font-weight: 700; }
.hero-price-item .hero-price-num small { font-size: 12px; color: #333; font-weight: 600; }
.hero-features {
  display: grid; grid-template-columns: repeat(3,1fr); gap: 12px;
}
.hero-feature {
  background: rgba(255,255,255,0.88); border-radius: 8px;
  padding: 16px 12px; text-align: center;
  border: 1px solid #eee;
}
.hero-feature-icon { font-size: 24px; margin-bottom: 6px; }
.hero-feature-title { font-size: 13px; font-weight: 700; color: #1a1a1a; margin-bottom: 4px; }
.hero-feature-desc { font-size: 11px; color: #666; line-height: 1.6; }

/* EVOLUTION SECTION */
.evolution {
  background: #fff; padding: 48px 48px;
}
.evolution-inner { max-width: 1100px; margin: 0 auto; }
.evolution-img {
  width: 100%; height: auto; display: block;
  border-radius: 0;
}

/* PRO SERVICE SECTION */
.pro-service {
  background: #f8f8f8; padding: 72px 48px;
  text-align: center;
}
.pro-service .section-title { margin-bottom: 40px; }
.pro-grid {
  display: grid; grid-template-columns: repeat(6, 1fr);
  gap: 20px; max-width: 1100px; margin: 0 auto;
}
.pro-item { background: #fff; border-radius: 10px; padding: 24px 16px; }
.pro-icon { font-size: 32px; margin-bottom: 10px; }
.pro-name { font-size: 14px; font-weight: 700; color: var(--orange); margin-bottom: 8px; }
.pro-desc { font-size: 12px; color: #666; line-height: 1.6; }

/* VERSION BADGE */
.versions {
  background: #f8f8f8; padding: 32px 60px;
  border-top: 1px solid #e8e8e8; border-bottom: 1px solid #e8e8e8;
}
.versions-inner {
  display: flex; align-items: center; justify-content: center;
  gap: 20px; flex-wrap: wrap;
}
.version-flow { display: flex; align-items: center; gap: 12px; }
.version-tag {
  background: #fff; border: 1px solid #ddd;
  color: #555; padding: 6px 16px; border-radius: 4px;
  font-size: 13px; font-weight: 700;
}
.version-tag.new { background: rgba(240,90,0,0.15); border-color: var(--orange); color: var(--orange); }
.version-arrow { color: var(--orange); font-size: 18px; }
.versions-label { font-size: 12px; color: #666; margin: 0 20px; }

/* SECTION COMMON */
section { padding: 80px 60px; }
.section-label {
  font-size: 11px; font-weight: 700; letter-spacing: 3px;
  color: var(--orange); text-transform: uppercase; margin-bottom: 12px;
}
.section-title { font-size: 32px; font-weight: 900; margin-bottom: 12px; }
.section-sub { font-size: 14px; color: var(--gray); margin-bottom: 48px; }

/* PROBLEMS */
.problems { background: var(--white); }
.problems-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.problem-card {
  background: var(--white); border-radius: 8px; padding: 28px 24px;
  border-left: 4px solid var(--orange);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.problem-icon { font-size: 28px; margin-bottom: 12px; }
.problem-card h3 { font-size: 15px; font-weight: 700; margin-bottom: 8px; }
.problem-card p { font-size: 13px; color: var(--gray); line-height: 1.7; }

/* FLOW */
.flow { background: #f8f8f8; }
.flow-steps {
  display: grid; grid-template-columns: repeat(5, 1fr);
  gap: 0; position: relative;
}
.flow-steps::after {
  content: '';
  position: absolute; top: 36px; left: 10%; right: 10%;
  height: 2px; background: linear-gradient(to right, var(--orange), #f5a623);
  z-index: 0;
}
.flow-step { text-align: center; position: relative; z-index: 1; padding: 0 12px; }
.flow-num {
  width: 72px; height: 72px; border-radius: 50%;
  background: var(--orange); color: var(--white);
  font-size: 20px; font-weight: 900;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 16px;
  box-shadow: 0 4px 16px rgba(240,90,0,0.3);
}
.flow-step h3 { font-size: 14px; font-weight: 700; margin-bottom: 8px; }
.flow-step p { font-size: 12px; color: var(--gray); line-height: 1.6; }

/* SUPPORTED */
.supported { background: #f8f8f8; color: var(--dark); }
.supported .section-title { color: var(--dark); }
.supported .section-sub { color: var(--gray); }
.supported-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.supported-card {
  background: var(--white); border: 1px solid #e8e8e8;
  border-radius: 8px; padding: 24px 20px; text-align: center;
  transition: border-color 0.2s, transform 0.2s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.supported-card:hover { border-color: var(--orange); transform: translateY(-2px); }
.from-to {
  display: flex; align-items: center; justify-content: center;
  gap: 10px; margin-bottom: 12px;
}
.ver-from {
  background: #f0f0f0; border: 1px solid #ddd;
  color: #666; padding: 4px 12px; border-radius: 4px;
  font-size: 13px; font-weight: 700;
}
.ver-to {
  background: rgba(240,90,0,0.1); border: 1px solid var(--orange);
  color: var(--orange); padding: 4px 12px; border-radius: 4px;
  font-size: 13px; font-weight: 700;
}
.ver-arrow { color: var(--orange); }
.supported-card h3 { font-size: 14px; font-weight: 700; color: var(--dark); margin-bottom: 6px; }
.supported-card p { font-size: 12px; color: var(--gray); }
.supported-price { font-size: 20px; font-weight: 900; color: var(--orange); margin-top: 12px; }
.supported-price span { font-size: 12px; color: #666; }

/* CTA */
.cta-section {
  background: linear-gradient(135deg, #F05A00 0%, #c04600 100%);
  padding: 80px 60px; text-align: center;
}
.cta-section h2 { font-size: 36px; font-weight: 900; color: var(--white); margin-bottom: 16px; }
.cta-section p { font-size: 16px; color: rgba(255,255,255,0.85); margin-bottom: 40px; line-height: 1.8; }
.btn-cta-white, .btn-cta {
  display: inline-flex; align-items: center; gap: 8px;
  background: #fff; color: var(--orange) !important;
  padding: 20px 56px; border-radius: 4px;
  font-size: 18px; font-weight: 900; text-decoration: none !important;
  letter-spacing: 0.5px;
}

/* FAQ */
.faq { background: var(--white); }
.faq-list { max-width: 720px; margin: 0 auto; }
.faq-item { border-bottom: 1px solid #f0f0f0; padding: 24px 0; }
.faq-q { font-size: 15px; font-weight: 700; margin-bottom: 10px; display: flex; align-items: flex-start; gap: 12px; }
.faq-q::before { content: 'Q'; color: var(--orange); font-weight: 900; flex-shrink: 0; }
.faq-a { font-size: 14px; color: var(--gray); line-height: 1.8; padding-left: 24px; }

/* FOOTER - old rules removed, see Navigation & Drawer section below */

/*--------------------------------------------------------------
# Company page styles
--------------------------------------------------------------*/

/* VERSIONS PAGE */
.ver-page-section { background: #f4f4f4; padding: 72px 48px; }
.ver-page-inner { max-width: 960px; margin: 0 auto; }
.ver-page-section .section-title { text-align: center; margin-bottom: 40px; }

.ver-card {
  background: #fff; border-radius: 10px;
  overflow: hidden; margin-bottom: 32px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07);
}
.ver-card-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 20px 28px;
}
.ver-card-head-left { display: flex; align-items: center; gap: 16px; }
.ver-head-2 { background: #1e2d3d; }
.ver-head-3 { background: #1e2d3d; }
.ver-head-4 { background: #1a1a1a; }
.ver-card-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; border-radius: 8px;
  font-size: 14px; font-weight: 900; flex-shrink: 0;
}
.ver-card-badge.v2 { background: #16a34a; color: #fff; }
.ver-card-badge.v3 { background: #2563eb; color: #fff; }
.ver-card-badge.v4 { background: var(--orange); color: #fff; }
.ver-card-title { font-size: 17px; font-weight: 700; color: #fff; }
.ver-card-sub { font-size: 12px; color: #aaa; margin-top: 3px; }
.ver-card-status {
  font-size: 12px; font-weight: 700; padding: 4px 14px;
  border-radius: 20px; white-space: nowrap;
}
.ver-card-status.ended { background: #444; color: #ccc; }
.ver-card-status.current { background: var(--orange); color: #fff; }

.ver-inner-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.ver-inner-table thead tr { background: #f0f0f0; }
.ver-inner-table thead th {
  padding: 10px 20px; text-align: left;
  font-size: 12px; font-weight: 700; color: #555;
  border-bottom: 1px solid #ddd;
}
.ver-inner-table tbody td { padding: 11px 20px; border-bottom: 1px solid #f0f0f0; color: #333; }
.ver-inner-table tbody tr:last-child td { border-bottom: none; }
.ver-inner-table tbody tr:hover td { background: #fafafa; }
.ver-latest td { background: #fff8f3; }
.check-ok { color: #16a34a; font-weight: 700; }
.badge-new {
  display: inline-block; background: var(--orange); color: #fff;
  font-size: 10px; font-weight: 700; padding: 2px 8px;
  border-radius: 10px; margin-left: 6px; vertical-align: middle;
}
.ver-card-note {
  background: #f8f8f8; padding: 14px 20px;
  font-size: 12px; color: #666; line-height: 1.8;
  border-top: 1px solid #eee;
}

/* PLUGIN COMPAT */
.plugin-compat-section { background: #fff; padding: 72px 48px; }
.plugin-compat-section .section-title { text-align: center; margin-bottom: 40px; }
.plugin-compat-grid {
  max-width: 960px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;
}
.plugin-compat-card {
  background: #f8f8f8; border-radius: 8px; padding: 24px 20px;
}
.plugin-compat-badge {
  display: inline-block; padding: 4px 14px; border-radius: 20px;
  font-size: 12px; font-weight: 700; margin-bottom: 12px;
}
.plugin-compat-badge.v2 { background: #16a34a; color: #fff; }
.plugin-compat-badge.v3 { background: #2563eb; color: #fff; }
.plugin-compat-badge.v4 { background: var(--orange); color: #fff; }
.plugin-compat-card h3 { font-size: 15px; font-weight: 700; margin-bottom: 10px; }
.plugin-compat-card p { font-size: 13px; color: #555; line-height: 1.8; }
.btn-cta-sub {
  display: inline-flex; align-items: center;
  background: transparent; color: #fff !important;
  border: 2px solid rgba(255,255,255,0.6);
  padding: 16px 32px; border-radius: 4px;
  font-size: 15px; font-weight: 700; text-decoration: none !important;
}

/* PRICING PAGE */
.pricing-section { background: #f8f8f8; padding: 72px 48px; }
.pricing-cards {
  display: grid; grid-template-columns: repeat(2, 1fr);
  gap: 24px; margin-bottom: 48px;
}
.pricing-card {
  background: #fff; border-radius: 10px; border: 1px solid #e8e8e8;
  display: flex; flex-direction: column; overflow: hidden;
}
.pricing-card.featured { border: 2px solid var(--orange); }
.pricing-card-head {
  background: #f8f8f8; padding: 28px 28px 20px; position: relative;
}
.pricing-card.featured .pricing-card-head { background: #fff7f2; }
.pricing-badge {
  display: inline-block; background: var(--orange); color: #fff;
  font-size: 11px; font-weight: 700; padding: 3px 10px;
  border-radius: 20px; margin-bottom: 8px;
}
.pricing-tag {
  font-size: 12px; font-weight: 700; color: var(--orange);
  margin-bottom: 6px;
}
.pricing-card-head h3 { font-size: 17px; font-weight: 700; margin-bottom: 12px; }
.pricing-price { font-size: 32px; font-weight: 900; color: var(--orange); }
.pricing-price span { font-size: 16px; }
.pricing-period { font-size: 12px; color: #888; margin-top: 4px; }
.pricing-card-body { padding: 20px 28px; flex: 1; }
.pricing-card-body p { font-size: 14px; color: #555; line-height: 1.7; margin-bottom: 16px; }
.pricing-list { list-style: none; padding: 0; margin: 0; }
.pricing-list li {
  font-size: 13px; color: #333; padding: 6px 0 6px 20px;
  border-bottom: 1px solid #f0f0f0; position: relative;
}
.pricing-list li::before {
  content: '✓'; position: absolute; left: 0;
  color: var(--orange); font-weight: 700;
}
.pricing-btn {
  display: block; text-align: center;
  background: var(--orange); color: #fff !important;
  padding: 14px; font-size: 14px; font-weight: 700;
  text-decoration: none !important; margin: 20px 20px 20px;
  border-radius: 4px;
}
.pricing-includes {
  background: #fff; border-radius: 10px; padding: 36px 40px;
  border: 1px solid #e8e8e8;
}
.pricing-includes h3 { font-size: 18px; font-weight: 700; margin-bottom: 20px; text-align: center; }
.pricing-includes-grid {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px;
}
.pricing-include-item {
  font-size: 14px; color: #333; padding: 8px 12px;
  background: #f8f8f8; border-radius: 4px;
}
.pricing-include-item span { color: var(--orange); font-weight: 700; margin-right: 6px; }

/* VERSIONS PAGE */
.versions-detail-section { background: #fff; padding: 72px 48px; }
.versions-detail-list { display: flex; flex-direction: column; gap: 32px; }
.versions-detail-card {
  background: #fff; border: 1px solid #e8e8e8; border-radius: 10px;
  overflow: hidden;
}
.versions-detail-head {
  display: flex; align-items: center; justify-content: space-between;
  background: #f8f8f8; padding: 24px 32px;
  border-bottom: 1px solid #e8e8e8;
}
.from-to.large .ver-from { font-size: 20px; }
.from-to.large .ver-to { font-size: 20px; }
.from-to.large .ver-arrow { font-size: 20px; }
.versions-detail-price { font-size: 28px; font-weight: 900; color: var(--orange); }
.versions-detail-price span { font-size: 14px; }
.versions-detail-body { padding: 28px 32px; }
.versions-detail-body h3 { font-size: 18px; font-weight: 700; margin-bottom: 12px; }
.versions-detail-body p { font-size: 14px; color: #555; line-height: 1.7; margin-bottom: 16px; }
.versions-detail-targets {
  font-size: 13px; color: #555; background: #f0f0f0;
  padding: 8px 14px; border-radius: 4px; margin-bottom: 16px;
}
.versions-detail-period {
  display: inline-block; margin-top: 16px;
  font-size: 13px; color: #888; font-weight: 600;
}

/* PAGE HERO */
.page-hero {
  background-image: url('assets/img/hero-top.png');
  background-size: cover;
  background-position: left center;
  padding: 140px 60px 80px;
  text-align: center;
  position: relative; overflow: hidden;
}
.page-hero::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(to right, rgba(255,100,0,0.92) 0%, rgba(255,120,20,0.6) 40%, rgba(255,140,40,0.1) 70%, rgba(0,0,0,0) 100%);
}
.page-hero-inner { position: relative; z-index: 2; }
.page-hero-title {
  font-size: 42px; font-weight: 900; color: var(--white);
  margin-bottom: 16px; letter-spacing: -1px;
}
.page-hero-sub { font-size: 15px; color: #eee; }

/* COMPANY SECTIONS */
.company-section { background: var(--white); padding: 80px 60px; }
.company-strength { background: #f8f8f8; padding: 80px 60px; }
.company-service { background: var(--white); padding: 80px 60px; }
.company-inner { max-width: 860px; margin: 0 auto; }

/* COMPANY TABLE */
.company-table {
  width: 100%; border-collapse: collapse; margin-top: 40px;
}
.company-table th,
.company-table td {
  padding: 20px 24px; border-bottom: 1px solid #f0f0f0;
  font-size: 14px; line-height: 1.8; text-align: left; vertical-align: top;
}
.company-table th {
  width: 160px; font-weight: 700; color: var(--dark);
  background: #f8f8f8; white-space: nowrap;
}
.company-table td small { font-size: 12px; color: var(--gray); }

/* STRENGTH GRID */
.strength-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;
  margin-top: 48px;
}
.strength-card {
  background: var(--white); border-radius: 8px; padding: 32px 24px;
  border-top: 4px solid var(--orange);
  box-shadow: 0 2px 12px rgba(0,0,0,0.06); text-align: center;
}
.strength-num {
  font-size: 36px; font-weight: 900; color: var(--orange); margin-bottom: 12px;
}
.strength-num span { font-size: 16px; }
.strength-card h3 { font-size: 15px; font-weight: 700; margin-bottom: 10px; }
.strength-card p { font-size: 13px; color: var(--gray); line-height: 1.7; }

/* SERVICE LIST */
.service-list { margin-top: 48px; display: flex; flex-direction: column; gap: 16px; }
.service-item {
  display: flex; gap: 20px; align-items: flex-start;
  background: #f8f8f8; border-radius: 8px; padding: 24px;
  border-left: 4px solid var(--orange);
}
.service-icon { font-size: 24px; flex-shrink: 0; margin-top: 2px; }
.service-body h3 { font-size: 15px; font-weight: 700; margin-bottom: 6px; }
.service-body p { font-size: 13px; color: var(--gray); line-height: 1.7; }

/*--------------------------------------------------------------
# Service / FAQ / Privacy page styles
--------------------------------------------------------------*/

/* SERVICE DETAIL */
.service-detail-section { background: var(--white); padding: 80px 60px; }
.service-detail-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-top: 48px; }
.service-detail-card {
  border: 1px solid var(--border); border-radius: 8px; overflow: hidden;
}
.service-detail-header {
  background: #fff7f2; padding: 28px 28px 24px;
  border-bottom: 2px solid var(--orange);
}
.service-detail-tag {
  display: inline-block;
  background: var(--orange); color: #fff;
  padding: 4px 12px; border-radius: 4px;
  font-size: 11px; font-weight: 700; margin-bottom: 12px;
}
.service-detail-header h3 { font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: 12px; }
.service-detail-price { font-size: 28px; font-weight: 900; color: var(--orange); }
.service-detail-price span { font-size: 14px; color: #999; }
.service-detail-body { padding: 24px 28px; }
.service-detail-body p { font-size: 13px; color: var(--gray); line-height: 1.8; margin-bottom: 16px; }
.service-detail-list { list-style: none; margin-bottom: 16px; }
.service-detail-list li {
  font-size: 13px; color: var(--dark); padding: 6px 0;
  border-bottom: 1px solid #f5f5f5;
  padding-left: 16px; position: relative;
}
.service-detail-list li::before {
  content: '✓'; color: var(--orange); font-weight: 700;
  position: absolute; left: 0;
}
.service-detail-period {
  font-size: 12px; color: var(--orange); font-weight: 700;
  background: rgba(240,90,0,0.06); border-radius: 4px; padding: 6px 12px;
  display: inline-block;
}

/* FAQ PAGE */
.faq-page-section { background: var(--white); padding: 80px 60px; }
.faq-category { margin-bottom: 60px; }
.faq-category-title {
  font-size: 18px; font-weight: 700; color: var(--dark);
  border-left: 4px solid var(--orange); padding-left: 16px;
  margin-bottom: 24px;
}

/* PRIVACY */
.privacy-section { background: var(--white); padding: 80px 60px; }
.privacy-inner { max-width: 760px; margin: 0 auto; }
.privacy-lead { font-size: 14px; color: var(--gray); line-height: 1.9; margin-bottom: 48px; }
.privacy-block { margin-bottom: 40px; }
.privacy-block h2 {
  font-size: 16px; font-weight: 700; color: var(--dark);
  margin-bottom: 12px; padding-bottom: 8px;
  border-bottom: 1px solid var(--border);
}
.privacy-block p { font-size: 14px; color: var(--gray); line-height: 1.9; margin-bottom: 8px; }
.privacy-block ul { list-style: none; margin: 8px 0 0 0; }
.privacy-block ul li {
  font-size: 14px; color: var(--gray); line-height: 1.8;
  padding-left: 16px; position: relative;
}
.privacy-block ul li::before { content: '・'; position: absolute; left: 0; }
.privacy-contact {
  background: #f8f8f8; border-radius: 6px; padding: 20px 24px; margin-top: 12px;
}
.privacy-contact p { font-size: 14px; color: var(--dark); margin: 0; line-height: 1.8; }
.privacy-date { font-size: 12px; color: #aaa; text-align: right; margin-top: 48px; }

/*--------------------------------------------------------------
# Single / Archive styles
--------------------------------------------------------------*/

/* PAGE HERO small variant */
.page-hero--small { padding: 120px 60px 60px; }
.post-meta { margin-top: 12px; font-size: 13px; color: #aaa; }
.post-meta .post-date { margin-right: 12px; }
.post-meta a { color: var(--orange); text-decoration: none; }

/* SINGLE */
.single-section { background: var(--white); padding: 80px 60px; }
.single-inner { max-width: 760px; margin: 0 auto; }
.post-content { line-height: 1.9; }
.post-content h2 {
  font-size: 22px; font-weight: 700; margin: 48px 0 16px;
  padding-left: 16px; border-left: 4px solid var(--orange);
}
.post-content h3 {
  font-size: 18px; font-weight: 700; margin: 36px 0 12px;
  color: var(--dark);
}
.post-content p { font-size: 15px; color: #333; margin-bottom: 20px; line-height: 1.9; }
.post-content ul, .post-content ol {
  margin: 0 0 20px 24px; font-size: 15px; color: #333; line-height: 1.9;
}
.post-content li { margin-bottom: 6px; }
.post-content strong { color: var(--dark); font-weight: 700; }
.post-content table {
  width: 100%; border-collapse: collapse; margin: 24px 0; font-size: 14px;
}
.post-content th {
  background: var(--dark); color: var(--white); padding: 12px 16px;
  text-align: left; font-weight: 700;
}
.post-content td { padding: 12px 16px; border-bottom: 1px solid #f0f0f0; }
.post-content tr:nth-child(even) td { background: #f8f8f8; }
.wp-block-separator { border: none; border-top: 1px solid #f0f0f0; margin: 40px 0; }

.post-navigation { margin-top: 48px; padding-top: 32px; border-top: 1px solid #f0f0f0; display: flex; justify-content: space-between; font-size: 13px; }
.post-navigation a { color: var(--orange); text-decoration: none; }
.post-back { margin-top: 40px; }
.post-back a { color: var(--orange); text-decoration: none; font-size: 14px; font-weight: 700; }

/* ARCHIVE */
.archive-section { background: #f8f8f8; padding: 80px 60px; }
.archive-inner { max-width: 900px; margin: 0 auto; }
.archive-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; }
.archive-card { background: var(--white); border-radius: 8px; overflow: hidden; transition: transform 0.2s, box-shadow 0.2s; }
.archive-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.archive-card-link { display: block; text-decoration: none; color: inherit; }
.archive-card-body { padding: 28px 24px; }
.archive-card-meta { font-size: 12px; color: #aaa; margin-bottom: 10px; }
.archive-card-meta a { color: var(--orange); text-decoration: none; margin-left: 8px; }
.archive-card-title { font-size: 16px; font-weight: 700; color: var(--dark); margin-bottom: 10px; line-height: 1.6; }
.archive-card-excerpt { font-size: 13px; color: var(--gray); line-height: 1.7; margin-bottom: 16px; }
.archive-card-more { font-size: 12px; color: var(--orange); font-weight: 700; }
.archive-nav { margin-top: 48px; text-align: center; }
.archive-nav a { color: var(--orange); text-decoration: none; font-weight: 700; margin: 0 16px; }
.no-posts { text-align: center; color: var(--gray); padding: 60px 0; }

/*--------------------------------------------------------------
# Global Navigation & Drawer
--------------------------------------------------------------*/

/* PC ナビ */
.global-nav { display: flex; align-items: center; }
.global-nav ul { list-style: none; display: flex; gap: 32px; margin: 0; padding: 0; }
.global-nav ul li a {
  color: #333 !important; font-size: 13px; font-weight: 600; text-decoration: none !important;
  transition: color 0.2s;
}
.global-nav ul li a:hover { color: var(--orange) !important; }

/* ハンバーガーボタン */
.drawer-toggle {
  display: none;
  flex-direction: column; justify-content: center; gap: 5px;
  width: 40px; height: 40px;
  background: none; border: none; cursor: pointer; padding: 4px;
}
.drawer-toggle span {
  display: block; width: 24px; height: 2px;
  background: #333; border-radius: 2px;
  transition: transform 0.3s, opacity 0.3s;
}
.drawer-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.drawer-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.drawer-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* オーバーレイ */
.drawer-overlay {
  display: none;
  position: fixed; inset: 0; z-index: 200;
  background: rgba(0,0,0,0.6);
}
.drawer-overlay.is-open { display: block; }

/* ドロワー本体 */
.drawer-nav {
  position: fixed; top: 0; right: -280px; bottom: 0;
  width: 280px; z-index: 300;
  background: #111;
  padding: 80px 32px 40px;
  transition: right 0.3s ease;
  display: flex; flex-direction: column;
}
.drawer-nav.is-open { right: 0; }
.drawer-close {
  position: absolute; top: 20px; right: 20px;
  background: none; border: none; color: #aaa;
  font-size: 20px; cursor: pointer; padding: 4px;
}
.drawer-nav ul { list-style: none; margin: 0; padding: 0; }
.drawer-nav ul li { border-bottom: 1px solid #222; }
.drawer-nav ul li a {
  display: block; padding: 16px 0;
  color: var(--white); font-size: 15px; font-weight: 600;
  text-decoration: none; transition: color 0.2s;
}
.drawer-nav ul li a:hover { color: var(--orange); }
.drawer-cta {
  display: block; margin-top: 32px;
  background: var(--orange); color: var(--white);
  padding: 16px; border-radius: 4px;
  font-size: 14px; font-weight: 700; text-decoration: none;
  text-align: center;
}

/* フッター */
/* ロゴ（ヘッダー・フッター共通） */
.logo { font-size: 16px; font-weight: 900; color: #fff !important; text-decoration: none !important; white-space: nowrap; }
.logo span { color: var(--orange) !important; }

/* FOOTER */
.site-footer { background: #2b2118; margin-bottom: 0; }
.footer-inner {
  max-width: 1100px; margin: 0 auto;
  padding: 56px 60px 40px;
  display: flex; gap: 80px; align-items: flex-start;
  flex-wrap: wrap;
}
.footer-top { flex: 1; min-width: 220px; }
.footer-top .logo { font-size: 18px; }
.footer-desc { font-size: 13px; color: #998878; line-height: 1.8; margin-top: 16px; max-width: 300px; }
.footer-nav { display: flex; gap: 48px; flex-shrink: 0; }
.footer-nav-col { min-width: 120px; }
.footer-nav-label { font-size: 11px; font-weight: 700; letter-spacing: 2px; color: #6a5a48; text-transform: uppercase; margin-bottom: 16px; }
.footer-nav-col ul { list-style: none; margin: 0; padding: 0; }
.footer-nav-col ul li { margin-bottom: 12px; white-space: nowrap; }
.footer-nav-col ul li a { color: #998878 !important; font-size: 13px; text-decoration: none !important; transition: color 0.2s; }
.footer-nav-col ul li a:hover { color: var(--orange) !important; }
.footer-bottom {
  border-top: 1px solid #3d2e1e;
  padding: 20px 60px; text-align: center;
}
.footer-bottom p { color: #6a5a48; font-size: 12px; margin: 0; }

/* フッター下余白除去 */
html, body { margin-bottom: 0 !important; padding-bottom: 0 !important; }
.site { margin-bottom: 0; padding-bottom: 0; }

/* レスポンシブ */
@media ( max-width: 1100px ) {
  .hero { padding: 48px 32px 56px; }
  .hero h1 { font-size: 36px; }
  .hero-price-num { font-size: 28px; }
  .hero-features { grid-template-columns: repeat(3,1fr); gap: 8px; }
  .hero-feature { padding: 12px 8px; }
  .hero-feature-title { font-size: 12px; }
  .hero-feature-desc { font-size: 10px; }
  .hero-left { max-width: 480px; }
}

@media ( max-width: 768px ) {
  .site-header { padding: 0 20px; }
  .global-nav { display: none; }
  .header-cta { display: none; }
  .drawer-toggle { display: flex; }

  .footer-inner { flex-direction: column; gap: 40px; padding: 40px 24px 32px; }
  .footer-nav { gap: 40px; flex-wrap: wrap; }
  .footer-nav-col { min-width: 100px; }
  .footer-bottom { padding: 20px 24px; }

  .hero {
    padding: 48px 24px;
    background-size: cover;
    background-position: center center;
    min-height: 480px;
  }
  .hero-inner { grid-template-columns: 1fr; gap: 32px; }
  .hero h1 { font-size: 32px; }
  .hero-features { grid-template-columns: repeat(3,1fr); gap: 8px; }
  .evolution { padding: 48px 24px; }
  .evolution-labels { flex-direction: column; gap: 8px; margin-bottom: 12px; }
  .evolution-bottom { justify-content: flex-start; }
  .pro-service { padding: 48px 24px; }
  .pro-grid { grid-template-columns: repeat(2, 1fr); }
  .versions { padding: 24px 20px; }
  section { padding: 60px 24px; }
  .problems-grid { grid-template-columns: 1fr; }
  .flow-steps { grid-template-columns: 1fr; gap: 24px; }
  .flow-steps::after { display: none; }
  .supported-grid { grid-template-columns: repeat(2, 1fr); }
  .service-detail-grid { grid-template-columns: 1fr; }
  .strength-grid { grid-template-columns: 1fr; }
  .archive-grid { grid-template-columns: 1fr; }
  .cta-section { padding: 60px 24px; }
  .cta-btns { flex-direction: column; align-items: center; }
  .page-hero { padding: 100px 24px 60px; }
  .page-hero-title { font-size: 28px; }
  .company-section, .company-strength, .company-service,
  .service-detail-section, .faq-page-section, .privacy-section,
  .single-section, .archive-section { padding: 60px 24px; }
  .company-table th { width: 100px; font-size: 13px; }
  .footer-inner { padding: 40px 20px 32px; }
}

/*--------------------------------------------------------------
# Contact page styles
--------------------------------------------------------------*/

.contact-section { background: #fff; padding: 80px 60px; }
.contact-inner { max-width: 760px; margin: 0 auto; }

.contact-lead {
  background: var(--white); border-left: 4px solid var(--orange);
  border-radius: 0 6px 6px 0; padding: 20px 24px; margin-bottom: 40px;
}
.contact-lead p { font-size: 14px; color: var(--gray); line-height: 1.8; margin: 0; }
.contact-lead strong { color: var(--orange); }

.contact-form-wrap { background: var(--white); border-radius: 8px; padding: 48px; box-shadow: 0 2px 16px rgba(0,0,0,0.06); }

/* CF7 フォームリセット・スタイル */
.wpcf7 { width: 100%; }
.wpcf7-form { display: flex; flex-direction: column; }

/* 各フィールドの間隔 */
.wpcf7-form p,
.form-l,
.form-r {
  margin-bottom: 10px !important;
  margin-top: 0 !important;
}
.wpcf7-form p:last-of-type { margin-bottom: 0 !important; }

/* pタグ直接テキスト（■ラベル形式）のスタイル */
.wpcf7-form p > br { display: none; }
.wpcf7-form .wpcf7-form-control-wrap { display: block; margin-top: 4px; }

/* ラベル */
.wpcf7-form label,
.wpcf7-form .wpcf7-list-item-label {
  display: block;
  font-size: 13px; font-weight: 700;
  color: #444;
  margin-bottom: 4px !important;
  margin-top: 0 !important;
  letter-spacing: 0.03em;
  line-height: 1.4;
}

/* 必須マーク */
.wpcf7-form .required-mark,
abbr[title="必須"] {
  color: var(--orange); margin-left: 4px; font-style: normal;
}

/* テキスト・メール・URL・電話 */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"] {
  width: 100%; padding: 9px 12px;
  border: 1px solid #ddd; border-radius: 6px;
  font-size: 14px; color: var(--dark);
  background: #fafafa;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
  outline: none; box-sizing: border-box;
  line-height: 1.5; height: auto;
}
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form input[type="number"]:focus {
  border-color: var(--orange);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(240,90,0,0.08);
}

/* テキストエリア */
.wpcf7-form textarea {
  width: 100%; padding: 11px 14px;
  border: 1px solid #ddd; border-radius: 6px;
  font-size: 14px; color: var(--dark);
  background: #fafafa; resize: vertical; min-height: 70px;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
  outline: none; box-sizing: border-box; line-height: 1.8;
}
.wpcf7-form textarea:focus {
  border-color: var(--orange);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(240,90,0,0.08);
}

/* セレクト */
.wpcf7-form select {
  width: 100%; padding: 11px 14px;
  border: 1px solid #ddd; border-radius: 6px;
  font-size: 14px; color: var(--dark);
  background: #fafafa; outline: none; box-sizing: border-box;
  cursor: pointer;
}
.wpcf7-form select:focus {
  border-color: var(--orange);
  box-shadow: 0 0 0 3px rgba(240,90,0,0.08);
}

/* プレースホルダー */
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder { color: #bbb; font-size: 13px; }

/* 送信ボタン */
.wpcf7-form input[type="submit"],
.wpcf7-submit {
  display: inline-block;
  background: var(--orange); color: #fff !important;
  padding: 15px 56px; border: none; border-radius: 6px;
  font-size: 15px; font-weight: 700; cursor: pointer;
  transition: background 0.2s, transform 0.1s;
  text-decoration: none !important; margin-top: 8px;
  letter-spacing: 0.05em;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-submit:hover { background: #d44f00; transform: translateY(-1px); }
.wpcf7-form input[type="submit"]:active { transform: translateY(0); }

/* バリデーション */
.wpcf7-not-valid-tip {
  font-size: 12px; color: #e74c3c;
  margin-top: 5px; display: block;
}
.wpcf7-form input.wpcf7-not-valid,
.wpcf7-form textarea.wpcf7-not-valid {
  border-color: #e74c3c;
  background: #fff8f8;
}
.wpcf7-response-output {
  margin-top: 24px; padding: 16px 20px; border-radius: 6px;
  font-size: 14px; border: none !important; line-height: 1.7;
}
.wpcf7-mail-sent-ok { background: #e8f8e8; color: #2d7a2d; font-weight: 600; }
.wpcf7-mail-sent-ng,
.wpcf7-spam-blocked,
.wpcf7-validation-errors { background: #fde8e8; color: #c0392b; }

/* Edit リンク非表示 */
.wpcf7-form .edit-link { display: none; }

/* レスポンシブ */
@media ( max-width: 768px ) {
  .contact-section { padding: 60px 24px; }
  .contact-form-wrap { padding: 28px 20px; }
}

/*--------------------------------------------------------------
# Single / Archive 2カラムレイアウト & サイドバー
--------------------------------------------------------------*/

/* 2カラム共通ラッパー */
.single-layout,
.archive-layout {
  max-width: 1100px; margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 48px;
  align-items: start;
}

/* シングル記事エリア */
.single-section { background: #f8f8f8; padding: 64px 60px; }
.post-content { background: var(--white); border-radius: 8px; padding: 48px; box-shadow: 0 2px 12px rgba(0,0,0,0.05); }

/* 投稿ナビ */
.post-navigation-wrap { margin-top: 40px; padding-top: 28px; border-top: 1px solid #f0f0f0; }
.post-navigation-wrap .nav-links { display: flex; justify-content: space-between; gap: 16px; }
.post-navigation-wrap .nav-links a { color: var(--orange) !important; text-decoration: none !important; font-size: 13px; font-weight: 700; }
.post-back { margin-top: 20px; }
.post-back a { color: var(--orange) !important; text-decoration: none !important; font-size: 13px; font-weight: 700; }

/* 投稿メタ（カテゴリ・日付） */
.post-content .post-cats,
.entry-footer { display: none; } /* WPデフォルトのPosted in行を非表示 */

/* アーカイブエリア */
.archive-section { background: #f8f8f8; padding: 64px 60px; }
.archive-main {}
.archive-grid { display: grid; grid-template-columns: 1fr; gap: 20px; }
.archive-card { background: var(--white); border-radius: 8px; overflow: hidden; transition: transform 0.2s, box-shadow 0.2s; box-shadow: 0 2px 8px rgba(0,0,0,0.04); }
.archive-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.archive-card-link { display: block; text-decoration: none !important; color: inherit !important; }
.archive-card-body { padding: 28px; }
.archive-card-meta { font-size: 12px; color: #aaa; margin-bottom: 10px; }
.archive-card-meta a { color: var(--orange) !important; text-decoration: none !important; margin-left: 8px; }
.archive-card-title { font-size: 17px; font-weight: 700; margin-bottom: 10px; line-height: 1.6; }
.archive-card-title a { color: var(--dark) !important; text-decoration: none !important; transition: color 0.2s; }
.archive-card-title a:hover { color: var(--orange) !important; }
.archive-card-excerpt { font-size: 13px; color: var(--gray); line-height: 1.7; margin-bottom: 12px; }
.archive-card-more { font-size: 12px; color: var(--orange) !important; font-weight: 700; text-decoration: none !important; }
.archive-card-more:hover { text-decoration: underline !important; }
.archive-nav { margin-top: 32px; text-align: center; }
.archive-nav a { color: var(--orange) !important; text-decoration: none !important; font-weight: 700; margin: 0 12px; }
.no-posts { text-align: center; color: var(--gray); padding: 60px 0; background: var(--white); border-radius: 8px; }

/* サイドバー */
.single-sidebar { position: sticky; top: 84px; }
.widget {
  background: var(--white); border-radius: 8px;
  padding: 24px; margin-bottom: 24px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.widget:last-child { margin-bottom: 0; }
.widget-title {
  font-size: 13px; font-weight: 700; color: var(--dark);
  padding-bottom: 12px; margin-bottom: 16px;
  border-bottom: 2px solid var(--orange);
  letter-spacing: 0.05em;
}
.widget ul { list-style: none; margin: 0; padding: 0; }
.widget ul li { border-bottom: 1px solid #f5f5f5; padding: 8px 0; font-size: 13px; }
.widget ul li:last-child { border-bottom: none; padding-bottom: 0; }
.widget ul li a { color: var(--dark) !important; text-decoration: none !important; transition: color 0.2s; }
.widget ul li a:hover { color: var(--orange) !important; }

/* 検索ウィジェット */
.widget_search .search-form { display: flex; gap: 8px; }
.widget_search .search-field {
  flex: 1; padding: 10px 12px; border: 1px solid #ddd; border-radius: 4px;
  font-size: 13px; outline: none;
}
.widget_search .search-field:focus { border-color: var(--orange); }
.widget_search .search-submit {
  background: var(--orange); color: #fff !important; border: none;
  padding: 10px 16px; border-radius: 4px; font-size: 13px;
  font-weight: 700; cursor: pointer;
}

/* レスポンシブ */
@media ( max-width: 900px ) {
  .single-layout,
  .archive-layout {
    grid-template-columns: 1fr;
  }
  .single-sidebar { position: static; }
  .single-section,
  .archive-section { padding: 48px 24px; }
  .post-content { padding: 28px 20px; }
}

/*--------------------------------------------------------------
# Single フルワイド + TOC + 関連記事
--------------------------------------------------------------*/

/* フルワイドレイアウト */
.single-fullwidth {
  max-width: 800px; margin: 0 auto;
}

.single-section { background: #f8f8f8; padding: 64px 60px; }

.post-content {
  background: var(--white); border-radius: 8px;
  padding: 56px 64px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.05);
  line-height: 1.9;
}

/* Table of Contents Plus のスタイル上書き */
#toc_container {
  background: #f8f8f8 !important;
  border: 1px solid #e8e8e8 !important;
  border-radius: 8px !important;
  padding: 24px 28px !important;
  margin: 0 0 40px !important;
  width: 100% !important;
  float: none !important;
  font-size: 14px !important;
}
#toc_container .toc_title {
  font-size: 13px !important; font-weight: 700 !important;
  color: var(--dark) !important; letter-spacing: 0.05em !important;
  border-bottom: 2px solid var(--orange) !important;
  padding-bottom: 10px !important; margin-bottom: 14px !important;
  text-align: left !important;
}
#toc_container ul { margin: 0 !important; padding: 0 !important; }
#toc_container ul li { margin: 0 !important; padding: 6px 0 !important; border-bottom: 1px solid #f0f0f0 !important; list-style: none !important; }
#toc_container ul li:last-child { border-bottom: none !important; }
#toc_container ul li a { color: var(--dark) !important; text-decoration: none !important; font-size: 13px !important; }
#toc_container ul li a:hover { color: var(--orange) !important; }
#toc_container ul ul { padding-left: 16px !important; }
#toc_container ul ul li a { color: var(--gray) !important; font-size: 12px !important; }

/* 記事本文スタイル */
.post-content h2 {
  font-size: 22px; font-weight: 700; margin: 52px 0 18px;
  padding: 16px 20px;
  background: #f8f8f8; border-left: 4px solid var(--orange);
  border-radius: 0 4px 4px 0;
  line-height: 1.5;
}
.post-content h3 {
  font-size: 18px; font-weight: 700; margin: 36px 0 14px;
  padding-bottom: 8px; border-bottom: 1px solid #e8e8e8;
  color: var(--dark);
}
.post-content h4 { font-size: 15px; font-weight: 700; margin: 28px 0 10px; color: var(--dark); }
.post-content p { font-size: 15px; color: #333; margin-bottom: 20px; line-height: 1.9; }
.post-content ul, .post-content ol { margin: 0 0 24px 24px; font-size: 15px; color: #333; line-height: 1.9; }
.post-content li { margin-bottom: 8px; }
.post-content strong { color: var(--dark); font-weight: 700; }
.post-content a { color: var(--orange) !important; }
.post-content table { width: 100%; border-collapse: collapse; margin: 28px 0; font-size: 14px; }
.post-content th { background: var(--dark); color: var(--white); padding: 12px 16px; text-align: left; font-weight: 700; }
.post-content td { padding: 12px 16px; border-bottom: 1px solid #f0f0f0; }
.post-content tr:nth-child(even) td { background: #f8f8f8; }
.post-content blockquote {
  border-left: 4px solid var(--orange); background: #fff8f4;
  padding: 16px 20px; margin: 24px 0; border-radius: 0 4px 4px 0;
  font-size: 14px; color: var(--gray);
}

/* 関連記事 */
.related-posts { margin-top: 48px; padding-top: 40px; border-top: 1px solid #f0f0f0; }
.related-posts-title { font-size: 15px; font-weight: 700; margin-bottom: 20px; color: var(--dark); }
.related-posts-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.related-card {
  display: block; background: var(--white); border: 1px solid #e8e8e8;
  border-radius: 6px; padding: 16px; text-decoration: none !important;
  transition: border-color 0.2s, transform 0.2s;
}
.related-card:hover { border-color: var(--orange); transform: translateY(-2px); }
.related-card-meta { font-size: 11px; color: #aaa; margin-bottom: 6px; }
.related-card-title { font-size: 13px; font-weight: 700; color: var(--dark) !important; line-height: 1.6; }

/* 投稿ナビ */
.post-navigation-wrap { margin-top: 40px; padding-top: 28px; border-top: 1px solid #f0f0f0; }
.post-navigation-wrap .nav-links { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.post-navigation-wrap .nav-links a { color: var(--orange) !important; text-decoration: none !important; font-size: 13px; font-weight: 700; }
.post-back { margin-top: 20px; }
.post-back a { color: var(--orange) !important; text-decoration: none !important; font-size: 13px; font-weight: 700; }

/* レスポンシブ */
@media ( max-width: 768px ) {
  .single-section { padding: 40px 16px; }
  .post-content { padding: 28px 20px; }
  .post-content h2 { font-size: 18px; padding: 12px 16px; }
  .post-content h3 { font-size: 16px; }
  .related-posts-grid { grid-template-columns: 1fr; }
}

/*--------------------------------------------------------------
# Archive フルワイド
--------------------------------------------------------------*/

.archive-fullwidth {
  max-width: 1000px; margin: 0 auto;
}

.archive-grid-full {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

/* single記事の幅を広げる */
.single-fullwidth { max-width: 860px; }

@media ( max-width: 768px ) {
  .archive-grid-full { grid-template-columns: 1fr; }
}

/*--------------------------------------------------------------
# 記事内CTA・人気記事
--------------------------------------------------------------*/

/* 記事内CTAバナー */
.in-article-cta {
  margin-top: 48px;
  background: linear-gradient(135deg, #1a1a1a 0%, #2a1500 100%);
  border-radius: 8px; padding: 40px 48px;
  position: relative; overflow: hidden;
}
.in-article-cta::before {
  content: '';
  position: absolute; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cg stroke='%23F05A00' stroke-width='0.5' opacity='0.1'%3E%3Cline x1='0' y1='120' x2='120' y2='0'/%3E%3Cline x1='-30' y1='120' x2='90' y2='0'/%3E%3Cline x1='30' y1='120' x2='150' y2='0'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 120px 120px;
}
.in-article-cta-inner { position: relative; z-index: 2; }
.in-article-cta-label {
  font-size: 11px; font-weight: 700; letter-spacing: 2px;
  color: var(--orange); text-transform: uppercase; margin-bottom: 10px;
}
.in-article-cta h3 {
  font-size: 20px; font-weight: 700; color: #fff;
  margin-bottom: 10px; line-height: 1.5;
  border: none; padding: 0; background: none;
}
.in-article-cta p {
  font-size: 13px; color: #aaa; margin-bottom: 24px;
}
.in-article-cta-btn {
  display: inline-block;
  background: var(--orange); color: #fff !important;
  padding: 14px 32px; border-radius: 4px;
  font-size: 14px; font-weight: 700;
  text-decoration: none !important; transition: background 0.2s;
}
.in-article-cta-btn:hover { background: #d44f00; }

/* 人気記事 */
.popular-posts {
  margin-top: 48px; padding-top: 40px;
  border-top: 1px solid #f0f0f0;
}
.popular-posts-title {
  font-size: 15px; font-weight: 700; color: var(--dark);
  margin-bottom: 16px;
  border: none; padding: 0; background: none;
}
.popular-posts ul { list-style: none; margin: 0; padding: 0; }
.popular-posts ul li {
  display: flex; align-items: center; justify-content: space-between;
  padding: 12px 0; border-bottom: 1px solid #f5f5f5;
  gap: 16px;
}
.popular-posts ul li:last-child { border-bottom: none; }
.popular-posts ul li a {
  font-size: 14px; color: var(--dark) !important;
  text-decoration: none !important; font-weight: 600;
  flex: 1; line-height: 1.5;
  transition: color 0.2s;
}
.popular-posts ul li a:hover { color: var(--orange) !important; }
.wpp-views {
  font-size: 11px; color: #aaa; white-space: nowrap; flex-shrink: 0;
}

/* レスポンシブ */
@media ( max-width: 768px ) {
  .in-article-cta { padding: 28px 24px; }
  .in-article-cta h3 { font-size: 17px; }
}

/*--------------------------------------------------------------
# TOP 最新コラム
--------------------------------------------------------------*/

.top-column { background: var(--white); padding: 80px 60px; }
.top-column-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 24px; margin-bottom: 40px;
}
.top-column-card {
  background: #f8f8f8; border-radius: 8px; padding: 28px 24px;
  border-top: 3px solid var(--orange);
  transition: transform 0.2s, box-shadow 0.2s;
}
.top-column-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,0.08); }
.top-column-meta { font-size: 12px; color: #aaa; margin-bottom: 10px; }
.top-column-meta a { color: var(--orange) !important; text-decoration: none !important; margin-left: 6px; }
.top-column-title { font-size: 15px; font-weight: 700; margin-bottom: 10px; line-height: 1.6; }
.top-column-title a { color: var(--dark) !important; text-decoration: none !important; transition: color 0.2s; }
.top-column-title a:hover { color: var(--orange) !important; }
.top-column-excerpt { font-size: 13px; color: var(--gray); line-height: 1.7; margin-bottom: 16px; }
.top-column-more { font-size: 12px; color: var(--orange) !important; font-weight: 700; text-decoration: none !important; }
.top-column-all { text-align: center; }
.top-column-all a {
  display: inline-block; padding: 12px 32px;
  border: 2px solid var(--orange); border-radius: 4px;
  color: var(--orange) !important; font-size: 14px; font-weight: 700;
  text-decoration: none !important; transition: background 0.2s, color 0.2s;
}
.top-column-all a:hover { background: var(--orange); color: #fff !important; }

@media ( max-width: 768px ) {
  .top-column { padding: 60px 24px; }
  .top-column-grid { grid-template-columns: 1fr; }
}

/*--------------------------------------------------------------
# 対応ショップジャンル
--------------------------------------------------------------*/

.shop-types { background: #f8f8f8; padding: 80px 60px; }
.shop-types-grid {
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
  gap: 16px !important;
  margin-top: 48px;
}
.shop-type-item {
  background: var(--white); border-radius: 8px;
  padding: 24px 12px; text-align: center;
  border: 1px solid #e8e8e8;
  transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
}
.shop-type-item:hover {
  border-color: var(--orange);
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(240,90,0,0.1);
}
.shop-type-icon { font-size: 32px; margin-bottom: 10px; line-height: 1; }
.shop-type-label { font-size: 12px; font-weight: 700; color: var(--dark); line-height: 1.4; }
.shop-type-item--more {
  background: rgba(240,90,0,0.05);
  border-color: rgba(240,90,0,0.3);
}
.shop-type-item--more .shop-type-icon {
  font-size: 28px; color: var(--orange); font-weight: 900;
}
.shop-type-item--more .shop-type-label { color: var(--orange); }

@media ( max-width: 768px ) {
  .shop-types { padding: 60px 24px; }
  .shop-types-grid { grid-template-columns: repeat(3, 1fr) !important; gap: 12px !important; }
  .shop-type-item { padding: 18px 8px; }
  .shop-type-icon { font-size: 26px; }
  .shop-type-label { font-size: 11px; }
}
