@charset "utf-8";
/*
theme Name: ONEPIXEL
Author: Masafumi yamaguchi
Description: 株式会社ワンピクセル
version： 1.0.0
*/

/*cssのリセット*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,
blockquote,pre,abbr,address,cite,code,del,dfn,em,img,
ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,
ol,ul,li,fieldset,form,label,legend,table,caption,
tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,nav,section,
summary,time,mark,audio,video {
 font-size: 100%;
 margin: 0;
 padding: 0;
 vertical-align: baseline;
 border: 0;
 outline: 0;
 background: transparent;
}
 
body {
 line-height: 1;
}
 
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
 display: block;
}
 
nav ul {
 list-style: none;
}
 
blockquote,
q {
 quotes: none;
}
 
blockquote:before,
blockquote:after,
q:before,
q:after {
 content: '';
 content: none;
}
 
a {
 font-size: 100%;
 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;
}

th {
 font-weight: normal;
 text-align: left;
}
 
hr {
 display: block;
 height: 1px;
 margin: 0.3rem 0;
 padding: 0;
 border: 0;
 border-top: 1px solid #998a60;
}

/*サイト全体の基準となるCSSを記述*/
html {
  font-size: 16px;
}
 
body {
 width: 100%;
 height: auto;
 font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'Noto Sans Japanese', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
 line-height: 1.4;
 margin: 0;
 padding: 0;
 color: #333;
 overflow-x: hidden;
 overflow-wrap: break-word;
 box-sizing: border-box;
}

.wrapper {
 overflow: hidden;
}
 
h1, h2, h3, h4, h5, h6 {
 font-weight: bold;
 color: #000;
}
 
img {
 max-width: 100%;
 height: auto;
}

small {
 font-size: 0.8rem;
}

dt {
 margin: 15px 0;
 font-size: 1rem;
}

iframe.wp-embedded-content {
 width: 100%;
 margin: 50px 0 30px;
 box-sizing: border-box;
}

table {
 font-size: 0.8rem;
 margin: 1rem auto;
 width: 100%;
}

th {
 padding: 1rem;
 background: rgba(153,153,153,0.2);
 vertical-align: middle;
 font-weight: bold;
 border: #333 0.5px solid;
}

td {
 padding: 1rem;
 vertical-align: middle;
 border: #333 0.5px solid;
}

@media screen and (max-width: 768px) {
th {
 padding: 0.5rem;
 background: rgba(153,153,153,0.2);
 border: none;
}

td {
 padding: 0.5rem;
 border: none;
}
}

@media screen and (max-width: 768px) {
table th {
 display: block;
}
	
table td {
 display: block;
}}

.heading {
 text-align: center;
 font-size: 2rem;
 line-height: 1;
 font-weight: bold;
 margin: 2rem 0;
 letter-spacing: normal;
 color: #998a60;
}

p {
 margin: 1rem 0 1.5rem;
}

.archivelink {
 color: #fff;
 font-size: initial;
 width: 90%;
 max-width: 350px;
 box-sizing: border-box;
 font-weight: bold;
 text-align: center;
 letter-spacing: .05rem;
 border-radius: 30px;
 background: #998a60;
 padding: 15px 30px;
 border: none;
 margin: 1rem auto;
 position: relative;
 overflow: hidden;
}

.archivelink::before {
 content: '';
 position: absolute;
 top: 0;
 left: -75%;
 width: 50%;
 height: 100%;
 background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
 transform: skewX(-25deg);
}

.archivelink:hover::before {
 animation: shine 0.7s;
}

@keyframes shine {
 100% {
 left: 125%;
}}

/* ヘッダー */
header {
 width: 100%;
 height: 75px;
 background: #fff;
 color: #000;
 position: absolute;
 z-index: 1000;
}

.header_inner {
 width: 90%;
 max-width: 1280px;
 padding: 15px 0 5px;
 margin: 0 auto;
 display: flex;
}

.site_title_wrap {
 width: 50%;
 max-width: 200px;
}

/*ナビゲーション PC */
.header_menu {
 width: 100%;
 height: auto;
 font-size: 0.8rem;
}

.header_list {
 display: flex;
 margin: 0 auto;
 width: 90%;
 max-width: 740px;
}

.header_list > li {
 width: 20%;
}

.header_list li {
 list-style: none;
 position: static;
 width: 20%;
}

.header_list li a {
 color: #000;
 line-height: 2rem;
 text-align: center;
 text-decoration: none;
 width: auto;
}

.header_list li li a {
 font-style: italic;
 line-height: 4rem;
 font-size: 0.8rem;
}

.header_list li a:hover {
 opacity: 0.5;
}

.header_list li li,.sub-menu div {
 height: 0;
 overflow: hidden;
 transition: .5s;
 z-index: 10;
}

@media screen and (min-width: 821px) {
.header_list li li {
 display: inline-block;
 margin-top: -1px;
 margin-left: -1px;
 width: calc(20% + 1px);
}}

.header_list li:hover > ul > li,.sub-menu div {
 height: 4rem;
}

.header_list li ul:hover > ul > li {
 height: 3rem;
 overflow: visible;
}

