@charset "UTF-8";
/* Welcome to Compass.
 * In this file you should write your main styles. (or centralize your imports)
 * Import this file using the following HTML or equivalent:
 * <link href="/stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" /> */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

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

a img {
  border: none; }

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

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Hide visually and from screen readers:
 */
.hidden {
  display: none !important; }

/*
 * Hide only visually, but have it available for screen readers:
 * http://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

@font-face {
  font-family: "FuturaPT-Book";
  src: url('../fonts/2BBE12_0_0.ttf?1455591414') format('truetype'), url('../fonts/2BBE12_0_0.woff?1455591414') format('woff'), url('../fonts/2BBE12_0_0.eot?1455591412') format('embedded-opentype'), url('../fonts/2BBE12_0_0.svg?1455591413') format('svg'); }
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html,
body {
  overflow-x: hidden;
  overflow-y: auto;
  width: 100%; }

html {
  font-family: 'Helvetica Neue', 'Helvetica', 'Arial', '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 62.5%;
  line-height: 1.5;
  color: #000; }

body {
  -webkit-text-size-adjust: 100%; }

a {
  color: #000;
  text-decoration: underline; }
  a:hover, a:active, a:focus {
    color: #000;
    text-decoration: none; }

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

input {
  border: 0;
  outline: none; }
  input:focus {
    outline: none; }

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #e5e5e5;
  margin: 40px 0;
  padding: 0; }

@media screen and (max-width: 735px) {
  hr {
    margin: 5.44218vw 0; } }
@media screen and (min-width: 736px) {
  hr {
    margin: 3.33333vw 0; } }
/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */
.browserupgrade {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

@media screen and (max-width: 735px) {
  .grid {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between; }

  .grid h3,
  .grid p,
  .grid ul {
    line-height: 1.5; }

  .col-3 section {
    width: 29.65986vw;
    max-width: 218px; }
    .col-3 section .outer p {
      font-size: 15px; }
    .col-3 section .outer .inner h3,
    .col-3 section .outer .inner p,
    .col-3 section .outer .inner ul {
      font-size: 13px; }

  .col-1 section {
    width: 100vw;
    max-width: 735px; }
    .col-1 section .outer p {
      font-size: 15px; }
    .col-1 section .outer .inner h3 {
      font-size: 15px; }
    .col-1 section .outer .inner p,
    .col-1 section .outer .inner ul {
      font-size: 13px; }

  .grid.col-3 section:nth-of-type(1) .outer,
  .grid.col-3 section:nth-of-type(2) .outer,
  .grid.col-3 section:nth-of-type(3) .outer,
  .grid.col-1 section:nth-of-type(1) .outer {
    margin-top: 40px;
    margin-top: 5.44218vw; }

  .grid .outer {
    border-top: 1px solid #e5e5e5;
    padding-top: 20px;
    padding-top: 2.72109vw;
    margin-top: 40px;
    margin-top: 5.44218vw; }

  .grid .outer p {
    font-family: 'FuturaPT-Book';
    letter-spacing: 0.1em;
    text-align: center; }

  .grid .outer a,
  .grid .inner a {
    text-decoration: none; }
    .grid .outer a:hover, .grid .outer a:active, .grid .outer a:focus,
    .grid .inner a:hover,
    .grid .inner a:active,
    .grid .inner a:focus {
      text-decoration: underline; }

  .grid .outer img {
    width: 100%;
    height: auto;
    margin-top: 20px;
    margin-top: 2.72109vw; }

  .grid .outer .inner h3 {
    margin-top: 20px;
    margin-top: 2.72109vw; }
  .grid .outer .inner p {
    font-family: 'Helvetica Neue', 'Helvetica', 'Arial', '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    letter-spacing: 0;
    text-align: left;
    margin-top: 10px;
    margin-top: 1.36054vw; }
    .grid .outer .inner p .new {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      margin-right: 10px;
      margin-right: 1.36054vw;
      color: #d50000; }
  .grid .outer .inner ul li.tweet,
  .grid .outer .inner ul li.like,
  .grid .outer .inner ul li.share {
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    *zoom: 1;
    *display: inline;
    margin-right: 10px;
    margin-right: 1.36054vw; }
    .grid .outer .inner ul li.tweet a,
    .grid .outer .inner ul li.like a,
    .grid .outer .inner ul li.share a {
      color: #b2b2b2; } }
@media screen and (min-width: 736px) {
  .grid {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between; }

  .grid h3,
  .grid p,
  .grid ul {
    line-height: 1.5; }

  .col-4 section {
    width: 22.5vw;
    max-width: 270px; }

  .col-3 section {
    width: 31.66667vw;
    max-width: 380px; }

  .col-1 section {
    width: 100vw;
    max-width: 1200px; }

  .grid.col-4 section:nth-of-type(1) .outer,
  .grid.col-4 section:nth-of-type(2) .outer,
  .grid.col-4 section:nth-of-type(3) .outer,
  .grid.col-4 section:nth-of-type(4) .outer,
  .grid.col-3 section:nth-of-type(1) .outer,
  .grid.col-3 section:nth-of-type(2) .outer,
  .grid.col-3 section:nth-of-type(3) .outer,
  .grid.col-2 section:nth-of-type(1) .outer,
  .grid.col-2 section:nth-of-type(2) .outer,
  .grid.col-1 section:nth-of-type(1) .outer {
    margin-top: 20px;
    margin-top: 1.66667vw; }

  .grid .is-empty {
    height: 0;
    padding-top: 0;
    padding-bottom: 0;
    margin-top: 0;
    margin-bottom: 0; }

  .grid .outer {
    border-top: 1px solid #e5e5e5;
    padding-top: 20px;
    padding-top: 1.66667vw;
    margin-top: 40px;
    margin-top: 3.33333vw; }

  .grid .outer p {
    font-family: 'FuturaPT-Book';
    letter-spacing: 0.1em;
    text-align: center; }

  .grid .outer img {
    width: 100%;
    height: auto;
    margin-top: 20px;
    margin-top: 1.66667vw; }

  .grid .outer .inner h3 {
    font-size: 15px;
    margin-top: 20px;
    margin-top: 1.66667vw; }
  .grid .outer .inner p {
    font-family: 'Helvetica Neue', 'Helvetica', 'Arial', '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    letter-spacing: 0;
    text-align: left;
    font-size: 13px;
    margin-top: 10px;
    margin-top: 0.83333vw; }
    .grid .outer .inner p .new {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      margin-right: 10px;
      margin-right: 0.83333vw;
      color: #d50000; }
  .grid .outer .inner ul {
    font-size: 13px; }
    .grid .outer .inner ul li.tweet,
    .grid .outer .inner ul li.like,
    .grid .outer .inner ul li.share {
      display: inline-block;
      vertical-align: middle;
      *vertical-align: auto;
      *zoom: 1;
      *display: inline;
      margin-right: 10px;
      margin-right: 0.83333vw; }
      .grid .outer .inner ul li.tweet a,
      .grid .outer .inner ul li.like a,
      .grid .outer .inner ul li.share a {
        color: #b2b2b2; } }
@media screen and (min-width: 1200px) {
  .grid.col-4 section:nth-of-type(1) .outer,
  .grid.col-4 section:nth-of-type(2) .outer,
  .grid.col-4 section:nth-of-type(3) .outer,
  .grid.col-4 section:nth-of-type(4) .outer,
  .grid.col-3 section:nth-of-type(1) .outer,
  .grid.col-3 section:nth-of-type(2) .outer,
  .grid.col-3 section:nth-of-type(3) .outer,
  .grid.col-2 section:nth-of-type(1) .outer,
  .grid.col-2 section:nth-of-type(2) .outer,
  .grid.col-1 section:nth-of-type(1) .outer {
    margin-top: 20px; }

  .grid .outer {
    padding-top: 20px;
    margin-top: 40px; }

  .grid .outer img {
    margin-top: 20px; }

  .grid .outer .inner h3 {
    margin-top: 20px; }
  .grid .outer .inner p {
    margin-top: 10px; }
    .grid .outer .inner p .new {
      margin-right: 10px; }
  .grid .outer .inner ul li.tweet,
  .grid .outer .inner ul li.like,
  .grid .outer .inner ul li.share {
    margin-right: 10px; } }
dt,
strong {
  font-weight: bold; }

.post-password-form input {
  border: 1px solid #ccc; }

#container {
  position: relative; }

#pagetop {
  display: none;
  position: relative; }
  #pagetop figure {
    position: fixed;
    z-index: 999;
    cursor: pointer; }

@media screen and (max-width: 735px) {
  html {
    line-height: 1.8; }

  body {
    font-size: 15px; }

  h2 {
    font-size: 18px;
    line-height: 1.5; }

  h3 {
    font-size: 18px; }

  h4 {
    font-size: 15px; }

  h5 {
    font-size: 15px;
    font-weight: bold; }

  h6 {
    font-size: 15px; }

  .sns ul {
    overflow: hidden;
    *zoom: 1;
    line-height: 1.2; }
    .sns ul li {
      float: left;
      margin-right: 30px;
      margin-right: 4.08163vw;
      margin-bottom: 2.72109vw; }
      .sns ul li a {
        text-decoration: none; }
        .sns ul li a:hover, .sns ul li a:active, .sns ul li a:focus {
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
          opacity: 0.3; }
        .sns ul li a img {
          display: inline-block;
          vertical-align: middle;
          *vertical-align: auto;
          *zoom: 1;
          *display: inline;
          width: 30px;
          height: auto; }

  #main .sns .share {
    overflow: hidden;
    *zoom: 1; }

  #main .sns .share strong {
    float: left;
    margin-right: 30px;
    margin-right: 4.08163vw;
    padding-top: 3px; }

  #main .sns .share img {
    width: 9px; }

  #main .sns .tweet img {
    width: 17px; }

  #main .sns .hatebu img {
    width: 16px; }

  #main .sns .google_plus img {
    width: 20px; }

  #main .sns .line img {
    width: 30px; }

  #pagetop {
    margin-bottom: 12.51701vw; }
    #pagetop figure {
      bottom: 0;
      width: 100%;
      height: 12.51701vw;
      background-color: #000; }
      #pagetop figure:hover, #pagetop figure:active, #pagetop figure:focus {
        background-color: #808080; }
      #pagetop figure span {
        display: block;
        text-indent: -119988px;
        overflow: hidden;
        text-align: left;
        text-transform: capitalize;
        background-image: url('../img/sp.pagetop.png?1454914273');
        background-repeat: no-repeat;
        background-position: 50% 50%;
        width: 14px;
        height: 12px;
        -moz-background-size: 14px 12px;
        -o-background-size: 14px 12px;
        -webkit-background-size: 14px 12px;
        background-size: 14px 12px;
        width: 14px;
        height: 12px;
        margin: 4.35374vw auto; }

  #container {
    max-width: 735px;
    margin: 0 auto; }
    #container header .outer {
      margin: 5.44218vw 2.72109vw 0 2.72109vw; }
      #container header .outer h1 a {
        display: block;
        text-indent: -119988px;
        overflow: hidden;
        text-align: left;
        text-transform: capitalize;
        background-image: url('../img/logo.gif?1455586019');
        background-repeat: no-repeat;
        background-position: 50% 50%;
        width: 400px;
        height: 37px;
        -moz-background-size: 200px 18px;
        -o-background-size: 200px 18px;
        -webkit-background-size: 200px 18px;
        background-size: 200px 18px;
        width: 200px;
        height: 18px;
        margin: 0 auto; }
        #container header .outer h1 a:hover, #container header .outer h1 a:active, #container header .outer h1 a:focus {
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
          opacity: 0.3; }
      #container header .outer p {
        font-size: 13px;
        text-align: center;
        margin-top: 2.72109vw; }
        #container header .outer p a {
          text-decoration: none;
          color: #000; }
          #container header .outer p a:hover, #container header .outer p a:active, #container header .outer p a:focus {
            text-decoration: underline; }
    #container .wrapper #main article {
      margin-top: 80px;
      margin-top: 10.88435vw;
      margin-right: 20px;
      margin-right: 2.72109vw;
      margin-left: 20px;
      margin-left: 2.72109vw; }
      #container .wrapper #main article.entry {
        margin-top: 20px;
        margin-top: 2.72109vw;
        margin-right: 0;
        margin-left: 0; }
        #container .wrapper #main article.entry .outer .inner {
          margin: 40px 20px 0;
          margin: 5.44218vw 2.72109vw 0; }
          #container .wrapper #main article.entry .outer .inner h2,
          #container .wrapper #main article.entry .outer .inner p,
          #container .wrapper #main article.entry .outer .inner ul {
            margin-top: 20px;
            margin-top: 2.72109vw; }
          #container .wrapper #main article.entry .outer .inner ul {
            font-size: 15px; }
          #container .wrapper #main article.entry .outer .inner .sns ul {
            margin-top: 40px;
            margin-top: 5.44218vw; }
      #container .wrapper #main article.thumb .outer {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        #container .wrapper #main article.thumb .outer .inner figure {
          margin-top: 20px; }
          #container .wrapper #main article.thumb .outer .inner figure img {
            width: 29.93197vw;
            max-width: 220px;
            height: auto; }
        #container .wrapper #main article.thumb .outer .inner p {
          font-size: 11px;
          text-align: center;
          margin-top: 10px; }
          #container .wrapper #main article.thumb .outer .inner p a {
            text-decoration: none; }
            #container .wrapper #main article.thumb .outer .inner p a:hover, #container .wrapper #main article.thumb .outer .inner p a:active, #container .wrapper #main article.thumb .outer .inner p a:focus {
              text-decoration: underline; }
      #container .wrapper #main article.detail {
        margin-top: 0;
        margin-right: 0;
        margin-left: 0; }
        #container .wrapper #main article.detail section {
          margin-top: 80px;
          margin-top: 10.88435vw; }
          #container .wrapper #main article.detail section .header {
            margin-right: 20px;
            margin-right: 2.72109vw;
            margin-left: 20px;
            margin-left: 2.72109vw; }
            #container .wrapper #main article.detail section .header h3 span,
            #container .wrapper #main article.detail section .header p {
              font-size: 15px; }
            #container .wrapper #main article.detail section .header h3 span {
              display: inline-block;
              margin-left: 5px; }
          #container .wrapper #main article.detail section .slide {
            margin-top: 20px;
            margin-top: 2.72109vw; }
            #container .wrapper #main article.detail section .slide .outer .slick-arrow {
              display: none !important; }
            #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track .slick-slide img {
              width: 100vw;
              height: auto; }
            #container .wrapper #main article.detail section .slide p {
              font-size: 13px;
              text-align: center;
              margin-top: 40px;
              margin-top: 5.44218vw;
              margin-right: 20px;
              margin-right: 2.72109vw;
              margin-left: 20px;
              margin-left: 2.72109vw; }
          #container .wrapper #main article.detail section .body {
            margin-top: 40px;
            margin-top: 5.44218vw;
            margin-right: 20px;
            margin-right: 2.72109vw;
            margin-left: 20px;
            margin-left: 2.72109vw; }
            #container .wrapper #main article.detail section .body dl dt,
            #container .wrapper #main article.detail section .body dl dd {
              font-size: 15px; }
            #container .wrapper #main article.detail section .body dl dt {
              margin-bottom: 10px;
              margin-bottom: 1.36054vw; }
            #container .wrapper #main article.detail section .body dl dd {
              margin-bottom: 40px;
              margin-bottom: 5.44218vw; }
            #container .wrapper #main article.detail section .body dl + dl {
              background-color: #f2f2f2;
              padding: 40px;
              padding: 5.44218vw; }
              #container .wrapper #main article.detail section .body dl + dl dd {
                margin-bottom: 0; }
    #container .wrapper #main .archives article {
      margin-top: 200px;
      margin-top: 27.21088vw; }
      #container .wrapper #main .archives article .header {
        text-align: center; }
        #container .wrapper #main .archives article .header h2 {
          font-size: 24px;
          font-family: 'FuturaPT-Book';
          letter-spacing: 0.1em;
          line-height: 19.2px; }
        #container .wrapper #main .archives article .header p {
          font-size: 15px;
          margin-top: 10px;
          margin-top: 1.36054vw; }
      #container .wrapper #main .archives article .body section .outer p {
        font-size: 15px; }
      #container .wrapper #main .archives article .body section .outer .inner {
        margin: 0; }
        #container .wrapper #main .archives article .body section .outer .inner h3 {
          line-height: 24px; }
        #container .wrapper #main .archives article .body section .outer .inner p {
          font-size: 13px; }
    #container .wrapper #main .archives a {
      text-decoration: none; }
      #container .wrapper #main .archives a:hover, #container .wrapper #main .archives a:active, #container .wrapper #main .archives a:focus {
        text-decoration: underline; }

  footer {
    font-size: 13px;
    background-color: #000;
    margin-top: 10.88435vw;
    padding-top: 5.44218vw; }
    footer .outer {
      width: 100vw-5.44218vw;
      margin-left: 2.72109vw;
      margin-right: 2.72109vw; }
      footer .outer .sns,
      footer .outer .nav,
      footer .outer .subnav {
        margin-bottom: 1.36054vw; }
        footer .outer .sns ul,
        footer .outer .nav ul,
        footer .outer .subnav ul {
          line-height: 1.2; }
          footer .outer .sns ul li,
          footer .outer .nav ul li,
          footer .outer .subnav ul li {
            display: inline-block;
            vertical-align: middle;
            *vertical-align: auto;
            *zoom: 1;
            *display: inline;
            margin-right: 1.36054vw; }
            footer .outer .sns ul li a,
            footer .outer .nav ul li a,
            footer .outer .subnav ul li a {
              text-decoration: none;
              color: #fff; }
              footer .outer .sns ul li a:hover, footer .outer .sns ul li a:active, footer .outer .sns ul li a:focus,
              footer .outer .nav ul li a:hover,
              footer .outer .nav ul li a:active,
              footer .outer .nav ul li a:focus,
              footer .outer .subnav ul li a:hover,
              footer .outer .subnav ul li a:active,
              footer .outer .subnav ul li a:focus {
                text-decoration: underline; }
      footer .outer .sns ul li {
        margin-bottom: 2.72109vw; }
        footer .outer .sns ul li a {
          display: block;
          color: #fff; }
          footer .outer .sns ul li a:hover, footer .outer .sns ul li a:active, footer .outer .sns ul li a:focus {
            color: #fff; }
          footer .outer .sns ul li a img {
            display: inline-block;
            vertical-align: middle;
            *vertical-align: auto;
            *zoom: 1;
            *display: inline;
            width: 5.44218vw;
            height: auto; }
      footer .outer .sns ul .tweet a span,
      footer .outer .sns ul .like a span,
      footer .outer .sns ul .share a span {
        display: inline-block;
        vertical-align: middle;
        *vertical-align: auto;
        *zoom: 1;
        *display: inline;
        padding-right: 1.36054vw;
        padding-left: 0.68027vw;
        vertical-align: -10%; }
      footer .outer .copyright {
        color: #fff;
        padding-bottom: 1.36054vw; } }
@media screen and (min-width: 736px) {
  html {
    line-height: 1.7; }

  body {
    font-size: 18px; }

  h2 {
    font-size: 30px;
    line-height: 1.5; }

  h3 {
    font-size: 28px; }

  h4 {
    font-size: 18px; }

  h5 {
    font-size: 18px;
    font-weight: bold; }

  h6 {
    font-size: 15px; }

  .sns ul {
    overflow: hidden;
    *zoom: 1;
    line-height: 1.2; }
    .sns ul li {
      float: left;
      margin-right: 30px;
      margin-right: 2.5vw; }
      .sns ul li a {
        text-decoration: none; }
        .sns ul li a:hover, .sns ul li a:active, .sns ul li a:focus {
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
          opacity: 0.3; }
        .sns ul li a img {
          display: inline-block;
          vertical-align: middle;
          *vertical-align: auto;
          *zoom: 1;
          *display: inline;
          width: 30px;
          height: auto; }

  #main .sns .share {
    overflow: hidden;
    *zoom: 1; }

  #main .sns .share strong {
    float: left;
    padding-right: 30px;
    padding-right: 2.5vw;
    padding-top: 3px; }

  #main .sns .share img {
    width: 12px; }

  #main .sns .tweet img {
    width: 22px; }

  #main .sns .hatebu img {
    width: 22px; }

  #main .sns .google_plus img {
    width: 28px; }

  #main .sns .line img {
    width: 40px; }

  #pagetop figure {
    right: 20px;
    top: 20px; }
    #pagetop figure:hover, #pagetop figure:active, #pagetop figure:focus {
      filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
      opacity: 0.3; }
    #pagetop figure span {
      display: block;
      text-indent: -119988px;
      overflow: hidden;
      text-align: left;
      text-transform: capitalize;
      background-image: url('../img/pagetop.png?1455611133');
      background-repeat: no-repeat;
      background-position: 50% 50%;
      width: 40px;
      height: 40px;
      -moz-background-size: 40px 40px;
      -o-background-size: 40px 40px;
      -webkit-background-size: 40px 40px;
      background-size: 40px 40px;
      width: 40px;
      height: 40px; }

  #container {
    max-width: 1200px;
    margin: 0 auto; }
    #container header .outer {
      overflow: hidden;
      *zoom: 1;
      margin-top: 20px; }
      #container header .outer h1 a {
        float: left;
        text-indent: -119988px;
        overflow: hidden;
        text-align: left;
        text-transform: capitalize;
        background-image: url('../img/logo.gif?1455586019');
        background-repeat: no-repeat;
        background-position: 50% 50%;
        width: 400px;
        height: 37px;
        -moz-background-size: 200px 18px;
        -o-background-size: 200px 18px;
        -webkit-background-size: 200px 18px;
        background-size: 200px 18px;
        width: 200px;
        height: 18px; }
        #container header .outer h1 a:hover, #container header .outer h1 a:active, #container header .outer h1 a:focus {
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
          opacity: 0.3; }
      #container header .outer p {
        float: right;
        font-size: 13px;
        color: #000; }
        #container header .outer p a {
          text-decoration: none;
          color: #000; }
          #container header .outer p a:hover, #container header .outer p a:active, #container header .outer p a:focus {
            text-decoration: underline; }
    #container .wrapper #main article {
      margin-top: 120px;
      margin-top: 10vw; }
      #container .wrapper #main article .outer .inner {
        margin-top: 40px;
        margin-top: 3.33333vw; }
      #container .wrapper #main article.entry {
        margin-top: 80px;
        margin-top: 6.66667vw; }
        #container .wrapper #main article.entry .outer .inner h2,
        #container .wrapper #main article.entry .outer .inner p,
        #container .wrapper #main article.entry .outer .inner ul {
          margin-top: 20px;
          margin-top: 1.66667vw; }
        #container .wrapper #main article.entry .outer .inner ul {
          font-size: 15px; }
        #container .wrapper #main article.entry .outer .inner .sns ul {
          margin-top: 40px;
          margin-top: 3.33333vw; }
      #container .wrapper #main article.thumb {
        margin-top: 80px;
        margin-top: 6.66667vw; }
        #container .wrapper #main article.thumb .outer {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-justify-content: space-between;
          justify-content: space-between; }
          #container .wrapper #main article.thumb .outer .inner figure img {
            width: 220px;
            width: 18.33333vw;
            max-width: 220px;
            height: auto; }
          #container .wrapper #main article.thumb .outer .inner p {
            font-size: 15px;
            text-align: center;
            margin-top: 10px; }
            #container .wrapper #main article.thumb .outer .inner p a {
              text-decoration: none; }
              #container .wrapper #main article.thumb .outer .inner p a:hover, #container .wrapper #main article.thumb .outer .inner p a:active, #container .wrapper #main article.thumb .outer .inner p a:focus {
                text-decoration: underline; }
      #container .wrapper #main article.detail {
        margin-top: 0; }
        #container .wrapper #main article.detail section {
          margin-top: 120px;
          margin-top: 10vw; }
          #container .wrapper #main article.detail section .header {
            overflow: hidden;
            *zoom: 1; }
            #container .wrapper #main article.detail section .header h3 {
              float: left; }
              #container .wrapper #main article.detail section .header h3 span {
                display: inline-block;
                margin-left: 5px;
                font-size: 15px; }
            #container .wrapper #main article.detail section .header p {
              float: right;
              font-size: 15px;
              margin-top: 10px;
              margin-top: 0.83333vw; }
          #container .wrapper #main article.detail section .slide .outer {
            position: relative;
            margin-top: 40px;
            margin-top: 3.33333vw;
            margin-right: -20px; }
            #container .wrapper #main article.detail section .slide .outer .slick-arrow {
              filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
              opacity: 0;
              position: absolute;
              top: 0;
              z-index: 999;
              width: 280px;
              width: 23.33333vw;
              max-width: 280px;
              height: 900px;
              height: 75vw;
              max-height: 900px;
              cursor: pointer; }
              #container .wrapper #main article.detail section .slide .outer .slick-arrow.slick-prev {
                left: 0; }
              #container .wrapper #main article.detail section .slide .outer .slick-arrow.slick-next {
                right: 20px; }
            #container .wrapper #main article.detail section .slide .outer .slick-list {
              margin-right: 20px; }
              #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track {
                margin-left: 290px;
                margin-left: 24.16667vw; }
                #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track .slick-slide {
                  margin-right: 20px; }
                  #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track .slick-slide img {
                    width: 600px;
                    width: 50vw;
                    max-width: 600px;
                    height: auto; }
          #container .wrapper #main article.detail section .slide p {
            width: 710px;
            width: 59.16667vw;
            max-width: 710px;
            margin: 20px auto 0;
            font-size: 13px;
            text-align: center; }
          #container .wrapper #main article.detail section .body {
            overflow: hidden;
            *zoom: 1; }
            #container .wrapper #main article.detail section .body dl {
              font-size: 15px; }
            #container .wrapper #main article.detail section .body dl:first-child {
              float: left;
              width: 700px;
              width: 58.33333vw;
              max-width: 700px;
              margin-top: 40px; }
              #container .wrapper #main article.detail section .body dl:first-child dt {
                margin-bottom: 10px; }
              #container .wrapper #main article.detail section .body dl:first-child dd {
                margin-bottom: 20px; }
              #container .wrapper #main article.detail section .body dl:first-child + dl {
                float: right;
                width: 300px;
                width: 25vw;
                max-width: 300px;
                background-color: #f2f2f2;
                padding: 20px;
                margin-top: 40px; }
                #container .wrapper #main article.detail section .body dl:first-child + dl dt {
                  margin-bottom: 10px; }
    #container .wrapper #main .archives article {
      margin-top: 200px;
      margin-top: 16.66667vw; }
      #container .wrapper #main .archives article .header {
        display: table; }
        #container .wrapper #main .archives article .header h2,
        #container .wrapper #main .archives article .header p {
          display: table-cell; }
        #container .wrapper #main .archives article .header h2 {
          font-size: 28px;
          font-family: 'FuturaPT-Book';
          letter-spacing: 0.1em;
          line-height: 19.2px; }
        #container .wrapper #main .archives article .header p {
          font-size: 13px;
          vertical-align: middle;
          padding-left: 20px;
          padding-left: 1.66667vw; }
      #container .wrapper #main .archives article .body section .outer p {
        font-size: 18px;
        margin-top: 0; }
      #container .wrapper #main .archives article .body section .outer figure {
        margin-top: 0; }
      #container .wrapper #main .archives article .body section .outer .inner {
        margin: 0; }
        #container .wrapper #main .archives article .body section .outer .inner p {
          font-size: 13px;
          margin-top: 10px;
          margin-top: 0.83333vw; }
    #container .wrapper #main .archives a {
      text-decoration: none; }
      #container .wrapper #main .archives a:hover, #container .wrapper #main .archives a:active, #container .wrapper #main .archives a:focus {
        text-decoration: underline; }

  footer {
    background-color: #000;
    margin-top: 80px;
    margin-top: 6.66667vw;
    padding-top: 20px;
    padding-top: 1.66667vw; }
    footer ul,
    footer p {
      font-size: 13px; }
    footer .outer {
      width: 100vw;
      max-width: 1200px;
      margin: 0 auto; }
      footer .outer .sns,
      footer .outer .nav,
      footer .outer .subnav,
      footer .outer .copyright {
        margin-left: 10px;
        margin-left: 0.83333vw; }
      footer .outer .sns,
      footer .outer .nav,
      footer .outer .subnav {
        margin-bottom: 10px;
        margin-bottom: 0.83333vw; }
        footer .outer .sns ul,
        footer .outer .nav ul,
        footer .outer .subnav ul {
          line-height: 1.2; }
          footer .outer .sns ul li,
          footer .outer .nav ul li,
          footer .outer .subnav ul li {
            display: inline-block;
            vertical-align: middle;
            *vertical-align: auto;
            *zoom: 1;
            *display: inline;
            margin-right: 10px;
            margin-right: 0.83333vw; }
            footer .outer .sns ul li a,
            footer .outer .nav ul li a,
            footer .outer .subnav ul li a {
              text-decoration: none;
              color: #fff; }
              footer .outer .sns ul li a:hover, footer .outer .sns ul li a:active, footer .outer .sns ul li a:focus,
              footer .outer .nav ul li a:hover,
              footer .outer .nav ul li a:active,
              footer .outer .nav ul li a:focus,
              footer .outer .subnav ul li a:hover,
              footer .outer .subnav ul li a:active,
              footer .outer .subnav ul li a:focus {
                text-decoration: underline; }
      footer .outer .sns ul li a {
        color: #fff; }
        footer .outer .sns ul li a:hover, footer .outer .sns ul li a:active, footer .outer .sns ul li a:focus {
          filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
          opacity: 0.5;
          color: #fff; }
        footer .outer .sns ul li a img {
          display: inline-block;
          vertical-align: middle;
          *vertical-align: auto;
          *zoom: 1;
          *display: inline;
          width: 20px;
          height: auto; }
      footer .outer .sns ul li.tweet a span, footer .outer .sns ul li.like a span, footer .outer .sns ul li.share a span {
        display: inline-block;
        vertical-align: middle;
        *vertical-align: auto;
        *zoom: 1;
        *display: inline;
        padding-right: 10px;
        padding-right: 0.83333vw;
        padding-left: 5px;
        padding-left: 0.41667vw;
        vertical-align: -10%; }
      footer .outer .copyright {
        color: #fff;
        padding-bottom: 20px;
        padding-bottom: 1.66667vw; } }
@media screen and (min-width: 1200px) {
  .sns ul li {
    margin-right: 30px; }

  #main .sns .share strong {
    padding-right: 30px; }

  #container .wrapper #main article {
    margin-top: 120px; }
    #container .wrapper #main article .outer .inner {
      margin-top: 40px; }
    #container .wrapper #main article.entry {
      margin-top: 80px; }
      #container .wrapper #main article.entry .outer .inner h2,
      #container .wrapper #main article.entry .outer .inner p,
      #container .wrapper #main article.entry .outer .inner ul {
        margin-top: 20px; }
      #container .wrapper #main article.entry .outer .inner .sns ul {
        margin-top: 40px; }
    #container .wrapper #main article.thumb {
      margin-top: 80px; }
    #container .wrapper #main article.detail section {
      margin-top: 120px; }
      #container .wrapper #main article.detail section .header p {
        margin-top: 10px; }
      #container .wrapper #main article.detail section .slide .outer {
        margin-top: 40px; }
        #container .wrapper #main article.detail section .slide .outer .slick-arrow {
          max-width: 280px;
          max-height: 900px; }
        #container .wrapper #main article.detail section .slide .outer .slick-list {
          margin-right: 20px; }
          #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track {
            margin-left: 290px; }
            #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track .slick-slide {
              margin-right: 20px; }
              #container .wrapper #main article.detail section .slide .outer .slick-list .slick-track .slick-slide img {
                max-width: 600px; }
      #container .wrapper #main article.detail section .slide p {
        max-width: 710px; }
  #container .wrapper #main .archives article {
    margin-top: 200px; }
    #container .wrapper #main .archives article .header p {
      padding-left: 20px; }
    #container .wrapper #main .archives article .body section .outer .inner p {
      margin-top: 10px; }

  footer {
    margin-top: 80px;
    padding-top: 20px; }
    footer .outer .sns,
    footer .outer .nav,
    footer .outer .subnav,
    footer .outer .copyright {
      margin-left: 0; }
    footer .outer .sns,
    footer .outer .nav,
    footer .outer .subnav {
      margin-bottom: 10px; }
      footer .outer .sns ul li,
      footer .outer .nav ul li,
      footer .outer .subnav ul li {
        margin-right: 10px; }
    footer .outer .sns ul li.tweet a span, footer .outer .sns ul li.like a span, footer .outer .sns ul li.share a span {
      padding-right: 10px;
      padding-left: 5px; }
    footer .outer .copyright {
      padding-bottom: 20px; } }
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-arrow {
  position: absolute;
  z-index: 1;
  padding: 0;
  border: none;
  outline: none;
  background-color: transparent; }

