@charset "UTF-8";
@font-face {
  font-family: hannari;
  src: url(../font/Hannari.eot?) format("eot"), url(../font/Hannari.woff) format("woff"), url(../font/Hannari.otf) format("opentype");
}
/* Contents Menu
-------------------------------------------------------------------------------------
【PC/SP】
	**:normalize
	**:icon
	**:reset
	**:base contents
		header/gnav/breadChumbs/mv/contents/footer/newslist/
	**:indent
	**:size
	**:wide
	**:section
	**:compo parts
		btn/box/list/head/table/float/column/topcontrol/roBtn/
	**:pager
	**:form
-------------------------------------------------------------------------------------*/


/* normalize
-------------------*/


/*! normalize.css v2.0.1 | MIT License | git.io/normalize */article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
  display: block
}
audio, canvas, video {
  display: inline-block
}
audio:not([controls]) {
  display: none;
  height: 0
}
[hidden] {
  display: none
}
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%
}
body {
  margin: 0
}
h1, h2, h3, h4, h5 {
  font-weight: normal;
}
{
 font-size: 2em
}
abbr[title] {
  border-bottom: 1px dotted
}
b, strong {
  font-weight: 700
}
dfn {
  font-style: italic
}
mark {
  background: #ff0;
  color: #000
}
code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em
}
pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word
}
q {
  quotes: "\201C" "\201D" "\2018" "\2019"
}
small {
  font-size: 80%
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}
sup {
  top: -.5em
}
sub {
  bottom: -.25em
}
img {
  border: 0;
  width: 100%;
}
svg:not(:root) {
  overflow: hidden
}
figure {
  margin: 0
}
fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em
}
legend {
  border: 0;
  padding: 0
}
button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0
}
button, input {
  line-height: normal
}
button, html input[type="button"], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer
}
button[disabled], input[disabled] {
  cursor: default
}
input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0
}
input[type=search] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
-webkit-appearance:none
}
button::-moz-focus-inner, input::-moz-focus-inner {
border:0;
padding:0
}
textarea {
  overflow: auto;
  vertical-align: top
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
/* icon
-------------------*/

.notoserif1 {
  font-weight: 100;
  font-family: 'notoserif';
}
.notoserif2 {
  font-weight: 200;
  font-family: 'notoserif';
}
.notoserif3 {
  font-weight: 300;
  font-family: 'notoserif';
}
.notoserif4 {
  font-weight: 400;
  font-family: 'notoserif';
}
.notoserif5 {
  font-weight: 500;
  font-family: 'notoserif';
}
.notoserif6 {
  font-weight: 600;
  font-family: 'notoserif';
}
.notoserif7 {
  font-weight: 700;
  font-family: 'notoserif';
}
/* reset
-------------------*/

html {
  background-color: #FFF;
  font-size: 62.5%; /* sets the base font to 10px for easier math */
}
body, h1, h2, h3, h4, h5, h6, pre, ul, ol, li, dl, dt, dd, p, img {
  margin: 0;
  padding: 0;
}
body {
  /*font-family: YuGothic, '游ゴシック', Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  font-family: 'Noto Sans JP', sans-serif;
  color: #3b3736;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.1rem;
  /*	min-width:1000px;*/
  overflow-x: hidden;
}
body * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
#fancybox-wrap, #fancybox-wrap *, #fancybox-tmp, #fancybox-loading {
  -webkit-box-sizing: content-box!important;
  -moz-box-sizing: content-box!important;
  -o-box-sizing: content-box!important;
  -ms-box-sizing: content-box!important;
  box-sizing: content-box!important;
}
a, a:link, a:hover, a:focus {
  color: #333;
  text-decoration: none;
  cursor: pointer;
  outline: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
a:hover {
  text-decoration: none;
  opacity: 0.8;
}
ul, ol {
  list-style-type: none;
}
::selection {
  background-color: #888;
  color: #FFF; /* Safari */
}
::-moz-selection {
 background-color: #888;
 color: #FFF; /* Firefox */
}
#contents p {
  line-height: 1.7;
  text-align: justify;
}
hr.ancHr {
  font-size: 0 !important;
  line-height: 0 !important;
  visibility: hidden !important;
  margin: 0;
  padding: 0;
}
/* hover_action
-------------------*/


.hvr_arrow i:before {
  margin-left: 10px;
  display: inline-block;
  font-weight: 200;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  font-size: 90%;
}
.hvr_arrow:hover i:before {
  margin-left: 15px;
  font-size: 100%;
}
/* base contents
-------------------*/

