@charset "utf-8";

#ORI-POINT1 {
position: relative;
overflow: hidden;
}
#ORI-POINT1 .cont {
margin: 0 auto;
padding: 8vw 0 16vw 0;
width: 81.333vw;
}
#ORI-POINT1 .point {
margin-bottom: 3.2vw;
font-size: 3.733vw;
}
#ORI-POINT1 h2 {
margin-bottom: 1.6vw;
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 500;
font-size: 4.267vw;
line-height: 1.37;
}
#ORI-POINT1 p {
font-size: 3.733vw;
line-height: 1.36;
}
#ORI-POINT1 p span {
font-size: 2.933vw;
}
#ORI-POINT1 .image img {
display: block;
margin-top: 5.867vw;
width: 100%;
height: auto;
}
@media screen and (min-width: 768px) {
	#ORI-POINT1 .cont {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding: 40px 0 80px 0;
	width: 1068px;
	}
	#ORI-POINT1 .pack {
	margin-left: 64px;
	width: 300px;
	}
	#ORI-POINT1 .point {
	margin-bottom: 12px;
	font-size: 15px;
	}
	#ORI-POINT1 h2 {
	margin-bottom: 26px;
	font-size: 22px;
	}
	#ORI-POINT1 p {
	font-size: 15px;
	line-height: 1.6;
	}
	#ORI-POINT1 p span {
	margin-top: 8px;
	display: block;
	font-size: 12px;
	}
	#ORI-POINT1 .image {
	width: 534px;
	}
	#ORI-POINT1 .image img {
	margin-top: 0;
	}
}

#ORI-EXPLAN1 {
position: relative;
background-color: #e4e4e4;
overflow: hidden;
}
#ORI-EXPLAN1 .cont {
margin: 0 auto;
padding: 5.333vw 0 13.333vw 0;
width: 81.333vw;
}
#ORI-EXPLAN1 h2 {
margin-bottom: 5.333vw;
font-family: "Zen Old Mincho", serif;
font-weight: 500;
font-size: 4.533vw;
text-align: center;
letter-spacing: 0.15em;
}
#ORI-EXPLAN1 .list {
display: flex;
flex-direction: column;
gap: 6.667vw;
}
#ORI-EXPLAN1 .block {
display: flex;
flex-wrap: wrap;
}
#ORI-EXPLAN1 .block .image {
display: block;
width: 38.667vw;
height: auto;
}
#ORI-EXPLAN1 .block .image img {
display: block;
width: 38.667vw;
height: auto;
}
#ORI-EXPLAN1 .block .pack {
flex: 1;
padding-left: 2.133vw;
}
#ORI-EXPLAN1 p {
font-size: 3.733vw;
line-height: 1.36;
letter-spacing: 0.05em;
}
#ORI-EXPLAN1 p.note {
font-size: 2.933vw;
}
@media screen and (min-width: 768px) {
	#ORI-EXPLAN1 .cont {
	padding: 80px 0 70px 0;
	width: 990px;
	}
	#ORI-EXPLAN1 h2 {
	margin-bottom: 40px;
	font-size: 26px;
	text-align: left;
	}
	#ORI-EXPLAN1 .list {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	gap: 54px;
	}
	#ORI-EXPLAN1 .block {
	display: block;
	width: 468px;
	}
	#ORI-EXPLAN1 .block .image {
	width: 468px;
	}
	#ORI-EXPLAN1 .block .image img {
	margin: 0 auto 25px auto;
	width: 420px;
	}
	#ORI-EXPLAN1 .block .pack {
	margin: 0 auto 0 auto;
	padding-left: 0;
	width: 420px;
	}
	#ORI-EXPLAN1 p {
	font-size: 15px;
	line-height: 1.6;
	}
	#ORI-EXPLAN1 p.note {
	margin-top: 4px;
	font-size: 12px;
	}
}

