@charset "utf-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
a {
	color: #101010;
}
strong {
	font-weight: bold;
}

/*========================================
    base
========================================*/

html, body {
	font-size: 62.5%;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: 100%;
	background: #fff;
	color: #101010;
	z-index: 0;
}
a {
	text-decoration: none;
}
a:hover text-decoration: underline;
}
body.disable {
	overflow: hidden;
}
#content {
	min-height: 100vh;
	display: block;
	z-index: 1;
	position: relative;
	background: #fff;
}
/*========================================
    header
========================================*/

#header {
	position: fixed;
	top: 0;
	width: 100%;
	background: #3f3f3f;
	-webkit-transition: all 0.4s;
	-moz-transition: all 0.4s;
	-ms-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	z-index: 10000;
}
#top #header {
	position: fixed;
	width: 100%;
	background: none;
	z-index: 10000;
}
#top.out-keyvisual #header {
	background: #3f3f3f;
}

#header .board {
	transition: all .25s ease-out;
	height: calc(63px + 1.7rem);
}
#top #header .board {
	height: 0;
}
#top.out-keyvisual #header .board {
	height: calc(63px + 1.7rem);
}

#top #header.active_main .board {
	width: 100%;
	height: 137px;
	height: calc(63px + 1.7rem);
	background: rgba(0,0,0,.5);
}


#header.active .board {
	width: 100%;
	height: calc(96px + 3.4rem);
	background: #3f3f3f;
}
#top #header.is-hover .board {
	background: rgba(0,0,0,.5);
	height: calc(63px + 1.7rem);
}
#top #header.active .board {
	background: rgba(0,0,0,.5);
}
#top #header.is-hover.active .board {
	height: calc(96px + 3.4rem);
}
#top.out-keyvisual #header.active .board {
	height: calc(96px + 3.4rem);
	background: #3f3f3f;
}

#header .nav_wrap {
	position: relative;
	background: #3f3f3f;
	transition: all .4s ease-out;
}
#top #header .nav_wrap {
	background: transparent;
	transition: all .25s ease-out;
	background: none;
}
#top.out-keyvisual #header .nav_wrap {
	background: #3f3f3f;
	transition: all .4s ease-out;
}

#header.active .nav_wrap {
	border-bottom: 1px rgba(255, 255, 255, .25) solid;
}
#header .inner {
	margin: 0 auto;
	padding: 40px 0 0;
	width: 960px;
}
#header .inner:after {
	content: '';
	display: block;
	clear: both;
}
#header h1 a {
	display: block;
	width: 100px;
	height: 20px;
	background: url(../img/common/logo_white.svg) no-repeat 0 0;
	background-size: 100px 20px;
	text-indent: -9999px;
	float: left;
}
#header nav {
	width: 669px;
	float: right;
	padding-bottom: 23px;
	position: relative;
	box-sizing: border-box;
}
#header nav ul.main_nav {
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#header nav ul.main_nav li a,#header nav ul.main_nav li b{
	font-size: 16px;
	font-size: 1.6rem;
	color: #fff;
	padding: 0 5px 16px;
}
#header nav ul.main_nav li.nav_login a,#header nav ul.main_nav li.nav_login b {
	background: url(../img/common/icon_login.png) no-repeat 0 .15em;
	padding-left: 30px;
}
#nav_line {
	position: absolute;
	bottom: 0;
	height: 2px;
	background-color: #6ecc1b;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
#header #wrapper {
	position: absolute;
	left: 0px;
	width: 100%;
	height: 0;
}
#header.active #wrapper {
	height: auto;
}

#top #header #wrapper {
	position: relative;
	background: none;
	height: auto;
}
#top.out-keyvisual  #header #wrapper {
	position: absolute;
	left: 0px;
	width: 100%;
	height: 0;
}

