@charset "UTF-8";
/* setting */
/*
	サイト全体で使うフォントの指定
*/
/* メイン・サブカラー */
/* リンク色 */
/*
	サイト全体で使うフォントの指定
*/
/*
	サイト全体で使うフォントの指定
*/
/* ページのwidth */
/* グローバルのアイテム数 */
/* グローバルのアイテムwidth */
/* グローバルのアイテムheight */
/* tool */
/*
	サイト全体で使うmixinの指定
*/
/* base */
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit; /* 1 */
  font: inherit; /* 2 */
  margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button; /* 2 */
  cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type=checkbox],
input[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */
input[type=search] {
  -webkit-appearance: textfield; /* 1 */
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
}

/*
	サイトの基本となるCSS
*/
/* 余白のリセット */
body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
object, iframe, pre, code, p, blockquote,
form, fieldset, legend,
table, th, td, caption, tbody, tfoot, thead {
  margin: 0;
  padding: 0;
}

/* body */
body {
  background: #FDF6EA;
  color: #333;
  font-size: 16px;
  line-height: 1.6;
  word-break: break-all;
  -webkit-text-size-adjust: 100%;
  text-align: center;
}

/*
Font-size list (base: 16px)
   75% =  12px
   81% =  13px
   88% =  14px
   93% =  15px
 100% =  16px
 106% =  17px
 113% =  18px
 119% =  19px
 125% =  20px
 131% =  21px
 138% =  22px
*/
/* リンク色 */
a {
  color: #333333;
}

a:hover, a:active, a:visited {
  color: #80B912;
  text-decoration: none;
}

/* 画像 */
img {
  vertical-align: bottom;
  max-width: 100%;
}

img {
  user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -webkit-touch-callout: none;
}

/* Clearfix */
.clearfix:after, .blog-list li:after, .protective-have-list li:after, .protective-howto-list:after, .protective-find-flow:after, .top-blog .top-blog__list--row li:after, .top-blog .top-blog__list--row:after, .top-blog .top-blog__list li:after, .top-blog .top-blog__list:after, .top-blog .top-blog__title:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden;
}

.clearfix, .blog-list li, .protective-have-list li, .protective-howto-list, .protective-find-flow, .top-blog .top-blog__list--row li, .top-blog .top-blog__list--row, .top-blog .top-blog__list li, .top-blog .top-blog__list, .top-blog .top-blog__title {
  display: inline-block;
}

/* Hides from IE Mac */
* html .clearfix, .blog-list html li, .protective-have-list html li, * html .protective-howto-list, * html .protective-find-flow, .top-blog html .top-blog__list--row li, .top-blog .top-blog__list--row html li, .top-blog html .top-blog__list--row, .top-blog html .top-blog__list li, .top-blog .top-blog__list html li, .top-blog html .top-blog__list, .top-blog html .top-blog__title {
  height: 1%;
}

.clearfix, .blog-list li, .protective-have-list li, .protective-howto-list, .protective-find-flow, .top-blog .top-blog__list--row li, .top-blog .top-blog__list--row, .top-blog .top-blog__list li, .top-blog .top-blog__list, .top-blog .top-blog__title {
  display: block;
}

/* End Hack */
/* layout */
/*
	サイト全体のレイアウトグリッドの指定
*/
.contents {
  padding: 0 10px;
  text-align: left;
}

.layout-section {
  margin-bottom: 40px;
}

/*
	ヘッダーの指定
*/
/* ヘッダー外枠 */
.header {
  background: #fff;
  padding: 20px 5px 20px;
  margin-bottom: 20px;
  position: relative;
  text-align: left;
}

/* ヘッダー上段 */
.site-description {
  margin-bottom: 5px;
  font-weight: normal;
  font-size: 75%;
}

/* ヘッダーメイン部分 */
.header-main {
  position: relative;
}

/* ヘッダーロゴ */
.header-site-name {
  display: block;
  width: 170px;
  margin: 0 0 0 2%;
  float: left;
}

