@charset "UTF-8";
/* --------------------
base
-------------------- */
body {
	height:100%;
	width: 100%;
  color: #eee;
  font-family: Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
overflow-x: hidden;}

table {
  table-layout: fixed; }

a {
  text-decoration: none;
  color: #eee; }
  a:hover {
    text-decoration: underline; }

.img-responsive {
  max-width: 100%; }

.text-center {
  text-align: center;
  width:auto;
  height: auto;}

.text-right {
  text-align: right; }

.pull-left {
  float: left; }

.pull-right {
  float: right; }

.uchikeshi{
	text-decoration:line-through;
	}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table; }
.clearfix:after {
  clear: both; }

.container {
  position: relative;
  width: 980px;
  margin: auto; }
  @media only screen and (max-width: 640px) {
    .container {
      width: 100%;
      max-width: 100%;
      margin: 0; }
}

.nav {
  padding: 0;
  list-style-type: none; }
  .nav li {
    float: left; }



#page {background:url(../img/k60.png);z-index: 1;}
@media only screen and (min-width: 640px) {
  #page {
    min-width: 980px;
	 } }


@media only screen and (max-width: 640px) {
  img {
    max-width: 100%;
	} }
.heading {
  position: relative;
	top: -250px;
	font-size: 0.8em;
}


.heading-line {
  position: absolute;
  width: 370px;
  border-color: #fff;
  border-width: 0 0 3px;
  border-style: solid; }
  @media only screen and (max-width: 640px) {
    .heading-line {
      display: none; } }

.heading-line-mid {
  width: 80%;
  border-color: #fff;
  border-width:0 0 3px;
  border-style: solid; }
  @media only screen and (max-width: 640px) {
    .heading-line {
      display: none; } }


.heading-line-left {
  top: 27px;
  left: 0; }

.heading-line-right {
  top: 27px;
  right: 0; }

.decoration-heading {
  display: inline-block;
  position: relative;
  height: 2em;
  line-height: 2em;
  font-size: 1.2em; }
  @media only screen and (max-width: 640px) {
    .decoration-heading {
      height: auto;
      line-height: 1.3em;
      font-size: 1.2em; } }
  @media only screen and (min-width: 640px) {
    .decoration-heading:before {
      height: 51px !important;
      position: absolute;
      top: 1em;
      left: -1em;
      margin-top: -0.8em;
      content: url("../img/svg/img_deco_left.svg"); }
    .decoration-heading:after {
      height: 51px !important;
      position: absolute;
      top: 50%;
      right: -1em;
      margin-top: -0.8em;
      content: url("../img/svg/img_deco_right.svg"); } }

.heading-2 {
  text-align: center; 
	margin: 20px 40px;
}

.heading-2 h2 {
	line-height: 1.8em;
/*	padding: 0 100px; */
}


@media only screen (max-width: 640px){
		.heading-2 .inter h2 p{
			font-size: 20px;
		}
	}

@media screen and (max-width: 640px){
	.heading-2 h1{
		font-size: 20px;
	}

	.heading-2 h2{
		font-size: 15px;
	}

	.heading-2 h3{
		font-size: 12px;
	}

	.hagi_form{
		font-size: 12px;
	}
}


.heading-2-large h1, .heading-2-large h2, .heading-2-large h3, .heading-2-large h4, .heading-2-large h5 {
  line-height: 2.5em;
  font-size: 2.5em; }

.decoration-link {
  display: inline-block;
  position: relative;
  height: 4em;
  line-height: 4em;
  font-size: 1.6em; }
  @media only screen and (max-width: 640px) {
    .decoration-link {
      font-size: 1.4em;
      line-height: 1.4em;
      height: auto; } }
  @media only screen and (min-width: 640px) {
    .decoration-link:before {
      height: 51px !important;
      position: absolute;
      top: 50%;
      left: -1.2em;
      margin-top: -1.4em;
      content: url("../img/svg/img_deco_left.svg"); }
    .decoration-link:after {
      height: 51px !important;
      position: absolute;
      top: 50%;
      right: -1.2em;
      margin-top: -1.4em;
      content: url("../img/svg/img_deco_right.svg"); } }

.btn-link {
  position: relative;
  margin-bottom: 90px; }
  @media only screen and (max-width: 640px) {
    .btn-link {
      float: none;
      margin-bottom: 30px;
      text-align: center; } }

@media only screen and (min-width: 640px) {
  .btn-link-content {
    text-align: center; } }

@media only screen and (min-width: 640px) {
  .index .btn-link-content {
    padding-right: 70px;
    text-align: right; } }

.btn-link-line {
  position: absolute;
  width: 100%;
  border-color: #fff;
  border-width: 0 0 3px;
  border-style: solid; }
  @media only screen and (max-width: 640px) {
    .btn-link-line {
      display: none; } }

.manual-button {
	text-align:center;
	margin-left:auto;
	margin-right: auto;
}

.manual-button button{
	line-height: 44px;
	background-color: purple;
	font-weight: bold;
}

.manual-button button a:hover{
	text-decoration: none;
	opacity: 0.6;
}

.btn-link-line-left {
  top: 43px;
  left: 0;
  width: 718px; }

.btn-link-line-right {
  clear: both;
  bottom: 40px;
  right: 0;
  width: 35px; }

.lead {
  text-align: center; }

.table-separate {
  font-size:15px;
  border-collapse: separate;
  border-spacing: 6px; }
  .table-separate th {
    padding: 10px;
    background-color: #9E0088;
    text-align: center; }
  .table-separate td {
    padding: 10px 5px;
    height: 68px;
    border-color: #eee;
    border-style: solid;
    border-width: 3px;
    text-align: center; }

