/*
Theme Name : KaikeiBizline
*/

@charset "UTF-8";

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 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

div {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-break: break-all;
}

ul {
  list-style: none;
}

li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  word-break: break-all;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

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

------------------------*/
body {
  background-color: #eeeeee;
}

/*------------------------
ヘッダー
------------------------*/
header {
background-color: #fff;
display: flex;
flex-flow: column;
	align-items: center;
	padding-bottom: 20px;
}
@media only screen and (max-width: 767px) {
header {
	padding-bottom: 0px;
}
}

.header-headline{
width: 100%;
background-color: #eee;
padding: 5px 0;
	display: flex;
	justify-content: center;
}
.header-headline-box{
width: 100%;
max-width: 1200px;
display: flex;
justify-content: space-between;
align-items: center;
}
@media only screen and (max-width: 767px) {
.header-headline-box{
width: 100%;
}
}

.header-headline-box .header-headline__text p{
	font-size: 0.875rem;
	font-weight: bold;
		
}

.header-headline-box .header-headline__sns{
}
@media only screen and (max-width: 767px) {
.header-headline-box .header-headline__sns{
	display: none;
}
}
.header-headline .header-headline__sns ul{
display: flex;
}



.header-headline .header-headline__sns a {
  width: 30px;
  height: 30px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  margin: 0 0 0 10px;
  border-radius: 30px;
  text-decoration: none;
  transition-duration: 0.2s;
}
.header-headline .header-headline__sns a:nth-of-type(1){
  background-color: #3B5998;
}
.header-headline .header-headline__sns a:nth-of-type(2){
  background-color: #55ACEE;
}
.header-headline .header-headline__sns a:nth-of-type(3){
  background-color: #FF0000;
}
.header-headline .header-headline__sns a:hover {
  transform: scale(1.2);
}



.header-box{
width: 100%;
max-width: 1200px;
	display: flex;
	align-items: center;
	padding: 10px 0;
}
@media only screen and (max-width: 767px) {
.header-box{
	width: 100%;
	display: flex;
	justify-content: center
	
}
}

.header-box .header-box__logo{
	width: 300px;
	padding-right: 15px;
}
@media only screen and (max-width: 767px) {
.header-box .header-box__logo{
	width: 200px;
	padding-right: 0;
}
}

.header-box .header-box__logo img{
	width: 100%;
	height: auto;
}
.header-box .header-box__banner{
	flex: 1;
}
.header-box .header-box__banner img{
	width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
.header-box .header-box__banner{
	display: none;
}
}

.header-nav{
width: 100%;
max-width: 1200px;
	padding-bottom: 10px
}
@media only screen and (max-width: 767px) {
.header-nav{
	display: none;
}
}

.header-nav ul{
	display: flex;
}
.header-nav li{
	flex: 1;
	text-align: center;
	font-weight: bold;
}
.header-nav li a{
	display: block;
	padding: 10px 0;
	color: #000000;
	text-decoration: none;
}

.header-nav li a:hover{
	opacity: 0.1;
}

.header-nav li:nth-of-type(1){
	border-bottom: solid 3px #E00047;
}
.header-nav li:nth-of-type(2){
	border-bottom: solid 3px #44A5CB;
}
.header-nav li:nth-of-type(3){
	border-bottom: solid 3px #5EC84E;
}
.header-nav li:nth-of-type(4){
	border-bottom: solid 3px #EDAD0B;
}
.header-nav li:nth-of-type(5){
	border-bottom: solid 3px #DA6272;
}
.header-nav li:nth-of-type(6){
	border-bottom: solid 3px #2459A6;
}



.header-tag{
	max-width: 1200px;
	display: flex;
	align-items: center;
	background-color: #eee;

}
@media only screen and (max-width: 767px) {
.header-tag{
	display: none;
}
}
.header-tag .yamenu{
width: 140px;

background: #808080;
padding: 1.5em 1.5em;
font-size: 0.725rem;

font-weight: bold;
color: #fff;
position: relative;
}
.header-tag .yamenu::before{
content: "";
position: absolute;
width: 0;
height: 0;
top: 0;
bottom: 0;
right: -4em;
border: 2em solid transparent;
border-left-color: #808080;
}

