@charset "UTF-8";
/*
Theme Name: メンズエステ
Author: zelo marketing
Author URI: https://zelo.jp/
Version: 1.0
*/

/* リセット */
html, body, div, object, iframe, p,
blockquote, pre, abbr, address, cite, code, del, dfn, em, img,
ins, kbd, q, samp, strong, sub, sup, var, b, i, dl, dt, dd,
ol, ul, li, fieldset, form, label, legend, caption,
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details,
figcaption, figure, footer, header, hgroup, menu, nav, section,
summary, time, mark, audio, video, main {
  font-size: 1rem;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  border: 0;
  outline: 0;
}

html{
	scroll-behavior: smooth;
}



body{
  overflow-x: hidden;
  box-sizing: border-box;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

img{
  border:0;
  max-width: 100%;
  height: auto;
  object-fit: cover;
  font-family: 'object-fit: cover;'; /*IE対策*/
  vertical-align: bottom;
}

ul{
  list-style: none;
}

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
}
ins {
  text-decoration: none;
  color: #000;
  background-color: #ff9;
}

mark {
  font-weight: bold;
  font-style: italic;
  color: #000;
  background-color: #ff9;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  cursor: help;
  border-bottom: 1px dotted;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
  border: 1px #999999 solid;
}

table td{
    border: 1px #999999 solid;
    padding: 6px 10px;
}

hr{
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
  border: 0;
  border-top: 1px solid #ccc;
}

input{
  padding: 0px;
}

/* 基本設定 */
html{
  font-family:'Meiryo','Avenir','MS Pゴシック', sans-serif;
  background-color: #fff;
  color:#212121;
  line-height: 0;
}

body{
  line-height: 1.2;
}

a:link,
a:visited{
  color: #212121;
}

a:active,
a:hover{
  opacity: 0.6;
}

.single .content a:link{
  text-decoration: underline;
}
.single .content a:link,
.single .content a:visited{
  color: #1066d0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
    clear: both;
    color: #000;
}

h1{
    font-size: 1.5rem;
    margin-bottom: 10px;
}

h2{
    font-size: 1.5rem;
    line-height: 3rem;
}

main.single h2{
    font-size: 1.375rem;
    background-color: #0097b4;
    line-height: 1.7rem;
    padding: 15px 16px 11px 1rem;
    margin: 80px 0 25px 0;
    color: #FFFFFF;
}
main.single h3{
    font-size: 1.25rem;
    color:#0097b4;
    margin: 75px 0 0.5rem;
    padding-left: 10px;
    line-height: 1.5;
    border-left: 10px #0097b4 solid;
}


.paged h1,
.archive h1,
.tagpage h1,
main.new h1 {
    font-size: 1.5rem;
    line-height: 3rem;
    margin: 20px 0;
	position: relative;
	color: #0097b4;
}


.archive h1 span,
.tagpage h1 span{
	margin-left: -0.8rem;
}

.archive h3,
.tagpage h3,
.other h3{
    margin: 0 0 5px 0;
    line-height: 1.3;
}

h3{
  font-size: 1.25rem;
  color:#0097b4;
  margin: 75px 0 0.5rem;
  padding-left: 10px;
	line-height: 1.5;
}

.single .hclass{/*h4の代わりに設定*/
  font-size: 1.1rem;
  margin: 2rem 0 1rem 0;
  font-weight: bold;
}

main.page section.esthetic article p.hclass{/*h4の代わりに設定*/
  font-size: 1rem;
  margin: 2rem 0 0 0;
  font-weight: bold;
}

main{
  width: 100%;
  margin: 0 auto;
  min-height: 30vh;
  margin-top: 54px;/* header固定用 */
  max-width: 1100px;
}

main.front{
  margin-top: 0;
}
main.paged{
  margin-top: 54px;/* header固定用 */
}
.paged .main,
.paged aside{
  margin-top: 0;
}

.cb{clear: both;}

.in{
    max-width: 1280px;
    margin: 0 auto;
  }
/*
.fit{
  object-fit: contain;
  font-family: 'object-fit: contain;'
}
*/

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}


main.front h2 {
    color: #0097b4;
	position: relative;
	margin-top: 30px;
}

.paged h1:after, .archive h1:after, .tagpage h1:after, main.front h2:after, main.new h1:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 54px;
	height: 3px;
	background-color: #dcdcb0;
	border-radius: 2px;
}



/***************
 header
****************/
header{
    height: 55px;
    width: 100%;
    top: 0;
    z-index: 9999;
    border-top: 3px #0097b4 solid;
    background:rgba(255,255,255,0.8);
}



header .header-inner{
  max-width: 1100px;
  margin: 0 auto;
    position: relative;
    width: 100%;
    height: 55px;
}

header .logo{
    max-width: 183px;
        margin-top: 5px;
}

header h1{
  padding:0;
    margin: 0;
}

header .center_banner{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

header nav .menu-header_menu-container > ul {
	background: #0097B4;
	position: relative;
	z-index: 1;
}
header nav .menu-header_menu-container > ul a:link,
header nav .menu-header_menu-container > ul a:visited {
	color: #FFFFFF;
	line-height: 40px;
	display: block;
}
header nav .menu-header_menu-container > ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
header nav .menu-header_menu-container > ul > li {
	height: 40px;
	border-left: 1px solid #FFFFFF;
	position: relative;
	width: 220px;
	text-align: center;
}
header nav .menu-header_menu-container > ul > li:first-child {
	border-left: none;
}

header nav .menu-header_menu-container > ul > li .sub-menu {
	display: none;
	position: absolute;
}
header nav .menu-header_menu-container a:hover {
	opacity: 1;
	background: #016d82;
}


header nav .menu-header_menu-container .sub-menu li {
	background: #0097B4;
	width: 220px;
}
header nav .menu-header_menu-container .sub-menu li a {
	display: block;
}


@media screen and (max-width: 1280px){

header nav {
	display: none;
}

}


/*********************
 ヘッダーメニューPCメニュー
**********************/
header .pc nav{
    float: right;
    margin-top: 30px;
}

header .pc .tel{
  float: right;
}
header .pc .tel p:last-child{
  font-size: 25px;
  font-weight: 900;
}

header .pc ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: 25px;
}

header .pc li{
  width: auto;
  text-align: center;
  font-size: 14px;
  font-weight: 900;
  min-width: 120px;
}

header .pc li+li{
    margin-left: 15px;
}

header .pc ul a{
display: block;
}

header .pc li.menu-item-has-children ul{
    opacity: 0;
    width: 120px;
    margin: 0;
}
header .pc li.menu-item-has-children:hover ul{
  opacity: 1;
  -webkit-transition: all .5s;
  transition: all .5s;
}

header .pc li.menu-item-has-children ul li{
  width: 100%;
  margin: 0 0 5px 0;
  background:#ccc;
}


@media screen and (max-width: 1020px){
header .pc{
  display: none;
}
header .sp{
  display: block;
}
}

/***************
 パンくずリスト
****************/
#breadcrumb{
    clear: both;
    max-width: 1280px;
    margin: 0 auto;
    text-align: left;
    width: 100%;
    padding: 6px 0 0 0;
    line-height: 1.3rem;
}

#breadcrumb ul{
}
#breadcrumb li{
    font-size: 0.75rem;
    color: #999999;
    float: left;
}

#breadcrumb li a{
    color: #999999;
}
#breadcrumb li+li::before{
  content: ">";
  margin:0 5px;
}

#breadcrumb li:last-child{
}

.single #breadcrumb{
    margin-bottom: 25px;
}

/***************
 サイドバー
****************/
.front .sidebar{
    margin-top: 75px;
}

.sidebar{
    width: 300px;
    margin-top: 77px;
    box-sizing: border-box;
    display: inline-table;
}

.sidebar > div:nth-of-type(2) {
	padding: 10px 20px;
}

main.paged .sidebar{
    width: 300px;
    margin-top: 82px;
    box-sizing: border-box;
    display: inline-table;
}
@media all and (-ms-high-contrast: none) {
.sidebar{
  display: inline;
}
}

.sidebar .screen-reader-text{ /* 検索ウィジェットのsearch for */
  display: none;
}

.single .sidebar{
    margin-top: 15px;
    padding-bottom: 35px;
}

.searchformBox{
    margin: 5px 0 20px 0;
}

.searchformBox input{
    width: 240px;
    height: 46px;
    padding: 10px;
    box-sizing: border-box;
    font-size: 16px;
	border: 1px solid #0097b4;
}

.searchformBox button{
    float: right;
    border: 0;
    margin: 0;
    padding:0;
    background: no-repeat;
}

.searchformBox button img{
    width: 45px;
    height: 45px;
}

.sidebar .recommend_post{
    margin: 0 0 10px 0;
    line-height: 1.5rem;
}

.sidebar .recommend_post li{
margin-top: 10px;
height: 90px;
}
.sidebar .recommend_post li:nth-child(n+6){
  display: none;
}

.sidebar .sp_recommend{
    margin: 10px 0 47px 137px;
    font-size: 0.85rem;
    line-height: 1.4;
    height: 55px;
}