.table-responsive {
  width: 100%;
  max-width: 100%;
  padding: 10px 0px; }
  @media only screen and (max-width: 640px) {
    .table-responsive tbody {
      display: block; } }
  @media only screen and (max-width: 640px) {
    .table-responsive tr {
      display: block; } }
  @media only screen and (max-width: 640px) {
    .table-responsive th, .table-responsive td {
      display: block;
      border: none; } }
  @media only screen and (max-width: 640px) {
    .table-responsive td {
      margin-bottom: 60px; }
      .table-responsive td:last-child {
        margin-bottom: 0px; } }

.coming-soon {
  width: 100%;
  margin: 240px auto 300px;
  text-align: center; }
  @media only screen and (max-width: 640px) {
    .coming-soon {
      margin: 60px auto 80px; } }
  .coming-soon span {
    display: inline-block;
    border-width: 1px;
    border-color: #eee;
    border-style: solid;
    padding: 8px 14px;
    font-size: 62px; }
    @media only screen and (max-width: 640px) {
      .coming-soon span {
        font-size: 36px; } }

/* --------------------
bg
-------------------- */
.bg {
  z-index: -1;
  position: fixed;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  -webkit-transform: translate3d(0, 0, 0); }

.bg-video {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  min-width: 50%;
  min-height: 50%; }

.bg-image {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  min-width: 50%;
  min-height: 50%;
  width: 90%;
  z-index: 10; }

/* --------------------
site-header
-------------------- */
.site-header {
	margin: 0 auto;
  margin-bottom: 20px;
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #eeeeee; }

/*.index .site-header {
  margin-bottom: 140px; }
*/
.site-branding {
  clear: both;
	position: relative;
	top: 30px;
  padding-top: 40px;
  margin-bottom: 40px;
  text-align: center; }
  @media only screen and (min-width: 640px) {
  .site-branding img{width:350px;}
  }
  @media only screen and (max-width: 640px) {
    .site-branding {
      padding-top: 50px; }
	.site-branding img{width:60%;}
	  }

/*
#dl-menu {
  display: block;
  margin-left:auto;
  margin-right: auto;
	opacity: 0.6;
}
*/

@media only screen and (max-width: 640px) {
	#dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:1;
		z-index: 10;
/*		margin-top: 15px; */
}

}

ul li{
	list-style: none;
	display: inline;
}

button{
	background-color: purple;
	color: white;
	width: 220px;
	margin-left:5%;
  margin-right:5%;
/*	z-index: 2;*/
	padding: 5px 10px;

}
button a{
	font-weight:600;
}
button hover{
	opacity: 1.0;
}
  @media only screen and (max-width: 640px) {
    #dl-menu {
      display:block;
	/*	height: 350px;  */
	  }
 /*	  .d-menu li{
		  font-size: 60px;
		  z-index: 1;

	  }*/
}

.d-menu li a:hover{
	opacity: 0.8;
}
.d-menu a:hover {
	color: #9E0088;
}
	.d-menu a.active {
	color: #9E0088;
}

/*
.dl-trigger {
  display: block;
  margin: auto; }
*/

.dl-menuwrapper {
  max-width: 100%;
/*  margin-bottom: 150px;
	  margin-bottom: 300px; 
	height: 300px; */
}

