  
/* ------------------------------------------
									 RESET
------------------------------------------ */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
    font-family: "Noto Sans JP", sans-serif;
    font-weight:400;
    line-height:1.8;
}

:root {
	--text_main_color: #1a1a1a;
	--text_middle_color: #a6a6a6;
	--text_white_color: #ffffff;
	--main_color: #d75014;
	--bg_color: #ffffff;
	--middle_color: #f7f7f7;
	--line_color: #343434;
    --text_dark_orange_color:#e17a32;
    --light_orange_color:#fbede3;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
/* change colours to suit your needs */
ins {
	background-color: var(--main_color);
	color: var(--text_main_color);
	text-decoration: none;
}
/* change colours to suit your needs */
mark {
	background-color: var(--main_color);
	color: var(--text_main_color);
	font-style: italic;
	font-weight: bold;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid var(--line_color);
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
img {
	vertical-align: top;
	line-height: 0;
	font-size: 0;
}

/* ------------------------------------------
								COMMON STYLES
------------------------------------------ */
* {
	box-sizing: border-box;
}
body {
	background-color: var(--bg_color);
	font: 16px 'Lucida Grande', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	color: var(--text_main_color);
	line-height: 1.5;
}

a, a > * {
	transition: ease-in-out .2s;
}

a:link, a:visited {
	color: var(--text_main_color);
	text-decoration: none;
}

a:hover, a:active, a:hover > * {
	opacity: 0.8;
	text-decoration: none;
}




/* ------------------------------------------
									 HEADER
------------------------------------------ */
header {
	padding: 10px 0 0 0;
	position: fixed;
	width: 100%;
	z-index: 500;
	transition: all .3s ease-in-out;
	background-color: var(--bg_color);
  top:0;
  border-top: 3px solid #FFEFC3;
  border-bottom: 1px solid #DADCE0;
}


header .inner {
	width: 100%;
	max-width: 100%;
	min-width: 980px;
	margin: 0 auto; }

header h1 {
	width: 300px; }

header h1 img {
	width: auto;
	max-height: 56px;
 }

header .lede {
	margin: 20px 0 0;
	font-size: 14px;
	font-weight: normal; }

.naviwrap {
	margin: 0 auto;
	align-items: center;
    text-align: center; }

#globalnavi > div > ul {
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 1000px;
    /* min-width: 1000px; */
    margin: 0 auto;
}

#globalnavi > div > ul li {
	padding: 2px 20px;
    margin: 4px;
	position: relative;
	white-space: nowrap;
	cursor: pointer;
  border-right: 1px solid #DADCE0;
}
#globalnavi > div > ul li .catdepth-2{
  border-right:none;
}
#globalnavi > div > ul li ul{
  background-color: #f5f5f5;
}
#globalnavi > div > ul > li:last-child {
	margin-right: 0;
  border-right: 0;
}

#globalnavi > div > ul li a, #globalnavi > div > ul li span {
	font-weight: 500;
  font-size: 15px;
	position: relative;
    color:var(--text_main_color);}
	
	#globalnavi > div > ul li a:before {
		content: "";
		width: 0px;
		height: 4px;
		padding: 0px 0px;
		left: -5px;
		bottom: -6px;
		display: block;
		position: absolute;
		background-color: var(--main_color);
		z-index: -1;
		transition: ease-in-out 0.2s; }

#globalnavi > div > ul li a:hover:before {
	width: 100%;
	padding: 0px 4px; }

#responsive-menu-button {
	display: none; }
	
	/* dropdown */
.dropmenu {
	*zoom: 1;
}
.dropmenu:before, .dropmenu:after{
	content: "";
	display: table;
}
.dropmenu:after{
	clear: both;
}
.dropmenu > li > ul {
	position: absolute;
	z-index: 9999;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
}
.dropmenu > li > ul li {
	width: 100%;
}

#left-to-right li ul { 
	overflow: hidden;
	width: 0;
	transition: ease-in-out .2s;
	background-color: var(--bg_color);
	padding-bottom: 4px;
}

#left-to-right li.catdepth-base > ul {
	top: 34px;
  left: -14px;
}

#left-to-right li:hover ul {
	width: auto;
  height:45px;
}

#left-to-right li ul li {
	margin: 0;
}

#left-to-right li ul li a, #left-to-right li ul li span {
	font-weight: normal;
	line-height: 2.25;
  color: #000000 !important;
}
#left-to-right li ul li .nolink {
	color: var(--text_middle_color);
}

#globalnavi li ul .catdepth-2::before, #globalnavi li ul .catdepth-3::before  {
	content: "└";
	margin-right: 4px;
}

#globalnavi li ul .catdepth-2 ul {
	position: relative;
}

#globalnavi li ul .folder-label {
	color: var(--text_middle_color);
}

#globalnavi li ul .depth-2 {
	margin-left: 1rem;
}
#globalnavi li ul .depth-2:before {
	content: "└";
	margin-right: 4px;
}
.mt-navbar-brand a{
display:block;
}
.mt-navbar-brand a img{
  max-height:35px;
}
#navi-content{
  border-top: 1px solid #DADCE0;
   
  margin-top: 12px;
}
#globalnavi > div > ul li a::before{
  bottom: 2px;
  background-color:#FFEFC3;
  height: 6px;
}
#globalnavi > div > ul li a:hover{
  opacity:1;
}

/* ------------------------------------------
                 footer
------------------------------------------ */
footer {
    background: ;
    text-align: left;
}

footer .inner {
  margin-top: 40px;
border-top: 1px solid #DADCE0;
}
footer strong{
    font-weight: bold;
}
footer .footer_text_l{
    font-size: 1.1em;
    margin-bottom: 10px;
    display: block;
}
#footer-about {
    text-align: left;
    font-size: 0.875rem;
  margin: 0 auto;
}

#footer-about p {
    margin-top: 1em;
}
#footer-about .footer-about-logo-text{
  display: flex;
  padding: 20px;
  align-items: center;
}
#footer-about .footer-about-logo-text div{
   border-left: 1px solid #DADCE0;
  margin-left: 40px;
}
#footer-about .footer-about-logo-text p{
    margin:0;
    padding: 0 0 0 40px;
}
@media(max-width:768px) {
  #footer-about .footer-about-logo-text{
  display: block;
  width: 100%;
  padding: 20px;
}
#footer-about .footer-about-logo-text a {
    display: flex;
    justify-content: center;
  }
}
#footer-about .footer-about-logo-text img {
    width: 180px;
}

.footer-link {
  background-color: #f5f5f5;
  margin: 0 auto;
   
}

.footer-link ul {
    display: flex;
    justify-content: left;
    padding: 20px 0 0 0;
    flex-wrap: wrap;
}

.footer-link ul li {
    margin-right: 2em;
}

#footer-about .footer-about-logo-text,.footer-top-menu,.sv-menu {
      width: 90%;
    max-width: 1000px;
  margin: 0 auto;
}

.sv-menu .sv-menu-title {
    color: #666666;
    font-weight: 700;
    margin: 1em 0 0;
}

.sv-menu ul.sv-menu-list {
  padding: 8px 0 30px;
}
.sv-menu ul.sv-menu-list li a {
  color:#666666;
}
.footer-copyright {
  color: #fff;
  text-align: center;
    background: #333;
    font-size: 0.75rem;
    padding: 10px 0;
}



/* ------------------------------------------
									 LAYOUTS
------------------------------------------ */
#content {
	width: 90%;
	max-width: 1000px;
	min-width: 980px;
	margin: 0 auto;
	padding: 0 0 40px 0;
	text-align: left;
}
#main-wrapper {
	width: 100%;
	float: left;
	margin: 0 -300px 0 0;
}
#content main {
	display: block;
	margin-right: 360px;
	word-break: break-all;
}
#content aside {
	width: 300px;
	float: right;
	color: var(--text_main_color);
	padding: 0 0 28px ;
	word-break: break-all;
}
#content aside section {
	margin-bottom: 40px;
}
/* ------------------------------------------
									 PARTS
------------------------------------------ */

.entrylist__title {
	display: block;
	position: relative;
	margin-bottom: 10px;
	font-size: 22px;
  color:var(--text_main_color);
  border-bottom: 1px solid var(--main_color);
}

.entrylist article {
	position: relative; }

.entrylist article .category {
	padding: 4px 8px;
	background: var(--main_color);
	color: var(--text_white_color);
	font-size: 0.75rem;
	position: absolute;
	top: 0;
	z-index: 100;
    border-top-left-radius:10px;
    border-bottom-right-radius:10px;
}



.entry-detail{ 
  line-height: 1.4; /* 1行の高さに合わせて設定 */
  min-height: 4.2em; /* line-height * 行数 = 1.4em * 3 = 4.2em */
  
}

.entry-detail .entry-title {
    font-size:0.85em;
	transition: ease-in-out .2s;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3; 
  -webkit-box-orient: vertical;

}

.entrylist .entry-image {
	position: relative;
	z-index: -1;
}
.entrylist ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between
}
.entrylist li {
    border-bottom: 1px solid #DADCE0;
    padding: 10px;
    position: relative;
}

.entrylist li:nth-child(2n) {
	margin-right: 0;
}
    .page-navigation-next{
      text-align:right;
  }
.page-navigation-list-item{
  width: auto !important;
  margin: 10px;
  padding:0;
  border-bottom: 0 !important;
}
.page-navigation-list-item a{
  display:inline-block;
  border:1px solid var(--main_color);
  border-radius:4px;
  padding:2px 4px ;
  color: var(--main_color);
}
.entrylist li .entry-detail {
	word-break: break-all;
    width:100%;
}
.entrylist li .entry-image {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 0;
	overflow: hidden;
    width: 120px;
}
.entrylist li .entry-image .inner {
	position: relative;
}


.entrylist li .entry-detail .entry-meta {
	margin-bottom: 12px;
	font-size: 0.75rem;
}
.entrylist li .entry-detail .entry-author {
	display: flex;
	width: calc(100% - 108px);
}
.entrylist li .entry-detail .entry-author figure {
	width: 25px;
	height: 25px;
	border-radius: 50%;
	overflow: hidden;
	display: flex;
	justify-content: center;
}
.entrylist li .entry-detail .entry-author figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.entrylist li .entry-detail .entry-date {
	width: 100px;
	margin-left: 8px;
	text-align: right;
	color: var(--text_main_color);
}
.entrylist li .entry-detail .entry-title {
	color: var(--text_main_color);
	text-decoration: none;
    font-size: 1em;
    margin-left: 20px;
    font-weight: 500;
}
.article-advertise{
  display:none;
}

.entrylist #block-entries a,.entrylist #fav-entries a,.relation-entrylist a{
  display: flex;
}
.entrylist #block-entries li{
  border-bottom: 1px solid #DADCE0;
  padding:10px;
  position: relative;
}
.entrylist #block-entries li .entry-image{
  margin-bottom: 0;
}
/* hover */
.entrylist a .entry-image img {
	transition: transform 600ms;
    object-fit:cover;
    width:100%;
    height:auto;
    aspect-ratio: 1 / 1;
}
.entrylist a:hover .entry-image img {
	transform: scale(1.17);
	transition: transform 600ms cubic-bezier(0.345, 0.045, 0.355, 1);
}

