@charset "utf-8";

/***************************************************
	common.css
	共通レイアウトスタイル定義
***************************************************/
/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}

/* Resetg
------------------------------------------------------------ */
html {	font-size: 10px;overflow-y: scroll;}h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd {	margin: 0;padding: 0;border: 0;outline: 0;font-size: 1em;}address,caption,cite,code,dfn,em,strong,th,var {	font-style: normal;}a,a:hover,a:active,a:visited {	margin: 0;padding: 0;overflow: hidden;outline: none;}img {	vertical-align: bottom;-webkit-user-select: none;-moz-user-select: none;-khtml-user-select: none;-webkit-user-drag: none;-khtml-user-drag: none;}
/* normalize.css --END-- */

/* Base
------------------------------------------------------------ */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html {	-webkit-font-smoothing: antialiased;}

body {
	position: relative;
	width: 100%;
	color: #333;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	font-size: 16px;
	line-height: 1.7;
  background: #F2F2F2;
}
h1,h2,h3,h4,h5 {
	margin-bottom: 1em;
	font-weight: bold;
	line-height: 1em;
}
p,dl,ol,ul,menu,pre {	margin-bottom: 1em;}
ol,ul,menu {	padding: 0;}
ul {	list-style: none;}
ol {	margin-left: 1.5em;}
fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}
textarea {    resize: vertical;}
img, object, embed {	max-width: 100%;}
img {
	height: auto;
	vertical-align: bottom;
}
small {	font-size: 12px;}

@media only screen and (max-width: 767px) {
	body {
		font-size: 16px;
		line-height: 1.7;
	}
	small {	font-size: 10px;}
}
@media screen and (min-width:768px) and ( max-width:1024px) {

}
/* Link
------------------------------------------------------------ */

a:link {
	color: #343F52;
	text-decoration: underline;
}
a:visited {
	color: #65C9BA;
	text-decoration: underline;
}
a:hover {
	color: #65C9BA;
	text-decoration: none;
}
a:active {}
a, a img {
  -webkit-transition: .3s;
  transition: .3s;
	}
/* Layout
------------------------------------------------------------ */
#page {
    min-width: 1000px;
    height: 100%;
		padding-top: 17rem;
    overflow: hidden;
}
.section{margin: 5em auto;}
.low .section{margin: 1em auto;}
.container{
	width: 1000px;
  max-width: 1000px;
  margin: auto;
}
@media only screen and (max-width: 767px) {
		#page {
			min-width: 100%;
			padding-top: 14rem;
		}
		.low #page {    padding-top: 9rem;}
		.container {
    width: 90%;
    max-width: 90%;
	}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	#page {
		min-width: 100%;
	}
	.container {
	width: 90%;
	max-width: 90%;
}


}
/* header
---------------------------- */
#header{
	position: fixed;
	width: 100%;
	top: 0;
	padding: 1em 0 2em;
  background: linear-gradient( rgb(255 255 255)70%, rgb(255 255 255 / 8%)70%, rgb(255 255 255 / 0%));
	z-index: 9;
	transition: all .5s ease;
}
.low #header{
  background: none;
	padding: 1em 0;
}
#hm-header{
	display: flex;
	justify-content: flex-end;
}
.low #hm-header{padding: 0 1em;}
h1.logo {
	width: 96%;
	margin: 0 auto;
	text-align: center;
}
h1.logo img{ width: 30rem;}
#hm-header .hm_gmenu {
	width: 55px;
	position: relative;
}
.low #hm-header .hm_gmenu {
	width: 55px;
	position: relative;
	background: #65C9BA;
	line-height: 1;
	height: 50px;
	border-radius: 12px;
}