.video-toggle {
  display:none;
  clear: both; }
  @media only screen and (max-width: 640px) {
    .video-toggle {
    display:none;
/*
		position: relative;
		top: -5px;
      display: block;
      margin: 0 0 20px;
*/
      text-align: center; }
      .video-toggle a {
        display: block;
        padding: 5px 0;
        color: #666; } }

.video-mobile-container {
  display: none;
  width: 100%; }
  @media only screen and (max-width: 640px) {
    .video-mobile-container {
      padding: 0 0 10px; }
      .video-mobile-container video {
        display: none;
        max-width: 100%;
        max-height: 100%; } }

/* β版リンクのデザイン
.beta {
  position: absolute;
  top: 10px;
  left: 0; }
  @media only screen and (max-width: 640px) {
    .beta {
      position: static; } }
  .beta a {
    color: #666;
    font-size: 0.9em;
    font-weight: bold; }
    .beta a:hover {
      color: #9E0088; }
    @media only screen and (max-width: 640px) {
      .beta a {
        display: block;
        margin: 15px 0 0;
        padding: 8px 0;
        text-align: center; } }
*/

/*-----------lang-nav-box--------------*/
.lang-nav-box {
  float: left;
  height: 35px;
  font-size: 1.5em;
	margin-top:5px;
	margin-left:30px;
	  display: inline;
	z-index: 5;
/*
  position:absolute;
  left:30px;
  top:15px;
*/

}

  @media only screen and (max-width: 640px) {
    .lang-nav-box {
		width: 100%;
      display:inline;
	  position:absolute;left:10px;} }


@media only screen and (min-width: 640px) {
.facebook {
  height: 30px;
  width: 30px;
  position: relative;
  left: px;
  bottom:px; }

}


@media only screen and (max-width: 640px) {
	.facebook {
	}

/*
  height: 45px;
  width: 45px;
  position: relative;
	bottom; 20px;
*/

	}
}

/*
@media only screen and (max-width: 640px) {
	.facebook img{
  position: absolute;
  top:15px;
  right: 15px;

}
}
*/

.lang-nav {
/*
  position: absolute;
  top: -20px;
*/
  width: 100px;
  right: 53px;
  color: #666;
  display: inline;}
  .lang-nav li {
    margin-right: 5px;
    font-size: 0.9em; }
    .lang-nav li:after {
      content: '|';
      margin-left: 5px; }
    .lang-nav li:last-child {
      margin-right: 0; }
      .lang-nav li:last-child:after {
        content: '';
        margin-left: 0; }
  .lang-nav a {
    color: #666;
    font-weight: bold; }
    .lang-nav a:hover {
      color: #9E0088; }

.header-nav-box{
	font-size: 1.0em;
	margin-left: 0px;
	width: 100%;
}

@media only screen and (max-width: 640px) {
  .header-nav-box {
    display: none; }
}
@media only screen and (min-width:640px){
  #dl-menu{
	  display: none;
/*	position: relative;*/
/*	  top: -50px;*/

	}
}
	.heading{
		position: relative;
		top:20px;
	}
@media only screen and (min-width:640px){
.index .heading{
	position: relative;
	top:20px;
	margin: auto;
}
	.news-list {
		position: relative;
		top:20px;

	}

}


.header-fixed-nav-bg {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  background-color: #eee;
  z-index: 9; }
  @media only screen and (max-width: 640px) {
    .header-fixed-nav-bg {
      display: none; } }
  .header-fixed-nav-bg .header-nav-box {
    width: 100%;
    margin: auto;
	/*  margin-left: 60px; */
}

nav header-nav{
	width:100%;
}

.header-nav {
	display: block;
	width:100%;
	/*margin-left: 60px;*/
  margin: 20 auto;
  color: #666; }
  .header-nav li {
    margin-right: 45px; }
    .header-nav li:last-child {
      margin-right: 0; }
  .header-nav a {
    color: #666;
    font-weight: bold; }
    .header-nav a:hover {
      color: #9E0088; }
    .header-nav a.active {
      color: #9E0088; }

@media only screen and (min-width: 640px) {
  .menu-item-has-children {
    position: relative;
    z-index: 10; } }

.sub-header {
  position: relative;
  width: 100%;
  margin-top: -20px;
  margin-bottom: 20px;
  background-color: #ccc; }
  @media only screen and (max-width: 640px) {
    .sub-header {
      display: none; } }
  .sub-header .sub-header-left {
    position: absolute;
    top: 0;
    left: 0;
    width: 9000px;
    height: 38px;
    margin-left: -9000px;
    background-color: #666; }
  .sub-header .sub-nav-left {
    float: left;
    width: 230px;
    height: 38px;
    line-height: 36px;
    padding: 2px 20px 0px;
    background-color: #666;
    text-align: right;
    font-weight: bold;
    font-size: 18px; }
  .sub-header .sub-nav-right {
    float: left;
    height: 38px;
    min-width: 500px;
    background-color: #ccc; }
    .sub-header .sub-nav-right:before {
      position: absolute;
      content: '';
      width: 0px;
      height: 0px;
      border-top: solid 19px transparent;
      border-right: solid 19px transparent;
      border-bottom: solid 19px transparent;
      border-left: solid 10px #666; }
    .sub-header .sub-nav-right ul {
      margin: 0;
      list-style-type: none; }
      .sub-header .sub-nav-right ul li {
        float: left;
        margin: 0 20px 0 0;
        padding: 2px 0 0;
        height: 38px;
        line-height: 36px;
        font-size: 14px; }
        .sub-header .sub-nav-right ul li a {
          color: #333; }
          .sub-header .sub-nav-right ul li a:hover {
            color: #9E0088; }
          .sub-header .sub-nav-right ul li a.active {
            color: #9E0088; }

.breadcrumb {
  margin-top:-5px;
  margin-bottom: -5px;
  text-align: right;
  font-size: 0.8em; }
  @media only screen and (max-width: 640px) {
    .breadcrumb {
      text-align: center; } }

/* --------------------
index
-------------------- */
.containerA{

}

.key-visual {
/*	height: 150px;  */
	padding-top:45px;
	display: block;
/*  	margin-bottom: 100px; */
  }
@media only screen and (max-width: 640px) {
	.key-visual img{
	 margin-top:-40px;
}
	.key-visual{
		margin-bottom: 0px;
	}
	.d-menu li:hover{
		opacity: 0.7;
	}
}

#booking:hover{
	color: purple;
}

.news-list {
  list-style-type: none; }
.news-list {
	font-size: 1.0em;
	margin-left: 20px;
    padding-left: 10px;
	margin-right: 20px;
}

  @media only screen and (max-width: 640px) {
    .news-list {
      margin-left: 10px;
      padding-left: 10px; } }

.article{
	margin-left: 30px;
	margin-right: 30px;
}

.article-image img{
	width: 200px;
	padding-top: 30px;
	padding-bottom: 30px;
	margin-left: 30px;
	border-radius: 50%;
}
  .news-list li {
	  margin-top: 10px;
    margin-bottom: 20px;
    font-size: 1.2em; }
    @media only screen and (max-width: 640px) {
      .news-list li {
        font-size: 0.9em; } }
    .news-list li:last-child {
      margin-bottom: 0px; }
    .news-list li time {
      margin-right: 5px; }
    @media only screen and (max-width: 640px) {
      .news-list li a {
        display: block;
        margin-top: 5px; } }
      .news-list li .detail{
	  font-size: 0.8em;}


#link:hover{
	color: purple;
}
.tag {
  display: inline-block;
  width: 4.5em;
  margin-right: 1.2em;
  padding: 2px 0;
  text-align: center;
  font-size: 0.8em; }

.tag-media {
  background-color: #00A7CC; }

.tag-news {
  background-color: #830172; }

@media only screen and (max-width: 640px) {
	#dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  		margin-left:auto;
		margin-right: auto;
		font-size: 1.4em;
		font-weight: 600;
		color:white;
		opacity:10;
		z-index: 10;
		margin-top: 15px;
}
	#dl-menu ul {
		letter-spacing: -14px;
	}

	#dl-menu li {
		display: inline-block;
		letter-spacing: 0;
		float: left;
	}
	#dl-menu li+ li {
		border-left: 1px solid #eee;
	}
	
	.dl-menuwrapper li a {
	padding: 10px 6px;
	font-size: 14px;
	line-height: 0px;
	font-weight: 600;
	color: #fff;
	outline: none;
	height: auto;
	}
}

/* --------------------
welcome
-------------------- */
.welcome .bg{background:url(../img/cogicogi_he_youkoso.png) center top no-repeat;}
.welcome .table-kawaru {
  margin-top: 60px;
  margin-bottom: 60px; }
  .welcome .table-kawaru td {
    width: 33.3%;
    vertical-align: top;
    text-align: center; }
    @media only screen and (max-width: 640px) {
      .welcome .table-kawaru td {
        width: 100%;
        max-width: 100%; } }
    .welcome .table-kawaru td img {
      max-width: 90%; }
      @media only screen and (min-width: 640px) {
        .welcome .table-kawaru td img {
          width: 90%;
          height: auto; } }
    .welcome .table-kawaru td div {
      font-size: 1.2em; }
.welcome .table-nichijo {
  margin-bottom: 60px; }
  .welcome .table-nichijo td {
    width: 25%;
    vertical-align: top;
    text-align: center; }
    @media only screen and (max-width: 640px) {
      .welcome .table-nichijo td {
        width: 100%; } }
    .welcome .table-nichijo td img {
      max-width: 90%; }
      @media only screen and (min-width: 640px) {
        .welcome .table-nichijo td img {
          width: 90%;
          height: auto; } }
    .welcome .table-nichijo td div {
      font-size: 1.2em; }
.welcome .table-sugu {
  margin-bottom: 60px; }
  .welcome .table-sugu td {
    width: 20%;
    vertical-align: top;
    text-align: center; }
    @media only screen and (max-width: 640px) {
      .welcome .table-sugu td {
        width: 100%; } }
    .welcome .table-sugu td img {
      max-width: 90%; }
      @media only screen and (min-width: 640px) {
        .welcome .table-sugu td img {
          width: 90%;
          height: auto; } }
    .welcome .table-sugu td div {
      font-size: 1.2em; }
.welcome .table-kantan {
  margin-bottom: 60px; }
  .welcome .table-kantan td {
    width: 30%;
    vertical-align: middle;
    text-align: center; }
    .welcome .table-kantan td.arrow {
      width: 5%; }
      @media only screen and (max-width: 640px) {
        .welcome .table-kantan td.arrow {
          display: none; } }
    @media only screen and (max-width: 640px) {
      .welcome .table-kantan td {
        width: 100%; } }
    .welcome .table-kantan td img {
      max-width: 90%; }
      @media only screen and (min-width: 640px) {
        .welcome .table-kantan td img {
          width: 90%;
          height: auto; } }
    .welcome .table-kantan td div {
      font-size: 1.2em; }
.welcome .arrow-big {
  margin: 50px 0;
  text-align: center; }

/* --------------------
port
-------------------- */
.port .site-header{margin-bottom:0!important;}
.port #map-canvas {
  height: 520px; }
.port .decoration-heading{
	height:1em;
	}
  @media only screen and (max-width: 640px) {
    #map-canvas {
		float: left;
      height: 350px;
	  width:90%;
		margin-top: 10px;
		margin-bottom: 10px;
		margin-left: 20px;
		margin-right: 20px;


	  } }

@media only screen and (max-width: 640px) {
	.port #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
		 margin-left:auto;
		 margin-right: auto;
		font-size: 1.4em;
		font-weight: 600;
		color:white;
		opacity:10;
		z-index: 10;
		margin-top: 15px;
}
	.port #dl-menu ul {
		letter-spacing: -14px;
	}

	.port #dl-menu li {
		display: inline-block;
		letter-spacing: 0;
		float: left;

	}
	.port #dl-menu li+ li {
		border-left: 1px solid #eee;
	}
	
	.port .dl-menuwrapper li a {
	padding: 10px 6px;
	font-size: 14px;
	line-height: 0px;
	font-weight: 600;
	color: #fff;
	outline: none;
	height: auto;
	}
}

/* --------------------
price
-------------------- */
.price .bg{background:url(../img/riyouryoukin+.png) center 0 no-repeat;}
.price .table-price-1 {
  margin-bottom: 60px;
  /* height: 100%; */ 
 } 
  .price .table-price-1 td {
    width: 50%;
    vertical-align: top;
    text-align: center; }
    @media only screen and (max-width: 640px) {
      .price .table-price-1 td {
        width: 100%; } }
    .price .table-price-1 td img {
      max-width: 90%; }
    .price .table-price-1 td div {
      font-size: 1.2em; }
  .price .table-price-1 .price-1-box {
    width: 90%;
    height: 100%;
    margin: auto;
    border-width: 3px;
    border-color: #eee;
    border-style: solid; }
    .price .table-price-1 .price-1-box .title {
      width: 9em;
      margin: -3px auto 20px;
      background-color: #9E0088; }
    .price .table-price-1 .price-1-box .description {
      margin-bottom: 20px;
      font-size: 1.0em; }
    .price .table-price-1 .price-1-box .prices {
      height: 200px; }
    .price .table-price-1 .price-1-box .price {
      height: 1.3em;
      font-size: 1.3em; }
    .price .table-price-1 .price-1-box .price-number {
      font-size: 1.6em; }
    .price .table-price-1 .price-1-box hr {
      width: 90%;
      margin-top: 20px;
      border-color: #fff;
      border-width: 0 0 3px;
      border-style: solid; }
    .price .table-price-1 .price-1-box ul {
      font-size: 0.8em;
      text-align: left; }
@media only screen and (max-width: 640px) {
  .price .scroll {
    overflow-x: scroll; } }
.price .table-price-2 {
  width: 100%; }
  @media only screen and (max-width: 640px) {
    .price .table-price-2 {
      width: 600px; } }
  .price .table-price-2 th {
    width: 25%; }
  .price .table-price-2 td {
    width: 25%; }
  .price .table-price-2 .th-row td {
    border: none;
    background-color: #eee;
    color: #666;
    font-weight: bold; }
.price .caption {
  width: 99%;
  margin: 0 auto 60px;
  font-size: 0.8em; }

/* --------------------
app
-------------------- */
.app .bg{background:url(../img/app_download.png) center bottom no-repeat;}
.app .enjoy {
  margin-bottom: 60px;
  text-align: center;
  font-size: 170px; }
  @media only screen and (max-width: 640px) {
    .app .enjoy {
      font-size: 4em; } }
.app .step {
  margin-bottom: 40px; }
  .app .step h2 {
    margin: 0; }
  .app .step .lead {
    margin-top: 0; }
.app .download-button-table {
  width: 50%;
  margin: auto; }
  @media only screen and (max-width: 640px) {
    .app .download-button-table {
      width: 100%; } }
  .app .download-button-table td {
    width: 50%;
    padding: 0 10px; }
    .app .download-button-table td img {
      max-height: 67px; }
.app .arrow-big {
  margin: 70px 0 50px;
  text-align: center; }

.app .attention{
text-align: center;
}

@media only screen and (max-width: 640px) {
	.app #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:1;
		z-index: 10;
		margin-top: 15px;
}

}


/*----------
cogicogi
-----------*/

@media only screen and (max-width: 640px) {
.welcome #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:1;
		z-index: 10;
		margin-top: 15px;
}

}