time.new-icon{
    color: #666666;
    font-size: 80%;
    margin-left: 20px;
    display: flex;
    justify-content: right;
}
.text-icon{
  display:none;
  background-color: var(--main_color);
  color: #fff;
  padding: 0 6px;
  font-size: 0.8em;
  font-weight: bold;
  position: absolute;
  left:0;
  top:0;
}
.pickuparea {
	margin-bottom: 60px;
}

.pickup-entrylist__title {
	margin-bottom: 16px;
	font-size: 24px;
	font-weight: bold;
	position: relative;
	padding-left: 20px;
	clear: both;
}
.pickup-entrylist__title::before {
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 10px;
		background-color: var(--main_color);
		width: 12px;
		height: 12px;
}

.pickuparea.entrylist li {
	margin-bottom: 45px;
}

.page-navigation {
	width: 100%;
}

.page-navigation ul {
	display: flex;
	width: 100%;
	justify-content: center;
}

.page-navigation li {
	width: auto;
	display: inline-block;
	border-bottom: none;
}

.page-navigation li a {
	padding: 0 10px;
}

.page-navigation li a[rel="prev"]::before {
	content: "«";
	margin-right: 0.3em;
}

.page-navigation li a[rel="next"]::after {
	content: "»";
	margin-left: 0.3em;
}

.pagenation {
	text-align: center;
}
.pagenation ul li {
	display: inline-block;
}
.pagenation ul li a {
	padding: 0.7em 1em;
	border: solid 1px var(--line_color);
	border-radius: 3px;
	line-height: 1;
	text-decoration: none;
}
.pagenation ul li a:hover {
	background: var(--line_color);
}
.pagenation ul li a.active {
	background: var(--main_color);
	color: var(--text_white_color);
	font-weight: bold;
}
.pagenation ul li span {
	margin: 0 0.5em;
}
.pagenation ul li.next {
	margin-left: 1em;
}
.pagenation ul li.next a {
	padding: 0;
	font-weight: bold;
	border: none;
	color: var(--text_main_color);
}
.pagenation ul li.next a:hover {
	background: none;
	color: var(--middle_color);
}
.pagenation ul li.prev {
	margin-left: 1em;
}
.pagenation ul li.prev a {
	padding: 0;
	font-weight: bold;
	border: none;
	color: var(--text_main_color);
}
.pagenation ul li.prev a:hover {
	background: none;
	color: var(--middle_color);
}

aside h2 {
	font-size: 1.5rem;
	line-height: 1;
	margin-bottom: 20px;
	position: relative;
	font-weight: normal;
	display: block; }
	
/* memberlist */
.memberlist a div {
	transition: ease-in-out .2s;
}

.memberlist ul {
	display: flex;
	flex-wrap: wrap;
}
.memberlist ul li {
	width: 115px;
	margin: 20px 12px 0 0;
}

.memberlist ul li:nth-child(1), .memberlist ul li:nth-child(2) {
	margin-top: 0;
}
.memberlist ul li:nth-child(2n) {
	margin-right: 0;
}

.memberlist ul li figure {
	display: flex;
	justify-content: center;
	height: 115px;
	width: 115px;
	border-radius: 50%;
	position: relative;
	overflow: hidden;
	margin-bottom: 8px;
}

.memberlist ul li figure img {
	display: inline-block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.memberlist .memberlistList {
	width: 100%;
	margin: 0 0 0.5rem 0;
}
.memberlist .memberlistList:last-child {
	margin: 0;
}

.memberlist .memberlistList a {
	display: flex;
	align-items: center;
}

.memberlist .memberlistList figure {
	height: 40px;
	width: 40px;
	margin-bottom: 0;
	margin-right: 0.5rem;
}

.memberlist .memberlistList figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
}

.memberlist a .memberlist_owner {
	position: absolute;
	z-index: 100;
	background-color: var(--main_color);
	padding: 0;
	color: var(--text_white_color);
	font-size: 0.75rem;
	padding: 0 4px;
}

.memberlist .memberlist_name .title {
	font-size: 0.75em;
	color: var(--text_main_color);
}
.memberlist_name .name {
	font-weight: bold;
}

.memberlist .memberlistList .memberlist_name {
	width: calc(100% - 40px - 0.5em);
}

@media(max-width:768px) {
	.memberlist ul li {
		width: 100%;
		margin-top: 0px;
		text-align: center;
		margin-bottom: 16px;
	}

	.memberlist ul li:nth-child(2n) {
		margin-right: 12px;
	}
	.memberlist ul li:nth-child(3n) {
		margin-right: 0;
	}
	
	.memberlist .memberlistList ul li {
		margin: 0;
	}

	.memberlist ul li img {
		max-width: inherit;
	}

	.memberlist ul li figure {
		height: 200px;
		width: 200px;
		margin: 0 auto 8px;
	}
	.memberlist ul li figure img {
		height: auto;
		width: 100%;
	}
	
	.memberlist .memberlistList {
		width: 48%;
	}  
}

@media(max-width:480px) {
	.memberlist .memberlistList {
		width: 100%;
	}
}

.categorylist ul {
	margin: 12px 0 auto;
	list-style-type: none; }

.categorylist ul li {
	margin-bottom: 0.3em;
	margin: 0px 0px 12px 0px;
	font-weight: bold; }

.sidebar .group > ul > li {
	margin-bottom: 24px; }

	.categorylist ul li span {
		color: var(--text_middle_color);
		font-size: 14px;
		font-weight: normal;
		position: relative;
		margin-left: -2px; }

.side-entrylist ul li {
	margin-bottom: 12px;
	padding-bottom: 12px;
	min-height: 102px;
	border-bottom: solid 1px var(--line_color);
}
.side-entrylist ul li a {
	text-decoration: none;
	font-weight: bold;
}
.side-entrylist ul li a figure {
	position: relative;
	display: flex;
	justify-content: center;
	width: 90px;
	height: 90px;
	overflow: hidden;
	margin-right: 12px;
	float: left;
}

.side-entrylist ul li a figure img {
	transition: transform 600ms;
	width: 100%;
	height: auto;
	object-fit: cover;
}
.side-entrylist ul li a:hover figure img {
	transform: scale(1.17);
	transition: transform 600ms cubic-bezier(0.345, 0.045, 0.355, 1);
}

.side-entrylist ul li a figure span {
	position: absolute;
	top: 5px;
	left: 5px;
	z-index: 100;
}


.page-title {
	display: block;
	margin-bottom: 10px;
	font-size: 20px;
	color: var(--text_main_color);
    border-bottom: 1px solid var(--main_color);
}

/* ==========================================================================
   お悩み・目的から探す セクション
   ========================================================================== */

/* 全体コンテナ */
.search-container {
    max-width: 1000px;
    margin: 0 auto 50px auto;;
    text-align: center;
    box-sizing: border-box;
}

/* 子要素すべてにbox-sizingを適用 */
.search-container *, 
.search-container *::before, 
.search-container *::after {
    box-sizing: border-box;
}

/* 見出し（下部に薄い黄色のマーカー線） */
.search-container .search-title {
    font-size: 18px;
    font-weight: 500;
    display: inline-block;
    position: relative;
    margin: 0 0 20px 0;
    padding: 0;
    color: #333333;
    letter-spacing: 0.05em;
}
.search-container .search-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 2px;
    width: 100%;
    height: 8px;
    background-color: #FFF2CC;
    z-index: -1;
}

/* グリッド（カードの並びを管理する親要素） */
.search-container .search-grid {
    display: block;
    font-size: 0; /* inline-blockの間隔バグ防止 */
    margin: 0 -10px;
    padding: 0;
}

/* 各種ボタン（PC版：4列ベース） */
.search-container .search-card {
    display: inline-block;
    vertical-align: top;
    width: calc(30% - 20px);
    margin: 10px;
    height: 54px;
    background: #ffffff;
    border: 1.5px solid #D94600; /* テーマのオレンジ色 */
    border-radius: 10px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25);
    text-decoration: none;
    position: relative;
    padding: 0 35px 0 16px;
    transition: all 0.2s ease;
}


/* 文字を上下中央に収めるためのインナー */
.search-container .search-card-inner {
    display: table;
    width: 100%;
    height: 100%;
}
.search-container .search-card-text {
    display: table-cell;
    vertical-align: middle;
    font-size: 15px;
    font-weight: bold;
    color: #333333;
    letter-spacing: 0.02em;
}

/* 右端の矢印アイコン（＞） */
.search-container .search-card::after {
    content: "";
    position: absolute;
    right: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid #D94600;
    border-right: 2px solid #D94600;
    transform: translateY(-50%) rotate(45deg);
}

/* --------------------------------------------------------------------------
   お悩み・目的から探す セクションレスポンシブ
   -------------------------------------------------------------------------- */

/* タブレット・中画面（最大横幅 850px）: 3列並びに変化 */
@media screen and (max-width: 850px) {
.search-container .search-card {
        width: calc(33.333% - 20px);
    }
}

/* スマートフォン画面（最大横幅 600px）: 2列並びに変化 */
@media screen and (max-width: 600px) {
.search-container .search-title {
        font-size: 19px;
        margin-bottom: 25px;
    }
.search-container .search-grid {
        margin: 0 -8px;
    }
.search-container .search-card {
        width: calc(50% - 16px);
        margin: 8px;
        height: 50px;
        padding: 0 32px 0 12px;
        border-radius: 8px;
        text-align: left;
    }
.search-container .search-card-text {
        font-size: 13.5px;
    }
.search-container .search-card::after {
        right: 14px;
        width: 7px;
        height: 7px;
    }
}
/* ------------------------------------------
									 Entry
------------------------------------------ */
.entry .entry-title {
	margin-bottom: 15px;
	font-size: 28px;
    font-weight:700;
}
.entry .entry-meta {
	margin-bottom: 1rem;
	display: flex;
	justify-content: space-between;
}
.entry .entry-meta .entry-author {
	display: table;
}
.entry .entry-meta .entry-author figure {
	width: 50px;
	height: 50px;
	overflow: hidden;
	border-radius: 50%;
	vertical-align: middle;
	display: flex;
	justify-content: center;
}
.entry .entry-meta .entry-author figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.entry .entry-meta .entry-author p {
	display: table-cell;
	padding-left: 10px;
	vertical-align: middle;
}
.entry .entry-meta .entry-author p a {
	text-decoration: none;
}
.entry .entry-categories{
      margin-top: 2px;
}
.entry .entry-categories ul li {
	display: inline-block;
}
.entry .entry-categories ul li a {
	display: inline-block;
	padding: 0.2em 0.6em;
	margin-right: 0.2em;
	z-index: 100;
	border:1px solid #F4AB8A;
	color: #d75014;
	text-decoration: none;
	border-radius: 4px;
	font-size: 12px;
}

.entry .entry-meta .entry-date {
		padding-top: 12px;
		text-align: right;
		color: var(--text_main_color);
}

