
@charset "utf-8";
/* CSS Document */

body{
	display: grid;
	gap:0;
	grid-template-rows: auto auto auto;
	grid-template-columns: 1fr;
	height:100%;
	font-size:20px;
    line-height: 150%;
    font-family: '游ゴシック', 'YuGothic', 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', 'ＭＳ ゴシック', sans-serif;
	text-align: left;
	font-weight:300;
	margin:0;
	padding:0;
}
@media only screen and (max-width: 736px) {
body{
	grid-template-columns: 1fr;
	gap:0;
}
}
/* header PC用*/

header {
  grid-row-start: 1;
  grid-row-end: 2;
  grid-column-start: 1;
  grid-column-end: 3;
}
div.mega{
	width:15%;
	margin:0;
}
div.mega img{
	width:80%;
	max-width:200px;
	margin:0;
}
div.info{
	width:85%;
	margin:1% auto 0;
	padding:1%;
	font-size:80%;
	text-align:center;
	background:#b4e4ff;
}
div.info span{
	background:#ff0000;

	padding:8px;
	margin-right:10px;
}
div.liquidlogic{
	width:100%;
	background:#FFF;
	margin:0;
	padding:1%;
	position: fixed;
	z-index: 1;
	opacity:0.8;
}
div.liquidlogic img{
	width:80%;
	max-width:200px;
	margin:0;
}
nav#pc{
	width:100%;
	margin:0;
	padding:0;
	background:#009fb0;
	display: flex;
}
nav#pc ul{
	width:100%;
	overflow: hidden;
}
nav#pc ul li{
	float:left;
	width:13.5%;
	height:100%;
	color:#FFF;
	background:#009fb0;
	text-align:center;
	list-style:none;
}
nav#pc ul li.home{
	width:2%;
}
header#pc a:link,header#pc a:visited{
	color:#054c55;
	text-decoration:none;
}
nav#pc a:link,nav#pc a:visited{
	color:#FFF;
	text-decoration:none;
}

@media screen and (max-width: 960px) {
img{
}
nav#pc ul li{
	font-size:90%;
}
div.mega img{
	width:100%;
	margin:0;
}
div.info{
	padding:3%;
}
div.liquidlogic img{
	width:100%;
}
}
/* header スマホ用*/

@media screen and (max-width: 767px) {
img{
}
header#pc{
	display:none;
}
nav#pc{
	display:none;
}
.header#sp {
  display: flex;
  justify-content: space-between;
  background: #ddd;
  padding: 20px;
}
}
ul.nav a:link,ul.nav a:visited{
	color:#FFF;
	text-decoration:none;
}
ul.nav{
	margin-top:15%;
}
ul.nav li{
	width:100%;
	list-style:none;
	padding:3%;
	border-bottom:1px solid #ccc;
}
.nav-wrap.open {
  display: block;
}
.nav-wrap.close {
  display: none;
}
.nav-button {
    display: block;
    cursor: pointer;
}
.nav-wrap {
    position: fixed;
	overflow-y: scroll;
    left: 0;
    top: 0;
    display: none;
    z-index: 10;
    background-color: rgba(0, 0, 0, 0.7);
    width: 100%;
    height: 100%;
	color:#FFF;
}
.nav-button,
.nav-button span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
}
.nav-button {
    z-index: 20;
    position: relative;
    width: 40px;
    height: 36px;
}
.nav-button span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #fff;
    border-radius: 4px;
}
.nav-button span:nth-of-type(1) {
    top: 0;
}
.nav-button span:nth-of-type(2) {
    top: 16px;
}
.nav-button span:nth-of-type(3) {
    bottom: 0;
}
.nav-button.active span:nth-of-type(1) {
    -webkit-transform: translateY(16px) rotate(-45deg);
    transform: translateY(16px) rotate(-45deg);
}
.nav-button.active span:nth-of-type(2) {
    opacity: 0;
  }
