@charset "UTF-8";
/*--------------------------------------------------------------
# ビューポイントごと表示非表示
-------------------------------------------------------------- */
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,900|Noto+Sans+JP:400,700&subset=japanese,latin-ext);
.off1200,
.off1170,
.off1100,
.off991,
.off850,
.off767,
.off640,
.off480,
.off375,
.off360,
.off320 {
		display: block !important;
}

.on1200,
.on1170,
.on1100,
.on991,
.on850,
.on767,
.on640,
.on480,
.on375,
.on360,
.on320 {
		display: none !important;
}

@media (max-width: 1200px) {
		.off1200 {
				display: none !important;
		}
		.on1200 {
				display: block !important;
		}
}

@media (max-width: 1170px) {
		.off1170 {
				display: none !important;
		}
		.on1170 {
				display: block !important;
		}
}

@media (max-width: 1100px) {
		.off1100 {
				display: none !important;
		}
		.on1100 {
				display: block !important;
		}
}

@media (max-width: 991px) {
		.off991 {
				display: none !important;
		}
		.on991 {
				display: block !important;
		}
}

@media (max-width: 850px) {
		.off850 {
				display: none !important;
		}
		.on850 {
				display: block !important;
		}
}

@media (max-width: 767px) {
		.off767 {
				display: none !important;
		}
		.on767 {
				display: block !important;
		}
}

@media (max-width: 640px) {
		.off640 {
				display: none !important;
		}
		.on640 {
				display: block !important;
		}
}

@media (max-width: 480px) {
		.off480 {
				display: none !important;
		}
		.on480 {
				display: block !important;
		}
}

@media (max-width: 375px) {
		.off375 {
				display: none !important;
		}
		.on375 {
				display: block !important;
		}
}

@media (max-width: 360px) {
		.off360 {
				display: none !important;
		}
		.on360 {
				display: block !important;
		}
}

@media (max-width: 320px) {
		.off320 {
				display: none !important;
		}
		.on320 {
				display: block !important;
		}
}

/*--------------------------------------------------------------
# 設定
--------------------------------------------------------------*/
html {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		-moz-tab-size: 4;
		  -o-tab-size: 4;
		     tab-size: 4;
		-webkit-text-size-adjust: 100%;
		word-break: break-word;
}

*, :after, :before {
		background-repeat: no-repeat;
		-webkit-box-sizing: inherit;
		-moz-box-sizing: inherit;
		     box-sizing: inherit;
}

:after, :before {
		text-decoration: inherit;
		vertical-align: inherit;
}

* {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		margin: 0;
		padding: 0;
}

a {
		text-decoration: none;
		color: #231815;
}

hr {
		height: 0;
		overflow: visible;
}

details, main {
		display: block;
}

summary {
		display: list-item;
}

small {
		font-size: 80%;
}

[hidden] {
		display: none;
}

abbr[title] {
		border-bottom: none;
		text-decoration: underline;
		-webkit-text-decoration: underline dotted;
		-moz-text-decoration: underline dotted;
		     text-decoration: underline dotted;
}

a {
		background-color: transparent;
		-webkit-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
}

@media (hover: hover) {
		a:hover {
				outline-width: 0;
				opacity: .8;
				cursor: pointer;
		}
}

@media (hover: none) {
		a:active {
				outline-width: 0;
				opacity: .8;
				cursor: pointer;
		}
}

code, kbd, pre, samp {
		font-family: monospace,monospace;
}

pre {
		font-size: 1em;
}

b, strong {
		font-weight: bolder;
}

sub, sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
}

sub {
		bottom: -.25em;
}

sup {
		top: -.5em;
}

input {
		border-radius: 0;
}

[disabled] {
		cursor: default;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
		height: auto;
}

[type=search] {
		-webkit-appearance: textfield;
		outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
		-webkit-appearance: none;
}

textarea {
		overflow: auto;
		resize: vertical;
}

button, input, optgroup, select, textarea {
		font: inherit;
}

optgroup {
		font-weight: 700;
}

button {
		overflow: visible;
}

button, select {
		text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
		cursor: pointer;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
		border-style: none;
		padding: 0;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
		outline: 1px dotted ButtonText;
}

[type=reset], [type=submit], button, html [type=button] {
		-webkit-appearance: button;
}

button, input, select, textarea {
		background-color: transparent;
		border-style: none;
}

select {
		-moz-appearance: none;
		-webkit-appearance: none;
}

select::-ms-expand {
		display: none;
}

select::-ms-value {
		color: currentColor;
}

legend {
		border: 0;
		color: inherit;
		display: table;
		max-width: 100%;
		white-space: normal;
}