.menu-item-description {
 font-size: 0.6rem;
 line-height: 1;
 padding-bottom: 1.2rem;
 opacity: 0.8;
}

.header_menu li:before, .header_menu li:after {
 background-color: #000;
 content: "";
 width: 0.1px;
 height: 25%;
 position: absolute;
 top: 30%;
 z-index: 1;
}

.header_menu li:first-child:before, .header_menu li:first-child:after {
 display: none;
}

.header_menu li li:before, .header_menu li li:after {
 display: none;
}

.header_list li li div:after {
 content: "\f0da";
 font-weight: bold;
 font-family: "Font Awesome 5 Free";
 margin-left: 1rem;
}

@media screen and (min-width:821px) {
.hamburger_menu {
 display: none;
}}

#header_floating_menu {
 width: 100%;
 height: 50px;
 position: fixed;
 top: 0;
 left: 0;
 z-index: 100;
 background: #fff;
}

.floating_menu .header_list {
 margin-right: auto !important;
}

ul.sub-menu {
 position: absolute;
 width: 100%;
 top: 75px;
 left: 0;
 background: rgba(255,255,255,0.7);
 font-size: 0;
 text-align: center;
}

@media screen and (max-width: 820px) {
ul.sub-menu {
 position: initial;
 width: 100%;
 top: 75px;
 left: 0;
 background: none;
}}

#header_floating_menu ul.sub-menu {
 top: 50px;
}

.sub-menu div {
 border-left: #333 0.5px solid;
 border-right: #333 0.5px solid;
}

/*ナビゲーション スマホ */
.menu_content_inner {
 width: 100%;
 min-height: 100vh;
 padding: 10% 10% 0px;
 box-sizing: border-box;
}

.menu_content_inner img {
 width: 100%;
 max-width: 350px;
 margin-bottom: 1rem;
}

.menu_content_inner ul {
 padding: 0 0 0 10%;
}

.menu_content_inner ul.sub-menu {
 padding-left: 1rem;
 opacity: 0.8;
 margin-bottom: 1rem;
}

@media screen and (max-width: 820px) {
.menu_content_inner ul.sub-menu {
 padding-left: 0;
 opacity: 0.8;
 margin-bottom: 0;
}}

.menu_btn {
 position: absolute;
 top: 5px;
 right: 8px;
 display: flex;
 height: 55px;
 width: 55px;
 justify-content: center;
 align-items: center;
 z-index: 100;
}

.menu_btn span,
.menu_btn span:before,
.menu_btn span:after {
 content: '';
 display: block;
 height: 2px;
 width: 25px;
 border-radius: 3px;
 background-color: #998a60;
 position: absolute;
 transition: all 0.5s;
}

.menu_btn span:before {
 bottom: 8px;
}

.menu_btn span:after {
 top: 8px;
}

#menu_btn_check:checked ~ .menu_btn span {
 background-color: rgba(255, 255, 255, 0);
}

#menu_btn_check:checked ~ .menu_btn span::before {
 bottom: 0;
 transition: all 0.5s;
 transform: rotate(45deg);
}

#menu_btn_check:checked ~ .menu_btn span::after {
 top: 0;
 transition: all 0.5s;
 transform: rotate(-45deg);
}

#menu_btn_check {
 display: none;
}

.menu_content ul li {
 list-style: none;
}

.menu_content ul li a {
 display: block;
 width: 100%;
 font-size: 1rem;
 font-weight: bold;
 box-sizing: border-box;
 color: #333;
 text-decoration: none;
 padding: 15px 0 15px 0;
 position: relative;
}

.menu_content {
 width: 100%;
 height: 100%;
 position: fixed;
 overflow-y: scroll;
 top: 0;
 left: 0;
 z-index: 0;
 background: url(/wp-content/themes/onepixel-child/images/drawer_background.jpg) center center / cover no-repeat;
 opacity: 0;
 transition: all 0.8s;
 pointer-events: none;
}

#menu_btn_check:checked ~ .menu_content {
 opacity: 1;
 pointer-events: auto;
}

.menu {
 width: 90%;
 margin: 0 auto;
}

@media screen and (max-width: 540px) {
.menu_content .menu-item-description {
 font-size: 0.5rem;
 display: inline-block;
 padding-bottom: 0;
 padding-left: 0.5rem;
}}

.hamburger_menu li {
 list-style: none;
 position: relative;
}
	
.hamburger_menu li a {
 color: #fff;
 display: block;
 text-decoration: none;
 width: auto;
}

.hamburger_menu li a:hover {
 opacity: 0.5;
}

.hamburger_menu li li {
 height: 0;
 overflow: hidden;
 transition: .5s;
}

.hamburger_menu li li a {
 text-align: center;
 opacity: 0.6;
 font-size: 0.9rem;
}

.hamburger_menu li:hover > ul > li {
 height: 2rem;
 overflow: visible;
}

.menu_content ul li li:last-child {
 margin-bottom: 1rem;
}

.hamburger_menu li li .dropdown {
 display: none;
}

.hamburger_menu .menu-item-has-children > a :before {
 display: block;
 position: absolute;
 top: 10px;
 right: 0;
 width: 20px;
 height: 20px;
 border: 1px solid #000;
 border-radius: 100%;
 line-height: 20px;
 text-align: center;
 content: "+";
}