.dotnav {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center; }
  .dotnav li {
    width: 10px;
    height: 10px;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=20);
    opacity: 0.2; }
    .dotnav li.slick-active {
      filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
      opacity: 1; }
    .dotnav li:hover {
      filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
      opacity: 1; }
    .dotnav li:last-child {
      margin-right: 0; }
    .dotnav li button {
      text-indent: -119988px;
      overflow: hidden;
      text-align: left;
      text-transform: capitalize;
      background-image: url('../img/dot@2x.gif?1452054085');
      background-repeat: no-repeat;
      background-position: 50% 50%;
      width: 20px;
      height: 20px;
      -moz-background-size: 10px 10px;
      -o-background-size: 10px 10px;
      -webkit-background-size: 10px 10px;
      background-size: 10px 10px;
      padding: 0;
      border: none;
      outline: none;
      background-color: transparent;
      width: 10px;
      height: 10px; }

@media screen and (max-width: 735px) {
  .dotnav {
    margin: 10px auto 0; }
    .dotnav li {
      margin-right: 10px; } }
@media screen and (min-width: 736px) {
  .dotnav {
    margin: 20px auto 0; }
    .dotnav li {
      margin-right: 20px; } }
/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) {
  #container header .outer h1 a {
    text-indent: -119988px;
    overflow: hidden;
    text-align: left;
    text-transform: capitalize;
    background-image: url('../img/logo@2x.gif?1455586020');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    width: 800px;
    height: 74px;
    -moz-background-size: 200px 18px;
    -o-background-size: 200px 18px;
    -webkit-background-size: 200px 18px;
    background-size: 200px 18px;
    width: 200px;
    height: 18px; } }