/* ------------------------------------------
				             テーマページ
------------------------------------------ */
.page--category .page-header h1 {
    /* 縦中央に綺麗に揃え、アイコンと文字を横並びにする */
    display: inline-flex;
    align-items: center;
    gap: 8px; /* アイコンと文字の間の隙間 */
    margin-bottom: 20px;
    font-size: 20px;
    color: var(--text_main_color);
}

/* 見出しの左側にアイコンを挿入する記述 */
.page--category .page-header h1::before {
    content: "";
    display: inline-block;
    
    /* 差し替えたMovableTypeの変数タグを使った画像パス */
    background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/icon_shokupin.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    
    /* アイコンの表示サイズ */
    width: 24px;
    height: 24px;
    
    /* 要素が縮まないように固定 */
    flex-shrink: 0;
}



.theme-recipe-list{
  margin-top: 30px;
}
#theme-recipe-entries .tagged-entry-list{
  justify-content: flex-start;
  margin-bottom: 40px;
}
#theme-recipe-entries .tagged-entry-list li{
  width: calc(35% - 16px);
  border-bottom: 0;
  margin-bottom: 20px;
}
#theme-recipe-entries .tagged-entry-list li figure{
  width:100%;
}
#theme-recipe-entries .tagged-entry-list li .entry-title{
  font-weight: bold;
  margin-top: 4px;
  line-height: 1.5;
}
#theme-recipe-entries .tagged-entry-list li .recipe-meta__text{
    font-size: 85%;
    line-height: 1.5;
    margin-top: 4px;
}
@media(max-width:768px) {
#theme-recipe-entries .tagged-entry-list li{
  width: calc(52% - 16px);
}
#theme-recipe-entries .tagged-entry-list li .entry-image {
  margin-bottom: 6px;
    }
}
@media(max-width:480px) {
  .page--category .page-header h1 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
}
#theme-recipe-entries .tagged-entry-list li{
  width: calc(54% - 16px);
}
  /* スマホ用 カテゴリタブナビゲーション */
.theme-nav {
    width: 100%;
    overflow-x: auto;            /* 横スクロールを許可 */
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch; /* iOSでのスクロールを滑らかにする */
    border-bottom: 2px solid #D94600; /* 全体の下を走るオレンジの太線 */
    background-color: #ffffff;
    margin-bottom: 20px;
}

/* スクロールバーを非表示にする（スッキリ見せるため） */
.theme-nav::-webkit-scrollbar {
    display: none;
}

.theme-nav ul {
    display: flex;               /* 横並びにする */
    white-space: nowrap;         /* 改行を防いで一直線にする */
    margin: 0;
    padding: 0 15px;             /* 左右に少し余白を作る */
    list-style: none;
}

.theme-nav li {
    display: inline-block;
    margin-right: 8px;           /* ボタン同士の間隔 */
}

.theme-nav li:last-child {
    margin-right: 15px;          /* 最後のボタンの右余白 */
}

/* 通常のボタン（白背景にオレンジ枠） */
.theme-nav li a {
    display: block;
    padding: 8px 16px;
    font-size: 15px;
    font-weight: bold;
    color: #D94600;              /* 文字色オレンジ */
    text-decoration: none;
    background-color: #ffffff;
    border: 1.5px solid #D94600; /* オレンジの枠線 */
    border-bottom: none;         /* 下の線と被るのを防ぐため、ボタンの下枠は消す */
    border-top-left-radius: 4px; /* 上だけ少し角丸 */
    border-top-right-radius: 4px;
}

/* --------------------------------------------------------------------------
   現在表示しているカテゴリ（アクティブ状態）の見た目
   ※もし現在地に「.current」などのクラスが付与される設計であれば以下が効きます
   -------------------------------------------------------------------------- */
.theme-nav.nopc li.current a,
.theme-nav.nopc li a:active {
    background-color: #D94600;   /* オレンジ背景 */
    color: #ffffff;              /* 白文字 */
}
}

/* ------------------------------------------
									 SNS
------------------------------------------ */

.entry-social-buttons {
	list-style:none;
	display: flex;
	flex-wrap:wrap;
	padding:0;
	margin: 0 0;
	margin-bottom: 40px;
}
.entry-social-buttons li {
	flex-grow: 1;
	display: block;
	height: 46px;
	line-height: 42px;
	min-width: 40px;
	text-align: center;
	margin-right: 8px;
	box-sizing: content-box;
}
.entry-social-buttons li:last-child {
	margin-right: 0;
}
.entry-social-buttons li a {
	font-size: 1.5rem;
	display:block;
	background-color: var(--bg_color);
	text-decoration: none;
	transition: ease-in-out .2s;
}

.entry-social-buttons li a i {
	transition: none;
}
.entry-social-buttons li a:hover i {
	opacity: 1;
}

.entry-social-buttons li a.icon-x-twitter {
	border: 2px solid #000000;
	color: #000000;
}
.entry-social-buttons li a.icon-x-twitter:hover {
	background-color: #000000;
	color: ;
	opacity: 1;
}

.entry-social-buttons li a.icon-facebook {
	border: 2px solid #3B5998;
	color: #3B5998;
}
.entry-social-buttons li a.icon-facebook:hover {
	background-color: #3B5998;
	color: var(--text_white_color);
	opacity: 1;
}

.entry-social-buttons li a.icon-hatebu {
	border: 2px solid  #008FDE;
	color: #008FDE;
}
.entry-social-buttons li a.icon-hatebu:before {
	content: "B!";
	font-family: Verdana;
	font-weight: bold;
}

.entry-social-buttons li a.icon-hatebu:hover {
	background-color: #008FDE;
	color: var(--text_white_color);
	opacity: 1;
}

.entry-social-buttons li a.icon-pocket {
	border: 2px solid #EB4654;
	color: #EB4654;
}
.entry-social-buttons li a.icon-pocket:hover {
	background-color: #EB4654;
	color: var(--text_white_color);
	opacity: 1;
}

.entry-social-buttons li a.icon-line {
	border: 2px solid #1dcd00;
	color: #1dcd00;
}
.entry-social-buttons li a.icon-line:hover  {
	background-color: #1dcd00;
	color: #ffffff;
	opacity: 1;
}

/* ------------------------------------------
									 wysiwyg
------------------------------------------ */

.wysiwyg {
	clear: both;
	margin-bottom: 70px;
    margin-top:30px;
}

.wysiwyg a:link, .wysiwyg a:visited {
	text-decoration: underline;
	color: var(--text_dark_orange_color);
	transition: ease-in-out .2s;
}

.wysiwyg ul {
	margin: 2em 0;
}
.wysiwyg ul li {
	padding-left: 2em;
	text-indent: -1em;
	list-style: none;
}

.wysiwyg ul li:before {
	content: "●";
	font-size: 6px;
	color: var(--main_color);
	top: -3px;
	margin-right: 6px;
	position: relative;
}

.wysiwyg ol {
	margin: 2em 0;
  list-style: none;
  counter-reset: ol_li;
}

.wysiwyg ol li {
	padding-left: 2em;
	margin-right: 1em;
	text-indent: -1em;
	list-style: none;
}

.wysiwyg ol.alphabet li {
	list-style-type: upper-alpha;
}

.wysiwyg ol li:before{
  counter-increment: ol_li; /* ol_li カウンタの値に1加える */
  content: counter(ol_li) ". "; /* before擬似要素のcontentで出力 */
  color: var(--text_dark_orange_color);
}

.wysiwyg ol.alphabet-small li {
	list-style-type: lower-latin;
}

.wysiwyg ol.hiragana li {
	list-style-type: hiragana;
}

.wysiwyg dl {
	margin: 1em;
}
.wysiwyg dl dt {
	margin-bottom: 0.5em;
	font-weight: bold;
}
.wysiwyg dl dd {
	margin: 0 0 1em 2em;
}

/* tips */
.wysiwyg dl.tips {
	margin: 2em 0;
	padding: 1em;
	position: relative;
	border: var(--line_color) 1px solid;
}

.wysiwyg dl.tips dt {
	display: inline-block;
	margin-bottom: 0;
	top: -28px;
	left: -12px;
	padding: 0 8px;
	background-color: var(--bg_color);
	position: relative;
	font-weight: bold;
}

.wysiwyg dl.tips dd {
	display: block;
	margin: -16px 0 0 0;
}

.wysiwyg dl.tips dd *:last-child {
	margin-bottom: 0;
}

/* table */
.wysiwyg table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 2em;
    border: 1px solid #ccc;
}

.wysiwyg table th, .wysiwyg table td {
	padding: 10px;
	text-align: left;
    border: 1px solid #d9d9d9;
}
.wysiwyg table td span {
    line-height: 1.5;
}
.wysiwyg table th {
	background-color: var(--middle_color);
	color: var(--white_text_color);
	border-bottom: 1px solid var(--white_text_color);
	border-right: 1px solid var(--white_text_color);
}

.wysiwyg table thead tr td {
  background-color: var(--light_orange_color) !important;
}
.wysiwyg table thead tr td span{
    font-weight: bold!important;
}

.wysiwyg table tr:nth-child(odd){
	background-color: var(--middle_color);
}
.wysiwyg table tr:nth-child(odd) td {
	border-bottom: 1px solid var(--white_text_color);
	border-right: 1px solid var(--white_text_color);
}

.wysiwyg h1 {
	margin-bottom: 15px;
	font-size: 38px;
	font-weight: bold;
	clear: both;
}

.wysiwyg h1::before {
	content: "";
	display: inline-block;
	width: 8px;
	margin-right: 8px;
	height: 38px;
	background-color: var(--text_middle_color);
}

.wysiwyg h2 {
    margin-top:5rem;
	margin-bottom: 2rem;
	font-size: 24px;
	font-weight: bold;
	clear: both;
  border-left: 6px solid var(--main_color);
  padding-left: 16px;
  line-height: 1.5;
}

.wysiwyg h3 {
	font-size: 20px;
	font-weight: 700;
    margin-bottom: 1rem;
}

.wysiwyg h4 {
	font-size: 18px;
	font-weight: 700;
    margin-bottom: 1rem;
}


.wysiwyg h5 {
	font-size: 16px;
	font-weight: bold;
	color:#585858;
    margin-bottom:1rem;
}
.wysiwyg h6 {
	margin-bottom: 12px;
	font-size: 16px;
	font-weight: bold;
}

.wysiwyg p {
	margin-bottom: 30px;
	word-break: break-all;
}

.wysiwyg strong {
	background:linear-gradient(transparent 60%, var( --light_orange_color) 60%);
    font-weight:700;
}

.wysiwyg pre {
	margin-bottom: 30px;
}

.wysiwyg img {
	display: inline-block;
	margin-top: 15px;
	max-width: 100%;
	height: auto;
}

.wysiwyg .imgflex {
	display: flex;
	margin-bottom: 30px;
	flex-wrap: wrap;
	align-items: flex-start;
}