.header-tag ul{
display: flex;
flex-wrap: wrap;
margin-left: 35px;
}
.header-tag li{
padding: 5px 5px 5px 0;
font-size: 0.725rem;
}
.header-tag li a{
	color: #000000;
	text-decoration: none;
}
.header-tag li a:hover{
	color: #006057;
	text-decoration: underline;
}
/*------------------------
基本レイアウト
------------------------*/
.contents {
  max-width: 1200px;
  margin: 0 auto 20px auto;
  display: flex;
}

main {
  max-width: 840px;
  flex: 1;
}
aside {
  width: 340px;
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  .contents {
    flex-flow: column;
    justify-content: initial;
  }

  main {
    flex: 1;
  }
  aside {
    width: 100%;
    margin-left: 0;
  }
}

/*------------------------
サイドバー（アド）
------------------------*/
.aside-adsense-top {
  width: 340px;
  padding: 20px;
  margin-bottom: 20px;
  background-color: #fff;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .aside-adsense-top {
    width: 100%;
    height: initial;
  }
}
/*------------------------
サイドバー（アド）
------------------------*/
.aside-banner {
  width: 100%;
  margin-bottom: 20px;
  text-align: center;
}
.aside-banner ul{
}
.aside-banner li{
  margin-bottom: 20px;
}
.aside-banner li img{
	width: 100%;
	height: auto;
}
@media only screen and (max-width: 767px) {
  .aside-banner {
    width: 100%;
    height: initial;
  }
}
/*------------------------
サイドバー（ランキング）
------------------------*/
.aside-ranking-headline {
  padding: 20px;
  text-align: center;
}
.aside-ranking-headline h3 {
  font-size: 2rem;
  padding-bottom: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-style: italic;
}

.aside-ranking-headline p {
  font-size: 0.75rem;
}