.sidebar .recommend_post img{
    width: 131px;
    height: 87px;
    float: left;
}
.sidebar .recommend_post p{
    height: 90px;
    margin-left: 138px;
}

.category_side,
.category_header{
  text-align: left;
  clear:both;
}

.category_side li,
.category_header li{
  border-bottom: 1px #E5E5E5 solid;
  position: relative;
    height: 50px;
}



.category_header li:last-child{
  border: 0;
}

.category_side a:link,
.category_header a:link{
    padding: 18px 35px 10px 0;
    display: block;
    line-height: 2.6;
	font-size: 0.875rem;
}

.category_side .child a:link,
.category_header .child a:link{
	padding: 10px 2rem;
	display: block;
}

.category_side li:after,
.category_header li:after{
	content: '';
	width: 12px;
	height: 12px;
	border: 0;
	border-top: solid 2px #0097b4;
	border-right: solid 2px #0097b4;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
	transform: rotate(45deg);
}

.sidebar .tag{
    padding: 1rem 0;
    display: inline-block;
}

ul.tag {
  /*
	overflow: hidden;
  */
}

ul.tag li{
  float: left;
}

ul.tag li a:link{
    display: inline-block;
    border: 1px #0097b4 solid;
    margin: 0 10px 10px 0;
    padding: 0px 15px;
    border-radius: 4px;
    font-size: 0.875rem;
    height: 28px;
    line-height: 1.9rem;
}

ul.tag li a:link,
ul.tag li a:visited{
    color: #0097b4;
}

ul.tag_loop{
  clear: both;
}

ul.tag_loop li a:link,
ul.tag_rum li a:link{
    font-size: 0.75rem;
}

.loop_txt .post-categories{
    display: inline-block;
    margin-bottom: 5px;
}


