@charset "UTF-8";

/* すべての要素に適用 */
table {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 150px;
	overflow-x: hidden;
	width: 100%;
}

h1,
h2,
h3,
h4,
dl,
dt,
input,
form {
	word-break: break-all;
}

img {
	border: none;
}

picture {
	display: block;
}

ul,
ol {
	padding-left: 1.5rem;
	margin: 0;
	word-break: break-all;
}

li {
	padding: 5px 0;
	word-break: break-all;
}

dd {
	margin: 0;
	word-break: break-all;
}

table {
	border-collapse: collapse;
}

figure {
	margin: 0 0 40px 0;
}

blockquote {
	margin: 5px;
	padding: 5px;
	background-color: #F3F3F3;
	border-radius: 5px;
	-webkit-border-radius: 5px;
}

blockquote p{
	margin: 20px;
}

/* ボディ */
body {
	margin: 0;
	position: relative;
	display: grid;
	grid-template-columns: [left] 24px [main] 1fr [end] 24px [right];
	grid-template-rows: [header] auto [hero] auto [main] auto [aside] auto [footer] auto [bottom];
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, Arial, Helvetica, Verdana, sans-serif, "ＭＳ Ｐゴシック", "MS PGothic";
	letter-spacing: .04em;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: .04em;
	word-break: break-all;
	color: #222;
	overflow-x: hidden;
	width: 100%;
}

/* ヘッダー */
header {
	position: relative;
	grid-column-start: main;
	grid-column-end: end;
	grid-row-start: header;
	grid-row-end: hero;
	z-index: 90;
}

#logo {
	margin-top: 130px;
	height: 60px;
}

.logo-link {
	font-size: 22px;
	font-weight: bold;
	color: #36B083;
	line-height: 60px;
}

#hero-image {
	position: relative;
	grid-column-start: left;
	grid-column-end: right;
	grid-row-start: hero;
	grid-row-end: main;
}

#fv {
	margin: 10px auto 50px auto
}

/* ナビゲーション */
#header-nav {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 90;
}

/* メニュー */
.menu-content {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 100%;
	z-index: 80;
	background-color: rgba(255, 255, 255, 0.70);
	-webkit-backdrop-filter: blur(10px) saturate(120%);
	backdrop-filter: blur(10px) saturate(120%);
	transition: all 0.5s;
}

#menu-btn-check:checked~.menu-content {
	left: 0;
}

.menu-content-list {
	padding: 130px 10px 0;
}

.menu-item {
	border-bottom: solid 1px #555;
	list-style: none;
}

.menu-item-link {
	display: block;
	width: 100%;
	color: #555;
	box-sizing: border-box;
	padding: 1rem 0.5rem;
	position: relative;
}

.menu-item-link::after {
	content: "";
	width: 10px;
	height: 10px;
	border-top: solid 2px #555;
	border-right: solid 2px #555;
	transform: rotate(45deg);
	position: absolute;
	right: 11px;
	top: 22px;
}

/* メニューボタン */
#menu-btn-check {
	display: none;
}

.menu-btn {
	position: fixed;
	top: 90px;
	right: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 50px;
	width: 50px;
	z-index: 90;
	cursor: pointer;
}

.menu-btn-bar {
	display: block;
	height: 3px;
	width: 25px;
	border-radius: 3px;
	background-color: #343434;
	position: relative;
	transition: background-color 0.3s;
}

.menu-btn-bar::before,
.menu-btn-bar::after {
	content: '';
	display: block;
	height: 3px;
	width: 25px;
	border-radius: 3px;
	background-color: #343434;
	position: absolute;
	transition: transform 0.3s;
}

.menu-btn-bar:before {
	bottom: 1px;
}

.menu-btn-bar:after {
	top: 1px;
}

.menu-btn-bar::before {
	bottom: 0px;
	transform: translateY(-8px);
}

.menu-btn-bar::after {
	top: 0px;
	transform: translateY(8px);
}

#menu-btn-check:checked~.menu-btn .menu-btn-bar {
	background-color: transparent;
}

#menu-btn-check:checked~.menu-btn .menu-btn-bar::before {
	transform: rotate(45deg);
}

#menu-btn-check:checked~.menu-btn .menu-btn-bar::after {
	transform: rotate(-45deg);
}

/* 目次ボタン */
.toc-btn {
	position: fixed;
	top: 90px;
	left: 10px;
	right: 70px;
	display: flex;
	height: 50px;
	justify-content: center;
	align-items: center;
	z-index: 90;
	background-color: rgba(255, 255, 255, 0.35);
	-webkit-backdrop-filter: blur(10px) saturate(120%);
	backdrop-filter: blur(10px) saturate(120%);
}

.toc-label {
	font-size: 10px;
	transform: scale(0.7);
	position: absolute;
	bottom: 3px;
	left: 11px;
}

.toc-btn-icon {
	margin-top: -7px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 4H21V6H8V4ZM3 3.5H6V6.5H3V3.5ZM3 10.5H6V13.5H3V10.5ZM3 17.5H6V20.5H3V17.5ZM8 11H21V13H8V11ZM8 18H21V20H8V18Z' fill='%23000'%3E%3C/path%3E%3C/svg%3E");
	display: block;
	height: 25px;
	width: 25px;
	left: 10px;
	position: absolute;
}

.toc-arrow {
	position: absolute;
	top: 12px;
	right: 15px;
	width: 15px;
	height: 15px;
	border-top: solid 4px #343434;
	border-right: solid 4px #343434;
	border-radius: 3px;
	transform: rotate(135deg);
}

#toc-btn-check {
	display: none;
}

#toc-btn-check:checked~.toc-btn span.toc-arrow {
	transform: rotate(-45deg);
	top: 19px;
}

/* 目次 */
#toc {
	padding: 0px 5px 0 10px;
	margin-right: 5px;
}