.nav-button.active span:nth-of-type(3) {
    -webkit-transform: translateY(-16px) rotate(45deg);
    transform: translateY(-16px) rotate(45deg);
}

/* main */
main{
  grid-row-start: 2;
  grid-row-end: 3;
  grid-column-start: 1;
  grid-column-end: 1;
}
a{
	text-decoration:none;
}
a:hover{
	opacity:0.5;
}
p{
	margin:1em 0 !important;
	line-height:200%;
}
.att{
	color:#FF0000;
	font-size:80%;
}
.notes{
	font-size:80%;
	line-height:200%;
}
.cap{
	margin-top:0 !important;
	font-size:90%;
	text-align:center;
}
p.chache{
	text-align:center;
}
hr{
	border: 6px solid #009fb0;
	width: 15%;
	margin: 0 auto 1%;
}
a.link{
	margin:5% 0;
	text-decoration:none;
	font-size:100%;
	color:#4568f0;
}
a:visited{
	color:#8370f6;
}
a.link:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0a9';
  font-weight: 900;
}
div.backtop{
	width:50%;
	margin:5% auto;
	text-decoration:none;
	text-align:center;
	font-size:100%;
}
div.backtop a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f0aa';
  font-weight: 900;
	padding-right : 5px;
}
div.backtop a {
	text-decoration:none;
}
a.next:hover,div.backtop a:hover {
	text-decoration: underline;
}
.bottom_back {
	float:left;
	position: relative;
	display: inline-block;
 	padding: 1% 5%;
	margin:3% 1% 1%;
	background-color: #333;
	font-size:80%;
	color: #fff;
	text-align: center;
	text-decoration: none;
}
.bottom_back::after {
  position: absolute;
  top: 50%;
  left: .2em;
  content: '';
  margin-top: -5px;
  border: 7px solid transparent;
  border-top-width: 5px;
  border-bottom-width: 5px;
  border-right-color: #fff;
}
.bottom_next {
	float:right;
	position: relative;
	display: inline-block;
	padding: 1% 5%;
	margin:3% 1% 1%;
	background-color: #333;
	font-size:80%;
	color: #fff;
	text-align: center;
	text-decoration: none;
}
.bottom_next::after {
  position: absolute;
  top: 50%;
  right: .2em;
  content: '';
  margin-top: -5px;
  border: 7px solid transparent;
  border-top-width: 5px;
  border-bottom-width: 5px;
  border-left-color: #fff;
  transition: all .5s;
}
/* ul.detail_menu {
	display:table;
	width:100%;
	margin:3% auto;
	padding:0;
}
ul.detail_menu li {
	display:table-cell;
	width:10%;
}
ul.detail_menu li img {
	width:100%;
} */
div.circle_box{
	width:150px;
	margin: 10px auto;
}
div.circle_box_for2{
	width:100px;
	margin: 10px auto;
}
div.circle{
	z-index: 1;
	float:left;
	width: 40px;
	height: 40px;
	margin:5px;
	border-radius: 50%;
	background: #8370f6;
	text-align:center;
	line-height: 40px;
	color:#fff;
}
div.circle a:hover{
	color:#fff;
}
div.circle a:visited{
	color:#fff;
}
@media screen and (max-width: 767px) {

.bottom_back,.bottom_next {
	width:20%;
}
}

