@charset "utf-8";

.Keyvisual__content{
	padding-bottom: 0;
}
.Keyvisual__message{
	padding-top: 68.6rem;
}
.Keyvisual__message-title{
	margin-bottom: 0;
}

/*-------------------------------
	Select
-------------------------------*/

.Select_inner {
	display: flex;
	flex-wrap:nowrap;
}

.Select_button {
	width:25%;
	color:var(--maincolor);
	border-radius:1rem 1rem 0 0;
	position:relative;
	background-color:#E7E7E8;
	margin:0;
	padding:0;
	border:none;
}

.Select_button span {
	display: block;
	text-align: center;
	padding:1.75em 1em;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.25;
	position:relative;
}

.Select_button.active,
.Select_button:hover {
	/*background-color:#CCD6E0;*/
	background-color:#edf5ff;
}

.Select_button:hover::before,
.Select_button.active::before {
	content:"";
	display: block;
	width:100%;
	height:100%;
	border-radius:1rem 1rem 0 0;
	background:url(../images/history/bg_selectbutton.png) no-repeat center / cover;
	/*opacity:0.3;*/
	opacity: 0.2;
	position:absolute;
	left:0;
	top:0;
}

.Select_button:not(:last-of-type)::after {
	content:"";
	display: block;
	width:.2rem;
	height:100%;
	background:#fff;
	position:absolute;
	right:-0.1rem;
	top:0;
	z-index: 1;
}

.Select_wrap::-webkit-scrollbar {
	height:5rem;
}

.Select_wrap::-webkit-scrollbar-thumb {
	background:var(--maincolor);
	border-radius:2.5rem;
	border:1.6rem solid transparent;
	background-clip: padding-box;
}


/*-------------------------------
	History
-------------------------------*/

.History {
	/*background:#CCD6E0;*/
	background: #edf5ff;
	position:relative;
}

.History::before {
	content:"";
	display: block;
	width:100%;
	height:100%;
	background:url(../images/history/bg_history.png) repeat left top / contain;
	position:absolute;
	left:0;
	top:0;
	/*opacity:.3;*/
	opacity:0.2;
}

/*-------------------------------
	History top
-------------------------------*/

.History_top {
	padding:9rem 0 7rem;
}

.era {
	margin-bottom:6rem;
}

.era h2 {
	display: none;
	font-size:2.8rem;
	font-weight:600;
	font-family: var(--mincho);
	/*color:#fff;*/
	color: #3C97D1;
	line-height:1;
	letter-spacing: 0.05em;
}

.era h2 span {
	font-size:10rem;
	font-weight:600;
	font-family: var(--no);
	display: inline-block;
	line-height:0.75;
	font-style: italic;
	/*color:#fff;*/
	color: #3C97D1;
	letter-spacing: 0;
	margin:0 0.1em;
}

.era h2 span span {
	font-family: var(--mincho);
	font-style: normal;
	margin:0;
}

.era h2.active {
	display: block;
}

.affe_miyuki,
.affe_society {
	font-size:1.8rem;
	font-weight:700;
	background:#fff;
	position:relative;
	text-align: center;
	line-height:1.25;
	padding:0.75em 0.5em;
}

.affe_miyuki {
	width:54%;
	max-width:57rem;
	color:#3C97D1;
}

.affe_society {
	width:42%;
	max-width:43.5rem;
	color:#4A8B5B;
}

.affe_miyuki::after,
.affe_society::after {
	content:"";
	display: block;
	border-style: solid;
	border-right: 1.3rem solid transparent;
	border-left: 1.3rem solid transparent;
	border-top: 1.4rem solid #fff;
	border-bottom: 0;
	position:absolute;
	left:50%;
	bottom:-1.4rem;
	transform:translateX(-50%);
}

/*-------------------------------
	Histry block
-------------------------------*/

.History_block {
	padding-top:0;
	padding-bottom:9rem;
	display: none;
}

.History_block.active {
	display: block;
}

.History_line {
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
	/* align-items: flex-start; */
	align-items: stretch;
	position:relative;
}