.toc-content {
	width: 100%;
	height: 0;
	position: fixed;
	top: 140px;
	left: 0;
	z-index: 80;
	background-color: rgba(255, 255, 255, 0.70);
	-webkit-backdrop-filter: blur(10px) saturate(120%);
	backdrop-filter: blur(10px) saturate(120%);
	transition: all 0.5s;
}

.toc-box {
	width: 100%;
	height: 100%;
	overflow: auto;
}

.toc-box::-webkit-scrollbar {
	width: 3px;
	background-color: #EEEEEE;
}

.toc-box::-webkit-scrollbar-thumb {
	background: #22a26c;
	width: 3px;
	border-radius: 3px;
}

#toc-btn-check:checked~.toc-content {
	height: calc(100% - 140px);
}

.tocLink {
	color: #333333;
	display: inline-block;
}

.tocList {
	padding: 5px 0 0 0;
	text-align: center;
	margin: 15px 0;
}

.nested {
	list-style: none;
	margin: 0 5px;
	padding: 0;
}

.nested li ol {
	list-style: none;
}

#toc-here {
	margin: 0 0 0 40px;
	white-space: nowrap;
	overflow: hidden;
	position: fixed;
	left: 0;
	right: 45px;
}

.active {
	border-bottom: 3px solid #22a26c;
	margin-bottom: -3px;
	font-weight: bold;
}

/* メイン */
main {
	grid-column-start: main;
	grid-column-end: end;
	grid-row-start: main;
	grid-row-end: aside;
	min-width: 0;
}

/* ファーストビュー */
.fv-link {
	text-decoration: none;
}

.fv-img {
	height: 130px;
	width: 100%;
	max-width: 100%;
	object-fit: cover;
	opacity: 0.5;
}

.fv-img-index {
	height: auto;
	aspect-ratio: 3/2;
	width: 100%;
	max-width: 100%;
	min-width: 320px;
	object-fit: cover;
}

#fv-author,
#fv-date {
	font-size: 0.8rem;
}

#fv-author {
	margin-top: 20px;
}

#fv-date {
	margin-left: 60px;
	margin-bottom: 20px;
	color: #777;
}

.fv-author-name {
	margin: -55px 0px 0px 60px
}

.fv-author-icon {
	width: 40px;
	height: 30px;
	background-color: #36B083;
	opacity: 0.8;
	border-radius: 50px;
	padding: 10px 5px;
}

/* ポリシー */
#pr-description {
	color: #777;
	font-size: 0.65rem;
	text-align: right;
}

.policy {
	font-size: 0.8rem;
	text-align: right;
	margin-bottom: 40px;
}

/* 見出し */
h1 {
	font-size: 22px;
	color: #22a26c;
}

h2 {
	font-size: 20px;
	border-bottom: 3px solid #DDD;
	margin: 64px 0 24px 0;
	color: #22a26c;
}

h3 {
	font-size: 18px;
	border-left: 5px solid #DDD;
	margin: 40px 0 24px 0;
	padding-left: 7px;
	color: #22a26c;
}

h4 {
	font-size: 16px;
	margin: 40px 0 16px 0;
	color: #22a26c;
}

h4:before {
	content: "●";
	font-size: 0.8rem;
	color: #DDD;
	margin-right: 5px;
}

h4.no-icon:before {
    content: none;
}

h5 {
	font-size: 16px;
}

p {
	line-height: 2rem;
	margin-bottom: 40px;
	color: #333333;
	word-break: break-all;
}

main a {
	text-decoration: underline 0.1px;
	text-underline-offset: 0.5ex;
}

main a:link {
	color: #0070c9;
}

main a:visited {
	color: #1a0dab;
}

main a:active {
	color: #1a0dab;
}

main ul,
ol {
	margin: 40px 0;
}

.list-link {
	list-style-type: none; /* 無くてもいいが、残す */
}

.link {
	list-style-type: none;
	background-repeat: no-repeat;
	background-position: left 0.6em;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 200 200'%3E%3Cpath d='M114.552,263.927a100,100,0,1,0,100,100,100,100,0,0,0-100-100ZM110.8,304.264a10.99,10.99,0,0,1,7.982,3.091l51.674,48.727a10.99,10.99,0,0,1-.042,16.022L118.6,420.533a10.991,10.991,0,0,1-15.007-16.063l31.628-29.552H62.907a10.991,10.991,0,1,1,0-21.983H135.08L103.7,323.352a10.99,10.99,0,0,1,7.1-19.087Z' fill='%23000' transform='translate%28-14.552 -263.927%29'%3E%3C/path%3E%3C/svg%3E");
	padding-left: 23px;
	margin-left: -23px;
}

.list-num{
	list-style-type:decimal!important;
}

img.content-img {
	width: 100%;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	border: 1px solid #eee;
}

iframe.content-iframe {
	width: 100%;
	max-width: 100%;
	height: auto;
	object-fit: contain;
}

.recommend{
	margin: 30px 10px;
	padding: 15px 20px;
	border-top: dotted 1.5px #ffcc33;
	border-bottom: dotted 1.5px #ffcc33;
}

iframe.youtube{
	width: 100%;
	height: auto;
}

/* CTAボタン */
.button-cta {
	color: #FFF !important;
	background-color: #ff4466;
	border: 1px solid #ff4466;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	display: block;
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
	-o-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
	-ms-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.2);
	position: relative;
	overflow: hidden;
	text-decoration: none;
	margin: auto;
}

.button-cta:after {
	position: absolute;
	content: '';
	display: inline-block;
	top: -180px;
	left: 0;
	width: 30px;
	height: 100%;
	background-color: #fff;
	transition: 0.2s;
	animation: button-cta 7s ease-in-out infinite;
}

@keyframes button-cta {
	0% {
		-webkit-transform: scale(0) rotate(45deg);
		opacity: 0;
	}

	80% {
		-webkit-transform: scale(0) rotate(45deg);
		opacity: 0.5;
	}

	81% {
		-webkit-transform: scale(4) rotate(45deg);
		opacity: 1;
	}

	100% {
		-webkit-transform: scale(50) rotate(45deg);
		opacity: 0;
	}
}