/***************
 メインコンテンツ共通
****************/
.mainContents{
    display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

article.main{
    box-sizing: border-box;
    width: 730px;
    margin-right: 70px;
}

@media all and (-ms-high-contrast: none) {
article.main{
    margin-right: 68px;
}
}

.single article.main{
  padding-top: 20px;
}

.mv{
  display: block;
  max-width: 100%;
  margin: 0 auto;
  text-align: center;
}

main.single .content img{
  max-width: 730px;
}

/***************
 一覧ループ
****************/
.loop h2,
.loop h3{
  line-height: 1.5;
  margin: 0 0 5px 0;  
	padding-left: 0;
	font-size: 1rem;
  text-align: left;

}

article.main .loop a{
/*  display: block;*/
}

.loop > li{
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #f5f5f5;
  position: relative;
  display: inline-block;
  min-height: 175px;
  width: 100%;
}
.loop > li:last-child {border-bottom: none;}

.loop li+li{
}

.loop img{
  width: 262px;
  height: auto;
  position: absolute;
  left: 0;
  top: 0;
}
time{
  font-size: 0.75rem;
  color: #999999;
    height: 24px;
    display: block;
}
.single time img,
.loop time img,
.sidebar .recommend_post time img,
.top_editorial > div time img {
    position: relative;
    height: 14px;
    width: 14px;
    top: 0px;
}

.loop .loop_txt{
    margin: 0 0 5rem 280px;
}

.loop .loop_txt .excerpt{
    overflow: hidden;
    line-height: 1.8;
	font-size: 0.875rem
}

.loop .loop_txt .excerpt p{
  font-size: 0.9rem;
}





.pagenation{
  clear: both;
  text-align: center;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
}

.pagenation a{
    line-height: 45px;
    border-radius: 4px;
}

.pagenation a:link{
	display: block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	border: 1px #212121 solid;
	border-radius: 4px;
	margin: 0 5px 2rem;
}

.pagenation a:active,
.pagenation a:hover,
.pagenation .current,
.pagenation span.current{
	display: block;
	background: #212121;
	color: #fff;
	width: 40px;
	height: 40px;
	line-height: 40px;
	opacity: 1;
	border: 1px #212121 solid;
	border-radius: 4px;
	margin: 0 5px 2rem;
}

.pagenation a.next{
  border: 0;
    margin: 0;
}

.pagenation a.prev{
  border: 0;
  transform: scale(-1, 1);
    margin: 0;
}
.pagenation a.next:active,
.pagenation a.next:hover,
.pagenation a.prev:active,
.pagenation a.prev:hover{
  background: none;
  opacity: 0.6;
}


.pagenation_body{
  margin: 0 25px;
}

.pagenation_next,
.p
agenation_prev,
.page-numbers
{
    line-height: 40px;
}

.pagenation .dots{
  line-height: 2.5;
}



/***************
 single
****************/
.single .content{
    padding: 2rem 0;
}
.single .content p{
    margin-bottom: 0.6rem;
    line-height: 1.6;
    padding: 10px;
    max-width: 100%;
    overflow: hidden;
}

.single .description{
    padding: 10px;
    background: #f4f4e7;
    line-height: 1.5;
}

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

.single .toMens-est p { font-size: 0.875rem; }
.single .toMens-est a { display: block; }
.single .toMens-est a img { margin-top: 5px; }

.single .sns{
    margin: 0 0 3rem 0;
    line-height: 2;
}
.single .sns > p { text-align: center; font-size: 0.875rem; }

.single .sns ul{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 500px;
    margin: 0 auto;
}

.single .sns li a{
    text-align: center;
    padding: 10px 0 8px 22px;
    height: 48px;
    width: 162px;
    box-sizing: border-box;
    border-radius: 4px;
    box-shadow: 0px 2px 6px #ccc;
    border: 1px #fff solid;
    margin: 0 15px;
    font-size: 0.9rem;
}

.single .sns li a{
  color: #fff;
  display: block;
    font-weight: bold;
}
.single .sns li.twi{
  position: relative;
}

.single .sns li.line{
  position: relative;
}

.single .sns li.twi a{
  background:#333;
}

.single .sns li.line a{
  background:#00b900;
}

.single .sns li.fb{
  background:#1877f2;
}
.single .sns li i{
  margin-right: 5px;
}

.single .sns li.twi i{
  color: #fff;
}

.single .sns li.line i{
    transform: scale(-1, 1);
}

.single .sns li.twi a:before{
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    background: url(img/icon/icon_x.svg)no-repeat;
    position: absolute;
    background-size: contain;
    top: 50%;
    left: 33%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.single .sns li.line a:before{
  content: '';
  display: inline-block;
    width: 18px;
    height: 18px;
  background: url('img/icon/icon_line.svg')no-repeat;
    position: absolute;
    background-size: contain;
    top: 50%;
    left: 23%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.single .cat{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 10px;
  position: relative;
  line-height: 2;
}

.single .cat span{
  display: inline-block;
    margin-left: 7px;
    margin-right: 5px;
}
.single .cat img{
    width: 24px;
    height: 20px;
    position: relative;
    top: 4px;
}
.single .single_tag img{
  width: 20px;
  height: 20px;
}

.single .cat .post-categories{
  float: left;
}

.single .relate_h{
  margin-top: 3rem;
  font-size: 1.5rem;
}

.single .relatedposts .cell{
    padding: 10px;
    box-sizing: border-box;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
}
.single .relatedposts .cell img{
    width: 222px;
    height: 147px;
    margin-right: 10px;
}

.single .post-categories:after{
    content: "";
    display: block;
    clear: both;
}

.single .relatedposts .cell .post-right{
    max-width: 450px;
    line-height: 1.5rem;
}

.single .relatedposts .cell .post-right a{
    font-weight: bold;
    padding: 5px 15px 3px 15px;
    color:#fff;
    text-decoration: none;
}

.single .relatedposts .cell .post-right a:visited{
  color:#fff;
}
.single .relatedposts .cell .post-right > a {
    padding-left: 0;
    color: #212121;
    text-decoration: none;
}
.single .relatedposts .cell .post-right > a:visited{
    color: #212121;
}

.single .post-navigation{
  clear: both;
margin-top: 20px;
}

.single .post-navigation div{
  width: 49%;
}

.single .post-navigation span{
    background: #ccc;
    width: 100%;
    display: block;
    text-align: center;
}

.single .post-navigation .prev{
  float: left;
}

.single .post-navigation .next{
  text-align: right;
    float: right;
}

.single .top_cat .post-categories{
  clear: both;
  padding-top: 35px;
}

.single div.post-right ul.post-categories{
    list-style: none;
    margin: 0 0 7px 0;
}

.single .writer{
    position: relative;
    box-sizing: border-box;
	padding-top: 65px;
}

.single .writer div {
    min-height: 95px;
    background-color: #f4f4e7;
    padding-right: 25px;
    padding-bottom: 20px;
}

.single .writer > p:first-child{
    background-color: #0097B4;
    margin: 0;
    color: #fff;
	border-radius: 5px 5px 0 0;
	display: inline-block;
	width: 180px;
    text-align: center;
    padding-top: 7px;
    padding-bottom: 5px;
}

.single .writer img{
    border-radius: 50px;
    position: absolute;
    left: 25px;
    top: 110px;
    border: 1px #ccc solid;
    width: 74px;
    height: 74px;
}
.single .writer p{
    margin-left: 127px;
  font-size: 0.8rem;
}
.single .writer div p:nth-last-child(2){
    font-weight: bold;
    padding: 20px 0 8px 0;
}

.single .writer p:last-child{
    font-size: 0.9rem;
    line-height: 2;
}
.single .writer span{
  margin-left: 150px;
  font-size: 0.9rem;
}

iframe.wp-embedded-content {
  width:100%;
    height: 190px;
}
.single .wp-block-embed{
    margin: 0 0 10px 0;
    height: 190px;
}

.single code{
    background: #f3f4f5;
    display: inline-block;
    padding: 1rem;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    line-height: 1rem;
    max-width: 100%;
    overflow: scroll;
}

.single h4 span,
.single h3 span,
.single h2 span{
  padding-top: 70px;
  margin-top: -70px;
  pointer-events: none;
}

.single .eye{
    width: 730px;
    height: auto;
    display: block;
}

.wp-block-table{
    padding: 15px 5px 30px 25px;
}

.single .content ul{
  list-style:disc;
  margin-left: 25px;
  padding: 0 5px 30px 25px;
  line-height: 2;
}

.single .content div ul{
  padding:0 0 0 10px;
    line-height: 2;
}

/***************
 フッター
****************/
footer{
    clear: both;
    text-align: center;
    margin: 60px 0 0 0;
    background: linear-gradient(#0096b3, #016d82);
    padding: 20px 0 40px;
    color: #fff;
}


footer .global-navi{
    padding: 15px 0;
}

footer .global-navi ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
    max-width: 600px;
    margin: 0 auto;
}
footer .global-navi li{
    text-align: center;
    padding: 0 15px 0 0;
    font-size: 0.75rem;
    line-height: 1rem;
}
footer .global-navi li a{
  color: #fff;
}

footer .global-navi li+li{
  border-left: 1px #fff solid;
    padding-left: 11px;
}

footer .global-navi li:last-child a:after{
  border: 0;
}

footer .global-navi ul.sub-menu{
  width: 100%;
  margin: 0;
}

footer .global-navi .sub-menu li{
  width: 100%;
}

.footer-inner{
  max-width: 1280px;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

.footer-inner .logo{
    display: inline-grid;
    grid-gap: 10px;
    margin: 10px auto 20px;
}

.footer-inner .logo_a{
    width: 185px;
    display: block;
    margin: 20px auto;
}
.footer-inner .logo a {
	display:inline-block;
}
.footer-inner .logo a:hover{
  opacity: 1;
}
.footer-inner .logo_b{
    width: 135px;
    display: block;
    margin: 0 auto;
}

footer .small small {
  text-align: center;
  clear: both;
	font-size: 0.75rem;
}




/***************
 お問い合わせ
****************/
.contact-form{
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
}

.contact-form dl{
  text-align: left;
}

.contact-form dt{
  clear: both;
  float: left;
  width: 30%;
  margin-bottom: 2rem;
  line-height: 2rem;
}

.contact-form dd{
  float: left;
  width: 69%;
  margin-left: 1%;
  line-height: 2rem;
}

.contact-form dt:nth-last-child(2),
.contact-form dt:nth-last-child(4),
.contact-form dt:nth-last-child(6),
.contact-form dt:nth-last-child(8){
  float: unset;
  width: 100%;
  margin: 0;
}

.contact-form dd:nth-last-child(7),
.contact-form dd:nth-last-child(5),
.contact-form dd:nth-last-child(3),
.contact-form dd:last-child{
  float: unset;
  width: 100%;
  margin: 0;
}

.contact-form dd input{
  width: 96%;
  line-height: 2rem;
  padding: 0 1%;
}

.contact-form .wpcf7-checkbox input{
  width: unset;
}

.contact-form .item-other input,
.contact-form .where-other input{
  line-height: 1rem;
  margin-left: 8px;
  width: 15rem;
}

.contact-form select{
  height: 2rem;
}

.contact-form textarea{
  width: 94%;
  line-height: 1.5rem;
  padding: 1% 2%;
}

.contact-form input,
.contact-form textarea{
  font-size: 16px; /* iphoneで入力時ズームを防ぐ指定 */
}

.contact-form input[type="image"]{
  width: auto;
}

form.wpcf7-form{
  margin-top: -180px;
  padding-top: 180px;
}

.contact-form form span.title{
  display: none;
}




/************************
 404エラー
*************************/
.error{
}

.error .content{
    min-height: 115px;
    height: 10rem;
    line-height: 11rem;
}

.error .content p{
    text-align: left;
    line-height: 1.5;
    padding-top: 30px;
}


/************************
 スクロールで出現する下部メニュー
*************************/
.scroll-footer {
  display: none;
  width: 100%;
  background: #ffffffe0;
  position: fixed;
  bottom: 0;
  z-index: 999;
  text-align: center;
}

.scroll-footer i{
  font-size: 30px;
  vertical-align: bottom;
}

.scroll-footer ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3px 3px;
  height: 55px;
  max-width: 1280px;
  margin: 0 auto;
}
.scroll-footer li{
  width: 21%;
  border-radius: 5px;
}
.scroll-footer li+li{
  margin-left: 3px;
}

.scroll-footer .line{
  background-color: #00b900;
}

.scroll-footer .twi{
    background-color: #1DA1F2;
    padding: 12px 0;
}
.scroll-footer .fb{
    background-color: #1877f2;
    padding: 10px 0;
}
.scroll-footer .mail{
    background-color: #009286;
    padding: 10px 0;
}
.scroll-footer .tel{
    background-color: #ca000e;
    width: 55%;
    font-size: 16px;
}

.scroll-footer a{
  display: block;
}
.scroll-footer .mail a{
  color: #fff;
}
.scroll-footer .tel a{
  color: #fff;
}
.scroll-footer .line a{
}
.scroll-footer .fb a{
  color: #fff;
}
.scroll-footer .twi a{
  color: #fff;
}

.scroll-footer .line img{
    max-width: 50px;
}

.scroll-footer .tel i{
    background-color: #fff;
    border-radius: 50px;
    color: #ca000e;
    width: 36px;
    height: 28px;
    padding: 7px 0 0 0;
    font-size: 18px;
    margin: 9px 6px 0 0;
    vertical-align: baseline;
}
.scroll-footer .fb i{
    background-color: #fff;
    border-radius: 50px;
    color: #1877f2;
    width: 36px;
    height: 28px;
    padding: 7px 0 0 0;
}



@media screen and (min-width: 769px){
.pc{display: block;}
.sp{display: none;}

a[href^="tel:"]{
  pointer-events: none;
}
.single .content a[href^="tel:"] { color: #212121 }

}



/****************
 アコーディオンメニュー
*****************/
.area{
  max-width: 580px;
  margin: 0 auto;
}

.area ul li span{
  display: block;
}

.acd-check{
    display: none;
}
.acd-label{
  background: #000;
  color: #fff;
  display: block;
  margin-bottom: 1px;
  padding: 10px;
  position: relative;
}

.faqlist .acd-label:before{
  counter-increment: faq;
  content: "【"counter(faq)"】";
}

.acd-label:after{
    background: #000;
    box-sizing: border-box;
    content: '\f067';
    display: block;
    font-family: "Font Awesome 5 Free";
    font-weight:900;
    padding: 10px 20px;
    position: absolute;
    right: 0;
    top: 0px;
}
.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    content: '\f068';
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}


/*******************
 おすすめ記事（カスタムフィールド）
********************/
.recommend_post a{
  font-weight: bold;
}

.recommend_post a:link,
.recommend_post a:visited{

}

.recommend_post a:active,
.recommend_post a:hover{
}

.top_recommend{
    width: 100%;
    padding: 30px 0 0 0;
    margin-top: 54px;
    position: relative;
}

.top_recommend img{
  width: 200px;
}

.sidebar .recommend_post p:first-child{
  text-align: left;
  overflow: hidden;
}

.sidebar p.side_title{
    padding-top: 20px;
    padding-bottom: 10px;
    color: #0097b4;
    font-weight: bold;
    border-bottom: 2px solid #0097b4;
	font-size: 1.25rem;
}




.sidebar p.side_title img{
    width: auto;
    height: 23px;
}

.sidebar .recommend_post p.side_title{
  margin: 0;
    height: auto;
}
.sidebar .recommend_post p.side_title img{
    float: none;
    width: auto;
}

.sidebar .recommend_post{
    width: auto;
    position: relative;
}

.sidebar .recommend_post div:nth-child(n+7){
  display: none;
}

.slick-arrow{
  position: absolute;
  z-index: 500;
  font-size: 2rem;
  top: 45%;
  transform: translate(0, -45%);
  -webkit-transform: translate(0, -45%);
  -ms-transform: translate(0, -45%);
	cursor: pointer;
}

.slider .fa-chevron-left{
    left: 19px;
	width: 38px;
    height: 38px;
	top: 46.5%;
}
.slider .fa-chevron-right{
    right: 19px;
	width: 38px;
    height: 38px;
	top: 46.5%;
}

.slider img{
  display: block;
}

.slider .my-dots{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
    width: 180px;
  list-style: none;
    margin: 10px auto;
}

.slider .my-dots li{
  display: block;
  width: 30px;
  text-align:center;
  position: relative;
}

.slider .my-dots li button{
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  color:#8a989b;
  text-indent: -9999px;
  width: 20px;
  margin: 0 auto;
  overflow: visible;
}

.slider .my-dots li button:before{
  content: '●';
  font-size: 20px;
  text-indent: 0px;
  position: absolute;
  top: 0;
  left: 30%;
}

.slider .my-dots li button:hover , .my-dots li button:focus{
  color: #c6d4b0; /* hover時の色を変更 */
}

.slider .my-dots .slick-active button{
  color: #c6d4b0;
}

/*
.slider li:not(.slick-active) {
  -webkit-filter: opacity(60%);
  -moz-filter: opacity(60%);
  -o-filter: opacity(60%);
  -ms-filter: opacity(60%);
  filter: opacity(60%);
}
*/
.slick-initialized:before{
    content: '';
    display: block;
    width: 38px;
    height: 38px;
    background-color: #424242;
    position: absolute;
    left: 20px;
    top: 46.5%;
    z-index: 99;
	border-radius: 100%;
	transform: translate(0, -46.5%);
	-webkit-transform: translate(0, -46.5%);
	-ms-transform: translate(0, -46.5%);
	opacity: 0.6;
}

.top_recommend .fa-chevron-left:before,
.top_recommend .fa-chevron-right:before {
	color: #FFFFFF;
	font-size: 14px;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.slick-initialized:after{
    content: '';
    display: block;
    width: 38px;
    height: 38px;
    background-color: #424242;
    position: absolute;
    right: 20px;
    top: 46.5%;
    z-index: 99;
	border-radius: 100%;
	transform: translate(0, -46.5%);
	-webkit-transform: translate(0, -46.5%);
	-ms-transform: translate(0, -46.5%);
	opacity: 0.6;
}


.recommend_post .slider div.slick-slide{
  background:#fff;
}




.top_recommend .post-categories{
    padding: 0 10px;
}

aside .post-categories{
    display: none;
}
aside .sp_recommend_list ul.post-categories li{
  float: left;
    width: auto;
    height: auto;
    margin: 0;
}

.recommend_title{
    text-align: center;
    position: relative;
    color: #FFFFFF;
    padding-top: 5px;
    font-weight: bold;
	margin-bottom: 2.5rem;
	font-size: 1.5rem;
	letter-spacing: 5px;
}
.recommend_title:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -10px;
	width: 54px;
	height: 3px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #dcdcb0;
	border-radius: 2px;
}




.recommend_post .slider img{

}
.recommend_post .slider p{
    clear: both;
    padding: 0 10px;
    line-height: 1.3rem;
    height: 2.5rem;
    overflow: hidden;
    margin-bottom: 10px;
}

.post-categories li+li{
    margin: 0 5px 5px  0;
}

.post-categories li{
    float: left;
    margin: 0 5px 0 0;
}

.post-categories li a:link{
    display: inline-block;
    padding-right: 7px;
    font-size: 0.75rem;
    line-height: 1.5rem;
    font-weight: normal;
}
.post-categories li a:link,
.post-categories li a:visited{
    color: #0097b4;
}

.post-categories li a:active,
.post-categories li a:hover{
  opacity: 0.6;
}

/*.single .post-categories li a:link{*/
.post-categories li a:link{
    display: inline-block;
    font-size: 0.75rem;
    line-height: 1.5rem;
    background: linear-gradient(#016d82, #0096b3);
    text-align: center;
    font-weight: bold;
    padding: 6px 13px 4px 13px;
}

/*.single .post-categories li a:link,
.single .post-categories li a:visited{*/
.post-categories li a:link,
.post-categories li a:visited{
    color: #fff;
}


.recommend_post h2{
    padding: 25px 0;
    text-align: center;
    font-size: 1.3rem;
}


.top_editorial > div {
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #f5f5f5;
    position: relative;
    display: inline-block;
    height: 175px;
    width: 100%;
}
.top_editorial > div:last-child {border-bottom: none;}

.top_editorial > div img {
	width: 262px;
    height: auto;
    position: absolute;
    left: 0;
    top: 0;
}
.top_editorial h3 {
    line-height: 1.5;
    margin: 0 0 5px 280px;
    padding-left: 0;
    font-size: 1rem;
	color: #212121;
}
.top_editorial h3:hover {
	opacity: 0.6;
}

.top_editorial .excerpt {
	padding-left: 280px;
	overflow: hidden;
	line-height: 1.8;
	font-size: 0.875rem;
}

.top_editorial time {
	padding-left: 280px;
}

.top_editorial .post-categories {
	padding-left: 280px;
	overflow: hidden;
}


@media screen and (max-width: 1280px){

.top_editorial > div {
	height: 100%;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #f5f5f5;
}
.top_editorial > div:last-child {
	border-bottom: none;
}

.top_editorial .excerpt {
	display: none;
}
.top_editorial > div time img {
	top: 0px;
}
.top_editorial > div img {
	position: static;
	width: 100%;
}
.top_editorial h3 {
	margin: 10px 0px;
}
.top_editorial time,
.top_editorial .post-categories {
		padding-left: 0;
	margin-bottom: 0;
}


}





/*********************
 上に戻るリンク
**********************/

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  background: #0097B4;
  opacity: 0.6;
  border-radius: 50%;
  display: none;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
scroll-behavior: smooth;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -5px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}


@media screen and (max-width: 1280px){
	#page_top { bottom: 160px; }
}
@media screen and (max-width: 740px){
	#page_top { bottom: 150px; }
}
@media screen and (max-width: 640px){
	#page_top { bottom: 130px; }
}
@media screen and (max-width: 428px){
	#page_top { bottom: 90px; }
}

.page_top { bottom: 10px!important; }




/*********************
 検索結果
**********************/
.search .no_keyword{
    padding: 0 0 30px 0;
    margin-bottom: 30px;
    font-size: 1.5rem;
}

.search h1 span,
.search h2 span{
    color: #0097b4;
}

.search .main{
    margin-top: 40px;
}

/***************
 目次プラグイン
****************/
main div#toc_container{
    border: 4px #E5E5E5 solid;
    padding: 16px;
    margin: 0 auto 35px auto;
}

main div#toc_container p.toc_title{
    color: #000;
    text-align: left;
    border-left: 8px #FF1F89 solid;
    padding-left: 8px;
    line-height: 1.5rem;
}

main div#toc_container p.toc_title a:link,
main div#toc_container p.toc_title a:visited{
    color:#FF1F89;
}

