@charset "utf-8";


/* =============================================================

	top

* ============================================================= */

/* top-hero
--------------------------- */

.top-hero {
	background-color: #fff;
	height: 100vh;
	min-height: 600px;
	max-height: 1000px;
	margin-top: -110px;
	padding-top: 110px;
	position: relative;
}

.top-hero-img {
	height: 100%;
	margin: 0 -2.5vw;
	position: relative;
}

.top-hero-img > li {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	z-index: 1;
	-webkit-transform: translate(2%, 0);
	    -ms-transform: translate(2%, 0);
	        transform: translate(2%, 0);
	opacity: 0;
}

.top-hero-img > li.active {
	z-index: 3;
	-webkit-transform: translate(0, 0);
	    -ms-transform: translate(0, 0);
	        transform: translate(0, 0);
	opacity: 1;
	-webkit-transition: opacity 3s .2s, -webkit-transform 7s linear .2s;
	transition: opacity 3s .2s, -webkit-transform 7s linear .2s;
	transition: opacity 3s .2s, transform 7s linear .2s;
	transition: opacity 3s .2s, transform 7s linear .2s, -webkit-transform 7s linear .2s;
}

.top-hero-img > li.gone {
	z-index: 2;
	-webkit-transform: translate(-1%, 0);
	    -ms-transform: translate(-1%, 0);
	        transform: translate(-1%, 0);
	opacity: 1;
	-webkit-transition: opacity 1s, -webkit-transform 2s linear;
	transition: opacity 1s, -webkit-transform 2s linear;
	transition: opacity 1s, transform 2s linear;
	transition: opacity 1s, transform 2s linear, -webkit-transform 2s linear;
}

.top-hero-txt {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 7%;
	margin-top: -100px;
}

.top-hero-name {
	color: #78B97F;
	font-size: 1.0625em; /* 17px */
	font-weight: 600;
	letter-spacing: 4px;
	margin-bottom: 20px;
	overflow: hidden;
	white-space: nowrap;
	opacity: 0;
	-webkit-transform: translateX(20px);
	    -ms-transform: translateX(20px);
	        transform: translateX(20px);
	-webkit-transition: opacity .3s, -webkit-transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: opacity .3s, -webkit-transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: opacity .3s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: opacity .3s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	-webkit-transition-delay: .5s;
	        transition-delay: .5s;
}
body.load-end .top-hero-name {
	opacity: 1;
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
}

.top-hero-name > span {
	font-size: 0.764em; /* 13px */
	display: inline-block;
	margin-left: 1em;
}

.top-hero-copy {
	color: #2E3233;
	font-size: 2.5em; /* 40px */
	line-height: 1.4;
	margin-bottom: 50px;
}

.top-hero-copy > span {
	display: block;
	width: 0;
	overflow: hidden;
	white-space: nowrap;
	-webkit-transform: translateX(-20px);
	    -ms-transform: translateX(-20px);
	        transform: translateX(-20px);
	opacity: 0;
	-webkit-transition: width 1s, opacity .3s, -webkit-transform .6s;
	transition: width 1s, opacity .3s, -webkit-transform .6s;
	transition: width 1s, transform .6s, opacity .3s;
	transition: width 1s, transform .6s, opacity .3s, -webkit-transform .6s;
	-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	-webkit-transition-delay: 1.2s;
	        transition-delay: 1.2s;
}
.top-hero-copy > span:last-child {
	-webkit-transition: width 1.4s, opacity .3s, -webkit-transform .8s;
	transition: width 1.4s, opacity .3s, -webkit-transform .8s;
	transition: width 1.4s, transform .8s, opacity .3s;
	transition: width 1.4s, transform .8s, opacity .3s, -webkit-transform .8s;
	-webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	        transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	-webkit-transition-delay: 1.5s;
	        transition-delay: 1.5s;
}
body.load-end .top-hero-copy > span {
	width: 9em;
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	opacity: 1;
}

.top-hero-btn {
	opacity: 0;
	-webkit-transform: translateX(-10px);
	    -ms-transform: translateX(-10px);
	        transform: translateX(-10px);
	-webkit-transition: opacity .5s, -webkit-transform .5s;
	transition: opacity .5s, -webkit-transform .5s;
	transition: opacity .5s, transform .5s;
	transition: opacity .5s, transform .5s, -webkit-transform .5s;
	-webkit-transition-delay: 2.2s;
	        transition-delay: 2.2s;
}

body.load-end .top-hero-btn {
	-webkit-transform: translateX(0);
	    -ms-transform: translateX(0);
	        transform: translateX(0);
	opacity: 1;
}



/* top-updates
--------------------------- */

.top-updates.c-container {
	padding-bottom: 4rem;
}

.top-updates-item > figure {
	margin-bottom: 0;
}

.top-updates-item > .thum {
	width: 70px;
	height: 70px;
	border: 2px solid #fff;
	position: absolute;
	left: 50%;
	margin: -20px 0 0 -35px;
}

.top-updates-item > .title {
	font-size: 1em;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	/*margin-top: 75px; SIAO*/
}

/* SIAO*/
.top-updates-item > .title > font {
	color:#2ead95;
}

/* top-about
--------------------------- */

.top-about {
	position: relative;
	z-index: 1;
}

.top-about-title {
	position: relative;
	margin-bottom: 22%;
}

.top-about-title > span {
	text-indent: -9999px;
	width: 517px;
	height: 88px;
	background: url(../images/c-sprite01.png) no-repeat -250px 0;
	display: block;
	margin: 0 auto;
}

.top-about-title:after {
	content: "";
	width: 139px;
	height: 99px;
	background: url(../images/c-sprite01.png) no-repeat 0 -100px;
	position: absolute;
	left: 50%;
	margin: -20px 0 0 -70px;
}

.top-about-img {
	position: absolute;
	top: 0;
	left: 5%;
	width: 90%;
	z-index: -1;
}

.top-about-img > img {
	max-width: 1280px;
}

.top-about > .c-button-set {
	margin-top: 40px;
}


/* top-works
--------------------------- */

.top-works-grids {
	padding-top: 50%;
	position: relative;
	z-index: 1;
}

.top-works-grids > .grid {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
}

.top-works-grids > .grid.left {
	left: 0;
	width: 61.8%;
}
.top-works-grids > .grid.right {
	right: 0;
	width: 38.2%;
}
.top-works-grids > .grid.top {
	height: 61.8%;
}
.top-works-grids > .grid.right.bottom {
	height: 38.2%;
	top: 61.8%;
}


.top-works-grids > .grid > a,
.top-works-grids > .grid > div {
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	overflow: hidden;
}

.top-works-grids > .grid > a {
	top: 0;
	background-color: transparent;
	opacity: 0;
	-webkit-transition: opacity 2s, background-color .2s;
	transition: opacity 2s, background-color .2s;
	overflow: hidden;
}
.top-works-grids > .grid > a:hover {
	background-color: #000;
}
.top-works-grids > .grid > a.active {
	opacity: 1;
	z-index: 1;
}