.icon-arrow {
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 200 200'%3E%3Cpath d='M114.552,263.927a100,100,0,1,0,100,100,100,100,0,0,0-100-100ZM110.8,304.264a10.99,10.99,0,0,1,7.982,3.091l51.674,48.727a10.99,10.99,0,0,1-.042,16.022L118.6,420.533a10.991,10.991,0,0,1-15.007-16.063l31.628-29.552H62.907a10.991,10.991,0,1,1,0-21.983H135.08L103.7,323.352a10.99,10.99,0,0,1,7.1-19.087Z' fill='%23fff' transform='translate%28-14.552 -263.927%29'%3E%3C/path%3E%3C/svg%3E");
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px -2px 0;
}

.icon-tel {
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 512 512'%3E%3Cpath d='M94.811,21.696c-35.18,22.816-42.091,94.135-28.809,152.262c10.344,45.266,32.336,105.987,69.42,163.165 c34.886,53.79,83.557,102.022,120.669,129.928c47.657,35.832,115.594,58.608,150.774,35.792 c17.789-11.537,44.218-43.058,45.424-48.714c0,0-15.498-23.896-18.899-29.14l-51.972-80.135 c-3.862-5.955-28.082-0.512-40.386,6.457c-16.597,9.404-31.882,34.636-31.882,34.636c-11.38,6.575-20.912,0.024-40.828-9.142 c-24.477-11.262-51.997-46.254-73.9-77.947c-20.005-32.923-40.732-72.322-41.032-99.264c-0.247-21.922-2.341-33.296,8.304-41.006 c0,0,29.272-3.666,44.627-14.984c11.381-8.392,26.228-28.286,22.366-34.242l-51.972-80.134c-3.401-5.244-18.899-29.14-18.899-29.14 C152.159-1.117,112.6,10.159,94.811,21.696z' fill='%23fff' %3E%3C/path%3E%3C/svg%3E");
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 1px -3px 0;
}

.icon-arrow-footer {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px -2px 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 200 200'%3E%3Cpath d='M114.552,263.927a100,100,0,1,0,100,100,100,100,0,0,0-100-100ZM110.8,304.264a10.99,10.99,0,0,1,7.982,3.091l51.674,48.727a10.99,10.99,0,0,1-.042,16.022L118.6,420.533a10.991,10.991,0,0,1-15.007-16.063l31.628-29.552H62.907a10.991,10.991,0,1,1,0-21.983H135.08L103.7,323.352a10.99,10.99,0,0,1,7.1-19.087Z' fill='%2336B083' transform='translate%28-14.552 -263.927%29'%3E%3C/path%3E%3C/svg%3E");
}

/* 著者情報 */
#author {
	margin: 80px auto;
}

.author-image {
	width: 100px;
	height: 100px;
	display: block;
	margin: 20px auto;
}

img.author-page-image{
	margin:30px auto;
	max-width:30%;
	height: auto;
	display:block;
}

/* 表コンテンツ */
.table-2,
.table-3,
.table-4,
.table-5 {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 40px;
	border: 1px solid #CCCCCC;
}

.table-2 th:nth-child(1) { width: 30%; }
.table-2 th:nth-child(2) { width: 70%; }

.table-3 th:nth-child(1) { width: 20%; }
.table-3 th:nth-child(2) { width: 40%; }
.table-3 th:nth-child(3) { width: 40%; }

.table-4 th:nth-child(1) { width: 10%; }
.table-4 th:nth-child(2) { width: 30%; }
.table-4 th:nth-child(3) { width: 30%; }
.table-4 th:nth-child(4) { width: 30%; }

.table-5 th:nth-child(1) { width: 20%; }
.table-5 th:nth-child(2) { width: 20%; }
.table-5 th:nth-child(3) { width: 20%; }
.table-5 th:nth-child(4) { width: 20%; }
.table-5 th:nth-child(5) { width: 20%; }

.table-2 th,
.table-2 td,
.table-3 th,
.table-3 td,
.table-4 th,
.table-4 td,
.table-5 th,
.table-5 td {
	font-size: 12px;
	padding: 5px;
	word-break: break-all; 
	border: 1px solid #CCCCCC;
}

.table-2 th,
.table-3 th,
.table-4 th,
.table-5 th {
	background-color: #EEE;
}

.table-2 td,
.table-3 td,
.table-4 td,
.table-5 td {
	text-align: left;
}

/* ランキング表 */
.rank {
	width: 100%;
	table-layout: fixed;
	margin-bottom: 10px;
	text-align: center;
}

.rank thead {
	border: none !important;
}

.rank tbody {
	border: 1px solid #CCCCCC;
}

.rank tbody th {
	border: 1px solid #CCCCCC;
	background-color: #EEE;
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
}

.rank th:nth-child(1) { width: 10%; }
.rank th:nth-child(2) { width: 30%; }
.rank th:nth-child(3) { width: 30%; }
.rank th:nth-child(4) { width: 30%; }

.rank th,
.rank td {
	font-size: 12px;
	padding: 5px 0;
	word-break: break-all; 
}

.rank td {
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
}

.rank_point {
	font-size: 26px;
	line-height: 26px;
	font-weight: bold;
}

.pt10 {
	font-size: 46px;
	line-height: 45px;
	font-weight: bold;
}

.pt8 {
	font-size: 40px;
	line-height: 40px;
	font-weight: bold;
}

.pt6 {
	font-size: 43px;
	line-height: 43px;
	font-weight: bold;
}

.btn {
	width: 90%;
	padding: 10px 0px;
	margin: -5px auto 5px auto;
}

.img_detective {
	width: 100%;
	height: 100%;
}
.star{
	font-size: 18px;
	color: #ffd700;
}

