@charset "UTF-8";

/* -----------------------------------------
#
# INFORMATION
#
# FileName:	global.css
# Summary:	Global
# Created:	2015-02-27
# UpdatedBy:	2015-03-02
# Copyright:	(c)KOIKE Yuriko Official Site
------------------------------------------ */
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;
}

ul.ul-style1 {
  margin-left: 25px;
  list-style-type: disc;
}

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;
}

.base-font-family {
  font-family: 'Roboto Condensed', Helvetica, Arial, YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
}

.headline-font-family {
  font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.hiragino {
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Helvetica, Arial, YuGothic, "游ゴシック", Meiryo, "メイリオ", sans-serif;
}

.body-color {
  color: #FFF;
}

.base-color {
  color: #f4f1f7;
}

.main-color {
  color: #20944f;
}

.sub-color {
  color: #906f18;
}

.accent-color {
  color: #164535;
}

.text-color {
  color: #333;
}

/* =============================================================================
 Base
============================================================================= */
/* Body
============================================================================= */
body {
  color: #333;
  font-family: "Roboto Condensed", Helvetica, Arial, YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
  letter-spacing: 0.1em;
  background-color: #FFF;
  -webkit-text-size-adjust: 100%;
}

/* link
============================================================================= */
a {
  color: #20944f;
  text-decoration: none;
}

a:visited {
  color: #20944f;
  text-decoration: none;
}

a:hover,
a:active,
a:focus {
  color: #44d67f;
  text-decoration: underline;
}

/* p,dl,ul,ol,...other
============================================================================= */
p,
dl,
ul,
ol,
table {
  font-size: 15px;
  line-height: 27px;
}

p {
  margin: 0;
}

/* img
============================================================================= */
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  border: 0;
}

/* Headline
============================================================================= */
h1,
h2,
h3,
h5 {
  font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

h1 {
  font-size: 26px;
  line-height: 32px;
  border-bottom: 1px solid #20944f;
}

h2 {
  margin: 0 0 28px;
  font-size: 32px;
  line-height: 36px;
  text-align: center;
}

h2 .sub {
  display: block;
  font-size: 16px;
  color: #20944f;
}

h3 {
  font-size: 26px;
  line-height: 40px;
}

h4 {
  font-size: 15px;
  line-height: 27px;
  text-align: center;
}

h5 {
  font-size: 18px;
  line-height: 24px;
}

h6 {
  margin: 10px 0 0;
  font-size: 16px;
  line-height: 27px;
  color: #20944f;
}

.h-style1 {
  padding-bottom: 2px;
  margin-bottom: 12px;
  border-bottom: solid 1px #20944f;
}

/* =============================================================================
 SmartPhone
============================================================================= */
@media only screen and (max-width: 480px) {

  /* p,dl,ul,ol,...other
  ============================================================================= */
  p,
  dl,
  ul,
  ol,
  table {
    font-size: 12px;
    line-height: 20px;
  }

  p {
    margin: 0;
  }

  /* Headline
  ============================================================================= */
  h1 {
    font-size: 20px;
    line-height: 30px;
    border-bottom: 1px solid #20944f;
  }

  h2 {
    margin: 0 0 10px;
    font-size: 24px;
    line-height: 27px;
    text-align: center;
  }

  h2 .sub {
    font-size: 12px;
  }

  h3 {
    font-size: 20px;
    line-height: 30px;
  }

  h4 {
    font-size: 12px;
    line-height: 17.5px;
    text-align: center;
  }

  h5 {
    font-size: 15px;
    line-height: 24px;
  }

  h6 {
    font-size: 13px;
    line-height: 24px;
  }

  .h-style1 {
    font-size: 19px !important;
  }
}

/* =============================================================================
 Grid
 FrameWork:Responsive Grid System
 URL:http://www.responsivegridsystem.com/
============================================================================= */
/* section
============================================================================= */
@media only screen and (max-width: 1024px) and (min-width: 480px) {
  .section {
    width: 93.75%;
  }
}

@media only screen and (max-width: 480px) {
  .section {
    width: 93.75%;
  }
}

.section {
  clear: both;
  padding: 0;
  margin: 0;
}

/* Grouping
============================================================================= */
.group:before,
.group:after {
  content: "";
  display: table;
}

.group:after {
  clear: both;
}

.group {
  zoom: 1;
  /* For IE 6/7 (trigger hasLayout) */
}

/* GRID COLUMN SETUP
============================================================================= */
.col {
  display: block;
  float: left;
  margin: 1% 0 1% 2.08333%;
}

.col:first-child,
.col.first {
  margin-left: 0;
}

.col.first {
  clear: both;
}

/* all browsers except IE6 and lower */
/*  REMOVE MARGINS AS ALL GO FULL WIDTH AT 480 PIXELS */
@media only screen and (max-width: 480px) {
  .col {
    margin: 1% 0 1% 0%;
  }
}

/*  GRID OF TWELVE
============================================================================= */
.span_12_of_12 {
  width: 100%;
}

.span_11_of_12 {
  width: 91.49306%;
}

.span_10_of_12 {
  width: 82.98611%;
}

.span_9_of_12 {
  width: 74.47917%;
}

.span_8_of_12 {
  width: 65.97222%;
}

.span_7_of_12 {
  width: 57.46528%;
}

.span_6_of_12 {
  width: 48.95833%;
}

.span_5_of_12 {
  width: 40.45139%;
}

.span_4_of_12 {
  width: 31.94444%;
}

.span_3_of_12 {
  width: 23.4375%;
}

.span_2_of_12 {
  width: 14.93056%;
}

.span_1_of_12 {
  width: 6.42361%;
}

/*  GO FULL WIDTH AT LESS THAN 480 PIXELS */
@media only screen and (max-width: 480px) {
  .span_12_of_12 {
    width: 100%;
  }

  .span_11_of_12 {
    width: 100%;
  }

  .span_10_of_12 {
    width: 100%;
  }

  .span_9_of_12 {
    width: 100%;
  }

  .span_8_of_12 {
    width: 100%;
  }

  .span_7_of_12 {
    width: 100%;
  }

  .span_6_of_12 {
    width: 100%;
  }

  .span_5_of_12 {
    width: 100%;
  }

  .span_4_of_12 {
    width: 100%;
  }

  .span_3_of_12 {
    width: 100%;
  }

  .span_2_of_12 {
    width: 100%;
  }

  .span_1_of_12 {
    width: 100%;
  }
}

/* mainvisual
============================================================================= */

#content-mainvisual {
  background-color: #f4f1f7;
  background-size: cover !important;
  background-position: center center !important;
}

#content-mainvisual .section {
  height: 580px;
}

#content-mainvisual .catch {
  position: absolute;
  top: 200px;
  left: 10px;
  color: #FFF;
  font-size: 42px;
  text-shadow: 0 0 10px #250942;

  line-height: 1.5;
  text-align: left;
}

#content-mainvisual .catch.newspage {
  left: auto;
  right: 100px;
}

#content-mainvisual .catch span:nth-child(2),
#content-mainvisual .catch span:nth-child(3) {
  font-size: 33px;
}

#content-mainvisual .catch .newline {
  display: block;
}

/* legacy Browser */
.lt-ie9 #content-mainvisual {
  background-color: #f4f1f7 !important;
}

@media only screen and (max-width: 480px) {
  #content-mainvisual {
    background-color: #f4f1f7;
    background-size: cover !important;
    background-position: center top !important;
  }

  #content-mainvisual .section {
    width: 100%;
    height: 290px;
  }

  #content-mainvisual .catch {
    position: absolute;
    top: auto;
    left: 20px;
    margin: 0;
    color: #FFF;
    font-size: 19px !important;
    text-align: left;
    line-height: 42px;
  }

  #content-mainvisual .catch .newline {
    display: block;
  }

  #content-mainvisual .catch span:nth-child(2),
  #content-mainvisual .catch span:nth-child(3) {
    font-size: 18px !important;
  }
}

