@charset "UTF-8";



/*

Theme Name:STORY

Theme URI:https://tcd-theme.com/tcd041

Description: WordPress theme "STORY"  is developed for weddings and resort hotels, ideal for services that create emotional scenes. There are several design pages to convey your concept and story.

Author:TCD

Author URI:https://tcd-theme.com/

Text Domain:tcd-story

Version:1.1.0

*/

/* --------------------------------------------------------------------------------

 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）

-------------------------------------------------------------------------------- */

@font-face {

  font-family: "design_plus";

  src: url("fonts/design_plus.eot?v=1.0");

  src: url("fonts/design_plus.eot?v=1.0#iefix") format("embedded-opentype"), url("fonts/design_plus.woff?v=1.0") format("woff"), url("fonts/design_plus.ttf?v=1.0") format("truetype"), url("fonts/design_plus.svg?v=1.0#design_plus") format("svg");

  font-weight: normal;

  font-style: normal;

}



/* ----------------------------------------------------------------------



研ぎ陣師範仙臺店 CSS



unique-color

main:#d39653

sub:#d1a274

base:#ffffff

text:#352e28

---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------

 reset css

---------------------------------------------------------------------- */

/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */

/* Reset box-model and set borders */

/* ============================================ */

*, ::before, ::after {

  box-sizing: border-box;

  border-style: solid;

  border-width: 0;

}



/* Document */

/* ============================================ */

/**

 * 1. Correct the line height in all browsers.

 * 2. Prevent adjustments of font size after orientation changes in iOS.

 * 3. Remove gray overlay on links for iOS.

 */

html {

  line-height: 1.15;

  /* 1 */

  -webkit-text-size-adjust: 100%;

  /* 2 */

  -webkit-tap-highlight-color: transparent;

  /* 3*/

}



/* Sections */

/* ============================================ */

/**

 * Remove the margin in all browsers.

 */

body {

  margin: 0;

  font-size: 14px;

  letter-spacing: 0.04em;

  line-height: 2.2;

  color: #352e28;

  font-family: "Zen Old Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;

  background-image: url(/wp-content/themes/story_tcd041/img/bg.jpg?ver=1.0);

  background-size: 100% auto;

  background-position: center top;

}



/**

 * Render the `main` element consistently in IE.

 */

main {

  display: block;

}



/* Vertical rhythm */

/* ============================================ */

p, table, blockquote, address, pre, iframe, form, figure, dl {

  margin: 0;

}



/* Headings */

/* ============================================ */

h1, h2, h3, h4, h5, h6 {

  font-size: inherit;

  line-height: inherit;

  font-weight: inherit;

  margin: 0;

}



/* Lists (enumeration) */

/* ============================================ */

ul, ol {

  margin: 0;

  padding: 0;

  list-style: none;

}



/* Lists (definition) */

/* ============================================ */

dt {

  font-weight: bold;

}



dd {

  margin-left: 0;

}



/* Grouping content */

/* ============================================ */

/**

 * 1. Add the correct box sizing in Firefox.

 * 2. Show the overflow in Edge and IE.

 */

hr {

  box-sizing: content-box;

  /* 1 */

  height: 0;

  /* 1 */

  overflow: visible;

  /* 2 */

  border-top-width: 1px;

  margin: 0;

  clear: both;

  color: inherit;

}



/**

 * 1. Correct the inheritance and scaling of font size in all browsers.

 * 2. Correct the odd `em` font sizing in all browsers.

 */

pre {

  font-family: monospace, monospace;

  /* 1 */

  font-size: inherit;

  /* 2 */

}



address {

  font-style: inherit;

}



/* Text-level semantics */

/* ============================================ */

/**

 * Remove the gray background on active links in IE 10.

 */

a {

  background-color: transparent;

  text-decoration: none;

  color: inherit;

}



/**

 * 1. Remove the bottom border in Chrome 57-

 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.

 */

abbr[title] {

  text-decoration: underline;

  /* 2 */

  text-decoration: underline dotted;

  /* 2 */

}



/**

 * Add the correct font weight in Chrome, Edge, and Safari.

 */

b, strong {

  font-weight: bolder;

}



/**

 * 1. Correct the inheritance and scaling of font size in all browsers.

 * 2. Correct the odd `em` font sizing in all browsers.

 */

code, kbd, samp {

  font-family: monospace, monospace;

  /* 1 */

  font-size: inherit;

  /* 2 */

}



/**

 * Add the correct font size in all browsers.

 */

small {

  font-size: 80%;

}



/**

 * Prevent `sub` and `sup` elements from affecting the line height in

 * all browsers.

 */

sub, sup {

  font-size: 75%;

  line-height: 0;

  position: relative;

  vertical-align: baseline;

}



sub {

  bottom: -0.25em;

}



sup {

  top: -0.5em;

}



/* Embedded content */

/* ============================================ */

/**

 * Prevent vertical alignment issues.

 */

img, embed, object, iframe {

  vertical-align: bottom;

}



/* Forms */

/* ============================================ */

/**

 * Reset form fields to make them styleable

 */

button, input, optgroup, select, textarea {

  -webkit-appearance: none;

  appearance: none;

  vertical-align: middle;

  color: inherit;

  font: inherit;

  background: transparent;

  padding: 0;

  margin: 0;

  outline: 0;

  border-radius: 0;

  text-align: inherit;

}



/**

 * Reset radio and checkbox appearance to preserve their look in iOS.

 */

[type="checkbox"] {

  -webkit-appearance: checkbox;

  appearance: checkbox;

}



[type="radio"] {

  -webkit-appearance: radio;

  appearance: radio;

}



/**

 * Show the overflow in IE.

 * 1. Show the overflow in Edge.

 */

button, input {

  /* 1 */

  overflow: visible;

}



/**

 * Remove the inheritance of text transform in Edge, Firefox, and IE.

 * 1. Remove the inheritance of text transform in Firefox.

 */

button, select {

  /* 1 */

  text-transform: none;

}



/**

 * Correct the inability to style clickable types in iOS and Safari.

 */

button, [type="button"], [type="reset"], [type="submit"] {

  cursor: pointer;

  -webkit-appearance: none;

  appearance: none;

}



button[disabled], [type="button"][disabled], [type="reset"][disabled], [type="submit"][disabled] {

  cursor: default;

}



/**

 * Remove the inner border and padding in Firefox.

 */

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {

  border-style: none;

  padding: 0;

}



/**

 * Restore the focus styles unset by the previous rule.

 */

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {

  outline: 1px dotted ButtonText;

}



/**

 * Remove arrow in IE10 & IE11

 */

select::-ms-expand {

  display: none;

}



/**

 * Remove padding

 */

option {

  padding: 0;

}



/**

 * Reset to invisible

 */

fieldset {

  margin: 0;

  padding: 0;

  min-width: 0;

}



/**

 * 1. Correct the text wrapping in Edge and IE.

 * 2. Correct the color inheritance from `fieldset` elements in IE.

 * 3. Remove the padding so developers are not caught out when they zero out

 *    `fieldset` elements in all browsers.

 */

legend {

  color: inherit;

  /* 2 */

  display: table;

  /* 1 */

  max-width: 100%;

  /* 1 */

  padding: 0;

  /* 3 */

  white-space: normal;

  /* 1 */

}



/**

 * Add the correct vertical alignment in Chrome, Firefox, and Opera.

 */

progress {

  vertical-align: baseline;

}



/**

 * Remove the default vertical scrollbar in IE 10+.

 */

textarea {

  overflow: auto;

}



/**

 * Correct the cursor style of increment and decrement buttons in Chrome.

 */

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {

  height: auto;

}



/**

 * 1. Correct the outline style in Safari.

 */

[type="search"] {

  outline-offset: -2px;

  /* 1 */

}



/**

 * Remove the inner padding in Chrome and Safari on macOS.

 */

[type="search"]::-webkit-search-decoration {

  -webkit-appearance: none;

}



/**

 * 1. Correct the inability to style clickable types in iOS and Safari.

 * 2. Change font properties to `inherit` in Safari.

 */

::-webkit-file-upload-button {

  -webkit-appearance: button;

  /* 1 */

  font: inherit;

  /* 2 */

}



/**

 * Clickable labels

 */

label[for] {

  cursor: pointer;

}



/* Interactive */

/* ============================================ */

/*

 * Add the correct display in Edge, IE 10+, and Firefox.

 */

details {

  display: block;

}



/*

 * Add the correct display in all browsers.

 */

summary {

  display: list-item;

}



/*

 * Remove outline for editable content.

 */

[contenteditable] {

  outline: none;

}



/* Table */

/* ============================================ */

table {

  border-collapse: collapse;

  border-spacing: 0;

}



caption {

  text-align: left;

}



td, th {

  vertical-align: top;

  padding: 0;

}



th {

  text-align: left;

  font-weight: bold;

}



/* Misc */

/* ============================================ */

/**

 * Add the correct display in IE 10+.

 */

template {

  display: none;

}



/**

 * Add the correct display in IE 10.

 */

[hidden] {

  display: none;

}



/* END reset css */

/* clearfix */

.clearfix:after {

  content: ".";

  display: block;

  clear: both;

  height: 0;

  font-size: 0.1em;

  line-height: 0;

  visibility: hidden;

  overflow: hidden;

}



.clearfix {

  display: inline-block;

}



/* exlude MacIE5 \*/

* html .clearfix {

  height: 1%;

}



.clearfix {

  display: block;

}



/* end MacIE5 */

/* ----------------------------------------------------------------------

 基本設定

---------------------------------------------------------------------- */

body {

  -webkit-font-smoothing: antialiased;

}



a {

  color: #352e28;

  text-decoration: none;

}



a:hover {

  color: #d1a274;

}



@media only screen and (min-width: 768px) {

  a[href^='tel:'] {

    pointer-events: none;

  }



  .post-content a[href^='tel:'] {

    font-weight: 500;

    color: #352e28;

  }

}



img {

  vertical-align: bottom;

  display: block;

  width: 100%;

}



input {

  border: 0;

  margin: 0;

  padding: 0;

}



address {

  font-style: normal;

}



select {

  -moz-appearance: none;

  -webkit-appearance: none;

  appearance: none;

  background: none transparent;

  border: 0;

  border-radius: 0;

  margin: 0;

  padding: 0;

}



a, a:before, a:after, input {

  -webkit-transition-property: background-color, color;

  -webkit-transition-duration: 0.2s;

  -webkit-transition-timing-function: ease;

  -moz-transition-property: background-color, color;

  -moz-transition-duration: 0.2s;

  -moz-transition-timing-function: ease;

  -o-transition-property: background-color, color;

  -o-transition-duration: 0.2s;

  -o-transition-timing-function: ease;

  transition-property: background-color, color;

  transition-duration: 0.2s;

  transition-timing-function: ease;

}



#infscr-loading {

  color: #525252;

  font-size: 14px;

  text-align: center;

  width: 100%;

}



#infscr-loading img {

  margin-right: 8px;

  vertical-align: middle;

}



#infscr-loading div {

  display: inline;

}



.cover {

  width: 100%;

  height: auto;

}



.clear {

  clear: both;

}



.fleft {

  float: left;

}



.fright {

  float: right;

}



.flex {

  display: -webkit-box;

  display: -webkit-flex;

  display: -ms-flexbox;

  display: flex;

}



.flex-column {

  -webkit-box-orient: vertical;

  -webkit-box-direction: normal;

  -webkit-flex-direction: column;

  -ms-flex-direction: column;

  flex-direction: column;

}



.flex-wrap {

  -webkit-flex-wrap: wrap;

  -ms-flex-wrap: wrap;

  flex-wrap: wrap;

}



.flex-auto {

  -webkit-box-flex: 1;

  -webkit-flex: 1 1 auto;

  -ms-flex: 1 1 auto;

  flex: 1 1 auto;

  min-width: 0;

  min-height: 0;

}



.flex-none {

  -webkit-box-flex: 0;

  -webkit-flex: none;

  -ms-flex: none;

  flex: none;

}



.items-center {

  -webkit-box-align: center;

  -ms-flex-align: center;

  -ms-grid-row-align: center;

  align-items: center;

}



.items-stretch {

  -webkit-box-align: stretch;

  -webkit-align-items: stretch;

  -ms-flex-align: stretch;

  -ms-grid-row-align: stretch;

  align-items: stretch;

}



.self-stretch {

  -ms-flex-item-align: stretch;

  align-self: stretch;

}



.justify-between {

  -webkit-box-pack: justify;

  -ms-flex-pack: justify;

  justify-content: space-between;

}



.hide {

  display: none;

}



.inner {

  margin: 0 auto;

  width: 84%;

  max-width: 1150px;

  box-sizing: border-box;

}



.left-align {

  text-align: left;

}



.center {

  text-align: center;

}



.right-align {

  text-align: right;

}



.primary {

  width: 68.69565%;

}



.primary-full {

  width: 100%;

}



.secondary {

  width: 26.08696%;

  max-width: 300px;

}



.trim {

  overflow: hidden;

  position: relative;

  width: 100%;

  height: 400px;

}



.trim img {

  margin: auto;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 0;

  right: 0;

  width: 100%;

  height: auto;

}



@media only screen and (min-width: 1920px) {

  .inner {

    width: 76%;

  }

}



/* ローディングアイコン */

#site-wrap {

  display: none;

}



#site-loader-overlay {

  position: fixed;

  background: #ffffff;

  background: rgba(255, 255, 255, 1);

  top: 0px;

  left: 0px;

  bottom: 0px;

  right: 0px;

  z-index: 99999;

  opacity: 1;

  -webkit-transition: opacity 0.3s;

  transition: opacity 0.3s;

}



#site-loader-spinner {

  width: 60px;

  height: 60px;

  border-radius: 100%;

  margin-top: -30px;

  margin-left: -30px;

  border: 4px solid #ccc;

  border-top-color: #d39653;

  box-sizing: border-box;

  position: absolute;

  top: 50%;

  left: 50%;

  animation: loading 1.2s linear infinite;

  -webkit-animation: loading 1.2s linear infinite;

  text-indent: -9999em;

  border-width: 3px;

  border-style: solid;

  border-color: #d1a274 #d1a274 #d39653 #d1a274;

  border-image: initial;

}



@keyframes loading {

  0% {

    transform: rotate(0deg);

  }



  100% {

    transform: rotate(360deg);

  }

}



@-webkit-keyframes loading {

  0% {

    -webkit-transform: rotate(0deg);

  }



  100% {

    -webkit-transform: rotate(360deg);

  }

}



/* アイコンフォント */

.icon-arrow-right:before {

  content: "\e910";

}



/* keyframes */

@-webkit-keyframes fadeIn {

  from {

    opacity: 0;

  }



  to {

    opacity: 1;

  }

}



@keyframes fadeIn {

  from {

    opacity: 0;

  }



  to {

    opacity: 1;

  }

}



@-webkit-keyframes imageAnimation03 {

  0% {

    visibility: hidden;

    opacity: 0;

  }



  5% {

    visibility: visible;

    opacity: 0;

  }



  100% {

    opacity: 1;

  }

}



@keyframes imageAnimation03 {

  0% {

    visibility: hidden;

    opacity: 0;

  }



  5% {

    visibility: visible;

    opacity: 0;

  }



  100% {

    opacity: 1;

  }

}



/* ----------------------------------------------------------------------

 アイキャッチ画像

---------------------------------------------------------------------- */

/* ズーム */

.thumbnail01 {

  overflow: hidden;

}



.thumbnail01 img {

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;

  -webkit-transform: scale(1);

  -webkit-transition: all 0.75s ease;

  -moz-transform: scale(1);

  -moz-transition: all 0.75s ease;

  -ms-transform: scale(1);

  -ms-transition: all 0.75s ease;

  -o-transform: scale(1);

  -o-transition: all 0.75s ease;

  transform: scale(1);

  transition: all 0.75s ease;

}



/* スライド */

.thumbnail02 {

  overflow: hidden;

}



.thumbnail02 img {

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;

  -webkit-transition-property: opacity, translate3d;

  -webkit-transition: 0.5s;

  -moz-transition-property: opacity, translate3d;

  -moz-transition: 0.5s;

  -ms-transition-property: opacity, translate3d;

  -ms-transition: 0.5s;

  -o-transition-property: opacity, translate3d;

  -o-transition: 0.5s;

  transition-property: opacity, translate3d;

  transition: 0.5s;

}