/* サイド */
aside {
	grid-column-start: left;
	grid-column-end: right;
	grid-row-start: header;
	grid-row-end: hero;
	position: fixed;
	background-color: #FFFFFF;
	left: 0;
	right: 0;
	z-index: 90;
}

#aside-cta {
	position: fixed;
	width: 100%;
	height: 80px;
	background-color: rgba(255, 255, 255, 0.50);
	-webkit-backdrop-filter: blur(10px) saturate(120%);
	backdrop-filter: blur(10px) saturate(120%);
	text-align: center;
	z-index: 100;
}

.microcopy-aside {
	font-size: 12px;
	line-height: 1.3;
	margin: 5px auto;
}

.microcopy-aside2 {
	display: none;
}

.aside-button-list {
	display: flex;
	justify-content: center;
	margin: 0 20px;
}

.button-aside {
	width: 80%;
	height: 20px;
	padding: 5px;
	margin: 0 10px;
	line-height: 13px;
	font-size: 14px;
}

/* パンくずリスト */
#bread-crumb {
	grid-column-start: main;
	grid-column-end: end;
	grid-row-start: aside;
	grid-row-end: footer;
}

#bread-crumb-list {
	margin: 30px auto;
	padding: 2px 5px;
	border: 1px solid #EAEAEA;
	font-size: 0.8rem;
}

.bread-crumb-item {
	list-style: none;
	display: inline;
}

.bread-crumb-link::after {
	content: ">";
	margin-left: 5px;
	text-decoration: none;
}

/* ページトップボタン */
/*#page-top{position:fixed;bottom:10px;right:10px;height:50px;width:50px;background:#333;opacity:.3;border-radius:25px;}
.page-top-link::before{content:"";width:10px;height:10px;border-top:solid 5px #FFF;border-right:solid 5px #FFF;border-radius:3px;transform:rotate(315deg);position:absolute;right:17px;top:20px;}
.page-top-text{display:none;}*/
/* フッター */
footer {
	grid-column-start: left;
	grid-column-end: right;
	grid-row-start: footer;
	grid-row-end: bottom;
}

#footer-info {
	border-top: 1px solid #EEE;
}

#footer-info-1,
#footer-info-2 {
	padding: 10px 30px 40px 30px;
}

.button-footer {
	border-radius: 100px;
	-webkit-border-radius: 100px;
	text-align: center;
	font-weight: bold;
	line-height: 50px;
	display: block;
	padding: 0 10px;
}

.icon-footer-arrow {
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 200 200'%3E%3Cpath d='M114.552,263.927a100,100,0,1,0,100,100,100,100,0,0,0-100-100ZM110.8,304.264a10.99,10.99,0,0,1,7.982,3.091l51.674,48.727a10.99,10.99,0,0,1-.042,16.022L118.6,420.533a10.991,10.991,0,0,1-15.007-16.063l31.628-29.552H62.907a10.991,10.991,0,1,1,0-21.983H135.08L103.7,323.352a10.99,10.99,0,0,1,7.1-19.087Z' fill='%2336B083' transform='translate%28-14.552 -263.927%29'%3E%3C/path%3E%3C/svg%3E");
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px -2px 0;
}

#footer-nav,
#copyright {
	margin: 0;
	font-size: 0.8rem;
	padding: 5px 30px;
}

.footer-nav-list {
	display: inline-flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0;
}

.footer-nav-item {
	list-style: none;
	margin: 10px;
}

#copyright,
.copyright-link {
	color: #FFF;
	text-align: center;
}

/* Topページ */
.ranking-table-container {
    overflow-x: auto;
    margin: 0 0 30px 0;
    box-shadow: 0 4px 15px rgba(0,0,0,0.08);
    border-radius: 8px;
    width: 100%;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
}
.ranking-table {
    width: 100%;
    border-collapse: collapse;
    font-family: inherit;
    font-size: 12px;
    background-color: #fff;
    min-width: 800px;
}

.ranking-table th:nth-child(1) { width: 8%; }
.ranking-table th:nth-child(2) { width: 12%; }
.ranking-table th:nth-child(3) { width: 4%; }
.ranking-table th:nth-child(4) { width: 4%; }
.ranking-table th:nth-child(5) { width: 12%; }
.ranking-table th:nth-child(6) { width: 12%; }
.ranking-table th:nth-child(7) { width: 12%; }
.ranking-table th:nth-child(8) { width: 12%; }
.ranking-table th:nth-child(9) { width: 12%; }