@media only screen and (max-width: 767px) and (min-width: 481px) {
  #content-mainvisual {
    background-size: 1200px auto;
    background-position: right bottom;
  }

  #content-mainvisual .section {
    height: 580px;
  }
}

/* sns
============================================================================= */
.sns-style1 h4 {
  margin: 0 0 42px;
  color: #3B5998;
}

.sns-style1 .facebook.sns {
  padding: 35px 5% 40px;
  background-color: #FFF;
  overflow: hidden;
  width: 90%;
}

.sns-style1 .facebook.sns h4 {
  font-weight: 700;
}

.sns-style1 .facebook.sns .feedpage .pict {
  padding: 0 30px 0 0;
  float: left;
  width: 230px;
}

.sns-style1 .facebook.sns .feedpage .pict img {
  width: 100%;
}

.sns-style1 .facebook.sns .feedpage .time {
  display: inline-block;
  border-bottom: 1px solid #536da4;
  margin-bottom: 15px;
  padding-bottom: 20px;
  width: 600px;
}

.sns-style1 .facebook.sns .feedpage .text {
  display: inline-block;
  width: 600px;
}

.sns-style1 .facebook.sns p {
  text-align: center;
  margin-top: 25px;
  color: #536da4;
  width: 640px;
  float: right;
}

.sns-style1 .facebook.sns p span {
  text-align: center;
  border: 1px solid;
  padding: 10px 30px 10px 50px;
  background: url(../img/global/fb-icon.png) 18px no-repeat;
  background-size: 21px;
}

.sns-style1 .facebook.sns p span a {
  color: #536da4;
}

.sns-style1 .facebook.sns p span a .icon-site:before {
  color: #536da4;
}

.sns-style1 .facebook.sns .figure {
  position: relative;
  width: 228px;
  height: 228px;
  margin: 0;
  float: left;
  border: 1px solid #CCC;
  overflow: hidden;
}

.sns-style1 .facebook.sns .figure img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 100%;
  max-width: none;
}

.sns-style1 .facebook.sns .figure+dl {
  margin: 0 0 0 260px;
}

.sns-style1 .facebook.sns dl {
  overflow: hidden;
}

.sns-style1 .facebook.sns dl dt {
  margin: 0 0 1em;
  padding: 0 0 1em;
  border-bottom: 1px solid #3b5998;
}

.sns-style1 .facebook.sns dl dd .body {
  margin: 0 0 20px;
}

.sns-style1 .facebook.sns .more {
  text-align: center;
}

.sns-style1 .facebook.sns .figure+dl+.more {
  margin: 0 0 0 260px;
}

.sns-style1 .facebook.sns .button {
  border-color: #3b5998;
  text-align: center;
  color: #3b5998;
  text-decoration: none;
}

.sns-style1 .facebook.sns .button:visited {
  color: #3b5998;
  text-decoration: none;
}

.sns-style1 .facebook.sns .button:hover,
.sns-style1 .facebook.sns .button:active,
.sns-style1 .facebook.sns .button:focus {
  color: #718dc8;
  text-decoration: underline;
}

.sns-style1 .facebook.sns .button .icon-site:before {
  color: #3b5998;
}

.sns-style1 .facebook.sns .button span {
  padding: 13px;
}

.sns-style1 .facebook.sns .button span img {
  padding-right: 13px;
  vertical-align: middle;
}

.sns-style1 .others .sns {
  width: 32.76%;
  min-height: 290px;
  background: #FFF;
  margin: 1% 0 1% 0.85%;
  font-size: 14px;
  text-align: center;
}

.sns-style1 .others .sns:first-child {
  margin-left: 0;
}

.sns-style1 .others .sns.fb-office {
  width: 49.57%;
  margin: 1% 0 0% 0.85%;
}

.sns-style1 .others .sns.fb-office:first-child {
  margin-left: 0;
}

.sns-style1 .others .sns.fb-office:first-child .thumbnail a {
  background: url(../img/global/fb-icon.png) center no-repeat;
  ;
  background-size: 112px;
}

.sns-style1 .others .sns.fb-office:last-child .thumbnail a {
  background: none;
  padding: 111px 0 77px;
  height: auto;
  font-size: 35px;
  font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.sns-style1 .others .fb-office .thumbnail a {
  height: 215px;
}

.sns-style1 .others .thumbnail a {
  display: block;
  height: 250px;
}

.sns-style1 .twitter .thumbnail a {
  background: url("../img/global/icon_twitter.png") center no-repeat;
  background-size: 38% auto;
}

.sns-style1 .youtube .thumbnail a {
  background: url("../img/global/icon_youtube.png") center no-repeat;
  background-size: 58% auto;
}

.sns-style1 .niconico .thumbnail a {
  background: url("../img/global/icon_niconico.png") center no-repeat;
  background-size: 73% auto;
  letter-spacing: 0;
}

@media only screen and (max-width: 480px) {

  /* sns
  ============================================================================= */
  .sns-style1 h4 {
    margin: 0 0 22px;
    font-size: 12px;
  }

  .sns-style1 .facebook.sns {
    margin: 0 0 5px;
    background-color: #FFF;
    padding: 18px 8.3% 18px;
    width: 83.1%;
  }

  .sns-style1 .facebook.sns p {
    width: auto;
    float: none;
    padding-top: 20px;
    margin-top: 0;
  }

  .sns-style1 .facebook.sns .feedpage .pict {
    float: none;
    padding: 0 0 20px;
    text-align: center;
    width: 80%;
    margin: 0 auto;
  }

  .sns-style1 .facebook.sns .feedpage .time {
    width: 100%;
    padding-bottom: 5px;
  }

  .sns-style1 .facebook.sns .feedpage .text {
    width: 100%;
  }

  .sns-style1 .facebook.sns p span {
    display: block;
  }

  .sns-style1 .facebook.sns .figure {
    width: auto;
    height: auto;
    margin: 0 15px 12px;
    float: none;
    border: none;
  }

  .sns-style1 .facebook.sns .figure img {
    position: static;
  }

  .sns-style1 .facebook.sns dl {
    overflow: hidden;
    margin: 0 15px !important;
  }

  .sns-style1 .facebook.sns dl dt {
    margin: 0 0 8px;
    padding: 0 0 8px;
    border-bottom: 1px solid #3b5998;
    font-weight: bold;
  }

  .sns-style1 .facebook.sns dl dd .body {
    margin: 0 0 20px;
  }

  .sns-style1 .facebook.sns dl dd .more {
    text-align: center;
  }

  .sns-style1 .facebook.sns .more {
    text-align: center;
    margin-left: 0 !important;
  }

  .sns-style1 .facebook.sns .button {
    border-color: #3b5998;
    color: #3b5998;
    text-decoration: none;
  }

  .sns-style1 .facebook.sns .button:visited {
    color: #3b5998;
    text-decoration: none;
  }

  .sns-style1 .facebook.sns .button:hover,
  .sns-style1 .facebook.sns .button:active,
  .sns-style1 .facebook.sns .button:focus {
    color: #718dc8;
    text-decoration: underline;
  }

  .sns-style1 .others .sns {
    width: 100%;
    min-height: 0;
    margin: 0 0 5px;
    padding: 0 0 18px;
    font-size: 12px;
  }

  .sns-style1 .others .sns.fb-office {
    width: 100%;
    margin: 0 0 5px;
  }

  .sns-style1 .others .fb-office .thumbnail a {
    height: 126px;
  }

  .sns-style1 .others .sns.fb-office:last-child .thumbnail a {
    font-size: 22px;
    padding: 62px 0 44px;
  }

  .sns-style1 .others .sns.fb-office:first-child {
    padding: 18px 0;
  }

  .sns-style1 .others .thumbnail a {
    display: block;
    height: 126px;
  }

  .sns-style1 .twitter .thumbnail a {
    background-size: 83px auto;
  }

  .sns-style1 .youtube .thumbnail a {
    background-size: 137px auto;
  }

  .sns-style1 .niconico .thumbnail a {
    background-size: 169px auto;
  }
}

@media only screen and (max-width: 767px) and (min-width: 481px) {

  /* sns
============================================================================= */
  .sns-style1 .facebook.sns .figure {
    width: auto;
    height: auto;
    margin: 0 15px 12px;
    float: none;
    border: none;
  }

  .sns-style1 .facebook.sns .figure img {
    position: static;
  }

  .sns-style1 .facebook.sns dl {
    overflow: hidden;
    margin: 0 15px !important;
  }

  .sns-style1 .facebook.sns .more {
    text-align: center;
    margin-left: 0 !important;
  }

  .sns-style1 .others .sns {
    min-height: 0;
    padding: 0 0 10px;
  }

  .sns-style1 .others .thumbnail a {
    height: 200px;
  }
}

/* =============================================================================
 Modules
============================================================================= */
/* Link
============================================================================= */
a.icon {
  display: inline-block;
}

a.alphaOver {
  color: #20944f;
}

a.alphaOver:hover {
  opacity: 0.5;
}

a.alphaOver:visited {
  color: #20944f;
  text-decoration: none;
}

a.alphaOver:hover,
a.alphaOver:active,
a.alphaOver:focus {
  color: #20944f;
  text-decoration: none;
}

/* icon
============================================================================= */
/*fonts-face*/
@font-face {
  font-family: "kyo-icon";
  src: url("../fonts/kyo-icon.eot?29438290");
  src: url("../fonts/kyo-icon.eot?1425358136") format("embedded-opentype"), url("../fonts/kyo-icon.ttf?1425358136") format("truetype"), url("../fonts/kyo-icon.svg?1425358136") format("svg"), url("../fonts/kyo-icon.woff?1425358136") format("woff");
}

[class^="icon-"]:before,
[class*=" icon-"]:before {
  display: inline-block;
  font-family: "kyo-icon";
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1em;
  margin-left: 0.2em;
  margin-right: 0.2em;
  text-align: center;
  text-decoration: inherit;
  text-transform: none;
  width: 1em;
  padding-right: 5px;
}

.icon-tag:before {
  content: '\e800';
  color: #20944f;
}

.icon-calendar:before {
  content: '\e806';
  color: #20944f;
}

.icon-site:before {
  content: '\e807';
  color: #20944f;
}

.icon-arrow-right:before {
  content: '\e801';
  color: #20944f;
  padding-right: 3px;
}

#content-mainvisual .jg-txt .icon-arrow-right:before,
#content-mainvisual .key-copy .icon-arrow-right:before {
  color: #fff;
}