#ORI-EXPLAN2 {
position: relative;
overflow: hidden;
}
#ORI-EXPLAN2 .cont {
margin: 0 auto;
padding: 9.333vw 0 13.333vw 0;
width: 81.333vw;
}
#ORI-EXPLAN2 h2 {
margin-bottom: 4vw;
font-family: "Zen Old Mincho", serif;
font-weight: 500;
font-size: 4.533vw;
text-align: center;
letter-spacing: 0.15em;
}
#ORI-EXPLAN2 .map {
position: relative;
margin: 4vw -5.333vw 13.333vw -5.333vw;
}
#ORI-EXPLAN2 .map img {
display: block;
width: 92vw;
height: auto;
}
#ORI-EXPLAN2 .map li {
position: absolute;
left: 0;
top: 0;
font-size: 2.667vw;
letter-spacing: 0;
}
#ORI-EXPLAN2 .map li::after {
transform: translateX(-50%);
content: '';
display: block;
position: absolute;
left: 50%;
background-color: #000;
border-radius: 26666.4vw;
width: 1.333vw;
height: 1.333vw;
}
#ORI-EXPLAN2 .map .li2::after,
#ORI-EXPLAN2 .map .li1::after {
bottom: -2.133vw;
}
#ORI-EXPLAN2 .map .li4::after,
#ORI-EXPLAN2 .map .li3::after {
top: -2.133vw;
}
#ORI-EXPLAN2 .map .li1 {
left: 2%;
top: 15.5%;
}
#ORI-EXPLAN2 .map .li2 {
left: 33%;
top: 24%;
}
#ORI-EXPLAN2 .map .li3 {
left: 27%;
top: 65%;
}
#ORI-EXPLAN2 .map .li4 {
left: 70%;
top: 37%;
}
#ORI-EXPLAN2 .map li a {
box-sizing: border-box;
display: flex;
justify-content: center;
align-items: center;
position: relative;
background-color: #fff;
border: solid 1px #000;
border-radius: 26666.4vw;
padding: 0.8vw 4.267vw 0 0;
width: 17.067vw;
height: 5.867vw;
text-decoration: none;
}
#ORI-EXPLAN2 .map li a::before {
transform: translateY(-1px);
content: '';
display: block;
position: absolute;
top: 50%;
right: 1.6vw;
width: 3.467vw;
border-top: solid 1px #000;
}
#ORI-EXPLAN2 .map li a::after {
transform: rotate(-45deg) translateY(1px);
content: '';
display: block;
position: absolute;
top: 50%;
right: 2.4vw;
width: 1.067vw;
border-top: solid 1px #000;
}
#ORI-EXPLAN2 .image {
position: relative;
margin-bottom: 5.333vw;
}
#ORI-EXPLAN2 .image picture:nth-of-type(1) img {
position: absolute;
right: 0;
top: 0;
display: block;
width: 38.933vw;
height: auto;
}
#ORI-EXPLAN2 .image picture:nth-of-type(2) img {
display: block;
width: 39.2vw;
height: auto;
}
#ORI-EXPLAN2 .image picture:nth-of-type(3) img {
position: absolute;
right: 0;
bottom: 0;
display: block;
width: 38.933vw;
height: auto;
}
#ORI-EXPLAN2 .head p,
#ORI-EXPLAN2 .block p {
font-size: 3.733vw;
line-height: 1.36;
}
@media screen and (min-width: 768px) {
	#ORI-EXPLAN2 .cont {
	padding: 90px 0 420px 0;
	width: 990px;
	}
	#ORI-EXPLAN2 .head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 30px;
	}
	#ORI-EXPLAN2 h2 {
	margin-bottom: 0;
	font-size: 26px;
	text-align: left;
	}
	#ORI-EXPLAN2 .head p {
	padding-top: 8px;
	}
	#ORI-EXPLAN2 .map {
	margin: 35px 0 115px -35px;
	}
	#ORI-EXPLAN2 .map svg,
	#ORI-EXPLAN2 .map img {
	width: 1018px;
	}

	svg .pop {
	transition: opacity 0.7s ease;
	transition-delay: 0.3s;
	opacity: 0;
	}
	svg .aera {
	transition: opacity 0.7s ease;
	transition-delay: 2s;
	opacity: 0;
	}
	svg.activeView .aera,
	svg.activeView .pop {
	opacity: 1;
	}
	svg .svg-elem-1 {
	stroke-dashoffset: 89.9000244140625px;
	stroke-dasharray: 89.9000244140625px;
	-webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
	transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
	transition-delay: 1s;
	}
	svg.activeView .svg-elem-1 {
	stroke-dashoffset: 179.800048828125px;
	}
	svg .svg-elem-2 {
	stroke-dashoffset: 220.98004150390625px;
	stroke-dasharray: 220.98004150390625px;
	-webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s;
	transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.12s;
	transition-delay: 1s;
	}
	svg.activeView .svg-elem-2 {
	stroke-dashoffset: 441.9600830078125px;
	}
	svg .svg-elem-3 {
	stroke-dashoffset: 139.78001403808594px;
	stroke-dasharray: 139.78001403808594px;
	-webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s;
	transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.24s;
	transition-delay: 1s;
	}
	svg.activeView .svg-elem-3 {
	stroke-dashoffset: 279.5600280761719px;
	}
	svg .svg-elem-4 {
	stroke-dashoffset: 14.060698509216309px;
	stroke-dasharray: 14.060698509216309px;
	-webkit-transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s;
	transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0.36s;
	transition-delay: 1s;
	}
	svg.activeView .svg-elem-4 {
	stroke-dashoffset: 0;
	}


	#ORI-EXPLAN2 .map ul {
	display: none;
	}
	#ORI-EXPLAN2 .block {
	margin: 0 auto;
	width: 598px;
	}
	#ORI-EXPLAN2 .image {
	margin-bottom: 0;
	position: relative;
	}
	#ORI-EXPLAN2 .image picture:nth-of-type(1) img {
	position: relative;
	margin: 0 auto 55px auto;
	width: 598px;
	height: auto;
	}
	#ORI-EXPLAN2 .image picture:nth-of-type(2) img {
	position: absolute;
	left: -185px;
	top: 480px;
	width: 412px;
	height: auto;
	}
	#ORI-EXPLAN2 .image picture:nth-of-type(3) img {
	position: absolute;
	right: -165px;
	top: 665px;
	bottom: inherit;
	margin: 0 auto;
	width: 412px;
	height: auto;
	}
	#ORI-EXPLAN2 .head p,
	#ORI-EXPLAN2 .block p {
	font-size: 15px;
	line-height: 1.6;
	}
	#ORI-EXPLAN2 .block p {
	margin: 0 0 0 auto;
	width: 300px;
	}
}

