@charset "UTF-8";
html {
	font-size: 16px;
}

body {
	color: #333333;
	overflow-x: hidden;
	font-family: 'Roboto Condensed', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-weight: 400;
	position: relative;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.1em;
	background-color: #fff;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 16px;
	line-height: 1.4;
	font-weight: normal;
}

p {
	line-height: 1.75;
}

a {
	text-decoration: none;
	-webkit-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

a:hover {
	opacity: 0.7;
}

ul,
li {
	list-style: none;
	padding: 0;
}

img {
	max-width: 100%;
	height: auto;
}

@media screen and (min-width: 769px) {
	.sp-mode {
		display: none !important;
	}
}

@media screen and (min-width: 1025px) {
	.tab-mode {
		display: none !important;
	}
}

@media screen and (max-width: 1024px) {
	.pc-mode {
		display: none !important;
	}
}

@media screen and (max-width: 768px) {
	.pc-tab-mode {
		display: none !important;
	}
}

.clearfix {
	*zoom: 1;
}

.clearfix:after {
	content: "";
	display: table;
	clear: both;
}

.gothic {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

.l-blue {
	color: #35A1D0;
}

.cont__inner {
	width: 90%;
	max-width: 750px;
	margin: 0 auto;
	padding: 60px 0 80px;
}

@media screen and (min-width: 1025px) {
	.cont__inner {
		padding: 80px 0 100px;
		max-width: 960px;
		width: 100%;
		margin: 0 auto;
	}
}

@media screen and (min-width: 1280px) {
	.cont__inner {
		max-width: 1200px;
	}
	
	.cont__inner--wide {
		width: 85%;
		min-width: 1200px;
		max-width: 1520px;
	}
}

.cont__inner--pt0 {
	padding-top: 0;
}

.cont__inner--pb0 {
	padding-bottom: 0;
}

.cont__inner--pd0 {
	padding: 0;
}

.cont__inner--full {
	width: 100%;
	max-width: none;
}

.cont__txt,
.cont__txt--mbnon,
.cont__txt--center,
.cont__txt--right,
.cont__txt--justify {
	line-height: 1.75;
	font-size: 14px;
}

@media screen and (min-width: 769px) {
	.cont__txt,
	.cont__txt--mbnon,
	.cont__txt--center,
	.cont__txt--right,
	.cont__txt--justify {
		font-size: 14px;
	}
}

.cont__txt--lead {
	line-height: 1.75;
	font-size: 14px;
	margin-bottom: 40px;
}

@media screen and (min-width: 769px) {
	.cont__txt--lead {
		font-size: 16px;
		margin-bottom: 60px;
	}
}

.cont__txt--mbnon {
	margin-bottom: 0;
}

.cont__txt--center {
	text-align: center;
}

.cont__txt--right {
	text-align: right;
}

.cont__txt--justify {
	text-align: justify;
	text-justify: inter-ideograph; /* IE対策 */
}

.cont__txt--orange {
	color: #EE7602;
}

.cont__txt--red {
	color: #E41D60;
}

.cont__txt--blue {
	color: #373675;
}

.cont__txt--emphasis {
	font-weight: bold;
	color: #EE7602;
}

@media screen and (min-width: 769px) {
	.cont__txt--lead {

	}
}

.cont__ttl {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 40px;
	text-align: center;
	font-weight: bold;
}

@media screen and (min-width: 769px) {
	.cont__ttl {
		font-size: 48px;
		font-size: 3rem;
		margin-bottom: 60px;
	}
}

.cont__ttl:before {
	content: "";
	display: block;
	background-color: #111;
	width: 1px;
	height: 100px;
	margin: 0 auto 0.5em;
}

.cont__ttl--ja {
	display: block;
}

.cont__ttl--en {
	display: block;
}

@media screen and (min-width: 769px) {
	.cont__ttl--ja {

	}
}

.cont__ttl-l {
	margin-bottom: 30px;
	font-weight: bold;
}

@media screen and (min-width: 769px) {
	.cont__ttl-l {
		margin-bottom: 40px;
	}
}

.cont__ttl-l:after {
	content: "";
	display: block;
	background-color: #111;
	width: 100px;
	height: 1px;
	margin: 1em auto 0 0;
}

.cont__ttl-l--en {
	display: block;
	font-size: 32px;
}

@media screen and (min-width: 769px) {
	.cont__ttl-l--en {
		font-size: 48px;
	}
}

.cont__ttl-l--ja {
	font-size: 18px;
}

@media screen and (min-width: 769px) {
	.cont__ttl-l--ja {
		font-size: 32px;
	}
}

.cont__sttl {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
}

@media screen and (min-width: 769px) {
	.cont__sttl {
		font-size: 28px;
		margin-bottom: 50px;
	}
}

.cont__sttl--ja {
	display: block;
	font-size: 20px;
}

.cont__sttl--en {
	display: block;
	font-size: 30px;
	margin-bottom: 15px;
}

.cont__ssttl {
	font-weight: bold;
	font-size: 16px;
	font-size: 1rem;
	text-align: center;
}

@media screen and (min-width: 769px) {
	.cont__ssttl {
		font-size: 18px;
		font-size: 1.125rem;
	}
}

.cont__sttl--accent {
	color: #373675;
	margin-bottom: 15px;
}

.cont__sttl--accent-ja {
	font-size: 32px;
}

.cont__sttl--accent-en {
	display: block;
	font-size: 14px;
	font-family: 'Roboto Condensed', sans-serif;
	font-style: italic;
}

@media screen and (min-width: 769px) {
	.cont__sttl--accent {
		margin-bottom: 20px;
	}
	
	.cont__sttl--accent-ja {
		font-size: 40px;
	}
	
	.cont__sttl--accent-en {
		font-size: 16px;
	}
}

/* アニメーション */

/*========= 下から上へフェードイン ===============*/

.fade-up {
	animation-name:fadeUpAnime;
	animation-duration:1.0s;
	animation-fill-mode:forwards;
	animation-timing-function: ease;
	animation-delay: 0.3s;
	opacity:0;
}

@keyframes fadeUpAnime{
  from {
		opacity: 0;
		transform: translateY(100px);
  }

  to {
		opacity: 1;
		transform: translateY(0);
  }
}

.fade-up-trigger {
    opacity: 0;
}

/* 上から */

.fade-down {
	animation-name:fadeDownAnime;
	animation-duration:1.0s;
	animation-fill-mode:forwards;
	animation-timing-function: ease;
	animation-delay: 0.3s;
	opacity:0;
}

@keyframes fadeDownAnime{
  from {
    opacity: 0;
		transform: translateY(-100px);
  }

  to {
    opacity: 1;
		transform: translateY(0);
  }
}

.fade-down-trigger {
    opacity: 0;
}

/* 左から */

.fade-left{
	animation-name:fadeLeftAnime;
	animation-duration:1.0s;
	animation-fill-mode:forwards;
	animation-timing-function: ease;
	animation-delay: 0.3s;
	opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
		transform: translateX(-100px);
  }

  to {
    opacity: 1;
		transform: translateX(0);
  }
}

.fade-left-trigger {
    opacity: 0;
}

/* 右から */

.fade-right{
	animation-name:fadeRightAnime;
	animation-duration:1.0s;
	animation-fill-mode:forwards;
	animation-timing-function: ease;
	animation-delay: 0.3s;
	opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
		transform: translateX(100px);
  }

  to {
    opacity: 1;
		transform: translateX(0);
  }
}

