@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Kosugi+Maru&family=Monoton&family=Righteous&display=swap");

/*******************
BASE 
********************/

:root {
	--bs-primary: #00abb1;
	--bs-link-color: var(--bs-primary);
	--bs-link-hover-color: #0d7b7f;
	--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
		"Noto Color Emoji";
	--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
	--bs-body-font-family: "Poppins", sans-serif;

	--color-theme: #00abb1;
	--easing: cubic-bezier(0.2, 1, 0.2, 1);
	--transition: 0.8s var(--easing);
	--color-base: #f8f8f8;
	--color-gray: #ddd;
	--box-shadow: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05), -0.8rem -0.8rem 1.2rem #fff;
	--box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, 0.08), -1rem -1rem 1.5rem #fff;
	--box-shadow-inset: inset 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05), inset -0.8rem -0.8rem 1.2rem #fff;
	--box-shadow-dark: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.1), -0.8rem -0.8rem 1.2rem rgba(#fff, 0.2);
}

.row-0 {
	margin-left: 0px;
	margin-right: 0px;
}

.w-80 {
	width: 80%;
}

.title-font {
	font-family: "Monoton", cursive !important;
	font-weight: initial !important;
}
.monoton-font {
	font-family: "Monoton", cursive !important;
	letter-spacing: 2px;
	font-weight: 300 !important;
}
.righteous-font {
	font-family: "Righteous", cursive !important;
	letter-spacing: 2px;
	font-weight: 300 !important;
}

.maru-font {
	font-family: "Kosugi Maru", sans-serif !important;
}
.title-style {
	font-size: 4rem;
	color: rgb(112 199 200);
}
@media (max-width: 768px) {
}

.font-base {
	font-family: "DM Sans", sans-serif !important;
}

.font-heading {
	font-family: "Poppins", sans-serif !important;
}

h6,
.h6,
h5,
.h5,
h4,
.h4,
h3,
.h3,
h2,
.h2,
h1,
.h1 {
	margin-top: 0;
	margin-bottom: 0.5rem;
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	line-height: 1.25;
	color: var(--bs-gray-900);
}

p {
	margin-top: 0;
	letter-spacing: 1.4px;
	margin-bottom: 1rem;
	font-family: "Helvetica Neue", "Helvetica", "Kosugi Maru", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}

.header-border {
	border-bottom: 1px solid rgb(255 255 255 / 16%);
}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: #1f8b8e;
	--bs-btn-border-color: #84c5c7;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: #6fa5a7;
	--bs-btn-hover-border-color: #84c5c7;
	--bs-btn-focus-shadow-rgb: 107, 95, 223;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: #84c5c7;
	--bs-btn-active-border-color: #6fa5a7;
	--bs-btn-active-shadow: none;
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: #84c5c7;
	--bs-btn-disabled-border-color: #84c5c7;
}

.bg-ani {
	background: rgb(112, 199, 200) !important;
}

.bg-ani-2 {
	background: rgb(62 180 181 / 25%) !important;
}

.bg-ani-3 {
	background: rgb(255, 244, 235) !important;
}

.border-ani {
	border-color: rgb(112, 199, 200) !important;
}

.text-primary {
	color: rgb(95 178 179) !important;
}
.text-primary-opacity {
	opacity: 0.5;
	color: rgb(116 194 204) !important;
}
.fill-primary {
	fill: #17a2b8 !important;
}

@media (max-width: 768px) {
	.navbar-expand-lg.navbar-dark .nav-link {
		color: var(--bs-dark) !important;
	}
}

@media (max-width: 768px) {
	.navbar-expand-lg .navbar-collapse .navbar-nav .nav-item .nav-link {
		padding: 0.65rem 0;
	}
}

@media (max-width: 768px) {
	footer .nav-item {
		border-bottom: 1px solid rgba(255, 255, 255, 0.297);
		text-align: left;
	}
}

@media (max-width: 1199.98px) {
	.navbar-expand-xl .navbar-brand .navbar-brand-item {
		height: 120px;
	}
}

@media (min-width: 1200px) {
	.navbar-expand-xl .navbar-brand .navbar-brand-item {
		height: 180px;
		display: block;
		width: auto;
	}
}

.navbar-nav {
	--bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
}

