@charset "UTF-8";
/* 南陽市 標準用 */
body {
  background: #FDF4FA;
  background-size: cover;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Helvetica, Arial, Verdana, sans-serif;
  color: #333;
  word-break: break-word;
  margin: 0;
  font-size: 87.5%;
  line-height: 1.75;
}

@media only screen and (max-width: 599px) {
  body {
    font-size: 100%;
  }
}

@media only screen and (max-width: 979px) {
  body {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }
}

html[lang="en"] body, .en,
html.translated-ltr body {
  font-family: Arial, Helvetica, Verdana, sans-serif;
}

img {
  border: 0;
  vertical-align: middle;
}

@media only screen and (max-width: 979px) {
  img {
    max-width: 100%;
    height: auto;
  }
}

main img {
  max-width: 100%;
  height: auto;
}

a {
  color: #0008ff;
  text-decoration: underline;
  -webkit-transition: color 0.1s ease-out;
  -o-transition: color 0.1s ease-out;
  transition: color 0.1s ease-out;
}

a:hover {
  color: #699aec;
  text-decoration: none;
}

a img, button img {
  -webkit-transition: opacity 0.1s ease-out;
  -o-transition: opacity 0.1s ease-out;
  transition: opacity 0.1s ease-out;
}

a:hover img, button:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

.wrap span, .wrap small, .wrap a {
  display: inline-block;
  white-space: nowrap;
}

.wrap wbr + a, .wrap a:first-child {
  display: inline;
}

.wrap wbr {
  display: inline-block;
}

a.wrap wbr + span, a.wrap span:first-child,
a.wrap wbr + small, a.wrap small:first-child {
  display: inline;
}

.en {
  font-family: Arial, Helvetica, Verdana, sans-serif;
}

.serif {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HiraMinProN-W3", "HGS明朝E", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

p, ul, ol, dl, figure, address {
  margin-bottom: 1em;
  font-style: normal;
}

pre, blockquote {
  margin: 1em 0;
}

strong {
  font-weight: bold;
}

em {
  font-weight: bold;
  font-style: normal;
  color: #fa3333;
}

figure.left {
  float: left;
  margin: 0 30px 1em 0;
}

figure.right {
  float: right;
  margin: 0 0 1em 30px;
}

figure.image {
  text-align: center;
}

figure.image.left {
  text-align: left;
}

figure.image.right {
  text-align: right;
}

main, header, footer, article, section, aside, nav {
  display: block;
}

main:after, article:after, section:after, aside:after, nav:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

table {
  border-spacing: 0;
}

table[cellspacing] {
  border-collapse: separate;
}

table[cellspacing="0"] {
  border-collapse: collapse;
}

table th, table td {
  padding: 0.25em 0.5em;
}

.reader {
  display: inline-block;
  overflow: hidden;
  position: absolute !important;
  left: -9999px !important;
  width: 0;
  height: 0;
}

.sp {
  display: none;
}

@media only screen and (max-width: 599px) {
  .sp {
    display: block;
  }
}

.nav > li > a {
  padding: 0;
}

/* 見出し
----------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
  margin: 2em -1px 0.7em;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-size: 100%;
}

h1 {
  font-size: 130%;
}

h2 {
  font-size: 130%;
}

h3 {
  font-size: 120%;
}

h4 {
  font-size: 120%;
}

main h1 {
  min-height: 48px;
  margin: 0 -10px 15px -12px;
  padding: 13px 15px 10px;
  background: url(/up/images/nanyo/image/contitle_bg.gif) no-repeat right top;
  background-size: cover;
}

main h1 + *,
main h1 + * h2,
main h1 + * * h2 {
  margin-top: 1em;
}

main h2 {
  margin-left: -5px;
  margin-right: -5px;
  padding: 0.5em 15px 0.4em;
  background: url(/up/images/nanyo/image/right_bg.gif) repeat left top;
}

main h3 {
  margin-left: -3px;
  padding: 6px 10px 2px;
  border-left: 12px solid;
  border-bottom: 1px solid;
  border-color: #D71082;
}

main h4 {
  padding: 3px 10px 2px;
  border-left: 6px solid #D71082;
}

main h5 {
  padding-left: 10px;
  background: url(/up/images/nanyo/image/list_footer.gif) no-repeat left 0.2em;
}

/* box
----------------------------------------------------- */
.box {
  margin: 0 0 10px;
}

.box105 {
  width: 105px;
}

.box110 {
  width: 110px;
}

.box200 {
  margin-right: 10px;
  width: 200px;
  background-color: #FFFFFF;
}

.box230Border {
  width: 230px;
  border: 1px solid #dcdcdc;
  margin-bottom: 5px;
}

.box270 {
  width: 270px;
}

.box281 {
  width: 281px;
}

.box425 {
  width: 425px;
}

.box440 {
  width: 440px;
}

.box530 {
  width: 530px;
}

.box717 {
  width: 717px;
}

.box950 {
  margin: 0 auto;
  width: 950px;
}

/* section
----------------------------------------------------- */
.section {
  margin: 0 0 10px;
}

/* margin
-------------------------------------------- */
.marB5 {
  margin-bottom: 5px;
}

.marR13 {
  margin-right: 10px;
}

/* padding
-------------------------------------------- */
.padT15 {
  padding-top: 15px;
}

.padT20 {
  padding-top: 5px;
  margin-top: 8px;
}

/* font 
----------------------------------------------------- */
.textR {
  text-align: right;
}

.textC {
  text-align: center;
}

.fontS {
  font-size: 77%;
}

.fontM {
  font-size: 80%;
}

.font {
  font-size: 95%;
}

/* .clearfix
---------------------------------------------------------------------------------------- */
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: inline-block;
}

/*\*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/**/
@media only screen and (max-width: 599px) {
  body {
    border-top: 5px solid #D71082;
  }
}

/* Grid
----------------------------------------------------- */
#container > .row > .col-md-9 {
  width: 700px;
}

@media only screen and (max-width: 979px) {
  #container > .row > .col-md-9 {
    width: auto;
  }
}

#container > .row > .col-md-3 {
  width: 270px;
}

@media only screen and (max-width: 979px) {
  #container > .row > .col-md-3 {
    width: auto;
  }
}

/* Container
----------------------------------------------------- */
.container {
  position: relative;
  width: 950px;
  padding: 0;
}

@media only screen and (max-width: 979px) {
  .container {
    width: 95%;
    padding: 0;
  }
}

@media only screen and (max-width: 599px) {
  .container {
    width: auto;
    padding: 0 10px;
  }
}

#container {
  padding: 1em 0;
  background: #fff;
}

#container:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

main {
  padding-left: 15px;
}

@media only screen and (max-width: 979px) {
  main, .sides {
    padding: 0 12px 0 15px;
  }
}

@media only screen and (max-width: 599px) {
  #nav-side {
    margin-top: 2em;
  }
}

/* float
----------------------------------------------------- */
.left {
  float: left;
}

.right {
  float: right;
}

.clear {
  clear: both;
}

main nav.options {
  margin: 2em 0;
  padding: 0 15px;
  border: 1px solid #999;
}

main nav.options h2 {
  margin: 0 -15px 0.5em;
}

/* #right
----------------------------------------------------- */
#right_box img {
  margin-bottom: 5px;
  border: 0px;
}

#weather {
  border: 1px solid #CCCCCC;
  margin-bottom: 5px;
  padding-right: 1px;
  padding-left: 3px;
}

.solid {
  border: 1px solid #CCCCCC;
  border-collapse: collapse;
  table-layout: auto;
  white-space: nowrap;
  background: #FFFFFF;
}

.right_link {
  margin-bottom: 3px;
  text-align: center;
}

#right {
  float: right;
  width: 200px;
}

.subBox {
  margin-bottom: 10px;
  background: #F4F4FF;
  border: 1px solid;
  border-color: #999999;
}

