/* =================================================================== 
 *
 *  Abstract v1.0 Main Stylesheet
 *  url: www.styleshout.com
 *  09-06-2016
 *  ------------------------------------------------------------------
 *  TOC:
 *  01. webfonts and iconfonts
 *  02. base style overrides
 *  03. typography & general theme styles
 *  04. preloader
 *  05. forms
 *  06. buttons
 *  07. other components 
 *  08. common and reusable styles
 *  09. header styles
 *  10. page header
 *  11. content wrap
 *  12. bricks masonry
 *  13. footer
 *  14. blog styles
 *  15. page styles
 *
 * =================================================================== */


/* ===================================================================
 *  01. webfonts and iconfonts - (_document-setup.scss)
 *
 * ------------------------------------------------------------------- */
@import url("font-awesome/css/font-awesome.min.css");
@import url("micons/micons.css");
@import url("fonts.css");


/* ===================================================================
 *  02. base style overrides - (_document-setup.scss)
 *
 * ------------------------------------------------------------------- */
html {
	font-size: 10px;
}

@media only screen and (max-width:1024px) {
	html {
		font-size: 9.411764705882353px;
	}

}

@media only screen and (max-width:768px) {
	html {
		font-size: 10px;
	}

}

@media only screen and (max-width:400px) {
	html {
		font-size: 9.411764705882353px;
	}

}

html,
body {
	height: 100%;
}

body {
	background: #ffffff;
	font-family: "roboto-regular", sans-serif;
	font-size: 1.6rem;
	line-height: 3rem;
	color: #111111;
}

/* ------------------------------------------------------------------- 
 * links - (_document-setup.scss)  
 * ------------------------------------------------------------------- */
a,
a:visited {
	color: #1237B1;
	font-weight: bold;
	border-bottom: 1px solid transparent;
	-moz-transition: all 0.4s ease-in-out;
	-o-transition: all 0.4s ease-in-out;
	-webkit-transition: all 0.4s ease-in-out;
	-ms-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}

a:hover,
a:focus {
	color: #000000;
	border-color: rgba(21, 21, 21, 0.2);
}

/* ===================================================================
 *  03. typography & general theme styles - (_document-setup.scss) 
 *
 * ------------------------------------------------------------------- */
h1, h2, h3, h4, h5, h6, .h01, .h02, .h03, .h04, .h05, .h06 {
	font-family: "montserrat-bold", sans-serif;
	color: #151515;
	font-style: normal;
	text-rendering: optimizeLegibility;
	margin-bottom: 1.5rem;

}

h3, .h03, h4, .h04 {
	margin-bottom: 1rem;
}
h5, .h05, h6, .h06 {
	margin-bottom: 1rem;
}
h1, .h01 {
	font-size: 3.1rem;
	line-height: 1.35;
	letter-spacing: -.1rem;
}
@media only screen and (max-width:600px) {
	h1, .h01 {
		font-size: 2.6rem;
		letter-spacing: -.07rem;
	}
}
h2, .h02 {
	font-size: 2.4rem;
	line-height: 1.25;
	margin-top: 50px;
}
h3, .h03 {
	font-size: 2rem;
	line-height: 1.5;
	margin-top: 20px;
}
h4, .h04 {
	font-size: 1.7rem;
	line-height: 1.76;
	margin-top: 20px;
}
h5, .h05 {
	font-size: 1.4rem;
	line-height: 1.7;
	text-transform: uppercase;
	letter-spacing: .2rem;
}
h6, .h06 {
	font-size: 1.3rem;
	line-height: 1.85;
	text-transform: uppercase;
	letter-spacing: .2rem;
}
p img {
	margin: 0;
}


em, i, strong, b {
	font-size: 1.7rem;
	line-height: 3rem;
	font-style: normal;
	font-weight: normal;
}
em, i {
	font-family: 'roboto-italic', sans-serif;
}
strong, b {
	font-family: 'roboto-bold', sans-serif;
}
small {
	font-size: 1.1rem;
	line-height: inherit;
}