.thumbnail02 img:hover, a:hover .thumbnail02 img {

  -webkit-transform: scale(1.3) translate3d(0, 0, 0);

  -moz-transform: scale(1.3) translate3d(0, 0, 0);

  -ms-transform: scale(1.3) translate3d(0, 0, 0);

  -o-transform: scale(1.3) translate3d(0, 0, 0);

  transform: scale(1.3) translate3d(0, 0, 0);

}



/* フェード */

.thumbnail03 img {

  -webkit-backface-visibility: hidden;

  backface-visibility: hidden;

  -webkit-transition-property: opacity;

  -webkit-transition: .5s;

  -moz-transition-property: opacity;

  -moz-transition: .5s;

  -ms-transition-property: opacity;

  -ms-transition: .5s;

  -o-transition-property: opacity;

  -o-transition: .5s;

  transition-property: opacity;

  transition: .5s;

}



.thumbnail03 img:hover, a:hover .thumbnail03 img {

  opacity: .5;

}



/* ----------------------------------------------------------------------

 記事一覧

---------------------------------------------------------------------- */

/* article01 */

.article01 {

  line-height: 1.8;

  margin: 0 1.875% 30px 0;

  width: 23.59375%;

}



.article01:nth-of-type(4n) {

  margin-right: 0;

}



.article01-thumbnail {

  display: block;

  margin-bottom: 16px;

  overflow: hidden;

}



.article01-thumbnail img {

  width: 100%;

  height: auto;

}



/* article02 */

.article02 {

  margin-bottom: 48px;

  width: 47.82609%;

}



.article02:nth-of-type(odd) {

  margin-right: 2.17391%;

}



.article02:nth-of-type(even) {

  margin-left: 2.17391%;

}



.article02-thumbnail {

  float: left;

  width: 29.09091%;

}



.article02-thumbnail img {

  width: 100%;

  height: auto;

}



.article02-content {

  float: right;

  font-size: 14px;

  width: 66.36364%;

}



.article02-date {

  font-weight: bold;

  display: block;

  line-height: 1.5;

  margin-bottom: .5em;

}



.article02-title {

  font-size: 16px;

  font-weight: normal;

  line-height: 1.6;

  margin-bottom: .5em;

}



.article02-text {

  line-height: 1.8;

}



/* article03 */

.article03 {

  margin: 0 10px 10px 0;

  width: calc((100% - 30px) / 4);

}



.article03:nth-of-type(4n) {

  margin-right: 0;

}



.article03>a {

  height: 100%;

  background: #fff;

  color: #352e28;

}



.article03-thumbnail {

  width: 100%;

}



.article03-thumbnail img {

  width: 100%;

  height: auto;

}



.article03-content {

  box-sizing: border-box;

  padding: 15px 20px;

}



.article03-title {

  line-height: 1.6;

  overflow: hidden;

  margin-bottom: 15px;

  transition-property: color;

  transition-duration: 0.2s;

  transition-timing-function: ease;

}



.article03-meta {

  line-height: 1;

  font-size: 0.8em;

  margin-bottom: 1em;

}



.article03-date+.article03-category:before {

  content: "|";

  padding: 0 .5em;

}



.article03-category-item {

  font-size: 12px;

  vertical-align: middle;

}



/* article04 */

.article04 {

  background: #f6f6f6;

  margin-bottom: 32px;

}



.article04-thumbnail {

  float: left;

  width: 24.34783%;

}



.article04-thumbnail img {

  width: 100%;

  height: auto;

}



.article04-content {

  box-sizing: border-box;

  float: left;

  padding: 3.47826% 4.34783%;

  width: 75.65217%;

}



.article04-date {

  display: block;

  font-size: 14px;

  margin-bottom: 1em;

}



.article04-title {

  font-size: 24px;

  line-height: 1.5;

  margin-bottom: .5em;

  transition-property: color;

  transition-duration: 0.2s;

  transition-timing-function: ease;

}



.article04-text {

  line-height: 2.4;

}



/* article05 */

.article05 {

  background: #ffffff;

  border-left: 1px solid #eee;

  border-right: 1px solid #eee;

  border-bottom: 2px solid #eee;

  box-sizing: border-box;

  transition-property: background;

  transition: 0.2s;

  width: 25%;

}



.article05:hover {

  background: #f6f6f6;

}



.article05 a {

  height: 100%;

}



.article05-thumbnail {

  width: 100%;

}



.article05-thumbnail img {

  width: 100%;

  height: auto;

}



.article05-content {

  padding: 20px 30px;

}



.article05-title {

  font-size: 16px;

  height: 54px;

  line-height: 1.7;

  margin-bottom: 5px;

}



@media only screen and (max-width: 1200px) {

  .article05-title {

    height: 81px;

  }

}



.article05-date {

  font-size: 12px;

}



.article05-date+.article05-category:before {

  content: "|";

  margin: 0 .5em;

}



.article05-category {

  font-size: 12px;

}



.article05-category-item {

  font-size: 12px;

  vertical-align: middle;

}



.article05-category-item:hover {

  text-decoration: underline;

}



/* article06 */

.article06 {

  float: left;

  position: relative;

  width: 25%;

}



.article06 a {

  display: block;

  overflow: hidden;

}



.article06 a:before {

  content: "";

  display: block;

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  transition-property: background-color;

  transition-duration: 0.4s;

  transition-timing-function: ease-in-out;

}



.article06 img {

  display: block;

  vertical-align: top;

  width: 100%;

  height: auto;

}



.article06-content {

  box-sizing: border-box;

  opacity: 0;

  padding: 0 40px;

  position: absolute;

  top: 50%;

  left: 0;

  -webkit-transition-property: opacity, transform;

  -webkit-transition: 1s;

  -moz-transition-property: opacity, transform;

  -moz-transition: 1s;

  -ms-transition-property: opacity, transform;

  -ms-transition: 1s;

  -o-transition-property: opacity, transform;

  -o-transition: 1s;

}



.article06:hover .article06-content {

  opacity: 1;

  -webkit-transform: translate(0, -50%);

  -moz-transform: translate(0, -50%);

  -ms-transform: translate(0, -50%);

  -o-transform: translate(0, -50%);

  transform: translate(0, -50%);

}



.article06-title {

  font-size: 16px;

  line-height: 1.7;

  margin-bottom: .5em;

}



.article06-date+.article06-category:before {

  content: "|";

  margin: 0 .5em;

}



.article06-category-item {

  vertical-align: top;

}



.article06-category-item:hover {

  text-decoration: underline;

}



/* article07 */

.article07 {

  border: 1px solid #ddd;

  border-top: 0;

  box-sizing: border-box;

  display: table;

  table-layout: fixed;

  width: 100%;

}



.article07:last-child {

  margin-bottom: 50px;

}



.article07 a {

  display: block;

  padding: 15px;

}



.article07-thumbnail {

  display: table-cell;

  width: 225px;

}



.article07-thumbnail img {

  width: 100%;

  height: auto;

}



.article07-content {

  display: table-cell;

  padding: 0 40px;

  text-align: left;

  vertical-align: middle;

}



.article07-meta {

  margin-bottom: .5em;

}



.article07-title {

  font-size: 14px;

  font-weight: normal;

  line-height: 2;

  transition-property: color;

  transition-duration: 0.2s;

  transition-timing-function: ease;

}



/* デザインされた記事一覧 */

.styled-post-list1 li {

  line-height: 1.4;

  margin-bottom: 30px;

  padding: 0;

}



.styled-post-list1 li:last-child {

  margin-bottom: 0;

}



.styled-post-list1-thumbnail {

  display: block;

  float: left;

  margin-right: 6.66667%;

  width: 40%;

}



.styled-post-list1-thumbnail img {

  width: 100%;

  height: auto;

}



.styled-post-list1-thumbnail~.styled-post-list1-meta {

  float: left;

  width: 53.33333%;

}



.styled-post-list1-date {

  display: block;

  font-size: 12px;

  line-height: 1;

  margin-bottom: 1em;

}



.styled-post-list1-title {

  font-size: 14px;

  line-height: 1.8;

}



/* ----------------------------------------------------------------------

 検索

---------------------------------------------------------------------- */

.search-form {

  position: relative;

  width: 100%;

}



.search-field {

  background: #eee;

  border: 1px solid #cfcfcf;

  border-right: none;

  box-shadow: 1px -1px 3px 0px #ddd inset;

  box-sizing: border-box;

  font-size: 14px;

  padding: 0 10px;

  width: calc(100% - 33px);

  height: 33px;

}



.search-submit {

  background: #222;

  color: #ffffff;

  cursor: pointer;

  font-family: "design_plus";

  overflow: hidden;

  position: absolute;

  width: 33px;

  height: 33px;

}



/* ----------------------------------------------------------------------

 広告

---------------------------------------------------------------------- */

.advertisement img {

  max-width: 100%;

  height: auto;

}



/* ----------------------------------------------------------------------

 コンテンツ

---------------------------------------------------------------------- */

/* content01 */

.content01 {

  margin: 90px 0;

}



.content01-title {

  font-size: 42px;

  line-height: 1.4;

  margin-bottom: 15px;

  text-align: center;

}



.content01-text {

  text-align: center;

}



/* content02 */

.content02 {

  width: 100%;

  position: relative;

  background: #fff;

}



#content01 {

  padding: 7vw 0 10vw;

  width: 100%;

  position: relative;

}



.front_inner-text {

  writing-mode: vertical-rl;

  -webkit-writing-mode: vertical-rl;

  -ms-writing-mode: vertical-rl;

  display: block;

  height: 55vh;

  margin: 0 auto;

  min-height: 250px;

  max-height: 350px;

}



.front_inner-img {

  width: 60%;

}



.content02-inner {

  width: 84%;

  margin: 0 auto;

}



.content02-content {

  display: block;

  width: calc(33.333333% - 1vw);

  margin-right: 1.5vw;

  background: #ffffff;

  color: #352e28;

  font-size: 0.8em;

  box-shadow: 0px 5px 10px -41px rgba(0, 0, 0, 0.035),

    0px 40px 80px -41px rgba(0, 0, 0, 0.07);

}



.content02-content:nth-of-type(3) {

  margin-right: 0;

}



.content02-item-inner {

  box-sizing: border-box;

  padding: 2.5em 3em calc(3.5em + 60px);

}



.content02-item-inner h3 {

  font-weight: 700;

  font-size: 1.3em;

  line-height: 1.6;

}



.content02-button {

  display: block;

  margin: 0 auto;

  line-height: 60px;

  border-bottom: 1px solid #ddd;

  position: absolute;

  bottom: 2.5em;

  width: calc(100% - 6em);

  color: #d39653;

}



.content02-button::before {

  width: 20px;

  height: 1px;

  position: absolute;

  content: '';

  z-index: 1;

  background: #d39653;

  left: 0;

  bottom: -1px;

  transition: 0.4s;

}



.content02-button:hover::before {

  width: 100%;

}



/* ----------------------------------------------------------------------

 セレクトボックス

---------------------------------------------------------------------- */

.select {

  position: relative;

}



.select:after {

  content: "\e90e";

  font-family: "design_plus";

  display: inline-block;

  margin: auto;

  position: absolute;

  top: -100%;

  bottom: -100%;

  right: 15px;

  width: 14px;

  height: 14px;

}



.select select {

  background: linear-gradient(#fff, #f3f3f3) !important;

  border: 1px solid #ddd;

  border-radius: 3px;

  color: #d39653;

  font-size: 14px;

  padding: 15px 17px;

  width: 100%;

}



/* ----------------------------------------------------------------------

 フェードエフェクト

---------------------------------------------------------------------- */

.fade01 {

  opacity: 0;

  -webkit-transform: translate(0, 60px);

  -webkit-transition: 1s;

  -moz-transform: translate(0, 60px);

  -moz-transition: 1s;

  -ms-transform: translate(0, 60px);

  -ms-transition: 1s;

  -o-transform: translate(0, 60px);

  -o-transition: 1s;

  transform: translate(0, 60px);

  transition: 1s;

}



.fade02 {

  opacity: 1.0;

  -webkit-transform: translate(0, 0);

  -webkit-transform: translate(0, 0);

  -moz-transform: translate(0, 0);

  -moz-transform: translate(0, 0);

  -ms-transform: translate(0, 0);

  -ms-transform: translate(0, 0);

  -o-transform: translate(0, 0);

  -o-transform: translate(0, 0);

  transform: translate(0, 0);

  transform: translate(0, 0);

}



/* ----------------------------------------------------------------------

 ページネーション

---------------------------------------------------------------------- */

/* nav-links01 */

.nav-links01 {

  border-top: 1px solid #ddd;

  border-bottom: 1px solid #ddd;

  display: table;

  font-size: 14px;

  line-height: 1.8;

  margin-bottom: 50px;

  width: 100%;

}



.nav-links01-previous, .nav-links01-next {

  display: table-cell;

  margin-left: -1px;

  vertical-align: middle;

  position: relative;

  width: 50%;

}



.nav-links01-previous a, .nav-links01-next a {

  box-sizing: border-box;

  display: block;

  height: 100%;

  position: relative;

  width: 100%;

}



.nav-links01-previous a:hover:before, .nav-links01-previous a:hover:after, .nav-links01-next a:hover:before, .nav-links01-next a:hover:after {

  color: #d39653;

}



.nav-links01-previous a {

  padding: 35px 40px 35px 60px;

}



.nav-links01-previous a:before {

  content: "\e90f";

  font-family: "design_plus";

  font-size: 18px;

  margin-top: -1em;

  position: absolute;

  top: 50%;

  left: 0;

}



.nav-links01-next a {

  padding: 35px 60px 35px 40px;

}



.nav-links01-next a:after {

  content: "\e910";

  font-family: "design_plus";

  font-size: 18px;

  margin-top: -1em;

  position: absolute;

  top: 50%;

  right: 0;

}



.nav-links01-previous+.nav-links01-next {

  border-left: 1px solid #ddd;

}



/* nav-links02 */

.nav-links02 {

  font-size: 14px;

  margin: 90px 0 100px;

  text-align: center;

}



.nav-links02-previous, .nav-links02-next {

  display: inline-block;

  line-height: 55px;

  margin: 0 7.5px;

  position: relative;

  width: 230px;

  height: 55px;

}



.nav-links02-previous a, .nav-links02-next a {

  color: #ffffff;

  display: block;

}



.nav-links02-previous a::before {

  color: #ffffff;

  content: "\e90f";

  display: inline-block;

  font-family: "design_plus";

  font-size: 18px;

  margin: auto;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 15px;

}



.nav-links02-next a::after {

  color: #ffffff;

  content: "\e910";

  font-family: "design_plus";

  font-size: 18px;

  margin: auto;

  position: absolute;

  top: 0;

  bottom: 0;

  right: 15px;

}



/* ----------------------------------------------------------------------

 アーカイブ

---------------------------------------------------------------------- */

.load-post {

  height: 50px;

  line-height: 50px;

  margin: 60px auto;

  text-align: center;

  width: 200px;

}



.load-post a {

  background: #ccc;

  color: #ffffff;

  display: block;

}



/* ----------------------------------------------------------------------

 記事

---------------------------------------------------------------------- */

.post-content {

  overflow: hidden;

  position: relative;

  display: block;

  width: 100%;

}



.content_full {

  width: 100%;

}



.content_inner {

  padding: 7vw 0;

  counter-reset: number 0;

}



.post-header {

  margin: 0 auto 2em;

}



.post-title {

  font-size: 1.8em;

  line-height: 1.6;

  font-weight: 700;

}



p.post-meta {

  line-height: 1;

  font-size: 0.8em;

  margin-top: 1em;

}



.post-date+.post-category:before {

  content: "|";

  padding: 0 .5em;

}



.post-category {

  font-size: 12px;

  vertical-align: middle;

}



.post-thumbnail {

  margin-bottom: 50px;

  text-align: center;

}



.post-thumbnail img {

  max-width: 100%;

  height: auto;

}



.post-meta-box {

  background: #f5f5f5;

  margin: 0 auto;

  padding: 25px;

}



.post-meta-box-item {

  border-right: 1px solid #ddd;

  display: inline;

  font-size: 12px;

  line-height: 1.8;

  margin-right: 10px;

  padding: 0 15px 0 20px;

  position: relative;

}



.post-meta-box-item:last-child {

  border-right: none;

}



.post-meta-box-item:before {

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

  color: #aaa;

  display: block;

  font-family: "design_plus";

  position: absolute;

  font-size: 13px;

  top: 50%;

  -webkit-transform: translateY(-50%);

  transform: translateY(-50%);

  left: 0;

}



.post-meta-box-author:before {

  content: "\e90d";

}



.post-meta-box-category:before {

  content: "\e92f";

}



.post-meta-box-tag:before {

  content: "\e935";

}



.post-meta-box-comment:before {

  content: "\e916";

  font-size: 16px;

}



.widget_recent_entries li a {

  display: block;

  line-height: 1.6;

  color: #352e28;

}



.post-meta-box-item:last-child a {

  color: #352e28;

}



/* ページリンク */

.page-links {

  font-size: 12px;

  margin-bottom: 2em;

}



.page-links a {

  background: #eee;

  display: inline-block;

  line-height: 35px;

  margin-right: 5px;

  width: 35px;

  height: 35px;

  text-align: center;

}



.page-links a:hover {

  color: #ffffff !important;

}



.page-links>span {

  color: #ffffff;

  display: inline-block;

  line-height: 35px;

  margin-right: 5px;

  text-align: center;

  width: 35px;

  height: 35px;

}



.page-links .page-links-title {

  background: transparent;

  color: #d39653;

  display: block;

  text-align: left;

  width: auto;

  height: auto;

}



/* 広告 */

#single_banner_area {

  margin: 0 0 50px;

  text-align: center;

}



