/*
Theme Name: Blogsy News
Template: blogsy
Author: Peregrine Themes
Author URI: https://peregrine-themes.com/
Theme URI: https://peregrine-themes.com/blogsy/
Description: Blogsy News is a modern, high-performance WordPress theme designed for bloggers, news publishers, and content creators who demand style and flexibility. Effortlessly shape your site with built-in support for the powerful Gutenberg block editor, ready-made block patterns, and seamless Elementor integration. Choose from multiple header styles, flexible layouts (left, right, or no sidebar), and eye-catching grid or masonry blog designs to make your content shine. Enjoy dark mode, unique sidebar widget patterns, and an array of customization options to create a site that matches your vision. Fully compatible with WooCommerce for building online stores and lighting-fast for the best user experience. With Blogsy news, launching a beautiful, professional website has never been easier, import demo content in just one click and start publishing today. Live preview: https://demo.peregrine-themes.com/blogsy/blogsy-news/
Version: 1.0.1
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: blogsy-news
Tags: one-column, two-columns, right-sidebar, left-sidebar, grid-layout, footer-widgets, blog, news, e-commerce, custom-menu, custom-logo, post-formats, sticky-post, editor-style, threaded-comments, translation-ready, custom-colors, featured-images, full-width-template, rtl-language-support, theme-options, wide-blocks, block-styles, block-patterns

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

Do not add your CSS to this file, use a child theme instead: https://codex.wordpress.org/Child_Themes
The main CSS file is loaded from "assets/css folder".
*/

.pt-shape--sharp {
	--pt-soft-radius: 0;
}

.pt-shape--sharp .blogsy-pyml .swiper-pagination-fraction,
.pt-shape--sharp .pt-hero-slider .carousel-nav-prev,
.pt-shape--sharp .pt-hero-slider .carousel-nav-next,
.pt-shape--sharp .blogsy-pyml .carousel-nav-prev,
.pt-shape--sharp .blogsy-pyml .carousel-nav-next {
	border-radius: 0;
}

.pt-shape--sharp .blogsy-news-ticker-btn {
	border-radius: 50px;
}


/* Post Elastic
-------------------------------------------------------------- */

.blogsy-post-elastic-widget {
	width: 100%;
}

.blogsy-post-elastic-widget .post-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    border-color: var(--term-color, var(--pt-accent-color));
    transition: 0.3s;
}

.blogsy-post-elastic-widget .post-inner {
    position: relative;
    display: flex;
    align-items: center;
    gap: 25px;
    width: 100%;
}

.blogsy-post-elastic-widget .post-wrapper.mini-layout .post-inner {
    gap: 16px;
}

.blogsy-post-elastic-widget .post-wrapper .image-outer-wrapper {
    position: relative;
    flex-shrink: 0;
    width: 250px;
}

.blogsy-post-elastic-widget .post-wrapper.mini-layout .image-outer-wrapper {
    width: 95px;
}

.blogsy-post-elastic-widget .post-wrapper.mini-layout .image-outer-wrapper {
    height: 95px;
}

.blogsy-post-elastic-widget .post-wrapper.mini-layout .image-outer-wrapper .image-wrapper {
    background-color: rgba(25,25,29,.45);
}

.blogsy-post-elastic-widget .post-wrapper .image-wrapper {
    border-radius: var(--pt-soft-radius);
    display: flex;
    position: relative;
    overflow: hidden;
	transform: translate(0, 0);
	will-change: transform;
    transition: 0.8s;
    width: 100%;
    height: 100%;
}

.blogsy-post-elastic-widget .post-wrapper .image-wrapper::before {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    z-index: 2;
    border-radius: inherit;
    background: transparent;
    transition: 0.8s;
}

.blogsy-post-elastic-widget .post-wrapper .image-wrapper img {
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    transition: 0.8s;
}

.blogsy-post-elastic-widget .image-wrapper:hover > img {
    transform: scale(1.15);
}

.blogsy-post-elastic-widget .image-wrapper.has-animation > img {
    transform-origin: right;
}

.blogsy-post-elastic-widget .image-wrapper.has-animation:hover > img {
    filter: blur(8px);
    opacity: 0;
    transform: scaleX(1.5);
}

.blogsy-post-elastic-widget .post-wrapper .image-animation {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
}

.blogsy-post-elastic-widget .image-animation img {
    transform-origin: left;
    filter: blur(8px);
    opacity: 0;
    transform: scaleX(1.5);
}

.blogsy-post-elastic-widget .image-wrapper:hover .image-animation > img {
    filter: blur(0);
    opacity: 1;
    transform: scaleX(1);
}

.blogsy-post-elastic-widget .post-wrapper .image-wrapper a {
    border-radius: inherit;
	z-index: 10;
}