.bg-holder {
	position: absolute;
	width: 100%;
	min-height: 100%;
	top: 0;
	left: 0;
	background-size: cover;
	background-position: center;
	overflow: hidden;
	will-change: transform, opacity, filter;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-repeat: no-repeat;
	z-index: 0;
}

.py-6 {
	padding-top: 6rem !important;
	padding-bottom: 6rem !important;
}
.py-7 {
	padding-top: 7rem !important;
	padding-bottom: 7rem !important;
}
.py-8 {
	padding-top: 8rem !important;
	padding-bottom: 8rem !important;
}
.py-9 {
	padding-top: 9rem !important;
	padding-bottom: 9rem !important;
}
.py-10 {
	padding-top: 10rem !important;
	padding-bottom: 10rem !important;
}
.py-11 {
	padding-top: 11rem !important;
	padding-bottom: 11rem !important;
}
.py-12 {
	padding-top: 12rem !important;
	padding-bottom: 12rem !important;
}
.py-13 {
	padding-top: 13rem !important;
	padding-bottom: 13rem !important;
}
.py-14 {
	padding-top: 14rem !important;
	padding-bottom: 14rem !important;
}
.py-15 {
	padding-top: 15rem !important;
	padding-bottom: 15rem !important;
}
.py-16 {
	padding-top: 16rem !important;
	padding-bottom: 16rem !important;
}

@media screen and (min-width: 768px) {
	.py-md-6 {
		padding-top: 6rem !important;
		padding-bottom: 6rem !important;
	}
	.py-md-7 {
		padding-top: 7rem !important;
		padding-bottom: 7rem !important;
	}
	.py-md-8 {
		padding-top: 8rem !important;
		padding-bottom: 8rem !important;
	}
	.py-md-9 {
		padding-top: 9rem !important;
		padding-bottom: 9rem !important;
	}
	.py-md-10 {
		padding-top: 10rem !important;
		padding-bottom: 10rem !important;
	}
	.py-md-11 {
		padding-top: 11rem !important;
		padding-bottom: 11rem !important;
	}
	.py-md-12 {
		padding-top: 12rem !important;
		padding-bottom: 12rem !important;
	}
	.py-md-13 {
		padding-top: 13rem !important;
		padding-bottom: 13rem !important;
	}
	.py-md-14 {
		padding-top: 14rem !important;
		padding-bottom: 14rem !important;
	}
	.py-md-15 {
		padding-top: 15rem !important;
		padding-bottom: 15rem !important;
	}
	.py-md-16 {
		padding-top: 16rem !important;
		padding-bottom: 16rem !important;
	}
}

.vh-80 {
	height: 80vh;
}

@media only screen and (min-width: 600px) {
	.sp {
		display: none !important;
	}
}

.br-sp {
	display: none;
}

@media screen and (max-width: 1080px) {
	.br-pc {
		display: none;
	}

	.br-sp {
		display: inline-block;
	}
}

.navbar-expand-xl .navbar-nav .nav-link {
	font-weight: 600;
}

@media (min-width: 992px) {
	.navbar-expand-lg .navbar-nav .nav-link {
		font-weight: 600;
	}
}

.accordion .accordion-item {
	color: #333;
	font-size: 0.9rem;
}

.accordion.accordion-bg-light .accordion-button {
	background-color: #ffffff !important;
}

.lead {
	font-size: 1rem;
}

@media only screen and (max-width: 768px) {
	.lead {
		font-size: 0.9rem;
		text-align: left;
	}
}

.pc-only {
	display: block !important;
}
.sp-only {
	display: none !important;
}

@media only screen and (max-width: 750px) {
	.pc-only {
		display: none !important;
	}
	.sp-only {
		display: block !important;
	}
}

/*******************
PAGE 
********************/

/* メニュー */

.logo-ani img {
	width: 180px !important;
	height: 180px !important;
}

@media only screen and (max-width: 768px) {
	.logo-ani img {
		width: 120px !important;
		height: 120px !important;
	}
}

.navbar-toggler .navbar-toggler-animation span {
	background: #fff;
}

/********** TOP ***********/

/* about */

.index-about {
	max-width: 90%;
	margin: 0 auto;
	padding: 120px 0 0;
}

.index-about h2 {
	font-size: 6rem;
}

@media only screen and (max-width: 768px) {
	.index-about {
		padding: 0;
	}

	.index-about h2 {
		font-size: 4rem;
		line-height: 4.4rem;
	}
}