::-webkit-file-upload-button {
		-webkit-appearance: button;
		font: inherit;
}

img {
		border-style: none;
		width: 100%;
		height: auto;
}

progress {
		vertical-align: baseline;
}

svg:not([fill]) {
		fill: currentColor;
}

[aria-busy=true] {
		cursor: progress;
}

[aria-controls] {
		cursor: pointer;
}

[aria-disabled] {
		cursor: default;
}

ol, ul {
		list-style: none;
}

body {
		color: #231815;
		font-family: Lato,Noto Sans JP,-apple-system,BlinkMacSystemFont,Helvetica Neue,YuGothic,ヒラギノ角ゴ ProN W3,Hiragino Kaku Gothic ProN,Arial,メイリオ,Meiryo,sans-serif;
		margin: 0;
		font-size: 14px;
}

body.is-active {
		overflow: hidden;
		height: 100%;
}

a {
		text-decoration: none;
		color: #231815;
}

.br-sp {
		display: block;
}

h2 {
		font-weight: 400;
}

input::-webkit-input-placeholder {
		color: #adadad;
}

input::-moz-placeholder {
		color: #adadad;
}

input:-ms-input-placeholder {
		color: #adadad;
}

input::-ms-input-placeholder {
		color: #adadad;
}

input::placeholder {
		color: #adadad;
}

/*--------------------------------------------------------------
# ヘッダー
--------------------------------------------------------------*/
header#header {
		position: fixed;
		width: 100%;
		background: #fff;
		background: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(1%, white), to(rgba(255, 255, 255, 0.77)));
		background: -webkit-linear-gradient(top, white 0%, white 1%, rgba(255, 255, 255, 0.77) 100%);
		background: -o-linear-gradient(top, white 0%, white 1%, rgba(255, 255, 255, 0.77) 100%);
		background: linear-gradient(to bottom, white 0%, white 1%, rgba(255, 255, 255, 0.77) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#c4ffffff',GradientType=0 );
		-webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
		        box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
		border-bottom: 1px solid #e3e7e9;
		z-index: 2;
}

header#header .header_inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		   -moz-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		padding: 0;
		width: 100%;
		max-width: 1180px;
		margin: 0 auto;
		height: 104px;
}

@media (max-width: 1279px) {
		header#header .header_inner {
				padding: 0 4.26%;
		}
}

@media (max-width: 767px) {
		header#header .header_inner {
				height: 56px;
		}
}

header#header .header_inner h1 {
		font-size: 30px;
}

@media (max-width: 850px) {
		header#header .header_inner h1 {
				font-size: 3vw;
		}
}

@media (max-width: 480px) {
		header#header .header_inner h1 {
				width: 70%;
				font-size: 100%;
		}
}

header#header .header_inner .header_logo {
		width: 264px;
}

@media (max-width: 850px) {
		header#header .header_inner .header_logo {
				width: 240px;
		}
}

@media (max-width: 767px) {
		header#header .header_inner .header_logo {
				width: 136px;
		}
}

@media (max-width: 480px) {
		header#header .header_inner .header_logo {
				width: 30%;
		}
}

/*--------------------------------------------------------------
# コンテンツ
--------------------------------------------------------------*/
main {
		width: 100%;
		max-width: 800px;
		padding-top: 105px;
		margin: 0 auto;
		/*--------------------------------------------------------------
 # ボタン矢印
 --------------------------------------------------------------*/
}

@media (max-width: 1279px) {
		main {
				padding: 105px 4.26% 0;
		}
}

@media (max-width: 767px) {
		main {
				padding: 56px 4.26% 0;
		}
}

main a.arrow {
		position: relative;
}

main a.arrow::before {
		position: absolute;
		content: '';
		width: 0;
		height: 0;
		border-top: solid 10px transparent;
		border-left: solid 12px #fff;
		border-bottom: solid 10px transparent;
		top: 50%;
		right: 20px;
		margin-top: -6px;
		-webkit-transition: all .3s ease;
		-o-transition: all .3s ease;
		transition: all .3s ease;
}

@media (max-width: 480px) {
		main a.arrow::before {
				border-top: solid 7px transparent;
				border-left: solid 9px #fff;
				border-bottom: solid 7px transparent;
		}
}

@media (hover: hover) {
		main a.arrow:hover::before {
				right: 15px;
		}
}

@media (hover: none) {
		main a.arrow:active::before {
				right: 15px;
		}
}

main a.arrow.little::before {
		border-top: solid 7px transparent;
		border-left: solid 10px #fff;
		border-bottom: solid 7px transparent;
		right: 15px;
}