.subContactBox {
  margin-bottom: 10px;
  background: #FFFFFF;
  width: 200px;
  height: 100%;
  text-align: left;
}

.subContactBox ul {
  margin-bottom: 0;
}

.subContactBox ul li {
  background: url(/up/images/nanyo/image/sub_menu_icon.gif) no-repeat 25px 15px;
  margin-bottom: 3px;
  padding: 10px 0 10px 3.9em;
}

.subContactBox ul li a {
  color: #000;
  text-decoration: none;
}

.subContactBox ul li a:hover {
  color: #699aec;
  text-decoration: none;
}

.subNavi ul li {
  margin-bottom: 7px;
}

/* イベントカレンダー
----------------------------------------------------- */
#photo {
  margin: 0px;
}

#photo .img {
  padding-top: 2px;
  padding-left: 2px;
  text-align: center;
}

#photo .word {
  padding-top: 10px;
  padding-right: 5px;
  padding-left: 20px;
  text-align: left;
  line-height: 1.4;
}

#photo .word2 {
  margin: 0px 10px 5px;
  text-align: left;
}

/* #advertising（広告欄）
---------------------------------------------------------------------------------------- */
#advertising {
  padding: 20px 0 0;
  clear: both;
}

#advertisingbox {
  border: 1px solid #CCCCCC;
  background-color: #FFFFFF;
  /*	background:url(/up/images/nanyo/image/bg_stripe_gray.gif) repeat;*/
  margin: 0 auto;
  width: 948px;
}

.row {
  margin-left: -10px;
  margin-right: -10px;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  padding-left: 10px;
  padding-right: 10px;
}

figure {
  margin: 0 0 1em;
}

figure.left {
  float: left;
  margin: 0 30px 1em 0;
}

figure.right {
  float: right;
  margin: 0 0 1em 30px;
}

figure.image {
  text-align: center;
}

figure.image.left {
  text-align: left;
}

figure.image.right {
  text-align: right;
}

figure.image.full img {
  width: 100%;
  height: auto;
}

figure.images ul {
  list-style: none;
  padding: 0;
}

figure.images li {
  display: inline-block;
  margin: 0;
}

figure.images.left li,
figure.images.right li {
  display: block;
  margin-bottom: 10px;
}

table {
  margin: 1.4em 0;
  border: 1px solid #999;
  background: none;
}

table caption {
  margin-bottom: 0;
  padding: 0.25em 0.5em;
  font-weight: bold;
}

table thead {
  background: #e6e6e6;
}

table th {
  background: #f0f0f0;
}

table th, table td {
  padding: 0.5em 0.75em;
  border: 1px solid #999;
}

table[border="0"] {
  border: 0;
}

table[border="0"] > tr > th,
table[border="0"] > tr > td,
table[border="0"] > tbody > tr > th,
table[border="0"] > tbody > tr > td {
  border: 0;
}

input, textarea, select, button {
  font-size: 100%;
  font-family: inherit;
  line-height: inherit;
}

.form-group label {
  display: table;
}

.form-group input[type="text"], .form-group textarea, .form-group select {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
  padding: 4px 8px;
  border: 1px solid #999;
  color: #333;
  background: rgba(255, 255, 255, 0.2);
  -webkit-box-shadow: inset 0 1px 1px rgba(153, 153, 153, 0.25);
  box-shadow: inset 0 1px 1px rgba(153, 153, 153, 0.25);
}

.form-group select::-ms-expand {
  padding-left: 4px;
  border: 0;
  background-color: transparent;
}

.form-group input[size="64"], .form-group textarea[cols="64"] {
  max-width: 64ex;
}

@media only screen and (max-width: 599px) {
  .form-group input[size="64"], .form-group textarea[cols="64"] {
    max-width: 100%;
  }
}

form .buttons {
  margin-top: 2em;
  text-align: center;
}

form .buttons button, form .buttons input[type="button"], form .buttons input[type="submit"], form .buttons input[type="reset"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 6px 12px;
}

nav.breadcrumb {
  margin-bottom: 1em;
  padding: 0;
  line-height: 1.4;
}

nav.breadcrumb ul {
  margin: 0;
  padding-left: 15px;
}

nav.breadcrumb li {
  display: inline;
}

nav.breadcrumb li + li:before {
  content: " > "  !important;
  display: inline !important;
  padding: 0;
  margin: 0 0.33em;
  color: #333;
}

nav.option-files aside {
  margin: 10px 0 0;
  padding: 8px;
  background: #eee;
}

nav.option-files aside:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

nav.option-files aside span {
  display: block;
  font-size: 85.71429%;
}

nav.option-files aside img {
  margin-bottom: 0;
}

@media only screen and (max-width: 979px) {
  nav.option-files aside img {
    float: left;
    margin-right: 15px;
    margin-bottom: 5px;
  }
}

nav.option-files .filesize:before {
  content: " : ";
}

nav.option-contents li .cat {
  display: block;
}

nav.option-contents li .cat:after {
  content: " > ";
}

nav.option-maps figcaption {
  display: block;
  margin: 0 0 10px;
  padding-left: 0.6em;
  border-left: 0.4em solid #D71082;
  font-weight: bold;
}

nav.option-maps .map iframe {
  max-width: 100%;
}

nav.option-maps .link {
  display: block;
}

/* header
---------------------------------------------------------------------------------------- */
#header p, #header ul, #header ol, #header dl, #header figure, #header address {
  margin: 0;
  padding: 0;
}

#header .container {
  padding: 0;
}

#top {
  text-align: right;
  line-height: 1.85;
  background: #D71082;
  color: #fff;
  font-size: 92.9%;
}

@media only screen and (max-width: 599px) {
  #top {
    font-size: 100%;
  }
}

@media only screen and (max-width: 599px) {
  #top {
    display: none;
  }
}

#top a {
  color: #fff;
  text-decoration: underline;
}

#top .sub-title {
  float: left;
}

#top .sankaku {
  display: inline-block;
  background: url(/up/images/nanyo/image/list_top.gif) no-repeat left center;
  margin-left: 10px;
  padding-left: 15px;
}

#header-area {
  position: relative;
  background: #fff url(/up/images/nanyo/image/bg_header2.gif) no-repeat left top;
  text-align: right;
}

@media only screen and (max-width: 979px) {
  #header-area {
    padding-bottom: 5px !important;
  }
}

@media only screen and (max-width: 599px) {
  #header-area {
    background-image: url(/up/images/nanyo/image/bg_header2_sp.gif);
  }
}

#header-area p {
  display: inline-block;
}

#header-title {
  position: relative;
  float: left;
  text-align: left;
  z-index: 10;
}

@media only screen and (max-width: 979px) {
  #header-title {
    margin-bottom: 5px;
  }
}

@media only screen and (max-width: 599px) {
  #header-title {
    float: none;
  }
}

@media only screen and (max-width: 599px) {
  #header-title .site-title img {
    width: 172px;
    height: auto;
  }
}

#header-title .character {
  margin-left: 10px;
}

@media only screen and (max-width: 599px) {
  #header-title .character {
    margin-left: 5px;
    margin-top: 8px;
  }
  #header-title .character img {
    width: 64px;
    height: auto;
  }
}

#header-app {
  padding: 30px 10px 0;
  font-size: 92.9%;
}

@media only screen and (max-width: 599px) {
  #header-app {
    font-size: 100%;
  }
}

@media only screen and (max-width: 979px) {
  #header-app {
    margin: 2px 8px;
    padding: 3px 5px;
  }
}

@media only screen and (max-width: 979px) {
  #header-app {
    text-align: center;
    background: #fed;
  }
}

#header-app .group {
  margin: 5px 0;
}

@media only screen and (max-width: 979px) {
  #header-app .group {
    margin: 0;
  }
}