#header .sub_nav_warp {
	margin: 0 auto;
	width: 960px;
}
#header #sub_nav {
	clear: both;
	width: 669px;
	float: right;
	padding: 20px 0;
	box-sizing: border-box;
	height: auto;
	position: relative;
	transition: opacity .25s ease-in-out;
	opacity: 0;
	z-index: -1;
	visibility: hidden;
}
#header.active #sub_nav {
	opacity: 1;
	z-index: 0;
	visibility: visible;
}
#header #sub_nav ul {
	width: 100%;
	float: right;
	display: flex;
	box-sizing: border-box;
}
#header #sub_nav li {
	margin-left: 5px;
	margin-right: 20px;
}
#header #sub_nav li:last-child {
	margin-right: 0;
}
#header #sub_nav li a,#header #sub_nav li b {
	font-size: 16px;
	font-size: 1.6rem;
	color: #fff;
	padding: 0 0 16px;
}
#header #sub_nav li a:hover,#header #sub_nav li b:hover {
	text-decoration: none;
	color: #6ecc1b;
}
/*========================================
    breadcrumbs
========================================*/

#breadcrumbs {
	margin: 0 auto;
	padding-top: 25px;
	width: 960px;
}
#breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
}
#breadcrumbs li {
	font-size: 14px;
	color: #fff;
}
#breadcrumbs li a {
	margin-right: 18px;
	position: relative;
	color: #fff;
}
#breadcrumbs li a:hover {
	text-decoration: underline;
}
#breadcrumbs li a:after {
	content: "";
	vertical-align: middle;
	position: absolute;
	top: calc(50% - 2.5px);
	right: -10px;
	width: 5px;
	height: 5px;
	margin: auto;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.cms #breadcrumbs li, .portfolio #breadcrumbs li, .price #breadcrumbs li, .download #breadcrumbs li, .contact #breadcrumbs li, .cms #breadcrumbs li a, .portfolio #breadcrumbs li a, .price #breadcrumbs li a, .download #breadcrumbs li a, .contact #breadcrumbs li a {
	color: #989898;
}
.cms #breadcrumbs li a:after, .portfolio #breadcrumbs li a:after, .download #breadcrumbs li a:after, .contact #breadcrumbs li a:after {
	border-top: 1px solid #989898;
	border-right: 1px solid #989898;
}
.influencer #breadcrumbs li, .influencer #breadcrumbs li a {
	color: #d6d6d6;
}
.influencer #breadcrumbs li a:after{
	border-top: 1px solid #d6d6d6;
	border-right: 1px solid #d6d6d6;
}
/*========================================
    footer
========================================*/

#footer {
	width: 100%;
	position: fixed;
	left: 0;
	bottom: 0;
	background: url(../img/common/bg_footer.jpg) no-repeat 0 0;
	background-size: cover;
}
#footer .inner {
	margin: 0 auto;
	padding: 100px 0 65px;
	width: 960px;
	position: relative;
	display: block;
}
#footer.footer-secondary .inner {
	padding: 65px 0;
}
#footer .btn_page_top a {
	display: inline-block;
	background: #000 url(../img/common/arrow_top.png) no-repeat center center;
	width: 56px;
	height: 56px;
	position: absolute;
	top: 0px;
	right: 0px;
	color: #fff;
	text-indent: -9999px;
}
#footer .btn_page_top a:hover {
	opacity: .75;
}
#footer .contact {
	border-bottom: 1px #fff solid;
	padding-bottom: 100px;
	margin-bottom: 80px;
}
#footer dt {
	font-size: 50px;
	color: #fff;
	border-bottom: 1px #fff solid;
	width: 300px;
	margin-bottom: 50px;
	padding-bottom: 30px;
}
#footer dd {
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}
#footer dd p {
	width: 480px;
	font-size: 18px;
	line-height: 2;
	letter-spacing: .05em;
	color: #fff;
}
#footer .bottom {
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}
#footer .link {
	display: flex;
}
#footer .link li {
	margin-right: 25px;
}
#footer .link a {
	color: #fff;
	font-size: 14px;
	letter-spacing: .05em;
	position: relative;
	padding-left: 23px;
}
#footer .link a:hover {
	text-decoration: underline;
}
#footer .link a:before {
	content: "";
	vertical-align: middle;
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	width: 6px;
	height: 6px;
	margin: auto;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#footer .copyright {
	color: #fff;
	font-size: 14px;
	letter-spacing: .05em;
}
/*========================================
    btn_container
========================================*/