/*header*/

#header {
  display: table;
  width: 100%;
  position: absolute;
  height: 100px;
  left: 0;
  top: 0;
  z-index: 980;
  /* background-color: rgba(255,255,255,0.7); */
  background-color: #fff;
}
#header .hdL {
  vertical-align: middle;
  display: table-cell;
  padding-left: 30px;
  text-align: left;
}
#header .hdL .logo a {
  display: table;
  line-height: 0;
}
#header .hdL .logo img {
  width: 260px;
  margin-right: 15px;
}
#header .hdL .logo span.sub {
  font-size: 14px;
  display: table-cell;
  vertical-align: middle;
  background: #a5a5a4;
  padding: 0.6rem;
  color: #fff;
}
#header .hdR {
  vertical-align: middle;
  display: table-cell;
  padding-right: 20px;
  padding-left: 20px;
  text-align: right;
}
#header .hdR .contact_btn {
  padding: 5rem;
}
#header .anchrNavi {
  overflow: hidden;
  display: inline-block;
  vertical-align: middle;
  margin-right: 40px;
}
#header .anchrNavi li {
  float: left;
  padding: 0 15px;
}
#header .anchrNavi li a {
  padding-bottom: 5px;
}
#header .anchrNavi li a:hover {
  opacity: 1;
}
#header .anchrNavi .hvr-underline-reveal:before {
  background: #ff9c85;
  height: 3px;
}
#header .anchrNavi .hvr-underline-reveal.color2:before {
  background: #84e29a;
}
#header .anchrNavi .hvr-underline-reveal.color3:before {
  background: #6acfd2;
}
.spMenu {
  /*  background: #ffd702;*/
  background: #a9a9a9;
  box-shadow: 2px 6px 12px rgba(0,0,0,0.1);
  border-radius: 0 0 0 20px;
  cursor: pointer;
  display: table;
  height: 120px;
  width: 120px;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1010;
  text-align: center;
}
.spMenu .wrap {
  display: table-cell;
  vertical-align: middle;
}
.spMenu span {
  background-color: #FFF;
  display: inline-block;
  vertical-align: top;
  zoom: 1; /* Fix for IE7 */
 *display: inline; /* Fix for IE7 */
  height: 2px;
  width: 50px;
  position: absolute;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
      -webkit-transform: translateY(-50%) translateX(-50%);
      -ms-transform: translateY(-50%) translateX(-50%);
  -webkit-transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
  transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
}
.spMenu small {
  display: block;
  color: #FFF;
  font-size : 14px;
  font-weight: 600;
  width: 100%;
  text-align: center;
}
.spMenu .icon {
  max-width: 42px;
  width: 60%;
}
.spMenu span:nth-of-type(1) {
  top: 30px;
}
.spMenu span:nth-of-type(2) {
  top: 42px;
}
.spMenu span:nth-of-type(3) {
  top: 54px;
}
.spMenu.active {
  height: 120px;
  width: 120px;
}
/*.spMenu.active span {
  background-color: #000;
}*/
.spMenu.active span:nth-of-type(1) {
  -webkit-transform: translateY(10px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
  left: 40px;
}
.spMenu.active span:nth-of-type(2) {
  opacity: 0;
}
.spMenu.active span:nth-of-type(3) {
  -webkit-transform: translateY(-10px) rotate(45deg);
  transform: translateY(-5px) rotate(45deg);
  top: 47px;
  left: 40px;
}
/*.spMenu.active small {
  color: #000;
}*/
/*spNav*/
#spNav {
  height: 100%;
  display: block;
  font-size: 18px;
  transition: all 550ms ease 0.25s;
  visibility: hidden;
  padding-top: 59px;
  width: 80%;
  position: fixed;
  right: -100%;
  top: 0;
  z-index: 990;
  font-weight: bold;
}
#spNav.active {
  visibility: visible;
  right: 0;
}
#spNav #spBg {
  background: rgba(0,0,0,0.3);
  height: 100%;
  width: 500%;
  position: fixed;
  right: -50%;
  top: 0;
  z-index: -1;
  opacity: 0;
  transition: all 550ms ease 0.25s;
  pointer-events: none;
}
#spNav.active #spBg {
  right: 0;
  opacity: 1;
  pointer-events: auto;
}
#spNav::after {
  background: rgba(255,255,255,0.8);
  background-color: #fff;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