abbr {
	font-family: "roboto-bold", sans-serif;
	font-variant: small-caps;
	text-transform: lowercase;
	letter-spacing: .05rem;
	color: #2b2b2b;
}
var, kbd, samp, code, pre {
	font-family: Consolas, "Andale Mono", Courier, "Courier New", monospace;
}

del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
mark {
	background: #FFF49B;
	color: #000;
}
hr {
	border: solid #c2c2c2;
	border-width: 1px 0 0;
	clear: both;
	margin: 2.4rem 0 1.5rem;
	height: 0;
}

/* ------------------------------------------------------------------- 
 * Lists - (_document-setup.scss)  
 * ------------------------------------------------------------------- */
ol {
	list-style: decimal;
}

ul {
	list-style: disc;
}

li {
	display: list-item;
}

ol,
ul {
	margin-left: 2.2rem;
}

ul li {
	padding-left: .4rem;
}

ol li {
	padding-left: 1.0rem;
}

ul ul,
ul ol,
ol ol,
ol ul {
	margin: .6rem 0 .6rem 1.7rem;
}

ul.disc li {
	display: list-item;
	list-style: none;
	padding: 0 0 0 .8rem;
	position: relative;
}

ul.disc li::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #999999;
	position: absolute;
	left: -17px;
	top: 11px;
	vertical-align: middle;
}

dt {
	margin: 0;
	color: #151515;
}

dd {
	margin: 0 0 0 2rem;
}

/* ------------------------------------------------------------------- 
 * Spacing - (_document-setup)  
 * ------------------------------------------------------------------- */
button,
.button {
	margin-bottom: 1.2;
}

fieldset {
	margin-bottom: 1.5rem;
}

input,
textarea,
select,
pre,
blockquote,
figure,
table,
p,
ul,
ol,
dl,
form,
.fluid-video-wrapper,
.ss-custom-select {
	margin-bottom: 3rem;
}

/* ------------------------------------------------------------------- 
 * floated image - (_document-setup)  
 * ------------------------------------------------------------------- */
img.pull-right {
	margin: 0.9rem 0 0 2.4rem;
}

img.pull-left {
	margin: 0.9rem 2.4rem 0 0;
}

/* ------------------------------------------------------------------- 
 * block grids paddings
 * ------------------------------------------------------------------- */
.bgrid {
	padding: 0 20px;
}

@media only screen and (max-width:1024px) {
	.bgrid {
		padding: 0 18px;
	}

}

@media only screen and (max-width:768px) {
	.bgrid {
		padding: 0 15px;
	}

}

@media only screen and (max-width:600px) {
	.bgrid {
		padding: 0 10px;
	}

}

@media only screen and (max-width:400px) {
	.bgrid {
		padding: 0;
	}

}

/* ------------------------------------------------------------------- 
 * tables - (_document-setup.scss)  
 * ------------------------------------------------------------------- */
table {
	border-width: 0;
	width: 100%;
	max-width: 100%;
	font-family: "roboto-regular", sans-serif;
}

th,
td {
	padding: 1.5rem 3rem;
	text-align: left;
	border-bottom: 1px solid #E8E8E8;
}

th {
	color: #151515;
	font-family: "montserrat-bold", sans-serif;
}

td {
	line-height: 1.5;
}

th:first-child,
td:first-child {
	padding-left: 0;
}

th:last-child,
td:last-child {
	padding-right: 0;
}