/* footer */
footer{
	grid-row-start: 3;
	grid-row-end: 4;
	grid-column-start: 1;
	grid-column-end: 1;
	font-size:80%;
	font-weight:300;
	text-align:center;
	padding:2%;
	margin:0;
	background: #b457f2; /* Old browsers */
	background: -moz-linear-gradient(45deg,  #b457f2 0%, #5d48eb 34%, #5d48eb 34%, #0099dd 67%, #00d2d4 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(45deg,  #b457f2 0%,#5d48eb 34%,#5d48eb 34%,#0099dd 67%,#00d2d4 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(45deg,  #b457f2 0%,#5d48eb 34%,#5d48eb 34%,#0099dd 67%,#00d2d4 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b457f2', endColorstr='#00d2d4',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
footer ul {
	font-size:90%;
	font-weight:100;
	letter-spacing:0.05em;
	color:#FFF;
	text-align: center;
	list-style:none;
	margin:0;
	padding:0;
	width:95%;
  margin-right: auto;
  margin-left: auto;
}
footer ul li{
	display: -moz-inline-box;
	display: inline-block;
	/display: inline;
	/zoom: 1;
	padding:0 2%;
}
footer ul li a{
	color:#FFF;
}
footer ul li a:hover{
	opacity:0.5;
}
div.sns{
	width:30%;
	margin:0 auto;
}
div.sns img{
	width:10%;
}
p.copy{
	font-size: 70%;
	color:#FFF;
	letter-spacing:0.05em;
	opacity: 0.5;
	text-align: center;
	width: 100%;
}
p.copy a:visited{
	color:#FFF;
}
div.sns img{
	width:10%;
	margin:2%;
}
@media screen and (max-width: 960px) {
div.sns img{
	width:20%;
}
}
	/* トップに戻るリンク */
#page-top{
	width:50%;
	margin:5% auto 0;
	display:block;
	clear:both;
	text-align:center;
}
#page-top span{
	display:block;
	clear:both;
	text-align:center;
	line-height:400%;
    margin-left: -35px;
}
.arrow{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #FFF;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}
.arrow::before,
.arrow::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	content: "";
	vertical-align: middle;
}
.arrow_up::before{
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	border-top: 2px solid #FFF;
	border-left: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (max-width: 960px) {
footer h4.foot_n{
	font-size:100%;
}
footer ul.footer{
	margin-left: -15%;
	line-height: 180%;
}
}

@media screen and (max-width: 767px) {
body{
	line-height:180%;
}
div.mega{
	width:85%;
	margin:0 2%;
	clear:both;
}
div.mega img{
	width:50%;
}
div.sns{
	width:50%;
}
}　




/* スクロールダウン */
html, body {
  height: 100%;
}
div.scrolld {
	width:0%;
	margin:0 auto;
	font-size:70%;
	opacity:0.5;
	text-align:center;
}
.box {
  width: 5px;
  height: 30px;
  margin: 0;
	padding:0;
  background: #fff;
  position: relative;
  overflow: hidden;
}
/* アニメーション設定 */
.arrowWrap {
  right: 0;
  bottom: 0;
  height: 30px
}
p.scroll_txt {
	width:30%;
	font-size: 60%;
	opacity:0.5;
}
.arrow {
  width: 1px;
  height: 50px;
  margin: 0px auto 0;
  position: relative;
  overflow: hidden;
}

.arrow::before {
  content: '';
  width: 1px;
  height: 100px;
  margin: 50px auto 0;
  background-color: #000;
  position: absolute;
  top: -150px;
  left: 0;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}

@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}

/* 料金 */
#comparison{
	padding: 3%;
	background-color:#FFF;
	font-size:80%;
	width: 90%;
	margin: 5% auto 10%;
}
#comparison h1{
	position: relative;
	font-size:150%;
	font-weight:600;
	line-height:150%;
	text-align:center;
	margin:1% auto 1%;
	padding-bottom: 2%;
}
#comparison table{
	width:90%;
	margin:1% auto;
	padding:1%;
}
#comparison table th.ttl{
	background:#1582ab;
	padding:1%;
	color:#fff;
	font-weight:normal;
}
#comparison table th.paid{
	background:#aed7ed;
	padding:1%;
}
#comparison table th.free{
	background:#dddddd;
	padding:1%;
}
#comparison table td.paid{
	background:#d1effa;
	padding:1%;
}
#comparison table td.free{
	background:#f2f2f2;
	padding:1%;
}
#comparison table td{
	padding:1%;
}
@media screen and (max-width: 767px) {
#comparison h1{
	margin: 10% auto 5%;
}
#comparison table{
	width:100%;
	margin:1% auto;
	padding:1%;
}
}