/*　ハンバーガーボタン　*/
.hamburger {
  display: block;
  position: relative;
  z-index: 3;
  top: 12px;
  left: 0;
  right: 0;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  text-align: center;
  margin: auto;
}
.hamburger span {
  display: block;
  position: absolute;
  width: 3rem;
  height: 2px;
  background : #707070;
	border-radius: 10px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.low .hamburger span {background : #fff;}
.hamburger span:nth-child(1) {top: 10%;}
.hamburger span:nth-child(2) {top: 39%;}
.hamburger span:nth-child(3) {top: 70%;}
/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	background: #fff;
  top : 20px;
  left: -1px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	background: #fff;
  top: 20px;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  overflow: auto;
  width: 100%;
  height: 100%;
  top  : 0;
  left : 0;
  color: #000;
  background: #65C9BA;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
}
.menuin_ttl{
width: 50%;
padding: 5px;
margin: 1.2em auto 1em;
border: 1.5px solid #000;
font-size: 1.2em;
font-weight: bold;
}
nav.globalMenuSp a{
	color: #fff;
	font-size: 1.3em;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}
nav.globalMenuSp p{    margin: 1.5em auto;}
nav.globalMenuSp dl{margin: 1.5em auto;}

nav.globalMenuSp dt{
	color: #343F51;
  margin-bottom: 0.2em;
}
nav.globalMenuSp dd{
	margin: 0em auto 1em;
  line-height: 1.5;
	}
nav.globalMenuSp dd span{
	display: block;
	font-size: 1.3em;
  color: #fff;
	}
	.is-animation {
		padding: 0;
		font-size: 1em;
	}
	.low #header.is-animation,
	#header.is-animation{
	background: #ffffffe8;
	padding: 0.5em 0;
	}
	#header.is-animation #hm-header{    align-items: center;}
	#header.is-animation h1.logo img { width: 12rem;}
	#header.is-animation .hamburger{    top: 0;}
	.low #header.is-animation .hamburger{ top: 12px;}

@media only screen and (max-width: 767px) {
	#header {
	    background: linear-gradient( rgb(255 255 255)30%, rgb(255 255 255 / 8%)30%, rgb(255 255 255 / 0%));
	}
.low #header{background: none;}
	#header .headin {display: none;}
	#hm-header{
		display: flex;
    justify-content: flex-end;
	}
.low #hm-header{padding: 0 10px;}
	h1.logo {
		width: 100%;
    margin: 0 auto;
    text-align: center;
}
.low h1.logo {
    width: 40%;
    margin: 0 auto 0 0;
}
h1.logo img {width: 60vw;}
#hm-header .hm_gmenu {
    width: 15%;
    position: relative;
}
.low #hm-header .hm_gmenu {    width: 15%;}
/*　ハンバーガーボタン　*/
.hamburger {
  display: block;
  position: relative;
  z-index: 3;
  top: 0;
  left: 0;
  right: 0;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  text-align: center;
  margin: auto;
}
.low .hamburger {top: 12px;}
.hamburger span {
  display: block;
  position: absolute;
  width: 3rem;
  height: 2px;
  background : #707070;
	border-radius: 10px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition   : 0.3s ease-in-out;
  transition        : 0.3s ease-in-out;
}
.low .hamburger span {background : #fff;}
.hamburger span:nth-child(1) {top: 10%;}
.hamburger span:nth-child(2) {top: 39%;}
.hamburger span:nth-child(3) {top: 70%;}
/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
	background: #fff;
  top : 20px;
  left: -1px;
  -webkit-transform: rotate(-45deg);
  -moz-transform   : rotate(-45deg);
  transform        : rotate(-45deg);
}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
	background: #fff;
  top: 20px;
  -webkit-transform: rotate(45deg);
  -moz-transform   : rotate(45deg);
  transform        : rotate(45deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : 2;
  overflow: auto;
  width: 100%;
  height: 100%;
  top  : 0;
  left : 0;
  color: #000;
  background: #65C9BA;
  text-align: center;
  transform: translateX(100%);
  transition: all 0.6s;
}
.menuin_ttl{
width: 50%;
padding: 5px;
margin: 1.2em auto 1em;
border: 1.5px solid #000;
font-size: 1.2em;
font-weight: bold;
}
nav.globalMenuSp a{
	color: #fff;
	font-size: 1.2em;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
  transform: translateX(0%);
}
nav.globalMenuSp p{    margin: 1.5em auto;}
nav.globalMenuSp dl{margin: 1.5em auto;}