.icon-arrow-left:before {
  content: '\e802';
  color: #20944f;
}

.icon-arrow-down:before {
  content: '\e803';
  color: #20944f;
}

.icon-arrow-up:before {
  content: '\e804';
  color: #20944f;
}

.icon-pagetop:before {
  content: '\e808';
  color: #20944f;
}

.icon-cancel:before {
  content: '\e805';
  color: #20944f;
}

.icon-arrow01 {
  background: url("../img/global/icon_arrow.png") left center no-repeat;
}

/* Button
============================================================================= */
.button {
  line-height: 1;
  display: inline-block;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  border: 1px solid #20944f;
  min-width: 287px;
  text-align: center;
  font-size: 14px;
}

.button .inner {
  display: inline-block;
  padding: 18px 30px;
}

.circle {
  display: block;
  margin: 0 auto;
  width: 180px;
  height: 180px;
  padding: 0;
  min-width: 0;
  -moz-border-radius: 90px;
  -webkit-border-radius: 90px;
  border-radius: 90px;
  border: 2px solid #20944f;
  text-align: center;
  font-size: 18px;
  font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  line-height: 28px;
}

.circle .inner {
  display: table-cell;
  width: 180px;
  height: 180px;
  padding: 0;
  vertical-align: middle;
}

.circle .icon-arrow-right {
  display: none;
}

.circle .newline {
  display: block;
}

/* Layout
============================================================================= */
.section {
  max-width: 960px;
  margin: 0 auto;
}

.group {
  position: relative;
}

.bg-gray {
  background-color: #f4f1f7;
}

.full-width {
  width: 100% !important;
  max-width: none !important;
}

.frame-width {
  max-width: 960px !important;
  margin: 0 auto;
}

/* Layout style */
.two-col-style1 .main-area {
  margin-bottom: 50px;
}

.two-col-style1 .side-wrapper {
  text-align: right;
}

.two-col-style1 #content-side {
  width: 80.65%;
  margin-bottom: 50px;
  display: inline-block;
  text-align: left;
}

/* Lead
============================================================================= */
.lead-style1 {
  color: #20944f;
  text-align: center;
  font-size: 16px;
  letter-spacing: 4px;
}

/* hr
============================================================================= */
.hr-style1 {
  height: 0;
  overflow: hidden;
  border: none;
  border-bottom: dotted 1px #6e3f9f;
  clear: both;
}

/* archive-list-style
============================================================================= */

.archive-list-style1 {
  padding-top: 50px;
  padding-bottom: 60px;
}

.archive-list-style1 .box-toggle {
  margin-bottom: 10px;
  border: solid 1px #20944f;
  border-radius: 3px;
}

.archive-list-style1 .box-toggle .trigger {
  padding: 22px;
  background-color: #20944f;
  color: #ffffff;
  cursor: pointer;
}

.archive-list-style1 .box-toggle .trigger .btn {
  float: right;
}

.archive-list-style1 .box-toggle .trigger.active.active .btn {
  position: relative;
  left: 17px;
}

.archive-list-style1 .box-toggle .trigger .btn * {
  vertical-align: middle;
}

.archive-list-style1 .box-toggle .trigger .btn:after {
  font-size: 95%;
  content: "開く";
}

.archive-list-style1 .box-toggle .trigger.active .btn:after {
  content: "閉じる";
}

.archive-list-style1 .box-toggle .trigger .btn .ico {
  width: 25px;
  height: 25px;
  margin-right: 11px;
  margin-top: -5px;
  font-weight: normal;
  font-size: 27px;
  overflow: hidden;
  border: solid 1px #ffffff;
  text-align: center;
  display: inline-block;
  border-radius: 13px;
}

.archive-list-style1 .box-toggle .trigger .btn .ico:before {
  position: relative;
  left: -1px;
  top: -1px;
  content: "＋";
}

.archive-list-style1 .box-toggle .trigger.active .btn .ico:before {
  content: "－";
}

.archive-list-style1 .box-toggle .toggle-container {
  padding: 22px;
  clear: both;
}

.archive-list-style1 .box-toggle .toggle-container ul {}

.archive-list-style1 .box-toggle .toggle-container ul li {
  margin-right: 12px;
  display: inline-block;
}

/* news-list-style
============================================================================= */
.news-list-style1 li {
  border-bottom: 1px solid #999;
}

.news-list-style1 li:first-child {
  border-top: 1px solid #999;
}

/* .articles-style
============================================================================= */
.articles-style1 {
  padding: 80px 0 10px;
  background-color: #f4f1f7;
}

.articles-style1 ul li {
  margin-bottom: 30px;
  /*display: inline-block;
  float: none !important;*/
  vertical-align: top;
  background-color: #ffffff;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.1);
}

.articles-style1 ul li>a {
  text-decoration: none;
}

.articles-style1 ul li>img {
  margin-bottom: 15px;
}

.articles-style1 ul li .image-container {
  overflow: hidden;
  height: 220px;
  margin-bottom: 12px;
}

.articles-style1 ul li .image {
  width: 100%;
  height: 220px;
  background-color: #eeeeee;
  display: table;
  overflow: hidden;
  border-collapse: collapse;
}

.articles-style1 ul li .image a,
.articles-style1 ul li .image span {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  color: #999999;
  font-weight: bold;
  letter-spacing: 2px;
}

.articles-style1 ul li .image a.padding {
  padding: 0 30px;
}

