@charset "utf-8";
* {
	margin: 0px;
	padding: 0px;
}
/*基準を1rem=10pxに設定*/
html {
	font-size: 62.5%;
}
body {
	margin: 0;
	padding: 0;
	font-family: "A1 Mincho";
	background-image: url("../images/bg_left.svg"), url("../images/bg_right.svg");
	background-blend-mode: lighten;
	background-color: rgba(255, 255, 255, 0.8);
	background-repeat: no-repeat;
	background-position: left top, right top;
	background-size: cover;
}
h1 {
	margin: 5rem 0;
	font-size: 5rem;
	text-align: center;
}
section {
	max-width: 1200px;
	margin: 5rem auto;
}
h2 {
	margin: 5rem 0 2.5rem 0;
	font-size: clamp(2.4rem, calc(2.2rem + 0.625vw), 2.9rem);
	text-align: center;
}
h2 span {
	padding: 0 10px;
	background-color: #fff;
	display: inline-block;
}
p {
	font-size: clamp(1.2rem, calc(1rem + 0.625vw), 1.7rem);
	line-height: 3.5rem;
}
hr {
	border-top: 1px dashed #ccc;
}
img {
	width: 25%;
	border-radius: 20px;
}
.column_wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 1000px;
	margin: 1em auto;
}
.column2 {
	width: calc(100% / 2 - 30px / 3 * 2);
}
.column2:first-child {
	text-align: right;
}
.button {
	margin: 3em auto;
	padding: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	text-decoration: none;
	color: #ffffff;
	font-size: clamp(2.4rem, calc(2.2rem + 0.625vw), 2.9rem);
	border-radius: 5px;
	width: 500px;
	height: 50px;
	transition: 0.3s;
	background-image: linear-gradient(150deg, rgba(110, 150, 255, 1) 15%, rgba(216, 84, 231, 1) 50%, rgba(255, 165, 55, 1) 85%);
	box-shadow: 0px 0px 3px 2px rgba(0, 0, 0, 0.5);
}
.button:hover {
	opacity: 0.7;
}
@media only screen and (max-width: 1440px) {
	section {
		margin: 2em 1em;
	}
	/*img{
		width: 25%;
	}*/
	.column2 {
		width: 100%;
		display: block;
		text-align: center !important;
	}
	.button {
		width: 80%;
	}
}