#single_banner_area .single_banner_left {

  display: inline-block;

  margin: 0 10px 0 0;

}



#single_banner_area .single_banner_right {

  display: inline-block;

  margin: 0 0 0 10px;

}



#single_banner_area img {

  max-width: 100%;

  height: auto;

  display: block;

}



#single_banner_area.one_banner .single_banner_left {

  float: none;

  margin: 0 auto;

}



#single_banner_area.one_banner img {

  margin: 0 auto;

}



/* 広告（ページ下部） */

#single_banner_area_bottom {

  margin: 0 0 50px;

  text-align: center;

}



#single_banner_area_bottom .single_banner_left {

  display: inline-block;

  margin: 0 10px 0 0;

}



#single_banner_area_bottom .single_banner_right {

  display: inline-block;

  margin: 0 0 0 10px;

}



#single_banner_area_bottom img {

  max-width: 100%;

  height: auto;

  display: block;

}



#single_banner_area_bottom.one_banner .single_banner_left {

  float: none;

  margin: 0 auto;

}



#single_banner_area_bottom.one_banner img {

  margin: 0 auto;

}



/* 広告（ショートコードver） */

#single_banner_area2 {

  margin: 0 0 30px 0;

  text-align: center;

}



#single_banner_area2 .single_banner_left {

  display: inline-block;

  margin: 0 10px 0 0;

}



#single_banner_area2 .single_banner_right {

  display: inline-block;

  margin: 0 0 0 10px;

}



#single_banner_area2 img {

  max-width: 100%;

  height: auto;

  display: block;

}



#single_banner_area2.one_banner .single_banner_left {

  float: none;

  margin: 0 auto;

}



#single_banner_area2.one_banner img {

  margin: 0 auto;

}



/* ----------------------------------------------------------------------

 ニュース

---------------------------------------------------------------------- */

.archive-news {

  margin: 100px 0;

}



.archive-news .article04.active {

  -webkit-animation: fadeIn 0.65s ease forwards;

  animation: fadeIn 0.65s ease forwards;

}



.headline-news-list {

  margin-bottom: 0;

  text-align: left;

}



/* ----------------------------------------------------------------------

 ブログアーカイブ

---------------------------------------------------------------------- */

.archive-header {

  margin: 0 auto 3em;

}



.archive-title {

  font-size: 2em;

  font-weight: 700;

  line-height: 1;

}



.archive-text {

  text-align: center;

}



.article03.active {

  -webkit-animation: fadeIn 0.65s ease forwards;

  animation: fadeIn 0.65s ease forwards;

}



/* ----------------------------------------------------------------------

 トップページ

---------------------------------------------------------------------- */

@-webkit-keyframes imageAnimation01 {

  0% {

    -webkit-transform: scale(1) rotate(0.0001deg);

    transform: scale(1) rotate(0.0001deg);

  }



  100% {

    -webkit-transform: scale(1.1);

    transform: scale(1.1);

  }

}



@-webkit-keyframes imageAnimation02 {

  0% {

    -webkit-transform: scale(1.1) rotate(0.0001deg);

    transform: scale(1.1) rotate(0.0001deg);

  }



  100% {

    -webkit-transform: scale(1);

    transform: scale(1);

  }

}



@keyframes imageAnimation01 {

  0% {

    -webkit-transform: scale(1) rotate(0.0001deg);

    transform: scale(1) rotate(0.0001deg);

  }



  100% {

    -webkit-transform: scale(1.1);

    transform: scale(1.1);

  }

}



@keyframes imageAnimation02 {

  0% {

    -webkit-transform: scale(1.1) rotate(0.0001deg);

    transform: scale(1.1) rotate(0.0001deg);

  }



  100% {

    -webkit-transform: scale(1);

    transform: scale(1);

  }

}



/* スライダー */

.top-slider {

  height: calc(100vh - 50px);

}



.top-slider a {

  display: block;

}



.top-slider span {

  width: 100%;

  height: 100%;

  position: absolute;

  top: 0;

  left: 0;

  z-index: 0;

}



.top-slider span {

  background-position: 50% 50%;

  background-repeat: no-repeat;

  background-size: cover;

  display: block;

  height: 100%;

}



.top-slider-wrapper {

  overflow: hidden;

  position: relative;

  z-index: 2;

}



.header-bar-fixed~.top-slider-wrapper {

  margin-top: 100px;

}



.admin-bar .header-bar-fixed~.top-slider-wrapper {

  margin-top: 68px;

}



.top-slider-item {

  display: none;

}



.top-slider-item:nth-of-type(1) {

  display: block;

}



.top-slider-item:nth-of-type(1) span {

  -webkit-animation: imageAnimation01 10s linear infinite 0s;

  animation: imageAnimation01 10s linear infinite 0s;

}



.top-slider-item:nth-of-type(2) span {

  -webkit-animation: imageAnimation02 10s linear infinite 0s;

  animation: imageAnimation02 10s linear infinite 0s;

}



.top-slider-item:nth-of-type(3) span {

  -webkit-animation: imageAnimation02 10s linear infinite 0s;

  animation: imageAnimation01 10s linear infinite 0s;

}



.top-slider-item:only-child span {

  -webkit-animation: none;

  animation: none;

}



.top-slider-nav {

  display: none;

}



.top-slider-nav li {

  display: inline-block;

}



.top-slider-nav li:not(:first-child) {

  margin-left: 12px;

}



.top-slider-nav a {

  background: #ffffff;

  border-radius: 50%;

  display: block;

  width: 12px;

  height: 12px;

}



/* 動画 */

.header-video {

  background: #000;

  background-position: center center;

  background-repeat: no-repeat;

  background-size: cover;

  position: relative;

  width: 100%;

  height: calc(100vh - 100px);

}



.header-video-overlay {

  position: absolute;

  top: 0px;

  left: 0px;

  width: 100%;

  height: 100%;

  z-index: 2;

}



.header-youtube {

  background: #000;

  background-position: center center;

  background-repeat: no-repeat;

  background-size: cover;

  height: calc(100vh - 100px);

  position: relative;

  width: 100%;

}



.header-youtube-overlay {

  position: absolute;

  top: 0px;

  left: 0px;

  width: 100%;

  height: 100%;

  z-index: 2;

}



.mb_YTPBar {

  display: none !important;

}



.top-news {

  margin-bottom: -48px;

}



.top-blog {

  margin-bottom: -10px;

  width: 80%;

  box-sizing: border-box;

}



/* ----------------------------------------------------------------------

 ヘッダー

---------------------------------------------------------------------- */

.header {

  position: relative;

  background: #d39653;

}



.header-bar {

  height: 100px;

  width: 100%;

}



.header-bar-inner {

  position: relative;

}



.header-bar-fixed {

  position: fixed !important;

  top: 0;

  left: 0;

  z-index: 9999;

  background: #ffffff;

}



/* ロゴ */

.logo-image {

  position: absolute;

  top: 0;

  left: 30px;

  width: 250px;

  height: 100px;

  display: -webkit-flex;

  display: flex;

  flex-wrap: wrap;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  display: -webkit-flex;

  display: flex;

}



.logo-image a {

  display: block;

  width: 100%;

}



.logo-image a img {

  display: block;

  width: 100%;

}



/* グローバルメニュー */

.global-nav {

  float: right;

  box-sizing: border-box;

  background: #ffffff;

}



.global-nav .menu-item-has-children:hover>.sub-menu {

  opacity: 1;

  -webkit-transform: translate(0, 0);

  -moz-transform: translate(0, 0);

  -ms-transform: translate(0, 0);

  -o-transform: translate(0, 0);

  transform: translate(0, 0);

  visibility: visible;

}



.global-nav .child-menu-button {

  display: none;

}



.global-nav .sub-menu {

  line-height: 1.5;

  opacity: 0;

  position: absolute;

  top: 100%;

  left: 50px;

  -webkit-transform: translate(0, 25%);

  -webkit-transition-property: opacity, transform;

  -webkit-transition: .5s;

  -moz-transform: translate(0, 25%);

  -moz-transition-property: opacity, transform;

  -moz-transition: .5s;

  -ms-transform: translate(0, 25%);

  -ms-transition-property: opacity, transform;

  -ms-transition: .5s;

  -o-transform: translate(0, 25%);

  -o-transition-property: opacity, transform;

  -o-transition: .5s;

  transform: translate(0, 25%);

  transition-property: opacity, transform;

  transition: .5s;

  visibility: hidden;

  z-index: 99;

}



.global-nav .sub-menu .menu-item-has-children:after {

  border-color: transparent transparent transparent #ffffff;

  border-style: solid;

  border-width: 4px 0 4px 4px;

  content: "";

  margin: auto;

  position: absolute;

  top: 0;

  bottom: 0;

  right: 10px;

  width: 0;

  height: 0;

}



.global-nav .sub-menu li {

  position: relative;

}



.global-nav .sub-menu a {

  background: #d39653;

  box-sizing: border-box;

  color: #ffffff;

  display: block;

  padding: 12px 20px;

  width: 250px;

}



.global-nav .sub-menu a:hover {

  background: #d1a274;

}



.global-nav .sub-menu ul {

  top: 0;

  left: 100%;

}



.global-nav>ul>li {

  float: left;

  position: relative;

}



.global-nav>ul>li>a {

  height: 100px;

  padding: 0 0 0 40px;

  line-height: 100px;

}



/* .global-nav>ul>li.global-menu-home>a {

  display: none;

} */



.global-nav a {

  display: block;

  color: #352e28;

  font-size: 16px;

}



.global-nav>ul>li.global-menu-contact>a {

  background: #d1a274;

  margin-left: 40px;

  padding-right: 40px;

  color: #fff;

}



.global-nav>ul>li.global-menu-contact>a:hover {

  background: #d39653;

  color: #ffffff;

}



.global-nav>ul>li>a:hover {

  color: #d1a274;

}



.global-nav>ul>li.global-menu-other>a::after {

  font-family: "Font Awesome 5 Free";

  content: "\f078";

  position: absolute;

  font-weight: 700;

  width: calc(100% - 40px);

  line-height: 1;

  left: 40px;

  text-align: center;

  font-size: 0.8em;

  bottom: 20px;

  color: #ddd;

}



.global-nav>ul>li.global-menu-other>a:hover::after {

  color: #d39653;

}



/* ヘッダー画像 */

.signage {

  width: 100%;

  padding: 70px 0 100px;

  background-image: url(/wp-content/themes/story_tcd041/img/front_second.jpg?ver=1.0) !important;

  background-size: cover;

  background-position: center;

}



.header-bar-fixed~.signage {

  margin-top: 100px;

}



.admin-bar .header-bar-fixed~.signage {

  margin-top: 68px;

}



.signage-content {

  -webkit-animation: fadeIn 1s ease 2.5s;

  -moz-animation: fadeIn 1s ease 2.5s;

  -ms-animation: fadeIn 1s ease 2.5s;

  -o-animation: fadeIn 1s ease 2.5s;

  animation: fadeIn 1s ease 2.5s;

  animation-fill-mode: both;

  position: relative;

  z-index: 5;

}



.signage-title {

  font-size: 2em;

  font-weight: 700;

  line-height: 1;

  color: #fff;

}



p.signage-title-sub {

  font-size: 1.1em;

  letter-spacing: 0.1em;

  line-height: 1;

  margin: 1.5em auto 0;

  color: #d1a274;

}



/* パンくずリンク */

.breadcrumb {

  font-size: 10px;

  height: 1em;

  color: #ffffff;

}



.breadcrumb .home a:before {

  content: "\e90c";

  font-family: "design_plus";

}



.breadcrumb li {

  float: left;

  line-height: 1;

}



.breadcrumb .home span {

  display: none;

}



.breadcrumb li:after {

  content: "\e910";

  font-family: "design_plus";

  font-size: 9px;

  margin: 0 1em;

}



.breadcrumb li:last-child:after {

  display: none;

}



.breadcrumb-wrapper {

  width: 100%;

  margin-top: 1.5em;

  position: relative;

  z-index: 3;

}



.breadcrumb li a {

  color: #ffffff;

}



/* ----------------------------------------------------------------------

 サイドコンテンツ

---------------------------------------------------------------------- */

.side_widget {

  font-size: 12px;

  position: relative;

}



.side_widget:first-child {

  margin-top: 0;

}



.side_widget:first-child.side_widget.ad_widget {

  margin-top: 0;

}



.side_widget:first-child .headline-bar {

  margin-top: 0;

}



.side_widget .headline-bar {

  margin-bottom: 1em;

  border-bottom: 2px solid #d39653;

  font-size: 1.5em;

  padding-bottom: 1em;

  color: #352e28;

  line-height: 1;

  font-weight: 700;

}



.side_widget.ad_widget {

  margin-top: 50px;

}



.tcdw_archive_list_widget {

  margin: 50px 0 35px;

}



.google_search_widget {

  margin: 35px 0;

}



/* .side_widget:last-child, .side_widget:only-child { margin:0; } */

.side_widget ul {

  margin: 0;

}



.side_widget li {

  margin: 0 0 15px 0;

}



.side_widget li ul {

  margin: 10px 0 0 0;

}



.side_widget li li {

  padding: 0;

}



.side_widget li li:last-of-type {

  margin: 0;

}



.side_widget img {

  height: auto;

  max-width: 100%;

}



.side_headline {

  background: #222;

  color: #ffffff;

  height: 50px;

  line-height: 50px;

  font-size: 14px;

  margin: 0 0 20px 0;

  padding: 0 20px;

  font-size: 14px;

  font-weight: bold;

}



/* banner */

.ml_ad_widget {

  border: none;

  padding: 0;

  background: none;

}



.ml_ad_widget img {

  height: auto;

  max-width: 100%;

  width: auto;

  margin: 0 auto;

  display: block;

}



/* category */

.tcdw_category_list_widget .children {

  border-top: 1px solid #ddd;

  margin-top: 0;

}



.tcdw_category_list_widget .children li:last-child {

  border-bottom: none;

}



/* calendar */

#wp-calendar {

  margin: 0 auto;

  width: 100%;

  font-size: 11px;

  border-collapse: separate;

  table-layout: fixed;

}



#wp-calendar th, #wp-calendar td {

  padding: 2px;

  line-height: 340%;

  text-align: center;

}



#wp-calendar td a {

  display: block;

  margin: 0;

  padding: 0;

  text-decoration: none;

  color: #333;

  background-color: #eee;

}



#wp-calendar td a:hover {

  text-decoration: none;

  color: #ffffff;

  background: #ccc;

}



#wp-calendar caption {

  color: #ffffff;

  padding: 7px 0;

}



#wp-calendar thead th, #wp-calendar tfoot td {

  border: none;

  padding: 0;

  line-height: 200%;

}



#wp-calendar #prev, #wp-calendar #next {

  line-height: 300%;

}



#wp-calendar #prev a, #wp-calendar #next a {

  text-decoration: none;

  background: none;

  color: #ffffff;

}



#wp-calendar #prev a:hover, #wp-calendar #next a:hover {

  color: #ffffff;

  background: #ccc;

}



#wp-calendar td#today {

  font-weight: bold;

}



/* collapse category list */

.side_widget.tcdw_category_list_widget .side_headline {

  margin-bottom: 0;

}



.collapse_category_list {

  border-bottom: 1px solid #ccc;

}



.collapse_category_list ul {

  margin: 0;

  padding: 0;

}