.dropdown {
 position: absolute;
 width: 35px;
 height: 35px;
 top: 4px;
 right: -6px;
}

@media screen and (max-width:820px) {
.header_menu {
 display: none;
}}

/* ドロワー */
.drawer {
 overflow-wrap: break-word;
 margin-bottom: 30px;
}

.drawer img {
 width: 100%;
 padding: 0;
}

.menu_btn_drawer {
 display: flex;
 height: 60px;
 width: 60px;
 justify-content: center;
 align-items: center;
 z-index: 90;
}

.menu_btn_drawer span,
.menu_btn_drawer span:before,
.menu_btn_drawer span:after {
 content: '';
 display: block;
 height: 2px;
 width: 25px;
 border-radius: 3px;
 background-color: #998a60;
 position: absolute;
 transition: all 0.5s;
}

.menu_btn_drawer span:before {
 bottom: 8px;
}

.menu_btn_drawer span:after {
 top: 8px;
}

.menu_btn_drawer span {
 background-color: rgba(255, 255, 255, 0);
}

.menu_btn_drawer span::before {
 bottom: 0;
 transition: all 0.5s;
 transform: rotate(45deg);
}

.menu_btn_drawer span::after {
 top: 0;
 transition: all 0.5s;
 transform: rotate(-45deg);
}

/* ファーストビュー */
.firstview {
 width: 100%;
 height: 100vh;
 top: 0;
 z-index: -5;
 overflow: hidden;
 position: relative;
}

@media screen and (max-width: 1024px) {
.firstview {
 position: relative;
}}

.firstview:after {
 content: "";
 position: absolute;
 width: 100%;
 height: 100%;
 left: 0;
 top: 0;
 background: rgba(0,0,0,0.35);
 z-index: -2;
 transform:translate3d(0,0,0);
}

.firstview_message {
 color: #fff;
 width: 45% !important;
 max-width: 520px;
 text-align: center;
 font-size: min(2vw,1rem);
 filter: drop-shadow(2px 2px 4px #000);
 position: absolute;
 right: 10%;
 bottom: 5%;
 opacity: 0.8;
}

@media screen and (max-width: 540px) {
.firstview_message {
 width: 90% !important;
 max-width: 90%;
 right: 0;
 padding: 5%;
 bottom: 10%;
}}

.dot-overlay {
 background: url(/wp-content/themes/onepixel/images/dot.svg);
 position: absolute;
 width: 100%;
 height: 100%;
 opacity: 0.5;
 z-index: -2;
 transform:translate3d(0,0,0);
}

.video_wrapper {
 width: 100%;
 height: 100%;
 position: relative;
 overflow: hidden;
 z-index: -3;
 transform:translate3d(0,0,0);
}

#header-video {
 width: 100%;
 height: 100%;
 object-fit: cover;
 position: absolute;
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%,-50%);
 transform: translate(-50%,-50%);
}

/* フロントページ */
.container {
 width: 100%;
 height: auto;
}

.front_page_contents {
 max-width: 1120px;
 margin: 0 auto;
 padding: 2rem 0;
 letter-spacing: -1.4rem;
 font-size: 0;
}

.front_page_archive_left {
 width: 25%;
 display: inline-block;
 padding: 2rem 2% 3rem;
 vertical-align: top;
 font-size: initial;
 letter-spacing: normal;
 vertical-align: middle;
}

@media screen and (max-width: 820px) {
.front_page_archive_left {
 width: 100%;
 padding: 2rem 0 0;
}}

.front_page_archive_right {
 width: 67%;
 display: inline-block;
 padding: 2rem 2% 3rem;
 vertical-align: top;
 font-size: initial;
 letter-spacing: normal;
 vertical-align: middle;
}

@media screen and (max-width: 820px) {
.front_page_archive_right {
 width: 100%;
 padding: 0 0 2rem;
}}

.blog_small {
 letter-spacing: -1.4rem;
 max-width: 1080px;
 margin: 0 auto;
 padding: 0 2%;
 font-size: 0;
}

.blog-wrap {
 width: 33%;
 padding: 1%;
 display: inline-block;
 box-sizing: border-box;
}

@media screen and (max-width: 768px) {
.blog-wrap {
 width: 50%;
}}

.img-wrap {
 font-size: 0;
}

.front_page_list_text {
 width: 100%;
 padding: 3%;
 box-sizing: border-box;
 text-align: center;
 position: absolute;
 bottom: 0;
 color: #fff;
 text-shadow: 2px 2px 2px #000;
 background: rgba(0,0,0,0.5);
}

.front_page_list_text h2 {
 color: #fff;
 font-size: 1.2rem;
 font-family: 'RocknRoll One', sans-serif;
 font-weight: normal;
}

@media screen and (max-width: 768px) {
.front_page_list_text h2 {
 font-size: 0.8rem;
}}

.img-wrap_small {
 font-size: 0;
 overflow: hidden;
 position: relative;
 padding-top: 65%;
}

.img-wrap_small img {
 position: absolute;
 left: 0;
 top: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
}

a .front_page_small_list_text, .front_page_small_list_text h2 {
 color: #998a60;
}