/* Shop */

/* .index-shop {
	max-width: 90%;
	margin: 0 auto;
	padding: 120px 0 0;
} */
.index-shop {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	/* padding: 120px 0 0; */
}
.shop-info {
	top: 110% !important;
}

@media only screen and (max-width: 768px) {
	.index-shop {
		padding: initial;
	}

	.shop-info {
		top: 140% !important;
	}
}

/* topics */

.l-inner {
	position: relative;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 10rem;
}

.l-section {
	border-top: 1px solid #eee;
}

.l-section .l-inner {
	padding-top: 0rem;
	padding-bottom: 8rem;
}

[class*="swiper"]:focus {
	outline: none;
}

.slide-media,
.thumb-media {
	position: relative;
	overflow: hidden;
}
.slide-media img,
.thumb-media img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.swiper-button-prev,
.swiper-button-next {
	display: grid;
	place-content: center;
	width: 4.4rem;
	height: 4.4rem;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
}
.swiper-button-prev::before,
.swiper-button-next::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}
.swiper-button-prev::after,
.swiper-button-next::after {
	width: 1.2rem;
	height: 1.2rem;
	content: "";
	border: solid var(--color-gray);
	border-width: 3px 3px 0 0;
}
.swiper-button-prev::after {
	margin-left: 0.4rem;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.swiper-button-next::after {
	margin-right: 0.4rem;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.swiper-button-disabled {
	pointer-events: none;
	opacity: 0;
}

.card02 {
	overflow: hidden;
}
.card02 .swiper {
	overflow: visible;
}
.card02 .swiper-controller {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	gap: 1.6rem;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: end;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	margin-top: 3.2rem;
}
.card02 .swiper-pagination {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 1.2rem 0.8rem;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	margin: 0 auto 0 0;
	text-align: center;
}
.card02 .swiper-pagination-bullet {
	width: 1.6rem;
	height: 3px;
	cursor: pointer;
	-webkit-transition: var(--transition);
	transition: var(--transition);
	vertical-align: top;
	background-color: var(--color-gray);
}
.card02 .swiper-pagination-bullet-active {
	width: 4rem;
	background-color: var(--color-theme);
}
.card02 .swiper-button-prev,
.card02 .swiper-button-next {
	position: relative;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin: 0;
}
.card02 .swiper-button-disabled {
	pointer-events: none;
	opacity: 0.5;
}
.card02 .swiper-button-disabled::before {
	-webkit-box-shadow: var(--box-shadow-inset);
	box-shadow: var(--box-shadow-inset);
}
.card02 .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}
.card02 .slide {
	overflow: hidden;
	width: 24rem;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}
/* .card02 .slide-media {
	padding-top: 62.5%;
} */
.card02 .slide-media {
	padding-top: 80%;
}
.card02 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}
.card02 .slide-content {
	padding: 0.5rem;
}
.card02 .slide-date {
	font-size: 0.8rem;
	margin-top: 0.8rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}
.card02 .slide-title {
	line-height: 1.6;
	font-size: 1rem;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 3.2em;
	margin-top: 0.4rem;
}

@media only screen and (max-width: 1024px) {
	.l-inner {
		padding: 0 4rem;
	}
	.pc {
		display: none !important;
	}
}

@media only screen and (max-width: 599px) {
	.pc-tab {
		display: none !important;
	}
	.card02 .slide {
		width: 16rem;
	}
	.swiper-button-prev,
	.swiper-button-next {
		width: 2.4rem;
		height: 2.4rem;
	}
	.swiper-button-prev::after,
	.swiper-button-next::after {
		width: 0.7rem;
		height: 0.7rem;
		content: "";
		border: solid var(--color-gray);
		border-width: 3px 3px 0 0;
	}

	.card02 .swiper-pagination-bullet {
		width: 0.2rem;
	}

	.card02 .swiper-pagination-bullet-active {
		width: 2rem;
	}
}

