@charset "UTF-8";
/*
Theme Name: blanc note
Theme URI: https://www.rcorco.com/blancnote/
Author: るこ
Author URI: https://www.rcorco.com/
Description: ブログを書くためのシンプルなテーマ
Version: 2.0.7.4
*/
/*=====================================================================
 Contents
 00 : Settings
===================================================================== */
body {
  line-height: 170%;
  color: #444; }

/* 00 : Settings
-----------------------------------------------------*/
.foo {
  color: blue; }
  @media screen and (min-width: 768px) {
    .foo {
      color: yellow; } }
  @media screen and (min-width: 920px) {
    .foo {
      color: red; } }

/* CSS Imports
-----------------------------------------------------*/
/* reset
-----------------------------------------------------*/
/* 
RESET - ADAPTED FROM MEYER RESET
URL - http://meyerweb.com/eric/tools/css/reset/
LICENSE - PUBLIC DOMAIN
*/
/* RESET
----------------------------------------------------------------------------------------------------*/
a, abbr, acronym, address, applet, article, aside, audio,
b, big, blockquote, caption, canvas, center, cite, code,
dd, del, details, dfn, dialog, div, dl, dt, em, embed,
fieldset, figcaption, figure, form, footer,
header, hgroup, h2, h3, h4, h5, h6, html,
i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav,
object, ol, output, p, pre, q, ruby,
s, samp, section, main, small, span, strike, strong, sub, summary, sup,
tt, table, tbody, tfoot, thead, time, tr, th, td,
u, ul, var, video {
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
  white-space: normal;
  text-align: left;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent; }

textarea .wpcf7-textarea {
  white-space: pre; }

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

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

/*12 COLUMN : RESPONSIVE GRID SYSTEM
DEVELOPER : DENIS LEBLANC
URL : http://responsive.gs
VERSION : 3.0
LICENSE : GPL & MIT */
/*SET ALL ELEMENTS TO BOX-SIZING : BORDER-BOX */
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  *behavior: url(js/boxsizing.htc);
  /*If you need support for IE7 and lower make 
sure the boxsizing.htc file is linked properly.
More info here:https://github.com/Schepp/box-sizing-polyfill */ }

@media (min-width: 768px) {
  .gutters .col {
    margin-left: 2%; }
  .gutters .col:first-child {
    margin-left: 0; } }

/*COLUMN WIDTH ON DISPLAYS +768px 
You might need to play with media queries here to suite your design. */
@media (min-width: 768px) {
  .span_1 {
    width: 8.33333333333%; }
  .span_2 {
    width: 16.6666666667%; }
  .span_3 {
    width: 25%; }
  .span_4 {
    width: 33.3333333333%; }
  .span_5 {
    width: 41.6666666667%; }
  .span_6 {
    width: 50%; }
  .span_7 {
    width: 58.3333333333%; }
  .span_8 {
    width: 66.6666666667%; }
  .span_9 {
    width: 75%; }
  .span_10 {
    width: 83.3333333333%; }
  .span_11 {
    width: 91.6666666667%; }
  .span_12 {
    width: 100%; }
  .gutters .span_1 {
    width: 6.5%; }
  .gutters .span_2 {
    width: 15.0%; }
  .gutters .span_3 {
    width: 23.5%; }
  .gutters .span_4 {
    width: 32.0%; }
  .gutters .span_5 {
    width: 40.5%; }
  .gutters .span_6 {
    width: 49.0%; }
  .gutters .span_7 {
    width: 57.5%; }
  .gutters .span_8 {
    width: 66.0%; }
  .gutters .span_9 {
    width: 74.5%; }
  .gutters .span_10 {
    width: 83.0%; }
  .gutters .span_11 {
    width: 91.5%; }
  .gutters .span_12 {
    width: 100%; } }

html {
  font-size: 16px; }

body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }

#mainmenu li a,
#ToggleMenu li a {
  font-family: 'Abhaya Libre',serif; }

.ghostbtn {
  font-family: 'Abhaya Libre',serif; }

/* 見出しのフォント設定 */
.pagetop span,
section h2,
section h3,
h1.tac {
  font-family: "Abhaya Libre" , Garamond , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }

textarea, input, select {
  font: 0.99rem; }

table {
  font-size: inherit;
  font: 1rem; }

pre, code, kbd, samp, tt {
  font-family: monospace;
  *font-size: 1rem;
  font: 1.15rem monospace;
  line-height: 1rem; }

html {
  color: #000;
  background: #FFF; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0; }

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

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

li {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 1rem;
  font-weight: normal; }

q:before, q:after {
  content: ''; }

abbr, acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input, textarea, select {
  max-width: 100%;
  padding: 12px;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit; }

input, textarea, select {
  *font-size: 1rem; }

legend {
  color: #000; }

#mainmenu {
  text-align: center;
  display: block;
  overflow: auto;
  scroll-behavior: smooth;
  margin-bottom: 1rem; }
  @media screen and (min-width: 768px) {
    #mainmenu {
      margin-bottom: 0.4rem; } }
  #mainmenu ul {
    width: 90%;
    margin: auto;
    font-size: 0.9rem;
    display: table; }
    @media screen and (min-width: 768px) {
      #mainmenu ul {
        display: inline-block;
        margin-top: 1em auto;
        width: auto; } }
    #mainmenu ul li {
      display: table-cell;
      white-space: nowrap;
      vertical-align: middle;
      padding-right: 1.6rem;
      position: relative; }
      #mainmenu ul li a {
        white-space: nowrap; }
      #mainmenu ul li:first-child {
        padding-left: 1rem; }
      #mainmenu ul li img {
        vertical-align: bottom;
        margin-right: 5px; }
      #mainmenu ul li:last-child {
        padding-right: 0 !important; }

/*=====================================================
stickey nav
=====================================================*/
header ul li a {
  color: #372f2c;
  text-align: center;
  line-height: 1.4;
  font-size: 1rem; }

header ul li a span {
  display: block;
  text-align: center;
  color: #878AC4;
  font-size: 0.8rem; }

header#nav {
  position: absolute;
  /*bodyに対しての絶対位置*/
  right: 0;
  top: -300px;
  /*通常時はビュー外*/
  background: rgba(255, 255, 255, 0.2);
  width: 50%;
  padding: 0 10px;
  -webkit-transition: .5s ease-in-out;
  /*transitionで動きを*/
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  text-align: left; }
  @media screen and (min-width: 768px) {
    header#nav {
      background-color: white;
      -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
      position: fixed;
      padding: 0;
      top: 0px;
      left: 0px;
      width: 100%;
      z-index: 9999;
      display: none; } }

header#nav ul {
  margin: 0; }

header#nav ul li {
  margin: 0;
  border-bottom: dotted 1px #fff;
  line-height: 3; }
  @media screen and (min-width: 768px) {
    header#nav ul li {
      display: inline-block;
      margin-left: 2em;
      margin-top: 28px;
      font-size: 0.9rem;
      line-height: 2; } }

@media screen and (min-width: 768px) {
  header#nav ul li a {
    display: block; } }

header#nav ul li::after {
  content: ''; }

header#nav ul li:last-child {
  border-bottom: none; }

@media screen and (min-width: 768px) {
  header#nav #logo {
    float: left;
    margin: 10px 0 15px 20px;
    line-height: 100%; } }

header#nav #logo img {
  width: 60px; }
  @media screen and (min-width: 768px) {
    header#nav #logo img {
      width: 100px; } }

.menu-trigger {
  display: none; }
  @media screen and (min-width: 768px) {
    .menu-trigger {
      display: block; } }

#ToggleMenu {
  display: none; }
  @media screen and (min-width: 768px) {
    #ToggleMenu {
      display: block;
      float: right;
      margin-right: 25px; } }

@media screen and (min-width: 768px) {
  #ToggleMenu ul {
    display: inline; } }

@media screen and (min-width: 768px) {
  #ToggleMenu ul li {
    display: inline-block;
    margin-left: 2em;
    margin-top: 28px;
    font-size: 0.9rem; } }

@media screen and (min-width: 768px) {
  #ToggleMenu ul li ul {
    display: none; } }

@media screen and (min-width: 768px) {
  #ToggleMenu.openNav {
    display: block;
    clear: both;
    background-color: #efefef; } }

@media screen and (min-width: 768px) {
  #ToggleMenu.openNav ul li {
    display: block;
    padding: 5px 25px;
    border-bottom: 1px solid #dedede;
    font-size: 0.9rem; } }

#navToggle {
  display: block;
  /*通常時は非表示にしておきます*/
  position: absolute;
  /*bodyに対しての絶対位置指定です*/
  right: 15px;
  top: 15px;
  width: 30px;
  height: 25px;
  cursor: pointer; }

#navToggle div {
  position: relative; }

/*spanの絶対位置指定の親にします*/
#navToggle span {
  display: block;
  position: absolute;
  /*#navToggle div に対して*/
  width: 100%;
  border-bottom: solid 3px #000; }

#navToggle span:nth-child(1) {
  top: 0; }

#navToggle span:nth-child(2) {
  top: 11px; }

#navToggle span:nth-child(3) {
  top: 22px; }

/* Toggle(Button) */
/*display:noneだったボタンを display:blockにして表示します*/
#navToggle {
  display: none; }

/* 00 : Common Settings
-----------------------------------------------------*/
/*----- 表示・非表示切り替え -----*/
.pc {
  display: none; }
  @media screen and (min-width: 768px) {
    .pc {
      display: block; } }

.smp {
  display: block; }
  @media screen and (min-width: 768px) {
    .smp {
      display: none; } }

.clear {
  clear: both; }

/*----- micro cf -----*/
/* For modern browser */
.cf:before,
.cf:after {
  content: "";
  display: table; }

.cf:after {
  clear: both; }

