@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@100..900&display=swap');

body {
    color: #404040;
	font-family: "ヒラギノ角ゴシック", "Hiragino Sans", sans-serif;
	letter-spacing: 0;
	font-size: 16px;
    font-size: 1rem;
}
html {
	font-size: 16px;
}
a {
	text-decoration: none;
	color: inherit;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}
*, *::before, *::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
ul, ol {
	padding: 0;
}
body, h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd {
	margin: 0;
}
html {
	scroll-behavior: smooth;
}
body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5;
}
ul, ol {
	list-style: none;
}
article > * + * {
	margin-top: 1em;
}
input, button, textarea, select {
	font: inherit;
}
input, button, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}
textarea {
	resize: vertical;
}
input[type="checkbox"], input[type="radio"] {
	display: none;
}
input[type="submit"], input[type="button"], label, button, select {
	cursor: pointer;
}
select::-ms-expand {
	display: none;
}


/*--------------*/
/*--- common ---*/
/*--------------*/
.t_underline {
    position: relative; /* 擬似要素を配置するための基準点 */
    text-decoration: none; /* デフォルトの下線を削除 */
    display: inline; /* inline-blockからinlineに変更 */
    background: repeating-linear-gradient(
        -75deg, /* 平行四辺形の角度 */
        #FFECA0, /* 指定された色 */
        #FFECA0 0.1875rem, /* 黄色の線の幅 */
        transparent 0.1875rem, /* 透明の開始位置 */
        transparent 0.375rem /* 透明部分の幅 */
    );
    background-position: 0 0.8em; /* 文字の下部に配置 */
    background-size: auto 0.625rem; /* 下線の高さ */
    background-repeat: repeat-x; /* x軸方向のみ繰り返し */
    padding-bottom: 0.3125rem; /* 下部にパディングを追加 */
}

.t_underline_red{
	text-decoration: underline red;
}
.t_line-through{
	text-decoration: line-through;
}
.t_italic{
	font-style: italic;
}
.t_link{
	color: #27b1ea;
	text-decoration: none;
}
.t_link:hover{
	text-decoration: underline;
}
.t_center{
	text-align: center;
}
.fs_large{
	font-size: 3rem !important;
}
.fs_medium{
	font-size: 2.2rem !important;
}
.fs_standard{
	font-size: 1.6rem !important;
}
.fs_small{
	font-size: 1.2rem !important;
}
.c_red{
	color:#ff0000;
}
.c_purple{
	color:#cc00cc;
}
.c_blue{
	color:#0000cc;
}
.c_blueGreen{
	color:#00cccc;
}
.c_green{
	color:#00cc00;
}
.c_yellow{
	color:#ffff00;
}
.c_black{
	color:#000000;
}
.c_black_2{
	color:#333333;
}
.c_gray{
	color:#666666;
}
.c_gray_2{
	color:#999999;
}
.c_gray_3{
	color:#cccccc;
}
.c_white{
	color:#ffffff;
}
.f_w{
	font-weight:700;
}

.m_b_m{
	margin-bottom:6rem !important;;
}
#content #main .entry .entry-inner .mt_3{
display:block;
margin-top:3rem;
}
#content #main .entry .entry-inner .mb_3{
display:block;
margin-bottom:3rem;
}
.c_thin_red{
	color:#F5A2A2;
}
.c_thin_blue{
	color:#A5C2E6;
}
.bg_yellow{
	background-color: #ff9;
}


/* 共通ヘッダー */
.header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
.header .header__pc {
    width: 100%;
    background-color: #fff;
	position: fixed;
    z-index: 20;
}
.header .pc-head__inner {
	min-width: 1208px;
    height: inherit;
    padding: 0px 20px;
    display: flex;
    align-items: center;
    box-shadow: 0px 0px 10px rgb(0 0 0 / 16%);
}
.header .pc-head__inner .pc-head__logo {
	width: 216px;
    margin: 10px 20px 7px 0;
    padding-right: 20px;
    border-right: solid 2px #CCCCCC;
}
.header .pc-head__inner .pc-head__logo img{
    display: block;
	max-width: 100%;
	width: 100%;
}
.header .pc-head__inner .pc-menu {
    display: block;
}
.header .pc-head__inner .pc-menu .pc-menu__title {
    font-size: 13px;
    font-size: 0.8125rem;
    padding: 7px 20px;
    padding: 0.4375rem 1.25rem;
    display: block;
    height: 40px;
    height: 2.5rem;
    line-height: 28px;
    line-height: 1.75rem;
	white-space: nowrap;
}
.header .pc-head__inner .pc-menu .pc-menu__title:hover {
    background-color: #F0F0F0;
    border-radius: 0.3125rem 0.3125rem 0 0;
    color: #3DC8FF;
}
.header .pc-head__inner .pc-menu .pc-menu__items {
    display: none;
    position: absolute;
    width: 100%;
    max-width: 328px;
    background-color: #fff;
    padding: 35px 50px;
    -webkit-box-shadow: rgb(0 0 0 / 16%) 0 0 10px;
    box-shadow: rgb(0 0 0 / 16%) 0 0 10px;
}
.header .pc-head__inner .pc-menu:hover .pc-menu__items {
    display: block;
}
.header .pc-head__inner .pc-menu .pc-menu__items .pc-menu__item {
    padding: 10px;
    position: relative;
}
.header .pc-head__inner .pc-menu .pc-menu__items .pc-menu__item::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 3.5px 0 3.5px 4px;
    border-color: transparent transparent transparent #cccccc;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.header .pc-head__inner .pc-menu .pc-menu__items .pc-menu__item a {
    padding: 5px;
    display: inline-block;
    position: relative;
}
.header .pc-head__inner .pc-menu .pc-menu__items .pc-menu__item a::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    height: 0.0625rem;
    background-color: #404040;
    -webkit-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}