@media only screen and (max-width: 599px) {
  #header-app .group {
    clear: both;
  }
}

#header-app .group + .group {
  clear: both;
}

#header-app .form {
  padding: 3px 0;
}

#header-app .form, #header-app .form div {
  display: inline-block;
}

#header-app label {
  margin: 0 5px 0 10px;
}

@media only screen and (max-width: 599px) {
  #header-app label {
    font-weight: bold;
    font-size: 81.25%;
  }
}

#header-app button {
  padding: 0;
  border: 0;
  background: none;
}

#header-app .form.search #q {
  width: 170px;
  padding: 3px 3px 2px;
  font-size: 100%;
}

@media only screen and (max-width: 599px) {
  #header-app .form.search #q {
    width: 130px;
    padding: 2px;
  }
}

@media only screen and (max-width: 979px) {
  #header-app .form.language .aboutforeign {
    display: none;
  }
}

@media only screen and (max-width: 599px) {
  #header-app .form.fontsize,
  #header-app .form.iro {
    display: none;
  }
}

#header-menu {
  position: relative;
  z-index: 1;
  min-height: 47px;
}

#header-nav {
  display: table;
  width: 100%;
  margin-top: 14px;
  padding: 0;
}

@media only screen and (max-width: 979px) {
  #header-nav {
    display: block;
    width: auto;
    margin-top: 10px;
    padding: 0 6px;
    text-align: left;
  }
}

#header-nav > * {
  display: table-cell;
  min-width: 134px;
}

@media only screen and (max-width: 979px) {
  #header-nav > * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    float: left;
    min-width: 0;
    width: 25%;
    margin-bottom: 5px;
    padding: 0 2px;
  }
  #header-nav > *.home {
    padding: 0 4px 0 3px;
  }
  #header-nav > * img {
    width: 100%;
  }
}

@media only screen and (max-width: 599px) {
  #header-nav > * {
    width: 50%;
  }
}

#header-nav a {
  position: relative;
  display: block;
}

#header-nav img {
  position: relative;
  z-index: 2;
  max-width: 100%;
  vertical-align: top;
  -webkit-transition: opacity 0.2s ease-out;
  -o-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}

#header-nav img.on {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  opacity: 0;
}

@media only screen and (max-width: 599px) {
  #header-nav img.on {
    display: none;
  }
}

#header-nav a:hover img {
  opacity: 0;
}

#header-nav a:hover img.on {
  opacity: 1;
}

@media only screen and (max-width: 599px) {
  #header-nav a:hover img {
    opacity: 0.7;
  }
  #header-nav a:hover img.on {
    opacity: 0;
  }
}

/* #nav-safety
---------------------------------------------------------------------------------------- */
#nav-safety h2, #nav-safety figcaption,
#header-safety h2,
#header-safety figcaption {
  padding: 7px 10px 6px;
  background-color: #D71082;
  background-image: url(/up/images/nanyo/image/box_red.gif);
  background-size: cover;
  color: #fff;
  font-weight: bold;
}

#nav-safety ul,
#header-safety ul {
  list-style: none;
  padding: 0;
}

#nav-safety ul a,
#header-safety ul a {
  padding-left: 20px;
  background: url(/up/images/nanyo/image/list_redbox.gif) no-repeat 6px 5px;
}

#header-safety {
  display: none;
}

@media only screen and (max-width: 979px) {
  #header-safety {
    display: block;
    margin: 10px 0;
    padding: 0 8px;
    text-align: center;
    line-height: 1.75;
  }
  #header-safety figure {
    border: 1px solid #999;
  }
  #header-safety figcaption {
    padding: 1px 10px;
  }
  #header-safety ul {
    padding: 0.5em 10px;
  }
  #header-safety li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    padding: 0 1em;
  }
  #header-safety li.more {
    display: none;
  }
  #header-safety a {
    display: inline-block;
  }
}

@media only screen and (max-width: 780px) {
  #header-safety {
    text-align: left;
  }
  #header-safety li {
    min-width: 32%;
    padding: 0;
  }
}

@media only screen and (max-width: 599px) {
  #header-safety {
    text-align: left;
  }
  #header-safety li {
    min-width: 49%;
  }
}

/* #footer
---------------------------------------------------------------------------------------- */
#footer {
  clear: both;
}

#footer p, #footer ul, #footer ol, #footer dl, #footer figure, #footer address {
  margin: 0;
  padding: 0;
}

#footer-nav {
  position: relative;
  min-height: 3em;
  padding-top: 2em;
  background: #fff;
  font-size: 92.9%;
}

@media only screen and (max-width: 599px) {
  #footer-nav {
    font-size: 100%;
  }
}

#footer-nav ul {
  position: absolute;
  left: 0;
  bottom: 0;
  margin: 0;
  padding: 10px 150px 10px 20px;
}

@media only screen and (max-width: 979px) {
  #footer-nav ul {
    padding-right: 120px;
  }
}

@media only screen and (max-width: 599px) {
  #footer-nav ul {
    padding-right: 75px;
    padding-left: 15px;
  }
}

#footer-nav ul li {
  display: inline-block;
  margin-right: 2em;
}

@media only screen and (max-width: 599px) {
  #footer-nav ul li {
    margin-right: 1.5em;
  }
}

#footer-nav ul li:last-child {
  margin-right: 0;
}

#footer-nav ul a {
  padding: 0 0 0 10px;
  background: url(/up/images/nanyo/image/list_footer.gif) no-repeat left center;
}

#footer-nav .pagetop {
  padding: 0 50px;
  text-align: right;
}

@media only screen and (max-width: 979px) {
  #footer-nav .pagetop {
    padding: 0 15px;
  }
}

@media only screen and (max-width: 599px) {
  #footer-nav .pagetop {
    padding: 0;
  }
  #footer-nav .pagetop img {
    width: 75px;
    height: auto;
  }
}

#footer-area {
  padding: 20px 0;
  background: #fff url(/up/images/nanyo/image/bg_line.gif) repeat-x top center;
}

#footer-area .site-title {
  margin-bottom: 10px;
}

#footer-area .address, #footer-area .copyright {
  margin: 5px 40px;
}

@media only screen and (max-width: 599px) {
  #footer-area .address, #footer-area .copyright {
    margin: 5px 0;
  }
}

/* Sidebar サイドナビ
----------------------------------------------------- */
.sides aside, .sides nav {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 0 1em;
  padding: 0 10px 0.5em;
  border: 1px solid #999;
  background-color: #fff;
}

.sides aside h2, .sides nav h2 {
  margin: 0 -10px 0.5em;
  padding: 5px 10px;
  border-bottom: 1px solid #999;
  background: url(/up/images/nanyo/image/right_bg.gif) no-repeat right top;
  background-size: cover;
  font-weight: normal;
  font-size: 100%;
  text-align: center;
}

.sides aside h2 a, .sides nav h2 a {
  color: #333;
  text-decoration: none;
}

.sides aside h2 a:hover, .sides nav h2 a:hover {
  text-decoration: underline;
}

.sides aside h3, .sides nav h3 {
  margin: 0.5em 0;
  font-size: 100%;
}

.sides aside ul, .sides nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sides aside ul a, .sides nav ul a {
  display: block;
  padding-left: 15px;
  background: url(/up/images/nanyo/image/list_yellow.gif) no-repeat 1px 5px;
}

.sides aside ul a:hover, .sides nav ul a:hover {
  background-image: url(/up/images/nanyo/image/list_redbox.gif) !important;
}

.sides aside ul ul a, .sides nav ul ul a {
  padding-left: 30px;
  background: url(/up/images/nanyo/image/list_yellow.gif) no-repeat 16px 5px;
}

.sides aside ul .active > a, .sides nav ul .active > a {
  background-image: url(/up/images/nanyo/image/list_redbox.gif);
}