.collapse_category_list li ul {

  margin: 0;

  padding: 0;

}



.collapse_category_list li {

  margin: 0;

  padding: 0;

}



.collapse_category_list li li {

  margin: 0;

  padding: 0;

}



.collapse_category_list li a {

  color: #222;

  border: 1px solid #ccc;

  display: block;

  padding: 14px 15px;

  text-decoration: none;

  border-bottom: none;

}



.collapse_category_list li a:hover {

  color: #222;

  background-color: #f6f6f6;

}



.collapse_category_list .parent_category>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 15px 24px;

  padding-left: 27px;

}



.collapse_category_list li .parent_category>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 26px 24px;

  padding-left: 39px;

}



.collapse_category_list .children {

  display: none;

}



.collapse_category_list .children a {

  padding-left: 27px;

}



.collapse_category_list ul .children a {

  padding-left: 39px;

}



/* search */

.widget_search label {

  display: none;

}



.widget_search #search-box, .widget_search #s, .side_widget.google_search #s {

  width: 260px;

  height: 40px;

  margin: 0 -2px 5px 0;

  border: 1px solid #ccc;

  background: #f2f2f2;

  padding: 0 10px;

  box-shadow: 2px 2px 3px 0px #ddd inset;

}



.widget_search #search-btn input, .widget_search #searchsubmit, .side_widget.google_search #searchsubmit {

  border: none;

  width: 40px;

  height: 40px;

  background: #000 url(img/common/icon_search.png) no-repeat center;

  cursor: pointer;

  display: block;

  float: right;

  text-indent: -9999px;

  overflow: hidden;

}



.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .side_widget.google_search #searchsubmit:hover {

  background-color: #d39653;

}



.brand_side_col .widget_search #search-box, .brand_side_col .widget_search #s, .side_widget.google_search #s {

  width: 75%;

  height: 40px;

  margin: 0 0 5px 0;

}



.brand_side_col .widget_search #search-btn input, .brand_side_col .widget_search #searchsubmit, .side_widget.google_search #searchsubmit {

  width: 25%;

}



/* archive category dropdown */

.widget_archive select, .widget_categories select, .tcdw_archive_list_widget select {

  background: #ffffff;

  border: 1px solid #ccc;

  font-size: 14px;

  margin: 0;

  padding: 12px 10px;

  width: 100%;

}



.widget_archive label, .widget_categories label {

  display: none;

}



.widget_archive select option, .widget_categories select option, .tcdw_archive_list_widget option {

  background: #ffffff;

  color: #333;

}



/* default recent post widget */

.widget_recent_entries li {

  border-bottom: 1px dotted #d1a274;

  padding: 0 0 15px 0;

}



.widget_recent_entries li:last-child {

  border: none;

  padding: 0;

}



/* brand category list */

.brand_category_list {

  margin: 0;

  padding: 0;

}



.brand_category_list li {

  display: block;

  margin: 0 0 5px 0;

  padding: 0;

  position: relative;

}



.brand_category_list li:after {

  display: block;

  padding-top: 100%;

  content: "";

}



.brand_category_list li a {

  display: block;

  margin: 0 auto;

  width: 100%;

  height: 100%;

  font-size: 14px;

  color: #000;

  background: #f6f6f6;

  font-weight: 700;

  text-align: center;

  text-decoration: none;

  position: absolute;

  top: 0;

  left: 0;

  bottom: 0;

  right: 0;

}



.brand_category_list li a:hover {

  color: #ffffff;

  background: #ccc;

}



.brand_category_list li a.active {

  color: #ffffff;

  background: #222;

}



.brand_category_list li a span {

  display: block;

  width: 100%;

  position: relative;

  top: 50%;

  -webkit-transform: translateY(-50%);

  -ms-transform: translateY(-50%);

  transform: translateY(-50%);

}



/* styled menu */

.side_widget.tcdw_menu_widget .side_headline {

  margin-bottom: 0;

}



.tcdw_menu_widget .menu {

  border-bottom: 1px solid #ccc;

}



.tcdw_menu_widget .menu ul {

  margin: 0;

  padding: 0;

}



.tcdw_menu_widget .menu li ul {

  margin: 0;

  padding: 0;

}



.tcdw_menu_widget .menu li {

  margin: 0;

  padding: 0;

}



.tcdw_menu_widget .menu li li {

  margin: 0;

  padding: 0;

}



.tcdw_menu_widget .menu li a {

  color: #222;

  border: 1px solid #ccc;

  display: block;

  padding: 14px 15px;

  text-decoration: none;

  border-bottom: none;

  cursor: pointer;

}



.tcdw_menu_widget .menu li a:hover {

  color: #222;

  background-color: #f6f6f6;

}



.tcdw_menu_widget .menu .menu-item-has-children>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 15px 24px;

  padding-left: 27px;

}



.tcdw_menu_widget .menu li .menu-item-has-children>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 26px 24px;

  padding-left: 39px;

}



.tcdw_menu_widget .menu li li .menu-item-has-children>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 38px 24px;

  padding-left: 51px;

}



.tcdw_menu_widget .menu li li li .menu-item-has-children>a {

  background: transparent url(img/common/arrow_bottom2.gif) no-repeat 50px 24px;

  padding-left: 63px;

}



.tcdw_menu_widget .menu .sub-menu {

  display: none;

}



.tcdw_menu_widget .menu li li a {

  padding-left: 27px;

}



.tcdw_menu_widget .menu li li li a {

  padding-left: 39px;

}



.tcdw_menu_widget .menu li li li li a {

  padding-left: 51px;

}



.tcdw_menu_widget .menu li li li li li a {

  padding-left: 63px;

}



/* recent entries */

.widget_recent_entries .post-date {

  display: block;

  line-height: 1;

  color: #352e28;

  font-size: 0.8em;

  margin-top: 1em;

}



.widget_recent_entries .post-date:after {

  content: "";

}



/* ----------------------------------------------------------------------

 フッター

---------------------------------------------------------------------- */

.footer {

  margin-top: 150px;

}



.copyright {

  width: 100%;

  position: absolute;

  bottom: 0;

  font-size: 10px;

  text-align: right;

  left: 0;

  z-index: 0;

}



.pagetop {

  position: fixed;

  bottom: 0;

  right: 0;

  z-index: 10;

}



.pagetop a {

  color: #ffffff;

  display: block;

  position: relative;

  width: 60px;

  height: 60px;

  background: #d39653;

  line-height: 60px;

}



.pagetop a:hover {

  background: #d1a274;

}



.pagetop a:before {

  -webkit-font-smoothing: antialiased;

  content: "\e911";

  display: block;

  font-family: "design_plus";

  margin: auto;

  position: absolute;

  top: 0;

  bottom: 0;

  left: 0;

  right: 0;

  width: 100%;

  height: 100%;

  text-align: center;

}



/* ----- パスワード保護 ----- */

.password_protected {

  text-align: center;

  margin: 0 38px 30px;

  padding: 10px 20px;

  color: #ffffff;

  background: #3db4b2;

  border-radius: 5px;

}



.password_protected p {

  font-size: 12px;

  margin: 0;

  line-height: 160%;

}



.pw_form {

  text-align: center;

}



.pw_form p {

  margin-bottom: 50px;

}



.pw_form p label {

  display: block;

  font-size: 14px;

}



.pw_form input[type="password"] {

  border: solid 1px #ddd;

  background: #ffffff;

  font-size: 14px;

  height: 30px;

  margin-left: 15px;

  padding: 5px;

}



.pw_form input[type="submit"] {

  background: #aaa;

  border: none;

  cursor: pointer;

  color: #ffffff;

  font-size: 14px;

  width: 200px;

  height: 50px;

  margin: 30px auto 0;

  display: block;

  -webkit-transition: background-color 200ms ease-in-out;

  -moz-transition: background-color 200ms ease-in-out;

  -o-transition: background-color 200ms ease-in-out;

  -ms-transition: background-color 200ms ease-in-out;

  transition: background-color 200ms ease-in-out;

}



/* ----------------------------------------------------------------------

 WordPress プリセットスタイル

---------------------------------------------------------------------- */

/* alignment */

.post-content .alignright {

  float: right;

}



.post-content .alignleft {

  float: left;

}



.post-content .aligncenter {

  display: table;

  margin-left: auto;

  margin-right: auto;

  margin-bottom: 7px;

}



.post-content blockquote.alignleft, .post-content img.alignleft {

  margin: 7px 24px 7px 0;

}



.post-content .wp-caption.alignleft {

  margin: 7px 14px 7px 0;

}



.post-content blockquote.alignright, .post-content img.alignright {

  margin: 7px 0 7px 24px;

}



.post-content .wp-caption.alignright {

  margin: 7px 0 7px 14px;

}



.post-content blockquote.aligncenter, .post-content img.aligncenter, .post-content .wp-caption.aligncenter {

  margin-top: 7px;

  margin-bottom: 7px;

}



/* text and headline */

.post-content p {

  margin-bottom: 1em;

  position: relative;

  box-sizing: border-box;

}



.post-content p:last-of-type {

  margin-bottom: 0;

}



/* 固定ページ アラカルト*/

p.caution_text {

  margin-bottom: 6px;

  padding-left: 1.25em;

  font-size: 0.9em;

}



p.caution_text::after {

  content: '※';

  position: absolute;

  top: 0;

  left: 0;

  color: #d39653;

}



.post-content h2 {

  font-size: 1.6em;

  font-weight: 700;

  line-height: 1.6;

  margin: 0 auto 0.75em;

  position: relative;

  width: 100%;

  border-bottom: 2px solid #d1a274;

  padding-bottom: 0.5em;

}



.post-content h3 {

  font-size: 1.3em;

  line-height: 1.6;

  font-weight: 500;

  border-bottom: 1px dashed #d39653;

  padding: 0 0 0.5em;

  margin: 0 auto 0.75em;

  box-sizing: border-box;

  position: relative;

  width: 100%;

  font-weight: 700;

}



.post-content h4 {

  font-size: 1.2em;

  font-weight: 700;

  position: relative;

  width: 100%;

  line-height: 1.6;

  margin-bottom: 0.25em;

}



.post-content h5 {

  font-size: 1.1em;

  line-height: 1.6;

  font-weight: 700;

}





/* image */

.post-content img[class*="align"], .post-content img[class*="wp-image-"], .post-content img[class*="attachment-"], .post-content img.size-full, .post-content img.size-large, .post-content .wp-post-image, .post-content img {

  height: auto;

  max-width: 100%;

}



/* list */

.post-content li, .post-content dt, .post-content dd {

  line-height: 1.8;

  margin-bottom: 0.5em;

  box-sizing: border-box;

  position: relative;

}



.post-content li:last-of-type, .post-content dt:last-of-type, .post-content dd:last-of-type {

  margin-bottom: 0;

}



/* table */

table.tinmce-table {

  border: solid;

}



.post-content table {

  margin: 0 auto;

  width: 100%;

}



.post-content tr {

  border-top: 1px solid #e3d0be;

  border-bottom: 1px solid #e3d0be;

}



.post-content td, .post-content th {

  line-height: 1.6;

  padding: 1.25em 0;

  box-sizing: border-box;

}



.post-content .tinymce-table td, .post-content .tinymce-table th {

  background: transparent;

}



.post-content thead th {

  text-align: center;

}



.post-content th {

  padding-right: 1.25em;

  width: 30%;

}



@media only screen and (max-width: 485px) {

  .post-content td, .post-content th {

    display: block;

    width: 100%;

  }



  .post-content th {

    padding-right: 0;

    padding-bottom: 0;

  }



  .post-content td {

    padding-top: 0.25em;

  }

}



/* block quote */

.post-content blockquote {

  margin: 0 0 25px 0;

  padding: 27px 30px 0;

  border: 1px solid #ccc;

  box-shadow: 0px 4px 0px 0px #f2f2f2;

  position: relative;

}



.post-content blockquote:before {

  content: '"';

  font-style: italic;

  font-size: 30px;

  font-weight: normal;

  line-height: 40px;

  width: 30px;

  height: 30px;

  position: absolute;

  top: 5px;

  left: 10px;

  color: #5cbcd7;

}



.post-content blockquote:after {

  content: '"';

  font-style: italic;

  font-size: 30px;

  font-weight: normal;

  text-align: left;

  line-height: 60px;

  width: 30px;

  height: 30px;

  position: absolute;

  bottom: 7px;

  right: -2px;

  color: #5cbcd7;

}



.post-content blockquote cite {

  border-top: 1px dotted #aaa;

  display: block;

  padding: 20px 0 0 0;

  font-style: italic;

  text-align: right;

  font-size: 90%;

}



/* captions */

.post-content .wp-caption {

  margin-bottom: 24px;

  background: #ffffff;

  border: 1px solid #ccc;

  padding: 5px;

  max-width: 100%;

  -webkit-border-radius: 5px;

  -moz-border-radius: 5px;

  border-radius: 5px;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box;

}



.post-content .wp-caption-text {

  text-align: center;

  font-size: 12px;

  font-style: italic;

  line-height: 1.5;

  margin: 9px auto;

}



.post-content .wp-caption img[class*="wp-image-"] {

  display: block;

  margin: 0 auto;

}



/* gallery */

.gallery {

  margin-bottom: 20px;

}



.gallery a img {

  border: 0 !important;

}



.gallery-item {

  float: left;

  margin: 0 4px 4px 0;

  overflow: hidden;

  position: relative;

}



.gallery-columns-1 .gallery-item {

  max-width: 100%;

}



.gallery-columns-2 .gallery-item {

  max-width: 48%;

  max-width: -webkit-calc(50% - 4px);

  max-width: calc(50% - 4px);

}



.gallery-columns-3 .gallery-item {

  max-width: 32%;

  max-width: -webkit-calc(33.3% - 4px);

  max-width: calc(33.3% - 4px);

}



.gallery-columns-4 .gallery-item {

  max-width: 23%;

  max-width: -webkit-calc(25% - 4px);

  max-width: calc(25% - 4px);

}



.gallery-columns-5 .gallery-item {

  max-width: 19%;

  max-width: -webkit-calc(20% - 4px);

  max-width: calc(20% - 4px);

}



.gallery-columns-6 .gallery-item {

  max-width: 15%;

  max-width: -webkit-calc(16.7% - 4px);

  max-width: calc(16.7% - 4px);

}



.gallery-columns-7 .gallery-item {

  max-width: 13%;

  max-width: -webkit-calc(14.28% - 4px);

  max-width: calc(14.28% - 4px);

}



.gallery-columns-8 .gallery-item {

  max-width: 11%;

  max-width: -webkit-calc(12.5% - 4px);

  max-width: calc(12.5% - 4px);

}



.gallery-columns-9 .gallery-item {

  max-width: 9%;

  max-width: -webkit-calc(11.1% - 4px);

  max-width: calc(11.1% - 4px);

}



.gallery-columns-10 .gallery-item {

  max-width: 7%;

  max-width: -webkit-calc(9.4% - 0px);

  max-width: calc(9.4% - 0px);

}



.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) {

  margin-right: 0;

}



.gallery-caption {

  background-color: rgba(0, 0, 0, 0.7);

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box;

  color: #ffffff;

  font-size: 12px;

  line-height: 1.5;

  margin: 0;

  max-height: 50%;

  opacity: 0;

  padding: 6px 8px;

  position: absolute;

  bottom: 0;

  left: 0;

  text-align: left;

  width: 100%;

}



.gallery-caption:before {

  content: "";

  height: 100%;

  min-height: 49px;

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

}



.gallery-item:hover .gallery-caption {

  opacity: 1;

}



.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption {

  display: none;

}



/* etc */

.post-content .wp-smiley {

  border: 0;

  margin-bottom: 0;

  margin-top: 0;

  padding: 0;

}



.post-content pre {

  border-left: 5px solid #7fc120;

  font-size: 12px;

  margin: 0 0 27px 0;

  line-height: 25px;

  background: url(img/common/pre.gif) repeat left top;

  padding: 0 17px;

  overflow: auto;

}



.post-content .mejs-container {

  margin: 12px 0 25px;

}



/* ----------------------------------------------------------------------

 ソーシャルボタン

---------------------------------------------------------------------- */

@font-face {

  font-family: "design_plus";

  src: url("fonts/design_plus.eot?evfvw0");

  src: url("fonts/design_plus.eot?evfvw0#iefix") format("embedded-opentype"), url("fonts/design_plus.ttf?evfvw0") format("truetype"), url("fonts/design_plus.woff?evfvw0") format("woff"), url("fonts/design_plus.svg?evfvw0#design_plus") format("svg");

  font-style: normal;

  font-weight: normal;

}