.header .pc-head__inner .pc-menu .pc-menu__items .pc-menu__item a:hover::after {
    width: 100%;
}
.header .pc-head__inner .pc-head__search-area {
    display: block;
    margin-left: auto;
    margin-right: 10px;
}
.header .pc-head__inner .pc-head__search-area .pc-head__search-input {
    width: 100%;
    max-width: 180px;
    background: url(/web/20230701065741im_/https://mache.jp/images/common/search-icon.png) no-repeat 14px center/14px 14px;
    background-color: #F0F0F0;
    border-radius: 0.9375rem;
    padding: 4px 10px 4px 40px;
    font-size: 13px;
}
.header .pc-head__inner .pc-head__nc-wrap {
    background-color: #092846;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    padding: 6px 23px;
    border-radius: 0.9375rem;
    position: relative;
}
.header .pc-head__inner .pc-head__nc-wrap::after {
    position: absolute;
    content: "";
    width: 8px;
    width: 0.5rem;
    height: 8px;
    height: 0.5rem;
    right: 13px;
    right: 0.8125rem;
    top: 50%;
    border: solid 1px;
    border: solid 0.0625rem;
    border-color: #fff #fff transparent transparent;
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
}
.header .h1 {
	font-size: .75rem;
}
/* 共通フッター */
.footer {
    background-color: #2e353e;
    color: #fff;
}
.footer .footer__inner {
    width: 1040px;
    margin: 0 auto;
    padding: 49px 20px 55px;
    padding: 3.0625rem 1.25rem 3.4375rem;
}
.footer .footer__inner .footer__blog-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0 48px;
    padding: 0 0 3rem;
    border-bottom: #4E5865 1px solid;
}
.footer .footer__inner .footer__blog-content .footer-blog__logo-wrap {
    width: 100%;
    max-width: 218px;
    max-width: 13.625rem;
}
.footer .footer__inner .footer__blog-content .footer-blog__logo-wrap img {
    display: block;
	width: 100%;
}
.footer .footer__inner .footer__blog-content .footer-blog__category-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer .footer__inner .footer__blog-content .footer-blog__category-wrap .footer-blog-menu__item {
    font-size: 16px;
    font-size: 1rem;
    line-height: 24px;
    line-height: 1.5rem;
    -webkit-transition: 0.2s all linear;
    transition: 0.2s all linear;
    border-right: solid 1px #fff;
    border-right: solid 0.0625rem #fff;
}
.footer .footer__inner .footer__blog-content .footer-blog__category-wrap .footer-blog-menu__item a {
    display: block;
    padding: 0 24px;
    padding: 0 1.5rem;
}
.footer .footer__inner .footer__nc-content {
    margin-top: 48px;
    margin-top: 3rem;
}
.footer .footer__inner .footer__nc-content .footer-nc__logo-wrap {
    width: 100%;
    max-width: 195px;
    max-width: 12.1875rem;
    height: 42px;
    height: auto !important;
}
.footer .footer__inner .footer__nc-content .footer-nc__logo-wrap img {
    max-width: 100%;
    display: block;
    width: 100%;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap {
    margin-top: 24px;
    margin-top: 1.5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu .nc-menu__icon-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu .nc-menu__icon-wrap .nc-menu__icon {
    width: 42px;
    width: 2.625rem;
    height: 42px;
    height: 2.625rem;
    margin-right: 12px;
    margin-right: 0.75rem;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu .nc-menu__item-wrap .nc-menu__title {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin: 12px 0 8px;
    margin: 0.75rem 0 0.5rem;
}
.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu .nc-menu__item-wrap .nc-menu__items .nc-menu__item {
    margin-top: 10px;
    margin-top: 0.625rem;
    -webkit-transition: 0.2s all linear;
    transition: 0.2s all linear;
}
.footer .footer__copyright {
    background-color: #1A2129;
    text-align: center;
    padding: 10px;
    padding: 0.625rem;
    font-size: 15px;
    font-size: 0.9375rem;
}

/* 共通のStyle */
.page-index {
	background-color: #F0F0F0;
}
#container{
	padding: 60px 0 0;
}
#container #content{
	/*
    width: 1440px;
	*/
    margin: 0 auto;
	padding: 30px 0 50px;
}
#container #content #content-inner{
    width: 1208px;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.page-entry #container #content #content-inner{
	width: auto;
}

/* パンくずリスト */
.breadcrumb{
    width: 1300px;
    margin: 0 auto;
    padding-top: 28px;
    display: flex;
    font-size: 17px;
    line-height: 16px;
}
.breadcrumb .breadcrumb-inner{
    display: block;
    font-size: 1.17em;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
	font-weight: bold;
}

/* メインコンテンツ */
.page-entry #content #content-inner #wrapper{
    width: 100%;
}
.page_index #content #content-inner #wrapper{
    width: 897px;
}

