/*
 Theme Name:   shakyo1.0
 Description:  shakyo
 Version:      1.0.0
*/
/*-------------------------------------------
	fonts
--------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');


/*------------------------------------------

A modern CSS reset

Copyright (c) 2019 Andy Bell and other contributors

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

------------------------------------------*/
/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role="list"],
ol[role="list"] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.6;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
/*  display: block;*/
  display: inline;
  height:auto;
  vertical-align:bottom;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

a img {
  border: none;
}
table {
  border-collapse: collapse;
  margin: 0 0 1.5em;
  width: 100%;
}
.wp-caption, .gallery-caption {
  max-width: 100%;
}
/*------------------------------------------

	Common

------------------------------------------*/
body {
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HiraKakuPro-W3", "メイリオ", Meiryo, "MS PGothic", Osaka, sans-serif;
  -webkit-font-smoothing: antialiased;
  color: #000;
  background:#FAF9F4;
}
.inner{
  max-width:1410px;
  margin:0 auto;
}

.wrapper .inner{
  display: flex;
  justify-content:space-between;
  flex-wrap: wrap;
}

.wrapper #header{
  width: 26.95%;
}
.wrapper #main{
  width: 70.09%;
  padding:30px 0 0;
}
.wrapper #footer{
  width: 100%;
}


.menu{
  list-style-type:none;
}
a{
  color:#000;
  transition: opacity .4s,background-color .4s;
}

header a{
  text-decoration:none;
}

a:hover{
  opacity:0.8;
}

/*-- ■ Media Queries ■ --*/
@media (max-width: 1430px) {
.inner{
  padding:0 3%;
  margin:0;
}
}

@media (max-width: 1000px) {
.wrapper #header{
  width: 100%;
}
.wrapper #main{
  width: 100%;
  padding:72px 3% 0;
}
.inner{
  padding:0;
  margin:0;
}
}
/*------------------------------------------

	Header

------------------------------------------*/
header{
  border-top:5px #1B872D solid;
}
header.scroll {
  position: fixed;
  padding-top:0;
  background:rgba(255,255,255,0.8);
  animation-name: anime;
  animation-duration: 0.3s;
}
.header-inner{
  padding:0 10px 10px;
  background:#FFF;
}

.site-ttl{
  font-size:1.375rem;
  font-weight:800;
  text-align:center;
  padding:85px 10px;
  margin:0 0 10px;
  background: linear-gradient(180deg,rgba(255, 255, 255, 1) 90%, rgba(250, 249, 244, 1) 100%);
}
.site-ttl a{
  color:#1B872D;
}
.home #header.scroll .head-logo{
  background-image:url("https://chihiro-graphics.co.jp/wp-content/uploads/logo.png");
}

.navbox{
}

/* grobal navigation (custom menu)
------------------------------------------*/
.gnav {
  padding:0;
  margin:0;
  list-style:none;
}
.gnav li{
  border-bottom:1px #A1CBA4 dotted;
}
.grobal-nav li a{
  display:block;
  font-size:1rem;
  color:#1B872D;
  font-weight:500;
  line-height:1.4;
  padding:20px 40px 20px 20px;
  background:url("images/arrow01.png") center right 20px no-repeat #FAF9F4;
}
#menu-grobal-menu li a:hover,
#menu-grobal-menu li.current-menu-item a{
  opacity:0.8;
}
.menu{
  list-style-type:none;
}


#toggle,
#js-focus-trap {
  display: none;
}

/*-- ■ Media Queries ■ --*/
@media (max-width: 1000px) {
header{
  padding-top:0;
  position:fixed;
  z-index:100;
}
.header-inner{
  padding:0;
}
.site-ttl{
  font-size:1.25rem;
  text-align:left;
  padding:10px 3%;
  margin:0;
}



.navbox{
  top:0;
  left:0;
  width:100%;
  max-height:calc(100vh - 134px);
  padding:0;
  margin:0;
  display: none;
  z-index:10;
  background:rgba(255,255,255,0.9);
  overflow-y:scroll;
  position:relative;
}
.navbox .btn{
  position:relative;
}

.grobal-nav{
  position:relative;
  width:100%;
  margin-left:0;
  margin-right:0;
}
.menu-grobal-menu-container{
  display:block;
}
#menu-grobal-menu{
  display:block;
  width:80%;
  margin:0 auto 15px;
}
#menu-grobal-menu li{
  width:100%;
  display:block;
}
#menu-grobal-menu li a{
  text-align:center;
  padding: 15px 0;
  background-size:28.75px 30px;
}

#toggle{
  display:block;
  position:absolute;
  top:15px;
  right:3%;
  background:none;
  border:none;
  cursor:pointer;
}
#js-focus-trap {
  display:block;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 25px;
  height: 19px;
  z-index:100;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #1B872D;
  border-radius: 3px;
}
.menu-trigger.gnavon span {
  background-color: #1B872D;
}

.home #header.scroll .menu-trigger span {
  background-color: #1B872D;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 8px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

#toggle.gnavon.menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
}
#toggle.gnavon.menu-trigger span:nth-of-type(2) {
  opacity: 0;
}
#toggle.gnavon.menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
}
.home header .navbox a{
  color:#000;
}
.hsitemap{
  display: block;
  width:90px;
  margin:0 auto;
}

}/* end 900px */


/*------------------------------------------

	footer

------------------------------------------*/
#footer{
position:relative;
}
.copy{
  font-size:0.9375rem;
  text-align:center;
  padding:10px;
}
.pagetop {
  position: fixed;
  bottom: 70px;
  right: 30px;
  z-index: 10;
  display:none;
}
.pagetop a {
  position:relative;
  display: block;
  width: 50px;
  height: 50px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url("images/totop.png") 0 0 no-repeat;
  background-size:50px 50px;
}
@media screen and (max-width:1000px) {
.pagetop {
  right: 3%;
}
}
@media (max-width: 480px) {
.copy{
  font-size:0.75rem;
}
}