main div#toc_container ul.toc_list a:link,
main div#toc_container ul.toc_list a:visited{
   display: block;
    color: #212121;
}

main div#toc_container ul.toc_list li:first-child a:link,
main div#toc_container ul.toc_list li:first-child a:visited{
}

main div#toc_container ul.toc_list li:last-child a:link,
main div#toc_container ul.toc_list li:last-child a:visited{
  /*
  border-bottom: 0;
  */
}

main div#toc_container ul.toc_list a:link span.toc_number{
    font-weight: bold;
    margin-right: 10px;
}
main div#toc_container ul.toc_list a:link span.toc_number,
main div#toc_container ul.toc_list a:visited span.toc_number{
    color:#FF1F89;
}

main div#toc_container ul.toc_list a:hover,
main div#toc_container ul.toc_list a:hover{
  text-decoration: none;
}

main div#toc_container ul.toc_list li ul a:link{
  border: 0;
  line-height: 1.6;
}

main #toc_container ul.toc_list li+li{
    border-top: 1px #e5e5e5 solid;
}

main #toc_container ul.toc_list li ul{
    border-top: 1px #e5e5e5 solid;
    margin: 0;
    padding: 7px 0 7px 1.5em;
}
main #toc_container ul.toc_list li ul li ul{
  border: 0;
}

main #toc_container ul.toc_list li ul li+li{
  border: 0;
}

@media screen and (max-width: 1280px){
main #toc_container ul.toc_list li{

}
}



/***************
 目次プラグイン差し替え
****************/

div.lwptoc {
    width: 80%;
    margin: 0px auto 35px;
	line-height: 1.5;
	border: 1px solid #0097b4;
}

div.lwptoc:first-child { margin-top: 0px; }