/* サイドバー */
.page-archive #content #box2,
.page-entry #content #box2{
	display: none;
}
#content #box2{
	width: 272px;
	flex-shrink: 0;
	margin-left: 39px;
}
#content #box2 .hatena-module-title{
	display: flex;
	justify-content: center;
	align-items: center;
    font-size: 20px;
	font-weight: bold;
}
#content #box2 .hatena-module-title:before,
#content #box2 .hatena-module-title:after{
	content: "";
	height: 1px;
	width: 19px;
	background: #000;
}
#content #box2 .hatena-module-title:before{
	margin-right: 24px;
}
#content #box2 .hatena-module-title:after{
	margin-left: 24px;
}
#content #box2 .entries-access-ranking .entries-access-ranking-item{
	counter-increment: ranking;
}
#content #box2 .entries-access-ranking .card3 {
    display: block;
    box-shadow: 0px 1px 3px rgb(0 0 0 / 16%);
    margin-top: 16px;
	padding: 20px;
    background-color: #fff;
    position: relative;	
}
#content #box2 .entries-access-ranking .card3::before{
	color: #999;
	background: #f0f0f0;
	display: block;
	content: counter(ranking);
	position: absolute;
	top: 5px;
	left: 5px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	border-radius: 50%;
	border: solid 2px #fff;
	text-align: center;
	z-index: 30;
}
#content #box2 .entries-access-ranking .entries-access-ranking-item:nth-child(1) .card3::before{
	content: "";
	background: url('https://web.archive.org/web/20230701065741im_/https://cdn-ak.f.st-hatena.com/images/fotolife/n/nativecamp_official/20210817/20210817102258.png');
	background-size: cover;
	border: none;
}
#content #box2 .entries-access-ranking .entries-access-ranking-item:nth-child(2) .card3::before{
	content: "";
	background: url('https://web.archive.org/web/20230701065741im_/https://cdn-ak.f.st-hatena.com/images/fotolife/n/nativecamp_official/20210813/20210813173735.png');
	background-size: cover;
	border: none;
}
#content #box2 .entries-access-ranking .entries-access-ranking-item:nth-child(3) .card3::before{
	content: "";
	background: url('https://web.archive.org/web/20230701065741im_/https://cdn-ak.f.st-hatena.com/images/fotolife/n/nativecamp_official/20210813/20210813173739.png');
	background-size: cover;
	border: none;
}
#content #box2 .entries-access-ranking .card3 .card3__img-wrap {
	width: 232px;
	height: 162px;
    overflow: hidden;
}
#content #box2 .entries-access-ranking .card3 .card3__img-wrap .card3__img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content #box2 .entries-access-ranking .card3 .card3__img-wrap .card3__img:hover {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content #box2 .entries-access-ranking .card3 .card3__texts {
    background-color: #fff;
    padding: 20px 0 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 108px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__title {
    font-size: 14px;
    line-height: 16px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__cat-wrap {
    display: flex;
    font-size: 10px;
    line-height: 16px;
    margin-top: 15px;
    height: 16px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__cat-wrap .card3__main-cat{
	font-size: 0;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__cat-wrap .card3__main-cat a:first-child{
    background-color: #B3B3B3;
    border: solid 1px #B3B3B3;
    color: #fff;
	margin: 0;
    padding: 0 6px;
	font-size: 10px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__cat-wrap .card3__main-cat a:not(:first-child){
	font-size: 10px;
    border: solid 1px #B3B3B3;
    color: #B3B3B3;
	margin: 0;
    padding: 0 6px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__meta-wrap {
    position: relative;
    font-size: 10px;
    line-height: 18px;
    display: flex;
	margin: 0;
    height: 28px;
    align-items: flex-end;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__meta-wrap .card3__date {
    color: #999999;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__meta-wrap .card3__author {
    color: #808080;
    margin-left: auto;
    margin-right: 4px;
}
#content #box2 .entries-access-ranking .card3 .card3__texts .card3__meta-wrap .card3__author-icon {
    width: 32px;
    height: 32px;
    border-radius: 3.125rem;
}

/* トップページ ヘッダーコンテンツ */
#header-modules .hatena-module-recent-entries {
	width: 1440px;
	margin-top: -30px;
	margin-left: auto;
	margin-right: auto;
}
#header-modules .hatena-module-recent-entries .hatena-module-title{
	display: none;
}
#header-modules .hatena-module-recent-entries .recent-entries{
	font-size: 0;
	overflow: hidden;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item{
	font-size: 16px;
	display: inline-block;
	vertical-align: top;
	margin: 0;
	position: relative;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item::before{
	content: "NEW";
	position: absolute;
	top: 18px;
	left: 18px;
    font-size: 12px;
    padding: 0 10px;
    line-height: 1.5;
    color: #999999;
    background-color: rgba(255, 255, 255, .8);
	z-index: 10;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
	visibility: visible;
	background: transparent -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6))) 0% 0% no-repeat padding-box;
    background: transparent linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%) 0% 0% no-repeat padding-box;
	pointer-events: none;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:first-child{
	width: 718px;
    height: 504px;
	margin: 0;
    object-fit: cover;
	float: left;
	border-right: solid 1px #fff;
	border-left: solid 1px #fff;
	box-sizing: border-box;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:not(:first-child){
	width: 358px;
	height: 252px;
	border: solid 1px #fff;
	box-sizing: border-box;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4),
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5){
	border-bottom: none;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-item-inner{
	width: 100%;
    height: 100%;
	position: relative;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-item-inner .recent-entries-image-link{
    display: block;
    width: 100%;
    height: 100%;
	overflow: hidden;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-item-inner .recent-entries-image-link .urllist-image{
	display: block;
    margin: 0;
    padding: 0;
    float: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
	z-index: 10;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-item-inner .recent-entries-image-link:hover .urllist-image{
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-item-inner .recent-entries-date-link{
	position: absolute;
	bottom: 18px;
	width: 100%;
	padding: 0 18px;
	color: #fff;
	font-size: 10px;
	line-height: 1.5;
	z-index: 10;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-categories{
	position: absolute;
	bottom: 44px;
	width: 100%;
	padding: 0 18px;
	color: #fff;
    font-size: 10px;
	z-index: 10;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-categories a:first-child {
    color: #808080;
    background-color: #fff;
    border: solid 1px #fff;
    margin: 0;
    padding: 0 6px;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item .recent-entries-categories a:not(:first-child) {
    border: solid 1px #fff;
    margin: 0;
    padding: 0 6px;
}
#header-modules .hatena-module-recent-entries .recent-entries .recent-entries-item:first-child .recent-entries-title{
	position: absolute;
	bottom: 70px;
	width: 100%;
	padding: 0 18px;
	color: #fff;
    font-size: 24px;
    font-weight: bold;
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
	z-index: 10;
}
#header-modules .hatena-module-recent-entries .recent-entries-item:not(:first-child) .recent-entries-title{
	position: absolute;
	bottom: 70px;
	width: 100%;
	padding: 0 18px;
	color: #fff;
    font-size: 16px;
    font-weight: bold;
	overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
	z-index: 10;
}

#header-modules .hatena-module-recent-entries .recent-entries-see-more {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 20px;
}
#header-modules .hatena-module-recent-entries .recent-entries-see-more .recent-entries-see-more-link{
	color: #808080;
    display: flex;
    justify-content: flex-end;
    border: solid 1px #808080;
    border-radius: 0.9375rem;
    padding: 3px 24px;
}
/* トップページのデザイン */
.page-index #main .hatena-module + .hatena-module{
	margin-top: 60px;
}
.page-index #main .hatena-module .hatena-module-title{
	display: flex;
	align-items: center;
    font-size: 24px;
    font-size: 1.5rem;
	font-weight: bold;
}
.page-index #main .hatena-module .hatena-module-title > a{
	display: flex;
	align-items: center;
}
.page-index #main .hatena-module .hatena-module-title > a::after{
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url('https://web.archive.org/web/20230701065741im_/https://cdn-ak.f.st-hatena.com/images/fotolife/n/nativecamp_official/20210817/20210817103626.png');
	background-size: cover;
	margin-left: 15px;
    margin-left: 0.9375rem;
}
.page-index #main .hatena-urllist{
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.page-index #main .hatena-urllist .urllist-item + .urllist-item{
	margin-left: 16px;
}
.page-index #main .hatena-urllist .urllist-item:nth-child(4){
	margin: 0;
}
.page-index #main .hatena-urllist .urllist-item:nth-child(4),
.page-index #main .hatena-urllist .urllist-item:nth-child(5){
	width: 440px;
}
.page-index #main .hatena-urllist .urllist-item:nth-child(4) .recent-entries-item-inner,
.page-index #main .hatena-urllist .urllist-item:nth-child(5) .recent-entries-item-inner,
.page-index #main .hatena-urllist .urllist-item:nth-child(4) .card1,
.page-index #main .hatena-urllist .urllist-item:nth-child(5) .card1{
	width: 100%;
}
/* アーカイブページのデザイン */
.page-archive{
	background-color: #fff;
}
.page-archive .search-result{
	display: flex;
    align-self: center;
    justify-content: space-between;
	margin-bottom: 8px;
}
.page-archive .search-result .search-result-form {
	display: none;
	border: none;
}
.page-archive .search-result .search-result-form .search-result-input{
    width: 100%;
    max-width: 180px;
    background: url('https://web.archive.org/web/20230701065741im_/https://cdn-ak.f.st-hatena.com/images/fotolife/n/nativecamp_official/20210813/20210813173538.png') no-repeat 14px center/14px 14px;
    background-color: #F0F0F0;
    border-radius: 0.9375rem;
    padding: 4px 10px 4px 40px;
    font-size: 13px;
}
.page-archive .search-result .search-result-form .search-result-button{
	display: none;
}