@media (hover: hover) {
		main a.arrow.little:hover::before {
				right: 10px;
		}
}

@media (hover: none) {
		main a.arrow.little:active::before {
				right: 10px;
		}
}

main section#description {
		margin: 30px auto 0;
}

@media (max-width: 767px) {
		main section#description {
				margin: 30px auto 0;
		}
}

@media (max-width: 480px) {
		main section#description {
				margin: 20px auto;
		}
}

main section#description p.heed {
		text-align: center;
		font-size: 25px;
		font-weight: 800;
}

@media (max-width: 1050px) {
		main section#description p.heed {
				font-size: 2.8vw;
		}
}

@media (max-width: 640px) {
		main section#description p.heed {
				font-size: 3.5vw;
		}
}

@media (max-width: 480px) {
		main section#description p.heed {
				font-size: 5vw;
		}
}

main section#description p.note {
		text-align: center;
		font-size: 16px;
		margin-top: 20px;
}

@media (max-width: 991px) {
		main section#description p.note {
				font-size: 2vw;
		}
}

@media (max-width: 640px) {
		main section#description p.note {
				font-size: 2.5vw;
		}
}

@media (max-width: 480px) {
		main section#description p.note {
				font-size: 4vw;
				text-align: left;
		}
}

main section#registration {
		margin: 30px auto;
}

@media (max-width: 767px) {
		main section#registration {
				max-width: 480px;
		}
}

main section#registration .section-inner {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
}

main section#registration .section-inner h2 {
		text-align: center;
		font-size: 25px;
		font-weight: 800;
}

@media (max-width: 1050px) {
		main section#registration .section-inner h2 {
				font-size: 2.8vw;
		}
}

@media (max-width: 640px) {
		main section#registration .section-inner h2 {
				font-size: 3.5vw;
		}
}

@media (max-width: 480px) {
		main section#registration .section-inner h2 {
				font-size: 5vw;
		}
}

main section#registration .section-inner .link-area {
		width: 100%;
		padding: 25px 20px;
		margin: auto;
}

@media (max-width: 850px) {
		main section#registration .section-inner .link-area {
				padding: 30px 30px;
		}
}

@media (max-width: 767px) {
		main section#registration .section-inner .link-area {
				padding: 30px 30px 20px;
		}
}

@media (max-width: 480px) {
		main section#registration .section-inner .link-area {
				padding: 20px 0px 20px;
		}
}

main section#registration .section-inner .link-area p.note {
		text-align: center;
		font-size: 14px;
		margin-top: 20px;
}

@media (max-width: 991px) {
		main section#registration .section-inner .link-area p.note {
				font-size: 2vw;
		}
}

@media (max-width: 640px) {
		main section#registration .section-inner .link-area p.note {
				font-size: 2.5vw;
		}
}

@media (max-width: 480px) {
		main section#registration .section-inner .link-area p.note {
				font-size: 4vw;
				text-align: left;
		}
}

main section#registration .section-inner .link-area figure {
		height: 80px;
		text-align: center;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin: 20px auto 40px;
}

@media (max-width: 850px) {
		main section#registration .section-inner .link-area figure {
				height: 8vw;
				margin: 0 auto 40px;
		}
}

main section#registration .section-inner .link-area figure img {
		height: auto;
		width: 80%;
}

@media (max-width: 850px) {
		main section#registration .section-inner .link-area figure img {
				width: 90%;
		}
}

main section#registration .section-inner .link-area .button {
		max-width: 500px;
}

main section#registration .section-inner .link-area .button a {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		width: 100%;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		padding: 20px;
		border: solid 1px;
		font-size: 25px;
		font-weight: 800;
}

@media (max-width: 640px) {
		main section#registration .section-inner .link-area .button a {
				font-size: 4.5vw;
		}
}

@media (max-width: 480px) {
		main section#registration .section-inner .link-area .button a {
				padding: 20px 10px;
		}
}

main section#registration .section-inner .link-area .button.reg-btn {
		margin: 30px auto;
}

main section#registration .section-inner .link-area .button.reg-btn a {
		background: #ed7700;
		color: #fff;
}

main section#registration .section-inner .link-area .button.reg-btn a img {
		width: 25px;
		margin-right: 15px;
}

main section#registration .section-inner .link-area .button.login-btn {
		margin: 30px auto 10px;
}

main section#registration .section-inner .link-area .button.login-btn a {
		background: #9e9e9e;
		color: #fff;
		border: solid 1px #9e9e9e;
}