.fade-right-trigger {
    opacity: 0;
}

#sec__coming {
	z-index: 9999;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	background: rgba(0,0,0,.8);
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: column;
}

.coming__logo {
	width: 80%;
	max-width: 500px;
	margin-bottom: 40px;
}

.coming__copy {
	font-size: 24px;
	text-align: center;
}

.hdr {
	z-index: 1000;
	width: 100%;
	position: fixed;
	top: 0;
}

.hdr__wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	padding: 15px 0;
	width: 95%;
	max-width: 1780px;
	margin: 0 auto;
}

@media screen and (max-width: 768px) {
	.hdr__wrap {
		width: 100%;
		padding: 10px 10px 10px;
	}
}

.hdr__ttl {
	display: flex;
	align-items: center;
}

@media screen and (min-width: 1025px) {
	.hdr__ttl {

	}
}

.hdr__ttllogo {
	width: 80px;
}

@media screen and (min-width: 1025px) {
	.hdr__ttllogo {
		width: 120px;
	}
}

.hdr__ttltxt {
	margin-left: 1em;
	font-size: 12px;
}

@media screen and (min-width: 1025px) {
	.hdr__ttltxt {
		font-size: 14px;
	}
}

.hdr__ttl--center {
	max-width: 180px;
	margin: 0 auto;
}

.hdr__info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
}

@media screen and (max-width: 1024px) {
	.hdr__info {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}
}