/*------------------------
サイドバー（ランキング）
------------------------*/
.aside-ranking-box {
  background-color: #fff;
  margin-bottom: 20px;
}
/*---*/
.aside-ranking-box ul {
  display: flex;
  flex-flow: column;
}
.aside-ranking-box li {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: solid 1px #ccc;
  position: relative;
}
.aside-ranking-box li::before {
  position: absolute;
  content: "";
  border-top: 20px solid #fff;
  border-left: 20px solid #fff;
  border-bottom: 20px solid transparent;
  border-right: 20px solid transparent;
}
.aside-ranking-box li:nth-of-type(1):after {
  position: absolute;
  content: "1";
  top: 3px;
  left: 3px;
  color: #c9c302;
}
.aside-ranking-box li:nth-of-type(2):after {
  position: absolute;
  content: "2";
  top: 3px;
  left: 3px;
  color: #616161;
}
.aside-ranking-box li:nth-of-type(3):after {
  position: absolute;
  content: "3";
  top: 3px;
  left: 3px;
  color: #8b1e1e;
}
.aside-ranking-box li:nth-of-type(4):after {
  position: absolute;
  content: "4";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(5):after {
  position: absolute;
  content: "5";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(6):after {
  position: absolute;
  content: "6";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(7):after {
  position: absolute;
  content: "7";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(8):after {
  position: absolute;
  content: "8";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(9):after {
  position: absolute;
  content: "9";
  top: 3px;
  left: 3px;
}
.aside-ranking-box li:nth-of-type(10):after {
  position: absolute;
  content: "10";
  top: 3px;
  left: 3px;
}

.aside-ranking-box li:last-child {
  padding-bottom: 0px;
  margin-bottom: 0px;
  border-bottom: none;
}
.aside-ranking-box a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #000;
}
.aside-ranking-box a:hover {
  transform: scale(1.05);
}
.aside-ranking-box__img {
  width: 90px;
}
.aside-ranking-box__img img {
  width: 90px;
  height: auto;
  object-fit: cover;
}
.aside-ranking-box__text {
  flex: 1;
  padding-left: 10px;
  font-size: 0.875rem;
  line-height: 160%;
}

.aside-ranking-box__text br{
	display: none;
}

/*---*/
.aside-ranking-box .tabs {
  margin-top: 50px;
  padding-bottom: 20px;
  margin: 0 auto;
}

.aside-ranking-box .tab_item {
  width: calc(100% / 5);
  height: 50px;
  border-bottom: 3px solid #006057;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 0.75rem;
  text-align: center;
  color: #000;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.aside-ranking-box .tab_item:hover {
  background-color: #006057;
  color: #fff;
}

.aside-ranking-box input[name="tab_item"] {
  display: none;
}

.aside-ranking-box .tab_content {
  display: none;
  padding: 20px 20px 0;
  clear: both;
  overflow: hidden;
}

#news:checked ~ #news_content,
#business:checked ~ #business_content,
#education:checked ~ #education_content,
#life:checked ~ #life_content,
#store:checked ~ #store_content {
  display: block;
}

.tabs input:checked + .tab_item {
  background-color: #006057;
  color: #fff;
}

/*------------------------
サイドバー（カテゴリー）
------------------------*/
.aside-category-headline {
  padding: 20px;
  text-align: center;
}
.aside-category-headline h3 {
  font-size: 2rem;
  padding-bottom: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-style: italic;
}

.aside-category-headline p {
  font-size: 0.75rem;
}

/*------------------------
  サイドバー（カテゴリー）
------------------------*/
.aside-category-box {
  background-color: #fff;
  padding: 20px 20px 20px 20px;
}

.aside-category-box li:last-child {
  margin-bottom: 0px;
}
.aside-category-box li a {
  display: block;
  color: #fff;
  font-size: 0.875rem;
  text-decoration: none;
  background-color: #006057;
  padding: 15px 10px;
  margin-bottom: 3px;
}
.aside-category-box li a:hover {
  background-color: #059588;
  color: #fff;
  font-size: 0.875rem;
  text-decoration: none;
}

.aside-category-box li span {
  float: right;
  text-align: center;
  background-color: #059588;
  padding: 5px;
  font-size: 0.75rem;
  border-radius: 5px;
  margin-top: -3px;
}

/*------------------------
  サイドバー（タグ）
------------------------*/
.aside-tag-box {
  background-color: #fff;
  padding: 0 20px 20px 20px;
  margin-bottom: 20px;
}

.aside-tag-box ul {
  display: flex;
  flex-wrap: wrap;
}
.aside-tag-box li {
  margin-right: 3px;
  margin-bottom: 3px;
}
.aside-tag-box li:last-child {
  margin-bottom: 0px;
}
.aside-tag-box li a {
  background-color: #656565;
  display: block;
  padding: 15px 10px;
  color: #fff;
  font-size: 0.875rem;
  text-decoration: none;
}
.aside-tag-box li a:hover {
  background-color: #333;
  display: block;
  padding: 15px 10px;
  color: #fff;
  font-size: 0.875rem;
  text-decoration: none;
}

/*------------------------
  サイドバー（バナー）
------------------------*/

.aside-banner-box li {
  padding-bottom: 10px;
}
.aside-banner-box li img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}

/*------------------------
サイドバー（アド）
------------------------*/
.aside-adsense-bottom {
  width: 340px;
  padding: 20px;
  background-color: #fff;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .aside-adsense-bottom {
    width: 100%;
    height: initial;
  }
}
/*------------------------
サイドバー（新着）
------------------------*/

.aside-new-headline {
  padding: 20px;
  text-align: center;
}
.aside-new-headline h3 {
  font-size: 2rem;
  padding-bottom: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 900;
  font-style: italic;
}

.aside-new-headline p {
  font-size: 0.75rem;
}

/*------------------------
サイドバー（新着）
------------------------*/

.aside-new-box {
  background-color: #fff;
  padding: 20px;
  margin-bottom: 20px;
}
/*---*/
.aside-new-box ul {
  display: flex;
  flex-flow: column;
}
.aside-new-box li {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: solid 1px #ccc;
  position: relative;
}
.aside-new-box li::before {
  position: absolute;
  content: "";
  border-top: 20px solid #fff;
  border-left: 20px solid #fff;
  border-bottom: 20px solid transparent;
  border-right: 20px solid transparent;
}
.aside-new-box li:after {
  position: absolute;
  content: "new";
  top: 3px;
  left: 3px;
  color: #c9c302;
}

.aside-new-box li:last-child {
  padding-bottom: 0px;
  margin-bottom: 0px;
  border-bottom: none;
}
.aside-new-box a {
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #000;
}
.aside-new-box a:hover {
  transform: scale(1.05);
}
.aside-new-box__img {
  width: 90px;
}
.aside-new-box__img img {
  width: 90px;
  height: auto;
  object-fit: cover;
}
.aside-new-box__text {
  flex: 1;
  padding-left: 10px;
  font-size: 0.875rem;
  line-height: 160%;
}


/*---*/
.aside-new-box .tabs2 {
  margin-top: 50px;
  padding-bottom: 20px;
  margin: 0 auto;
}

.aside-new-box .tab_item2 {
  width: calc(100% / 2);
  height: 50px;
  border-bottom: 3px solid #006057;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 0.75rem;
  text-align: center;
  color: #000;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.aside-new-box .tab_item2:hover {
  background-color: #006057;
  color: #fff;
}

.aside-new-box input[name="tab_item2"] {
  display: none;
}

.aside-new-box .tab_content {
  display: none;
  padding: 20px 20px 0;
  clear: both;
  overflow: hidden;
}

#new:checked ~ #new_content,
#tbusiness:checked ~ #tbusiness_content{
  display: block;
}

