@charset "UTF-8";


body .ov_list_inner li > a > span.fl_b {
    display: flex;
}

.fl_b small,
.fl_b data  {

    display: block;
}

.fl_b small:nth-child(1),
.fl_b data:nth-child(1) {
white-space: nowrap;
margin-right: 15px;

}








.dg_topTitle01 {

    justify-content: center;
    flex-wrap: wrap;

}


@media screen and (max-width: 989px) {


   body .main-content .dg_topTitle01.mod-frame_inner {

        width:calc(100% - 40px);

    }
    

    .pc_tittle { 
        padding-left: 15px;

    }



}




@media screen and (max-width: 937px) {


    body .ov_list_inner li {

        margin: 0 auto;
    }

    .pc_tittle {

        display: table;
        /*margin:  0 auto;*/

    }

}



.pc_tittle h2 {
white-space: nowrap;
font-size: clamp(1.8rem, -0.68rem + 5.17vw, 3.2rem);
font-weight: bold;
font-feature-settings: "palt";
margin-bottom: -10px;
margin-top: 5px;
}








body .top_text {

    width: auto;
}

.pointer_n {
	pointer-events: none;

} 

.top_back {
/*background: url(/csr/fr_img/fr2021_img01.png)center center !important;*/
background: none !important;
background-repeat: no-repeat;

}

body .ov_list_inner li {

opacity: 1;
background: none;
border-bottom: 1px solid;
width: 95%;
position: relative;
height: auto;
padding: 18px 0;
box-sizing: border-box;
line-height: 1.3;

}

.ov_list_inner li:nth-child(1) {
/*
padding-bottom: 20px;
*/
}


.ov_list_inner li a {

font-family: "Montserrat";
text-decoration: none;
display: flex;
/*color: #fff;*/
font-size: 1.6rem;
}


.sp_manu.next,
.ov_list_inner li.next {
	pointer-events: none;
}

.sp_manu_cov {

    width: calc(100% - 15px);
	margin: 0 auto;

}



.sp_manu.next small,
.sp_manu.next label,
.ov_list_inner li.next label{
	font-size: 1.4rem;
    /* */display: block; 
    font-feature-settings: "palt";

}

.sp_manu.next small,
.sp_manu.next label {

	margin-bottom: 5px;
}


.ov_list_inner li a span:nth-child(1) {

white-space: nowrap;

}


.ov_list_inner li a span {
height: auto;
margin: 0 10px 0 0;
font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;

font-feature-settings: "palt";
}

.ov_list_inner li a span:nth-child(2) {

	color: #333;

}


.ov_list_inner li a span:nth-child(2):hover {

	color: #0087fc;
	transition: all .3s;

}

.tx_just {

	text-align: justify;
}

.fr_main h3 {

font-size: 2.6em;
display: flex;
justify-content: center;
align-items: baseline;
}
.fr_main h3 span {

padding: 0 5px;
display: block;
text-align: left;
}

.fr_main h3 span:nth-child(1) {

	color: #3464B5;
	
font-family: "Montserrat";
}

.fr_main h3 span:nth-child(n+2) {
/*
text-align: center;*/
}


div[class^="unc_0"]{ 
position: absolute; 
height: 50px; 
top: 486px;
z-index: -999999;
background: rgba(255, 255, 255, 0);


}


@media screen and (max-width: 1289px) {


div#floating-menu {
	/*display: none;*/
	opacity: 0;
	z-index: -99999999 !important;
	transition:none !important;

}



}
@media screen and (max-width: 767px) {


div[class^="unc_0"]{ 
top: 0px !important;


}

.sp_manu span {

	font-size: 0.8em;
}

.sp_manu span:nth-child(1) {

	color: #3464B5;


}

.dg_tt2021 {
	padding-top: 15px;
position: relative;/*

	color: #fff !important;*/
}

.dg_tt2021 h2 {
/* 
	color:#fff !important;*/
	font-size: 1.25em;
	font-feature-settings: "palt";
	margin-top: 5px;

	
}

.dg_sptop_01 {
	width: 80%;
position: relative;
height: auto;
}


}


.dg_topTitle01 {

color: #333;
}

.ov_list {
position: relative;
top:0;
height: auto;
}
.ov_list_inner {

height: auto ;

}

.dg_tt2021 {
font-size: 1.8em;
/*text-shadow: 1px 1px 2px rgb(0 0 0 / 50%);*/
color: #132874;

}
.dg_tt2021 span:nth-child(1) {

margin: 0 10px 0 0;
font-weight: bold;

}