.sides aside .buttons, .sides nav .buttons {
  margin: 0.5em 0;
  text-align: center;
}

.sides aside a .count, .sides nav a .count {
  display: inline-block;
  margin-left: 0.33em;
  font-size: 93.75%;
  color: #333;
}

.sides nav.options ul li {
  padding-left: 30px;
  background: url(/up/images/nanyo/image/list_pink_3.gif) no-repeat 0 2px;
}

.sides nav.options ul a {
  display: inline;
  padding-left: 0;
  background: none !important;
}

.sides nav.option-files aside {
  border-style: dotted;
  line-height: 1.4;
}

.sides nav.option-files aside a {
  display: block;
  text-decoration: none;
}

.sides nav.option-files aside a:hover {
  text-decoration: underline;
}

.sides nav.option-files aside img {
  margin-bottom: 5px;
}

.sides .banners {
  text-align: center;
}

.sides .banners a {
  display: block;
  margin-bottom: 0.5em;
}

.sides .banners img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

#side-header {
  margin: 0 0 1em;
  padding: 10px;
  border: 1px solid #999;
  background-color: #eee;
}

#side-header .caption {
  min-height: 24px;
  margin: 0;
  padding: 3px 0 3px 40px;
  background: url(/up/images/nanyo/image/mark.gif) no-repeat 8px center;
}

#side-enquete {
  padding-bottom: 2px;
}

#nav-address h3 {
  margin-bottom: 0;
}

#nav-address p, #nav-address address {
  margin: 0;
}

#nav-address .tel, #nav-address fax {
  display: block;
}

section.news time,
nav.news time {
  display: inline-block;
}

section.news ul,
nav.news ul {
  list-style: none;
  padding: 0 15px;
}

section.news > ul:after,
nav.news > ul:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

section.news > ul li,
nav.news > ul li {
  clear: both;
  list-style: none;
}

section.news > ul a,
nav.news > ul a {
  display: block;
  text-decoration: none;
}

section.news > ul a .date,
nav.news > ul a .date {
  float: left;
  margin: 0 0.66em 0 0.33em;
  color: #333;
}

section.news > ul a .ctgr,
nav.news > ul a .ctgr {
  float: left;
  background: #D71082;
  color: #fff;
}

section.news > ul a .icon,
nav.news > ul a .icon {
  float: right;
  display: inline-block;
  margin-left: 10px;
}

section.news > ul a .icon img,
nav.news > ul a .icon img {
  max-width: 200px;
  max-height: 4.5em;
  border-radius: 6px;
}

@media only screen and (max-width: 599px) {
  section.news > ul a .icon img,
  nav.news > ul a .icon img {
    max-width: 40%;
  }
}

section.news > ul a.nolink,
nav.news > ul a.nolink {
  color: #333;
}

section.news > ul a.nolink:hover,
nav.news > ul a.nolink:hover {
  background: none;
  text-decoration: none;
}

section.news > ul a.nolink time,
nav.news > ul a.nolink time {
  font-weight: normal;
}

section.news > ul a.nolink .ctgr,
nav.news > ul a.nolink .ctgr {
  background: #eee;
  color: #333;
}

section.news > ul a .title,
nav.news > ul a .title {
  display: block;
  overflow: hidden;
}

@media only screen and (max-width: 599px) {
  section.news > ul a .title,
  nav.news > ul a .title {
    display: block;
    clear: both;
    padding: 0.4em 0;
  }
}

section.news > ul a[href]:hover,
nav.news > ul a[href]:hover {
  background: #ffffe6;
}

section.news > ul a[href]:hover .title,
nav.news > ul a[href]:hover .title {
  text-decoration: underline;
}

section ul.with-category, nav ul.with-category {
  line-height: 1.5;
}

section ul.with-category li, nav ul.with-category li {
  padding: 0.25em 0;
}

section ul.with-category .ctgr,
section ul.with-category .no-ctgr, nav ul.with-category .ctgr,
nav ul.with-category .no-ctgr {
  float: left;
  overflow: hidden;
  display: inline-block;
  width: 7em;
  height: 1.8em;
  line-height: 1.8;
  margin: 0 0.33em;
  padding: 0 0.5em;
  border-radius: 4px;
  background: #eee;
  text-align: center;
  vertical-align: middle;
  font-size: 87.5%;
}

@media only screen and (max-width: 599px) {
  section ul.with-category .ctgr,
  section ul.with-category .no-ctgr, nav ul.with-category .ctgr,
  nav ul.with-category .no-ctgr {
    margin: 0;
  }
}

/* 新着情報ページ */
body.News nav.news img.new {
  display: none;
}

body.Events section.news {
  -webkit-box-shadow: none;
  box-shadow: none;
}

body.Events section.news h2 {
  margin-top: 1em;
  border: 0;
}

body.Events section.news ul {
  overflow: visible;
  width: auto;
  height: auto;
  margin: 1em 0;
  padding: 0;
  border: 0;
}

.pagination {
  display: table;
  padding-left: 0;
  margin: 2em auto;
}

.pagination > li {
  display: inline;
}

.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  margin-left: -1px;
  padding: 0.4em 0.8em;
  border: 1px solid #bbb;
  line-height: 1.6;
  text-decoration: none;
}

.pagination > li > a:hover,
.pagination > li > span:hover {
  z-index: 2;
}

.pagination > li.active > a,
.pagination > li.active > span {
  background: #D71082 !important;
  color: #fff !important;
  cursor: default;
}

.pagination > li.disabled > a,
.pagination > li.disabled > span {
  cursor: not-allowed;
}

/* Service - お役立ちサービスのバナーリスト
----------------------------------------------------- */
#nav-service {
  padding: 0;
  border: 0;
}

#header-service a,
#nav-service a {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  margin: 0 2px 0.5em;
  padding: 5px;
  border: 2px solid #fff;
  outline: 2px solid #CC3366;
  line-height: 1.4;
  font-size: 128.57143%;
  font-weight: bold;
  text-decoration: none;
  text-align: left;
  background: #D62E5F;
  background: #D62E5F -webkit-gradient(linear, left top, left bottom, from(#ECB4AD), color-stop(66.67%, #D62E5F));
  background: #D62E5F -webkit-linear-gradient(#ECB4AD, #D62E5F 66.67%);
  background: #D62E5F -o-linear-gradient(#ECB4AD, #D62E5F 66.67%);
  background: #D62E5F linear-gradient(#ECB4AD, #D62E5F 66.67%);
  color: #fff;
  letter-spacing: 0.075em;
  text-shadow: 0 0 2px #D62E5F, 0 0 3px #D62E5F;
  vertical-align: middle;
  white-space: nowrap;
}

#header-service a.em,
#nav-service a.em {
  margin: 0.75em 2px;
  padding-left: 7px;
  outline: 2px solid #FF9966;
  background: #FC8833;
  background: #FC8833 -webkit-gradient(linear, left top, left bottom, from(#F6CAAA), color-stop(66.67%, #FC8833));
  background: #FC8833 -webkit-linear-gradient(#F6CAAA, #FC8833 66.67%);
  background: #FC8833 -o-linear-gradient(#F6CAAA, #FC8833 66.67%);
  background: #FC8833 linear-gradient(#F6CAAA, #FC8833 66.67%);
  text-shadow: 0 0 2px #993300, 0 0 3px #993300, 0 0 6px #FE771F, 0 0 6px #FE771F;
}

#header-service a.em:first-child,
#nav-service a.em:first-child {
  margin-top: 0;
}

#header-service a:before,
#nav-service a:before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 16px;
  margin-right: 7px;
  background: url(/up/images/nanyo/common/icon_caret_right.png) no-repeat left center;
  vertical-align: middle;
}

#header-service a.em:before,
#nav-service a.em:before {
  width: 12px;
  background-image: url(/up/images/nanyo/common/icon_caret_o_right.png);
}