.tabs2 input:checked + .tab_item2 {
  background-color: #006057;
  color: #fff;
}
/*------------------------
フッター
------------------------*/

/*------------------------
フッター(SNS)
------------------------*/
.footer-sns {
  padding: 60px 0;
  background-color: #4e4e4e;
}
.footer-sns__headline {
  text-align: center;
  color: #fff;
  padding-bottom: 40px;
}
.footer-sns__headline p:first-child {
  font-size: 2.4rem;
  font-family: Arial, Helvetica, sans-serif;
  font-style: italic;
  font-weight: 600;
  padding-bottom: 10px;
}
.footer-sns__headline p:last-child {
  font-size: 0.875rem;
}

.footer-sns__icon ul {
  display: flex;
  justify-content: center;
  flex-flow: row;
}

.footer-sns__icon a {
  width: 60px;
  height: 60px;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #4e4e4e;
  margin: 0 10px;
  background-color: #fff;
  border-radius: 30px;
  text-decoration: none;
  transition-duration: 0.2s;
}
.footer-sns__icon a:hover {
  transform: scale(1.2);
}

/*------------------------
フッター(メニュー)
------------------------*/
.footer-menu {
  padding: 60px 0 20px 0;
  background-color: #000;
  font-size: 0.875rem;
}
.footer-menu__category {
  max-width: 1200px;
  margin: 0 auto;
  color: #fff;
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: solid 1px #444;
}
.footer-menu__category ul {
  display: flex;
  justify-content: center;
}
.footer-menu__category li {
  margin: 0 10px;
}
.footer-menu__category li a {
  text-decoration: none;
}
.footer-menu__category li a:link {
  color: #fff;
}
.footer-menu__category li a:visited {
  color: #fff;
}
.footer-menu__category li a:hover {
  color: #ffff00;
  text-decoration: underline;
}
.footer-menu__category li a:active {
  color: #ffff00;
  text-decoration: underline;
}
/*------------------------
  フッター(メニュー)
  ------------------------*/

.footer-menu__tag {
  color: #fff;
}
.footer-menu__tag-box {
  max-width: 1200px;
  margin: 0 auto;
  padding-bottom: 40px;
  border-bottom: solid 1px #444;
}
.footer-menu__tag ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.footer-menu__tag li {
  margin: 0 10px 10px 10px;
}
.footer-menu__tag li a {
  text-decoration: none;
}
.footer-menu__tag li a:link {
  color: #fff;
}
.footer-menu__tag li a:visited {
  color: #fff;
}
.footer-menu__tag li a:hover {
  color: #ffff00;
  text-decoration: underline;
}
.footer-menu__tag li a:active {
  color: #ffff00;
  text-decoration: underline;
}
/*------------------------
    フッター(固定メニュー)
    ------------------------*/

.footer-menu__navi {
  color: #fff;
  padding: 40px 0;
  border-bottom: solid 1px #444;
}
.footer-menu__navi-box {
  max-width: 1200px;
  margin: 0 auto;
}
.footer-menu__navi ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.footer-menu__navi li {
  margin: 0 10px 10px 10px;
}
.footer-menu__navi li a {
  text-decoration: none;
}
.footer-menu__navi li a:link {
  color: #fff;
}
.footer-menu__navi li a:visited {
  color: #fff;
}
.footer-menu__navi li a:hover {
  color: #ffff00;
  text-decoration: underline;
}
.footer-menu__navi li a:active {
  color: #ffff00;
  text-decoration: underline;
}

/*------------------------
  フッター(最後)
  ------------------------*/