ul.btn_container {
	margin: 0;
	padding: 0;
}
.btn_containerr:after {
	content: '';
	display: block;
	clear: both;
}
.btn_container li {
	font-size: 18px;
	font-size: 1.8rem;
	float: left;
	padding: 0;
}
.btn_container a {
	background: rgba(110, 204, 27, .9);
	color: #fff;
	display: inline-block;
	padding: 10px 0 10px 0;
	position: relative;
	border-radius: 18px;
	width: 12em;
	box-sizing: border-box;
	text-align: center;
	line-height: 1;
}
.btn_container .btn_contact a {
	margin-right: 14px;
}
.btn_container a span {
	background: url(../img/common/icon_external.png) no-repeat right center;
	padding-right: 30px;
}
.btn_container a span em {
	font-size: 16px;
	font-size: 1.6rem;
}
.btn_container a:hover {
	opacity: .75;
}
/*========================================
    Icons
========================================*/

.icn-arrow {
	background: url(../img/common/icn-arrow.svg) no-repeat left center;
	padding-left: 15px;
}
.icn-popup:after {
	content: "";
	background: url(../img/common/icn-popup.svg) no-repeat left center;
	background-size: cover;
	display: inline-block;
	width: 12px;
	height: 11px;
	margin-left: 9px;
}
.icn-arrow.ext-white {
	background-image: url(../img/common/icn-arrow_white.svg);
}
.icn-popup.ext-white:after {
	background-image: url(../img/common/icn-popup_white.svg);
}
/*========================================
    font english
========================================*/

.title_en {
	font-family: futura-pt, sans-serif;
	font-style: italic;
	font-weight: 100;
	letter-spacing: .1em;
}
.title_en.demi {
	font-style: normal;
	font-weight: 500;
	letter-spacing: .03em;
}
#key_visual .title_en {
	letter-spacing: .01em;
}
#header #sub_nav li a,#header #sub_nav li b {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
}
#header nav ul.main_nav li a,#header nav ul.main_nav li b {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .05em;
}
#header #sub_nav li a,#header #sub_nav li b {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .05em;
}
#breadcrumbs li {
	font-family: "futura-pt", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: lighter;
	font-style: normal;
	letter-spacing: .05em;
}
#footer dt {
	font-family: futura-pt, sans-serif;
	font-style: italic;
	font-weight: 100;
	letter-spacing: .1em;
}
.btn_container li {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .05em;
}
.btn_container li.btn_jp, .btn_jp {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0;
}
.btn_en a {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .05em;
}
/*sp*/

#header.active .sp_nav_wrap .btn_login a {
	font-family: futura-pt, sans-serif;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .05em;
}
#sp_contact_menu .layer .btn a {
	font-family: "futura-pt", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: .05em;
}
/*========================================
    apply
========================================*/

#apply {} #apply .inner {
	max-width: 980px;
	padding: 100px 10px 100px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}
#apply h2 {
	margin-bottom: 50px;
	font-size: 32px;
	font-size: 3.2rem;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: lighter;
	border-bottom: 1px solid #101010;
	padding-bottom: 30px;
	width: 300px;
}
#apply .apply_btn_container {
	display: flex;
	width: 100%;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#apply .btn_free {
	width: 48.958333333%;
	background: #ffc020;
}
#apply .btn_biz {
	width: 48.958333333%;
	background: #7cd131;
}
#apply .apply_btn a {
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
	padding: 20px 30px 20px 40px;
	box-sizing: border-box;
}
#apply .apply_btn a:hover {
	opacity: .75;
}
#apply .apply_btn h3 {
	margin-bottom: 10px;
	font-size: 50px;
	font-size: 5.0rem;
	font-family: futura-pt, "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	color: #fff;
}
#apply .apply_btn h3 .jp {
	font-size: 48px;
	font-size: 4.8rem;
	letter-spacing: -.1em;
}
#apply .apply_btn .text {
	font-size: 20px;
	font-size: 2.0rem;
	color: #fff;
}
#apply .apply_btn .text span {
	margin-left: 10px;
}
#apply .apply_btn .circle {
	background: #fff;
	font-size: 10px;
	font-size: 1.0rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	width: 110px;
	height: 110px;
	border-radius: 100px;
}
#apply .btn_free .circle {
	color: #ffc020;
}
#apply .btn_biz .circle {
	color: #7cd131;
}
#apply .apply_btn .circle .price {
	margin: 5px 0 2px;
	padding: 0;
	font-size: 2.2rem;
	font-family: helvetica, arial, clean, sans-serif;
	font-style: normal;
	font-weight: 500;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#apply .btn_free .circle .price b {
	font-size: 3.2rem;
	margin-left: 2px;
	font-weight: 700;
}
#apply .btn_biz .circle .price b {
	font-size: 2.2rem;
	margin-left: 2px;
	letter-spacing: -.05em;
	font-weight: 700;
}
#apply .apply_btn .circle .month {
	margin: 0;
	padding: 0;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 500;
}
/*========================================
    contact_footer
========================================*/

