@charset "UTF-8";
/* ------------------------------------------------------------------
	Font&Link
-------------------------------------------------------------------*/
html {
  color: #555;
  font-size: 62.5%;
}
body {
  background: #fff;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  font-family: "メイリオ", Meiryo, Osaka, sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
  font-size: 1.4rem;
  line-height: 1.8;
}
a {
  color: #000;
  text-decoration: none;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -ms-transition: all 0.4s;
  transition: all 0.4s;
}
a:hover, a:focus, a:active {
  text-decoration: none;
}
a img {
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -ms-transition: all 0.4s;
  transition: all 0.4s;
}
a:hover img {
  opacity: 0.7;
}
.touchHover, .noTapColor, button {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* ------------------------------------------------------------------
	Base
-------------------------------------------------------------------*/
body {
  position: relative;
  background: #fff;
}
body, html {
  height: 100%;
}


/* ------------------------------------------------------------------
	Header
-------------------------------------------------------------------*/
#header {
  height: 50px;
  width: 100%;
  z-index: 100;
  transition: 0.4s all;
  background: transparent;
  color:#fff;
  position: relative;
  top: 0;
}

#header .headerInner {
  height: 50px;
  max-width:1200px;
  margin:0px auto;
  position: relative;
  padding: 0px 10px;
}

#header #headerLogo {
  width: 120px;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  opacity:0;
  transition: 0.4s all;
  padding: 5px;
}

#header.fixed {
  background: #fff;
  transition: 0.4s all;
  height: 50px;
  box-shadow: 0px 1px 1px rgba(0,0,0,0.1);
}
#header.fixed .headerInner {
  height: 50px;
  max-width:1200px;
  margin:0px auto;
  transition: 0.4s all;
  position: relative;
  padding: 0px 10px;
}

#header.fixed  #headerLogo {
  width: 80px;
  position: absolute;
  top: 50%;
  left: 10px;
  transform: translateY(-50%);
  display:block;
  transition: 0.4s all;
  opacity:1;
  padding: 5px;
}
#header.fixed ul.subnavi {
  float: right;
  margin-top: 10px;
  transition: 0.4s all;
}
ul.subnavi {
  float: right;
  margin-top: 10px;
  transition: 0.4s all;
}
ul.subnavi li {
  line-height:1;
}
ul.subnavi li a {
  text-align: center;
  display: block;
  border: 1px solid #0d4080;
  padding: 10px;
  background:#fff;
  color:#0d4080;
  font-weight:bold;
  font-size: 10px;
}
ul.subnavi li a:hover {
  border:2px solid #0d4080;
  padding:10px 20px;
  background:#0d4080;
  cursor: pointer;
  color:#fff;
}



h1 {
  width: 100%;
  text-align: center;
  margin: 0;
}

#header .beforeFix {
  display: block;
  transition: 0.4 all;
}
#header .afterFix {
  display: none;
}
#header.fixed .beforeFix {
  display: none;
  transition: 0.4 all;
}


#header.fixed .afterFix {
  display: block;
  transition: 0.4 all;
}
#fixnavi {
  display: block;
  position: fixed;
  bottom: 0px;
  background: #000;
  padding: 10px 0px;
  width: 100%;
  opacity:0;
  transition: 0.4s all;
}
#fixnavi a {
  display: block;
  line-height: 40px;
  text-align: center;
  width: 90%;
  background: #d40000;
  color: #fff;
  margin: 0px auto;
  border-radius: 3px;
  font-weight: bold;
}
#fixnavi.scroll {
  transition: 0.4s all;
  opacity: 1;
  box-shadow: 0px -1px 1px rgba(0,0,0,0.2);
}
.gradient {
  background: linear-gradient(128deg, #77c9de, #85bcc9, #aec94d);
  background-size: 600% 600%;
  -webkit-animation: AnimationName 9s ease infinite;
  -moz-animation: AnimationName 9s ease infinite;
  animation: AnimationName 9s ease infinite;
  width: 100%;
  height: 100%;
  opacity: 0.3;
}
@-webkit-keyframes AnimationName {
    0%{background-position:0% 87%}
    50%{background-position:100% 14%}
    100%{background-position:0% 87%}
}
@-moz-keyframes AnimationName {
    0%{background-position:0% 87%}
    50%{background-position:100% 14%}
    100%{background-position:0% 87%}
}
@keyframes AnimationName { 
    0%{background-position:0% 87%}
    50%{background-position:100% 14%}
    100%{background-position:0% 87%}
}


#keyv {
    width: 100%;
    position: relative;
    background-image: url(../../img/bg.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    margin: 0px auto;
}

#keyv .keyvOverlay {
  width: 100%;
  margin: 0px auto;
  padding: 0px;
  position: relative;
  max-width: 1200px;
}