.front_page_small_list_text {
 width: 100%;
 padding: 1%;
 display: inline-block;
 vertical-align: top;
 letter-spacing: normal;
}

.front_page_small_list_text h2 {
  font-size: initial;
}

.front_page_small_cat-data {
 font-size: 0.65rem;
 color: #fff;
 background: #998a60;
 padding: 2px 5px 2px 5px;
 border-radius: 10px;
 margin-right: 5px;
 letter-spacing: normal;
 position: absolute;
 top: 10px;
 left: 10px;
}

.front_page_small_excerpt {
 font-size: 0.9rem;
 margin-top: 5px;
}

@media screen and (max-width: 540px) {
.front_page_small_excerpt {
 font-size: 0.7rem;
}}

.front_page_small_excerpt p {
 margin: 0;
}

.article-date_blog {
 font-size: 0.7rem;
 transform: scale(0.8);
 color: #999;
}

/* フッター */
footer {
 background: #000 url(/wp-content/themes/onepixel-child/images/footer_background.png) center center / cover no-repeat;
 color: #fff;
 padding: 2rem 0 1rem;
}

@media screen and (max-width: 768px) {
footer {
 padding: 2rem 0 95px;
}}

.footer_inner {
 width: 90%;
 max-width: 1280px;
 margin: 0 auto;
 z-index: 1;
}

.footer_inner a:hover {
 opacity: 0.8;
}

.footer_inner a {
 color: #998a60;
 text-decoration: none;
}

.footer_inner li {
 list-style: none;
 display: inline-block;
 padding: 0 10px;
 font-size: 0.8rem;
}

.footer_inner .menu-item-description {
 margin-top: 0.2rem;
 padding-bottom: 0;
}

.footer_list {
 text-align: center;
 margin-bottom: 2rem;
}

.footer_column {
 letter-spacing: -1.4rem;
 font-size: 0;
 width: 90%;
 max-width: 1280px;
 height: auto;
 margin: 0 auto;
}

.footer_column_inner {
 width: 31%;
 padding: 1%;
 display: inline-block;
 letter-spacing: normal;
 font-size: 0.9rem;
 opacity: 0.7;
 vertical-align: top;
 margin: 0 0 1rem;
}

@media screen and (max-width: 540px) {
.footer_column_inner {
 width: 100%;
 padding: 0;
}}

.copyright {
 font-size: 0.8rem;
 color: #998a60;
 padding: 30px 0 0;
 opacity: 0.8;
 text-align: center;
}

.copyright p {
 margin: 0;
}

.footer_title {
 font-size: 0.85rem;
 opacity: 0.6;
 padding: 5px 0 15px;
 text-align: center;
}

@media screen and (min-width: 768px) {
#footer_floating {
 display: none !important;
}}

#footer_floating {
 width: 100%;
 height: 70px;
 position: fixed;
 bottom: 0;
 left: 0;
 background: #000;
 text-align: center;
 z-index: 100;
}

#footer_floating a {
 text-decoration: none;
 color: inherit;
}

.footer_floating {
 top: 50%;
 left: 50%;
 -webkit-transform: translate(-50%,-50%);
 transform: translate(-50%,-50%);
 position: relative;
 display: flex;
 align-items: center;
}

.footer_icon {
 width: 90%;
 display: inline-block;
 font-size: 1.4rem;
 line-height: 1.2;
 position: relative;
 font-weight: bold;
 color: #998a60;
}

.footer_icon:first-child:after {
 display:none;
}

.footer_icon:after {
 background-color: #998a60;
 content: "";
 width: 1px;
 height: 65%;
 position: absolute;
 top: 20%;
 left: 0;
 margin-left: -3%;
 z-index: 1;
}

.footer_icon_disc {
 font-size: 0.75rem;
}

/* パンくずリスト */
.breadcrumbs {
 width: 90%;
 max-width: 1280px;
 margin: 20px auto 10px;
 font-size: 0.8rem;
}

.breadcrumbs a {
 color: #333;
 text-decoration: none;
}

.breadcrumbs li {
 display: inline-block;
 margin: 0 10px 0 0;
}

.breadcrumbs li:after {
 font-family: 'onepixel' !important;
 content: "\e903";
 font-size: 0.8rem;
 padding: 0 0 0 15px;
 text-align: center;
}


.breadcrumbs li:last-child:after {
 display: none;
}

/* column */
.column_left {
 width: 65%;
 background: rgba(255,255,255,0.5);
 margin: 0;
 padding: 3%;
 display: inline-block;
 letter-spacing: normal;
}

@media screen and (max-width: 768px) {
.column_left {
 width: auto;
 display: inherit;
}}

/* ページャー */
#pager_navigation {
 letter-spacing: normal;
 text-align: center;
 margin: 5% 0;
}

.page-numbers li {
 display: inline-grid;
 font-size: 0.8rem;
 padding: 0.5%;
 width: 25px;
 height: 25px;
 line-height: 25px;
}

.page-numbers.current {
 background: #e70518;
 border: 1px #e70518 solid;
 border-radius: 5px;
 color: #fff;
}

.page-numbers li a {
 background: #fff;
 border: 1px #e70518 solid;
 border-radius: 5px;
 color: #e70518;
}