#ORI-POINT2 {
position: relative;
background-color: #e4e4e4;
overflow: hidden;
}
#ORI-POINT2 .cont {
margin: 0 auto;
padding: 10.667vw 0 13.333vw 0;
width: 81.333vw;
}
#ORI-POINT2 .point {
margin-bottom: 3.2vw;
font-size: 3.733vw;
}
#ORI-POINT2 h2 {
margin-bottom: 1.6vw;
font-family: "Zen Kaku Gothic New", sans-serif;
font-weight: 500;
font-size: 4.267vw;
line-height: 1.37;
}
#ORI-POINT2 p {
font-size: 3.733vw;
line-height: 1.36;
}
#ORI-POINT2 .image img {
display: block;
margin-top: 5.867vw;
width: 100%;
height: auto;
}
@media screen and (min-width: 768px) {
	#ORI-POINT2 .cont {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	padding: 100px 0 110px 0;
	width: 990px;
	}
	#ORI-POINT2 .pack {
	margin-right: 15px;
	width: 300px;
	}
	#ORI-POINT2 .point {
	margin-bottom: 12px;
	font-size: 15px;
	}
	#ORI-POINT2 h2 {
	margin-bottom: 26px;
	font-size: 22px;
	}
	#ORI-POINT2 p {
	font-size: 15px;
	line-height: 1.6;
	}
	#ORI-POINT2 p span {
	margin-top: 8px;
	display: block;
	font-size: 12px;
	}
	#ORI-POINT2 .image {
	width: 602px;
	}
	#ORI-POINT2 .image img {
	margin-top: 0;
	}
}

#ORI-BG1 img {
display: block;
width: 100%;
height: auto;
}
@media screen and (min-width: 768px) {
	#ORI-BG1 img {
	object-fit: cover;
	height: 590px;
	}
}

#ORI-EXPLAN3 {
position: relative;
overflow: hidden;
}
#ORI-EXPLAN3 .cont {
margin: 0 auto;
padding: 9.333vw 0 13.333vw 0;
width: 81.333vw;
}
#ORI-EXPLAN3 .block {
margin-bottom: 9.333vw;
}
#ORI-EXPLAN3 .block:last-child {
margin-bottom: 5.333vw;
}
#ORI-EXPLAN3 h2 {
margin-bottom: 4vw;
font-family: "Zen Old Mincho", serif;
font-weight: 500;
font-size: 4.533vw;
text-align: center;
letter-spacing: 0.15em;
}
#ORI-EXPLAN3 .image {
position: relative;
margin-top: 9.333vw;
padding-bottom: 8vw;
}
#ORI-EXPLAN3 .image picture:nth-of-type(1) img {
display: block;
width: 100%;
height: auto;
}
#ORI-EXPLAN3 .block:first-child .image picture:nth-of-type(1) img {
display: block;
width: 39.2vw;
height: auto;
}
#ORI-EXPLAN3 .image picture:nth-of-type(2) img {
position: absolute;
right: 0;
bottom: 0;
display: block;
width: 38.933vw;
height: auto;
}
#ORI-EXPLAN3 p {
font-size: 3.733vw;
line-height: 1.36;
}
@media screen and (min-width: 768px) {
	#ORI-EXPLAN3 .cont {
	padding: 135px 0 135px 0;
	width: 990px;
	}
	#ORI-EXPLAN3 .block {
	margin-bottom: 110px;
	}
	#ORI-EXPLAN3 h2 {
	margin-bottom: 20px;
	font-size: 26px;
	text-align: left;
	}
	#ORI-EXPLAN3 .image img {
	display: block;
	width: 440px;
	height: auto;
	}
	#ORI-EXPLAN3 p {
	font-size: 15px;
	line-height: 1.6;
	}
	#ORI-EXPLAN3 .block:first-child .pack {
	margin: 0 0 80px 550px;
	width: 350px;
	}
	#ORI-EXPLAN3 .block:first-child .image {
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0 20px 0 30px;
	}
	#ORI-EXPLAN3 .block:first-child .image picture:nth-of-type(1) img {
	position: relative;
	top: -140px;
	width: 440px;
	}
	#ORI-EXPLAN3 .block:first-child .image picture:nth-of-type(2) img {
	position: relative;
	width: 430px;
	}
	#ORI-EXPLAN3 .block:last-child {
	margin-bottom: 0;
	}
	#ORI-EXPLAN3 .block:last-child .pack {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 60px;
	margin-bottom: 85px;
	}
	#ORI-EXPLAN3 .block:last-child .pack h2 {
	margin-bottom: 10px;
	}
	#ORI-EXPLAN3 .block:last-child .image img {
	display: block;
	margin: 0 auto;
	width: 628px;
	height: auto;
	}
}