@charset "UTF-8";
/*

全サイト共通初期設定
----------------------------------------
コンテンツ最大幅：1200px
PC: 769px〜
SP: 〜768px

　茶　：#996600：rgb(153,102,0)：リンク背景色、フッター背景色
 赤 茶 ：#820000：rgb(130,0,0)：アイコン背景色、注釈背景色
濃赤茶：#330000：rgb(51,0,0)：リンク文字、フッターコピー背景色 ← ほぼ黒
　茶　：#8c6618：rgb(140,102,24)：ロゴマークカラー
  薄 茶 ：#ccb27f：見出し下線
*/

a:hover {opacity: .7;}
body {
  display: grid;
  grid-template-rows: auto 1fr auto;
  grid-template-columns: 100%;
  min-height: 100vh;
}
.acrobatNote {
background-color: #EEEEEE;
padding: 1em;
text-align: left;
}

/* ツールバーを消す（WP Members導入で消せない為）
------------------------------------------------------------*/
#wpadminbar {
display: none;
}
html {margin-top: 0 !important;}

/* PAGETOP用 
------------------------------------------------------------*/
#pageTop {
	position: fixed;
	width: 50px;
	height: 50px;
	bottom: 60px;
	right: 10px;
	z-index: 9999;
	background-color: white;
	border: 1px solid #CCCCCC;
}
@media screen and (max-width: 768px) {
	#pageTop {
	width: 40px;
	height: 40px;
	bottom: 10px;
	right: 10px;
	}
	#pageTop img {
	width: 40px;
	height: 40px;
	object-fit: cover;
	}
}

@media screen and (max-width: 768px) {
	.flexBoxC,
	.flexBoxR,
	.flexBoxL,
	.flexBoxB,
	.flexBoxA {display: block;}
}