.nav-links a {
 color: #333;
 text-decoration: none;
}

/* 投稿・固定ページ 共通 */
.post_header_frame {
 height: 35vh;
 overflow: hidden;
 position: relative;
 margin: 75px 0 0;
}

@media screen and (max-width: 1024px) {
.post_header_frame {
 height: 25vh;
}}

.post_header_frame h1 {
 width: 90%;
 text-align: center;
 color: #fff;
 font-size: 1.5vw;
 text-shadow: 2px 2px 5px #000;
 letter-spacing: 0.15rem;
 font-weight: normal;
 z-index: 1;
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
}

.title_st {
 font-size: 3vw;
 font-weight: bold;
 font-family: 'Beau Rivage','Noto Serif JP', serif;
}

@media screen and (max-width: 1024px) {
.post_header_frame h1 {
 font-size: 4vw;
}}

@media screen and (max-width: 1024px) {
.title_st {
 font-size: 7vw;
 font-weight: bold;
}}

.post_header_frame p {
 width: 90%;
 color: #fff;
 font-size: 0.8rem;
 text-shadow: 2px 2px 5px #000;
 letter-spacing: 0.15rem;
 font-weight: normal;
 z-index: 1;
 position: absolute;
 bottom: 10%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
}

#post_header {
 text-align: center;
 height: 35vh;
 font-size: 1.5rem;
 text-shadow: 2px 2px 5px #000;
 position: relative;
 z-index: -2;
}

@media screen and (max-width: 1024px) {
#post_header {
 height: 25vh;
}}
	
#post_header:after {
 content: "";
 background: rgba(0,0,0,0.35) url() center center / cover no-repeat;
 width: 100%;
 height: 100%;
 position: absolute;
 top: 0;
 left: 0;
 z-index: -1;
}

.main {
 letter-spacing: -1.4rem;
 margin: 50px auto;
 width: 90%;
 max-width: 1024px;
}

@media screen and (max-width: 540px) {
.main {
 margin: 0;
 width: 100%;
}}

/* 投稿ページ */
.contents {
 width: 100%;
 max-width: 1280px;
 margin: 0 auto;
}

.contents p {
 margin: 15px 0;
}

.article-title h1 {
 color: #998a60;
 font-weight: bold;
 padding: 10px 0;
 margin: 15px 0;
 border-bottom: 2px solid #998a60;
}

.date-single {
 display: flex;
}

.article-date-single {
 font-size: 0.85rem;
 margin-right: 0.8rem;
}

.cat-data-single a {
 color: #fff;
 background: #998a60;
 display: table;
 padding: 0 0.8rem;
 border-radius: 5px;
 text-decoration: none;
 line-height: 1.7;
 font-size: 0.7rem;
}

.article-title {
 width: 100%;
}

.article-content {
 padding: 15px 0;
 font-size: 0.9rem;
 line-height: 1.5;
 width: 90%;
 max-width: 1024px;
 margin: 0 auto;
}

@media screen and (max-width: 540px) {
.article-content {
 padding: 0 0 15px;
 font-size: 0.85rem;
}}

.single_page_fix {
 text-align: center;
 border: 1px solid #998a60;
 padding: 3vh;
 margin: 0 0 2rem;
 font-size: 0.75rem;
}

.single_page_tel {
 font-size: min(8vw,2.7rem);
 font-weight: bold;
 margin: 0.5rem 0;
}

/* 投稿ページ  SNS */
.sns_share {
 text-align: center;
 margin-bottom: 15px;
}
.sns_share a {
 color: #333;
 text-decoration: none;
}

.sns_share li {
 list-style: none;
 display: inline-block;
 margin: 5% 2%;
}

/* 投稿ページ  前後記事 */
.before_and_after {
 position: relative;
 width: 100%;
 height: auto;
 display: flex;
 flex-wrap: nowrap;
 font-size: 0.8rem;
}

.before_and_after a {
 text-decoration: none;
 color: #444;
}

.before_and_after_left {
 width: 48%;
 height: 100%;
 left: 0;
 margin: 0 1%;
 text-align: center;
 display: table-cell;
 top: 0;
}

.before_and_after_right {
 width: 48%;
 height: 100%;
 right: 0;
 margin: 0 1%;
 text-align: center;
 display: table-cell;
 top: 0;
}

/* 固定ページ */
.page_contents {
 width: auto;
 background: rgba(255,255,255,0.5);
 margin: 0;
 padding: 3%;
 letter-spacing: normal;
}

.page .article-content {
 padding: 15px 3%;
 position: relative;
}

/* サイドバー */
.sidebar {
 width: 27%;
 margin: 0 0 0 2%;
 letter-spacing: normal;
 display: inline-block;
 vertical-align: top;
}

@media screen and (max-width: 768px) {
.sidebar {
 width: auto;
 margin: 5% 3% 0;
 display: inherit;
}}

.sidebar a {
 text-decoration: none;
 color: #000;
}

.sidebar-inner {
 padding-bottom: 10%;
}

.sidebar li {
 list-style: none;
 line-height: 2;
}