@media screen and (-webkit-min-device-pixel-ratio: 1.25) and (max-width: 735px), screen and (min-resolution: 1.25dppx) and (max-width: 735px), screen and (min-resolution: 120dpi) and (max-width: 735px) {
  #pagetop figure span {
    text-indent: -119988px;
    overflow: hidden;
    text-align: left;
    text-transform: capitalize;
    background-image: url('../img/sp.pagetop@2x.png?1454914273');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    width: 28px;
    height: 24px;
    -moz-background-size: 14px 12px;
    -o-background-size: 14px 12px;
    -webkit-background-size: 14px 12px;
    background-size: 14px 12px;
    width: 14px;
    height: 12px; } }
@media screen and (-webkit-min-device-pixel-ratio: 1.25) and (min-width: 736px), screen and (min-resolution: 1.25dppx) and (min-width: 736px), screen and (min-resolution: 120dpi) and (min-width: 736px) {
  #pagetop figure span {
    text-indent: -119988px;
    overflow: hidden;
    text-align: left;
    text-transform: capitalize;
    background-image: url('../img/pagetop@2x.png?1455611134');
    background-repeat: no-repeat;
    background-position: 50% 50%;
    width: 80px;
    height: 80px;
    -moz-background-size: 40px 40px;
    -o-background-size: 40px 40px;
    -webkit-background-size: 40px 40px;
    background-size: 40px 40px;
    width: 40px;
    height: 40px; } }
/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   http://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster:
       http://www.sanbeiji.com/archives/953 */
    box-shadow: none !important;
    text-shadow: none !important; }

  a,
  a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }

  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }

  /*
   * Printing Tables:
   * http://css-discuss.incutio.com/wiki/Printing_Tables
   */
  thead {
    display: table-header-group; }

  tr,
  img {
    page-break-inside: avoid; }

  img {
    max-width: 100% !important; }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; } }