#contact_footer {
	margin: 90px auto 0;
	border-top: 1px #7f7f7f solid;
	padding: 75px 0 65px;
	width: 960px;
	position: relative;
}
#contact_footer .btn_page_top a {
	display: inline-block;
	background: #000 url(../img/common/arrow_top.png) no-repeat center center;
	width: 56px;
	height: 56px;
	position: absolute;
	top: -90px;
	right: 0px;
	color: #fff;
	text-indent: -9999px;
}
#contact_footer .btn_page_top a:hover {
	opacity: .75;
}
#contact_footer .inner {
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#contact_footer .link {
	display: flex;
}
#contact_footer .link li {
	margin-right: 25px;
}
#contact_footer .link a {
	color: #000;
	font-size: 14px;
	position: relative;
	padding-left: 23px;
}
#contact_footer .link a:hover {
	text-decoration: underline;
}
#contact_footer .link a:before {
	content: "";
	vertical-align: middle;
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	width: 6px;
	height: 6px;
	margin: auto;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#contact_footer .copyright {
	color: #000;
	font-size: 14px;
}
/*========================================
    Responsive
========================================*/

@media (min-width: 980px) and (max-width: 1279px) {} @media (min-width: 980px) {
	.sp_only {
		display: none !important;
	}
}
@media (max-width: 979px) {
	.pc_only {
		display: none !important;
	}
	/*========================================
        header
    ========================================*/
	
	#header {
		background: #3f3f3f;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1000;
	}
	#header.active {
		background: #000;
	}
	#top #header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background: #3f3f3f;
	}
	#top #header.active {
		background: #3f3f3f;
	}
	#top #header.active_main {
		background: #3f3f3f;
	}
	#header .board {
		height: auto;
	}
	#top #header.active_main .board {
		width: 100%;
		height: auto;
		background: none;
	}
	#header.active .board {
		width: 100%;
		height: auto;
		background: none;
	}
	#top #header .board,
	#top.out-keyvisual #header .board {
		height: auto;
	}
	#top #header.active .board {
		width: 100%;
		height: auto;
		background: none;
	}
	#header .nav_wrap {
		position: relative;
		border-bottom: none;
	}
	#top #header .nav_wrap {
		background: #3f3f3f;
	}
	#top #header .nav_wrap:hover {
		background: #3f3f3f;
	}
	#header .inner {
		margin: 0 auto;
		padding: 0;
		width: auto;
	}
	#header h1 {
		padding: 15px 10px;
	}
	#header h1 a {
		display: block;
		width: 76px;
		height: 15px;
		background: url(../img/common/logo_white.svg) no-repeat 0 0;
		background-size: 76px 15px;
		text-indent: -9999px;
		float: none;
	}
	#header .sp_menu a {
		width: 20px;
		height: 18px;
		padding: 9px 10px;
		font-size: 0;
		position: absolute;
		z-index: 1000;
		right: 10px;
		top: 5px;
	}
	#header .sp_menu a .bars, #header .sp_menu a .bars:before, #header .sp_menu a .bars:after {
		position: absolute;
		left: 0;
		right: 0;
		width: 25px;
		height: 2px;
		background-color: #fff;
		margin: auto;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
		-ms-transition: all 0.4s;
		-o-transition: all 0.4s;
		transition: all 0.4s;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
	#header .sp_menu a .bars {
		top: 0;
		bottom: 0;
	}
	#header .sp_menu a .bars:before, #header .sp_menu a .bars:after {
		content: '';
	}
	#header .sp_menu a .bars:before {
		top: -7px;
	}
	#header .sp_menu a .bars:after {
		bottom: -7px;
	}
	#header.active .sp_menu a .bars {
		background-color: transparent;
	}
	#header.active .sp_menu a .bars:before {
		-webkit-transform: translateY(7px) rotate(-45deg);
		transform: translateY(7px) rotate(-45deg);
	}
	#header.active .sp_menu a .bars:after {
		-webkit-transform: translateY(-7px) rotate(45deg);
		transform: translateY(-7px) rotate(45deg);
	}
	#header .sp_nav_wrap .btn_login a {
		display: none;
	}
	#header.active .sp_nav_wrap .btn_login a {
		display: inline-block;
		color: #fff;
		font-size: 14px;
		padding: 5px 20px 5px 30px;
		border-radius: 20px;
		background: #69be1f url(../img/common/icon_login.png) no-repeat 12px center;
		background-size: 12px auto;
		position: absolute;
		top: 12px;
		right: 50px;
	}
	#header nav {
		width: 100%;
		float: none;
		padding-bottom: 0;
		position: relative;
		box-sizing: border-box;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		display: none;
	}
	#header nav ul.main_nav {
		display: block;
		width: 100%;
	}
	#header nav ul.main_nav li a {
		color: #fff;
		padding: 10px;
		display: block;
	}
	#header nav ul.main_nav li a {
		border-top: 1px #fff solid;
	}
	#header nav ul.main_nav li:first-child a {
		border-top: none;
	}
	#header nav ul.main_nav li li a {
		color: #000;
		display: block;
	}
	#header nav ul.main_nav li {
		background: #787878;
	}
	#header nav ul.main_nav li ul li {
		background: #fff;
	}
	#header nav ul.main_nav li ul {
		padding: 10px 0;
		background: #fff;
	}
	#header nav ul.main_nav li ul li a {
		position: relative;
		padding-left: 23px;
		padding: 10px 15px 10px 35px;
		border-top: none;
	}
	#header nav ul.main_nav li ul li a:before {
		content: "";
		vertical-align: middle;
		position: absolute;
		top: calc(50% - 3px);
		left: 15px;
		width: 6px;
		height: 6px;
		margin: auto;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	/*========================================
        breadcrumbs
    ========================================*/
	
	#breadcrumbs {
		display: none;
		margin: 0;
		padding: 0;
		height: 0;
	}
	/*========================================
        footer
    ========================================*/
	
	#footer {
		background: url(../img/common/sp_bg_footer.jpg) no-repeat 0 0;
		background-size: cover;
		position: static;
		left: 0;
		bottom: 0;
		z-index: 1;
	}
	#footer .inner {
		width: auto;
		padding: 40px 25px 35px;
	}
	#footer .btn_page_top a {
		display: none;
	}
	#footer .contact {
		display: none;
	}
	#footer .bottom {
		display: block;
	}
	#footer .link {
		margin-bottom: 35px;
		display: block;
	}
	#footer .link li:first-child {
		border-top: 1px #fff solid;
	}
	#footer .link li {
		margin-right: 0;
		width: 100%;
		border-bottom: 1px #fff solid;
		box-sizing: border-box;
		padding: 15px 10px;
	}
	#footer .link a {
		color: #fff;
		font-size: 12px;
		font-size: 1.2rem;
		position: relative;
		padding-left: 23px;
	}
	#footer .link a:hover {
		text-decoration: underline;
	}
	#footer .link a:before {
		content: "";
		vertical-align: middle;
		position: absolute;
		top: calc(50% - 3px);
		left: 0;
		width: 6px;
		height: 6px;
		margin: auto;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#footer .copyright {
		clear: left;
		color: #fff;
		font-size: 10px;
		font-size: 1.0rem;
		text-align: center;
		padding: 0;
	}
	/*========================================
        btn_container
    ========================================*/
	
	.btn_container a {
		padding: 15px 0 15px 0;
		border-radius: 25px;
	}
	/*========================================
        sp_anchor_footer
    ========================================*/
	
	#sp_anchor_footer_wrap {
		position: relative;
	}
	#sp_anchor_footer #sp_anchor_footer {
		position: absolute;
		top: -100px;
		width: 100%;
		height: 1px;
	}
	/*========================================
        contact_menu
    ========================================*/
	
	#sp_contact_menu .contact_menu {
		position: fixed;
		right: 5px;
		bottom: 20px;
		z-index: 100;
		-webkit-transition: all 0.3s;
		-moz-transition: all 0.3s;
		-ms-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
		-webkit-transition-timing-function: cubic-bezier(0.780, 0.015, 0.180, 1);
		/* older webkit */
		
		-webkit-transition-timing-function: cubic-bezier(0.780, 0.015, 0.180, 1.485);
		-moz-transition-timing-function: cubic-bezier(0.780, 0.015, 0.180, 1.485);
		-o-transition-timing-function: cubic-bezier(0.780, 0.015, 0.180, 1.485);
		transition-timing-function: cubic-bezier(0.780, 0.015, 0.180, 1.485);
		/* custom */
	}
	#sp_contact_menu.active .contact_menu, #sp_contact_menu.hide .contact_menu {
		bottom: -60px;
	}
	#sp_contact_menu .contact_menu a {
		display: block;
		background: url(../img/common/sp_btn_contactus.png) no-repeat left top;
		width: 50px;
		height: 50px;
		background-size: cover;
		text-indent: -9999px;
	}
	#sp_contact_menu.small .contact_menu a {
		width: 40px;
		height: 40px;
	}
	#sp_contact_menu .layer {
		position: fixed;
		left: 100%;
		top: 0;
		width: 100%;
		height: 100vh;
		background: rgba(0, 0, 0, 0.8);
		z-index: 2600;
		opacity: 0;
		-webkit-transition: opacity 0.6s;
		-moz-transition: opacity 0.6s;
		-ms-transition: opacity 0.6s;
		-o-transition: opacity 0.6s;
		transition: opacity 0.6s;
	}
	#sp_contact_menu.active .layer {
		display: table;
		opacity: 1;
		left: 0;
	}
	#sp_contact_menu .layer ul {
		display: table-cell;
		vertical-align: middle;
		text-align: center;
	}
	#sp_contact_menu .layer ul li {
		display: inline-block;
		width: 43.75%;
		max-width: 320px;
	}
	#sp_contact_menu .layer ul li + li {} #sp_contact_menu .layer ul li.close {
		display: block;
		width: 18px;
		height: 18px;
		position: fixed;
		right: 10px;
		top: 13.644%;
	}
	#sp_contact_menu .layer ul li.close img {
		max-width: 100%;
		height: auto;
	}
	#sp_contact_menu .layer .btn {
		text-align: center;
	}
	#sp_contact_menu .layer .btn a {
		margin: 0 auto;
		width: 108px;
		width: 28.266666666vw;
		height: 108px;
		height: 28.266666666vw;
		border-radius: 108px;
		border-radius: 28.266666666vw;
		background: #67bc1c;
		color: #fff;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
		-webkit-justify-content: center;
		justify-content: center;
		font-size: 12px;
		line-height: 1.6;
	}
	#sp_contact_menu .layer .btn.btn_contact a {
		font-size: 14px;
	}
	#sp_contact_menu .layer .txt {
		display: inline-block;
		color: #fff;
		margin-top: 10px;
		font-size: 1.2rem;
		text-align: center;
		line-height: 1.25;
		font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
		font-weight: 400;
		font-style: normal;
	}
	/*========================================
        Icons
    ========================================*/
	
	.icn-popup:after {
		background: url(../img/common/icn-popup_sp.png) no-repeat left center;
		background-size: cover;
		width: 9px;
		height: 9px;
		margin-left: 5px;
	}
	/*========================================
        apply
    ========================================*/
	
	#apply .inner {
		padding: 40px 0;
	}
	#apply .title {
		font-size: 2.4rem;
		padding-bottom: 15px;
		width: 46.718%;
		margin-left: 10px;
	}
	#apply h2 {
		margin-bottom: 25px;
	}
	#apply p {
		margin: 0 10px;
		font-size: 12px;
		font-size: 1.2rem;
		line-height: 1.8;
	}
	#apply .apply_btn_container {
		display: block;
		width: auto;
		margin: 0 10px;
	}
	#apply .btn_free {
		margin-bottom: 15px;
		width: auto;
		background: #ffc020;
	}
	#apply .btn_biz {
		width: auto;
		background: #7cd131;
	}
	#apply .apply_btn a {
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		align-items: center;
		padding: 10px 20px;
		box-sizing: border-box;
	}
	#apply .apply_btn a:hover {
		opacity: .75;
	}
	#apply .apply_btn h3 {
		margin-bottom: 5px;
		font-size: 2.6rem;
		color: #fff;
	}
	#apply .apply_btn h3 .jp {
		font-size: 2.4rem;
		letter-spacing: -.1em;
	}
	#apply .apply_btn .text {
		margin: 0;
		font-size: 14px;
		font-size: 1.4rem;
		color: #fff;
	}
	#apply .apply_btn .text span {
		margin-left: 5px;
	}
	#apply .apply_btn .circle {
		background: #fff;
		font-size: 10px;
		font-size: 1.0rem;
		text-align: center;
		display: flex;
		flex-direction: column;
		-webkit-align-items: center;
		align-items: center;
		-webkit-justify-content: center;
		justify-content: center;
		width: 100px;
		height: 100px;
		border-radius: 100px;
	}
	#apply .btn_free .circle {
		color: #ffc020;
	}
	#apply .btn_biz .circle {
		color: #7cd131;
	}
	#apply .apply_btn .circle .price {
		margin: 0;
		padding: 0;
		line-height: 1.5;
		font-weight: 500;
	}
	#apply .apply_btn.btn_free .circle .price {
		font-size: 2.0rem;
	}
	#apply .apply_btn.btn_biz .circle .price {
		font-size: 1.3rem;
	}
	#apply .btn_free .circle .price b {
		font-size: 3.2rem;
		font-weight: 700;
		margin-left: 2px;
		font-weight: 700;
	}
	#apply .btn_biz .circle .price b {
		font-size: 1.8rem;
		margin-left: 2px;
		letter-spacing: 0;
		font-weight: 700;
	}
	#apply .apply_btn .circle .month {
		margin: 0;
		padding: 0;
		font-size: 1.2rem;
		line-height: 1.5;
		font-weight: 700;
	}
	/*========================================
        contact_footer
    ========================================*/
	
	#contact_footer {
		margin: 0 auto;
		border-top: 1px #7f7f7f solid;
		padding: 20px 17px 20px;
		width: auto;
	}
	#contact_footer .btn_page_top a {
		display: none;
		height: 0;
	}
	#contact_footer .inner {
		display: block;
	}
	#contact_footer .link {
		margin-bottom: 20px;
		display: block;
	}
	#contact_footer .link li {
		margin-right: 0;
		width: 100%;
		box-sizing: border-box;
		padding: 15px 10px;
	}
	#contact_footer .link a {
		color: #000;
		font-size: 12px;
		font-size: 1.2rem;
		position: relative;
		padding-left: 23px;
	}
	#contact_footer .link a:hover {
		text-decoration: underline;
	}
	#contact_footer .link a:before {
		content: "";
		vertical-align: middle;
		position: absolute;
		top: calc(50% - 3px);
		left: 0;
		width: 6px;
		height: 6px;
		margin: auto;
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#contact_footer .copyright {
		clear: left;
		color: #000;
		font-size: 10px;
		font-size: 1.0rem;
		text-align: center;
		padding: 0;
	}
}

