@charset "UTF-8";
/* CSS Document */


/**************************基本**************************/
.m0{ margin:0 !important; }
.p0{ padding:0 !important; }
.p3{ padding:3px !important; }

.mt0{ margin-top:0 !important; }
.mt05{ margin-top:5px !important; }
.mt10{ margin-top:10px !important; }
.mt15{ margin-top:15px !important; }
.mt20{ margin-top:20px !important; }
.mt25{ margin-top:25px !important; }
.mt30{ margin-top:30px !important; }
.mt35{ margin-top:35px !important; }
.mt40{ margin-top:40px !important; }
.mt45{ margin-top:45px !important; }
.mt50{ margin-top:50px !important; }
.mt55{ margin-top:55px !important; }
.mt60{ margin-top:60px !important; }
.mt70{ margin-top:70px !important; }
.mt80{ margin-top:80px !important; }
.mt90{ margin-top:90px !important; }
.mt100{ margin-top:100px !important; }
.mt120{ margin-top:120px !important; }
.mt150{ margin-top:150px !important; }

.mb0{ margin-bottom:0 !important; }
.mb05{ margin-bottom:5px !important; }
.mb10{ margin-bottom:10px !important; }
.mb15{ margin-bottom:15px !important; }
.mb20{ margin-bottom:20px !important; }
.mb25{ margin-bottom:25px !important; }
.mb30{ margin-bottom:30px !important; }
.mb35{ margin-bottom:35px !important; }
.mb40{ margin-bottom:40px !important; }
.mb45{ margin-bottom:45px !important; }
.mb50{ margin-bottom:50px !important; }
.mb60{ margin-bottom:60px !important; }
.mb70{ margin-bottom:70px !important; }
.mb80{ margin-bottom:80px !important; }
.mb90{ margin-bottom:90px !important; }
.mb100{ margin-bottom:100px !important; }
.mb120{ margin-bottom:120px !important; }
.mb200{ margin-bottom:200px !important; }

.ml0{ margin-left:0 !important; }
.ml05{ margin-left:5px !important; }
.ml10{ margin-left:10px !important; }
.ml15{ margin-left:15px !important; }
.ml20{ margin-left:20px !important; }
.ml25{ margin-left:25px !important; }
.ml30{ margin-left:30px !important; }
.ml35{ margin-left:35px !important; }
.ml40{ margin-left:40px !important; }
.ml45{ margin-left:45px !important; }
.ml50{ margin-left:50px !important; }
.ml60{ margin-left:60px !important; }
.ml70{ margin-left:70px !important; }
.ml80{ margin-left:80px !important; }
.ml90{ margin-left:90px !important; }
.ml100{ margin-left:100px !important; }
.ml1em{margin-left: 1em!important;}

.mr0{ margin-right:0 !important; }
.mr05{ margin-right:5px !important; }
.mr10{ margin-right:10px !important; }
.mr15{ margin-right:15px !important; }
.mr20{ margin-right:20px !important; }
.mr25{ margin-right:25px !important; }
.mr30{ margin-right:30px !important; }
.mr35{ margin-right:35px !important; }
.mr40{ margin-right:40px !important; }
.mr45{ margin-right:45px !important; }
.mr50{ margin-right:50px !important; }
.mr60{ margin-right:60px !important; }
.mr70{ margin-right:70px !important; }
.mr80{ margin-right:80px !important; }
.mr90{ margin-right:90px !important; }
.mr100{ margin-right:100px !important; }


.pt0{ padding-top:0 !important; }
.pt05{ padding-top:5px !important; }
.pt10{ padding-top:10px !important; }
.pt15{ padding-top:15px !important; }
.pt20{ padding-top:20px !important; }
.pt25{ padding-top:25px !important; }
.pt30{ padding-top:30px !important; }
.pt35{ padding-top:35px !important; }
.pt40{ padding-top:40px !important; }
.pt45{ padding-top:45px !important; }
.pt50{ padding-top:50px !important; }
.pt60{ padding-top:60px !important; }
.pt70{ padding-top:70px !important; }
.pt80{ padding-top:80px !important; }
.pt90{ padding-top:90px !important; }
.pt100{ padding-top:100px !important; }

.pb05{ padding-bottom:5px !important; }
.pb10{ padding-bottom:10px !important; }
.pb15{ padding-bottom:15px !important; }
.pb20{ padding-bottom:20px !important; }
.pb25{ padding-bottom:25px !important; }
.pb30{ padding-bottom:30px !important; }
.pb35{ padding-bottom:35px !important; }
.pb40{ padding-bottom:40px !important; }
.pb45{ padding-bottom:45px !important; }
.pb50{ padding-bottom:50px !important; }
.pb60{ padding-bottom:60px !important; }
.pb70{ padding-bottom:70px !important; }
.pb80{ padding-bottom:80px !important; }
.pb90{ padding-bottom:90px !important; }
.pb100{ padding-bottom:100px !important; }

.pl05{ padding-left:5px !important; }
.pl10{ padding-left:10px !important; }
.pl15{ padding-left:15px !important; }
.pl20{ padding-left:20px !important; }
.pl25{ padding-left:25px !important; }
.pl30{ padding-left:30px !important; }
.pl35{ padding-left:35px !important; }
.pl40{ padding-left:40px !important; }
.pl45{ padding-left:45px !important; }
.pl50{ padding-left:50px !important; }
.pl60{ padding-left:60px !important; }
.pl70{ padding-left:70px !important; }
.pl80{ padding-left:80px !important; }
.pl90{ padding-left:90px !important; }
.pl100{ padding-left:100px !important; }

.pr05{ padding-right:5px !important; }
.pr10{ padding-right:10px !important; }
.pr15{ padding-right:15px !important; }
.pr20{ padding-right:20px !important; }
.pr25{ padding-right:25px !important; }
.pr30{ padding-right:30px !important; }
.pr35{ padding-right:35px !important; }
.pr40{ padding-right:40px !important; }
.pr45{ padding-right:45px !important; }
.pr50{ padding-right:50px !important; }
.pr60{ padding-right:60px !important; }
.pr70{ padding-right:70px !important; }
.pr80{ padding-right:80px !important; }
.pr90{ padding-right:90px !important; }
.pr100{ padding-right:100px !important; }



img{

vertical-align: bottom;

}







/*補足用*/

/*ul*/
ul.hosoku_1moji li {
   text-indent : -1em;
   margin-left : 1em;

}

/*ul*/
ul.hosoku_2moji li {
   text-indent : -2em;
   margin-left : 2em;

}






ul.ul-li-finger {
  list-style: none; 
  padding-left: 2.5em;

}

ul.ul-li-finger li{
  margin-bottom: 0.25em;
}

ul.ul-li-finger li:last-child{
  margin-bottom: 0em;
}



/*デフォルトがブルー*/
ul.ul-li-finger li::before {
font-family: FontAwesome;
  content: "\f0a4";  
  font-size: 1em;
  color: #0683BA; 
  font-weight: bold; 
  display: inline-block; 
  width: 1.4em; 
  margin-left: -1.5em; 
}

/*色を変更*/
ul.ul-li-finger.ul-li-pink li::before {
font-family: FontAwesome;
  color: #FA3387; 
}


.mincho{
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}



.t_center{ text-align:center!important;}
.t_right{ text-align:right!important;}
.t_left{ text-align:left!important;} 
.v_top{ vertical-align:top;}
.v_middle{ vertical-align:middle;}
.v_bottom{ vertical-align:bottom;}
.v_txt_bot{ vertical-align:text-bottom;}
.float_r{ float:right;}
.float_l{ float:left;}

.va_-3px{ vertical-align:-3px;}
.va_-5px{ vertical-align:-5px;}
.va_2px{ vertical-align:2px;}
.va_10px{vertical-align: 10px;}
.va_mid{vertical-align: middle;}

.fontb{font-weight:bold;}
.fontn{font-weight:normal;}

.txt50p{font-size:50% !important;}
.txt60p{font-size:60% !important;}
.txt70p{font-size:70% !important;}
.txt80p{font-size:80% !important}
.txt85p{font-size:85% !important;}
.txt90p{font-size:90% !important;}
.txt95p{font-size:95% !important;}
.txt100p{font-size:100% !important;}
.txt105p{font-size:105% !important;}
.txt110p{font-size:110% !important;}
.txt120p{font-size:120% !important;}
.txt130p{font-size:130% !important;}
.txt140p{font-size:140% !important;}
.txt150p{font-size:150% !important;}
.txt160p{font-size:160% !important;}
.txt170p{font-size:170% !important;}
.txt180p{font-size:180% !important;}
.txt190p{font-size:190% !important;}
.txt200p{font-size:200% !important;}
.txt240p{font-size:240% !important;}
.txt280p{font-size:280% !important;}

.txt13px{font-size:1.3rem;}
.txt14px{font-size:1.4rem;}
.txt16px{font-size:1.6rem;}
.txt18px{font-size:1.8rem;}
.txt21px{font-size:2.1rem;}
.txt24px{font-size:2.4rem;}
.txt26px{font-size:2.6rem;}
.txt30px{font-size:3.0rem;}
.txt40px{font-size:4.0rem;}
.txt50px{font-size:5.0rem;}
.txt64px{font-size:6.4rem;}