.sidebar-title {
 color: #998a60;
 font-weight: bold;
 padding: 10px 0;
 margin: 15px 0;
 border-bottom: 2px solid #998a60;
}

.sidebar_sp {
 display: flex;
 font-size: 0;
 text-align: center;
}

.sidebar_sp img {
 width: 95%;
 padding-bottom: 5%;
}

/* アーカイブ */
#archive_header {
 background: #ddd;
 text-align: center;
 padding: 15vh 0;
 font-size: 2rem;
}

#archive {
 letter-spacing: -1.4rem;
 margin: 50px auto;
 width: 90%;
 max-width: 1280px;
}

.archive_list {
 margin-bottom: 2rem;
 letter-spacing: -1.4rem;
 font-size: 0;
}

.archive_list a {
 text-decoration: none;
 color: #000;
}

.article-title-list {
 text-align: left;
 letter-spacing: normal;
 font-size: 0.9rem;
 width: 72.5%;
 display: inline-block;
 vertical-align: middle;
}

@media screen and (max-width: 540px) {
.article-title-list {
 font-size: 0.8rem;
}}

.article-title-list:after {
 content: "\f0da";
 font-family: "Font Awesome 5 Free";
 font-weight: 900;
 color: #000;
 padding: 0 0 0 0.8rem;
}

.archive_list-wrap {
 width: 90%;
 max-width: 820px;
 margin: 0 auto;
}

.cat-data, .cat-data a {
 color: #fff;
 background: #998a60;
 display: table;
 padding: 0 0.5rem;
 margin: 0 auto;
 border-radius: 5px;
 text-decoration: none;
 line-height: 1.7;
 font-size: 0.7rem;
}

@media screen and (max-width: 540px) {
.cat-data, .cat-data a {
 font-size: 0.5rem;
}}

.article-date {
 font-size: 0.8rem;
 text-align: center;
 width: 25%;
 margin: 0 2.5% 0 0;
 display: inline-block;
 letter-spacing: normal;
 vertical-align: middle;
 transform: scale(0.8);
}

@media screen and (max-width: 540px) {
.article-date {
 font-size: 0.5rem;
}}

#category_main {
 letter-spacing: -1.4rem;
 font-size: 0;
}

#tag_navigation {
position: absolute;
left: 5%;
top: 5%;
background: #998a60;
color: #fff;
text-decoration: none;
padding: 1% 2%;
font-size: 0.7rem;
z-index: 10;
}

@media screen and (max-width: 540px) {
#tag_navigation {
font-size: 0.5rem;
}}

#tag_navigation a {
 color: #fff;
 text-decoration: none;
}

.archive_date {
 font-size: 0.8rem;
 margin-bottom: 5px;
 z-index: 10;
}

@media screen and (max-width: 540px) {
.archive_date {
 margin-bottom: 0;
}}

h2.articles_title a {
color: #998a60;
text-decoration: none;
font-size: 1.2rem;
line-height: 1.3;
}

@media screen and (max-width: 540px) {
h2.articles_title a {
font-size: 0.8rem;
}}

h2.screen-reader-text {
 display: none;
}

label.screen-reader-text {
 display: none;
}

select#archives-dropdown-2, select#archives-dropdown-3 {
 width: 100%;
 padding: 0.5rem;
}

.sidebar-inner li{
 position: relative;
 padding-left: 10px;
}
 
.sidebar-inner li:before {
 content: "";
 position: absolute;
 top: 0.6rem;
 left: 0;
 width: 0;
 height: 0;
 border-width: 5px;
 border-style: solid;
 border-color: transparent transparent transparent #000000;
}

#category_main {
 letter-spacing: -1.4rem;
 font-size: 0;
}

.articles_index {
 width: 48%;
 margin: 1% 1% 3%;
 display: inline-block;
 letter-spacing: normal;
 vertical-align: top;
}

.articles_index_thumbnail {
 aspect-ratio: 3 / 2;
 overflow: hidden;
 display: flex;
 align-items: center;
 justify-content: center;
 position: relative;
 margin-bottom: 3%;
 transition: 0.5s all;
}

.articles_index_thumbnail img {
 transition: 0.5s all;
}

.articles_index_thumbnail img:hover{
 transform:scale(1.2,1.2);
 transition:0.8s all;
}

#tag_navigation {
position: absolute;
left: 5%;
top: 5%;
background: #998a60;
color: #fff;
text-decoration: none;
padding: 1% 2%;
font-size: 0.7rem;
z-index: 10;
}

@media screen and (max-width: 540px) {
#tag_navigation {
font-size: 0.5rem;
}}

#tag_navigation a {
 color: #fff;
 text-decoration: none;
}

.archive_date {
 font-size: 0.8rem;
 margin-bottom: 5px;
 z-index: 10;
}

@media screen and (max-width: 540px) {
.archive_date {
 margin-bottom: 0;
}}

h2.articles_title a {
color: #998a60;
text-decoration: none;
font-size: 1.2rem;
line-height: 1.3;
}

@media screen and (max-width: 540px) {
h2.articles_title a {
font-size: 0.8rem;
}}

h2.screen-reader-text {
 display: none;
}

/* サイトマップ */
#sitemap a {
 text-decoration: none;
 color: #333;
}

