@charset "utf-8";
/*
Theme Name: saber
Author: KEISUKE takahasi KSK-soft
Author URI: https://ksk-soft.com/
Template: twentynineteen
Description: サーベル社 twentynineteen子テーマ。
Author URI: http://ksk-soft.com
Version: 1.0.3

*/
/* YohaKutoJP */
@import url("https://cdn.jsdelivr.net/npm/yohakutojp@0.4.0/docs/css/yohakutojp.min.css");
/* YakuHanJP：ゴシック体 */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanjp.min.css");
/* YakuHanJPs：ゴシック体（カッコのみ） */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanjp_s.min.css");
/* YakuHanMP：明朝体 */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanmp.min.css");
/* YakuHanMPs：明朝体（カッコのみ） */
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/css/yakuhanmp_s.min.css");
/* YohaKutoMP */
@import url("https://cdn.jsdelivr.net/npm/yohakutojp@0.4.0/docs/css/yohakutomp.min.css");
/* @import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");
@import url('https://fonts.googleapis.com/css?family=EB+Garamond:400,700'); */
/* Noto sans */
/* @import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP'); */
/* YakuHanJPB */
@font-face {
 font-family: "YakuHanJPB";
 font-style: normal;
 font-weight: bold;
 src: url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff2") format("woff2"),
 url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.0.0/dist/fonts/YakuHanJP/YakuHanJP-Medium.woff") format("woff");
 font-display: swap;
}
/* MyGo */
@font-face {
 font-family: 'MyGo';
 font-weight: normal;
 src:
 local('ヒラギノ角ゴ ProN W3'),
 local('HiraKakuPro-W3'),
 local('HiraKakuProN-W3'),
 local('Hiragino Sans'),
 local('Hiragino Kaku Gothic ProN');
}
/* MyGoB */
@font-face {
 font-family: 'MyGoB';
 font-weight: 700;
 src:
 local('ヒラギノ角ゴ ProN W6'),
 local('HiraKakuPro-W6'),
 local('HiraKakuProN-W6'),
 local('Hiragino Sans'),
 local('Hiragino Kaku Gothic ProN W6');
}
/* MyMin */
@font-face {
 font-family: 'MyMin';
 font-weight: normal;
 src:
 local('ヒラギノ明朝 Pro W3'),
 local('Hiragino Mincho Pro'),
 local('HiraMinProN-W3'),
 local('Hiragino Mincho ProN');
}
/* MyMinB */
@font-face {
 font-family: 'MyMinMB';
 font-weight: bold;
 src:
 local('ヒラギノ明朝 Pro W6'),
 local('HiraMinPro-W6'),
 local('ヒラギノ明朝 ProN W6'),
 local('HiraMinProN-W6'),
 local('Hiragino Mincho ProN');
}
html {
 font-family: "Noto Sans CJK JP","MyGo", "Noto Sans JP", sans-serif;
 box-sizing: border-box;
 font-size: 20px;
 color: #222;
 font-feature-settings: "palt" 1;
}
address,em {
 font-style: normal;
}
.site-title:not(:empty) + .site-description:not(:empty)::before,
.entry .entry-title::before,
h1:not(.site-title)::before,
h2::before {
 content: none;
}
.toTop.toTop.toTop {
 display: block;
 background-color: hsl(30, 70%, 40%);
 position: fixed;
 bottom: 0.5rem;
 width: 2em;
 height: 2em;
 padding: 0.5em;
 text-align: center;
 line-height: 1;
 border-radius: 50%;
 color: #fff;
 /*! opacity: .6; */
 /*! mix-blend-mode: luminosity; */
 margin-left: auto;
 margin-right: -0.5rem;
 box-sizing: border-box;
 right: 1rem;
}
/* saber デザイン */
:root {
 --base-bg: hsl(44, 100%, 90%);
 --dark-bg: hsl(35, 80%, 20%);
 --dark-txt: #fff;
 --dark-hover: #ff0;
 --dark2-bg: hsla(30, 60%, 70%, 0.9);
 --dark2-txt: hsl(20,30%,30%);
 --dark2-hover: #fff;
 --dark2-hover-bg: #fff;
 --point-color: rgb(230, 80, 50);
 --point2-color: #afa;
 --light-bg: #fff;
 --light-txt: #222;
 --light-hover: #0fc;
}
*,::before,::after {
 color: inherit;
 box-sizing: inherit;
}
.site-header {
 padding: 0;
 border-bottom: 5px solid hsla(-10,70%,20%,.7);
}
.site-header a:hover,
.search-toggle .icon-search:hover {
 text-decoration: none;
 color: #fff;
}
.site-title:lang(ja), h1:lang(ja) {
 font-family: "M PLUS Rounded 1c";
}

