@charset "UTF-8";
@media screen and (max-width:640px){
	

#wrapper {
	background: #FFF;
    min-width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
}

header {
	background:url("../common/header_bg.jpg") left top repeat-x;
	width: 100%;
	padding: 0;
	margin: 0;
	z-index: 9999;
	position: fixed;
}

header .logo {
	width: 12%;
	padding: 0;
	margin: 0 0 0 8%;
	float: left;
}

header .tel {
	width: 60%;
	padding: 0;
	margin: 0.5% 0 0 3%;
	float: left;
}

header .menu {
	width: 5%;
	padding: 0;
	margin: 3.5% 3% 0 0;
	float: right;
}

header .menu a:hover img{
	opacity: 0.8;
	filter: alpha(opacity=70);
}

#mainimg {
	padding: 7.8% 0 0 0;
	margin: 0;
	position: relative;
}

#mainimg img.insta {
	width: 8%;
	bottom: 11%;
	left: 11%;
	position: absolute;
}

#contents {
	padding: 0;
	margin: 0;
}

#contents a:hover img{
	opacity: 0.8;
	filter: alpha(opacity=70);
}

main {
	font-size: 1.6rem;
	padding: 0;
	margin: 0;
}

footer {
	background: #01ced1;
	padding: 0;
	margin: 0;
}

footer .inner {
	width: 100%;
	color: #FFFFFF;
	font-size: 1.8rem;
	line-height: 1.6;
	padding: 5% 2%;
	margin: 0 auto;
}

footer .inner p.flogo {
	width: 24%;
	padding: 0;
	margin: 0 3% 0;
	float: right;
}

footer .inner p.address {
	font-size: 1.4rem;
	padding: 0;
	margin: 0;
}

footer .inner p.address span {
	display: block;
}

footer p.top {
    width: 50px;
    position: absolute;
    bottom: 220px;
    right: 50px;
}

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}

#page-top a {
    width: 40px;
    display: block;
}

#page-top a:hover {
    text-decoration: none;
}

small {
	font-size: 1.4rem;
	padding: 0;
	margin: 0;
}

/* main */

.title {
	color: #393939;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: -0.03em;
	text-align: center;
	padding: 3% 0 0 0;
	margin: 0 0 7% 0;
}

.title strong {
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	color: #00ced1;
	font-size: 3.6rem;
	font-weight: 900;
	letter-spacing: 0.03em;
	text-shadow:
    .5px .5px #00ced1,
    -.5px .5px #00ced1,
    -.5px -.5px #00ced1,
    .5px -.5px #00ced1,
    .5px 0px #00ced1,
    0px .5px #00ced1,
    -.5px 0px #00ced1,
    0px -.5px #00ced1;
}

.title span {
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	font-size: 3.6rem;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.03em;
	text-shadow:
    .5px .5px #393939,
    -.5px .5px #393939,
    -.5px -.5px #393939,
    .5px -.5px #393939,
    .5px 0px #393939,
    0px .5px #393939,
    -.5px 0px #393939,
    0px -.5px #393939;
}

a.anchor {
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}

p.copy {
	font-size: 1.6rem;
	line-height: 1.6;
	text-align: center;
	padding: 0 2%;
	margin: 0 0 8%;
}

/* about */

#about {
	background: #f4f3ef;
	padding: 5% 0;
	margin: 0;
}

#about .inner {
	width: 100%;
	padding: 0;
	margin: 0 auto;
}

#about .inner dl {
	font-size: 1.8rem;
	line-height: 1.8;
	padding: 0 3%;
	margin: 0;
}

#about .inner dl dt {
	padding: 0;
	margin: 0;
}

#about .inner dl dd {
	padding: 0;
	margin: 0 0 5%;
}

#about .inner dl dd span {
	display: block;
}

/* work */

#work {	padding: 5% 0;
	margin: 0;
}

#work .inner {
	width: 100%;
	padding: 0 2%;
	margin: 0 auto;
}

#work .inner dl {
	font-size: 1.6rem;
	padding: 0;
	margin: 5% 0;
}

#work .inner dl dt {
	width: 80%;
	padding: 0;
	margin: 0 10%;
}

#work .inner dl.d1 dt {
}

#work .inner dl.d2 dt {
}

#work .inner dl dt img {
	width: 100%;
	padding: 0;
	margin: 0 0 3%;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}

#work .inner dl dd {
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.6;
}

#work .inner dl.d1 dd {
	padding: 10px 0 0 0;
	margin: 0;
	float: right;
}

#work .inner dl.d2 dd {
	padding: 10px 0 0 0;
	margin: 0;
	float: left;
}

#work .inner dl dd p {
	padding: 0;
	margin: 0 0 20px;
}

#work .inner dl dd span {
	background: #64d7d9;
	color: #FFFFFF;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1;
	text-align: center;
	padding: 6px 0;
	margin: 0 0 20px;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	display: block;
}


/* flow */

#flow {
	background: #f4f3ef;
	padding: 5% 0;
	margin: 0;
}

#flow .inner {
	width: 100%;
	padding: 0 2%;
	margin: 0 auto;
}

#flow .inner ul {
	width: 100%;
	padding: 0 3% 0;
	margin: 0 0 5%;
}

#flow .inner ul li {
	background: #f0f8f8;
	color: #00ced1;
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1;
	padding: 5% 4%;
	margin: 0 0 3% 0;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border: 1px solid #00ced1;
	clear: both;
	display: block;
}

#flow .inner ul li strong {
	color: #333333;
	width: 50%;
	font-size: 1.6rem;
	font-weight: 500;
	padding: 0;
	margin: 0.5% 0 0 0;
	text-align: center;
	display: block;
	float: right;
}

/* support */

#support {	
	padding: 5% 0;
	margin: 0;
}