.wysiwyg .imgflex img {
	display: block;
	margin-right: 12px;
}
.wysiwyg .imgflex img:last-child {
margin-right: 0;
}
.wysiwyg button {
	color: var(--white_text_color);
	text-align: center;
	font-size: 1rem;
	background-color: var(--middle_color);
	border-color: var(--middle_color);
	display: inline-block;
	margin-bottom: 30px;
	padding: 0.5rem 1rem;
	line-height: 1.5;
	border-radius: 4px;
	cursor: pointer;
	transition: color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,box-shadow .2s ease-in-out;
}
.wysiwyg button:hover {
		background-color: var(--text_main_color);
		border-color: var(--text_main_color);
		text-decoration: none;
}

.wysiwyg button.cv {
	width: 60%;
	color: var(--white_text_color);
	background-color: var(--main_color);
	border-color: var(--main_color);
	display: block;
	border-radius: 8px;
	white-space: nowrap;
	vertical-align: middle;
	border: 1px solid transparent;
	margin: 0 auto;
	padding: 1rem 2rem;
}
.wysiwyg button.cv:hover {
		text-decoration: none;
		opacity: 0.7;
}

.wysiwyg button.cv_small {
	color: var(--white_text_color);
	background-color: var(--main_color);
	border-color: var(--main_color);
	display: block;
	border-radius: 8px;
	white-space: nowrap;
	vertical-align: middle;
	border: 1px solid transparent;
	margin: 0 auto;
	padding: 1rem 2rem;
	line-height: 1.5;
}
.wysiwyg button.cv_small:hover {
		text-decoration: none;
		opacity: 0.7;
}

.wysiwyg figure {
	width: fit-content;
	margin: 0 auto 30px;
}

.wysiwyg figcaption {
	font-size: 14px;
	margin-top: 0px;
	margin-bottom: 30px;
	padding: 8px;
	line-height: 14px;
	background-color: var(--middle_color);
}

.wysiwyg blockquote {
	position: relative;
	padding: 35px 45px;
	margin-bottom: 30px;
	background: var(--middle_color);
}
.wysiwyg blockquote:before {
	content: "";
	position: absolute;
	width: 22px;
	height: 20px;
	top: 16px;
	left: 16px;
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/quote.svg);
	background-size: contain;
	vertical-align: middle;
}
.wysiwyg blockquote:after {
	content: "";
	position: absolute;
	width: 22px;
	height: 20px;
	bottom: 16px;
	right: 16px;
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/quote_end.svg);
	background-size: contain;
	vertical-align: middle;
}

.wysiwyg blockquote footer {
	background-color: inherit;
	color: var(--text_main_color);
	border-top: 1px solid var(--line_color);
	padding-top: 16px;
}

.wysiwyg .conversation {
	width: 100%;
	margin: 0 auto;
}
.wysiwyg .conversation dt {
	float: right;
}
.wysiwyg .conversation dt.moderator {
	float: left;
}
.wysiwyg .userpic {
	width: 74px;
	height: auto;
}
.wysiwyg .userpic img {
	margin-top: 0;
	width: 72px;
	height: 72px;
	border-radius: 50%;
	box-shadow: 2px 2px 0px rgba(0, 0, 0, 0.2);
}
.wysiwyg .userpic .name {
	font-size: 0.75rem;
	margin-top: 8px;
	text-align: center;
}

.wysiwyg .speaker01, .wysiwyg .speaker02, .wysiwyg .speaker03, .wysiwyg .speaker04 {
	font-weight: bold;
	margin-right: 0.25rem;
}
.wysiwyg .speaker01:before, .wysiwyg .speaker02:before, .wysiwyg .speaker03:before, .wysiwyg .speaker04:before {
	content: "\f007";
	font-family: "Font Awesome 5 Free";
	margin-right: 2px;
	font-weight: 900;
}

.wysiwyg .speaker01:before {
	color: #3DC7BE;
}
.wysiwyg .speaker02:before {
	color: #F7B760;
}
.wysiwyg .speaker03:before {
	color: #ffaacc;
}
.wysiwyg .speaker04:before {
	color: #5fc6f1;
}

.wysiwyg .speaker01:after, .wysiwyg .speaker02:after, .wysiwyg .speaker03:after, .wysiwyg .speaker04:after {
	content: "：";
	margin-left: 0.25rem;
}

.wysiwyg .conversation dd {
	position: relative;
	padding: 1em;
	margin: 0px 96px 1em 0px;
	background-color: var(--middle_color);
	border-radius: 8px;
}
.wysiwyg .conversation .moderator + dd {
	margin: 0px 0px 1em 96px;
	background-color: #dcf7f5;
}
.wysiwyg .conversation dd:after {
	content: "";
	position: absolute;
	right: -15px;
	top: 20px;
	width: 0px;
	height: 0px;
	border-top: 15px solid var(--middle_color);
	border-right: 15px solid transparent;
}
.wysiwyg .conversation .moderator + dd:after {
	left: -15px;
	border-top: 15px solid #dcf7f5;
	border-right: 0px none;
	border-left: 15px solid transparent;
}
.wysiwyg .conversation dd p {
	margin: 0.5em 0px;
}
.wysiwyg hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid var(--line_color);
	margin: 1em 0;
	padding: 0;
}

@media(max-width:768px) {
	.wysiwyg .userpic {
		width: 54px;
		height: auto;
	}
	.wysiwyg .userpic img {
		margin-top: 0;
		width: 52px;
		height: 52px;
	}
	.wysiwyg .userpic .name {
		font-size: 10px;
	}

	.wysiwyg .conversation dd {
		margin: 0px 76px 1em 0px;
		padding: 0.5em 1em;
	}
	.wysiwyg .conversation .moderator + dd {
		margin: 0px 0px 1em 76px;
	}
	.wysiwyg button.cv {
		width: 100%;
	}
}

.entry-author-detail {
   border:3px solid #F9E7ED;
  border-radius:10px;
  padding:10px;
  	font-size: 0.9rem;
  
}


.entry-author-detail-body{
 display:flex;
 color: #585858;
 justify-content: space-between;
 flex-direction: row;
 align-content: center;
 align-items: center;
}

.entry-author-detail h3 {
    color:#DA6286;
}

.page-title + .entry-author-detail::before {
	display: none;
}



.entry-author-detail a {
	color: #585858;
	text-decoration: none;
	transition: ease-in-out .2s;
}

.entry-author-detail-body figure {
	width: 50px;
	height: 50px;
	float: left;
	border-radius: 50%;
	position: relative;
	overflow: hidden;
	display: flex;
	justify-content: center;
}
.entry-author-detail-body figure img {
	width: 100%;
	height: auto;
	object-fit: cover;
	margin-top: 0;
}
.entry-author-detail-body .entry-author-detail-body-text .title {
	color:#585858;
}
.entry-author-detail-body .entry-author-detail-body-text .name {
	color:#585858;
}


.entry-navi {
	display: flex;
	justify-content: space-between;
}
.entry-navi .header {
	margin-bottom: 0.5rem;
	font-weight: bold;
}
.entry-navi .title {
	font-size: 0.75rem;
}

.entry-navi .entry-navi-prev {
	flex: 1;
	display: flex;
	margin-right: 8px;
}

.entry-navi .entry-navi-next {
	flex: 1;
	display: flex;
	margin-left: 8px;
}

.entry-navi .entry-navi-next a, .entry-navi .entry-navi-prev a {
	border: 1px solid #DADCE0;
    border-radius: 8px;
    padding: 16px;
	width: 100%;
	display: block;
}

.entry-navi .entry-navi-next .header, .entry-navi .entry-navi-next .title {
	text-align: right;
}
.entry-navi .entry-navi-next a .header i {
	margin-left: 0.5em;
}
.entry-navi .entry-navi-prev a .header i {
	margin-right: 0.5em;
}

.follow-action {
	clear: both;
	margin-top: 30px;
	margin-bottom: 30px;
}
.follow-action ul li {
	width: 100%;
	margin-bottom: 8px;
	display: block;
}
.follow-action ul li a {
	width: 100%;
	display: block;
	background-color: #ffffff;
	text-decoration: none;
	transition: ease-in-out .2s;
	padding: 12px 12px;
	text-decoration: none;
}

.follow-action ul li a i {
	margin-right: 6px;
	font-size: 1.25rem;
	top: 2px;
	position: relative;
	transition: none;
}
.follow-action ul li a:hover i {
	opacity: 1;
}

.follow-action ul li.facebook a {
	border: solid 2px #3B579E;
	color: #3B579E;
}
.follow-action ul li.facebook a:hover {
	background-color: #3B579E;
	color: #ffffff;
	opacity: 1;
}

.follow-action ul li.x-twitter a {
	border: solid 2px #000000;
	color: #000000;
}
.follow-action ul li.x-twitter a:hover {
	background-color: #000000;
	color: #ffffff;
	opacity: 1;
}

.follow-action ul li.feedly a {
	border: solid 2px #89C131;
	color: #89C131;
}
.follow-action ul li.feedly a:hover  {
	background-color: #89C131;
	color: #ffffff;
	opacity: 1;
}

.follow-action ul li.feedly .fa-feedly::before {
	content: "";
	display: block;
	width: 22px;
	height: 22px;
	background: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/follow-feedly.png) no-repeat;
	background-size: auto 22px;
}
.follow-action ul li.feedly a:hover .fa-feedly::before {
	background: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/follow-feedly-w.png) no-repeat;
	background-size: auto 20px;
}


.relation-entrylist h3 {
	font-size: 1.25rem;
	margin-bottom: 15px;
  color:var(--text_main_color);
  font-weight: 500;
}


.relation-entrylist .entry-image {
	position: relative;
	z-index: -1;
}


.relation-entrylist ul {
    list-style: none;
	margin: 0 0 60px 0;
}



.relation-entrylist h2 {
	margin-bottom: 20px;
	font-size: 1.25rem;
}

.relation-entrylist article {
	position: relative; }

.relation-entrylist article .category {
	padding: 4px 8px;
	background: var(--main_color);
	color: var(--text_white_color);
	font-size: 0.75rem;
	position: absolute;
	top: 0;
	z-index: 100; }
.relation-entrylist li {
  padding: 10px 0;
}
.relation-entrylist li:last-child
{
  border-bottom: 1px solid #DADCE0;
}
.relation-entrylist li .entry-image {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 0 !important;
	overflow: hidden;
}
.relation-entrylist li .entry-image .inner {
	position: relative;
}
.relation-entrylist li .entry-image .inner:before {
		content: '';
		display: block;
		padding-top: 52%;
		box-sizing: inherit;
}

.relation-entrylist li .entry-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.relation-entrylist li .entry-detail .entry-meta {
	margin-bottom: 12px;
	font-size: 0.75rem;
}
.relation-entrylist li .entry-detail .entry-date {
	font-size: 0.75rem;
	width: 100%;
	text-align: left;
	float: none;
	color: var(--text_main_color);
	padding: 0;
	margin-bottom: 12px;
}

.relation-entrylist li .entry-detail .entry-title {
	color: var(--text_main_color);
	text-decoration: none;
}

.relation-entrylist li .entry-title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	transition: ease-in-out .2s;
}

/* hover */
.relation-entrylist a .entry-image img {
	transition: transform 600ms;
}
.relation-entrylist a:hover .entry-image img {
	transform: scale(1.17);
	transition: transform 600ms cubic-bezier(0.345, 0.045, 0.355, 1);
}