.page-archive .archive-header-category {
    margin-bottom: 8px;
}
.page-archive .archive-header-category .archive-heading{
    display: flex;
    align-items: center;
    font-size: 24px;
    font-weight: bold;
	margin: 0;
}
.page-archive .archive-entries{
	display: flex;
	flex-wrap: wrap;
	margin: 0 -8px;
}
.page-archive .archive-entry{
	width: 288px;
	background-color: #fff;
    display: flex;
    flex-direction: column;
	align-items: flex-start;
    justify-content: flex-start;
	margin: 8px;
	box-shadow: 0px 1px 3px rgb(0 0 0 / 16%);
}
.page-archive .archive-entry .archive-entry-header{
	order: 3;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 20px;
	display: flex;
	flex-direction: column;
}
.page-archive .archive-entry .archive-entry-header .date{
	color: #999999;
	font-size: 10px;
	order: 2;
}
.page-archive .archive-entry .archive-entry-header .entry-title {
    font-size: 15px;
    line-height: 22px;
	margin-bottom: 15px;
	height: 44px;
	order: 1;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
.page-archive .archive-entry .categories {
	order: 2;
	padding-top: 20px;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 16px;
}
.page-archive .archive-entry .categories .archive-category-link {
    color: #B3B3B3;
    border: solid 1px #B3B3B3;
    display: inline-block;
    font-size: 10px;
    line-height: 18px;
    padding: 0 6px;
}
.page-archive .archive-entry .entry-thumb-link{
	display: block;
	width: 288px;
	height: 202px;
	order: 1;
	overflow: hidden;
}
.page-archive .archive-entry .entry-thumb-link .entry-thumb{
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.page-archive .archive-entry .entry-thumb-link:hover .entry-thumb{
	-webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
.page-archive .archive-entry .archive-entry-body{
	display: none;
}
.page-archive .pager{
	display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 4rem;
}
.page-archive .pager a{
    display: block;
    font-size: 16px;
    border: solid 1px #808080;
    height: 3em;
    line-height: 3em;
    border-radius: 3em;
    padding: 0 4rem;
}

/* 検索結果ページのデザイン */
/* 404ページのデザイン */
/* 記事詳細ページのデザイン */
.page-entry .breadcrumb{
	display: none;
}
.page-entry .entry{
	width: 640px;
	margin: 0 auto;
}
.page-entry .entry .entry-header{
	margin-bottom: 50px;
}
.page-entry .entry .entry-header .entry-date{
    color: #999999;
    font-size: 10px;
	font-weight: 500;
    line-height: 16px;
}
.page-entry .entry .entry-header .entry-header-menu{
	display: none !important;
}
.page-entry .entry .entry-header .entry-title{
	font-size: 30px;
    line-height: 45px;
    margin-top: 15px;
}
.page-entry .entry .entry-header .entry-categories {
    font-weight: 500;
    font-size: 10px;
    line-height: 16px;
    color: #999999;
    border: solid 1px #ccc;
    display: inline-block;
    padding: 0 4px;
	margin-top: 36px;
    margin-right: 10px;
}
.page-entry .entry .entry-content .hatena-fotolife{
	width: 100%;
	max-width: none;
	display: block;
	margin-bottom: 50px;
}

.page-entry .entry .entry-content p {
	font-size: 16px;
    font-weight: 400;
    line-height: 32px;
	margin-bottom: 30px;
}
/* 新しいセレクタを追加 */
.page-entry .entry .entry-content p.custom-line-height {
    line-height: 28.8px; /* 特定のクラスが付与されたときの行間 */
}
.page-entry .entry .entry-content a{
	color: #27b1ea;
	text-decoration: none;
}
.page-entry .entry .entry-content a:hover{
	text-decoration: underline;
}
.page-entry .entry .entry-content a.keyword{
	border-bottom:dashed 1px #ccc;
}
.page-entry .entry .entry-content a.keyword:hover{
	border: none;
	text-decoration: underline;
}
.page-entry .entry .entry-content img{
	display: block;
	max-width:100%;
	height: auto;
	vertical-align: middle;
	margin: 0 auto;
}
.page-entry .entry .entry-content p strong{
	font-weight:bold;
}
.page-entry .entry .entry-content dl dd {
	font-size:15px;
	margin-bottom:24px;
}
.page-entry .entry .entry-content h1{
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 0;
	line-height: 1.5;
}
.page-entry .entry .entry-content h1 a{
	color:#333333;
}
.page-entry .entry .entry-content h2 {
    /* レイアウト */
    margin: 6.25rem 0 2.5rem 0;     /* 上100px、下40pxをremに変換 */
    padding: 1.375rem 1.25rem;       /* 上下22px、左右20pxのパディング */
    text-align: left;                 /* テキストを左揃え */
    position: relative;               /* 擬似要素を使いやすくするため */
    min-height: 4.5rem;                    /* 高さを72pxに設定 */
    
    /* 色・背景 */
    background-color: #004E7C;       /* 背景色を濃い青色に */
    color: #fff;                      /* テキスト色を白に */
    
    /* 上下にダブルライン */
    border-top: 0.25rem double #fff; /* 上部の境界線 */
    border-bottom: 0.25rem double #fff; /* 下部の境界線 */
    
    /* お好みでフォント */
    font-size: 1.25rem;               /* フォントサイズを20pxに設定 */
    font-weight: 700;                 /* フォントウェイトを700に設定 */
    line-height: 2rem;                /* 行間を32pxに設定 */
    font-family: "Noto Sans";         /* フォントファミリーを指定 */
    box-sizing: border-box;           /* ボックスサイズを計算 */
    
    /* 垂直方向の中央揃え */
    display: flex;                    /* フレックスボックスを使用 */
    align-items: center;              /* 垂直方向の中央揃え */
}
  
  
.page-entry .entry .entry-content h3 {
    /* レイアウト */
    max-width: 40rem; /* 640pxをremに変換 */
    height: auto; /* 固定の高さを削除 */
    min-height: 2.3125rem; /* 必要に応じて最小高さを設定 */
    margin: 6.25rem 0 2.5rem 0; /* 上100px、下40pxをremに変換 */
    padding: 0 0 0.625rem 0; /* 下10pxをremに変換 */
    position: relative;
    
    /* 色・背景 */
    background-color: transparent; /* 背景を透明に */
    color: #2684AA; /* 文字色を指定 */
    
    /* フォント */
    font-size: 1.25rem; /* 20pxをremに変換 */
    font-weight: 700;
    line-height: 1.4375rem; /* 23pxをremに変換 */
    font-family: "Noto Sans";
    box-sizing: border-box;
    
    /* 垂直方向の中央揃え */
    display: flex;
    align-items: center;
}

/* 斜線パターンの装飾 */
.page-entry .entry .entry-content h3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 0.25rem; /* 高さをremに変換 */
    background: repeating-linear-gradient(
        -45deg, /* 左下向きの射影 */
        #2684AA, /* 濃い青 */
        #2684AA 0.1875rem, /* 濃い青の幅を3pxをremに変換 */
        transparent 0.1875rem, /* 白い領域の開始 */
        transparent 0.4375rem /* 白い領域の幅を4pxをremに変換 */
    );
}

.page-entry .entry .entry-content h4{
	font-size:20px;
	font-weight: bold;
	margin-bottom:24px;
}
.page-entry .entry .entry-content h4:before{
	content:"";
	width:20px;
	height:20px;
	background:#999;
	border-radius: 50%;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top:-1px;
	margin-right:10px;
}
.page-entry .entry .entry-content h5{}
.page-entry .entry .entry-content h6{}
.page-entry .entry .entry-content ul{
	list-style: disc;
	font-size:15px;
	margin-bottom:32px;
	padding-left: 50px;
}
.page-entry .entry .entry-content ul > li + li{
	margin-top:16px;
}
.page-entry .entry .entry-content blockquote p{
	margin:0;
}
.page-entry .entry .entry-content blockquote p + p{
	margin-top: 24px;
}
.page-entry .entry .entry-content ol{
	list-style: decimal;
	font-size: 15px;
	margin-bottom: 32px;
	padding-left: 50px;
}
.page-entry .entry .entry-content ol > li{
	margin-top:16px;
}
.page-entry .entry .entry-content .tabs{
	font-size:0;
	border-bottom:solid 2px #cccccc;
	margin-bottom:30px;
}
.page-entry .entry .entry-content .tabs .tabs_item{
	font-size:18px;
	font-weight: bold;
	color:#fff;
	display:inline-block;
	line-height:60px;
	padding:0 30px;
	background: #03c9a9;
	cursor: pointer;
	box-sizing: border-box;
	position: relative;
}
.page-entry .entry .entry-content .tabs .tabs_item.on{
	color:#333;
	font-weight: normal;
	border-left:solid 2px #ccc;
	border-top:solid 2px #ccc;
	border-right:solid 2px #ccc;
	cursor:auto;
	position: relative;
	top:2px;
	background: #fff;
}
.page-entry .entry .entry-content .tabs .tabs_item.on:after{
	content:"";
	width:90%;
	height:2px;
	display: inline-block;
	background:#ccc;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	margin:0 auto;
}
.page-entry .entry .entry-content .tabs .tabs_item + .tabs_item{
	margin-left:8px;
}
.page-entry .entry .entry-content .tab_cnt {
	margin-bottom:30px;
}
.page-entry .entry .entry-content .item_wrap{
	margin-bottom:30px;
}
.page-entry .entry .entry-content .item{
	width:100%;
	display:table;
	border-spacing: 1px;
	border-collapse: separate;
}
.page-entry .entry .entry-content .item p{
	margin:0;
}
.page-entry .entry .entry-content .item ul{
	padding-left:20px;
}
.page-entry .entry .entry-content .item .item_h,
.page-entry .entry .entry-content .item .item_b{
	display: table-cell;
	vertical-align: middle;
}
.page-entry .entry .entry-content .item .item_h{
	width:120px;
	text-align: center;
	background:#cccccc;
	font-weight: bold;
}
.page-entry .entry .entry-content .item .item_b{
	border:solid 1px #ccc;
	padding:12px 15px;
}
.page-entry .entry .entry-content .profile .thum{}
.page-entry .entry .entry-content .profile .name{}
.page-entry .entry .entry-content .aligncenter {
	clear: both;
	display: block;
	margin:0 auto 10px;
}
.page-entry .entry .entry-content .alignleft {
	display: block;
	margin:0 auto 10px 0;
	float: none;
}
.page-entry .entry .entry-content .alignright {
	display: block;
	margin:0 0 10px auto;
	float: none;
}

.page-entry .entry .entry-content table {
	border: none !important;
	border-bottom: 1px solid #ddd;
	border-collapse: collapse;
	border-spacing: 0;
	text-align: left;
	margin: 0 0 10px;
	width: 100%;
}
.page-entry .entry .entry-content tr th {
	border: none !important;
	color: #666;
	font-size: 10px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 26px;
	text-transform: uppercase;
}
.page-entry .entry .entry-content td {
	border: 1px solid #ddd !important;
	padding: 5px !important;
}
#content .entry-content iframe{
	width:100% !important;
	max-width: 100% !important;
}


.page-entry .entry .entry-content .related_llink{
	display: none;
}
.page-entry .entry .entry-footer{
	display: none;
}
.page-entry .pager {
	display: none;
}
.page-entry .profile-cards-list .profile-card-container{
	border: 10px solid #dde5e8;
    border-radius: 0px;
    margin: 0;
    padding: 40px 30px;
	position: relative;
}
.page-entry .profile-cards-list .profile-card-container + .profile-card-container{
	margin-top: 20px;
}
.page-entry .profile-cards-list .profile-card-container .thumbnail{
	width: 96px;
	height: 96px;
	border-radius: 50%;
	overflow: hidden;
	margin: 0 auto 20px;
}
.page-entry .profile-cards-list .profile-card-container .thumbnail img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.page-entry .profile-cards-list .profile-card-container .profile .name{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}
.page-entry .profile-cards-list .profile-card-container .profile .desc p{
	margin: 0;
	padding: 0;
}
.page-entry .profile-cards-list .profile-card-container::before{
	content: "この記事を書いた人";
	font-size: 13px;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
	background: #dde5e8;
	padding: 0px 4px 4px;
}


/* 404ページ */
.no-entry{
	width: 1208px;
	padding: 6rem 0 6rem;
	text-align: center;
}
.no-entry .entry-content h1{
	font-size: 48px;
	margin-bottom: 20px;
}
.no-entry .entry-content p{
	font-size: 24px;
}


.example {
    /* 元のスタイルを維持 */
    background-color: #E6F5FB;
    border: none 3px #4169e1;
    margin-top: 30px;
    margin-bottom: 30px;
    
    /* 上下に20pxのパディング */
    padding: 20px 16px;
    
    /* flexboxを縦方向に変更 */
    display: flex;
    flex-direction: column; /* 子要素を縦方向に配置 */
    justify-content: center; /* 縦方向の中央揃え */
    
    /* ボックスモデルの確実な設定 */
    box-sizing: border-box;
}

/* exampleクラス内のp要素のマージンをリセット */
.page-entry .entry .entry-content .example p {
    margin-bottom: 0; /* 下のマージンを上書き */
    margin-top: 0;    /* 上のマージンも念のためリセット */
    line-height: 1.5; /* 行の高さも調整可能 */
    font-size: 16px;
}

/* 最初の段落以外に上部マージンを追加 */
.page-entry .entry .entry-content .example p + p {
    margin-top: 4px; /* 段落間の間隔を4pxに設定 */
}


.trivia{
	padding: 16px;
	border: solid 3px #d2691e;
	border-radius: 10px;
	background-color: #fffacd;
	margin-top: 30px;
	margin-bottom: 30px;
}
.question{
	margin:30px 0;
}
.question .question_title{
	padding: 6px 10px;
	border-radius: 10px 10px 0px 0px;
	color: #ffffff;
	font-weight: bold;
	margin-left: 10px;
	font-size: 20px;
	background: #ff8c00;
	width: 150px;
}
.question .question_content{
	padding: 18px;
	border-radius: 5px;
	border: 2px solid #ff8c00;
}
.question .difficulty{
	text-decoration: underline;
	font-size: 16px;
}
.question .answer{
	font-size: 14px !important;
	font-weight: bold;
	margin-bottom: 0 !important;
}

.gray_area{
	padding: 16px;
	border: solid 3px #2e353e;
	border-radius: 10px;
	background-color: #f5f5f5;
	margin-top: 30px;
	margin-bottom: 30px;
	display: block;
}

.heading_underline{
	border-bottom: solid 5px #03c9a9;
}

.subscribe-button a {
	display: inline-block;
	width: 100%;
	max-width: 100px;
	text-align: center;
	color: #fff !important;
	background-color: #999; /* ここでボタンの色 */
	border-radius: 3px;
	transition: all .3s;
}
.subscribe-button a:hover {
	text-decoration: none !important;
	opacity: 0.7;
}

/*tricolor_table*/
table.tricolor_table{
	height: 262px; 
	border-color: #9e9d9d;
}
table.tricolor_table tr{
	border-color: #a6a4a4;
}
table.tricolor_table tr th{
	border-color: #000000;
	vertical-align: middle;
	background-color: #f0f0f0;
}
table.tricolor_table tr td{
	border-color: #000000;
	vertical-align: middle;
}
table.tricolor_table tr td.tricolor_table_color1{
	background-color: #fcf1e6;
}
table.tricolor_table tr td.tricolor_table_color2{
	background-color: #faf9d7;
}
table.tricolor_table tr td.tricolor_table_color3{
	background-color: #e6f4fc;
}

.orange_column-heading{
	padding: 6px 10px 5px;
	border-radius: 10px 10px 0px 0px;
	color: #fff;
	margin-left: 10px;
	background: #ff8c00;
}
.orange_column-content{
	padding: 18px;
	border-radius: 5px;
	border: 2px solid #ff8c00;
	margin: 0 0 20px;
}
.lastmod {
    padding: 5px 6px;
    text-decoration: none;
    display: inline;
    margin-left: 10px;
}
.lastmod::before {
    margin-right: 5px;
    padding-left: 3px;
    font-family: FontAwesome;
    content: '\f021';
}
.entry-date a::before {
    margin-right: 5px;
    padding-left: 3px;
    font-family: FontAwesome;
    content: '\f017';
}
.entry-footer-section .author{
    display: none;
}
.hatena-module-body .banner_area{
    display: none;
}

/* content-inne */
#content-inner .hatena-module-recent-entries .hatena-module-title{
	margin-bottom: 16px;
}
#content-inner .hatena-module-recent-entries .recent-entries{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3){
    display: block;
	width: 288px;
    box-shadow: 0px 1px 3px rgb(0 0 0 / 16%);
	background: #fff;
	margin-bottom: 16px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .urllist-image-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .urllist-image-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .urllist-image-link{
	order: 1;
	height: 202px;
	overflow: hidden;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .urllist-image-link img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .urllist-image-link img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .urllist-image-link img{
	display: block;
	margin: 0;
	padding: 0;
	float: none;
	object-fit: cover;
	width: 100%;
	height: 100%;
	-webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .urllist-image-link:hover img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .urllist-image-link:hover img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .urllist-image-link:hover img{
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-item-inner,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-item-inner,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-item-inner{
	display: flex;
	flex-direction: column;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-title,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-title,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-title,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-title-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-title-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-title-link{
	order: 2;
	font-size: 16px;
	font-weight: bold;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
	padding: 15px 20px 0px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-categories,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-categories,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-categories{
	order: 3;
	padding: 10px 20px 10px;
	font-size: 0;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-categories a:first-child,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-categories a:first-child,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-categories a:first-child{
	display: inline-block;
    background-color: #B3B3B3;
    border: solid 1px #B3B3B3;
    color: #fff;
    margin: 0;
    padding: 0 6px;
    font-size: 10px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-categories a:not(:first-child),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-categories a:not(:first-child),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-categories a:not(:first-child){
    display: inline-block;
    font-size: 10px;
    border: solid 1px #B3B3B3;
    color: #B3B3B3;
    margin: 0;
    padding: 0 6px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(1) .recent-entries-date-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(2) .recent-entries-date-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(3) .recent-entries-date-link{
	order: 4;
	margin: 0;
	padding: 0px 20px 15px;
	font-size: 10px;
	color: #999999;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5){
    display: block;
	width: 440px;
    box-shadow: 0px 1px 3px rgb(0 0 0 / 16%);
	background: #fff;
	position: relative;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .urllist-image-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .urllist-image-link{
	order: 1;
	width: 220px;
	overflow: hidden;
	flex-shrink: 0;
	float: left;
	position: absolute;
	left: 0;
    top: 0;
    bottom: 0;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .urllist-image-link img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .urllist-image-link img{
	display: block;
	margin: 0;
	padding: 0;
	float: none;
	object-fit: cover;
	width: 100%;
	height: 100%;
	-webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .urllist-image-link:hover img,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .urllist-image-link:hover img{
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-item-inner,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-item-inner{
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-title,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-title,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-title-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-title-link{
	order: 2;
	font-size: 16px;
	font-weight: bold;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    padding: 15px 20px 0 240px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-categories,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-categories{
	order: 3;
	padding: 10px 20px 10px 240px;
	font-size: 0;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-categories a:first-child,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-categories a:first-child{
	display: inline-block;
    background-color: #B3B3B3;
    border: solid 1px #B3B3B3;
    color: #fff;
    margin: 0;
    padding: 0 6px;
    font-size: 10px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-categories a:not(:first-child),
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-categories a:not(:first-child){
    display: inline-block;
    font-size: 10px;
    border: solid 1px #B3B3B3;
    color: #B3B3B3;
    margin: 0;
    padding: 0 6px;
}
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(4) .recent-entries-date-link,
#content-inner .hatena-module-recent-entries .recent-entries .recent-entries-item:nth-child(5) .recent-entries-date-link{
	order: 4;
	margin: 0;
	padding: 0px 20px 15px 240px;
	font-size: 10px;
	color: #999999;
}

#content-inner .hatena-module-custom-top-banner {
	margin-bottom: 30px;
}
#content-inner .hatena-module-custom-bottom-banner {
    display: none;
	margin-top: 30px;
	margin-bottom: 30px;
}
#content-inner .hatena-module-custom-top-banner img,
#content-inner .hatena-module-custom-bottom-banner img {
	width: 100%;
}

#content-inner .entry-inner > .entry-footer{
    display: block !important;
}
#content-inner .entry-inner > .entry-footer > :not(.entry-footer-modules) {
    display: none;
}
#content-inner .hatena-module-custom-bottom-link-banner {
    position: fixed;
    right: 40px;
    bottom: 40px;
    z-index: 1;
    display: block;
    width: 280px;
    height: 120px;
    background: #FFFFFFCC 0% 0% no-repeat padding-box;
    box-shadow: 0px 2px 16px #00000040;
    border-radius: 8px;
    opacity: 1;
}
#content-inner .bottom_link_banner {
    display: block;
    width: 280px;
    height: 120px;
    cursor: text;
}
#content-inner .bottom_link_banner img {
    width: 100%;
}
#content-inner .bottom_link_banner img:hover {
    transition: all 0.2s linear;
    opacity: 0.9;
}
.hatena-module-custom-bottom-link-banner .hatena-module-body {
    position: relative;
}
.bnr_lp_link {
  display: block;
  border-radius: 30px;
  position: absolute;
  bottom: 9px;
  left: 50%;
  transform: translate(-50%);
  width: 77%;
  height: 25%;
}
.bnr_link_float__close {
    top: -12px;
    right: -12px;
    width: 28px;
    height: 28px;
    position: absolute;
    z-index: 1;
    border-radius: 50%;
    padding: 0;
    margin: 0;
    cursor: pointer;
    overflow: hidden;
}

@media only screen and (max-width: 820px) {
	.footer .footer__inner {width: 100% !important;}
	.footer .footer__inner .footer__blog-content .footer-blog__category-wrap .footer-blog-menuitem { font-size: 15px !important; }
	.footer .footer__inner .footer__nc-content .footer-nc__menu-wrap .nc-menu .nc-menu__item-wrap .nc-menu__items .nc-menu__item { font-size: 15px !important;}
}

/* NJ-41796 START */
.conv-wrap{
	margin: 20px 0;
}
.conv-wrap .conv{
	display: flex;
	gap: 0 5px;
}
.conv-wrap .conv.conv-right{
	flex-direction: row-reverse;
	justify-content: end;
}
.conv-wrap .conv + .conv{
	margin-top: 20px;
}
.conv-wrap .conv .thumb-wrap > img{
	width: 60px;
	height: 60px;
}
.conv-wrap .conv .text-wrap .name{
	font-size: 12px;
	margin-bottom: 2px;
}
.conv-wrap .conv .text-wrap{
	flex: 1;
}
.conv-wrap .conv.conv-right .text-wrap{
	text-align: right;
}
.conv-wrap .conv.conv-right .text-wrap .name{
	text-align: right;
}
.conv-wrap .conv .text-wrap .baloon{
	position: relative;
    padding: 6px 12px;
    background-color: #D1F8C2;
    border-radius: 15px;
    color: #333333;
	line-height: 1.5;
	font-size: 16px;
	display: inline-block;
	text-align: left;
}
.conv-wrap .conv-left .text-wrap .baloon{
	border-radius: 0 15px 15px 15px;
}
.conv-wrap .conv-left .text-wrap .baloon:before{
	position: absolute;
	top: 0;
	left: -8px;
	z-index: 1;
	height: 0;
	width: 0;
	border-style: solid none none solid;
	border-width: 8px;
	border-color: #EEEEEE transparent;
	content: "";
}
.conv-wrap .conv-right .text-wrap .baloon{
	background-color: #D1F8C2;
	border-color: #D1F8C2;
	border-radius: 15px 0 15px 15px;
	margin-left: auto;
}
.conv-wrap .conv-right .text-wrap .baloon:before{
	position: absolute;
	top: 0;
	right: -8px;
	z-index: 1;
	height: 0;
	width: 0;
	border-style: solid solid none none;
	border-width: 8px;
	border-color: #D1F8C2 transparent;
	content: "";
}
.conv-wrap .conv .text-wrap .baloon.bgc-1{
	background-color: #EEEEEE;
	border-color: #EEEEEE;
}
.conv-wrap .conv .text-wrap .baloon.bgc-1:before{
	border-color: #EEEEEE transparent;
}
.conv-wrap .conv .text-wrap .baloon.bgc-2{
	background-color: #E3F4E4;
	border-color: #E3F4E4;
}
.conv-wrap .conv .text-wrap .baloon.bgc-2:before{
	border-color: #D1F8C2 transparent;
}
.conv-wrap .conv .text-wrap .baloon.bgc-3{
	background-color: #FFEBEB;
	border-color: #FFEBEB;
}
.conv-wrap .conv .text-wrap .baloon.bgc-3:before{
	border-color: #FEF1FA transparent;
}
.conv-wrap .conv .text-wrap .baloon.bgc-4{
	background-color: #FFFCF1;
	border-color: #FFFCF1;
}
.conv-wrap .conv .text-wrap .baloon.bgc-4:before{
	border-color: #F9F7D2 transparent;
}
.conv-wrap .conv .text-wrap .baloon.bgc-5{
	background-color: #FFF5F0;
	border-color: #FFF5F0;
}
.conv-wrap .conv .text-wrap .baloon.bgc-5:before{
	border-color: #FFF5F0 transparent;
}
.conv-wrap .conv .text-wrap .baloon.bgc-6{
	background-color: #E2F6FF;
	border-color: #E2F6FF;
}
.conv-wrap .conv .text-wrap .baloon.bgc-6:before{
	border-color: #E2F6FF transparent;
}
/* NJ-41796 END */

/* NJ-62148 START */

/* 共通ボックス */
.box, .light-box, .warning-box, .check-box {
    position: relative;
	width: 640px;  /* 元々のtriviaでもwidth指定んかったため、ここでも指定しない */
    padding: 40px 30px; /* 上下40px、左右30pxのパディング */
    border: 2px solid hsl(0, 0%, 80%);
	margin: 100px auto;
    min-height: 60px; /* アイコン用の最小高さ */
}

/* ボックスのカラースタイル */
.light-box { border-color: #FFA537; color: #333333; }
.warning-box { border-color: #F7D82C; color: #333333; }
.check-box { border-color: #6AC1B7; color: #333333; }

/* 背景色スタイル */
.with-bg.light-box { background-color: #FDF9EE; }
.with-bg.warning-box { background-color: #FFFCF1; }
.with-bg.check-box { background-color: #DFEFED; }

/* アイコン用の擬似要素 */
.with-icon::before {
    content: "";
    position: absolute;
    top: -20px;    /* 上にアイコンが中央ではみ出す位置 */
    left: 14px;     /* 右に移動させるために値を調整 */
    width: 36px;   /* アイコンのサイズ */
    height: 36px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    z-index: 1;    /* ボックスより前面に表示 */
}

/* 各アイコンの背景画像設定 */
.with-icon.light-box::before { background-image: url('https://cdn.blog.st-hatena.com/files/17391345971627523201/6802418398342671303'); }
.with-icon.warning-box::before { background-image: url('https://cdn.blog.st-hatena.com/files/17391345971627523201/6802418398342671332'); }
.with-icon.check-box::before { background-image: url('https://cdn.blog.st-hatena.com/files/17391345971627523201/6802418398342671356'); }

.page-entry .entry .entry-content .light-box p,
.page-entry .entry .entry-content .warning-box p,
.page-entry .entry .entry-content .check-box p {
    margin-bottom: 0; /* 下のマージンを上書き */
    margin-top: 0;    /* 上のマージンも念のためリセット */
    line-height: 1.625rem; /* 行の高さを設定 */
    font-size: 0.875rem; /* フォントサイズを設定 */
    font-weight: 500; /* フォントウェイトを500に設定 */
}

.page-entry .entry .entry-content .table-of-contents .table-of-contents__title {
    font-size: 1.25rem;
    line-height: 32px;
    text-align: center;
    margin-top: 1.625rem;
}
.page-entry .entry .entry-content .table-of-contents ul{
	list-style: none;
	margin: 0.625rem 0 0;
	padding-left: 1em;
}
.page-entry .entry .entry-content .table-of-contents li {
    font-weight: 600;
}
.page-entry .entry .entry-content .table-of-contents li + li{
	margin-top: 0.625rem;
}
.page-entry .entry .entry-content .table-of-contents li a{
    color: #008AC1;
    font-weight: 300;
}

/* テーブルオブコンテンツの基本スタイル（リスト部分は左寄せ） */
.page-entry .entry .entry-content .table-of-contents {
    list-style: none;
    
    /* 上下の境界線だけを描画：4pxの厚さ、色#F0F0F0 */
    border-top: 0.25rem solid #F0F0F0;
    border-bottom: 0.25rem solid #F0F0F0;
    
    margin-bottom: 2rem;
	padding: 1.5rem 0; 
    counter-reset: item;
    position: relative;
    /* 目次ヘッダーがかぶらないよう 上部に追加の空間を確保 */
    /* たとえばデフォルトの 30px + 40px = 合計 70px 等にする */
    padding-top: 4.375rem;
}

/* 「目次」ヘッダーを絶対配置で中央に配置 */
.page-entry .entry .entry-content .table-of-contents::before {
    content: "目次";
    
    /* 絶対配置で中央に */
    position: absolute;
    top: 1.25rem;   /* 上から20pxの位置に配置（上下の空間20pxを確保） */
    left: 50%;
    transform: translateX(-50%);
    
    /* インラインブロックにして高さ・横幅を指定可能に */
    display: inline-block;
    vertical-align: middle;
    
    font-size: 1.25rem;
    line-height: 2rem;
    
    /* ハンバーガーアイコンを背景画像として設定 */
    background-image: url("https://cdn.blog.st-hatena.com/files/17391345971627523201/6802418398342893574");
    background-repeat: no-repeat;
    /* アイコンを左端に配置して上下中央に */
    background-position: left center;
    background-size: 1.25rem 1.25rem;
    
    /* テキストの左に、アイコンの幅20px＋間隔9px=29pxの余白を与える */
    padding-left: 1.813rem;
	/* 以下の指定で番号＋｜部分を一塊にして改行させず、フレックスアイテムとして扱う */
	display: inline-block;
	white-space: nowrap;
	margin-right: 0.25rem;   /* テキストとの隙間を少し */
	flex-shrink: 0;          /* アイテムの縮小を防止 */
}


/* 章（親項目）のスタイル */
.page-entry .entry .entry-content .table-of-contents > li {
    counter-increment: item;
    counter-reset: subitem;
    position: relative;
    padding-left: 0;
    margin-bottom: 0;
    font-weight: normal;
    
    /* flexboxレイアウトを修正 - 中央揃えに変更 */
    display: flex;
    align-items: center; /* 垂直中央揃え */
    flex-wrap: wrap;
}

/* 章のカウンター番号と区切り線 */
.page-entry .entry .entry-content .table-of-contents > li:before {
    content: counter(item) "\00a0\00a0" "|" "\00a0\00a0";
    color: #004E7C;
    font-family: "Noto Sans";
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    
    /* 垂直位置の調整を削除（align-items: centerで対応） */
    display: inline-block;
    white-space: nowrap;
    margin-right: 0.25rem;
    flex-shrink: 0;
}
/* 章のリンクスタイル */
.page-entry .entry .entry-content .table-of-contents > li > a {
    color: #333333 !important;
    text-decoration: none !important;
    font-family: "Noto Sans";
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    
    flex: 1;
    white-space: normal;
}

/* 節（サブ項目）のリスト */
.page-entry .entry .entry-content .table-of-contents > li > ul {
    list-style: none;
    margin: 4px 0 0 0;
    padding-left: 1.75rem;
    margin-bottom: 8px;
    
    width: 100%;
    flex-basis: 100%;
}

/* 節の項目 - 垂直中央揃えだけを確実に */
.page-entry .entry .entry-content .table-of-contents > li > ul > li {
    counter-increment: subitem;
    position: relative;
    padding-left: 0;
    margin-top: 4px;
    margin-bottom: 0;
    font-weight: normal;  
    
    /* flexboxでの垂直中央揃えを確実に */
    display: flex;
    align-items: center; /* 中央揃えに変更 */
    flex-wrap: wrap;
}

/* 節の番号と区切り線 - 位置調整なし */
.page-entry .entry .entry-content .table-of-contents > li > ul > li:before {
    content: counter(item) "-" counter(subitem) "\00a0\00a0" "|" "\00a0\00a0";
    color: #2684AA;
    font-family: "Noto Sans";
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5;
    
    white-space: nowrap;
    display: inline-block;
    margin-right: 0.25rem;
    flex-shrink: 0;
    /* 調整なし */
    top: -12em;
}

/* 節のリンクスタイル - フォントサイズはそのまま */
.page-entry .entry .entry-content .table-of-contents > li > ul > li > a {
    color: #333333 !important;
    text-decoration: none !important;
    font-family: "Noto Sans";
    font-weight: 400;
    font-size: 0.875rem; /* 元のサイズを維持 */
    line-height: 1.5;
    
    /* 設定を維持 */
    white-space: normal;
    display: inline-block;
    flex: 1;
}

/* 項目が近すぎる場合は調整 */
.page-entry .entry .entry-content .table-of-contents li + li {
    margin-top: 0.25rem;
}

/* 透過表示のためのスタイル */
.toc-faded {
    opacity: 0.3;
    position: relative;  /* ボタンの表示位置基準 */
}

/* もっと見るボタンのスタイル */
.toc-more-button {
    display: block;
    padding: 0.5rem 0.625rem; /* 上下8px、左右14pxのパディング */
    border-radius: 10rem;
    border: 0.5px solid #CCCCCC; /* ほそめでグレーのボーダー */
    background: #F7F7F7; /* 背景色を設定 */
    cursor: pointer;
    text-align: center; /* 中央揃え */
    
    /* 絶対配置を削除し、マージンでセンタリング */
    position: static; 
    margin: 1.25rem auto 0.688rem; /* 上・左右・下のマージン */
    transform: none;
    color: #000000;
    /* 文字スタイル */
    font-family: "Noto Sans"; /* フォントファミリー */
    font-weight: 400; /* フォントウェイト */
    font-size: 0.875rem; /* フォントサイズを14pxに設定 */
    letter-spacing: 0; /* 文字間隔 */
    vertical-align: middle; /* 垂直方向の配置 */
}

.toc-more-button:hover {
    background-color: rgba(220, 220, 220, 0.95); /* ホバー時の背景色 */
}

.toc-more-button span {
    font-family: "Noto Sans"; /* フォントファミリー */
    font-weight: 400; /* フォントウェイト */
    font-size: 0.875rem; /* フォントサイズを14pxに設定 */
    line-height: 1.3125rem; /* 行間を21pxに設定 */
    letter-spacing: 0; /* 文字間隔 */
    text-align: center; /* 中央揃え */
    vertical-align: middle; /* 垂直方向の配置 */
}

.toc-collapse-button {
    display: block;
    padding: 0.5rem 0.625rem; /* 上下8px、左右14pxのパディング */
    border-radius: 10rem; /* ボーダー半径を70pxに設定 */
    border: 0.5px solid #CCCCCC; /* ほそめでグレーのボーダー */
    background: #F7F7F7; /* 背景色を設定 */
    cursor: pointer;
    margin: 1rem auto 0.625rem; /* 上部マージンを10pxから16pxに増やし、下部を10pxに設定 */
    font-family: "Noto Sans"; /* フォントファミリー */
    font-weight: 400; /* フォントウェイト */
    font-size: 0.875rem; /* フォントサイズを14pxに設定 */
    letter-spacing: 0;
    color: #000000;
    /* ボタン中央揃えのためのFlex */
    align-items: center;
    justify-content: center;
}

.toc-collapse-button:hover {
    background-color: rgba(220, 220, 220, 0.95);
}

/* チェックボックス付きテキスト用のスタイル */
.check-text {
    position: relative;
    padding-left: 24px; /* チェックボックス(16px) + 空き(8px) */
    margin-bottom: 8px;
    display: flex;
    align-items: flex-start;
    margin-left: 0; /* マージンを0に設定 */
}

.check-text::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0; /* 左端からの位置を0に設定 */
    width: 16px;
    height: 24px;
    background-image: url('https://cdn.blog.st-hatena.com/files/8599973812344619031/6802418398375961607');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
/* NJ-62148 END */