.blogsy-post-elastic-widget .post-wrapper .content-wrapper {
    width: 100%;
    position: relative;
    z-index: 10;
    align-self: center;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.blogsy-post-elastic-widget  {
    counter-reset: post-num;
}

.blogsy-post-elastic-widget .post-counter-wrap {
    z-index: 20;
}

.blogsy-post-elastic-widget .post-wrapper.mini-layout .footer-wrap {
    border-top: none;
    padding-top: 0;
    margin-top: 5px;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.blogsy-post-elastic-widget .post-wrapper > .footer-wrap {
    margin-top: 30px;
}


/*****************************************/
/* Header layout 4
/*****************************************/

.pt-header-layout-4 .pt-header-inner {
	padding: 0;
	background-color: transparent;
	box-shadow: none;
}

.pt-header-layout-4 .pt-logo-container .pt-header-container,
.pt-header-layout-4 .pt-nav-container .pt-header-container {
    position: relative;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pt-header-layout-4 .pt-logo-container .pt-header-element {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%;
}

.pt-header-layout-4 .pt-logo-container .pt-logo {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin: 0 auto;
    padding: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.pt-header-layout-4 .pt-logo-container .pt-logo>.logo-inner {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-left {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-left: 0;
    margin-right: auto;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
}

.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-left .pt-header-widget:first-child {
    padding-left: 0;
    margin-left: 0;
}

.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-right .pt-header-widget:last-of-type,
.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-left .pt-header-widget:last-of-type {
    padding-right: 0;
}

.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-right .pt-header-widget:last-of-type:after,
.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-left .pt-header-widget:last-of-type:after {
    display: none;
}

.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-right {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-right: 0;
    margin-left: auto;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.pt-header-layout-4 .blogsy-widget-wrapper {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.pt-header-layout-4 .pt-mobile-nav {
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
}

.pt-header-layout-4 .pt-nav-container {
    position: relative;
    margin-bottom: -.1rem;
}

.pt-header-layout-4 .pt-header .pt-header-inner .pt-logo-container .pt-header-container,
.pt-header-layout-4 .pt-header .pt-header-inner .pt-nav-container .pt-header-container {
    border-width: 0;
}

.pt-header-layout-4 .pt-nav-container .pt-header-element {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
}

.pt-header-layout-4 .pt-nav-container .blogsy-header-nav-wrapper {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin: 0 auto;
    padding: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.pt-header-layout-4 .pt-nav-container .blogsy-header-nav-wrapper>ul {
    min-height: 6rem;
}

.pt-header-layout-4 .pt-nav-container .blogsy-header-nav-wrapper>ul>li:not(:first-child) {
    margin-left: 1.6rem;
}

.pt-header-layout-4 .pt-nav-container .blogsy-header-nav-wrapper>ul>li>a {
	height: 100%;
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
}

.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-left {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    margin-left: 0;
    margin-right: auto;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
}

.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-left .pt-header-widget:first-child {
    padding-left: 0;
    margin-left: 0;
}

.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-right .pt-header-widget:last-of-type,
.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-left .pt-header-widget:last-of-type {
    padding-right: 0;
}

.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-right .pt-header-widget:last-of-type:after,
.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-left .pt-header-widget:last-of-type:after {
    display: none;
}

.pt-header-layout-4 .pt-nav-container .blogsy-widget-location-right {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
    margin-right: 0;
    margin-left: auto;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

@media screen and (max-width: 1024px) {
	.pt-header-layout-4 .pt-logo-container .pt-header-container {
		flex-wrap: wrap;
	}

	.pt-header-layout-4 .pt-logo-container .pt-logo>.logo-inner {
		align-items: start;
	}

	.pt-header-layout-4 .pt-logo-container .pt-header-element {
		flex-basis: auto;
	}

	.pt-header-layout-4 .pt-logo-container .pt-logo {
		order: 0;
		justify-content: start;
		align-items: start;
		flex-basis: auto;
		margin-left: 0;
	}

	.pt-header-layout-4 .pt-logo-container .pt-mobile-nav {
		order: 5;
	}

	.pt-header-layout-4 .pt-logo-container .blogsy-widget-location-right {
		-js-display: flex;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.pt-header-layout-4 .pt-nav-container {
		display: none;
	}
}


/* Ticker (Layout 2) */

.blogsy-ticker.layout-2 {
    border-bottom: none;
    padding-top: 18px;
    padding-bottom: 0;
}

.blogsy-ticker.layout-2 .blogsy-news-ticker-wrapper .blogsy-news-ticker-title-wrapper {
	background-color: transparent;
    color: var(--pt-accent-color);
    font-weight: 600;
    gap: 4px;
    padding: 0;
    outline: none;
}

html[scheme=dark] .blogsy-ticker.layout-2 .blogsy-news-ticker-wrapper .blogsy-news-ticker-title-wrapper {
	background-color: transparent;
}

.blogsy-ticker.layout-2 .blogsy-news-ticker-wrapper .blogsy-news-ticker-title-wrapper .blogsy-news-ticker-title-icon-wrapper {
    color: var(--pt-accent-color);
}

.blogsy-ticker.layout-2 .blogsy-news-ticker-wrapper .blogsy-news-ticker-title-wrapper .blogsy-news-ticker-title-text {
    text-transform: uppercase;
}

.blogsy-ticker.layout-2 .blogsy-news-ticker-btn {
	padding: 3px 14px 3px 14px;
	height: 3rem;
}

.blogsy_news .blogsy-ticker .blogsy-news-ticker-item .item-thumbnail img {
	border-radius: 0;
	border: 0;
}

.pt-header-layout-4 #site-header+#site-sticky-header+#blogsy-ticker+#blogsy-hero,
.pt-header-layout-4 #site-header+#blogsy-ticker+#blogsy-hero {
	margin-top: 2rem;
}

.pt-header-layout-4 #blogsy-hero {
	margin-top: 0.4rem;
}

/* Hero two/three */

#blogsy-hero .pt-container.pt-hero-type-two,
#blogsy-hero .pt-container.pt-hero-type-three {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.pt-hero-slider .carousel-nav-prev,
.pt-hero-slider .carousel-nav-next,
.blogsy-pyml .carousel-nav-prev,
.blogsy-pyml .carousel-nav-next {
    border-radius: 0;
    width: 40px;
    height: 40px;
    font-size: 1.6rem;
}

.pt-hero-type-three .pt-hero-slider .post-wrapper,
.pt-hero-type-two .pt-hero-slider .post-wrapper {
	border-radius: 0;
}

.pt-hero-type-three .pt-hero-slider .post-wrapper,
.pt-hero-type-two .pt-hero-slider .post-wrapper {
    height: 560px;
    border-radius: 0px 0px 0px 0px;
}

.pt-hero-type-three .pt-hero-slider .terms-wrapper,
.pt-hero-type-two .pt-hero-slider .terms-wrapper {
    position: relative;
    left: 0;
}

.pt-hero-type-three .pt-hero-slider .post-wrapper .meta-wrapper,
.pt-hero-type-two .pt-hero-slider .post-wrapper .meta-wrapper {
    gap: 1rem;
}

.pt-hero-type-two .pt-hero-slider .carousel-nav-prev {
    left: -52px;
}

.pt-hero-type-two .pt-hero-slider .carousel-nav-next {
    right: 10px;
}

.pt-hero-type-three .pt-hero-slider .carousel-pagination-wrapper.type-bullets .carousel-pagination,
.pt-hero-type-two .pt-hero-slider .carousel-pagination-wrapper.type-bullets .carousel-pagination {
    bottom: 0;
    left: -29px;
}

.pt-hero-type-three .blogsy-post-elastic-widget .blogsy-posts-wrapper.layout-grid,
.pt-hero-type-two .blogsy-post-elastic-widget .blogsy-posts-wrapper.layout-grid {
    grid-template-columns: repeat(1, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}

.pt-hero-type-three .blogsy-post-elastic-widget .post-wrapper,
.pt-hero-type-two .blogsy-post-elastic-widget .post-wrapper {
    padding: 0px 0px 16px 0px;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: #7F818540;
}

.pt-hero-type-two .blogsy-post-elastic-widget .post-wrapper .post-inner {
    flex-direction: row-reverse;
}

.pt-hero-type-three .blogsy-post-nexo-widget .post-wrapper,
.pt-hero-type-three .blogsy-post-elastic-widget .post-wrapper .image-wrapper,
.pt-hero-type-two .blogsy-post-nexo-widget .post-wrapper,
.pt-hero-type-two .blogsy-post-elastic-widget .post-wrapper .image-wrapper {
    border-radius: 0;
}

.pt-hero-type-three .blogsy-post-nexo-widget.hero-tabs .blogsy-posts-wrapper.layout-grid,
.pt-hero-type-two .blogsy-post-nexo-widget.hero-editor .blogsy-posts-wrapper.layout-grid {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}

#blogsy-hero .post-author-wrapper .author-image img {
    width: 22px;
    height: 22px;
}

#blogsy-hero .post-counter-wrap .post-counter {
    background-color: var(--pt-accent-color);
    border-radius: 0;
    width: 25px;
    height: 25px;
    color: #fff;
    font-size: 14px;
	font-weight: 600;
	padding: 5px;
}

#blogsy-hero .blogsy-post-elastic-widget .swiper-vertical {
    height: 496px;
}

#blogsy-hero .pt-hero-type-three .pt-hero-slider .blogsy-position-top-right {
	top: 3.5rem;
    right: 2rem;
}

#blogsy-hero .blogsy-post-elastic-widget .blogsy-position-top-right {
	top: 1.4rem;
}

#blogsy-hero .pt-hero-type-three .pt-hero-slider:has(.blogsy-section-heading) .blogsy-position-top-right,
#blogsy-hero .blogsy-post-elastic-widget:has(.blogsy-section-heading) .blogsy-position-top-right {
    top: -4rem;
	right: 0;
}

#blogsy-hero .pt-hero-type-three .pt-hero-slider .carousel-nav-prev,
#blogsy-hero .pt-hero-type-three .pt-hero-slider .carousel-nav-next,
#blogsy-hero .blogsy-post-elastic-widget .carousel-nav-prev,
#blogsy-hero .blogsy-post-elastic-widget .carousel-nav-next {
    color: var(--pt-body-color);
    background-color: var(--pt-card-bg);
    border-radius: 0;
    width: 2.7rem;
    height: 2.7rem;
    font-size: 1.3rem;
    text-decoration: none;
    border: 1px solid var(--pt-border-color);
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.03);
    transition: .25s;
}

#blogsy-hero .pt-hero-type-three .pt-hero-slider:has(.blogsy-section-heading, .hero-tabs-inner) .carousel-nav-prev,
#blogsy-hero .blogsy-post-elastic-widget:has(.blogsy-section-heading, .hero-tabs-inner) .carousel-nav-prev {
    left: -1px;
}