main section#registration .section-inner .link-area .button.login-btn a.arrow::before {
		border-left: solid 12px #fff;
}

@media (max-width: 480px) {
		main section#registration .section-inner .link-area .button.login-btn a.arrow::before {
				border-left: solid 9px #fff;
		}
}

main section#contact {
		margin: 80px auto;
}

@media (max-width: 767px) {
		main section#contact {
				margin: 60px auto;
		}
}

@media (max-width: 480px) {
		main section#contact {
				margin: 40px auto;
		}
}

main section#contact .section-inner .contact-btn {
		margin: 0 30px;
}

@media (max-width: 767px) {
		main section#contact .section-inner .contact-btn {
				margin: auto;
		}
}

main section#contact .section-inner .contact-btn a {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		width: 100%;
		max-width: 330px;
		border: solid 1px;
		padding: 15px;
		font-size: 15px;
		text-align: center;
		font-weight: 800;
		background: #8ccc70;
		color: #fff;
		margin: auto;
}

@media (max-width: 480px) {
		main section#contact .section-inner .contact-btn a {
				padding: 10px;
				max-width: 250px;
		}
}

/*--------------------------------------------------------------
# サイトTOPに
--------------------------------------------------------------*/
body {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		-webkit-flex-direction: column;
		-moz-box-orient: vertical;
		-moz-box-direction: normal;
		flex-direction: column;
		min-height: 100vh;
}

p#pagetop {
		display: none;
		position: fixed;
		bottom: 40px;
		right: 20px;
		z-index: 100;
}

@media (max-width: 767px) {
		p#pagetop {
				bottom: 10px;
				right: 10px;
		}
}

p#pagetop a img {
		width: 80px;
}

@media (max-width: 767px) {
		p#pagetop a img {
				width: 60px;
		}
}

@media (max-width: 480px) {
		p#pagetop a img {
				width: 40px;
		}
}

/*--------------------------------------------------------------
# フッター
--------------------------------------------------------------*/
footer, footer a {
		color: #231815;
}

footer {
		background-color: #f5f5f1;
		padding: 0 4.27%;
		margin-top: auto;
}

footer .sitemap {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		padding: 48px 0 0;
		margin: 0 auto;
		max-width: 1180px;
}

@media (max-width: 767px) {
		footer .sitemap {
				padding: 60px 0 0;
				max-width: 480px;
		}
}

footer .sitemap ul {
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-box-pack: start;
		-webkit-justify-content: start;
		   -moz-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: start;
		font-size: 2.4vw;
}

@media (max-width: 1024px) {
		footer .sitemap ul {
				width: 100%;
				-webkit-box-pack: center;
				-webkit-justify-content: center;
				   -moz-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
		}
}

footer .sitemap ul.secondul {
		border-left: 1px solid #e0e0e0;
		padding: 0;
}

@media (max-width: 1024px) {
		footer .sitemap ul.secondul {
				border-left: none;
		}
}

footer .sitemap ul li {
		line-height: 20px;
		list-style: none;
		font-size: 12px;
		padding: 0 16px;
}

@media (max-width: 1024px) {
		footer .sitemap ul li {
				margin-bottom: 10px;
		}
}

@media (max-width: 767px) {
		footer .sitemap ul li {
				font-size: 16px;
				margin-bottom: 20px;
		}
}

@media (max-width: 480px) {
		footer .sitemap ul li {
				width: 100%;
				border-bottom: solid 1px #ccc;
				padding-bottom: 20px;
		}
}

footer .sitemap ul li:not(:first-child) {
		border-left: 1px solid #e0e0e0;
}

@media (max-width: 480px) {
		footer .sitemap ul li:not(:first-child) {
				border-left: none;
		}
}

footer .copyright {
		font-size: 12px;
		margin: 40px 0 0;
		text-align: center;
}

@media (max-width: 1279px) {
		footer .copyright {
				font-size: 10px;
				margin: 32px 0 0;
		}
}

@media (max-width: 767px) {
		footer .copyright {
				font-size: 16px;
				margin: 40px 0 0;
		}
}

footer .copyright .copyright_text2 {
		display: inline-block;
		margin: 5px 0 0;
}

@media (max-width: 767px) {
		footer .copyright .copyright_text2 {
				margin: 10px 0 0;
		}
}

@media (max-width: 480px) {
		footer .copyright p.copyright_text2 {
				font-size: 3.3vw;
				margin-top: 30px;
		}
}

footer .social {
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		padding: 44px 0 80px;
}

@media (max-width: 767px) {
		footer .social {
				-webkit-flex-wrap: wrap;
				    -ms-flex-wrap: wrap;
				        flex-wrap: wrap;
				padding: 60px 0;
		}
}