.table-responsive {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* ------------------------------------------------------------------- 
 * pace.js styles - minimal  - (_document-setup.scss)
 * ------------------------------------------------------------------- */
.pace {
	-webkit-pointer-events: none;
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.pace-inactive {
	display: none;
}

.pace .pace-progress {
	background: #000000;
	position: fixed;
	z-index: 900;
	top: 0;
	right: 100%;
	width: 100%;
	height: 5px;
}




/* ===================================================================
 *  08. common and reusable styles 
 *
 * ------------------------------------------------------------------- */

/* animation stuff - (_common-styles.scss) 
 * ------------------------------------------------------------------- */
.js .animate-this {
	opacity: 0;
}
.oldie .animate-this
.no-cssanimations .animate-this {
	opacity: 1;
}



/* format video
 * --------------------------------------- */
.format-video .entry-thumb a {
	cursor: zoom-in;
	display: block;
	position: relative;
}

.format-video .entry-thumb a img {
	vertical-align: bottom;
}

.format-video .entry-thumb a::before {
	content: "\e998";
	position: absolute;
	top: 50%;
	left: 50%;
	font-family: "icomoon";
	font-size: 8rem;
	border-radius: 50%;
	color: white;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	cursor: zoom-in;
}


/* ===================================================================
 *  09. header styles - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
/* PC・タブレット共通スタイル */
header {
  width: 100%;
  background: #f5f5f5;
  padding: 30px 0;
  border-bottom: 1px solid #f5f5f5;
}

header .header-content {
  height: auto;
  max-width: 1290px;
  margin: 0 auto;
  padding: 0 20px;
  position: static;
  width: 100%;
}

/* スマホだけ狭くする */
@media only screen and (max-width: 600px) {
  header {
    padding: 20px 0;
  }
}

/* ------------------------------------------------------------------- 
 * header logo - (_layout.css) 
 * ------------------------------------------------------------------- */
header .logo {
  position: relative;
  color: #000000;
  margin: 0 15px;
}

header .logo h3 {
  color: #000000;
  font-size: 2.0rem;
  word-break: break-word;
  line-height: 1.4;
  margin: 10px 0 0 0;
}

/* responsive:
 * header logo
 * ------------------------------------------------------------------- */
@media only screen and (max-width: 600px) {
  header .logo h3 {
    font-size: 1.8rem;
    margin-top: 8px;
  }
}

/* make sure the menu is visible on larger screens
 * ------------------------------------------------------------------- */
@media only screen and (min-width:769px) {
	#main-nav-wrap ul.main-navigation {
		display: table-cell !important;
	}

}



/* ===================================================================
 *  10. page header - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
#page-header {
	padding: 4.2rem 0 0 0;
	text-align: center;
}

#page-header .row {
	max-width: 870px;
}

#page-header h1 {
	margin-bottom: 3rem;
}

#page-header p {
	color: #999999;
}


/* ===================================================================
 *  11. content wrap - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
#content-wrap {
	margin-top: 6.6rem;
}

#content-wrap2 {
	margin-top: 0rem;
}

#content-wrap .row {
	max-width: 950px;
}

#content-wrap .row.wide {
	max-width: 1300px;
}

#content-wrap .row.narrow {
	max-width: 800px;
}

#content-wrap .content-media {
	position: relative;
	margin-bottom: 4.8rem;
}

#content-wrap .content-media img {
	vertical-align: bottom;
}

#content-wrap .primary-content {
	padding-left: 6rem;
	padding-right: 6rem;
}

#content-wrap .primary-content img {
	max-width: 910px;
	margin: 3rem 0 3rem -6rem;
}

#content-wrap .primary-content img.pull-right {
	margin: 0.9rem 0 0 2.4rem;
	max-width: 100%;
}

#content-wrap .primary-content img.pull-left {
	margin: 0.9rem 2.4rem 0 0;
	max-width: 100%;
}

#content-wrap .entry-title,
#content-wrap .page-title {
	font-size: 3.3rem;
	line-height: 1.364;
	margin-bottom: 0.9rem;
}

/* responsive:
 * content wrap
 * ------------------------------------------------------------------- */
@media only screen and (max-width:1024px) {
	#content-wrap .row {
		max-width: 880px;
	}
	#content-wrap .primary-content {
		padding-left: 5rem;
		padding-right: 5rem;
	}
	#content-wrap .primary-content img {
		max-width: 844px;
		margin: 3rem 0 3rem -5rem;
	}

}