#support .inner {
	width: 100%;
	padding: 0 2%;
	margin: 0 auto;
}

#support .inner dl {
	padding: 0;
	margin: 0;
}

#support .inner dl dd {
	width: 31%;
	font-size: 1.6rem;
	line-height: 1.6;
	padding: 0;
	margin: 0 3% 0 0;
	float: left;
}

#support .inner dl dd:last-child {
	width: 31%;
	font-size: 1.6rem;
	line-height: 1.6;
	padding: 0;
	margin: 0;
	float: left;
}

#support .inner dl dd img {
	width: 100%;
	padding: 0;
	margin: 0 0 8%;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
}

#support .inner dl dd p {
	font-weight: 600;
	line-height: 1;
	text-align: center;
	padding: 5% 0;
	margin: 0 0 5%;
}

#support .inner dl dd span {
	display: block;
}

/* schedule */

#schedule {
	background: #f4f3ef;
	padding: 5% 0;
	margin: 0;
}

#schedule .inner {
	width: 100%;
	padding: 0 2%;
	margin: 0 auto;
}

#schedule .inner dl {
	width: 48%;
	padding: 0;
	margin: 0 4% 5% 0;
	float: left;
}

#schedule .inner dl:nth-child(odd) {
	margin: 0;
}

#schedule .inner dl dt {
	height: 120px;
	color: #FFFFFF;
	font-size: 2.4rem;
	font-weight: 800;
	text-align: center;
	line-height: 1.4;
	padding: 20px 0 0 0;
	margin: 0;
	position: relative;
}

#schedule .inner dl dt span {
	font-size: 4rem;
	padding: 0;
	margin: 0;
	display: block;
}

#schedule .inner dl dt.schedule1 { background: #ff7074;}
#schedule .inner dl dt.schedule2 { background: #fc9548;}
#schedule .inner dl dt.schedule3 { background: #2fbd9e;}
#schedule .inner dl dt.schedule4 { background: #f5c300;}

#schedule .inner dl dt:after{
  content: "";
  position: absolute;
  right: 0;
  bottom: -16px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-width: 16px 16px 0 16px;
}

#schedule .inner dl dt.schedule1:after{ border-color: #ff7074 transparent transparent transparent;}
#schedule .inner dl dt.schedule2:after{ border-color: #fc9548 transparent transparent transparent;}
#schedule .inner dl dt.schedule3:after{ border-color: #2fbd9e transparent transparent transparent;}
#schedule .inner dl dt.schedule4:after{ border-color: #f5c300 transparent transparent transparent;}

#schedule .inner dl dd {
	background: #FFFFFF;
	min-height: 390px;
	line-height: 1.6;
	padding: 40px 15px 20px;
	margin: 0;
}

#schedule .inner dl dd p {
	font-size: 2rem;
	font-weight: 600;
	line-height: 1;
	text-align: center;
	padding: 0;
	margin: 0 0 20px;
}

#schedule .inner dl dd img {
	width: 40%;
	padding: 0;
	margin: 0 30% 20px;
}

/* access */

#access {
	background: #f4f3ef;
	padding: 5% 0 0 0;
	margin: 0;
}

#access .inner {
	width: 100%;
	padding: 0;
	margin: 0 auto;
}

#access .inner table {
	width: 100%;
	line-height: 1.8;
	border-collapse:collapse;
	margin: 0 auto 10% auto;
    border-bottom: 1px solid #f4f3ef;
}

#access .inner table tr:nth-child(odd) {
    background: #FFFFFF;
    border-top: 1px solid #f4f3ef;
    border-bottom: 1px solid #f4f3ef;
	box-sizing: border-box;
}

#access .inner table th {
	font-weight: normal;
	text-align:left;
	padding: 3% 2%;
}

#access .inner table td {
	width: 74%;
	padding: 3%;
}

#access .inner table td span {
	display: block;
}

#access .map {
	height: 600px;
	padding: 0;
	margin: 0;
	border-top: 1px solid #e6e3dd;
	border-bottom: 1px solid #e6e3dd;
	box-sizing: border-box;
}

/* contact */

#contact {
	padding: 5% 0;
	margin: 0;
}

#contact .inner {
	width: 100%;
	padding: 0 0 5%;
	margin: 0 auto;
}

#contact .inner dl {
	background: #FFFFFF;
	font-weight: 600;
	line-height: 1.6;
	text-align: center;
	padding: 5% 0;
	margin: 0;
	border-top: solid 2px #01ced1;
	border-bottom: solid 2px #01ced1;
}

#contact .inner dl dt {
	color: #01ced1;
	font-size: 2rem;
	padding: 0;
	margin: 0;
}

#contact .inner dl dd {
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	color: #01ced1;
	font-size: 3.6rem;
	font-weight: 900;
	padding: 0;
	margin: 0;
	letter-spacing: 0.05em;
	text-shadow:
    .5px .5px #01ced1,
    -.5px .5px #01ced1,
    -.5px -.5px #01ced1,
    .5px -.5px #01ced1,
    .5px 0px #01ced1,
    0px .5px #01ced1,
    -.5px 0px #01ced1,
    0px -.5px #01ced1;
}

#contact .inner dl dd a {
	color: #01ced1;
	text-decoration: none;
}

#contact p.btn {
	background: #01ced1;
	color: #FFFFFF;
	font-size: 2rem;
	font-weight: 600;
	width: 70%;
	line-height: 1;
	text-align: center;
	padding: 4% 4%;
	margin: 8% 15% 0;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

#contact a {
	text-decoration: none;
}

#contact p.btn:hover {
	opacity: 0.8;
	filter: alpha(opacity=70);
}

#contact p.btn i {
	font-size: 2rem;
	margin: 0 10px 0 0;
}
 
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

}