/*注意書き*/
.notice {
  padding: 20px;
  margin-bottom: 2em;
  background: #ffe3e3;
  color: #a53248; }

/* ul.circle */
.circle li {
  width: 48%;
  border-radius: 50%;
  text-align: center;
  vertical-align: middle; }

/* ライナー */
.yellowLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fcf8d0));
  background: -webkit-linear-gradient(transparent 70%, #fcf8d0 70%);
  background: -o-linear-gradient(transparent 70%, #fcf8d0 70%);
  background: linear-gradient(transparent 70%, #fcf8d0 70%); }

.pinkLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffd7cf));
  background: -webkit-linear-gradient(transparent 70%, #ffd7cf 70%);
  background: -o-linear-gradient(transparent 70%, #ffd7cf 70%);
  background: linear-gradient(transparent 70%, #ffd7cf 70%); }

.greenLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #c2e5a1));
  background: -webkit-linear-gradient(transparent 70%, #c2e5a1 70%);
  background: -o-linear-gradient(transparent 70%, #c2e5a1 70%);
  background: linear-gradient(transparent 70%, #c2e5a1 70%); }

/* 配置 */
.tac {
  text-align: center; }

.tar {
  text-align: right; }

/*----- align -----*/
.entry .aligncenter,
.aligncenter {
  display: block;
  margin: auto; }

.entry .alignleft,
.alignleft {
  float: none;
  display: block;
  margin-right: 0; }
  @media screen and (min-width: 768px) {
    .entry .alignleft,
    .alignleft {
      float: left;
      margin-right: 1em;
      margin-bottom: 2em; } }

.entry .alignright,
.alignright {
  float: none;
  display: block;
  margin-left: 0; }
  @media screen and (min-width: 768px) {
    .entry .alignright,
    .alignright {
      float: right;
      margin-left: 1em;
      margin-bottom: 2em; } }

.wp-caption {
  max-width: 100%; }
  .wp-caption img {
    max-width: 100%; }

.entry p.wp-caption-text {
  text-align: center;
  font-size: 0.8rem;
  margin-top: 5px; }

.mt20 {
  margin-top: 20px; }

.mr0 {
  margin-right: 0 !important; }

.clear {
  clear: both; }

strong {
  color: #E9709C; }

.notes {
  font-size: 80%;
  margin-bottom: 0;
  background: #fafafa;
  padding: 0.5em;
  border-radius: 0.5em; }

.notes:before {
  content: "\f071";
  font-family: "FontAwesome";
  font-size: 114%;
  color: #e9709c;
  margin-left: 4px;
  margin-right: 4px; }

/* colors */
.bgc1 {
  background-color: #fafafa; }

.bgc2 {
  background-color: #D2E6F1; }

.colBlue {
  color: #607DB8; }

/* icon */
.icon {
  background-color: #4D8070;
  color: #fff;
  font-size: 0.75rem;
  font-weight: bold;
  display: inline-block;
  padding: 5px 10px;
  border-radius: 10px;
  line-height: 1;
  letter-spacing: 1.2; }

.entry a.icon {
  color: #fff;
  text-decoration: none; }
  .entry a.icon:visited {
    color: #fff;
    text-decoration: none; }
  .entry a.icon:hover {
    background-color: #4D8070; }

.icon.pink {
  color: #fff;
  background-color: #D97080; }

.icon.blue {
  background-color: #1F7FB2; }

.icon.yellow {
  background-color: #D8D449; }

.icon.purple {
  background-color: #878AC4; }

.icon.orange {
  background-color: #DE6650; }

/* adsense */
.ads {
  text-align: center;
  padding: 2em 0;
  clear: both; }

.ads span {
  display: block;
  text-align: center; }

/* box */
.box02 {
  padding: 1.5em;
  background-color: #f8fffc; }

.box02:after {
  content: " ";
  display: block;
  clear: both; }

.entry .box02 h2 {
  margin-top: 0;
  font-size: 130%;
  border-left: none;
  border-bottom: none;
  border-top: none;
  padding-left: 0;
  text-align: center;
  position: relative; }

.entry .box02 h2:before {
  content: "";
  display: block;
  border-top: solid 1px black;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 50%;
  z-index: 1; }

.entry .box02 h2 span {
  background: #f8fffc;
  padding: 0 20px;
  position: relative;
  z-index: 5; }

.box02 img {
  margin-bottom: 0;
  border-radius: 50%; }

/*box
---------------------------*/
/* lightgreen noborder noround */
.box02 {
  background-color: #E5F5ED; }

/* yellow border round */
.box03 {
  padding: 1.5em;
  background-color: #FFFEE0;
  border: 2px solid #F2F19D;
  border-radius: 8px;
  margin-bottom: 1em; }

.infoBox {
  border: 4px double #000;
  padding: 1em1em 0 1em;
  margin: 2em 0;
  text-align: center; }

.infoBox h2 {
  margin-top: 10px;
  padding-bottom: 0;
  border-left: none;
  border-top: 0;
  border-bottom: 0;
  text-align: center; }

.infoBox h2 span {
  font-size: 100%; }

/* slider */
.slider.box li div {
  display: block;
  height: 180px;
  width: 180px;
  border-radius: 90px;
  vertical-align: middle;
  text-align: center;
  color: #555;
  border: 1px solid #d16e7d; }

.slider.box li div span {
  position: relative;
  top: 40%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  font-size: 150%;
  line-height: 140%; }

/* boxbd
----------------------------------------- */
.boxbd {
  border: 3px solid #E3E3E3;
  padding: 20px 24px;
  margin-bottom: 1em;
  color: #444; }
  .boxbd .box-title {
    font-weight: bold; }

.boxbd.pink {
  border: 3px solid #D97080; }
  .boxbd.pink .box-title {
    color: #D97080; }

.boxbd.green {
  border: 3px solid #4D8070; }
  .boxbd.green .box-title {
    color: #4D8070; }

.boxbd.blue {
  border: 3px solid #1F7FB2; }
  .boxbd.blue .box-title {
    color: #1F7FB2; }

.boxbd.yellow {
  border: 3px solid #D8D449; }
  .boxbd.yellow .box-title {
    color: #D8D449; }

.boxbd.purple {
  border: 3px solid #878AC4; }
  .boxbd.purple .box-title {
    color: #878AC4; }

.boxbd.orange {
  border: 3px solid #DE6650; }
  .boxbd.orange .box-title {
    color: #DE6650; }

/* boxbd
----------------------------------------- */
.boxbg {
  padding: 20px 24px;
  margin-bottom: 1em;
  color: #444;
  background-color: #fafafa; }
  .boxbg .box-title {
    font-weight: bold; }

.boxbg.pink {
  background-color: #f7e1e5; }
  .boxbg.pink .box-title {
    color: #D97080; }

.boxbg.green {
  background-color: #d1e4e4; }
  .boxbg.green .box-title {
    color: #4D8070; }

.boxbg.blue {
  background-color: #d1e5ef; }
  .boxbg.blue .box-title {
    color: #1F7FB2; }

.boxbg.yellow {
  background-color: #f7f6da; }
  .boxbg.yellow .box-title {
    color: #D8D449; }

.boxbg.purple {
  background-color: #e6e7f3; }
  .boxbg.purple .box-title {
    color: #878AC4; }

.boxbg.orange {
  background-color: #f8dfdb; }
  .boxbg.orange .box-title {
    color: #DE6650; }

/* boxkadomaru
----------------------------------------- */
.boxkadomaru {
  border: 3px solid #E3E3E3;
  padding: 20px 24px;
  margin-bottom: 1em;
  border-radius: 8px;
  color: #444; }
  .boxkadomaru .box-title {
    font-weight: bold; }

.boxkadomaru.pink {
  border: 3px solid #D97080;
  background-color: #f7e1e5; }
  .boxkadomaru.pink .box-title {
    color: #D97080; }

.boxkadomaru.green {
  border: 3px solid #4D8070;
  background-color: #d1e4e4; }
  .boxkadomaru.green .box-title {
    color: #4D8070; }

.boxkadomaru.blue {
  border: 3px solid #1F7FB2;
  background-color: #d1e5ef; }
  .boxkadomaru.blue .box-title {
    color: #1F7FB2; }

.boxkadomaru.yellow {
  border: 3px solid #D8D449;
  background-color: #f7f6da; }
  .boxkadomaru.yellow .box-title {
    color: #D8D449; }

.boxkadomaru.purple {
  border: 3px solid #878AC4;
  background-color: #e6e7f3; }
  .boxkadomaru.purple .box-title {
    color: #878AC4; }

.boxkadomaru.orange {
  border: 3px solid #DE6650;
  background-color: #f8dfdb; }
  .boxkadomaru.orange .box-title {
    color: #DE6650; }

/*注意書き*/
.notice {
  padding: 20px;
  margin-bottom: 2em;
  background: #ffe3e3;
  color: #a53248; }

/* ul.circle */
.circle li {
  width: 48%;
  border-radius: 50%;
  text-align: center;
  vertical-align: middle; }

/* ライナー */
.yellowLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #fcf8d0));
  background: -webkit-linear-gradient(transparent 70%, #fcf8d0 70%);
  background: -o-linear-gradient(transparent 70%, #fcf8d0 70%);
  background: linear-gradient(transparent 70%, #fcf8d0 70%); }

.pinkLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ffd7cf));
  background: -webkit-linear-gradient(transparent 70%, #ffd7cf 70%);
  background: -o-linear-gradient(transparent 70%, #ffd7cf 70%);
  background: linear-gradient(transparent 70%, #ffd7cf 70%); }

.greenLiner {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #c2e5a1));
  background: -webkit-linear-gradient(transparent 70%, #c2e5a1 70%);
  background: -o-linear-gradient(transparent 70%, #c2e5a1 70%);
  background: linear-gradient(transparent 70%, #c2e5a1 70%); }

.notes {
  font-size: 80%;
  margin-bottom: 0;
  background: #fafafa;
  padding: 0.5em;
  border-radius: 0.5em; }

.notes:before {
  content: "\f071";
  font-family: "FontAwesome";
  font-size: 114%;
  color: #e9709c;
  margin-left: 4px;
  margin-right: 4px; }

/* adsense */
.ads {
  text-align: center;
  padding: 2em 0;
  clear: both; }

.ads span {
  display: block;
  text-align: center; }

.entry strong {
  font-weight: bold; }

.entry .red {
  font-weight: bold;
  color: #ed4444; }

.entry .yellowLiner {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(40%, #ffffd9));
  background: -webkit-linear-gradient(transparent 40%, #ffffd9 40%);
  background: -o-linear-gradient(transparent 40%, #ffffd9 40%);
  background: linear-gradient(transparent 40%, #ffffd9 40%); }

.entry .fa:before {
  margin-right: 0.3em !important; }

.entry ul.toc_list {
  border: none; }

.entry ul {
  font-size: 1rem; }

.entry .more-link {
  margin: 5px 0;
  padding: 3px;
  background: #decaaa;
  color: #58514a;
  font-size: 0.7rem;
  font-weight: bold;
  text-decoration: none; }

/* 通常リスト */
.entry ul {
  padding: 1em 0;
  margin-bottom: 1em;
  display: block;
  position: relative; }

.entry ul:after {
  content: "";
  display: block;
  clear: both; }

.entry ul li:before {
  position: relative;
  padding: 0;
  line-height: 170%;
  color: #7760ba;
  font-family: FontAwesome;
  content: '\f0da';
  margin-right: 4px; }

.entry ul li {
  margin-left: .5em;
  list-style: none; }

.entry ul li ul {
  border: none;
  background-color: transparent;
  margin: auto;
  padding: auto;
  font-size: 1rem; }

/* マークなし */
.entry ul.none li:before {
  position: relative;
  padding: auto;
  content: '';
  margin-right: auto; }

/* check付きリスト */
.entry ul.check li:before {
  position: relative;
  padding: 0;
  line-height: 170%;
  color: #7760ba;
  font-family: FontAwesome;
  content: '\f058';
  margin-right: 4px; }

/* heart付きリスト */
.entry ul.heart li:before {
  position: relative;
  padding: 0;
  line-height: 170%;
  color: #7760ba;
  font-family: FontAwesome;
  content: '\f004';
  margin-right: 4px; }

/* star付きリスト */
.entry ul.star li:before {
  position: relative;
  padding: 0;
  line-height: 170%;
  color: #7760ba;
  font-family: FontAwesome;
  content: '\f005';
  margin-right: 4px; }

/* タイトル付き星リスト */
.entry ul.title-check:before {
  content: "＼Check it／";
  position: absolute;
  left: 15px;
  top: -15px;
  font-weight: bold;
  color: #7760ba;
  background: #fff;
  font-size: 1rem;
  padding: 0 5px; }

.entry ul.title-point:before {
  content: "＼POINT／";
  position: absolute;
  left: 15px;
  top: -45px;
  font-weight: bold;
  color: #7760ba;
  background: #fff;
  font-size: 1rem;
  padding: 0 5px;
  margin-top: 2rem; }

.entry ul.title-matome:before {
  content: "＼まとめ／";
  position: absolute;
  left: 15px;
  top: -45px;
  font-weight: bold;
  color: #7760ba;
  background: #fff;
  font-size: 1rem;
  padding: 0 5px;
  margin-top: 2rem; }

/* box入りリスト */
.entry ul.box {
  display: block;
  background: #fafafa;
  padding: 1em; }

/* 枠付きリスト */
.entry ul.bd {
  border: 3px solid #efefef;
  padding: 1em; }

.entry ul.bd li {
  border-bottom: 1px dotted #ddd;
  padding: 0.5em 0; }

.entry ul.bd li:first-child {
  padding-top: 0; }

.entry ul.bd li:last-child {
  border-bottom: none;
  padding-bottom: 0; }

/* 左だけ枠がついたリスト */
.entry ul.bdl {
  border-left: 5px solid #fafafa;
  padding: 0 .5em; }

/* 角丸の枠を使ったリスト */
.entry ul.bdr {
  border: 3px solid #efefef;
  padding: 1em;
  border-radius: 15px; }

.entry ul.bdr li {
  border-bottom: 1px dotted #efefef;
  padding: 0.5em 0; }

.entry ul.bdr li:first-child {
  padding-top: 0; }

.entry ul.bdr li:last-child {
  border-bottom: none;
  padding-bottom: 0; }

/* 数字リスト */
.entry ol {
  margin-bottom: 1em;
  counter-reset: li;
  /*カウントリセット*/ }

.entry ol li {
  list-style: none;
  /*デフォルトナンバリングを消す*/
  position: relative;
  padding: 0;
  margin-left: 25px;
  line-height: 170%; }

.entry ol li ul li {
  font-size: 0.9rem; }

.entry ol li:before {
  content: counter(li);
  /*カウンターのインデックスを挿入*/
  counter-increment: li;
  /*ナンバリングを生成*/
  /* ここから番号のスタイル */
  position: absolute;
  left: -25px;
  width: 25px;
  /*幅*/
  color: #f1836b;
  /*文字色*/
  font-family: cursive;
  font-size: 121%;
  /*フォントサイズ*/
  padding-left: 5px; }

.entry blockquote {
  padding: 2em;
  margin: 2em 0;
  background: #fafafa;
  font-style: italic;
  font-size: 92%;
  line-height: 180%; }
  .entry blockquote p {
    margin-bottom: 2em; }
    .entry blockquote p:last-child {
      margin-bottom: 0; }

.entry blockquote.wp-embedded-content {
  max-width: 100%;
  height: auto; }

.entry img {
  max-width: 100%;
  height: auto; }

.entry .gallery img {
  padding: 0; }

.wp-embed,
.wp-embedded-content,
.entry p iframe {
  max-width: 100%;
  width: 100%; }

/*----- form -----*/
.entry input,
.entry textarea {
  border: 1px solid #efefef;
  padding: 5px; }

.entry input.wpcf7-submit {
  padding: 5px 10px;
  border: none; }

/* ----------------------------------
tools
------------------------------------- */
.w10 {
  width: 10%; }

.w20 {
  width: 20%; }

.w30 {
  width: 30%; }

.w40 {
  width: 40%; }

.w50 {
  width: 50%; }

.w60 {
  width: 60%; }

.w70 {
  width: 70%; }

.w80 {
  width: 80%; }

.w90 {
  width: 90%; }

/* 下線を引く */
.bdb1 {
  border-bottom: 1px solid #efefef; }

/* マージンセット */
.mgr40 {
  margin-right: 40px !important; }

.mgt40 {
  margin-top: 40px; }

.mgb40 {
  margin-bottom: 40px; }

/* padding */
.pd20 {
  padding: 20px; }

.pd40 {
  padding: 40px; }

.pd60 {
  padding: 60px; }

/* 文字サイズ */
.fszll {
  font-size: 200%; }

.fszl {
  font-size: 180%; }

.fszm {
  font-size: 140%; }

.fszs {
  font-size: 114%; }

.fszss {
  font-size: 92%; }

/* ----------------------------------
tools
------------------------------------- */
.w10 {
  width: 10%; }

.w20 {
  width: 20%; }

.w30 {
  width: 30%; }

.w40 {
  width: 40%; }

.w50 {
  width: 50%; }

.w60 {
  width: 60%; }

.w70 {
  width: 70%; }

.w80 {
  width: 80%; }

.w90 {
  width: 90%; }

/* 下線を引く */
.bdb1 {
  border-bottom: 1px solid #efefef; }

/*----- padding -----*/
.pt00 {
  padding-top: 0 !important; }

/*----- margin -----*/
.mt00 {
  margin-top: 0; }

.mt10 {
  margin-top: 10px; }

.mt15 {
  margin-top: 15px; }

.mt20 {
  margin-top: 20px !important; }

.mt25 {
  margin-top: 25px; }

.mt30 {
  margin-top: 30px; }

.mt35 {
  margin-top: 35px; }

.mt40 {
  margin-top: 40px; }

.mt45 {
  margin-top: 45px; }

.mt50 {
  margin-top: 50px; }

.mt55 {
  margin-top: 55px; }

.mt60 {
  margin-top: 60px !important; }

.mt65 {
  margin-top: 65px; }

.mt70 {
  margin-top: 70px; }

.mt75 {
  margin-top: 75px; }

.mt80 {
  margin-top: 80px; }

.mt85 {
  margin-top: 85px; }

.mt90 {
  margin-top: 90px; }

.mt95 {
  margin-top: 95px; }

.mt100 {
  margin-top: 100px; }

.mb {
  margin: 0 0 10px 0; }

.mb00 {
  margin-bottom: 0 !important; }

.mgb20 {
  margin: 0 0 20px 0; }

.mgr40 {
  margin-right: 40px !important; }

.mgt40 {
  margin-top: 40px; }

.mgb40 {
  margin-bottom: 40px; }

/* padding */
.pd20 {
  padding: 20px; }

.pd40 {
  padding: 40px; }

.pd60 {
  padding: 60px; }

.pb40 {
  padding-bottom: 40px; }

/* ======================================================================================== */
/* 98 : entry set

/* ======================================================================================== */
/* voice
------------------------------- */
.voice {
  display: block;
  width: 100%;
  margin-bottom: 1em; }

/* For modern browser */
.voice:before,
.voice:after {
  content: "";
  display: table; }

.voice:after {
  clear: both; }

/* For IE 6/7 (trigger hasLayout) */
.voice {
  zoom: 1; }

.voice dt img {
  max-width: 100%;
  border-radius: 50%; }
  @media screen and (min-width: 768px) {
    .voice dt img {
      max-width: 80%; } }

.voice dt span.name {
  display: block;
  max-width: 80%;
  text-align: center;
  font-size: 92%;
  color: #666; }

/* 左寄せ */
.voice dt {
  display: block;
  float: left;
  width: 20%;
  vertical-align: middle;
  text-align: center; }

.voice dd {
  display: block;
  float: right;
  position: relative;
  background: #FFF3DB;
  vertical-align: middle;
  padding: 20px;
  border-radius: 10px;
  width: 70%; }

.voice dd:after, .voice dd:before {
  right: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.voice dd:after {
  border-color: rgba(255, 255, 255, 0);
  border-right-color: #FFF3DB;
  border-width: 10px;
  margin-top: -10px; }

.voice dd:before {
  border-color: rgba(255, 255, 255, 0);
  border-right-color: #FFF3DB;
  border-width: 13px;
  margin-top: -13px; }

.voice dt img,
.voice dt span.name {
  margin-right: 20%; }

.voice.r dt img,
.voice.r dt span.name {
  margin-left: 20%;
  margin-right: 0; }

/* 右寄せ */
.voice.r dt {
  display: block;
  float: right;
  width: 20%; }

.voice.r dd {
  display: block;
  float: left;
  position: relative;
  background: #FFF3DB;
  vertical-align: middle;
  padding: 20px;
  border-radius: 10px; }

.voice.r dd:after, .voice.r dd:before {
  left: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none; }

.voice.r dd:after {
  border-color: rgba(255, 255, 255, 0);
  border-left-color: #FFF3DB;
  border-width: 10px;
  margin-top: -10px; }

.voice.r dd:before {
  border-color: rgba(255, 255, 255, 0);
  border-left-color: #FFF3DB;
  border-width: 13px;
  margin-top: -13px; }

@media screen and (min-width: 768px) {
  .voice dd {
    width: 80%; }
  /*----- relation -----*/
  .entry .relation {
    margin-bottom: 20px; }
  .entry .relation ul {
    width: 100%;
    float: none; }
  .entry .relation ul li:before {
    content: ''; }
  .entry .relation ul li {
    float: left !important;
    width: 150px;
    margin-right: 20px; }
  .entry .relation ul li:nth-child(4n) {
    margin-right: 0px; }
  .entry .relation ul li {
    list-style: none !important;
    margin-left: 0;
    font-size: 92%; }
  .entry .relation ul li img {
    width: 150px;
    height: 150px;
    float: none; } }

/* linkbox
------------------------------- */
/* 参考リンクボックス */
.refBox {
  background: #efefef;
  border-radius: 6px;
  padding: 1em; }

.refBox:before {
  content: "参考："; }

/* 枠付きボックス
----------------------------------------- */
div.box, .point {
  border: 2px solid #f593af;
  padding: 15px 20px 10px 20px;
  border-radius: 10px;
  position: relative;
  font-size: 1rem;
  margin-top: 2.2em;
  margin-bottom: 2.2em; }

div.point:before {
  content: "POINT!";
  position: absolute;
  left: 15px;
  top: -15px;
  font-weight: bold;
  color: #f593af;
  background: #fff;
  font-size: 16px;
  padding: 0 5px; }

div.check:before {
  content: "CHECK!";
  position: absolute;
  left: 15px;
  top: -15px;
  font-weight: bold;
  color: #f593af;
  background: #fff;
  font-size: 16px;
  padding: 0 5px; }

/* 参考リンク */
a.ref {
  display: block;
  margin: 1em 0; }

a.ref:before {
  content: "参考";
  background: #666;
  color: #fff;
  border-radius: 6px;
  padding: 5px 10px;
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
  line-height: 100%;
  font-size: 92%; }

/* hr
------------------------------- */
.entry hr {
  height: 1px;
  background-color: #ccc;
  border: none;
  color: #ccc;
  display: block; }

.entry hr.line1 {
  height: 2px;
  background-color: #ccc;
  border: none;
  color: #ccc;
  display: block;
  width: 80%;
  margin: auto; }

.entry hr.line2 {
  height: 4px;
  background-color: #000;
  border: none;
  color: #000;
  display: block;
  width: 10%;
  margin: 2em auto; }

/* ex link
----------------------------------------- */
.ex:after {
  content: "\f08e";
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-family: FontAwesome;
  padding-left: 5px; }

/* flow
----------------------------------------- */
.flow {
  width: 90%;
  margin: auto;
  background-color: #efefef;
  border-radius: 0.5em;
  padding: 1em 1em 0 1em;
  margin-bottom: 1em; }

.flow.center {
  text-align: center; }

.flow:after {
  position: relative;
  padding: 0;
  color: #f593af;
  font-family: FontAwesome;
  content: '\f0d7';
  bottom: -20px;
  text-align: center;
  display: block; }

.flow.last:after {
  content: '';
  padding-bottom: 1em; }

/* hr
------------------------------- */
section hr {
  height: 1px;
  background-color: #ccc;
  border: none;
  color: #ccc;
  display: block; }

section hr.line1 {
  height: 2px;
  background-color: #ccc;
  border: none;
  color: #ccc;
  display: block;
  width: 80%;
  margin: auto; }

section hr.line2 {
  height: 4px;
  background-color: #000;
  border: none;
  color: #000;
  display: block;
  width: 10%;
  margin: 2em auto; }

/* ----------------------------------
btn
------------------------------------- */
/*
type = 形状など
color = ボタンの色
text = 文字の色
*/
/* btn
----------------------------------------- */
.btn {
  display: inline-block;
  background-color: #000;
  color: #fff;
  padding: 3px 12px;
  margin: 0 auto 8px auto; }

.btn:before {
  position: relative;
  padding: 0;
  line-height: 170%;
  color: #fff;
  font-family: FontAwesome;
  content: '\f0da';
  margin-right: 4px; }

/* type */
.btn.type1 {
  color: #91aa86;
  background: #c9dac7;
  border: #c9dac7 1px solid;
  -webkit-box-shadow: 0 0 0 1px #fff6e2 inset;
  box-shadow: 0 0 0 1px #fff6e2 inset;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  display: inline-block;
  cursor: pointer;
  margin: 0 auto 5px auto;
  padding: 8px 15px;
  text-align: center; }

.btn.type1:hover {
  text-decoration: none; }

/* color */
.btn.black {
  background-color: #000; }

.btn.white {
  background-color: #fff; }

.btn.green {
  background-color: #c9dac7; }

.btn.type1black {
  border: 1px solid #000;
  background-color: #000;
  color: #fff;
  -webkit-box-shadow: 0 0 0 1px #fff inset;
  box-shadow: 0 0 0 1px #fff inset;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  display: inline-block;
  cursor: pointer;
  margin: 0 auto 5px auto;
  padding: 8px 15px;
  text-align: center; }

.btn.type1green {
  border: 1px solid #8dcea6;
  background-color: #8dcea6;
  color: #fff6e2;
  -webkit-box-shadow: 0 0 0 1px #fff6e2 inset;
  box-shadow: 0 0 0 1px #fff6e2 inset;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  display: inline-block;
  cursor: pointer;
  margin: 0 auto 5px auto;
  padding: 8px 15px;
  text-align: center; }

/* text */
.btn .white {
  color: #fff; }

.btn .black {
  color: #000; }

/* ghorstbtn
----------------------------------------- */
.ghostbtn {
  border: 1px solid #000;
  padding: 8px 10px;
  text-align: center;
  display: block;
  width: 300px;
  max-width: 90%;
  margin: auto;
  font-size: 0.8rem; }
  @media screen and (min-width: 768px) {
    .ghostbtn {
      font-size: 0.9rem; } }

.ghostbtn.btn-lg, .entry a.ghostbtn.btn-lg {
  width: 80%; }

.ghostbtn.btn-sm, .entry a.ghostbtn.btn-sm {
  width: 200px; }

.ghostbtn,
.entry a.ghostbtn {
  color: #000;
  padding: 12px 0; }

.ghostbtn:visited,
.entry a.ghostbtn:visited {
  color: #000; }

.ghostbtn:hover,
.entry a.ghostbtn:hover {
  color: #fff;
  background-color: #000; }

.infoBox .ghostbtn:hover {
  color: #fff;
  background-color: #000; }

/* btn02
----------------------------------------- */
.btn02, .wpcf7-submit {
  border-radius: 8px;
  padding: 8px 10px;
  text-align: center;
  display: block;
  width: 300px;
  max-width: 90%;
  margin: auto;
  font-size: 0.8rem;
  border: none;
  color: #fff;
  background-color: #D97080; }
  @media screen and (min-width: 768px) {
    .btn02, .wpcf7-submit {
      font-size: 0.9rem; } }

#contents a.btn02 {
  color: #fff; }

.btn02.pink {
  background-color: #D97080; }

.btn02.green {
  background-color: #4D8070; }

.btn02.blue {
  background-color: #1F7FB2; }

.btn02.yellow {
  background-color: #D8D449; }

.btn02.purple {
  background-color: #878AC4; }

.btn02.orange {
  background-color: #DE6650; }

.btn02,
.entry a.btn02 {
  color: #fff;
  padding: 12px 0; }

.btn02:visited,
.entry a.btn02:visited {
  color: #fff;
  opacity: 0.9; }

.btn02:hover,
.entry a.btn02:hover {
  color: #fff;
  opacity: 0.7; }

/* lg */
.btn02.btn-lg, .entry a.btn02.btn-lg {
  border-radius: 32px;
  padding: 20px 10px;
  width: 80%;
  max-width: 90%;
  font-size: 1.6rem; }
  @media screen and (min-width: 768px) {
    .btn02.btn-lg, .entry a.btn02.btn-lg {
      font-size: 1.2rem; } }

/* lg */
.btn02.btn-sm, .entry a.btn02.btn-sm {
  border-radius: 8px;
  padding: 4px 10px;
  width: 200px;
  max-width: 90%;
  font-size: 0.7rem; }
  @media screen and (min-width: 768px) {
    .btn02.btn-sm, .entry a.btn02.btn-sm {
      font-size: 0.7rem; } }

/* ----------------------------------
slider
------------------------------------- */
ul.slider li:before {
  content: ""; }

.entry a.post-edit-link {
  display: inline-block;
  background-color: #d56b80;
  border-radius: 20px;
  font-weight: bold;
  font-size: 0.75rem;
  text-align: center;
  padding: 3px 10px;
  color: #fff; }
  .entry a.post-edit-link:visited {
    color: #fff;
    text-decoration: none; }
  .entry a.post-edit-link:hover {
    background-color: #C44B5E;
    text-decoration: none; }

/* ======================================================================================== */
/* 98 : plugin

/* ======================================================================================== */
/*----- 人気記事WPP -----*/
.wpp-list li {
  clear: both;
  float: none;
  overflow: hidden; }

.wpp-thumbnail {
  border-radius: 50%;
  margin: 0 8px 8px 0 !important; }

.wpp-thumbnail {
  border: medium none;
  display: inline;
  float: left;
  margin: 0 5px 0 0; }

/* Page navi
------------------*/
.pageNavi {
  border-top: 1px solid #b4a895;
  border-bottom: 1px solid #b4a895;
  padding: 5px 0;
  margin: 15px 0;
  clear: both; }

.entry p.nextArticle, .entry p.previousArticle {
  margin: 0;
  padding: 0; }

.entry p.previousArticle {
  margin-top: 8px; }

.entry .pageNavi a {
  display: block;
  padding: 8px; }

.entry p.nextArticle:after, .entry p.previousArticle:after, .pageNavi:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/*----- pagenavi -----*/
.pageNavi span {
  color: #58514a;
  background: #decaaa;
  font-weight: bold;
  padding: 8px;
  text-align: center;
  margin-right: 8px;
  display: block;
  width: 10%;
  float: left; }

.nextArticle span:before {
  content: "";
  font-family: FontAwesome;
  position: relative;
  top: 1px;
  font-size: 0.8rem; }

.previousArticle span:before {
  content: "";
  font-family: FontAwesome;
  position: relative;
  top: 1px;
  left: -7px;
  font-size: 0.8rem; }

div.wp-pagenavi {
  clear: both;
  text-align: center;
  padding: 10px;
  margin: 0;
  color: #fff; }

div.wp-pagenavi span.pages {
  padding: 10px !important;
  border: 0;
  border-radius: 4px;
  display: block;
  margin: 0 auto; }

div.wp-pagenavi span.current {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #fff;
  color: #fff;
  border: 0;
  border-radius: 4px; }

div.wp-pagenavi a {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #fafafa;
  color: #000;
  text-decoration: none;
  border: 0; }

div.wp-pagenavi span.page {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #fafafa;
  color: #000;
  text-decoration: none;
  border: 0;
  border-radius: 4px; }

div.wp-pagenavi a:hover.page {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #000;
  color: #fff;
  text-decoration: none; }

div.wp-pagenavi span.extend {
  padding: 8px 3px;
  margin: 5px 5px 0 0;
  color: #000;
  border: 0;
  text-decoration: none; }

div.wp-pagenavi a.last {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #fafafa;
  color: #fff;
  border: 0;
  text-decoration: none; }

div.wp-pagenavi a.prev {
  padding: 8px 10px;
  margin: 5px 5px 0 0;
  background: #fafafa;
  color: #fff;
  text-decoration: none;
  border: 0;
  border-radius: 4px; }

div.wp-pagenavi span.pages {
  border: 0;
  padding: 0; }

.pageNavi {
  clear: both;
  margin: 0 auto; }

span.prev a {
  height: 25px;
  line-height: 150%;
  margin: 5px 0 0 20px;
  padding: 0 0 0 110px;
  display: block;
  border: 0; }

span.next a {
  height: 25px;
  line-height: 150%;
  margin: 5px 0 0 20px;
  padding: 0 0 0 110px;
  display: block;
  border: 0;
  border-radius: 4px; }

span.prev a, span.next a {
  color: #600; }

span.prev a, span.next a:hover {
  color: #900; }

.entry ul#sitemap_list li {
  list-style-type: none !important; }

#sitemap_list {
  list-style-type: none; }

#sitemap_list li {
  font-size: 14px; }

/* Sitemap Plugin
------------------------- */
main .cat-item {
  display: inline-block;
  padding: 0;
  font-size: 0.8rem; }

main .cat-item li:before {
  content: ""; }

/*----- social button -----*/
#socialbuttons {
  clear: both;
  margin-bottom: 20px; }

#socialbuttons div {
  float: left; }

#socialbuttons div.blogmura {
  line-height: 100%;
  margin-top: 0;
  padding-top: 0; }

.entry #socialbuttons img {
  padding-top: 0; }

.wp_social_bookmarking_light {
  float: left;
  margin-bottom: 30px; }

/*----- いいね -----*/
/*記事がよかったら、いいねスマホ*/
.p-shareButton-bottom {
  padding-bottom: 15px;
  overflow: hidden; }

.p-shareButton__buttons {
  font-weight: 700;
  color: #fff;
  font-size: 13px;
  text-align: center; }

.p-shareButton__buttons > li {
  padding-left: 3px;
  padding-right: 4px; }

.p-shareButton__buttons .c-btn {
  padding: 5px 0;
  border-radius: 2px; }

.p-shareButton__buttons .c-ico {
  display: block;
  margin: auto auto 5px; }

.p-shareButton__fb {
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  width: 115px; }

.p-shareButton__fb-cont {
  position: relative;
  width: 108px;
  margin: 0 auto; }

.p-shareButton__fb-unable {
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px; }

.p-shareButton__cont {
  margin: 15px 0 0; }

.p-shareButton__a-cont {
  background: #2e2e2e;
  display: table;
  width: 100%; }

.p-shareButton__a-cont__img {
  display: table-cell;
  min-width: 130px;
  -webkit-background-size: cover;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center; }

.p-shareButton__a-cont__btn {
  display: table-cell;
  padding: 12px;
  text-align: center; }

.p-shareButton__a-cont__btn p {
  font-size: 12px;
  color: #fff;
  font-weight: 700;
  padding: 5px 0 15px;
  line-height: 1.4;
  margin-bottom: 0px; }

.p-asideFollowUs__twitter {
  border: 2px solid #e6e6e6;
  margin-top: 15px;
  padding: 12px 0; }

.p-asideFollowUs__twitter__cont {
  text-align: center;
  font-size: 13px;
  color: #252525;
  font-weight: 700; }

.p-asideFollowUs__twitter__item {
  display: inline-block;
  vertical-align: middle;
  margin: 0 2px; }

@media screen and (min-width: 768px) {
  /*記事がよかったら、いいねPC*/
  .p-entry__push {
    display: table;
    table-layout: fixed;
    width: 100%;
    background-color: #2b2b2b;
    color: #fff; }
  .p-entry__pushThumb {
    display: table-cell;
    min-width: 240px;
    background-position: center;
    background-size: cover; }
  .p-entry__pushLike {
    display: table-cell;
    padding: 20px;
    text-align: center;
    vertical-align: middle;
    line-height: 1.4;
    font-size: 20px; }
  .p-entry__pushButton {
    margin-top: 15px;
    display: inline-block;
    width: 200px;
    height: 40px;
    line-height: 40px;
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2); }
  .p-entry__pushButtonLike {
    line-height: 1; }
  .p-entry__note {
    margin-top: 15px;
    font-size: 12px;
    color: #999; }
  .p-entry__tw-follow {
    margin-bottom: 10px;
    background: #f4f4f4;
    width: 100%;
    padding: 15px 0; }
  .p-entry__tw-follow__cont {
    text-align: center;
    font-size: 15px;
    color: #252525; }
  .p-entry__tw-follow__item {
    display: inline-block;
    vertical-align: middle;
    margin: 0 15px; } }

@media screen and (min-width: 768px) {
  .booklink-box, .kaerebalink-box {
    margin: 3em auto 1em auto;
    padding: 12px 0;
    border-top: dotted 2px #efe6ca;
    border-bottom: dotted 2px #efe6ca;
    background-color: transparent;
    font-size: small;
    position: relative;
    z-index: 1; }
  .booklink-box:before, .kaerebalink-box:before {
    display: block;
    position: absolute;
    /* top: -22px; */
    left: 40%;
    z-index: 100; }
  .booklink-box a, .kaerebalink-box a {
    text-decoration: none;
    color: #91aa86; }
  .booklink-box a:hover, .kaerebalink-box a:hover {
    text-decoration: none;
    color: #7d9b70; }
  .booklink-image, .kaerebalink-image {
    margin: 0 15px 0 0; }
  .booklink-image img, .kaerebalink-image img {
    margin: 0 2em 0 0;
    text-align: center;
    float: left;
    max-width: 200px;
    max-height: 200px; }
  .booklink-info, .kaerebalink-info {
    text-align: center;
    line-height: 120%;
    overflow: hidden; }
  .booklink-name, .kaerebalink-name {
    font-size: 1.3em;
    margin-top: 0;
    margin-bottom: 1.2em;
    line-height: 1.2em;
    text-align: left; }
  .booklink-name a, .kaerebalink-name a {
    font-weight: bold; }
  .booklink-powered-date, .kaerebalink-powered-date {
    font-size: 8pt;
    margin-top: 10px;
    font-family: verdana;
    line-height: 120%; }
  .booklink-powered-date, .kaerebalink-detail {
    margin-bottom: 15px; }
  .booklink-link2, .kaerebalink-link1 {
    margin-top: 20px; }
  .shoplinkamazon, .shoplinkrakuten, .shoplinkkindle, .shoplinkyahoo, .shoplinkkakakucom, .shoplinkseven, .shoplinkrakukobo, .shoplinktoshokan {
    width: 90%;
    background: #c9dac7;
    border: #c9dac7 1px solid;
    -webkit-box-shadow: 0 0 0 1px #fff6e2 inset;
    box-shadow: 0 0 0 1px #fff6e2 inset;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    border-radius: 6px;
    display: inline-block;
    cursor: pointer;
    margin: 0 auto 5px auto;
    padding: 10px 2px;
    text-align: center; }
  .shoplinkamazon:hover, .shoplinkrakuten:hover, .shoplinkkindle:hover, .shoplinkyahoo:hover, .shoplinkkakakucom:hover, .shoplinkseven:hover, .shoplinkrakukobo:hover, .shoplinktoshokan:hover {
    background: #f7c393;
    border: #f7c393 1px solid;
    -webkit-box-shadow: 0 0 0 1px #fff6e2 inset;
    box-shadow: 0 0 0 1px #fff6e2 inset; }
  .shoplinkamazon:active, .shoplinkrakuten:active, .shoplinkkindle:active, .shoplinkyahoo:active .shoplinkkakakucom:active, .shoplinkrakukobo:active, .shoplinktoshokan:active {
    position: relative;
    top: 1px; }
  .shoplinkamazon a, .shoplinkrakuten a, .shoplinkyahoo a, .shoplinkkindle a, .shoplinkkakakucom a, .shoplinkseven a, .shoplinkrakukobo a, .shoplinktoshokan a {
    text-decoration: none;
    font-weight: 800;
    font-size: 12px; }
  .shoplinkyahoo img {
    display: none; }
  .booklink-footer {
    clear: left; } }

/* gallery */
[id^="gallery-"] img,
[id*=" gallery-"] img {
  border: none !important; }

/*----- category -----*/
.cat-item .children .cat-item {
  padding-left: 0.5rem; }

.cat-item .children .cat-item:before {
  content: "- "; }

/*----- mailmagazine form -----*/
#mailmagazine {
  clear: both;
  border: 1px solid #000;
  padding: 20px;
  margin: 20px 0; }

#mailmagazine .col2 {
  width: 30%;
  margin-right: 10px;
  font-size: 0.8rem;
  padding: 10px; }

#mailmagazine .col1 {
  width: 70%;
  font-size: 0.8rem;
  padding: 10px; }

/* toc
-----------------------------------------------------*/
#toc_container a {
  font-size: 0.85rem; }

/* ----------------------------------
comment
------------------------------------- */
.entry .commentMessage,
.entry .commentInput {
  margin-bottom: 15px; }

.commentMessage label,
.commentInput label {
  font-size: 0.85rem;
  font-weight: bold; }

.commentMessage textarea {
  width: 100%;
  height: 100px; }

.commentInput input {
  width: 100%; }

.form-submit {
  margin: auto; }

/* 03 : sidebar
-----------------------------------------------------*/
#sidebar div {
  margin-bottom: 2em;
  font-size: 0.8rem; }

#sidebar section {
  margin-top: 0;
  padding-top: 0; }

#sidebar div:after {
  content: " ";
  display: block;
  clear: both; }

#sidebar h3 {
  margin: 1em 0;
  padding-bottom: 0.4em;
  border-bottom: 2px solid #000;
  font-weight: bold;
  color: #000;
  clear: both; }

#sidebar h3:first-child {
  margin-top: 0; }

/*----- 検索枠 -----*/
#sidebar div .screen-reader-text {
  display: none; }

#sidebar div #searchform {
  margin-bottom: 2em; }

#sidebar div #s {
  color: #473e3a;
  padding: 4px 8px;
  border: 1px solid #ccc;
  border-radius: 4px 0 0 4px;
  float: left;
  width: 70%; }

#sidebar input.col2 {
  color: #473e3a;
  padding: 4px 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-left: 5px;
  width: 35%; }

#sidebar input.col1 {
  color: #473e3a;
  padding: 4px 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-left: 5px;
  width: 70%; }

#sidebar input.submit {
  background-color: #000;
  color: #fff;
  border: none;
  margin-top: 10px;
  padding: 4px 16px;
  border-radius: 4px; }

#sidebar div #searchsubmit {
  border-radius: 0 4px 4px 0;
  background-color: #000;
  color: #fff;
  border: none;
  padding: 4px 16px;
  float: left; }

/*----- what's new -----*/
#sidebar dl:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

#sidebar dl {
  zoom: 1; }

#sidebar #news {
  margin: 25px 0;
  background: #fff9e9; }

#sidebar #news h3 {
  border: none;
  padding-bottom: 0;
  margin-bottom: 0; }

#sidebar #news dl.list {
  padding: 10px 12px 15px 12px;
  font-size: 92%; }

#sidebar div.child-page-box,
#sidebar div.child-page-box-title,
#sidebar div.child-page-excerpt {
  max-width: 100%;
  margin-bottom: 0; }

#sidebar div.child-page-box {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #555; }

#sidebar div.child-page-box:first-child {
  padding-top: 10px;
  border-top: 1px dotted #555; }

#sidebar .child-page-box img {
  max-width: 100px;
  border-radius: 5px;
  margin-bottom: 0; }

/*----- 日付+タイトルをリスト表示するとき -----*/
#sidebar dl.list:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

#sidebar dl.list {
  zoom: 1; }

#sidebar dl.list dt {
  float: left;
  clear: left;
  width: 28%;
  margin-right: 2%;
  line-height: 170%;
  font-size: 0.8rem; }

#sidebar dl.list dd {
  float: left;
  width: 70%;
  line-height: 170%; }

/*----- Profile -----*/
#sidebar .profile {
  border: 1px solid #efefef;
  padding: 1em;
  margin-bottom: 20px;
  clear: both; }

#sidebar .profile .sholder {
  display: block;
  font-size: 0.8rem;
  line-height: 140%;
  margin-bottom: 5px; }

#sidebar .profile strong {
  font-weight: bold;
  font-size: 1rem; }

#sidebar .profile p {
  clear: both;
  font-size: 0.8rem; }

#sidebar #profileIcon {
  margin-bottom: 0; }

#sidebar #profileIcon img {
  border-radius: 50%; }

/*----- calendar -----*/
#sidebar #calendar_wrap table {
  width: 100%; }

#calendar_wrap table th,
#calendar_wrap table td {
  padding: 5px;
  text-align: center; }

.tagcloud a {
  display: inline-block;
  padding: 6px 10px;
  border: 1px solid #000;
  border-radius: 2px;
  margin-right: 6px;
  margin-bottom: 6px;
  line-height: 100%;
  font-size: 0.7rem !important; }

@media screen and (min-width: 920px) {
  #sidebar {
    float: right;
    width: 300px; }
  #sidebar.oneColumn {
    display: none; } }

/* color
-----------------------------------------------------*/
/*----- link color -----*/
a {
  color: #2380b2;
  text-decoration: none; }

a:hover {
  text-decoration: underline;
  color: #999; }

a.noLine {
  text-decoration: none;
  color: #2380b2; }

a:hover.noLine {
  text-decoration: underline; }

@media screen and (min-width: 768px) {
  .container.oneColumn,
  .oneColumn .container {
    width: 1080px; } }

.container:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

#contents.oneColumn,
.oneColumn #contents {
  width: 100%;
  margin: 0 auto;
  float: none; }

#contents {
  margin: 0px;
  width: 100%; }
  @media screen and (min-width: 768px) {
    #contents {
      width: 700px;
      float: left; } }

#sidebar {
  float: none;
  margin: auto; }

.container {
  width: 90%;
  float: none;
  margin: auto; }
  @media screen and (min-width: 768px) {
    .container {
      width: 1080px;
      margin: 0 auto;
      position: relative; } }

footer .container {
  width: auto; }
  @media screen and (min-width: 768px) {
    footer .container {
      width: 1080px;
      margin: 0 auto;
      position: relative; } }

.container-fluid {
  width: 100%; }

@media screen and (min-width: 768px) {
  section,
  section.container {
    padding: 40px 0; } }

@media screen and (min-width: 768px) {
  .wrap {
    max-width: 1040px; } }

/*----- #sidebar -----*/
#sidebar {
  padding: 3%; }
  @media screen and (min-width: 768px) {
    #sidebar {
      width: 320px;
      float: right;
      padding: 0; } }

@media screen and (min-width: 768px) {
  #sidebar div {
    width: auto; } }

#sidebar div img {
  max-width: 100%; }

/*DEFAULT ROW STYLES
Set bottom padding according to preference */
.row {
  padding-bottom: 0em; }

/* DEFAULT COLUMN STYLES */
.col {
  display: block;
  float: left;
  width: 100%; }

.narrow {
  width: 80%;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    .narrow {
      width: 700px;
      margin: 40px auto; } }

/*SELF CLEARING FLOATS - cf METHOD */
.container:after,
.wrap:after,
.row:after,
.col:after,
.clr:after,
.group:after {
  content: "";
  display: table;
  clear: both; }

#breadcrumbs {
  margin: 0 auto;
  width: 90%;
  font-size: 0.7rem;
  clear: both; }
  @media screen and (min-width: 768px) {
    #breadcrumbs {
      text-align: right; } }

#breadcrumbs li {
  display: inline-block; }

@media screen and (min-width: 768px) {
  section {
    padding: 0; } }

section.container-fluid {
  padding-top: 40px; }

section.author,
section.entry-header {
  padding: 0; }

section p {
  line-height: 180%;
  margin-bottom: 1em; }

section.narrow p {
  font-size: 16px;
  margin-bottom: 2em;
  line-height: 200%;
  padding: 0 1em; }

section .caption {
  width: 100%;
  text-align: center;
  padding-bottom: 1em;
  font-size: 85%; }

section.narrow p {
  font-size: 16px;
  margin-bottom: 2em;
  line-height: 200%;
  padding: 0 1em; }
  @media screen and (min-width: 768px) {
    section.narrow p {
      padding: 0em; } }

section .caption {
  width: 100%;
  text-align: center;
  padding-bottom: 1em;
  font-size: 85%; }
  @media screen and (min-width: 768px) {
    section .caption {
      width: 360px;
      float: right;
      text-align: center;
      margin-left: 2em; } }

/* 関連記事
-----------------------------------------------------*/
@media screen and (min-width: 768px) {
  .entry .relation {
    margin-bottom: 20px; } }

.entry .relation h3 {
  margin-top: 0; }

.entry .relation ul {
  clear: both;
  width: 100%;
  float: none;
  padding: 0;
  margin: auto;
  border: none;
  background-color: transparent; }
  @media screen and (min-width: 768px) {
    .entry .relation ul {
      display: block; } }

.entry .relation ul li {
  margin-left: 0;
  line-height: 1.4;
  min-height: 100px; }
  @media screen and (min-width: 768px) {
    .entry .relation ul li {
      float: left;
      width: 20%; } }

.entry .relation ul li a {
  font-size: 0.8rem; }

.entry .relation ul li:before {
  content: '';
  display: none; }

@media screen and (min-width: 768px) {
  .entry .relation ul li:nth-child(4n) {
    margin-right: 0px; } }

.entry .relation ul li a img {
  max-width: 90px;
  height: auto;
  float: left;
  margin-right: 10px;
  display: block; }
  @media screen and (min-width: 768px) {
    .entry .relation ul li a img {
      max-width: 100%;
      margin-bottom: 10px;
      margin-right: 0;
      float: none; } }

/* 見出し
------------------------------ */
h1, h2 {
  clear: both; }

/*----- entry -----*/
/* hx */
.entry h1 {
  font-size: 1.5rem;
  text-align: left;
  color: #000;
  margin: 0 0 15px 0;
  line-height: 120%; }

.entry h1.tac {
  text-align: center;
  margin-bottom: 40px; }

.entry h1 a, .entry h2 a {
  color: #000;
  text-decoration: none; }

/* 左にラインがつく */
.entry h2.ll {
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
  color: #000;
  padding: 0 10px;
  margin: 2.5em 0 15px 0;
  line-height: 120%;
  border-left: 2px solid #000;
  border-bottom: none;
  border-top: none; }

.entry h2 {
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 120%;
  border-bottom: 1px solid #000;
  border-top: 1px solid #000;
  border-left: 0;
  color: #000;
  margin: 2.5em 0 15px;
  padding: 15px 0;
  text-align: left; }

.entry h3 {
  clear: both;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.2rem;
  margin-top: 2em;
  margin-bottom: 1em; }

.entry h3:before {
  content: "■ "; }

.entry h4 {
  font-weight: bold;
  font-size: 1rem;
  margin-top: 1.5em; }

.post-entry .gutters h3 {
  text-align: center;
  font-size: 0.8rem;
  margin-top: 1em; }

/* 下層
-----------------------------------------------------*/
section.container-fluid.title {
  padding-top: 0; }

/* タイトルの帯 */
.title {
  background-color: #aaa;
  text-align: center;
  min-height: 80px;
  padding-top: 0;
  margin-bottom: 20px;
  display: table;
  color: #fff; }
  .title a, .title a:hover, .title a:visited {
    color: #fff;
    text-decoration: none; }
  .title h1, .title h2, .title div {
    color: #fff;
    font-size: 1.6rem;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-family: serif; }
    .title h1 span, .title h2 span, .title div span {
      font-size: 0.8rem;
      display: block;
      text-align: center; }

/* 下線付き センタリング見出し */
.title02 {
  text-align: center;
  font-size: 1.7rem;
  margin-bottom: 40px; }
  .title02:after {
    content: "";
    height: 1px;
    width: 100px;
    display: block;
    background-color: #000;
    margin: 10px auto 0px auto; }

/*----- under -----*/
.under #contents h1 {
  font-size: 1.5rem;
  padding-bottom: 10px;
  margin-top: 0;
  font-weight: bold;
  line-height: 130%;
  vertical-align: middle; }

.under .archiveTitle {
  padding: 0 10px 10px 10px;
  margin-bottom: 10px; }
  @media screen and (min-width: 768px) {
    .under .archiveTitle {
      margin-bottom: 40px;
      padding-bottom: 20px;
      border-bottom: 1px solid #000; } }

.under #contents.oneColumn h1 {
  text-align: center; }

#contents h2 p {
  font-size: 0.8rem;
  margin-bottom: 25px; }

.under #contents.oneColumn h2 {
  border-bottom: none;
  border-left: none;
  text-align: center;
  border-top: none;
  font-size: 1.6rem;
  margin-top: 0; }

.under #contents h2 {
  margin-top: 3em;
  margin-bottom: 2em;
  border-bottom: 1px solid #000;
  padding-left: 3%;
  font-size: 1.2rem; }
  @media screen and (min-width: 768px) {
    .under #contents h2 {
      padding-left: 0;
      font-size: 1.2rem; } }

.under #contents h2 p {
  font-size: 14px;
  margin-top: 5px;
  margin-bottom: 15px;
  line-height: 140%;
  font-size: 12px; }

.under #contents h3 {
  font-size: 1.1rem; }

/*----- section -----*/
section h3 {
  font-size: 2rem;
  margin-bottom: 20px; }

section h3.tit_service {
  font-size: 1.2rem;
  margin-bottom: 10px;
  text-align: center; }
  @media screen and (min-width: 768px) {
    section h3.tit_service {
      font-size: 1rem;
      margin-bottom: 20px;
      text-align: left; } }

section h3 span.fszm {
  font-size: 15px;
  display: inline; }

h1.tac span {
  display: block;
  text-align: center;
  font-size: 12px;
  font-weight: 100; }

section h3 span {
  display: block;
  font-size: 12px;
  font-weight: 100; }

section img {
  max-width: 100%;
  height: auto; }

/* table */
.scroll {
  overflow: auto;
  white-space: nowrap; }

.scroll::-webkit-scrollbar {
  height: 5px; }

.scroll::-webkit-scrollbar-track {
  background: #F1F1F1; }

.scroll::-webkit-scrollbar-thumb {
  background: #BCBCBC; }

table.white th {
  color: #fff; }

#home table.white th {
  font-size: 149%;
  margin-top: 5px;
  margin-bottom: 0;
  display: block;
  text-align: center;
  color: #1b5b22; }

table {
  width: 100%; }

/* profile */
.profileBox {
  text-align: center; }
  @media screen and (min-width: 768px) {
    .profileBox {
      float: right;
      margin-left: 40px;
      width: 360px; } }
  .profileBox img {
    margin-bottom: 1em;
    width: 60%; }
    @media screen and (min-width: 768px) {
      .profileBox img {
        width: 100%; } }

.profileDetail .name {
  display: block;
  font-size: 1.2rem;
  margin-bottom: 20px; }

.profileDetail .sholder {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 4px; }

.profileDetail p {
  margin-bottom: 0;
  font-size: 0.9rem;
  line-height: 200%; }

/* ----------------------------------
一覧表示
------------------------------------- */
/* category */
.oneColumn .lead,
.narrow .lead {
  font-size: 80%;
  margin-top: 40px;
  margin-bottom: 40px;
  color: #444;
  text-align: center; }

.oneColumn.lead p {
  margin-bottom: 0;
  text-align: center; }

/* 01 : header
-----------------------------------------------------*/
header {
  position: relative; }

.drawer-nav ul li {
  text-align: left;
  padding: 10px 20px; }
  .drawer-nav ul li a span {
    text-align: left; }

header nav#headerCv {
  display: none; }

@media screen and (min-width: 768px) {
  header nav#headerCv {
    display: block;
    position: relative; }
    header nav#headerCv .headerCv {
      position: absolute;
      left: 24px;
      top: 14px; }
      header nav#headerCv .headerCv li a {
        display: inline-block;
        background-color: #d56b80;
        color: #fff;
        font-weight: bold;
        font-size: 0.9rem;
        text-align: center;
        padding: 8px 16px; }
        header nav#headerCv .headerCv li a:hover {
          background-color: #EB8F9D;
          text-decoration: none; } }

/*----- front-page -----*/
header p {
  font-size: 0.8rem;
  margin: 10px 50px;
  line-height: 1.6;
  text-align: center; }

#logo {
  text-align: center;
  margin: 0px 20px; }
  #logo a {
    vertical-align: bottom;
    color: #111;
    font-size: 1.3rem;
    font-family: serif; }
    #logo a:hover {
      text-decoration: none; }
    #logo a img {
      max-width: 120px;
      margin: 20px auto; }
      @media screen and (min-width: 768px) {
        #logo a img {
          vertical-align: bottom;
          max-width: 240px;
          height: auto;
          margin: 40px auto; } }
    @media screen and (min-width: 768px) {
      #logo a {
        margin-bottom: 40px; } }

#nav #logo {
  margin: auto; }

/*=====================================================
 mv
=====================================================*/
/* front-page
-----------------------------------------------------*/
#mv img {
  width: 100%;
  height: auto; }

#mv.trim {
  height: 180px;
  margin: 0 auto 40px 0;
  overflow: hidden; }
  #mv.trim img {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    z-index: 1; }
    @media screen and (min-width: 768px) {
      #mv.trim img {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        /* Safari用 */
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 10; } }
  #mv.trim h1 {
    text-align: center;
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    /* Safari用 */
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 10;
    width: 100%;
    font-size: 1.6rem; }
  @media screen and (min-width: 768px) {
    #mv.trim {
      height: 400px; } }

/* 強制トリミング
-----------------------------------------------------*/
.trim {
  overflow: hidden;
  position: relative;
  margin-bottom: 10px;
  background-size: contain; }
  .trim img {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    z-index: 1; }
    @media screen and (min-width: 768px) {
      .trim img {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        /* Safari用 */
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 10; } }
  @media screen and (min-width: 768px) {
    .trim {
      margin-bottom: 40px; } }

/* single & page
-----------------------------------------------------*/
/*=====================================================
 footer
=====================================================*/
.pagetop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 2; }
  @media screen and (min-width: 768px) {
    .pagetop {
      position: absolute;
      right: 0;
      top: -90px; } }

.pagetop span {
  display: inline-block;
  width: 50px;
  height: 50px;
  padding-top: 12px;
  vertical-align: middle;
  line-height: 120%;
  background-color: #000;
  color: #fff;
  font-size: 12px;
  text-align: center; }

/*----------*/
footer {
  background: #fff;
  border-top: #999 1px dotted;
  margin: 25px 0 0 0;
  padding-top: 25px;
  clear: both;
  width: 100%;
  font-size: 0.8rem;
  position: relative; }
  footer a {
    color: #444; }
  footer .copyright {
    text-align: center;
    font-size: 10px;
    clear: both;
    padding: 16px 0 0 0;
    width: 90%;
    margin: auto; }
  footer .description {
    text-align: center;
    clear: both;
    padding: 2em 0 0 0;
    width: 90%;
    margin: auto; }
  @media screen and (min-width: 768px) {
    footer {
      margin: 64px 0 0 0;
      padding: 40px 0;
      clear: both;
      width: 100%; } }

footer dt label {
  text-decoration: none; }

footer #footermenu {
  clear: both;
  margin-top: 2em;
  padding-top: 8px;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  display: table;
  width: 100%; }
  footer #footermenu:after {
    content: " ";
    height: 10px;
    width: 100%; }

footer #footermenu ul li {
  display: table-cell;
  text-align: center !important; }
  footer #footermenu ul li:after {
    content: " "; }

footer .container div.widget {
  margin: 0 auto 25px auto;
  width: 90%;
  padding-bottom: 25px;
  border-bottom: 1px solid #efefef;
  overflow: hidden; }
  @media screen and (min-width: 768px) {
    footer .container div.widget {
      margin: 0;
      padding-bottom: 0;
      border-bottom: none;
      width: 33%;
      float: left; } }

footer .container div.widget .textwidget {
  padding-right: 10%; }

/**/
footer .container .widget h3 {
  font-size: 0.85rem;
  font-weight: bold;
  margin-bottom: 1em; }

/* 04 : contents
-----------------------------------------------------*/
/* ----------------------------------
記事周り
------------------------------------- */
/* category list box*/
.catlist {
  margin: 0 10px 30px 10px; }
  @media screen and (min-width: 768px) {
    .catlist {
      margin: 0 auto 40px auto;
      max-width: 1160px; } }
  .catlist .cat-item {
    padding: 2px 10px;
    border: 1px solid #000;
    border-radius: 4px;
    margin-right: 8px;
    margin-bottom: 8px; }

#contents .category-description,
#contents .tag-description {
  margin-top: 20px;
  margin-bottom: 10px; }

#contents .tag-description p,
.category-description p {
  margin-bottom: 1em;
  text-align: center; }

/*----- card - sidebar -----*/
/* list */
ul.list li:after {
  content: " ";
  display: block;
  clear: both; }

ul.list li {
  padding-bottom: 20px; }

ul.list li h4 {
  line-height: 140%; }

figure.eyecatch {
  padding: 0;
  margin: 0; }

.entry .meta .date,
.entry .meta .tag,
.entry .entry-footer .update,
.entry .entry-footer .categories,
.entry .entry-footer .tags {
  margin-right: 16px;
  font-size: 0.75rem; }

/*
card3
------------------ */
.card3 {
  border: 1px solid #efefef; }
  .card3 a {
    color: #444; }
  .card3 h3 {
    margin-left: 25px;
    margin-right: 25px;
    font-size: 1rem;
    line-height: 150%; }
  .card3 .eyecatch img {
    max-width: 100%;
    height: auto; }
  .card3 .entry-footer {
    margin: 20px 25px 15px 25px;
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 0.7rem; }
  .card3 p {
    margin: 0 25px 25px 25px;
    font-size: 0.8rem; }

.card3, .categorybox {
  margin-bottom: 20px;
  padding-bottom: 40px;
  background-color: #fff;
  position: relative; }
  .card3 a, .categorybox a {
    color: #444; }

@media screen and (min-width: 768px) {
  /* card3 categorybox */
  .card3, .categorybox {
    width: 32%;
    float: left;
    margin-right: 2%;
    margin-bottom: 40px;
    padding-bottom: 40px;
    background-color: #fff;
    position: relative; }
  /* card3 */
  .card3 .eyecatch img {
    max-width: 100%;
    width: 100%;
    height: auto; }
  .card3:nth-child(3n),
  .categorybox:nth-child(3n) {
    margin-right: 0; } }

/*
list-thumb
------------------ */
.list-thumb:after {
  content: "";
  display: block;
  clear: both; }

.list-thumb {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #efefef; }

.list-thumb .eyecatch img {
  max-width: 120px;
  height: auto;
  float: left;
  margin-right: 20px; }
  @media screen and (min-width: 768px) {
    .list-thumb .eyecatch img {
      max-width: 220px; } }

section .list-thumb h3 {
  margin-bottom: 0;
  line-height: 140%;
  font-size: 0.95rem; }
  @media screen and (min-width: 768px) {
    section .list-thumb h3 {
      font-size: 1.2rem;
      line-height: 150%; } }

section .list-thumb p {
  font-size: 0.85rem;
  line-height: 1.5;
  margin-top: 10px;
  margin-bottom: 10px; }

.list-thumb .entry-footer {
  font-size: 0.7rem; }
  @media screen and (min-width: 768px) {
    .list-thumb .entry-footer {
      font-size: 0.8rem; } }

/* category box */
.categorybox {
  padding: 20px;
  padding-bottom: 30px;
  margin-bottom: 40px;
  position: relative;
  font-size: 0.9rem; }

.categorybox h3 {
  margin-bottom: 20px;
  font-size: 1rem; }

.categorybox h4 {
  font-size: 0.85rem; }

.categorybox .eyecatch {
  width: 80px;
  height: 80px;
  float: left;
  margin-right: 20px; }

.categorybox .eyecatch img {
  max-width: 100%;
  height: auto; }

.categorybox .meta {
  font-size: 0.7rem;
  display: block;
  margin-top: 5px; }

.categorybox .gocategory {
  position: absolute;
  bottom: 20px;
  right: 20px;
  font-size: 0.9rem; }

/* 05 : entry
-----------------------------------------------------*/
.entry {
  color: #444;
  margin-bottom: 40px;
  padding: 0;
  position: relative; }
  @media screen and (min-width: 768px) {
    .entry {
      background: transparent; } }

.entry:before {
  content: "";
  height: 14px;
  width: 100%;
  position: absolute;
  top: -14px;
  left: 0; }

.entry p {
  line-height: 180%;
  font-size: 1rem;
  margin: 0 0 2em 0;
  color: #444; }

.entry p iframe {
  margin-top: 1em; }

.entry img {
  max-width: 100%;
  height: auto;
  float: none;
  margin: 0;
  padding: 0; }
  @media screen and (min-width: 768px) {
    .entry img {
      max-width: auto;
      height: auto; } }

/*----- child-page -----*/
.child-page-box {
  width: 94%;
  margin: 0 auto 1em auto; }
  @media screen and (min-width: 768px) {
    .child-page-box {
      width: 32%;
      margin-right: 1.5%;
      margin-bottom: 0;
      float: left; } }

.child-page-box img {
  max-width: 100%; }

.child-page-box-title {
  text-align: center;
  font-weight: bold; }

@media screen and (min-width: 768px) {
  .child-page-box:nth-child(3n+1) {
    margin-right: 0; } }

/*----- table -----*/
table {
  margin: 1em auto;
  font-size: 1rem;
  width: 100%;
  border-top: 1px solid #efefef;
  border-left: 1px solid #efefef; }

table td, table th {
  text-align: left;
  padding: 15px 10px;
  border-bottom: 1px solid #efefef;
  border-right: 1px solid #efefef; }

table tr td.style1, table tr th.style1 {
  vertical-align: top;
  background: #fff; }

table th {
  background-color: #efefef; }

/*----- meta -----*/
.entry-header {
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-top: 1px dotted #ccc;
  border-bottom: 1px dotted #ccc;
  font-size: 0.8rem; }

.entry .entry-header .meta {
  padding-top: 10px;
  float: right;
  width: 49%;
  padding-left: 1%; }

.entry .entry-header .author {
  float: left;
  width: 49%;
  padding-top: 10px;
  padding-right: 1%;
  border-right: 1px dotted #ccc; }

.entry .entry-header .alignleft {
  float: left; }

.entry .entry-header .author a {
  color: #000; }

.entry .entry-header .author strong {
  background: none; }

.entry .meta {
  font-size: 0.8rem; }
  @media screen and (min-width: 768px) {
    .entry .meta {
      text-align: left;
      margin-bottom: 10px;
      margin-right: 0; } }

.entry .entry-header .meta .tags {
  display: block;
  margin-top: 15px; }

p.meta span.date, p.meta span.edit, p.meta span.author, p.meta span.tag, p.meta span.tags, p.meta span.categories, p.meta span.update {
  font-size: 0.8rem;
  line-height: 120%; }

/* comment
------------------------------*/
.commentlist li .comment-body {
  border-bottom: 1px dotted #decaaa; }

.comment-author {
  width: 70%;
  float: left;
  font-size: 0.8rem; }

.commentmetadata {
  width: 30%;
  float: right;
  text-align: right;
  font-size: 0.8rem; }

.entry .commentlist li .comment-body p {
  margin-bottom: 0;
  clear: both; }

.entry .commentlist li p {
  font-size: 0.8rem;
  line-height: 180%;
  margin-bottom: 1em !important; }

.entry .commentlist ul li {
  list-style-type: none !important; }

.reply .comment-reply-link:before {
  font-family: FontAwesome;
  position: relative;
  top: 5px;
  left: -5px;
  content: ''; }

.child,
.entry ul.child {
  margin-bottom: 1em; }

.child li,
.entry ul.child li {
  margin-left: 0em;
  display: inline-block;
  padding: 3px 8px;
  border-radius: 4px;
  border: 2px solid #fafafa;
  font-size: 0.8rem;
  margin-right: 3px; }

.child li a,
.entry ul.child li a {
  color: #666; }

.child li:before,
.entry ul.child li:before {
  position: relative;
  padding: 0;
  font-size: 100%;
  content: ''; }

.child li:hover,
.entry ul.child li:hover {
  background-color: #2380b2; }

.child li:hover a,
.entry ul.child li:hover a {
  color: #fff;
  text-decoration: none; }

/* entry Single After*/
.after {
  clear: both;
  margin-bottom: 40px; }

.after .textwidget {
  text-align: center; }

/*----- eyecatch -----*/
.entry img.attachment-mainvisual {
  max-width: 100%;
  width: 100%;
  height: 100%;
  margin-bottom: 10px; }

/* 著者 */
.profile {
  border: 1px solid #efefef;
  padding: 1em;
  font-size: 85%;
  margin-top: 2em;
  margin-bottom: 20px;
  clear: both; }

.entry .sholder {
  font-size: 85%;
  font-weight: bold;
  color: #999; }

.entry h1 .sholder {
  display: block;
  font-size: 50%;
  font-weight: bold;
  color: #777; }

.entry #profileIcon img {
  padding: 0;
  margin-bottom: 0;
  border-radius: 50%;
  margin-right: 15px; }

.entry #profileIcon {
  margin-bottom: 0; }

.entry .furigana {
  color: #888;
  font-size: 77%;
  margin-left: 1em; }

.entry .furigana:before {
  content: "("; }

.entry .furigana:after {
  content: ")"; }

.entry .profile h3 {
  margin-top: 0;
  font-size: 18px;
  background: none;
  padding-left: 0;
  line-height: 100%; }

.entry .profile p {
  margin-bottom: 0;
  font-size: 0.8rem; }

.entry .profile ul li:before {
  content: ""; }

.entry .profile .sholder {
  display: block; }

.entry .profile .sns {
  clear: both;
  padding-top: 1em;
  margin-bottom: 0;
  padding-bottom: 0; }

/*----- social button -----*/
.entry .social,
.profile .social,
.profileBox .social {
  clear: both;
  display: table;
  margin: 0;
  padding: 0;
  background-color: transparent; }

#sidebar .social,
.profileBox .social,
.profileDetail .social {
  padding-top: 1em; }

.entry .social li,
.profile .social li,
.profileBox .social li,
.profileDetail .social li {
  display: table-cell;
  vertical-align: middle; }

.entry .social li:before,
.profileBox .social li:before,
.profileDetail .social li:before {
  content: ""; }

.entry .social li i.fa-stack-2x,
#sidebar .social li i.fa-stack-2x,
.profileBox .social li i.fa-stack-2x,
.profileDetail .social li i.fa-stack-2x {
  color: #f1c2ba; }

.entry .social li i.fa-stack-1x,
#sidebar .social li i.fa-stack-1x {
  color: #fff9e9; }

.entry .social li.twitter,
.profile .social li.twitter,
.profileBox .social li.twitter,
.entry .social li.facebook,
.profile .social li.facebook,
.profileBox .social li.facebook,
.entry .social li.homepage,
.profile .social li.homepage,
.profileBox .social li.homepage,
.profileDetail .social li.homepage,
.profileDetail .social li.twitter,
.profileDetail .social li.facebook {
  padding-bottom: 0;
  margin: 0;
  display: table-cell;
  vertical-align: middle; }

/* share button
-----------------------------------------------------*/
.entry .share h4 {
  font-size: 120%;
  text-align: center; }

.entry .share {
  margin: 0 auto;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .entry .share {
      padding-bottom: 20px;
      font-size: 0.9rem; } }

.entry .share ul {
  list-style: none;
  display: table;
  padding: 0;
  width: 100%;
  margin-left: 0; }
  @media screen and (min-width: 768px) {
    .entry .share ul {
      margin: 0 auto;
      padding: 0;
      border: none;
      list-style: none;
      display: table; } }

.entry .share ul > li {
  display: table-cell;
  width: 16.6%; }
  @media screen and (min-width: 768px) {
    .entry .share ul > li {
      display: table-cell;
      width: 16.6%; } }

.entry .share ul li:before {
  content: "";
  line-height: 100%;
  margin: 0; }

.entry .share ul li:last-child {
  padding-right: 0; }

.entry .share ul li a {
  font-size: 80%;
  position: relative;
  display: block;
  padding: 3px;
  color: #fff;
  text-align: center;
  text-decoration: none; }
  @media screen and (min-width: 768px) {
    .entry .share ul li a {
      font-size: 80%;
      position: relative;
      display: block;
      padding: 3px;
      color: #fff;
      text-align: center;
      text-decoration: none; } }

/*----- hover -----*/
.entry .share li a:hover {
  -webkit-transform: translate3d(0px, 2px, 1px);
  -moz-transform: translate3d(0px, 2px, 1px);
  transform: translate3d(0px, 2px, 1px);
  -webkit-box-shadow: none;
  box-shadow: none; }

/*----- colors -----*/
/* ツイッター */
.entry .share .twitter a {
  background: #00acee; }

.entry .share .twitter a:hover {
  background: #0092ca; }

/* Facebook */
.entry .share .facebook a {
  background: #3b5998; }

.entry .share .facebook a:hover {
  background: #2c4373; }

/* グーグル */
.entry .share .googleplus a {
  background: #db4a39; }

.entry .share .googleplus a:hover {
  background: #ad3a2d; }

/* はてぶ */
.entry .share .hatebu a {
  background: #5d8ac1; }

.entry .share .hatebu a:hover {
  background: #43638b; }

/* LINE */
.entry .share .line a {
  background: #25af00; }

.entry .share .line a:hover {
  background: #219900; }

/* Pocket */
.entry .share .pocket a {
  background: #f03e51; }

.entry .share .pocket a:hover {
  background: #c0392b; }

/* RSS */
.entry .share .rss a {
  background: #ffb53c; }

.entry .share .rss a:hover {
  background: #e09900; }

/* Feedly */
.entry .share .feedly a {
  background: #87c040; }

.entry .share .feedly a:hover {
  background: #74a436; }

/*=====================================================
 home
=====================================================*/
.page #contents h2 {
  padding-left: 0; }

#mv.trim {
  position: relative;
  margin-bottom: 0;
  padding: 0;
  line-height: 100%; }

#mv .slick-slide img {
  display: inline-block;
  vertical-align: top;
  max-width: 100%;
  width: 100%; }

#mv h1 {
  font-family: serif;
  width: 60%;
  padding-top: 15px;
  /* box-shadow: 0 0 0 2px #FFFDE0, 0 0 0 8px #0F4529; */
  /* background-color: #0F4529; */
  color: #fff;
  font-size: 1.2rem;
  line-height: 150%;
  text-align: center;
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
  /* Safari用 */
  -ms-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  z-index: 999; }
  @media screen and (min-width: 768px) {
    #mv h1 {
      width: 600px;
      padding: 35px 0;
      font-size: 1.875rem; } }

#mv h1 span {
  font-size: 0.7rem;
  line-height: 1.5;
  font-weight: normal;
  display: block;
  text-align: center;
  margin-bottom: 10px; }
  @media screen and (min-width: 768px) {
    #mv h1 span {
      margin-bottom: 20px; } }

#mv h1 span.en {
  font-size: 1rem;
  font-family: serif;
  font-weight: normal;
  margin-top: 20px;
  margin-bottom: 0; }

/* threePoints
-----------------------------------------------------*/
section#threePoints.container {
  margin-top: 0; }

section#threePoints h2 {
  margin-bottom: 20px;
  font-size: 1.8rem; }
  section#threePoints h2:after {
    display: inline; }

section#threePoints h3 {
  text-align: center;
  margin-bottom: 12px;
  margin-top: 12px;
  font-size: 20px; }
  section#threePoints h3 span {
    font-size: 0.9rem;
    text-align: center;
    color: #878AC4; }

section#threePoints p {
  padding: 0 24px;
  color: #555;
  font-size: 0.9rem;
  line-height: 2;
  margin-bottom: 0; }

section#threePoints .card3 {
  border: none; }

@media screen and (min-width: 768px) {
  #threePoints .textwidget {
    margin-bottom: 0; } }

/* freespace
-----------------------------------------------------*/
#freespace p {
  font-size: 0.85rem; }

#freespace h3,
#freespace h3 span {
  text-align: left; }

/* section
-----------------------------------------------------*/
#service h1 img {
  max-width: 100%;
  height: auto; }

/* home h2 */
section h2 {
  text-align: center;
  font-size: 1.4rem;
  line-height: 1.8;
  margin-top: 10px;
  font-weight: 100; }
  section h2 span {
    display: block;
    text-align: center;
    font-size: 12px;
    font-weight: 100;
    color: #444; }
  @media screen and (min-width: 768px) {
    section h2 {
      margin-top: 40px;
      font-size: 2rem;
      line-height: 1.8; } }

section h2:after {
  content: "";
  height: 1px;
  width: 100px;
  display: block;
  background-color: #000;
  margin: 10px auto 20px auto; }
  @media screen and (min-width: 768px) {
    section h2:after {
      margin: 10px auto 80px auto; } }

/* profile
-----------------------------------------------------*/
@media screen and (min-width: 768px) {
  .profileBox {
    float: right;
    margin-left: 40px;
    width: 360px; } }

@media screen and (min-width: 768px) {
  .profileBox img {
    width: 100%; } }

/*=====================================================
 section
=====================================================*/
section.narrow p {
  margin-bottom: 2em;
  line-height: 200%;
  padding: 0em; }

section .caption {
  text-align: center; }
  @media screen and (min-width: 768px) {
    section .caption {
      width: 360px;
      float: right;
      margin-left: 2em; } }