@media only screen and (max-width: 979px) {
  #header-service a,
  #nav-service a {
    font-size: 114.28571%;
  }
  #header-service a.em,
  #nav-service a.em {
    padding-left: 5px;
  }
  #header-service a.service-mayor,
  #nav-service a.service-mayor {
    letter-spacing: 0.05em;
  }
  #header-service a:before, #header-service a.em:before,
  #nav-service a:before,
  #nav-service a.em:before {
    width: 8px;
    margin-right: 5px;
    background-size: 100% auto;
  }
}

@media only screen and (max-width: 599px) {
  #header-service a,
  #nav-service a {
    float: left;
    width: 48%;
    margin: 0 1% 2.4% !important;
    padding: 7px;
    font-size: 100%;
  }
  #header-service a.em,
  #nav-service a.em {
    padding-left: 7px;
  }
}

@media only screen and (max-width: 399px) {
  #header-service a,
  #nav-service a {
    padding: 5px 4px;
    letter-spacing: 0;
    font-size: 93.75%;
  }
  #header-service a.em,
  #nav-service a.em {
    padding-left: 4px;
  }
  #header-service a:before, #header-service a.em:before,
  #nav-service a:before,
  #nav-service a.em:before {
    margin-right: 4px;
  }
}

#header-service a.banner,
#nav-service a.banner {
  margin: 0 -2px 0.3em 0;
  padding: 0;
  border: 0;
  outline: 0;
}

#header-service a.banner:before,
#nav-service a.banner:before {
  content: none;
}

@media only screen and (max-width: 399px) {
  #header-service #nav-service,
  #nav-service #nav-service {
    display: none;
  }
}

#header-service {
  display: none;
}

@media only screen and (max-width: 979px) {
  #header-service {
    display: block;
    margin: 10px 0;
    padding: 0 6px;
  }
  #header-service a {
    display: inline-block;
    float: left;
    width: 23.5%;
    margin: 0 0.75% 1.8% !important;
  }
  #header-service a img {
    width: 100%;
    height: auto;
    vertical-align: middle;
  }
}

@media only screen and (max-width: 800px) {
  #header-service a {
    width: 31%;
    margin: 0 1% 2.4% !important;
  }
}

@media only screen and (max-width: 599px) {
  #header-service a {
    width: 48%;
  }
}

#sp-header {
  display: none;
  margin: 0;
}

@media only screen and (max-width: 979px) {
  #sp-header {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 301;
    padding: 10px;
  }
}

@media only screen and (max-width: 979px) {
  #sp-header .btn {
    display: inline-block;
    margin-top: 2px;
    padding: 8px;
    background: #D71082;
    border: 1px solid rgba(215, 16, 130, 0.1);
    border-radius: 4px;
    text-align: center;
    vertical-align: middle;
    cursor: pointer;
  }
  #sp-header .btn img {
    width: 45px;
    height: 45px;
    vertical-align: middle;
  }
}

@media only screen and (max-width: 599px) {
  #sp-header .btn {
    margin-top: 0;
    padding: 5px;
  }
  #sp-header .btn img {
    width: 30px;
    height: 30px;
  }
}

@media only screen and (max-width: 979px) {
  #header {
    position: relative;
    z-index: 300;
  }
}

@media only screen and (max-width: 979px) {
  #header-menu {
    display: none;
    position: absolute;
    top: 88px;
    left: 0;
    z-index: 15;
    width: 100%;
    margin: 0;
    padding: 10px 2px;
    border-top: 1px solid #D71082;
    border-bottom: 5px solid #D71082;
    background: #fafafa;
  }
}

@media only screen and (max-width: 599px) {
  #header-menu {
    top: 62px;
  }
}

#header-menu .footer {
  padding: 0;
}

@media only screen and (max-width: 979px) {
  #header-menu .footer {
    clear: both;
    padding: 10px 0 5px;
    text-align: center;
  }
}

#header-menu .footer .btn.closer {
  display: none;
}

@media only screen and (max-width: 979px) {
  #header-menu .footer .btn.closer {
    display: inline-block;
    min-width: 50%;
    font-size: 87.5%;
  }
}

#header-menu-wrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: rgba(255, 255, 255, 0.85);
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  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;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[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;
}

a.slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 255;
  display: block;
  margin-top: -48px;
  width: 46px;
  height: 96px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
  -webkit-transition: opacity 0.12s ease-out;
  -o-transition: opacity 0.12s ease-out;
  transition: opacity 0.12s ease-out;
}

a.slick-arrow.disabled {
  opacity: 0.5;
  filter: alpha(opacity=50);
}

a.slick-arrow.prev {
  left: 0;
  background-image: url(/up/images/common/btn_prev.png);
}

a.slick-arrow.next {
  right: 0;
  background-image: url(/up/images/common/btn_next.png);
}

a.slick-arrow:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

body.Category main h1 {
  background: url(/up/images/nanyo/image/title_bar.gif) no-repeat right top;
  background-size: cover;
}

body.Category main header:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

body.Category main header .description {
  margin-bottom: 1em;
  padding-bottom: 1px;
  border-bottom: 1px dashed #999;
  line-height: 1.4;
}

body.Category main header .description figure.image {
  margin: 0;
}

body.Category main header .description figure.image.with-text {
  float: right;
  margin: 0 0 1em 30px;
}

body.Category main ul.cats, body.Category main ul.pages {
  list-style: none;
  margin: 0.5em 0;
  padding-left: 15px;
  line-height: 1.5;
}

body.Category main ul.cats li, body.Category main ul.pages li {
  margin: 0.25em 0;
  padding-left: 25px;
  background: url(/up/images/nanyo/image/contents.gif) no-repeat 2px 2px;
}

body.Category main ul.cats li:after, body.Category main ul.pages li:after {
  content: attr(data-time);
  margin-left: 0.7em;
}

body.Category main ul.cats li {
  background: url(/up/images/nanyo/image/ffolder2.gif) no-repeat 0 1px;
}

body.Category main nav.sub-category {
  margin: 1em 0;
  padding: 5px 15px;
  border: 1px dashed #999;
}

body.Category main nav.sub-category h2 {
  margin: 0.5em -5px;
  padding: 0;
  padding-left: 25px;
  font-weight: normal;
  font-size: 100%;
  line-height: 1.5;
  background: url(/up/images/nanyo/image/ffolder.gif) no-repeat 0 1px;
}

/* Grid
----------------------------------------------------- */
body.Home #icatch-group > .col-md-9 {
  width: 750px;
}

body.Home #icatch-group > .col-md-3 {
  width: 220px;
  min-height: 0;
}

@media only screen and (max-width: 979px) {
  body.Home #icatch-group > .col {
    float: none;
    width: auto;
  }
}

body.Home #body > .col-md-9 {
  width: 760px;
}

body.Home #body > .col-md-3 {
  width: 210px;
}

@media only screen and (max-width: 979px) {
  body.Home #body > .col {
    float: none;
    width: auto;
  }
}

body.Home #main-area > .col-md-9 {
  width: 540px;
}

body.Home #main-area > .col-md-3 {
  width: 220px;
}

@media only screen and (max-width: 979px) {
  body.Home #main-area {
    display: table;
  }
  body.Home #main-area > .col {
    display: table-cell;
    float: none;
    width: auto;
  }
  body.Home #main-area > .col-md-3 {
    width: 210px;
  }
  body.Home #main-area > .col-md-3 > .sides {
    width: 210px;
  }
}

@media only screen and (max-width: 599px) {
  body.Home #main-area {
    display: block;
  }
  body.Home #main-area > .col {
    display: block;
    width: auto;
  }
  body.Home #main-area > .col > .sides {
    width: auto;
  }
}

@media only screen and (max-width: 979px) {
  body.Home #container {
    padding-top: 0;
  }
}

body.Home main {
  padding: 0;
}