div.lwptoc .lwptoc_i .lwptoc_item a ,div.lwptoc .lwptoc_i .lwptoc_item a:visited { color: #212121; line-height: 1.6; }
div.lwptoc .lwptoc_i .lwptoc_toggle a { color: #0097b4; font-size: 0.875rem; }
div.lwptoc .lwptoc_item a:hover {
    color: #212121;
    display: block;
}

.lwptoc_i .lwptoc_header { margin-bottom: 0; }
.lwptoc_i .lwptoc_items { font-size: auto; margin-top: 1em; }

div.lwptoc .lwptoc_i {
    background-color: #ffffff;
	padding: 20px;
}
.lwptoc_title {
    border-left: 8px #0097b4 solid;
    padding-left: 8px;
    line-height: 1.5rem;
	font-size: 1.06rem;
}

.lwptoc_item .lwptoc_item_number {
	color: #0097b4;
    font-weight: bold;
    margin-right: 10px;
}

.lwptoc_items > .lwptoc_itemWrap > .lwptoc_item { border-top: 1px #e5e5e5 solid; padding-top: 5px; font-size: 1.06rem; }
.lwptoc_items > .lwptoc_itemWrap > .lwptoc_item:first-child { border-top: none; }


.lwptoc_items > .lwptoc_itemWrap > .lwptoc_item > .lwptoc_itemWrap { border-top: 1px #e5e5e5 solid; margin-left: 0; padding: 7px 0 7px 1.5em; }

div.lwptoc-notInherit .lwptoc_i div a:hover { border-bottom: none!important }


@media screen and (max-width: 1280px){

	div.lwptoc {width: 97%; margin: 0 auto 15px auto; }
	div.lwptoc .lwptoc_i > .lwptoc_items > .lwptoc_itemWrap > .lwptoc_item > a { line-height: 2; }

}

/*********************
 運営情報
**********************/


main.page h1 { font-size: 1.56rem; margin-bottom: 30px; }

.tbl_operation { width: 100%;}

.tbl_operation a { color: #0097b4; }

.tbl_operation tr td { padding: 15px 10px 15px 10px; font-size: 0.93rem; line-height: 1.5; }

.tbl_operation tr td:first-child {
    background-color: #0097B4;
    color: #FFFFFF;
	width: 30%;
	text-align: center;
}

/*********************
 プライバシーポリシー
**********************/

.policy h2 {
    font-size: 1.25rem;
    border-bottom: 3px solid #0097B4;
	line-height: 2rem;
	margin-top: 30px;
}
.policy h2:first-child { margin-top: 0px; }
.policy p { line-height: 1.6; }

.policy ol { margin-left: 2rem; margin-top: 10px; line-height: 1.6; }
.policy ul { margin-left: 1.5rem; margin-top: 10px; line-height: 1.6; list-style: disc; }

.policy p:nth-last-of-type(3) {
    margin: 20px 0 20px 0;
}

/*********************
 サイトマップ
**********************/

ul#sitemap_list ,#sitemap_list .post-item { list-style: disc; line-height: 1.5; margin-left: 1.5rem; }

#sitemap_list a {
    color: #0097B4;
}


ul#sitemap_list li { margin-top: 12px; }

ul#sitemap_list > li:not(:nth-of-type(2)) { margin-top: 30px; }



/*******************
 SP サイドメニューが落ちる幅1280pxで設定
********************/

#h-content {display: none;}


@media screen and (max-width: 1280px){
html{
  font-family:
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Helvetica Neue",
    Arial,
    Meiryo,
    sans-serif;
  font-size: 15px;
  line-height: 0;
}

.pc{display: none;}
.sp{display: block;}


body {
	transition: all .5s;
	left: 0px;
	position: absolute;
	width: 100%;
	}
body.fixed {
	overflow: hidden;
	left: -250px;
	width: 100%;
	height: 100%;
	transition: all .5s;
}



.mainContents{
    max-width: 100vw;
}

.mainContents .sidebar,
main.paged .sidebar{
  width: 100%;
  box-sizing: border-box;
  border: 0;
  padding: 0 15px;
  margin: 0;
}

.front aside{
  padding-top:0;
}

.single article.main{
  padding:0;
}

.single .top_cat{
    margin-left: 13px;
}

article.main{
  width: 100%;
  box-sizing: border-box;
  margin: 0;
    padding: 0 15px 0 15px;
}

footer .footer-inner .logo{
}

.sidebar .recommend_post{
    padding: 30px 0 0 0;
	margin-bottom: 0;
}

aside .post-categories{
    display: block;
}

aside .post-categories li{
  float: left;
}

footer{
    padding: 10px 0 110px 0;
    margin: 0;
}

body.fixed header {
	left: -250px;
	transition: all .5s;
}

header{
	height: 56px;
    border-top: 4px #0097b4 solid;
	position: fixed;
	left: 0;
	transition: all .5s;
}



header .logo{
  max-width: 100%;
	margin-top: 0;
}

header .header-inner{
  height: 60px;
}

header .center_banner{
    width: 215px;
}



header .h-logo img{}

main{
    margin-top: 98px;
}

.top-cam span{
  background: #fff;
    box-shadow: 0px 0 13px #ccc;
    bottom: 0;
}

.top-cam span img{
    width: 85%;
}

.select img{
    box-shadow: 0px 5px 20px #ccc;
}

.recommend_title { font-size: 1.07rem; }

.single .content{
    margin: 0 15px;
    max-width: 100%;
    box-sizing: border-box;
}

.loop .loop_txt,
.sidebar .sp_recommend{
    margin: 0 0 1rem 280px;
}



.sidebar .recommend_post .slide_title{
    font-size: 0.875rem;
    margin-bottom: 5px;
	line-height: 1.5;
	display: block;
}
.sidebar .recommend_post time{
    margin: 10px 0 0 0;
}
.sidebar .recommend_post img{
    width: 262px;
    height: 174px;
}

.single aside .post-categories{
  margin: 0;
}

.top_recommend{
  margin: 60px auto 0 auto;
}
.recommend_post .slider li.slick-slide{
  margin: 0 5px;
}


.top_recommend{
    margin-bottom: 0;
    padding: 38px 0 5px 0;
}



.sidebar > div:nth-of-type(2) {
    box-shadow: none;
	padding: 0px;
}

.sidebar .recommend_post p.side_title{
    margin-bottom: 35px;
}

.sidebar .recommend_post p.side_title:before{
    left: 50px;
}

.sidebar .recommend_post p.side_title:after{
    right: 8px;
}

.sidebar .recommend_post p.side_title li{
  position: relative;
}

.sidebar .recommend_post .sp_recommend_list {
    display: inline-block;
    width: 100%;
    height: auto;
    margin: 15px auto;
}

.sidebar .recommend_post img{
    width: 262px;
    height: 174px;
}


.sidebar p.side_title{
    margin: 0 auto;
}

.sidebar .category_side{
    padding: 15px 0 0 0;
}

.category_side a:link, .category_header a:link {
    font-size: 1rem;
	line-height: 2.0;
	padding: 10px 35px 8px 0;
}

.category_header .category-list,
.category_side .category-list{
    margin: 10px 0 25px 0;
}


aside .category_side li,
.category_header li{
    padding-left: 20px;
    border-bottom: 1px #e5e5e5 solid;
}
.category_header li {
	height: 100%;
}


aside .category_side li.child,
.category_header li.child{
    padding-left: 20px;
    border-bottom: 1px #cfcfcf solid;
}
.sidebar p.side_title { font-size: 1.06rem; }

.sidebar p.side_title {
	position: relative;
	border-bottom: none;
	text-align: center;
	padding-top: 0px;
    padding-bottom: 0px;
	margin: 25px 0 2rem 0;
}
.sidebar p.side_title:after {
	content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    width: 60px;
    height: 2px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #dcdcb0;
    border-radius: 2px;
}

ul.tag li a:link {
	font-size: 0.93rem;
	padding: 3px 15px;
}

.sidebar ul.tag {
	padding-top: 0px;
}


.category_side li:after{
    right: 10px;
    display: block;
    width: 12px;
    height: 12px;
}

aside .searchformBox{
  display: none;
}

.searchformBox input{
    width: 77%;
	border: 1px solid #0097b4;
}



h1{
    font-size: 1.1rem;
    padding: 0;
    margin: 25px auto 20px;
}

.paged h1,
.archive h1,
.tagpage h1,
main.new h1 {
    font-size: 1.06rem;
    text-align: center;
    line-height: 1.5;
    margin-top: 2rem;
    margin-bottom: 2.5rem;
}

h2{
  font-size: 1.1rem;
  margin: 2rem 0 2rem 0;
	text-align: center;
	line-height: 1.5;
}

main.front h2 { margin-top: 25px; }

main.front h2:after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -5px;
	width: 60px;
	height: 2px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #dcdcb0;
	border-radius: 2px;
}

.paged h1:after, .archive h1:after, .tagpage h1:after, main.front h2:after, main.new h1:after {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	bottom: -10px;
}

h3{
    font-size: 1.06rem;
	margin-top: 50px;
}

.loop h2,
.loop h3{
  font-size: 0.875rem;
  width:100%;
}

time {
  margin-bottom: 5px; font-size: 0.875rem; margin-top: -5px;
}

.loop time {
	margin-top: 0px;
  order:3;
}

.loop .loop_txt .excerpt{
	display: none;
}

.pagenation{
    margin: 15px 0 0 0;
}

.pagenation a.next,
.pagenation a.prev{
    position: absolute;
    display: none;
}

.pagenation a.next{}

.pagenation a.prev{
}

.pagenation a:link,
.pagenation a:active,
.pagenation a:hover,
.pagenation .current,
.pagenation span.current{
  width: 36px;
  height: 36px;
    font-size: 1.2rem;
    line-height: 2.4rem;
}

#breadcrumb{
    background-color: #F7F7F7;
    padding: 0 10px;
    line-height: 2rem;
    max-width: 100%;
    height: 2rem;
}

#breadcrumb ul{
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    list-style: none;
    clear: both;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    white-space: nowrap;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
}

	#breadcrumb ul li { font-size: 0.75rem; }

.single #breadcrumb{
    height: 2rem;
    padding: 2px 0 0 10px;
	font-size: 0.75rem;
	width: auto;
}

.archive #breadcrumb,
.tagpage #breadcrumb{
  width: 100%;
}

