@charset "utf-8";
/* CSS Document */
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css);

html {
  font-size: 12px;
}
img{
  max-width: 100%;
  max-height: 100%;
}
body {
  font-family: "メイリオ", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
  color: #2f4f4f;
  background: url(../images/bg.png);
  position: relative;
  overflow-x: hidden;
}
.opacity:hover{
  opacity: 0.7;
}
.meiryo {
  font-family: "メイリオ";
}

.yugothic {
  font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体";
}

.kakugo {
  "ヒラギノ角ゴ Pro W3";
}

#wrapper {
  position: relative;
  width: 100%;
  padding: 0;
  margin: 0 auto;
}

main {
  padding: 0 0 0;
  width: 80%;
  margin: 0 auto;
}

/*トップボタン*/
.topBtn {
  position: fixed;
  bottom: 20px;
  right: 30px;
  display: block;
  background-color: rgba(132, 193, 45, 1);
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  font-size: 19px;
  width: 70px;
  height: 70px;
  text-align: center;
  line-height: 22px;
  border-radius: 40px;
  padding-top: 30px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.topBtn:before {
  content: '\25B2';
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  text-align: center;
  font-size: 20px;
}

.topBtn:hover {
  opacity: 0.7;
}

/*-----------------chr.htmlー---------------------*/

.fade_off {
  opacity: 0;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  -ms-transition: all 1s;
  transition: all 1s;
}

.fade_on {
  opacity: 1;
}

/*-----------------concept.htmlー---------------------*/


body#push {
  background: url(../images/bg.png);
  background-repeat:repeat-x;
  background-attachment: fixed;
}

.concept_head {
  position: relative;
}

.concept_head h1 {

}

.push_logo{
  position: absolute;
      top: 62%;
      left: 50%;
      transform: translateX(-50%);
      width: 89%;
}

img.concept_arrow {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.sns{
  position: absolute;
      top: 2%;
      left: 2%;
      width: 14%;
      display: flex;
      flex-direction: row;
      justify-content: space-between;
}

.sns a{
  width: 45%;
  margin: 0 1%;
}


.whats {
  width: 100%;
  text-align: center;
  margin: 0% auto;
  position: relative;
}

.kart{
  position: absolute;
      top: 11.5%;
      left: 53%;
      width: 36%;
}

.kart img{
width: 45%;
margin: 0 1%;
}

.smp1{
  position: absolute;
      top: 22.5%;
      left: 61%;
      width: 29%;
      display: flex;
      flex-direction: row;
      /*justify-content: space-between;*/
      justify-content: center;
      flex-wrap: wrap;
}

.smp2{
  position: absolute;
      top: 51.2%;
      left: 79%;
      width: 9%;
      display: flex;
      /* flex-direction: row; */
      flex-direction: column;
}

.smp1 a{
width: 30%;
margin: 0 1%;
}
.smp1 a img{
  width: 100%;
}
.melontop{
  position: absolute;
  bottom: 10%;
  left: 50%;
  transform: translate(-50%, 0);
  width: 26%;
}

.portal{
  position: absolute;
      bottom: 1%;
      left: 50%;
      transform: translate(-50%, 0);
      width: 50%;
}

/*-----------------concept.htmlー---------------------*/
.hide {
  display: none;
}
/*-----------------ここからトップに戻る---------------------*/
#page-top {
  position: fixed;
  bottom: 10px;
  right: 20px;
  font-size: 48px;
  z-index: 3;
}

#page-top a {
  background-color: red;
  box-sizing: border-box;
  text-decoration: none;
  color: #fff;
  width: 70px;
  height: 70px;
  padding: 0 0 5px;
  text-align: center;
  display: block;
  *text-indent: -9999px;
  border-radius: 70px;
}

#page-top a:hover {
  width: 70px;
  height: 70px;
  background: #F86E70;
}

.p_text:before {
  content: "";
  font-size: 48px;
  width: 25px;
  height: 25px;
  padding: 10px 12px 5px
}

/*-----------------ここからトップに戻る---------------------*/
@media screen and (max-width:1200px) {
  #wrapper {
    width: 100%;
  }

  #header {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: space-between;
    justify-content: flex-end;
  }

  h1 img {
    width: 100%;
  }

}

@media screen and (max-width:700px) {
  main {
    padding: 0 0 0 0;
    width: 100%;
    margin: 0 auto;
  }

}