.articles-style1 ul li .image a img {
  width: 100%;
}

.articles-style1 ul li p {
  padding: 0 14px;
}

.articles-style1 ul li p.ttl {
  min-height: 70px;
  font-size: 14px;
  font-weight: bold;
  color: #333333;
  line-height: 25px;
}

.articles-style1 ul li p.date {
  font-size: 12px;
  color: #333333;
  line-height: 22px;
}

.articles-style1 ul li p.date:before {
  margin-right: 4px;
  content: url("../img/global/icon_date.png");
  position: relative;
  top: 1px;
}

.articles-style1 ul li p.tag {
  min-height: 50px;
  font-size: 12px;
  font-weight: bold;
  line-height: 22px;
}

.articles-style1 ul li p.tag:before {
  margin-right: 4px;
  content: url("../img/global/icon_tag.png");
  position: relative;
  top: 1px;
}

/* pager-style
============================================================================= */
.pager-style1 {
  height: 70px;
  margin-bottom: 50px;
  background-color: #c1d8ca;
}

.pager-style1 .frame-width {
  height: 100%;
  position: relative;
}

.pager-style1 .pages {
  text-align: center;
}

.pager-style1 .pages li {
  padding-top: 29px;
  margin: 0 6px;
  display: inline-block;
  line-height: 1;
  font-weight: bold;
}

.pager-style1 .pages li a {}

.pager-style1 .controlls {
  height: 100%;
  position: absolute;
  top: 0;
}

.pager-style1 .controlls.c1 {
  left: 0;
}

.pager-style1 .controlls.c2 {
  right: 0;
}

.pager-style1 .controlls li {
  height: 100%;
  display: inline-table;
  border-collapse: collapse;
  text-align: center;
  vertical-align: middle;
}

.pager-style1 .controlls li a {
  width: 70px;
  display: table-cell;
  vertical-align: middle;
  background-color: #20944f;
}

.pager-style1 .controlls li.first,
.pager-style1 .controlls li.next {
  margin-right: 1px;
}

.pager-style1 .controlls li.first img,
.pager-style1 .controlls li.end img {
  width: 16px;
  height: 22px;
}

.pager-style1 .controlls li.prev img,
.pager-style1 .controlls li.next img {
  width: 11px;
  height: 22px;
}

/* wp-pagenavi
============================================================================= */
.pagener-container {
  height: 70px;
  background-color: #c1d8ca;
}

.wp-pagenavi {
  max-width: 960px;
  height: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
}

.wp-pagenavi .page,
.wp-pagenavi .extend,
.wp-pagenavi .current {
  padding-top: 29px;
  margin: 0 8px;
  display: inline-block;
  line-height: 1;
  font-weight: bold;
}

.wp-pagenavi .extend {
  color: #20944f;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last {
  position: absolute;
  top: 0;
  display: block;
  width: 70px;
  height: 100%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-color: #20944f;
  background-position: center;
  background-repeat: no-repeat;
}

.wp-pagenavi .previouspostslink {
  left: 71px;
  background-image: url("../img/global/icon_arrow_03.png");
}

.wp-pagenavi .first {
  left: 0px;
  background-image: url("../img/global/icon_arrow_04.png");
}

.wp-pagenavi .nextpostslink {
  right: 71px;
  background-image: url("../img/global/icon_arrow_01.png");
}

.wp-pagenavi .last {
  right: 0;
  background-image: url("../img/global/icon_arrow_02.png");
}

.previouspostslink:first-child {
  left: 0 !important;
}

.nextpostslink:last-child {
  right: 0 !important;
}

.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .first:hover,
.wp-pagenavi .nextpostslink:hover,
.wp-pagenavi .last:hover {
  opacity: 0.5;
}

/* box
============================================================================= */

/* box-style1 */

.box-style1 {
  padding: 3px 0 55px 0;
  text-align: center;
  border-top: solid 1px #20944f;
}

.box-style1.sns {
  padding-top: 20px;
  text-align: left;
}

.box-style1.sns * {
  vertical-align: top;
}

.box-style1 dl dt {
  margin-bottom: 30px;
  text-align: left;
  color: #20944f;
  font-size: 15px;
}

.box-style1 dl dt:before {
  margin-right: 5px;
}

.box-style1.date dl dt:before {
  content: url("../img/global/icon_date.png");
}

.box-style1.tag dl dt:before {
  content: url("../img/global/icon_tag.png");
}

/* box-style2 */

.box-style2 {
  padding: 8px 0 0 0;
  text-align: left;
  border-top: solid 1px #20944f;
}

.box-style2 h3 {
  margin-bottom: 32px !important;
  color: #20944f;
  font-family: 'Roboto Condensed', Helvetica, Arial, YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif !important;
  font-size: 15px;
  line-height: 1;
}

.box-style2 nav ul {
  margin-left: 20px;
  border-top: solid 1px #cccccc;
}

.box-style2 nav ul li a {
  padding: 5px;
  border-bottom: solid 1px #cccccc;
  display: block;
  text-indent: -1.3em;
  padding-left: 1.3em;
}

.box-style2 nav ul li a:before {
  content: '\e801';
  color: #20944f;
  padding-right: 6px;
  font-family: "kyo-icon";
}

/* quote-box */

.quote-box {
  padding-left: 54px;
  background: url("../img/global/icon_quote.png") no-repeat left top;
}

.quote-box .quote-box-inner {
  padding-left: 20px;
  border-left: solid 1px #999999;
}

.quote-box .quote-box-inner p {
  font-size: 18px;
  font-style: italic;
  line-height: 1.8;
  margin-bottom: 1.7em;
  letter-spacing: 4px;
}

/* form-style
============================================================================= */

.form-style1 input,
.form-style1 textarea {
  width: 99%;
  padding: 15px 6px;
  margin-bottom: 12px;
  display: block;
  border: solid 1px #999999;
  box-shadow: 2px 2px 3px 0px rgba(0, 0, 0, 0.2) inset;
  font-size: 13px;
}

.form-style1 textarea {
  height: 200px;
}

.form-style1 .necessary {
  margin-left: 5px;
  color: #e80000;
  display: inline-block;
}

.form-style1 .button-wrapper {
  padding: 10px 0 0 0;
  text-align: center;
}

.form-style1 .btn {
  width: auto;
  min-width: 287px;
  margin: 0;
  padding: 18px 30px;
  color: #20944f;
  border: 1px solid #20944f;
  text-align: center;
  font-size: 14px;
  display: inline-block;
  background-color: #ffffff;
  box-shadow: none;
  border-radius: 3px;
}

.form-style1 .btn:hover {
  opacity: 0.5;
}

.form-style1 .wpcf7-not-valid-tip {
  margin: -8px 0 0;
  padding: 0 0 10px;
}