@media only screen and (max-width:960px) {
	#content-wrap .row {
		max-width: 880px;
	}
	#content-wrap .primary-content {
		padding-left: 4rem;
		padding-right: 4rem;
	}
	#content-wrap .primary-content img {
		max-width: 100%;
		margin: 3rem 0 3rem 0;
	}

}

@media only screen and (max-width:768px) {
	#content-wrap {
		margin-top: 4.8rem;
	}
	#content-wrap .primary-content {
		padding-left: 0;
		padding-right: 0;
	}
	#content-wrap .entry-title,
	#content-wrap .page-title {
		font-size: 3rem;
	}

}

@media only screen and (max-width:600px) {
	#content-wrap .entry-title,
	#content-wrap .page-title {
		font-size: 2.8rem;
	}

}





/* ===================================================================
 *  13. footer - (_layout.scss)
 *
 * ------------------------------------------------------------------- */
footer {
	padding-top: 1.5rem;
	padding-bottom: 2rem;
	font-size: 1.5rem;
	color: #111111;
}
footer a,
footer a:visited {
	color: #000000;
}

footer [class*="col-"] {
	margin-bottom: 1.2rem;
}

footer h4 {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}

footer ul {
	margin-left: 0;
}

footer ul li {
	padding-left: 0;
}


.footer-bottom {
	margin-top: 3rem;
	text-align: center;
}

.footer-bottom .copyright span {
	display: inline-block;
}

.footer-bottom .copyright span::after {
	content: "|";
	display: inline-block;
	padding: 0 1rem 0 1.2rem;
	color: rgba(0, 0, 0, 0.2);
}

.footer-bottom .copyright span:last-child::after {
	display: none;
}

/* responsive:
 * footer
 * ------------------------------------------------------------------- */
@media only screen and (max-width:768px) {
	.footer-main .footer-info {
		text-align: center;
	}

}

@media only screen and (max-width:600px) {
	.footer-main .row {
		max-width: 420px;
	}

	.footer-main .footer-subscribe {
		text-align: center;
	}

	.footer-main .subscribe-form form input[type="email"] {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center;
	}

	.footer-bottom {
		padding-bottom: .6rem;
	}

	.footer-bottom .copyright span {
		display: block;
	}

	.footer-bottom .copyright span::after {
		display: none;
	}

}

@media only screen and (max-width:400px) {
	.footer-main .site-links,
	.footer-main .social-links {
		text-align: center;
	}

	.footer-main .site-links h4,
	.footer-main .social-links h4 {
		border: none;
	}

	.footer-main ul {
		width: 100%;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

	.footer-main ul li a {
		display: block;
		border-bottom: 1px solid rgba(0, 0, 0, 0.08);
		padding: .6rem 0;
	}

	.footer-main ul li:first-child a {
		border-top: 1px solid rgba(0, 0, 0, 0.08);
	}

}

/* -------------------------------------------------------------------
 * go to top
 * ------------------------------------------------------------------- */
#go-top {
	position: fixed;
	bottom: 24px;
	right: 30px;
	z-index: 700;
	display: none;
}

#go-top a {
	text-decoration: none;
	border: 0 none;
	display: block;
	height: 63px;
	width: 60px;
	line-height: 63px;
	text-align: center;
	background: #b5b5b5;
	color: #555;
	text-align: center;
	text-transform: uppercase;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

#go-top a i {
	font-size: 24px;
	line-height: inherit;
}

#go-top a:visited {
	background: #b5b5b5;
	color: #555;
}

#go-top a:hover,
#go-top a:focus {
	background: #000000;
	color: #FFFFFF;
}

/* responsive:
 * go top
 * ------------------------------------------------------------------- */
@media only screen and (max-width:600px) {
	#go-top {
		bottom: 0;
		right: 0;
	}

}


/* ===================================================================
 *  14. blog styles
 *
 * ------------------------------------------------------------------- */

/* single post - (_blog.scss) 
 * ------------------------------------------------------------------- */