/* Hero Tabs */

.hero-tabs .hero-tabs-inner {
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-bottom: 20px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.hero-tabs .tab-btn {
	position: relative;
	cursor: pointer;
	padding: 0 0 7px;
	outline: none;
	border: none;
	line-height: 1.4;
	background: transparent;
	color: #000;
}

.hero-tabs .tab-btn.active {
	color: var(--pt-accent-color);
}

.hero-tabs .tab-btn.active::after {
    content: "";
    width: 100%;
    height: 3px;
    background-color: var(--pt-accent-color);
    position: absolute;
    bottom: -2px;
    left: 0;
}

.hero-tabs .tab-btn h5 {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    gap: 5px;
}

.hero-tabs .tab-btn h5 .blogsy-svg-icon {
    font-size: 90%;
}

.tab-content {
	display: none;
}

.tab-content.active {
	display: block;
}

.hero-tabs .tab-content.active {
    display: flex;
    flex-direction: column;
    column-gap: 16px;
    row-gap: 16px;
}


/* Style 12 */

.blogsy-divider-heading.divider-style-12 {
    flex-wrap: wrap;
    gap: 0;
	row-gap: 2px;
    align-items: center;
}

.blogsy-divider-heading.divider-style-12 .title {
    width: 100%;
    margin: 0 0 10px!important;
}

.blogsy-divider-heading.divider-style-12 .divider-1 {
    order: 11;
    width: 12px;
    height: 12px;
    border-radius: 50px;
    flex-shrink: 0;
}

.blogsy-divider-heading.divider-style-12 .divider-2 {
    order: 12;
    width: 80px;
    height: 3px !important;
}

.blogsy-divider-heading.divider-style-12 .divider-3 {
    --divider-color-2:  rgba(0, 0, 0, 0.2);
    background: var(--divider-color-2);
    width: auto !important;
    flex-grow: 1;
    height: 1px !important;
}

.blogsy-divider-heading.divider-style-12 .divider-4 {
    display: none;
}

#blogsy-hero .blogsy-divider-heading.divider-style-12,
#blogsy-hero .blogsy-divider-heading.divider-style-12 .divider-3 {
    width: 100%;
}

