﻿/*
Theme Name: Twenty Twenty-Two
Theme URI: https://wordpress.org/themes/twentytwentytwo/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: Built on a solidly designed foundation, Twenty Twenty-Two embraces the idea that everyone deserves a truly unique website. The theme驕ｯ・ｶ陷・ｱ subtle styles are inspired by the diversity and versatility of birds: its typography is lightweight yet strong, its color palette is drawn from nature, and its layout elements sit gently on the page. The true richness of Twenty Twenty-Two lies in its opportunity for customization. The theme is built to take advantage of the Site Editor features introduced in WordPress 5.9, which means that colors, typography, and the layout of every single page on your site can be customized to suit your vision. It also includes dozens of block patterns, opening the door to a wide range of professionally designed layouts in just a few clicks. Whether you驕ｯ・ｶ陷・ｳe building a single-page website, a blog, a business website, or a portfolio, Twenty Twenty-Two will help you create a site that is uniquely yours.
Requires at least: 5.9
Tested up to: 7.0
Requires PHP: 5.6
Version: 2.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentytwo
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, style-variations, wide-blocks, block-styles, accessibility-ready, blog, portfolio, news

Twenty Twenty-Two WordPress Theme, (C) 2021 WordPress.org
Twenty Twenty-Two is distributed under the terms of the GNU GPL.
*/

/*
 * IMPORTANT: This file is only served on the frontend when `SCRIPT_DEBUG` is enabled;
 * in most instances, the `style.min.css` file will be served. It is not recommended that you
 * use the Theme File Editor to modify this stylesheet. Instead, add the necessary style
 * overrides via "Additional CSS" in the Site Editor.
 */

/*
 * Text and navigation link styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.25ch;
}

a:hover,
a:focus {
	text-decoration-style: dashed;
}

a:active {
	text-decoration: none;
}

.wp-block-navigation .wp-block-navigation-item a:hover,
.wp-block-navigation .wp-block-navigation-item a:focus {
	text-decoration: underline;
	text-decoration-style: solid;
}

/*
 * Search and File Block button styles.
 * Necessary until the following issues are resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/36444
 * https://github.com/WordPress/gutenberg/issues/27760
 */

.wp-block-search__button,
.wp-block-file .wp-block-file__button {
	background-color: var(--wp--preset--color--primary);
	border-radius: 0;
	border: 0 solid;
	color: var(--wp--preset--color--background);
	font-size: var(--wp--preset--font-size--medium);
	padding: calc(.667em + 2px) calc(1.333em + 2px);
}

/*
 * Button hover styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link:hover {
	opacity: 0.90;
}

/*
 * Alignment styles.
 * These rules are temporary, and should not be relied on or
 * modified too heavily by themes or plugins that build on
 * Twenty Twenty-Two. These are meant to be a precursor to
 * a global solution provided by the Block Editor.
 *
 * Relevant issues:
 * https://github.com/WordPress/gutenberg/issues/35607
 * https://github.com/WordPress/gutenberg/issues/35884
 */

.wp-site-blocks,
body > .is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-group.has-background,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align="full"] > .wp-block-group,
.is-root-container .wp-block[data-align="full"] > .wp-block-cover {
	padding-left: var(--wp--custom--spacing--outer);
	padding-right: var(--wp--custom--spacing--outer);
}

.wp-site-blocks .alignfull,
.wp-site-blocks > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-cover,
.wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-template-part > .wp-block-cover,
body > .is-root-container > .wp-block-cover,
body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background,
body > .is-root-container > .wp-block-template-part > .wp-block-cover,
.is-root-container .wp-block[data-align="full"] {
	margin-left: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	margin-right: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	width: unset;
}

/* Blocks inside columns don't have negative margins. */
.wp-site-blocks .wp-block-columns .wp-block-column .alignfull,
.is-root-container .wp-block-columns .wp-block-column .wp-block[data-align="full"],
/* We also want to avoid stacking negative margins. */
.wp-site-blocks .alignfull:not(.wp-block-group) .alignfull,
.is-root-container .wp-block[data-align="full"] > *:not(.wp-block-group) .wp-block[data-align="full"] {
	margin-left: auto !important;
	margin-right: auto !important;
	width: inherit;
}

/*
 * Responsive menu container padding.
 * This ensures the responsive container inherits the same
 * spacing defined above. This behavior may be built into
 * the Block Editor in the future.
 */

.wp-block-navigation__responsive-container.is-menu-open {
	padding-top: var(--wp--custom--spacing--outer);
	padding-bottom: var(--wp--custom--spacing--large);
	padding-right: var(--wp--custom--spacing--outer);
	padding-left: var(--wp--custom--spacing--outer);
}

/*
 * Improves spacing for the legacy Post Comments block.
 * https://core.trac.wordpress.org/ticket/57560
 */