.blog-single .entry-meta {
	font-family: "muli-regular", sans-serif;
	font-size: 1.5rem;
	list-style: none;
	margin-left: 0;
	margin-bottom: 5.4rem;
	color: #ffffff;
}
.blog-single .entry-meta a,
.blog-single .entry-meta a:visited {
	color: #000000;
}

.blog-single .entry-meta li {
	display: inline-block;
	padding-left: 0;
}

.blog-single .entry-meta .date {
	margin-right: 1rem;
}

.blog-single .entry-meta .cat a {
	margin-right: 5px;
}

.blog-single .entry-meta .cat a:last-child {
	margin-right: 0;
}

.blog-single .entry-meta .cat a::after {
	content: ",";
}

.blog-single .entry-meta .cat a:last-child::after {
	content: none;
}



/* responsive:
 * single post
 * ------------------------------------------------------------------- */
@media only screen and (max-width:768px) {
	.blog-single .entry-meta {
		font-size: 1.5rem;
	}

	.blog-single .pagenav div {
		float: none;
		width: 100%;
	}

	.blog-single .pagenav div:first-child {
		margin-bottom: 0.9rem;
	}

}

@media only screen and (max-width:600px) {
	.blog-single .author-profile {
		padding-left: 0;
		text-align: center;
	}

	.blog-single .author-profile img {
		position: static;
		width: 6.6rem;
		height: 6.6rem;
		margin: 0 0 0.6rem 0 !important;
	}

	.blog-single .pagenav {
		text-align: center;
	}

}


/* Wrapper */

	.wrapper.style2 {
		padding: 6em 0;
		background: #e0e0e0;
	}

/* $FFFD$FFFD$FFFD$FFFD$FFFDl$FFFDp */
.box2 {
    padding: 2em 2em;

    color: #151515;/*$FFFD$FFFD$FFFD$FFFD$FFFDF*/
    background: #FFF;
    border-radius: 10px;/*$FFFDp$FFFD$030A$06C2$FFFD*/
}
.box2 p {
    margin: 0; 
    padding: 0;
}


@media only screen and (max-width:1024px) {
	.box2 {
		padding: 2em 2em;
	}

}

@media only screen and (max-width:768px) {
	.box2 {
		padding: 2em 2empx;
	}

}

@media only screen and (max-width:600px) {
	.box2 {
		padding: 2em 1em;
	}

}

@media only screen and (max-width:400px) {
	.box2 {
		padding: 2em 1em;
	}

}

/* $FFFD$FFFD$FFFD$FFFD */
.under {
  background: linear-gradient(transparent 0, #ffb6c1 0);
}


/* $FFFD$FFFD */
.red {
  color: #ff0000;
}


/* $FFFD$FFFD$FFFD$FFFD */
.bold {
  font-weight: bold;
}

/* ------------------------------------------------------------------- 
 *$FFFDK$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD{$FFFD^$FFFD$FFFD
 * ------------------------------------------------------------------- */
.btn-flat-border {
  display: inline-block;
  margin-top: 1em; 
  padding: 0.3em 1em;
  text-decoration: none;
  color: #000000;
  border: solid 3px #000000;
  background: #dcdcdc;
  border-radius: 3px;
  transition: .4s;
}

.btn-flat-border:hover {
  background: #a9a9a9;
  color: #000000;
}

/* ------------------------------------------------------------------- 
 *$FFFD$FFFD$FFFD$04CE$FFFD$FFFD$FFFD
 * ------------------------------------------------------------------- */
.box3 {
    position: relative;
    margin: 0.5em 0 4em;
    padding: 7px 15px;
    border: solid 1px #cccccc;
    background: #f5f5f5;
}

.box3 p {
    margin: 0; 
    padding: 0;
}

/* ------------------------------------------------------------------- 
 *$FFFD$FFFD$FFFDo$FFFD$FFFD
 * ------------------------------------------------------------------- */

.type1 {
  margin: 30px 0 10px 0;
  padding: 0.5em;/*$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$0317]$FFFD$FFFD*/
  color: #000000;/*$FFFD$FFFD$FFFD$FFFD$FFFDF*/
  background: #fffaf4;/*$FFFDw$FFFDi$FFFDF*/
  border-left: solid 5px #ffaf58;/*$FFFD$FFFD$FFFD$FFFD$FFFDi$FFFD$FFFD$FFFD$FFFD $FFFD$FFFD$FFFD$FFFD $FFFDF$FFFDj*/
}

/* Main */

	#main {
		padding: 4em 0 5em 0;
		background-color: #ffffff;/*$FFFD$FFFD$FFFD$6554$FFFD$FFFD$FFFD$0314w$FFFDi$FFFDF*/
	}

		@media screen and (max-width: 736px) {

			#main {
				padding: 3em 0 1em 0;
			}

		}

		#main .inner {
			width: 90%;
			max-width: 80em;
			margin: 0 auto;
		}

			@media screen and (max-width: 480px) {

				#main .inner {
					width: 95%;
				}

			}