/* Section Heading */

.blogsy_news .blogsy-section-heading .blogsy-divider-heading,
.blogsy_news .blogsy-section-heading .blogsy-divider-heading .title {
	width: 100%
}

.blogsy_news .blogsy-section-heading .blogsy-divider-heading {
	row-gap: 0.7rem
}

/* Blog Horizontal 2 */

.blog-horizontal-2 .post-wrapper .term-item {
    padding-left: 1.25rem;
}

.blog-horizontal-2 .post-wrapper .term-item::before {
    content: "#";
    background: transparent;
    width: auto;
    height: auto;
    border-radius: 0;
    margin-top: -0.3px;
    font-size: 120%;
    font-weight: 600;
    color: var(--term-color, var(--pt-accent-color));
}

.blog-horizontal-2 .post-wrapper .term-item:focus:before,
.blog-horizontal-2 .post-wrapper .term-item:hover:before {
	width: auto;
}

/* PYML */

.blogsy_news #blogsy-pyml .pt-container {
	max-width: clamp(1400px, 100vw, 93%);
}

.blogsy_news .blogsy-pyml .carousel-nav-next,
.blogsy_news .blogsy-pyml .carousel-nav-prev {
	width: 3.5rem;
	height: 3.5rem;
	font-size: 1.5rem;
	top: -52px;
}

.blogsy_news .blogsy-pyml .carousel-nav-next {
	right: 8rem;
}

.blogsy_news .blogsy-pyml .carousel-nav-prev {
	left: -10rem;
}

/* --------------------------------------
=========================================
	PLUS AREA
=========================================
-----------------------------------------*/

body {
    font-family: "Noto Sans JP", sans-serif !important;
    font-optical-sizing: auto;
    font-style: normal;
    font-size: 16px !important;
}

.product-subset__table th {
    background-color: #EEE;
    border: 1px solid #AAA;
    padding: 10px;
    font-size: 16px;
    vertical-align: middle;
}

.product-subset__table td {
    border: 1px solid #AAA;
    font-size: 16px;
    padding: 10px;
    vertical-align: middle;
}

.product-subset__price br {
    display: none;
}

.product-subset__price {
    color: #d21a1a;
    font-weight: bold;
    font-size: 1.4em;
}

.product-subset__price--yen {
    font-size: 60%;
    font-weight: bold;
}

td.product-subset__td-order br {
    display: none;
}

.product-subset__submit-button {
    width: 100%;
    font-size: 1.1em;
    font-weight: bold;
    border-radius: 8px;
    padding: 10px;
}

.inyou {
    position: relative;
    padding: 0;
    border: 1px solid #AAA;
    margin-bottom: 30px;
}

.inyou p {
    margin: 0 !important;
    /* position: absolute; */
    padding: 10px;
    line-height: 2;
    top: 3px;
    left: 10px;
    background: #eeeeee;
    border-radius: 0;
    font-weight: bold;
    color: #333;
}

.inyou ul {
    padding: 20px;
    border-top: 1px solid #AAA;
    margin-bottom: 0 !important;
}

.inyou ul li {
    list-style: none;
    margin-bottom: 10px;
    font-size: 16px;
}

.inyou ul li:last-child {
    margin: 0;
}
table.about th {
    border: 1px solid #AAA;
    width: 200px;
    padding: 10px;
    font-size: 1em;
    background-color: #EEE;
}

table.about td {
    border: 1px solid #AAA;
    padding: 10px;
    font-size: 1em;
	background-color: #FFF!important;
}

.page-entry-title-box h1 {
    font-size: 30px;
}

.bs-blog-post.single img {
    margin-bottom: 10px;
    width: 100%;
}

p.tel_number:before {
    content: "\f095";
    font-family: 'FontAwesome';
    margin-right: 10px;
}

p.address:before {
    content: "\f041";
    font-family: 'FontAwesome';
    margin-right: 12px;
}

.textwidget.custom-html-widget p {
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
}

p.product-price {
    color: #d21a1a;
    font-weight: bold;
    font-size: 1.2em;
    margin-bottom: 20px !important;
    text-align: left !important;
    margin-bottom: 20px;
}

h2.entry-title {
    text-align: left;
    font-size: 30px;
    padding: 10px 0;
}

.blog-post {
    border: 2px solid #DDD;
    border-radius: 8px;
    padding: 15px;
    box-sizing: border-box;
}

article .blog-post .image {
    width: 100%;
    max-width: 400px;
    margin: 0 auto!important;
}

h3.widget-title {border-bottom: 3px solid #437a71;padding: 0 10px 10px;}

.single.single-left-sidebar #comments, .single.single-left-sidebar .content, .single.single-left-sidebar div.title, .single.single-right-sidebar #comments, .single.single-right-sidebar .content, .single.single-right-sidebar div.title {
    width: 100% !important;
}

h1.entry-title {
    border-bottom: 2px dotted #CCC;
    padding: 10px 0 20px;
    font-size: 30px;
}

.copyrights span {
    display: none;
}

.hd-bar .side-menu ul li a {
    font-size: 16px;
}

p.btn_detail {
    width: 100%;
    text-align: center;
}

p.btn_detail a {
    border: 2px solid #997432 !important;
    background-color: #af915c;
    padding: 10px 20px;
    border-radius: 10px;
    color: #FFF;
    text-decoration: none;
    width: 100%;
    display: block;
    margin: 0 auto;
    font-size: 1.1em;
    color: #FFF !important;
}