/* ------------------------------------------
									form
------------------------------------------ */
.wysiwyg iframe {
	font-size: 16px !important;
}

/* ------------------------------------------
									ClearFix
------------------------------------------ */
.clearfix, .conversation {
	zoom: 1;
	overflow: hidden;
}
.clearfix:after, .conversation:after {
	content: "";
	display: block;
	clear: both;
}
/* ------------------------------------------
							 for Small PC
------------------------------------------ */
@media(max-width:1100px) {
	#content {
		padding-left: 1em;
		padding-right: 1em;
	}

	header .inner {
		width: 100%;
		max-width: 100%;
	}

	header .inner .naviwrap {
		display: block;
	}

	header .inner .naviwrap h1 {
		height: auto;
		text-align: center;
		margin: 0 auto;
	}
	header .lede {
		text-align: center;
	}

	header h2 {
		display: none;
	}
	#globalnavi {
		margin-top: 20px;
	}
	
	#globalnavi > div > ul li a {
		font-size: 100%;
	}

	#content main {
		margin-right: 320px;
	}
	.entrylist li {
		width: 46%;
	}
	.entrylist li .entry-image {
		margin-bottom: 12px;
		overflow: hidden;
}
  .entrylist__title{
    display: block;
    position: relative;
    margin-bottom: 10px;
    font-size: 20px;
    color: var(--text_main_color);
    font-weight: 500;
  }
  
	.page-navigation li{
		width: auto;
	}
.page-navigation li a {
    padding: 6px 16px;
}
footer .inner {
	width: 100%;
	max-width: 100%;
	min-width: 300px;
	margin: 0 auto;
	padding: 0;
}

  #footer-about .footer-about-logo-text p{
    padding: 0 0 0 20px;
  }
}

/* ------------------------------------------
								 for tablet
------------------------------------------ */
@media(max-width:768px) {

  /* ------ header ----- */
	header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 70px;
		padding: 14px 0px;
		z-index: 1000;
		background-color: var(--bg_color);
	}
	/* ヘッダーの inner に左右の余白を設定 */
	header .inner {
		padding-left: 12px; 
		padding-right: 12px;
        min-width: 100%; 
	}

	/* naviwrap を flexbox に戻し、ロゴとボタンの配置を制御 */
	header .inner .naviwrap {
		display: flex;
		justify-content: space-between; /* ロゴとボタンを左右に配置 */
		align-items: center;
		height: 100%;
        width: 100%;
	}
	
	/* ロゴ（h1）の幅と余白を修正し、ボタンと重ならないように右側に余白を確保 */
	header .inner .naviwrap h1 {
		min-width: inherit;
		width: auto; /* コンテンツの幅に合わせる */
		margin: 0; /* 不要な余白を削除 */
		padding-right: 48px; /* ボタン（40px）と余白を考慮してロゴの右にパディングを追加 */
		text-align: left;
	}

	header #globalnavi {
		margin-top: 0;
	}
	
	/* ハンバーガーボタンの位置を flexbox で制御するため position: static に戻す */
	#responsive-menu-button {
		position: relative; 
		top: auto;
		right: auto;
		display: block;
		width: 40px;
		height: 40px;
		background: var(--text_white_color) url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/btn_menu_open.svg) no-repeat 0px 2px;
		background-size: 30px 38px;
		cursor: pointer;
	}

	.responsive-btn-active {
		background: var(--text_white_color) url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/btn_menu_close.svg) no-repeat 0px 2px !important;
		background-size: 30px 38px !important;
	}
	header .lede {
		display: none;
	}

	#globalnavi {
		display: none;
		position: absolute;
		top: 70px;
		left: 0;
		width: 100%;
		text-align: left;
		z-index: 1000;
	}
	
	/* メニューコンテンツの高さ計算をヘッダーの高さ（80px）に合わせて修正 */
	#navi-content {
		height: -webkit-calc(100vh - 70px);
		height: calc(100vh - 70px);
		overflow: auto;
      border-top: 1px solid #DADCE0;
      border-bottom: 1px solid #DADCE0;
	}
	
	#globalnavi > div > ul {
		display: block;
	}

	#globalnavi > div > ul li {
		height: auto;
		line-height: normal;
		padding: 0 0;
		border: 0px;
		display: block;
		margin: 0px 0px 0px 0;
	}
	#globalnavi > div > ul li:first-child {
		border: 0px;
	}

	#globalnavi > div > ul li a, #globalnavi > div > ul li span  {
		display: block;
		padding: 0.7em;
		background: #ffffff;
		border-bottom:1px solid #d75014;
        color:#d75014;
	}
  #globalnavi > div > ul li:last-child a, #globalnavi > div > ul li:last-child{
  box-shadow:0px 3px 5px 0px #6868683d;

  }

	
	#left-to-right li ul {
		width: 100%;
		overflow: auto;
		position: relative;
		background-color: transparent;
		padding-bottom: 0;
	}
	
	#left-to-right li.catdepth-base > ul {
		top: auto;
	}
  #left-to-right li:hover ul{
  width:100%;
  }
	
	#globalnavi li ul .catdepth-2, #globalnavi li ul .catdepth-3, #globalnavi li ul .depth-2 {
		margin-left: 0;
	}

	#left-to-right li ul li a {
		line-height: inherit;
	}
  #left-to-right a:hover,#left-to-right a:active{
    opacity:1.0;
  }
	
	#globalnavi .folder-label {
		background-color: var(--middle_color);
		line-height: inherit;
	}
	
	#globalnavi li ul .depth-2:before, #globalnavi li ul .catdepth-2::before, #globalnavi li ul .catdepth-3::before {
		display: none;
	}
  /* ------ header/end ----- */

	img {
		max-width: 100%;
		height:100%;
	}

	#content {
		width: 100%;
		max-width: 100%;
		min-width: 300px;
		padding: 0;
		text-align: left;
	}
	#main-wrapper {
		width: 100%;
		float: none;
		margin: 0 0 0 0;
	}
	#content main {
		margin-right: 0;
		margin-bottom: 50px;
		padding: 0 1em;
	}
	#content aside {
		width: 100%;
		float: none;
		padding: 0 1em 1em;
		border-right: 0px;
		border-left: 0px;
	}

	.entrylist ul {
	  display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      justify-content: space-between;
	}

	.entrylist li {
		width: 100%;
		height: auto;
	}
  
  .page-navigation {
    margin-bottom: 30px;
  }
	
	.page-navigation ul {
		display: flex;
      justify-content: center;
	}
	.page-navigation li{
		width: auto;
	}
	.entrylist article .category {
		width: auto;
	}

	.relation-entrylist::before {
		display: none;
	}

	.relation-entrylist ul {
		display: block;
	}
	.relation-entrylist ul li {
		width: 100%;
		margin: 0;
        border-top: 0;
	}

	.relation-entrylist ul li a .detail .excerpt {
		display: none;
	}

	.relation-entrylist article .category {
		width: auto;
		font-size: 1rem;
	}
 .relation-entrylist .entry-title{
   margin-bottom:0;
  }
 .entrylist .fav-entries li {
    border-bottom: 1px solid #DADCE0;
    padding: 10px;
    position: relative;
  }
  .entrylist .fav-entries li .entry-image{
   margin-bottom: 0;
  }
  .cb-buttons{
        min-width: 120px;
  }
    #footer-about .footer-about-logo-text div{
    margin-left: 0;
      border-left:0;
  }
    #footer-about .footer-about-logo-text p{
    padding: 0;
  }
  #footer-about .footer-about-logo-text{
    width: 100%;
  }
  #footer-about .footer-about-logo-text a{
  margin: 20px;
  }
  footer .footer_text_l {
    text-align: center;
}
}
/* ------------------------------------------
								 for sp
------------------------------------------ */
@media(max-width:480px) {
	body {
		padding-top: 70px;
	}
  #footer-about .footer-about-logo-text div{
    border-left:0;
    margin-left: 0;
    padding: 20px 0 0 0;
  }
  
	.entrybox-large .entry-image {
		display: block;
		position: relative;
		width: 100%;
		float: none;
		margin-bottom: 15px;
	}
	.entrybox-large .entry-detail {
		width: 100%;
		float: none;
		padding-left: 0;
	}
	.entrybox-large .entry-detail .entry-meta {
		margin-bottom: 15px;
	}
	.pagenation ul li {
		margin-bottom: 2em;
	}
	.entry-author {
		font-size: 0.75rem;
	}
	.entry .entry-title {
		font-size: 20px;
	}
	.entrylist li:last-of-type {
		margin-bottom: 0;
	}


.article-advertise{
  display:block;
  margin:0 auto 40px;
}

	.footer-navi > ul {
		display: block;
		border-top: 1px solid var(--line_color);
		border-bottom: 1px solid var(--line_color);
		padding: 20px;
	}

	.footer-navi > ul > li {
		padding: 0 0;
		border: none;
	}

	.wysiwyg h2 {
		font-size: 20px;
	}
	.wysiwyg h3 {
		font-size: 18px;
		font-weight: 700;
	}
	.wysiwyg h4 {
		font-size: 18px;
		font-weight: 700;
	}
	.wysiwyg h5 {
		font-weight: 700;
	}
	.wysiwyg blockquote {
		padding: 28px 28px;
	}
	.wysiwyg blockquote::before {
		width: 16px;
		height: 14px;
		top: 12px;
		left: 12px;
	}
	.wysiwyg blockquote::after {
		width: 16px;
		height: 14px;
		bottom: 12px;
		right: 12px;
	}


	.search-form .search-text {
		width: 250px;
	}
}
#page-top {
	position: fixed;
	right: 16px;
	bottom: 16px;
}
#page-top a {
	text-decoration: none;
}


/* サブカテゴリー対応 */
.categorylist .catdepth-2 {
	position: relative;
	margin-left: 1rem;
}

.categorylist .catdepth-2 .nolink {
	color: var(--text_middle_color);
	display: inline;
}

.categorylist .catdepth-2::before {
	content: "└";
	position: relative;
	left: -1rem;
	margin-right: -0.5rem;
}

.categorylist .catdepth-3 {
	position: relative;
	margin-left: 1rem;
}

.categorylist .catdepth-3 .nolink {
	color: var(--text_middle_color);
	display: inline;
}

.categorylist .catdepth-3::before {
	content: "└";
	position: relative;
	left: -1rem;
	margin-right: -0.5rem;
}

/* ------------------------------------------
						Search
------------------------------------------ */
.mt-site-search-form {
	max-width: 100%;
	display: flex;
	position: relative;
}

@media only screen and (min-width: 64.063em) {
	.mt-site-search-form {
		max-width: 300px;
	}
}