/* --------------------
company
-------------------- */
.company .bg{background:url(../img/kaishagaiyou.png) center 0 no-repeat;}
.company .table-company {
  margin-bottom: 120px; }
  .company .table-company th {
    width: 25%;
    }
    @media only screen and (max-width: 640px) {
      .company .table-company th {
        width: 100%;
		margin:1px;} }
  .company .table-company td {
    text-align: left;
    margin-left: 10px;
}
/*
  .company .table-company td .infobox{
    margin-top: 40px;
    margin-top: 40px;}
*/


@media only screen and (max-width: 640px) {
.company #dl-menu{
		font-size: 1.8em;
	color: white;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:1;
		z-index: 20;
		margin-top: 15px;
}

}
/* --------------------
mission
-------------------- */
.privacy .bg{background:url(../img/kojinjiyouhu.png) center 0 no-repeat;}
.privacy .heading{position: relative;top;-150px;}

@media only screen and (max-width: 640px) {
	.privacy #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}


@media only screen and (max-width: 640px) {
	.mission #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}


/* --------------------
mission
-------------------- */
.mission .bg{background:url(../img/mission_corevalue.png) center 0 no-repeat;}
.mission .heading-mission .heading-line-left {
  width: 350px; }
.mission .heading-mission .heading-line-right {
  width: 350px; }
.mission .heading-core-value .heading-line-left {
  width: 310px; }
.mission .heading-core-value .heading-line-right {
  width: 310px; }
.mission .missions {
  text-align: center;
  font-size: 1.8em; }
  @media only screen and (max-width: 640px) {
    .mission .missions {
      font-size: 1em; } }
.mission .table-core-value {
  width: 90%;
  margin: 0 auto 20px; }
  .mission .table-core-value:last-child {
    margin: 0 auto 120px; }
  .mission .table-core-value th {
    vertical-align: middle;
    text-align: left;
    font-size: 2.5em;
    font-weight: normal; }
    @media only screen and (min-width: 640px) {
      .mission .table-core-value th.fail {
        width: 25%; }
      .mission .table-core-value th.chaos {
        width: 24%; }
      .mission .table-core-value th.creativity {
        width: 32%; }
      .mission .table-core-value th.speed {
        width: 24%; }
      .mission .table-core-value th.mission {
        width: 26%; } }
    @media only screen and (max-width: 640px) {
      .mission .table-core-value th {
        font-size: 1.5em; } }
  .mission .table-core-value td {
    vertical-align: middle; }
    @media only screen and (max-width: 640px) {
      .mission .table-core-value td {
        padding: 0 0 10px; } }

/* --------------------
staff
-------------------- */
.staff .bg{background:url(../img/staff.png) center 0 no-repeat;}
.staff .table-staff {
  width: 80%;
  margin: 60px auto; }
  @media only screen and (max-width: 640px) {
    .staff .table-staff {
      width: 100%; } }
  .staff .table-staff th {
    vertical-align: top;
    width: 30%;
    padding: 10px 20px 60px 0px; }
    @media only screen and (max-width: 640px) {
      .staff .table-staff th {
        width: 100%;
        padding: 10px 0; } }
    .staff .table-staff th img {
      border-radius: 50%; }
  .staff .table-staff td {
    vertical-align: top;
    padding-bottom: 60px; }
  .staff .table-staff .name {
    font-size: 1.3em; }
    @media only screen and (max-width: 640px) {
      .staff .table-staff .name {
        text-align: center; } }
  .staff .table-staff .description {
    line-height: 1.6em; }

/* --------------------
partner
-------------------- */
.partner .bg{background:url(../img/patoner+.png) center 0 no-repeat;}
.partner .table-icons {
  width: 50%;
  margin: 60px auto 40px; }
  .partner .table-icons td {
    text-align: center;
    padding: 5px;
    line-height: 1em; }
    @media only screen and (max-width: 640px) {
      .partner .table-icons td {
        margin: 0;
        padding: 5px; } }
    .partner .table-icons td.jigyo {
      background-color: #A0008A; }
    .partner .table-icons td.port {
      background-color: #FE5E00; }
    .partner .table-icons td.ad {
      background-color: #00B9F3; }
.partner .partners {
  width: 100%;
  margin-bottom: 120px; }
  .partner .partners .partner-box {
    position: relative;
    float: left;
    width: 20%;
    margin: 0;
    padding: 10px;
    text-align: center; }
    @media only screen and (max-width: 640px) {
      .partner .partners .partner-box {
        width: 50%; } }
    .partner .partners .partner-box img {
      border-radius: 50%; }
    .partner .partners .partner-box span {
      display: block;
      position: absolute;
      bottom: 11%;
      left: 48%;
      width: 10px;
      height: 10px;
      border-radius: 50%; }
      .partner .partners .partner-box span.jigyo {
        background-color: #A0008A; }
      .partner .partners .partner-box span.port {
        background-color: #FE5E00; }
      .partner .partners .partner-box span.ad {
        background-color: #00B9F3; }

@media only screen and (max-width: 640px) {
	.partner #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}


/* --------------------
recruit
-------------------- */
@media only screen and (max-width: 640px) {
	.recruit #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}

@media only screen and (max-width: 640px) {
	.staff #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}


.faq{
height: auto;

}

/* --------------------
tokusho
-------------------- */
.tokusho .bg{background:url(../img/tokuteishouhou.png) center 0 no-repeat;}

@media only screen and (max-width: 640px) {
	.staff #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 25px;
}

}
/* --------------------
yakkan
-------------------- */
.yakkan {background:url(../img/otoiawase.png) 0 center no-repeat;}

@media only screen and (max-width: 640px) {
	.yakkan #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}

/* --------------------
qa
-------------------- */
.qa .bg{background:url(../img/cogicogi_he_youkoso.png) center 0 no-repeat;}

@media only screen and (max-width: 640px) {
	.qa #dl-menu{
		font-size: 1.8em;
/*		position: relative;*/
  margin-left:auto;
  margin-right: auto;
	font-size: 1.4em;
	font-weight: 600;
	color:white;
	opacity:10;
		z-index: 10;
		margin-top: 15px;
}

}


/*---------------------
contactus
---------------------*/
.contactus .sub-header{
	position: relative;
	top: 250px;
}


/* --------------------
news
-------------------- */
.news .heading-line {
  width: 330px; }
.news .news-list {
  list-style-type: none;
  margin-bottom: 120px; }
  @media only screen and (max-width: 640px) {
    .news .news-list {
      margin-left: 0;
      padding-left: 0; } }
  .news .news-list li {
    margin-bottom: 30px;
    font-size: 1.2em; }
    @media only screen and (max-width: 640px) {
      .news .news-list li {
        font-size: 1em; } }
    .news .news-list li:last-child {
      margin-bottom: 0px; }
    .news .news-list li time {
      margin-right: 5px; }
    @media only screen and (max-width: 640px) {
      .news .news-list li a {
        display: block;
        margin-top: 5px;
		position: relative;
		top:-50px;} }

/* --------------------
news-detail
-------------------- */

.news-detail .bg{background:url(../img/news_ichiran.png) center 0 no-repeat;}
/*.news-detail*/ .tag {
  width: auto;
  margin: 0 0 0 40px;
  padding: 2px 10px;
  font-size: 1.0em; }
  @media only screen and (max-width: 640px) {
    .news-detail .tag {
      margin: 0 0 0 20px; } }
.news-detail .news-article {
  padding: 40px;
  background-color: #fff;
  color: #666;
  margin: 0 0 120px; }
  @media only screen and (max-width: 640px) {
    .news-detail .news-article {
      padding: 20px; } }
.news-detail .article-header h1 {
  margin: 0 0 40px;
  padding: 5px 0;
  font-size: 1.0em;
  border-width: 0 0 3px;
  border-color: #666;
  border-style: solid; }
.news-detail .article-eyecatch {
  margin: 0 0 40px; }

/* --------------------
site
-------------------- */
.contact .bg{background:url(../img/otoiawase.png) 0 center no-repeat;}
.contact .heading-2 {
  position: relative;
  text-align: center; }
  .contact .heading-2 h1, .contact .heading-2 h2, .contact .heading-2 h3, .contact .heading-2 h4, .contact .heading-2 h5 {
    line-height: 1.4em; }
  .contact .heading-2 .heading-line-left {
    top: 21px;
    left: 0; }
  .contact .heading-2 .heading-line-right {
    bottom: 17px;
    right: 0; }
  .contact .heading-2 .decoration-heading {
    display: inline-block;
    position: relative;
    height: 2em;
    line-height: 2em;
    font-size: 1.2em; }
    @media only screen and (max-width: 640px) {
      .contact .heading-2 .decoration-heading {
        height: auto;
        line-height: 1.3em;
        font-size: 1.2em; } }
    @media only screen and (min-width: 640px) {
      .contact .heading-2 .decoration-heading:before {
        position: absolute;
        top: 0.9em;
        left: -0.7em;
        margin-top: -0.8em;
        content: url("../img/svg/img_deco_left.svg");
        -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
        transform: scale(0.7); }
      .contact .heading-2 .decoration-heading:after {
        position: absolute;
        top: 50%;
        right: -0.7em;
        margin-top: -0.9em;
        content: url("../img/svg/img_deco_right.svg");
        -webkit-transform: scale(0.7);
        -ms-transform: scale(0.7);
        transform: scale(0.7); } }
.contact .heading-mail {
  margin-top: 60px; }
  .contact .heading-mail .heading-line {
    width: 310px; }
.contact .heading-form .heading-line {
  width: 283px; }
.contact .mailto {
  position: relative;
  text-align: center;
  font-size: 2.2em;
  margin-bottom: 60px; }
  @media only screen and (max-width: 640px) {
    .contact .mailto {
      font-size: 1.4em; } }
  .contact .mailto i {
    font-size: 1.1em;
    position: relative;
    top: 7px;
    left: 0; }
  .contact .mailto a {
    display: inline-block;
    padding-bottom: 3px;
    border-width: 0 0 2px;
    border-style: solid;
    border-color: #eee; }
    .contact .mailto a:hover {
	color: purple;
 }
.contact form {
  margin-top: 40px;
  margin-bottom: 120px; }
  .contact form .check {
    margin-bottom: 30px;
    text-align: center; }
  .contact form .table-contact {
    width: 80%;
    margin: 0 auto 30px; }
    @media only screen and (max-width: 640px) {
      .contact form .table-contact {
        width: 100%; } }
    .contact form .table-contact th {
      width: 28%; }
      @media only screen and (max-width: 640px) {
        .contact form .table-contact th {
          width: 100%; } }
    .contact form .table-contact td {
      text-align: left; }
      @media only screen and (max-width: 640px) {
        .contact form .table-contact td {
          padding: 10px 0 20px; } }
    .contact form .table-contact input, .contact form .table-contact textarea {
      width: 100%;
      color: #333; }
  .contact form .submit {
    text-align: center; }
    .contact form .submit input {
      display: inline-block;
      width: 250px;
      height: 65px;
      background-color: #9E0088;
      border: none;
      border-radius: 10px;
      font-size: 1.5em;
      font-weight: bold; }

/* --------------------
site-footer
-------------------- */
.site-footer {
  border-width: 3px 0 0 0;
  border-color: #fff;
  border-style: solid; }
  @media only screen and (max-width: 640px) {
    .site-footer {
      padding-top: 30px; } }

.sub-menu{
display: block;
}


.footer-nav-box {
  margin-bottom: 60px; }
  @media only screen and (max-width: 640px) {
    .footer-nav-box {
      margin-bottom: 30px; } }

.footer-nav {
  width: 100%;
  margin-left: 30px;}
  @media only screen and (max-width: 640px) {
    .footer-nav {
      margin: 0;
      padding: 0; } }
  .footer-nav li {
    margin-right: 34px; }
    @media only screen and (min-width: 640px) {
      .footer-nav li:first-child {
        margin-right: 100px; }
      .footer-nav li:last-child {
        margin-right: 0; } }
    @media only screen and (max-width: 640px) {
      .footer-nav li {
        float: none;
        margin: 0;
        padding: 0;
        text-align: center; }
        .footer-nav li a {
          display: block;
          padding: 15px; } }
  .footer-nav .sub-menu {
    list-style-type: none;
    margin-left: 30px;}
    @media only screen and (min-width: 640px) {
      .footer-nav .sub-menu {
        position: absolute;
        top: 40px;
        left: -40px;
        font-size: 0.8em; }
        .footer-nav .sub-menu li {
          float: none;
          height: 1.2em;
          padding: 0;
          margin: 0; } }
    @media only screen and (max-width: 640px) {
      .footer-nav .sub-menu {
        margin: 0;
        padding: 0; }
        .footer-nav .sub-menu li {
          margin: 0;
          padding: 0;
          text-align: center;
          font-size: 0.8em;
          border: none; }
          .footer-nav .sub-menu li a {
            padding: 10px; } }

.footer-logo {
  clear: both;
  margin-bottom: 40px;
  }
  @media only screen and (min-width: 640px){
	.footer-logo img{
		width:30%;
		}
	}
	@media only screen and (max-width: 640px) {
		.footer-logo img{
				width:50%;
				}
	}

.answer{
padding-top: 100px;
	margin-top: -80px;

}

.infobox a{
 color: black; }


#faq-link-pc{
	font-size:1.2em;
	font-weight:bold;
}

@media only screen and (max-width: 640px) {
	#faq-link-pc{font-size:0.9em; font-weight:bold;}
.ichiran{display: none;}

}


.jikken {
	text-align: center;
	margin-bottom: 20px;
	margin-top: 20px;
}

.jikken a{
	border: solid 2px #fff;
	padding: 10px;
}

.hagilogo{
	width: 50%;
}

.yose h4{
	text-align: left;
}

.btn-flat-logo {
	font-size: 20px;
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 1.0em 2.0em;
  text-decoration: none;
  color: #FFF;
  background: #FF6B6B;
  transition: .4s;
}

.btn-flat-logo:hover {
  background: #FF4F4F;
	color: #FFF;
}

@media only screen and (max-width: 640px) {
	.btn-flat-logo {
		font-size: 15px;
	  position: relative;
	  display: inline-block;
	  font-weight: bold;
	  padding: 0.5em 1.0em;
	  text-decoration: none;
	  color: #FFF;
	  background: #FF6B6B;
	  transition: .4s;
	}

	.btn-flat-logo:hover {
	  background: #FF4F4F;
		color: #FFF;
	}

}

	.payment_button{
		width: 450px;
		background-color:#FF6B6B;
		color:#FFF;
		padding:1.0em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
}


.payment_button:hover {
  background: #FF4F4F;
	color: #FFF;
	text-decoration: underline;
}

.payment_button1{
	width: 30%;
	background-color:#FF6B6B;
	color:#FFF;
	padding:0.5em 1.1em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
}

.payment_button1 p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}


.payment_button1:hover {
background: #FF4F4F;
color: #FFF;
text-decoration: underline;
}

@media only screen and (max-width: 640px) {
	.payment_button1 {
		width: 100%;
		background-color:#FF6B6B;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
	}

	.payment_button1 p{
		font-size: 12px;
		margin-top: 0px;
		margin-bottom: 0px;
	}

}


.payment_button2{
	width: 30%;
	background-color:#FF6B6B;
	color:#FFF;
	padding:0.5em 1.1em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
}

.payment_button2 p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}

@media only screen and (max-width: 640px) {
	.payment_button2 {
		width: 100%;
		background-color:#FF6B6B;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
	}

	.payment_button2 p{
		font-size: 12px;
	}

}

.payment_button2:hover {
background: #FF4F4F;
color: #FFF;
text-decoration: underline;
}

.payment_button3{
	width: 30%;
	background-color:#FF6B6B;
	color:#FFF;
	padding:0.5em 1.1em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom:2px;
}

@media only screen and (max-width: 640px) {
	.payment_button3 {
		width: 100%;
		background-color:#FF6B6B;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
		/*--margin-left: -6px; */
	}

	.payment_button3 p{
		font-size: 12px;
	}

}



.payment_button3 p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}

.payment_button3:hover {
background: #FF4F4F;
color: #FFF;
text-decoration: underline;
}

.payment_button4{
	width: 25%;
	background-color:#FF6B6B;
	color:#FFF;
	padding:0.5em 0.9em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom:2px;
}

@media only screen and (max-width: 640px) {
	.payment_button4 {
		width: 80%;
		background-color:#FF6B6B;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
		/*--margin-left: -6px; */
	}

	.payment_button4 p{
		font-size: 12px;
	}

}



.payment_button4 p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}


.payment_button4:hover {
background: #FF4F4F;
color: #FFF;
text-decoration: underline;
}



.teikei{
	width: 80%;
	display: inline-block;
}

.teikei ul li{
	width: 60%; --important
	margin: 10px;
}



.btn-eats {
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 10px;
  text-decoration: none;
  color: #FFF;
  background: #7EE081;
  transition: .4s;
	margin-bottom: 10px;
	width: 55%;
	font-size: 20px;
}

.btn-eats:hover {
  background: #1ec7bb;
}

@media only screen and (max-width: 640px) {
	.btn-eats{
		width: 80%;
		font-size: 15px;
	}
}



.eatspayment_button{
	width: 50%;
	background-color:#FF6B6B;
	color:#FFF;
	padding:0.5em 1.1em;
	border:0;
	font-size: 25px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
}

.eatspayment_button p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}

@media only screen and (max-width: 640px) {
	.eatspayment_button {
		width: 80%;
		background-color:#FF6B6B;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
	}

	.eatspayment_button p{
		font-size: 12px;
	}

}

.eatspayment_button:hover {
background: #FF4F4F;
color: #FFF;
text-decoration: underline;
}


.plan-sec{
	background-color: rgba(0,0,0,0.2) ;
	margin-top: 20px;
	padding-top: 40px;
	padding-bottom: 40px;
	padding-right: 10px;
	padding-left: 10px;
	border-radius: 5px;
}

.plan-sec .heading-2 ul li p{
	padding-right: 33%;
	text-align: left;
}

@media only screen and (max-width: 640px) {
.large h2{
 font-size: 25px;
}
}


.payment_button_tricycle{
	width: 80%;
	background-color:#2A9D8F;
	color:#FFF;
	padding:0.5em 0.9em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom:2px;
}

@media only screen and (max-width: 640px) {
	.payment_button_tricycle {
		width: 100%;
		background-color:#2A9D8F;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 20px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:2px;
		/*--margin-left: -6px; */
	}

	.payment_button_tricycle p{
		font-size: 10px;
	}

}



.payment_button_tricycle p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}


.payment_button_tricycle:hover {
background: #33C1B1;
color: #FFF;
text-decoration: underline;
}

.payment_button_eats{
	width: 30%;
	background-color:#05a22e;
	color:#FFF;
	padding:0.5em 0.9em;
	border:0;
	font-size: 20px;
	font-weight: bold;
	transition: .4s;
	margin-right: 0px;
	margin-left: 0px;
	margin-bottom:6px;
}

@media only screen and (max-width: 640px) {
	.payment_button_eats {
		width: 100%;
		background-color:#05a22e;
		color:#FFF;
		padding:0.5em 2.0em;
		border:0;
		font-size: 18px;
		font-weight: bold;
		transition: .4s;
		margin-bottom:5px;
		/*--margin-left: -6px; */
	}

	.payment_button_eats p{
		font-size: 12px;
	}

}



.payment_button_eats p{
	font-size: 12px;
	margin-top: 0px;
	margin-bottom: 1px;
}


.payment_button_eats:hover {
background: #07DA3F;
color: #FFF;
text-decoration: underline;
}


.heading-2 #note {
	width: 55%;
	border: solid 2px #fff;
	padding: 15px;
	margin: auto;
}