/* .History_line::before,
.H_society::before {
	content:"";
	display: block;
	width:.1rem;
	height:100%;
	position:absolute;
}

.History_line::before {
	left:2.7rem;
	top:1.25rem;
	border-left:.1rem solid #3C97D1;
}

.H_society::before {
	left:2.7rem;
	top:1.25rem;
	border-left:.1rem dashed #4A8B5B;
} */

.miyuki_wrap{
	width:53%;
	max-width:57rem;
	padding-left:5.5rem;
	position:relative;
	padding-bottom:9rem;
}
.H_miyuki {
	width: 100%;
	padding-bottom: 9rem;
}

.society_wrap {
	width:41%;
	max-width:43.5rem;
	position: relative;
}

.miyuki_wrap::before,
.society_wrap::before{
	content:"";
	display: block;
	width:.1rem;
	height:100%;
	position:absolute;
}

.miyuki_wrap::before{
	left: 2.7rem;
	top: 1.25rem;
	border-left: .1rem solid #3C97D1;
}

.society_wrap::before{
	left: 2.7rem;
	top: 1.2rem;
	border-left: .1rem dashed #4A8B5B;
}

.H_society {
	width:100%;
	padding-left:5.5rem;
	position:relative;
	padding-bottom:9rem;
}

.H_miyuki time,
.H_society time {
	font-family: var(--no);
	font-style: italic;
	font-weight:500;
	position:relative;
	line-height:1;
	display: block;
}

.H_miyuki time {
	font-size:4rem;
	color:#3C97D1;
	margin-bottom:2.5rem;
}

.H_society time {
	font-size:3rem;
	color:#4A8B5B;
	margin-bottom:1.5rem;
}

.H_miyuki time::before,
.H_society time::before {
	content:"";
	display: block;
	border-radius: 50%;
	position:absolute;
}

.H_miyuki time::before {
	width:3rem;
	height:3rem;
	background:#3C97D1;
	top:0.6rem;
	left:-4.2rem;
}

.H_society time::before {
	width:1.6rem;
	height:1.6rem;
	background:#4A8B5B;
	top:0.8rem;
	left:-3.5rem;
}

.H_miyuki h3 {
	font-size:2.4rem;
	font-weight:700;
	line-height:1.65;
	margin-bottom:1em;
}
.H_society p + h3{
	margin-top:1em;
}
.H_miyuki p strong{
	font-weight: 700;
}

.H_society h3 {
	font-size:2rem;
	font-weight:700;
	line-height:1.65;
	margin-bottom:0.75em;
}

.H_society p {
	/* font-size:1.4rem; */
	font-size: 1.6rem;
	letter-spacing: 0.01em;
}

.H_miyuki figure {
	margin-top:1.5rem;
}

.H_miyuki figure.img_small {
	max-width:32.5rem;
}

.kome {
	position:relative;
	padding-left:1.15em;
}

.kome::before {
	content:"※";
	display:block;
	width:1em;
	height:1em;
	position:absolute;
	left:0;
	top:0;
}

.history_button_wrap {
	display: flex;
	justify-content: center;
	margin:3rem auto 0;
}

.h_button {
	width: 100%;
	max-width: 28.5rem;
	margin:0 2rem;
}

.h_button button {
	background: var(--blackcolor);
	width: 100%;
	height: 4.8rem;
	border-radius: 2.4rem;
	font-size: 1.8rem;
	letter-spacing: .06em;
	font-weight: 700;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	box-shadow: 0 0 .6rem rgba(0,0,.6,.18);
	cursor: pointer;
	transition: var(--transition);
}

