@charset "UTF-8"; /* Table Of Contents
----------------------------------------------------------------------------
General Elements
header
gNav
visual
topicPath
footer
---------------------------------------------------------------------------- */
/*General Elements
---------------------------------------------------------------------------- */
html {
    font-size: 62.5%;
}
img {
 max-width: 100%;
 height: auto;
}
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic",sans-serif;
  font-weight: 400;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 2;
	-webkit-text-size-adjust: 100%;
	color: #000000;
	letter-spacing: 0.07em;
	background: #fff;
}

@media screen and (max-width: 767px){
  body {
    font-size: 1.4rem;
    letter-spacing: 0.03em;
  }
}

* {
    box-sizing: border-box;
}

input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

img {
  max-width: 100%;
}


@media screen and (min-width: 768px){

}

@media screen and (min-width:768px) and ( max-width:1024px) {
}

@media screen and (max-width: 767px){

}
/* mv
---------------------------------------------------------------------------- */
.p-fv {
    height:100vh;
    background: #DCE6F5;
    
}
.main_head {
    background-image: url("../images/p-fv.jpg") ;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
}

@media screen and (max-width: 767px){
	.p-fv {
		background-size:cover;
	}
}


/* scrolldown
---------------------------------------------------------------------------- */
.scrolldown {
    text-align: center;
    margin: 50px 0;
}
div.scrolldown img {
    width: 50px;
}
@media screen and (max-width: 767px){

}
/* m-content
---------------------------------------------------------------------------- */
.m-content {
  max-width: 750px;
  margin: 0 auto;
/*  padding: 0 30px;*/
}

.en {
font-family: 'Roboto', sans-serif;
}


@media screen and (max-width: 767px){

  .m-content {
/*      padding: 0 20px;*/
  }
}

/* p-about
---------------------------------------------------------------------------- */
    .p-about {
    margin-top: 50px;
    padding: 0 50px;
}

@media screen and (max-width: 767px){
    .p-about {
    padding: 0px;

    }	
}
/* p-plan
---------------------------------------------------------------------------- */
.p-plan {
  margin-top: 100px;
  position: relative;
 }

p.keynote-link {
  position: absolute;
  bottom: 165px;
  left: 360px;
}
p.keynote-link a{
  font-size: 16px;
  font-weight: 600;
/*  text-decoration: none;*/
  color: #DB5E2E;
  outline: none;
}
@media screen and (min-width: 768px){
p.keynote-link a:hover {
    text-decoration: none;
    color: #000;
}
}

@media screen and (max-width: 767px){
.p-plan {
    margin-top: 50px;
}
p.keynote-link {
    bottom: 13%;
    left: 48%;
}
p.keynote-link a{
  font-size: 0.85em;
}
}


/* p-sync
---------------------------------------------------------------------------- */

.p-sync {
  margin-top: 50px;
  text-align: center;
}
p.sync-link {
  margin-top: 20px;
    }
p.sync-link a{
  font-size: 18px;
  text-decoration: none;
  color: #000;
  outline: none;
}

@media screen and (min-width: 768px){
p.sync-link a:hover {
    text-decoration: none;
    color: #4488C9;
}
}

@media screen and (max-width: 767px){

}

/* p-service
---------------------------------------------------------------------------- */
.p-service {
  margin-top: 100px;
}

@media screen and (min-width: 768px){

}

@media screen and (max-width: 767px){
.p-service {
  margin-top: 50px;
}
}

/* p-works
---------------------------------------------------------------------------- */
.p-works {
  text-align: center;
  margin-top: 30px;
}
.btn-works {
    margin: auto;
    max-width: 200px;
}
p.btn-works a{
  background: #fff;
  color: #4488C9;
  border: 2px solid #4488C9;
  border-radius: 0;
/*  padding: 10px 0;*/
  text-decoration: none;
  font-size: 20px;
  font-family: 'Roboto', sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}

@media screen and (min-width: 768px){
  p.btn-works a:hover {
  color: #fff;
  background: #4488C9;
}

}

@media screen and (max-width: 767px){
  .p-works {
  margin-top: 10px;
}
  .btn-works {
  margin: auto;
  /*  max-width: 250px;*/
}
  p.btn-works a{
   font-size: 18px;
   border: 1px solid;
}

}
/* p-flow
---------------------------------------------------------------------------- */
.p-flow {
  margin-top: 100px;
}

@media screen and (min-width: 768px){

}

@media screen and (max-width: 767px){
.p-flow {
  margin-top: 50px;
}
}


/* l-footer
---------------------------------------------------------------------------- */
.l-footer {
    margin: 100px auto 10px;
    text-align: center;
    max-width: 750px;

}
.btn-contact {
    margin: auto;
    max-width: 400px;
}
p.btn-contact a{
  background: #000;
  color: #fff;
  padding: 10px 0;
  text-decoration: none;
  font-size: 24px;
  font-family: 'Roboto', sans-serif;
  text-align: center;
  transition: .3s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-logo {
	margin: 150px auto 50px;
}
@media screen and (min-width: 768px){
p.btn-contact a:hover {
    text-decoration: none;
    color: #000;
    background:#4488C9;
}
}
@media screen and (max-width: 767px){
	.l-footer {
    margin-top:50px;
	}
    .btn-contact {
    margin: auto;
    max-width: 250px;
}
    p.btn-contact a{
    padding: 5px 0;
    font-size: 22px;
  }
    .footer-logo {
	margin: 100px auto 50px;
}
}