.single .writer img{
    left: 16px;
    width: 90px;
    height: 90px;
    top: 20px;
}

.single .writer p,
.single .writer span{
    margin-left: 120px;
    display: inline-block;
    line-height: 1.5rem;
    margin-right: 5px;
}

.single .writer p{
  font-size: 1.2rem;
}

.single h1,
.single time,
.single .banner,
.single .cat,
.single .writer,
.single .sns{/*左右余白*/
  margin-left:15px;
  margin-right:15px;
    line-height: 2;
}

.single .relatedposts{
    margin:0;
}

.single h1{
  line-height:1.3;
	font-size: 1.375rem;
}

.single .post-categories{
  margin-right:15px;
}

.single .top_cat .post-categories {
    padding-top: 0;
}

.single .relatedposts .cell .post-right{
  width: calc(100% - 235px);
}

.single .relatedposts .cell{
    padding-left: 0;
}

.single .writer{
  margin: 0 15px 30px 15px;
	position: static;
	background-size: auto;
	padding-top: 40px;
}

.single .writer > p:first-child{
  font-size: 0.875rem;
  box-sizing: border-box;
  padding: 5px 10px;
	width: auto;
}

.single .writer > div { position: relative; min-height: 110px; }

.single .sns{
  margin: 0 15px 30px 15px;
}
.single .sns > p {
	line-height: 1;
}

.single .sns li a{
    width: 145px;
    margin: 12px 11px;
}

.slick-slide img {
    width: 100%;
}

.single .sp_recommend .post-categories li a:link{
    background: none;
    border: 0;
    padding: 0;
    margin-right: 9px;
}

.single .sp_recommend .post-categories li a:link,
.single .sp_recommend .post-categories li a:visited{
    color: #0097b4;
}

.single .description{
    padding: 20px;
    line-height: 1.6;
    font-size: 0.875rem;
	margin-top: 15px;
}

.single .eye{
    display: block;
    margin: 0 auto;
    height: auto;
}

main div#toc_container{
    width: 97%;
    box-sizing: border-box;
    margin: 0 auto 15px auto;
}

.single .content ul{
    padding: 0 10px 30px 5px;
}

.single .content p { font-size: 1.06rem; }

.single h4 span,
.single h3 span,
.single h2 span{
  padding-top: 90px;
  margin-top: -90px;
  pointer-events: none;
}

.single h2 { font-size: 1.06rem; padding: 20px 1rem 19px 1rem; text-align: left; }

.single .relatedposts .cell .post-right a{
    line-height: 1.2;
    display: inline-block;
    padding: 0;
}

.single .relatedposts .cell .post-right ul a{
    padding: 10px 15px 8px 15px;
}
.wp-block-table{
    padding: 15px 5px 30px 5px;
}

.policy h2 { text-align: left; }



/******************
 ハンバーガーメニュー
*******************/
.overlay{
    background: rgba(0,0,0,0.6);
    height: 100vh;
    position: fixed;
    width: 100%;
    top: 0;
}


#h-content {display: block;}

#h-button {
    height: 45px;
    width: 45px;
    cursor: pointer;
    position: absolute;
    right: 5px;
    top: 5px;
}
#h-pop_up {
    position: relative;
}
#h-pop_up > div {
	position: absolute;
	background: #fff;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	overflow-y: scroll;
	right : -250px;
	width: 250px;
	top: -64px;
	padding: 10px 11px 0px 10px;
	box-sizing: border-box;
	height: 100vh;
    max-height: 100vh;
	padding-bottom: 100px;
}

#h-pop_up > div > p {
	color: #0097b4;
	font-weight: bold;
	margin-bottom: 20px;
}

#h-pop_up .searchformBox {
	margin-top: 10px;
}


body.h-pop {
  overflow:hidden;
}

#h-button p {
    position: relative;
    width: 50px;
    height: 50px;
    display: block;
}
#h-button span{
    background: #080301;
    height: 3px;
    width: 24px;
    display: block;
    position: absolute;
    top: 12px;
    right: 15px;
    transition: all .3s ease-out;
}
#h-button span:before{
  content: '';
    background: #080301;
    height: 3px;
    width: 24px;
    display: block;
    border-radius: 10px;
    position: absolute;
    top: 9px;
    transition: all .3s ease-out;
}

#h-button span:after{
  content: '';
    background: #080301;
    height: 3px;
    width: 24px;
    display: block;
    border-radius: 10px;
    position: absolute;
    top: 18px;
    transition: all .3s ease-out;
}


#h-button p.on span {
	background: none;
	top: 7px;
}

#h-button p.on span:before{
    transform: rotate(45deg);
    transition: all .3s ease-out;
    top: 15px;
}

#h-button p.on span:after{
    transform: rotate(-45deg);
    top: 15px;
    transition: all .3s ease-out;
}

#h-pop_up #menu-header_menu_sp > li ul { display: none; }



footer .global-navi li:last-child{
    padding-right: 0;

	}

#h-pop_up #menu-header_menu_sp > li > a:after {
    content: '';
    width: 5px;
    height: 5px;
    border: 0;
    border-top: solid 2px #0097b4;
    border-right: solid 2px #0097b4;
    position: absolute;
    top: 23px;
    right: 10px;
    margin-top: -4px;
    transform: rotate(135deg);
}

.category_side li:after, .category_header li:after { content: none; }

#h-pop_up #menu-header_menu_sp > li .sub-menu li:after,
#h-pop_up #menu-header_menu_sp > li > a.on:after,
#h-pop_up #menu-header_menu_sp > li.nav-experience > a:after {
    content: '';
    width: 5px;
    height: 5px;
    border: 0;
    border-top: solid 2px #0097b4;
    border-right: solid 2px #0097b4;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -4px;
    transform: rotate(45deg);
}

#h-pop_up #menu-header_menu_sp > li > a.on {
	position: relative;
	border-bottom: 1px #e5e5e5 solid;
}


#h-pop_up #menu-header_menu_sp > li {
	padding-left: 0px;
}




}





footer.page,
footer.home { padding: 20px 0 40px ;}

@media screen and (max-width: 740px){
footer,
footer.page-child{ padding-bottom: 25%; }
}
@media screen and (max-width: 470px){
footer,
footer.page-child{ padding-bottom: 27%; }
}


@media screen and (max-width: 534px){
.loop .loop_txt .excerpt{
  display: none;
}
}

@media screen and (max-width: 520px){/*中間*/
.loop img,
.sidebar .recommend_post img{
    width: 117px;
    height: 78px;
}

.loop .loop_txt .excerpt{
  display: none;
}

.loop li{
  margin-bottom: 2px;
  min-height: auto;
  margin-top: 10px;
}

.loop .loop_txt,
.sidebar .sp_recommend{
      margin: 0 0 0 125px;
}
/*
.loop .loop_txt .post-categories{
    margin-top: -10px;
}
*/
.sidebar .recommend_post .sp_recommend_list {
    margin: 0;
}

.sidebar .recommend_post ul>li{
  width: 100%;
}

.sidebar .recommend_post time{
  margin: 0;
}
.sidebar .recommend_post time.sp { height: auto; }

	.post-categories li { height: auto; }

.top_recommend .slick-slider .slick-list{
  padding:0!important;
}


.slider .slick-slide:not(.slick-active){
    -webkit-filter: opacity(100%);
    -moz-filter: opacity(100%);
    -o-filter: opacity(100%);
    -ms-filter: opacity(100%);
    filter: opacity(100%);
}

.single .relatedposts .cell{
  padding: 0;
  margin-bottom: 20px;
}

.single .relatedposts .cell img{
  width: 117px;
  height: 78px;
}

.single .relatedposts .cell .post-right{
    box-sizing: border-box;
    width: calc(100% - 130px);
}

.single .post-categories{
    margin-bottom: 5px;
}

.single .sidebar{
    margin-top: 20px;
}

}



/****************
 ショートコード用css
*****************/
.check1{
    position: relative;
    border: 1px #ff1f89 solid;
    border-radius: 5px;
    padding: 15px 15px 15px 85px;
    background: #fff5fa;
    width: 95%;
    margin: 30px auto;
    box-sizing: border-box;
    line-height: 2;
}
.single .check1 p{
    font-weight: bold;
    font-size: 1.1rem;
    margin: 0;
}