[class^="icon-"], [class*=" icon-"] {

  /* use !important to prevent issues with browser extensions that change fonts */

  font-family: "design_plus" !important;

  line-height: 1;

  font-style: normal;

  font-variant: normal;

  font-weight: normal;

  speak: none;

  text-transform: none;

  /* Better Font Rendering =========== */

  -webkit-font-smoothing: antialiased;

  -moz-osx-font-smoothing: grayscale;

}



.icon-feedly:before {

  content: "\e907";

}



.icon-hatebu:before {

  content: "\e908";

}



.icon-line:before {

  content: "\e909";

}



.icon-pocket:before {

  content: "\e90a";

}



.icon-google-plus:before {

  content: "\e900";

}



.icon-google-plus2:before {

  content: "\e901";

}



.icon-facebook:before {

  content: "\e902";

}



.icon-facebook2:before {

  content: "\e903";

}



.icon-twitter:before {

  content: "\e904";

}



.icon-rss:before {

  content: "\e90b";

}



.icon-rss2:before {

  content: "\e906";

}



.icon-pinterest:before {

  content: "\e905";

}



/*--------------------------------

Share Buttons

---------------------------------*/

.share-top {

  margin-bottom: 50px;

}



.share-btm {

  margin-bottom: 35px;

}



/*--------------------------------

share_top1（Style1）

---------------------------------*/

.share-type1 {

  width: 100%;

}



.share-type1 h2 {

  color: #666666;

  font-weight: 400;

}



.share-type1 ul {

  list-style: none;

  margin: 0;

  padding: 0;

}



.share-type1 li {

  display: inline-block;

  padding: 0;

  text-align: center;

}



.share-type1 li>a:hover {

  -webkit-transform: translate3d(0, 1px, 0);

  transform: translate3d(0, 1px, 0);

}



.share-type1 a {

  min-width: 27px;

  text-decoration: none;

  display: inline-block;

  margin: 0 5px 5px 0;

  font-size: 12px;

  font-weight: 400;

  color: #ffffff !important;

  background: #fafafa;

  border-radius: 2px;

  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);

  text-shadow: none;

  text-align: center;

  line-height: 25px;

  padding: 1px 5px 0;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



.share-type1 i {

  position: relative;

  top: 3px;

  color: #ffffff;

  font-size: 1.3em;

  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1);

}



.share-type1 .ttl {

  margin: 0 3px 0 2px;

  text-align: center;

  line-height: 20px;

}



.share-type1 .share-count {

  display: inline;

  font-size: 9px;

  color: #ffffff;

  padding: 0;

  line-height: 25px;

  margin: 0;

  border-radius: 0 1px 1px 0;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



@media screen and (max-width: 767px) {

  .share-type1 {

    width: 100%;

  }



  .share-type1 ul {

    margin-bottom: 15px;

  }



  .share-type1 li>a span {

    display: none;

  }



  .share-type1 a {

    margin-right: 2px;

  }



  .share-type1 i {

    left: 1px;

  }



  .share-type1 .share-count {

    margin-left: 3px;

  }

}



/*--------------------------------

share_btm1（Style3）

---------------------------------*/

.share-type3 .sns {

  margin: 0;

  text-align: center;

}



.share-type3 ul {

  margin: 0 -3% 3% 0;

  list-style: none;

}



.share-type3 li {

  float: left;

  width: 47%;

  margin: 0 3% 1.5% 0;

  cursor: pointer;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



.post .share-type3 ul li {

  list-style: none;

  background-image: none;

  padding: 0;

}



.share-type3 ul li a {

  position: relative;

  display: block;

  top: 3px;

  font-size: 13px;

  padding: 10px 2px;

  color: #ffffff;

  border-radius: 2px;

  text-align: center;

  text-decoration: none;

  vertical-align: middle;

}



.share-type3 ul li a i {

  position: relative;

  top: 3px;

  font-size: 140%;

}



.share-type3 ul li a .ttl {

  margin: 0 3px 0 4px;

  display: inline-block;

  text-align: center;

  font-size: 12px;

}



.share-type3 ul li a .share-count {

  position: absolute;

  bottom: -2px;

  right: 8px;

  font-size: 10px;

  padding: 0;

  line-height: 25px;

  margin: 0;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



.share-type3 ul li a:hover {

  -webkit-transform: translate3d(0px, 2px, 1px);

  -moz-transform: translate3d(0px, 2px, 1px);

  transform: translate3d(0px, 2px, 1px);

}



@media only screen and (min-width: 480px) {

  .share-type3 {

    width: 100%;

    margin: 20px 0 15px;

  }



  .share-type3 ul {

    margin-right: -1%;

    list-style: none;

    overflow: hidden;

  }



  .share-type3 li {

    width: 24%;

    margin: 0 1% 2% 0;

  }



  .share-type3 li a {

    font-size: 12px;

    padding: 10px 2px;

  }



  .share-type3 li:nth-child(4n) {

    margin-right: 0;

  }

}



.single .post-content {

  margin-bottom: 50px;

}



/*------------- share_top1 & share_btm1 button_color -------------*/

/* Twitter */

.share-type1 .twitter a, .share-type3 .twitter a {

  background-color: #55acee;

}



.share-type1 .twitter a:hover, .share-type3 .twitter a:hover {

  background-color: #468ec5;

}



/* Facebook */

.share-type1 ul li.facebook a, .share-type3 ul li.facebook a {

  background-color: #35629a;

}



.share-type1 ul li.facebook a:hover, .share-type3 ul li.facebook a:hover {

  background-color: #1f3669;

}



/* Google+ */

.share-type1 ul li.googleplus a, .share-type3 ul li.googleplus a {

  background-color: #dd4b39;

}



.share-type1 ul li.googleplus a:hover, .share-type3 ul li.googleplus a:hover {

  background-color: #b94031;

}



.share-type1 ul li.googleplus a i {

  top: 4px;

}



/* Hatena */

.share-type1 ul li.hatebu>a, .share-type3 ul li.hatebu a {

  background-color: #3c7dd1;

}



.share-type1 ul li.hatebu>a:hover, .share-type3 ul li.hatebu a:hover {

  background-color: #0270ac;

}



/* Pocket */

.share-type1 ul li.pocket a, .share-type3 ul li.pocket a {

  background-color: #ee4056;

}



.share-type1 ul li.pocket a:hover, .share-type3 ul li.pocket a:hover {

  background-color: #c53648;

}



/* rss */

.share-type1 ul li.rss a, .share-type3 ul li.rss a {

  background-color: #ffb53c;

}



.share-type1 ul li.rss a:hover, .share-type3 ul li.rss a:hover {

  background-color: #e09900;

}



/* Feedly */

.share-type1 ul li.feedly a, .share-type3 ul li.feedly a {

  background-color: #6cc655;

}



.share-type1 ul li.feedly>a:hover, .share-type3 ul li.feedly>a:hover {

  background-color: #5ca449;

}



/* Pinterest */

.share-type1 ul li.pinterest a, .share-type3 ul li.pinterest a {

  background-color: #d4121c;

}



.share-type1 ul li.pinterest a:hover, .share-type3 ul li.pinterest a:hover {

  background-color: #a42f35;

}



/*--------------------------------

share_top2（Style2）

---------------------------------*/

.share-type2 {

  width: 100%;

}



.share-type2 h2 {

  color: #444;

  font-weight: 400;

}



.share-type2 ul.type2 {

  margin: 0;

  padding: 0;

  list-style: none;

}



.share-type2 ul.type2 li {

  display: inline-block;

  padding: 0;

  text-align: center;

}



.share-type2 ul.type2 li a {

  text-decoration: none;

  display: inline-block;

  margin: 0 5px 5px 0;

  font-size: 12px;

  font-weight: 400;

  border-radius: 2px;

  color: #222 !important;

  text-align: center;

  background: #fafafa !important;

  border: 1px solid rgba(0, 0, 0, 0.1);

  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);

  text-shadow: none;

  line-height: 25px;

  padding: 1px 5px 0;

}



.share-type2 ul.type2 li a i {

  position: relative;

  top: 3px;

  color: #222;

  font-size: 1.3em;

  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1);

}



.share-type2 ul.type2 li a .ttl {

  margin: 0 3px 0 2px;

  text-align: center;

  line-height: 20px;

}



.share-type2 ul.type2 li a .share-count {

  color: #444;

  font-size: 9px;

  padding: 0;

  line-height: 25px;

  margin: 0;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



.share-type2 ul.type2 li a:hover, .share-type2 ul.type2 li a:hover i, .share-type2 ul.type2 li a:hover .share-count {

  color: #ffffff !important;

}



.share-type2 ul.type2 li a:hover {

  border-color: rgba(255, 255, 255, 0.1);

}



@media screen and (max-width: 480px) {

  .share-type2 {

    width: 100%;

    margin: 0;

  }



  .share-type2 .type2 {

    margin-bottom: 15px;

  }



  .share-type2 .type2 li a {

    margin-right: 2px;

  }



  .share-type2 .type2 li a i {

    left: 1px;

  }



  .share-type2 .type2 li>a span.ttl {

    display: none;

  }



  .share-type2 .type2 li a .share-count {

    margin-left: 3px;

  }

}



/*--------------------------------

share_btm2（Style4）

---------------------------------*/

.share-type4 {

  text-align: center;

}



.share-type4 .sns {

  margin: 0;

}



.share-type4 ul.type4 {

  margin: 0 -3% 2% 0;

  list-style: none;

}



.share-type4 ul.type4 li {

  float: left;

  width: 47%;

  margin: 0 3% 3% 0;

  cursor: pointer;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

}



.post .share-type4 ul li {

  list-style: none;

  background-image: none;

  padding: 0;

}



.share-type4 ul.type4 li a {

  position: relative;

  display: block;

  top: 5px;

  font-size: 13px;

  padding: 10px 2px;

  text-decoration: none;

  border-radius: 2px;

  color: #222 !important;

  text-align: center;

  background: #fafafa !important;

  border: 1px solid rgba(0, 0, 0, 0.1);

  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);

  text-shadow: none;

}



.share-type4 ul.type4 li a i {

  position: relative;

  top: 3px;

  font-size: 140%;

  color: #222 !important;

}



.share-type4 ul.type4 li a .ttl {

  margin: 0 3px 0 4px;

  display: inline-block;

  text-align: center;

  font-size: 12px;

}



.share-type4 ul.type4 li a .share-count {

  position: absolute;

  bottom: -2px;

  right: 8px;

  font-size: 10px;

  padding: 0;

  line-height: 25px;

  margin: 0;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  -o-box-sizing: border-box;

  -ms-box-sizing: border-box;

  box-sizing: border-box;

  color: #222 !important;

}



.share-type4 ul.type4 li a:hover, .share-type4 ul.type4 li a:hover i, .share-type4 ul.type4 li a:hover .share-count {

  color: #ffffff !important;

}



@media only screen and (min-width: 480px) {

  .share-type4 {

    width: 100%;

    margin: 20px 0 15px;

  }



  .share-type4 ul.type4 {

    margin-right: -1%;

    list-style: none;

    overflow: hidden;

  }



  .share-type4 ul.type4 li {

    width: 24%;

    margin: 0 1% 2% 0;

  }



  .share-type4 ul.type4 li a {

    font-size: 12px;

    padding: 10px 2px;

  }



  .share-type4 ul.type4 li:nth-child(4n) {

    margin-right: 0;

  }

}



/*------------- share_top2 & share_btm4 button_color -------------*/

/* Twitter */

.share-type2 ul.type2 li.twitter a, .share-type4 ul.type4 li.twitter a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.twitter a:hover, .share-type4 ul.type4 li.twitter a:hover {

  color: #ffffff !important;

  background-color: #55acee !important;

}



/* Facebook */

.share-type2 ul.type2 li.facebook a, .share-type4 ul.type4 li.facebook a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.facebook a:hover, .share-type4 ul.type4 li.facebook a:hover {

  color: #ffffff !important;

  background-color: #35629a !important;

}



/* Google+ */

.share-type2 ul.type2 li.googleplus a, .share-type4 ul.type4 li.googleplus a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.googleplus a:hover, .share-type4 ul.type4 li.googleplus a:hover {

  color: #ffffff !important;

  background-color: #dd4b39 !important;

}



.share-type2 ul.type2 li.googleplus a i, .share-type4 ul.type4 li.googleplus a i {

  top: 4px;

}



/* Hatena */

.share-type2 ul.type2 li.hatebu a, .share-type4 ul.type4 li.hatebu a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.hatebu a:hover, .share-type4 ul.type4 li.hatebu a:hover {

  color: #ffffff !important;

  background-color: #3c7dd1 !important;

}



/* Pocket */

.share-type2 ul.type2 li.pocket a, .share-type4 ul.type4 li.pocket a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.pocket a:hover, .share-type4 ul.type4 li.pocket a:hover {

  color: #ffffff !important;

  background-color: #ee4056 !important;

}



/* rss */

.share-type2 ul.type2 li.rss a, .share-type4 ul.type4 li.rss a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.rss a:hover, .share-type4 ul.type4 li.rss a:hover {

  color: #ffffff !important;

  background-color: #ff8c00 !important;

}



/* Feedly */

.share-type2 ul.type2 li.feedly a, .share-type4 ul.type4 li.feedly a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.feedly a:hover, .share-type4 ul.type4 li.feedly a:hover {

  color: #ffffff !important;

  background-color: #6cc655 !important;

}



/* Pinterest */

.share-type2 ul.type2 li.pinterest a, .share-type4 ul.type4 li.pinterest a {

  color: #222 !important;

  background-color: #fafafa !important;

}



.share-type2 ul.type2 li.pinterest a:hover, .share-type4 ul.type4 li.pinterest a:hover {

  color: #ffffff !important;

  background-color: #d4121c !important;

}



/*--------------------------------

share_top5（公式ボタン）

---------------------------------*/

.sns_default_top {

  padding: 0;

  overflow: hidden;

  list-style: none;

}



.sns_default_top ul li {

  display: inline-block;

  margin: 0 5px 3px 0;

  line-height: 1 !important;

  overflow: hidden;

  vertical-align: top;

}



.sns_default_top ul li.twitter_button {

  width: 89px;

}



.sns_default_top ul li.fbshare_button:hover {

  text-decoration: none;

}



.sns_default_top ul li.google_button {

  width: 58px;

}



.sns_default_top ul li.pocket_button {

  width: 88px;

}



@media only screen and (max-width: 480px) {

  .sns_default_top ul li {

    margin-bottom: 6px;

  }



  .sns_default_top ul li.twitter_button {

    margin-left: 0;

  }

}



/* ----------------------- TCD Advanced Style ------------------------ */

/* table style */

.table_no_border th, .table_no_border td {

  border: none;

  padding-left: 0;

}



.table_border_horizontal th, .table_border_horizontal td {

  border-left: none;

  border-right: none;

  padding-left: 0;

}



/* ----------------------------------------------------------------------

 Column layout - カラムレイアウト

---------------------------------------------------------------------- */

.post-content .post_row {

  margin-left: -15px;

  margin-right: -15px;

  line-height: 2;

}



.post-content .post_col, .post-content .post_col-2, .post-content .post_col-3 {

  position: relative;

  min-height: 1px;

  width: 100%;

  padding-right: 15px;

  padding-left: 15px;

  float: left;

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box;

  margin-bottom: 2em;

}



@media screen and (min-width: 768px) {

  .post-content .post_col-2 {

    width: 50%;

    /* 2カラム */

  }



  .post-content .post_col-3 {

    width: 33.33333%;

  }

}



@media screen and (min-width: 1024px) {

  .post-content .post_col-2 {

    width: 50%;

    /* 2カラム */

  }



  .post-content .post_col-3 {

    width: 33.33333%;

  }

}



.post-content .post_row:before, .post-content .post_row:after {

  content: " ";

  display: table;

}



.post-content .post_row:after {

  clear: both;

}



/* ----------------------------------------------------------------------

 headline - 見出しのスタイル

---------------------------------------------------------------------- */

.post-content .style3a, .post-content .style3b, .post-content .style4a, .post-content .style4b, .post-content .style5a, .post-content .style5b, .post-content .style6 {

  line-height: 1.6;

}



/* h3 */

.post-content .style3a {

  margin: 3em 0 1.5em;

  padding: 1.1em .2em 1em;

  font-size: 22px;

  font-weight: 400;

  border-top: 1px solid #222;

  border-bottom: 1px solid #222;

}



.post-content .style3b {

  margin: 3em 0 1.5em;

  padding: 1.1em .9em 1em;

  font-size: 22px;

  font-weight: 400;

  border-top: 2px solid #222;

  border-bottom: 1px solid #ddd;

  background: #fafafa;

  box-shadow: 0px 1px 2px #f7f7f7;

}



/* h4 */

.post-content .style4a {

  margin: 2.5em 2px 1.2em;

  padding: .3em 0 .3em .8em;

  font-size: 18px;

  font-weight: 400;

  border-bottom: none;

  border-left: 2px solid #222;

}



.post-content .style4b {

  margin: 2.5em 0 1.2em;

  padding: .9em 0 .8em;

  font-size: 18px;

  font-weight: 400;

  border-bottom: 1px dotted #aaa;

}



/* h5 */

.post-content .style5a {

  margin: 2em 0 1em;

  padding: .5em .8em .3em 1em;

  font-weight: 700;

  font-size: 18px;

  background: #f5f5f5;

  box-shadow: 0px 2px 0px 0px #f2f2f2;

}



.post-content .style5b {

  margin: 2em 0 1em;

  padding: .5em .8em .4em 1em;

  font-weight: 400;

  font-size: 18px;

  color: #ffffff;

  background: #222;

  border-radius: 4px;

  box-shadow: 0px 2px 0px 0px #f2f2f2;

}



/* h6 */

.post-content .style6 {

  position: relative;

  margin: 2em 0 1em;

  padding: .5em .8em .8em 1.3em;

  color: #222;

  font-weight: bold;

  font-size: 16px;

}



.post-content .style6:before {

  position: absolute;

  width: 12px;

  height: 12px;

  top: .5em;

  left: .2em;

  background: #222;

  content: "";

}



.post-content .news_headline1 {

  position: relative;

  margin: 80px 0 25px 0;

  padding: .5em;

  border-left: 8px solid #444;

  line-height: 1.2;

  font-size: 1.2em;

}



.post-content .news_headline1:after {

  content: "";

  position: absolute;

  bottom: 0px;

  left: 0;

  height: 0;

  width: 100%;

  border-bottom: 1px dotted #ddd;

}



.post-content .news_headline2 {

  margin: 40px 0 20px 0;

  padding: 0 .5em;

  border-left: 6px solid #545454;

  line-height: 26px;

  font-size: 1.1em;

}



.post-content .balloon {

  clear: both;

  display: block;

  position: relative;

  margin: 50px 0 22px;

  padding: .5em 18px .5em;

  width: auto;

  min-width: 115px;

  color: #ffffff;

  text-align: left;

  font-size: 20px;

  font-weight: 400;

  background: #222;

  z-index: 0;

  border-bottom: 0;

}



.post-content .balloon:after {

  content: "";

  position: absolute;

  bottom: -10px;

  left: 30px;

  margin-left: -10px;

  display: block;

  width: 0px;

  height: 0px;

  border-style: solid;

  border-width: 10px 10px 0 10px;

  border-color: #222 transparent transparent transparent;

}



/* ----------------------------------------------------------------------

 flame - 囲み枠

---------------------------------------------------------------------- */

.well {

  min-height: 20px;

  padding: 19px;

  margin-bottom: 20px;

  background-color: #f5f5f5;

  border: 1px solid #e3e3e3;

  border-radius: 4px;

  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);

  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);

}