/* グローバルボタン */
.btn--menu {
  background: no-repeat;
  border: none;
  position: absolute;
  top: 13px;
  right: 5px;
  min-width: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.btn--menu img {
  width: 55px;
}

.header-sns {
  position: absolute;
  right: 72px;
  top: 0px;
}
.header-sns li {
  display: inline-block;
  vertical-align: bottom;
  width: 44px;
}
.header-sns li:nth-child(2) a {
  paddding-top: 4px;
}

/*
	フッターの指定
*/
/* フッター外枠 */
footer {
  background: #fff;
  clear: both;
  display: block;
  position: relative;
  text-align: left;
}

/* フッター　会社情報 */
.footer-address {
  padding: 10px;
  font-size: 88%;
}

address {
  font-style: normal;
}

/* コピーライト */
.copy {
  display: block;
  background: #725827;
  text-align: center;
  line-height: 30px;
  color: #fff;
}

/* module */
/*
	サイト全体のナビゲーション設定
*/
/* グローバルナビの設定 */
.global-nav {
  clear: both;
  width: 100%;
  margin-top: -900px;
  -webkit-box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.2);
  box-shadow: 0px 9px 3px -3px rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 50;
  text-align: left;
}
.global-nav .global-nav__bg {
  background: #D0E39A;
  padding: 0px 10px 10px;
}
.global-nav .nav-header {
  margin-bottom: 10px;
  text-align: center;
  font-size: 150%;
  color: #745829;
}
.global-nav .nav-header img {
  width: 130px;
}
.global-nav ul {
  background: #fff;
  list-style: none;
  margin-bottom: 10px;
  padding: 0px 10px;
  border-radius: 5px;
}
.global-nav ul li {
  border-bottom: 1px dashed #745829;
}
.global-nav ul li:last-child {
  border: none;
}
.global-nav ul a {
  display: block;
  background: url(../img/sp/common/ico--foot.svg) 5px center no-repeat;
  padding: 13px 10px 13px 25px;
  color: #745829;
}
.global-nav .btn--trigger-close {
  background: #fff;
  color: #725827;
  line-height: 1;
  padding: 0 5px;
  margin: 0 auto;
  border: 1px solid #ccc;
  border-radius: 5px;
  min-width: 50px;
  height: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.global-nav .btn--trigger-close i {
  font-size: 150%;
}
.global-nav .btn--trigger-close span {
  display: block;
  font-size: 66%;
  padding-top: 3px;
}

.global-nav__cat {
  height: 150px;
  position: absolute;
  bottom: 600px;
  left: 10px;
  -moz-animation: swing linear 2s infinite;
  -moz-transform-origin: center -30px 0;
  -webkit-animation: swing linear 2s infinite;
  -webkit-transform-origin: center -30px 0;
  animation: swing linear 2s infinite;
  transform-origin: center -30px 0;
}
@-webkit-keyframes swing {
  0% {
    -webkit-transform: rotate(0deg);
  }
  25% {
    -webkit-transform: rotate(3deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
  }
  75% {
    -webkit-transform: rotate(-3deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@keyframes swing {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  25% {
    -webkit-transform: rotate(3deg);
            transform: rotate(3deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  75% {
    -webkit-transform: rotate(-3deg);
            transform: rotate(-3deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
/* ローカルナビの設定 */
.local-nav {
  margin-bottom: 20px;
}
.local-nav .local-nav__title {
  color: #fff;
  font-size: 114%;
  background: #725827;
  padding: 7px;
}
.local-nav .local-nav__list {
  list-style: none;
}
.local-nav .local-nav__list li {
  border-bottom: 1px solid #725827;
}
.local-nav .local-nav__list li a {
  display: block;
  padding: 5px 5px 5px 5px;
}

/* フッターナビ */
.footer-nav {
  text-align: center;
  margin-bottom: 20px;
}
.footer-nav .footer-nav__title {
  background: #725827;
  padding: 10px;
  color: #fff;
}
.footer-nav ul {
  list-style: none;
  margin: 10px;
}
.footer-nav ul li {
  border-bottom: 1px dashed #725827;
  text-align: left;
}
.footer-nav ul li a {
  display: block;
  background: url(../img/sp/common/ico--foot.svg) 5px center no-repeat;
  padding: 10px 10px 10px 25px;
  text-decoration: none;
  color: #725827;
}

/*
	サイト全体の見出しの設定
*/
/* ページタイトル */
.page-title {
  display: table;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  padding: 10px 10px;
  margin-bottom: 20px;
  -webkit-border-image: url(../img/sp/common/heading/bdr--page-title.jpg) 5 5 round;
  border: 5px solid #FFCA4A;
  border-radius: 6px;
  line-height: 1.2;
  font-size: 150%;
  color: #725827;
}
.page-title .page-title__icon {
  display: table-cell;
  width: 36px;
  vertical-align: middle;
}
.page-title .page-title__icon img {
  width: 26px;
}
.page-title .page-title__title {
  display: table-cell;
}

/* 見出し */
.title-lv1 {
  background: #fff url(../img/common/heading/bgi--title-lv1.jpg) right center no-repeat;
  padding: 10px;
  margin-bottom: 20px;
  border: 2px solid #B68354;
  border-radius: 6px;
  font-size: 125%;
  color: #F19200;
}

.title-lv2 {
  background: url(../img/common/item/line--dotted.png) right top no-repeat, url(../img/common/item/line--dotted.png) right bottom no-repeat;
  padding: 10px 15px;
  margin-bottom: 5px;
  font-size: 113%;
  color: #725827;
}

.title-lv3 {
  padding: 0 0 0 17px;
  margin-bottom: 5px;
  color: #83300E;
}

/* 汎用見出し */
.title-other-01 {
  background: url(../img/common/item/line--dotted.png) right bottom repeat-x, url(../img/common/mark/ico--foot.png) 10px top no-repeat;
  padding: 0px 10px 8px 40px;
  margin-bottom: 5px;
  line-height: 1.3;
  font-size: 113%;
  color: #725827;
}

.title-other-02 {
  padding: 0px 10px;
  border-bottom: 1px dashed #F19200;
  margin-bottom: 5px;
  color: #725827;
}

/*
	サイト全体のテーブルの設定
*/
/* テーブルの設定 */
.table-ptn--01 th {
  background: #D2EA8F;
  border: 1px solid #B2CE6A;
  padding: 5px 10px;
}
.table-ptn--01 td {
  background: #fff;
  border: 1px solid #B2CE6A;
  padding: 5px 10px;
}

.table-ptn--02 th {
  background: #F6EBD6;
  border: 1px solid #B68250;
  padding: 5px 10px;
  color: #B68250;
}
.table-ptn--02 td {
  background: #fff;
  border: 1px solid #B68250;
  padding: 5px 10px;
}

.table-ptn--03 th {
  border-bottom: 1px dashed #ABA073;
  padding: 10px;
  font-weight: bold;
}
.table-ptn--03 td {
  border-bottom: 1px dashed #ABA073;
  padding: 10px;
}

/*
	サイト全体のリンク・ボタンの設定
*/
/* ボタンの設定 */
.btn {
  display: inline-block;
  padding: 8px 18px;
  border-radius: 5px;
  behavior: url(PIE.htc);
  -webkit-box-shadow: 2px 2px 2px #787878;
  box-shadow: 2px 2px 2px #787878;
  filter: progid:DXImageTransform.Microsoft.Shadow(strength = 2, direction = 135, color = "#787878");
  -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(strength = 2, Direction = 135, Color = '#787878')";
}

.btn--full {
  display: block;
  padding: 8px 0;
  border-radius: 5px;
  text-align: center;
  behavior: url(PIE.htc);
}

.btn--brown {
  background: #725827;
  color: #fff;
  text-decoration: none;
}

.btn--orange {
  background: #E7590D;
  color: #fff;
  text-decoration: none;
}

.btn--white {
  background: #fff;
  border: 2px solid #725827;
  color: #725827;
  text-decoration: none;
}

/*
	サイト全体のリストの設定
*/
/* アイコン型リストの設定 */
.list-arrow {
  list-style: none;
  margin-bottom: 10px;
}
.list-arrow li {
  background: url(../img/common/mark/ico--arrow--01.png) 2px 7px no-repeat;
  padding-left: 17px;
}

.list-circle {
  list-style: none;
  margin-bottom: 10px;
}
.list-circle li {
  background: url(../img/common/mark/ico--circle--01.png) 4px 5px no-repeat;
  padding-left: 17px;
}

.list-circle--02 {
  list-style: none;
}
.list-circle--02 li {
  background: url(../img/common/mark/ico--circle--02.png) 0px 5px no-repeat;
  padding-left: 17px;
  margin-bottom: 10px;
}

.list-ring {
  list-style: none;
  margin-bottom: 10px;
}
.list-ring li {
  background: url(../img/common/mark/ico--ring--01.png) 4px 5px no-repeat;
  padding-left: 22px;
  margin-bottom: 5px;
}

/* ボーダー型リストの設定 */
.list-border {
  list-style: none;
  margin-bottom: 10px;
}
.list-border li {
  padding: 5px;
  border-bottom: 2px dotted #D3B18D;
}

/* 番号型リストの設定 */
.list-numbering {
  list-style: decimal;
  margin-bottom: 10px;
  padding-left: 25px;
}
.list-numbering li {
  display: list-item;
  margin-bottom: 10px;
}
.list-numbering li .list-numbering {
  list-style: lower-roman inside;
}
.list-numbering li .list-numbering li {
  text-indent: -1.2em;
}

/* 通常リストの設定 */
.list-nomal {
  margin-bottom: 10px;
  padding-left: 20px;
}
.list-nomal li {
  margin-bottom: 5px;
}

/* リストマークなし */
.list-style-none {
  list-style: none;
}

/*
	サイト全体のリンク・ボタンの設定
*/
/* ブロックの設定 */
.box-sub--01 {
  border: 1px dotted #B68250;
  background: #fff;
  padding: 15px;
}

.box-sub--02 {
  background: #F9F7A9;
  padding: 15px;
}

/*
	サイト全体のWordPress記事の設定
*/
/* ブログ・お知らせの設定 */
.article {
  border-bottom: 2px dotted #B68354;
  padding: 0 0 40px 0;
  margin-bottom: 40px;
  line-height: 1.2;
}
.article .article__date {
  color: #F87466;
}
.article .article__category {
  background: #80B912;
  padding: 1px 10px;
  margin-right: 10px;
  display: inline-block;
  border-radius: 4px;
  text-align: center;
  font-size: 88%;
  color: #fff;
}
.article .article__title {
  background-image: url(../img/common/mark/ico--foot.png), url(../img/common/bgi/bgi--stripe.jpg);
  background-repeat: no-repeat, repeat;
  background-position: 10px center, center top;
  border: 5px solid #fff;
  border-radius: 10px;
  padding: 15px 10px 15px 40px;
  margin-bottom: 20px;
  font-size: 125%;
  color: #745829;
  position: relative;
}
.article .article__title img {
  position: absolute;
  bottom: -22px;
  left: 50%;
  margin-left: -8px;
}
.article .article__title:after {
  position: absolute;
  bottom: -26px;
  left: 50%;
  margin-left: -8px;
  content: url(../img/blog/pic--title.png);
}

/* ページネーションの設定 */
.pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  font-size: 14px;
  line-height: 14px;
}
.pagination span, .pagination a {
  display: block;
  float: left;
  width: auto;
  margin: 2px 2px 2px 0;
  padding: 5px 9px 5px 9px;
  background-color: #fff;
  color: #555;
  text-decoration: none;
}
.pagination a {
  border: 1px solid #ccc;
}
.pagination a:hover {
  background-color: #ccc;
  border: 1px solid #ccc;
  color: #fff;
}
.pagination .current {
  padding: 5px 9px 5px 9px;
  background-color: #ccc;
  border: 1px solid #ccc;
  color: #fff;
}

/* カレンダーの設定 */
.widget_calendar {
  background: url(../img/common/bgi/bgi--stripe.jpg);
  border: 5px solid #fff;
  padding: 10px;
  margin: 50px 0 20px;
}

.widget-title {
  background: #fff url(../img/common/heading/bgi--title-lv1.jpg) right center no-repeat;
  padding: 10px 0;
  margin: -40px -15px 10px -15px;
  border: 5px solid #FBAA00;
  border-radius: 40px;
  text-align: center;
  font-size: 125%;
  font-weight: bold;
  color: #745829;
}

.calendar_wrap table {
  width: 100%;
}
.calendar_wrap table caption {
  font-size: 113%;
  padding-bottom: 5px;
  font-weight: bold;
  color: #725827;
}
.calendar_wrap table tbody th, .calendar_wrap table tbody td, .calendar_wrap table thead th, .calendar_wrap table thead td {
  text-align: center;
}
.calendar_wrap table tbody th a, .calendar_wrap table tbody td a, .calendar_wrap table thead th a, .calendar_wrap table thead td a {
  background: #80B912;
  display: block;
  color: #fff;
}
.calendar_wrap table tfoot {
  padding-top: 5px;
}
.calendar_wrap #today a {
  background: #F87466;
  display: block;
  color: #fff;
}

/*
	サイト全体のアイテムの設定
*/
/* サイドバー */
.bnr {
  display: block;
  margin: 20px 40px;
}

.top-decalogue {
  margin-bottom: 20px;
  text-align: center;
}

.certified-person {
  background: #fff;
  padding: 5px;
  margin-bottom: 20px;
  border: 2px solid #B9A695;
  border-radius: 6px;
}
.certified-person dt {
  padding: 5px 5px;
  background: #FEA6AC;
  text-align: center;
}
.certified-person dt img {
  width: 150px;
}
.certified-person dd {
  padding: 10px 5px 5px;
  line-height: 1.3;
}

.link {
  background: #fff;
  padding: 5px;
  margin-bottom: 20px;
  border: 2px solid #B9A695;
  border-radius: 6px;
}
.link dd {
  padding: 10px 5px 5px;
  line-height: 1.3;
}

.aside-staff-blog {
  background: url(../img/common/bgi/bgi--stripe.jpg);
  border: 5px solid #fff;
  padding: 10px;
  margin: 50px 0 20px;
}
.aside-staff-blog li {
  border-bottom: 1px dashed #E7DFCD;
  list-style: none;
  padding: 5px;
}

.aside-staff-blog__title {
  margin: -40px -15px 0 -15px;
}

.aside-staff-blog__title-txt {
  background: #fff url(../img/common/heading/bgi--title-lv1.jpg) right center no-repeat;
  padding: 10px 0;
  margin: -40px -15px 10px -15px;
  border: 5px solid #FBAA00;
  border-radius: 40px;
  text-align: center;
  font-size: 125%;
  font-weight: bold;
  color: #745829;
}

.aside-staff-blog__list {
  list-style: none;
  margin-bottom: 10px;
}
.aside-staff-blog__list li {
  border-bottom: 1px dashed #E7DFCD;
  padding: 5px;
}
.aside-staff-blog__list li span {
  display: block;
  color: #F3868C;
}

/* トップページ */
.catch {
  background: url(../img/common/bgi/bgi--stripe.jpg);
  margin: -20px 0 15px;
  padding: 15px 0 0;
}

.top-condition {
  list-style: none;
  margin-bottom: 40px;
}
.top-condition li {
  background-image: url(../img/sp/index/ico--condition.svg);
  background-repeat: no-repeat;
  background-size: 25px auto;
  margin: 0 0 5px;
  padding: 10px 0 10px 35px;
  border-bottom: 1px dashed #B68354;
  font-weight: bold;
  color: #725827;
}

.top-movie {
  background: url(../img/sp/index/movie/bgi--movie.png) top center no-repeat;
  background-size: cover;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 376px;
  margin-bottom: 40px;
  padding-top: 125px;
  text-align: center;
}

.top-sns-intro__title {
  text-align: center;
  margin-bottom: 25px;
  padding-right: 40px;
}

.top-sns-intro-list {
  width: 100%;
  margin: 0 auto 40px;
  list-style: none;
}
.top-sns-intro-list li {
  display: inline-block;
  width: 48%;
}
.top-sns-intro-list li a {
  background: #fff;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  padding: 20px 4% 20px;
  border-radius: 10px;
  background: #fff;
  border: 2px dashed #385698;
  text-align: center;
}
.top-sns-intro-list li:nth-child(2) {
  margin-left: 2%;
}
.top-sns-intro-list li:nth-child(2) a {
  border: 2px dashed #D82F82;
}

.top-blog {
  background: #fff;
  padding: 10px;
  border-radius: 10px;
  margin-bottom: 20px;
}
.top-blog .top-blog__title h2 {
  margin-bottom: 10px;
  float: left;
}
.top-blog .top-blog__title .top-blog__detail {
  float: right;
  display: inline-block;
  margin-top: 20px;
}
.top-blog .top-blog__list {
  list-style: none;
}
.top-blog .top-blog__list li {
  width: 49%;
  float: left;
  margin-bottom: 20px;
  margin-right: 2%;
  position: relative;
  line-height: 1.2;
  font-size: 88%;
}
.top-blog .top-blog__list li:nth-child(2n) {
  margin-right: 0;
}
.top-blog .top-blog__list li a {
  text-decoration: none;
}
.top-blog .top-blog__list li img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-right: 5px;
  float: left;
}
.top-blog .top-blog__list li .top-blog__date {
  margin-bottom: 5px;
  display: block;
  font-size: 92%;
  color: #F87466;
}
.top-blog .top-blog__list li .top-blog__new {
  width: auto !important;
  height: auto !important;
  border-radius: 0;
  position: absolute;
  left: 0px;
  top: 50px;
}
.top-blog .top-blog__list--row {
  list-style: none;
}
.top-blog .top-blog__list--row li {
  margin-bottom: 20px;
  position: relative;
  line-height: 1.2;
  font-size: 88%;
}
.top-blog .top-blog__list--row li:nth-child(2n) {
  margin-right: 0;
}
.top-blog .top-blog__list--row li a {
  text-decoration: none;
}
.top-blog .top-blog__list--row li img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-right: 5px;
  float: left;
}
.top-blog .top-blog__list--row li .top-blog__date {
  margin-bottom: 5px;
  display: block;
  font-size: 92%;
  color: #F87466;
}
.top-blog .top-blog__list--row li .top-blog__new {
  width: auto !important;
  height: auto !important;
  border-radius: 0;
  position: absolute;
  left: 0px;
  top: 50px;
}

.top-intro-message {
  background: url(../img/index/intro/bgi--top-intro-message.png) left top no-repeat;
  padding: 35px 0 20px;
  clear: both;
  text-align: center;
}

.top-nav {
  list-style: none;
  margin-bottom: 40px;
}
.top-nav li {
  width: 48%;
  float: left;
  margin-right: 4%;
  margin-bottom: 16px;
}
.top-nav li:nth-child(2n) {
  margin-right: 0;
}

.top-activity {
  background: #fff;
  padding: 23px;
  margin-bottom: 60px;
}
.top-activity .top-activity__title {
  margin-bottom: 20px;
}
.top-activity .top-activity__list {
  height: 300px;
  margin-bottom: 20px;
  overflow-y: scroll;
  list-style: none;
}
.top-activity .top-activity__list li {
  background: url(../img/index/blog/line--list.png) left bottom no-repeat;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.top-activity .top-activity__date {
  color: #F87466;
}
.top-activity .top-activity__category {
  background: #80B912;
  padding: 3px;
  border-radius: 5px;
  font-size: 93%;
  color: #fff;
}
.top-activity .top-activity__article-title {
  font-weight: bold;
}

.top-sns {
  background: #ffffff;
  padding: 20px 4%;
  border-radius: 20px;
  margin-bottom: 40px;
}
.top-sns .top-sns__title {
  position: relative;
  margin-bottom: 20px;
  text-align: center;
}
.top-sns .top-sns__title .top-sns__title--balloon {
  position: absolute;
  top: -65px;
  left: -20px;
  width: 120px;
}
.top-sns ul {
  list-style: none;
  text-align: center;
}
.top-sns ul li {
  display: inline-block;
  margin: 5px 2%;
  width: 45%;
}
.top-sns ul li img {
  vertical-align: top;
}

/* 大分ニャンたろうとは */
.about-circs {
  margin: 30px 0 0 20px;
}
.about-circs li {
  margin-bottom: 10px;
}

.decalogue {
  background-image: url(../img/sp/about/bgi--decalogue.jpg);
  background-repeat: repeat-y;
  background-size: 100% auto;
  margin: 0;
  padding: 10px 10px;
  list-style: none;
  color: #fff;
}

.decalogue__list dt, .decalogue__list li {
  background: url(../img/sp/about/line--decalogue.png) left bottom repeat-x;
  padding: 0 0 10px;
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 113%;
}
.decalogue__list .decalogue__num {
  background-image: url(../img/sp/about/ico--decalogue.png);
  background-repeat: no-repeat;
  background-size: 24px auto;
  padding: 0 0 0 30px;
  display: block;
  color: #FD8D85;
}
.decalogue__list dd, .decalogue__list li {
  margin-bottom: 20px;
}

.decalogue-header, .decalogue-footer {
  width: 100%;
}

/* 入所までの流れ */
.flow {
  list-style: none;
}
.flow > li {
  background-image: url(../img/sp/flow/ico--arrow.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: 15px auto;
  padding: 0 0 30px;
  margin-bottom: 10px;
}
.flow > li:last-child {
  background: no-repeat;
}

.flow__title {
  display: block;
  background: url(../img/sp/flow/line--flow-title.png) left bottom repeat-x;
  padding: 10px 0;
  margin-bottom: 10px;
  line-height: 1.3;
  font-weight: bold;
  color: #725826;
}

/* 施設案内 */
.facilities {
  list-style: none;
}
.facilities li {
  margin-bottom: 20px;
}
.facilities .facilities__img {
  background: #F1E3C6;
  padding: 10px 10px 5px;
  margin-bottom: 10px;
  border-radius: 5px;
}
.facilities .facilities__title {
  background-image: url(../img/sp/facilities/title--facilities.png);
  background-repeat: no-repeat;
  background-size: auto 50px;
  padding: 10px 0 5px 30px;
  border-bottom: 2px dotted #B68354;
  margin: 10px 0 0;
  font-weight: bold;
  font-size: 125%;
  color: #735828;
}

/* サイトマップ */
.sitemap {
  list-style: none;
  margin: 40px 0;
}
.sitemap li {
  background: url(../img/common/mark/ico--foot.png) 0 0 no-repeat;
  padding: 0 0 0 30px;
  margin: 0 0 20px 20px;
}

/* 里親詐欺 */
.reason-cheat {
  list-style: none;
}
.reason-cheat li {
  width: 46%;
  float: left;
  margin: 0 2% 20px;
}
.reason-cheat li:nth-child(2n+1) {
  clear: both;
}

/* ペットを飼う前に */
.check-list {
  list-style: none;
}
.check-list li {
  background: url(../img/check-list/ico--check-list.png) 0 2px no-repeat;
  padding: 12px 0 5px 35px;
  margin-bottom: 5px;
  font-weight: bold;
}

/* ニャン活 */
.link-list {
  list-style: none;
}
.link-list li {
  width: 100%;
  margin-bottom: 20px;
}
.link-list li .link-list__title {
  display: block;
  margin-bottom: 10px;
}
.link-list li .link-list__title img {
  vertical-align: top;
}
/* 猫の性質 */
.property {
  margin-bottom: 20px;
}
.property .property__title {
  background: url(../img/property/ico--property-title.png) 0 0 no-repeat;
  padding: 0px 0 5px 20px;
  margin-bottom: 10px;
  border-bottom: 2px dotted #DFC4A7;
  font-size: 113%;
  font-weight: bold;
  color: #725827;
}

.item {
  list-style: none;
  margin: 20px 0;
}
.item li {
  background: url(../img/property/ico--property-title.png) 0 0 no-repeat;
  padding: 0px 0 5px 25px;
  margin: 0 10px 15px 0;
  display: inline-block;
  font-size: 88%;
}

/* 保護依頼をする前に */
.protective {
  width: 88%;
  margin: 0 auto;
  text-align: left;
}
.protective .title-lv1 {
  color: #725827;
}

.protective-caution {
  margin-bottom: 15px;
  color: #FE484C;
  font-size: 108%;
  font-weight: bold;
}

.protective-find-flow {
  list-style: none;
}
.protective-find-flow li {
  width: 100%;
  margin-right: 0;
  margin-bottom: 40px;
}
.protective-find-flow li > img {
  width: 100%;
}

.protective-find-flow__caption {
  background: #E3D4C7;
  padding: 4px 0;
  font-weight: bold;
  text-align: center;
}

.protective-find-flow__title {
  position: relative;
  display: block;
  padding-left: 35px;
  margin-bottom: 10px;
  font-weight: bold;
}

.protective-find-flow__number {
  position: absolute;
  background: url(../img/protective/bgi--title.svg) 0 0 no-repeat;
  display: inline-block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 24px;
  height: 26px;
  top: -2px;
  left: 0;
  padding: 0 0 0 3px;
  font-size: 124%;
  font-weight: bold;
}

.protective-find-flow__txt {
  padding: 20px 0 0;
  font-size: 87.5%;
  font-weight: bold;
}

.protective-howto-list {
  list-style: none;
  font-weight: bold;
}
.protective-howto-list li {
  float: left;
  width: 46%;
  margin-bottom: 30px;
  text-align: center;
}
.protective-howto-list li > img {
  margin-bottom: 10px;
}
.protective-howto-list li:nth-child(2n) {
  float: right;
}
.protective-howto-list li:nth-child(2n+1) {
  clear: both;
}

.protective-howto-list-link__image {
  margin-left: 6px;
  margin-bottom: 4px;
}

.protective-have-list {
  list-style: none;
  margin-top: -15px;
}
.protective-have-list li {
  border-bottom: 1px dashed #794B4B;
  list-style: none;
  padding: 15px 0;
  font-weight: bold;
}

.protective-have-list__image {
  float: left;
  margin-right: 30px;
}

.protective-have-list__txt {
  display: table-cell;
  vertical-align: middle;
  height: 116px;
}

.protective-have-message {
  margin-bottom: 70px;
  padding-top: 65px;
  font-size: 124%;
  text-align: center;
  font-weight: bold;
}
.protective-have-message img {
  margin-right: 10px;
}

/* 猫の紹介 */
.profile-list {
  list-style: none;
}
.profile-list li {
  width: 45%;
  float: left;
  margin-right: 10%;
  margin-bottom: 30px;
  text-align: center;
}
.profile-list li:nth-child(2n) {
  margin-right: 0;
}
.profile-list li:nth-child(2n+1) {
  clear: both;
}
.profile-list .profile-list__photo {
  border-radius: 50%;
  margin-bottom: 10px;
}
.profile-list .profile-list__name {
  display: block;
  margin-bottom: 10px;
  font-weight: bold;
  color: #725826;
}

.profile__photo {
  display: block;
  margin: 0 auto 20px;
}

.profile__gallery {
  list-style: none;
  margin-bottom: 40px;
}
.profile__gallery li {
  width: 215px;
  margin-right: 17px;
  float: left;
}
.profile__gallery li:nth-child(3n) {
  margin-right: 0;
}

.profile-new {
  border-radius: 10px;
  background: #FFE7B6;
  color: #725827;
  padding: 10px 14px;
  margin-bottom: 30px;
}
.profile-new img.profile-new__image {
  max-width: 100%;
  margin-bottom: 12px;
}
.profile-new .profile-new__date {
  font-size: 14px;
  text-align: right;
  margin-top: 10px;
}
.profile-new .profile-new__age {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  margin-top: -24px;
  margin-bottom: 12px;
  padding-left: 24px;
}
.profile-new .profile-new__age::before {
  content: url(../img/common/mark/ico--neko.png);
  position: absolute;
  top: 0px;
  left: -2px;
}
.profile-new .profile-new__subtitle {
  font-size: 16px;
  font-weight: bold;
}
.profile-new .profile-new__subtitle img {
  width: 18px;
  margin-bottom: 4px;
  margin-right: 7px;
}
.profile-new .profile-new__txt {
  padding: 5px 0 8px 0px;
}

/* ブログ */
.blog-list {
  list-style: none;
}
.blog-list li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dashed #ccc;
}
.blog-list li a {
  text-decoration: none;
}
.blog-list li .blog-list__eyecatch {
  width: 30%;
  border-radius: 50%;
  float: left;
  margin-right: 10px;
  border: 3px solid #fff;
}
.blog-list li .blog-list__date {
  display: block;
  color: #F87466;
}
.blog-list li .blog-list__category {
  background: #80B912;
  padding: 3px;
  border-radius: 5px;
  font-size: 93%;
  color: #fff;
}

/*
	サイト全体のユーティリティ設定
*/
/* 文字サイズの設定 */
.fu-ont-size--small {
  font-size: 86%;
}

.u-font-size--large {
  font-size: 114%;
}

.u-font-size--x-large {
  font-size: 129%;
}

.u-font-size--xx-large {
  font-size: 143%;
}

/* 文字色、装飾の設定 */
.u-font-bold {
  font-weight: bold;
}

.u-color-red {
  color: red;
}

.u-color-main {
  color: #725827;
}

.u-color-sub {
  color: #F19200;
}

.u-color-pink {
  color: #F2858C;
}

.u-em-word {
  color: #FAAA00;
  font-weight: bold;
}

/* 段落の設定 */
.u-txt {
  padding: 0 1px;
}

.u-paragraph {
  padding: 0 1px 0 1px;
  margin-bottom: 1em;
}

.u-txt-sub {
  font-size: 85% !important;
  color: #666;
}

.u-txt-attention {
  padding: 0 0 0 0.7em;
  text-indent: -0.7em;
  color: #C60;
}

/* 文字寄せの設定 */
.u-textalign-center {
  text-align: center;
}

.u-textalign-right {
  text-align: right;
}

.u-textalign-left {
  text-align: left;
}

/* floatの設定 */
.u-float-left {
  float: left;
}

.u-float-right {
  float: right;
}

.u-clear {
  clear: both;
}

.u-overflow-hidden {
  overflow: hidden;
}

/* 画像の寄せ */
img.alignleft {
  float: left;
  margin: 0 15px 15px 0;
}

img.alignright {
  float: right;
  margin: 0 0 15px 15px;
}

img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* 線の設定 */
.u-line-dashed {
  border: none;
  border-top: 1px dashed #ccc;
  height: 1px;
}

.u-line-dotted {
  background: url(../img/common/item/line--dotted.png) 0 0 no-repeat;
  border: none;
  height: 3px;
}

.u-line-draw {
  background: url(../img/common/item/line--draw.png) 0 0 no-repeat;
  border: none;
  height: 3px;
}

/* マージンボトムの設定 */
.u-margin-bottom--small {
  margin-bottom: 10px;
}

.u-margin-bottom {
  margin-bottom: 20px;
}

.u-margin-bottom--large {
  margin-bottom: 40px;
}

/* theme */
/*
	サイト全体で使う色の指定
*/