p.btn_detail a:hover {
    opacity: 0.8;
}

.bs-blog-post .bs-blog-thumb img {
    border-radius: 20px;
}

.reviewList ul li {
    list-style: none;
    margin-bottom: 20px;
    border: 4px solid #EEE;
    padding: 20px !important;
}

.reviewList ul li p {
    margin: 0;
}

p.review_text {
    margin-bottom: 0;
}

p.review_star i {margin-right: 2px;color: #ffa400;}

.entry-content h2 {
    font-size: 1.4em !important;
    margin-bottom: 10px;
    padding: 0 0 20px;
    text-align: left;
    margin: 0 0 20px;
}

dl.faq_area {
    border: 2px solid #DDDD;
    padding: 10px 20px 20px !important;
    margin-bottom: 20px !important;
    border-radius: 10px;
}

dl.faq_area dt:before {
    content: "Q.";
    color: #d51a1a;
    font-size: 30px;
    margin-right: 7px;
}

dl.faq_area dt {
    margin: 0 0 10px;
    border-bottom: 1px dotted #CCC;
    padding-bottom: 10px;
    line-height: 2;
}

dl.faq_area dd {
    margin: 0;
    line-height: 2;
}

dl.faq_area dd:before {
    content: "A.";
    font-weight: bold;
    font-size: 30px;
    color: #1a7dd5;
    margin-right: 7px;
}

ul.bta_area li {
    list-style: none;
    padding: 5px 0;
}

ul.bta_area {
    margin: 0 !important;
    padding: 0 !important;
}

.site-title {
    /* margin-top: 10px !important; */
}

.single-entry-summary h2 {
    font-size: 1.5em;
    border-bottom: 2px solid #fd0707;
    padding: 0 10px 10px;
    margin-bottom: 20px;
}

table.product-subset__table {
    margin: 0 0 30px;
}

table.point th {
    background-color: #eeeeee;
    border: 1px solid #AAA;
    padding: 10px;
    width: 150px;
}

table.point td {
    border: 1px solid #AAA;
    padding: 10px;
}

ul.review li {
    border: 4px solid #DDD;
    border-radius: 10px;
    margin: 0 0 20px;
    padding: 20px !important;
    list-style: none;
}

ul.review {
    margin: 0;
    padding: 0;
}

table.point {
    margin-bottom: 30px;
}

p.review_name {
    font-weight: bold;
    font-size: 16px;
}

.news-thumb img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 20px;
    display: table;
}

table.contact th {
    background-color: #EEE;
    border: 1px solid #AAA;
    padding: 10px;
    width: 200px;
}

table.contact td {
    background-color: #FFF;
    border: 1px solid #AAA;
    padding: 10px;
}

table.contact {
    margin-bottom: 20px;
}

.entry-content dl dt {
    font-weight: bold;
    line-height: 2;
}

.entry-content dl dd {
    padding: 0;
    margin: 0;
}

nav.navigation.post-navigation {
    display: none;
}

ul.review p {
    margin: 0;
    font-size: 16px;
}

.box {
    border: 1px solid #AAA;
    padding: 10px;
    background-color: #f3f3f3;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 30px;
}

.box p {
    margin: 0;
}

.box h2 {
    margin: 0 0 20px;
}

ul.kanren {
    display: flex;
    flex-flow: row wrap;
    margin: 0 !important;
    padding: 0 !important;
}

ul.kanren li {
    width: 25%!important;
    list-style: none;
    padding: 10px !important;
}

ul.kanren li a {
    border: 1px solid #AAA;
    padding: 10px;
    border-radius: 10px;
    display: block;
    text-decoration: none;
    box-shadow: 0 0 5px #CCC;
}

.kanren li p {
    text-align: center;
    text-decoration: none;
    color: #333;
    font-weight: bold;
    font-size: 16px;
    margin: 10px 0 0;
}

ul.kanren li a:hover {
    opacity: 0.8;
}

.select-wrapper-2 {
    display: flex;
    position:relative;
    width: 100%;
    max-width: 360px;
    margin: 0 0 0 auto;
    }


.select-wrapper-2 select {
    margin-right: 10px;
    font-size: 20px;
    border-radius: 4px;
    border: 1px solid #333;
    outline: none;
    font-weight: bold;
    cursor: pointer;
    appearance: none;
    padding: 10px 30px 10px 10px;
    position:relative;
    width: 80px !important;
    height: auto;
    min-width: initial;
}

.select-wrapper-2::after {
  content: "\f0d7"; /* Font Awesome 4.7 Ã¤Â¸â€¹Ã¥Ââ€˜Ã£ÂÂÃ§Å¸Â¢Ã¥ÂÂ° */
  font-family: FontAwesome;
  position: absolute;
  left: 60px; /* Ã£Æ’Å“Ã£â€šÂ¿Ã£Æ’Â³Ã£ÂÂ®Ã¥Â¹â€¦Ã£ÂÂ«Ã¥ÂË†Ã£â€šÂÃ£Ââ€ºÃ£ÂÂ¦Ã¨ÂªÂ¿Ã¦â€¢Â´ */
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #333;
  font-size: 16px;
}

.select-wrapper-2 button {
    flex: 1;
    font-weight: bold;
    font-size: 20px;
    border-radius: 4px;
    padding: 10px;
    border: 1px solid #333;
    appearance: none;
    cursor: pointer;
}

.select-wrapper-2 button:hover {
    background-color: #333;
    color: #FFF;
}

/* Ã£Æ’Â©Ã£â€šÂ¸Ã£â€šÂªÃ£Æ’Å“Ã£â€šÂ¿Ã£Æ’Â³Ã£â€šâ€™Ã£Æ’ÂªÃ£â€šÂ»Ã£Æ’Æ’Ã£Æ’Ë† */
input[type="radio"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #999;
  border-radius: 50%;
  margin-right: 10px;
  vertical-align: middle;
  position: relative;
  cursor: pointer;
  transition: border 0.2s, background 0.2s;
}