/* Helpers
============================================================================= */
.big-text,
.quotationl-text {
  font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.big-text {
  font-size: 26px;
  line-height: 40px;
}

.small-text {
  font-size: 12px;
  line-height: 27px;
}

.quotationl-text {
  font-size: 18px;
  line-height: 32px;
  font-style: oblique;
}

.text-centered {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.hide-text {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.mobile-only {
  display: none;
}

.desktop-only {
  display: block;
}

/* =============================================================================
 SmartPhone
============================================================================= */
@media only screen and (max-width: 480px) {

  /* Button
  ============================================================================= */
  .button {
    line-height: 1;
    min-width: 174px;
    text-align: center;
    font-size: 12px;
  }

  .button .inner {
    display: inline-block;
    padding: 14px 22px;
  }

  .button .nowrap {
    white-space: nowrap;
  }

  .circle {
    position: relative;
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    min-width: 0;
    background-color: #f3f7f5;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
    border: 1px solid #20944f;
    border-left: none;
    border-right: none;
    border-bottom: none;
    text-align: left;
    font-size: 15px;
    line-height: 28px;
  }

  .circle .inner {
    display: block;
    width: auto;
    height: auto;
    padding: 10px 30px 10px 15px;
    vertical-align: middle;
  }

  .circle .icon-arrow-right {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -12px;
  }

  .circle .newline {
    display: inline;
  }

  /* Layout
  ============================================================================= */
  /* Layout style */
  .two-col-style1 .main-area {
    margin-bottom: 25px;
  }

  .two-col-style1 .side-wrapper {
    text-align: left;
  }

  .two-col-style1 #content-side {
    width: auto;
    margin-bottom: 25px;
    display: block;
  }

  /* List
  ============================================================================= */
  .linkList {
    border-bottom: 1px solid #20944f;
  }

  .linkList .col {
    margin: 0;
  }

  /* Lead
  ============================================================================= */
  .lead-style1 {
    font-size: 12px;
  }

  /* news-list-style
  ============================================================================= */
  .news-list-style1 li {
    padding: 8px 0;
  }

  .news-list-style1 li p {
    margin: 0;
  }

  /* archive-list-style
  ============================================================================= */
  .archive-list-style1 {
    padding-bottom: 0 !important;
    margin-bottom: 25px;
    border-bottom: solid 1px #20944f;
  }

  .archive-list-style1 .box-toggle {
    margin-bottom: 0;
    border: none;
    border-top: solid 1px #20944f;
  }

  .archive-list-style1 .box-toggle .trigger {
    padding: 10px 15px;
    background-color: #f3f7f5;
    color: #20944f;
    font-weight: normal;
    font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 90%;
    line-height: 1.2em;
    position: relative;
  }

  .archive-list-style1 .box-toggle .trigger i {
    position: absolute;
    right: 0;
    top: 10px;
  }

  .archive-list-style1 .box-toggle .trigger.active i:before {
    content: '\e804';
  }

  .archive-list-style1 .box-toggle .trigger.active .btn .ico:before {
    content: "－";
  }

  .archive-list-style1 .box-toggle .toggle-container {
    padding: 10px;
    clear: both;
  }

  .archive-list-style1 .box-toggle .toggle-container ul li {
    font-size: 14px;
  }

  /* articles-style
  ============================================================================= */
  .articles-style1 {
    padding: 15px 0 0;
  }

  .articles-style1 ul li {
    margin-bottom: 15px;
  }

  .articles-style1 ul li>img {
    margin-bottom: 10px;
  }

  .articles-style1 ul li .image-container {
    height: 200px;
    margin-bottom: 10px;
  }

  .articles-style1 ul li .image {
    height: 200px;
  }

  .articles-style1 ul li p {
    margin-bottom: 5px;
    padding: 0 10px;
  }

  .articles-style1 ul li p.ttl {
    min-height: inherit;
    margin-bottom: 10px;
    font-size: 12px;
  }

  .articles-style1 ul li p.date,
  .articles-style1 ul li p.tag {
    margin: 0;
  }

  .articles-style1 ul li p.date {
    font-size: 10px;
  }

  .articles-style1 ul li .date-and-tag {
    margin: 0 10px 7px 10px;
    margin-bottom: 7px;
    line-height: 15px;
  }

  .articles-style1 ul li .date-and-tag p.date,
  .articles-style1 ul li .date-and-tag p.tag {
    padding: 0 2px 0 0;
    display: inline;
    font-size: 10px;
    line-height: 15px;
  }

  /* pager-style
  ============================================================================= */
  .pager-style1 {
    height: 52px;
    margin-bottom: 25px;
  }

  .pager-style1 .pages {
    text-align: center;
  }

  .pager-style1 .pages li {
    padding-top: 19px;
    margin: 0 3px;
  }

  .pager-style1 .pages li.desktop-only {
    display: none;
  }

  .pager-style1 .controlls li a {
    width: 35px;
  }

  .pager-style1 .controlls li.first,
  .pager-style1 .controlls li.next {
    margin-right: 1px;
  }

  .pager-style1 .controlls li.first img,
  .pager-style1 .controlls li.end img {
    width: 12px;
    height: 16px;
  }

  .pager-style1 .controlls li.prev img,
  .pager-style1 .controlls li.next img {
    width: 8px;
    height: 16px;
  }

  /* wp-pagenavi
  ============================================================================= */
  .pagener-container {
    height: 52px;
    margin-bottom: 25px;
  }

  .wp-pagenavi {
    max-width: none;
    width: 100%;
  }

  .wp-pagenavi a,
  .wp-pagenavi span {
    font-size: 12px;
  }

  .wp-pagenavi .page,
  .wp-pagenavi .extend,
  .wp-pagenavi .current {
    padding-top: 19px;
    margin: 0 4px;
  }

  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    width: 35px;
  }

  .wp-pagenavi .previouspostslink {
    left: 36px;
    background-size: 8px auto;
  }

  .wp-pagenavi .first {
    background-size: 12px auto;
  }

  .wp-pagenavi .nextpostslink {
    right: 36px;
    background-size: 8px auto;
  }

  .wp-pagenavi .last {
    background-size: 12px auto;
  }

  .wp-pagenavi .smaller:first-of-type {
    font-size: 500px;
  }

  /* box
  ============================================================================= */

  /* box-style1 */

  .box-style1 {
    padding: 3px 0;
    text-align: left;
  }

  .box-style1.sns {
    padding-top: 15px;
  }

  .box-style1 dl dt,
  .box-style1 dl dd {
    display: inline-block;
  }

  .box-style1 dl dt {
    margin-bottom: 0;
    margin-right: 10px;
    font-size: 13px;
  }

  /* box-style2 */

  .box-style2 {
    padding: 8px 0 0 0;
  }

  .box-style2 h3 {
    margin-bottom: 16px !important;
    font-size: 12px;
  }

  .box-style2 nav ul {
    margin-left: 10px;
    border-top: solid 1px #cccccc;
  }

  /* quote-box */

  .quote-box {
    padding-left: 28px;
    background-position: 0 5px;
    background-size: 14px auto;
  }

  .quote-box .quote-box-inner {
    padding-left: 0;
    border-left: none;
  }

  .quote-box .quote-box-inner p {
    font-size: 16px;
    margin-bottom: 1.4em;
  }

  /* form-style
  ============================================================================= */

  .form-style1 input,
  .form-style1 textarea {
    width: 97%;
    padding: 3px;
    line-height: 1.3em;
    margin-bottom: 5px;
    font-size: 11px;
  }

  .form-style1 .btn {
    width: 99%;
    padding: 9px 15px;
    min-width: inherit;
    font-size: 12px;
    display: block;
  }

  /* Helpers
  ============================================================================= */
  .big-text {
    font-size: 24px;
    line-height: 27px;
  }

  .small-text {
    font-size: 10px;
    line-height: 20px;
  }

  .quotationl-text {
    font-size: 16px;
    line-height: 23px;
  }

  .mobile-only {
    display: block;
  }

  .desktop-only {
    display: none;
  }
}

/* =============================================================================
 SmartPhone LandScape
============================================================================= */
@media only screen and (max-width: 767px) and (min-width: 481px) {

  /* pager-style
  ============================================================================= */
  .pager-style1 .pages li.desktop-only {
    display: none;
  }
}

/* =============================================================================
 Header
============================================================================= */
/* global-header
============================================================================= */
#global-header {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  border-top: 2px solid #20944f;
  background: url("../img/global/bg_white.png");
  z-index: 100;
}

#global-header .section {
  padding: 22px 0 12px;
  line-height: 1;
}

#global-header .logo {
  margin: 0 0 10px;
  float: left;
  width: 242px;
}

/* responsive-nav
============================================================================= */
/* ------------------------------------------
  NECESSARY STYLES FOR RESPONSIVE NAV
--------------------------------------------- */
/*! responsive-nav.js 1.0.34 by @viljamis */
.nav-collapse ul {
  margin: 0;
  padding: 0;
  width: 100%;
  display: block;
  list-style: none;
}

.nav-collapse li {
  width: 100%;
  display: block;
}