.dg_title_left h2 {
/*color: #333;*/
margin-top: 15px;
/*text-shadow: 1px 1px 2px rgb(0 0 0 / 50%);*/
white-space: nowrap;
font-size: clamp(1.8rem, 1.436rem + 1.82vw, 2.8rem);
font-weight: bold;
font-feature-settings: "palt";
}


#fr_01 {

padding-top: 0px ;	

}

.dg_title_right,
.dg_title_left {
flex: 0 0 50% ;
width: 100%;

}


#fr_main_02ft,
#fr_main_03ft {


position: absolute;
bottom: 0;
height: 80px;

}


.text_while {

white-space: nowrap;
}


.sp_main_text span:nth-child(n + 2) {

	margin-top: 20px;

}




/*フローティング関連*/





.nav_hide {
transform: translateY(-140px);
}

#nav01 {
-webkit-transition: all .3s; 
  transition: all .3s;

  position: fixed;
  width: 100%;
  margin: 0;
  padding: 0;
  left: 0;
  z-index: 99;
  
}

.sp_nav p:nth-child(1) a {

/* line-height: 2.8;*/

}


.sp_nav p:nth-child(1) .Lifefork::before {
top:auto;
}


.on_tb {

display: none ;
}

@media screen and (min-width: 768px) and (max-width: 1199px){


body .on_tb {

	display: block !important;
}






body .Lifefork::before {
top: 25%;
}

}



@media screen and (max-width: 767px){


body .on_tb {

display: none !important;
}
.sp_font {
font-size: 1rem;
}

body .afl_r h2 {
font-size: 1.2rem;

}

body .Lifefork::before {
top: 25%;
}

body .sp_nav p {

/*overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;*/
}

body .sp_nav p {
flex: 0 0 50%;
margin-top: 0;
width: 50%;
}
body .sp_nav p span {

display: block;
text-align: center;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}

body .sp_nav {
flex-wrap: wrap;
align-items: center;
}


body .sp_nav a.button {
height: auto !important;
padding: 10px 0;
}

}

body #nav01 {
top:45px;

}
.sp_nav {
display: flex;
justify-content: space-evenly;
width: 100%;
margin: 0;
padding: 0;
top: 50px;
left: 0;
z-index: 9;
flex-wrap: wrap;
}


.sp_nav p {
flex: 0 0 25%;
margin-top: 0;
}

body .sp_nav a {
width: auto;
font-size: 10px ;
line-height: 1.6;
/**/ padding-top: 5px; 
height: 40px;
}


body .sp_nav a.button {

background: #3073e1;

border: 2px solid #275ab0;
text-shadow:0 -1px 1px #FFF;
} 


body .sp_nav a.button:hover {

color: #fff;
}

.opacity02 {
opacity: 0 ;
}


.nav01 .sp_nav .Lifefork {

justify-content: center;
align-items: flex-start;

}

.sp_nav a.button:hover {

width: auto;
opacity: .55;
}



/*PCフローティング関連*/




div#floating-menu {
	position: absolute;
	width: 270px;
	top: 150px;
	right: 0.5%;
	border: 1px solid #000000;
	border-radius: 10px; /* 角を丸める */
	/*background: rgba(255, 255, 255, 0.5);  背景色を白に指定して不透明度を0.5に指定 */
/*background:beige;*/
/* 影を入れる。指定のピクセルは前から順に横方向のズレ、縦方向のズレ、ぼかし具合、 */
	/* 影の色を指定している。 */
	-moz-box-shadow: 0px 0px 7px #454545; /* Firefox用 */
	-webkit-box-shadow: 0px 0px 7px #454545; /* Google ChromeやSafari用 */
	box-shadow: 0px 0px 7px #454545; /* CSS3対応ブラウザ用 */

	z-index: 9999;
	padding:10px;
	transition:opacity 3s,transform 0.1s;
}
div#floating-menu p {

		margin-top: 15px;
}

div#floating-menu p:nth-child(1) {

margin-top: 0px;
}

.hover_img {
	opacity:1;
}

.hover_img:hover {
	opacity:0.5;


}


.example-button {
	display: inline-block;
	width: 270px;
	height: auto;
	font-size: 12px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
	line-height: 1.6;
	outline: none;
	border-radius: 8px;
	padding: 15px 0 ;

	}


.button4 {
background-color: #275ab0;


}

.button4:hover {
background-color: #59b1eb;
}

.button4::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.button4::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.Lifefork {
	color: #fff;
	letter-spacing:0.05em;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.Lifefork span {

	display: block;
	padding: 0 5px;
	box-sizing: border-box;
	text-align: justify;
}
.transition {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .5s;
	transition: all .5s;

}

.fork {
	border-bottom:1px solid;

}
.op01 {

	opacity: 0;

}
