@charset "UTF-8";

/* スクロールアニメーション用CSS */
.slideUp,
.slideLeft,
.slideRight,
.slideDown {
	opacity: 0;
	transform: translateY(50px);
	transition: all 0.8s ease-out;
}

.slideLeft {
	transform: translateX(-50px);
}

.slideRight {
	transform: translateX(50px);
}

.slideDown {
	transform: translateY(-50px);
}

/* アニメーション表示時の状態 */
.slideUp.is-show,
.slideLeft.is-show,
.slideRight.is-show,
.slideDown.is-show {
	opacity: 1;
	transform: translate(0, 0);
}


/* 説明ブロック用CSS */
.explist {
	margin-bottom: 32px;

	dt {
		font-weight: bold;
		margin-bottom: .2em;
	}

	dd {
		p {
			margin-bottom: 0;
		}
	}

}

@media screen and (max-width: 47.9375em) {
	.explist {
		margin-bottom: 24px;
	}
}

/* ボタンデザイン */
.button {
	text-align: center;
}

.button__link {
	font-size: 17px;
	font-weight: bold;
	display: inline-block;
	text-decoration: none;
	opacity: 1 !important;
	transition: 0.2s;
}

.button-variation {

	div {
		margin-bottom: 32px;
	}

}

/* ボタンデザイン01 */
.button--type-01 .button__link {
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
	border-radius: 1px;
	will-change: transform;
	transition: border-radius 0.4s, background-color 0.3s;
}

.button--type-01 .button__link:hover,
.button--type-01 .button__link:focus {
	background-color: transparent;
	border-radius: 999px;
}

/* ボタンデザイン02 */
.button--type-02 .button__link {
	border-radius: 10px;
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
}

.button--type-02 .button__link:hover,
.button--type-02 .button__link:focus {
	background-color: transparent;
}

/* ボタンデザイン03 */
.button--type-03 .button__link {
	display: inline-block;
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
}

/* ボタンデザイン04 */
.button--type-04 .button__link {
	border-radius: 10px;
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
}

/* ボタンデザイン05 */
.button--type-05 .button__link {
	border-radius: 9999px;
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
}

.button--type-05 .button__link:hover,
.button--type-05 .button__link:focus {
	background-color: transparent;
}

/* ボタンデザイン06 */
.button--type-06 .button__link {
	border-radius: 9999px;
	padding: .85em 3em;
	border-style: solid;
	border-width: 2px;
}

/* ボタンデザイン07 */
.button--type-07 .button__link {
	padding: .65em 3em;
	font-size: 18px;
	position: relative;

	&::after {
		content: "";
		display: inline-block;
		width: 28px;
		aspect-ratio: 1;
		border-radius: 50%;
		background: url('images/ico_arrow_01_white.svg') no-repeat center center / 46% 46%;
		position: absolute;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
		pointer-events: none;
		transition: right 0.2s;
	}

}

.button--type-07 .button__link:hover::after,
.button--type-07 .button__link:focus::after {
	right: -6px;
}

/* 横幅設定用CSS */
.flexbox .wd-01 {
	width: 1%;
}

.flexbox .wd-02 {
	width: 2%;
}

.flexbox .wd-03 {
	width: 3%;
}

.flexbox .wd-04 {
	width: 4%;
}

.flexbox .wd-05 {
	width: 5%;
}

.flexbox .wd-06 {
	width: 6%;
}

.flexbox .wd-07 {
	width: 7%;
}

.flexbox .wd-08 {
	width: 8%;
}

.flexbox .wd-09 {
	width: 9%;
}

.flexbox .wd-10 {
	width: 10%;
}

.flexbox .wd-11 {
	width: 11%;
}

.flexbox .wd-12 {
	width: 12%;
}

.flexbox .wd-13 {
	width: 13%;
}

.flexbox .wd-14 {
	width: 14%;
}

.flexbox .wd-15 {
	width: 15%;
}

.flexbox .wd-16 {
	width: 16%;
}

.flexbox .wd-17 {
	width: 17%;
}

.flexbox .wd-18 {
	width: 18%;
}

.flexbox .wd-19 {
	width: 19%;
}

.flexbox .wd-20 {
	width: 20%;
}

.flexbox .wd-21 {
	width: 21%;
}

.flexbox .wd-22 {
	width: 22%;
}

.flexbox .wd-23 {
	width: 23%;
}

.flexbox .wd-24 {
	width: 24%;
}

.flexbox .wd-25 {
	width: 25%;
}

.flexbox .wd-26 {
	width: 26%;
}

.flexbox .wd-27 {
	width: 27%;
}

.flexbox .wd-28 {
	width: 28%;
}

.flexbox .wd-29 {
	width: 29%;
}

.flexbox .wd-30 {
	width: 30%;
}

.flexbox .wd-31 {
	width: 31%;
}

.flexbox .wd-32 {
	width: 32%;
}

.flexbox .wd-33 {
	width: 33%;
}

.flexbox .wd-34 {
	width: 34%;
}

.flexbox .wd-35 {
	width: 35%;
}

.flexbox .wd-36 {
	width: 36%;
}

.flexbox .wd-37 {
	width: 37%;
}

.flexbox .wd-38 {
	width: 38%;
}

.flexbox .wd-39 {
	width: 39%;
}

.flexbox .wd-40 {
	width: 40%;
}

.flexbox .wd-41 {
	width: 41%;
}

.flexbox .wd-42 {
	width: 42%;
}

.flexbox .wd-43 {
	width: 43%;
}

.flexbox .wd-44 {
	width: 44%;
}

.flexbox .wd-45 {
	width: 45%;
}