.check1:before{
    content: '\f05a';
    font-family: 'font awesome 5 FREE';
    font-weight: bold;
    color: #ff1f89;
    font-size: 42px;
    position: absolute;
    top: 41%;
    left: 43px;
    transform: translateX(-45%);
    -webkit-transform: translateX(-45%);
    line-height: 1;
}


.check2{
    position: relative;
    border: 2px #0693e3 solid;
    border-radius: 0 5px 5px 5px;
    padding: 15px;
    width: 95%;
    margin: 65px auto 30px auto;
    box-sizing: border-box;
    line-height: 2;
}
.single .check2 p{
    font-weight: bold;
    font-size: 1.1rem;
    margin: 0;
}

.check2:before{
    content: '\f00c';
    font-family: 'font awesome 5 FREE';
    font-weight: bold;
    color: #fff;
    font-size: 16px;
    position: absolute;
    top: -32px;
    left: -2px;
    width: 95px;
    background: #0693e3;
    padding-left: 12px;
    border-radius: 5px 5px 0 0;
    height: 31px;
}

.check2 span{
    position: absolute;
    top: -32px;
    left: 31px;
    color: #fff;
    font-weight: bold;
    font-size: 15px;
    background: #0693e3;
    border-radius: 0 5px 0 0;
    height: 31px;
    box-sizing: border-box;
    padding: 2px 19px 0 0;
}

.single .border{
    border: 1px #ccc solid;
    padding: 9px 17px;
    width: 90%;
    margin: 0 auto 2rem auto;
    box-sizing: border-box;
}

.single .wp-block-image figcaption{
    text-align: center;
    font-size: 0.8rem;
    margin: 0;
}

.single .wp-block-word-balloon-word-balloon-block{}

.single .wp-block-word-balloon-word-balloon-block .w_b_talk p{
    margin: 0;
    line-height: 1.5rem;
    font-size: 0.9rem;
}

.single .blue-box{
    border: 2px #1da1f2 solid;
    border-radius: 5px;
    padding: 15px;
    width: 95%;
    margin: 30px auto;
    box-sizing: border-box;
}

.single .wp-block-buttons a:link{
  text-decoration: none;
}
.single .wp-block-buttons a:link,
.single .wp-block-buttons a:visited{
  color: #fff;
}


/*****************
 ブログカード外部リンク用css
 ※内部リンクは /css/wp-embed-template.css で設定（iframe内のため）
******************/
.blogcard{
    position: relative;
    border: 1px solid #e5e5e5;
    white-space: normal;
    padding: 15px;
    font-family:'Meiryo','Avenir','MS Pゴシック', 'Osaka', sans-serif;
}

.single .content .blogcard a:link{
  text-decoration: none;
}
.single .content .blogcard a:link,
.single .content .blogcard a:visited{
    color: #212121;
}


.blogcard_thumbnail{
  float: left;
}

.blogcard_content{
    margin-left: 220px;
    position: relative;
    height: 152px;
}

.blogcard_title{
    font-size: 1rem;
    font-weight: bold;
}

.blogcard_title:hover{
  opacity: 0.6;
}

.single .blogcard_content p{
  background: #999999;
  border:1px #999999 solid;
  color: #fff;
  box-sizing: border-box;
  position: absolute;
  bottom: 0;
  width: 100%;
  padding:5px 10px;
  text-align: center;
  margin: 0;
  font-size: 0.9rem;
  border-radius: 3px;
}

.single .blogcard_content p:after {
	content: '';
    width: 8px;
    height: 8px;
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    position: absolute;
    top: 50%;
    right: 170px;
    margin-top: -5px;
    transform: rotate(45deg);
}

.single .blogcard_content p:hover{
  background: #fff;
  color: #999999;
}
.single .blogcard_content p:hover:after {
	border-top: solid 2px #999999;
    border-right: solid 2px #999999;
}


.wp-block-embed__wrapper {
    position: relative;
    width: 100%;
}

.wp-block-embed__wrapper:before {
    content:"";
    display: block;
    padding-top: 250px;
}

.single .wp-block-embed-youtube{
  height: auto;
}

.wp-block-embed-youtube > div {
    position: relative;
    width: 100%;
    max-width: 730px;
}

.wp-block-embed-youtube > div:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}


.main .wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.paged .sidebar{
  margin-top: 25px;
}


@media screen and (max-width: 768px){
.blogcard{
  height: 145px;
  font-family:
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Helvetica Neue",
    Arial,
    Meiryo,
    sans-serif;
}

.blogcard img{
  width: 140px;
}

.single .blogcard_content p:after {
    right: 35px;
}

.single .blogcard_content{
    margin-left: 150px;
    height: auto;
    position: static;
}

.single .blogcard_content p{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    bottom: 8px;
    width: 95%;
}

.check1{
    width: 100%;
    padding: 30px 8px 15px 8px;
}
.check1:before{
    font-size: 20px;
    top: 6px;
    left: 50%;
    transform: translateX(-50%);
}

.check2{
  width: 100%;
    padding: 5px;
}

.single div.check2 ul{
    padding: 0 10px 0 0;
}

.single .border{
    margin: 0 auto;
    width: 100%;
}



iframe.wp-embedded-content {
}
.single .wp-block-embed{
    height: auto;
}


.wp-block-embed__wrapper:before {
    content:"";
    display: block;
    padding-top: 160px;
}


main.single .content img{
  max-width: 100%;
}



}


/*ページャー下・追従バナー追加*/

.pagenation_banner {
	width: 640px;
	margin: 40px auto 0px;
	text-align: center;
}
.pagenation_banner p { font-size: 0.875rem; }
.pagenation_banner img { margin-top: 5px; }


@media screen and (max-width: 1280px){

.pagenation_banner img { margin-top: 10px; }

.pagenation_banner { width: 100%; }

}


.follow_banner {
	display: none;
}

@media screen and (max-width: 1280px){




.follow_banner {
	width: 100%;
	display: inline;
	position: fixed;
	bottom: 0px;
	left: 0;
	right: 0;
	text-align: center;
	transition: all .5s;
	z-index: 2;
}



body.fixed .follow_banner {
		left: -250px;
    	transition: all .5s;
}

#h-pop_up .follow_banner {
	position: static;
	display: block;
	margin-bottom: 5px;
}



}


/*フロント追加*/


.more {
	color: #888888;
	width: 440px;
	border: 1px solid #888888;
	text-align: center;
	box-sizing: border-box;
	margin: 25px auto 0 auto;
	line-height: 50px;
}
.more a {
	display: block;
	color: #888888;
}
.more:hover,.more a:hover {opacity: 0.4;}


@media screen and (max-width: 1280px){

.more {
	width: 76%;
	margin-bottom: 50px;
}

}