.well2 {

  margin: 1em 0 30px;

  padding: 1em 1.5em;

  line-height: 2;

  border: 1px solid #cdcdcd;

  background: #fcfcfc;

  box-shadow: 0 1px 3px 0 rgba(195, 195, 195, 0.3);

}



.well3 {

  margin: 2em 0 2.5em;

  padding: 1em 1.5em;

  line-height: 2.0;

  border: 1px dashed #cdcdcd;

  background: #fcfcfc;

  box-shadow: 0 1px 3px 0 rgba(195, 195, 195, 0.3);

}



.wl_red {

  background-color: #f2dede;

  border-color: #ebccd1;

  color: #a94442;

}



.wl_yellow {

  background-color: #fcf8e3;

  border-color: #faebcc;

  color: #8a6d3b;

}



.wl_blue {

  background-color: #d9edf7;

  border-color: #bce8f1;

  color: #31708f;

}



.wl_green {

  background-color: #dff0d8;

  border-color: #d6e9c6;

  color: #3c763d;

}



/* ----------------------------------------------------------------------

 button - CSSボタンのスタイル

---------------------------------------------------------------------- */

.q_button {

  background-color: #535353;

  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);

  box-sizing: border-box;

  color: #ffffff !important;

  display: inline-block;

  font-size: 100%;

  font-weight: 400;

  min-width: 200px;

  margin: 0;

  max-width: 90%;

  padding: .6em 1.3em .5em;

  transition: all 0.3s ease-in-out 0s;

  text-decoration: none;

  text-align: center;

  vertical-align: middle;

}



.q_button:hover, .q_button:focus {

  background-color: #7d7d7d;

  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15) inset;

  color: #ffffff;

  text-decoration: none;

}



/* Button option */

.rounded {

  border-radius: 6px;

}



.pill {

  border-radius: 50px;

}



.sz_full {

  min-width: 100px;

  max-width: 100%;

  display: block;

  font-size: 110%;

  padding: 1em 1.5em .9em;

}



.sz_l {

  min-width: 350px;

  max-width: 90%;

  font-size: 110%;

  padding: .8em 1.5em .7em;

}



@media screen and (max-width: 767px) {

  .sz_l {

    box-sizing: border-box;

    min-width: 0;

    max-width: 100%;

    width: 100%;

  }

}



.sz_s {

  min-width: 100px;

  max-width: 90%;

  font-size: 85%;

  padding: .4em 1em .3em;

}



.bt_red {

  background: #c01f0e;

  color: #ffffff;

}



.bt_red:hover, .bt_red:focus {

  background-color: #d33929;

  color: #ffffff;

}



.bt_yellow {

  background: #f1c40f;

  color: #ffffff;

}



.bt_yellow:hover, .bt_yellow:focus {

  background-color: #f9d441;

  color: #ffffff;

}



.bt_blue {

  background: #2980b9;

  color: #ffffff;

}



.bt_blue:hover, .bt_blue:focus {

  background-color: #3a91c9;

  color: #ffffff;

}



.bt_green {

  background: #27ae60;

  color: #ffffff;

}



.bt_green:hover, .bt_green:focus {

  background-color: #39c574;

  color: #ffffff;

}



/* ----------------------------------------------------------------------

Youtube responsive - Youtube動画のレスポンシブ表示

---------------------------------------------------------------------- */

.ytube {

  position: relative;

  height: 0;

  margin-top: 20px;

  margin-bottom: 20px;

  padding-bottom: 56.25%;

  padding-top: 30px;

  overflow: hidden;

}



.ytube iframe {

  position: absolute;

  top: 0;

  right: 0;

  width: 100% !important;

  height: 100% !important;

}



/* ----------------------------------------------------------------------

Table responsive - テーブルのレスポンシブ表示

---------------------------------------------------------------------- */

.rps_table {

  line-height: 2.0;

}



@media only screen and (max-width: 480px) {

  .rps_table tr {

    display: block;

    margin-bottom: 1.5em;

  }



  .rps_table th, .rps_table td {

    display: list-item;

    list-style-type: none;

    border: none;

  }

}



/* ----------------------------------------------------------------------

 Cardlink style - カードリンクのスタイル

---------------------------------------------------------------------- */

.cardlink {

  padding: 12px 12px 12px 12px;

  margin: 10px 0;

  border: 1px solid #ddd;

  word-wrap: break-word;

  max-width: 100%;

  background: #fafafa;

}



.cardlink_thumbnail {

  float: left;

  margin-right: 20px;

}



.cardlink_content {

  line-height: 1.6;

}



.cardlink_timestamp {

  display: inline;

  margin: 0;

  padding: 0;

  vertical-align: top;

  color: #222;

  line-height: 1.6;

  font-size: 12px;

}



.cardlink_title {

  font-size: 14px;

  margin: 0 0 5px;

}



.cardlink_title a {

  font-weight: bold;

  color: #000;

  text-decoration: none;

}



.cardlink_title a:hover {

  text-decoration: underline;

}



.cardlink_excerpt {

  color: #333;

  font-size: 12px;

  overflow: hidden;

  line-height: 1.8;

}



.cardlink_footer {

  clear: both;

}



.clear {

  clear: both;

}



@media screen and (max-width: 767px) {

  .cardlink_thumbnail {

    float: none;

  }



  .cardlink_timestamp {

    line-height: 2.4;

    vertical-align: middle;

  }



  .cardlink_excerpt {

    float: none;

  }

}



/* ----------------------------------------------------------------------

 Contactform - お問い合わせフォーム

---------------------------------------------------------------------- */

.wpcf7 {

  width: 100%;

  margin-top: 1.5em;

}



.wpcf7 p {

  margin-bottom: 1.25em;

  font-weight: 700;

  padding-bottom: 1.5em;

  border-bottom: 1px dotted #e3d0be;

}



.wpcf7 p:last-of-type {

  padding: 0;

  border: none;

}



.wpcf7 input, .wpcf7 textarea {

  box-sizing: border-box;

  width: 100%;

  border: 1px solid #e3d0be;

  line-height: 1.2;

  padding: 18px;

  background: #ffffff;

  border-radius: 10px;

  margin-top: 0.6em;

}



.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] {

  width: auto;

  max-width: 97%;

  border: 1px solid #ccc;

  padding: 8px;

}



.wpcf7 select, .wpcf7 .wpcf7-list-item-label {

  line-height: 1.2;

  font-size: 14px;

}



.wpcf7-list-item {

  display: block;

}



.wpcf7 input:focus, .wpcf7 textarea:focus {

  outline: none;

  border: 1px solid #bbb;

  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2);

  box-shadow: inner 0 0 5px rgba(0, 0, 0, 0.5);

}



.wpcf7 input.wpcf7-submit, .wpcf7 .wpcf7-previous {

  position: relative;

  display: block;

  background-color: #526956;

  cursor: pointer;

  border: none !important;

  color: #ffffff;

  text-align: center;

  text-decoration: none;

  outline: none;

  -webkit-transition: all .3s;

  padding: 0;

  transition: all .3s;

  line-height: 70px;

  max-width: 400px;

  margin: 30px auto 0;

  border-radius: 35px;

}



.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-submit::before, .wpcf7 input.wpcf7-submit::after {

  -webkit-box-sizing: border-box;

  -moz-box-sizing: border-box;

  box-sizing: border-box;

}



.wpcf7 input.wpcf7-submit:hover, .wpcf7 .wpcf7-previous:hover {

  background-color: #d39653;

}



.wpcf7 .wpcf7-not-valid {

  border-color: #ff5c5c;

}



.wpcf7 .wpcf7-response-output {

  margin: 10px 0 0;

  padding: 8px 35px 8px 14px;

  -webkit-border-radius: 4px;

  -moz-border-radius: 4px;

  border-radius: 4px;

}



.wpcf7-spinner {

  display: none;

}



.wpcf7-not-valid-tip {

  color: #ff5c5c;

  font-weight: 700;

}



.wpcf7 .wpcf7-validation-errors {

  color: #dc3232;

  background-color: #F2DEDE;

  border: 1px solid #EED3D7;

}



.wpcf7 .wpcf7-mail-sent-ok {

  color: #3A87AD;

  background-color: #D9EDF7;

  border: 1px solid #BCE8F1;

}



.wpcf7 .wpcf7-previous+br {

  display: none;

}



.wpcf7 form .wpcf7-response-output {

  margin: 2em 0.5em 2em;

  padding: 0;

  border: none;

  text-align: center;

}



.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {

  background: #ff5c5c;

  color: #ffffff;

  box-sizing: border-box;

  padding: 15px 20px;

  width: 100%;

  margin: 2em auto 0;

  border-radius: 0;

  font-weight: 700;

}



@media only screen and (max-width: 485px) {

  .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {

    text-align: left;

    padding: 10px 15px;

  }

}



/* ----------------------------------------------------------------------

 font-size - フォントサイズ

---------------------------------------------------------------------- */

.text70 {

  font-size: 70%;

}



/* フォントサイズ70% */

.text80 {

  font-size: 80%;

}



.text90 {

  font-size: 90%;

}



.text100 {

  font-size: 100%;

}



.text110 {

  font-size: 110%;

}



.text120 {

  font-size: 120%;

}



.text130 {

  font-size: 130%;

}



.text140 {

  font-size: 140%;

}



.text150 {

  font-size: 150%;

}



.text160 {

  font-size: 160%;

}



.text170 {

  font-size: 170%;

}



.text180 {

  font-size: 180%;

}



.text190 {

  font-size: 190%;

}



.text200 {

  font-size: 200%;

}



.text210 {

  font-size: 210%;

}



.text220 {

  font-size: 220%;

}



/* 太字 */

.b {

  font-weight: 700;

}



/* 下線 */

.u {

  text-decoration: underline;

}



/* 打ち消し線 */

.del {

  text-decoration: line-through;

}



/* ----------------------------------------------------------------------

 font-color - フォントカラー

---------------------------------------------------------------------- */

.red {

  color: red;

}



/* 赤色 */

.blue {

  color: #2ca9e1;

}



/* 青色 */

.green {

  color: #82ae46;

}



/* 緑色 */

.orange {

  color: #ff7d00;

}



/* 橙色 */

.yellow {

  color: #fff000;

}



/* 黄色 */

.pink {

  color: #ff0084;

}



/* ピンク */

.gray {

  color: #999999;

}



/* グレー */

/* ----------------------------------------------------------------------

 background-color - 背景色

---------------------------------------------------------------------- */

.bg-yellow {

  padding: 2px;

  background-color: #ff0;

}



/* 黄色の文字背景 */

.bg-blue {

  padding: 2px;

  background-color: #4ab0f5;

}



/* 青色の文字背景 */

.bg-red {

  padding: 2px;

  background-color: red;

}



/* 赤色の文字背景 */

/* ----------------------------------------------------------------------

 text-align - 配置

---------------------------------------------------------------------- */

.align1 {

  text-align: center !important;

}



/* 中央寄せ */

.align2 {

  text-align: right !important;

}



/* 右寄せ */

.align3 {

  text-align: left !important;

}



/* 左寄せ */

/* ----------------------------------------------------------------------

 float - 回り込み

---------------------------------------------------------------------- */

.r-flo {

  float: right;

  margin: 10px;

}



/* 右に回り込み */

.l-flo {

  float: left;

  margin: 10px;

}



/* 左に回り込み */

.f-clear {

  clear: both;

}



/* 回り込みの解除 */

/* ----------------------------------------------------------------------

 hover - 画像リンクマウスオーバー時の不透明度

---------------------------------------------------------------------- */

a img.fade {

  background: none !important;

  outline: none;

  -webkit-transition: all .3s;

  transition: all .3s;

}



a:hover img.fade {

  opacity: 0.7;

  filter: alpha(opacity=70);

  -ms-filter: "alpha( opacity=70 )";

  background: none !important;

}



/* ----------------------------------------------------------------------

 text-style - テキストスタイル

---------------------------------------------------------------------- */

.att {

  padding-left: 1em;

  text-indent: -1em;

}



/* 注意書き等で二行目以降を字下げ */

.att_box {

  margin: 2em 0 2.5em;

  padding: 1em 1.2em;

  line-height: 2.0;

  border: 1px dotted #cccccc;

  background: #fcfcfc;

  box-shadow: 0px 4px 0px 0px #f7f7f7;

}



/* テキストボックス */

/* ----------------------------------------------------------------------

 margin - 要素の外側の余白

---------------------------------------------------------------------- */

.m0 {

  margin: 0 !important;

}



/* margin 0px を指定するクラス */

.mt0 {

  margin-top: 0 !important;

}



/* margin-top0px を指定するクラス */

.mr0 {

  margin-right: 0 !important;

}



/* margin-right0px を指定するクラス*/

.mb0 {

  margin-bottom: 0 !important;

}



/* margin-bottom0px を指定するクラス*/

.ml0 {

  margin-left: 0 !important;

}



/* margin-left0px を指定するクラス*/

.m5 {

  margin: 5px !important;

}



.mt5 {

  margin-top: 5px !important;

}



.mr5 {

  margin-right: 5px !important;

}



.mb5 {

  margin-bottom: 5px !important;

}