.site-branding {
 margin: 0;
 justify-content: space-between;
 background-color: hsl(44, 100%, 90%);
 color: rgb(230, 80, 50);
}
/* .site-description {
	font-weight: 600;
} */
.site-title {
 margin: 0;
 font-size: 1.4rem;
 color: rgb(230, 80, 50);
 color: var(--point-color);
	font-weight: 700;
}
.site-title a {
 display: flex;
 align-items: flex-start;
 flex-direction: column;
 flex-wrap: wrap;
 height: 3.3rem;
 align-content: flex-start;
 width: 10em;
 line-height: 1;
 height: 2.5em;
 justify-content: center;
}
.site-logo {
 width: 2.8em;
 margin: 0 0.4em 0 0em;
 position: static;
}
.site-title .site-description {
 font-size: 0.5em;
 display: block;
 letter-spacing: 0.24em;
 line-height: 1.6;
 text-align: center;
 text-indent: 0.2em;
 color: rgb(230, 80, 50);
}
.site-title .site-title {
 letter-spacing: .03em;
}
.main-navigation {
 margin-top: 0;
}

.entry-title,
.not-found .page-title,
.error-404 .page-title,
.has-larger-font-size,
h2,
.entry .entry-title {
	font-size: 1.8em;
}
.page-id-7 .entry-content .wp-block-heading {
	font-size: 1.2em;
	margin: 2em auto .5em;
}
.page-id-7 .entry-content h3.wp-block-heading {
	font-size: 1.1em;
}
.page-id-7 .entry-content h2+h3.wp-block-heading {
	margin-top: 1em
}
.wp-block-image>a, .wp-block-image>figure>a {
	display: block;
}
.entry .entry-content .wp-block-image .aligncenter {
	margin: 1rem auto;
}
.widget a {
	color: rgb(230, 80, 50);
	font-size: 0.8rem;
}
.site-footer .widget a {
	color: #fff;
}
.widget a:hover {
	color: rgb(92, 58, 10);
}
.site-footer .widget a:hover {
	color: #ccc;
}
[id="wp-calendar"] td,
[id="wp-calendar"]  th {
	padding: 0.2em;
}
.main-navigation .main-menu {
 display: flex;
 margin: 0;
 padding: 0;
 list-style: none;
 justify-content: flex-start;
 align-items: center;
 text-align: center;
 color: rgb(99, 69, 54);
 font-size: 1rem;
}
.main-navigation a,
.search-toggle .icon-search {
  font-weight: 400;
  line-height: 1;
}

.main-navigation .sub-menu > li > a,
.main-navigation .main-menu > li > a,
.search-toggle .icon-search {
 font-weight: 400;
 font-size: .8rem;
 color: rgb(92, 58, 10);;
 margin-right: 0;
 display: flex;
 padding: 0.5em 1em;
 position: relative;
 overflow: hidden;
 cursor: pointer;
 z-index: 3;
 align-items: center;
}
.search-toggle .icon-search svg {
	display: inline-block;
	height: 1em;
	margin: .1em .2em 0 0;
}
.main-navigation .sub-menu > li > a::before,
.main-navigation .main-menu > li > a::before,
.search-toggle .icon-search::after {
 content: "";
 position: absolute;
 left: 50%;
 top: 50%;
 display: block;
 width: 10em;
 height: 10em;
 background-color: rgb(230, 80, 50);
/*   opacity: .8; */
 transform: translate(-50%,-50%) scale(0);
 transition: 0.4s ease-out;
 z-index: -1;
 border-radius: 50%;
 opacity: 0;
}
/* .main-navigation .main-menu > li > label::after {
 opacity: 1;
 transform: translate(-50%,-50%) scale(1);
} */
.main-navigation .sub-menu > li > a:hover,
.main-navigation .main-menu > li > a:hover,
.search-toggle .icon-search:hover {
  color: #fff;
}
.main-navigation .sub-menu > li > a:hover,
.main-navigation .sub-menu > li > a:focus,
.main-navigation .sub-menu > li > .menu-item-link-return:hover,
.main-navigation .sub-menu > li > .menu-item-link-return:focus {
  background: transparent;
}