/* Ã£Æ’ÂÃ£â€šÂ§Ã£Æ’Æ’Ã£â€šÂ¯Ã£Ââ€¢Ã£â€šÅ’Ã£ÂÅ¸Ã£ÂÂ¨Ã£ÂÂ */
input[type="radio"]:checked {
  border-color: #333;
  background-color: #333;
}

/* Ã£Æ’ÂÃ£â€šÂ§Ã£Æ’Æ’Ã£â€šÂ¯Ã£Æ’Å¾Ã£Æ’Â¼Ã£â€šÂ¯Ã§â€Â¨Ã£ÂÂ®Ã¦â€œÂ¬Ã¤Â¼Â¼Ã¨Â¦ÂÃ§Â´Â  */
input[type="radio"]:checked::after {
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #333;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Ã£Æ’Â©Ã£Æ’â„¢Ã£Æ’Â«Ã¥â€¦Â¨Ã¤Â½â€œÃ£â€šâ€™Ã£â€šÂ¯Ã£Æ’ÂªÃ£Æ’Æ’Ã£â€šÂ¯Ã¥ÂÂ¯Ã¨Æ’Â½Ã£ÂÂ« */
label {
  cursor: pointer;
  user-select: none;
}

.product-subset__form ul li {
    list-style: none;
    display: flex;
    border: 2px solid #d0d0d0;
    padding: 10px !important;
    border-radius: 10px;
    margin-bottom: 10px;
    line-height: 2;
    align-items: center;
    background-color: #EEE;
}

.product-subset__form ul {
    padding: 0 !important;
    margin: 0 !important;
}

form.product-subset__form ul li input {
    position: relative;
    border-color: #333 !important;
    background-color: #FFF !important;
}

.product-subset__form button {
    font-size: 20px;
    padding: 20px;
    border-radius: 8px;
    margin: 0;
    display: table;
    appearance: none;
    cursor: pointer;
    height: auto;
    background-color: #af915c !important;
    width: 100%;
    text-align: left;
    position: relative;
    border: 2px solid #643f32;
    color: #FFF;
    font-weight: bold;
}

.product-subset__form ul li label {
    flex: 1;
    font-weight: bold;
    font-size: 20px;
}

table.guide th {
    width: 180px;
    border: 1px solid #af915c;
    background-color: #e5d9c2;
    padding: 10px;
    text-align: left;
}

table.guide td {
    border: 1px solid #af915c;
    background-color: #FFF;
    padding: 10px;
}

form.product-subset__form {
    margin-bottom: 30px;
}

form.product-subset__form ul li label span {
    font-size: 16px;
    font-weight: normal;
    padding-left: 10px;
}

.select-wrapper-2 p {
    margin: 0 !important;
}

body {
  counter-reset: faq-counter;
} 
/* å„ faq_area ã® dt ãŒç•ªå·ã‚’å¢—ã‚„ã™ */
.faq_area dt {
  counter-increment: faq-counter;
}
/* dt ã« Qâ—¯ ã‚’ä»˜ä¸Ž */
.faq_area dt::before {
  content: "Q" counter(faq-counter) "."!important;
  font-weight: bold;
}

.socialLine.annCenter {
    display: none;
}

.top-footer-widget-area {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    background-color: #FFF;
    margin-bottom: 20px;
    padding: 1.5em;
    border-radius: 4px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.top-footer-widget-area .top-footer-widget {
    width: 32%;
}

.top-footer-widget-area .top-footer-widget ul {
    margin: 0;
    padding: 0 10px;
}

.top-footer-widget-area .top-footer-widget ul li {
    list-style: none;
    line-height: 2;
}

.top-footer-widget-area .top-footer-widget ul li a {
    color: #333 !important;
}

.top-footer-widget-area .top-footer-widget ul li a:before {
    content: "\f0da";
    font-family: 'FontAwesome';
    margin-right: 5px;
}

div#mainAnnina article:last-child {
    left: 0 !important;
}

h4.title {
    margin-bottom: 20px !important;
}

.list-blog.bs-blog-post .small form {
    margin: 0;
}

.product-subset__form button span {
    font-size: 70%;
    margin: 0 0 0 10px;
}

form.product-subset__form br {display: none;}

.product-subset__form button:after {
    content: "\f105";
    position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%) translateX(-50%);
font-family:FontAwesome;
}

.super_visor dl dd {
    font-size: 16px;
    line-height: 1.5;
}

span.heading-line:before {
    content: none !important;
}

img.attachment-full.size-full.wp-post-image {
    margin: 0 auto;
    display: table;
}

.post-thumbnail.full-width-image.original {
    width: 100%;
}

.column_review_meta span br {
    display: none;
}

p.kanren {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.entry-meta {
    display: none;
}

figure.post-thumbnail img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto 30px;
}

.textwidget.custom-html-widget ul li {
    padding: 0;
    list-style: none;
    margin: 0;
}

.textwidget.custom-html-widget ul li a {
    color: #af915c !important;
    /* border-bottom: 1px dotted #AAA; */
    display: block;
    line-height: 2;
}

.textwidget.custom-html-widget ul {
    margin: 0;
    padding: 0;
}

form.product-subset__form button {
    margin-bottom: 10px;
}

h5.entry-title {
    margin: 0 !important;
    border: none !important;
    padding: 10px 0 !important;
}

.archive-box form.product-subset__form {margin:0;}

.container-full h1 {
    font-size: 30px;
}

.container-full h2 {
    margin: 0 0 30px;
}

.archive-box img {
    margin: 0 auto 10px !important;
}

.single-content-inner h2 {
    font-size: 20px;
    border-bottom: 1px dashed #af915c;
}