.top-works-grids > .grid > a > b {
	color: #fff;
	font-size: 1.3125em;
	position: absolute;
}
.top-works-grids > .grid.left > a > b {
	left: 4%;
	bottom: 4%;
}
.top-works-grids > .grid.right > a > b {
	right: 4%;
	top: 4%;
}

.top-works-grids > .grid > a > i {
	display: block;
}

.top-works-grids > .grid > a.active > i {
	-webkit-animation: top-works-grids 8s forwards;
	        animation: top-works-grids 8s forwards;
}
@-webkit-keyframes top-works-grids {
	0% { -webkit-transform: scale(1); transform: scale(1); }
	100% { -webkit-transform: scale(1.03); transform: scale(1.03); }
}
@keyframes top-works-grids {
	0% { -webkit-transform: scale(1); transform: scale(1); }
	100% { -webkit-transform: scale(1.03); transform: scale(1.03); }
}

.top-works-grids > .grid > a.gone > i {
	-webkit-transform: scale(1.03);
	    -ms-transform: scale(1.03);
	        transform: scale(1.03);
}

.top-works-grids > .grid > a img {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	-webkit-transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, transform .3s;
	transition: opacity .3s, transform .3s, -webkit-transform .3s;
}
.top-works-grids > .grid > a:hover img {
	opacity: .7;
	-webkit-transform: scale(1.02);
	    -ms-transform: scale(1.02);
	        transform: scale(1.02);
	-webkit-transition: opacity .3s, -webkit-transform .5s;
	transition: opacity .3s, -webkit-transform .5s;
	transition: opacity .3s, transform .5s;
	transition: opacity .3s, transform .5s, -webkit-transform .5s;
}

.top-works-grids > .grid > div {
	background-color: #78B97F;
}
.top-works-grids > .grid > div > a {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -29px 0 0 -130px;
	border: 1px solid #fff;
	-webkit-transition: background-color .2s, border-color .2s, -webkit-box-shadow .3s;
	transition: background-color .2s, border-color .2s, -webkit-box-shadow .3s;
	transition: background-color .2s, box-shadow .3s, border-color .2s;
	transition: background-color .2s, box-shadow .3s, border-color .2s, -webkit-box-shadow .3s;
}
.top-works-grids > .grid > div > a:hover {
	border-color: transparent;
}


/* =============================================================

	pdo

* ============================================================= */

/* pdo-header
--------------------------- */

.pdo-header-island {
	width: 65%;
	margin-left: auto;
	position: relative;
	z-index: 1;
}

.pdo-header-island > .c-subtitle-A {
	margin-bottom: 10px;
	text-align: left;
}

.pdo-header-island > .c-title-A {
	text-align: left;
	margin-bottom: 20px;
}

.pdo-header-img {
	width: 70%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}


/* pdo-nav
--------------------------- */

.pdo-nav-item {
	height: 170px;
	display: block;
	position: relative;
	overflow: hidden;
	background-color: transparent;
	-webkit-transition: background-color .2s;
	transition: background-color .2s;
}
.pdo-nav-item:hover {
	background-color: #000;
}

.pdo-nav-item > img {
	opacity: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	-webkit-transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, transform .3s;
	transition: opacity .3s, transform .3s, -webkit-transform .3s;
}
.pdo-nav-item:hover > img {
	opacity: .7;
	-webkit-transform: scale(1.07);
	    -ms-transform: scale(1.07);
	        transform: scale(1.07);
	-webkit-transition: opacity .3s, -webkit-transform .5s;
	transition: opacity .3s, -webkit-transform .5s;
	transition: opacity .3s, transform .5s;
	transition: opacity .3s, transform .5s, -webkit-transform .5s;
}


.pdo-nav-item > .c-button {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -26px 0 0 -105px;
}



/* =============================================================

	pdo-design

* ============================================================= */


/* design-header
--------------------------- */

.design-header > .c-title-A {
	font-size: 2.5em; /* 40px */
	margin-bottom: 0;
}


/* design-article
--------------------------- */

.design-article-item + .design-article-item {
	margin-top: 8%;
}

.design-article-item > figure > span {
	display: block;
}
.design-article-item.item1 > figure > span {
	margin: 0 -22% 0 -18%;
}
.design-article-item.item2 > figure > span {
	margin: 0 -2% 0 -4%;
}
.design-article-item.item3 > figure > span {
	margin: 0 -12% 0 -8%;
}
.design-article-item.item4 > figure > span {
	margin: 0 -7% 0 -2%;
}

.design-article-item > p {
	text-align: justify; /* for ff, webkit */
	text-justify: inter-ideograph; /* for IE */
	position: relative;
}
.design-article-item.item1 > p,
.design-article-item.item3 > p {
	padding-right: 15% !important;
}
.design-article-item.item2 > p,
.design-article-item.item4 > p {
	padding-left: 15% !important;
}


.scrollevents .design-article-item .js-sa-elm {
	-webkit-transform: translate(-30px,0);
	    -ms-transform: translate(-30px,0);
	        transform: translate(-30px,0);
}
.scrollevents .design-article-item.item1 .js-sa-elm,
.scrollevents .design-article-item.item3 .js-sa-elm {
	-webkit-transform: translate(30px,0);
	    -ms-transform: translate(30px,0);
	        transform: translate(30px,0);
}

.scrollevents .design-article-item .js-sa-elm.active {
	-webkit-transform: translate(0,0);
	    -ms-transform: translate(0,0);
	        transform: translate(0,0);
	-webkit-transition: opacity .8s, -webkit-transform 1s;
	transition: opacity .8s, -webkit-transform 1s;
	transition: opacity .8s, transform 1s;
	transition: opacity .8s, transform 1s, -webkit-transform 1s;
}

.design-article-cap {
	color: #777C80;
	font-size: 0.9375rem;
	margin-top: 3%;
	text-align: right;
}



/* =============================================================

	pdo-process

* ============================================================= */

.process-article {
	position: relative;
}

.process-article:before {
	content: "";
	width: 0;
	height: 100%;
	border-right: 2px dotted #ccc;
	position: absolute;
	left: 50%;
}


/* process-timeline
--------------------------- */

.process-timeline.fixed > .c-timeline-inner {
	top: 160px;
}

.process-timeline > .c-timeline-inner:before {
	content: 'STEP';
}

.process-timeline .c-timeline-list > li {
	counter-increment: step;
}

.process-timeline .c-timeline-item:before {
	content: counter(step);
	color: #fff;
	font-size: 0.75em; /* 12px */
	font-weight: 600;
	line-height: 1;
	text-align: center;
	width: 1em;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	margin: -.5em 0 0 -.5em;
	-webkit-transition: background-color .2s;
	transition: background-color .2s;
}

.process-timeline .c-timeline-item:after {
	width: 20px;
	height: 20px;
	margin: -12px 0 0 -12px;
}

.process-timeline .c-timeline-item > span {
	color: #fff;
	width: 9em;
	background-color: #78B97F;
	right: 45px;
}

.process-timeline .c-timeline-item > span:after {
	border-left-color: #78B97F;
}

.process-timeline .c-timeline-item > span > i {
	color: #fff;
}


/* process-title
--------------------------- */