/* Main2$FFFD@$FFFDI$FFFDl$FFFD$0242$0082$FFFD$FFFD$FFFD */

	#main2 {
		padding: 1em 0 2em 0;
		background-color: #ffffff;/*$FFFD$FFFD$FFFD$6554$FFFD$FFFD$FFFD$0314w$FFFDi$FFFDF*/
	}

		@media screen and (max-width: 736px) {

			#main {
				padding: 3em 0 1em 0;
			}

		}

		#main .inner {
			width: 90%;
			max-width: 80em;
			margin: 0 auto;
		}

			@media screen and (max-width: 480px) {

				#main .inner {
					width: 95%;
				}

			}

/* Main3$FFFD@$FFFDI$FFFDl$FFFD$0242$0082$FFFD$FFFD$FFFD */

#main3 {
	padding: 1em 0 2em 0;
	background-color: #ffffff;/*$FFFD$FFFD$FFFD$6554$FFFD$FFFD$FFFD$0314w$FFFDi$FFFDF*/
}

	@media screen and (max-width: 736px) {

		#main {
			padding: 3em 0 1em 0;
		}

	}

	#main .inner {
		width: 90%;
		max-width: 80em;
		margin: 0 auto;
	}

		@media screen and (max-width: 480px) {

			#main .inner {
				width: 95%;
			}

		}