.ranking-table th, .ranking-table td {
	padding: 12px 10px;
	text-align: center;
	border-bottom: 1px solid #eee;
	border-right: 1px solid #f9f9f9;
}
.ranking-table th:last-child, .ranking-table td:last-child {
	border-right: none;
}
.ranking-table th {
	background-color: #555;
	color: #fff;
	font-weight: bold;
	white-space: nowrap;
}
.ranking-table tr:hover {
	background-color: #f9f9f9;
}
.ranking-table td.agency-name {
	text-align: left;
	font-weight: bold;
}
.rank-1, .rank-2, .rank-3 {
	font-weight: bold;
	font-size: 16px;
}
.rank-1 { color: #d4af37; }
.rank-2 { color: #8a8d8f; }
.rank-3 { color: #cd7f32; }
.grade-s {
	background-color: #ff4466;
	color: #fff;
	padding: 3px 10px;
	border-radius: 4px;
	font-weight: bold;
	display: inline-block;
}
.grade-a {
	background-color: #ff9900;
	color: #fff;
	padding: 3px 10px;
	border-radius: 4px;
	font-weight: bold;
	display: inline-block;
}
.grade-b {
	background-color: #0070c9;
	color: #fff;
	padding: 3px 10px;
	border-radius: 4px;
	font-weight: bold;
	display: inline-block;
}
.grade-c {
	background-color: #777;
	color: #fff;
	padding: 3px 10px;
	border-radius: 4px;
	font-weight: bold;
	display: inline-block;
}
.total-score {
	font-size: 15px;
	font-weight: bold;
	color: #333;
}
.score-cell {
	font-size: 13px;
	color: #333;
	line-height: 1.4;
}
.stars {
	color: #ffcc00;
	font-size: 12px;
	letter-spacing: 1px;
}

/* 一覧ページ */
.column-list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 16px;
	margin: 0;
	list-style: none;
}

.column-item article {
	height: 100%;
	background-color: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
}

.column-item a {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: opacity 0.2s ease;
}

.column-item a:active {
	opacity: 0.7;
}

.column-thumbnail {
	width: 100%;
}

.column-thumbnail img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.column-text {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: 16px;
}

.column-title {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	color: #333;
}

.column-excerpt {
	margin: 0 0 12px;
	font-size: 13px;
	line-height: 1.6;
	color: #666;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.column-meta {
	margin-top: auto;
	text-align: right;
}

.column-meta time {
	font-size: 12px;
	color: #888;
}

.pagination {
	margin: 40px 0;
	text-align: center;
}

.pagination ul {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.pagination a,
.pagination .current {
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	background-color: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 6px;
	color: #333;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	box-sizing: border-box;
	transition: all 0.2s ease;
}

.pagination .current {
	background-color: #333;
	border-color: #333;
	color: #fff;
	pointer-events: none;
}

.pagination a:hover,
.pagination a:active {
	background-color: #f5f5f5;
	border-color: #ccc;
}

.pagination .prev,
.pagination .next {
	font-weight: normal;
	font-size: 13px;
}

/* 汎用系 */
.dply-b {
	display: block;
}

.dply-ib {
	display: inline-block;
}

.pd-0 {
	padding: 0px !important;
}

.pd-t-0 {
	padding-top: 0px !important;
}

.pd-r-0 {
	padding-right: 0px !important;
}

.pd-b-0 {
	padding-bottom: 0px !important;
}

.pd-l-0 {
	padding-left: 0px !important;
}

.pd-2 {
	padding: 2px !important;
}

.pd-5 {
	padding: 5px !important;
}

.pd-v-5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}

.pd-h-5 {
	padding-right: 5px !important;
	padding-left: 5px !important;
}

.pd-t-5 {
	padding-top: 5px !important;
}

.pd-b-5 {
	padding-bottom: 5px !important;
}

.pd-r-5 {
	padding-right: 5px !important;
}

.pd-l-5 {
	padding-left: 5px !important;
}

.pd-10 {
	padding: 10px !important;
}

.pd-v-10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}

.pd-h-10 {
	padding-right: 10px !important;
	padding-left: 10px !important;
}

.pd-t-10 {
	padding-top: 10px !important;
}

.pd-b-10 {
	padding-bottom: 10px !important;
}

.pd-r-10 {
	padding-right: 10px !important;
}

.pd-l-10 {
	padding-left: 10px !important;
}

.pd-15 {
	padding: 15px !important;
}

.pd-v-15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}

.pd-h-15 {
	padding-right: 15px !important;
	padding-left: 15px !important;
}

.pd-t-15 {
	padding-top: 15px !important;
}

.pd-b-15 {
	padding-bottom: 15px !important;
}

.pd-r-15 {
	padding-right: 15px !important;
}

.pd-l-15 {
	padding-left: 15px !important;
}

.pd-20 {
	padding: 20px !important;
}

.pd-v-20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.pd-h-20 {
	padding-right: 20px !important;
	padding-left: 20px !important;
}

.pd-t-20 {
	padding-top: 20px !important;
}

.pd-b-20 {
	padding-bottom: 20px !important;
}

.pd-r-20 {
	padding-right: 20px !important;
}

.pd-l-20 {
	padding-left: 20px !important;
}

.pd-30 {
	padding: 30px !important;
}

.pd-40 {
	padding: 40px !important;
}

.pd-v-40 {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

.pd-h-40 {
	padding-right: 40px !important;
	padding-left: 40px !important;
}

.pd-t-40 {
	padding-top: 40px !important;
}

.pd-b-40 {
	padding-bottom: 40px !important;
}

.pd-r-40 {
	padding-right: 40px !important;
}

.pd-l-40 {
	padding-left: 40px !important;
}

.mg-0 {
	margin: 0px !important;
}

.mg-v-0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}

.mg-h-0 {
	margin-right: 0px !important;
	margin-left: 0px !important;
}

.mg-t-0 {
	margin-top: 0px !important;
}

.mg-b-0 {
	margin-bottom: 0px !important;
}

.mg-r-0 {
	margin-right: 0px !important;
}

.mg-l-0 {
	margin-left: 0px !important;
}

.mg-5 {
	margin: 5px !important;
}

.mg-v-5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}

.mg-h-5 {
	margin-right: 5px !important;
	margin-left: 5px !important;
}

.mg-t-5 {
	margin-top: 5px !important;
}

.mg-b-5 {
	margin-bottom: 5px !important;
}

.mg-r-5 {
	margin-right: 5px !important;
}

.mg-l-5 {
	margin-left: 5px !important;
}

.mg-10 {
	margin: 10px !important;
}

.mg-v-10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

.mg-h-10 {
	margin-right: 10px !important;
	margin-left: 10px !important;
}

.mg-t-10 {
	margin-top: 10px !important;
}

.mg-b-10 {
	margin-bottom: 10px !important;
}

.mg-r-10 {
	margin-right: 10px !important;
}

.mg-l-10 {
	margin-left: 10px !important;
}

.mg-15 {
	margin: 15px !important;
}

.mg-v-15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}

.mg-h-15 {
	margin-right: 15px !important;
	margin-left: 15px !important;
}

.mg-t-15 {
	margin-top: 15px !important;
}

.mg-b-15 {
	margin-bottom: 15px !important;
}