nav.globalMenuSp dt{
	color: #343F51;
  margin-bottom: 0.2em;
}
nav.globalMenuSp dd{
	margin: 0em auto 1em;
  line-height: 1.5;
	}
nav.globalMenuSp dd span{
	display: block;
	font-size: 1.3em;
  color: #fff;
	}
	#header.is-animation h1.logo img {width: 9rem;}

}
@media screen and (min-width:768px) and ( max-width:1024px) {
#header {
    background: linear-gradient( rgb(255 255 255)50%, rgb(255 255 255 / 8%)50%, rgb(255 255 255 / 0%));
}
h1.logo {
    width: 90vw;
    margin: 0 0 0 auto;
}
h1.logo img {}
#header.is-animation h1.logo img { width: 15vw;}

}

/* TOPへ戻る
---------------------------- */
#page_top{
  position: fixed;
  right: 5%;
  bottom: 5%;
	z-index: 3;
}
#page_top a{
	text-align: center;
	width: 6em;
	font-size: 0.9em;
	text-decoration: none;
	height: 8em;
	display: block;
	padding-top: 4.5em;
}
#page_top a::before{
	content: "";
	position: absolute;
	background: url(/atsugi-de-cycle/assets/img/common/top_icon.svg) 50% 0% no-repeat;
	background-size: contain;
	width: 5em;
	height: 5em;
	top: 0px;
}
/* フッター
---------------------------- */
#footer{
	position: relative;
	background: #65C9BA;
	margin-top: 15em;
}
#footer::before{
	content: "";
	position: absolute;
	background: url(/atsugi-de-cycle/assets/img/common/footer_bg.png) 0% 100% no-repeat;
	background-size: contain;
	width: 1000px;
	height: 30%;
	top: -27%;
	margin: auto;
	left: 0;
	right: 0;
}
#footer .footer-in{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding: 5% 0;
	width: 60vw;
	margin: auto;
}
#footer .footer-con{
	margin-right: 0%;
  width: 49%;
}
#footer .footer-con dt a{
	color: #343F52;
	text-decoration: none;
}
#footer .footer-con dd a{
		color: #fff;
		text-decoration: none;
	}
	.f-info{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	align-items: baseline;
	}
	.f-info h4{    width: 50%;}
	.f-snsarea{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: 40%;
}

	.f-snsarea .snsbtn:first-child{margin-right: 5%;}
	.f-info .svg-inline--fa.fa-w-14 {
    width: 1.5em;
    height: 1.5em;
    color: #fff;
}
	.f-info .svg-inline--fa.fa-w-16 {
    width: 1.5em;
    height: 1.5em;
		color: #fff;
}
.fa-instagram:before {
    font-size: 1.5em;
		 color: #fff;
		 transition: all 0.3s ease-in-out;
}
.fa-x-twitter:before {
    font-size: 1.5em;
    color: #fff;
		transition: all 0.3s ease-in-out;
}
.f-snsarea .snsbtn a{ transition: all 0.3s ease-in-out;}
.f-snsarea .snsbtn a:hover .fa-instagram:before,
.f-snsarea .snsbtn a:hover .fa-x-twitter:before{ color: #417970;}

.footer-con p{color: #fff;}
@media only screen and (max-width: 767px) {
	#footer::before {
		content: "";
    position: absolute;
    background: url(/atsugi-de-cycle/assets/img/common/footer_bg_sp.png) 0% 100% no-repeat;
    background-size: 100%;
    width: 100vw;
    height: 12%;
    top: -11%;
    left: 0;
    right: 0;
}
#footer .footer-in {    width: 95vw;}
#footer .footer-con {
		width: 100%;
    margin-right: 0%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#footer .footer-con dl{margin-bottom: 0.5em;}
#footer .footer-con dl:nth-of-type(1),
#footer .footer-con dl:nth-of-type(4){width: 100%;}
#footer .footer-con dl:nth-of-type(2){width: 50%;}
#footer .footer-con dl:nth-of-type(3){width: 49%;}
#footer .footer-con dt {font-size: 0.9em;}
#footer .footer-con dt a {font-size: 0.9em;}
#footer .footer-con dd {margin-bottom: 0.5em;}
#footer .footer-con dd a {font-size: 0.8em;}
.f-info {  width: 100%;}
#footer .footer-con h4{width: 60%;}
.f-snsarea {    width: 39%;}
.f-snsarea .snsbtn:first-child {margin-right: 15%;}
.footer-con p{
	font-size: 0.9em;
	margin-bottom: 0;
	}
}
@media screen and (min-width:768px) and ( max-width:1024px) {
	#footer::before {
		top: -11vh;
    width: 100%;
}
#footer .footer-in {    width: 95vw;}
}
/* 共通style
---------------------------- */
.ttl{
	text-align: center;
	padding: 2em 0;
	margin: auto;
	font-size: 2em;
	font-weight: normal;
	letter-spacing: 0.1em;
}
.ttl span{	position: relative;}
a.btn02{
	display: block;
	padding: 5px 0;
	background: #fff;
	border: 1px solid #65C9BA;
	border-radius: 20px;
	text-align: center;
	font-size: 1.2em;
	color: #65C9BA;
	text-decoration: none;
}
a.btn03 {
	display: block;
	padding: 5px 0;
	background: #65C9BA;
	border: 1px solid #65C9BA;
	border-radius: 20px;
	text-align: center;
	color: #fff;
	text-decoration: none;
}
/* テキストリンク>>> */
a.txtlink01{
  position: relative;
display: block;
margin-top: 1em;
text-align: right;
font-size: 0.9em;
color: #F76552;
padding-right: 45px;
}
a.txtlink01 span {
  position: absolute;
  top: 7px;
  right: 26px;
  width: 10px;
  height: 10px;
  margin-right: 5px;
  border-right: 1px solid #F76552;
  border-bottom: 1px solid #F76552;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: sdb 2s infinite; */
  animation: sdb 2s infinite; */
  opacity: 0; */
  box-sizing: border-box;
}
a.txtlink01 span:nth-of-type(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}
a.txtlink01 span:nth-of-type(2) {
  right: 13px;
  -webkit-animation-delay: .15s;
  animation-delay: .15s;
}
a.txtlink01 span:nth-of-type(3) {
  right: 0px;
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/* 吹き出し本体 */
.balloon{
	position: relative;
	padding: 5px 0 8px 20px;
	border-radius: 25px;
	background: #44ceb3;
	margin-bottom: 1.5em;
	width: 60%;
}
.balloon::before{
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 30px;
	bottom: -14px;
	border-top: 15px solid#44ceb3;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
.balloon p{
text-align: left;
margin: auto;
font-size: 0.9em;
color: #fff;
line-height: 1.5;
font-weight: bold;
}


@media only screen and (max-width: 767px) {
	.ttl {font-size: 1.3em;}
	.balloon {
    padding: 5px 0 8px 0px;
		margin: 0 auto 1.5em;
    width: 90%;
}
.balloon::before {left: 47%;}

}
@media screen and (min-width:768px) and ( max-width:1024px) {
	.balloon {
    padding: 10px 0 10px 30px;
    border-radius: 35px;
    width: 35%;
}
	.balloon::before {left: 40px;}
	.osusume .box .txt .balloon p {font-size: 0.9em;}

}
/*-----------------------------------------------
	スマホ対応
-----------------------------------------------*/
.is-sp{display: none;}
.is-pc{display: block;}
@media only screen and (max-width: 767px) {
.is-sp{display: block;}
.is-pc{display: none;}
}
@media screen and (min-width:768px) and ( max-width:1024px) {}