.hdr__pc__list {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

@media screen and (min-width: 648px) {
	.hdr__pc__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
}

.hdr__pc__item--mail {
	margin: 0 30px;
}

@media screen and (max-width: 880px) {
	.hdr__pc__item--mail {
		margin: 0px 10px 0 20px;
	}
}

.hdr__pc__infotxt {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: bold;
	text-align: center;
}

@media screen and (min-width: 769px) {
	.hdr__pc__infotxt {
		text-align: center;
		margin-right: 0;
	}
}

.hdr__pc__infoflx {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.hdr__pc__infoimg {
	margin-right: 5px;
	line-height: 1;
}

.hdr__pc__infoimg img {}

.hdr__pc__infoimg--tel {
	width: 22px;
	height: 22px;
	padding: 4px;
	background-color: #333;
	border-radius: 50%;
}

.hdr__pc__infoimg--tel img {
	display: block;
	width: 80%;
	margin: auto;
}

.hdr__pc__infoimg--mail img {
	width: 20px;
	height: auto;
}

.hdr__pc__tel {
	font-size: 21px;
	font-size: 1.3125rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0;
}

.hdr__pc__tel a {
	color: #f59c3d;
}

.hdr__pc__mailbtn {
	color: #FFF;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1;
	letter-spacing: 0;
	padding: 10px 20px;
	background-color: #EE7602;
	border-radius: 9999px;
}

.hdr__pc__mailbtn:hover {
	opacity: 1;
	background-color: #333333;
}

@media screen and (min-width: 1281px) {
	.hdr__pc__mailbtn {
		font-size: 14px;
		font-size: 0.875rem;
		padding: 10px 25px;
	}
}

.hdr__sp {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.hdr__sp__item {
	margin-right: 15px;
}

@media screen and (max-width: 374px) {
	.hdr__sp__item {
		margin-right: 10px;
	}
}

.hdr__sp__item:last-of-type {
	margin-right: 0;
}

.hdr__sp__item a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 45px;
	height: 45px;
}

@media screen and (max-width: 374px) {
	.hdr__sp__item a {
		width: 35px;
		height: 35px;
	}
}

.hdr__sp__item img {
	display: block;
	width: 55%;
	margin: auto;
}

.hdr__sp--tel {
	background-color: #444;
	border-radius: 9999px;
}

.hdr__sp--mail {
	background-color: #EE7602;
	border-radius: 9999px;
}

.hdr__flx {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding-bottom: 30px;
}

@media screen and (max-width: 1001px) {
	.hdr__flx {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding-bottom: 0;
	}
}

.hdr__logoarea {
	display: block;
	width: 550px;
}

@media screen and (min-width: 817px) {
	.hdr__logoarea {
		width: 50%;
		margin-right: 170px;
	}
}

@media screen and (max-width: 1024px) {
	.hdr__logoarea {
		width: 60%;
	}
}

@media screen and (max-width: 648px) {
	.hdr__logoarea {
		width: 183px;
	}
}

@media screen and (min-width: 1025px) {
	/* PCは問い合わせボタンの左側にメニューを配置 */
	.zdo_drawer_menu {
		order: -1;
	}
}
	
.zdo_drawer_menu .zdo_drawer_nav_wrapper {
	width: 500px;
	-webkit-transform: translate(500px);
	-ms-transform: translate(500px);
	transform: translate(500px);
	overflow-y: scroll;
	padding-top: 80px;
	background-color: #fff;
}

@media screen and (max-width: 648px) {
	.zdo_drawer_menu .zdo_drawer_nav_wrapper {
		width: 85%;
		padding: 15vw 0 0;
	}
}

@media screen and (min-width: 1025px) {
	/* PCのナビ表示 */
	.zdo_drawer_menu .zdo_drawer_nav_wrapper {
		position: static;
		width: 100%;
		height: auto;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		padding-top: 0;
		background-color: transparent;
	}
}

.zdo_drawer_menu .zdo_drawer_bg {
	background-color: rgba(0, 0, 0, 0.8);
}

.zdo_drawer_menu .zdo_drawer_nav {
	text-align: center;
	padding: 0;
}

@media screen and (min-width: 1025px) {
	/* PCのナビ表示 */
	.zdo_drawer_menu .zdo_drawer_nav {
		display: flex;
		flex-wrap: wrap;
	}
	/* PCのナビ表示 */
	.zdo_drawer_menu .zdo_drawer_nav li {
		margin-bottom: 0;
	}
	.zdo_drawer_menu .zdo_drawer_nav li:last-child {
		display: none;
	}
}

.zdo_drawer_menu a {
	display: block;
	padding: 0.8em;
	font-size: 14px;
	color: #333333;
}

.zdo_drawer_menu a:visited {
  color: #333333;
}

.zdo_drawer_menu a:hover {

}

@media screen and (min-width: 1025px) {
	/* PCのナビ表示 */
	.zdo_drawer_menu a {
		padding: 0.8em 0.8em;
		font-size: 14px;
	}
}

@media screen and (min-width: 1281px) {
	/* PCのナビ表示 */
	.zdo_drawer_menu a {
		padding: 0.8em 1.3em;
		font-size: 16px;
	}
}

.zdo_drawer_menu .nav--orange {
	color: #e7970c;
}

.zdo_drawer_menu .nav--orange:visited {
	color: #e7970c;
}

.zdo_drawer_menu .nav--red {
	color: #E41D60;
}

.zdo_drawer_menu .nav--red:visited {
	color: #E41D60;
}

.zdo_drawer_menu .zdo_drawer_button {
	display: block;
	height: 20px;
	position: relative;
	top: -7px;
	right: 0;
	margin-left: 15px;
	width: 42px;
}

@media screen and (min-width: 1025px) {
	/* PCのナビ表示 */
	.zdo_drawer_menu .zdo_drawer_button {
		top: 0;
		margin-top: -15px;
		margin-left: 0;
		width: 51px;
		height: 25px;
		color: #333333;
		display: none;
	}
}

.zdo_drawer_menu .zdo_drawer_bar {
	background-color: #333333;
	height: 3px;
}

.zdo_drawer_button .zdo_drawer_bar1 {
	width: 42px;
}

.zdo_drawer_button .zdo_drawer_bar2 {
	width: 28px;
}

.zdo_drawer_button .zdo_drawer_bar3 {
	width: 14px;
}

@media screen and (min-width: 1025px) {
	.zdo_drawer_button .zdo_drawer_bar1 {
		width: 51px;
	}

	.zdo_drawer_button .zdo_drawer_bar2 {
		width: 34px;
	}

	.zdo_drawer_button .zdo_drawer_bar3 {
		width: 17px;
	}
}

.zdo_drawer_menu .active {
	height: 26px;
}

.zdo_drawer_menu .zdo_drawer_text {
	color: #333333;
	font-size: 9px;
	bottom: -18px;
	left: 2px;
}

.hdr.hdr__scroll {

}

.hdr.hdr__scroll .zdo_drawer_menu .zdo_drawer_bar {
	background-color: #333333;
}

.hdr.hdr__scroll .zdo_drawer_text {
	color: #333333;
}

.hdr.hdr__contact {
	background-color: transparent;
}

.zdo_drawer_menu .active .zdo_drawer_bar {
	background-color: #333333!important;
}

.zdo_drawer_menu .active .zdo_drawer_text {
	color: #333333!important;
}

.nav__menu--ja {
	display: block;
	margin-bottom: 0.2em;
}
.nav__menu--en {
	display: block;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 0.8em;
	font-style: italic;
	color: #E41D60;
}

.cta {
	background-color: #373675;
	background-image: url("../images/bg_cta.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto;
	position: relative;
}

.cta__inner {
	font-weight: bold;
	color: #fff;
	text-align: center;
	padding: 80px 0;
}

@media screen and (max-width: 768px) {
	.cta__inner {
		width: 85%;
		padding: 50px 0;
	}
}

.cta__onsale {
	position: absolute;
	top: -30px;
	right: 0;
	left: 0;
	margin: auto;
	width: 100px;
}

@media screen and (max-width: 768px) {
	.cta__onsale {
		width: 50px;
	}
}

.cta__copy {
	font-size: 32px;
	font-size: 2rem;
	padding: 20px 0;
	border: 1px solid #fff;
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	.cta__copy {
		font-size: 16px;
		font-size: 1rem;
		margin-bottom: 20px;
		padding: 10px 0;
	}
}

.cta__copy span {
	border-right: 2px solid #fff;
	padding-right: 0.5em;
	margin-right: 0.5em;
}

@media screen and (max-width: 768px) {
	.cta__copy span {
		border-bottom: 1px solid #fff;
		border-right: none;
		font-size: 18px;
		font-size: 1.125rem;
		display: inline-block;
		margin-bottom: 5px;
		padding-right: 0;
		margin-right: 0;
	}
}

.cta__ttl {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
	.cta__ttl {
		font-size: 18px;
		font-size: 1.125rem;
	}
}

.cta__item {
	width: 100%;
}

@media screen and (max-width: 768px) {
	.cta__item {
		width: 100%;
	}
	.cta__item:last-of-type {
		margin-top: 10px;
	}
}

.cta__item__flx {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	color: #fff;
}

.cta__item__flx:link {
	color: #fff;
}

.cta__item__flx:hover,
.cta__item__flx:active,
.cta__item__flx:focus {
	color: white;
}

.cta__item__ttl {
	font-size: 22px;
	font-size: 1.375rem;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 1px solid #fff;
	font-weight: normal;
}

@media screen and (max-width: 768px) {
	.cta__item__ttl {
		font-size: 16px;
		font-size: 1rem;
		padding-bottom: 5px;
	}
}

.cta__item__ttl__ftr {
	text-align: center;
	font-weight: bold;
	color: #fff;
}

.cta__item__ttl__thanks {
	text-align: center;
	font-weight: bold;
	color: #F75800;
	border-bottom: 1px solid #F75800;
}

.cta__item__img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 35px;
	height: 35px;
	margin-top: 4px;
	margin-right: 10px;
	border-radius: 50%;
	border: 1px solid #fff;
}

@media screen and (max-width: 768px) {
	.cta__item__img {
		width: 30px;
		height: 30px;
		margin-top: 0;
		margin-right: 5px;
	}
}

.cta__item__img img {
	display: block;
	width: 50%;
}

.cta__item__img__ftr {
	background-color: transparent;
	border: 1px solid #fff;
}

.cta__item__num {
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 1;
	letter-spacing: 0.02em;
}

@media screen and (max-width: 768px) {
	.cta__item__num {
		font-size: 30px;
		font-size: 1.875rem;
		padding-bottom: 5px;
	}
}

.cta__item__num__mail {
	color: #E41D60;
	font-weight: bold;
	font-size: 24px;
	font-size: 1.5rem;
}

@media screen and (max-width: 768px) {
	.cta__item__num__mail {
		font-size: 14px;
		font-size: 0.875rem;
	}
}

.cta__item__num a {
	color: #fff;
}

.cta__item__num__ftr {
	color: #fff;
}

.cta__item__num__ftr a {
	color: #fff;
}

.cta__item__num__thanks {
	color: #E41D60;
	font-weight: bold;
}

.cta__item__num__thanks a {
	color: #E41D60;
}

.cta__item__txt {
	font-size: 14px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.cta__item__txt {
		font-size: 12px;
	}
}

.cta__item__txt__ftr {
	color: #fff;
}

.cta__item__txt__thanks {
	font-weight: bold;
}

.cta__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

@media screen and (min-width: 1025px) {
	.cta__list {
		align-items: flex-start;
	}
}

.cta__list__thanks {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

@media screen and (max-width: 768px) {
	.cta__list__thanks {
		width: 90%;
		margin: 0 auto;
	}
}

.cta__btn {
	background-color: #EE7602;
	text-decoration: none;
	color: #fff;
	text-align: center;
	margin: 0;
	padding: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 320px;
	border-radius: 9999px;
}

.cta__btn:hover {
	background-color: #333333;
	color: #fff;
	opacity: 1;
}

@media screen and (max-width: 768px) {
	.cta__btn {
		margin: auto;
		padding: 20px 10px;
		max-width: 100%;
	}
	.cta__btn img {
		width: 6vw;
	}
}

.cta__btn--mail img {
	width: 26px;
}

.cta__btn--mail:after {
	margin-left: 1em;
	content: "";
	background: url("../images/cta_icon_arrow_white.svg") center center no-repeat;
	background-size: contain;
	width: 32px;
	height: 8px;
}

@media screen and (max-width: 768px) {
	.cta__btn--mail:after {
		margin-left: 0.5em;
		width: 20px;
		height: 6px;
	}
}

.cta__btn--mail:hover:after {
	background: url("../images/cta_icon_arrow_white.svg") center center no-repeat;
}

.cta__btn--blue {
	background-color: #373675;
	-webkit-box-shadow: none;
	box-shadow: none;
}

@media screen and (max-width: 768px) {
	.cta__btn--blue {
		font-size: 16px;
		font-size: 1rem;
	}
}

.cta__btn--fax:after {
	content: "";
	background: url("../images/cta_icon_download.png") center center no-repeat;
	background-size: contain;
	width: 22px;
	height: 25px;
}

.cta__btn--top {
	text-align: center;
	position: relative;
	margin: 0 auto;
	background-color: #EE7602;
	color: #fff;
	border: none;
}

.cta__btn--top:hover {
	background-color: #333333;
}

@media screen and (max-width: 768px) {
	.cta__btn--top:after {
		right: 7.5vw;
	}
}

.cta__btn--ftr {
	background-color: #fff;
	color: #EE7602;
}

.cta__btn--ftr:after {
	background: url("../images/cta_icon_arrow_orange.svg") center center no-repeat;
}

.btn__more {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 95%;
	max-width: 400px;
	height: 60px;
	margin: 0 auto;
	border: solid 2px #373675;
	border-radius: 30px;
	text-decoration: none;
	text-align: center;
	background-color: #373675;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	transition: .3s ease-out;
}

.btn__more:hover {
	opacity: 1.0;
	background-color: #fff;
	color: #373675;
}

.btn__more:after {
	content: "";
	background: url("../images/icon_more_white.svg") no-repeat right center;
	background-size: contain;
	width: 16px;
	height: 16px;
	margin-left: 5px;
}

.btn__more:hover:after {
	background: url("../images/icon_more_blue.svg") no-repeat right center;
}

#lightbox .lb-image {
  border: none;
}

.sec__main {

}

.main {
	position: relative;
	width: 100vw;
	height: 88vh;
	background: url("../images/main_bg_sp.jpg") center center no-repeat;
	background-size: cover;
}

.main__inner {
	position: absolute;
	top: 80px;
	left: 6vw;
}

@keyframes border_anim {
	0%{
		height: 0%;
	}
	100%{
		height: 100%;
	}
}

.main__inner:after {
	content: '';
	position: absolute;
	z-index: 9;
	left: -30px;
	top: 0;
	width: 1px;
	height: 100%;
	background: rgba(255,255,255,.2);
}

.main__eyecatch {

}

.main__eyecatch--title {
	font-weight: bold;
	font-size: 40px;
	margin-bottom: 10px;
	line-height: 1.5em;
}

.main__eyecatch--subcopy {
	margin-bottom: 20px;
	font-size: 13px;
}

@media screen and (min-width: 600px) {
	.main__inner {
		top: 10vh;
	}
	
	.main__eyecatch--title {
		font-size: 50px;
	}
}

@media screen and (min-width: 1025px) {
	.main {
		height: 84vh;
		background: url("../images/main_bg_pc.jpg") right top no-repeat;
		background-size: cover;
	}
	
	.main__inner {
		top: 11vh;
		left: 14vw;
	}
	
	.main__inner:after {
		left: -50px;
	}
	
	.main__eyecatch {

	}
	
	.main__eyecatch--title {
		font-size: 72px;
		margin-bottom: 20px;
	}

	.main__eyecatch--subcopy {
		margin-bottom: 25px;
		font-size: 16px;
	}
	
}

@media screen and (min-width: 1400px) {
	.main__eyecatch--title {
		font-size: 96px;
		line-height: 1.4em;
	}
}


.sec__about {
	color: #fff;
}


@media screen and (min-width: 1025px) {
	.sec__about {
		
	}
}

.sec__about .cont__ttl-l:after {
	background-color: #fff;
}

.sec__about .cont__inner {
	padding: 30px 5% 60px;
}

@media screen and (min-width: 1025px) {
	.sec__about .cont__inner {
		padding: 80px 0 80px;
	}
}

.about__2col {
	display: flex;
	flex-wrap: wrap;
	flex-direction: column-reverse;
}

.about__2col--left {
	width: 80%;
	margin-left: 0;
	margin-right: auto;
	margin-top: -90px;
	margin-bottom: 40px;
	position: relative;
	z-index: 1;
}

.about__2col--right {
	width: 95%;
	margin-left: auto;
	margin-right: 0;
	background: url(../images/bg_about_sp.jpg) right center no-repeat;
	background-size: cover;
	background-position-x: 62%;
	position: relative;
	top: -60px;
}

@media screen and (min-width: 1025px) {
	.about__2col {
		flex-direction: row;
	}
	
	.about__2col--left {
		width: 40%;
		margin-left: auto;
		margin-right: auto;
		margin-top: 0;
		margin-bottom: auto;
	}

	.about__2col--right {
		width: 60%;
		padding: 0 4em;
		background: url(../images/bg_about_pc.jpg) right center no-repeat;
		background-position-x: 30%;
		position: relative;
		top: -60px;
	}
}

.sec__features {
	background-image: url("../images/bg_features.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top left;
}

.features__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
}

.features__item {
	padding: 1.5rem 0 1.5rem;
}

.features__item:not(:last-child) {
	border-bottom: solid 1px #cccccc;
}

.features__item figure {
	width: 100%;
	margin: 0 auto 1rem;
}

.features__item .cont__sttl {
	margin-bottom: 0.5rem;
	text-align: left;
}

.features__item .cont__txt {
	font-size: 14px;
}

.features__item--num {
	font-weight: bold;
	font-size: 2em;
	color: #EE7602;
	margin-left: -0.25em;
	margin-bottom: -0.5em;
	display: block;
	position: relative;
	z-index: 1;
}

@media screen and (min-width: 769px) {
	.sec__features {
		background-size: 480px;
	}
	
}
	
@media screen and (min-width: 1025px) {
	.features__list {
		justify-content: space-between;
		align-items: flex-start;
		max-width: none;
	}
	
	.features__item {
		width: 30%;
		border-bottom: 0;
		padding: 0;
	}
	
	.features__item:not(:last-child) {
		border-bottom: none;
	}
}

.sec__members {
	color: #fff;
	background-color: #f9f5f2;
}

.sec__members .cont__ttl-l:after {
	background-color: #fff;
}

.members__bg {
  background-image: url("../images/bg_members_sp.jpg");
  background-size: cover;
  background-position: top;
  animation: membersParallax linear both;
  animation-timeline: view();
}

@keyframes membersParallax {
  from {
    background-position: center 0;
  }

  to {
    background-position: center -300px;
  }
}

.members-graph__wrapper {
	margin-top: -50px;
	padding-bottom: 90px;
}

.members-graph__list {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-flow: column nowrap;
	margin: auto;
	color: #111;
}

.members-graph__item {
	width: 100%;
	background-color: #fff;
	background-image: url("../images/ecailles.png");
	padding: 40px 20px;
}

.members-graph__item:nth-child(1) {
	margin-bottom: 40px;
}

.members-graph__fig {
	margin-bottom: 20px;
}

.members-graph__fig figcaption {
	position: relative;
	font-size: 24px;
	margin-left: -10px;
	margin-bottom: -24px;
	text-align: left;
	font-weight: bold;
	color: #fff;
}

.members-graph__fig figcaption span {
	display: inline-block;
	margin-bottom: 0.2em;
	padding: 0.2em;
	background-color: #EE7602;
}

.members-graph__ttl {
	color: #EE7602;
	text-align: left;
	margin-bottom: 0.5em;
}

.members-graph__caption {
	
}

@media screen and (min-width: 1025px) {
	.members__bg {
		background-image: url("../images/bg_members.jpg");
	}
	
	.members-graph__wrapper {
		margin-top: -80px;
		padding-bottom: 120px;
	}
	
	.members-graph__list {
		justify-content: space-between;
		flex-flow: row nowrap;
	}
	
	.members-graph__item {
		width: 48%;
		min-height: 420px;
		padding: 40px;
	}

	.members-graph__item:nth-child(1) {
		margin-bottom: 0;
	}
	
	.members-graph__fig figcaption {
		font-size: 28px;
		margin-bottom: -30px;
	}
	
	.members-graph__caption {

	}
}

.sec__company {
  background-color: #000000;
	background-image: url("../images/bg_company.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	color: #fff;
	line-height: 1.75;
}

.sec__company .cont__ttl:before {
	background-color: #fff;
}

.company__dl__wrapper {
	margin: 0 auto 2rem;
	max-width: 640px;
	padding: 1rem;
}

.company__dl__wrapper dl {
	display: flex;
	flex-wrap: wrap;
}

.company__dl__wrapper dt,
.company__dl__wrapper dd {
	width: 100%;
	padding: 1em .5em;
}

.company__dl__wrapper dt {
	border-bottom: 1px solid #EE7602;
	font-weight: bold;
	text-align: left;
}

.company__dl__wrapper dd {
	font-weight: 200;
	flex-grow: 1;
}

.company__dl__wrapper dd span {
	font-weight: bold;
}

@media screen and (min-width: 769px) {
	.company__dl__wrapper dl {
		flex-wrap: nowrap;
	}
	
	.company__dl__wrapper dt,
	.company__dl__wrapper dd {
		width: auto;
	}
	
	.company__dl__wrapper dt {
		width: 8.5em;
		text-align: center;
	}
	
	.company__dl__wrapper dd {
		border-bottom: 1px solid #ccc;
	}
}

.sec__contact {
	background: #111 url("../images/bg_contact.jpg") center center no-repeat;
	color: #fff;
}

.sec__contact .cont__ttl-l:after {
	background-color: #fff;
}

.contact__inner {
	width: 90%;
	padding-top: 0;
}

@media screen and (min-width: 769px) {
	.contact__inner {
		width: 100%;
		max-width: 880px;
	}
}

.contact__ttl {
	font-size: 28px!important;
}

@media screen and (min-width: 769px) {
	.contact__ttl {
		font-size: 48px!important;
	}
}

.contact__desc {
	/*background: url("../images/contact_img.png") center bottom no-repeat;*/
	background-color: #f4f4f4;
	padding: 20px 0;
}

@media screen and (min-width: 769px) {
	.contact__desc {
		background-position: right bottom;
		padding: 30px 0;
	}
}

.contact__desc__txt {
	width: 100%;
	/*padding-bottom: 42vw;*/
	font-size: 14px;
	font-size: 0.875rem;
	text-align: center;
}

@media screen and (min-width: 769px) {
	.contact__desc__txt {
		font-size: 18px;
		font-size: 1.125rem;
		/*max-width: 70%;*/
		padding-bottom: 0;
	}
}

.p-sec__hdr--contact .cont__ttl:before {
	width: 0;
}

.p-sec__contact .policy {
	max-width: 1060px;
	height: 200px;
	background: #f4f4f4;
	overflow: auto;
	border: 1px solid #e6e6e6;
	line-height: 1.8;
	padding: 20px;
	margin: 0 auto 30px;
	font-size: 14px;
	font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
	.p-sec__contact .policy {
		font-size: 16px;
		font-size: 1rem;
		margin: 0 auto 40px;
		padding: 40px;
	}
}

.p-sec__contact .policy__list,
.p-sec__contact .policy__ttl,
.p-sec__contact .policy__sttl {
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	.p-sec__contact .policy__list,
	.p-sec__contact .policy__ttl,
	.p-sec__contact .policy__sttl {
		margin-bottom: 15px;
	}
}

.p-sec__contact .policy__check {
	font-size: 18px;
	text-align: center;
	margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
	.p-sec__contact .policy__check {
		font-size: 16px;
	}
}

.form__tbl {
	width: 100%;
	margin-top: 50px;
	table-layout: fixed;
}

@media screen and (max-width: 768px) {
	.form__tbl {
		margin-right: auto;
		margin-left: auto;
	}
}

.form__tbl th {
	width: 260px;
	font-weight: normal;
	text-align: left;
	font-size: 16px;
	font-size: 1rem;
	position: relative;
	padding: 20px;
	vertical-align: middle;
	background-color: #f4f4f4;
	border-bottom: 30px solid transparent;
}

@media screen and (max-width: 768px) {
	.form__tbl th {
		display: block;
		font-size: 16px;
		font-size: 1rem;
		width: 100%;
		background-color: transparent;
		padding: 10px 0;
		border-bottom: none;
	}
}

.form__tbl th span {
	display: inline-block;
	color: #fff;
	font-size: 14px;
	font-size: 0.875rem;
	height: 24px;
	line-height: 1.5;
	padding: 0.1em 0.5em;
	text-align: center;
	position: absolute;
	right: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
}

@media screen and (max-width: 768px) {
	.form__tbl th span {
		right: 0;
	}
}

.form__tbl .hissu {
	background-color: #EE7602;
}

.form__tbl .any {
	background-color: #006B7B;
}

.form__tbl td {
	font-size: 16px;
	font-size: 1rem;
	vertical-align: middle;
	border-bottom: 30px solid transparent;
	padding: 0 20px;
}

@media screen and (max-width: 768px) {
	.form__tbl td {
		display: block;
		position: relative;
		padding: 0;
		border-bottom: 30px solid transparent;
		font-size: 16px;
		font-size: 1rem;
	}
}

.form__tbl td input[type="text"],
.form__tbl td input[type="email"],
.form__tbl td input[type="tel"],
.form__tbl td input[type="address"],
.form__tbl td textarea {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 14px 20px;
	font-size: 16px;
	font-size: 1rem;
	border-bottom: 1px solid #e6e6e6;
	border-top: none;
	border-right: none;
	border-left: none;
	box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
	background-color: #F7F9FB;
}

@media screen and (max-width: 768px) {
	.form__tbl td input[type="text"],
	.form__tbl td input[type="email"],
	.form__tbl td input[type="tel"],
	.form__tbl td input[type="address"],
	.form__tbl td textarea {
		font-size: 16px;
		font-size: 1rem;
		padding: 20px 15px;
	}
}

.form__tbl td input[type="text"]::-webkit-input-placeholder,
.form__tbl td input[type="email"]::-webkit-input-placeholder,
.form__tbl td input[type="tel"]::-webkit-input-placeholder,
.form__tbl td input[type="address"]::-webkit-input-placeholder,
.form__tbl td textarea::-webkit-input-placeholder {
	color: #c4c4c4;
}

.form__tbl td input[type="text"]:-ms-input-placeholder,
.form__tbl td input[type="email"]:-ms-input-placeholder,
.form__tbl td input[type="tel"]:-ms-input-placeholder,
.form__tbl td input[type="address"]:-ms-input-placeholder,
.form__tbl td textarea:-ms-input-placeholder {
	color: #c4c4c4;
}

.form__tbl td input[type="text"]::-ms-input-placeholder,
.form__tbl td input[type="email"]::-ms-input-placeholder,
.form__tbl td input[type="tel"]::-ms-input-placeholder,
.form__tbl td input[type="address"]::-ms-input-placeholder,
.form__tbl td textarea::-ms-input-placeholder {
	color: #c4c4c4;
}

.form__tbl td input[type="text"]::placeholder,
.form__tbl td input[type="email"]::placeholder,
.form__tbl td input[type="tel"]::placeholder,
.form__tbl td input[type="address"]::placeholder,
.form__tbl td textarea::placeholder {
	color: #c4c4c4;
}

.form__tbl td select {
	height: 48px;
	font-size: 18px;
	border: 1px solid #e6e6e6;
	color: #666;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 14px 30px;
	border-bottom: 1px solid #e6e6e6;
	border-top: none;
	border-right: none;
	border-left: none;
	box-shadow: rgba(0, 0, 0, 0.15) 1.95px 1.95px 2.6px;
	background-color: #F7F9FB;
}

@media screen and (max-width: 768px) {
	.form__tbl td select {
		vertical-align: middle;
	}
}

.form__tbl td textarea {
	width: 100%;
	height: 200px;
	line-height: 1.5;
}

@media screen and (max-width: 768px) {
	.form__tbl td textarea {
		vertical-align: middle;
		font-size: 16px;
		font-size: 1rem;
	}
}

.form__tbl td .txt_prefecture {
	margin-bottom: 10px;
}

.form__desc {
	margin-top: 30px;
	padding-bottom: 40px;
	text-align: center;
	font-size: 14px;
	font-size: 0.875rem;
}

@media screen and (min-width: 769px) {
	.form__desc {
		font-size: 18px;
		font-size: 1.125rem;
		margin-top: 0;
		padding-bottom: 40px;
	}
}

.form__desc span {
	font-size: 133%;
	display: block;
	padding-bottom: 40px;
}

input[type="checkbox"],
input[type="radio"] {
	-ms-transform: scale(1.3, 1.3);
	-webkit-transform: scale(1.3, 1.3);
	transform: scale(1.3, 1.3);
	margin-top: -2px;
}

.btn__area {
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
}

@media screen and (max-width: 768px) {
	.btn__area {
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		width: 90%;
		margin: 0 auto;
	}
}

.btn__itembtn {
	color: #fff;
	width: 100%;
	max-width: 500px;
	padding: 30px 0;
	font-size: 20px;
	font-size: 1.25rem;
	cursor: pointer;
	-webkit-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

@media screen and (max-width: 768px) {
	.btn__itembtn {
		padding: 20px 0;
		width: 95%;
		font-size: 20px;
		margin-bottom: 20px;
		-webkit-appearance: none;
	}
}

.btn__confirm {
	max-width: 480px;
	margin: 0 auto;
	background-color: #EE7602;
	border: none;
	border-radius: 9999px;
}

.btn__send,
.btn__return {
	width: 45%;
	border-radius: 9999px;
}

@media screen and (max-width: 648px) {
	.btn__send,
	.btn__return {
		width: 100%;
	}
}

.btn__return {
	background-color: #cccccc;
	border: none;
}

.btn__send {
	background-color: #EE7602;
	border: none;
}

.btn input[type="submit"] {
	line-height: 1;
}

.btn__confirm:hover,
.btn__send:hover {
	background-color: #333;
}

.btn__return:hover {
	opacity: 0.7;
}

.confirmpage__txt {
	max-height: 60px;
	text-align: center;
}

.confirmpage th {
	width: 320px;
}

@media screen and (max-width: 768px) {
	.confirmpage th {
		width: 100%;
	}
}

@media screen and (min-width: 769px) {
	.confirmpage td {
		padding-left: 40px;
	}
}

.thanks__inner {
	padding-top: 100px;
}

@media screen and (min-width: 769px) {
	.thanks__inner {
		padding-top: 150px;
	}
}

.thanks__ttl::before {
	width: 0;
	height: 0;
}

.thanks__ttl::after {
	content: '';
}

@media screen and (min-width: 769px) {
	.thanks__ttl {
		margin-bottom: 70px;
	}
}

.thanks__txt {
	font-size: 14px;
	font-size: 0.875rem;
	margin-bottom: 25px;
}

@media screen and (min-width: 769px) {
	.thanks__txt {
		text-align: center;
		font-size: 18px;
		font-size: 1.125rem;
		margin-bottom: 90px;
	}
}

.thanks .topback {
	width: 90%;
	margin: 35px auto;
}

@media screen and (min-width: 769px) {
	.thanks .topback {
		margin-top: 80px;
	}
}

.confirmpage__ttl {
	
}

.confirmpage__ttl:after {
	content: '';
}

.ftr {
	background-color: #333333;
}

.ftr__inner {
	padding: 80px 0;
}

.ftr__ttl {
	font-size: 16px;
	margin-bottom: 20px;
}

.ftr__ttl:before {
	width: 0;
	height: 0;
}

.ftr__ttl .cont__ttl--ja {
	color: #fff;
}

@media screen and (min-width: 769px) {
	.ftr__ttl {
		font-size: 18px;
		margin-bottom: 40px;
	}
}

.ftr__nav {
	padding: 1.5em 0;
	background-color: #f4f4f4;
	background-image: url("https://www.transparenttextures.com/patterns/absurdity.png");
}

.ftr__nav__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.ftr__nav__item {
	width: 90%;
}

@media screen and (min-width: 769px) {
	.ftr__nav__item {
		width: auto;
	}
}

.ftr__nav__item a {
	display: block;
	padding: 1em;
	text-align: center;
	color: #111;
}

.ftr__nav__item a:hover {

}

.ftr__nav__menu--ja {
	display: block;
	margin-bottom: 0.2em;
	font-size: 13px;
}

@media screen and (min-width: 769px) {
	.ftr__nav__menu--ja {
		font-size: 14px;
	}
}

.ftr__nav__menu--en {
	display: block;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 0.8em;
	font-style: italic;
	color: #E41D60;
}

.ftr__logo {
	margin: 0 auto;
	padding: 30px 0 0;
}

@media screen and (min-width: 769px) {
	.ftr__logo {
		padding: 50px 0 0;
	}
}

.ftr__logo__link {
	display: block;
	width: 50%;
	max-width: 120px;
	height: auto;
	margin: 0 auto 20px auto;
}

@media screen and (min-width: 769px) {
	.ftr__logo__link {
		max-width: 180px;
		margin: 0 auto 30px auto;
	}
}

.ftr__company__link--wrapper {
	display: flex;
	justify-content: center;
}

.ftr__company__link {
	display: inline-block;
	color: #fff;
	font-size: 14px;
	text-align: center;
	margin: 0 auto;
}

.ftr__company__link:after {
	display: inline-block;
  margin-bottom: 3px;
  content: "";
  width: 14px;
  height: 14px;
	vertical-align: middle;
	background-image: url("../images/icon_external_link_white.svg");
  background-size: contain;
	background-repeat: no-repeat;
}

.ftr__copyright {
	padding: 30px 0;
}

@media screen and (min-width: 769px) {
	.ftr__copyright {
		padding: 50px 0;
	}
}

.ftr__copyright__txt {
	text-align: center;
	font-size: 11px;
	letter-spacing: 0.01em;
	color: #fff;
}