/* 基本設定
================================================= */
html{
	font-size: 62.5%;
}
body{
	color: #000000;
	font-family: "Shippori Mincho B1", serif;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
p{
	text-align: justify;
	text-justify: inter-ideograph;
	word-break: break-all;
}

/* PC */
@media only screen and (min-width: 768px){
	h1{
		font-size: 3.6rem;
		font-weight: 600;
	}
	h2{
		font-size: 2.8rem;
		font-weight: 600;
	}
	h3{
		font-size: 2.2rem;
		font-weight: 600;
	}
	h4{
		font-size: 1.8rem;
		font-weight: 600;
	}
	h5{
		font-size: 1.6rem;
		font-weight: 600;
	}
	h6{
		font-size: 1.4rem;
		font-weight: 600;
	}
	p{
		font-size: 1.6rem;
		font-weight: 500;
	}
	caption{
		font-size: 1.3rem;
		font-weight: 500;
	}
	li{
		font-size: 1.6rem;
		font-weight: 500;
	}
	dt, dd{
		font-size: 1.6rem;
		font-weight: 500;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	input, textarea, select{
		font-family: inherit;
		font-size: 1.6rem;
		font-weight: 500;
	}
}

/* SP */
@media only screen and (max-width: 767px){
	h1{
		font-size: 2.8rem;
		font-weight: 600;
	}
	h2{
		font-size: 2.4rem;
		font-weight: 600;
	}
	h3{
		font-size: 2rem;
		font-weight: 600;
	}
	h4{
		font-size: 1.6rem;
		font-weight: 600;
	}
	h5{
		font-size: 1.4rem;
		font-weight: 600;
	}
	h6{
		font-size: 1.3rem;
		font-weight: 600;
	}
	p{
		font-size: 1.5rem;
		font-weight: 500;
	}
	caption{
		font-size: 1.2rem;
		font-weight: 500;
	}
	li{
		font-size: 1.5rem;
		font-weight: 500;
	}
	dt, dd{
		font-size: 1.5rem;
		font-weight: 500;
	}
	img {
		width: 100%;
		height: auto;
	}
	input, textarea, select{
		font-family: inherit;
		font-size: 1.6rem;
		font-weight: 500;
	}
}


/* width（メインコンテンツの横幅設定）
================================================= */
/* PC */
@media only screen and (min-width: 768px) {
	body {
		width: 100%;
		min-width: 1280px;
	}
	.contents_box-s {
		width: 56.25%;
		min-width: 1080px;
		margin: 0 auto;
	}
	
	.contents_box-m{
		width: 66.5%;  /* 1280px */
		min-width: 1080px;
		margin: 0 auto;
	}
	
	.contents_box-l{
		width: 87.5%;  /* 1680px */
		min-width: 1080px;
		margin: 0 auto;
	}
}

/* SP */
@media only screen and (max-width: 767px){
	.contents_box-s, .contents_box-m, .contents_box-l  {
		width: 90%;
		margin: 0 auto;
	}
}

/* パンくずリスト
================================================= */
/* PC */
@media only screen and (min-width: 768px) {
	.breadcrumb_contents .contents_box-s{
		padding: 15px;
		box-sizing: border-box;
	}
	.breadcrumb_contents .contents_box-s .breadcrumb_content{
		display: flex;
		align-items: center;
		gap: 0 5px;
	}
	.breadcrumb_contents .contents_box-s .breadcrumb_content span {
		display: inline-block;
		font-size: 1.2rem;
	}
}

/* SP */
@media only screen and (max-width: 767px){
    .breadcrumb_contents .contents_box-s{
        width: 95%;
        padding: 10px 0;
        box-sizing: border-box;
    }
    .breadcrumb_contents .contents_box-s .breadcrumb_content{
        display: flex;
        align-items: center;
        gap: 0 5px;
    }
    .breadcrumb_contents .contents_box-s .breadcrumb_content span {
        display: inline-block;
        font-size: 1.2rem;
    }
}

/* サムネイル（投稿）
================================================= */
.post_list_thumbnail{
	position: relative;
	overflow: hidden;
}

.post_list_thumbnail img{
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0;
	object-fit: cover;
	-o-object-fit: cover;
	object-position: center;
	-o-object-position: center;
	font-family: "object-fit: cover; object-position: center";
}

/* シングルページ（投稿）
================================================= */
/* 基本設定 */
.single_txt a{
	text-decoration: underline;
}
.single_txt em, .single_txt i{
	font-style: italic;
}
.single_txt strong, .single_txt b{
	font-weight: 900;
}
.single_txt pre, .single_txt code{
    text-align: justify;
    text-justify: inter-ideograph;
}
.single_txt u{
	text-decoration: underline;
}
.single_txt del{
	text-decoration: line-through;
}
.single_txt ol, .single_txt ul{
	padding-left: 20px;
}
.single_txt ol{
	list-style: decimal;
}
.single_txt ul{
	list-style: disc;
}
.single_txt blockquote{
	display: block;
    width: 100%;
    background: #efefef;
    padding: 15px;
    box-sizing: border-box;
}
.single_txt blockquote p{
	color: #555555;
	font-style: italic;
}
.single_txt blockquote p::before{
	content: "“";
}

.single_txt blockquote p::after{
	content: "”";
}

/* PC */
@media only screen and (min-width: 768px) {
	.single_txt .table_wrapper table{
		width: 100%;
		min-width: auto;
		border-collapse: collapse;
	}
	.single_txt .table_wrapper table th, .single_txt .table_wrapper table td{
		font-size: 1.6rem;
		font-weight: 600;
		padding: 10px 15px;
		box-sizing: border-box;
		border: 1px solid #cccccc;
	}
}

/* SP */
@media only screen and (max-width: 767px){
	.single_txt .table_wrapper table{
		width: 100%;
		min-width: auto;
		border-collapse: collapse;
	}
	.single_txt .table_wrapper table th, .single_txt .table_wrapper table td{
		font-size: 1.5rem;
		font-weight: 600;
		padding: 10px 15px;
		box-sizing: border-box;
		border: 1px solid #cccccc;
	}
}

/* ドロワーナビ（スマホのみ）
================================================= */
@media only screen and (min-width: 768px){
	.overlayMenu, .overlayMenuBtn{
		display: none;
	}
}

/* 非表示（端末別）
================================================= */
/* PC */
@media only screen and (min-width: 768px){
	.pc_none{
		display: none;
	}
}

/* SP */
@media only screen and (max-width: 767px){
	.sp_none{
		display: none;
	}
}

/* flex_box
================================================= */
.flex{
	display:flex;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:-o-flex;
	display:-ms-flexbox;
	-js-display:flex;
}

/* reCAPTCHA V3
================================================= */
.grecaptcha-badge {
    visibility: hidden; 
}