#spNav::before, #spNav::after {
  opacity: 0;
  transition: all 550ms ease 0.25s;
}
#spNav.active::before, #spNav.active::after {
  opacity: 1;
}
#spNav .closeBtn {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 3%;
  text-align: right;
}
#spNav .contact_btn {
  display: block;
  text-align: center;
  font-size: 16px;
}
#spNav nav {
  margin-top: 100px;
}
#spNav nav ul {
  overflow: hidden;
}
#spNav nav ul li {
  width: 50%;
  float: left;
}
#spNav nav ul li:nth-child(2n+1) {
  border-top: 1px solid #e3e3e3;
}
#spNav nav ul li:nth-child(2n) {
  border-left: 1px solid #e3e3e3;
  border-top: 1px solid #e3e3e3;
}
#spNav nav ul li:nth-child(n+7) {
  border-bottom: 1px solid #e3e3e3;
}
#spNav nav ul li a {
  text-align: center;
  display: block;
  padding: 15px 2em;
  position: relative;
}
#spNav nav ul li:last-child a:after {
  background: none;
}
#spNav nav .btn_contact a {
  padding: 1em 2em!important;
  width: 80%;
  max-width: 360px;
  margin: 0 auto;
}
#spNav nav .btn_contact {
  font-size: 16px;
  text-align: center;
  margin-top: 20px;
}
#spNav nav .btn_contact i:before {
  color: #fff;
  margin-right: 5px;
  font-size: 110%;
}
#spNav .hvr_arrow.pink i:before {
  color: #ff9c85;
}
#spNav li span {
  font-size: 14px;
  display: block;
}
#spNav .hvr_arrow.green i:before {
  color: #84e29a;
}
#spNav .hvr_arrow.blue i:before {
  color: #6acfd2;
}
/*breadChumbs*/
#breadChumbs {
  margin: 0 auto;
  padding: 20px 0;
  max-width: 1200px;
  width: 97%;
  z-index: 200;
  position: relative;
}
#breadChumbs p {
  font-size: 13px;
  margin: 0 10px;
}
#breadChumbs p a {
  display: inline-block;
}
#breadChumbs p i {
  font-size: 120%;
  vertical-align: text-top;
}
 /* indent
-------------------*/
.center {
  text-align: center!important;
}
.left {
  text-align: left!important;
}
.right {
  text-align: right!important;
}
.top0 {
  margin-top: 0 !important;
}
.top5 {
  margin-top: 5px !important;
}
.top10 {
  margin-top: 10px !important;
}
.top15 {
  margin-top: 15px !important;
}
.top20 {
  margin-top: 20px !important;
}
.top25 {
  margin-top: 25px !important;
}
.top30 {
  margin-top: 30px !important;
}
.top35 {
  margin-top: 35px !important;
}
.top40 {
  margin-top: 40px !important;
}
.top50 {
  margin-top: 50px !important;
}
.top60 {
  margin-top: 60px !important;
}
.btm0 {
  margin-bottom: 0 !important;
}
.btm5 {
  margin-bottom: 5px !important;
}
.btm10 {
  margin-bottom: 10px !important;
}
.btm15 {
  margin-bottom: 15px !important;
}
.btm20 {
  margin-bottom: 20px !important;
}
.btm25 {
  margin-bottom: 25px !important;
}
.btm30 {
  margin-bottom: 30px !important;
}
.btm35 {
  margin-bottom: 35px !important;
}
.btm40 {
  margin-bottom: 40px !important;
}
.btm45 {
  margin-bottom: 45px !important;
}
.btm50 {
  margin-bottom: 50px !important;
}
.btm55 {
  margin-bottom: 55px !important;
}
.btm60 {
  margin-bottom: 60px !important;
}
.btm65 {
  margin-bottom: 65px !important;
}
.btm70 {
  margin-bottom: 70px !important;
}
.btm75 {
  margin-bottom: 75px !important;
}
.btm80 {
  margin-bottom: 80px !important;
}
.btm85 {
  margin-bottom: 85px !important;
}
.btm90 {
  margin-bottom: 90px !important;
}
.btm95 {
  margin-bottom: 90px !important;
}
.pT0 {
  padding-top: 0!important;
}
.pT5 {
  padding-top: 5px!important;
}
.pT10 {
  padding-top: 10px!important;
}
.pT15 {
  padding-top: 15px!important;
}
.pT20 {
  padding-top: 20px!important;
}
.pT25 {
  padding-top: 25px!important;
}
.pT30 {
  padding-top: 30px!important;
}
.pT35 {
  padding-top: 35px!important;
}
.pT40 {
  padding-top: 40px!important;
}
.pT45 {
  padding-top: 45px!important;
}
.pB0 {
  padding-bottom: 0!important;
}
.pB5 {
  padding-bottom: 5px!important;
}
.pB10 {
  padding-bottom: 10px!important;
}
.pB15 {
  padding-bottom: 15px!important;
}
.pB20 {
  padding-bottom: 20px!important;
}
.lm5 {
  margin-left: 5px !important;
}
.lm10 {
  margin-left: 10px !important;
}
.lm15 {
  margin-left: 15px !important;
}
.lm20 {
  margin-left: 20px !important;
}
.lm50 {
  margin-left: 50px !important;
}
.lm60 {
  margin-left: 60px !important;
}
.lm70 {
  margin-left: 70px !important;
}
.rm5 {
  margin-right: 5px !important;
}
.rm10 {
  margin-right: 10px !important;
}
.rm15 {
  margin-right: 15px !important;
}
.rm20 {
  margin-right: 20px !important;
}
.vAT {
  vertical-align: top!important;
}
.vAM {
  vertical-align: middle!important;
}
.vAB {
  vertical-align: bottom!important;
}
.bold {
  font-weight: bold;
}
.italic{
  font-style: italic;
}
.normal {
  font-weight: normal;
}
.sp {
  display: none!important;
}
.pc {
  display: block!important;
}
.block {
  display: block;
}
.spTel {
  pointer-events: none;
}
.pc_center {
  text-align: center !important;
}
/*letter-spacing
-------------------*/
.letterS1 {
  letter-spacing: 0.5rem;
}
/*size
-------------------*/
.size10 {
  font-size: 1.0rem!important;
}
.size11 {
  font-size: 1.1rem!important;
}
.size12 {
  font-size: 1.2rem!important;
}
.size13 {
  font-size: 1.3rem!important;
}
.size14 {
  font-size: 1.4rem!important;
}
.size15 {
  font-size: 1.5rem!important;
}
.size16 {
  font-size: 1.6rem!important;
}
.size17 {
  font-size: 1.7rem!important;
}
.size18 {
  font-size: 1.8rem!important;
}
.size19 {
  font-size: 1.9rem!important;
}
.size20 {
  font-size: 2.0rem!important;
}
.size21 {
  font-size: 2.1rem!important;
}
.size22 {
  font-size: 2.2rem!important;
}
.size23 {
  font-size: 2.3rem!important;
}
.size24 {
  font-size: 2.4rem!important;
}
/* font
-------------------*/