.flexbox .wd-46 {
	width: 46%;
}

.flexbox .wd-47 {
	width: 47%;
}

.flexbox .wd-48 {
	width: 48%;
}

.flexbox .wd-49 {
	width: 49%;
}

.flexbox .wd-50 {
	width: 50%;
}

.flexbox .wd-51 {
	width: 51%;
}

.flexbox .wd-52 {
	width: 52%;
}

.flexbox .wd-53 {
	width: 53%;
}

.flexbox .wd-54 {
	width: 54%;
}

.flexbox .wd-55 {
	width: 55%;
}

.flexbox .wd-56 {
	width: 56%;
}

.flexbox .wd-57 {
	width: 57%;
}

.flexbox .wd-58 {
	width: 58%;
}

.flexbox .wd-59 {
	width: 59%;
}

.flexbox .wd-60 {
	width: 60%;
}

.flexbox .wd-61 {
	width: 61%;
}

.flexbox .wd-62 {
	width: 62%;
}

.flexbox .wd-63 {
	width: 63%;
}

.flexbox .wd-64 {
	width: 64%;
}

.flexbox .wd-65 {
	width: 65%;
}

.flexbox .wd-66 {
	width: 66%;
}

.flexbox .wd-67 {
	width: 67%;
}

.flexbox .wd-68 {
	width: 68%;
}

.flexbox .wd-69 {
	width: 69%;
}

.flexbox .wd-70 {
	width: 70%;
}

.flexbox .wd-71 {
	width: 71%;
}

.flexbox .wd-72 {
	width: 72%;
}

.flexbox .wd-73 {
	width: 73%;
}

.flexbox .wd-74 {
	width: 74%;
}

.flexbox .wd-75 {
	width: 75%;
}

.flexbox .wd-76 {
	width: 76%;
}

.flexbox .wd-77 {
	width: 77%;
}

.flexbox .wd-78 {
	width: 78%;
}

.flexbox .wd-79 {
	width: 79%;
}

.flexbox .wd-80 {
	width: 80%;
}

.flexbox .wd-81 {
	width: 81%;
}

.flexbox .wd-82 {
	width: 82%;
}

.flexbox .wd-83 {
	width: 83%;
}

.flexbox .wd-84 {
	width: 84%;
}

.flexbox .wd-85 {
	width: 85%;
}

.flexbox .wd-86 {
	width: 86%;
}

.flexbox .wd-87 {
	width: 87%;
}

.flexbox .wd-88 {
	width: 88%;
}

.flexbox .wd-89 {
	width: 89%;
}

.flexbox .wd-90 {
	width: 90%;
}

.flexbox .wd-91 {
	width: 91%;
}

.flexbox .wd-92 {
	width: 92%;
}

.flexbox .wd-93 {
	width: 93%;
}

.flexbox .wd-94 {
	width: 94%;
}

.flexbox .wd-95 {
	width: 95%;
}

.flexbox .wd-96 {
	width: 96%;
}

.flexbox .wd-97 {
	width: 97%;
}

.flexbox .wd-98 {
	width: 98%;
}

.flexbox .wd-99 {
	width: 99%;
}

.flexbox .wd-100 {
	width: 100%;
}

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

	.wd-01,
	.wd-02,
	.wd-03,
	.wd-04,
	.wd-05,
	.wd-06,
	.wd-07,
	.wd-08,
	.wd-09,
	.wd-10,
	.wd-11,
	.wd-12,
	.wd-13,
	.wd-14,
	.wd-15,
	.wd-16,
	.wd-17,
	.wd-18,
	.wd-19,
	.wd-20,
	.wd-21,
	.wd-22,
	.wd-23,
	.wd-24,
	.wd-25,
	.wd-26,
	.wd-27,
	.wd-28,
	.wd-29,
	.wd-30,
	.wd-31,
	.wd-32,
	.wd-33,
	.wd-34,
	.wd-35,
	.wd-36,
	.wd-37,
	.wd-38,
	.wd-39,
	.wd-40,
	.wd-41,
	.wd-42,
	.wd-43,
	.wd-44,
	.wd-45,
	.wd-46,
	.wd-47,
	.wd-48,
	.wd-49,
	.wd-50,
	.wd-51,
	.wd-52,
	.wd-53,
	.wd-54,
	.wd-55,
	.wd-56,
	.wd-57,
	.wd-58,
	.wd-59,
	.wd-60,
	.wd-61,
	.wd-62,
	.wd-63,
	.wd-64,
	.wd-65,
	.wd-66,
	.wd-67,
	.wd-68,
	.wd-69,
	.wd-70,
	.wd-71,
	.wd-72,
	.wd-73,
	.wd-74,
	.wd-75,
	.wd-76,
	.wd-77,
	.wd-78,
	.wd-79,
	.wd-80,
	.wd-81,
	.wd-82,
	.wd-83,
	.wd-84,
	.wd-85,
	.wd-86,
	.wd-87,
	.wd-88,
	.wd-89,
	.wd-90,
	.wd-91,
	.wd-92,
	.wd-93,
	.wd-94,
	.wd-95,
	.wd-96,
	.wd-97,
	.wd-98,
	.wd-99,
	.wd-100 {
		width: 100%!important;
	}
}

/* 背景画像を設定した場合のセクション用CSS */
.add-background-image {
  background-repeat: repeat;
  background-position: left top;
}


/* ヒーロー画像のオーバーレイ用CSS */
.hero-overlay {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	max-width: 1800px;
	height: 100%;
	z-index: 1;
}


.hero-new-functions {

.inner {
	padding-left: 0;
	padding-right: 0;
}

	.sp-sec {
    max-width: 100%;
  }

}