ul #sitemap, #sitemap li {
 list-style: none;
}

#sitemap li {
 margin: 8px 0;
}

#sitemap li > ul {
 margin: 5px;
}

#sitemap li > ul > li a {
 color: #888;
}

#sitemap li > ul > li {
 text-indent: 2.5rem;
 color: #999;
}

#sitemap > li {
 border-bottom: 1px solid #999;
 display: table;
}

/* 検索 */
.search_result {
 letter-spacing: normal;
 text-align: center;
 margin: 0 0 30px;
}

#searchform {
 letter-spacing: -1.4rem;
}

input#s {
 width: 70%;
 max-width: 100%;
 height: 35px;
 border: 2px solid #ccc;
 padding: 5px 2%;
 margin-right: 2%;
 background: #f9f9f9;
 box-sizing: border-box;
}

button {
 width: 28%;
 height: 35px;
 vertical-align: middle;
 line-height: 0;
 border: 0;
 background: #000;
 color: #fff;
 padding: 2%;
}

/* 404 */
.not_found {
 text-align: center;
 background: #998a60;
 color: #fff;
 padding: 15px 20px;
 display: table;
 margin: 0 auto 50px;
}

.not_found_search {
 width: 90%;
 max-width: 800px;
 margin: 30px auto;
}

button {
 background: #998a60;
}

/* カスタム投稿（エリア） */
.article-content_area {
 padding: 15px 3%;
}

/* ローディング */
#loading {
 width: 30%;
 height: auto;
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 -webkit-transform: translate(-50%, -50%);
 -ms-transform: translate(-50%, -50%);
}

@media only screen and (max-width:540px) {
#loading {
 width: 65%;
 height: auto;
}}

#loader-bg {
 position: fixed;
 width: 100%;
 height: 100%;
 top: 0px;
 left: 0px;
 background: #f4eadb url(/wp-content/themes/onepixel-child/images/loading.jpg) center bottom / cover no-repeat;
 z-index: 10000;
}

#load {
  position:absolute;
  width:600px;
  height:36px;
  left:50%;
  top:50%;
  margin-left:-350px;
  overflow:visible;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
  cursor:default;
  z-index: 100000;
}

#load div {
 position:absolute;
 width:20px;
 height:36px;
 opacity:0;
 animation:move 2s linear infinite;
 -o-animation:move 2s linear infinite;
 -moz-animation:move 2s linear infinite;
 -webkit-animation:move 2s linear infinite;
 transform:rotate(180deg);
 -o-transform:rotate(180deg);
 -moz-transform:rotate(180deg);
 -webkit-transform:rotate(180deg);
 color:#887e63 !important;
 font-weight: bold;
}

#load div:nth-child(2) {
  animation-delay:0.2s;
  -o-animation-delay:0.2s;
  -moz-animation-delay:0.2s;
  -webkit-animation-delay:0.2s;
}
#load div:nth-child(3) {
  animation-delay:0.4s;
  -o-animation-delay:0.4s;
  -webkit-animation-delay:0.4s;
  -webkit-animation-delay:0.4s;
}
#load div:nth-child(4) {
  animation-delay:0.6s;
  -o-animation-delay:0.6s;
  -moz-animation-delay:0.6s;
  -webkit-animation-delay:0.6s;
}
#load div:nth-child(5) {
  animation-delay:0.8s;
  -o-animation-delay:0.8s;
  -moz-animation-delay:0.8s;
  -webkit-animation-delay:0.8s;
}
#load div:nth-child(6) {
  animation-delay:1s;
  -o-animation-delay:1s;
  -moz-animation-delay:1s;
  -webkit-animation-delay:1s;
}
#load div:nth-child(7) {
  animation-delay:1.2s;
  -o-animation-delay:1.2s;
  -moz-animation-delay:1.2s;
  -webkit-animation-delay:1.2s;
}

@keyframes move {
  0% {
    left:0;
    opacity:0;
  }
  35% {
    left: 41%; 
    -moz-transform:rotate(0deg);
    -webkit-transform:rotate(0deg);
    -o-transform:rotate(0deg);
    transform:rotate(0deg);
    opacity:1;
  }
  65% {
    left:59%; 
    -moz-transform:rotate(0deg); 
    -webkit-transform:rotate(0deg); 
    -o-transform:rotate(0deg);
    transform:rotate(0deg); 
    opacity:1;
  }
  100% {
    left:100%; 
    -moz-transform:rotate(-180deg); 
    -webkit-transform:rotate(-180deg); 
    -o-transform:rotate(-180deg); 
    transform:rotate(-180deg);
    opacity:0;
  }
}

@-moz-keyframes move {
  0% {
    left:0; 
    opacity:0;
  }
  35% {
    left:41%; 
    -moz-transform:rotate(0deg); 
    transform:rotate(0deg);
    opacity:1;
  }
  65% {
    left:59%; 
    -moz-transform:rotate(0deg); 
    transform:rotate(0deg);
    opacity:1;
  }
  100% {
    left:100%; 
    -moz-transform:rotate(-180deg); 
    transform:rotate(-180deg);
    opacity:0;
  }
}