@media only screen and (min-width: 1025px) {
	.tab-sp {
		display: none !important;
	}
	.swiper-button-prev::before,
	.swiper-button-next::before {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.swiper-button-prev:hover::before,
	.swiper-button-next:hover::before {
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	.card02 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.card02 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.card02 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}
	.card02 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/* .card05 {
	overflow: hidden;
}
.card05 .swiper {
	overflow: visible;
}
.card05 .swiper-wrapper {
	-webkit-transition-timing-function: linear !important;
	transition-timing-function: linear !important;
}
.card05 .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content;
}
.card05 .slide {
	overflow: hidden;
	width: 20rem;
	border-radius: 4px;
	-webkit-box-shadow: var(--box-shadow);
	box-shadow: var(--box-shadow);
}
.card05 .slide-media {
	padding-top: 62.5%;
}
.card05 .slide-media img {
	height: calc(100% + 16px);
	-webkit-transform: translateY(-16px);
	transform: translateY(-16px);
}
.card05 .slide-content {
	padding: 0.6rem;
}
.card05 .slide-date {
	font-size: 0.9rem;
	line-height: 1;
	display: block;
	color: var(--color-theme);
}
.card05 .slide-title {
	line-height: 1.4;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	height: 2.5em;
	margin-top: 0.6rem;
	font-size: 1.2rem;
}

@media only screen and (max-width: 1024px) {
	.l-inner {
		padding: 0 4rem;
	}
	.pc {
		display: none !important;
	}
}

@media only screen and (max-width: 599px) {
	.pc-tab {
		display: none !important;
	}
	.card05 .slide {
		width: 14rem;
	}
	.card05 .slide-title {
		font-size: 1rem;
	}
}

@media only screen and (min-width: 1025px) {
	.tab-sp {
		display: none !important;
	}
	.swiper-button-prev::before,
	.swiper-button-next::before {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.swiper-button-prev:hover::before,
	.swiper-button-next:hover::before {
		-webkit-transform: scale(1.2);
		transform: scale(1.2);
	}
	.card05 .slide {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.card05 .slide img {
		-webkit-transition: var(--transition);
		transition: var(--transition);
	}
	.card05 .slide:hover {
		-webkit-transform: translateY(-16px);
		transform: translateY(-16px);
		-webkit-box-shadow: var(--box-shadow-hover);
		box-shadow: var(--box-shadow-hover);
	}
	.card05 .slide:hover img {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.card05 .swiper:hover .slide:not(:hover) {
		opacity: 0.3;
	}
} */

.index-topics {
	max-width: 90%;
	margin: 0 auto;
	padding: 120px 0 0;
}

.index-topics h2 {
	font-size: 4rem;
	line-height: 4.4rem;
}

@media only screen and (max-width: 768px) {
	.index-topics {
		padding: initial;
	}

	.index-topics h2 {
		font-size: 2.8rem;
		line-height: 4.4rem;
	}
}

/* gallery */

.index-gallery {
	max-width: 90%;
	margin: 0 auto;
}

.index-gallery span {
	font-size: 6rem;
}

.bg-gallery {
	background: url(../../../assets/img/top/bg_pc.png) no-repeat center top;
	min-height: 1040px;
}

@media only screen and (max-width: 768px) {
	.index-gallery {
		padding: initial;
	}

	.index-gallery span {
		font-size: 4rem;
	}

	.bg-gallery {
		background: url(../../../assets/img/top/bg_sp.png) no-repeat center top;
		min-height: 680px;
	}
}

/* 注意事項 */

.maru-list ul {
	list-style: none;
	padding: 0;
	list-style-position: inside;
}

.maru-list ul li {
	color: rgb(54 54 54);
	font-size: 0.9rem;
	margin: 4px;
	border-bottom: 1px solid rgb(0 0 0 / 5%);
	padding: 12px;
	font-weight: 500;
	padding-left: 2rem;
	text-indent: -11px;
}

.maru-list ul li:before {
	content: "●";
	color: rgba(143, 205, 196, 0.4);
	display: inline-block;
	margin-right: 8px;
}

/*==================================================
アニメーション
===================================*/

/* 画像アニメーション */

.fadeIn {
	animation-name: fadeInAnime;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes fadeInAnime {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

/*==================================================
スタート時は要素自体を透過0にするためのopacity:0;を指定する
===================================*/

.box {
	opacity: 0;
}

/*==================================================
ふわっ
===================================*/

.fadeUp {
	animation-name: fadeUpAnime;
	animation-duration: 0.5s;
	animation-fill-mode: forwards;
	opacity: 0;
}
@keyframes fadeUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* アニメーションスタートの遅延時間を決めるCSS*/

.delay-time05 {
	animation-delay: 0.5s;
}

.delay-time1 {
	animation-delay: 1s;
}

.delay-time15 {
	animation-delay: 1.5s;
}

.delay-time2 {
	animation-delay: 2s;
}

.delay-time25 {
	animation-delay: 2.5s;
}

/* アニメーション自体が変化する時間を決めるCSS*/

.change-time05 {
	animation-duration: 0.5s;
}

.change-time1 {
	animation-duration: 1s;
}

.change-time15 {
	animation-duration: 1.5s;
}

.change-time2 {
	animation-duration: 2s;
}

.change-time25 {
	animation-duration: 2.5s;
}

/*全共通*/

.bgextend {
	animation-name: bgextendAnimeBase;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	position: relative;
	overflow: hidden; /*　はみ出た色要素を隠す　*/
	opacity: 0;
}

@keyframes bgextendAnimeBase {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

/*中の要素*/
.bgappear {
	animation-name: bgextendAnimeSecond;
	animation-duration: 1s;
	animation-delay: 0.6s;
	animation-fill-mode: forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/*左から右*/
.bgLRextend::before {
	animation-name: bgLRextendAnime;
	animation-duration: 1s;
	animation-fill-mode: forwards;
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgb(95 178 179); /*伸びる背景色の設定*/
}
@keyframes bgLRextendAnime {
	0% {
		transform-origin: left;
		transform: scaleX(0);
	}
	50% {
		transform-origin: left;
		transform: scaleX(1);
	}
	50.001% {
		transform-origin: right;
	}
	100% {
		transform-origin: right;
		transform: scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger {
	opacity: 0;
}

#gloval-nav {
	background: #000;
	color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 990;
	text-align: center;
	display: flex;
	visibility: hidden;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 29px;
	opacity: 0;
	transition: opacity 0.6s ease, visibility 0.6s ease;
}
.open #gloval-nav {
	visibility: visible;
	opacity: 1;
}

.dropdown-menu {
	--bs-dropdown-min-width: 30rem;
}

/*==================================================
トピックス詳細
===================================*/

#topics-detail {
}

#topics-detail p {
	font-size: 1rem;
	letter-spacing: 1.1px;
	line-height: 2rem;
	margin-bottom: 2rem;
}

#topics-detail h1 {
	font-size: 2rem;
	font-family: "Kosugi Maru", sans-serif;
	margin-top: 1rem;
}

#topics-detail h2 {
	font-size: 1.8rem;
	font-family: "Kosugi Maru", sans-serif;
	margin-top: 1rem;
}

#topics-detail h3 {
	font-size: 1.6rem;
	font-family: "Kosugi Maru", sans-serif;
	margin-top: 1rem;
}

#topics-detail h4 {
	font-size: 1.4rem;
	font-family: "Kosugi Maru", sans-serif;
	margin-top: 1rem;
}