footer .social ul {
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-flex-wrap: wrap;
		    -ms-flex-wrap: wrap;
		        flex-wrap: wrap;
		list-style: none;
}

@media (max-width: 480px) {
		footer .social ul:last-child {
				margin-top: 20px;
		}
}

footer .social ul li {
		font-size: 10px;
}

@media (max-width: 767px) {
		footer .social ul li {
				font-size: 1.86666667vw;
		}
}

@media (max-width: 480px) {
		footer .social ul li {
				font-size: 16px;
		}
}

footer .social ul li img {
		margin: 0 15px;
		width: 35px;
}

@media (max-width: 767px) {
		footer .social ul li img {
				margin: 0 7px;
				width: 25px;
		}
}

* {
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
		        box-sizing: border-box;
		margin: 0;
		padding: 0;
}

.content {
		margin: 0 auto;
		padding: 40px;
}

.modal {
		display: none;
		height: 100vh;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 2;
}

.modal__bg {
		background: rgba(0, 0, 0, 0.8);
		height: 100vh;
		position: absolute;
		width: 100%;
}

.modal__content {
		background: #fff;
		left: 50%;
		padding: 60px;
		position: absolute;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		    -ms-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
		width: 90%;
		max-width: 640px;
}

@media (max-width: 640px) {
		.modal__content {
				width: 95%;
				padding: 50px 30px 30px;
		}
}

.modal__content p {
		margin-bottom: 1rem;
		font-size: 20px;
}

@media (max-width: 480px) {
		.modal__content p {
				font-size: 16px;
		}
}

.modal__content a.btn {
		height: 100px;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		   -moz-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		   -moz-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		display: block;
		border: solid 1px #bababa;
		margin-bottom: 50px;
}

@media (max-width: 640px) {
		.modal__content a.btn {
				margin-bottom: 30px;
		}
}

.modal__content a.btn:last-child {
		margin-bottom: 0;
}

@media (max-width: 640px) {
		.modal__content a.btn:last-child {
				margin-bottom: 0;
		}
}

@media (hover: hover) {
		.modal__content a.btn:hover {
				border: solid 1px rgba(237, 119, 0, 0.5);
				-webkit-box-shadow: 0 0 3rem 1rem rgba(237, 119, 0, 0.2);
				        box-shadow: 0 0 3rem 1rem rgba(237, 119, 0, 0.2);
		}
}

@media (hover: none) {
		.modal__content a.btn:active {
				border: solid 1px rgba(237, 119, 0, 0.5);
				-webkit-box-shadow: 0 0 3rem 1rem rgba(237, 119, 0, 0.2);
				        box-shadow: 0 0 3rem 1rem rgba(237, 119, 0, 0.2);
		}
}

.modal__content a.btn figure {
		width: 60%;
		height: 100%;
		margin: auto;
		display: -webkit-box;
		display: -webkit-flex;
		display: -moz-box;
		display: -ms-flexbox;
		display: flex;
}

@media (max-width: 480px) {
		.modal__content a.btn figure {
				width: 80%;
		}
}

.modal__content a.js-modal-close {
		position: absolute;
		top: 0;
		right: 0;
		width: 40px;
		height: 40px;
}

@media (hover: hover) {
		.modal__content a.js-modal-close:hover {
				border: none;
				-webkit-box-shadow: none;
				        box-shadow: none;
		}
}

@media (hover: none) {
		.modal__content a.js-modal-close:active {
				border: none;
				-webkit-box-shadow: none;
				        box-shadow: none;
		}
}

.modal__content a.js-modal-close::before, .modal__content a.js-modal-close::after {
		/* 共通設定 */
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		width: 2px;
		/* 棒の幅（太さ） */
		height: 30px;
		/* 棒の高さ */
		background: #333;
}

.modal__content a.js-modal-close::before {
		-webkit-transform: translate(-50%, -50%) rotate(45deg);
		    -ms-transform: translate(-50%, -50%) rotate(45deg);
		        transform: translate(-50%, -50%) rotate(45deg);
}

.modal__content a.js-modal-close:after {
		-webkit-transform: translate(-50%, -50%) rotate(-45deg);
		    -ms-transform: translate(-50%, -50%) rotate(-45deg);
		        transform: translate(-50%, -50%) rotate(-45deg);
}

.line-box {
		width: 100%;
		margin: auto;
		overflow: hidden;
}

.line-box span.line {
		background: #9e9e9e;
		width: 100%;
		height: 1px;
		display: block;
}