.main-navigation .sub-menu > li > a:hover::before,
.main-navigation .main-menu > li > a:hover::before,
.search-toggle .icon-search:hover::after {
 transform: translate(-50%,-50%) scale(1);
 opacity: 1;
}
/* humburger */
input.hide {
 position: absolute;
 clip: rect(0,0,0,0);
 width: 0;
 z-index: 100;
}
body > [type="checkbox"] {
 position: absolute;
 clip: rect(0,0,0,0);
 width: 0;
}
.humb {
 position: relative;
 font-size: .7rem;
 line-height: 1;
 width: 2.8rem;
 display: flex;
 height: 2.7rem;
 flex-direction: column;
 cursor: pointer;
 z-index: 5;
 color: rgb(230, 80, 50);
 font-family: "Candal",sans-serif;
}
.humb span {
 display: block;
 padding-top: 2.5em;
 margin: 0 auto;
 text-align: center;
}
.humb::before,
.humb::after {
 content: "";
 display: block;
 min-height: 0.3em;
 width: 2.4em;
 background-color: rgb(230, 80, 50);
 border-radius: .2em;
 transition: .3s;
 position: absolute;
 top: 0;
 left: 0.8em;
}
.humb::before {
 box-shadow: 0 0.8em 0 0 rgb(230, 80, 50);
 transform: translateY(.4em) rotate(0deg);
}
.humb::after {
 transform: translateY(2em) rotate(0deg);
}
[id="gmenu"]:not(:checked) ~ .site-branding .humb::before {
 box-shadow: 0 0 0 0 rgba(255,255,255,0);
 transform: translateY(.4em);
 transform: translateY(1.2em) rotate(45deg);
}
[id="gmenu"]:not(:checked) ~ .site-branding .humb::after {
 transform: translateY(1.2em) rotate(-45deg);
}
[id="gmenu"]:not(:checked) ~ .site-branding .main-nav {
 display: flex;
 height: auto;
 z-index: 10;
 /*! flex-direction: column; */
}
[id="gmenu"]:not(:checked) ~ .site-branding .sns {
 display: flex;
}
.privacy-policy-link,
#colophon .site-info {
 /* background-color: hsl(35, 80%, 20%); */
 /* background-color: var(--dark-bg); */
 color: #fff;
 color: var(--dark-txt);
 margin: 0;
}
#colophon .site-info,#colophon .widget-area {
 padding: 1rem 1rem 0;
}
.privacy-policy-link {
 font-size: .8rem;
 padding: .5em 1rem 0;
 display: block;
 text-decoration: underline;
 text-decoration-style: dotted;
 text-underline-offset: 0.3em;
}
.site-footer [class*="footer-"] {
 margin: 0;
}
#colophon .widget-column{
	/* padding: 0 calc(50% - 600px); */
}
#colophon .widget-column {
	display: flex;
	/* flex-wrap: wrap; */
	gap: 40px;
	/* grid-auto-columns: 60%; */
	/* grid-auto-rows: 450px; */
	grid-template-columns: minmax(240px,50%) 1fr;
	/* margin: 0 30px; */
	color: #fff;
}
#colophon .widget-column .widget {
	margin: 0;
	flex-basis: max(250px,20%);
	flex-grow: 1;
}
.about-info[class][class] {
	background-color: #eee;
	display: grid;
	padding: .5em 0;
	margin: 2em auto;
}
.about-info[class][class][class] :where(h4,p) {
	margin: 0;
	padding: 0;
}
.about-info[class][class][class] h4 {
	padding: .5em .5em 0;
}
.about-info[class][class][class] p {
	padding: .5em;
	line-height: 1.3;
}
.about-info[class][class][class] p+h4 {
	margin-top: .5em;
}
@media screen and (width > 1100px) {
	#colophon .widget-column .widget {
		margin: 0;
		width: auto;
	}
}
.site-info .site-name {
 display: block;
 font-size: 1.2rem;
 margin-bottom: .5em;
}
.footer-info div {
 display: inline-flex;
 margin: 0 .5em 0 0;
}
[class*="footer-"][class][class] dd {
 /* margin-left: .5em; */
 /* margin-bottom: 0; */
 margin: 0 0 0 .5em;
}
.footer-copyright div {
 display: flex;
 flex-wrap: wrap;
}
.header-top {
 flex-direction: row;
 flex-wrap: wrap;
 height: 4rem;
 display: flex;
 justify-content: space-between;
 align-items: center;
 padding-left: .5rem;
 padding-right: .5rem;
}
.main-navigation .sub-menu {
 background-color: rgb(224, 179, 133);
}
.main-nav {
 background-color: rgb(224, 179, 133);
 background-color: var(--dark2-bg);
}
.menu-main-nav {
 background-color: hsla(30, 60%, 70%, 0.9);
 width: 100%;
 box-sizing: border-box;
 position: absolute;
 color: hsl(20,30%,30%);
 font-weight: bold;
}
[id="gmenu"]:checked ~ .site-branding .main-nav {
 display: none;
 top: 4rem;
 z-index: 10;
}