@media screen and (max-width: 1280px){

body.search article ul.loop,
body.error404 article ul.loop,
body.category article ul.loop,
body.tag article ul.loop {
	display: flex;
	flex-wrap: wrap;
}
body.search article ul.loop > li,
body.error404 article ul.loop > li,
body.category article ul.loop > li,
body.tag article ul.loop > li {
	width: 50%;
	box-sizing: border-box;
	height: auto;
  margin-bottom:5px;
}
body.search article ul.loop li:nth-of-type(odd),
body.error404 article ul.loop li:nth-of-type(odd),
body.category article ul.loop li:nth-of-type(odd),
body.tag article ul.loop li:nth-of-type(odd) {
	padding-right: 5px;
}
body.search article ul.loop li:nth-of-type(even),
body.error404 article ul.loop li:nth-of-type(even),
body.category article ul.loop li:nth-of-type(even),
body.tag article ul.loop li:nth-of-type(even) {
	padding-left: 5px;
}

body.search article ul.loop li a > img,
body.error404 article ul.loop li a > img,
body.category article ul.loop li a > img,
body.tag article ul.loop li a > img,
body.page article section.new ul.loop div a > img {
	width: 100%;
	height: auto;
	position: static;
}
body.search article ul.loop li .loop_txt,
body.error404 article ul.loop li .loop_txt,
body.category article ul.loop li .loop_txt,
body.tag article ul.loop li .loop_txt,
body.page article section.new ul.loop li .loop_txt {
	margin: 10px 0 0 0;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

}




.sidebar .loop .loop_txt > p {
	font-weight: bold;
	margin-bottom: 5px;
}

@media screen and (min-width: 1281px){


.sidebar .ranking_list {margin-top: 1rem;}

.sidebar .loop li {
	height: auto;
}
.sidebar .loop li:last-child {
	margin-bottom: 1rem;
}

.sidebar .loop li img {
	position: static;
}

.sidebar .loop .loop_txt {
    margin: 10px 0 0 0;
}
.sidebar .loop .loop_txt .excerpt {
	display: none;
}

}


@media screen and (max-width: 1280px){

.sidebar .loop {margin-top: 1rem;}

}



.wpp-no-data {
	display: none;
}


.ranking_list > ul {
	counter-reset: wpp-ranking;
}

main .ranking_list > ul > li {
	position: relative;
}

.ranking_list > ul > li:before {
	content: counter(wpp-ranking, decimal);
	counter-increment: wpp-ranking;
	background: #0097b4;
	color: #FFFFFF;
	font-size: 20px;
	line-height: 38px;
	text-align: center;
	box-sizing: border-box;
	width: 35px;
	height: 35px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	font-weight: bold;
}

main .ranking_list > ul > li time {
	background: url(img/icon/icon_pen.svg) no-repeat 0 2px;
	background-size: 14px;
	padding-left: 18px;
}
.single .ranking_list .post-categories li a:link,
.single .ranking_list .post-categories li a:visited {
	color: #0097b4;
	background: none;
	padding-left: 0;
}





.twitter {
	width: 90% !important;
	margin: 1rem auto 90px;
	max-width: 735px;
	clear: both;
	background-color: #0097B4;
	padding: 10px;
	position: relative;
}

.twitter .twitter_title{
	color: #FFFFFF;
	font-weight: normal;
	font-size: 18px;
	margin-top: 10px;
}
.twitter .twitter_title i {
	padding-right: 5px;
}
.twitter .twitter_title span {
	display: block;
	margin-top: 10px;
	font-size: 14px;
	padding-top: 0;
}

.twitter iframe {
	height: 400px!important;
}

.twitter iframe .timeline-Body {
	overflow-x: hidden!important;
    overflow-y: scroll!important;
    -ms-overflow-style: -ms-autohiding-scrollbar!important;
}

h1.timeline-Header-title {
	font-size: 1px!important;
}

@media screen and (max-width: 1280px){

.single time img {
	top: -5px;

}
.loop time img {
	top: -1px;
}
main.single .ranking_list > ul > li time {
    background: url(img/icon/icon_pen.svg) no-repeat 0 7px;
    background-size: 14px;
    padding-left: 18px;
	margin-left: 0;
  font-size:11px;
}

.ranking_list > ul > li:before {
	font-size: 14px;
	width: 27px;
	height: 27px;
	line-height: 30px;
}

.sp_head {
	position: absolute;
	top: 60px;
	overflow-x: auto;
	text-align: center;
	width: 100%;
	max-width: 100%;
	background-color: #0097B4;
	z-index: 1;
}
.sp_head ul {
	display: flex;
	justify-content: flex-start;
	/*justify-content: flex-start;*/
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    list-style: none;
    clear: both;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    white-space: nowrap;
    overflow-scrolling: touch;
    -webkit-overflow-scrolling: touch;
}

.sp_head ul a {
	color: #ffffff;
	display: block;
	padding: 12px 20px;
	font-size: 12px;
}

body.search .sidebar .ranking_list .loop > li,
body.error404 .sidebar .ranking_list .loop > li,
body.archive .sidebar .ranking_list .loop > li,
body.home .sidebar .ranking_list .loop > li,
body.home article .loop > li,
main.new article .loop > li {
	height: 100%;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #f5f5f5;
}


body.page .sidebar .ranking_list .loop > li,
body.search article ul.loop > li,
body.error404 article ul.loop > li,
body.category article ul.loop > li,
body.tag article ul.loop > li,
body.search .sidebar .ranking_list .loop > li:last-child,
body.error404 .sidebar .ranking_list .loop > li:last-child,
body.archive .sidebar .ranking_list .loop > li:last-child,
body.home .sidebar .ranking_list .loop > li:last-child,
body.home article .loop > li:last-child,
main.new article .loop > li:last-child {
	border-bottom: none;
}


body.search .sidebar .ranking_list .loop > li a img,
body.error404 .sidebar .ranking_list .loop > li a img,
body.archive .sidebar .ranking_list .loop > li a img,
body.home .sidebar .ranking_list .loop > li a img,
body.home article .loop > li a img,
main.new article .loop > li a img {
	width: 100%;
	height: 100%;
	position: static;
}
body.search .sidebar .ranking_list .loop .loop_txt,
body.error404 .sidebar .ranking_list .loop .loop_txt,
body.archive .sidebar .ranking_list .loop .loop_txt,
body.home .sidebar .ranking_list .loop .loop_txt,
body.home article .loop .loop_txt,
main.new article .loop .loop_txt {
	margin-left: 0;
	margin-top: 10px;
	height: auto;
}
body.search .sidebar .ranking_list .loop .post-categories li,
body.error404 .sidebar .ranking_list .loop .post-categories li,
body.archive .sidebar .ranking_list .loop .post-categories li,
body.home .sidebar .ranking_list .loop .post-categories li,
body.home article .loop .post-categories li,
main.new article .loop .post-categories li {
	margin-bottom: 0;
}


}

.side_banner {
	width: 100%;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
@media screen and (max-width: 1280px){
	.side_banner {padding-bottom: 15px;}
}


/*初めての方へ*/

main.page section.labo article p,
main.page section.esthetic article p {
	margin-bottom: 0.6rem;
    line-height: 1.6;
    padding: 10px;
    max-width: 100%;
    overflow: hidden;
}
main.page section.labo article h2,
main.page section.esthetic article h2 {
  border-left: 10px #0097b4 solid;
  font-size: 1.25rem;
  color: #0097b4;
  margin: 75px 0 0.5rem;
  padding-left: 10px;
  line-height: 1.5;
  text-align: left;
}

main.page section.labo article h3,
main.page section.esthetic article h3 {
  font-weight: bold;
  font-size:1rem;
  clear: both;
  color: #000;
}


@media screen and (max-width: 1280px){

a:active,
a:hover{
  opacity: 1;
}


/* TOP表示のデザイン調整 */
.category-beginner .main ul.loop li,
.front .main ul.loop li,
.category-experience .main ul.loop li{
  min-height:auto;
  width: 100%;
}
.category-beginner .main ul.loop li:not(:first-of-type),
.front .main ul.loop li:not(:first-of-type),
.category-experience .main ul.loop li:not(:first-of-type){
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.category-beginner .main ul.loop li:not(:first-of-type) div:first-of-type,
.front .main ul.loop li:not(:first-of-type) div:first-of-type,
.category-experience .main ul.loop li:not(:first-of-type) div:first-of-type{
  width:42%;
}

.category-beginner .main ul.loop li:not(:first-of-type) div:first-of-type img,
.front .main ul.loop li:not(:first-of-type) div:first-of-type img,
.category-experience .main ul.loop li:not(:first-of-type) div:first-of-type img{
width: auto;
height: auto;
}
.category-beginner .main ul.loop li:not(:first-of-type) .loop_txt,
.front .main ul.loop li:not(:first-of-type) .loop_txt,
.category-experience .main ul.loop li:not(:first-of-type) .loop_txt{
  width:55%;
  margin:0;
}

.category-beginner .main ul.loop li:nth-of-type(n+5),
.front .main ul.loop li:nth-of-type(n+5){
  display: none;
}

.category-beginner .main ul.loop li .loop_txt,
.front .main ul.loop li .loop_txt,
.category-experience .main ul.loop li .loop_txt{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.category-beginner .main ul.loop li .loop_txt time,
.front .main ul.loop li .loop_txt time,
.category-experience .main ul.loop li .loop_txt time{
  order:3;
  margin: 8px 4px 0;
}
.category-beginner .main ul.loop li:not(:first-of-type) .loop_txt time,
.front .main ul.loop li:not(:first-of-type) .loop_txt time,
.category-experience .main ul.loop li:not(:first-of-type) .loop_txt time{
  margin: 0;
  width: 100%;
}
.loop_txt .post-categories{
  width: 100%;
}

.front .main .loop_txt .post-categories{
  width:auto;
}
}

/* 関連記事変更220214 */
.single .relatedpost{
    background: #2E2E2E;
    margin: 0;
    padding: 3px 15px;
    display:flex;
    flex-wrap: wrap;
    justify-content: start;
    width: fit-content;
}

.single p.relate_h{
  padding: 15px;
}

.single .relatedpost .cell{
  background: #414141;
  /*width: calc(100% / 3);*/
  width:233px;
  box-sizing: border-box;
  border: 3px #2e2e2e solid;
  position: relative;
}

.single .relatedpost .cell a:link,
.single .relatedpost .cell a:visited{
  font-size: 13px;
  color:#fff;
  line-height:1.5;
}
.single .relatedpost .cell img{
  width: 100%;
  height: auto;
}
.single .relatedpost .cell .post-right{
  padding: 5px 4px;
}

.single .relatedpost div.post-right ul.post-categories{
  margin:0 0 8px 0;
}

.single .relatedpost .cell div > a{
  padding: 0 0 4px 5px;
  display: inline-block;
  line-height: 1.3;
}

@media screen and (max-width: 1280px){
  .single .relatedpost .cell{
    max-width: calc(100% / 2);
    width: auto;
  }

  .single .relatedpost .cell a{
    font-size: 12px;
  }
}

.w_b_slash {
  border-color: #fff !important;
}

.esthetic h3::before {
    content: '■';
}