.process-title {
	position: relative;
	z-index: 20;
	height: 57px;
	margin-bottom: 6%;
}
.process-title > ul {
	position: absolute;
	width: 100%;
}
.process-title.fixed > ul {
	position: fixed;
	top: 60px;
}

.process-title > ul > li {
	width: 50%;
	display: inline-block;
}
.process-title > ul > li:first-child:after {
	content: "";
	width: 1px;
	height: 40px;
	background-color: #C8C5AF;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -20px;
}

.process-title.fixed > ul > li {
	background-color: rgba(226,224,211,0.9);
}


/* process-step
--------------------------- */

.process-step {
	position: relative;
	padding-top: 150px;
	margin: -150px 0 6%;
}


/* process-step-header */

.process-step-header {
	position: relative;
	margin-bottom: 60px;
}

.process-step-header > .c-badge {
	top: auto;
	bottom: -40px;
	z-index: 10;
}

.process-step-header > figure {
	width: 200px;
	margin: 0 auto;
}

.process-step-header > h2,
.process-step-header > .during {
	color: #325E35;
	font-weight: 600;
	line-height: 1.6;
	width: 50%;
	position: absolute;
	top: 50%;
}

.process-step-header > h2 {
	font-size: 1.4em;
	text-align: right;
	padding-right: 130px;
	margin-top: -.5em;
}

.process-step-header > .during {
	letter-spacing: 2px;
	padding-left: 130px;
	left: 50%;
	margin-top: -.8em;
}
.process-step-header > .during > span {
	font-size: 1.4em;
}


/* .process-step-list */

.process-step-list {
	margin-bottom: 60px;
}

.process-step-list > li {
	color: #777C80;
	font-size: 0.9375em; /* 15px */
	line-height: 1.8;
	width: 43%;
	padding: 30px;
	margin-bottom: 30px;
	background-color: #fff;
	-webkit-box-shadow: 1px 1px 0 rgba(0,0,0,.05);
	        box-shadow: 1px 1px 0 rgba(0,0,0,.05);
	position: relative;
}

.process-step-list > li.right {
	margin-left: auto;
}
.process-step-list > li.left + li.right,
.process-step-list > li.right + li.left {
	margin-top: -90px;
}

.process-step-list > li.center {
	padding: 0;
	width: auto;
	margin-top: 40px;
	margin-bottom: 40px;
}

.process-step-list > li:before {
	content: "";
	height: 1px;
	position: absolute;
	top: 50%;
	background-color: #ccc;
}
.process-step-list > li.left:before {
	width: 17%;
	right: -17%;
}
.process-step-list > li.right:before {
	width: 16%;
	left: -16%;
}
.process-step-list > li.center:before {
	content: none;
}

.process-step-list > li:after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: #C8C5AF;
	position: absolute;
	top: 50%;
	z-index: 1;
}
.process-step-list > li.left:after {
	right: -17%;
	margin: -5px -4px 0 0;
}
.process-step-list > li.right:after {
	left: -16%;
	margin: -3px 0 0 -3px;
}
.process-step-list > li.center:after {
	left: 50%;
	top: 0;
	margin: -4px 0 0 -3px;
}


.process-step-list > li > figure {
	width: 45%;
	display: inline-block;
	vertical-align: middle;
	max-height: 300px;
	overflow: hidden;
}

.process-step-list > li > figure + p {
	width: 55%;
	padding: 30px 40px;
	display: inline-block;
	vertical-align: middle;
}

.process-step-list > li > p > b {
	color: #2E3233;
	font-size: 1.1333em; /* 17px */
	font-weight: 600;
	line-height: 1.6;
	display: block;
	margin-bottom: 10px;
}
.process-step-list > li.center > p > b {
	font-size: 1.2em; /* 18px */
}


/* .process-step-pay */

.process-step-pay {
	font-weight: 600;
	line-height: 60px;
	text-align: center;
	margin: 60px 0;
}

.process-step-pay > dt {
	font-size: 0.875em; /* 14px */
	background-color: #C8C5AF;
	width: 9em;
	position: absolute;
}
.process-step-pay > dt:after {
	content: "";
	width: 0;
	height: 0;
	border: 30px solid transparent;
	border-left: 20px solid #C8C5AF;
	position: absolute;
	right: -50px;
}

.process-step-pay > dd {
	color: #2E3233;
	padding: 0 7em 0 11em;
	background-color: #E2E0D3;
}
.process-step-pay > dd > span {
	font-size: 1.125em; /* 18px */
}

.process-step-pay > dd.step1 {
	font-size: 0.9375em; /* 15px */
	padding-right: 20px;
}
.process-step-pay > dd.step1 > span {
	font-size: 1.067em; /* 16px */
}




/* =============================================================

	pdo-points

* ============================================================= */


/* points-article
--------------------------- */

.points-article-item {
	position: relative;
	padding-top: 70px;
}

.points-article-item + .points-article-item {
	margin-top: 8%;
}

.points-article-item > .c-badge {
	font-size: 1.875em !important; /* 30px */
	top: 0 !important;
}
.points-article-item > .c-badge > span {
	margin-top: -.8em;
}

.points-article-item > div {
	margin-bottom: 80px;
}

.points-article-item .c-title-A {
	font-size: 1.6875em; /* 27px */
	margin-bottom: 70px;
}
.points-article-item .c-title-A:after {
	bottom: -30px;
}

.points-article-item.item1 > figure,
.points-article-item.item3 > figure {
	padding-left: 6% !important;
}
.points-article-item.item2 > figure,
.points-article-item.item4 > figure {
	padding-right: 5% !important;
}

.points-article-item > figure > span {
	display: block;
}
.points-article-item.item1 > figure > span,
.points-article-item.item3 > figure > span {
	margin-right: -10%;
}
.points-article-item.item2 > figure > span,
.points-article-item.item4 > figure > span {
	margin-left: -10%;
}

.points-article-item > figure > span > img {
	max-width: 100%;
	width: auto;
}




/* =============================================================

	about

* ============================================================= */


/* about-studio
--------------------------- */

.about-studio {
	z-index: 1;
}

.about-studio > h1 {
	width: 554px;
	height: 100px;
	margin: -10px auto 20px;
}

.about-studio > h1 > span {
	text-indent: -9999px;
	display: block;
	width: 0;
	height: 100px;
	background: url(../images/c-sprite01.png) no-repeat -250px -100px;
}

body.load-end .about-studio > h1 > span {
	width: 554px;
	-webkit-transition: width .8s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s;
	transition: width .8s cubic-bezier(0.25, 0.46, 0.45, 0.94) .8s;
}

.about-studio > p {
	opacity: 0;
	-webkit-transform: translate(0, 20px);
	    -ms-transform: translate(0, 20px);
	        transform: translate(0, 20px);
	text-shadow: 0 1px 1px #F0EFE8, 0 2px 1px #F0EFE8;
}

body.load-end .about-studio > p {
	opacity: 1;
	-webkit-transform: translate(0,0);
	    -ms-transform: translate(0,0);
	        transform: translate(0,0);
	-webkit-transition: opacity .5s 1.3s, -webkit-transform .5s 1.3s;
	transition: opacity .5s 1.3s, -webkit-transform .5s 1.3s;
	transition: opacity .5s 1.3s, transform .5s 1.3s;
	transition: opacity .5s 1.3s, transform .5s 1.3s, -webkit-transform .5s 1.3s;
}