/*========================================
    form for media
========================================*/
#form-formedia {
	padding-bottom: 100px;
}
#form-formedia #lead {
	max-width: 980px;
	padding: 0 10px 20px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}
#form-formedia #lead h2 {
	font-size: 50px;
	font-size: 5.0rem;
	color: #000;
	border-bottom: 1px #000 solid;
	display: inline-block;
	margin-bottom: 50px;
	padding: 0 70px 30px 0;
}
#form-formedia #lead .text {
	padding-right: 400px;
	background: url(../img/download/img_downloads.jpg) no-repeat right 0;
	min-height: 300px;
}
#form-formedia #lead p {
	margin-bottom: 3rem;
	font-size: 1.6rem;
	line-height: 1.8;
}
#form-formedia #lead ul {
	margin-bottom: 3rem;
}
#form-formedia #lead li {
	font-size: 1.6rem;
	line-height: 1.8;
}

#form-formedia #thanks {
	max-width: 980px;
	padding: 100px 10px 20px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
}
#form-formedia #thanks h2 {
	font-size: 50px;
	font-size: 5.0rem;
	color: #000;
	border-bottom: 1px #000 solid;
	display: inline-block;
	margin-bottom: 120px;
	padding: 0 70px 30px 0;
}
#form-formedia #thanks .text {
	text-align: center;
}
#form-formedia #thanks h3 {
	margin-bottom: 3rem;
	font-size: 2.4rem;
	line-height: 1.8;
}
#form-formedia #thanks p {
	margin-bottom: 3rem;
	font-size: 1.6rem;
	line-height: 1.8;
}
#form-formedia #thanks .btn {
	margin-top: 60px;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 1;
	padding: 0;
}
#form-formedia #thanks .btn a {
	background: rgba(110, 204, 27, .9);
	color: #fff;
	display: inline-block;
	padding: 15px 0;
	position: relative;
	border-radius: 25px;
	width: 20em;
	box-sizing: border-box;
	text-align: center;
}
#form-formedia #thanks .btn a:hover {
	opacity: .75;
}