.footer-last {
  color: #fff;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-content: center;
  background-color: #000;
}
@media only screen and (max-width: 767px) {
  .footer-last {
    justify-content: center;
  }
}
.footer-last__logo {
  width: 160px;
}
@media only screen and (max-width: 767px) {
  .footer-last__logo {
    display: none;
  }
}
.footer-last__logo img {
  width: 100%;
  height: auto;
}
.footer-last__copy {
  text-align: right;
  font-size: 0.75rem;
  padding-top: 10px;
}
@media only screen and (max-width: 767px) {
  .footer-last__copy {
    text-align: center;
  }
}
.footer-last__copy a {
  text-decoration: none;
}
.footer-last__copy a:link {
  color: #fff;
}
.footer-last__copy a:visited {
  color: #fff;
}
.footer-last__copy a:hover {
  color: #ffff00;
  text-decoration: underline;
}
.footer-last__copy a:active {
  color: #ffff00;
  text-decoration: underline;
}

/*------------------------
パンくず
------------------------*/

.pan {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 0 40px 0;
}
@media only screen and (max-width: 767px) {
  .pan {
    padding: 20px 10px 40px 10px;
    line-height: 160%;
  }
}
.pan ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 12px;
  font-size: 0.75rem;
}

.pan li a:link,
.pan li :visited {
  text-decoration: none;
  color: #006057;
}
.pan li a:hover,
.pan li a:active {
  text-decoration: underline;
}

.pan li::after {
  content: ">";
  padding: 0 0.5em;
}

.pan li:last-child::after {
  content: "";
  padding-right: 0;
}

/*------------------------
メインエリア
------------------------*/
.primary {
  width: 100%;
  background-color: #fff;
  padding: 20px;
}
@media only screen and (max-width: 767px) {
  .primary {
    padding: 20px 10px;
  }
}
/*------------------------
メインエリア（カテゴリーリボン）
------------------------*/
.primary-category {
  display: inline-block;
  position: relative;
  padding: 15px 20px;
  font-size: 12px; /*フォントサイズ*/
  color: #fff; /*フォントカラー*/
  background: #006057; /*リボンの色*/
  transform: translate(-40px, -40px);
}

.primary-category:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 15px transparent;
  border-right: solid 20px rgb(149, 158, 155); /*折り返し部分*/
}
@media only screen and (max-width: 767px) {
  .primary-category {
    padding: 15px 10px;
    transform: translate(0px, -40px);
  }
  .primary-category:before {
    display: none;
  }
}
/*------------------------
メインエリア
------------------------*/
.primary-title {
  padding-bottom: 20px;
}
.primary-title h1 {
  font-size: 2.0rem;
  line-height: 140%;
}
@media only screen and (max-width: 767px) {
  .primary-title h1 {
    font-size: 1.5rem;
  }
}
/*------------------------
アイキャッチ
------------------------*/
.eye-catching {
  padding-bottom: 20px;
}
.eye-catching img {
  max-width: 100%;
  height: auto;
}

/*------------------------
目次
------------------------*/
.primary-table-of-contents {
}
#toc {
  margin: 30px 40px;
  padding: 20px;
  text-align: center;
  border: solid 1px #ccc;
}

.mokuji {
  font-size: 1.2em;
  font-weight: bold;
  color: #333;
}

#toc ol {
  margin-top: 10px;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
}

#toc ol li {
  font-size: 0.95em;
  margin-bottom: 1em;
  list-style-position: inside;
  color: #000070;
  border-bottom: 1px dotted #ddd;
}

#toc ol a {
  text-decoration: none;
  color: #000070;
}

#toc ol a:hover {
  opacity: 0.5;
}

#toc ol > ol {
  margin: 0;
  padding-left: 15px;
}

#toc ol > ol li {
  font-size: 1em;
  font-weight: 500;
}

@media (max-width: 599px) {
  #toc {
    margin: 30px 0;
  }
}

/*------------------------
本文
------------------------*/
.primary-note {
}
.primary-note p {
  line-height: 200%;
  padding: 0 10px 1.5rem 10px;
}
.primary-note h1 {
  display: none;
}
.primary-note h2 {
  font-size: 1.5rem;
  line-height: 180%;
  background-color: #006057;
  color: #fff;
  padding: 10px 20px;
  margin-bottom: 1.5rem;
}
.primary-note h3 {
  font-size: 1.5rem;
  line-height: 180%;
  background-color: #eee;
  border-left: solid 3px #006057;
  padding: 10px 20px;
  margin-bottom: 1.5rem;
  font-weight: bold;
}
.primary-note h4 {
  font-size: 1.5rem;
  line-height: 180%;
  border-left: solid 3px #006057;
  padding: 10px 20px;
  margin-bottom: 1.5rem;
  font-weight: bold;
}
.primary-note h5 {
  font-size: 1.5rem;
  line-height: 180%;
  padding: 10px 0;
  margin-bottom: 1.5rem;
  font-weight: bold;
}
.primary-note h6 {
  display: none;
}