.en {
  font-family: 'Arvo', serif;
}
.gothic {
  font-family: YuGothic, '游ゴシック', Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
}
/* wide
-------------------*/
.w5 {
  width: 5%!important;
}
.w10 {
  width: 10%!important;
}
.w15 {
  width: 15%!important;
}
.w18 {
  width: 18%!important;
}
.w20 {
  width: 20%!important;
}
.w25 {
  width: 25%!important;
}
.w30 {
  width: 30%!important;
}
.w35 {
  width: 35%!important;
}
.w40 {
  width: 40%!important;
}
.w45 {
  width: 45%!important;
}
.w50 {
  width: 50%!important;
}
.w55 {
  width: 55%!important;
}
.w60 {
  width: 60%!important;
}
.w65 {
  width: 65%!important;
}
.w70 {
  width: 70%!important;
}
.w75 {
  width: 75%!important;
}
.w80 {
  width: 80%!important;
}
.w85 {
  width: 85%!important;
}
.w90 {
  width: 90%!important;
}
.w95 {
  width: 95%!important;
}
.wFull {
  width: 100%!important;
  height: auto;
}
/* section
-------------------*/

.scInr {
  margin: 0 auto;
  max-width: 1200px;
  width: 97%;
}
.scInrS {
  margin: 0 auto;
  max-width: 1000px;
  width: 97%;
}
.scInrSS {
  margin: 0 auto;
  max-width: 1000px;
  width: 90%;
}
.scInrW {
  margin: 0 auto;
  max-width: 1400px;
  width: 97%;
}
.aural span, span.aural {
  display: none;
  visibility: hidden;
}
/*float*/
.fltImgL {
  float: left;
  margin: 0 25px 20px 0;
}
.fltImgR {
  float: right;
  margin: 0 0 20px 25px;
}
.fltL {
  float: left;
}
.fltR {
  float: right;
}
.w100 {
  width: 100px;
}
.w200 {
  width: 200px;
}
.w300 {
  width: 300px;
}
.w400 {
  width: 400px;
}
.w450 {
  width: 450px;
}
.w500 {
  width: 500px;
}
.w600 {
  width: 600px;
}
/*float-clear*/
.cf:before, .cf:after {
  content: "";
  display: table;
}
.cf:after {
  clear: both;
}
.cf {
  zoom: 1;
}
br.clear, .clear {
  display: inline !important;
  display: none;
  clear: both;
  line-height: 0px;
}
br.clear {
  clear: both;
  line-height: 0px;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
br.clear {
  display: block!important;
  content: " ";
}
}
/*column*/
.clm4 {
  overflow: hidden;
}
.clm4 li {
  float: left;
  margin-bottom: 20px;
  margin-right: 1.3%;
  width: 24%;
}
.clm4 li:nth-child(4n) {
  margin-right: 0;
}
.clm4 figcaption {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 10px;
  line-height: 1.4;
}
.clm3 {
  overflow: hidden;
}
.clm3 li {
  float: left;
  margin-right: 1.3%;
  width: 32.4%;
}
.clm3 li:nth-child(3n) {
  margin-right: 0;
}
.clm3 figcaption {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 10px;
  line-height: 1.4;
}
.clm2 {
  overflow: hidden;
}
.clm2 li {
  float: left;
  margin-bottom: 20px;
  width: 48.5%;
}
.clm2 li.even, .clm2 li:nth-child(2n) {
  float: right;
}
.clm2 figcaption {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 10px;
  line-height: 1.4;
}
.clm4 li .img, .clm3 li .img, .clm2 li .img {
  border: 1px solid #CCC;
  display: table;
  line-height: 0;
  margin-bottom: 10px;
  height: 150px;
  width: 100%;
}
.clm4 li .img span, .clm3 li .img span, .clm2 li .img span {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  line-height: 0;
}
.clm4 li .img span img, .clm3 li .img span img, .clm2 li .img span img {
  max-height: 150px;
  max-width: 100%;
  line-height: 0;
}
/* pager
-------------------*/
.pager {
  padding-top: 20px;
  text-align: center;
}
.pager a {
  border: 1px solid #448CBC;
  color: #448CBC;
  display: inline-block;
  line-height: 1;
  margin: 0 2px;
  padding: 10px 12px;
  text-decoration: none;
  position: relative;
}
.pager a:hover, .pager a.current {
  background-color: #448CBC;
  border: 1px solid #448CBC;
  color: #FFF;
}
.pager a::after {
  content: attr(data-text);
}
.pager a:last-child::after {
  display: none;
}
.pager a:last-child::before {
  content: attr(data-text);
}
/*topcontrol*/
#topcontrol {
  z-index: 900;
}
#topcontrol a {
  background: url(../cmn_img/scrollup.png) center center no-repeat #f4947e;
  background : url(../cmn_img/scrollup.gif) center center no-repeat\9 #f4947e; /* IE8 */
 *background : url(../cmn_img/scrollup.gif) center center no-repeat #f4947e; /* IE7 */
  _background : url(../cmn_img/scrollup.gif) center center no-repeat #f4947e; /* IE6 */
  display: block;
  height: 50px;
  width: 50px;
  filter: alpha(opacity=70) !important;
  opacity: 0.7 !important;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