.ml5 {

  margin-left: 5px !important;

}



.m10 {

  margin: 10px !important;

}



.mt10 {

  margin-top: 10px !important;

}



.mr10 {

  margin-right: 10px !important;

}



.mb10 {

  margin-bottom: 10px !important;

}



.ml10 {

  margin-left: 10px !important;

}



.m15 {

  margin: 15px !important;

}



.mt15 {

  margin-top: 15px !important;

}



.mr15 {

  margin-right: 15px !important;

}



.mb15 {

  margin-bottom: 15px !important;

}



.ml15 {

  margin-left: 15px !important;

}



.m20 {

  margin: 20px !important;

}



.mt20 {

  margin-top: 20px !important;

}



.mr20 {

  margin-right: 20px !important;

}



.mb20 {

  margin-bottom: 20px !important;

}



.ml20 {

  margin-left: 20px !important;

}



.m25 {

  margin: 25px !important;

}



.mt25 {

  margin-top: 25px !important;

}



.mr25 {

  margin-right: 25px !important;

}



.mb25 {

  margin-bottom: 25px !important;

}



.ml25 {

  margin-left: 25px !important;

}



.m30 {

  margin: 30px !important;

}



.mt30 {

  margin-top: 30px !important;

}



.mr30 {

  margin-right: 30px !important;

}



.mb30 {

  margin-bottom: 30px !important;

}



.ml30 {

  margin-left: 30px !important;

}



.m35 {

  margin: 35px !important;

}



.mt35 {

  margin-top: 35px !important;

}



.mr35 {

  margin-right: 35px !important;

}



.mb35 {

  margin-bottom: 35px !important;

}



.ml35 {

  margin-left: 35px !important;

}



.m40 {

  margin: 40px !important;

}



.mt40 {

  margin-top: 40px !important;

}



.mr40 {

  margin-right: 40px !important;

}



.mb40 {

  margin-bottom: 40px !important;

}



.ml40 {

  margin-left: 40px !important;

}



.m45 {

  margin: 45px !important;

}



.mt45 {

  margin-top: 45px !important;

}



.mr45 {

  margin-right: 45px !important;

}



.mb45 {

  margin-bottom: 45px !important;

}



.ml45 {

  margin-left: 45px !important;

}



.m50 {

  margin: 50px !important;

}



.mt50 {

  margin-top: 50px !important;

}



.mr50 {

  margin-right: 50px !important;

}



.mb50 {

  margin-bottom: 50px !important;

}



.ml50 {

  margin-left: 50px !important;

}



.m55 {

  margin: 55px !important;

}



.mt55 {

  margin-top: 55px !important;

}



.mr55 {

  margin-right: 55px !important;

}



.mb55 {

  margin-bottom: 55px !important;

}



.ml55 {

  margin-left: 55px !important;

}



.m60 {

  margin: 60px !important;

}



.mt60 {

  margin-top: 60px !important;

}



.mr60 {

  margin-right: 60px !important;

}



.mb60 {

  margin-bottom: 60px !important;

}



.ml60 {

  margin-left: 60px !important;

}



.m65 {

  margin: 65px !important;

}



.mt65 {

  margin-top: 65px !important;

}



.mr65 {

  margin-right: 65px !important;

}



.mb65 {

  margin-bottom: 65px !important;

}



.ml65 {

  margin-left: 65px !important;

}



.m70 {

  margin: 70px !important;

}



.mr70 {

  margin-right: 70px !important;

}



.mb70 {

  margin-bottom: 70px !important;

}



.ml70 {

  margin-left: 70px !important;

}



.m75 {

  margin: 75px !important;

}



.mt75 {

  margin-top: 75px !important;

}



.mr75 {

  margin-right: 75px !important;

}



.mb75 {

  margin-bottom: 75px !important;

}



.ml75 {

  margin-left: 75px !important;

}



.m80 {

  margin: 80px !important;

}



.mt80 {

  margin-top: 80px !important;

}



.mr80 {

  margin-right: 80px !important;

}



.mb80 {

  margin-bottom: 80px !important;

}



.ml80 {

  margin-left: 80px !important;

}



.m100 {

  margin: 100px !important;

}



.mt100 {

  margin-top: 100px !important;

}



.mr100 {

  margin-right: 100px !important;

}



.mb100 {

  margin-bottom: 100px !important;

}



.ml100 {

  margin-left: 100px !important;

}



/* ----------------------------------------------------------------------

 padding - 要素の内側の余白

---------------------------------------------------------------------- */

.p0 {

  padding: 0 !important;

}



/* padding-0px を指定するクラス */

.pt0 {

  padding-top: 0 !important;

}



/* padding-top0px を指定するクラス */

.pr0 {

  padding-right: 0 !important;

}



/* padding-right0px を指定するクラス */

.pb0 {

  padding-bottom: 0 !important;

}



/* padding-bottom0px を指定するクラス */

.pl0 {

  padding-left: 0 !important;

}



/* padding-left0px を指定するクラス */

.p5 {

  padding: 5px !important;

}



.pt5 {

  padding-top: 5px !important;

}



.pr5 {

  padding-right: 5px !important;

}



.pb5 {

  padding-bottom: 5px !important;

}



.pl5 {

  padding-left: 5px !important;

}



.p10 {

  padding: 10px !important;

}



.pt10 {

  padding-top: 10px !important;

}



.pr10 {

  padding-right: 10px !important;

}



.pb10 {

  padding-bottom: 10px !important;

}



.pl10 {

  padding-left: 10px !important;

}



.p25 {

  padding: 25px !important;

}



.pt25 {

  padding-top: 25px !important;

}



.pr25 {

  padding-right: 25px !important;

}



.pb25 {

  padding-bottom: 25px !important;

}



.pl25 {

  padding-left: 25px !important;

}



/* パスワード保護 */

.post-password-form {

  border: 1px solid #ddd;

  background: #f5f5f5;

  padding: 25px 36px;

  display: inline-block;

  box-sizing: border-box;

  width: 75%;

  margin: 0 auto 30px;

  display: block;

}



.post-password-form p {

  line-height: 1.2;

  margin-bottom: 20px;

}



.post-password-form p:last-child {

  margin-bottom: 0;

}



.post-password-form input[type="password"] {

  border: 1px solid #ddd;

  box-shadow: none;

  height: 40px;

  width: 250px;

  margin-right: 13px;

  box-sizing: border-box;

  padding: 0 10px;

}



.post-password-form input[type="submit"] {

  box-sizing: border-box;

  color: #ffffff;

  display: inline-block;

  padding: 0 20px;

  height: 40px;

  line-height: 40px;

  font-size: 14px;

  text-align: center;

  line-height: 1;

  cursor: pointer;

  min-width: 100px;

  vertical-align: top;

}



.post-password-form input[type="submit"]:hover {

  color: #ffffff;

}



/* pagebuilder v1.3.4 */

.slick-prev:before {

  content: '';

}



[dir='rtl'] .slick-prev:before {

  content: '';

}



.slick-next:before {

  content: '';

}



[dir='rtl'] .slick-next:before {

  content: '';

}



.pb-widget-slider .pb_slider .slick-next, .pb-widget-slider .pb_slider .slick-prev {

  top: calc(50% + 30px);

}



/* 追加カスタマイズ */

.flex-inner {

  display: -webkit-flex;

  display: flex;

  flex-wrap: wrap;

}



footer {

  box-sizing: border-box;

  padding: 10vw 0;

  font-size: 0.8em;

  line-height: 1.8;

  position: relative;

  color: #fff;

  overflow: hidden;

  background: url(/wp-content/themes/story_tcd041/img/footer__bg.jpg?ver=1.0);

}



footer a {

  color: #ffffff;

}



.footer_about_sec {

  width: 84%;

  margin: 0 auto;

  position: relative;

}



.footer_about_inner {

  width: 70%;

  box-sizing: border-box;

  padding-right: 50px;

  position: relative;

  z-index: 1;

}



.footer-menu {

  width: 30%;

  box-sizing: border-box;

  position: relative;

  z-index: 1;

}



ul.footer-menu-list {

  display: -webkit-flex;

  display: flex;

  flex-wrap: wrap;

  margin-bottom: -1em;

}



ul.footer-menu-list:nth-of-type(even) {

  margin-right: 0;

}



ul.footer-menu-list li {

  line-height: 1;

  width: calc(50% - 0.5em);

  margin-right: 1em;

  margin-bottom: 1.5em;

}



ul.footer-menu-list li:nth-of-type(2n) {

  margin-right: 0;

}



ul.footer-menu-list li a {

  box-sizing: border-box;

  display: block;

  padding-left: 1em;

  position: relative;

}



ul.footer-menu-list li a::before {

  position: absolute;

  left: 0;

  font-size: 0.5em;

  top: 0.5em;

  color: #ffffff;

  font-family: "Font Awesome 5 Free";

  content: "\f054";

  font-weight: 700;

}



ul.footer-menu-list li.footer-menu-title {

  margin-bottom: 10px;

  font-weight: 700;

  border-bottom: 1px dotted #d39653;

  padding-bottom: 6px;

}



.footer_about_inner h2 {

  font-size: 2em;

  margin-bottom: 1em;

  line-height: 1;

}



p.footer-address {

  position: relative;

  padding-left: 1.25em;

  margin-bottom: 1em;

}



p.footer-address::before {

  font-family: "Font Awesome 5 Free";

  content: "\f3c5";

  font-weight: 700;

  position: absolute;

  top: 0;

  left: 0;

  color: #ffffff;

}



address.footer_tel {

  font-size: 1.5em;

}



address.footer_tel span {

  margin-right: 0.25em;

  font-size: 0.7em;

  color: #ffffff;

}



p.footer-info span {

  margin-right: 0.5em;

}



a.footer_but {

  display: block;

  margin: 1.5em auto 0 0;

  line-height: 60px;

  background: #d39653;

  color: #ffffff;

  box-sizing: border-box;

  position: relative;

  max-width: 300px;

  padding: 0 25px;

  text-align: left;

  box-shadow: 0px 5px 10px -41px rgba(0, 0, 0, 0.035),

    0px 40px 80px -41px rgba(0, 0, 0, 0.07);

}



a.footer_but::after {

  font-family: "Font Awesome 5 Free";

  content: "\f0e0";

  position: absolute;

  right: 25px;

  font-size: 20px;

  font-weight: 700;

}



a.footer_but.footer-line {

  background: #02a400;

}



a.footer_but.footer-line::after {

  font-family: 'design_plus';

  content: '\e909';

  font-weight: 500;

}



a:hover.footer_but {

  background: #d1a274;

}



ul.footer-sns {

  margin: 40px auto 0 0;

  display: -webkit-flex;

  display: flex;

  flex-wrap: wrap;

  width: 50px;

}



ul.footer-sns li {

  display: block;

  width: 50px;

  height: 50px;

  position: relative;

}



ul.footer-sns li a {

  display: block;

  width: 50px;

  height: 50px;

  line-height: 50px;

  background: #352e28;

  border-radius: 50%;

  position: relative;

}



ul.footer-sns li a span {

  display: none;

}



ul.footer-sns li a.sns-but.facebook-icon {

  background: #1877f2;

}



ul.footer-sns li a.sns-but.instagram-icon {

  background: #CF2E92;

}



ul.footer-sns li a.sns-but.twitter-icon {

  background: #1DA1F2;

}



ul.footer-sns li a::after {

  content: '';

  color: #ffffff;

  position: absolute;

  line-height: 50px;

  text-align: center;

  width: 100%;

  top: 0;

  left: 0;

  font-size: 20px;

}



ul.footer-sns li a.sns-but.facebook-icon::after {

  font-family: 'design_plus';

  content: '\e902';

}



ul.footer-sns li a.sns-but.instagram-icon::after {

  font-family: 'design_plus';

  content: '\ea92';

}



ul.footer-sns li a.sns-but.twitter-icon::after {

  font-family: 'design_plus';

  content: '\e904';

}



ul.footer-sns li a:hover {

  background: #d39653 !important;

}



/* フロントメイン */

#top-slider-content {

  position: absolute;

  width: 100%;

  height: 100%;

  z-index: 4;

}



.top-slider-content-inner {

  width: 100%;

  position: relative;

  height: 100%;

  flex-direction: column;

  justify-content: center;

  align-items: center;

  display: -webkit-flex;

  display: flex;

  z-index: 2;

}



.front-main-box-inner h2 {

  font-size: 1.8em;

  letter-spacing: 0.1em;

  line-height: 2;

  writing-mode: vertical-rl;

  -webkit-writing-mode: vertical-rl;

  -ms-writing-mode: vertical-rl;

  display: block;

  margin: 0 auto;

  text-shadow: 0px 0px 30px #000;

  font-weight: 700;

}



.header::before {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background: #1a4848;

  top: 0;

  left: 0;

  z-index: 3;

  opacity: 0.2;

}



.front-main-box {

  width: 80%;

  color: #ffffff;

}



.front_second {

  background: url(/wp-content/themes/story_tcd041/img/front_second.jpg?ver=1.0);

  box-sizing: border-box;

  padding: 10vw 0;

  width: 100%;

  position: relative;

  background-size: cover;

  background-position: center;

  margin: 0 auto;

}



.front_second_inner-text h3 {

  font-size: 2.5em;

  font-weight: 700;

  line-height: 1.8;

  margin-bottom: 1em;

}



.front-third {

  box-sizing: border-box;

  padding: 10vw 0;

  counter-reset: number 0;

  overflow: hidden;

  position: relative;

}



.third-box {

  box-sizing: border-box;

  width: 84%;

  margin: 0 auto 6vw;

}



.front-third-text {

  width: 45%;

  box-sizing: border-box;

}



.front-third-img {

  width: 55%;

}



.front-third-text-inner {

  margin: 0 auto;

  position: relative;

}



.third-box:nth-of-type(even) .front-third-text {

  margin-left: 55%;

}



.third-box:nth-of-type(even) .front-third-img {

  margin-left: -100%;

}



.third-box:nth-of-type(odd) .front-third-text {

  padding-right: 4vw;

}



.third-box:nth-of-type(even) .front-third-text {

  padding-left: 4vw;

}



.third-box:last-of-type {

  margin-bottom: 0;

}



.front-third-text-inner h3 {

  font-size: 2em;

  line-height: 1.6;

  margin-bottom: 1em;

  font-weight: 700;

}



.front-third-text-inner::before {

  counter-increment: number 1;

  content: "POINT "counter(number) " ";

  font-size: 10px;

  display: block;

  line-height: 1;

  margin-bottom: 3em;

  letter-spacing: 2px;

}



.front_topics {

  padding: 0 0 10vw;

  position: relative;

}



.front_topics-inner {

  width: 100%;

}



.front_topics-inner-title {

  width: 20%;

  box-sizing: border-box;

  padding-right: 4vw;

}



h2.front_topics-title {

  font-size: 2em;

  line-height: 1;

  font-weight: 700;

  writing-mode: vertical-rl;

  -webkit-writing-mode: vertical-rl;

  -ms-writing-mode: vertical-rl;

}



@media only screen and (max-width: 768px) {

  .content02-content {

    width: 100%;

    margin: 0 auto 2em;

    font-size: 1em;

  }



  .content02-content:last-of-type {

    margin-bottom: 0;

  }



  .front-third {

    padding: 70px 0;

  }



  .third-box {

    width: 100%;

    margin-bottom: 70px;

  }



  .front-third-text {

    width: 84%;

    margin: 0 auto !important;

    padding: 0 !important;

  }



  .front-third-text-inner {

    max-width: unset;

  }



  .front-third-img {

    width: 92%;

    margin: 40px auto 0 0 !important;

  }



  .third-box:nth-of-type(even) .front-third-img {

    margin: 40px 0 0 auto !important;

  }



  #content01 {

    padding: 70px 0;

  }



  .front_second {

    padding: 70px 0;

  }



  .front_topics {

    padding: 0 0 70px;

  }



  .front_inner-img {

    width: 100%;

  }



  .front_topics-inner-title {

    width: 100%;

    padding: 0;

    border-right: none;

    margin-bottom: 3em;

  }



  .top-blog {

    width: 100%;

    padding: 0;

  }

}



@media only screen and (max-width: 767px) {

  .top-blog {

    margin-bottom: -15px;

  }

}



/* 追加フロント */

.home .header::after {

  background-image: url(/wp-content/themes/story_tcd041/img/main__bg.png);

}



.content02-img-inner {

  width: 50%;

}



.content02-text-inner {

  width: 50%;

  box-sizing: border-box;

  padding: 7vw;

}