.mt-site-search-form__query {
	position: relative;
	display: block;
	width: 100%;
	height: 32px;
	font-size: 16px;
	box-sizing: inherit;
	padding: 0 40px 0 8px;
	border: 1px solid var(--line_color);
	border-radius: 4px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

::placeholder {
	color: var(--text_middle_color);
}

.mt-site-search-form__button {
	position: absolute;
	top: 0;
	right: 0;
	overflow: hidden;
	width: 42px;
	height: 32px;
	display: block;
	padding: 0;
	border: none;
	text-indent: 100%;
	white-space: nowrap;
	background: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/search.svg) 50% no-repeat;
	-webkit-background-size: 18px 18px;
	background-size: 18px;
	cursor: pointer;
}

.mt-site-search-form__button:focus {
	border: 0;
	outline: 0;
}

.entrylist .mt-site-search-result-container .mt-site-search-pagination-item {
	width: auto;
	float: none;
	margin: 0 0;
}

@media(max-width:480px) {
	.mt-site-search-form__query, .mt-site-search-form__button {
		height: 46px;
	}
}
/*-------------
	webpush
-------------*/
.webpush {
display: none;
}

.mtnet-push-notification-service-enabled .webpush {
	display: block;
}

.side-webpush {
	max-width: 100%;
	margin: 0 auto 40px;
	display: block;
	text-align: center;
	padding: 0.5em;
	border-radius: 6px;
	background-color: var(--main_color);
	color: var(--text_white_color) ;
}

a .side-webpush:hover {
	background: var(--main_color);
}

.side-webpush__txt {
	text-align: center;
}

.side-webpush__txt::before {
	content: "\f0f3";
	margin-right: 0.25rem;
	font-size: 1.25em;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
}

/* test */

:root {
	--main-gutter: 30px;
}
.box {
	background: #0bd;
	width: 300px;
	height: 100px;
	margin: var(--main-gutter);
}


/* ------------------------------------------
									 SWIPER
------------------------------------------ */
.swiper__title {
	display: block;
	position: relative;
	margin-top: -8px;
	margin-bottom: 8px;
	font-size: 24px;
	font-weight: normal;
	text-align: center;
}
.swiper__title::before {
	content: "";
	transform: rotate(-45deg);
	display: inline-block;
	width: 1px;
	position: relative;
	top: 4px;
	left: -10px;
	height: 26px;
	background-color: var(--text_main_color);
}
.swiper__title::after {
	content: "";
	transform: rotate(45deg);
	display: inline-block;
	width: 1px;
	position: relative;
	top: 4px;
	left: 10px;
	height: 26px;
	background-color: var(--text_main_color);
}
.swiper-slide a:hover swiper__entry{
  opacity: 1;
}
.swiper-slide .category{
	padding: 4px 8px;
	color: var(--main_color);
	border: 1px solid #F4AB8A;
	font-size: 0.75rem;
    border-radius : 4px;
  background-color: #fff;
  line-height: 1;
  display: inline-block;
}
.swiper__title strong {
	position: relative;
}
.swiper__title strong::before {
	background-color: var(--middle_color);
	width: 100%;
	height: 6px;
	content: "";
	display: block;
	position: absolute;
	z-index: -2;
	left: 0;
	bottom: 0px;
}

.swiperWrap {
	margin-bottom: 60px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25);
}

.swiper-slide__imgWrap {
	max-width: 680px;
	width: 100%;
	margin: 0 auto;
	max-height: 360px;
	height: auto;
	display: flex;
	overflow: hidden;
	justify-content: center;
	align-items: center;
}

.swiper__img {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 0;
}

a .swiper__img  {
	transition: ease-in-out .2s;
}
.swiper__entryWrap{
  padding:20px;
  display:flex;
}
.swiper__entryWrap figure{
}
.swiper__entryWrap figure img{
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 50%;
    display: block;
}
.swiper__entry {
	bottom: 0px;
	padding: 0;
	z-index: 100;
    position: absolute;
     background: rgba(255, 255, 255, 0.9);
    width:100%;
    height: 140px;
}

.swiper__entryDate {
	font-size: 0.75em;
	margin-bottom: 0.5em;
	color: var(--text_main_color);
}

.swiper__entryTitle {
	padding: 0 0 0 20px;
    font-size: 20px;
    line-height: 1.5;
}
.swiper__category_box{
  padding: 0 0 0 20px;
}

/* ページネーションボタン（前後スライドへのナビゲーションボタン）の位置調整 */
.swiper-container .swiper-button-prev,
.swiper-container .swiper-button-next {
    /* 修正前: top: calc(50% - 71px); */
    /* topを50%に戻し、margin-topでボタンの高さの半分を上にずらすことで中央に配置 */
    top: 50%;
    margin-top: -20px; /* ボタンの高さ36pxの半分 */
    width: 31px;
    height: 54px;
}

.swiper-container .swiper-button-prev {
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/swiper-button-prev_on.svg);
	-webkit-background-size: 31px 54px;
	background-size: 31px 54px;
}
.swiper-button-prev.swiper-button-disabled {
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/swiper-button-next_off.svg);
	-webkit-background-size: 31px 54px;
	background-size: 31px 54px;
    cursor: auto;
    pointer-events: none;
}
.swiper-container .swiper-button-next {
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/swiper-button-next_on.svg);
	-webkit-background-size: 31px 54px;
	background-size: 31px 54px;
}
.swiper-button-next.swiper-button-disabled {
	background-image: url(https://milifeinsight.movabletype.io/g-ranking/shokupin/common/images/swiper-button-prev_off.svg);
	-webkit-background-size: 31px 54px;
	background-size: 31px 54px;
    cursor: auto;
    pointer-events: none;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 0 !important;
  left: auto;
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 0 !important;
    right: auto;
}
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after, .swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
	display: none;
}

.swiper-container .swiper-pagination {
    /* 修正前: bottom: 102px !important; */
    bottom: 0px !important; 
}

.swiper-container .swiper-pagination .swiper-pagination-bullet-active {
	background-color: var(--main_color);
}
/* ----------------------- entry-supervisor-label*/

/*リボンの設定*/
.swiper-slide .ribbon {
position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
}
/*/end*/
@media(max-width:768px) {
  .swiper-slide .ribbon {
    width:150px;
    right:4px;
}
	.swiper__title {
		font-size: 18px;
	}

	.swiper__title::before {
		top: 8px;
		left: -12px;
		height: 24px;
}
	.swiper__title::after {
		top: 8px;
		left: 12px;
		height: 24px;
	}
	.swiper__title strong::before {
		height: 4px;
}
.swiper-slide__imgWrap {
	max-height: none;
	height: 320px;
}

	.swiper-pagination {
		display: none;
	}
	.footer-navi #fade-in > li > ul {
		display: none;
	}
    .swiper__entry {
    background: rgba(255, 255, 255, 1);
      height: 120px;
}
  .swiper__entryTitle {
    font-size: 16px;
    padding: 0;
}
  .swiper__category_box {
    padding: 0;
}
    .swiper__entryWrap figure img {
    display:none;
  }
}

@media(max-width:480px) {
    .swiper-wrapper {
    height: 250px !important;
  }
	.swiperWrap {
		margin-bottom: 28px;
	}

	.swiper-container {
		margin-bottom: 28px;
	}
  .swiper-slide{
    height: 250px !important;
  }
  .swiper__entry {
    background: rgba(255, 255, 255, 1);
    height: 100px;
}
  .swiper__entryWrap {
    padding: 10px;
}
  .swiper__entryWrap figure img {
    display:none;
  }
.swiper-slide__imgWrap {
        height: 250px;
        align-items: start;
    }
  .swiper__entryTitle {
    font-size: 14px;
    padding: 0;
}
  .swiper__category_box {
    padding: 0;
}
/* スマートフォンサイズのボタン位置も調整 */
    .swiper-container .swiper-button-prev,
    .swiper-container .swiper-button-next {
        /* スマートフォンサイズではボタンの高さが28pxなので、margin-topを-14pxにする */
        margin-top: -30px; /* ボタンの高さ28pxの半分 */
        width: 28px;
        height: 50px;
    }
	.swiper-container .swiper-button-prev {
		-webkit-background-size: 28px 50px;
		background-size: 28px 50px;
		left: 0;
	}
	.swiper-container .swiper-button-next {
		-webkit-background-size: 28px 50px;
		background-size: 28px 50px;
		right: 0;
	}
	
	.swiper-slide__imgWrap {
		height: 250px;
	}
}

/* ------------------------------------------
						 FOOTER SNS
------------------------------------------ */

.footer-social-buttons {
	list-style: none;
	display: flex;
	justify-items: center;
	flex-wrap: wrap;
	padding: 0;
	margin: 0 0;
}
.footer-social-buttons li {
	display: block;
	text-align: center;
	margin-right: 8px;
	box-sizing: content-box;
}
.footer-social-buttons li:last-child {
	margin-right: 0;
}
.footer-social-buttons li a {
	display:block;
	font-size: 20px;
	width: 42px;
	line-height: 42px;
	height: 42px;
	border-radius: 50%;
	color: #ffffff;
	text-decoration: none;
	transition: ease-in-out .2s;
}

.footer-social-buttons li a.icon-x-twitter {
	background-color: #000000;
}
.footer-social-buttons li a.icon-facebook {
	background-color: #3B5998;
}
.footer-social-buttons li a.icon-hatebu {
	background-color: #008FDE;
}

.footer-social-buttons li a.icon-hatebu:before {
	content: "B!";
	font-family: Verdana;
	font-weight: bold;
}

.footer-social-buttons li a.icon-pocket {
	background-color: #EB4654;
}

.footer-social-buttons li a.icon-line {
	background-color: #1dcd00;
}


.ct_mv{
}
.ct_mv__img{
 width:100%;
 max-height:400px;
 object-fit:cover;
}
@media(max-width:768px) {
  .ct_mv__img{
    max-height:230px;
  }
}

.entry-date{
  text-align:right;
  font-size:0.75rem;
  color:#585858;
  padding:7px 0;
}

.ct_preamble{
  margin-bottom:1.5em;
}

.article-info{
  display: flex;
    justify-content: space-between;
    margin: 1em 0;
}
/*強調ブロック*/
.emphasis-block{
  border:2px solid #FFEFC3;
}
.emphasis-block p {
  margin:16px;
}
/* 目次ブロック */

.wysiwyg .toc-block {
  position: relative;
  color: var(--text_main_color);
  background: var(--middle_color);
  padding: 16px;
  box-sizing: border-box;
  margin-bottom:2rem;
}
@media(max-width:768px) {
  .wysiwyg .toc-block {
  max-height: 200px; /* 閉じている時のブロック全体の高さ */
  overflow: hidden;
  transition: max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}
.wysiwyg .toc-block button:hover{
    background-color: unset;
    border-color: unset;
}
  .toc-list.is-open > .toc-list {
  display: block;
   -webkit-line-clamp: unset;
  overflow: visible;
}

.toc-title__more {
  display: none;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.toc-title__more.is-show {
  display: flex; 
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
}
.toc-title__more::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  margin-top: -3px;
}



/* 擬似要素グラデーション（親に対して配置） */
.toc-block::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px;
  background: linear-gradient(to bottom, rgba(247, 247, 247, 0) 0%, rgb(247, 247, 247) 55%);
  pointer-events: none;
  transition: opacity 0.6s ease;
  z-index: 2;
}