.mg-r-15 {
	margin-right: 15px !important;
}

.mg-l-15 {
	margin-left: 15px !important;
}

.mg-20 {
	margin: 20px !important;
}

.mg-v-20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}

.mg-h-20 {
	margin-right: 20px !important;
	margin-left: 20px !important;
}

.mg-t-20 {
	margin-top: 20px !important;
}

.mg-b-20 {
	margin-bottom: 20px !important;
}

.mg-r-20 {
	margin-right: 20px !important;
}

.mg-l-20 {
	margin-left: 20px !important;
}

.mg-30 {
	margin: 30px !important;
}

.mg-v-30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

.mg-h-30 {
	margin-right: 30px !important;
	margin-left: 30px !important;
}

.mg-t-30 {
	margin-top: 30px !important;
}

.mg-b-30 {
	margin-bottom: 30px !important;
}

.mg-r-30 {
	margin-right: 30px !important;
}

.mg-l-30 {
	margin-left: 30px !important;
}

.mg-40 {
	margin: 40px !important;
}

.mg-v-40 {
	margin-top: 40px !important;
	margin-bottom: 40px !important;
}

.mg-h-40 {
	margin-right: 40px !important;
	margin-left: 40px !important;
}

.mg-t-40 {
	margin-top: 40px !important;
}

.mg-b-40 {
	margin-bottom: 40px !important;
}

.mg-r-40 {
	margin-right: 40px !important;
}

.mg-l-40 {
	margin-left: 40px !important;
}

.ta-c {
	text-align: center !important;
}

.ta-r {
	text-align: right !important;
}

.ta-l {
	text-align: left !important;
}

.va-m{
	vertical-align: middle !important;
}

.fs-9 {
	font-size: 9px !important;
}

.fs-11 {
	font-size: 11px !important;
}

.fs-12 {
	font-size: 12px !important;
}

.fs-13 {
	font-size: 13px !important;
}

.fs-14 {
	font-size: 14px !important;
}

.fs-16 {
	font-size: 16px !important;
}

.fs-18 {
	font-size: 18px !important;
}

.fs-20 {
	font-size: 20px !important;
}

.fs-22 {
	font-size: 22px !important;
}

.c-bl {
	color: #222 !important;
}

.c-w {
	color: #ffffff !important;
}

.c-p {
	color: #ff4466 !important;
}

.c-g {
	color: #36B083 !important;
}

.c-g2 {
	color: #11cc66 !important;
}

.c-o {
	color: #ff6600 !important;
}

.c-o2 {
	color: #ffa700 !important;
}

.c-r {
	color: #e73562 !important;
}

.c-r2 {
	color: #ff4466 !important;
}

.c-r3 {
	color: #CB0155 !important;
}

.c-b {
	color: #167fa6 !important;
}

.c-b2 {
	color: #00bbff !important;
}

.c-b3 {
	color: #00519A !important;
}

.c-gr {
	color: #4F4F4F !important;
}