.img-frame {

  position: sticky;

  width: 100%;

  height: 100vh;

  overflow: hidden;

  margin: 0 auto;

  background: #ddd;

  top: 0;

}



.img-01, .img-02, .img-03 {

  position: absolute;

  top: 0;

  left: 0;

  width: 100%;

  height: 100%;

  background-size: cover;

  background-repeat: no-repeat;

  background-position: center;

}



.img-01 {

  background-image: url('/wp-content/themes/story_tcd041/img/content02-img01.jpg?ver=1.0');

  animation: slide-animation-01 16s infinite;

}



.img-02 {

  background-image: url('/wp-content/themes/story_tcd041/img/content02-img02.jpg?ver=1.0');

  animation: slide-animation-02 16s infinite;

}



.img-03 {

  background-image: url('/wp-content/themes/story_tcd041/img/content02-img03.jpg?ver=1.1');

  animation: slide-animation-03 16s infinite;

}



@keyframes slide-animation-01 {

  0% {

    opacity: 1;

  }



  30% {

    opacity: 1;

  }



  40% {

    opacity: 0;

  }



  90% {

    opacity: 0

  }



  100% {

    opacity: 1;

  }

}



@keyframes slide-animation-02 {

  0% {

    opacity: 0;

  }



  30% {

    opacity: 0;

  }



  40% {

    opacity: 1;

  }



  60% {

    opacity: 1;

  }



  70% {

    opacity: 0;

  }



  100% {

    opacity: 0;

  }

}



@keyframes slide-animation-03 {

  0% {

    opacity: 0;

  }



  60% {

    opacity: 0;

  }



  70% {

    opacity: 1;

  }



  90% {

    opacity: 1;

  }



  100% {

    opacity: 0;

  }

}



h2.front_topics-title::before {

  content: 'TOPICS';

  display: block;

  font-size: 10px;

  margin-left: 30px;

  font-weight: 500;

  letter-spacing: 2px;

}



.article03>a:hover .article03-title {

  color: #d39653;

}



.front_inner-text h2 {

  font-size: 2.5em;

  margin-left: 2em;

  font-weight: 700;

}



.front_inner-text p {

  font-size: 1.1em;

  margin-left: 1.5em;

}



.front_inner-text p:last-of-type {

  margin: 0;

}



.header::after {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background-image: url(/wp-content/themes/story_tcd041/img/front_second__bg.png);

  left: 0;

  bottom: -1px;

  background-size: 100% auto;

  background-position: center bottom;

  background-repeat: no-repeat;

  z-index: 3;

}



.content02-text-box {

  margin-bottom: 5em;

  padding-bottom: 5em;

  border-bottom: 1px dashed #f4ece5;

}



.content02-text-box:last-of-type {

  margin-bottom: 0;

  padding-bottom: 0;

  border-bottom: none;

}



.content02-text-box h3 {

  font-size: 2em;

  line-height: 1.8;

  margin-bottom: 1em;

}



a.content02-but {

  display: block;

  line-height: 50px;

  margin-top: 1.5em;

  position: relative;

  font-size: 1.2em;

  background: #d1a274;

  color: #ffffff;

  max-width: 300px;

  text-align: left;

  position: relative;

  padding: 0 25px;

}



a.content02-but::after {

  font-family: 'design_plus';

  content: '\e910';

  font-size: 10px;

  position: absolute;

  right: 25px;

}



a:hover.content02-but {

  background: #d39653;

}



.front_second_inner-text {

  color: #ffffff;

}



.front_second::before {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background: #000;

  top: 0;

  left: 0;

  opacity: 0.4;

}



.front_second::after {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background-image: url(/wp-content/themes/story_tcd041/img/front_second__bg.png);

  background-size: 100% auto;

  background-repeat: no-repeat;

  background-position: center bottom;

  bottom: 0;

  left: 0;

}



.front-third-inner {

  align-items: center;

}



.front_topics .inner.flex-inner {

  position: relative;

  z-index: 2;

}



.front_topics::before {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background-image: url(/wp-content/themes/story_tcd041/img/front_topics_parts01.png);

  background-repeat: no-repeat;

  background-position: left bottom;

  z-index: 0;

  bottom: 0;

  left: 0;

}



.front_topics::after {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background-image: url(/wp-content/themes/story_tcd041/img/front_topics_parts02.png);

  background-repeat: no-repeat;

  background-position: right bottom;

  z-index: 0;

  bottom: 0;

  right: 0;

}



.front_topics::after, .front_topics::before {

  mix-blend-mode: multiply;

  opacity: 0.8;

  background-size: auto 60%;

}



@media only screen and (max-width: 768px) {





  h2.front_topics-title {

    writing-mode: horizontal-tb;

    -webkit-writing-mode: horizontal-tb;

    -ms-writing-mode: horizontal-tb;

    text-align: center;

  }



  h2.front_topics-title::before {

    margin: 0 auto 2em;

  }



  .content02-text-box {

    margin-bottom: 50px;

    padding-bottom: 50px;

  }



  .content02-text-box h3 {

    font-size: 1.6em;

  }



  .content02-text-inner {

    width: 100%;

    padding: 70px 8%;

  }



  .content02-img-inner {

    width: 100%;

  }



  .img-frame {

    height: 50vh;

    min-height: 350px;

  }



  a.content02-but {

    margin-left: auto;

    margin-right: auto;

  }

}



@media only screen and (max-height: 400px) {

  .front_inner-text h2 {

    font-size: 1.6em;

  }



  .front_topics::after, .front_topics::before {

    background-size: 30% auto;

  }

}



@media only screen and (max-width: 485px) {

  .front_inner-text {

    writing-mode: horizontal-tb;

    -webkit-writing-mode: horizontal-tb;

    -ms-writing-mode: horizontal-tb;

    height: auto;

    min-height: unset;

    max-height: unset;

  }



  .front_inner-text h2 {

    font-size: 2em;

    margin: 0 auto 1em;

    text-align: center;

  }



  .front_inner-text p {

    margin: 0 auto 1em;

  }



  .front_topics::after, .front_topics::before {

    background-size: 30% auto;

  }



  .front_second_inner-text h3 {

    font-size: 1.4em;

  }

}



/* 追加フロント END */



/* fee */

.caution__inner {

  margin-bottom: 3em;

}



.price__inner {

  width: 33.333333%;

  border-bottom: 1px solid #e3d0be;

  border-right: 1px solid #e3d0be;

  padding: 40px;

  position: relative;

}



.price__box.flex-inner {

  border-left: 1px solid #e3d0be;

  border-top: 1px solid #e3d0be;

}



ul.price__caution li {

  padding-left: 1.5em;

}



ul.price__caution li::before {

  font-family: "Font Awesome 5 Free";

  content: "\f058";

  font-weight: 700;

  position: absolute;

  top: 0;

  left: 0;

  color: #739786;

}



.price__inner table th, .price__inner table td {

  display: block;

  width: 100%;

}



.price__inner table tr {

  border-top: none;

}



.price__inner table tr:last-of-type {

  border-bottom: none;

}



.price__inner table th {

  padding-bottom: 0;

}



.price__inner table td {

  padding-top: 0;

}



.price__inner table tr:last-of-type td {

  padding-bottom: 0;

}



.price__inner::before {

  width: 100%;

  height: 100%;

  position: absolute;

  content: '';

  background: #ffffff;

  top: 0;

  left: 0;

  opacity: 0.4;

  z-index: -1;

}



.price__inner.caution__inner::before {

  display: none;

}



.price__inner table tr:first-of-type th {

  padding-top: 0.5em;

}



.businesstrip__menu {

  background: #ffffff;

  margin: 3em auto 0;

  padding: 2em 2.5em;

}



.businesstrip__menu h2 {

  text-align: center;

}



.businesstrip__menu__price-box {

  width: 50%;

  border-right: 1px solid #d1a274;

  border-bottom: 1px solid #d1a274;

  padding: 1.5em 2em;

  text-align: center;

}



.businesstrip__menu__price.flex-inner {

  box-sizing: border-box;

  border-top: 1px solid #d1a274;

  border-left: 1px solid #d1a274;

  margin: 0 auto 1em;

}



.businesstrip__menu__price-box h3 {

  padding: 0;

  border: none;

  color: #ad7c45;

}



p.businesstrip__menu__price__text {

  font-size: 1.5em;

  line-height: 1;

}



p.caution__text {

  margin: 0;

  padding-left: 1.25em;

  line-height: 1.8;

  margin-bottom: 0.25em;

}



p.caution__text::before {

  content: '※';

  position: absolute;

  top: 0;

  left: 0;

  color: #ff3c3c;

}



@media only screen and (max-width: 768px) {

  .price__inner {

    width: 50%;

    padding: 30px;

  }

}



@media only screen and (max-width: 485px) {

  .price__inner {

    width: 100%;

  }



  .businesstrip__menu__price-box {

    width: 100%;

  }

}



/* fee END */



/* flow */

.flow-sec {

  counter-reset: number 0;

  width: 50%;

}



.flow-sec:nth-of-type(1) {

  padding-right: 3em;

  border-right: 1px dotted #e3d0be;

}



.flow-sec:nth-of-type(2) {

  padding-left: 3em;

}



.flow-sec h2 {

  border: none;

  text-align: center;

}



.flow-sec h2::after {

  height: 2px;

  width: 50px;

  position: absolute;

  content: '';

  background: #d1a274;

  bottom: 0;

  left: calc(50% - 25px);

}



.flow-sec p {

  padding-left: 30px;

  margin: 0;

  padding-bottom: 1em;

}



.flow-sec p::before {

  width: 11px;

  height: 11px;

  content: '';

  background: #e3d0be;

  top: calc(1.15em - 5px);

  left: 0;

  position: absolute;

  border-radius: 50%;

}



.flow-sec p::after {

  width: 1px;

  height: 100%;

  content: '';

  position: absolute;

  background: #e3d0be;

  top: 1em;

  left: 5px;

}



.flow-sec p:last-of-type {

  padding-bottom: 0;

}



.flow-sec p:last-of-type::after {

  display: none;

}



@media only screen and (max-width: 485px) {

  .flow-sec {

    width: 100%;

    padding: 0 0 3em !important;

    border-right: none !important;

    border-bottom: 1px dotted #e3d0be;

    margin-bottom: 3em;

  }



  .flow-sec:last-of-type {

    margin-bottom: 0;

    padding-bottom: 0 !important;

    border-bottom: none;

  }

}



/* flow END */

/* faq */

.faq-sec h2, .faq-sec p {

  padding-left: 45px;

}



.faq-sec h2 {

  font-size: 1.2em;

  margin-bottom: 0.5em;

  border: none;

  padding-bottom: 0;

}



.faq-sec h2::after {

  display: none;

}



.faq-sec p {

  margin-bottom: 2em;

  padding-bottom: 2em;

  border-bottom: 1px solid #e3d0be;

}



.faq-sec p:last-of-type {

  margin-bottom: 0;

  padding-bottom: 0;

  border-bottom: none;

}



.faq-sec h2::before {

  width: 30px;

  height: 30px;

  line-height: 28px;

  background: #d39653;

  position: absolute;

  left: 0;

  top: 0;

  content: 'Q';

  text-align: center;

  font-size: 16px;

  color: #fff;

}



.faq-sec p::before {

  width: 30px;

  height: 30px;

  line-height: 28px;

  background: #ffffff;

  position: absolute;

  left: 0;

  top: 0;

  content: 'A';

  text-align: center;

  font-size: 16px;

  color: #352e28;

}



@media only screen and (max-width: 1024px) {

  .faq-sec h2, .faq-sec p {

    padding-left: 45px;

  }



  .faq-sec h2::before, .faq-sec p::before {

    width: 30px;

    height: 30px;

    line-height: 30px;

    font-size: 20px;

  }

}



/* faq END */



/* greeting */

.content_inner.inner.greeting__box {

  max-width: 850px;

}



img.greeting__img {

  max-width: 400px;

  margin: 0 auto 2em;

}



.content_inner.inner.greeting__box h2 {

  padding: 0;

  border: none;

  font-size: 2em;

  line-height: 2;

}



@media only screen and (max-width: 485px) {

  .content_inner.inner.greeting__box h2 {

    font-size: 1.6em;

  }

}



/* greeting END */



/* information */

span.caution__text {

  font-size: 0.9em;

}



span.caution__text::before {

  content: '※';

  color: #ff5c5c;

}



.map-sec {

  height: 400px;

}



/* information END */



/* contact */

.content_inner.contact-sec {

  max-width: 800px;

}



.contact-sec h2 {

  text-align: center;

}



.contact-sec h2::after {

  left: calc(50% - 25px);

}



.tel-box {

  max-width: 800px;

  margin: 0 auto 3em;

  text-align: center;

}



p.contact-tel-info {

  margin: 0;

}



address.contact-tel {

  font-size: 1.6em;

}



span.contact-tel-title {

  font-size: 0.7em;

  margin-right: 5px;

  color: #d39653;

  font-weight: 700;

}



address.contact-tel a {

  font-weight: 700 !important;

}



p.contact-tel-info span {

  margin-right: 10px;

  color: #d39653;

}



p.contact-tel-caution {

  font-size: 0.9em;

  color: #ff5c5c;

  margin-top: 10px;

}



.mail-box {

  margin: 4em auto 0;

  max-width: 800px;

}



/* contact END */



/* 241116 ご依頼の流れ */

.flow-sec span.note-text {

  display: inline-block;

  font-size: 0.9em;

  text-indent: -1em;

  padding-left: 1em;

}

@media (max-width: 575px) {

  .flow-sec .pc-br {

    display: none;

  }

}





/*20250521追加ここから*/

.price-btn-box {

    margin: 2rem auto 4rem;

}



a.menu-price-btn {

    font-size: 1.2rem;

    text-align: center;

    background: #be6a6a;

    color: #fff;

    padding: 0.6rem;

    display: block;

    max-width: 50%;

    margin: 0 auto;

    box-sizing: border-box;

    box-shadow: 0px 8px 10px -10px #502f0c;

    border-radius: 10px;

}



a.menu-price-btn:hover {

    color: #fff;

    background: #9b3e3e;

}





@media only screen and (max-width: 485px) {

a.menu-price-btn {

    max-width: 100%;

    font-size: 1rem;

    font-weight: 800;

}

}


/* 250528 法人・団体の方へ */
.corp__box {
	margin-bottom:3em;
}
img.corp__img {
    max-width: 600px;
    margin: 0 auto 3em;
}
.content_inner.inner.corp__box h2 {
    padding: 0;
    border: none;
    font-size: 2em;
    line-height: 2;
}
.flex_lay {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
}
.corp-container {
    box-sizing: border-box;
}
.corp-box {
    width: 49%;
    box-sizing: border-box;
    padding: 1.5em;
    background: #ffffff66;
    margin-right: 10px;
    margin-bottom: 10px;
}
.corp-box:nth-of-type(even) {
    margin-right: 0;
}
.corp-box h3 {
}
ul.forcorp  {
    margin-bottom: 15px;
}
ul.forcorp li {
    padding-left: 1.5em;
}
ul.forcorp li::before {
    font-family: "Font Awesome 5 Free";
    content: "\f058";
    font-weight: 700;
    position: absolute;
    top: 0;
    left: 0;
    color: #739786;
}
@media only screen and (max-width: 768px) {
    .corp-box {
        width: 100%;
    }
}


/*20250826追加*/
.knife-text-box {
    margin-bottom: 4rem;
}

.knife-text-flex-inner {
    display: flex;
    border-left: 1px solid #e3d0be;
    border-top: 1px solid #e3d0be;
    flex-wrap: wrap;
}

.knife-box {
    border-bottom: 1px solid #e3d0be;
    border-right: 1px solid #e3d0be;
    padding: 40px;
    position: relative;
    width: 50%;
    display: flex;
}

.knife-box:before {
    width: 100%;
    height: 100%;
    position: absolute;
    content: '';
    background: #ffffff;
    top: 0;
    left: 0;
    opacity: 0.4;
    z-index: -1;
}

.knife-img {
    width: 30%;
    margin-right: 20px;
}

.knife-text {
    width: 70%;
}


@media only screen and (max-width: 768px) {

.knife-img {
    width: 40%;
}

.knife-text {
    width: 60%;
}
}


@media only screen and (max-width: 465px) {
.knife-box {
    width: 100%;
	padding: 20px;
}
}

/* == 260304 ブログ記事 == */
.sns_default_top iframe {
  height: 30px !important;
}