/* 開いた時はグラデーションを消す */
.toc-block.is-open::after {
  opacity: 0;
}
.toc-block.is-open > .toc-title__more::after {
  transform: rotate(-135deg);
  margin-top: 3px;
}
.wysiwyg .toc-block.is-open {
    max-height: none !important;
  overflow: visible !important;
  }
/* ボタンは常に最前面に */
.toc-title__more {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  font-size:0.85em;
}
}


/* タイトル */
.wysiwyg .toc-title {
  margin: 0 0 8px;
  font-weight: 700;
  font-size: 1.05em;
  
}

/* リスト */
.wysiwyg .toc-block .toc-list {
  margin: 0;
  padding-left: 0;
}
.wysiwyg .toc-block .toc-list li {
  margin: 0.35em 0;
  padding-left:1rem;
  color:var(--text_main_color);
}
.wysiwyg .toc-list li:before {
  color:var(--text_main_color);
}
/* リンク */
.wysiwyg .toc-list a {
  color:var(--text_main_color);
}
.wysiwyg .toc-list a:hover {
}
.wysiwyg .toc-link{
  color:var(--text_main_color);
}
/* 見出しが無い時に管理画面で出す注意文 */
.toc-empty {
  color: #888;
  font-size: 0.92em;
  margin-top: 6px;
}

.cb-buttons a{
  padding:0.65em 2.2em 0.65em 1.2em;
  position:relative;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.25);
}

.cb-buttons a::after {
  content:"";
  position:absolute;
  top:50%;
  right:1em; /* ボタンの右端からの距離 */
  transform: translateY(-50%) rotate(45deg);

  width:0.45em;
  height:0.45em;
  border-right: 2px solid #fff;
  border-top: 2px solid #fff;
}

.wysiwyg .callout{
  padding:16px;
  margin:30px 0px;
}
.wysiwyg .callout__body{
  line-height: 1.8;
}

#jump-to-x{
  background: #F9E7ED;
  text-align:center;
  padding:5px 0;
}

#jump-to-x a{
  position:relative;
  color:#585858;
}

#jump-to-x a::after {
content: "";
    position: relative;
    top: -2px;
    right: -8px;
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #585858;
    border-right: 2px solid #585858;
    transform: rotate(45deg);
}

/*-------------------------------------
                               utility
-------------------------------------*/
/* text */
.m-plus-rounded-1c-regular {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.m-plus-rounded-1c-medium {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.m-plus-rounded-1c-bold {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.m-plus-rounded-1c-extrabold {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.slash{
 font-family:arial; 
}

.bold{
  font-weight:700;
}

.center{
  text-align:center;
  margin:auto;
}

.txt-color-main{
  color:var(--main_color);
}


.x-small{
  font-size:12px;
}
.small{
  font-size:14px;
}
.medium{
  font-size:16px;
}
.large{
  font-size:20px;
}
.x-large{
  font-size:24px;
}
  

/* device */
@media(max-width:480px) {
  .sp-only{
    display:none;
  }
  .pc-only{
    display:block;
  }
}
@media(max-width:480px) {
  .sp-only{
    display:block;
  }
  .pc-only{
    display:none;
  }
}

@media screen and (min-width: 737px) {
  	.nopc {
		display: none !important;
	}
}
@media screen and (max-width:736px) {
	.nosp {
		display: none !important;
	}
}

/*-------------------------------------
                               aside
-------------------------------------*/
aside .side-categorylist{
  background:var(--middle_color) ;
  padding:16px 10px;
}

aside .side-categorylist h2{
  color:var(--text_dark_orange_color);
  font-size: 15px;
    padding-bottom: 10px;
    margin-bottom: 4px;
    color: #222222;
    text-align: center;
}

aside .side-categorylist ul{
  display:inline-block;
  margin-right:10px;
}

aside .side-categorylist ul li{
  display:inline-block;
  margin-bottom:4px;
}

aside .side-categorylist ul li a{
  color:#D75014;
  border-radius:4px;
  border:1px solid #F4AB8A;
  padding:3px 10px;
  background:#ffffff;
  font-size:0.75em;  
}

.nav-to-x p span{
  margin:1em;
}

.nav-to-x-icon{
  text-align:center;
  padding:10px 0;
}
.nav-to-x-icon img{
  width:32px;
  height:32px;
}

aside .side-entrylist h2{
 color:var(--text_main_color); 
  font-size:16px;
  border-bottom:1px solid var(--main_color);
      padding-bottom: 10px;
    margin-bottom: 10px;
}

aside .side-entrylist ul li{
  border-bottom: 1px solid #DADCE0;
}


aside .side-entrylist ul li h3{
  font-size:14px;
}

aside .side-entrylist .sidebar-entry-categories .category-tag{
  margin:0;
  min-height:auto;
   border-bottom:none;
  font-size:11px;
  border-radius:4px;
  border:1px solid #F4AB8A;
  display:inline-block;
  color:var(--main_color);
  padding:0 4px;
}

.side-advertise{
  display:none;
}

.author-list .author-list__ico{
  width:50px;
  height:50px;
  border-radius: 50%;
}

aside .side-categorylist ul.author-list{
  display:flex;
  gap:10px;
}

aside .side-categorylist ul.author-list li{
  width:25%;
}

aside .side-categorylist ul.author-list li a{
  border:none;
  width:100%;
  padding:10px 5px;
  display:block;
  border-radius: 10px;
  text-align:center;
background: #FFF;

box-shadow: 3px 3px 0 0 rgba(250, 107, 150, 0.50);
}

/*-------------------------------------
                               breadcrumb
-------------------------------------*/
.breadcrumb {
  font-size: 0.8em;
  margin-bottom: 1em;
}
.breadcrumb a {
  color: var(--text_main_color);
  text-decoration: none;
}
.breadcrumb a:hover {
  text-decoration: underline;
}


.entrylist li {
  width:100%;  
}
.entrylist li.three {
   width:100%;
}
.entrylist li.three a .entry-image img{
  aspect-ratio: 2 / 1;
}

/*-------------------------------------
                               sns
-------------------------------------*/
.sns-share{
  margin:1em auto;
}

.sns-share-list{
  display:flex;
  justify-content: center;
  column-gap: 10px;
  margin:20px auto 40px;
   
}

.sns-share-list a img{
  width:32px;
  height:32px;
}

/*-------------------------------------
                               author
-------------------------------------*/
:root{
    --main-color:#DA6286;
    --non-active-color:#A6A6A6;
    --text-color:#585858;
    --gap-item:4px;
    --gap-article:10px;
}
.entry-author-wrapper{
  background:#fffaf4;
  padding:20px 20px;
  margin-bottom:40px;
}

@media(max-width:768px) {
  .entry-author-wrapper{
    position:relative;
  }
}
.entry-author-profile-gaiyou-cont h2{
 font-size:1.2em; 
 margin-bottom:10px;
}
.entry-author-profile .entry-author-profile-gaiyou{
  display:flex;
  margin-bottom:20px;
  align-items: center
}
.entry-author-profile-gaiyou figure {
  width:100px;
}

.entry-author-profile-gaiyou-cont{
  flex:1;
  padding-left:10px;
  color:var(--text_main_color);
}
.entry-author-profile-gaiyou figure img{
  width: 90px;
  height: 90px;
  border-radius: 50%;
}

.entry-author-buttons{
  display:flex;
}
.entry-author-buttons li a img{
  width:30px; 
  height:30px; 
}

.entry-author-buttons li{
  margin-right:10px;
}

.tab-component{
    max-width:1000px;
    margin:0 auto;
    background:#fff;
    border-radius:8px;
}
.tab-menu{
    display:flex;
    border-bottom:2px solid #eee;
    margin-bottom:20px;
}
.tab-menu-item{
    cursor:pointer;
    padding:10px 0;
    margin-bottom:-2px;
    border-bottom:2px solid transparent;
    color:var(--non-active-color);
    transition:color 0.3s, border-color 0.3s;
    display:flex;
    align-items:center;
    justify-content:center;
    width:50%;
    font-weight:600;
}
.tab-menu-item:hover{
    color:var(--main-color);
}
.tab-menu-item.is-active{
    color:var(--main-color);
    border-color:var(--main-color);
}
.tab-menu-item img{
    width:20px;
    height:20px;
    margin-right:8px;
    object-fit:contain;
    margin-top:0;
}
.tab-content{
    display:none;
}
.tab-content.is-active{
    display:block;
}
.content-list-container{
    position:relative;
    overflow:hidden;
}
.content-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
}
#item-content .content-list{
    grid-template-columns:repeat(3, 1fr);
    gap:var(--gap-item);
}
#item-content .content-list a{
    display:block;
    text-decoration:none;
}
#item-content .content-list li{
    position:relative;
    aspect-ratio:1 / 1;
    overflow:hidden;
}
#item-content .content-list img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.3s;
    aspect-ratio:1/1;
}
#item-content .content-list li:hover img{
    transform:scale(1.05);
}
/* グラデーション制御 */
.content-list-container.collapsed .gradient-overlay {
    display:block;
}

.content-list-container:not(.collapsed) .gradient-overlay {
    display:none;
}

/* ボタン制御 */
.content-list-container:not(.collapsed) .more-button-area {
    display:none;
}
#article-content .content-list{
    grid-template-columns:repeat(2, 1fr);
    gap:var(--gap-article);
    margin:10px;
}
#article-content .content-list a{
    display:block;
    text-decoration:none;
    position:relative;
}
#article-content .content-list li{
    position:relative;
    aspect-ratio:1 / 1;
    overflow:hidden;
    box-shadow:0 2px 5px rgba(0, 0, 0, 0.1);
}
#article-content .content-list img{
    width:100%;
    height:100%;
    object-fit:cover;
    aspect-ratio:1 / 1;
}