.m-y {
	background: linear-gradient(transparent 60%, #ffff66 60%);
}

.bg-n {
	background: none !important;
}

.bg-f {
	background: #ffffff !important;
}

.bg-g {
	background: #36B083 !important;
}

.bg-r {
	background: #e84243 !important;
}

.bg-b {
	background: #02bbc9 !important;
}

.bg-o {
	background: rgb(255, 204, 51) !important;
}

.bg-w {
	background: #ffffff !important;
}

.bg-p {
	background: #fc578e !important;
}

.bg-gr {
	background: #555 !important;
}
.bg-pgr {
	background: #FAFAFA !important;
}

.bg-pr {
	background: #fff0f0 !important;
}

.bg-pr2 {
	background: #fdeadf !important;
}

.bg-pg {
	background: #e7f3ea !important;
}

.bg-pg2 {
	background: #effff7 !important;
}

.bg-pb {
	background: #82cddd !important;
}

.bg-py {
	background: #ffffe5 !important;
}

.bg-pp {
	background: #ff9999 !important;
}

.bg-pp2 {
	background: #ffefff !important;
}

.bd-n {
	border: none !important;
}

.bd-v-n {
	border-top: none !important;
	border-bottom: none !important;
}

.bd-t-s1-gr {
	border-top: 1px solid #CCCCCC !important;
}

.bd-s1-g {
	border: solid 1px #36B083 !important;
}

.bd-b-s1-g {
	border-bottom: solid 1px #36B083 !important;
}

.bd-s1-r {
	border: solid 1px #e73562 !important;
}

.bd-s1-gr {
	border: solid 1px #cccccc !important;
}

.bd-d2-g {
	border: dotted 2px #36B083 !important;
}

.bd-d2-r {
	border: dotted 2px #e73562 !important;
}

.bd-d2-r2 {
	border: dotted 2px #e84243 !important;
}

.bd-d2-o {
	border: dotted 2px rgb(255, 204, 51) !important;
}

.br-3 {
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

.br-5 {
	border-radius: 5px;
	-webkit-border-radius: 5px;
}

.b {
	font-weight: bold;
}

.u {
	text-decoration: underline;
	text-underline-offset: 0.5ex;
}

.ts07 {
	transform: scale(0.7);
}

.ts08 {
	transform: scale(0.8);
}

.ts09 {
	transform: scale(0.9);
}

.w-10 {
	width: 10% !important;
}

.w-20 {
	width: 20% !important;
}

.w-30 {
	width: 30% !important;
}

.w-40 {
	width: 40% !important;
}

.w-50 {
	width: 50% !important;
}

.w-60 {
	width: 60% !important;
}

.w-70 {
	width: 70% !important;
}

.w-80 {
	width: 80% !important;
}

.w-90 {
	width: 90% !important;
}

.w-100 {
	width: 100% !important;
}

.lh-12rem {
	line-height: 1.2rem !important;
}

.pc {
	display: none;
}

/* メディアクエリ */
@media (min-width:581px) {
	body {
		grid-template-columns: [left] 150px [main] 1fr [center] 1fr [end] 150px [side-edge-left] 20px [side] 350px [side-edge-right] 20px [right];
	}

	header {
		grid-column-start: main;
		grid-column-end: side-edge-right;
	}

	#hero-image {
		grid-column-start: main;
		grid-column-end: end;
		margin-top: 110px;
	}

	#logo,
	#header-nav {
		position: fixed;
		top: 0;
	}

	#logo {
		z-index: 100;
		margin-top: 5px;
	}

	#header-nav {
		grid-column-start: center;
		grid-column-end: right;
		right: 20px;
		background-color: rgba(255, 255, 255, 0.35);
		-webkit-backdrop-filter: blur(10px) saturate(120%);
		backdrop-filter: blur(10px) saturate(120%);
	}

	#pr-description {
		margin-top: 0px;
	}

	aside {
		grid-column-start: side-edge-left;
		grid-column-end: side-edge-right;
		grid-row-start: hero;
		grid-row-end: footer;
		right: auto;
		left: auto;
		margin-top: 68px;
	}

	#bread-crumb {
		grid-row-start: hero;
		grid-row-end: main;
	}

	footer {
		grid-column-start: left;
		grid-column-end: side-edge-left;
	}

	.menu-btn,
	.menu-label,
	.menu-btn-bar {
		display: none;
	}

	.menu-content {
		width: 100%;
		height: 100%;
		position: static;
		background-color: initial;
		-webkit-backdrop-filter: initial;
		backdrop-filter: initial;
		transition: initial;
	}

	.menu-content-list {
		display: flex;
		justify-content: right;
		padding: 0;
		margin: 0px;
	}

	.menu-item {
		border-bottom: none;
		list-style: none;
	}

	.menu-item-link {
		font-weight: bold;
	}

	.menu-item-link::after {
		display: none;
	}

	#toc {
		margin: 0 20px;
		padding: 0 10px 0 0;
	}

	#toc-btn-check {
		display: none;
	}

	#toc-btn-check:checked~.toc-content {
		height: 40vh;
	}

	.toc-btn {
		position: static;
		height: 100%;
		background: #EEEEEE;
		margin: 20px 20px 0px 20px;
		width: 350px;
	}

	.toc-btn-icon {
		margin: 0;
		width: 20px;
		height: 20px;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 4H21V6H8V4ZM3 3.5H6V6.5H3V3.5ZM3 10.5H6V13.5H3V10.5ZM3 17.5H6V20.5H3V17.5ZM8 11H21V13H8V11ZM8 18H21V20H8V18Z' fill='%2322a26c'%3E%3C/path%3E%3C/svg%3E");
		position: static;
	}

	.toc-label {
		position: static;
		text-align: center;
		color: #22a26c;
		font-weight: bold;
		font-size: 1.2rem;
		line-height: 2.4rem;
		display: block;
	}

	#toc-here,
	.toc-arrow {
		display: none;
	}

	.toc-box {
		padding-right: 10px;
	}

	.toc-content {
		width: 100%;
		height: 100%;
		position: static;
		background-color: initial;
		-webkit-backdrop-filter: initial;
		backdrop-filter: initial;
		transition: initial;
		border-left: 3px solid #EEE;
		border-bottom: 3px solid #EEE;
	}

	ol.nested {
		list-style: none;
		counter-reset: counter;
		margin: 0;
		font-size: 0.9rem;
		padding-left: 15px;
	}

	ol.nested li::before {
		content: counters(counter, "-") ". ";
		counter-increment: counter;
		padding-left: 5px;
	}

	ol.nested li ol {
		list-style: none;
		counter-reset: counter;
	}

	li.tocList {
		text-align: left;
		padding: 0;
		margin: 7px 0;
	}

	a.tocLink {
		color: #333333;
		display: inline;
	}

	a.active {
		border: none;
		font-weight: bold;
		color: #22a26c;
	}

	.rank tbody th{
		writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
	}

	body {
		background: #F9F9F9;
	}

	#bread-crumb {
		margin-top: 80px;
	}

	#bread-crumb-list {
		margin: 0px auto;
		border: none;
	}
	.fv-img {
		height: 200px;
	}
	
	.fv-author-icon {
		width: 30px;
		height: 20px;
		margin: -5px 0 5px 0px;
	}

	main a:hover {
		text-decoration: none;
		font-weight: bold;
	}

	.cta-double {
		display: flex;
		justify-content: center;
	}

	.button-cta {
		width: 80%;
	}

	.button-cta:hover {
		color: #ff4466 !important;
		background-color: #FFF;
		box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
		-moz-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
		-webkit-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
		-o-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
		-ms-box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0);
	}

	.button-cta:hover .icon-arrow {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 200 200'%3E%3Cpath d='M114.552,263.927a100,100,0,1,0,100,100,100,100,0,0,0-100-100ZM110.8,304.264a10.99,10.99,0,0,1,7.982,3.091l51.674,48.727a10.99,10.99,0,0,1-.042,16.022L118.6,420.533a10.991,10.991,0,0,1-15.007-16.063l31.628-29.552H62.907a10.991,10.991,0,1,1,0-21.983H135.08L103.7,323.352a10.99,10.99,0,0,1,7.1-19.087Z' fill='%23ff4466' transform='translate%28-14.552 -263.927%29'%3E%3C/path%3E%3C/svg%3E");
	}

	.button-cta:hover .icon-tel {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 512 512'%3E%3Cpath d='M94.811,21.696c-35.18,22.816-42.091,94.135-28.809,152.262c10.344,45.266,32.336,105.987,69.42,163.165 c34.886,53.79,83.557,102.022,120.669,129.928c47.657,35.832,115.594,58.608,150.774,35.792 c17.789-11.537,44.218-43.058,45.424-48.714c0,0-15.498-23.896-18.899-29.14l-51.972-80.135 c-3.862-5.955-28.082-0.512-40.386,6.457c-16.597,9.404-31.882,34.636-31.882,34.636c-11.38,6.575-20.912,0.024-40.828-9.142 c-24.477-11.262-51.997-46.254-73.9-77.947c-20.005-32.923-40.732-72.322-41.032-99.264c-0.247-21.922-2.341-33.296,8.304-41.006 c0,0,29.272-3.666,44.627-14.984c11.381-8.392,26.228-28.286,22.366-34.242l-51.972-80.134c-3.401-5.244-18.899-29.14-18.899-29.14 C152.159-1.117,112.6,10.159,94.811,21.696z' fill='%23ff4466' %3E%3C/path%3E%3C/svg%3E");
	}

	#toc {
		width: auto;
		height: 40vh;
	}

	#aside-cta {
		width: 390px;
		height: 60vh;
		padding: 10px 0 0 0;
		background-color: #FFFFFF;
	}

	.microcopy-aside {
		font-size: 16px;
	}

	.microcopy-aside2 {
		display: block;
		margin: 10px 20px;
		font-size: 12px;
		line-height: 1.5em;
		font-weight: normal;
	}

	.aside-button-list {
		flex-flow: column;
		align-items: center;
		justify-content: center;
	}

	.button-aside {
		padding: 10px;
		margin: 10px 0;
	}

	#footer-info {
		display: flex;
		justify-content: center;
	}

	#footer-info-1,
	#footer-info-2 {
		width: 50%;
		position: relative;
		padding-bottom: 65px;
	}

	#footer-info-1 {
		padding-left: 150px;
	}

	#footer-info-2 {
		padding-right: 150px;
	}

	.footer-info-ul {
		margin-top: 45px;
		margin-bottom: 45px;
	}

	.button-footer {
		position: absolute;
		bottom: 30px;
		margin: 20px auto 0 auto;
		padding: 0 20px;
	}

	.footer-nav-list {
		display: flex;
	}

	.column-list {
	  display: grid;
	  grid-template-columns: repeat(3, 1fr);
	  gap: 32px;
	  padding: 0;
	}
  
	.column-thumbnail {
	  overflow: hidden;
	}
  
	.column-thumbnail img {
	  transition: transform 0.3s ease;
	}
  
	.column-item a:hover .column-thumbnail img {
	  transform: scale(1.05);
	}
  
	.column-item a:hover {
	  opacity: 1;
	}
  
	.column-text {
	  padding: 24px;
	}
  
	.column-title {
	  font-size: 18px;
	}
  
	.column-excerpt {
	  font-size: 14px;
	  -webkit-line-clamp: 3;
	  line-clamp: 3;
	}

	.sp {
		display: none;
	}

	.pc {
		display: initial;
	}

	#header-nav a:hover,
	#fv a:hover,
	#bread-crumb a span:hover,
	#toc a:hover,
	footer a:hover {
		text-decoration: underline;
	}
}