/* Box */

	.thumbnails {
		display: -moz-flex;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-moz-align-items: stretch;
		-webkit-align-items: stretch;
		-ms-align-items: stretch;
		align-items: stretch;
		-moz-justify-content: center;
		-webkit-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
		-moz-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

		.thumbnails .box {
			margin: 0 1em 2em 1em;
			width: 30%;
		}

			@media screen and (max-width: 1280px) {

				.thumbnails .box {
					width: 45%;
				}

			}

			@media screen and (max-width: 736px) {

				.thumbnails .box {
					width: 100%;
				}

			}

/* Box */

	.box {
		border-radius: 4px;
		margin-bottom: 2em;
		background: #ffffff;/*$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$FFFD$0314w$FFFDi$FFFDF*/
		text-align: center;
	}

		.box > :last-child,
		.box > :last-child > :last-child,
		.box > :last-child > :last-child > :last-child {
			margin-bottom: 0;
		}

		.box .image.fit {
			margin: 0;
		}

		.box .image img {
			border-radius: 4px 4px 0 0;
		}

		.box .inner {
			padding: 1.5em;
			width: 100% !important;
		}

			@media screen and (max-width: 480px) {

				.box .inner {
					padding: 1em;
				}

			}

		.box.alt {
			border: 0;
			border-radius: 0;
			padding: 0;
		}


/* Button */

	input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
	.button {
		-moz-appearance: none;
		-webkit-appearance: none;
		-ms-appearance: none;
		appearance: none;
		-moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
		background-color: #70c7be;
		border-radius: 4px;
		border: 0;
		color: #ffffff !important;
		cursor: pointer;
		display: inline-block;
		font-weight: 400;
		height: 2.85em;
		line-height: 2.95em;
		padding: 0 1.5em;
		text-align: center;
		text-decoration: none;
		white-space: nowrap;
	}

		input[type="submit"]:hover,
		input[type="reset"]:hover,
		input[type="button"]:hover,
		button:hover,
		.button:hover {
			background-color: #82cec6;
		}

		input[type="submit"]:active,
		input[type="reset"]:active,
		input[type="button"]:active,
		button:active,
		.button:active {
			background-color: #5ec0b6;
		}

		input[type="submit"].icon,
		input[type="reset"].icon,
		input[type="button"].icon,
		button.icon,
		.button.icon {
			padding-left: 1.35em;
		}

			input[type="submit"].icon:before,
			input[type="reset"].icon:before,
			input[type="button"].icon:before,
			button.icon:before,
			.button.icon:before {
				margin-right: 0.5em;
			}

		input[type="submit"].fit,
		input[type="reset"].fit,
		input[type="button"].fit,
		button.fit,
		.button.fit {
			display: block;
			margin: 0 0 1em 0;
			width: 100%;
		}

		input[type="submit"].small,
		input[type="reset"].small,
		input[type="button"].small,
		button.small,
		.button.small {
			font-size: 0.8em;
		}

		input[type="submit"].big,
		input[type="reset"].big,
		input[type="button"].big,
		button.big,
		.button.big {
			font-size: 1.35em;
		}

		input[type="submit"].disabled, input[type="submit"]:disabled,
		input[type="reset"].disabled,
		input[type="reset"]:disabled,
		input[type="button"].disabled,
		input[type="button"]:disabled,
		button.disabled,
		button:disabled,
		.button.disabled,
		.button:disabled {
			background-color: rgba(255, 255, 255, 0.75) !important;
			box-shadow: inset 0 -0.15em 0 0 rgba(0, 0, 0, 0.15);
			color: #202024 !important;
			cursor: default;
			opacity: 0.25;
		}

		input[type="submit"].style2,
		input[type="reset"].style2,
		input[type="button"].style2,
		button.style2,
		.button.style2 {
			background-color: #7f92cf;
		}

			input[type="submit"].style2:hover,
			input[type="reset"].style2:hover,
			input[type="button"].style2:hover,
			button.style2:hover,
			.button.style2:hover {
				background-color: #92a2d6;
			}

			input[type="submit"].style2:active,
			input[type="reset"].style2:active,
			input[type="button"].style2:active,
			button.style2:active,
			.button.style2:active {
				background-color: #6c82c8;
			}

		input[type="submit"].style3,
		input[type="reset"].style3,
		input[type="button"].style3,
		button.style3,
		.button.style3 {
			background-color: #9d7ed0;
		}

			input[type="submit"].style3:hover,
			input[type="reset"].style3:hover,
			input[type="button"].style3:hover,
			button.style3:hover,
			.button.style3:hover {
				background-color: #ab91d7;
			}

			input[type="submit"].style3:active,
			input[type="reset"].style3:active,
			input[type="button"].style3:active,
			button.style3:active,
			.button.style3:active {
				background-color: #8f6bc9;
			}

		@media screen and (max-width: 480px) {

			input[type="submit"],
			input[type="reset"],
			input[type="button"],
			button,
			.button {
				padding: 0;
			}

		}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

.form-section {
	position: relative;
	height: 100vh;
}
/*ボタンの基本スタイル*/
.nextButton {
	position: absolute;
	top: 10%;
	left: 20%;
	transform: translate(-50%, -50%);
	padding: 0.3em 1em;
	text-decoration: none;
	color: #000000;
	border: solid 3px #000000;
	background: #dcdcdc;
	border-radius: 3px;
	transition: .4s;
}
/*非活性されたボタンスタイル*/
.nextButton.disabled {
	background: #a9a9a9;
	color: #000000;
}