.single-content-inner h3 {
    font-size: 20px;
    border-left: 5px solid #e5d9c2;
}

.single-content-inner p {
    font-size: 16px !important;
}

.image-container img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}

textarea {
    border-radius: 0;
    width: 100%;
}

@media (max-width: 768px) {
.product-subset__submit-button {
    font-size: 16px;
}
.product-subset__table th {
    font-size: 16px;
}
.product-subset__table td {
    font-size: 16px;
}
.product-subset__unit-price {
    font-size: 12px;
}
.bs-blog-post .small {
    padding: 10px;
}
.inyou ul {
    margin: 0 !important;
    width: 100% !important;
}

.content p {
    width: 100% !important;
    margin-bottom: 30px !important;
}

div#post-wrapper {
    padding: 0;
}
h1.entry-title {
    font-size: 24px;
}
}

@media (max-width: 480px) {
.img-fluid {
    width: 100%;
    max-width: 270px !important;
    margin: 0 auto;
    display: table;
}
table.about tr {
    display: block;
    width: 100%;
}

table.about th {
    display: block;
    width: 100%;
    font-size: 16px;
    border: none;
    border-right: 1px solid #AAA;
    border-bottom: 1px solid #AAA;
}

table.about td {
    display: block;
    width: 100%;
    font-size: 16px;
    border: none;
    border-right: 1px solid #AAA;
    border-bottom: 1px solid #AAA;
}

table.about {
    border-top: 1px solid #AAA;
    border-left: 1px solid #AAA;
}
.page-area {
    padding: 20px 0;
}
#sidebar {
    display: block;
    max-width: 100%;
    clear: both;
}
article.blog-article {
    clear: none;
    padding-right: 0!important;
}
.col-md-9 {
    padding-right: 0 !important;
}
ul.kanren li {
    width: 100% !important;
}
table.point th {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #AAA;
    border-right: 1px solid #AAA;
}

table.point tr {
    display: block;
    width: 100%;
}

table.point td {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #AAA;
    border-right: 1px solid #AAA;
}

table.point {
    border-top: 1px solid #AAA;
    border-left: 1px solid #AAA;
}
.top-footer-widget-area .top-footer-widget {
    width: 100%;
    margin-bottom: 40px;
}
table.guide th {
    width: 40%!important;
}
h1, p.site-title {
    font-size: 20px;
}
header.entry-header {
    padding: 0;
}
.page-content, .entry-content, .entry-summary {
    margin: 1em 0 0;
}
form.product-subset__form ul li label span {
    font-size: 14px;
    font-weight: normal;
    padding-left: 0;
    display: block;
}
.product-subset__form button span {
    font-size: 70%;
    margin: 10px 0 0;
    display: block;
}
.logo-banner {
    padding-top: 15px;
    padding-bottom: 15px;
    position: relative;
}
.single-hero-outside {
    margin-bottom: 20px!important;
}
.single-hero-inside:not(:empty) {
    margin-bottom: 0!important;
}
.entry-content h2 {font-size: 1.2em !important;}
.page-content, .entry-content, .entry-summary {margin: 1em 0 0;}
}

/* --------------------------------------
=========================================
	PLUS AREA
=========================================
-----------------------------------------*/

/* ==========================================================================
   監修者情報 全体のボックス
   ========================================================================== */
.super_visor {
  background-color: #ffffff; /* 白ベース */
  border: 4px solid #CCC; /* アクセントカラーに合わせた優しい薄いオレンジの枠線 */
  border-radius: 16px; /* 角を丸くして親しみやすさを演出 */
  padding: 30px;
  max-width: 100%; /* 読みやすい横幅に制限 */
  margin: 0 auto 30px;
  box-shadow: 0 6px 16px rgba(247, 126, 33, 0.05); /* アクセントカラーをほんのり混ぜた影 */
  box-sizing: border-box;
}

/* ==========================================================================
   タイトル（H2）
   ========================================================================== */
.super_visor h2 {
  font-size: 2.0rem;
  color: #333333;
  margin: 0 0 30px 0;
  padding-bottom: 20px;
  position: relative;
  font-weight: 700;
  text-align: left; /* タイトルを中央寄せにして柔らかな印象に */
  border: none !important;
}

/* タイトルの下線（中央から広がるアクセントライン） */
.super_visor h2::after {
  content: '';
  position: absolute;
  left: 24px;
  bottom: 0;
  transform: translateX(-50%);
  width: 50px;
  height: 3px;
  background-color: #af915c; /* アクセントカラー */
  border-radius: 2px;
}

/* ==========================================================================
   記事・レイアウトエリア
   ========================================================================== */
.super_visor article {
  display: flex;
  flex-direction: column;
  gap: 25px; /* 項目間のゆとり */
}

/* 定義リスト（dl） */
.super_visor dl {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: none;
  padding: 0;
}

/* 項目名（dt：肩書き・コメント） */
.super_visor dt {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.05em;
}

/* 肩書き・コメントのラベル装飾 */
.super_visor dt span {
  display: inline-block;
  background-color: #EEE; /* アクセントカラーを10%に薄めた背景 */
  color: #af915c; /* アクセントカラー */
  padding: 5px 14px;
  border-radius: 20px; /* カプセル型の丸み */
}

/* ==========================================================================
   各項目の内容（dd：お名前・本文）
   ========================================================================== */

/* セラピスト名 */
.super_visor dl:nth-of-type(1) dd {
  font-size: 16px; /* お名前を大きめに */
  margin: 0;
  padding-left: 5px;
}

/* コメント本文 */
.super_visor dl:nth-of-type(2) dd {
  font-size: 16px;
   /* 改行やセリフが多いため、行間を広げて読みやすく */
  margin: 0;
  padding: 0;
   /* ほんのり温かみのある超極薄のベージュ/グレー */
   /* 左側にアクセントカラーのアクセントライン */
  line-height: 1.5;
}