#topcontrol a:hover {
  filter: alpha(opacity=10) !important;
  opacity: 1 !important;
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -ms-transform: scale(1.2);
  -o-transform: scale(1.2);
  transform: scale(1.2);
}
/*roBtn*/
.roBtn:hover {
  filter: alpha(opacity=80);
  -moz-opacity: 0.8;
  opacity: 0.8;
}
/* IE8 */
html>/**/body .roBtn:hover {
  display /*\**/: inline-block\9;
  zoom /*\**/: 1\9;
}

/* 新旧Firefox */
.roBtn:hover, x:-moz-any-link {
 background: #fff;
}
.roBtn:hover, x:-moz-any-link, x:default {
 background: #fff;
}
/* form
-------------------*/
.subscribeBtn {
  text-align: center;
  margin-bottom: 40px;
}
.subscribeBtn input {
  background-color: #000;
  border: 1px solid #000;
  color: #FFF;
  display: inline-block;
  padding: 15px 100px 13px;
  line-height: 140%;
  text-decoration: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
.subscribeBtn input:hover {
  background-color: #FFF;
  color: #000;
}
.subscribeBtn input.gray {
  background-color: #666;
  border: 1px solid #666;
  color: #FFF;
}
.subscribeBtn input.gray:hover {
  background-color: #ddd;
  color: #000;
}
input.textFocus {
  color: #333;
}
input.wSS, input.wS, input.wM, input.wL, input.wLL {
  background-color: #FCFBF8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #CCC;
  font-size: 1.3rem;
  line-height: 140%;
  padding: 8px 10px;
}
input {
  vertical-align: middle;
}
.wSS {
  width: 85px;
}
.wS {
  width: 170px;
}
.wM {
  width: 270px;
}
.wL {
  width: 470px;
}
.wLL {
  width: 340px;
}
.imeOn {
  ime-mode: active;
}
.imeOff {
  ime-mode: disabled;
}
textarea.txtarea {
  background-color: #FCFBF8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #CCC;
  height: 200px;
  padding: 10px;
  width: 100%;
}
option {
  font-size: 1.4rem!important;
}
label {
  cursor: pointer;
}
label:hover {
  color: #999;
}
input[type="checkbox"], input[type="radio"] {
  margin-right: 3px;
}
.formErr {
  color: #E54E52;
  font-weight: bold;
}
select.slctArea {
  background-color: #FCFBF8;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #CCC;
  margin-bottom: 5px;
  padding: 8px;
}
input.inputErr, textarea.inputErr {
  background-color: #FADFDE;
}
input:focus, select:focus, textarea:focus {
  background-color: #EEE;
}
.req {
  background-color: #a40000;
  color: #FFF;
  font-size: 1.1rem;
  margin-left: 3px;
  padding: 2px 5px;
  margin-right: 5px;
  vertical-align: middle;
}
.errText {
  background-color: #fee8e6;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  color: #db584b;
  font-size: 1.1rem;
  padding: 3px 5px;
  margin-top: 5px;
}
.cauText {
  color: #333;
  font-size: 1.1rem;
  line-height: 1.4!important;
  margin-top: 5px;
}
.caution {
  font-size: 80%;
  padding-left: 1.2em;
  position: relative;
  display: inline-block;
}
.caution::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
/*contents*/
/*header*/

.btn_contact a {
  color: #fff;
  background: #cfaf90;
  border-radius: 5px;
  padding: 1em 2em!important;
  display: block;
}
#contents {
  width: 100%;
  overflow-x: hidden;
  margin-top: 100px;
}
/*footer*/
#footer {
  background-color: #a9a9a9;
  position: relative;
  text-align: center;
  z-index: 0;
}
#footer a {
  display: block;
}
#footer .logo {
  display: inline-block;
  background-image: url(/r_rshinko/lib/cmn_img/footer_logo_bg.jpg);
  background-repeat: no-repeat;
  background-size: contain;
  box-shadow: 2px 12px 12px rgba(0,0,0,0.1);
  margin: 0 auto;
  text-align: center;
  padding: 22px 21px;
  margin-bottom: 50px;
}
#footer .logo img {
  width: 160px;
}
#footer .logo .en {
  font-size: 10px;
  display: block;
  margin-top: 10px;
}
#footer small#copyright {
  color: #fff;
  display: block;
  font-size: 14pxrem!important;
  padding: 10px 0;
  text-align: center;
  width: 100%;
}
#footer a:hover {
  opacity: 0.7;
}