.js .nav-collapse {
  clip: rect(0 0 0 0);
  max-height: 0;
  position: absolute;
  display: block;
  overflow: hidden;
  zoom: 1;
}

.nav-collapse.opened {
  max-height: 9999px;
}

.nav-toggle {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}

@media screen and (min-width: 480px) {
  .js .nav-collapse {
    position: relative;
  }

  .js .nav-collapse.closed {
    max-height: none;
  }

  .nav-toggle {
    display: none;
  }
}

.nav-toggle {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: absolute;
  top: 0;
  right: 0;
  width: 46px;
  height: 46px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background: url("../img/global/icon_nav.png") no-repeat center center;
  background-size: 50%;
  z-index: 1000;
}

.nav-toggle.active {
  background: url("../img/global/icon_close.png") no-repeat center center;
  background-size: 18px;
}

/* global-nav
============================================================================= */
#global-nav {
  float: right;
  text-align: right;
  overflow: visible;
}

#global-nav a {
  color: #333;
  text-decoration: none;
  font-size: 1rem;
  font-family: "Roboto Condensed", Helvetica, Arial, YuGothic, "游ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", sans-serif;
}

#global-nav a:visited {
  color: #333;
  text-decoration: none;
}

#global-nav a:hover,
#global-nav a:active,
#global-nav a:focus {
  color: #666666;
  text-decoration: underline;
}

#global-nav a .current {
  color: #20944f;
  text-decoration: none;
}

#global-nav a .current:visited {
  color: #20944f;
  text-decoration: none;
}

#global-nav a .current:hover,
#global-nav a .current:active,
#global-nav a .current:focus {
  color: #44d67f;
  text-decoration: underline;
}

#global-nav ul {
  padding: 2px 0;
  font-size: 13px;
  font-weight: bold;
  line-height: 26px;
}

#global-nav li {
  border-right: 1px solid #333;
  width: auto;
  margin: 0 0 2px 15px;
  padding-right: 15px;
  float: left;
}

#global-nav li:first-child {
  padding-left: 15px;
  border-left: 1px solid #333;

}

#global-nav li.lang {
  margin-left: 25px;
  padding-left: 25px;
  background: url("../img/global/img_separate.png") left center no-repeat;
}

#global-nav li.lang a {
  color: #20944f;
  text-decoration: none;
}

#global-nav li.lang a:visited {
  color: #20944f;
  text-decoration: none;
}

#global-nav li.lang a:hover,
#global-nav li.lang a:active,
#global-nav li.lang a:focus {
  color: #44d67f;
  text-decoration: underline;
}

#global-nav li.has-subnav {
  position: relative;
}

#global-nav li.has-subnav>a {
  padding: 0 14px 0 0;
  background: url("../img/global/icon_hassub.png") right center no-repeat;
}

#global-nav li .icon-arrow-right {
  display: none;
}

#global-nav .subnav {
  display: none;
  position: absolute;
  padding: 22px 0 0;
  top: 100%;
  left: 0;
  width: 90px;
  color: #FFF;
}

#global-nav .subnav li {
  margin: 0;
  padding: 0 15px;
  background-color: #555;
  float: none;
  line-height: 1;
  text-align: center;
}

#global-nav .subnav li:first-child a {
  border-top: none;
}

#global-nav .subnav li a {
  display: block;
  height: 40px;
  line-height: 40px;
  border-top: 1px solid #FFF;
  color: #FFF;
  text-decoration: none;
}

#global-nav .subnav li a:visited {
  color: #FFF;
  text-decoration: none;
}

#global-nav .subnav li a:hover,
#global-nav .subnav li a:active,
#global-nav .subnav li a:focus {
  color: white;
  text-decoration: underline;
}

/* =============================================================================
 SmartPhone
============================================================================= */
@media only screen and (max-width: 480px) {

  /* global-header
============================================================================= */
  #global-header .section {
    width: 100%;
    padding: 15px 0 0;
    line-height: 1;
  }

  #global-header .logo {
    float: none;
    margin: 0;
    padding: 0 0 17px 15px;
    width: 182px;
  }

  /* global-nav
============================================================================= */
  #global-nav {
    float: none;
    text-align: left;
    background-color: #555;
  }

  #global-nav a {
    color: #FFF;
    display: block;
    padding: 9px 8px;
    font-size: 12px;
  }

  #global-nav a:visited {
    color: #FFF;
    text-decoration: none;
  }

  #global-nav a:hover,
  #global-nav a:active,
  #global-nav a:focus {
    color: #FFF;
    text-decoration: none;
  }

  #global-nav ul {
    width: auto;
    margin: 0;
    padding: 0 15px 10px;
    font-size: 13px;
    font-weight: bold;
    line-height: 26px;
  }

  #global-nav li {
    width: auto;
    margin: 0;
    padding: 0;
    float: none;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e5e5e5;
  }

  #global-nav li.lang {
    border: none;
    margin-left: 0;
    padding: 22px 0 18px;
    background: none;
    text-align: center;
  }

  #global-nav li.lang a {
    color: #20944f;
    text-decoration: none;
  }

  #global-nav li.lang a:visited {
    color: #20944f;
    text-decoration: none;
  }

  #global-nav li.lang a:hover,
  #global-nav li.lang a:active,
  #global-nav li.lang a:focus {
    color: #44d67f;
    text-decoration: underline;
  }

  #global-nav li.has-subnav>a {
    display: inline;
    padding: 0 12px;
    background: none;
  }

  #global-nav li .icon-arrow-right {
    float: right;
    display: inline-block;
    color: #FFFFFF;
  }

  #global-nav li .icon-arrow-right:before {
    content: '\e801';
    color: #FFF;
  }

  #global-nav .subnav {
    display: inline !important;
    position: static;
    padding: 0;
    top: 0;
    left: 0;
    width: auto;
    color: #FFF;
  }

  #global-nav .subnav li {
    border: none;
    display: inline;
    margin: 0;
    padding: 0 12px;
    border-left: 1px solid #eee;
    background-color: #555;
    float: none;
    line-height: 1;
    text-align: center;
  }

  #global-nav .subnav li:first-child a {
    border-top: none;
  }

  #global-nav .subnav li a {
    display: inline;
    height: auto;
    line-height: 1;
    border-top: none;
    color: #FFF;
    text-decoration: none;
  }

  #global-nav .subnav li a:visited {
    color: #FFF;
    text-decoration: none;
  }

  #global-nav .subnav li a:hover,
  #global-nav .subnav li a:active,
  #global-nav .subnav li a:focus {
    color: white;
    text-decoration: underline;
  }

  .csstransitions #global-nav .nav {
    opacity: 0;
    transition: opacity 10ms ease 0ms;
  }

  .csstransitions #global-nav.opened .nav {
    opacity: 1;
    transition: opacity 200ms ease 84ms;
  }
}

/* =============================================================================
 Footer
============================================================================= */
/* global-pagetop
============================================================================= */
#global-pagetop {
  background-color: #555;
  height: 50px;
  line-height: 50px;
}

#global-pagetop a {
  color: #FFF;
}

#global-pagetop a:visited {
  color: #FFF;
  text-decoration: none;
}

#global-pagetop a:hover,
#global-pagetop a:active,
#global-pagetop a:focus {
  color: #FFF;
  text-decoration: none;
}

#global-pagetop .icon-pagetop:before {
  color: #FFF;
}

/* global-footer
============================================================================= */
#global-footer {
  position: relative;
  background-color: #EEE;
}

#global-footer .logo {
  width: 260px;
  margin: 0 0 32px;
}

#global-footer .language {
  font-size: 12px;
  text-align: left;
  color: #FFF;
}

#global-footer .language a {
  color: #FFF;
  padding: 0 0.5em;
  text-decoration: underline;
}

#global-footer .language a:first-child {
  padding-left: 0;
}

#global-footer .language a:visited {
  color: #FFF;
}