/*------------------------------------------

	main

------------------------------------------*/
main{
  padding-top:30px;
}
.sub-nav{
  padding:5px 3%;
  margin-bottom:30px;
  background:#FFF;
  border-radius:5px;
}
.menu-sub-navigation-container{
  display:inline;
}
#menu-sub-navigation{
  display:inline;
  padding:0;
}
#menu-sub-navigation li{
  display:inline-block;
}
.sub-nav a{
  display:inline-block;
  padding:5px 0 5px 13px;
  margin-right:15px;
}
.sub-nav a{
  text-decoration:none;
  background:url("images/arrow02.png") center left no-repeat;
}

.gallery-box{
  display: flex;
  justify-content:space-around;
  flex-wrap: wrap;
  align-items:center;
  padding:25px 3% 0;
  margin-bottom:30px;
  background: linear-gradient(180deg,rgba(246, 245, 236, 1) 0%, rgba(255, 255, 255, 1) 100%);
}
.gallery-box img{
  border-radius:5px;
}
.gallery-box div{
  width:32%;
  text-align:center;
  margin-bottom:25px;
}
.gallery-box div img{
  max-height:130px;
}

.sec{
  margin-bottom:30px;
}
.sec02{
  border-radius:5px;
}
.sec-inner01{
  background:#FFF;
  padding:0 3%;
}

.sec-inner02{
  background:#FFF;
  padding:20px 3%;
}
.sec-inner03{
  display: flex;
  justify-content:space-between;
  flex-wrap: wrap;
  background:#FFF;
  padding:20px 3%;
}
.sec-inner03 .main-column{
  width:61.5%;
}
.sec-inner03 .sub-column{
  width:35.5%;
}

.mds01{
  font-size:1.5rem;
  font-weight:700;
  padding:6px 20px;
  margin-bottom:20px;
  border-left:4px #1B872D solid;
}
h2.mds02{
  font-size:1.25rem;
  color:#FFF;
  font-weight:500;
  padding:9px 3%;
  background:#1B872D;
  border-radius:5px 5px 0 0;
}
.mds03,
.page-main h3{
  font-size:1.25rem;
  color:#1B872D;
  font-weight:500;
  padding:9px 15px;
  margin-bottom:20px;
  background:#FAF9F4;
  border-bottom:1px #1B872D solid;
}
.mds04{
  font-size:1.25rem;
  color:#FFF;
  font-weight:500;
  padding:9px 15px;
  background:#1B872D;
}

.sec p{
  margin:20px 0;
  word-break: break-word;
}
.sec div{
  margin:0 0 20px;
  word-break: break-word;
}
.sec p:first-child{
  margin:0 0 20px;
}
.nopost{
padding:20px 0;
}
.toplink{
  text-align:right;
}
.toplink a{
  font-size:0.875rem;
  text-decoration:none;
}

.toplink a span{
  color:#1B872D;
}

.btn-back{
  display:inline-block;
  font-size: 0.875rem;
  color:#FFF;
  text-decoration:none;
  padding:5px 5px 5px 20px;
  background:url("images/arrow03.png") 5px center no-repeat #1B872D;
  border-radius:3px;
}

.gmap-link {
  padding: 10px 0 10px 35px;
  margin: 0 0 10px;
  background: url(images/icon_gmap.png) left center no-repeat;
  background-size: 28px 41px;
}

.post-list{
  padding:0;
}
.post-list dt{
  width:130px;
  color:#1B872D;
  padding:30px 10px;
  float:left;
}
.post-list dd{
  padding:30px 10px 30px 130px;
  border-bottom: 1px #A1CBA4 dotted;
}
.post-list dd:last-child{
  border-bottom:none;
}

.post-list02{
  padding:0;
  margin:0;
  list-style:none;
}
.post-list02 li{
  padding:20px 0 20px 20px;
  border-bottom: 1px #A1CBA4 dotted;
  background: url(images/arrow02.png) top 26px left no-repeat;
}
.post-list02 li a{
  text-decoration: none;
}
.sitemap-list{
  padding:0;
  margin:0;
  list-style:none;
}
.sitemap-list li{
  padding:0 0 0 20px;
  margin-bottom:20px;
  background: url(images/arrow02.png) center left no-repeat;
}
.sitemap-list li a{
  text-decoration: none;
}

.wp-pagenavi{
  font-size:0.875rem;
  text-align:center;
  padding:20px 0;
  margin-bottom: 40px;
}
.wp-pagenavi a, .wp-pagenavi span{
  display:inline-block;
  padding:3px 10px!important;
  background:#FAF9F4;
  border: 1px #EEE solid!important;
  border-radius:5px;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current{
  color:#FFF;
  border-color: #1B872D;
  background:#1B872D;
}

@media screen and (max-width:1000px) {
.sub-nav{
  text-align:center;
}
.sec-inner03 .main-column,
.sec-inner03 .sub-column{
  width:100%;
}
}
@media screen and (max-width:640px) {
.mds01{
  font-size:1.25rem;
}
h2.mds02,
.mds03,
.mds04{
  font-size:1.125rem;
}
.post-list dt{
  width:100%;
  padding:20px 10px 0;
  float:none;
}
.post-list dd{
  padding:10px 10px 20px 10px;
}
}

@media screen and (max-width:480px) {
.gallery-box div{
  width:100%;
}
}