.bnr_box {
  max-width: 540px;
}

@media only screen and (max-width: 1115px) {
}

/* for SP
-------------------------------------------------------------------------------------*/

@media only screen and (max-width: 768px) {
/* base contents
-------------------*/
/*spheader*/

#header {
  height: 60px;
}
#header .hdL {
  padding-left: 0;
}
#header .hdL .logo img {
  width: 180px;
  padding-top: 8px;
}
#header .hdL span {
  font-size: 8px;
  padding-left: 1em;
  margin-top: 3px;
}
#header .hdL .logo span.sub {
  display: none;
}
#header .hdR {
  display: none;
}
.spMenu {
  height: 65px;
  width: 65px;
}
.spMenu span {
  width: 23px;
}
.spMenu small {
  font-size : 12px;
  bottom: 15px;
}
.spMenu .icon {
  width: 22px;
}
.spMenu span:nth-of-type(1) {
  top: 15px;
}
.spMenu span:nth-of-type(2) {
  top: 22px;
}
.spMenu span:nth-of-type(3) {
  top: 29px;
}
.spMenu.active {
  height: 65px;
  width: 65px;
}
.spMenu.active span:nth-of-type(1) {
  top: 12px;
  left: 21px;
}
.spMenu.active span:nth-of-type(3) {
  top: 27px;
  left: 21px;
}
/*spNav*/
#spNav .contact_btn {
  font-size: 14px;
  margin-top: 40px!important;
}
#spNav {
  width: 90%;
}
#spNav #spBg {
  background: rgba(0,0,0,0.3);
}
#spNav.active #spBg {
  right: 0;
  opacity: 1;
  pointer-events: auto;
}
#spNav nav {
  margin-top: 40px;
}
#spNav nav ul {
  overflow: hidden;
}
#spNav li span {
  font-size: 13px;
}
#spNav nav ul li a {
  padding: 15px 0.8rem;
  font-size: 15px;
}
/* hover_action
-------------------*/