/* ==========================================================================
   レスポンシブ対応（画面幅 480px 以下）
   ========================================================================== */
@media screen and (max-width: 480px) {
  .super_visor {
    padding: 20px; /* スマホ用に外側の余白をタイトに */
    border-radius: 12px;
  }
  
  .super_visor h2 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  
  .super_visor dl:nth-of-type(1) dd {
    font-size: 16px; /* お名前のサイズをスマホ向けに最適化 */
  }

  .super_visor dl:nth-of-type(2) dd {
    font-size: 16px; /* 本文の文字をわずかに小さくして枠内に収まりやすく */
    padding: 0; /* 内側の余白を微調整 */
  }
}

/* ==========================================================================
   全体の共通設定・見出し
   ========================================================================== */
/* 全体の大見出し（h2） */
h2 {
  font-size: 1.5rem;
  color: #333333;
  text-align: left;
  margin: 40px 0 20px 0;
  padding-bottom: 10px;
  position: relative;
}

/* 大見出しの下線装飾 */
h2::after {
  content: '';
  position: absolute;
  bottom: -3px;
  left: 30px;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  /* background-color: #006eeb; */ /* アクセントカラー */
  border-radius: 2px;
}

/* カテゴリの見出し（h3） */
h3 {
  font-size: 1.4rem;
  color: #006eeb; /* アクセントカラー */
  margin: 40px auto 15px auto;
  max-width: 100%; /* リストの幅と合わせる */
  padding-left: 10px;
  border-left: 4px solid #006eeb; /* 左側にアクセントライン */
}

/* ==========================================================================
   FAQリスト全体のスタイル（ul）
   ========================================================================== */
.faq_list {
  list-style: none; /* デフォルトの点を消す */
  padding: 0;
  margin: 0 auto 30px auto;
  max-width: 100%; /* 読みやすい横幅に制限 */
  width: 100%;
  box-sizing: border-box;
}

/* 各FAQのボックス（li） */
.faq_list > li {
  background-color: #ffffff; /* 白ベース */
  border: 1px solid #e2e8f0; /* 薄い境界線 */
  border-radius: 8px; /* 角丸 */
  margin-bottom: 15px; /* 質問同士の余白 */
  overflow: hidden; /* 背景色のはみ出し防止 */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02); /* 軽い影 */
  list-style: none;
  margin: 0 0 20px;
  padding: 0 !important;
}

/* ==========================================================================
   Q（質問：h4）の装飾
   ========================================================================== */
.faq_list > li > h3 {
  margin: 0;
  padding: 16px 20px;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 600;
  color: #af915c;
  /* アクセントカラーを極限まで薄めた背景色 */
  background-color: #EEE;
  border-left: none;
}

/* ==========================================================================
   A（回答：p）の装飾
   ========================================================================== */
.faq_list > li > p {
  margin: 0;
  padding: 16px 20px;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #333;
  background-color: #ffffff; /* 回答エリアはすっきりとした白 */
}

/* ==========================================================================
   レスポンシブ対応（画面幅 480px 以下）
   ========================================================================== */
@media screen and (max-width: 480px) {
  .faq_list > li > h3,
  .faq_list > li > p {
    padding: 14px 15px; /* スマホ用に内側の余白を少しタイトに */
    font-size: 16px; /* 文字サイズをスマホ向けに微調整 */
  }
}

/* ==========================================================================
   口コミエリア全体のレイアウト
   ========================================================================== */
.column_review_area_outer.review_select {
  display: flex;
  gap: 20px; /* ボックス間の余白 */
  width: 100%;
  max-width: 100%; /* 必要に応じて調整してください */
  margin: 0 auto 30px;
  padding: 0;
  box-sizing: border-box;
  background-color: #fff; /* 白ベース */
}

/* 各口コミボックス（良い・悪い共通） */
.column_review_area {
  flex: 1; /* 2つのボックスを等幅で横並び */
  background: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 20px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
}

/* ==========================================================================
   メタ情報（ヘッダー・評価）エリア
   ========================================================================== */
.column_review_meta {
  border-bottom: 2px solid #EEE; /* アクセントカラーのボーダー */
  padding-bottom: 15px;
  margin-bottom: 15px;
  display: flex;
  flex-flow: row wrap;
}

/* タイトル（h2） */
.column_review_meta h2 {
  font-size: 1.3rem !important;
  margin: 0 0 10px 0;
  color: #333333;
  width: 100%;
}

/* アイコン（グッド・バッド）の配置 */
.column_review_meta figure {
  margin: 10px 20px 10px 10px;
  font-size: 1.5rem;
}

/* 良い口コミの親指アイコン */
.column_review_meta.good figure i {
  color: #006eeb; /* アクセントカラー */
}

/* 悪い口コミの親指アイコン */
.column_review_meta.bad figure i {
  color: #999999; /* 落ち着いたグレー */
}

/* 投稿者・評価テキスト */
.column_review_meta section p {
  margin: 5px 0;
  font-size: 1rem;
  color: #666666;
  display: flex;
}

.column_review_meta section p .bold {
  font-weight: bold;
  color: #333333;
}

/* ==========================================================================
   星評価（フォントオーサム）の装飾
   ========================================================================== */
.column_review_meta .fa-star,
.column_review_meta .fa-star-o {
  color: #f39c12; /* 黄色系（オレンジ寄りのゴールド） */
  margin-right: 2px;
}

/* ==========================================================================
   本文エリア
   ========================================================================== */
.column_review_area article p {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #444444;
  margin: 0;
}

/* ==========================================================================
   レスポンシブ対応（画面幅 480px 以下）
   ========================================================================== */
@media screen and (max-width: 480px) {
  .column_review_area_outer.review_select {
    flex-direction: column; /* 縦並びに変更 */
    gap: 15px;
    padding: 0;
  }
}