@charset "utf-8";
/* ################################################################################
   Object_Project_Navigation（ナビゲーション）
   ################################################################################ */


/* ======================================================================
   Navigation_Menu
   ====================================================================== */


/* [Foundation]
   ================================================================= */

.p-navi {
	width: auto;
  margin: 0;
  padding: 0;
	color: var(--fontcolor-basic-text);
	font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: var(--lineheight-basic-text);
	font-weight: var(--fontweight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
}

.p-navi__list {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.p-navi__item {
}

/* 「現在選択されているメニュー」へのWPシステム出力によるクラス名 */
.p-navi__item.current-menu-item {
}

/* ▽WordPress_カスタムメニュー仕様 */
/* 本来であれば、Class名に「.p-navi__link」をつけるが、WordPressのカスタムメニューのコードの出力仕様に合わせて、「a」タグを使っている。 */
.p-navi__item a {
	display: block;
  color: inherit;
}
.p-navi__item.current-menu-item a {
  color: inherit;
}
.p-navi__item a:hover, 
.p-navi__item a:active, 
.p-navi__item a:focus {
  color: inherit;
}

.p-navi .fa {
	margin: 0 0.5em 0 0;
}




/* [Decoration]Global Navi
   ================================================================= */

.p-navi--global-navi {
	max-width: 100%;
	margin: 0 auto;
	background: var(--keycolor-main);
	color: #fff;
  line-height: 1;
}

.p-navi__list--global-navi {
	display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
	max-width: var(--layout-width-basic);
	margin: 0 auto;
  padding: 0;
}

.p-navi__list--global-navi li {
}

.p-navi__list--global-navi li.current-menu-item {
}

.p-navi__list--global-navi li a {
	display: block;
  padding: 1.0em 1.25em;
  background: var(--keycolor-main);
  color: inherit;
}
.p-navi__list--global-navi li.current-menu-item a {
  background: #fff;
  color: var(--keycolor-main);
}
.p-navi__list--global-navi li a:hover,
.p-navi__list--global-navi li a:active,
.p-navi__list--global-navi li a:focus {
  background: #fff;
  color: var(--keycolor-main);
	text-decoration: none;
}

@media screen and (max-width:959px) {
.p-navi--global-navi {
}
}

@media screen and (max-width:559px) {
.p-navi--global-navi {
	display: none;
}
}




/* [Decoration]Global Navi Footer
   ================================================================= */

.p-navi--global-navi-footer {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
}

.p-navi__list--global-navi-footer {
}

.p-navi__item--global-navi-footer {
}

.p-navi__item--global-navi-footer > a {
}

.p-navi__item--global-navi-footer > a:hover,
.p-navi__item--global-navi-footer > a:active,
.p-navi__item--global-navi-footer > a:focus {
}

.p-navi__item--global-navi-footer > ul {
}

.p-navi__item--global-navi-footer > ul li {
}

.p-navi__item--global-navi-footer > ul li a {
}

.p-navi__item--global-navi-footer .fa {
}




/* [Decoration]Site Navi
   ================================================================= */

.p-navi--site-navi {
	width: 100%;
  margin: 0;
  padding: 0;
	font-size: 0.825em;
}

.p-navi__list--site-navi {
	display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
	max-width: var(--layout-width-basic);
	margin: 0 auto;
  padding: 0.75em var(--layout-site-bothends-padding);
	text-align: left;
}

.p-navi__item--site-navi {
	margin: 0;
	text-align: left;
}

.p-navi__item--site-navi > a {
	display: block;
  padding: 0.75em;
  color: inherit;
}
.p-navi__item--site-navi.current-menu-item a {
  color: inherit;
}
.p-navi__item--site-navi > a:hover,
.p-navi__item--site-navi > a:active,
.p-navi__item--site-navi > a:focus {
  color: inherit;
  text-decoration: none;
}

@media screen and (max-width:959px) {
.p-navi__list--site-navi {
  padding: 0.75em var(--layout-site-bothends-padding);
}

.p-navi__item--site-navi {
	flex-basis: 33.33%;
}
}

@media screen and (max-width:559px) {
.p-navi__list--site-navi {
  padding: 0.75em 0;
}

.p-navi__item--site-navi {
	flex-basis: 50%;
}
}





/* ======================================================================
   グリーディーナビゲーション
   ====================================================================== */

/* グローバルナビゲーションのひとつ。PC/Tab/SPのいずれでも比較的使いやすい仕様。 */

/* Refernce URL: https://github.com/lukejacksonn/GreedyNav */
/* Refernce URL: https://codepen.io/lukejacksonn/pen/BowbWE */
/* Refernce URL: https://codepen.io/lukejacksonn/pen/PwmwWV */


.p-greedy-nav {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  background: var(--keycolor-main);
	color: #fff;
	font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: 1;
	font-weight: var(--fontweight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
}

.p-greedy-nav__inner {
	max-width: var(--layout-width-basic);
	margin: 0 auto;
	padding: 0;
}

.greedy-nav {
  z-index: 3;
  position: relative;
  min-width: 25.0rem;
  background: var(--keycolor-main);
}

.greedy-nav a {
  display: block;
  padding: 1.0em 1.25em;
  background: var(--keycolor-main);
  color: inherit;
}
.greedy-nav a:hover, 
.greedy-nav a:active, 
.greedy-nav a:focus {
  background: #fff;
  color: var(--keycolor-main);
	text-decoration: none;
}

.greedy-nav button {
	position: absolute;
	height: 100%;
	right: 0;
	padding: 0 0.65em;
	border: 0;
	outline: none;
	background-color: #fff;
	border-top: solid 0.1em var(--keycolor-main);
	border-bottom: solid 0.1em var(--keycolor-main);
	border-left: solid 0.1em var(--keycolor-main);
	border-right: solid 0.1em var(--keycolor-main);
	color: var(--keycolor-main);
	cursor: pointer;
}
.greedy-nav button:hover, 
.greedy-nav button:active, 
.greedy-nav button:focus {
  background: #fff;
  color: var(--keycolor-main);
}
.greedy-nav button::after {
	content: attr(count);
	position: absolute;
	width: 2.0em;
	height: 2.0em;
	left: -1.05em;
	top: 0.4em;
	text-align: center;
	background-color: #fff;
	color: var(--keycolor-main);
	line-height: 1.8em;
	border-radius: 50%;
	border: solid 0.1em var(--keycolor-main);
	font-weight: bold;
}
.greedy-nav button:hover::after {
	color: var(--keycolor-main);
  transform: scale(1.075);
}

.greedy-nav .hamburger {
  position: relative;
  width: 1.5em;
  height: 0.2em;
  background: var(--keycolor-main);
  margin: auto;
}
.greedy-nav .hamburger:before,
.greedy-nav .hamburger:after {
  content: '';
  position: absolute;
  left: 0;
  width: 1.5em;
  height: 0.2em;
  background: var(--keycolor-main);
}
.greedy-nav .hamburger:before {
  top: -0.5em;
}
.greedy-nav .hamburger:after {
  bottom: -0.5em;
}

.greedy-nav .visible-links {
  display: inline-table;
  margin: 0;
  padding: 0;
}

.greedy-nav .visible-links li {
  display: table-cell;
  line-height: 1;
  white-space: nowrap;
}

.greedy-nav .visible-links li.current-menu-item {
}

.greedy-nav .visible-links li.current-menu-item a {
  background: #fff;
  color: var(--keycolor-main);
}

.greedy-nav .hidden-links {
  position: absolute;
  right: 0px;
  top: 100%;
  margin: 0;
  padding: 0;
}

.greedy-nav .hidden-links li {
  display: block;
  white-space: nowrap;
}

.greedy-nav .hidden-links li.current-menu-item {
}

.greedy-nav .hidden-links li.current-menu-item a {
  background: #fff;
  color: var(--keycolor-main);
}

.greedy-nav .hidden {
  visibility: hidden;
}





/* ======================================================================
   ドロワーメニュー（ハンバーガーメニュー） 
   ====================================================================== */


/* ドロワーメニュー_パターン１
   ================================================================= */

/* 「透過されたメニュー」が、右側からアニメーションをしながら出現する。 */
/* Refernce Page: https://webdesignfacts.net/entry/css-drawrmenu/ */


.p-drawer-menu {
	display: none;
	z-index: 9999;
	position: relative;
  width: 2.0em;
  height: 2.0em;
}

.drawer-list {
  position: fixed;
  right: 0;
  top: 0;
  height: 100vh;
  width: 100vw;
  transform: translate(100vw, 0);
  /* ie workaround */
  -ms-transform: translatex(-100vw);
  box-sizing: border-box;
  pointer-events: none;
  padding-top: 24vw;
  transition: width 475ms ease-out, transform 450ms ease, border-radius .8s .1s ease;
  border-bottom-left-radius: 100vw;
  background-color: var(--keycolor-main);
  background-color: rgba(178,178,178,0.8);
}

.drawer-list ul {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  overflow: auto;
  overflow-x: hidden;
  pointer-events: auto;
}

.drawer-list li {
  list-style: none;
  text-transform: uppercase;
  pointer-events: auto;
  white-space: nowrap;
  box-sizing: border-box;
  transform: translatex(100vw);
  /* ie workaround */
  -ms-transform: translatex(-100vw);
}

.drawer-list li:last-child {
  margin-bottom: 2em;
}

.drawer-list li a {
  text-decoration: none;
  color: #fff;
  text-align: center;
  display: block;
  padding: 0.6em;
  font-size: 5.2vw;
}

.drawer-list li a:hover {
  cursor: pointer;
  background-color: inherit;
  background-color: rgba(178, 178, 178, 0.5);
}

input.hamburger {
  display: none;
}

input.hamburger:checked ~ .drawer-list {
  transform: translatex(0);
  border-bottom-left-radius: 0;
}

input.hamburger:checked ~ .drawer-list li {
  transform: translatex(0);
}

input.hamburger:checked ~ .drawer-list li:nth-child(1) {
  transition: transform 1s 0.08s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(2) {
  transition: transform 1s 0.16s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(3) {
  transition: transform 1s 0.24s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(4) {
  transition: transform 1s 0.32s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(5) {
  transition: transform 1s 0.4s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(6) {
  transition: transform 1s 0.48s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(7) {
  transition: transform 1s 0.56s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(8) {
  transition: transform 1s 0.64s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(9) {
  transition: transform 1s 0.72s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(10) {
  transition: transform 1s 0.8s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(11) {
  transition: transform 1s 0.88s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(12) {
  transition: transform 1s 0.96s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(13) {
  transition: transform 1s 1.04s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(14) {
  transition: transform 1s 1.12s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(15) {
  transition: transform 1s 1.2s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(16) {
  transition: transform 1s 1.28s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(17) {
  transition: transform 1s 1.36s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(18) {
  transition: transform 1s 1.44s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(19) {
  transition: transform 1s 1.52s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(20) {
  transition: transform 1s 1.6s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(21) {
  transition: transform 1s 1.68s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(22) {
  transition: transform 1s 1.76s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(23) {
  transition: transform 1s 1.84s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(24) {
  transition: transform 1s 1.92s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(25) {
  transition: transform 1s 2s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(26) {
  transition: transform 1s 2.08s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(27) {
  transition: transform 1s 2.16s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(28) {
  transition: transform 1s 2.24s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(29) {
  transition: transform 1s 2.32s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(30) {
  transition: transform 1s 2.4s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(31) {
  transition: transform 1s 2.48s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(32) {
  transition: transform 1s 2.56s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(33) {
  transition: transform 1s 2.64s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(34) {
  transition: transform 1s 2.72s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(35) {
  transition: transform 1s 2.8s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(36) {
  transition: transform 1s 2.88s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(37) {
  transition: transform 1s 2.96s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(38) {
  transition: transform 1s 3.04s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(39) {
  transition: transform 1s 3.12s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(40) {
  transition: transform 1s 3.2s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(41) {
  transition: transform 1s 3.28s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(42) {
  transition: transform 1s 3.36s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(43) {
  transition: transform 1s 3.44s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(44) {
  transition: transform 1s 3.52s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(45) {
  transition: transform 1s 3.6s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(46) {
  transition: transform 1s 3.68s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(47) {
  transition: transform 1s 3.76s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(48) {
  transition: transform 1s 3.84s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(49) {
  transition: transform 1s 3.92s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}
input.hamburger:checked ~ .drawer-list li:nth-child(50) {
  transition: transform 1s 4s cubic-bezier(0.29, 1.4, 0.44, 0.96);
}

input.hamburger:checked ~ .drawer-list li a {
  padding-right: 1.5rem;
}

input.hamburger:checked ~ label > i {
  background-color: rgba(255,255,255,0);
  transform: rotate(90deg);
}

input.hamburger:checked ~ label > i:before {
	background-color: rgba(255,255,255,1);
  transform: translate(-50%, -50%) rotate(315deg);
}

input.hamburger:checked ~ label > i:after {
	background-color: rgba(255,255,255,1);
  transform: translate(-50%, -50%) rotate(-315deg);
}

label.hamburger {
  z-index: 9999;
  position: relative;
  display: block;
  height: 2.0em;
  width: 2.0em;
}

label.hamburger:hover {
  cursor: pointer;
}

label.hamburger > i {
  position: absolute;
  width: 100%;
  height: 0.1em;
  top: 50%;
  background-color: var(--keycolor-main);
  pointer-events: auto;
  transition-duration: .35s;
  transition-delay: .35s;
}

label.hamburger > i:before, 
label.hamburger > i:after {
  position: absolute;
  display: block;
  width: 100%;
  height: 0.1em;
  left: 50%;
  background-color: var(--keycolor-main);
  content: "";
  transition: transform 0.35s;
  transform-origin: 50% 50%;
}

label.hamburger > i:before {
  transform: translate(-50%, -0.8em);
}

label.hamburger > i:after {
  transform: translate(-50%, 0.8em);
}

label.hamburger {
	top: 0;
  right: 0;
}

.p-drawer-menu__site-title {
	
}

.p-drawer-menu__site-title .site-title, 
.p-drawer-menu__site-title .site-title-text {
	text-align: center;
}

@media screen and (max-width:959px) {
.p-drawer-menu {
	display:block;
}
}

@media screen and (max-width:559px) {
.p-drawer-menu {
  display:block;
}
}





/* ======================================================================
   Navigation_Breadcrumb
   ====================================================================== */

/* 【WordPressプラグイン】Breadcrumb NavXT */
/* 参考URL: http://website-homepage.com/wordpress/plugin/access-up/breadcrumbcrumb-navxt */


.p-breadcrumb {
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	font-size: 0.875em;
}

.p-breadcrumb__list {
	width: var(--layout-width-basic);
	margin: 0 auto;
	padding: 1.0em var(--layout-site-bothends-padding);
}


/* 「プラグイン：Breadcrumb NavXT」でのスタイル指定 */

.p-breadcrumb__list > span, 
.p-breadcrumb__list > i {
	margin: 0 0.75em 0 0;
	padding: 0;
	display: inline-block;
  color: inherit;
  font-size: inherit;
  line-height: 1.5;
}

.p-breadcrumb__list > span > a {
	color: inherit;
  font-size: inherit;
  text-decoration: none;
}

.p-breadcrumb__list > span > a:hover {
	color: inherit;
  text-decoration: none;
}


/* 「プラグイン：Yoast SEO」でのスタイル指定 */

#breadcrumbs span a {
	margin: 0 0.5em 0 0;
	padding: 0;
	display: inline-block;
  color: inherit;
  font-size: inherit;
  line-height: 1.5;
	text-decoration: none;
}

#breadcrumbs span i.fa-chevron-right {
	margin: 0 0.25em 0 0;
	padding: 0;
	display: inline-block;
  color: inherit;
  font-size: inherit;
  line-height: 1.5;
	text-decoration: none;
}





/* ======================================================================
   Navigation_SNS Icon
   ====================================================================== */


/* [Foundation]
   ================================================================= */

/* ウィジェット「カスタムHTML」に登録可能。 */
/* ショートコード"navigation-site-navi"を記載する事で、表示されます。 */
/* [originalphp file='navigation-site-navi'] */


.p-sns-navi {
  width: 100%;
	margin: 0 auto;
	padding: 0;
}

.p-sns-navi__list {
  display: flex;
  justify-content: center;
  align-items: center;
	max-width: var(--layout-width-basic);
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
}

.p-sns-navi__item {
  margin: 0 0.5em;
  padding: 1.25em 0;
  background: none !important;
}
.p-sns-navi__item:hover {
  background: none !important;
}

.p-sns-navi__link {
  display: block;
  text-align: center;
}

.p-sns-navi__link:hover, 
.p-sns-navi__link:active, 
.p-sns-navi__link:focus {
  opacity: 0.7;
}

.p-sns-navi__image {
  width: auto;
  height: 2.0em;
  margin: 0;
}




/* [Decoration]Header
   ================================================================= */

.p-sns-navi--header {
	flex-basis: 20%;
  margin: 0;
}

.p-sns-navi__list--header {
  justify-content: flex-end;
}

.p-sns-navi__item--header {
  margin: 0 0 0 0.75em;
  padding: 0;
}

.p-sns-navi__link--header {
}

.p-sns-navi__image--header {
}

@media screen and (max-width:959px) {
.p-sns-navi--header {
	display: none;
}
}

@media screen and (max-width:559px) {
.p-sns-navi--header {
  display: none;
}
}




/* ======================================================================
   Navigation_Popular Posts_Nature（人気記事_自然）
   ====================================================================== */

/* ウィジェット「カスタムHTML」に登録可能。 */
/* ショートコード"navigation-popular-posts-nature"を記載する事で、表示されます。 */
/* [originalphp file='navigation-popular-posts-nature'] */


.p-popular-posts {
	flex-basis: 100%;
	margin: 0;
  padding: 0;
}

.p-popular-posts__link {
	display: block;
  padding: 0.75em;
  background: var(--link-bgcolor);
  color: inherit;
}
.p-popular-posts__link:hover,
.p-popular-posts__link:active,
.p-popular-posts__link:focus {
  background: var(--link-bgcolor-hover);
  color: inherit;
  text-decoration: none;
}

.p-popular-posts__inner {
	display: flex;
  flex-wrap: wrap;
}

.p-popular-posts__header {
  display: flex;
	flex-basis: 25%;
  align-items: center;
	padding: 0 0.75em 0 0;
}

.p-popular-posts__body {
  display: flex;
	flex-basis: 75%;
  align-items: center;
}

.p-popular-posts__title {
  margin: 0;
  padding: 0;
  font-weight: normal;
}

.p-popular-posts__excerpt {
  margin: 0;
	padding: 0;
  font-size: 0.75em;
}

.p-popular-posts__thumbnail {
  position: relative;
  width: 100%;
}

.p-popular-posts__thumbnail > img {
  display: block;
  width: 100%;
  height: auto;
}

.p-popular-posts__meta-infomation {
	display: flex;
	flex-wrap: wrap;
  justify-content: space-between;
  margin: 0.5em 0 0;
}

.p-popular-posts__meta {
  margin: 0;
  font-size: 0.75em;
}

@media screen and (max-width:959px) {
.p-popular-posts {
	flex-basis: 100%;
}
}

@media screen and (max-width:559px) {
.p-popular-posts {
	flex-basis: 100%;
}
}




/* ======================================================================
   Navigation_Popular Posts_Plugin（人気記事_プラグイン）
   ====================================================================== */

.wpp-list {
	flex-basis: 100%;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

.wpp-list li {
	display: flex;
  flex-wrap: wrap;
	overflow: hidden;
	float: none;
	clear: both;
	margin-bottom: 1rem;
	background: var(--link-bgcolor);
}
.wpp-list li:hover,
.wpp-list li:active,
.wpp-list li:focus {
  background: var(--link-bgcolor-hover);
  color: inherit;
  text-decoration: none;
}

.wpp-list li a {
	display: flex;
	flex-basis: 25%;
  align-items: center;
	padding: 0.75em 0 0.75em 0.75em !important;
	background: none !important;
}

.wpp-list li a.wpp-post-title {
  display: flex;
	flex-basis: 75%;
  align-items: center;
	padding: 0.75em !important;
	background: none !important;
}





/* ======================================================================
   Navigation_Related Posts（関連記事_自然）
   ====================================================================== */

/* WPプラグイン：Yet Another Related Posts Plugin */

/* ウィジェット「カスタムHTML」に登録可能。 */
/* ショートコード"navigation-related-posts-true"を記載する事で、表示されます。 */
/* [originalphp file='navigation-related-posts-true'] */


.yarpp-related .c-list a {
    text-decoration: inherit;
    font-weight: inherit;
}

.yarpp-related .c-list h3 {
    font-weight: inherit;
    padding: inherit;
    font-size: inherit;
    text-transform: inherit;
    margin: inherit;
}






/* ################################################################################
   Object_Project_Pagenation(ページネーション)
   ################################################################################ */


/* ======================================================================
   Pagenation（ページネーション）
   ====================================================================== */


/* Pagenation _ Wrapper
   ================================================================= */

.p-pagenation {
	width: 100%;
	margin: var(--space-150-basic) auto 0;
	padding: 0;
}




/* Number Select(WPプラグイン：WP-PageNaviを使用しています)
   ================================================================= */

/* WP-PageNaviを使用した際に、自動出力される「ID・CLASS名」を使っています。 */

.wp-pagenavi {
	margin: 0 auto;
	text-align: center;
}



/* ------------------------------------------------------------
   WP-PageNavi_Button
   ------------------------------------------------------------ */

.wp-pagenavi .pages, 
.wp-pagenavi .page, 
.wp-pagenavi .first, 
.wp-pagenavi .last, 
.wp-pagenavi .smaller, 
.wp-pagenavi .larger, 
.wp-pagenavi .extend, 
.wp-pagenavi .current, 
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	display: inline-block;
  width: 4.6rem;
  height: 4.6rem;
	padding: 0;
	font-size: 1.8rem;
  line-height: 4.6rem;
	text-decoration: none;
}

@media screen and (max-width:959px) {
.wp-pagenavi .pages, 
.wp-pagenavi .page, 
.wp-pagenavi .first, 
.wp-pagenavi .last, 
.wp-pagenavi .smaller, 
.wp-pagenavi .larger, 
.wp-pagenavi .extend, 
.wp-pagenavi .current, 
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  width: 7.2vw;
  height: 7.2vw;
	font-size: 2.36vw;
  line-height: 7.2vw;
}
}

@media screen and (max-width:559px) {
.wp-pagenavi .pages, 
.wp-pagenavi .page, 
.wp-pagenavi .first, 
.wp-pagenavi .last, 
.wp-pagenavi .smaller, 
.wp-pagenavi .larger, 
.wp-pagenavi .extend, 
.wp-pagenavi .current, 
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  width: 9.0vw;
  height: 9.0vw;
	padding: 0;
	font-size: 3.8vw;
  line-height: 9.0vw;
}
}

.wp-pagenavi .page, 
.wp-pagenavi .first, 
.wp-pagenavi .last, 
.wp-pagenavi .smaller, 
.wp-pagenavi .larger, 
.wp-pagenavi .previouspostslink, 
.wp-pagenavi .nextpostslink {
	background: var(--keycolor-main);
	color: #fff;
}
.wp-pagenavi .page:hover, 
.wp-pagenavi .first:hover, 
.wp-pagenavi .last:hover, 
.wp-pagenavi .smaller:hover, 
.wp-pagenavi .larger:hover, 
.wp-pagenavi .previouspostslink:hover, 
.wp-pagenavi .nextpostslink:hover {
	background: #fff;
	color: var(--keycolor-main);
}

.wp-pagenavi .extend {
	background: #fff;
	color: var(--keycolor-main);
}

.wp-pagenavi .current {
	background: #fff;
	color: var(--keycolor-main);
}




/* Page Top Move
   ================================================================= */

/* 当機能のデータは、下記ディレクトリに格納されています。 */
/* /library/page-top-move/ */
/* こちらの指定は、当ディレクトリ内のCSSを、上書きする形となります。 */


.topBtn {
  background-color: var(--keycolor-sub) !important;
  color: #fff!important;
  font-size: inherit!important;
  width: 4.4em!important;
  height: 4.4em!important;
  line-height: 1.0!important;
  border-radius: 50%!important;
  padding-top: 2.4em!important;
	opacity: 0.8;
}
.topBtn:before {
  top: 1.1em !important;
  left: 0 !important;
  font-size: inherit !important;
  line-height: 1.0 !important;
}
.topBtn:hover {
  background-color: var(--keycolor-main);
	color: #fff;
	text-decoration: none;
}





/* Browse in Order
   ================================================================= */

.p-browse-in-order {
  display: flex;
  flex-wrap: wrap;
	justify-content: flex-end;
  align-items: center;
  margin: 0 auto;
	padding: 0;
	font-size: 0.875em;
}

.p-browse-in-order > a {
  display: flex;
  align-items: center;
  align-self: stretch;
  flex-basis: 50%;
  background: var(--link-bgcolor);
	min-height: 3.5em;
  padding: 0.5em;
  color: inherit;
}
.p-browse-in-order > a:first-child {
	justify-content: flex-start;
}
.p-browse-in-order > a:last-child {
	justify-content: flex-end;
}
.p-browse-in-order > a:hover, 
.p-browse-in-order > a:active, 
.p-browse-in-order > a:focus {
  background: var(--link-bgcolor-hover);
	color: inherit;
	text-decoration: none;
}

.p-browse-in-order__old-page {
  padding: 0 0.5em 0 0;
  text-align: right;
}

.p-browse-in-order__new-page {
  padding: 0 0 0 0.5em;
  text-align: left;
}

.p-browse-in-order__old-page i, 
.p-browse-in-order__new-page i {
  color: inherit;
}

@media screen and (max-width:959px) {
.p-browse-in-order {
}

.p-browse-in-order > a, 
.p-browse-in-order > a {
  flex-basis: 50%;
}
}

@media screen and (max-width:559px) {
.p-browse-in-order {
}
	
.p-browse-in-order > a, 
.p-browse-in-order > a {
  flex-basis: 100%;
}
}




/* Auto Pager
   ================================================================= */

.p-autopager__button {
  display: block;
  width: 60%;
  margin: 1.5em auto 0;
  padding: 1.0em;
  background: var(--keycolor-main);
  color: #fff;
  line-height: 1;
  text-align: center;
}

.p-autopager__button:hover, 
.p-autopager__button:active, 
.p-autopager__button:focus {
	opacity: 0.7;
	color: #fff;
	text-decoration: none;
}

@media screen and (max-width:959px) {
.p-autopager__button {
  width: 70%;
}
}

@media screen and (max-width:559px) {
.p-autopager__button {
  width: 80%;
}
}






/* ################################################################################
   Object_Project_Search（検索）
   ################################################################################ */


/* ======================================================================
   Search（サーチ）
   ====================================================================== */


/* [Foundation] Search Form
   ================================================================= */

/* ウィジェット「カスタムHTML」に登録可能。 */
/* ショートコード"navigation-search-form"を記載する事で、表示されます。 */
/* [originalphp file='navigation-search-form'] */

.p-search {
  display: flex;
	flex-wrap: wrap;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.p-search__label {
	flex-basis: 80%;
}

.p-search__input {
	width: 100%;
	height: 2.667em;
	padding: 0 0 0 0.75em;
	background: #fff;
	border: solid 0.12em var(--keycolor-main);
	border-right: 0;
	border-radius: 0.75em 0 0 0.75em;
	box-sizing: border-box !important;
	outline: none;
  color: inherit;
	font-size: inherit;
	line-height: normal;
}

.p-search__button {
  flex-basis: 20%;
  height: 2.667em;
  padding: 0;
  background: var(--keycolor-main);
  border: solid 0.12em var(--keycolor-main);
  border-left: 0;
  border-radius: 0 0.75em 0.75em 0;
  box-sizing: border-box !important;
  text-align: center;
  vertical-align: middle;
  color: #fff;
	font-size: inherit;
	line-height: normal;
}
.p-search__button:hover {
	opacity: 0.7;
	color: #fff;
}

@media screen and (max-width:959px) {
.p-search__label {
	flex-basis: 85%;
}

.p-search__button {
  flex-basis: 15%;
}
}

@media screen and (max-width:559px) {
.p-search__label {
	flex-basis: 85%;
}

.p-search__button {
  flex-basis: 15%;
}
}




/* [Decoration] Search Form header
   ================================================================= */

.p-search--header {
	flex-basis: 30%;
	font-size: 0.75em;
}

.p-search__label--header {
	flex-basis: 80%;
}

.p-search__button--header {
  flex-basis: 20%;
}

@media screen and (max-width:959px) {
.p-search--header {
	display: none;
	flex-basis: 30%;
}
}

@media screen and (max-width:559px) {
.p-search--header {
	display: none;
	flex-basis: 100%;
}
}




/* [Decoration] Search Form Wide
   ================================================================= */

.p-search--wide {
  max-width: calc(var(--layout-width-basic) * 0.5);
  margin: 0 auto;
  padding: 1.5em var(--layout-site-bothends-padding);
}

.p-search__label--wide {
	flex-basis: 85%;
}

.p-search__button--wide {
  flex-basis: 15%;
}

@media screen and (max-width:959px) {
.p-search--wide {
	max-width: calc(var(--layout-width-basic) * 0.75);
}
}

@media screen and (max-width:559px) {
.p-search--wide {
	max-width: var(--layout-width-basic);
}
}





/* ======================================================================
   Detailed Search（詳細検索）
   ====================================================================== */


/* 詳細検索フォーム
   ================================================================= */

.p-refine-search {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
	word-break: normal;
}

.p-refine-search__title {
  margin: 0 auto 0.5em;
  padding: var(--padding-basic-heading);
  color: var(--fontcolor-basic-main);
  font-family: var(--fontfamily-basic-heading);
  font-size: var(--fontsize-basic-heading);
  line-height: var(--lineheight-basic-heading);
  letter-spacing: var(--letterspacing-basic-heading);
  font-weight: var(--fontweight-basic-heading);
  text-align: center;
}

.p-refine-search__form {
  width: 100%;
  margin: 0;
  padding: 0;
}

.p-refine-search__body {
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}

.p-refine-search__row {
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  margin: 0;
  padding: var(--space-075-basic) var(--space-125-basic);
	border-top: solid 0.05em #808080;
}

.p-refine-search__header {
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-preferred-size: 35%;
  flex-basis: 35%;
  margin: 0;
  padding: 0;
}

.p-refine-search__data {
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-preferred-size: 65%;
  flex-basis: 65%;
  margin: 0;
  padding: 0;
}

.p-refine-search__heading {
	align-self: center;
  width: 100%;
  margin: 0;
  padding: 0;
  color: var(--fontcolor-basic-main);
	font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: var(--lineheight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
  font-weight: var(--fontweight-basic-text);
}

.p-refine-search__select {
  width: 100%;
	height: calc(3 * var(--fontsize-menu-text));
  margin: 0;
  padding: 0;
  color: var(--fontcolor-basic-main);
	font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: var(--lineheight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
  font-weight: var(--fontweight-basic-text);
}

.p-refine-search__option {
  width: 100%;
}

.p-refine-search__text {
	align-self: center;
  width: 100%;
  margin: 0;
  padding: 0;
  color: var(--fontcolor-basic-main);
	font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: var(--lineheight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
  font-weight: var(--fontweight-basic-text);
}

.p-refine-search__check-box {
	display:-webkit-box;
  display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
  flex-wrap: wrap;
	align-content: center;
	-ms-flex-preferred-size: 65%;
  flex-basis: 65%;
  margin: 0;
  padding: 0;
}

.p-refine-search__check {
	display: flex;
  align-items: center;
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
  margin: 0;
  padding: 0.1em 0.5em;
  color: var(--fontcolor-basic-main);
  font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: var(--lineheight-basic-text);
  letter-spacing: var(--letterspacing-basic-text);
  font-weight: var(--fontweight-basic-text);
}

.p-refine-search__check-input {
}

.p-refine-search__label {
	margin-left: 0.4em;
}

.p-refine-search__submit {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
  width: 100%;
  margin: 0.4em 0 0;
	padding: 0;
}

.p-refine-search__input {
	display: block;
  width: 100%;
  /* height: calc(2.25 * var(--fontsize-basic-text)); */
  margin: 0;
  background: none;
  border: solid 0.05em var(--keycolor-basic-main);
  border-radius: 0.5em;
  color: var(--fontcolor-basic-text);
  font-family: var(--fontfamily-basic-text);
  font-size: var(--fontsize-basic-text);
  line-height: calc(2 * var(--fontsize-basic-text));
  letter-spacing: var(--letterspacing-basic-text);
  font-weight: bold;
  text-align: center;
}

.p-refine-search__input:hover {
  background: #fff;
  border: solid 0.05em var(--keycolor-basic-main);
  color: var(--fontcolor-basic-text);
	text-decoration: none;
}

@media screen and (max-width:959px) {
.p-refine-search {
}

.p-refine-search__title {
  font-size: var(--fontsize-basic-heading);
}

.p-refine-search__form {
}

.p-refine-search__body {
}

.p-refine-search__row {
	-ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}

.p-refine-search__header {
	-ms-flex-preferred-size: 35%;
	flex-basis: 35%;
}
  
.p-refine-search__data {
}

.p-refine-search__heading {
  font-size: var(--fontsize-basic-text);
}

.p-refine-search__select {
  font-size: var(--fontsize-basic-text);
}

.p-refine-search__option {
}
  
.p-refine-search__text {
  font-size: var(--fontsize-basic-text);
}

.p-refine-search__check-box {
	-ms-flex-preferred-size: 65%;
	flex-basis: 65%;
}

.p-refine-search__check {
  font-size: var(--fontsize-basic-text);
}
	
.p-refine-search__submit {
}
	
.p-refine-search__input {
  font-size: var(--fontsize-basic-text);
}
  
}

@media screen and (max-width:559px) {
.p-refine-search {
}

.p-refine-search__title {
  font-size: 3.0vw;
}

.p-refine-search__form {
}

.p-refine-search__body {
}

.p-refine-search__row {
	-ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  padding: var(--space-050-basic) var(--space-025-basic);
}

.p-refine-search__header {
	-ms-flex-preferred-size: 30%;
	flex-basis: 30%;
}
  
.p-refine-search__data {
}

.p-refine-search__heading {
  font-size: 2.5vw;
}

.p-refine-search__select {
	height: calc(2.0 * var(--fontsize-menu-text));
  font-size: 2.5vw;
}

.p-refine-search__option {
}
  
.p-refine-search__text {
  font-size: var(--fontsize-basic-text);
}

.p-refine-search__check-box {
	-ms-flex-preferred-size: 70%;
	flex-basis: 70%;
}

.p-refine-search__check {
	-ms-flex-preferred-size: 50%;
	flex-basis: 50%;
  font-size: 2.5vw;
}
	
.p-refine-search__submit {
}
	
.p-refine-search__input {
  font-size: 2.75vw;
}
}




/* [Decoration]Small
   ====================================================================== */

.p-refine-search--small {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
	word-break: normal;
}

.p-refine-search__title--small {
  margin: 0 auto 0.5em;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1;
}

.p-refine-search__header--small {
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
}

.p-refine-search__body--small {
  padding: 0;
}

.p-refine-search__row--small {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	padding: var(--space-050-basic) var(--space-050-basic);
	border-top: solid 0.05em #808080;
}

.p-refine-search__heading--small {
  font-size: 1.4rem;
  line-height: 1;
}

.p-refine-search__check-box--small {
  -ms-flex-preferred-size: 80%;
  flex-basis: 80%;
}

.p-refine-search__check--small {
	display: flex;
  align-items: center;
	-ms-flex-preferred-size: 25%;
  flex-basis: 25%;
	padding: 0.2em 0;
}

.p-refine-search__label--small {
  font-size: 1.4rem;
  line-height: 1;
}

.p-refine-search__submit--small {
  margin: 0;
	padding: 0;
}

.p-refine-search__input--small {
  background: none;
  border: solid 0.1rem #808080;
	font-size: 1.4rem;
  line-height: 2.0;
}

.p-refine-search__input--small:hover {
  background: #fff;
  border: solid 0.1rem #808080;
	text-decoration: none;
}

@media screen and (max-width:959px) {
.p-refine-search--small {
}

.p-refine-search__title--small {
  font-size: 2.0vw;
}

.p-refine-search__header--small {
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
}

.p-refine-search__body--small {
}

.p-refine-search__row--small {
}

.p-refine-search__heading--small {
  font-size: 1.8vw;
}

.p-refine-search__check-box--small {
  -ms-flex-preferred-size: 80%;
  flex-basis: 80%;
}

.p-refine-search__check--small {
	-ms-flex-preferred-size: 25%;
  flex-basis: 25%;
}

.p-refine-search__label--small {
  font-size: 1.8vw;
}

.p-refine-search__submit--small {
}

.p-refine-search__input--small {
  font-size: 1.8vw;
}

.p-refine-search__input--small:hover {
}
}

@media screen and (max-width:559px) {
.p-refine-search__title--small {
  font-size: 2.2vw;
	margin: 0 auto 0.5em;
  padding: 0;
}

.p-refine-search__header--small {
  -ms-flex-preferred-size: 15%;
  flex-basis: 15%;
}
	
.p-refine-search__row--small {
	flex-basis: 100%;
  padding: var(--space-025-basic) 0;
}
	
.p-refine-search__heading--small {
  font-size: 2.0vw;
}

.p-refine-search__select--small {
	height: calc(2.0 * var(--fontsize-menu-text));
  font-size: 2.0vw;
}

.p-refine-search__check-box--small {
  -ms-flex-preferred-size: 85%;
  flex-basis: 85%;
}

.p-refine-search__check--small {
	-ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  font-size: 2.0vw;
}

.p-refine-search__submit--small {
  margin: 0;
}
	
.p-refine-search__input--small {
	border: solid 0.1rem #808080;
  font-size: 2.0vw;
	line-height: 2.0;
}
}




/* [Decoration]Siderbar
   ====================================================================== */

.p-refine-search--sidebar {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
	word-break: normal;
}

.p-refine-search__title--sidebar {
  margin: 0 auto 0.5em;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1;
}

.p-refine-search__header--sidebar {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}

.p-refine-search__body--sidebar {
  padding: 0;
}

.p-refine-search__row--sidebar {
	-ms-flex-preferred-size: 100%;
	flex-basis: 100%;
	flex-wrap: wrap;
	padding: var(--space-050-basic) 0;
	border-top: solid 0.05em #808080;
}

.p-refine-search__heading--sidebar {
	margin: 0 0 0.2em;
  font-size: 1.2rem;
  line-height: 1;
}

.p-refine-search__check-box--sidebar {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}

.p-refine-search__check--sidebar {
	display: flex;
  align-items: center;
	-ms-flex-preferred-size: 50%;
  flex-basis: 50%;
	padding: 0.2em 0;
}

.p-refine-search__label--sidebar {
  font-size: 1.2rem;
  line-height: 1;
}

.p-refine-search__submit--sidebar {
  margin: 0;
	padding: 0;
}

.p-refine-search__input--sidebar {
  background: none;
  border: solid 0.1rem #808080;
	font-size: 1.2rem;
  line-height: 2.0;
}

.p-refine-search__input--sidebar:hover {
  background: #fff;
  border: solid 0.1rem #808080;
	text-decoration: none;
}

@media screen and (max-width:959px) {
.p-refine-search--sidebar {
}

.p-refine-search__title--sidebar {
  font-size: 2.0vw;
}

.p-refine-search__header--sidebar {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}

.p-refine-search__body--sidebar {
}

.p-refine-search__row--sidebar {
}

.p-refine-search__heading--sidebar {
  font-size: 1.8vw;
}

.p-refine-search__check-box--sidebar {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
}

.p-refine-search__check--sidebar {
	-ms-flex-preferred-size: 50%;
  flex-basis: 50%;
}

.p-refine-search__label--sidebar {
  font-size: 1.8vw;
}

.p-refine-search__submit--sidebar {
}

.p-refine-search__input--sidebar {
  font-size: 1.8vw;
}

.p-refine-search__input--sidebar:hover {
}
}

@media screen and (max-width:559px) {
.p-refine-search__title--sidebar {
  font-size: 2.2vw;
	margin: 0 auto 0.5em;
  padding: 0;
}

.p-refine-search__header--sidebar {
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
}
	
.p-refine-search__row--sidebar {
	flex-basis: 100%;
  padding: var(--space-025-basic) 0;
}

.p-refine-search__heading--sidebar {
  font-size: 2.0vw;
}

.p-refine-search__check-box--sidebar {
  -ms-flex-preferred-size: 80%;
  flex-basis: 80%;
}
	
.p-refine-search__select--sidebar {
	height: calc(2.0 * var(--fontsize-menu-text));
  font-size: 2.0vw;
}

.p-refine-search__check--sidebar {
	-ms-flex-preferred-size: 33.33%;
  flex-basis: 33.33%;
  font-size: 2.0vw;
}

.p-refine-search__submit--sidebar {
  margin: 0;
}
	
.p-refine-search__input--sidebar {
	border: solid 0.1rem #808080;
  font-size: 2.0vw;
	line-height: 2.0;
}
}



/* 詳細検索ソート
   ================================================================= */

.p-feas-sort-menu {
	margin: 0 auto var(--space-100-basic);
	padding: 0 0.5em 0.5em;
	background: var(--keycolor-sub);
	font-size: 0.825em;
}

.p-feas-sort-menu__title {
	margin: 0;
	padding: 0.5em;
	font-size: 1.05em;
	text-align: center;
}

.p-feas-sort-menu__title-icon {
	margin: 0 0.5em 0 0;
}

.p-feas-sort-menu__list {
	display: flex;
	flex-wrap: wrap;
	background: #fff;
}

.p-feas-sort-menu__item {
	display: flex;
	flex-basis: 25%;
	justify-content: center;
	padding: 0.5em;
}

.p-feas-sort-menu__heading {
	margin: 0;
}

.feas-sl-1-up a, 
.feas-sl-1-down a, 
.feas-sl-2-up a, 
.feas-sl-2-down a, 
.feas-sl-3-up a, 
.feas-sl-3-down a, 
.feas-sl-4-up a, 
.feas-sl-4-down a, 
.feas-sl-5-up a, 
.feas-sl-5-down a, 
.feas-sl-6-up a, 
.feas-sl-6-down a {
	padding: 0 0.5em;
	color: var(--fontcolor-basic-text);
	text-decoration: none;
}



/* ------------------------------------------------------------
   ソート項目内の各要素の順番
   ------------------------------------------------------------ */

.feas-sl-1-up, 
.feas-sl-2-up, 
.feas-sl-3-up, 
.feas-sl-4-up, 
.feas-sl-5-up, 
.feas-sl-6-up {
	order: 1;
}

.p-feas-sort-menu__heading {
	order: 2;
}

.feas-sl-1-down, 
.feas-sl-2-down, 
.feas-sl-3-down, 
.feas-sl-4-down, 
.feas-sl-5-down, 
.feas-sl-6-down {
	order: 3;
}

@media screen and (max-width:959px) {
.p-feas-sort-menu__item {
	flex-basis: 33.33%;
}
}

@media screen and (max-width:559px) {
.p-feas-sort-menu__item {
	flex-basis: 50%;
}
}




/* ======================================================================
   Product Infomation（商品情報の各項目のフォント表示）
   ====================================================================== */


/* 通常デザイン（Webフォントでの情報表示）
   ================================================================= */

.p-product-infomation {
  width: 100%;
  margin: 0 auto var(--space-100-basic);
  padding: 0.75em;
	background: var(--keycolor-sub);
}

.p-product-infomation__inner {
	width: 100%;
	margin: auto;
	padding: 0;
}

.p-product-infomation__row {
  display: flex;
	width: 100%;
	margin: auto;
	padding: 0;
	background: #fff;
}

.p-product-infomation__column {
	display: flex;
	flex-direction: column;
	background: #fff;
}

.p-product-infomation__item {
	margin: 0;
  padding: 0.75em;
  text-align: center;
}

.p-product-infomation__item--heading {
	background: var(--keycolor-sub);
}

.p-product-infomation__item--heading p:first-child {
	margin-top: 0;
}
.p-product-infomation__item--heading p:last-child {
	margin-bottom: 0;
}

.p-product-infomation__item--body {
	background: #fff;
}

.p-product-infomation__item--body p:first-child {
	margin-top: 0;
}
.p-product-infomation__item--body p:last-child {
	margin-bottom: 0;
}

.p-product-infomation__button {
	display: block;
	margin: 0 auto;
	padding: 0.75em;
	background: var(--keycolor-main);
	border-radius: 0.5em;
  color: #fff;
	text-align: center;
}
.p-product-infomation__button:hover, 
.p-product-infomation__button:active, 
.p-product-infomation__button:focus {
	background: var(--keycolor-main);
	color: #fff;
	text-decoration: none;
	opacity: 0.75;
}

.p-product-infomation__button-icon {
	margin-left: 0.5em;
}



/* ------------------------------------------------------------
   商品情報の項目各種
   ------------------------------------------------------------ */


/* 価格
   ------------------------------------------------------- */

.p-product-infomation__row--price {
}

.p-product-infomation__column--price {
	flex-basis: 100%;
}


/* ランキングナンバー
   ------------------------------------------------------- */

.p-product-infomation__column--list-style {
  flex-basis: 8%;
	justify-content: center;
	align-items: center;
}

.p-product-infomation__ranking-number {
	font-size: 1.5em;
	font-weight: bold;
}


/* 商品画像
   ------------------------------------------------------- */

.p-product-infomation__column--thumbnail {
  flex-basis: 20%;
	justify-content: center;
	align-items: center;
  padding: 0.75em 0 0.75em 0.75em;
}

.p-product-infomation__column--thumbnail img {
}


/* 商品名
   ------------------------------------------------------- */

.p-product-infomation__column--title {
  flex-basis: 100%;
	justify-content: center;
  padding: 0.75em;
}

.p-product-infomation__title {
  margin: 0;
  padding: 0;
	font-size: 1.35em;
  font-weight: bold;
}


/* メタ情報
   ------------------------------------------------------- */

.p-product-infomation__row--metadata {
	flex-wrap: wrap;
	background: var(--keycolor-sub);
}

.p-product-infomation__column--metadata {
	flex-basis: 50%;
}


/* 筆者のコメント
   ------------------------------------------------------- */

.p-product-infomation__item--authors-comment {
  padding: 0.75em;
	text-align: left;
}


/* ユーザーのコメント
   ------------------------------------------------------- */

.p-product-infomation__item--users-comment {
	padding: 0;
}

.p-users-comment {
	display: flex;
  width: 100%;
  margin: 0;
  padding: 0.75em;
}

.p-users-comment__thumbnail {
  display: flex;
	justify-content: center;
  align-items: center;
  flex-basis: 15%;
  padding-right: 0.75em;
}

.p-users-comment__thumbnail-image {
	max-height: 4.0em;
}

.p-users-comment__body {
  display: flex;
	align-items: center;
  flex-basis: 100%;
	margin: 0;
  padding: 0;
	text-align: left;
}


/* CTA
   ------------------------------------------------------- */

.p-product-infomation__row--cta {
	border-top: solid 0.75em var(--keycolor-sub);
}

.p-product-infomation__column--cta {
	flex-basis: 50%;
	padding: 0.75em;
}

.p-product-infomation__button--detail {
	width: 100%;
  font-weight: bold;
}

.p-product-infomation__button--cta {
	width: 100%;
  font-weight: bold;
}

@media screen and (max-width:959px) {
.p-product-infomation__item {
	font-size: 0.9em;
}

.p-product-infomation__column--list-style {
	flex-basis: 10%;
}

.p-product-infomation__ranking-number {
	font-size: 1.3em;
}

.p-product-infomation__column--thumbnail {
	flex-basis: 25%;
}

.p-product-infomation__column--title {
	flex-basis: 100%;
}
	
.p-product-infomation__title {
	font-size: 1.25em;
}
	
.p-users-comment__thumbnail {
	flex-basis: 20%;
}
	
.p-users-comment__thumbnail-image {
	max-height: 3.0em;
}
}

@media screen and (max-width:559px) {
.p-product-infomation__button {
	padding: 0.6em;
	font-size: 0.95em;
}

.p-product-infomation__item {
	font-size: 0.8em;
}

.p-product-infomation__column--list-style {
	flex-basis: 15%;
}

.p-product-infomation__ranking-number {
	font-size: 1.1em;
}

.p-product-infomation__column--thumbnail {
	flex-basis: 27.5%;
	padding: 0.5em 0 0.5em 0.5em;
}

.p-product-infomation__column--title {
	flex-basis: 100%;
	padding: 0.5em;
}
	
.p-product-infomation__title {
	font-size: 1.0em;
}

.p-users-comment {
	padding: 0.5em;
}

.p-users-comment__body {
	font-size: 0.95em;
}

.p-users-comment__thumbnail {
	flex-basis: 20%;
	padding-right: 0.5em;
}

.p-users-comment__thumbnail-image {
	max-height: 3.5em;
}

.p-product-infomation__row--cta {
	flex-wrap: wrap;
	padding: 0.25em;
}

.p-product-infomation__column--cta {
	flex-basis: 100%;
	padding: 0.25em;
}
}




/* 特別デザイン（画像での情報表示）
   ================================================================= */

.p-product-infomation-special {
  width: 100%;
  margin: 0 auto var(--space-100-basic);
  padding: 0.75em;
	background: var(--keycolor-sub);
}

.p-product-infomation-special__inner {
	width: 100%;
	margin: auto;
	padding: 0;
}

.p-product-infomation-special__row {
  display: flex;
	width: 100%;
	margin: auto;
	padding: 0;
	background: #fff;
}

.p-product-infomation-special__column {
	display: flex;
	flex-grow: 1;
	flex-direction: column;
}

.p-product-infomation-special__block {
}
.p-product-infomation-special__block:first-child {
	margin-top: 0;
}
.p-product-infomation-special__block:last-child {
	margin-bottom: 0;
}

.p-product-infomation-special__block-heading {
  padding: 0.75em 0;
	background: var(--keycolor-sub);
	font-weight: bold;
  text-align: center;
}

.p-product-infomation-special__block-heading-image {
	max-height: 3.0em;
}

.p-product-infomation-special__block-heading-text {
	margin: 0;
	font-size: 1.25em;
}


/* ------------------------------------------------------------
   商品情報の項目各種
   ------------------------------------------------------------ */


/* ランキングナンバー
   ------------------------------------------------------- */

.p-product-infomation-special__column--header-ranking-number {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	flex-basis: 15%;
	border-right: none;
}

.p-product-infomation-special__header-ranking-number-image {
	margin: 0;
	max-height: 4.4em;
}


/* 商品名
   ------------------------------------------------------- */

.p-product-infomation-special__column--header-product-name {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-basis: 85%;
	padding: 0 0.75em;
}

.p-product-infomation-special__header-product-name-image {
	margin: 0;
	max-height: 4.4em;
}

.p-product-infomation-special__title--header-product-name {
	margin: 0.5em 0;
	font-size: 1.5em;
	font-weight: bold;
}


/* 商品のメタデータ枠
   ------------------------------------------------------- */

.p-product-infomation-special__row--metadata {
	background-image: url(http://localhost:8001/site01/wp-content/uploads/2020/10/background.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: cover;
}


/* 商品画像
   ------------------------------------------------------- */

.p-product-infomation-special__column--header-product-image {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	flex-basis: 50%;
	padding: 2.25em 0 1.0em;
}

.p-product-infomation-special__block--header-product-image {
	position: relative;
	width: 70%;
}

.p-product-infomation-special__header-product-image {
}


/* オススメ提示
   ------------------------------------------------------- */

.p-product-infomation-special--header-recommendation-image {
	position: absolute;
	left: -2.0em;
	top: -1.25em;
	width: 50%;
}


/* メタ情報
   ------------------------------------------------------- */

.p-product-infomation-special__column--meta-infomation {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: space-between;
	align-items: center;
	flex-basis: 50%;
	padding: 1.0em 0;
}


/* メタ情報リスト
   ------------------------------------------------------- */

.p-product-infomation-special__block--header-metadata-list {
	width: 90%;
	margin: 0.25em 0;
}

.p-product-infomation-special--header-metadata-list-image {
}


/* 評価スター
   ------------------------------------------------------- */

.p-product-infomation-special__block--header-rating-star {
	width: 90%;
	margin: 0.25em 0;
}

.p-product-infomation-special--header-rating-star-image {
}


/* 価格
   ------------------------------------------------------- */
.p-product-infomation-special__block--header-price {
	width: 90%;
	margin: 0.25em 0;
}

.p-product-infomation-special--header-price-image {
}


/* ------------------------------------------------------------
   筆者のコメント
   ------------------------------------------------------------ */

.p-product-infomation-special__authors-comment {
	margin-top: 0;
  padding: 0 0.75em;
	background: #fff;
}



/* ------------------------------------------------------------
   ユーザーのコメント
   ------------------------------------------------------------ */

.p-users-voice-special {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.p-users-voice-special__heading {
  margin: 0;
  padding: 0.75em;
  text-align: center;
}

.p-users-voice-special__item {
  display: flex;
	width: 100%;
	margin: 0;
  padding: 0;
}
.p-users-voice-special__item:last-child {
	margin: 0;
}

.p-users-voice-special__header {
  display: flex;
  flex-basis: 15%;
  padding: 0.75em 0 0.75em 0.75em;
}

.p-users-voice-special__body {
  display: flex;
  flex-basis: 85%;
	flex-grow: 1;
  padding: 0.75em;
}

.p-users-voice-special__comment {
  align-self: center;
	margin-top: -1.0em;
	margin-bottom: -1.0em;
	font-size: 0.95em;
	text-align: left;
}

.p-users-voice-special__thumbnail {
  align-self: center;
	position: relative;
  width: 100%;
}
.p-users-voice-special__thumbnail:before {
  content:"";
  display: block;
  padding-top: 100%;
}

.p-users-voice-special__thumbnail-inner {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
	overflow: hidden;
}

.p-users-voice-special__thumbnail-image {
	display: block;
	width: 100%;
	height: auto;
}



/* ------------------------------------------------------------
   CTA
   ------------------------------------------------------------ */

.p-product-infomation-special__row--cta {
	justify-content: center;
	padding: 0.375em;
	border-top: solid 0.75em var(--keycolor-sub);
}

.p-product-infomation-special__column--cta {
	max-width: 50%;
	padding: 0.375em;
}

.p-product-infomation-special__cta-area {
}

.p-product-infomation-special__cta-button {
	display: block;
  width: 100%;
	margin: 0 auto;
	padding: 0.75em;
	background: var(--keycolor-main);
	border-radius: 0.5em;
  color: #fff;
  font-weight: bold;
	text-align: center;
}
.p-product-infomation-special__cta-button:hover, 
.p-product-infomation-special__cta-button:active, 
.p-product-infomation-special__cta-button:focus {
	background: var(--keycolor-main);
	color: #fff;
	text-decoration: none;
	opacity: 0.75;
}

.p-product-infomation-special__cta-button-image {
}

.p-product-infomation-special__cta-button-icon {
	margin-left: 0.5em;
}

@media screen and (max-width:959px) {
.p-product-infomation-special__block-heading-text {
	font-size: 1.0em;
}

.p-product-infomation-special__title--header-product-name {
	font-size: 1.25em;
}

.p-product-infomation-special__block-heading-image {
	max-height: 2.4em;
}

.p-product-infomation-special__header-ranking-number-image {
	max-height: 3.8em;
}

.p-product-infomation-special__header-product-name-image {
	max-height: 3.8em;
}

.p-users-voice-special__header {
  flex-basis: 20%;
}

.p-users-voice-special__body {
  flex-basis: 80%;
	font-size: 0.9em;
}
	
.p-product-infomation-special__cta-button {
	font-size: 0.875em;
}
}

@media screen and (max-width:559px) {
.p-product-infomation-special__block-heading-text {
	font-size: 0.85em;
}

.p-product-infomation-special__title--header-product-name {
	font-size: 1.0em;
}

.p-product-infomation-special__block-heading-image {
	max-height: 1.6em;
}

.p-product-infomation-special__header-ranking-number-image {
	max-height: 2.4em;
}

.p-product-infomation-special__header-product-name-image {
	max-height: 2.4em;
}

.p-product-infomation-special__row--metadata {
	flex-wrap: wrap;
	background-image: none;
}

.p-product-infomation-special__column--header-product-image {
	flex-basis: 100%;
	background-image: url(http://localhost:8001/site01/wp-content/uploads/2020/10/background.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.p-product-infomation-special__column--meta-infomation {
	flex-basis: 100%;
	padding-top: 0.75em;
	padding-bottom: 0;
}

.p-product-infomation-special__block--header-metadata-list {
	width: 100%;
}

.p-product-infomation-special__block--header-rating-star {
	width: 100%;
}
	
.p-product-infomation-special__block--header-price {
	width: 100%;
}

.p-product-infomation-special__authors-comment {
	font-size: 0.8em;
}

.p-users-voice-special__header {
  flex-basis: 22.5%;
}

.p-users-voice-special__body {
  flex-basis: 77.5%;
	font-size: 0.8em;
}
	
.p-product-infomation-special__row--cta {
	flex-wrap: wrap;
}

.p-product-infomation-special__column--cta {
	max-width: 100%;
	flex-basis: 100%;
}

.p-product-infomation-special__cta-button {
	font-size: 0.85em;
}
}



/* スモールデザイン（必要最低限の情報を表示）
   ================================================================= */

.p-product-infomation-small {
  flex-basis: 50%;
  margin: 0;
  padding: 0;
  font-size: 0.875em;
}

/* ウィジェット登録時のフォントサイズ微調整 */
.p-widget .p-product-infomation-small {
  font-size: inherit;
}

.p-product-infomation-small__link {
  display: flex;
  padding: 0;
  background: var(--link-bgcolor);
  color: inherit;
  font-weight: inherit;
}
.p-product-infomation-small__link:hover, 
.p-product-infomation-small__link:active, 
.p-product-infomation-small__link:focus {
  background: var(--link-bgcolor-hover);
  color: inherit;
  text-decoration: none;
}

.p-product-infomation-small__list-style {
	display: flex;
	flex-basis: 12%;
	justify-content: center;
	align-items: center;
}

.p-product-infomation-small__ranking-number {
	font-weight: bold;
}

.p-product-infomation-small__inner {
  display: flex;
  flex-wrap: wrap;
	flex-basis: 88%;
	padding: 0.5em;
}

.p-product-infomation-small__header {
  display: flex;
  flex-basis: 25%;
  align-items: center;
}

.p-product-infomation-small__body {
  display: flex;
	flex-basis: 75%;
  align-items: center;
}

.p-product-infomation-small__title {
	flex-basis: 100%;
  margin: 0;
  font-weight: bold;
}

.p-product-infomation-small__excerpt {
  margin: 0;
  padding: 0;
  font-size: 0.75em;
}

.p-product-infomation-small__thumbnail {
  position: relative;
  width: 100%;
	padding: 0 0.5em 0 0;
}

.p-product-infomation-small__thumbnail > img {
  display: block;
  width: 100%;
  height: auto;
}

.p-product-infomation-small__meta-infomation {
  display: flex;
	flex-basis: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0.5em 0 0;
}

.p-product-infomation-small__meta {
  padding: 0 0.5em 0 0;
  font-size: 0.75em;
}
.p-product-infomation-small__meta:last-child {
  padding: 0;
}

@media screen and (max-width:959px) {
	.p-product-infomation-small {
		flex-basis: 50%;
		font-size: 0.875em;
	}
}

@media screen and (max-width:559px) {
	.p-product-infomation-small {
		flex-basis: 100%;
		font-size: 1.125em;
	}
	
	.p-product-infomation-small__meta-infomation {
		font-size: 0.9em;
	}
}