.hvr_arrow i:before {
  margin-left: 5px;
}
.hvr_arrow:hover i:before {
  margin-left: 10px;
  font-size: 100%;
}
.sp {
  display: block!important;
}
.pc {
  display: none!important;
}
/*breadChumbs*/
#breadChumbs {
  display: none;
}
/*contents*/
#contents {
  margin-top: 75px;
}
#contents p {
  line-height: 1.7;
}
/*SPfooter*/


#footer .logo {
  padding: 10px 20px;
  margin-bottom: 20px;
}
#footer .logo img {
  width: 72px;
}
#footer small#copyright {
  font-size: 12pxrem!important;
}
/* indent
-------------------*/
body {
  margin-top: 60px;
  font-size: 14px;
  font-size: 1.4rem;
}
.spImg {
  max-width: 100%;
}
a.spTel {
  color: #448cbc;
  pointer-events: auto;
  text-decoration: underline;
}
.pc_center {
  text-align: left !important;
}
.top10 {
  margin-top: 5px !important;
}
.top15 {
  margin-top: 5px !important;
}
.top20 {
  margin-top: 10px !important;
}
.top25 {
  margin-top: 10px !important;
}
.top30 {
  margin-top: 15px !important;
}
.top35 {
  margin-top: 15px !important;
}
.top40 {
  margin-top: 20px !important;
}
.top45 {
  margin-top: 20px !important;
}
.top50 {
  margin-top: 25px !important;
}
.top55 {
  margin-top: 25px !important;
}
.top60 {
  margin-top: 30px !important;
}
.btm0 {
  margin-bottom: 0 !important;
}
.btm5 {
  margin-bottom: 5px !important;
}
.btm10 {
  margin-bottom: 5px !important;
}
.btm15 {
  margin-bottom: 10px !important;
}
.btm20 {
  margin-bottom: 10px !important;
}
.btm25 {
  margin-bottom: 10px !important;
}
.btm30 {
  margin-bottom: 15px !important;
}
.btm35 {
  margin-bottom: 15px !important;
}
.btm40 {
  margin-bottom: 20px !important;
}
.btm45 {
  margin-bottom: 20px !important;
}
.btm50 {
  margin-bottom: 25px !important;
}
.btm55 {
  margin-bottom: 25px !important;
}
.btm60 {
  margin-bottom: 30px !important;
}
.btm65 {
  margin-bottom: 30px !important;
}
.btm70 {
  margin-bottom: 35px !important;
}
.btm75 {
  margin-bottom: 35px !important;
}
.btm80 {
  margin-bottom: 40px !important;
}
.btm85 {
  margin-bottom: 40px !important;
}
.btm90 {
  margin-bottom: 45px !important;
}
.btm95 {
  margin-bottom: 45px !important;
}
.pT0 {
  padding-top: 0!important;
}
.pT5 {
  padding-top: 5px!important;
}
.pT10 {
  padding-top: 5px!important;
}
.pT15 {
  padding-top: 10px!important;
}
.pT20 {
  padding-top: 10px!important;
}
.pT25 {
  padding-top: 15px!important;
}
.pT30 {
  padding-top: 15px!important;
}
.pT35 {
  padding-top: 15px!important;
}
.pT40 {
  padding-top: 20px!important;
}
.pT45 {
  padding-top: 20px!important;
}
.pB0 {
  padding-bottom: 0!important;
}
.pB5 {
  padding-bottom: 5px!important;
}
.pB10 {
  padding-bottom: 5px!important;
}
.pB15 {
  padding-bottom: 5px!important;
}
.pB20 {
  padding-bottom: 10px!important;
}
.lm5 {
  margin-left: 5px !important;
}
.lm10 {
  margin-left: 5px !important;
}
.lm15 {
  margin-left: 5px !important;
}
.lm20 {
  margin-left: 10px !important;
}
.lm50 {
  margin-left: 20px !important;
}
.lm60 {
  margin-left: 30px !important;
}
.lm70 {
  margin-left: 30px !important;
}
.rm5 {
  margin-right: 5px !important;
}
.rm10 {
  margin-right: 5px !important;
}
.rm15 {
  margin-right: 5px !important;
}
.rm20 {
  margin-right: 10px !important;
}
.spBtm0 {
  margin-bottom: 0 !important;
}
.spBtm5 {
  margin-bottom: 5px !important;
}
.spBtm10 {
  margin-bottom: 10px !important;
}
.spBtm15 {
  margin-bottom: 15px !important;
}
.spBtm20 {
  margin-bottom: 20px !important;
}
.spBtm25 {
  margin-bottom: 25px !important;
}
.spBtm30 {
  margin-bottom: 30px !important;
}
.spBtm35 {
  margin-bottom: 35px !important;
}
.spBtm40 {
  margin-bottom: 40px !important;
}
.spBtm45 {
  margin-bottom: 45px !important;
}
.spBtm50 {
  margin-bottom: 50px !important;
}
.spW100 {
  width: 100%!important;
  height: auto;
}
/* section
-------------------*/