.primary-note img {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.primary-note ul {
  list-style: disc;
}
.primary-note ol {
  list-style-type: decimal;
}
.primary-note li {
  margin-left: 40px;
  line-height: 180%;
}
.primary-note li:last-child {
  padding-bottom: 1.5rem;
}

.primary-note table {
  width: 100%;
  margin-bottom: 20px;
}
.primary-note th {
  border: solid 1px #ccc;
  background-color: #eee;
  padding: 10px;
  font-weight: normal;
  text-align: left;
  line-height: 160%;
  vertical-align: top;
}
.primary-note td {
  border: solid 1px #ccc;
  padding: 10px;
  line-height: 160%;
}

/*------------------------
SNS
------------------------*/

.sns {
  display: flex;
  flex-flow: column;
}

.sns-facebook {
  display: flex;
  flex-flow: row;
  align-items: center;
  background-color: #000;
  margin-bottom: 10px;
}
.sns-facebook__img {
  flex: 2;
}
.sns-facebook__img img {
  height: 140px;
  width: 100%;
  object-fit: cover;
}
.sns-facebook__btn {
  color: #fff;
  flex: 3;
  text-align: center;
}
.sns-facebook__btn p {
  padding-bottom: 1rem;
}
.sns-twitter {
  background-color: #eee;
  padding: 15px 10px;
}
.sns-twitter ul {
  display: flex;
  align-items: center;
}
.sns-twitter li {
}
.sns-twitter-push {
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .sns-twitter ul {
    display: flex;
    align-items: center;
    flex-flow: column;
  }

  .sns-twitter li {
    padding-bottom: 10px;
  }

  .sns-twitter li:first-child {
    padding-left: 0px;
  }
  .sns-twitter li:last-child {
    padding-bottom: 0px;
  }
  .sns-twitter-push {
    margin-left: 0;
  }
}

/*------------------------
関連
------------------------*/
.related {
  width: 100%;
}

.primary .related h3 {
  font-size: 1.5rem;
  line-height: 180%;
  background-color: #006057;
  color: #fff;
  padding: 10px 20px;
  margin-bottom: 10px;
}

.related .yarpp-thumbnails-horizontal {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.related .yarpp-thumbnails-horizontal a {
  width: calc((100% - 20px) / 3);
  margin: 0 10px 10px 0;
  transition-duration: 0.2s;
  text-decoration: none;
  color: #006057;
  border: none;
  font-weight: normal;
  font-size: 0.875rem;
  display: block;
  height: auto;
}
.related .yarpp-thumbnails-horizontal .yarpp-thumbnail-title {
  width: 100%;
  margin: 0;
  padding-bottom: 30px;
}

.related .yarpp-thumbnails-horizontal a:nth-of-type(3n) {
  margin: 0 0 10px 0;
}

.related .yarpp-thumbnails-horizontal a:hover {
  transform: scale(1.1);
}
.related .yarpp-thumbnails-horizontal a img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  padding-bottom: 10px;
  margin: 0;
}
@media only screen and (max-width: 767px) {
  .related .yarpp-thumbnails-horizontal a {
    width: calc(50% - 5px);
    margin: 0 0 10px 0;
  }

  .related .yarpp-thumbnails-horizontal a:nth-of-type(3n) {
    margin: 0 0 0 0;
  }
  .related .yarpp-thumbnails-horizontal a:nth-of-type(2n + 1) {
    margin: 0 5px 0 0;
  }
  .related .yarpp-thumbnails-horizontal a:nth-of-type(2n) {
    margin: 0 0 0 5px;
  }
}

/*------------------------
コンタクトフォーム7
------------------------*/

.inquiry th {
  vertical-align: middle;
}
span.wpcf7-list-item {
  display: block;
}

/*---------
アドセンス背景黄色を透明に
---------*/

mark, ins {
background: transparent;
text-decoration: none;
}