.h_button button::after {
	content: "";
	display: block;
	width: 1.8rem;
	height: 1.9rem;
	background-image: url(../images/common/icon_arrow-white-naked.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	right: 2rem;
	top: 50%;
	transform: translateY(-50%);
}

.h_button_before button::after {
	right: auto;
	left:2rem;
	transform: translateY(-50%) scale(-1,1);
}

.h_button button:hover {
	opacity:var(--opacity);
}

/*-------------------------------
	御幸建設グループの歩み
-------------------------------*/

.line1997{
	margin-top: -10rem;
}

.m1987-12-04 {
	padding-top:5.4rem;
	padding-bottom:29rem;
}

.m1990-12-20 {
	margin-top:-32rem;
	padding-bottom:35rem;
}

.m1992-4 {
	margin-top:-20rem;
	padding-bottom:12rem;
}

.m1995-9 {
	margin-top:-24rem;
}

.m1995-10 {
	margin-top:-5.5rem;
}

.m1997-9 {
	/* margin-top:-45rem; */
}

.m1999-3 {
	margin-top:-8rem;
}

.m2005-8{
	padding-top: 15rem;
}
.m2012-4{
	padding-top: 5rem;
}
.m2016-3{
	padding-top: 10rem;
}
.m2016-7-8{
	padding-top: 15rem;
}
.m2019-6-3{
	padding-top: 25rem;
}
.m2020-3{
	padding-top: 3rem;
}
.m2020-6{
	padding-top: 10rem;
}
.m2024-3-11{
	/*padding-top: 17rem;*/
}

/*-------------------------------
	社会経済の動き
-------------------------------*/

.s1986 {
	padding-top:12rem;
}

.s1989-12-2 {
	padding-bottom:19rem;
}

.s1991-1 {
	padding-bottom:21rem;
}

.s1991 {
	padding-bottom:10rem;
}

.s1992 {
	padding-bottom:43.5rem;
}

.s1995-1 {
	padding-bottom:30rem;
}

.s1995-9 {
	padding-bottom:46rem;
}

.s1997-4 {
	margin-top: -10rem;
	padding-bottom:40rem;
}

.s1998-10 {
	padding-bottom:56rem;
}

.s1999-5 {
	padding-bottom:49rem;
}

.s2001-9{
	padding-top: 35rem;
}
.s2002-9{
	padding-top: 110rem;
}
.s2003-12{
	padding-top: 70rem;
}
.s2005-11{
	padding-top: 55rem;
}
.s2007-6{
	padding-top: 5rem;
}
.s2012-7{
	padding-top: 10rem;
}
.s2014-10{
	padding-top: 205rem;
}
.s2015-4{
	padding-top: 5rem;
}
.s2015-6{
	padding-top: 145rem;
}
.s2015-10{
	padding-top: 10rem;
}
.s2016-4{
	padding-top: 7.5rem;
}
.s2016{
	padding-top: 7.5rem;
}
.s2016-10{
	padding-top: 17.5rem;
}
.s2017-11{
	padding-top: 152rem;
}
.s2018-6{
	padding-top: 100rem;
}
.s2019-10{
	padding-top: 40rem;
}
.s2021-7{
	padding-top: 50rem;
}
.s2022-4{
	padding-top: 30rem;
}
.s2023-5{
	padding-top: 40rem;
}
.s2023-8{
	padding-top: 36rem;
}
.s2024-1{
	/*padding-top: 5rem;*/
}
.s2025-4{
	padding-top: 147rem;
}

/*-------------------------------
	ver sp
-------------------------------*/

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

.Keyvisual {
	padding-bottom:13rem;
}

.Keyvisual__message{
	padding-top: 19.6rem;
}

.Keyvisual__message-title {
	margin-bottom:0;
	letter-spacing: 0.03em;
}

/*-------------------------------
	Select
-------------------------------*/

.Select .sec__inner {
	padding:0 2.2rem;
}

.Select_wrap {
	overflow-x:auto;
}

.Select_inner {
	width:84.5rem;
}

.Select_button span {
	font-size:2.6rem;
	padding:0.6em 0.5em;
}

.Select_wrap::-webkit-scrollbar {
	height:2.4rem;
}

.Select_wrap::-webkit-scrollbar-thumb {
	background:var(--maincolor);
	border-radius:2.5rem;
	border:0.5rem solid transparent;
	background-clip: padding-box;
}


/*-------------------------------
	History
-------------------------------*/

/*-------------------------------
	History top
-------------------------------*/

.History_top {
	padding:8rem 0 5.5rem;
}

.era {
	margin-bottom:7rem;
}

.era h2 {
	text-align: center;
}

.History_top .affe_wrap {
	padding:0 1.5rem;
}

.affe_miyuki,
.affe_society {
	font-size:2.8rem;
	padding:0.55em 0.5em;
}

.affe_miyuki {
	width:38rem;
	max-width:100%;
}

.affe_society {
	width:18.7rem;
	max-width:100%;
}

.affe_miyuki::after,
.affe_society::after {
	border-right: 1.3rem solid transparent;
	border-left: 1.3rem solid transparent;
	border-top: 1.4rem solid #fff;
	bottom:-1.4rem;
}

/*-------------------------------
	Histry block
-------------------------------*/

.History_block {
	padding-top:0;
	padding-bottom:10rem;
}

.History_line {
	padding:0 1.5rem;
}

.miyuki_wrap::before,
.society_wrap::before{
	display: none;
}

.History_line::before,
.History_line::after {
	content:"";
	display: block;
	width:.2rem;
	height:100%;
	position:absolute;
}

.H_society::before {
	display: none;
}

.History_line::before {
	left:1.5rem;
	top:2rem;
	border-left:.2rem solid #3C97D1;
}

.History_line::after {
	left:auto;
	right:1.5rem;
	top:2rem;
	border-left:.2rem dashed #4A8B5B;
}

.miyuki_wrap{
	width:100%;
	max-width:100%;
	padding-left:3.5rem;
	padding-right:3.5rem;
	position:relative;
	margin-top:0!important;
	padding-bottom:9rem!important;
}

.society_wrap {
	width:100%;
	max-width:100%;
}
.miyuki_wrap:empty{
	padding-bottom: 0 !important;
}

.H_miyuki{
	padding-bottom: 0;
}

.H_miyuki + .H_miyuki{
	padding-top: 8rem;
}

.H_society {
	width:100%;
	padding-left:8.5rem;
	padding-right:3.5rem;
	position:relative;
	padding-top:0!important;
	padding-bottom:8rem!important;
}

.H_miyuki time {
	font-size:7rem;
	margin-bottom:3.5rem;
}

.H_society time {
	font-size:5rem;
	text-align: right;
	margin-bottom:3.5rem;
}

.H_miyuki time::before {
	top:50%;
	transform:translateY(-50%);
	left:-4.9rem;
}

.H_society time::before {
	top:50%;
	transform:translateY(-50%);
	left:auto;
	right:-4.2rem;
}

.H_miyuki h3 {
	font-size:3.3rem;
	margin-bottom:1em;
}

.H_society h3 {
	font-size:3rem;
	margin-bottom:1em;
	text-align: right;
}

.H_society p {
	font-size:2.8rem;
	letter-spacing: 0.01em;
}

.H_miyuki figure {
	margin-top:3.5rem;
}

.history_button_wrap {
	display: block;
	margin:10rem auto 0;
}

.h_button {
	max-width: 51rem;
	margin:0 auto;
}

.h_button:not(:last-of-type) {
	margin-bottom:6rem;
}

.h_button button {
	height: 8.8rem;
	border-radius: 4.4rem;
	font-size: 3rem;
}

.h_button button::after {
	width: 2.9rem;
	height: 3rem;
	right: 4.4rem;
}

.h_button_before button::after {
	right: auto;
	left:4.4rem;
}

.line1997{
	margin-top: 0;
}
.m1987-12-04{
	padding-bottom: 0;
}
.m1990-12-20{
	margin-top: 0;
	padding-bottom: 0;
}
.m1992-4{
	margin-top: 0;
	padding-bottom: 0;
}
.m1995-9{
	margin-top: 0;
}
.m1995-10{
	margin-top: 0;
}
.m1997-9{
	margin-top: 0;
}
.m1999-3{
	margin-top: 0;
}
.m2005-8{
	padding-top: 0;
}
.m2012-4{
	padding-top: 0;
}
.m2016-3{
	padding-top: 0;
}
.m2016-7-8{
	padding-top: 0;
}
.m2019-6-3{
	padding-top: 0;
}
.m2020-3{
	padding-top: 0;
}
.m2020-6{
	padding-top: auto;
}
.m2024-3-11{
	padding-top: auto;
}

.s1997-4{
	margin-top: 0;
}

/*-------------------------------
	御幸建設グループの歩み
-------------------------------*/
/* 共通数値で important設定 */

/*-------------------------------
	社会経済の動き
-------------------------------*/
/* 共通数値で important設定 */



} /* end 768px */