@-webkit-keyframes move {
  0% {
    left:0; 
    opacity:0;
  }
  35% {
    left:41%; 
    -webkit-transform:rotate(0deg); 
    transform:rotate(0deg); 
    opacity:1;
  }
  65% {
    left:59%; 
    -webkit-transform:rotate(0deg); 
    transform:rotate(0deg); 
    opacity:1;
  }
  100% {
    left:100%;
    -webkit-transform:rotate(-180deg); 
    transform:rotate(-180deg); 
    opacity:0;
  }
}

@-o-keyframes move {
  0% {
    left:0; 
    opacity:0;
  }
  35% {
    left:41%; 
    -o-transform:rotate(0deg); 
    transform:rotate(0deg); 
    opacity:1;
  }
  65% {
    left:59%; 
    -o-transform:rotate(0deg); 
    transform:rotate(0deg); 
    opacity:1;
  }
  100% {
    left:100%; 
    -o-transform:rotate(-180deg); 
    transform:rotate(-180deg); 
    opacity:0;
  }
}

/* スワイパー */
.swiper-container-free-mode > .swiper-wrapper {
 -webkit-transition-timing-function:linear!important;
 -o-transition-timing-function:linear!important;
 transition-timing-function:linear!important;
}

.blog_inner_img img {
 position: absolute;
 left: 0;
 top: 0;
 width: 100%;
 height: 100%;
 object-fit: cover;
}

/* インビュー */
.op0 {
 opacity: 0;
}

/* reCAPTCHA */
.grecaptcha-badge {
 display: none !important;
}

/* コンタクトフォーム */
input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
 width: 100%;
 padding: 0.3rem;
 box-sizing: border-box;
}

input.wpcf7-form-control.wpcf7-text.wpcf7-tel.wpcf7-validates-as-tel {
 width: 100%;
 padding: 0.3rem;
 box-sizing: border-box;
}

textarea.wpcf7-form-control.wpcf7-textarea {
 width: 100%;
 padding: 0.5rem;
 box-sizing: border-box;
}

input.wpcf7-form-control.has-spinner.wpcf7-submit {
 width: 100%;
 max-width: 500px;
 height: 80px;
 margin: 2rem auto;
 display: table;
 background: #94886c;
 color: #fff;
 font-size: 1.5rem;
 font-weight: bold;
 border: none;
 font-family: 'Noto Serif JP', serif;
}

.wpcf7 {
 width: 90%;
 max-width: 540px;
 margin: 0 auto;
}

.cf_heading {
 background: #94886c;
 border-radius: 15px;
 color: #fff;
 padding: 0.2rem 0.5rem;
 display: inline-block;
 font-size: 0.8rem;
 margin: 2rem 0 1rem;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
 border-radius: 0;
 -webkit-box-sizing: content-box;
 -webkit-appearance: button;
 appearance: button;
 border: none;
 box-sizing: border-box;
 cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
 display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
 outline-offset: -2px;
}

/* モーダルウィンドウ */
.modal-wrapper {
 z-index: 999;
 position: fixed;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 padding: 60px 10px;
 text-align: center
}

.modal-wrapper:not(:target) {
 opacity: 0;
 visibility: hidden;
 transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
 opacity: 1;
 visibility: visible;
 transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
 display: inline-block;
 height: 100%;
 margin-left: -.05em;
 vertical-align: middle;
 content: ""
}

.modal-window {
 letter-spacing: normal;
 text-align: left;
 color: #333;
}

.modal-wrapper .modal-window {
 box-sizing: border-box;
 display: inline-block;
 z-index: 20;
 position: relative;
 width: 95%;
 max-width: 1080px;
 padding: 30px 30px 15px;
 border-radius: 2px;
 background: #fff;
 box-shadow: 0 0 30px rgba(0, 0, 0, .6);
 vertical-align: middle
}

.modal-wrapper .modal-window .modal-content {
 max-height: 80vh;
 overflow-y: auto;
}

.modal-overlay {
 z-index: 10;
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 left: 0;
 background: rgba(0, 0, 0, .5)
}

.modal-wrapper .modal-close {
 z-index: 20;
 position: absolute;
 top: 0;
 right: 0;
 width: 35px;
 color: #95979c !important;
 font-size: 20px;
 font-weight: 700;
 line-height: 35px;
 text-align: center;
 text-decoration: none;
 text-indent: 0
}

.modal-wrapper .modal-close:hover {
 color: #2b2e38 !important
}

/* コンタクトフォーム */
.contract {
 width: 100%;
 height: 80px;
 color: #8b8b8b;
 font-size: 0.8rem;
 border: #94886c 1px solid;
 border-radius: 15px;
 padding: 0.5rem 1rem;
 margin-bottom: 1rem;
 box-sizing: border-box;
 overflow-y: scroll;
/* IE, Edge 対応 */
 -ms-overflow-style: none;
 /* Firefox 対応 */
 scrollbar-width: none;
}

/* Chrome, Safari 対応 */
.contract::-webkit-scrollbar {
 display:none;
}

/* 埋め込み動画 */
.mejs-container, .mejs-container .mejs-controls, .mejs-embed, .mejs-embed body {
 background: none !important;
}

.wp-video {
 margin: 2rem 0 3rem;
}