.search-bar {
 font-size: .8rem;
 padding-left: .5rem;
 padding-right: .5rem;
 transition: .4s;
 max-height: 0;
 background-color: #432;
 overflow: hidden;
 flex-basis: 100%;
}
[id="search-bar"]:not(:checked) ~ .site-branding .search-bar {
 max-height: 4rem;
}
.search-form {
 padding: .75em;
 display: flex;
 align-items: stretch;
}
.error-404.not-found .search-form,
.no-results.not-found .search-form {
	margin: 0 0 2rem
}
.error-404.not-found .search-submit,
.no-results.not-found .search-submit {
    margin: 0;
}
.search-form > label {
	flex-grow: 1;
	display: flex;
}
.search-form .search-field {
 padding: 0 .25em;
 font-size: .8rem;
 line-height: 1;
 flex-grow: 1;
}
.search-form .search-submit {
	border: 0;
	display: block;
	width: 2em;
	height: 2em;
	background: url(https://blog.saber-inc.co.jp/wp-content/themes/saber/images/search-solid.svg) no-repeat #ccc center;
	border-radius: .1em;
	background-size: 1.5em 1.5em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	text-indent: -5em;
	overflow: hidden;
	margin: 0;
}
.search-form .search-submit:hover {
	background: url(https://blog.saber-inc.co.jp/wp-content/themes/saber/images/search-solid.svg) no-repeat rgb(224, 179, 133) center;
	background-size: 1.5em 1.5em;
}
.search-form .icon-search {
 display: inline-block;
 width: 2em;
}
.search-bar .icon-search::before {
 text-indent: 0;
 display: block;
 position: absolute;
 top: .5em;
 left: .5em;
 width: 1.5em;
 color: rgb(99, 69, 54);
}
.main-nav {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}
.site-footer {
	background-color: var(--dark-bg);
}
.site-footer .widget-title {
	font-size: 1.3em;
	margin-top: 0.2em;
}
.site-footer .privacy-policy-link {
 color: #fff;
 padding-bottom: 1rem;
}
#colophon .privacy-policy-link:hover {
	color: #ccc;
	text-decoration: underline;
	text-decoration-style: dotted;
}
#colophon .site-info a:hover {
	text-decoration: none;
	color: #ffd;
}
.wp-block-group__inner-container {
	display: contents;
}
.entry-content .errata[class] {
	margin: 2rem auto;
}
.entry-content a[href*=".pdf"]::after {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	background: no-repeat url(https://blog.saber-inc.co.jp/wp-content/uploads/icon-pdf.svg);
	background-size: contain;
	vertical-align: text-bottom;
	margin: 0 0 0 .2em;
}
@media screen and (min-width:768px) {
	.humb {
		display: none;
	 }
	.archive .page-header,
	.search .page-header,
	.error404 .page-header {
		margin-top: 1rem;
		margin-bottom: 1rem;
	}
	.sns-share {
		justify-content: flex-start;
	}
	.sns-share {
		margin: 0 1% 0 0;
		flex-basis: 30%;
	}
 [id="gmenu"]:checked ~ .site-branding .main-nav,
 .main-nav {
  display: flex;
  top: 0;
 }
 #colophon .widget-area {
  margin: 2rem auto;
 }
}