@media only screen and (max-width: 979px) {
  body.Home main {
    margin-bottom: 30px;
    padding-left: 10px;
  }
}

@media only screen and (max-width: 599px) {
  body.Home main {
    padding: 0 10px;
  }
}

body.Home .sides {
  padding: 0;
}

@media only screen and (max-width: 599px) {
  body.Home .sides {
    margin-top: 30px;
    padding: 0 10px;
  }
}

/* 見出し
----------------------------------------------------- */
body.Home main h2 {
  background: none;
}

/* headimg
----------------------------------------------------- */
#icatch {
  margin-bottom: 15px;
}

/* 新着情報・お知らせ
----------------------------------------------------- */
section.news {
  margin-bottom: 1.75em;
}

section.news h2 {
  margin: 0 0 0.5em;
  padding: 6px 10px 2px;
  border-left: 15px solid;
  border-bottom: 1px solid;
  border-color: #099;
  font-size: 125%;
  letter-spacing: 0.05em;
}

section.news#topics h2 {
  border-color: #6C0;
}

section.news ul {
  list-style: none;
  margin: 10px 0 0.5em;
  padding: 0 10px;
  line-height: 1.5;
}

section.news ul li {
  margin: 0.25em 0;
  padding-left: 15px;
  background: url(/up/images/nanyo/image/list_blue.gif) no-repeat 0 5px;
}

section.news ul .date {
  float: left;
  margin: 0 1em 0 0;
  color: #333;
}

@media only screen and (max-width: 599px) {
  section.news ul .date {
    float: none;
    display: block;
    margin-right: 0;
  }
}

section.news ul a .new {
  display: inline-block;
  margin-left: 0.5em;
}

section.news ul .date + a,
section.news ul .date + .title {
  overflow: hidden;
  display: block;
  margin-left: 0.5em;
}

@media only screen and (max-width: 599px) {
  section.news ul .date + a,
  section.news ul .date + .title {
    margin-left: 0;
    padding: 0;
  }
}

section.news#topics ul li {
  background-image: url(/up/images/nanyo/image/list_green.gif);
}

section.news .nav {
  margin: 0;
  padding: 0 10px;
}

/* 緊急情報
----------------------------------------------------- */
#emergency {
  margin-bottom: 1.75em;
  padding: 0 0 10px;
  border: 1px solid #999;
}

#emergency h2 {
  margin: -1px -1px 5px;
  padding: 0;
  border: 0;
  background: #BB2222 url(/up/images/nanyo/image/bg_emergency.gif) repeat;
  color: #fff;
}

#emergency ul li {
  background-image: url(/up/images/nanyo/image/list_emr.gif);
}

/* ライフイベント
----------------------------------------------------- */
#nav-lifeevent {
  margin-bottom: 1.75em;
  max-width: 520px;
}

@media only screen and (max-width: 599px) {
  #nav-lifeevent {
    max-width: none;
  }
}

#nav-lifeevent h2 {
  margin: 0;
  padding: 0;
}

#nav-lifeevent .nav {
  list-style: none;
  min-height: 160px;
  margin: 0;
  padding: 20px;
  padding-right: 15px;
  background: url(/up/images/nanyo/image/bg_life.gif) no-repeat top center;
}

#nav-lifeevent .nav:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

@media only screen and (max-width: 979px) {
  #nav-lifeevent .nav {
    background-size: 100% 100%;
  }
}

@media only screen and (max-width: 599px) {
  #nav-lifeevent .nav {
    min-height: 0;
    margin: 3px -1%;
    padding: 0;
    background: none;
  }
}

#nav-lifeevent .nav a {
  display: inline-block;
  float: left;
  margin: 0;
  padding: 0;
}

@media only screen and (max-width: 979px) {
  #nav-lifeevent .nav a {
    max-width: 33%;
  }
}

@media only screen and (max-width: 599px) {
  #nav-lifeevent .nav a {
    max-width: none;
    width: 47.5%;
    margin: 1% 1.24%;
  }
}

/* 気になる情報
----------------------------------------------------- */
#pickup section {
  margin: 0;
  padding: 0 5px;
}

@media only screen and (max-width: 599px) {
  #pickup section {
    padding: 0.5em 15px;
  }
}

#pickup h2 {
  margin: 0;
  padding: 0;
}

#pickup h3 {
  min-height: 25px;
  margin: 0;
  padding: 4px 0 0 27px;
  border: 0;
  background: url(/up/images/nanyo/image/list_orange.gif) no-repeat 0 8px;
}

@media only screen and (max-width: 599px) {
  #pickup h3 {
    margin: 0 -10px;
  }
}

#pickup ul {
  padding: 0 2px;
}

#pickup ul li {
  padding-left: 10px;
  background-image: url(/up/images/nanyo/image/list_yellow.gif);
}

#pickup .row {
  display: table;
  border-collapse: collapse;
  margin: 0;
}

@media only screen and (max-width: 599px) {
  #pickup .row {
    display: block;
  }
}

#pickup .col {
  display: table-cell;
  float: none;
  padding: 0;
  border: 2px solid #f60;
}

@media only screen and (max-width: 599px) {
  #pickup .col {
    display: block;
    border-width: 0 0 1px;
  }
}

/* Sidebar
----------------------------------------------------- */
body.Home .sides aside {
  padding: 0 9px 0.5em;
}

body.Home .sides aside h2 {
  margin: -1px -10px 0.5em;
  border-bottom: 0;
  background: url(/up/images/nanyo/image/box_left.gif) no-repeat right top;
  background-size: cover;
  color: #000;
  text-align: left;
  font-weight: bold;
}

body.Home #nav-side aside {
  width: 181px;
}

@media only screen and (max-width: 979px) {
  body.Home #nav-side aside {
    width: auto;
  }
}

body.Home #nav-side h2 {
  background-image: url(/up/images/nanyo/image/box_right.gif);
  background-size: cover;
}

body.Home #nav-shortcut h2 {
  background-image: url(/up/images/nanyo/image/box_left.gif);
  background-size: cover;
}

@media only screen and (max-width: 979px) {
  body.Home #nav-shortcut {
    padding-right: 10px;
  }
}

@media only screen and (max-width: 979px) {
  body.Home #nav-safety {
    display: none;
  }
}

@media only screen and (max-width: 599px) {
  body.Home #nav-quick {
    display: none;
  }
}

body.Home #nav-event {
  display: none;
}

@media only screen and (max-width: 979px) {
  body.Home #nav-event {
    display: block;
  }
}

body.Home #side-event {
  display: block;
}

@media only screen and (max-width: 979px) {
  body.Home #side-event {
    display: none;
  }
}

body.Home #nav-magazine figure {
  margin-bottom: 0.5em;
}

body.Home #nav-magazine ul a {
  display: inline-block;
}

body.Home #nav-magazine img {
  max-width: 100%;
  height: auto;
  -webkit-box-shadow: 1px 1px 3px #bbb;
  box-shadow: 1px 1px 3px #bbb;
}

body.Home #nav-sites {
  padding-top: 10px;
}

body.Home #nav-sites h2 {
  display: none;
}

body.Home #side-population table {
  width: 100%;
  margin: 0;
  border: 0;
  line-height: 1.5;
}

body.Home #side-population table caption, body.Home #side-population table th, body.Home #side-population table td {
  border: 0;
  background: none;
  font-weight: normal;
}

body.Home #side-population table tr:first-child th, body.Home #side-population table tr:first-child td {
  border-top: 1px dashed #999;
}

@media only screen and (max-width: 979px) {
  body.Home #nav-side {
    padding: 0 4px;
  }
  body.Home #nav-side aside {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    width: 48%;
    margin: 0 1% 15px;
  }
  body.Home #nav-side #nav-ads,
  body.Home #nav-side #nav-sites {
    float: none;
    clear: both;
    width: auto;
  }
  body.Home .sides .banners a {
    display: inline-block;
  }
}