/* about-drawing
--------------------------- */

.about-drawing {
	position: relative;
	margin: -140px 0 -280px;
	-webkit-transition: margin .5s;
	transition: margin .5s;
}
.about-drawing.open {
	margin-top: -40px;
	margin-bottom: 0;
}

.about-drawing:before,
.about-drawing:after {
	content: "";
	width: 100%;
	height: 0;
	padding-top: 12%;
	position: absolute;
	top: 0;
	opacity: 1;
	-webkit-transition: opacity .5s;
	transition: opacity .5s; /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(240,239,232,1) 0%,rgba(240,239,232,1) 60%,rgba(240,239,232,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: -webkit-gradient(linear,  left top, left bottom,  from(rgba(240,239,232,1)),color-stop(60%, rgba(240,239,232,1)),to(rgba(240,239,232,0)));
	background: linear-gradient(to bottom,  rgba(240,239,232,1) 0%,rgba(240,239,232,1) 60%,rgba(240,239,232,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0efe8', endColorstr='#00f0efe8',GradientType=0 ); /* IE6-9 */
}
.about-drawing:after {
	padding-top: 26%;
	top: auto;
	bottom: 0;
	opacity: 1;
	-webkit-transition: opacity .5s;
	transition: opacity .5s; /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(240,239,232,0) 0%,rgba(240,239,232,1) 30%,rgba(240,239,232,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: -webkit-gradient(linear,  left top, left bottom,  from(rgba(240,239,232,0)),color-stop(30%, rgba(240,239,232,1)),to(rgba(240,239,232,1)));
	background: linear-gradient(to bottom,  rgba(240,239,232,0) 0%,rgba(240,239,232,1) 30%,rgba(240,239,232,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00f0efe8', endColorstr='#f0efe8',GradientType=0 ); /* IE6-9 */
}

.about-drawing.open:before,
.about-drawing.open:after {
	opacity: 0;
}

.about-drawing-btn {
	position: absolute;
	z-index: 1;
	bottom: 300px;
	left: 50%;
	margin-left: -130px;
	-webkit-transition: bottom .5s;
	transition: bottom .5s;
}
.about-drawing.open > .about-drawing-btn {
	bottom: 7%;
}

.about-drawing-btn > a {
	position: absolute;
	bottom: 0;
}

.about-drawing-btn > a.open {
	display: block;
}
.about-drawing.open > .about-drawing-btn > a.open {
	display: none;
}

.about-drawing-btn > a.close {
	display: none;
}
.about-drawing.open > .about-drawing-btn > a.close {
	display: block;
}



/* about-drawing-point */

.about-drawing-point > li {
	position: absolute;
	z-index: 1;
	opacity: 0;
	-webkit-transform: translate(0, -40px);
	    -ms-transform: translate(0, -40px);
	        transform: translate(0, -40px);
	-webkit-transition: opacity .3s, -webkit-transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	transition: opacity .3s, -webkit-transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	transition: transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity .3s;
	transition: transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity .3s, -webkit-transform .3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.IE8 .about-drawing-point > li {
	display: none;
}

.about-drawing.open > .about-drawing-point > li {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	    -ms-transform: translate(0, 0);
	        transform: translate(0, 0);
	cursor: pointer;
}
.IE8 .about-drawing.open > .about-drawing-point > li {
	display: block;
}

.about-drawing-point > li:after {
	content: "";
	width: 60px;
	height: 80px;
	position: absolute;
	margin: -60px 0 0 -30px;
}

.about-drawing-point > li.point1 {
	top: 8%;
	left: 11%;
}
.about-drawing.open > .about-drawing-point > li.point1 {
	-webkit-transition-delay: .5s;
	        transition-delay: .5s;
}

.about-drawing-point > li.point2 {
	top: 34%;
	left: 38%;
}
.about-drawing.open > .about-drawing-point > li.point2 {
	-webkit-transition-delay: .8s;
	        transition-delay: .8s;
}

.about-drawing-point > li.point3 {
	top: 35%;
	left: 51%;
}
.about-drawing.open > .about-drawing-point > li.point3 {
	-webkit-transition-delay: .6s;
	        transition-delay: .6s;
}

.about-drawing-point > li.point4 {
	top: 38%;
	left: 70%;
}
.about-drawing.open > .about-drawing-point > li.point4 {
	-webkit-transition-delay: .8s;
	        transition-delay: .8s;
}

.about-drawing-point > li.point5 {
	top: 33.5%;
	left: 92.1%;
}
.about-drawing.open > .about-drawing-point > li.point5 {
	-webkit-transition-delay: .5s;
	        transition-delay: .5s;
}

.about-drawing-point > li.point6 {
	top: 48%;
	left: 45%;
}
.about-drawing.open > .about-drawing-point > li.point6 {
	-webkit-transition-delay: .9s;
	        transition-delay: .9s;
}

.about-drawing-point > li.point7 {
	top: 47%;
	left: 59%;
}
.about-drawing.open > .about-drawing-point > li.point7 {
	-webkit-transition-delay: 1s;
	        transition-delay: 1s;
}

.about-drawing-point > li.point8 {
	top: 60%;
	left: 6%;
}
.about-drawing.open > .about-drawing-point > li.point8 {
	-webkit-transition-delay: .5s;
	        transition-delay: .5s;
}

.about-drawing-point > li.point9 {
	top: 77%;
	left: 92%;
}
.about-drawing.open > .about-drawing-point > li.point9 {
	-webkit-transition-delay: .4s;
	        transition-delay: .4s;
}

.about-drawing-point > li:before {
	content: "";
	width: 34px;
	height: 47px;
	background: url(../images/c-sprite01.png) no-repeat -550px -200px;
	position: absolute;
	bottom: 0;
	left: -17px;
	-webkit-transition: -webkit-transform .2s;
	transition: -webkit-transform .2s;
	transition: transform .2s;
	transition: transform .2s, -webkit-transform .2s;
}
.about-drawing-point > li:hover:before {
	-webkit-transform: translateY(10px);
	    -ms-transform: translateY(10px);
	        transform: translateY(10px);
}

.about-drawing-point > li > span {
	color: #325E35;
	font-weight: 600;
	line-height: 1.4;
	text-align: center;
	display: block;
	position: absolute;
	text-shadow:0px 3px 1px #F0EFE8,0px 2px 1px #F0EFE8,1px 2px 1px #F0EFE8,2px 2px 1px #F0EFE8,2px 1px 1px #F0EFE8,2px 0px 1px #F0EFE8,3px 0px 1px #F0EFE8,2px -1px 1px #F0EFE8,2px -2px 1px #F0EFE8,2px -3px 1px #F0EFE8,1px -3px 1px #F0EFE8,0px -3px 1px #F0EFE8,-1px -3px 1px #F0EFE8,-2px -3px 1px #F0EFE8,-3px -3px 1px #F0EFE8,-3px -2px 1px #F0EFE8,-3px -1px 1px #F0EFE8,-3px 0px 1px #F0EFE8,-3px 1px 1px #F0EFE8,-3px 2px 1px #F0EFE8,-2px 2px 1px #F0EFE8,-1px 2px 1px #F0EFE8;
}

.about-drawing-point > li.point1 > span {
	width: 9em;
	top: 10px;
	left: -4em;
}
.about-drawing-point > li.point2 > span {
	text-align: left;
	width: 3em;
	bottom: 0;
	left: 20px;
}
.about-drawing-point > li.point3 > span {
	text-align: left;
	width: 9em;
	bottom: 25px;
	left: 20px;
}
.about-drawing-point > li.point4 > span {
	width: 8em;
	top: 10px;
	left: -4em;
}
.about-drawing-point > li.point5 > span {
	width: 4em;
	bottom: 50px;
	left: -2em;
}
.about-drawing-point > li.point6 > span {
	width: 9em;
	top: 10px;
	left: -4.5em;
}
.about-drawing-point > li.point7 > span {
	width: 8em;
	top: 10px;
	left: -4em;
}
.about-drawing-point > li.point8 > span {
	text-align: left;
	width: 7em;
	bottom: 0;
	left: 20px;
}
.about-drawing-point > li.point9 > span {
	width: 7em;
	top: 10px;
	left: -3.5em;
}


/* .about-layer */

.about-layer {
	text-align: center;
	width: 100%;
	height: 0;
	overflow: hidden;
	visibility: hidden;
	opacity: 0;
	position: relative;
	z-index: 500;
}
body.layer-open .about-layer {
	height: 100%;
	overflow: visible;
	visibility: visible;
	opacity: 1;
	-webkit-transition: opacity .4s, visibility .4s;
	transition: opacity .4s, visibility .4s;
}
body.layer-closing .about-layer {
	opacity: 0;
	visibility: hidden;
	-webkit-transition: opacity .2s, visibility .2s;
	transition: opacity .2s, visibility .2s;
}

.about-layer-bcg {
	width: 100%;
	height: 200%;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.5);
}
.IE8 .about-layer-bcg {
	-ms-filter: "alpha(opacity=50)";
	background-color: #000;
}

.about-layer-box {
	max-width: 980px;
	margin: 50px 5%;
	background-color: #fff;
	-webkit-box-shadow: 1px 1px 0 rgba(0,0,0,.05);
	        box-shadow: 1px 1px 0 rgba(0,0,0,.05);
	display: inline-block;
	position: relative;
	z-index: 1;
	opacity: 1;
}
body.layer-open .about-layer-box {
	opacity: 1;
	-webkit-transition: opacity .3s .2s;
	transition: opacity .3s .2s;
}

.about-layer-item {
	color: #777C80;
	text-align: left;
	width: 100%;
	padding: 80px 7% 60px;
	position: absolute;
	top: 0;
	display: none;
}

.about-layer-item.active {
	position: relative;
	display: block;
}

.about-layer-item .c-title-A {
	text-align: left;
}

.about-layer-close {
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	width: 180px;
}

.about-layer-close > .c-button.small {
	min-width: 0;
	width: 100%;
}



/* about-access
--------------------------- */

.about-access {
	margin-top: 50px;
}

.about-access-map {
	height: 400px;
	margin-top: -20px;
	margin-bottom: -20px;
}

.about-access-map > .canvas {
	height: 100%;
	margin: 0 2% 0 -8%;
	background-color: #f2f2f2;
}

.about-access-txt {
	text-align: center;
}

.about-access-txt > .c-title-A {
	color: #325E35;
	margin-bottom: 20px;
}

.about-access-txt > p {
	font-size: 0.9375em; /* 15px */
	margin-bottom: 20px;
}

.about-access-txt > p > a {
	color: #777C80;
}

.about-access-txt > dl > dt {
	color: #2E3233;
	font-size: 0.9375em; /* 15px */
	font-weight: 600;
}
.about-access-txt > dl > dd {
	font-size: 0.875em; /* 14px */
}
.about-access-txt > dl > dd + dt {
	margin-top: 10px;
}


/* about-message
--------------------------- */

.about-message {
	position: relative;
	padding-top: 20px;
}

.about-message > .c-badge {
	top: -20px;
}

.about-message-img {
	width: 100%;
	height: 540px;
	margin-bottom: -180px;
}

.about-message-txt {
	padding: 40px 5% 30px;
	position: relative;
	z-index: 1;
}

.about-message-txt > .c-lead-A {
	font-size: 1em;
	margin-bottom: 20px;
}

.about-message-txt > .name {
	color: #325E35;
	font-weight: 600;
	text-align: center;
}

.about-message-txt > .name:before {
	content: "";
	width: 137px;
	height: 81px;
	background: url(../images/c-sprite01.png) no-repeat -450px -300px;
	display: inline-block;
	vertical-align: bottom;
}


/* about-member
--------------------------- */

.about-member-lead {
	color: #fff;
	font-size: 0.875em; /* 14px */
	width: 22%;
	height: 300px;
	padding: 20px 5%;
	background-color: #A39A88;
	position: absolute;
	left: 39%;
	top: 0;
}

.about-member-lead > span {
	display: inline-block;
	vertical-align: middle;
}
.about-member-lead:before {
	content: "";
	width: 0;
	height: 100%;
	display: inline-block;
	vertical-align: middle;
}

.about-member-list {
	text-align: center;
}

.about-member .about-member-list > li:first-child {
	margin-right: 33.333%;
}

.about-member-item {
	padding-bottom: 25px;
}

.about-member-item > figure {
	margin-bottom: 25px;
}

.about-member-item > .txt > .title {
	letter-spacing: 2px;
}

.about-member-item > .txt > .title.single {
	margin-top: 1.4em;
}


/* about-fellow
--------------------------- */

.about-fellow-img > span {
	display: block;
	margin: 0 12% 0 -20%;
}

.about-fellow-txt > .btn {
	margin-top: 50px;
	text-align: right;
}


/* about-profile
--------------------------- */

.about-profile-dlist {
	margin-top: 40px;
}

.about-profile-dlist > dt {
	color: #777C80;
	font-size: 0.875em; /* 14px */
	font-weight: 600;
	letter-spacing: 2px;
	width: 15%;
	position: absolute;
	padding: 15px 0 13px 5%;
}

.about-profile-dlist > dd {
	font-size: 0.9375em; /* 15px */
	padding: 15px 20px 13px 25%;
}
.about-profile-dlist > dd:nth-child(4n+2) {
	background-color: #E2E0D3;
}

.about-profile-address {
	margin: 5px 0;
}

.about-profile-address > dt {
	font-weight: 600;
}

.about-profile-address > dd {
	position: relative;
	text-align: left;
}
.about-profile-address > dd > br {
	display: none;
}

.about-profile-address > dd > .c-link {
	position: absolute;
	top: -2.5em;
	right: 0;
}

.about-profile-address > dd + dt {
	border-top: 1px solid #ccc;
	padding: 15px 2% 0;
	margin: 15px -2% 0;
}


/* =============================================================

	member

* ============================================================= */

/* member-header
--------------------------- */

.member-message-header > .c-badge {
	margin: -2% auto 40px;
}

.member-message-header > .c-title-A {
	margin-bottom: 35px;
}

.member-message-header > .c-subtitle-A {
	letter-spacing: 3px;
	margin-bottom: 6%;
}

.member-message-header > .c-subtitle-A > b {
	font-size: 1.5882em; /* 27px */
	display: inline-block;
	margin: 0 10px;
}


/* member-profile
--------------------------- */

.member-profile-list {
	position: relative;
	padding-top: 20px;
}
.member-profile-list:after {
	content: "";
	width: 0;
	height: 100%;
	border-left: 1px dotted #999;
	position: absolute;
	top: 0;
	left: 24%;
}

.member-profile-list > dt {
	color: #777C80;
	font-size: 0.875em; /* 14px */
	text-align: right;
	width: 14%;
	min-width: 8em;
	padding: 17px 0;
	position: absolute;
}

.member-profile-list > dd {
	font-size: 0.9375em; /* 15px */
	padding: 15px 0 15px 37%;
	position: relative;
}

.member-profile-list > dd:before,
.member-profile-list > dd:after {
	content: "";
	position: absolute;
	left: 24%;
	top: 30px;
}

.member-profile-list > dd:before {
	width: 10%;
	height: 1px;
	background-color: #ccc;
}

.member-profile-list > dd:after {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	margin: -5px 0 0 -5px;
	background-color: #78B97F;
	z-index: 1;
}


/* =============================================================

	fellow

* ============================================================= */

/* fellow-header
--------------------------- */

.fellow-header {
	padding-bottom: 40px;
}

.fellow-header-txt {
	position: relative;
	padding-top: 60px;
	padding-bottom: 70px;
}

.fellow-header-txt > .c-badge {
	top: auto !important;
	bottom: -40px;
}

.fellow-header-txt:before {
	content: "";
	width: 280px;
	height: 144px;
	background: url(../images/fellow-header_img01.png) no-repeat 0 0;
	position: absolute;
	top: -90px;
	left: -140px;
}

.fellow-header-txt:after {
	content: "";
	width: 230px;
	height: 173px;
	background: url(../images/fellow-header_img02.png) no-repeat 0 0;
	position: absolute;
	top: -100px;
	right: -130px;
}


/* fellow-member
--------------------------- */

.fellow-member-item + .fellow-member-item {
	margin-top: 10%;
}

.fellow-member-txt > .c-title-A {
	font-size: 1.0625em; /* 17px */
	letter-spacing: 2px;
	text-align: left;
}

.fellow-member-txt > .c-title-A > b {
	font-size: 1.4706em; /* 25px */
	letter-spacing: 3px;
	display: inline-block;
	margin-left: .5em;
}
.fellow-member-txt > .c-title-A > br + b {
	margin-left: 0;
	margin-top: 3px;
}

.fellow-member-txt > .c-title-A > span {
	font-size: 0.941em;
	margin-top: 3px;
}

.fellow-member-txt > .link {
	text-align: right;
	margin-top: 20px;
}


/* =============================================================

	projects

* ============================================================= */

/* projects-list
--------------------------- */

.projects-list-list {
	margin-top: -2%;
}

.projects-list-item > .thum {
	width: 100px;
	height: 100px;
	margin: 35px auto;
}

/* projects-header
--------------------------- */

.projects-header {
	width: 100%;
	min-width: 980px;
	position: absolute;
	left: 0;
}

.projects-header-title {
	width: 25%;
	position: absolute;
	left: 3%;
	z-index: 1;
	top: 280px;
	margin-top: -60px;
}
.projects-header.fixed > .projects-header-title {
	position: fixed;
	margin-top: 0;
}

.projects-header-title > .c-card {
	min-width: 200px;
	margin-bottom: 0;
}

.projects-header-title > .c-card > .thum {
	width: 100px;
	height: 100px;
	margin: 0 auto 30px;
}


/* projects-timeline
--------------------------- */

.projects-timeline {
	margin-top: -50px;
}

.projects-timeline.fixed > .c-timeline-inner {
	top: 90px;
}


/* projects-article
--------------------------- */

.projects-article {
	padding: 0 10% 0 25%;
	margin-top: -2%;
}

.projects-article > .c-article {
	max-width: 800px;
	padding-top: 100px;
	margin-top: -100px;
}

.projects-article .c-badge {
	margin: 0 auto 20px;
}



/* =============================================================

	works

* ============================================================= */

/* works-filter
--------------------------- */

.works-filter-dlist {
	text-align: right;
	margin: -1% -2% -2% 0;
}

.works-filter-dlist > dt {
	font-size: 0.875em; /* 14px */
	font-weight: 600;
	line-height: 48px;
	text-align: center;
	width: 18%;
	margin-top: -5px;
	background-color: #dad8c8;
	position: absolute;
	white-space: nowrap;
}
.works-filter-dlist > dt:after {
	content: "";
	width: 0;
	height: 0;
	border: 24px solid transparent;
	border-left: 12px solid #dad8c8;
	position: absolute;
	right: -36px;
}

.works-filter-dlist > dd {
	display: inline-block;
	padding: 0 2.5%;
}

.works-filter-dlist > dd > a {
	font-size: 0.875em; /* 14px */
	font-weight: 600;
	line-height: 38px;
	display: inline-block;
	padding: 0 15px;
	margin: 0 -15px;
	-webkit-transition: background-color .15s, -webkit-box-shadow .15s;
	transition: background-color .15s, -webkit-box-shadow .15s;
	transition: background-color .15s, box-shadow .15s;
	transition: background-color .15s, box-shadow .15s, -webkit-box-shadow .15s;
}

.works-filter-dlist > dd > a:hover {
	background-color: #fff;
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,.07);
	        box-shadow: 0 0 10px rgba(0,0,0,.07);
}

.works-filter-dlist > dd > a.active {
	color: #fff;
	background-color: #78B97F;
	position: relative;
}

.works-filter-dlist > dd > a.active:after {
	content: "";
	width: 0;
	height: 0;
	border: 6px solid transparent;
	border-top: 8px solid #78B97F;
	position: absolute;
	bottom: -14px;
	left: 50%;
	margin-left: -6px;
}

.works-filter-sp {
	display: none;
}


/* works-list
--------------------------- */

.works-list-item {
	margin-bottom: 11%;
	padding-bottom: 20px;
}

.works-list-item > figure {
	margin-bottom: 20px;
}

/* works-cnt
--------------------------- */

.works-cnt {
	margin-bottom: -10px;
}

.works-grids {
	margin-right: -10px;
	margin-left: -10px;
	position: relative;
	padding-top: 50%;
}
.works-grids:first-child {
	margin-top: -10px;
}

.works-grids > .grid {
	width: 100%;
	height: 100%;
	border: 10px solid transparent;
	position: absolute;
	z-index: 1;
	top: 0;
}
.works-grids > .grid.left {
	left: 0;
}
.works-grids > .grid.right {
	right: 0;
}

.works-grids > .grid.top {
	height: 50%;
}
.works-grids > .grid.bottom {
	height: 50%;
	top: 50%;
}

.works-grids.r1to1 > .grid.left,
.works-grids.r1to1 > .grid.right {
	width: 50%;
}

.works-grids.r1to2 > .grid.left,
.works-grids.r2to1 > .grid.right {
	width: 38.2%;
}
.works-grids.r1to2 > .grid.right,
.works-grids.r2to1 > .grid.left {
	width: 61.8%;
}

.works-cnt-title {
	width: 80%;
	position: absolute;
	top: 18%;
	left: 10%;
	margin-left: -10px;
}

.works-cnt-title > .c-title-A > .subtitle {
	font-size: 0.581em; /* 18px */
	display: block;
	margin-top: 5px;
}

.works-cnt-title > ul {
	color: #78B97F;
	font-weight: 600;
	line-height: 1.6;
	text-align: center;
	margin-top: -15px;
}

.works-cnt-title > ul > li {
	margin-bottom: 8px;
}

.works-cnt-title-img {
	position: absolute;
	z-index: -1;
	bottom: 0;
	padding: 0 10% 10%;
}


.works-cnt-txt-outer {
	text-align: center;
}

.works-cnt-txt-outer:before {
	content: "";
	width: 0;
	height: 100%;
	display: inline-block;
	vertical-align: middle;
}

.works-cnt-txt {
	text-align: justify; /* for ff, webkit */
	text-justify: inter-ideograph; /* for IE */
	width: 80%;
	max-width: 20em;
	display: inline-block;
	vertical-align: middle;
}


/* works-sublink
--------------------------- */

.works-sublink {
	padding-top: 1px;
	padding-bottom: 20px;
}

.works-sublink-item {
	width: 66.666%;
	padding-top: 50px;
	padding-bottom: 50px;
	margin: 0 auto;
}

.works-sublink-item > .thum {
	position: absolute;
	width: 110px;
	height: 110px;
	top: 50%;
	margin-top: -50px;
}

.works-sublink-item > .subtitle,
.works-sublink-item > .title {
	text-align: left;
	padding-left: 140px;
}

.works-sublink-item > .title {
	font-size: 1.125em; /* 18px */
	line-height: 1.8;
}



/* =============================================================

	blog

* ============================================================= */


/* blog-menu
--------------------------- */

.blog-menu {
	position: relative;
}

.blog-menu > .c-pulldown {
	width: 210px;
	position: absolute;
	top: 40px;
	right: 3%;
	z-index: 100;
}


/* blog-article
--------------------------- */

.blog-article {
	padding-right: 20%;
	position: relative;
}

.blog-article > .c-article {
	padding-right: 10%;
	max-width: 900px;
}


/* blog-article-header
--------------------------- */

.blog-article-header {
	position: relative;
	margin-bottom: 7%;
}

.blog-article-header > .date {
	color: #78B97F;
	font-weight: 600;
	letter-spacing: 2px;
	position: relative;
	padding-top: 10%;
	margin-bottom: 20px;
}

.blog-article-header > .date:after {
	top: 0;
	left: 0;
	margin-left: 0;
}

.blog-article-header > .c-title-A {
	text-align: left;
}

.blog-article-header > .c-title-A > a {
	color: #2E3233;
}

.blog-article-header > .category {
	position: absolute;
	right: 0;
	top: -5px;
	padding-top: 10.5%;
}

.blog-article-header > .category > a {
	font-size: 0.875em; /* 14px */
	margin-left: .5em;
}


/* blog-article-footer
--------------------------- */

.blog-article-footer {
	width: 20%;
	position: absolute;
	right: -2%;
	top: 210px;
}

.blog-article-footer > .c-card {
	display: block;
	max-width: 200px;
	min-width: 140px;
	padding-top: 10px;
	margin: 0 auto;
	-webkit-transition: background-color .2s, -webkit-box-shadow .2s;
	transition: background-color .2s, -webkit-box-shadow .2s;
	transition: box-shadow .2s, background-color .2s;
	transition: box-shadow .2s, background-color .2s, -webkit-box-shadow .2s;
}
.blog-article-footer > .c-card:hover {
	background-color: #fff;
	-webkit-box-shadow: 0 0 10px rgba(0,0,0,.1);
	        box-shadow: 0 0 10px rgba(0,0,0,.1);
}

.blog-article-footer > .c-card > .img {
	padding-bottom: 80%;
	margin: 20px 10% !important;
	background-color: transparent;
	position: relative;
}

.blog-article-footer > .c-card > .img > span {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	position: absolute;
	overflow: hidden;
}

.blog-article-footer > .c-card > .title {
	letter-spacing: 2px;
}

.blog-article-footer > .c-card > .link {
	text-indent: -9999px;
	display: inline-block;
	width: 6px;
	height: 10px;
	background: url(../images/c-sprite01.png) no-repeat -200px -50px;
	margin-top: 30px;
}


/* =============================================================

	faq

* ============================================================= */

/* faq-list
--------------------------- */

.faq-list > .c-title-B {
	margin-right: -5%;
	margin-left: -5%;
}

.faq-list-dlist {
	margin: 0 -20px;
}

.faq-list-dlist > dt {
	border-top: 1px solid #ccc;
}
.faq-list-dlist > dt:first-child {
	border: none !important;
}

.faq-list-dlist > dt {
	color: #44484D;
	padding: 20px 60px 20px 20px;
	position: relative;
	cursor: pointer;
	-webkit-transition: background-color .2s, border-color .2s;
	transition: background-color .2s, border-color .2s;
}
html.no-touchevents .faq-list-dlist > dt:hover {
	color: #777C80;
	background-color: #fff;
	border-top-color: transparent;
}
html.no-touchevents .faq-list-dlist > dt:hover + dd + dt {
	border-top-color: transparent;
}

.faq-list-dlist > dt.open {
	color: #78B97F;
	font-weight: 600;
}
.faq-list-dlist > dt.open + dd + dt {
	border-top: 1px solid #ccc !important;
}

.faq-list-dlist > dt:before,
.faq-list-dlist > dt:after {
	content: "";
	width: 3px;
	height: 15px;
	background-color: #78B97F;
	position: absolute;
	right: 20px;
	top: 50%;
	margin: -7px 6px 0 0 ;
	-webkit-transition: all .2s;
	transition: all .2s;
}
.faq-list-dlist > dt:after {
	width: 15px;
	height: 3px;
	margin: -1px 0 0 0 ;
}

.faq-list-dlist > dt:hover:before {
	height: 25px;
	margin: -12px 6px 0 0 ;
}
.faq-list-dlist > dt:hover:after {
	width: 25px;
	margin: -1px -5px 0 0 ;
}

.faq-list-dlist > dt.open:before {
	height: 15px !important;
	margin-top: -7px !important;
	-webkit-transform: rotate(90deg) !important;
	    -ms-transform: rotate(90deg) !important;
	        transform: rotate(90deg) !important;
}
.faq-list-dlist > dt.open:after {
	width: 3px !important;
	margin-right: 5px !important;
	-webkit-transform: rotate(90deg) !important;
	    -ms-transform: rotate(90deg) !important;
	        transform: rotate(90deg) !important;
}

.IE8 .faq-list-dlist > dt.open:before {
	content: none;
}
.IE8 .faq-list-dlist > dt.open:after  {
	width: 15px;
	height: 3px;
	margin: -1px 0 0 0 ;
}

.faq-list-dlist > dd {
	font-size: 0.9375em; /* 15px */
	height: 0;
	overflow: hidden;
	-webkit-transition: height .3s;
	transition: height .3s;
}

.faq-list-answer {
	padding: 10px 20px 35px;
}

.faq-list-answer a {
	text-decoration: underline;
}

.faq-list-answer > * + * {
	margin-top: 1em;
}

.faq-list-img {
	margin-bottom: -3%;
}
.faq-list-img > * {
	margin-bottom: 3%;
}


/* =============================================================

	contact

* ============================================================= */

/* contact-header
--------------------------- */

.contact-header-txt {
	padding-bottom: 80px;
}

.confirm-header-txt {
	margin-top: -30px;
}

.contact-header-btn {
	width: 56%;
	position: absolute;
	bottom: 0;
	left: 3.8%;
}

.contact-header-btn > li {
	width: 50%;
	position: relative;
}

.contact-header-btn > li > a {
	min-width: 0;
	width: 100%;
}

.contact-header-btn > li > a.active {
	background-color: #325E35;
}
.contact-header-btn > li > a.active + i {
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-top: 12px solid #325E35;
	position: absolute;
	bottom: -4px;
	left: 50%;
	margin-left: -8px;
}

.contact-header-drawer {
	height: 0;
	margin-top: 0;
	overflow: hidden;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.contact-header-drawer-island {
	position: relative;
	margin: 20px 0 0 !important;
	padding: 0 !important;
}

.contact-header-drawer-cnt {
	width: 200%;
	position: relative;
	left: 0;
}
.contact-header-drawer-cnt.move {
	-webkit-transition: left .6s;
	transition: left .6s;
}

.contact-header-drawer-item {
	padding: 50px 3.5% !important;
}

.contact-header-drawer-item > .c-title-A {
	text-align: left;
}


/* contact-form
--------------------------- */

.contact-form .c-title-B,
.complete-message > .c-title-B {
	margin: 0 -5% 40px;
}
.contact-form.confirm .c-title-B {
	margin-bottom: 30px;
}
.complete-message > .c-title-B {
	margin-top: -30px;
}

.contact-form-dlist.horizontal {
	margin-top: -15px;
}

.contact-form-dlist > dt {
	color: #2E3233;
	font-weight: 600;
	line-height: 1.6;
}

.contact-form-dlist.vertical > dt {
	margin: 28px 0 20px;
}
.contact-form-dlist.vertical > dt:first-child {
	margin-top: 0;
}

.contact-form.confirm .contact-form-dlist.vertical > dd + dt {
	padding-top: 30px;
	border-top: 1px dotted #ccc;
}

.contact-form-dlist.horizontal > dt {
	position: absolute;
	padding-top: 30px;
}
.contact-form.confirm .contact-form-dlist.horizontal > dt {
	padding-top: 21px;
}

.contact-form-dlist > dt > span {
	color: red;
	font-size: 0.8235em; /* 14px */
	display: inline-block;
	margin-left: 10px;
}

.contact-form-dlist > dd {
	font-size: 0.9375em; /* 15px */
}
.contact-form.confirm .contact-form-dlist > dd {
	font-size: 1em;
}

.contact-form-dlist.horizontal > dd {
	padding: 15px 0 15px 15em;
}
.contact-form.confirm .contact-form-dlist.horizontal > dd {
	padding: 15px 0 15px 12em;
	border-top: 1px dotted #ccc;
	min-height: 3.9em;
}
.IE8 .contact-form.confirm .contact-form-dlist.horizontal > dd {
	min-height: 1.8em;
}
.contact-form.confirm .contact-form-dlist.horizontal > dt:first-child + dd {
	border-top: none;
}

.contact-form-dlist > dd .error {
	color: red;
	font-size: 1em;
	font-weight: 600;
	display: block;
	margin-top: 10px;
}
.contact-form-dlist > dd > .contact-form-check > .error {
	margin: 20px 0;
}
.contact-form-dlist > dd > .contact-form-check:first-child > .error {
	display: none;
}

.contact-form-dlist .birthday > input {
	margin: 0 1em;
}

.contact-form-check {
	line-height: 0;
}

.contact-form.confirm .contact-form-check {
	line-height: 2;
	float: none;
	width: auto;
}

.contact-form-check > .mwform-checkbox-field {
	line-height: 1.8;
	padding: 7px 20px 7px 35px;
	margin-bottom: 8px;
	display: block;
	position: relative;
}
.IE8 .contact-form-check > .mwform-checkbox-field {
	padding: 7px 20px 7px 25px;
}

.contact-form-check > .mwform-checkbox-field > label {
	cursor: pointer;
}

.contact-form-check.horizontal > .mwform-checkbox-field {
	display: inline-block;
	width: 10em;
}
.IE8 .contact-form-check.horizontal > .mwform-checkbox-field {
	width: auto;
}

.contact-form-check input[type="checkbox"] {
	display: none;
}
.IE8 .contact-form-check input[type="checkbox"] {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	margin-top: .5em;
}

.contact-form-check input[type="checkbox"] + i:before {
	content: "";
	width: 22px;
	height: 22px;
	background-color: #fff;
	position: absolute;
	left: 0;
	top: .6em;
	-webkit-box-shadow: 1px 1px 0 rgba(0,0,0,.05);
	        box-shadow: 1px 1px 0 rgba(0,0,0,.05);
}
.contact-form-check input[type="checkbox"]:checked + i:before {
	background-color: #78B97F;
}
.IE8 .contact-form-check input[type="checkbox"] + i:before {
	content: none;
}

.contact-form-check input[type="checkbox"] + i:after {
	content: "";
	width: 17px;
	height: 14px;
	background: url(../images/c-sprite01.png) no-repeat -600px -300px;
	position: absolute;
	top: .9em;
	left: 3px;
	visibility: hidden;
}
.contact-form-check input[type="checkbox"]:checked + i:after {
	visibility: visible;
}


.contact-form.form .contact-form-submit > li:first-child {
	display: none;
}
.contact-form.confirm .contact-form-submit > li:first-child input {
	-webkit-box-shadow: none;
	        box-shadow: none;
	background-color: #949799;
}



/* =============================================================

	privacy

* ============================================================= */

/* privacy-article
--------------------------- */

.privacy-article {
	max-width: 660px;
	margin: 0 auto;
}

.privacy-article > * + *  {
	margin-top: 1.5em;
}
.privacy-article > h2 + *  {
	margin-top: 0;
}
.privacy-article > h2 {
	margin: 2.5em 0 .3em;
}

.privacy-article > * > a {
	text-decoration: underline;
}

.privacy-article > h2 {
	font-weight: 600;
}

.privacy-article > ul > li {
	list-style: disc;
	margin: .3em 0 0 1.5em;
}

.box12{
    padding: 0.5em 1em;
    margin: 2em 0;
    color: white;
    background: #63b5bd;
    border-radius: 50px;
		font-size:1.3em;
		font-weight: bold;
		width: 11em;
		text-align: center;
}
.box12 p {
    margin: 0;
    padding: 0;
}