#form-formedia #form {
	max-width: 980px;
	padding: 0 10px 20px;
	box-sizing: border-box;
	margin: 0 auto;
	position: relative;
	line-height: 1.6;
}
#form-formedia #form .mktoFieldWrap {
	white-space: nowrap;
}

@media (max-width: 979px) {
	#form-formedia {
		padding-bottom: 40px;
	}
	#form-formedia #lead {
		padding: 30px 25px;
		box-sizing: border-box;
		margin: 0 auto;
		position: relative;
	}
	#form-formedia #lead h2 {
		font-size: 2.4rem;
		color: #000;
		border-bottom: 1px #000 solid;
		display: inline-block;
		margin-bottom: 25px;
		padding: 0 35px 15px 0;
	}
	#form-formedia #lead .text {
		padding: 170px 0 0;
		background: url(../img/download/img_downloads.jpg) no-repeat center 0;
		background-size: auto 150px;
		min-height: 0;
	}
	#form-formedia #lead p {
		margin-bottom: 3rem;
		font-size: 14px;
		font-size: 1.4rem;
		line-height: 2;
	}
	#form-formedia #lead ul {
		margin-bottom: 3rem;
		display: flex;
		flex-direction: column;

	}
	#form-formedia #lead li {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1;
		letter-spacing: .05em;
	}
	
	#form-formedia #thanks {
		max-width: auto;
		padding: 25px 10px 20px;
		box-sizing: border-box;
		margin: 0 auto;
		position: relative;
	}
	#form-formedia #thanks h2 {
		font-size: 2.4rem;
		margin-bottom: 20px;
		display: inline-block;
		padding: 0 35px 15px 0;
	}
	#form-formedia #thanks .text {
		text-align: left;
	}
	#form-formedia #thanks h3 {
		margin-bottom: 3rem;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	#form-formedia #thanks p {
		margin-bottom: 3rem;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	#form-formedia #thanks .btn {
		margin-top: 60px;
		font-size: 18px;
		font-size: 1.4rem;
		line-height: 1;
		padding: 0;
	}
	#form-formedia #thanks .btn a {
		font-size: 1.5rem;
		padding: 15px 0;
		width: 100%;
		border-radius: 25px;
	}
	
	#form-formedia #form {
		max-width: auto;
		padding: 0 10px 20px;
		margin: 0 auto;
		position: relative;
		line-height: 1.6;
	}
	#form-formedia #form .mktoFieldWrap {
		white-space: normal;
	}
}