.txt-red{color:#ee0000;}
.txt-pink{color:#E60050;}
.txt-pink2{color:#F500A8;}
.txt-000{color:#000;}
.txt-333{color:#333;}
.txt-555{color:#555;}
.txt-888{color:#888;}
.txt-aaa{color:#aaa!important;}
.txt-ccc{color:#ccc!important;}
.txt-fff{color:#fff;}
.txt-right-green{color:#b9f084;}
.txt-green{color: #0B941F;}
.txt-green2{color: #009E96;}
.txt-green3{color: #4DA13C;}
.txt-blue{color: #1B1C80;}
.txt-blue2{color: #023894;}
.txt-blue3{color: #043B95;}
.txt-blue4{color: #08287F;;}
.txt-gold{color: #6F5B00;}
.txt-purple{color: #B423B8;}
.txt-orange{color:#FF6600}
.txt-inherit{color:inherit}

.font-Georgia{font-family:Georgia, "Times New Roman", Times, serif;}
.font-Anto{
	font-family: 'Anton', sans-serif;
}

.w48p{
	width:48%;}
.w24p{
	width:24%;}

.w100p{
	width: 100%}
.w60p{
	width:60%;}

.w98p{
	width:98%;
}
.w95p{
	width:95%;
}
.w90p{
	width:90%;
}



	.img-w400{
	 max-width: 400px;
	 width: 100%;
}


	.img-w500{
	 max-width: 500px;
	 width: 100%;
}

	.img-w600{
	 max-width: 600px;
	 width: 100%;
}


	.img-w750{
	 max-width: 750px;
	 width: 100%;
}


	.img-w100{
	 max-width: 100px;
	 width: 100%;
}

	.img-w60{
	 max-width: 60px;
	 width: 100%;
}



	.img-w40{
	 max-width: 40px;
	 width: 100%;
}






	
.fw500{
	font-weight:500;}

.num_list{
	margin-left:1.5em;}
.num_list li{
	margin-bottom:.8em;}
.num_list li:last-child{
	margin-bottom:0;}

.lh0{line-height:0;}
.lh10{line-height:10px;}
.lh11{line-height:11px;}
.lh12{line-height:12px;}
.lh13{line-height:13px;}
.lh14{line-height:14px;}
.lh15{line-height:15px;}
.lh16{line-height:16px;}
.lh17{line-height:17px;}
.lh18{line-height:18px;}
.lh19{line-height:19px;}
.lh20{line-height:20px;}
.lh21{line-height:21px;}
.lh22{line-height:22px;}
.lh23{line-height:23px;}
.lh24{line-height:24px;}
.lh25{line-height:25px;}
.lh26{line-height:26px;}
.lh27{line-height:27px;}
.lh28{line-height:28px;}
.lh29{line-height:29px;}
.lh30{line-height:30px;}
.lh100p{line-height: 1;}
.lh110p{line-height: 1.1;}
.lh120p{line-height: 1.2;}
.lh140p{line-height: 1.4;}
.lh160p{line-height: 1.6;}
.lh180p{line-height: 1.8;}
.lh200p{line-height: 2;}
.lh220p{line-height: 2.2;}


.clearfix:after {
    clear: both;
    content: "."; 
    display: block;
    height: 0;
    visibility: hidden;
}
.clearfix {
}
a.mouseover img { transition: .3s;}
a.mouseover:hover img { filter: alpha(opacity=70); -moz-opacity:0.70; opacity:0.70;}


.pic-round{
	border-radius:10px;}
.pic-circle{
	border-radius:10000px;}
.pic-border{
	border:1px solid #ccc;}
	
.sp_only{}
.sp_none{}
.pc_only{}
.pc_none{}


@media (min-width: 640px) {
    .xs_only{
    display: none!important;
    }
}
@media (max-width: 1600px) {
    .xl_only{
    display: none!important;
    }
}


 ol.ol-number{ list-style:decimal}
 ol.ol-number li{  margin:0 0 0 1.5em  }





.inline_block{display:inline-block;}

.txt-torikesisen{
	text-decoration:line-through;}
	
.m-width-90p{
	max-width:90%;}
.m-width-100p{
	max-width:100%;}

.posi_r{
	position:relative;}
	
.pic_border{border:1px solid #ccc;}

.pdf_link:before{
	content:"\f1c1";
	font-family:FontAwesome;
	margin-right:5px;
	color:#D14244;
	text-decoration:none;
	display: inline-block;
}


.external_link:after{
	content:"\f08e";
	font-family:FontAwesome;
	margin-left:5px;
	color:#D14244;
	text-decoration:none;
	display: inline-block;
}

.uk-text-normal{
	font-weight: normal!important;
}


.word_link:before {
	content:"\f1c2";
	font-family:FontAwesome;
	margin-right:5px;
	color:#E60012;
	text-decoration:none;
	display: inline-block;
}
.excel_link:before {
	content:"\f1c3";
	font-family:FontAwesome;
	margin-right:5px;
	color:#4C7B3B;
	text-decoration:none;
	display: inline-block;
}




/*関連リンク
テキストリンク*/
.kanren_link li {

margin-bottom: 0.4em;

}
				.kanren_link li a{
				/*color: #333;*/
				padding: 0.2em 0;
				text-decoration: none;
				transition: .3s;
				display: inline-block;
				}


				.kanren_link li a:hover{
				color: #E60012;
				/*
				background: #EBEBEB;
				border-radius: 100%;
				*/
				transition: .3s;

				}

				/*ローカルリンク*/
				 a.kanren_link_local:after{
				content: "\f105";
				margin-left: 10px;
				font-family: FontAwesome;
				color: #E60012;
				text-decoration: none;
				transition: .3s;
				}

				/*外部リンク
					_BLANK自動付与 JQUERY*/
				a.kanren_link_window:after{
				content: "\f08e";
				margin-left: 10px;
				font-family: FontAwesome;
				color: #E60012;
				text-decoration: none;
				transition: .3s;
				}


				/*PDF*/
				a.kanren_link_pdf:before{
				content: "\f1c1";
				margin-right: 5px;
				font-family: FontAwesome;
				color: #E60012;
				text-decoration: none;
				transition: .3s;
				}







/*imgボタン*/

a img.bnt-hover-shadow{

    transition: .3s;
    transform: scale(1);
}


a img.bnt-hover-shadow:hover{
    		 box-shadow: 0px 0px 20px rgba(0, 0, 0, .35);
        transition: .3s;
        transform: scale(1.04);
}




/*ボタン*/
.raised{
  background-color: #26a69b;/*背景色*/
  color: #FFF;/*文字色*/
  font-size: 1em;/*文字サイズ*/
  line-height: 1.3em;
  text-decoration: none;
  letter-spacing: 0.05em;/*字間*/
  padding: 0.2em 1em;/*ボタン内の余白*/
  border-radius: 3px;/*角の丸み*/
    cursor: pointer;
  box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);/*影*/
  -webkit-tap-highlight-color: transparent;
  transition: .3s ease-out;/*変化を緩やかに*/
  height: 100%;
  box-sizing: border-box;
  
   display: flex;
  justify-content: center;
  align-items: center;

}

.raised:hover{
      background-color: #0F978B;/*背景色*/
    box-shadow: 0 3px 3px 0 rgba(0,0,0,0.40), 0 1px 7px 0 rgba(0,0,0,0.12), 0 3px 1px -1px rgba(0,0,0,0.2);/*浮き上がるように*/
}





.ripple {
  position: relative;
  overflow: hidden;
}

.ripple .rp-effect {/*エフェクト*/
  position: absolute;
  border-radius: 50%;
  opacity: 0.35;/*波紋の濃さ*/
  transform: scale(0);
  background: #FFF;/*波紋色*/
  animation: ripple 700ms;
  pointer-events: none; 
}

@-webkit-keyframes ripple {
  to {
    opacity: 0;
    transform: scale(2.0);
  }
}

@keyframes ripple {
  to {
    opacity: 0;
    transform: scale(2.0);
  }
}










/*横罫*/
.hr-dott{ height: 1px;
	border: none;
	border-top: 1px dashed #ccc;
	
}



.common_list{
    margin-left: 1.5em;
    }
.common_list li{
	line-height:1.4;
	margin-bottom:0.5em;
	text-indent: -1em;
	}
.common_list li:before{
    content: "・";
    margin-right: 0;
    color: #999;
    font-size: 2em;
    line-height: 0;
    vertical-align: -0.2em;
    width: .5em;
    display: inline-block;
    }
.common_list li:last-child{
	margin-bottom:0;}

.common_list_pdf_icon li:before{
	content:"\f1c1";
	color:#e10004;}
	
.common_list2{}
.common_list2 li{
	line-height:1.4;
	margin-bottom:15px;}
.common_list2 li:after{
	content:"\f105";
	font-family:FontAwesome;
	margin-left:.5em;
	color:#E60012;}
.common_list2 li:last-child{
	margin-bottom:0;}

.common_list3{
    margin-left: 0;
    }
.common_list3 li{
    position: relative;
    padding-left: .7em;
    margin-left: 0;
    margin-bottom: .9em;
    border-bottom: 1px dashed #f8adac;
	}
.common_list3 li:before{
    font-family: FontAwesome;
    content: "\f0da";
    color: #f98084;
    display: inline-block;
    position: absolute;
    left: 0;
    }
.common_list3 li:last-child{
	margin-bottom:0;}

.common_box{
	background: #f1f1f1;
	padding: 20px;
}
.common_box2 {
    background: #f5f8ff;
    padding: 20px;
}
.common_box3 {
    padding: 20px;
    border: 4px solid #ddd;
}



.common_box6{
	background: #E6F3F7;
	padding: 20px;
}





.indent0{
	text-indent: 0;
}

	
.caution{
	text-indent:-1em;
	padding-left:1em;}
.caution1_4em{
	text-indent:-1.4em;
	padding-left:1.4em;}
.caution1_5em{
	text-indent:-1.5em;
	padding-left:1.5em;}
.caution2em{
	text-indent:-2em;
	padding-left:2em;}
.caution2_5em{
	text-indent:-2.5em;
	padding-left:2.5em;}
.caution3em{
	text-indent:-3em;
	padding-left:3em;}
.caution6em{
	padding-left:6em;
	position:relative;}
.caution6em span{
	position:absolute;
	display:block;
	left:0;
	top:0;}
	
.flex{
	display: flex;
    display: -ms-flexbox;}
.flex_sb{
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;}
.flex_wrap{
	flex-wrap: wrap;}
.flex_reverse{
	flex-direction:row-reverse;}	
	
.sp_link_none a,
.fax_num a,
a.link_txt_normal{
	color:inherit;
	text-decoration:none;}
.fax_num a{
	pointer-events: none;}


.tel_num{
    color: inherit;
}

.movie_box{
    position: relative;
    width: 100%;
    border: 1px solid #ddd;
}
.movie_box:before {
    content:"";
    display: block;
    padding-top: 56.25%; 
}
.movie_box iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.uk-hr{
	opacity: .5;
}

	
/*----------------------------------*/
html{
    font-size: 62.5%;
}

body{
    position: relative;
    padding-bottom: 0;
    margin:0 auto;
font-size:1.6rem;/* 16px*/
line-height:1.7;
color:#222;
	font-family: YuGothic,YuGothicM,"游ゴシック Medium","Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-print-color-adjust: exact;
	}
*{
    box-sizing: border-box;
	}
/* IE8〜11はメイリオ */
@media screen\0 {
  body {
    font-family: 'Segoe UI', /* Windowsの欧文 */
                 Meiryo,     /* メイリオ */
                 sans-serif;
  }
}

.base_width{
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}
.base_width_xs{
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}
.base_width_s{
    max-width: 1026px;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}
.base_width_l{
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    width: 90%;
}

	
/*----------------------------------*/
body{
	padding-top: 100px;
}

header#header{
	z-index: 1005;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	border-bottom: rgba(0,0,0,.1) solid 1px;
}

header#header:after{
	content: "";
	width: 100%;height: 100%;
	background: linear-gradient(0deg, rgba(0,0,0,0) 10%, rgba(0,0,0,0.4) 70%);
	position: absolute;
	left: 0;top: 0;
}
header#header:before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	top: 0;
	height: 100vh;
	display: block;
	background: #000;
	pointer-events: none;
	opacity: 0;
	transition: .3s;
}
header#header.gnav_active:before{
	opacity: .75;
}
.headroom--not-top  header#header{
}

.header_logo_h1{
	line-height: 0;
	display: flex;
	align-items: center;
    padding: 0 25px 0 25px;
}
.header_logo_h1 img{
	width: 245px;
}

.header_height{
	height: 100px;
	transition: .3s;
}
.headroom--not-top .header_height{
	height: 50px;
}

.header_flex{
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 2;
	background: #fff;
	border-bottom: 1px solid #ddd;
}

.header_logo_link{
	display: block;
	transition: .3s;
}
.header_logo_link:hover{
	opacity: .6;
}

.header_right_icon{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	text-decoration: none;
}

.header_right_icon_flex{
	display: flex;
}

.header_right_icon_01,
.header_right_icon_02{
	border-left: 1px solid #ddd;
}
.header_right_icon_01:hover,
.header_language_open_body.active .header_right_icon_01,
.header_right_icon_02:hover{
	background: #eef;
}
.header_right_icon_03:hover{
	background: #5557ff;
}
.header_right_icon_01 img,
.header_right_icon_02 img{
}
.header_right_icon_01:hover img,
.header_language_open_body.active .header_right_icon_01 img,
.header_right_icon_02:hover img{
    filter: invert(8%) sepia(99%) saturate(7044%) hue-rotate(235deg) brightness(100%) contrast(145%)!important;
}
.header_right_icon_03,
.header_right_icon_04{
	background: #1B1C80;
}
.header_right_icon_04{
	padding-top: 5px;
}

.header_gnav_ul{
	display: flex;
	align-items: center;
	justify-content: center;
}

.header_gnav_ul a{
	color: inherit;
	font-weight: bold;
	display: flex;
	position: relative;
	align-items: center;
	padding: 0 2px;
	text-decoration: none;
}
.header_gnav_ul a:after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: #fff;
	transition: .3s;
}
.header_gnav_ul a:hover::after,
.header_gnav_ul .header_gnav_li.active a::after{
	background: #999;
}
body#product .header_gnav_ul .header_gnav_li.header_gnav_li_product a::after,
body#about .header_gnav_ul .header_gnav_li.header_gnav_li_about a::after,
body#ir .header_gnav_ul .header_gnav_li.header_gnav_li_ir a::after,
body#recruit .header_gnav_ul .header_gnav_li.header_gnav_li_recruit a::after,
body#sustainability .header_gnav_ul .header_gnav_li.header_gnav_li_sustainability a::after,
body#catalog .header_gnav_ul .header_gnav_li.header_gnav_li_catalog a::after,
body#contact .header_gnav_ul .header_gnav_li.header_gnav_li_contact a::after{
	background: #1B1C80;
}
.header_gnav_ul>li:nth-child(n+2){
	margin-left: 40px;
}

.header_gnav_slide_content{
	background: #fff;
	padding: 40px 0 0;
	display: none;
	position: absolute;
	left: 0;
	width: 100%;
	top: 0;
}
.header_gnav_slide_content:before{
}

.header_gnav_slide_content_list{
	display: flex;flex-wrap: wrap;
	margin-top: -30px;margin-left: -40px;
}
.header_gnav_slide_content_list > li{
	width: 25%;
	padding-left: 40px;
	margin-top: 30px;
}


.header_gnav_slide_content_list > li a{
	margin-bottom: 0;
}



.header_gnav_slide_content_close_btn ,
.subpage_header_nav_close_btn{
    box-shadow: 0 10px 10px rgb(0 0 0 / 10%);
    font-size: 1.1em;
    font-weight: bold;
    margin-top: 100px;
    cursor: pointer;
    color: #fff;
    text-align: center;
    padding: 10px 5px;
    text-shadow: 0 0 10px rgb(0 0 0 / 20%);
    background: #3E4FA1;transition: .3s;
	position: relative;
}
.subpage_header_nav_close_btn{
	margin-top: 0;
}
.header_gnav_slide_content_close_btn:hover,
.subpage_header_nav_close_btn:hover{
    background: #2266EF;
}
.header_gnav_slide_content_close_btn:before,
.subpage_header_nav_close_btn:before{
    content: "×";
    font-size: 1.3em;
    vertical-align: -3px;
    margin-right: 0.3em;
}
.subpage_header_nav_black_bg{
    content: "";
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 6000px;
	background: #000;
	transition: .3s;
	opacity: 0;
	pointer-events: none;
}
.subpage_header_nav_active .subpage_header_nav_black_bg{
	opacity: .75;
	pointer-events:inherit;
}

.header_gnav_slide_content_body{
	position: absolute;
	left: 0;
	top: calc(100% + 1px);
	width: 100%;
}

.header_gnav_slide_content_title{
	font-size: 2em;
	margin-bottom: 25px;
}
.header_gnav_slide_content_title a{
	text-decoration: none;
	color: inherit;
}
.header_gnav_slide_content_title a:hover{
	text-decoration: underline;
}

.gnav_img_box{
	position: relative;
	border: 1px solid #ddd;
	text-align: center;
}
.gnav_img_box:after{
	position: absolute;
    text-decoration: none;
    content: "\f105";
    display: flex;
	justify-content: center;
    align-items: center;
    background: #E60050;
    font-family: FontAwesome;
    color: #fff;
    width: 24px;
    height: 24px;
    line-height: 0;
	padding-left: 1px;
    text-align: center;
    font-size: 1.1em;
	right: 0;
	bottom: 0;
	font-weight: bold;
}

.gnav_img_box_link{
	display: block;
	text-decoration: none;
	color: inherit;
}

.gnav_link_01 a,
.gnav_link_02 a{
	display: block;
	color: inherit;
	text-decoration: none;
	line-height: 1.4;
}
.gnav_link_01 a:hover,
.gnav_link_02 a:hover{
	text-decoration: underline;
}
.gnav_link_01 a{
	margin-bottom: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	font-size: 1.5em;
	font-weight: bold;
	position: relative;
	padding-right: 30px;
}
.gnav_link_01 a:after{
	content: "\f105";
	color: #D61518;
	display: block;
	position: absolute;
	right: 5px;
	font-family: FontAwesome;
	top: 14px;
	line-height: 0;
	font-size: 1.3em;
	text-decoration: none;
}
.gnav_link_02 a{
	margin-top: 15px;
}

.sm_menu_open_btn_icon{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 30px;
}
.sm_menu_open_btn_icon_width{
    margin-top: -1px;
    width: 23px;
    height: 19px;
    margin-left: auto;
    margin-right: auto;
    position: relative;}
.sm_menu_open_btn_icon span {
    display: inline-block;
    transition: all .7s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #fff;
    border-radius: 1px;
}
.sm_menu_open_btn_icon span:nth-of-type(1) {
	top: 0;
}
.sm_menu_open_btn_icon span:nth-of-type(2) {
	top: 8.5px;
}
.sm_menu_open_btn_icon span:nth-of-type(3) {
	bottom: 0;
}

.uk-offcanvas-container .sm_menu_open_btn_icon span:nth-of-type(1) {
	transform: translateY(8.5px) rotate(-315deg);
}
.uk-offcanvas-container .sm_menu_open_btn_icon span:nth-of-type(2) {
	opacity: 0;
}
.uk-offcanvas-container .sm_menu_open_btn_icon span:nth-of-type(3) {
	transform: translateY(-8.5px) rotate(315deg);
}

.sm_menu_open_btn_txt{
	font-size: .7em;
	font-weight: bold;
	color: #fff;
}

.sm_menu_z_index {
    z-index: 1000;
    position: relative;
}

.uk-offcanvas-bar {
    background: #fff;
	padding-top: 120px;
}
.headroom--not-top .uk-offcanvas-bar {
    padding-top: 80px;
}

.uk-offcanvas-overlay::before {
    background: rgba(0,0,0,.3);
}

.header_gnav_slide_content_recruit,
.header_gnav_slide_content_contact{
	display: none!important;
}

#sm_menu .uk-offcanvas-bar a {
    color: #222;
    text-decoration: none;
    display: block;
	font-size: 110%;
}

#sm_menu .sm_menu_nav_link_02 > a:before{
	content: "・";
	color: #1B1C80;
}


#sm_menu .sm_menu_nav_link_02.sm_menu_nav_link_02_pl > a{
	position: relative;
}
#sm_menu .sm_menu_nav_link_02.sm_menu_nav_link_02_pl > a:before{
	content: url("/common/img/header/icon_arrow.svg");
	position: absolute;
	left: -14px;
	top: -2px;
}

.sm_menu_nav_link_01{
    font-size: 1.1em;
    position: relative;
    font-weight: bold;
}

.sm_menu_nav_link_01 a:after{
	content: "\f105";
	font-family: FontAwesome;
    position: absolute;
    right: 0;
	color: #1B1C80;
	font-weight: normal;
	font-size: 140%;
	line-height: 1;
}

.sm_menu_nav_link_01.link_recruit a:after{
	content: "\f08e";
	font-size: 100%;
	line-height: 1.6;
	
}
.sm_menu_nav_link_01_open{
    padding-right: 30px;
    cursor: pointer;
}
.sm_menu_nav_link_01_open a {
    pointer-events: none;
}
.sm_menu_nav_link_01_open a:after {
    content: "┼";
    position: absolute;
    right: 0;
    text-shadow: 0.2px 0.2px 0 #555, 0.2px -0.2px 0 #555, -0.2px 0.2px 0 #555, -0.2px -0.2px 0 #555;
	font-size: 100%;
	line-height: 1.6;
}
.sm_menu_nav_link_01_open.active a:after {
    content: "─";
}

.sm_menu_nav_link_02{
    margin-top: 15px;
}



.main_menu_sub_nav_body{
	display: none;
}

.sm_menu_nav_link_body {
    padding: 20px 0;
    border-bottom: 1px solid rgba(0,0,0,.28);
}

.sm_menu_nav_link_02_pl{
	padding-left: 2em;
}

.sm_menu_content_body{
	max-width: 320px;
	margin-left: auto;
	margin-right: auto;
}



.footer_topscroll_body{
    background: #1B1C80;
}

.footer_topscroll_content{
    display: flex;
    align-items: center;
    line-height: 0;
}

.footer_topscroll_logo img{
    width: 275px;
}

.footer_topscroll_btn {
    margin-left: auto;
    padding: 0;
}
.footer_topscroll_btn svg{
    display: none;
}
.footer_topscroll_btn a{
    width: 105px;
    height: 105px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background: rgba(0,0,0,.22);
    transition: .3s;
}
.footer_topscroll_btn a:hover{
    background: #5557ff;
}



::-webkit-scrollbar {
    width: 10px;
    background: #eee;
}
::-webkit-scrollbar-track {
  box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}
::-webkit-scrollbar-thumb {
  background-color: #9e9eb1;
  box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}

.footer_gray_body{
	padding: 50px 0 60px;
	background: #F3F4F5;
}
.footer_gray_grid{
	justify-content: space-between;
	line-height: 1.4;
}
.footer_gray_grid a{
	color: inherit;
	text-decoration: none;
}
.footer_gray_grid a:hover{
	text-decoration: underline;
}

.footer_gray_link_01{
	font-weight: bold;
	font-size: 1.2em;
}
.footer_gray_link_02{
	padding-left: 1em;
	position: relative;
	margin-top: 10px;
}
.footer_gray_link_02:before{
	content: "・";
	position: absolute;
	left: 0;
	font-weight: bold;
	color: #395AA1;
}

.footer_gray_bot_flex{
	margin-top: 50px;
}

.footer_gray_bot_flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer_gray_bot_flex_left_flex{
	display: flex;
	font-size: .9em;
	line-height: 1.4;
}
.footer_gray_bot_flex_left_flex > *:nth-child(n+2){
	padding-left: 20px;
	margin-left: 20px;
	border-left: 1px solid #bbb;
}
.footer_gray_bot_flex_left_flex a{
	color: inherit;
	text-decoration: none;
}
.footer_gray_bot_flex_left_flex a:hover{
	text-decoration: underline;
}

.footer_copy{
	text-align: center;
	padding: 25px 0 30px;
}

.footer_contact_body{
	padding: 35px 0 50px;
background: rgb(230,0,80); /* Old browsers */
background: -moz-linear-gradient(left,  rgba(230,0,80,1) 0%, rgba(230,0,80,1) 45%, rgba(27,28,128,1) 45%, rgba(27,28,128,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(left,  rgba(230,0,80,1) 0%,rgba(230,0,80,1) 45%,rgba(27,28,128,1) 45%,rgba(27,28,128,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(230,0,80,1) 0%,rgba(230,0,80,1) 45%,rgba(27,28,128,1) 45%,rgba(27,28,128,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e60050', endColorstr='#1b1c80',GradientType=1 ); /* IE6-9 */
	margin: 100px 0 40px;
	color: #fff;
}

.font_renner {
    font-family: 'Renner*';
}

.footer_contact_title{
	font-size: 3.1em;
}


.pankuzu{
    padding: 12px 0;
    font-size: .9em;
    margin-bottom: 30px;
	border-bottom: 1px solid #ddd;
}
.pankuzu a{
    color: #555;
}

.pankuzu li{
    display: inline;
}
.pankuzu li:nth-child(n+2)::before{
    content: "\f105";
    font-family: FontAwesome;
    margin: 0 .4em;
}


.pankuzu .base_width {
}

.page_title_h1{
	font-size: 2.3em;
	line-height: 1.4;
}

.slider_bg_body{
	padding: 50px 0 30px;
	background: #f1f1f1;
	overflow: hidden;
}

.product_slider .uk-dotnav>*>* {
    background: #aaa;
    border: 3px solid #f1f1f1;
	width: 18px;
	height: 18px;
}
.product_slider .uk-dotnav>.uk-active>* {
    background-color: #fff;
    border-color: #E60050;
}

.product_slider{
	text-align: center;
}
.product_slider .uk-slider-nav{
	margin-top: 30px!important;
	margin-bottom: 0!important;
}

.product_slider_main{
	line-height: 0;
}
.product_slider_main li a{
	position: relative;
	display: inline-block;
	line-height: 0;
	transition: .3s;
}
.product_slider_main li a:hover{
	opacity: .6;
}
.product_slider_main li a:after{
	position: absolute;
    text-decoration: none;
    content: "\f105";
    display: flex;
	justify-content: center;
    align-items: center;
    background: #E60050;
    font-family: FontAwesome;
    color: #fff;
    width: 24px;
    height: 24px;
    line-height: 0;
	padding-left: 1px;
    text-align: center;
    font-size: 1.1em;
	right: 1px;
	bottom: 1px;
	font-weight: bold;
}

.product_slider_main li a img{
	border: 1px solid #ddd;
}

.section_padding{
	padding: 70px 0 100px;
}

.common_title{
	font-size: 2.1em;
	padding-left: 25px;
	position: relative;
	line-height: 1.4;
	margin-bottom: 40px;
	font-weight: bold;
}
.common_title:before,
.common_title:after{
	content: "";
	left: 0;
	width: 7px;
	position: absolute;
	display: block;
}
.common_title:before{
	top: 0;
	background: #1B1C80;
	height: 65%;
}
.common_title:after{
	bottom: 0;
	background: #E60050;
	height: 35%;
}

.product_ichiran_grid_box{
	color: inherit;
	text-decoration: none;
	display: flex;
    flex-direction: column;
	transition: .3s;
	background: #f5f8f8;
	height: 100%;
	box-shadow: 0 0 0 #1B1C80;
	border: 1px solid #ddd;
	position: relative;
}
.product_ichiran_grid_box:hover{
	transform: translate(-5px,-5px);
}
.product_ichiran_grid_box:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
background: rgb(230,0,80);
background: -moz-linear-gradient(45deg,  rgba(230,0,80,1) 0%, rgba(27,28,128,1) 100%);
background: -webkit-linear-gradient(45deg,  rgba(230,0,80,1) 0%,rgba(27,28,128,1) 100%);
background: linear-gradient(45deg,  rgba(230,0,80,1) 0%,rgba(27,28,128,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e60050', endColorstr='#1b1c80',GradientType=1 );

	width: 100%;
	height: 100%;
	transition: .3s;
	z-index: -2;
}
.product_ichiran_grid_box:hover::before{
	top: 10px;
	left: 10px;
}
.product_ichiran_grid_box:after{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	background: #f5f8f8;
	width: 100%;
	height: 100%;
	transition: .3s;
	z-index: -1;
}

.product_ichiran_grid_box_content_01,
.product_ichiran_grid_box_content_02,
.product_ichiran_grid_box_content_03,
.product_ichiran_grid_box_content_04{
	padding: 10px;
}
.product_ichiran_grid_box_content_01,
.product_ichiran_grid_box_content_03{
	background: #F5F8F8;
}
.product_ichiran_grid_box_content_02,
.product_ichiran_grid_box_content_04{
	background: #ECF0F0;
}
.product_ichiran_grid_box_content_02{flex: auto;}
.product_ichiran_grid_box_content_01{
	display: flex;
    flex-direction: column;
	min-height: 260px;
}

.product_ichiran_grid_box_title_01,
.product_ichiran_grid_box_title_02{
	line-height: 1.4;
	font-weight: bold;
}
.product_ichiran_grid_box_title_01{
	font-size: .9em;
}
.product_ichiran_grid_box_title_02{
	font-size: 1.2em;
	color: #1B1C80;
}

.product_ichiran_grid_box_img{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 150px;
	margin: auto 0;
}
.product_ichiran_grid_box_img img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
}

.product_ichiran_grid_box_content_02{
	display: flex;flex-direction: column;
	font-weight: bold;
}
.product_ichiran_grid_box_content_02_left{
	font-size: .9em;
}

.product_ichiran_grid_box_content_02_right {margin-left: -3px;}
.product_ichiran_grid_box_content_02_right span.cat{
	display: inline-block;
	font-size: 12px;
	padding: 2px 10px;
	border-radius: 10px;
	background: #ddd;
	margin-left: 3px;
	margin-top: 5px;
}

/*.product_ichiran_grid_box_content_02_right{
	color: #E60050;
	font-size: 1.1em;
}*/
.product_ichiran_grid_box_content_03{
	display: flex;
	justify-content: flex-end;
}
.product_ichiran_grid_box_content_03_icon{
	padding: 0 8px;
}
.product_ichiran_grid_box_content_04_grid_item{
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: .8em;
	background: #fff;
	padding: 2px 0;
	border: 1px solid #ccc;
}

.uk-grid.product_ichiran_grid_box_content_04_grid  {
    margin-left: -5px;
}
.uk-grid.product_ichiran_grid_box_content_04_grid >* {
    padding-left: 5px;
}
.uk-grid.product_ichiran_grid_box_content_04_grid>.uk-grid-margin {
    margin-top: 5px;
}

.page_nai_nav_ul{
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	font-weight: bold;
	font-size: 1.1em;
	margin-bottom: 60px;
}
.page_nai_nav_ul li{
	padding: 0 1px 1px 0;
}
.page_nai_nav_ul a{
	text-decoration: none;
	color: #fff;
	background: #1B1C80;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px 5px;
	transition: .3s;
	height: 100%;
	position: relative;
}
.page_nai_nav_ul .disabled a{
	background: #aaa;
	pointer-events: none;
}

.page_nai_nav_ul a:after{
	content: "\f107";
	font-family: FontAwesome;
	position: absolute;
	right: 15px;top: 50%;
	transform: translateY(-50%);
}

.page_nai_nav_ul a.bg_pink:after{
	content: "\f105";
}

.page_nai_nav_ul a:hover{
	opacity: .6;
}

.subpage_header_nav_body{
	transition: .3s;
    z-index: 999;
	position: fixed;
	top: 100px;
	left: 0;
	width: 100%;}
.subpage_header_nav{
	background: #fff;
	height: 60px;
	transition: .3s;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
body.gnav_active .subpage_header_nav_body{
}
.headroom--not-top .subpage_header_nav_body{
	top: 50px;
}
.headroom--not-top .subpage_header_nav{
	height: 50px;
}

.subpage_header_nav_height{
	height: 60px;
}
.headroom--not-top .subpage_header_nav_height{
	height: 50px;
}

body.subpage_header_nav_on{
	padding-top: 160px;
}

.subpage_header_nav_flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.subpage_header_nav_flex_left{
	font-weight: bold;
	font-size: 1.1em;
}
.subpage_header_nav_flex_right{
}

.subpage_header_nav_open_btn{
    height: calc(100% - 1px);
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: inherit;
	background: #F2F2F2;
	cursor: pointer;
	padding: 0 60px 0 40px;
	font-weight: bold;
	font-size: .9em;
	position: relative;
}
.subpage_header_nav_open_btn:after{
    content: "\f107";
    font-family: FontAwesome;
    position: absolute;
    height: 100% ;
    display: flex;
    right: 35px;
    align-items: center;
    color: #E60050;
    font-size: 1.6em;
	padding-bottom: 2px;
}

.subpage_header_nav_open_content_body{
	position: absolute;
	top: 100%;
	z-index: 2;
	left: 0;
	width: 100%;
	display: none;
}

.subpage_header_nav_open_content{
	background: #f2f2f2;
}

.subpage_header_nav_grid_link{
	text-decoration: none;
	color: inherit;
	line-height: 1.4;
	height: 100%;
	background: #fff;
	padding: 15px 10px;
	display: flex;flex-direction: column;
	justify-content: center;
	font-weight: bold;
	transition: .3s;
	border: 3px solid #fff;
}
.subpage_header_nav_grid_link:hover{
	border-color: #1B1C80;
}
.subpage_header_nav_grid_link_txt_01{
	font-size: .9em;
}
.subpage_header_nav_grid_link_txt_02{
	font-size: 1.3em;
	margin-top: 10px;
	color: #1B1C80;
}
.subpage_header_nav_grid_link_txt_03{
	font-size: .9em;
}
.subpage_header_nav_grid_link_txt_03 strong{
	font-size: 1.2em;
	color: #E60050;
}

.bg_pink{
	background: #E60050!important;
}

.product_single_main_body{
	background: #F8F8F8;
}

.product_single_main_body .base_width{
	position: relative;
}

.product_single_main_grid_left{
	position: absolute;
	left: 0;top: 40px;
	max-height: calc(100% - 40px);
}

/*.product_single_main_grid_left_txt_body{
	padding: 40px 0 45px;
}*/

.product_single_main_grid_left_txt_01{
	font-weight: bold;
	font-size: .9em;
}
.product_single_main_grid_left_txt_02{
	font-weight: bold;
	font-size: 3em;
	color: #1B1C80;
	line-height: 1.4;
	margin: 10px 0 20px;
}
.product_single_main_grid_left_txt_03{
	font-weight: bold;
	font-size: 2em;
	line-height: 1.3;
}
.product_single_main_grid_left_txt_04 {
	max-width: 500px;
	display: grid;
	grid-template-columns: 20% auto;
	gap: 20px;
	margin-top: 20px;
	padding: 0 20px;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	font-size: 16px;
	background: #fff;
}

.subpage_header_nav_open_content_height{
	padding: 40px 0 50px;
	max-height: calc(100vh - 300px);
	overflow-y: scroll;
	
}

.product_tokutyou_grid_img{
	position: relative;
	background: #F4F4F4;
	border: 1px solid #ddd;
	text-align: center;
}

.product_tokutyou_grid_img img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
}

.product_tokutyou_grid_title{
	font-size: 1.1em;
	margin: 15px 0 10px;
	font-weight: bold;
}

.product_tokutyou_grid_img_width{
	max-width: 386px;
	margin-left: auto;
	margin-right: auto;
}

.product_movie_width{
	max-width: 812px;
	margin-left: auto;
	margin-right: auto;
}

.common_title_02{
	font-size: 1.6em;
	margin-bottom: 20px;
	line-height: 1.4;
}

.product_siyou_tbl{
	/*width: 100%;
	table-layout: fixed;*/
}
.product_siyou_tbl th,
.product_siyou_tbl td{
	padding: 10px 50px 10px 30px;
	border: 1px solid #ccc;
	text-align: left;
	vertical-align: top;
}
.product_siyou_tbl th{
	background: #F3F4F5;
}

.anchor_point {
	position: relative;
	z-index: -30;
}

body.home{
	padding-top: 0!important;
}
body.home header#header,
body.home .header_flex {
	transition: .3s;
    background: none!important;
    border-bottom: 1px solid rgba(200,200,200,0)!important;
	
}
body.home .header_right_icon_01, 
body.home .header_right_icon_02 {
    border-left: none!important;
}
body.home .header_gnav_ul a:after {
    background: rgba(255,255,255,0);
	
}
body.home.gnav_active header#header, 
body.home.gnav_active .header_flex {
	background: #fff!important;
    border-bottom: 1px solid #ddd!important;
	
}

body.home .header_gnav_slide_content_body {
	opacity: 0;
	transition: .3s;
}
body.home.gnav_active .header_gnav_slide_content_body {
	opacity: 1;
}

body.home .header_gnav_ul a {
    color: #eee;
}
body.home.gnav_active .header_gnav_ul a {
    color: inherit;
}
body.home .header_gnav_ul a {
    color: #eee;
}
.header_gnav_ul a:hover::after,
.header_gnav_ul .header_gnav_li.active a::after{
	background: #1B1C80;
}

body.home .header_right_icon_01 img,
body.home .header_right_icon_02 img {
	-webkit-filter: brightness(0) invert(1)!important;
filter: brightness(0) invert(1)!important;
}
body.home .headroom--not-top .header_right_icon_01 img,
body.home .headroom--not-top .header_right_icon_02 img,
body.home.gnav_active .header_right_icon_01 img,
body.home.gnav_active .header_right_icon_02 img,
.uk-offcanvas-page body.home .header_right_icon_01 img,
.uk-offcanvas-page body.home .header_right_icon_02 img {
	-webkit-filter: brightness(0) invert(.5)!important;
filter: brightness(0) invert(.5)!important;
}
body.home .header_right_icon_01:hover img, 
body.home .header_right_icon_02:hover img {
    filter: invert(8%) sepia(99%) saturate(7044%) hue-rotate(235deg) brightness(100%) contrast(145%)!important;
}

body.home .header_logo_link {
    background: #1B1C80;
}
body.home .headroom--not-top .header_logo_link ,
.uk-offcanvas-page body.home .header_logo_link {
    background: #fff;
}

.header_logo_white,
body.home .header_logo_color,
body.home .headroom--not-top .header_logo_white,
.uk-offcanvas-page body.home .header_logo_white{
	display: none;
}
body.home .header_logo_white,
body.home .headroom--not-top .header_logo_color,
.uk-offcanvas-page body.home .header_logo_color{
	display: inline;
}

body.home .headroom--not-top header#header, 
body.home .headroom--not-top .header_flex,
.uk-offcanvas-page body.home header#header, 
.uk-offcanvas-page body.home .header_flex {
    background: #fff!important;
    border-bottom: 1px solid rgba(0,0,0,.1)!important;
	
}
body.home .headroom--not-top .header_gnav_ul a {
    color: inherit;
}



.common_title_03{
	font-size: 2.2em;
	margin-bottom: 30px;
	line-height: 1.4;
}

.toppage_news_section{
	padding: 100px 0 60px;
}

.juuyou_news_link a{
	text-align: center;
	display: block;
	color: #E60050;
	font-weight: bold;
	text-decoration: underline;
	background: #EDEDED;
	padding: 20px 10px;
	line-height: 1.4;
}
.juuyou_news_link a:hover{
	text-decoration: none;
}

.news_ichiran_link{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 25px 0;
	border-bottom: 1px solid #ddd;
	color: inherit;
	text-decoration: none;
}

.news_ichiran_link_left{
	width: 255px;
}
.news_ichiran_link_right{
	width: calc(100% - 300px);
}

.news_ichiran_link_left_flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.news_data{
	font-size: .95em;
	color: #555;
}
.news_cat{
	display: inline-block;
	background: #E5E5E5;
	padding: 2px 5px;
	text-align: center;
	width: 100px;
	font-size: .85em;
	
}

.news_ichiran_link_right{
	text-decoration: underline;
}
.news_ichiran_link:hover .news_ichiran_link_right{
	text-decoration: none;
}

.news_ichiran_list_body{
	border-top: 1px solid #ddd;
}

.common_link_btn{
	position: relative;
	display: inline-block;
	padding-left: 55px;
	color: inherit;
	font-weight: bold;
	text-decoration: none;
	transition: .3s;
}
.common_link_btn:hover{
	text-decoration: underline;
}
.common_link_btn:before{
	content: "\f105";
	width: 36px;
	height: 36px;
	font-family: FontAwesome;
	background: #fff;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 1000px;
	top: 50%;
	left: 0;
	margin-top: -18px;
	color: #E60050;
	font-weight: bold;
	font-size: 20px;
	padding-left: 1px;
	text-decoration: none;
	border: 1px solid #ddd;
	transition: .3s;
	
}
.common_link_btn:hover::before{
	background: #E60050;
	color: #fff;
	border-color: #E60050;
}

.toppage_products_link .common_link_btn{
	pointer-events: none;
	transition: none;
}

.toppage_strengths_bg{
	height: 538px;
	background-image: url("/common/img/top/bg_strengths.jpg");
	background-size: cover;
	background-position: center;
	padding-top: 84px;
	display: flex;
	flex-direction: column;
}

.toppage_strengths_title_bg{
	background: rgba(27,28,128,.84);
	padding: 20px 30px 25px;
	max-width: 424px;
	color: #fff;
}

.common_title_04{
	font-size: 3em;
	line-height: 1.3;
	font-weight: bold;
}
.oswald{
	font-family: 'Oswald';
}
.common_title_04_lead{
	font-size: 1.1em;
	line-height: 1.3;
	font-weight: bold;
	margin-top: 10px;
}
.common_title_04_lead:before{
	content: "───────────";
	margin-right: .3em;
}

.toppage_strengths_white_box{
	margin-top: auto;
	background: #fff;
	max-width: 569px;
	width: 100%;
	margin-left: auto;
	padding: 30px 40px;
}

.toppage_products_section{
	background: #f5f5f5;
	padding: 0 0 70px;
	margin-top: 157px;
	position: relative;
}
.toppage_products_section_title{
	margin-top: -30px;
	position: relative;
	top: -25px;
}

.toppage_products_link_white{
	max-width: 478px;
	background: #fff;
	padding: 30px 20px;
	position: relative;
	height: 120px;
	display: flex;
	align-items: center;
	transition: .3s;
	margin-top: -60px;
}
.toppage_products_link:hover .toppage_products_link_white{
	background: #E60050;
	color: #fff;
}
.toppage_products_link:hover .toppage_products_link_white .common_link_btn:before{
	border-color: #fff;
}

.toppage_products_link{
	display: block;
	color: inherit;
}

.toppage_products_link_white_img{
	position: absolute;
	height: 100%;
	right: 0;
	display: flex;
	align-items: center;
}
.toppage_products_link_white_img_02{
	right: -70px;
}
.toppage_products_link_white_img_03{
	right: 10px;
}

.toppage_products_grid_02_body{
	margin-top: 100px;
}

.toppage_products_section_view_more{
	text-align: right;
	margin-top: -50px;
	margin-bottom: 40px;
	position: relative;
	z-index: 2;
}

.common_link_btn_02{
	display: inline-block;
	color: #1B1C80;
	font-weight: bold;
	font-size: 1.2em;
	text-decoration: none;
}
.common_link_btn_02:hover{
	text-decoration: underline;
}
.common_link_btn_02:before{
    content: "\f105";
    font-family: FontAwesome;
    color: #E60050;
	text-decoration: none;
	display: inline-block;
	margin-right: .4em;
}

.movie_slider_width{
	width: 130%;
	margin-left: -15%;
}

.movie_slider_slide_box{
	padding: 0 15px;
}
.movie_slider_slide_box a{
	display: inline-block;
	transition: .3s;
}
.movie_slider_slide_box a:hover{
	opacity: .6;
}


.movie_slider .nav_box .slick-prev,
.movie_slider .nav_box .slick-next{
	font-size: 0;
	width: auto;height: auto;
	border: none;
	background: transparent;
	position: absolute;
	top: 40%;
	transform: translate(-50%,-50%);
}

.movie_slider .nav_box .slick-prev{
	left: 0;
	transform: translate(-50%,-50%);
}
.movie_slider .nav_box .slick-next{
	right: 0;
	transform: translate(50%,-50%);
}

.movie_slider .nav_box .slick-prev:before{
	content:"\f104";
}

.movie_slider .nav_box .slick-next:before{
	content:"\f105";
}

.movie_slider .nav_box .slick-prev:before,
.movie_slider .nav_box .slick-next:before{
	font-family: FontAwesome;
	font-size: 28px;
	width: 50px;height: 50px;
	display: flex;
	justify-content: center;align-items: center;
	background: #fff;
	color: #E60050;
	border: 1px solid #C7C7C7;
	border-radius: 50%;
	opacity: 1;
	font-weight: bold;
	transition: .3s;
}
.movie_slider .nav_box .slick-prev:hover::before,
.movie_slider .nav_box .slick-next:hover::before{
	background: #E60050;
	color: #fff;
	border-color: #E60050;
}

.nav_box_body{
	position: absolute;
	width: 94%;
	left: 3%;
	top: 50%;
}
.nav_box{
	position: relative;
	max-width: 41%;
	margin-left: auto;
	margin-right: auto;
}

.toppage_movie_section{
	padding: 80px 0 125px;
}

.toppage_about_section{
	padding-bottom: 77px;
	background-image: url("/common/img/top/bg_about.jpg");
	background-position: right;
	background-size: 70%;
	margin-bottom: 135px;
}

.common_link_btn_toppage_about{
	border-bottom: 1px solid #ddd;
	padding-top: 20px;
	padding-bottom: 20px;
	display: block;
}
.toppage_about_nav{
	border-top: 1px solid #ddd;
	margin-top: 30px;
}

.toppage_about_white{
	padding: 0 60px 50px 0;
	background: #fff;
}

.header_language_open_body{
	position: relative;
}

.header_language_open_body img{
	width: 30px;
}

.header_language_open_content{
	width: 140px;
	position: absolute;
	top: 100%;
	right: 50%;
margin-right: -70px;}

.header_language_open_content_box{
	overflow: hidden;
	border-radius: 4px;
	background: #1B1C80;
	display: none;
	border: 1px solid rgba(255,255,255,.25);
}

.header_language_open_content_link{
	display: block;
	text-decoration: none;
	color: #fff;
	text-align: center;
	font-weight: bold;
	transition: .3s;
	font-size: .9em;
	padding: 10px 0;
}
.header_language_open_content_link:hover{
	background: #E60050;
}
.header_language_open_content_link.header_language_open_content_link_ja{
	pointer-events: none;
	opacity: .4;
}

.header_language_open_btn_sm {
	cursor: pointer;
}


table.gsc-search-box{
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}
.gsc-input{
	padding-right: 20px!important;
}
.gsc-input-box{
	border-color: #bbb!important;
}
#gsc-i-id1{
	font-size: 18px;
	font-family: YuGothic,YuGothicM,"游ゴシック Medium","Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#gsc-i-id1::placeholder {
  font-size: 18px;
}
.gsc-search-button-v2{
    padding: 6px 20px!important;
    transform: scale(1.5);
}

.common_box_green{
    border: 1px solid #1B1C80;
    padding: 30px 40px 35px;
    background: #F3F4F5;
}
.common_box_green .common_list li:before {
    color: #1B1C80;
}

.sidebar_title {
    font-size: 1.5em;
    line-height: 1.3;
    border-left: 5px solid #1b1c80;
    margin-bottom: 10px;
    padding-left: 0.4em;
    font-weight: bold;
}

.sidebar_link_ul a {
    display: block;
    border-bottom: 1px solid #ddd;
    padding: 15px 0 15px 5px;
    color: inherit;
    text-decoration: none;
    line-height: 1.4;
    transition: .3s;
}
.sidebar_link_ul a:hover {
	background: #f2f2f2;
}

.news_title{
	font-weight: bold;
	font-size: 1.8em;
	border-bottom: 2px solid #1b1c80;
	line-height: 1.4;
	padding-bottom: 10px;
	margin-bottom: 15px;
}

.news_ichiran_list_body_border_none{
	border: none;
}

.message_box ul{
	list-style-type: disc;
	padding-inline-start: 1em;
}

.nav-links{
	text-align:center;}
a.page-numbers{
	text-decoration:none;
	margin:0 5px;
	display:inline-block;
	padding:2px 8px;
	background:#f1f1f1;
	color:#000;
	transition:.3s;}
.page-numbers.current,
a.page-numbers:hover{
	margin:0 5px;
	display:inline-block;
	padding:2px 8px;
	background:#666;
	color:#fff;}
	
.navigation.pagination {
	margin-top:40px;}


.common_link_btn_03{
    display: inline-block;
    padding: 15px 40px 15px 25px;
    border-radius: 1000px;
    text-decoration: none;
    color: #fff;
    background: #1B1C80;
    position: relative;
    font-weight: bold;
    transition: .3s;
	max-width: 280px;
	width: 100%;
	text-align: center;
}
.common_link_btn_03:hover{
    opacity: .6;
}
.common_link_btn_03:after{
    content: "\f105";
    font-family: FontAwesome;
    position: absolute;
    right: 17px;
    top: 50%;
    line-height: 0;
    font-size: 1.4em;
}


.top_news_h2{
	font-size: 1.5em;
	padding-left: 25px;
	position: relative;
	line-height: 1.4;
	margin-bottom: 25px;
	font-weight: bold;
}
.top_news_h2:before,
.top_news_h2:after{
	content: "";
	left: 0;
	width: 7px;
	position: absolute;
	display: block;
}
.top_news_h2:before{
	top: 0;
	background: #1B1C80;
	height: 65%;
}
.top_news_h2:after{
	bottom: 0;
	background: #E60050;
	height: 35%;
}

.top_news_h3{
	font-size: 1.4em;
	margin-bottom: 10px;
	color: #1B1C80;
}

.top_news_h4{
	font-size: 1.2em;
	margin-bottom: 10px;
	position: relative;
	padding-left: 20px;
}
.top_news_h4:before{
	content: "";
	width: 10px;height: 10px;
	background: #1B1C80;
	display: inline-block;
	position: absolute;
	left: 0;top: 0.5em;
}

.top_news_h5{
	font-size: 1.1em;
	margin-bottom: 10px;
}


.news_img_box{
	text-align: center;
}

.news_img_box span{
	display: block;
	margin-top: 10px;
	font-size: 90%;
}

.message_box p {
    margin-bottom: 30px;
}



.news_border_box{
	padding: 20px;
	border: 1px solid #999;
	margin-bottom: 30px;
}
.news_border_box_title{
    font-size: 1.2em;
    margin-bottom: 15px;
    color: #555;
    font-weight: bold;
}
.news_border_box_title i{
    margin-right: 10px;
}

.news_file_list li{
	
}

.news_file_list a{
	text-decoration: none;
	color: #222;
	position: relative;
	display: inline-block;
	padding-left: 1em;
}

.news_file_list a:before{
	content: "\f0da";
	font-family: FontAwesome;
	position: absolute;
	left: 5px;;top: auto;
}

.news_file_list a:after{
	content: "\f0f6";
	font-family: FontAwesome;
	color: #1B1C80;
	margin-left: 5px;
}

/*.news_file_list a[href$='.pdf']:before{
	content:"\f1c1";
	font-family:FontAwesome;
	margin-right:5px;
	color:#D14244;
	text-decoration:none;
	display: inline-block;
}

.news_file_list a[href$='.doc']:before, .news_file_list a[href$='.rtf']:before, .news_file_list a[href$='.docx']:before {
	content:"\f1c2";
	font-family:FontAwesome;
	margin-right:5px;
	color:#344290;
	text-decoration:none;
	display: inline-block;
}

.news_file_list a[href$='.xls']:before,.news_file_list  a[href$='.xlsx']:before {
	content:"\f1c3";
	font-family:FontAwesome;
	margin-right:5px;
	color:#4C7B3B;
	text-decoration:none;
	display: inline-block;
}*/



.news_link_list li{
	line-height: 1.4;
	text-indent: -1.5em;
	margin-left: 1.5em;
}
.news_link_list li:before{
	content: "\f138";
	font-family: FontAwesome;
	margin-right: 10px;
	color: #aaa;
}
.news_link_list li:nth-child(n+2),
.news_file_list li:nth-child(n+2){
	margin-top: 15px;
}
.news_link_list li a[target$='_blank']:after {
    content: "\f08e";
    font-family: FontAwesome;
    margin-left: 30px;
    color: #888;
    text-decoration: none;
    display: inline-block;
}

.footer_contact_txt{
	font-weight: bold;
}

.footer_catalog_link_btn{
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	color: #222;
	font-size: .95em;
	line-height: 1.3;
	font-weight: bold;
	max-width: 480px;
	padding: 20px 20px;
	height: 140px;
	transition: .3s;
	position: relative;
}
.footer_catalog_link_btn:before{
	background-image: url("/common/img/footer/icon_pdf.svg");
	position: absolute;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	background-size: contain;
	background-position: center;
	content: "";
	background-repeat: no-repeat;
	left: 21px;
	width: 35px;
}

.footer_catalog_link_btn:hover{
	opacity: .7;
}
.footer_catalog_link_btn_left {
	width: 130px;
	margin-right: 25px;
	padding-bottom: 10px;
}

.footer_contact_grid{
	justify-content: space-between;
}

.footer_contact_link_btn{
	display: flex;
	align-items: center;
	background: #fff;
	text-decoration: none;
	color: #222;
	justify-content: center;
	position: relative;
	font-size: 1.25em;
	height: 60px;
	font-weight: bold;
	transition: .3s;
	padding-left: 10px;
}
.footer_contact_link_btn:hover{
	opacity: .7;
}

.footer_contact_link_btn_02{
	margin-top: 20px;
}
.footer_contact_link_btn:before{
	position: absolute;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
	background-size: contain;
	background-position: center;
	content: "";
	background-repeat: no-repeat;
}
.footer_contact_link_btn_01:before{
	background-image: url("/common/img/footer/icon_mail.svg");
	left: 23px;
	width: 34px;
}
.footer_contact_link_btn_02:before{
	background-image: url("/common/img/footer/icon_tel.svg");
	left: 21px;
	width: 38px;
}
.page_title_small_txt{
	color: #1B1C80;
	font-weight: bold;
    font-family: 'Oswald';
}

.page_title_center_body{
	text-align: center;
	padding-top: 20px;
}

.common_list_check_icon{
	color: #1B1C80;
	font-size: 1.3em;
	line-height: 1.4;
	font-weight: bold;
}
.common_list_check_icon li{
	padding-left: 40px;
	position: relative;
}
.common_list_check_icon li:before{
	content: "";
	width: 30px;
	height: 25px;
	background-size: contain;
	background-position: center;
	background-image: url("/common/img/icon_check.svg");
	position: absolute;
	left: 0;
	display: block;
	background-repeat: no-repeat;
}
.common_list_check_icon li:nth-child(n+2){
	margin-top: 15px;
}

.right_img_gray_body{
	background: #F2F2F2;
	position: relative;
}

.right_img_gray_body_left_txt_box{
	padding: 55px 0;
}

.right_img_gray_body_img{
	position: absolute;
	height: 100%;
	right: 0;
	top: 0;
	width: 53%;
	background-size: cover;
	background-position: center;
}

.right_img_gray_body_left_txt_box_title{
	line-height: 1.4;
	font-size: 2.1em;
	margin-bottom: 15px;
	font-weight: bold;
}

.red_border_box{
	border: 1px solid #E60050;
	padding: 15px;
	color: #E60050;
	font-weight: bold;
	
}

.grid_item_img_link{
	max-width: 385px;
	color: inherit;
	text-decoration: none;
	display: block;
}
.grid_item_img_link_img{
	position: relative;
	padding-top: 60%;
	background: #F5F8F8;
	margin-bottom: 15px;
	border: 2px solid #F5F8F8;
	transition: .3s;
}
.grid_item_img_link:hover .grid_item_img_link_img{
	border-color: #aaa;
}
.grid_item_img_link_img span{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.grid_item_img_link_img span img{
	width: auto;
	height: auto;
	max-width: 80%;
	max-height: 80%;
}

.grid_item_img_link_title{
	font-size: 1.2em;
	position: relative;
	padding-left: 55px;
	color: inherit;
	font-weight: bold;
	text-decoration: none;
	transition: .3s;}
.grid_item_img_link_title:before{
	content: "\f105";
	width: 36px;
	height: 36px;
	font-family: FontAwesome;
	background: #fff;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 1000px;
    top: 0.7em;
	left: 0;
	margin-top: -18px;
	color: #E60050;
	font-weight: bold;
	font-size: 20px;
	padding-left: 1px;
	text-decoration: none;
	border: 1px solid #ddd;
	transition: .3s;
	
}
.grid_item_img_link:hover .grid_item_img_link_title:before{
	background: #E60050;
	color: #fff;
	border-color: #E60050;
}

.border_bottom{
	border-bottom: 1px solid #ddd;
}


.grid_item_blue_title_box{
	color: inherit;
	text-decoration: none;
	height: 100%;
	background: #F5F8F8;
	display: block;
}
.grid_item_blue_title_box_title_flex{
	background: #ECF0F0;
	display: flex;
}
.grid_item_blue_title_box_title_flex_left{
	background: #1B1C80;
	color: #fff;
	min-width: 8.5em;
	padding: 5px 10px 5px 10px;
	font-weight: bold;
	height: 100%;
	align-items: center;
	display: flex;
	flex-wrap: wrap;
}

.grid_item_blue_title_box_title_flex_left span{
	display: inline-block;
}

.grid_item_blue_title_box_title_flex_left span:after{
	content: "/";
	margin-right: 5px;
	margin-left: 5px;
}


.grid_item_blue_title_box_title_flex_left span:last-child:after{
	content: none;
}

.grid_item_blue_title_box_title_flex_right span{
	padding: 5px 5px 5px 10px;
	height: 100%;
	align-items: center;
	display: flex;
	
}

.grid_item_blue_title_box_ul{
	font-weight: bold;
	line-height: 1.4;
}
.grid_item_blue_title_box_ul li{
	padding-left: 2em;
	position: relative;
}
.grid_item_blue_title_box_ul li:nth-child(n+2){
	margin-top: 10px;
}
.grid_item_blue_title_box_ul li:before{
	content: "●";
	color: #1B1C80;
	position: absolute;
	left: 0;
}
.grid_item_blue_title_box_bottom_content{
	padding: 20px 20px 30px;
}

.grid_item_blue_title_box_img_flex{
	display: flex;
	text-align: center;
	justify-content: space-between;
	margin-bottom: 20px;
}
.grid_item_blue_title_box_img_flex > *{
	width: 48%;
}


.common_tbl table{
	width: 100%;
}

.common_tbl th,
.common_tbl td{
	padding: 15px;
	border: 1px solid #ddd;
}

.common_tbl th{
	background: #F3F4F5;
}

.common_tbl td{
	
}


.enkaku_tbl table{
	width: 100%;
}

.enkaku_tbl tr{
}

.enkaku_tbl th,
.enkaku_tbl td{
	padding: 10px;
	vertical-align: baseline;
	border: 1px solid #ddd
}

.enkaku_tbl th{
	background: #F3F4F5;
	white-space: nowrap;
}

.enkaku_tbl td{
}

.main_body{
	display: flex;
	align-items: center;
	position: relative;
}

.main_txt_body{
	position: relative;
	color: #fff;
	line-height: 1.4;
	font-weight: bold;
}
.main_lead{
	position: absolute;
	top: -70px;
	left: -35px;
}
.main_txt_01{
	font-size: 4em;
	line-height: 1.1;
}
.main_txt_02{
	margin-top: 1em;
	font-size: 1.6em;
}


.main_txt_container{
	position: absolute;
	left: 0;top: 55%;
	transform: translateY(-50%);
	width: 100%;
}

.top_movie_container{
	width: 100%;
	height: 100%;
	max-height: 840px;
	min-height: 420px;
	display: flex;
	justify-content: center;align-items: center;
	overflow: hidden;
}

.top_movie_container video{
	width: 100%;
}


.ir_num_list{
	counter-reset: number;
}
.ir_num_list li{
	padding-left: 40px;
	position: relative;
	margin-bottom: 15px;
}
.ir_num_list li:last-child{margin-bottom: 0;}

.ir_num_list li .title{
	display: block;
	font-size: 120%;
}

.ir_num_list li:before{
  counter-increment: number;
  content: counter(number);
	position: absolute;
	left: 0;top: 1em;
	transform: translateY(-50%);
	display: flex;
	justify-content: center;align-items: center;
	width: 30px;height: 30px;
	border-radius: 50%;
}

.ir_num_list li:nth-child(1):before{background:#FEFAC1;}
.ir_num_list li:nth-child(2):before{background:#BDF1C6;}
.ir_num_list li:nth-child(3):before{background:#FED3FB;}
.ir_num_list li:nth-child(4):before{background:#FEC8C1;}


.news_ir_list .news_ichiran_link_left{
	width: 8em;
	margin-right: 2em;
}
.news_ir_list .news_ichiran_link_right{
	width: calc(100% - 10em);
}
.news_ir_list a[href$='.pdf'] .news_ichiran_link_right:after{
	content: "\f1c1";
	font-family: FontAwesome;
	margin-left: 5px;
	color: #f00;
}

.ir_material_repeatbox{
	margin-top: 80px;
}

.ir_material_repeatbox:first-of-type{
	margin-top: 0;
}

.ir_material_repeatbox h3{
	color: #1B1C80;
	min-width: 10em;
}

.ir_material_repeatbox .list li{
	margin-bottom: 10px;
}

.ir_material_repeatbox .list li:last-child{
	margin-bottom: 0;
}

.ir_material_repeatbox .list li a{
	text-decoration: none;
}

.ir_material_repeatbox .list li a:hover{
	text-decoration: underline;
}

.ir_material_repeatbox .list li a .date{
	display: inline-block;
	width: 5em;margin-right: 2em;
}

.ir_material_repeatbox .list li a .txt{color: #222;}
.ir_material_repeatbox .list li a .txt:after{
	content: "\f1c1";
	font-family: FontAwesome;
	margin-left: 5px;
	color: #f00;
}

.ir_material_repeatbox .box{
	margin-bottom: 20px;
	margin-left: 2em;
	padding-bottom: 20px;
	border-bottom: 1px dashed #ddd;
}

.ir_material_repeatbox .box > div{
	align-items: baseline;
}

.ir_material_repeatbox .box:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}



.common_btn{
	display: inline-block;
	background: #1B1C80;
	padding: 15px 20px;
	min-width: 280px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
	position: relative;
}

.common_btn:after{
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	right: 10px;top: 50%;
	transform: translateY(-50%);
}

.contact_repeatbox{
	font-size: 110%;
}

.contact_repeatbox > div{
	display: flex;flex-direction: column;
	height: 100%;
}

.contact_repeatbox h3,
.en_contents h3{
	font-size: 140%;
	margin-bottom: 15px;
	border-bottom: 1px solid #1B1C80;
}
.contact_repeatbox .googlemap{
	margin-top: auto;
}
.contact_repeatbox .googlemap iframe{
	width: 100%;height: 280px;
}


.contact_repeatbox span{
	display: inline-block;
}
.contact_repeatbox .addnum{
	display: block;
}
.contact_repeatbox .tel{
	margin-right: 1em;
}


.common_tbl.contact_tbl th{
	text-align: left;
}

.contact_tbl input[type=text],
.contact_tbl select,
.contact_tbl textarea{
	background: #FAFAFA;
	outline: none;
  border: 1px solid #bbb;
  padding: 5px 10px;
	width: 100%;
}

.contact_tbl select{
	width: auto;
}

.contact_tbl input[type=radio]{
	width: 22px;
	height: 22px;
	vertical-align: sub;
	margin-right: 5px;
	cursor: pointer;
}
.contact_tbl label{
	cursor: pointer;
}

.contact_tbl .input_size_s{max-width: 240px;}
.contact_tbl .input_size_m{max-width: 360px;}
.contact_tbl .input_size_l{max-width: 600px;}

.contact_tbl .hissu{
	background: #e00;
	padding: 2px 10px;
	color: #fff;
	font-weight: normal;
	margin: 0 10px;
	border-radius: 10px;
	font-size: 80%;
	vertical-align: 1px;
	cursor: default;
}

.error_block_txt,
.contact_tbl .error{
	display: block;
	color: #e00;
	background: #ffefef;
	padding: 5px 10px;
	margin-top: 10px;
	border-radius: 5px;
}

.contact_submit{
	justify-content: center;
}
.contact_submit .common_btn{
	width: 100%;
	min-width: inherit;
	font-size: 110%;
}
.contact_submit .back .common_btn{
	background: #ddd;
	color: #222;
}
.contact_submit .back .common_btn:after{
	content: none;
}

.strengths_box{
	display: flex;
	align-items: flex-start;
	margin-bottom: 80px;
}

.strengths_box .txt{
	width: calc(50% + 50px);
	margin-right: -50px;
	margin-top: 50px;
	z-index: 2;
	background: #fff;
	padding: 20px 50px 40px 80px;
	box-shadow: 0 0 40px rgb(0 0 0 / 15%);
	position: relative;
}

.strengths_box .txt .num{
	position: absolute;
	left: -15px;top: -15px;
	width: 70px;height: 70px;
	display: flex;
	justify-content: center;align-items: center;
	font-family: 'Renner*';
	font-size: 42px;
	font-weight: bold;
	background: #1B1C80;
	color: #fff;
}

.strengths_box .txt h3{
	font-size: 110%;
	margin-bottom: 15px;
}

.strengths_box .txt h3 strong{
	font-size: 150%;
	display: inline-block;
	color: #222;
	position: relative;
}

.strengths_box .txt h3 strong:after{
	content: "";
	width: 100%;height: 10px;
	position: absolute;
	left: 0;bottom: 5px;
	background: rgba(230,0,80,0.3);
	z-index: -1;
}



.strengths_box .img{
	width: 50%;
}


.strengths_box:nth-child(odd){
	flex-direction: row-reverse
}
.strengths_box:nth-child(odd) .txt{
	margin-right: auto;margin-left: -50px;
}

.strengths_box:last-of-type{
	margin-bottom: 0;
}


.strengths_list{
	display: flex;
	justify-content: center;
	margin-left: auto;margin-right: auto;
}
.strengths_list li {
	width: 250px;height: 250px;
	font-size: 120%;
	text-align: center;
	border-radius: 50%;
	background: #E60050;
	color: #fff;
	margin: 0 10px;
	display: flex;flex-direction: column;
	justify-content: center;align-items: center;
	font-weight: bold;
}

.strengths_list li .num{
	font-size: 42px;
	font-family: 'Renner*';
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}
/*
.strengths_list li:last-child{
	margin-bottom: 0;
}
.strengths_list li span{
	position: relative;
}


.strengths_list li span:after{
	content: "";
  width: 100%;height: 6px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: rgba(230,0,80,0.3);
  z-index: -1;
}
*/


.sitemap_list h3 a{
	display: block;
	color: inherit;
	text-decoration: none;
	margin-bottom: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	font-size: 1.5em;
	font-weight: bold;
	position: relative;
	padding-right: 30px;
	line-height: 1.4;
}

.sitemap_list h3 a:after{
	content: "\f105";
	color: #D61518;
	display: block;
	position: absolute;
	right: 5px;
	font-family: FontAwesome;
	top: 0.5em;
	line-height: 0;
	font-size: 1.3em;
	text-decoration: none;
}

.sitemap_list .rec_link h3 a:after{
	content: "\f08e";
	font-size: 1em;
	top: 50%;
}

.sitemap_list ul li {
	margin-top: 10px;
}

.sitemap_list ul li a{
	color: #222;
	font-size: 110%;
	padding-left: 1em;
	text-decoration: none;
	position: relative;
}

.sitemap_list ul li a:before{
	content: "\f105";
	font-weight: bold;
	font-family: FontAwesome;
	color: #1B1C80;
	position: absolute;
	left: 3px;top: -3px;
}


/*金型見出し*/

.kanagata_midashi{
	height: 80px;
	display: flex;
	align-items: center;
}

.kanagata_midashi_line{
	border: 1px solid #ECF0F0;
	margin: 0 30px 0 30px;
	height: 80%;
}

.kanagata_title_01{
	font-size: 1.5em;
	letter-spacing: 1.2px;
	color: #1B1C80;
}

.kanagata_title_02{
	font-size: 1.4em;
	letter-spacing: -1px;
}

.kanagata_title_03{
	font-size: 2.5em;
	color: #1B1C80;
	font-weight: bold;
	letter-spacing: -0.1rem;
	line-height: 1.5em;
	margin: 0;
}

.kanagata_title_04{
	font-size: 1em;
	line-height: 0.1;
	font-weight: bold;
	margin-bottom: 12px;
}

.kanagata_title_syohin{
    font-weight: bold;
}

.kanagata_title_series{
	font-size: 2em;
	font-weight: bold;
	letter-spacing: -0.1rem;
	line-height: 3.5rem;
	margin: 0;
}

.catalog_button{
	z-index: 100;
}

.catalog_button_s{
	z-index: 100;
	position: fixed;
	bottom: -100px;
	right: 0;
	transition: 0.3s;
}

.fade-in-bottom.active{
	bottom: 0;
}

.catalog_button a{
	display: block;
	background-color: #E60050;
	color: #fff;
	width: 198px;
	vertical-align: middle;
	text-align: center;
	padding: 17px;
	letter-spacing: -0.1em;
	font-weight: bold;
	text-decoration: none;
}

.catalog_button_s a{
	display: block;
	background-color: #E60050;
	color: #fff;
	padding: 18px;
	vertical-align: middle;
	text-align: center;
	letter-spacing: -0.1em;
	font-weight: bold;
	text-decoration: none;
}



.local_nav{
	background: #1b1c80;
	color: #fff;
}
.local_nav a{
	text-decoration: none;
	color: #eee;
}

.strengths_bnr_link{
	text-align: center;
	font-weight: bold;
	display: block;
	border: 1px solid #aaa;
	color: inherit;
	text-decoration: none;
	background: #fff;
	padding: 10px 10px 12px;
	transition: .3s;
	position: relative;
}
.strengths_bnr_link:hover{
	opacity: .6;
}
.strengths_bnr_link_txt_01{
	font-size: 2em;
	letter-spacing: .1em;
}
.strengths_bnr_link:after{
    position: absolute;
    text-decoration: none;
    content: "\f105";
    display: flex;
    justify-content: center;
    align-items: center;
    background: #E60050;
    font-family: FontAwesome;
    color: #fff;
    width: 24px;
    height: 24px;
    line-height: 0;
    padding-left: 1px;
    text-align: center;
    font-size: 1.1em;
    right: 0;
    bottom: 0;
    font-weight: bold;}

.subpage_main{
	background-size: cover;
	background-position: center;
	height: 600px;
	margin-bottom: 70px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
	position: relative;
}
.subpage_main:after{
	content: "";
	background: #fff;
	width: 70%;
	height: 150px;
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
}
.subpage_main_txt{
	display: inline-block;
	font-size: 3.4em;
	position: relative;
	z-index: 3;
	letter-spacing: .15em;
	font-weight: bold;
    color: #1b1c80;
}

.kabunusi_yuutai_tbl{
}
.kabunusi_yuutai_tbl th,
.kabunusi_yuutai_tbl td{
	border: 1px solid #ddd;
	padding: 15px 20px;
	text-align: center;
}
.kabunusi_yuutai_tbl th{
	background: #d7eaff;
	padding: 10px 20px;
}
.kabunusi_yuutai_tbl tr:nth-child(2n-1) td{
	background: #F3F4F5;
}

.pic_border_gold{
	border: 3px solid #ddd;
    border-image: linear-gradient(41deg, rgba(196, 136, 0, 1) 59%, rgba(247, 195, 38, 1) 100%);
    border-image-slice: 1;
}

.indent1em{
	text-indent: 1em;
}

.yutai_table {
    margin: 0 auto 40px;
    width: 940px;
    border-collapse: collapse;
    border-spacing: 0;
    border-bottom: 1px solid #ddd;
}

.yutai_table th {
    background: #d7eaff;
    margin: 0;
    padding: 10px 20px;
    line-height: 1.6;
    text-align: center;
    vertical-align: middle;
    border: solid #ddd 1px;
    width: 50%;
}

/*.pointTable tr:nth-child(2n) {
    background: #f3f7ff;
}*/

.yutai_table td:not(.star):before {
    color: #ffd700;
    margin: 0 0.5em;
    content: "\f005";
    font-family: FontAwesome;
}

.yutai_table td.star {
    padding: 15px 20px;
}

.yutai_table td {
    margin: 0;
    padding: 10px;
    text-align: center;
    border: solid #ddd 1px;
}

.yutai_table_c {
    margin: 0 0 10px;
    padding: 0;
    font-size: 1.6rem;
    line-height: 1;
    text-align: center;
}

@media(max-width:959px){
	.yutai_table {
    margin: 0 auto 20px;
    width: 100%;
}
}

.onepoint_box{
	display: flex;
    align-items: center;
	border: 1px solid #00ced1;
	padding: 10px;
}

.onepoint_box img{
	width: 80px;
	margin: 10px 30px 10px 30px;
}

.onepoint_box p{
	text-align: left;
	margin: 0 0 0 20px;
}

@media(max-width:959px){
	.onepoint_box img{
		width: 50px;
		margin: 10px 30px 10px 20px;
	}
	
	.onepoint_box p{
		text-align: left;
		margin: 0;
	}
}

@media(max-width:640px){
	.onepoint_box{
		display: block;
	}
	
	.onepoint_box img{
		width: 50px;
		margin: 0;
	}
	
	.onepoint_box p{
		margin: 10px 0 0 0;
	}
}



.ir_material_repeatbox.sokai_pdf_list ul li{margin-bottom: 0;}
.sokai_pdf_list ul li a{
	padding: 0 3px 5px;
	border-bottom: 1px dashed #ddd;
}


.sustainability_box.strengths_box .txt{
	padding: 30px 60px;
}


.rinen_box{
	padding-left: 45px;
}
.rinen_box h3{
	position: relative;
}
.rinen_box h3:before{
	content: "一、";
	position: absolute;
	left: -45px;
}

.movie_caution{
	color: #fff;
	font-weight: bold;
	position: absolute;
	left: auto;right: auto;bottom: 30px;
	width: 90%;max-width: 1240px;
	z-index: 1;
}


#animation_container {
	position:fixed;
	margin:auto;
	left:0;right:0;
	top:-30px;bottom:0;
	z-index: 1010;
	width: 100vw!important;height: calc(100vh + 30px)!important;
	display: flex;
	justify-content: center;align-items: center;
}

#animation_container.second{
	display: none;
	background-color: #fff!important;
}



#animation_container canvas{
	max-width: 650px;
	height: auto!important;
}

html.lock{
	overflow: hidden;
}

.page_title_h1_404{
	color: #1B1C80;
}




/*カタログページ追加分*/

.catalog_list_box {
	border: 1px solid #1B1C80;
	margin-bottom: 40px;
}
.catalog_list_box:last-of-type{
	margin-bottom: 0;
}
.catalog_list_box.active{
	box-shadow: 0 0 15px rgb(0 0 0 / 10%);
}
.catalog_list_box .toggle_btn{
	padding: 15px 20px;
	font-size: 140%;
	color: #1B1C80;
	font-weight: bold;
	cursor: pointer;
	position: relative;
}

.catalog_list_box .toggle_btn:before,
.catalog_list_box .toggle_btn:after{
	content: "";
	position: absolute;
	background: #1B1C80;
	top: 50%;right: 30px;
	transform: translate(50%,-50%);
	transition: 0.3s;
}
.catalog_list_box .toggle_btn:before{
	width: 20px;height: 2px;
}
.catalog_list_box .toggle_btn:after{
	width: 2px;height: 20px;
}
.catalog_list_box.active .toggle_btn:after{
	opacity: 0;
}


.catalog_list_box .slide_list{
	padding: 0 20px 30px;
}
.catalog_list_box .slide_list ul:nth-child(n + 2){
	margin-top: 30px;
}
.catalog_list_box .slide_list .title{
	font-size: 120%;
	font-weight: bold;
}
.catalog_list_box .slide_list ul li:not(.title){
	margin-left: 0.5em;
	margin-top: 10px;
}

.catalog_list_box .slide_list ul li label,
.catalog_list_box .slide_list ul li label input[type="checkbox"]{
	cursor: pointer;
}
.catalog_list_box .slide_list ul li label input[type="checkbox"]{
	width: 20px;height: 20px;
	vertical-align: sub;
	margin-right: 10px;
}

.catalog_list_box .slide_list ul li label{
	display: inline-block;
  padding-left: 30px;
  text-indent: -30px;
}

.catalog_dl_list .box .thumb{
	text-align: center;
}
.catalog_dl_list .box .txt{
	display: flex;
	flex-direction: column;
}

.catalog_dl_list .box h3 {
	line-height: 1.4;
	margin-bottom: 20px;
}
.catalog_dl_list .box h3 span{
	color: #222;
	font-size: 90%;
	display: inline-block;
	margin-bottom: 5px;
}
.catalog_dl_list .box h3 strong{
	color: #1B1C80;
	display: block;
	font-size: 110%;
}
.catalog_dl_list .box .btn{
	margin-top: auto;
}
.catalog_dl_list .box .btn .common_btn:after{
	content: "\f1c1";
	font-weight: normal;
}

/*VRバナー*/
.bnr_vr {
	transition: .3s;
}
.bnr_vr:hover {
	opacity: .6;
}

.uk-child-width-1-4 .bnr_vr img {
	width: 100%;
}