@media screen and (min-width:1030px) {
/* max-width: 1024px */
	:root {
		--iw: min(100% - 60px,1200px);
	}
	 .header-top,
	 .search-bar,
	 .site-footer .site-info,
	 .site-footer .privacy-policy-link,
	 .k {
	  /* padding-left: calc(50% - 600px); */
	  /* padding-right: calc(50% - 600px); */
	  /* padding-left: 30px; */
	  /* padding-right: 30px; */
	  /* max-width: 1260px; */
	  margin: 0 auto;
	  width: var(--iw);
	  padding-left: 0;
	  padding-right: 0;
	}
	.site-main {
		max-width: 1260px;
		padding: 0 30px;
		margin: 0 auto 3rem;
	}
	.topPage .site-main {
		max-width: none;
		padding: 0;
	}
	.shop-page.entry .entry-header,
	.entry .entry-header,
	.entry .entry-content,
	.entry .entry-summary{
	  margin: 1rem auto;
	  padding: 0;
	  /* max-width: 1200px; */
	  width: var(--iw);
	}
	.topPage .entry-content {
		width: 100%;
	}
	.entry .entry-content > * {
		margin: 0 auto;
	}
	.entry .entry-content :is(.book-info,.links) {
		border: 1px solid #ccc;
		background-color: #fefefe;
		padding: 1rem;
		font-size: .75em;
		border-radius: .5rem;
	}
	.entry .entry-content .links a[target="_blank"]::after {
		content: "";
		display: inline-block;
		width: 1em;
		height: 1em;
		background: url(/wp-content/themes/saber/images/box-arrow-up-right.svg) no-repeat;
		background-size: contain;
		margin-left: .3em;
	}
	.book-info .wp-block-group__inner-container,
	.entry .entry-content :is(.book-info,.links)[class] * {
		margin: 0;
	}
	.entry .entry-content :is(.book-info,.links)[class] h3 {
		font-size: 1.2em;
		margin-bottom: 1em;
	}
	.book-info+.links {
			margin-top: 1rem;
	}
	.entry .entry-content .book-info[class] ul+ul {
		margin-top: 1em;
	}
	#colophon .site-info,#colophon .widget-area {
	  /* padding: 1rem calc(50% - 600px) 0; */
	  width: var(--iw);
	  margin: 0 auto;
	  padding: 1rem 0;
	}
	.header-top {
	  height: auto;
	  padding-top: .5rem;
	  padding-bottom: .3rem;
	  flex-grow: 1;
	}
	[id="gmenu"]:checked ~ .site-header .main-nav,
	.main-nav {
	  position: relative;
	  top: auto;
	  z-index: 10;
	  display: block;
	  width: auto;
	  overflow: visible;
	  margin: 0 auto;
	  line-height: 1.3;
	  padding: 0 calc(50% - 600px);
	  display: flex;
	  justify-content: space-between;
	  flex-wrap: wrap;
	  /* width: auto; */
	  /* padding: 0 30px; */
	 }
}
/*==================================================
* ソーシャル
*================================================*/
#twitter {background-color: #00acee;}
#facebook {background-color: #3b5998;}
#line {background-color: #00c300;}
#hatena {background-color: #007fc5;}
#pocket {background-color: #EE4056;}

/* ボタン設定 */
.sns-area {
 width: 100%;
 margin: 0 auto 1rem;
 display: flex;
 justify-content: space-between;
}
.sns-share-p {
 margin-bottom: .2em;
 font-weight: bold;
}
.sns-area ul {
 height:auto;
}
.sns-share {
 flex-basis: 32%;
}
.sns-share a span {
 font-weight: bold;
}
.sns-share [class*="icon-"]::before {
 margin-right: .2em;
}
.sns-link.sns-link.sns-link.sns-link {
 display: block;
 text-align: center;
 color: #fff;
 font-size: .8rem;
 padding: 10px 0;
 box-sizing: border-box;
 border-radius: 3px;
 text-decoration: none;
}
.sns-link.sns-link.sns-link.sns-link:hover {
 text-decoration: none;
 opacity: .7;
}
@media screen and (max-width:400px) {
 .sns-share [class*="icon-"] {
  width: 1.5em;
  height: 1em;
  overflow: hidden;
  display: inline-block;
 }
 .sns-share [class*="icon-"]::before {
  font-size: 1.2em;
  width: 100%;
  display: inline-block;
  margin-right: 0;
  line-height: 1;
 }
	.footer-info div {
		display: inline-block;
		margin: 0 0 .5em 0;
 }
	.footer-info div > * {
		display: inline-block;
		margin: 0;
	}
	.site-title {
		font-size: 1.1rem;
	}
}

.with-border {
	border:1px solid #999;
}