section.sameSpace {
  padding: 40px 0;
}
.scInr, .scInrS, .scInrW {
  float: none;
  margin: 0 3%;
  width: auto;
}
/*table*/
.bscTbl01 th, .bscTbl01 td {
  display: block;
  font-size: 1.1rem;
  padding: 10px 3%;
  width: 100%!important;
}
.bscTbl01.scroll th, .bscTbl01.scroll td {
  display: table-cell;
}
.tblScroll {
  padding-bottom: 5px;
}
.tblScroll::before {
  content: '※横スクロールができます。';
  display: block;
  margin-bottom: 10px;
}
/*float*/
.fltL, .fltR {
  float: none;
}
.fltImgL, .fltImgR {
  float: none;
  margin: 0;
  text-align: center;
}
.fltImgL img, .fltImgR img {
  max-width: 100%;
  margin-bottom: 5px;
}
br.clear_noie.spHide, div.clear_noie.spHide {
  display: none!important;
}
/*column*/
.clm4 li {
  float: left;
  margin-right: 0;
  width: 48.5%;
}
.clm4 li.even, .clm4 li:nth-child(2n) {
  float: right;
}
.clm4 li:nth-child(4n) {
  margin-right: 0!important;
}
.clm3 li {
  float: none;
  margin-right: 0;
  width: 80%;
  margin: 0 auto 20px;
}
.clm3 li:last-child {
  margin: 0 10%;
}
/* pager
-------------------*/

.pager a::before, .pager a::after {
  display: none;
}
/* form
-------------------*/

.subscribeBtn input {
  padding: 15px 0 13px;
  margin-top: 5px;
  width: 100%;
}
input.wSS, input.wS, input.wM, input.wL, input.wLL {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.wSS {
  width: 30%;
}
.wS {
  width: 50%;
}
.wM {
  width: 100%;
}
.wL {
  width: 100%;
}
.wLL {
  width: 100%;
}
.imeOn {
  ime-mode: active;
}
.imeOff {
  ime-mode: disabled;
}
textarea.txtarea {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  height: 200px;
  width: 100%;
}
select.timearea {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
}
option {
  font-size: 1.4rem!important;
}
label {
  cursor: pointer;
}
label:hover {
  color: #999;
}
input[type="checkbox"], input[type="radio"] {
  margin-right: 3px;
}
.formErr {
  color: #E54E52;
  font-weight: bold;
}
input.inputErr, textarea.inputErr {
  background-color: #FADFDE;
}
.req {
  color: #FFF;
  font-size: 10px;
  line-height: 100%;
  margin-left: 3px;
  padding: 2px 5px;
  margin-right: 5px;
  vertical-align: middle;
}
.cauText {
  display: block;
}
.bnr_box {
  max-width: 100%;
}
}
/*@media only screen and (max-width: 640px) {
.newsList li .img {
  float: none;
  width: 100%;
}
.newsList li .img span img {
  max-height: 100px;
}
.newsList li a {
  height: auto;
}
.newsList li a::before, .newsList li a::after {
  display: none;
}
.newsList li .tx {
  line-height: 1.5!important;
  display: block;
  height: 60px;
  overflow: hidden;
  position: relative;
}
.newsList li .tx::before {
  background-color: #fff;
  bottom: 0;
  content: "…";
  position: absolute;
  right: 0;
}
.newsList li .tx::after {
  background-color: #fff;
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
}*/



/*SP END*/

.spHide { display: block; }
.spDisp { display: none; }

@media only screen and (max-width: 768px) {
  .spHide { display: none; }
  .spDisp { display: block; }
}