/* 削除予定の旧スタイル 
#toc a{font-size:0.9rem;color:#36B083;}
a.button_cta {
line-height: 20px;
color: #FFF!important;
background-color: #ff4466;
border: 1px solid #ff4466;
border-radius: 5px;
-webkit-border-radius: 5px;
display: block;
width: 80%;
padding: 5px;
margin: auto;
box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.2);
-webkit-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.2);
-o-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.2);
-ms-box-shadow: 0px 5px 5px 0px rgba(0,0,0,0.2);
position: relative;
overflow: hidden;
}
a.button_cta::before {
position: absolute;
content: '';
display: inline-block;
top: -180px;
left: 0;
width: 30px;
height: 100%;
background-color: #fff;
transition: 0.2s;
animation: button_cta 7s ease-in-out infinite;
}
@keyframes button_cta{0%{-webkit-transform:scale(0) rotate(45deg);opacity:0;}80%{-webkit-transform:scale(0) rotate(45deg);opacity:0.5;}81%{-webkit-transform:scale(4) rotate(45deg);opacity:1;}100%{-webkit-transform:scale(50)}}
.box {
    padding: 10px !important;
    border-radius: 5px;
}
ul.inbox {}
.bg_contents {border: 2px solid #999;}
.bg_relate {border: 2px solid #e7f3ea;}
.bg_notice {border: 2px dotted #e84243;}
p.label {margin: 0 0 10px 0;padding: 0 5px 0 5px;color: #FFF;display: inline-block;border-radius: 3px;font-weight: bold;}
p.lb_contents {background-color: #36B083;}
p.lb_relate {background-color: #e7f3ea;color: #333 !important;}
p.notice {margin: 0 !important;}
.relate_link li:before {
font-family: 'icomoon' !important;
content: "\f0a9";
margin: 0px 3px 0px -17px;
vertical-align: -1px;
color: #333333;
font-size: 16px;
line-height: 30px;
}
*/
/* メニューボタン */
/*.menu-btn{position:fixed;top:90px;right:10px;display:flex;height:50px;width:50px;justify-content:center;align-items:center;z-index:90;background-color:rgba(255, 255, 255, 0.35);-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);}
.menu-label{font-size:10px;transform:scale(0.7);position:absolute;bottom:3px;}
.menu-btn-bar,
.menu-btn-bar:before,
.menu-btn-bar:after{content:'';display:block;height:3px;width:25px;border-radius:3px;background-color:#343434;position:absolute;}
.menu-btn-bar{margin-top:-7px;}
.menu-btn-bar:before{bottom:8px;}
.menu-btn-bar:after{top:8px;}
#menu-btn-check:checked ~ .menu-btn{background-color:rgba(255, 255, 255, 0);}
#menu-btn-check:checked ~ .menu-btn::before{bottom:0;transform:rotate(45deg);}
#menu-btn-check:checked ~ .menu-btn::after{top:0;transform:rotate(-45deg);}
#menu-btn-check{display:none;}*/