@media only screen and (max-width: 599px) {
  body.Home #nav-side {
    margin-top: 1em;
    padding: 0 10px;
  }
  body.Home #nav-side aside {
    float: none;
    width: auto;
    margin: 0 0 15px;
  }
  body.Home .sides .banners a {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    width: 49%;
    padding: 0 2px;
  }
  body.Home .sides .banners a img {
    width: 100%;
  }
}

.Home #icatch {
  overflow: hidden;
  position: relative;
  margin-right: 10px;
}

.Home #icatch .image {
  position: relative;
}

.Home #icatch .image + .image {
  position: absolute;
}

.Home #icatch.slick-initialized {
  overflow: visible;
}

.Home #icatch.slick-initialized .image + .image {
  position: relative;
}

@media only screen and (max-width: 979px) {
  .Home #icatch {
    margin-right: 0;
    margin-bottom: 15px;
  }
  .Home #icatch img {
    width: 100%;
    height: auto;
  }
}

.Home a.slick-arrow {
  margin-top: -50px;
  width: 45px;
  height: 100px;
  opacity: 0;
  filter: alpha(opacity=0);
}

.Home a.slick-arrow.prev {
  left: 0;
  background-image: url(/up/images/yuzawashi/icon/btn_icatch_prev.png);
}

.Home a.slick-arrow.next {
  right: 0;
  background-image: url(/up/images/yuzawashi/icon/btn_icatch_next.png);
}

.Home a.slick-arrow.disabled {
  opacity: 0;
  filter: alpha(opacity=0);
}

.Home a.slick-arrow:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
}

/*
toppage-stylesheet
by Hokuto Information Systems INC.
*/
/*--ボディ--*/
#mainframe {
  float: left;
  width: 690px;
  margin-top: 15px;
}

#rightframe {
  float: right;
  width: 260px;
  margin-top: 15px;
}

/*--階層--*/
#navi {
  width: 950px;
  text-align: left;
  padding-top: 2px;
  margin-left: 10px;
  line-height: 1.4;
  background-color: #FFFFFF;
  color: #000000;
}

#gtitle {
  width: 700px;
  height: 48px;
  padding: 15px 0 0 15px;
  text-align: left;
  font-weight: bold;
  font-size: 130%;
  background-image: url("../image/title_bar.gif");
  background-repeat: no-repeat;
  color: #333;
  margin-left: 3px;
}

#gintroarea {
  width: 650px;
  text-align: left;
  margin-top: 10px;
  margin-left: 10px;
  line-height: 1.4em;
}

#gintro {
  float: left;
  width: 410px;
  margin-bottom: 10px;
  margin-right: 10px;
}

#gimg {
  float: right;
  width: 230px;
  text-align: right;
  margin-bottom: 5px;
}

#childcontents {
  clear: both;
  width: 650px;
  margin: 10px 5px 10px 20px;
}

#childcontents ul {
  text-align: left;
  margin: 10px 0px 0px 0px;
  padding: 0;
}

#childcontents li {
  width: 600px;
  background-image: url("../image/contents.gif");
  background-repeat: no-repeat;
  background-position: 2px 4px;
  list-style-type: none;
  padding-left: 25px;
  margin-left: 5px;
  margin-top: 2px;
  line-height: 1.6em;
}

#childfolder {
  width: 650px;
  border-collapse: collapse;
  border: 1px dashed #999;
  text-align: left;
  margin-top: 8px;
  margin-left: 6px;
  margin-bottom: 20px;
  line-height: 1.4em;
}

#childfolder TD {
  vertical-align: top;
  background-image: url("../image/ffolder.gif");
  background-repeat: no-repeat;
  background-position: 10px 15px;
  /*
	background-position: 13px 20px;
*/
  padding: 15px 10px 15px 35px;
  border: 1px dashed #999;
}

#childfolder .mul {
  text-align: left;
  margin: 5px 0px 0px -20px;
  padding: 0;
}

#childfolder .mli {
  background-image: url("../image/contents.gif");
  background-repeat: no-repeat;
  background-position: 2px 4px;
  list-style-type: none;
  padding-left: 25px;
  margin-left: 5px;
  margin-top: 2px;
  line-height: 1.5em;
}

#childfolder .sul {
  text-align: left;
  margin: 5px 0px 0px -20px;
  padding: 0;
}

#childfolder .sli {
  background-image: url("../image/ffolder2.gif");
  background-repeat: no-repeat;
  /*
	background-position: 2px 5px;
*/
  background-position: 2px 4px;
  list-style-type: none;
  padding-left: 25px;
  margin-left: 5px;
  margin-top: 2px;
  line-height: 1.6em;
}

#parenttitle {
  width: 258px;
  min-height: 20px;
  border: 1px solid #99999A;
  border-bottom: none;
  background-image: url("../image/right_bg.gif");
  background-repeat: repeat-y;
  text-align: center;
  color: #333366;
  padding-top: 9px;
  white-space: normal;
}

#parent {
  width: 258px;
  border: 1px solid #99999A;
  margin-bottom: 10px;
}

#parent .word {
  width: 230px;
  text-align: left;
  line-height: 1.4em;
  padding: 10px;
}

#dummy {
  height: 300px;
}

/*--コンテンツ詳細--*/
#ctitle {
  width: 664px;
  min-height: 25px;
  background-image: url("../image/contitle_bg.gif");
  background-position: 2px 0;
  background-repeat: no-repeat;
  padding: 16px 0px 10px 15px;
  margin-bottom: 5px;
  text-align: left;
  font-weight: bold;
  font-size: 1.4em;
  color: #333;
  -moz-background-size: auto 100%;
  background-size: auto 100%;
}

#ctext {
  margin: 10px 0 0 5px;
  margin-left: 10px;
  width: 660px;
  text-align: left;
  line-height: 1.6em;
}

#ctext P {
  margin: 0;
  padding: 0;
}

#ctext .blocktitle {
  width: 660px;
  text-align: left;
  font-size: 1.2em;
  font-weight: bold;
  background-color: #ffffaa;
  padding: 5px;
  margin-bottom: 8px;
  border-left: 1px solid #ffc000;
  border-bottom: 1px solid #ffc000;
}

#ctext .block {
  width: 100%;
  line-height: 1.4em;
  display: table-cell;
}

#ctext .img {
  margin: 3px;
}

#righttit {
  width: 258px;
  min-height: 30px;
  float: left;
  margin: 0px 0px 10px 0px;
  padding: 0px 0px 0px 0px;
  *margin: 0px 0px 10px 0px;
  *padding: 17px 0px 0px 0px;
  border: 1px solid #999;
  background-color: #EFEFEF;
}

#righttitleimg {
  width: 30px;
  height: 30px;
  background-image: url("../image/mark.gif");
  background-repeat: no-repeat;
  float: left;
  margin: 11px 0px 0 18px;
  *padding: 0px 0px 0px 0px;
  *margin: -5px 0px 0px 15px;
  *position: absolute;
}

#righttitle {
  width: 208px;
  min-height: 30px;
  font-weight: bold;
  text-align: left;
  color: #333333;
  padding: 17px 0 0 0;
  margin: 0px 0px 0px 0px;
  float: right;
  *padding: 17px 0px 0px 0px;
  *margin: -15px 0px 0px 0px;
}

.infotitle {
  width: 258px;
  min-height: 20px;
  border: 1px solid #99999A;
  border-bottom: none;
  padding-top: 10px;
  background-image: url("../image/right_bg.gif");
  background-repeat: repeat-y;
  font-weight: bold;
  text-align: center;
  color: #333333;
}

#info {
  width: 258px;
  border: 1px solid #999;
  margin-bottom: 10px;
  word-break: break-all;
}

#info ul {
  text-align: left;
  margin: 0;
  padding: 0;
}