#global-footer .language a:hover,
#global-footer .language a:active,
#global-footer .language a:focus {
  color: #FFF;
  text-decoration: none;
}

#global-footer .language a.current {
  color: #666;
  text-decoration: none;
}

#global-footer .language a.current:visited {
  color: #666;
  text-decoration: none;
}

#global-footer .language a.current:hover,
#global-footer .language a.current:active,
#global-footer .language a.current:focus {
  color: #999;
  text-decoration: underline;
}

#global-footer .office {
  float: left;
  margin: 0 32px 24px 0;
  color: #3d3f3e;
}

#global-footer .office dt {
  font-size: 16px;
}

#global-footer .office dt .icon-arrow-down {
  display: none;
}

#global-footer .office dd {
  font-size: 13px;
  line-height: 1.65;
}

/*
#global-footer .sns {
  margin: 78px 0 2px;
  font-size: 13px;
  float: left;
}
#global-footer .sns ul{
  letter-spacing: -0.4em;
}
#global-footer .sns li{
  float: left;
  letter-spacing: 0.1em;
  font-size: 13px;
}
#global-footer .sns li:after{
  content:'|';
  padding: 0 .75em;
}
#global-footer .sns li:last-child:after{
  content:'';
}*/

#global-footer .sns {
  position: absolute;
  right: 140px;
  top: 50px;
}

#global-footer .sns ul {
  clear: both;
  width: 110px;
  clear: both;
  margin: 0 auto;
}

#global-footer .sns ul.sns_movie {
  width: 220px;
}

#global-footer .sns ul.sns_governors {
  width: 220px;
}

#global-footer .sns ul li {
  float: left;
}

#global-footer .sns ul.sns_tw_fb li {
  height: 30px;
  margin: 0 10px 20px;
}

#global-footer .sns ul.sns_movie li {
  margin: 0 0 10px;
  width: 50%;
}

#global-footer .sns ul.sns_governors li {
  margin: 0;
}

#global-footer .sns ul.sns_tw_fb li img {
  height: 100%;
  width: auto;
}




#global-footer .caption {
  margin: 78px 24px 2px 0;
  float: right;
  font-size: 12px;
  color: #ffffff;
  line-height: 27px;
}

#global-footer .mark {
  float: right;
  width: 160px;
}

#global-footer .mark .banner {
  margin: 0 0 10px;
}

@media only screen and (min-width: 481px) {
  .office dd {
    display: block !important;
  }
}

#global-footer-visual {
  /*
  background: url("../img/global/bg_footer.jpg") top center no-repeat;
*/
  background: #c1d8ca;
  background-size: cover;
}




#global-footer-visual-inner {
  padding: 45px 0 0;
  /*
  background: url("../img/global/bg_dot.png");
*/
}

#copyright-content {
  background-color: #20944f;
}

#copyright-content .utility,
#copyright-content .copyright {
  color: #FFF;
  font-size: 11px;
  line-height: 1.25;
}

#copyright-content .utility li {
  float: left;
  margin: 0 38px 0 0;
}

#copyright-content .utility a {
  color: #FFF;
  text-decoration: none;
}

#copyright-content .utility a:visited {
  color: #FFF;
  text-decoration: none;
}

#copyright-content .utility a:hover,
#copyright-content .utility a:active,
#copyright-content .utility a:focus {
  color: white;
  text-decoration: underline;
}

#copyright-content .copyright {
  text-align: right;
}

/* =============================================================================
 SmartPhone LandScape
============================================================================= */
@media only screen and (max-width: 767px) and (min-width: 481px) {

  /* pager-style
  ============================================================================= */
  #global-footer .caption {
    position: absolute;
    bottom: 4px;
    right: 10px;
    float: none;
  }
}

/* =============================================================================
 SmartPhone
============================================================================= */
@media only screen and (max-width: 480px) {

  /* global-pagetop
============================================================================= */
  #global-pagetop {
    font-size: 12px;
    height: 40px;
    line-height: 40px;
  }

  /* global-footer
============================================================================= */
  #global-footer {
    padding: 0;
  }

  #global-footer .section {
    width: 100%;
  }

  #global-footer .logo {
    width: 182px;
    margin: 0 auto 20px;
  }

  #global-footer .office {
    float: none;
    width: auto;
    margin: 0;
    background-color: #f3f7f5;
    border-bottom: 1px solid #20944f;
  }

  #global-footer .office:first-child dt {
    border-top: 1px solid #20944f;
  }

  /*
  #global-footer .office dt {
    position: relative;
    padding: 12px 15px;
    font-size: 15px;
    font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    color: #20944f;
    cursor: pointer;
  }

  #global-footer .office dt .icon-arrow-down {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -0.65em;
  }*/

  #global-footer .office dt.active .icon-arrow-down:before {
    content: '\e804';
    color: #20944f;
  }

  #global-footer .office dd {
    /*display: none;*/
    padding: 0 15px 20px;
    color: #333;
  }

  #global-footer .sns {
    display: none;
  }

  #global-footer .mark {
    padding: 10px 0 0;
    float: none;
    width: 100%;
    text-align: center;
  }

  #global-footer .mark .banner {
    margin: 0;
    width: auto;
    padding: 0 12px;
    display: inline-block;
  }

  #global-footer .mark .jimin {
    width: 120px;
  }

  #global-footer .mark .globalsign {
    width: 130px;
  }

  #global-footer .utility {
    width: 100%;
  }

  #global-footer .utility li {
    float: none;
    margin: 0;
    font-size: 15px;
    font-family: "Times New Roman", YuMincho, "游明朝", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    background-color: #f3f7f5;
    border-bottom: 1px solid #20944f;
  }

  #global-footer .utility a {
    position: relative;
    display: block;
    padding: 12px 15px;
    color: #20944f;
    text-decoration: none;
  }

  #global-footer .utility a:visited {
    color: #20944f;
    text-decoration: none;
  }

  #global-footer .utility a:hover,
  #global-footer .utility a:active,
  #global-footer .utility a:focus {
    color: #44d67f;
    text-decoration: underline;
  }

  #global-footer .utility a .icon-arrow-right {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -0.65em;
  }

  #global-footer-visual {
    background: none;
  }

  #global-footer-visual-inner {
    padding: 22px 0 0;
    background: none;
  }

  #copyright-content {
    position: relative;
    background-color: #f4f1f7;
  }

  #copyright-content .utility,
  #copyright-content .copyright {
    color: #FFF;
    font-size: 11px;
    line-height: 1.25;
  }

  #copyright-content .copyright {
    padding: 10px;
    background-color: #20944f;
    text-align: center;
  }

  #copyright-content .col {
    margin-bottom: 0;
  }

  #global-footer .sns {
    position: relative;
    right: 0;
    top: 0;
    display: block;
    padding: 30px 0;
  }
}

/* =============================================================================
 404
============================================================================= */
#notfound-content .notice {
  padding: 50px 0;
}



.change20footer {
  background: #c1d8ca;
  padding: 45px 1rem;
  margin: 0 auto;
  width: 90%;
  display: block;
  text-align: center;
}


.change20footer h2,
.change20footer dl {
  text-align: center;
  display: inline-block;
  vertical-align: baseline;
  margin: 0 auto;
  padding: 0.5rem 0;
  float: none;
}

.change20footer h2 {
  width: 250px;
  padding: 0 2rem;
}

.change20footer dt,
.change20footer dd {
  display: inline-block;
  padding: 0 0.5rem;
}

.change20footer dd span {
  display: inline-block;
  padding: 0;
  font-size: 75%;
}

.change20footer::after {
  content: '';
  display: block;
  clear: both;
}

.change20footer a,
.change20footer a:hover {
  color: #333333;
}