.pagination {
	display: flex;
	justify-content: center;
}
.pagination span,
.pagination a {
	margin: 0 5px;
	padding: 10px 15px;
	font-size: 14px;
	font-weight: bold;
	line-height: 25px;
	color: #00abb1;
	background: #fff;
	border-radius: 7px;
}

@media only screen and (max-width: 768px) {
	#topics-detail h1 {
		font-size: 1.4rem;
	}

	#topics-detail h2 {
		font-size: 1.3rem;
	}

	#topics-detail h3 {
		font-size: 1.2rem;
	}

	#topics-detail h4 {
		font-size: 1.1rem;
	}
}

#trademark {
}

.trademark-text {
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 2px;
	color: var(--bs-blue);
}

.header-link .fa-twitter:before {
	content: "𝕏" !important;
	font-family: sans-serif !important;
	font-weight: bold;
}

.footer-link .fa-brands {
	font-size: 2rem;
}
.footer-link .fa-twitter:before {
	content: "𝕏" !important;
	font-family: sans-serif !important;
	font-weight: bold;
	color: #222;
}

.btn-round {
	height: 60px;
	width: 60px;
	line-height: 60px;
}

/* 英語版固有のスタイル調整 */

body {
	font-family: "DM Sans", "Poppins", sans-serif;
}

.dropdown-item {
	font-family: "DM Sans", "Noto Sans JP", "Noto Sans SC", "Noto Sans KR", sans-serif;
}