/* ------------------------------------------------------------------
	Main Content
-------------------------------------------------------------------*/
.actionBlockWrapper {
  padding: 10px 0 1px;
  background: #FEDC5E;
}
.actionBlock {
  padding: 0 10px;
  margin: 0 auto;
  animation: vertical 1s ease-in-out infinite alternate;
}
@keyframes vertical {
    0% { transform:translateY( -5px); }
  100% { transform:translateY(  5px); }
}
.actionBlock a {
  width: 100%;
  display: block;
  padding: 15px 0;
  margin: 0 auto 25px;
  position: relative;
  border-radius: 60px;
  transition: .1s;
  font-size: 2.1rem;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  background: #FF6363;
  border: none;
  box-shadow: 0 3px 0 #AC2727;
  color: #fff;
}
.actionBlock a::before,
.actionBlock a::after {
  position: absolute;
  top: 48%;
  right: 15px;
  display: block;
  content: '';
  width: 10px;
  height: 3px;
  background: #333;
  border-radius: 4px;
}
.actionBlock a::before {
  margin-top: -4px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  background: #fff;
}
.actionBlock a::after {
  margin-top: 2px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  background: #fff;
}
.actionBlock a:hover {
  box-shadow: none;
  -ms-transform: translateY(3px);
  transform: translateY(3px);
}
.actionBlock a span {
  display: block;
  font-size: 1.4rem;
}
.block {
  padding-top: 30px;
}
.leadText span {
  color: #FF6363;
  font-weight: bold;
}
h2 {
  padding: 0 20px;
  margin-bottom: 10px;
  text-align: center;
}
h2 .title_small {
  margin-bottom: 30px;
  position: relative;
  font-weight: bold;
  font-size: 1.2rem;
  color: #348CFF;
}
h2 .title_small::before {
  width: 50px;
  height: 2px;
  content: "";
  background: #348CFF;
  position: absolute;
  bottom: -10px;
  left: 50%;
  margin-left: -25px;
}
h2 .title_large {
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 2.6rem;
}
h2 .title_large span {
  display: block;
}
.leadText {
  padding: 0 20px;
  text-align: left;
}
.contnetsSlide {
  padding: 30px 0;
}
.contnetsSlide li {
  height: auto;
  margin-right: 10px;
}
.img_woman {
  width: 80%;
  margin: 20px auto;
}
.contentList {
  position: relative;
  background: linear-gradient(45deg, #E06A62, #FF7D54);
}
.decoText.sp {
  display: none;
}
.contentList ul {
  padding: 30px 20px;
  margin: 0 auto;
}
.contentList li {
  width: 100%;
  padding: 20px;
  margin-bottom: 20px;
  box-sizing: border-box;
  box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.2);
  border-radius:  30px 0 30px 0;
  display: flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  background: #fff;
}
.contentList li:last-child {
  margin-bottom: 0;
}
.contentList li p {
  font-size: 2rem;
  font-weight: bold;
}
.contentList li img {
  margin-bottom: 5px;
}
.searchList {
  margin: 0 20px;
}
.searchList li {
  margin-bottom: 20px;
  box-sizing: border-box;
  border: 1px solid #CECECE;
  border-radius: 10px;
  box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.2);
  font-size: 2rem;
  text-align: center;
}
.searchList li img {
  width: 100%;
  border-radius: 10px 10px 0 0;
  border-bottom: 1px solid #CECECE;
}
.searchList li > div  {
  padding: 20px;
  font-weight: bold;
}
.searchList li > div > p {
  margin-bottom: 5px;
}
.searchList li > div > div {
  text-align: left;
  font-size: 1.4rem;
  font-weight: normal;
}
/* ------------------------------------------------------------------
	Footer
-------------------------------------------------------------------*/
footer {
  background: #d6d6d6;
  color: #000;
  margin-top: 50px;
  padding: 60px 0px 90px;
}

.footerLogo {
  width: 60%;
  margin: 0px auto 10px;
}

.footerLogo + p {
  text-align: center;
}

ul.addressList {
  text-align: center;
  margin-bottom: 40px;
}

ul.addressList li {
}

ul.footermenu {
  margin-left: -15px;
  margin-right: -15px;
}

ul.footermenu li {
  width: 100%;
  position: relative;
}
ul.footermenu li a {
  color: #000;
  display: block;
  padding: 15px 0px 15px 20px;
  border-top: 1px solid #c1c0c0;
}
ul.footermenu li a:hover {
  opacity:0.8;
  text-decoration:underline;
}
ul.footermenu li:last-child a {
  border-bottom: 1px solid #c1c0c0;
}
ul.navi {}

ul.footermenu li::before {
  content:'\f105';
  font-family:"FontAwesome";

  padding-right:20px;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}


/* ---------------------------------------------------------------------- */
/*  bootstrap Overwrite
/* ---------------------------------------------------------------------- */
.input-group-addon {
  background-color: #6bc7f1 !important;
	color: #FFF !important;

  border: 1px solid #ccc;
	border-right: none !important;
}
.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  -webkit-box-shadow: 0 0px 20px rgba(0, 0, 0, .1);
          box-shadow: 0 0px 20px rgba(0, 0, 0, .1);
}

.panel-heading img{
  width:160px;
}