@media all and (max-width: 480px) {
  .change20footer {
    background: none;
    text-align: center;
    padding: 2rem 0 0.5rem;
  }


  .change20footer dl {
    background: none;
    border-bottom: none;
    padding: 1rem 0;
  }


  .change20footer h2,
  .change20footer dt,
  .change20footer dd,
  .change20footer dd span {
    display: block;
    float: none;
    text-align: center;
    padding: 0.25rem;
    width: 250px;
    max-width: calc(100% - 2rem);
    margin: auto;
  }

  .change20footer dt {
    font-weight: bold;
    font-size: 1.15rem;
    padding: 1rem 0 0.5rem;
  }

  .change20footer dd {
    font-size: 1.05rem;
  }

}

/* snsicons
============================================================================= */

#content-snsicons img {
  display: inline-block;
  margin: 1rem;
}

#content-snsicons {
  text-align: center;
  padding: 30px 0 60px 0;
}



/*tokudashi banner*/
.spcontents {
  margin: 3rem auto 2rem;
  padding: 1rem 0;
  background: #20944f;
}

.spcontents .section {
  margin: 0 auto;
}

.spcontents .section::after {
  content: '';
  display: block;
  clear: both;
}

.spcontents a,
.line-insta a {
  transition: 0.5s;
}

.spcontents a:hover {
  background: #e8f4ed;
}

.spcontents a img {
  display: block;
  margin: 0 auto;
}

.spcontents a {
  display: block;
  margin: 0.5rem 0 0.5rem 1rem;
  width: calc((100% - 3rem) / 4);
  float: left;
  background: #fff;
  border-radius: 10px;
  transition: 0.5s;
}

.spcontents a:nth-child(1) {
  margin: 0.5rem 0;
}

.spcontents.footlinks {
  margin: 0 auto !important;
}

@media only screen and (max-width: 641px) {
  .spcontents .section {
    max-width: calc(100% - 2rem);
    padding: 0.5rem 1rem;
  }

  .spcontents a {
    width: calc((100% - 1rem) / 2);
  }

  .spcontents a:nth-child(3) {
    margin: 0.5rem 0;
  }

  .line-insta img {
    padding: 0;
  }

}



/* ===== policy2024 ===== */


#policy2020.policy-content,
#policy2020.policy_testcontent{
    background: #F0F6E3;
    overflow: hidden;
    padding: 2rem 0;
}
picture+h1{
    width:fit-content;
    display: block;
    margin: 4rem auto;
    text-align: center;
    border: none;
    position: relative;
}
picture+h1::before{
    content:url('/wp-content/themes/koikeofficial/images/titlebefore.svg');
    position: absolute;
    left: -200px;
    top: -2rem;
}
picture+h1::after{
    content:url('/wp-content/themes/koikeofficial/images/titleafter.svg');
    position: absolute;
    right: -200px;
    top: -2rem;
}
/*font*/
.policy2024link a,
.policy2024link a:after,
.policy2024box,
.policy2024box li,
.policy2024box h2,
.policy2024box h3,
.policy2024box h4{
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0;
}
/*pagelink*/
.policy2024link ul{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:2rem auto;
}
.policy2024link a{
    background:#00713B;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0.25rem;
    color:#fff;
    font-size:1rem;
    padding:1rem;
    border-radius:10px;
    text-decoration:none;
}
.policy2024link a::after{  content: '↓';
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
    border-radius: 1rem;
    width: 1rem;
    height: 1rem;
    font-size: 0.75rem;
    font-weight: 900;
}
.policy2024link a:hover{
    background:#44d67f;
}
/*pagecontent*/
.policy2024box{
    border:3px solid #00713B;
    background: #fff;
    border-radius:10px;
    padding: 2rem 7vw;
    margin:4rem auto;
    position:relative;
    display: flex;
    flex-direction: column;
}
.policy2024box h2{
    font-size: 1.1rem;
    color: #fff;
    background: #00713B;
    border-radius: 10px;
    position: absolute;
    top: -1.5rem;
    padding: 0.25rem 1.5rem;
    display: flex;
    margin:0 auto;
    align-self:center;
    line-height: 2em;
}
.policy2024box h3{
    font-size: 1.6rem;
    line-height:2.8rem;
    font-weight: 900;
    text-align:center;
    color:#00713B;
    padding:0.5rem 0 ;
    border-bottom:7px solid #00713B;
    margin: 0 auto;
    width: 100%;
}
.policy2024box h3 .largetxt{
    font-size:2.4rem;
}
.policy2024box h3 .largetxt strong{
    color:#C7000B;
}
.policy2024box h4{
    font-size: 1.5rem;
    line-height:2.8rem;
    text-align:left;
    color:#00713B;
    margin:1rem 0 0;
    letter-spacing: 0;
}
.cblock{
    padding:1rem 0;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
}
#safecity .safe1::after{
    content:url('/wp-content/themes/koikeofficial/images/safe1.svg');
}
#divercity .diver1::after{
    content:url('/wp-content/themes/koikeofficial/images/diver1.svg');
}
#divercity .diver3::after{
    content:url('/wp-content/themes/koikeofficial/images/diver2.svg');
}

#smartcity .smart1::after{
    content:url('/wp-content/themes/koikeofficial/images/smart1.svg');
}
#smartcity .smart2::after{
    content:url('/wp-content/themes/koikeofficial/images/smart2.svg');
}
#smartcity .smart3::after{
    content:url('/wp-content/themes/koikeofficial/images/smart3.svg');
}
#smartcity .smart4::after{
    content:url('/wp-content/themes/koikeofficial/images/smart4.svg');
}

.cblock li{
    font-size: 1.2rem;
    font-weight:400;
    position:relative;
    line-height: 1.8rem;
    padding: 0.25rem 0 0.25rem 1.25rem;
    letter-spacing: 0;
}
.cblock li::before{
    content:'';
    display:block;
    width:1rem;
    height:1rem;
    background:#00713B;
    border-radius:1rem;
    position:absolute;
    left:0;
    top:0.75rem;
}
.cblock li strong{
    color:#C7000B;
    font-weight:900;
    margin:0 0.25rem;
}
.pckeyvisual img, .spkeyvisual img{
  width:100%;
  }
  .pckeyvisual{
  display:block;
  margin: 70px 0 0;
  }
  .spkeyvisual{
  display:none;
  margin: 42px 0 0;
  }
@media all and (max-width: 650px){
    .pckeyvisual{
      display:none;
    }
    .spkeyvisual{
      display:block;
    }
    picture+h1{
        width: 90%;
    }
    picture+h1::before{
        left: -100px;
        transform: scale(50%);
        top: -6rem;
    }
    picture+h1::after{
        right: -120px;
        transform: scale(50%);
        top: -8rem;
    }
    .policy2024box h3 .largetxt strong{
        display: block;
        margin: 0 auto;
    }
    #policy2020 picture{
        width:100vw;
        margin-left:calc((6.25% / 2) * -1);
        display: block;
    }
    .policy2024link a{
        flex-direction: column;
        padding: 1rem 0.5rem;
        text-align: center;
        gap: 0.5rem;
    }
    #policy2020.policy-content,
    #policy2020.policy_testcontent{
        padding: 0 0 2rem;
    }
    .cblock{
        flex-direction: column;
    }
    #smartcity .smart1::after{
        content:url('/wp-content/themes/koikeofficial/images/smart1_2.svg');
    }

.policy2024box li{
    font-size:1.1rem;
}
.policy2024box h2{
    font-size:1rem;
    top: -1.4rem;
}
.policy2024box h3{
    font-size:1.5rem;
}
.policy2024box h3 .largetxt{
    font-size:2rem;
}
.policy2024box h4{
    font-size:1.4rem;
    line-height: 160%;
}
}

@media only screen and (max-width: 768px) {
  @media only screen and (max-width: 641px) {
    #result .spkeyvisual {
      display: block;
      margin: 42px 0 0;
    }
  }
}


/*jidaikobo.result2024*/
.popup .share{
  width: calc(90% - 120px);
  margin: 0 auto;
  position: absolute;
  left: calc(5% + 60px);
  bottom: 3%;
}
.popup > ul li:last-child .str{
  height: 70vh;
}

.youtubebox iframe{
  max-width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