/* ヘッダー
------------------------------------------------------------*/
.headerWrapper {
z-index: 5;
}
.headerWrapper .inner {
padding: 15px 0 0;
}
.headerWrapper nav {
font-size: 1.8rem;
font-weight: bold;
}
.headerWrapper a {
color: #000000;
}
.headerWrapper a:hover {
opacity: .7;
color:#820000;
}
.headerWrapper .memberLogin {
text-align: center;
font-size: 0;
}
.headerWrapper p.memberLoginBtn,
.headerWrapper div.notePopup {
display: inline-block;
line-height: 1.2;
font-size: 1.8rem;
}
.headerWrapper p.memberLoginBtn a {
display: inline-block;
padding: .4em 1em;
color: #FFFFFF;
background-color: #996600;
}
.headerWrapper div.notePopup {
position: relative;
margin-left: 6px;
}
.headerWrapper div.notePopup p {
display: inline-block;
padding: .15em .25em;
color: #FFFFFF;
background-color: #820000;
border-radius: 2em;
cursor: pointer;
}
.headerWrapper div.notePopup div.noteViewBox {
visibility: hidden;
opacity: 0;
position: absolute;
top: 48px;
right: 0;
background-color: #820000;
transition: all .5s;
padding: .5em .7em;
font-size: 1.4rem;
font-weight: normal;
color: #FFFFFF;
text-align: left;
white-space: nowrap;
line-height:1.3;
}
.headerWrapper div.notePopup div.noteViewBox a {color: #FFFFFF;}
.headerWrapper div.notePopup div.noteViewBox.open {
visibility: visible;
opacity: 1;
}
.headerWrapper p.loginNote {
font-size: 1rem;
font-weight: normal;
color: #820000;
}
/* ドロップダウンはPCだけ */
@media screen and (min-width: 769px) {
	.headerWrapper nav ul {
	list-style-type: none;
	position: relative;
	margin-right: 2em;
	}
	.headerWrapper nav > ul > li {	
	margin-bottom: 9px;
	text-align: center;
	}
	.headerWrapper nav > ul > li:hover {
	margin-bottom: 7px;
	}
	.headerWrapper nav > ul > li > a {	
	padding: 0.5em 1em;
	}
	/* 子メニュー */
	.headerWrapper nav > ul > li > ul > li > a::after {	
	content: " ›";
	}
	.headerWrapper nav > ul > li  > ul {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	font-size: 1.4rem;
	background-color: #996600;
	transition: all .5s;
	top: 90px;
	left: 0px;
	width: 100%;
	text-align: center;
	}
	.headerWrapper nav > ul > li:hover >  ul {
	visibility: visible;
	opacity: 1;
	}
	.headerWrapper nav > ul > li > ul > li {
	display: inline-block;
	}
	.headerWrapper nav > ul > li > ul > li > a {
	display: inline-block;
	padding: .5em 1em;
	width: 100%;
	color: #FFFFFF;
	}
	.headerWrapper nav > ul > li > ul > li > a:hover {
	color: #FFFFFF;
	}
}
@media screen and (max-width: 768px) {
	.headerWrapper .inner {
	padding-top: 5px;
	width: 96%;
	}
	.headerWrapper h1 {
	margin-bottom: 10px;
	}
	.headerWrapper h1 img {
	width: 130px;
	}
	.headerWrapper nav {
	font-size: 1.4rem;
	font-weight: normal;
	}
	.headerWrapper nav > ul > li,
	.headerWrapper nav > ul > li:last-child {
	padding-right: 0;
	margin-bottom: 0;
	}
	.headerWrapper ul li > ul {
	display: block;
	}
	.headerWrapper nav > ul {
	margin-bottom: 1em;
	}
	header nav ul li a {
    padding: 4px 1em;
	border-bottom: 1px dotted #996600;
	}
	header nav ul li ul li a:before {
    content: " - ";
	}
	.headerWrapper div.notePopup p {
	font-size: 120%;
	font-weight: bold;
	}
	.headerWrapper div.notePopup p a {
	padding: .25em .2em 0 .3em;
	font-weight: bold;
	}
	.headerWrapper div.notePopup {
	position: static;
	}
	.headerWrapper div.memberLogin {
	position: relative;
	}
	.headerWrapper div.notePopup:checked div.noteViewBox {
	visibility: visible;
	opacity: 1;
	}
	.headerWrapper div.notePopup div.noteViewBox {
	position: absolute;
	top: 50px;
	right: 0;
	left: 0;
	}
}

/* ページナビ（パンくずリスト、ページタイトル）
------------------------------------------------------------*/
.contents .pageNavi {
border-top: 1px solid #EEEEEE;
background-color: #F5F5F5;
padding: 8px 0;
}
.contents .breadCrumb {
color: #330000;
}
.contents .breadCrumb a {
color: #330000;
}
.contents .breadCrumb a::after {
content: ">";
margin: 0 .5em;
}
.contents .breadCrumb ul {
list-style: none;
font-size:0;
}
.contents .breadCrumb ul li {
display: inline-block;
font-size: 1.2rem;
}
.contents .pageNavi h1 {
font-size: 1.2rem;
font-weight: normal;
}


/* フッター
------------------------------------------------------------*/
.footerWrapper {
background-color: #996600;
color: #FFFFFF;
}
.footerWrapper .inner {
padding: 20px 0;
}
.footerWrapper a {
color: #FFFFFF;
}
.footerWrapper a:hover {
opacity: .7;
}
.footerWrapper ul {
list-style-type: none;
}
.footerWrapper ul li > ul {
list-style-type: disc;
padding-left: 2em;
}
.footerWrapper nav > ul > li {
margin-bottom: 1em;
}
.footerWrapper .comInfo {
line-height: 1.4;
}
.footerWrapper .comName {
font-size: 2rem;
font-weight: bold;
margin-bottom: .3em;
}
.footerWrapper .instaMark.pc {
margin: 20px 0 0 155px;
}
@media screen and (max-width: 1000px) {
	.footerWrapper .instaMark.pc {
	margin: 20px auto 0;
	}
}
.footerWrapper small {
display: inline-block;
width: 100%;
text-align: center;
margin: 0 auto 10px;
padding: 2px;
background-color: #330000;
}
@media screen and (max-width: 768px) {
	.footerWrapper nav {
	padding: 0 1em;
	margin-bottom: 2em;
	}
	.footerWrapper .comInfo,
	.footerWrapper .sp .instaMark {
	text-align: center;
	}
	.footerWrapper .sp .instaMark {
	margin-top: 4rem;
	}
	.footerWrapper .footerMark {
	margin-bottom: 1em;
	}
	.footerWrapper .comInfoText {
	margin: 0 auto;
	}
	.footerWrapper .comInfoText p:not(.comName) {
	display: inline-block;
	text-align: left;
	}
	.footerWrapper .comInfoText span:before {
	content: "\A" ;
	white-space: pre;
	}
	.footerWrapper nav .flexBoxB.sp {
	display: flex;
	}
	.footerWrapper nav .flexBoxB.sp > ul > li {
	margin-bottom: .5em;
	}
	.footerWrapper nav .flexBoxB.sp ul li a {
	padding-bottom: .5em;
	display: block;
	}
}

.inner {max-width: 1200px;margin: 0 auto;padding: 5rem 0;}
.inner90per {max-width: 1080px;margin: 0 auto;padding: 5rem 0;}
.inner80per {max-width: 960px;margin: 0 auto;padding: 5rem 0;}
@media screen and (max-width: 768px) {
.inner,
.inner90per,
.inner80per {max-width: 96%;}
}

/* コンテンツ共通設定
------------------------------------------------------------*/
.contents a {
color: #820000;
}
.contents main section {
margin-bottom: 5rem;
text-align: center;
}
.contents main section h2 {
font-size: 2.4rem;
display: inline-block;
padding: 0 2.15em;
margin: 0 auto 5rem;
background-image: url("images/index/index-title-sideL.png"), url("images/index/index-title-sideR.png");
background-position: left 0 top -1px, right 0 top -1px;
background-repeat: no-repeat, no-repeat;
line-height: 1;
}
.contents main section .lead {
text-align: left;
}
.contents main section h3 {
position: relative;
font-size: 2.0rem;
letter-spacing: .1em;
font-weight: bold;
display: inline-block;
min-width: 6em;
padding: 0 1.5em;
border-bottom: 2px solid #ccb27f;
margin-bottom: 2rem;
}
.contents main section h3:before,
.contents main section h3:after {
    position: absolute;
    top: 100%;
    left: 50%;
    content: "";
    height: 0;
    width: 0;
}
.contents main section h3:before {
border: 10px solid;
border-color: transparent;
border-top-color: #ccb27f;
margin-left: -10px;
}
.contents main section h3:after {
border: 7px solid;
border-color: transparent;
border-top-color: white;
margin-left: -7px;
}
.contents main section table th,
.contents main section table td {
text-align: left;
padding: .5em 1em .1em;
border-bottom: 1px dotted #ccb27f;
}
.contents main section table th {
border-bottom: 1px solid #ccb27f;
}
.contents main section table td span {
display: inline-block;
}
.contents main section .linkBtn {
color: #820000;
font-weight: bold;
height: 60px;
text-align: left;
font-size: 1.8rem;
padding-left: 70px;
background-image: url("images/common-JPB-icon.png");
background-size: contain;
margin-bottom: 2rem;
display: flex;
align-items: center;
}
.contents main section .linkBtn.pdf {
background-image: url("images/common-PDF-icon.png");
}
.contents main section .linkBtn.excel {
background-image: url("images/common-EXCEL-icon.png");
}
.contents main section .linkBtn.word {
background-image: url("images/common-WORD-icon.png");
}
.contents main section .linkBtn p {
line-height: 1.3;
padding-top: 2px;
}

/* トップページ body.home
カテページ一覧 body.category
記事ページ一覧 body.single
------------------------------------------------------------*/
.home .topslider {z-index: 1;}
.home .topslider img {width: 100%;height: auto;}
.home .contents main section h2 {
margin: 0 auto 2rem;
}
.home .contents main section h2 span,
.category .contents main section h2 span {
font-size: 1.6rem;
}
.home .contents main section .entryWrapper,
.category .contents main section .entryWrapper {
text-align: left;
}
.home .contents main section .entryWrapper .entry,
.category .contents main section .entryWrapper .entry {
padding-left: 42px;
margin-bottom: 1.5rem;
line-height: 1.4;
}
@media screen and (max-width: 768px) {
	.home .contents main section h2 {
	background-position: left 0 top -1px, right 0 top -1px;
	background-size: calc(32px * .8);
	}
	.single .contents main section h2 {
	line-height: 1.2;
	}
	.home .contents main section .entryWrapper .entry,
	.category .contents main section .entryWrapper .entry {
	padding-left: calc(42px * .8);
	background-size: calc(32px * .8);
	}
}
.home .contents main section .entryWrapper a,
.category .contents main section .entryWrapper a {
font-weight: bold;
}
.home .contents main section.infoformation .entryWrapper .entry,
.category .contents main section.infoformation .entryWrapper .entry {
background-image: url("images/index/index-info-icon.png");
background-position: left top 2px;
}
.home .contents main section.notification .entryWrapper .entry,
.category .contents main section.notification .entryWrapper .entry {
background-image: url("images/index/index-member-icon.png");
background-position: left top 2px;
}
.home .contents main section.notice .entryWrapper .entry,
.category .contents main section.notice .entryWrapper .entry {
padding-left: 110px;
background-image: url("images/index/index-JPB-icon.png");
background-position: left top;
margin-bottom: 2rem;
}
.home .contents main section.notice .entryWrapper .entry p.entryThema,
.category .contents main section.notice .entryWrapper .entry p.entryThema {
padding-left: 4em;
text-indent: -4em;
}
.home .contents main section.notice .entryWrapper .entry p.entryinstructor,
.category .contents main section.notice .entryWrapper .entry p.entryinstructor {
padding-left: 3em;
text-indent: -3em;
}
@media screen and (max-width: 768px) {
	.home .contents main section.notice .entryWrapper .entry,
	.category .contents main section.notice .entryWrapper .entry {
	padding-left: calc(110px * .8);
	background-size: calc(100px * .8);
	}
}
.home .contents main section .entryWrapper .entry p.entryDate,
.category .contents main section .entryWrapper .entry p.entryDate {
font-size: 1.2rem;
color: #999999;
font-weight: normal;
}
.home .contents main section .entryWrapper .entry p.entryTitle,
.category .contents main section .entryWrapper .entry p.entryTitle {
font-size: 1.8rem;
}
.home .contents main section .entryWrapper .entry p.entryStatus,
.category .contents main section .entryWrapper .entry p.entryStatus,
.single .contents main section .entryWrapper .entry p.entryStatus {
font-size: 1.2rem;
font-weight: normal;
background-color: #820000;
color: #FFFFFF;
text-align: center;
width: 5em;
padding: 1px 0;
margin-bottom: 3px;
}
@media screen and (max-width: 768px) {
	.home .contents main section .entryWrapper .entry p.entryStatus,
	.category .contents main section .entryWrapper .entry p.entryStatus,
	.single .contents main section .entryWrapper .entry p.entryStatus {
	padding: 3px 0 0;
	}
	.single .contents main section.notice .entryWrapper .entry .flexBoxL {
	display: flex;
	}
}
.home .contents main section p.catePageLink {
text-align: right;
}
.home .contents main section .catePageLink a {
text-align: right;
font-size: 1.2rem;
background-color: #996600;
color: #FFFFFF;
display: inline-block;
padding: 1px 1em;
}
.home .contents main section .catePageLink a::after {
content: "　»";
}
.home .contents main section.notification div.memberLogin,
.category .contents main section.notification div.memberLogin {
text-align: left;
position: relative;
width: 200px;
}
.home .contents main section.notification div.memberLogin div.notePopup,
.category .contents main section.notification div.memberLogin div.notePopup {
display: inline-block;
}
.home .contents main section.notification div.memberLogin div.notePopup p,
.category .contents main section.notification div.memberLogin div.notePopup p {
font-size: 1.8rem;
line-height: 1.2;
font-weight: bold;
display: inline-block;
padding: .15em .25em;
color: #FFFFFF;
background-color: #820000;
border-radius: 2em;
cursor: pointer;
}
.home .contents main section.notification div.memberLogin p.loginNote,
.category .contents main section.notification div.memberLogin p.loginNote {
display: inline-block;
font-size: 1rem;
font-weight: normal;
color: #820000;
line-height: 1.3;
position: absolute;
top: 1px;
left: 35px;
}
@media screen and (max-width: 768px) {
.home .contents main section.notification div.memberLogin p.loginNote,
.category .contents main section.notification div.memberLogin p.loginNote {
left: 25px;
}
}
.home .contents main section.notification div.memberLogin div.notePopup div.noteViewBox,
.category .contents main section.notification div.memberLogin div.notePopup div.noteViewBox {
visibility: hidden;
opacity: 0;
position: absolute;
top: 30px;
left: 0;
background-color: #820000;
transition: all .5s;
padding: .5em .7em;
font-size: 1.4rem;
font-weight: normal;
color: #FFFFFF;
text-align: left;
white-space: nowrap;
line-height:1.3;
}
.home .contents main section.notification div.memberLogin div.notePopup div.noteViewBox a,
.category .contents main section.notification div.memberLogin div.notePopup div.noteViewBox a {color: #FFFFFF;}
.home .contents main section.notification div.memberLogin div.notePopup div.noteViewBox.open,
.category .contents main section.notification div.memberLogin div.notePopup div.noteViewBox.open {
visibility: visible;
opacity: 1;
}
.home .contents main section.links img {
margin: 0 20px;
vertical-align: middle;
} 
@media screen and (max-width: 768px) {
	.home .contents main section.links a img {
	width: 80px;
	margin: 0 15px;
	} 
	.home .contents main section.links a:nth-child(2) img {
	width: 60px;
	} 
}

/* 入会案内ページ body.aboutus
会員専用ページ body.members
各種書類ページのリンク body.docs
------------------------------------------------------------*/
.members .contents main section .lead {
max-width: 750px;
}
.aboutus .contents main section h2 + div {
min-height: 200px;
}
@media screen and (max-width: 768px) {
	.aboutus .contents main section h2 + div,
	.members .contents main section h2 + div {
	min-height: auto;
	}
}

/* JPB友の会とはページ body.about-jpb
------------------------------------------------------------*/
.about-jpb .contents main section .lead,
.about-jpb .contents main section table {
max-width: 750px;
}
.about-jpb .contents main section table th {
white-space: nowrap;
}

/* 入会方法ページ body.joinus
------------------------------------------------------------*/
.joinus .contents main section .flexBoxC {
max-width: 820px;
margin: 0 auto;
}
.joinus .contents main section .linkBox {
min-height: 100px;
text-align: left;
padding-left: 110px;
background-image: url("images/index/index-JPB-icon.png");
background-size: 100px;
margin-bottom: 2rem;
}
.joinus .contents main section .linkBox p:first-child {
font-size: 1.8rem;
font-weight: bold;
border-bottom: 1px dotted #820000;
padding-bottom: .5rem;
margin-bottom: 1rem;
}
.joinus .contents main section .linkBox p:last-child {
font-size: 1.4rem;
}

/* プライバシーポリシーページ body.policies
------------------------------------------------------------*/
.policies .contents main section h3 {
  border-bottom: none;
  position: static;
  font-size: 1.6rem;
  display: block;
  padding: 2rem 0 .5rem;
  letter-spacing: 0;
  margin: 0 auto;
  text-align: center;
  min-width: inherit;
}
.policies .contents main section h3:after {
  position: static;
  content: "";
  display: block;
  border-bottom: none;
  width: auto;
}
.policies .contents main section h2 + div > div {
max-width: 750px;
}
.policies .contents main section h2 + div > div p {
margin-bottom: 1em;
}
.policies .contents main section h2 + div > div ul {
padding-left: 2em;
}

/* お問い合わせページ body.contactus
住所・勤務先等変更届フォームページ body.contactus.change-form 
------------------------------------------------------------*/
.contactus .contents main section table {
max-width: 750px;
margin-bottom: 2rem;
}
.contactus.change-form .contents main section table {
min-width: 750px;
}
@media screen and (max-width: 768px) {
	.contactus.change-form .contents main section table {
	min-width: inherit;
	}
}
.contactus .contents main section table th {
white-space: nowrap;
}
.contactus .contents main section table th,
.contactus .contents main section table td {
padding: 1em 1em .5em;
}
.contactus.change-form .contents main section table th,
.contactus.change-form .contents main section table td {
padding: .5em 1em;
}
.contactus.change-form .contents main section table td.before {
color: #0000DD;
}
.contactus.change-form .contents main section table td.after {
color: #DD0000;
}
@media screen and (max-width: 768px) {
	.contactus.change-form .contents main section table td.before,
	.contactus.change-form .contents main section table td.after {
	margin-bottom: 0;
	padding-bottom: 0;
	}
}
.contactus.change-form .contents main section table tbody tr:last-child td {
border-bottom: 1px solid #ccb27f;
}
.contactus.change-form .contents main section table tbody:first-child tr:first-child th,
.contactus.change-form .contents main section table tbody:first-child tr:first-child td {
border-top: 1px solid #ccb27f;
}
@media screen and (max-width: 768px) {
	.contactus.change-form .contents main section table tbody tr:last-child td,
	.contactus.change-form .contents main section table tbody:first-child tr:first-child th,
	.contactus.change-form .contents main section table tbody:first-child tr:first-child td {
	border: none;
	}
}
.contactus .contents main section table td input,
.contactus .contents main section table td textarea {
border: 1px solid #CCCCCC;
padding: .2em .3em;
}
.contactus .contents main section table td textarea {
display: block;
}
.contactus .contents main section table td input[type="text"] {
min-width: 70%;
}
.contactus .contents main section table td input[type="text"].zip {
min-width: inherit;
width: 7em;
margin-bottom: .5em;
}
.contactus .contents main section table td input[type="text"].phoneNumber {
min-width: inherit;
width: 10em;
margin-bottom: .5em;
}
.contactus .contents main section table td textarea {
width: 100%;
}
.contactus .contents main section table td input:focus,
.contactus .contents main section table td textarea:focus {
outline: none;
background-color: #FFFFCC;
}
.contactus .contents main section table td input[type="checkbox"] {
margin-right: 5px;
}
.contactus .contents main section  input[type="button"],
.contactus .contents main section  input[type="submit"] {
padding: .3em 1em .15em;
background-color: #996600;
color: #FFFFFF;
}
.contactus .contents main section  input[type="button"]:hover,
.contactus .contents main section  input[type="submit"]:hover {
opacity: .7;
}
@media screen and (max-width: 768px) {
	.contactus .contents main section table {
	width: 100%;
	}
	.contactus .contents main section table th,
	.contactus .contents main section table td {
	display: block;
	padding-left: 0;
	padding-right: 0;
	}
	.contactus .contents main section table td {
	display: block;
	margin: 0 0 1em 1em;
	border: none;
	}
	.contactus .contents main section table td input[type="text"] {
	width: 100%;
	}
}

/* JPBだよりページ body.jpb-newsletter
------------------------------------------------------------*/
.jpb-newsletter .contents main section .flexBoxL > div  {
width: 16.666666%;
text-align: center;
margin-bottom: 2rem;
}
.jpb-newsletter .contents main section .flexBoxL > div p  {
background-color: #FFFFCC;
display: inline-block;
padding: 20px 25px 5px;
border: 1px solid #EFEFEF;
}
.jpb-newsletter .contents main section .flexBoxL >div img {
box-shadow: 3px 3px 3px #CCCCCC;
margin-bottom: .5rem;
height: 180px;
width: 128px;
}
@media screen and (max-width: 768px) {
	.jpb-newsletter .contents main section .flexBoxL {
	display: flex;
	}
	.jpb-newsletter .contents main section .flexBoxL > div  {
	width: 50%;
	}
	.jpb-newsletter .contents main section .flexBoxL > div p  {
	background-color: #FFFFCC;
	display: inline-block;
	
	border: 1px solid #EFEFEF;
	padding: 20px 25px 5px;
	}
}

/* 幹事会議事録ページ body.meeting-minutes
各種案内書類ページ body.docs-workshop
------------------------------------------------------------*/
.meeting-minutes .contents main section .listBox,
.docs-workshop .contents main section .listBox {
margin-bottom: 5rem;
padding: 0 5rem;
}
.meeting-minutes .contents main section .listBox h3,
.docs-workshop .contents main section .listBox h3 {
font-size: 1.6rem;
letter-spacing:0em;
text-align: center;
padding: 0 2em .35em;
width: 100%;
}
.meeting-minutes .contents main section .listBox p,
.docs-workshop .contents main section .listBox p {
text-align: left;
padding: .5em 1em .3em;
border-bottom: 1px dotted #ccb27f;
line-height: 1.4;
}
.docs-workshop .contents main section .listBox p a {
font-size: 1.6rem;
font-weight: bold;
}
@media screen and (max-width: 768px) {
	.meeting-minutes .contents main section .listBo,
	.docs-workshop .contents main section .listBox {
	padding: 0 3rem;
	}
}

/* 過去の講習会レシピページ body.recipe
------------------------------------------------------------*/
.recipe .contents main section table th, .contents main section table td {
    padding: .5em 1em .5em;
}
.recipe .contents main section table td {
padding-left: 2em;
}
.recipe .contents main section table td span {
margin-left: -1em;
font-weight: bold;
}
.recipe .contents main section table th span {
display: inline-block;
}
.recipe .contents main section table th,
.recipe .contents main section table tbody tr:last-child td {
border-bottom: 1px solid #ccb27f;
}
.recipe .contents main section table tbody:first-child tr:first-child th,
.recipe .contents main section table tbody:first-child tr:first-child td {
border-top: 1px solid #ccb27f;
}

/* 各種書類ページ body.docs
------------------------------------------------------------*/
.docs .contents main section h3 {
width: 100%;
}