.article-tag{
    position:absolute;
    top:10px;
    left:8px;
    background-color:#fff;
    color:var(--text-color);
    font-size:12px;
    font-weight:600;
    padding:2px 8px;
    border-radius:30px;
    z-index:10;
    border:1px solid var(--text-color);
}
.article-title-overlay{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    background-color:rgba(255, 255, 255, 0.85);
    padding:10px;
    color:var(--text-color);
    font-size:14px;
    line-height:1.5;
    z-index:5;
    height:calc(1.5em * 3 + 20px);
    display:flex;
    align-items:flex-start;
}
.article-title{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    overflow:hidden;
    text-overflow:ellipsis;
    word-break:break-all;
}
.gradient-overlay{
    display:none;
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    height:150px;
    pointer-events:none;
    transition:opacity 0.3s;
    z-index:20;
}
.content-list-container.collapsed .gradient-overlay{
    display:block;
    opacity:1;
    background:linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0.9) 50%,
        rgba(255, 255, 255, 1) 100%
    );
}
.more-button-area{
    position:absolute;
    bottom:0;
    left:0;
    right:0;
    text-align:center;
    padding:10px 0 20px;
    z-index:30;
}
.wysiwyg .more-button{
    display:inline-block;
    background-color:#fff;
    border:1px solid var(--main_color);
    color:var(--main_color);
    padding:2px 10px;
    border-radius:50px;
    cursor:pointer;
    font-size:14px;
    transition:background-color 0.3s, transform 0.1s;
}
.wysiwyg .more-button:hover{
    background-color:var(--main-color);
    border-color:var(--main-color);
    color:#fff;
}
.wysiwyg .more-button:active{
    transform:scale(0.98);
}
.wysiwyg .more-button:after{
    content:"";
    display:inline-block;
    width:6px;
    height:6px;
    border-right:1px solid var(--main_color);
    border-bottom:1px solid var(--main_color);
    transform:rotate(45deg);
    margin-left:8px;
    margin-bottom:3px;
    transition:transform 0.3s, border-color 0.3s;
}
.content-list-container:not(.collapsed) .wysiwyg .more-button-area{
    display:none;
}
.wysiwyg .more-button:hover:after{
    border-right:1px solid #fff;
    border-bottom:1px solid #fff;
}
@media (max-width: 600px){
    .tab-component{
        padding:10px;
    }
}
@media (max-width: 768px){
    .wysiwyg.in-author{
        margin:0 calc(50% - 50vw);
        width:100vw;
    }
}
.wysiwyg.in-author ul{
    margin:0 0 2em;
}
.wysiwyg.in-author ul li{
    padding:0;
    text-indent:0;
    border-radius:0;
}
.wysiwyg.in-author ul li img{
    margin:0;
}
.wysiwyg.in-author ul li:before{
    display:none;
}


/*---------------------------------
食pin カスタムブロック用
--------------------------------*/

/* ----------------------- item */

.cb-wrap{
    padding: 16px 16px 24px;
    border: 1px solid #ddd;
}


/* ----------------------- chat-item */
.chat-item{
  --bg-body: #f7f7f7;
  --flex-direction: row;

  display: flex;
  gap: 2rem;
  flex-direction: var(--flex-direction, row);
  align-items:flex-start;
}
.chat-item.img-position\:right{
  --flex-direction: row-reverse;
  --bg-body: #fff7df;
}
.chat-item + .chat-item{
      margin: 30px 0;
}
:not(.chat-item) + .chat-item{
  margin-top: 3rem;
}
.chat-item-head{
  flex: 0 0 100px;
}

@media screen and (max-width:736px) {
.chat-item-head{
  flex: 0 0 75px;
}
}

.chat-item-head figure{
  margin: 0;
}
.chat-item-head figcaption{
  text-align: center
}
.chat-item-head figcaption:empty{
  display: none;
}
.chat-item-head img{
  border-radius: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.
{
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
  border-radius: 8px;
  background: var(--bg-body, #f7f7f7);
  
}
.chat-item-body{
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
  border-radius: 8px;
  background: var(--bg-body, #f7f7f7);
  
}
.chat-item-body::before{
  content: '';
  position: absolute;
  top: 16px;
  left: -15px;
  width: 0px;
  height: 0px;
  border-top: 15px solid var(--bg-body);
  border-right: 0px none;
  border-left: 15px solid transparent;
}
.chat-item.img-position\:right .chat-item-body::before{
  left: auto;
  right: -15px;
  transform: scaleX(-1);
}
.chat-item-body :first-child{
  margin-top: 0;
}
.chat-item-body :last-child{
  margin-bottom: 0;
}

/* ----------------------- recipe */
.recipe-meta,
.recipe-section,
.recipe-note {
  color: #292524;
}


.recipe-section {
  margin: 0 0 48px;
}

.recipe-section__heading {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 0 0 20px;
}

.wysiwyg h2.recipe-section__title {
  margin: 0;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.03em;
  border-bottom:0;
}

.recipe-section__sub {
  font-size: 16px;
  line-height: 1.5;
  color: var(--text_main_color);
  font-weight:700;
}

.recipe-ingredients {
  margin: 0;
  padding: 0;
  list-style: none;
  border-bottom: 1px solid #e7e5e4;
}

.wysiwyg ul li.recipe-ingredients__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: start;
  padding: 15px 0;
  border-top: 1px solid #e7e5e4;
  text-indent:0;
}


.wysiwyg ul li.recipe-ingredients__item::before{
  display:none;
}

.recipe-ingredients__name {
  min-width: 0;
  line-height: 1.8;
  color: #44403c;
}

.recipe-ingredients__amount {
  white-space: nowrap;
  font-size: 16px;
  line-height: 1.8;
  text-align: right;
  color: var(--text_main_color);
}

.recipe-steps {
  margin: 0;
  padding: 0;
  list-style: none;
}

.wysiwyg ol li.recipe-steps__item {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 16px;
  margin: 0 0 28px;
  padding:0;
  text-indent:0;
  list-style:none;
}
.wysiwyg ol li.recipe-steps__item::before{
  display:none;
  content:'';
}
.recipe-steps__number {
  padding-top: 3px;
  font-size: 14px;
  line-height: 1.8;
  color: var(--text_main_color);
}

.wysiwyg p.recipe-steps__text {
  margin: 0;
  color: #222222;
}

.recipe-note {
  margin: 56px 0 0;
  padding: 24px;
  border-radius: 24px;
  background: #f5f5f4;
}

.recipe-note__title {
  margin: 0 0 10px;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.08em;
}

.recipe-note__text {
  margin: 0;
  font-size: 14px;
  line-height: 1.9;
  color: #57534e;
}

@media (max-width: 767px) {

  .wysiwyg h2.recipe-section__title {
    font-size: 22px;
  }

  .recipe-ingredients__item {
    gap: 16px;
  }

  .wysiwyg ol li.recipe-steps__item {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 12px;
  }

  .recipe-note {

    padding: 20px;
  }
}

.recipe-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  column-gap: 20px;
  row-gap: 18px;
  padding: 22px 0 21px;
}

.recipe-meta__item {
  min-width: 0;
  text-align: center;
      background: var(--middle_color);
    padding-bottom: 12px;
}

.recipe-meta__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 7px;
  margin-bottom: 8px;
}

.recipe-meta__icon {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
  opacity: .78;
}

.recipe-meta__label {
  display: block;
  color: #666666;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

.recipe-meta__value {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  color: #111;
  line-height: 1.2;
  white-space: nowrap;
}

.recipe-meta__num {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.recipe-meta__unit {
  margin-left: 1px;
  font-size: 14px;
  font-weight: 500;
}

.recipe-meta-note {
  margin: 8px 0 0;
  color: #666666;
  font-size: 12px;
  line-height: 1.6;
}

@media (max-width: 480px) {
  .recipe-meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
  }
}
.nutrition-table {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  /*border-top: 1px solid #e5e1dc;
  border-bottom: 1px solid #e5e1dc;*/
}

/*.nutrition-table__item {
  min-width: 0;
  padding: 18px 10px 17px;
  text-align: center;
  border-right: 1px solid #e5e1dc;
}
.nutrition-table__item:last-child {
  border-right: 0;
}*/
.nutrition-table__item{
  min-width: 0;
  padding: 18px 10px 17px;
  text-align: center;
  background-color: #f5f5f5;
  margin: 4px;
}


.nutrition-table__label {
  display: block;
  margin-bottom: 8px;
  color: #666666;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
}

.nutrition-table__value {
  display: inline-flex;
  align-items: baseline;
  justify-content: center;
  color: #111;
  line-height: 1.2;
  white-space: nowrap;
}

.nutrition-table__num {
  font-size: 20px;
  font-weight: 500;
  letter-spacing: -0.02em;
}

.nutrition-table__unit {
  margin-left: 1px;
  font-size: 14px;
  font-weight: 500;
}

.nutrition-table-note {
  margin: 8px 0 0;
  color: #666666;
  font-size: 12px;
  line-height: 1.6;
  text-align:right;
}

@media (max-width: 520px) {
  .nutrition-table {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /*.nutrition-table__item {
    border-right: 1px solid #e5e1dc;
    border-bottom: 1px solid #e5e1dc;
  }

  .nutrition-table__item:nth-child(2n) {
    border-right: 0;
  }*/

  .nutrition-table__item:last-child {
    grid-column: span 2;
    border-right: 0;
    border-bottom: 0;
  }

  .nutrition-table__item:nth-last-child(2) {
    border-bottom: 0;
  }
}
/* ----------------------- prof-card */

.profile-card {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 20px;
    border: 0;
    background: #fff;
    border: 1px solid #e7e5e4;
    margin-bottom: 40px;
}

.profile-card__icon {
  flex: 0 0 50px;
}

.profile-card__icon img {
  width: 50px;
  height: 50px;
  object-fit: cover;
  border-radius: 50%;
  display: block;
}

.profile-card__body {
  flex: 1;
  min-width: 0;
}

.profile-card__label {
  margin: 0 0 4px;
  font-size: 12px;
  font-weight: 700;
  color: #777;
}

.profile-card__name {
  margin: 0 0 6px;
  font-size: 16px;
  font-weight: 700;
}

.profile-card__profile {
  margin: 0;
  font-size: 100%;
  line-height: 1.7;
}

.profile__top .profile-card__profile {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.profile-card__body.is-open > .profile-card__profile {
  display: block;
   -webkit-line-clamp: unset;
  overflow: visible;
}

.profile-card__more {
  display: none;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.profile-card__more.is-show {
  display: flex; 
  margin-left: auto;
  margin-right: auto;
}
.profile-card__more::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  margin-top: -3px;
}

.profile-card__body.is-open > .profile-card__more::after {
  transform: rotate(-135deg);
  margin-top: 3px;
}
/* ----------------------- supervisor */
.page--supervisor .page-header h1{
  font-weight: 500;
  margin-bottom: 20px;
}
.supervisor-entry time.new-icon{
  position: absolute;
  right:0;
  top:0;
}
.supervisor-entry .entry-detail .entry-title{
  padding-top: 20px;
}
.supervisor-articles .profile-card {
  background: #fffaf4;
  border: none;
}
/* ----------------------- reference */
.reference-list{
    background: var(--middle_color);
    padding: 16px;
      margin-bottom: 30px;
}
.wysiwyg ol li:before {
    counter-increment: ol_li;
    content: counter(ol_li) ". ";
    color: #666666;
}
.reference-list a:link, .wysiwyg a:visited {
    text-decoration: underline;
    color: #666666;
    transition: ease-in-out .2s;
}
.wysiwyg p.reference-list__title{
  margin-bottom: 1em;
  font-weight: 700;
  text-align:center;
  color: #666666;
}

.wysiwyg ol.link-list{
  margin:0;
}
}

/* ----------------------- product-card */

.product-card-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.product-card {
  display: block;
  color: inherit;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.product-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}

.product-card__image {
  margin: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #f5f5f5;
}

.product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.product-card__body {
  padding: 16px;
}

.product-card__name {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}

.product-card__volume {
  margin: 6px 0 0;
  font-size: 14px;
  line-height: 1.5;
  color: #666;
}

@media (max-width: 767px) {
  .product-card-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}


/* ----------------------- product-card */

.product-card-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px;
}

.product-card {
  display: block;
  width: 100%;
  color: inherit;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
}

.product-card__image {
  margin: 0;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  background: #f5f5f5;
}

.product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