#info li {
  background-image: url("../image/list_pink_3.gif");
  background-repeat: no-repeat;
  background-position: 5px 2px;
  list-style-type: none;
  line-height: 1.4em;
  padding-left: 35px;
  margin-left: 5px;
  margin-top: 6px;
  margin-bottom: 6px;
}

#info form {
  margin: 0;
}

#info .word {
  font-size: 0.8em;
  line-height: 1.6em;
  padding: 5px 5px 10px 5px;
  text-align: left;
}

#info .word2 {
  font-size: 0.8em;
  line-height: 1.6em;
  padding: 5px 5px 0px 5px;
  text-align: center;
}

#info .word3 {
  line-height: 1.6em;
  padding: 5px 5px 10px 15px;
  text-align: left;
}

#roomarea {
  width: 660px;
}

#roomleft {
  width: 400px;
  float: left;
}

#roomright {
  width: 260px;
  float: left;
}

#roomta {
  clear: both;
  width: 380px;
  border: 1px solid #666666;
  border-collapse: collapse;
  margin: 0px 5px 10px 10px;
}

#roomta td {
  border: 1px solid #666666;
  padding: 5px;
  vertical-align: top;
  word-break: break-all;
}

#roombtn {
  margin-bottom: 5px;
}

#room {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #999;
  text-align: left;
  margin-top: 10px;
}

#room TD {
  vertical-align: top;
  border: 1px solid #999;
  padding: 3px;
}

.roomsub {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #999;
  text-align: left;
}

.roomsub TD {
  vertical-align: top;
  border: 1px solid #999;
  padding: 3px;
}

#mailfm {
  width: 80%;
}

/*--申請書ダウンロード--*/
#download {
  clear: both;
  width: 650px;
  margin: 10px 5px 10px 20px;
}

#download ul {
  text-align: left;
  margin: 5px 0px 15px 0px;
  padding: 0;
}

#download li {
  background-image: url("../image/contents.gif");
  background-repeat: no-repeat;
  background-position: 2px 4px;
  list-style-type: none;
  padding-left: 25px;
  margin-left: 5px;
  margin-top: 2px;
  line-height: 1.5em;
}

/*--サイトマップ--*/
#sitemap {
  clear: both;
  width: 650px;
  margin: 10px 5px 10px 20px;
}

#sitemap ul {
  text-align: left;
  margin: 5px 0px 0px 0px;
  padding: 0;
}

#sitemap li {
  background-image: url("../image/ffolder.gif");
  background-repeat: no-repeat;
  background-position: 2px 2px;
  list-style-type: none;
  padding: 1px 0 0 25px;
  margin-left: 5px;
  margin-top: 3px;
  line-height: 1.6em;
}

#sitemap .site2 {
  margin: 2px 0 0 10px;
}

#sitemap .site3 {
  margin-left: 20px;
}

#sitemap .site4 {
  margin-left: 30px;
}

/*--ビューアーソフト--*/
#view {
  clear: both;
  width: 610px;
  border: 1px solid #666666;
  border-collapse: collapse;
  margin: 10px 5px 10px 10px;
}

#view td {
  border: 1px solid #666666;
  padding: 5px;
}

/*--カウント--*/
#pagecnt {
  width: 610px;
  margin-top: 5px;
  text-align: right;
}

/*--メルマガ--*/
#mag {
  clear: both;
  width: 650px;
  margin: 10px 5px 10px 20px;
  text-align: left;
}

#mag ul {
  text-align: left;
  margin: 10px 0px 0px 15px;
  padding: 0;
}

#mag li {
  width: 600px;
  background-repeat: no-repeat;
  background-position: 2px 4px;
  list-style-type: disc;
  padding-left: 0px;
  margin-left: 15px;
  margin-top: 2px;
}

#mag {
  margin-left: 10px;
}

#mag .title {
  line-height: 1.6em;
  font-weight: bold;
  font-size: 1.2em;
}

#mag .word {
  margin-left: 20px;
  margin-right: 10px;
  line-height: 1.6em;
}

#magta {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 100%;
  border: 1px solid #666;
  border-collapse: collapse;
}

#magta td {
  border: 1px solid #666;
  padding: 5px;
  vertical-align: top;
}

#postsearch {
  width: 660px;
  border-collapse: collapse;
  border: 1px dashed #999;
  text-align: left;
  margin-top: 15px;
  margin-left: 5px;
  margin-bottom: 20px;
  line-height: 1.4em;
}

#postsearch TH {
  vertical-align: middle;
  padding: 5px;
  border: 1px dashed #999;
  text-align: center;
}

#postsearch TD {
  vertical-align: top;
  padding: 10px;
  border: 1px dashed #999;
}

/*--イベントカレンダー--*/
#evtbtn {
  margin: 5px;
}

#eventcal {
  width: 210px;
  border-collapse: collapse;
  border: 1px solid #999;
  text-align: left;
}

#eventcal TD {
  vertical-align: top;
  border: 1px solid #999;
  padding: 5px;
}

.eventtitle {
  background-color: #339900;
}

.eventsun {
  background-color: #FFCEFF;
}

.eventsat {
  background-color: #EAEAF4;
}

.eventtoday {
  background-color: #FD9D82;
}

.eventother {
  background-color: #FFFFFF;
}

#event {
  width: 650px;
  border-collapse: collapse;
  border: 1px solid #999;
  text-align: left;
  margin-top: 10px;
  padding: 5px;
}

#event TD {
  vertical-align: top;
  border: 1px solid #999;
  padding: 3px;
}

/*--フッター--*/
#footerNavi {
  background: url(../image/bg_line.gif) repeat-x left top;
  clear: both;
  width: 100%;
  padding-top: 10px;
  text-align: center;
  line-height: 1.5;
  color: #666666;
}

/* 2017.07.24 fisys)ayaka IE11中央寄せ解除 add str */
#ctext th {
  text-align: left;
}

/* 2017.07.24 fisys)ayaka IE11中央寄せ解除 add end */
main .req {
  color: #fa3333;
}

main small.req {
  font-weight: normal;
}

section.enquete {
  margin: 0 0 2em;
  padding: 0 10px;
}

section.enquete h2 {
  margin-left: -10px;
  padding: 4px 10px;
  border-left: 8px solid;
  border-color: #D71082;
  background: none;
  font-size: 100%;
}

body.FAQ main header {
  margin-bottom: 1em;
}

body.FAQ main header h2 {
  margin: 0.5em -2px 0.7em;
  padding: 0;
  background: none;
}

body.FAQ main figure.icon {
  margin: 0;
}

body.FAQ main figure.icon + * {
  margin-top: 0.5em;
}

body.FAQ section.faq {
  margin: 0 -5px;
  padding: 0 5px;
}

body.FAQ section.faq + section.faq {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #999;
}

section.standard:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

section.standard figure.images img {
  max-width: 100%;
  height: auto;
}

section.standard figure.images ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

section.standard figure.images ul li {
  margin: 0 0 15px;
}

section.standard figure.images ul.images a:before {
  content: none;
}

section.standard figure.images.up, section.standard figure.images.down {
  text-align: center;
}

section.standard figure.images.up li, section.standard figure.images.down li {
  display: inline-block;
  margin: 0 0.5% 15px;
}

section.standard figure.images.up.cols-2 li, section.standard figure.images.down.cols-2 li {
  max-width: 48%;
}

section.standard figure.images.up.cols-3 li, section.standard figure.images.down.cols-3 li {
  max-width: 31%;
}

section.standard figure.images.down li {
  margin: 15px 0.5% 0;
}

section.standard figure.images.left {
  float: left;
  max-width: 33%;
  margin-right: 3%;
  text-align: left;
}

section.standard figure.images.right {
  float: right;
  max-width: 33%;
  margin-left: 3%;
  text-align: right;
}