.wp-block-post-comments ol.commentlist ul.children {
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.wp-block-post-comments ol.commentlist li.comment:not(:last-child) {
	margin-bottom: 1rem;
}

/*
 * Prevents unnecessary scrollbars while handling long lines of preformatted text.
 * https://core.trac.wordpress.org/ticket/63875
 */

:where(pre) {
	overflow-x: auto;
}
/* Oripa Select header */
.wp-site-blocks > *:first-child,
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part > .wp-block-group,
.wp-site-blocks > header.wp-block-template-part header.wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part .wp-block-group:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.wp-site-blocks > header.wp-block-template-part > .wp-block-group {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.oripa-header {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	box-sizing: border-box;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.oripa-header__inner {
	align-items: center;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1160px;
	min-height: 64px;
	padding: 14px 18px;
	width: 100%;
}

.oripa-header__logo {
	display: inline-flex;
	line-height: 0;
	max-width: min(229.66px, calc(100vw - 96px));
}

.oripa-header__logo svg {
	display: block;
	height: auto;
	width: 229.66px;
}

.oripa-header__menu {
	align-items: center;
	background: transparent;
	border: 0;
	cursor: pointer;
	display: inline-flex;
	flex-direction: column;
	gap: 6px;
	height: 44px;
	justify-content: center;
	padding: 0;
	width: 44px;
}

.oripa-header__menu span {
	background: #fff;
	border-radius: 999px;
	display: block;
	height: 3px;
	width: 30px;
}

img[src*="flight-path-on-transparent-d.png"],
img[src*="flight-path-on-transparent-c.png"],
.wp-block-image:has(img[src*="flight-path-on-transparent-d.png"]),
.wp-block-image:has(img[src*="flight-path-on-transparent-c.png"]) {
	display: none !important;
}

@media (max-width: 480px) {
	.oripa-header__inner {
		min-height: 58px;
		padding: 12px 14px;
	}

	.oripa-header__logo svg {
		width: 190px;
	}
}
/* Oripa Select footer */
.oripa-footer {
	background: linear-gradient(180deg, #0071bc 0%, #29abe2 100%);
	box-sizing: border-box;
	color: #fff;
	margin: 0 !important;
	padding: 34px 18px 22px;
	width: 100% !important;
}

.oripa-footer a {
	color: #fff;
	text-decoration: none;
}

.oripa-footer a:hover,
.oripa-footer a:focus {
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.oripa-footer__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0 auto;
	max-width: 1080px;
	text-align: center;
}

.oripa-footer__logo {
	display: inline-flex;
	line-height: 0;
	max-width: min(229.66px, 82vw);
}

.oripa-footer__logo svg {
	display: block;
	height: auto;
	width: 229.66px;
}

.oripa-footer__nav,
.oripa-footer__legal {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 12px 22px;
	justify-content: center;
	line-height: 1.7;
}

.oripa-footer__nav {
	font-size: 15px;
	font-weight: 700;
}

.oripa-footer__legal {
	font-size: 13px;
	gap: 8px;
}

.oripa-footer__copy {
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
}

@media (max-width: 640px) {
	.oripa-footer {
		padding: 30px 16px 20px;
	}

	.oripa-footer__inner {
		gap: 18px;
	}

	.oripa-footer__logo svg {
		width: 200px;
	}

	.oripa-footer__nav {
		flex-direction: column;
		gap: 8px;
	}

	.oripa-footer__legal {
		gap: 6px;
	}
}
/* Oripa Select full-width header/footer */
.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part > .wp-block-group,
.wp-site-blocks > footer.wp-block-template-part > .wp-block-group,
.wp-site-blocks > header.wp-block-template-part header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part footer.wp-block-template-part {
	box-sizing: border-box;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

.oripa-header,
.oripa-footer {
	box-sizing: border-box;
	left: auto !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	position: relative;
	transform: none !important;
	width: 100% !important;
}

.oripa-header__inner,
.oripa-footer__inner {
	box-sizing: border-box;
	width: 100%;
}
/* Oripa Select true full-bleed header/footer */
.oripa-header,
.oripa-footer {
	box-sizing: border-box;
	left: auto !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	max-width: none !important;
	position: relative;
	transform: none !important;
	width: 100vw !important;
}

.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part > .wp-block-group,
.wp-site-blocks > footer.wp-block-template-part > .wp-block-group,
.wp-site-blocks > header.wp-block-template-part .alignwide.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part .alignwide.wp-block-template-part {
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
/* Oripa Select empty top page layout */
.oripa-main {
	box-sizing: border-box;
	margin: 0 !important;
	min-height: 40vh;
	padding: 0 !important;
	width: 100% !important;
}

body.home main.wp-block-query:empty,
body.blog main.wp-block-query:empty {
	display: block;
	min-height: 40vh;
}
/* Oripa Select independent shell */
html {
	margin: 0 !important;
	padding: 0 !important;
}

body {
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", Meiryo, sans-serif;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	margin: 0 !important;
	overflow-x: hidden;
	padding: 0 !important;
}

.wp-site-blocks {
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	margin: 0 !important;
	min-height: 100vh;
	padding: 0 !important;
	width: 100%;
}

.wp-site-blocks > header.wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part {
	box-sizing: border-box;
	flex: 0 0 auto;
	margin: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

.wp-site-blocks > main,
.wp-site-blocks > .oripa-main {
	box-sizing: border-box;
	flex: 1 0 auto;
	margin: 0 !important;
	width: 100%;
}

.wp-site-blocks > header.wp-block-template-part > *,
.wp-site-blocks > footer.wp-block-template-part > *,
.wp-site-blocks > header.wp-block-template-part .wp-block-template-part,
.wp-site-blocks > footer.wp-block-template-part .wp-block-template-part,
.wp-site-blocks > header.wp-block-template-part .wp-block-group,
.wp-site-blocks > footer.wp-block-template-part .wp-block-group {
	box-sizing: border-box;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

.oripa-header {
	box-sizing: border-box;
	left: auto !important;
	margin: 0 !important;
	max-width: none !important;
	position: relative;
	transform: none !important;
	width: 100% !important;
}

.oripa-footer {
	box-sizing: border-box;
	left: auto !important;
	margin: 48px 0 0 !important;
	max-width: none !important;
	position: relative;
	transform: none !important;
	width: 100% !important;
}

.oripa-header__inner,
.oripa-footer__inner {
	box-sizing: border-box;
	width: 100%;
}

.oripa-header__inner {
	max-width: 1160px;
}

.oripa-main {
	min-height: 40vh;
	padding: 0 !important;
}
/* Oripa Select drawer menu */
.oripa-header__menu {
	position: relative;
	z-index: 1001;
}

.oripa-header__menu span {
	transition: opacity .2s ease, transform .2s ease;
}

.oripa-header.is-menu-open .oripa-header__menu span:nth-child(1) {
	transform: translateY(9px) rotate(45deg);
}

.oripa-header.is-menu-open .oripa-header__menu span:nth-child(2) {
	opacity: 0;
}

.oripa-header.is-menu-open .oripa-header__menu span:nth-child(3) {
	transform: translateY(-9px) rotate(-45deg);
}

.oripa-header__nav[hidden] {
	display: none !important;
}

.oripa-header__nav {
	background: linear-gradient(0deg, #29abe2 0%, #0071bc 100%);
	box-sizing: border-box;
	left: 0;
	min-height: calc(100vh - 64px);
	opacity: 0;
	pointer-events: none;
	transform: translateY(-10px);
	transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
	visibility: hidden;
	overflow-y: auto;
	padding: 26px 22px 34px;
	position: absolute;
	right: 0;
	top: 100%;
	width: 100%;
	z-index: 1000;
}

.oripa-header.is-menu-open .oripa-header__nav {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	visibility: visible;
}

.oripa-header__nav-inner {
	display: grid;
	gap: 0;
	margin: 0 auto;
	max-width: 720px;
}

.oripa-header__nav a {
	border-bottom: 1px solid rgba(255,255,255,.28);
	box-sizing: border-box;
	color: #fff;
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	padding: 14px 4px;
	text-decoration: none;
}

.oripa-header__nav-sub {
	margin-top: 18px;
	padding-top: 10px;
}

.oripa-header__nav-sub a {
	font-size: 14px;
	font-weight: 500;
	padding: 11px 4px;
}

.oripa-header__nav a:hover,
.oripa-header__nav a:focus {
	text-decoration: underline;
	text-underline-offset: .2em;
}

.oripa-header__nav-child {
	font-size: 15px !important;
	font-weight: 500 !important;
	padding-left: 1.5em !important;
}

body.oripa-menu-open {
	overflow: hidden;
}

@media (min-width: 768px) {
	.oripa-header__nav {
		min-height: auto;
		padding-bottom: 42px;
		padding-top: 34px;
	}

.oripa-header__nav-inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 42px;
	}
}
/* Oripa Select top two-column layout */
.oripa-main {
	background: #fff;
	box-sizing: border-box;
	padding: 28px 16px 42px !important;
}

.oripa-top-layout {
	align-items: start;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 1fr) 260px;
	margin: 0 auto;
	max-width: 1160px;
	width: 100%;
}

.oripa-top-content,
.oripa-sidebar {
	align-self: start;
	box-sizing: border-box;
	min-width: 0;
}

.oripa-visually-hidden {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

.oripa-category-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 14px;
}

.oripa-category-tag {
	background: #fff;
	border: 1px solid #c9ddea;
	border-radius: 999px;
	color: #222;
	cursor: pointer;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	padding: 9px 15px;
}

.oripa-category-tag.is-active,
.oripa-category-tag:hover,
.oripa-category-tag:focus {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	color: #fff;
}

.oripa-sort-result {
	color: #555;
	font-size: 14px;
	margin-bottom: 18px;
}

.oripa-sample-list {
	display: grid;
	gap: 16px;
}

.oripa-sample-card {
	border: 1px solid #d9edf8;
	border-radius: 6px;
	box-shadow: 0 6px 18px rgba(0, 113, 188, .08);
	padding: 18px;
}

.oripa-sidebar {
	align-content: start;
	display: grid;
	gap: 10px;
	grid-auto-rows: max-content;
}

.oripa-accordion {
	border: 1px solid #d9edf8;
	border-radius: 5px;
	margin: 0;
	overflow: hidden;
}

.oripa-accordion__title {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border: 0;
	box-sizing: border-box;
	color: #fff;
	cursor: pointer;
	font-size: 16px;
	font-weight: 700;
	padding: 13px 42px 13px 15px;
	position: relative;
	text-align: left;
	width: 100%;
}

.oripa-accordion__title::after {
	content: "";
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
	height: 8px;
	position: absolute;
	right: 17px;
	top: 50%;
	transform: translateY(-65%) rotate(45deg);
	transition: transform .22s ease;
	width: 8px;
}

.oripa-accordion.is-open .oripa-accordion__title::after {
	transform: translateY(-35%) rotate(-135deg);
}

.oripa-accordion__content {
	background: #fff;
	display: grid;
	grid-template-rows: 0fr;
	opacity: 0;
	padding: 0 15px;
	transition: grid-template-rows .24s ease, opacity .18s ease, padding .24s ease;
}

.oripa-accordion.is-open .oripa-accordion__content {
	grid-template-rows: 1fr;
	opacity: 1;
	padding: 12px;
}

.oripa-accordion__content-inner {
	min-height: 0;
	overflow: hidden;
}

.oripa-accordion__content-inner:empty {
	display: none;
}
.oripa-accordion__content p {
	font-size: 14px;
	line-height: 1.8;
	margin: 0;
}

.oripa-search {
	display: flex;
	gap: 8px;
}

.oripa-side-search {
	background: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 12px 0;
}

.oripa-search input {
	border: 1px solid #c9ddea;
	border-radius: 4px;
	box-sizing: border-box;
	flex: 1;
	font-size: 14px;
	min-width: 0;
	padding: 10px;
}

.oripa-search button {
	background: #fbb03b;
	border: 0;
	border-radius: 4px;
	color: #fff;
	cursor: pointer;
	font-weight: 700;
	padding: 10px 12px;
}

.oripa-side-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.oripa-side-list li + li {
	border-top: 1px solid #edf6fb;
}

.oripa-side-list a {
	color: #222;
	display: block;
	font-size: 14px;
	font-weight: 700;
	padding: 10px 0;
	text-decoration: none;
}

.oripa-side-list a:hover,
.oripa-side-list a:focus {
	color: #0071bc;
	text-decoration: underline;
	text-underline-offset: .18em;
}

@media (max-width: 959px) {
	.oripa-top-layout {
			align-items: start;
grid-template-columns: 1fr;
	}

	.oripa-sidebar {
		order: 2;
	}
}
/* Oripa Select mobile search/sidebar behavior */
.oripa-mobile-search-wrap {
	display: none;
}

@media (max-width: 959px) {
	.oripa-top-layout {
		display: block;
	}

	.oripa-sidebar {
		display: none !important;
	}

	.oripa-mobile-search-wrap {
		display: flex;
		justify-content: flex-end;
		margin-bottom: 16px;
		width: 100%;
	}

	.oripa-mobile-search {
		max-width: 320px;
		width: min(100%, 320px);
	}
}

@media (max-width: 480px) {
	.oripa-mobile-search {
		max-width: none;
		width: 100%;
	}
}
/* Oripa Select color refinements */
.oripa-tag-hash {
	color: #fbb03b;
}

.oripa-category-tag.is-active,
.oripa-category-tag:hover,
.oripa-category-tag:focus {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border-color: transparent;
	border-width: 0;
	color: #fff;
	padding: 11px 17px;
}

.oripa-category-tag.is-active .oripa-tag-hash,
.oripa-category-tag:hover .oripa-tag-hash,
.oripa-category-tag:focus .oripa-tag-hash {
	color: #fff;
}

.oripa-search button:hover,
.oripa-search button:focus {
	background: #e89a20;
}
/* Oripa Select sample card grid */
.oripa-sample-list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.oripa-sample-card {
	overflow: hidden;
	padding: 0;
	position: relative;
	transition: border-color .22s ease, box-shadow .22s ease;
}

.oripa-sample-card:hover,
.oripa-sample-card:focus-within {
	border-color: #29abe2;
	box-shadow: 0 0 0 3px rgba(41, 171, 226, .16);
}

.oripa-sample-card__link {
	color: inherit;
	display: block;
	position: relative;
	height: 100%;
	text-decoration: none;
}


.oripa-post-section--popular .oripa-sample-list {
	counter-reset: oripa-popular-rank;
}

.oripa-post-section--popular .oripa-sample-card {
	counter-increment: oripa-popular-rank;
}

.oripa-post-section--popular .oripa-sample-card::before {
	background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NC4yOSA4My44NiI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJyYW5rMSIgeDE9IjI3LjE1IiB5MT0iODMuODYiIHgyPSIyNy4xNSIgeTI9IjAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii40IiBzdG9wLWNvbG9yPSIjZmNjNDIxIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZmM4MzAwIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBvbHlnb24gZmlsbD0idXJsKCNyYW5rMSkiIHBvaW50cz0iMCA4My44NiAyNy4xNSA2Ni44NiA1NC4yOSA4My44NiA1NC4yOSAwIDAgMCAwIDgzLjg2Ii8+PC9zdmc+") center top / contain no-repeat;
	content: "";
	filter: drop-shadow(0 7px 5px rgba(0, 0, 0, .24));
	height: 58px;
	position: absolute;
	right: 10px;
	top: 0;
	width: 38px;
	z-index: 2;
}

.oripa-post-section--popular .oripa-sample-card:nth-child(2)::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NC4yOSA4My44NiI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJyYW5rMiIgeDE9IjI3LjE1IiB5MT0iODMuODYiIHgyPSIyNy4xNSIgeTI9IjAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii40IiBzdG9wLWNvbG9yPSIjNzE4MDkyIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjM2M1MTZhIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBvbHlnb24gZmlsbD0idXJsKCNyYW5rMikiIHBvaW50cz0iMCA4My44NiAyNy4xNSA2Ni44NiA1NC4yOSA4My44NiA1NC4yOSAwIDAgMCAwIDgzLjg2Ii8+PC9zdmc+");
}

.oripa-post-section--popular .oripa-sample-card:nth-child(3)::before {
	background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1NC4yOSA4My44NiI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJyYW5rMyIgeDE9IjI3LjE1IiB5MT0iODMuODYiIHgyPSIyNy4xNSIgeTI9IjAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9Ii40IiBzdG9wLWNvbG9yPSIjYWI2MzNhIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjOTIzNDAwIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHBvbHlnb24gZmlsbD0idXJsKCNyYW5rMykiIHBvaW50cz0iMCA4My44NiAyNy4xNSA2Ni44NiA1NC4yOSA4My44NiA1NC4yOSAwIDAgMCAwIDgzLjg2Ii8+PC9zdmc+");
}

.oripa-post-section--popular .oripa-sample-card::after {
	align-items: center;
	color: #fff;
	content: counter(oripa-popular-rank);
	display: flex;
	font-family: "Jaro", sans-serif;
	font-optical-sizing: auto;
	font-size: 27px;
	font-style: normal;
	font-weight: 400;
	height: 34px;
	justify-content: center;
	position: absolute;
	right: 10px;
	text-shadow: 0 2px 4px rgba(0, 0, 0, .28);
	top: 5px;
	width: 38px;
	z-index: 3;
}



.oripa-toc {
	background: #fff;
	border: 1px solid #d9edf8;
	border-radius: 6px;
	box-shadow: 0 6px 18px rgba(0, 113, 188, .08);
	box-sizing: border-box;
	margin: 22px 0 28px;
	overflow: hidden;
}

.oripa-toc__header {
	align-items: center;
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	display: flex;
	justify-content: space-between;
	padding: 12px 16px;
}

.oripa-toc__title {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	margin: 0;
}

.oripa-toc__toggle {
	background: #fff;
	border: 0;
	border-radius: 999px;
	color: #0071bc;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	padding: 6px 12px;
}

.oripa-toc__list {
	display: grid;
	gap: 0;
	margin: 0;
	list-style: none;
	padding: 10px 18px 12px;
}

.oripa-toc:not(.is-open) .oripa-toc__list {
	display: none;
}

.oripa-toc__list li + li {
	border-top: 1px solid #edf6fb;
}

.oripa-toc__list a {
	color: #222;
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.6;
	padding: 9px 0;
	text-decoration: none;
}

.oripa-toc__list a:hover,
.oripa-toc__list a:focus {
	color: #0071bc;
	text-decoration: underline;
	text-underline-offset: .18em;
}
.oripa-writer-profiles {
	display: grid;
	gap: 14px;
	margin: 22px 0 28px;
}

.oripa-writer-profile {
	align-items: center;
	background: #fff;
	border: 1px solid #d9edf8;
	border-radius: 6px;
	box-shadow: 0 6px 18px rgba(0, 113, 188, .08);
	box-sizing: border-box;
	display: grid;
	gap: 16px;
	grid-template-columns: 90px minmax(0, 1fr);
	padding: 16px;
}

.oripa-writer-profile__icon img {
	display: block;
	height: 82px;
	width: 82px;
}

.oripa-writer-profile__body h2 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	margin: 2px 0 8px;
}

.oripa-writer-profile__body p {
	font-size: 14px;
	line-height: 1.8;
	margin: 0 0 6px;
}

.oripa-writer-profile__body p:last-child {
	margin-bottom: 0;
}

@media (max-width: 640px) {
	.oripa-writer-profile {
		align-items: flex-start;
		gap: 12px;
		grid-template-columns: 66px minmax(0, 1fr);
		padding: 14px;
	}

	.oripa-writer-profile__icon img {
		height: 60px;
		width: 60px;
	}

	.oripa-writer-profile__body h2 {
		font-size: 18px;
	}
}
.oripa-compare-table {
  border: 1px solid #b3b3b3;
  display: grid;
  grid-template-columns: 1fr 1.7fr 1.7fr;
  margin: 20px 0 28px;
  overflow: hidden;
}

.oripa-compare-table__cell {
  border-bottom: 1px solid #b3b3b3;
  border-right: 1px solid #b3b3b3;
  box-sizing: border-box;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.6;
  padding: 14px 16px;
  text-align: center;
}

.oripa-compare-table__cell:nth-child(3n) {
  border-right: 0;
}

.oripa-compare-table__cell:nth-last-child(-n + 3) {
  border-bottom: 0;
}

.oripa-compare-table__head {
  background: #fff;
  text-align: left;
}

.oripa-compare-table__head--normal {
  background: #29abe2;
  color: #fff;
  text-align: center;
}

.oripa-compare-table__head--oripa {
  background: #fbb03b;
  color: #fff;
  text-align: center;
}

.oripa-compare-table__normal {
  background: #eef9ff;
}

.oripa-compare-table__oripa {
  background: #fff0f5;
}
.oripa-talk-list {
	display: grid;
	gap: 14px;
	margin: 22px 0;
}

.oripa-talk {
	align-items: flex-start;
	display: flex;
	gap: 14px;
}

.oripa-talk--satou {
	flex-direction: row-reverse;
}

.oripa-talk__icon {
	align-items: center;
	display: flex;
	flex: 0 0 78px;
	flex-direction: column;
	gap: 4px;
	line-height: 1.2;
	text-align: center;
}

.oripa-talk__icon img {
	display: block;
	height: auto;
	max-width: none;
	width: auto;
}




.oripa-talk__bubble {
	background: #eef9ff;
	border-radius: 9px;
	box-sizing: border-box;
	flex: 1 1 auto;
	font-size: 15px;
	line-height: 1.8;
	padding: 18px 22px;
	position: relative;
}

.oripa-talk--satou .oripa-talk__bubble {
	background: #fff0f5;
}

.oripa-talk__bubble::before {
	border-bottom: 10px solid transparent;
	border-right: 18px solid #eef9ff;
	border-top: 10px solid transparent;
	content: "";
	left: -17px;
	position: absolute;
	top: 22px;
}

.oripa-talk--satou .oripa-talk__bubble::before {
	border-left: 18px solid #fff0f5;
	border-right: 0;
	left: auto;
	right: -17px;
}

.oripa-talk__bubble p {
	margin: 0;
}

@media (max-width: 640px) {
	.oripa-talk,
	.oripa-talk--satou {
		gap: 10px;
	}

	.oripa-talk__icon {
		flex-basis: 58px;
	}

	.oripa-talk__icon img {
		height: auto;
		max-width: none;
		width: auto;
	}


	.oripa-talk__bubble {
		font-size: 14px;
		padding: 14px 16px;
	}
}
.oripa-post-section__title {
	align-items: center;
	display: flex;
	font-size: 24px;
	font-weight: 700;
	gap: 10px;
	line-height: 1.35;
	margin: 28px 0 16px;
}

.oripa-post-section__title::before {
	background: #29abe2;
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	height: 14px;
	width: 14px;
}

.oripa-post-section__title::after {
	content: none;
}

.oripa-single-content .oripa-post-section__title {
	background: linear-gradient(90deg, #29abe2 0%, #0071bc 100%);
	box-sizing: border-box;
	color: #fff;
	display: inline-flex;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.35;
	margin: 38px 0 12px;
	max-width: 100%;
	padding: 8px 24px;
	position: relative;
}

.oripa-single-content .oripa-post-section__title::before {
	content: none;
}

.oripa-single-content .oripa-post-section__title::after {
	border-bottom: 8px solid transparent;
	border-right: 20px solid #1d2d8f;
	bottom: -8px;
	content: "";
	left: 0;
	position: absolute;
}

@media (max-width: 640px) {
	.oripa-single-content .oripa-post-section__title {
		font-size: 20px;
		margin: 32px 0 10px;
		padding: 8px 16px;
	}

	.oripa-single-content p,
	.oripa-single-content li {
		font-size: 14px;
	}
}
.oripa-article-list-button-wrap {
	margin-top: 24px;
	text-align: center;
}

.oripa-article-list-button {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border-radius: 999px;
	color: #fff;
	display: inline-block;
	font-weight: 700;
	padding: 13px 34px;
	text-decoration: none;
	transition: opacity .18s ease, transform .18s ease;
}

.oripa-article-list-button:hover,
.oripa-article-list-button:focus {
	opacity: .78;
	transform: translateY(-1px);
	text-decoration: none;
}

.oripa-sample-card__link::before {
	background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.45) 45%, transparent 70%);
	content: "";
	height: 100%;
	left: -120%;
	pointer-events: none;
	position: absolute;
	top: 0;
	transition: left .45s ease;
	width: 55%;
	z-index: 1;
}

.oripa-sample-card__link:hover::before,
.oripa-sample-card__link:focus::before {
	left: 130%;
}

.oripa-sample-card__link:hover h2,
.oripa-sample-card__link:focus h2 {
	color: #0071bc;
	text-decoration: underline;
	text-underline-offset: .18em;
}

.oripa-sample-card__image {
	aspect-ratio: 5 / 3;
	background: linear-gradient(135deg, rgba(41,171,226,.25), rgba(0,113,188,.35));
	border-bottom: 1px solid #c9ddea;
	transition: filter .24s ease, opacity .24s ease;
	width: 100%;
}

.oripa-sample-card__thumb {
	aspect-ratio: 5 / 3;
	display: block;
	height: auto;
	object-fit: cover;
	transition: filter .24s ease, opacity .24s ease;
	width: 100%;
}

.oripa-sample-card__link:hover .oripa-sample-card__thumb,
.oripa-sample-card__link:focus .oripa-sample-card__thumb,
.oripa-sample-card__link:hover .oripa-sample-card__image,
.oripa-sample-card__link:focus .oripa-sample-card__image {
	filter: brightness(1.06) saturate(1.12);
}

.oripa-sample-card__body {
	padding: 8px 12px 12px;
	position: relative;
	z-index: 2;
}

.oripa-sample-card__tag {
	color: #222;
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 6px;
}

.oripa-sample-card h2 {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
	margin: 0 0 8px;
}

.oripa-sample-card time {
	color: #777;
	display: block;
	font-size: 12px;
	line-height: 1.5;
}

@media (max-width: 959px) {
	.oripa-sample-list {
		grid-template-columns: 1fr;
	}
}
.oripa-sidebar > :last-child {
	margin-bottom: 0;
}
.oripa-sample-card > p,
.oripa-sample-card__link > p,
.oripa-sample-card__body > p {
	display: contents;
	margin: 0;
}

.oripa-archive-layout {
	max-width: 1160px !important;
	width: 100%;
}

.oripa-archive-header {
	align-items: center;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	margin: 0 0 22px;
}

.oripa-archive-heading {
	align-items: baseline;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.oripa-archive-count {
	color: #666;
	font-size: 14px;
	font-weight: 700;
}

.oripa-archive-title {
	align-items: center;
	display: inline-flex;
	font-size: 28px;
	font-weight: 700;
	gap: 10px;
	line-height: 1.35;
	margin: 0;
}

.oripa-archive-title::before {
	background: #29abe2;
	content: "";
	display: inline-block;
	flex: 0 0 auto;
	height: 14px;
	width: 14px;
}

.oripa-archive-sort-button {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border: 0;
	border-radius: 999px;
	color: #fff;
	cursor: pointer;
	font-weight: 700;
	padding: 10px 18px;
}

.oripa-archive-sort-button:hover,
.oripa-archive-sort-button:focus {
	filter: brightness(1.12);
}

.oripa-sort-modal[hidden] {
	display: none !important;
}

.oripa-sort-modal {
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 2000;
}

.oripa-sort-modal__backdrop {
	background: rgba(0,0,0,.35);
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.oripa-sort-modal__panel {
	background: #fff;
	border-radius: 14px;
	box-shadow: 0 18px 40px rgba(0,0,0,.18);
	box-sizing: border-box;
	left: 50%;
	max-width: 320px;
	padding: 18px;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: calc(100% - 40px);
}

.oripa-sort-modal__header {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
}

.oripa-sort-modal__header h2 {
	font-size: 18px;
	margin: 0;
}

.oripa-sort-modal__close {
	background: transparent;
	border: 0;
	cursor: pointer;
	font-size: 24px;
	line-height: 1;
}

.oripa-sort-option {
	background: #fff;
	border: 1px solid #c9ddea;
	border-radius: 10px;
	cursor: pointer;
	display: block;
	font-weight: 700;
	margin-top: 8px;
	padding: 12px;
	text-align: left;
	width: 100%;
}

.oripa-sort-option.is-active {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border-color: transparent;
	color: #fff;
}

.oripa-breadcrumb {
	box-sizing: border-box;
	color: #666;
	display: flex;
	font-size: 14px;
	gap: 8px;
	margin: 14px auto 0;
	max-width: 1160px;
	padding: 0 18px;
	width: 100%;
}

.oripa-breadcrumb a {
	color: #0071bc;
	text-decoration: none;
}

.oripa-breadcrumb a:hover,
.oripa-breadcrumb a:focus {
	text-decoration: underline;
}

.oripa-archive-sidebar .oripa-side-list a {
	align-items: center;
	display: inline-flex;
	gap: 2px;
}
.oripa-page-main,
.oripa-single-main {
	box-sizing: border-box;
	padding: 42px 72px 64px 96px;
}

@media (max-width: 959px) {
	.oripa-page-main,
	.oripa-single-main {
		padding: 28px 18px 42px;
	}
}

.oripa-page-title,
.oripa-single-title {
	font-size: 28px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 20px !important;
}

.oripa-page-featured,
.oripa-single-featured {
	margin: 0 0 20px !important;
}

.oripa-single-layout {
	align-items: start;
	box-sizing: border-box;
	padding-left: 56px;
}

@media (max-width: 959px) {
	.oripa-single-layout {
		padding-left: 0;
	}
}

.oripa-single-content {
	background: #fff;
	min-width: 0;
}

.oripa-single-content p,
.oripa-single-content li {
	font-size: 15px;
	line-height: 1.9;
}

.oripa-single-content > p,
.oripa-single-content > ul,
.oripa-single-content > ol,
.oripa-talk-list,
.oripa-writer-profiles,
.oripa-toc {
	margin-bottom: 28px;
}

.oripa-single-content h3 {
  border-bottom: 0;
  clear: both;
  display: block;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.45;
  margin: 34px 0 16px;
  padding: 0 22px 6px 0;
  position: relative;
  width: fit-content;
}

.oripa-single-content h3::after {
  background: #fbb03b;
  bottom: 0;
  content: "";
  height: 3px;
  left: 0;
  position: absolute;
  width: calc(100% + 8px);
}
.oripa-single-content > *:first-child {
	margin-top: 0;
}

.oripa-single-content > *:last-child {
	margin-bottom: 0;
}
.oripa-pr-box {
	border: 1px solid #d9edf8;
	border-radius: 5px;
	overflow: hidden;
}

.oripa-pr-box__title {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	padding: 12px 15px;
}

.oripa-pr-box__image {
	aspect-ratio: 4 / 3;
	background: linear-gradient(135deg, rgba(41,171,226,.18), rgba(0,113,188,.28));
	display: block;
	width: 100%;
}
.oripa-404-main {
	box-sizing: border-box;
	padding: 48px 18px 64px;
}

.oripa-404-title {
	color: #0071bc;
	font-family: "Jaro", sans-serif;
	font-optical-sizing: auto;
	font-size: clamp(96px, 18vw, 220px);
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	margin: 0;
}

.oripa-404-hero {
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0 auto 34px;
	min-height: 36vh;
	text-align: center;
}

.oripa-404-message {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.6;
	margin: 12px 0 0;
}

.oripa-404-recommend {
	margin: 0 auto;
	max-width: 1160px;
}

.oripa-404-recommend__lead {
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 8px;
	text-align: center;
}

.oripa-404-recommend__title {
	align-items: center;
	display: flex;
	font-size: 24px;
	font-weight: 700;
	gap: 10px;
	justify-content: center;
	line-height: 1.35;
	margin: 0 0 18px;
}

.oripa-404-recommend__title::before {
	background: #29abe2;
	content: "";
	display: inline-block;
	height: 14px;
	width: 14px;
}

.oripa-404-recommend__list {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 600px) {
	.oripa-404-recommend__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.oripa-404-recommend__list .oripa-sample-card:nth-child(n+3) {
		display: none;
	}
}

.oripa-share-fixed {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 6px;
	left: 4px;
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	z-index: 900;
}

.oripa-share-fixed__link {
	align-items: center;
	border: 0;
	border-radius: 999px;
	box-shadow: 0 6px 18px rgba(0, 113, 188, .12);
	box-sizing: border-box;
	color: #fff;
	display: flex;
	cursor: pointer;
	height: 36px;
	justify-content: center;
	line-height: 1;
	text-decoration: none;
	width: 36px;
}

.oripa-share-fixed__link svg {
	fill: currentColor;
	height: 17px;
	width: 17px;
}

.oripa-share-fixed__link--x {
	background: #000;
}

.oripa-share-fixed__link--facebook {
	background: #1877f2;
}

.oripa-share-fixed__link--line {
	background: #06c755;
}

.oripa-share-fixed__link--copy {
	background: #fbb03b;
	font: inherit;
	padding: 0;
	position: relative;
}

.oripa-share-fixed__copied {
	background: rgba(0, 0, 0, .78);
	border-radius: 999px;
	color: #fff;
	font-size: 11px;
	left: 42px;
	opacity: 0;
	padding: 5px 8px;
	pointer-events: none;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: opacity .18s ease;
	white-space: nowrap;
}

.oripa-share-fixed__link--copy.is-copied .oripa-share-fixed__copied {
	opacity: 1;
}

.oripa-share-fixed__link:hover,
.oripa-share-fixed__link:focus {
	filter: brightness(1.08);
	text-decoration: none;
}

@media (max-width: 959px) {
	.oripa-share-fixed {
		display: none;
	}
}



.oripa-single-tags-wrap {
	margin: 0 0 12px;
}

.oripa-single-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.oripa-single-tag {
	align-items: center;
	border: 1px solid #c9ddea;
	border-radius: 999px;
	color: #222;
	display: inline-flex;
	font-size: 14px;
	font-weight: 700;
	gap: 2px;
	line-height: 1;
	padding: 8px 12px;
	text-decoration: none;
}

.oripa-single-tag:hover,
.oripa-single-tag:focus {
	background: linear-gradient(180deg, #29abe2 0%, #0071bc 100%);
	border-color: transparent;
	color: #fff;
	text-decoration: none;
}

.oripa-single-tag:hover .oripa-tag-hash,
.oripa-single-tag:focus .oripa-tag-hash {
	color: #fff;
}

@media (max-width: 959px) {
	.wp-site-blocks > header.wp-block-template-part {
		position: sticky !important;
		top: 0;
		z-index: 1100;
	}

	.oripa-header {
		position: sticky !important;
		top: 0;
		z-index: 1100;
	}
}
@media (max-width: 640px) {
  .oripa-single-content .oripa-post-section__title {
    font-size: 20px;
    margin: 30px 0 10px;
    padding: 8px 14px;
  }

  .oripa-single-content h3 {
    font-size: 18px;
    margin: 28px 0 14px;
  }

  .oripa-single-content p,
  .oripa-single-content li {
    font-size: 14px;
    line-height: 1.85;
  }

  .oripa-talk-list {
    gap: 12px;
    margin: 18px 0 30px;
  }

  .oripa-talk,
  .oripa-talk--satou {
    align-items: flex-start;
    display: flex !important;
    gap: 8px;
  }

  .oripa-talk__icon {
    flex: 0 0 54px;
    min-width: 54px;
  }

  .oripa-talk__icon img {
    display: block;
    height: auto;
    max-width: 54px;
    width: 54px;
  }

  .oripa-talk__bubble {
    display: block;
    flex: 1 1 auto;
    font-size: 14px;
    line-height: 1.75;
    min-width: 0;
    padding: 12px 13px;
  }

  .oripa-talk__bubble p {
    font-size: 14px;
    line-height: 1.75;
  }
}
@media (max-width: 640px) {
  .oripa-compare-table {
    border: 1px solid #b3b3b3;
    grid-template-columns: minmax(72px, .85fr) minmax(92px, 1fr) minmax(92px, 1fr);
    margin-left: auto;
    margin-right: auto;
    max-width: 360px;
    width: 100%;
  }

  .oripa-compare-table__cell {
    align-items: center;
    display: flex;
    font-size: 12px;
    justify-content: center;
    min-height: 46px;
    padding: 9px 5px;
    text-align: center;
  }

  .oripa-compare-table__head {
    justify-content: center;
    text-align: center;
  }
}

@media (max-width: 374px) {
  .oripa-compare-table {
    grid-template-columns: 1fr 1fr;
    max-width: 300px;
  }

  .oripa-compare-table__cell {
    border-right: 0;
    min-height: 44px;
  }

  .oripa-compare-table__cell:nth-child(3n) {
    border-right: 0;
  }

  .oripa-compare-table__cell:nth-last-child(-n + 3) {
    border-bottom: 1px solid #b3b3b3;
  }

  .oripa-compare-table__cell:nth-child(1),
  .oripa-compare-table__cell:nth-child(4),
  .oripa-compare-table__cell:nth-child(7),
  .oripa-compare-table__cell:nth-child(10) {
    grid-column: 1 / -1;
  }

  .oripa-compare-table__cell:nth-child(12) {
    border-bottom: 0;
  }
}


