@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Yuji+Boku&family=Yuji+Syuku&display=swap');
	.font-yuji{
		font-family: "Yuji Boku", serif;
  		font-weight: 400;
  		font-style: normal;
	}

	.font-syuku{
		font-family: "Yuji Syuku", serif;
  		font-weight: 400;
  		font-style: normal;
	}
/*news*/
@media screen and (min-width:751px) {
	
	header .innerbox .slidenav nav a.company{
		position:relative;
	}
	
	header .innerbox .slidenav nav a.company::before{
		content: "";
		width:100%;
		border-bottom:1px solid #000;
		position: absolute;
		bottom:-5px;
		left:0;
	}
	
	.mainvisual.page.index{
		padding:0 0 0 max(5vw,calc((100% - 1200px) / 2 ));
		margin-bottom:130px;
		width:100%;
		max-width: 100%;
	}
	
	.mainvisual.page{
		padding:0 0;
		width:90%;
		max-width: 1200px;
		margin:0 auto 130px;
	}
	
	.mainvisual.page.index .innerbox{
		width:100%;
		position: relative;
	}
	
	.mainvisual.page.index .tlcont{
		position: absolute;
		bottom:0;
		left:0;
		background:#fff;
		padding:5vw 5vw 0;
		min-width: calc(50% - 2.5vw) !important;
		width: auto;
	}
	
	.mainvisual.page .tlcont{
		position:relative;
		bottom:0;
		left:0;
		background:#fff;
		padding:20px 0 70px;
		max-width:1065px;
		margin:0 auto;
		width:100%;
	}
	
	.mainvisual.page .tlcont.pb0{
		position:relative;
		bottom:0;
		left:0;
		background:#fff;
		padding:20px 0 0;
		max-width:1065px;
		margin:0 auto;
		width:100%;
	}
	
	.mainvisual.page .tlcont h1{
		font-weight: 600;
		font-size: 5.6rem;
		letter-spacing: 0.025em;
		margin:10px 0 5px 0;
	}
	
	.mainvisual.page .tlcont .sub{
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		color:#666;
	}
	
	/*cont_box*/
	.cont_box{
		width:90%;
		margin:0 auto 100px;
		max-width: 1065px;
	}
	
	.cont_box.w100{
		width:1000%;
		margin:0 auto 100px;
		max-width: 100%;
	}
	
	.cont_box:last-child{
		margin:0 auto 130px;
	}
	
	.cont_box h2{
		font-size: 2.3rem;
		line-height: 1.6em;
		color:#333333;
		letter-spacing: 0.025em;
		font-weight: 500;
		margin:0 0 20px 0;
	}
	
	.cont_box h2 span{
		font-size: 1.5rem;
		font-weight: 500;
	}
	
	.cont_box.w100 h2{
		width:90%;
		margin:0 auto 25px;
		max-width: 1065px;
	}
	
	.cont_box p.mtx{
		font-size: 1.5rem;
		line-height: 2.4em;
		color:#333333;
		letter-spacing: 0.025em;
	}
	
	.cont_box .index_list{
		width:100%;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width:calc(100% + 60px);
		margin:0 0 -50px -30px;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont::after{
		content: "";
		width:calc(100% / 3);
		height: 0;
		display: block;
	}
	
	.cont_box .index_list_cont a{
		width:calc(100% / 3);
		margin:0 0 50px 0;
		padding:0 30px;
		display: flex;
		flex-direction: column;
		border-bottom:none;
		position: relative;
	}
	
	.cont_box .index_list_cont a.arrow_link:nth-child(3n+2)::before{
		content: "";
		height:calc(100% - 55px);
		border-right: 1px dotted #d4d4d4;
		position:absolute;
		top:0;
		left:0;
	}
	
	.cont_box .index_list_cont a.arrow_link:nth-child(3n+2) ::after{
		content: "";
		height:calc(100% - 55px);
		border-right: 1px dotted #d4d4d4;
		position:absolute;
		top:0;
		right:0;
	}
	
	.cont_box .index_list_cont a figure{
		position: relative;
		padding-top:67.74%;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont a figure img{
		width:100%;
		height: 100%;
		position: absolute;
		top:0;
		left:0;
		transition: all 0.5s;
		transform: scale(1);
	}
	
	.cont_box .index_list_cont a:hover figure img{
		transform: scale(1.1);
	}
	
	.cont_box .index_list_cont a .txbox{
		padding:25px 0;
		letter-spacing: 0.1em;
		color:#333;
	}
	
	.cont_box .index_list_cont a .txbox .tl{
		font-size: 1.8rem;
		font-weight: 600;
		margin:0 0 10px 0;
	}
	
	.cont_box .index_list_cont a .txbox .tx{
		font-size: 1.4rem;
	}
	
	.cont_box .index_list_cont a .bottom_arrow{
		position: relative;
		font-size: 1.3rem;
		padding:10px 0;
		color:#333;
		margin:auto 0 0 0 ;
		border-bottom:1px solid #e0e0e0;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow{
		width:25px;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow::before{
		content: "";
		width: 7px;
  		height: 7px;
		transform: rotate(-45deg) skew(7deg, 7deg);
		left:-2px;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow::after{
		width:25px;
		height: 100%;
	}
	
	/*philosophy*/
	.philosophy_cont h2.mtl{
		font-size: 4.2rem;
		letter-spacing: 0.1em;
	}
	
	.philosophy_cont ul.knum{
		padding:0 0 0 2.5em;
	}
	
	.philosophy_cont ul.knum li{
		list-style-type: cjk-ideographic;
		font-size: 1.5rem;
		line-height:2em;
		margin:10px 0 0 0;
	}
	
	.philosophy_cont .tablebox{
		display: flex;
		margin:50px 0 0 0;
	}
	
	.philosophy_cont .tablebox .tlbox{
		padding:0 0;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: column;
		border-left:5px solid #ece1f1;
		width:215px;
	}
	
	.philosophy_cont .tablebox .tlbox .tl{
		font-size: 2.5rem;
		font-weight: 600;
	}
	
	.philosophy_cont .tablebox .tlbox .sub{
		font-size: 1.2rem;
		color:#96469f;
	}
	
	.philosophy_cont .tablebox .txbox{
		width:calc(100% - 215px);
		border-left:1px solid #d5d5d5;
		padding:0 60px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		letter-spacing: 0.025em;
	}
	
	.philosophy_cont .tablebox .txbox .t01{
		font-size: 3.2rem;
		font-weight: 500;
		color:#400b36;
	}
	
	.philosophy_cont .tablebox .txbox .t02{
		font-size: 2.4rem;
		font-weight: 500;
		color:#400b36;
		margin:5px 0 0 0;
	}
	
	.philosophy_cont .tablebox .txbox .tx{
		font-size: 1.5rem;
		line-height:2em;
	}
	
	.philosophy_cont .tablebox .txbox .box{
		margin:0 0 20px 0;
	}
	
	.philosophy_cont .tablebox .txbox .box:last-child{
		margin:0 0 0 0;
	}
	
	.message_cont{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	.message_cont .txbox{
		width:50%;
		letter-spacing: 0.1em;
	}
	
	.message_cont .txbox h2{
		font-size: 2.8rem;
		color:#460d43;
		margin:0 0 40px 0;
	}
	
	.message_cont .txbox p{
		font-size: 1.5rem;
		line-height: 2.7em;
		margin:0 0 40px 0;
	}
	
	.message_cont .txbox .name p{
		font-size: 1.5rem;
		line-height: 1.5em;
		margin:0 0 0 0;
	}
	
	.message_cont .txbox .name p.tx{
		font-size: 3rem;
		margin:5px 0 0 0;
        width: 230px;
	}
	
	.message_cont figure{
		width:calc(50% - min(5vw,70px));
		overflow: hidden;
		border-radius: 10px;
	}
	
	/*outline_cont*/
	.outline_cont{
		display: flex;
		justify-content: space-between;
	}
	
	.outline_cont .rightbox{
		width:calc(100% - 250px);
	}
	
	.outline_cont .rightbox table{
		width:100%;
		border-collapse: collapse;
	}
	
	.outline_cont .rightbox table{
		width:100%;
		border-collapse: collapse;
		color:#333;
		line-height: 1.8em;
		letter-spacing: 0.1em;
	}
	
	.outline_cont .rightbox table th{
		vertical-align: top;
		padding:25px 15px;
		text-align: left;
		border-top:1px dotted #7e7e7e;
		border-bottom:1px dotted #7e7e7e;
		font-weight: 500;
		width:200px;
	}
	
	.outline_cont .rightbox table td{
		vertical-align: top;
		padding:25px 15px;
		text-align: left;
		border-top:1px dotted #7e7e7e;
		border-bottom:1px dotted #7e7e7e;
	}
	
	.outline_cont .rightbox table td table{
		width:auto;
	}
	
	.outline_cont .rightbox table td table td{
		padding:0 30px 10px 0;
		border:none;
		width:auto;
	}
	
	.outline_cont .rightbox .map{
		width:100%;
		padding-top:50%;
		position: relative;
		margin:15px 0 5px;
	}
	
	.outline_cont .rightbox .map iframe{
		width:100%;
		height:100%;
		position: absolute;
		top:0;
		left: 0;
	}
	
	.outline_cont .rightbox a{
		color:#333;
		transition: all 0.3s;
	}
	
	.outline_cont .rightbox a:hover{
		opacity: 0.7;
	}
	
	.outline_cont .rightbox .imgbox{
		padding:0 40px;
	}
	
	/*global*/
	.global_anklink{
		width:100%;
		display: flex;
	}
	
	.global_anklink .box{
		width:50%;
		display: flex;
		justify-content: center;
		align-items: center;
		border-left: 1px solid #cccccc;
		border-right: 1px solid #cccccc;
		padding:20px 0;
	}
	
	.global_anklink .box:last-child{
		border-left: none;
	}
	
	.global_anklink .box a{
		font-size: 1.5rem;
		font-weight: 500;
		letter-spacing: 0.1em;
		display: flex;
		transition: all 0.3s;
	}
	
	.global_anklink .box a:hover{
		opacity: 0.7;
	}
	
	.global_anklink .box a::after{
		content: "";
		width: 10px;
  		height: 10px;
  		background: none;
		display: block;
		transform: rotate(45deg) skew(10deg, 10deg);
		border-right:1px solid #000;
		border-bottom:1px solid #000;
		transition: all 0.3s;
		position: relative;
		z-index: 2;
		left:0;
		margin:0 0 0 10px;
	}
    
    .global_map_jp {
        width: 609px;
        margin: 0 auto;
    }
    .global_map_gl {
        width: 912px;
        margin: 0 auto;
    }
	
	.global_list{
		display: flex;
		justify-content: space-between;
		padding:50px 0 0 0;
		flex-wrap: wrap;
	}
	
	.global_list li{
		width:calc((100% - 60px) / 2);
		border-bottom:1px solid #dddad4;
		padding:25px 0;
		color:#333;
		line-height: 2em;
	}
	
	.global_list li .tl{
		font-size: 1.5rem;
		font-weight: 600;
	}
	
	.global_list li .tx{
		font-size: 1.5rem;
	}
	
	.global_list li .tx a{
		font-size: 1.1rem;
		font-weight: 600;
		color:#fff;
		background:#6c1c68;
		padding:2px 10px 0;
		line-height: 1;
		border-radius: 9999px;
		margin:0 0 0 10px;
		letter-spacing: 0.025em;
		transition: all 0.3s;
	}
	
	.global_list li .tx a:hover{
		opacity: 0.7;
	}
	
	.global_list li .tel span{
		display: inline-block;
	}
	
	.global_list li .tel span::after{
		content: "/";
		margin:0 15px;
		color:#cccccc;
	}
	
	.global_list li .tel span:last-child::after{
		display: none;
	}
	
	.supplier_cont{
		display: flex;
		justify-content: space-between;
	}
	
	.supplier_cont .txcont{
		width:calc(50% - 60px);
	}
	
	.supplier_cont figure{
		width:calc(50%);
	}
	
	.supplier_cont.box2 figure{
		order: -1;
	}
	
	.supplier_cont ul{
		counter-reset:number;
  		list-style-type: none!important;
		margin:0 0 10px 0;
		color:#333;
	}
	
	.supplier_cont p + ul{
		margin-top:15px;
	}
	
	.supplier_cont ul li{
		position: relative;
  		line-height: 2em;
  		padding: 12px 0 12px 45px;
	}
	
	.supplier_cont ul li:before{
		position: absolute;
  		counter-increment: number;
  		content: counter(number);
  		background: none;
  		color: 000;
		border:1px solid #000;
  		font-size: 1em;
		line-height: 2;
  		border-radius: 50%;
		top:10px;
  		left: 0;
  		width: 30px;
  		height: 30px;
  		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.supplier_imgbox{
		width:100%;
		padding:20px;
		background:#f1f1f1;
	}
	
	.supplier_imgbox .innerbox{
		padding:50px;
		background:#fff;
		border-radius: 15px;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}
	
	/*performance*/
	
	.performance_list ul {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
		width:100%;
        margin: 0 auto;
        font-size: 1.4rem;
        padding: 0;
        color: #333;
    }
   .performance_list ul li {    
        width: calc((100% - 60px) / 3);
        font-family: "IBM Plex Sans JP", sans-serif;
  		font-weight: 400;
  		font-style: normal;
        list-style:disc;
        padding: 0 0 0 5px;
        margin: 0 0 0 15px;
        margin-bottom: 16px;
    }
	
	/*history*/
	.change_list{
		display: flex;
		margin:0 0 70px 0;
	}
	
	.change_list .box{
		width:25%;
		height:75px;
		padding:0 10px;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		cursor: pointer;
		position: relative;
	}
	
	.change_list .box.active{
		font-weight: 600;
		border:1px solid #c1bfcd;
		border-bottom:none;
	}
	
	.change_list .box:nth-child(1){
		color:#0e2b75;
	}
	
	.change_list .box:nth-child(1)::before{
		content: "";
		height: 50px;
		border-right:1px solid #c1bfcd;
		position: absolute;
		left:-1px;
		top:calc(50% - 25px);
	}
	
	.change_list .box:nth-child(1)::after{
		content: "";
		height: 50px;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:calc(50% - 25px);
	}
	
	.change_list .box:nth-child(2){
		color:#045566;
	}
	
	.change_list .box:nth-child(2)::after{
		content: "";
		height: 50px;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:calc(50% - 25px);
	}
	
	.change_list .box:nth-child(3){
		color:#6e0606;
	}
	
	.change_list .box:nth-child(3)::after{
		content: "";
		height: 50px;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:calc(50% - 25px);
	}
	
	.change_list .box:nth-child(4){
		color:#ab8322;
	}
	
	.change_list .box:nth-child(4)::after{
		content: "";
		height: 50px;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:calc(50% - 25px);
	}
	
	.bottom_cont{
		margin:70px 0 0 0;
	}
	
	.change_cont .box{
		display: none;
	}
	
	.change_cont .box:nth-child(1){
		display: block;
	}
	
	.change_cont .box table,
	.bottom_cont .box table{
		width:100%;
		border-collapse: collapse;
		line-height: 2em;
	}
	
	.change_cont .box table th,
	.bottom_cont .box table th{
		width:170px;
		vertical-align: top;
		font-size: 1.6rem;
		padding:20px 20px;
		border-top:1px solid #c1bfcd;
		border-bottom:1px solid #c1bfcd;
		font-weight: 400;
	}
	
	.change_cont .box:nth-child(1) table th{
		background:#e6edfb;
	}
	
	.change_cont .box:nth-child(2) table th{
		background:#e2f4f0;
	}
	
	.change_cont .box:nth-child(3) table th{
		background:#fff7f4;
	}
	
	.change_cont .box:nth-child(4) table th{
		background:#fff7e2;
	}
	
	.bottom_cont .box table th{
		background:#eee6fb;
	}
	
	.change_cont .box table td,
	.bottom_cont .box table td{
		vertical-align: top;
		font-size: 1.5rem;
		padding:20px 40px;
		border-top:1px solid #e8e8e8;
		border-bottom:1px solid #e8e8e8;
	}
	
	.change_cont .box:nth-child(1){
		display: block;
	}
	
	.change_cont span.co1{
		font-weight: 600;
		color:#045566;
		text-decoration: underline;
	}
	.change_cont span.co2{
		font-weight: 600;
		color:#6e0606;
		text-decoration: underline;
	}
	
	/*csr*/
	.csr_graph_cont{
		margin:-80px auto 130px;
		width:90%;
		max-width: 1065px;
		padding:70px 0;
		background:#eaecf3;
	}
	
	.csr_graph_cont .innerbox{
		width:90%;
		max-width: 825px;
		margin:0 auto;
	}
	
	.csr_graph_cont .innerbox .txbox{
		padding:15px 10px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		letter-spacing: 0.05em;
		width:100%;
		background:#fff;
		border-radius: 10px;
		margin:0 0 15px 0;
	}
	
	.csr_graph_cont .innerbox .txbox.box2{
		padding:10px 10px;
	}
	
	.csr_graph_cont .innerbox .txbox .sub{
		font-size: 1.7rem;
		color:#460d43;
		font-weight: 600;
	}
	
	.csr_graph_cont .innerbox .txbox .mtl{
		font-size: 3rem;
		font-weight: 600;
	}
	
	.csr_graph_cont .innerbox .txbox .tl{
		font-size: 2.4rem;
		font-weight: 600;
		color:#460d43;
	}
	
	.csr_graph_cont .innerbox .eq{
		display: flex;
		justify-content: center;
		padding:0 0 15px 0;
	}
	
	.csr_graph_cont .innerbox .eq::after{
		content: "";
		width:12px;
		height:20px;
		border-left:4px solid #333;
		border-right:4px solid #333;
		display: block;
	}
	
	.csr_graph_cont .innerbox .imgbox{
		padding: 25px 0 40px 0;
	}
	
	.csr_graph_cont .innerbox .flexbox{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin:0 0 -10px 0;
	}
	
	.csr_graph_cont .innerbox .flexbox .tx{
		font-size: 1.7rem;
		color:#fff;
		padding:10px 10px;
		font-weight: 500;
		margin:0 0 10px 0;
		border-radius: 5px;
		background:#9a91b2;
		text-align: center;
		width:calc((100% - 10px) / 2);
	}
	
	.csr_list_cont{
		margin:30px 0 0 0;
	}
	
	.csr_list_cont .headtl{
		background:#2f4965;
		color:#fff;
		font-size: 1.8rem;
		line-height: 2em;
		font-weight: 500;
		text-align: center;
		letter-spacing: 0.1em;
		padding:5px 0;
		margin: 0 0 10px 0;
	}
	
	.csr_list_cont .flexbox{
		display: flex;
		border-bottom:1px solid #cecece;
	}
	
	.csr_list_cont .flexbox.bo{
		border-top:1px solid #cecece;
	}
	
	.csr_list_cont .flexbox .tl{
		padding:0 0 0 min(5vw,50px);
		display: flex;
		justify-content: flex-start;
		align-items: center;
		background:#e8f0f6;
		font-size: 1.6rem;
		letter-spacing: 0.1em;
		font-weight: 600;
		width:230px;
	}
	
	.csr_list_cont .flexbox .tx_icon{
		width:calc(100% - 230px);
		display: flex !important;
		padding:30px 0 30px 40px;
	}
	
	.csr_list_cont .flexbox .tx_icon{
		width:calc(100% - 230px);
		display: flex !important;
		justify-content: space-between;
		align-items: center;
	}
	
	.csr_list_cont .flexbox .tx_icon .tx{
		width:calc(100% - min(40%,315px) - 30px);
		font-size: 1.5rem;
		line-height: 2em;
		letter-spacing: 0.1em;
	}
	
	.csr_list_cont .flexbox .tx_icon .iconbox{
		display: flex;
		justify-content: space-between;
		max-width:315px;
		width:40%;
	}
	
	.csr_list_cont .flexbox .tx_icon .iconbox img{
		width:calc((100% - 20px) / 3);
	}
	
	.csr_graph_flexbox{
		display: flex;
		justify-content: space-between;
		margin:0 0 70px 0;
	}
	
	.csr_graph_flexbox .txbox{
		width:50%;
	}
	
	.csr_graph_flexbox figure{
		width:50%;
		padding:0 40px 0 120px;
	}
	
	.csr_scrollbox{
		width:100%;
	}
	
	.csr_scrollbox table{
		width:100%;
		border-collapse: collapse;
		letter-spacing: 0.1em;
	}
	
	.csr_scrollbox table th{
		background:#39396b;
		color:#fff;
		text-align: center;
		font-size: 1.5rem;
		font-weight: 500;
		padding:15px 0;
	}
	
	.csr_scrollbox table td{
		border-bottom: 1px solid #cecece;
		padding:30px 0;
	}
	
	.csr_scrollbox table td:nth-child(1){
		width:90px;
		text-align: center;
		vertical-align: middle;
	}
	
	.csr_scrollbox table td:nth-child(1) span{
		width:45px;
		height:45px;
		background:#eaecf3;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size:1.8rem;
		color:#333366;
		margin:0 auto;
		font-weight: 500;
	}
	
	.csr_scrollbox table td:nth-child(2){
		width:32%;
		padding:30px 0;
		position: relative;
	}
	
	.csr_scrollbox table td:nth-child(2)::after{
		content: "";
		border-left:1px solid #cecece;
		height: calc(100% - 60px);
		position: absolute;
		top:30px;
		left: 0;
	}
	
	.csr_scrollbox table td:nth-child(2){
		vertical-align: top;
		width:33%;
	}
	
	.csr_scrollbox table td:nth-child(2) ul{
		padding:5px 30px;
		height: 100%;
		line-height: 2em;
		color:#333366;
		font-size: 1.4rem;
	}
	
	.csr_scrollbox table td:nth-child(2) ul li{
		text-indent: -15px;
		padding-left: 15px;
	}
	
	.csr_scrollbox table td:nth-child(2) ul li::before{
		content: "";
		width:10px;
		height: 10px;
		border-radius: 50%;
		display: inline-block;
		margin:0 5px 0 0;
		background:#333366;
	}
	
	.csr_scrollbox table td:nth-child(3){
		width:50px;
		text-align: center;
	}
	
	.csr_scrollbox table td:nth-child(3)::after{
		content: "";
		width: 0;
  		height: 0;
  		border-style: solid;
  		border-top: 11px solid transparent;
  		border-bottom: 11px solid transparent;
  		border-left: 20px solid #39396b;
  		border-right: 0;
		display: block;
	}
	
	.csr_scrollbox table td:nth-child(4){
		width:20%;
		padding:30px 0;
		vertical-align: top;
	}
	
	.csr_scrollbox table td:nth-child(4) p{
		width:100%;
		padding:40px 0;
		background:#eaecf3;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		font-size:1.4rem;
		color:#333366;
		margin:0 auto;
		font-weight: 600;
		line-height: 1.8em;
	}
	
	.csr_scrollbox table td:nth-child(5){
		vertical-align: top;
		width:33%;
	}
	
	.csr_scrollbox table td:nth-child(5) ul{
		padding:5px 30px;
		height: 100%;
		line-height: 2em;
		color:#333366;
		font-size: 1.4rem;
	}
	
	.csr_scrollbox table td:nth-child(5) ul li{
		text-indent: -15px;
		padding-left: 15px;
	}
	
	.csr_scrollbox table td:nth-child(5) ul li::before{
		content: "";
		width:10px;
		height: 10px;
		display: inline-block;
		margin:0 5px 0 0;
		background:#333366;
	}
	
	
	/*privacy*/
	.privacy_cont{
		width:90%;
		margin:0 auto 130px;
		max-width: 1065px;
	}
	
	.privacy_cont .box{
		margin:0 0 70px 0;
	}
	
	.privacy_cont .box h2{
		margin:0 0 10px 0;
		font-size: 1.8rem;
		line-height: 1.5em;
		letter-spacing: 0.1em;
		font-weight: 600;
	}
	
	.privacy_cont .box p{
		margin:0 0 10px 0;
		font-size: 1.5rem;
		line-height: 2em;
		letter-spacing: 0.1em;
		color:#333;
	}
	
	.privacy_cont .box p.borderbox{
		padding:0 0 0 20px;
		border-left: 3px solid #e2e2e2;
	}
	
	.privacy_cont .box ul{
		counter-reset:number;
  		list-style-type: none!important;
		margin:0 0 10px 0;
		color:#333;
	}
	
	.privacy_cont .box ul li{
		position: relative;
  		line-height: 2em;
  		padding: 0 0 0 1.75em;
	}
	
	.privacy_cont .box ul li:before{
		position: absolute;
  		counter-increment: number;
  		content: counter(number);
  		background: none;
  		color: 000;
		border:1px solid #000;
  		font-size: 1rem;
		line-height: 2;
  		border-radius: 50%;
		top:0.5em;
  		left: 0;
  		width: 1.6rem;
  		height: 1.6rem;
  		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.privacy_cont .box ul li ul{
		counter-reset:number2;
  		list-style-type: none!important;
		margin:10px 0 0 0;
	}
	
	.privacy_cont .box ul li ul li{
		position: relative;
  		line-height: 2em;
  		padding: 0 0 0 1.75em;
	}
	
	.privacy_cont .box ul li ul li:before{
		position: absolute;
  		counter-increment: number2;
  		content: counter(number2)".";
  		background: none;
  		color: 000;
		border:none;
		font-size: 1em;
		top:0.45em;
	}
	
	/*include*/
	#company_list{
		padding:70px 0;
		background:#f5f6f6;
	}
	
	#company_list .innerbox{
		width:90%;
		margin:0 auto;
		max-width: 1065px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	
	#company_list .innerbox .tl{
		font-size: 2.4rem;
		font-weight: 600;
		line-height: 1.6em;
		letter-spacing: 0.1em;
		margin:0 0 20px 0;
		display: flex;
		align-items: center;
		width:220px;
	}
	
	#company_list .innerbox .tl span{
		width:25px;
		height:25px;
		border-radius: 50%;
		background:#460d43;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 10px 0 0;
	}
	
	#company_list .innerbox .tl span::before{
		content: "";
		width: 6px;
  		height: 6px;
  		background: none;
		transform: rotate(-45deg) skew(10deg, 10deg);
		border-right:1px solid #fff;
		border-bottom:1px solid #fff;
		transition: all 0.3s;
		position: relative;
		z-index: 2;
		left:-2px;
	}
	
	#company_list .innerbox .linklist{
		width:calc(100% - 220px);
		padding:0 0 10px 0;
		margin: 0 0 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		box-sizing: border-box;
	}
	
	#company_list .innerbox .linklist::after{
		content: "";
		width:calc((100% - min(10vw,100px)) / 3);
		height: 0;
		display: block;
	}
	
	#company_list .innerbox a.arrow_link{
		width:calc((100% - min(10vw,100px)) / 3);
		padding:30px 45px 30px 10px !important;
		display: flex;
		align-items: center;
	}
	
	#company_list .innerbox a.arrow_link figure{
		width:110px;
		margin:0 25px 0 0;
	}
	
	#company_list .innerbox a.arrow_link .txbox{
		width:calc(100% - 110px - 25px);
	}
	
	#company_list .innerbox a.arrow_link .txbox .tl{
		font-size: 1.8rem;
		margin: 0 0 7px 0;
		color:#333;
	}
	
	#company_list .innerbox a.arrow_link .txbox .tx{
		font-size: 1.2rem;
		line-height: 1.8em;
		letter-spacing: 0.1em;
		color:#666;
	}
}

@media screen and (max-width:750px) {
	.mainvisual.page.index{
		padding:0 0 0 0;
		margin-bottom:50px;
		width:100%;
		max-width: 100%;
	}
	
	.mainvisual.page{
		padding:0 0;
		width:90%;
		max-width: 1200px;
		margin:0 auto 50px;
	}
	
	.mainvisual.page.index .innerbox{
		width:100%;
		position: relative;
	}
	
	.mainvisual.page.index .tlcont{
		position: absolute;
		bottom:0;
		left:0;
		background:#fff;
		padding:3vw 5vw 0;
		min-width: calc(50% - 2.5vw) !important;
		width: auto;
	}
	
	.mainvisual.page .tlcont.pb0{
		position:relative;
		bottom:0;
		left:0;
		background:#fff;
		padding:20px 0 0;
		max-width:1065px;
		margin:0 auto;
		width:100%;
	}
	
	.mainvisual.page .tlcont{
		position:relative;
		bottom:0;
		left:0;
		background:#fff;
		padding:20px 0 30px;
		max-width:1065px;
		margin:0 auto;
		width:100%;
	}
	
	.mainvisual.page .tlcont h1{
		font-weight: 600;
		font-size: 3rem;
		letter-spacing: 0.025em;
		margin:0 0 0 0;
	}
	
	.mainvisual.page .tlcont .sub{
		font-size: 1.3rem;
		letter-spacing: 0.1em;
		color:#666;
	}
	
	.mainvisual.page figure{
		width:100%;
		padding-top:56.66%;
		position: relative;
	}
	
	.mainvisual.page figure img{
		position: absolute;
		top:0;
		left:0;
		width:100%;
		height: 100%;
	}
	
	/*cont_box*/
	.cont_box{
		width:90%;
		margin:0 auto 50px;
		max-width: 1065px;
	}
	
	.cont_box.w100{
		width:1000%;
		margin:0 auto 50px;
		max-width: 100%;
	}
	
	.cont_box h2{
		font-size: 1.8rem;
		line-height: 1.6em;
		color:#333333;
		letter-spacing: 0.025em;
		font-weight: 500;
		margin:0 0 10px 0;
	}
	
	.cont_box h2 span{
		font-size: 1.5rem;
		font-weight: 500;
	}
	
	.cont_box.w100 h2{
		width:90%;
		margin:0 auto 25px;
		max-width: 1065px;
	}
	
	.cont_box p.mtx{
		font-size: 1.4rem;
		line-height: 1.8em;
		color:#333333;
		letter-spacing: 0.025em;
	}
	
	.cont_box .index_list{
		width:100%;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width:100%;
		margin:0 0 -40px 0;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont::after{
		content: "";
		width:100%;
		height: 0;
		display: block;
	}
	
	.cont_box .index_list_cont a{
		width:100%;
		margin:0 0 40px 0;
		padding:0 0 !important;
		display: flex;
		flex-direction: column;
		border-bottom:none;
		position: relative;
	}
	
	.cont_box .index_list_cont a figure{
		position: relative;
		padding-top:67.74%;
		overflow: hidden;
	}
	
	.cont_box .index_list_cont a figure img{
		width:100%;
		height: 100%;
		position: absolute;
		top:0;
		left:0;
		transition: all 0.5s;
		transform: scale(1);
	}
	
	.cont_box .index_list_cont a:hover figure img{
		transform: scale(1.1);
	}
	
	.cont_box .index_list_cont a .txbox{
		padding:20px 0 10px 0;
		letter-spacing: 0.1em;
		color:#333;
	}
	
	.cont_box .index_list_cont a .txbox .tl{
		font-size: 1.8rem;
		font-weight: 600;
		margin:0 0 10px 0;
	}
	
	.cont_box .index_list_cont a .txbox .tx{
		font-size: 1.4rem;
	}
	
	.cont_box .index_list_cont a .bottom_arrow{
		position: relative;
		font-size: 1.3rem;
		padding:10px 0;
		color:#333;
		margin:auto 0 0 0 ;
		border-bottom:1px solid #e0e0e0;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow{
		width:25px;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow::before{
		content: "";
		width: 7px;
  		height: 7px;
		transform: rotate(-45deg) skew(7deg, 7deg);
		left:-2px;
	}
	
	.cont_box .index_list_cont a .bottom_arrow span.linkarrow::after{
		width:25px;
		height: 100%;
	}
	
	/*philosophy*/
	.philosophy_cont h2.mtl{
		font-size: 3rem;
		letter-spacing: 0.1em;
	}
	
	.philosophy_cont ul.knum{
		padding:0 0 0 2.5em;
	}
	
	.philosophy_cont ul.knum li{
		list-style-type: cjk-ideographic;
		font-size: 1.4rem;
		line-height:2em;
		margin:10px 0 0 0;
	}
	
	.philosophy_cont .tablebox{
		display: flex;
		flex-direction: column;
		margin:0 0 0 0;
		padding:20px 0;
		border-bottom:1px solid #d5d5d5;
	}
	
	.philosophy_cont .tablebox .tlbox{
		padding:0 0;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		flex-direction: column;
		width:100%;
	}
	
	.philosophy_cont .tablebox .tlbox .tl{
		font-size: 2rem;
		font-weight: 600;
	}
	
	.philosophy_cont .tablebox .tlbox .sub{
		font-size: 1.2rem;
		color:#96469f;
	}
	
	.philosophy_cont .tablebox .txbox{
		width:100%;
		padding:20px 0 0 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		letter-spacing: 0.025em;
	}
	
	.philosophy_cont .tablebox .txbox .t01{
		font-size: 2rem;
		font-weight: 500;
		color:#400b36;
	}
	
	.philosophy_cont .tablebox .txbox .t02{
		font-size: 1.8rem;
		font-weight: 500;
		color:#400b36;
		margin:5px 0 0 0;
	}
	
	.philosophy_cont .tablebox .txbox .tx{
		font-size: 1.3rem;
		line-height:2em;
	}
	
	.philosophy_cont .tablebox .txbox .box{
		margin:0 0 10px 0;
	}
	
	.philosophy_cont .tablebox .txbox .box:last-child{
		margin:0 0 0 0;
	}
	
	.message_cont{
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
	}
	
	.message_cont .txbox{
		width:100%;
		letter-spacing: 0.1em;
	}
	
	.message_cont .txbox h2{
		font-size: 2rem;
		color:#460d43;
		margin:0 0 20px 0;
	}
	
	.message_cont .txbox p{
		font-size: 1.5rem;
		line-height: 2.7em;
		margin:0 0 40px 0;
	}
	
	.message_cont .txbox .name p{
		font-size: 1.3rem;
		line-height: 1.5em;
		margin:0 0 0 0;
	}
	
	.message_cont .txbox .name p.tx{
		font-size: 2.4rem;
		margin:5px 0 0 0;
        width: 180px;
	}
	
	.message_cont figure{
		width:100%;
		overflow: hidden;
		border-radius: 5px;
		order:-1;
		margin:0 0 20px 0;
	}
	
	/*outline_cont*/
	.outline_cont{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
	}
	
	.outline_cont .rightbox{
		width:100%;
	}
	
	.outline_cont .rightbox table{
		width:100%;
		border-collapse: collapse;
	}
	
	.outline_cont .rightbox table{
		width:100%;
		border-collapse: collapse;
		color:#333;
		line-height: 1.8em;
		letter-spacing: 0.1em;
	}
	
	.outline_cont .rightbox table th{
		vertical-align: top;
		padding:15px 10px 15px 0;
		text-align: left;
		border-top:1px dotted #7e7e7e;
		border-bottom:1px dotted #7e7e7e;
		font-weight: 500;
		width:30%;
	}
	
	.outline_cont .rightbox table td{
		vertical-align: top;
		padding:15px 0;
		text-align: left;
		border-top:1px dotted #7e7e7e;
		border-bottom:1px dotted #7e7e7e;
	}
	
	.outline_cont .rightbox table td table{
		width:auto;
	}
	
	.outline_cont .rightbox table td table td{
		padding:0 20px 10px 0;
		border:none;
		width:auto;
	}
	
	.outline_cont .rightbox .map{
		width:100%;
		padding-top:100%;
		position: relative;
		margin:15px 0 5px;
	}
	
	.outline_cont .rightbox .map iframe{
		width:100%;
		height:100%;
		position: absolute;
		top:0;
		left: 0;
	}
	
	.outline_cont .rightbox a{
		color:#333;
		transition: all 0.3s;
		font-size: 1.2rem;
	}
	
	.outline_cont .rightbox a:hover{
		opacity: 0.7;
	}
	
	.outline_cont .rightbox .imgbox{
		padding:0 0;
	}
	
	/*global*/
	.global_anklink{
		width:100%;
		display: flex;
	}
	
	.global_anklink .box{
		width:50%;
		display: flex;
		justify-content: center;
		align-items: center;
		border-left: 1px solid #cccccc;
		border-right: 1px solid #cccccc;
		padding:10px 0;
	}
	
	.global_anklink .box:last-child{
		border-left: none;
	}
	
	.global_anklink .box a{
		font-size: 1.3rem;
		font-weight: 500;
		letter-spacing: 0.1em;
		display: flex;
		transition: all 0.3s;
	}
	
	.global_anklink .box a:hover{
		opacity: 0.7;
	}
	
	.global_anklink .box a::after{
		content: "";
		width: 7px;
  		height: 7px;
  		background: none;
		display: block;
		transform: rotate(45deg) skew(10deg, 10deg);
		border-right:1px solid #000;
		border-bottom:1px solid #000;
		transition: all 0.3s;
		position: relative;
		z-index: 2;
		left:0;
		margin:3px 0 0 10px;
	}
	
	.global_list{
		display: flex;
		justify-content: space-between;
		padding:30px 0 0 0;
		flex-wrap: wrap;
	}
	
	.global_list li{
		width:100%;
		border-bottom:1px solid #dddad4;
		padding:15px 0;
		color:#333;
		line-height: 2em;
	}
	
	.global_list li .tl{
		font-size: 1.5rem;
		font-weight: 600;
	}
	
	.global_list li .tx{
		font-size: 1.4rem;
	}
	
	.global_list li .tx a{
		font-size: 1.1rem;
		font-weight: 600;
		color:#fff;
		background:#6c1c68;
		padding:2px 10px 0;
		line-height: 1;
		border-radius: 9999px;
		margin:0 0 0 10px;
		letter-spacing: 0.025em;
		transition: all 0.3s;
	}
	
	.global_list li .tx a:hover{
		opacity: 0.7;
	}
	
	.global_list li .tel span{
		display: inline-block;
	}
	
	.global_list li .tel span::after{
		content: "/";
		margin:0 15px;
		color:#cccccc;
	}
	
	.global_list li .tel span:last-child::after{
		display: none;
	}
	
	.supplier_cont{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
	}
	
	.supplier_cont .txcont{
		width:100%;
	}
	
	.supplier_cont figure{
		width:100%;
	}
	
	.supplier_cont ul{
		counter-reset:number;
  		list-style-type: none!important;
		margin:0 0 10px 0;
		color:#333;
	}
	
	.supplier_cont p + ul{
		margin-top:15px;
	}
	
	.supplier_cont ul li{
		position: relative;
  		line-height: 2em;
  		padding: 7px 0 7px 35px;
	}
	
	.supplier_cont ul li:before{
		position: absolute;
  		counter-increment: number;
  		content: counter(number);
  		background: none;
  		color: 000;
		border:1px solid #000;
  		font-size: 1em;
		line-height: 2;
  		border-radius: 50%;
		top:7px;
  		left: 0;
  		width: 25px;
  		height: 25px;
  		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.supplier_imgbox{
		width:100%;
		padding:0;
	}
	
	.supplier_imgbox .innerbox{
		padding:0;
		background:#fff;
		border-radius: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		width:calc(100% + 4%);
		max-width: 450px;
		margin:0 auto;
	}
	
	/*performance*/
	
	.performance_list ul {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
		width:100%;
        margin: 0 auto;
        font-size: 1.4rem;
        padding: 0;
        color: #333;
    }
   .performance_list ul li {    
        width: calc((100% - 50px) / 2);
        font-family: "IBM Plex Sans JP", sans-serif;
  		font-weight: 400;
  		font-style: normal;
        list-style:disc;
        padding: 0 0 0 5px;
        margin: 0 0 0 15px;
        margin-bottom: 16px;
    }
	
	/*history*/
	.change_list{
		display: flex;
		margin:0 0 50px 0;
	}
	
	.change_list .box{
		width:25%;
		height:50px;
		padding:0 10px;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		font-size: 1.1rem;
		letter-spacing: 0.1em;
		cursor: pointer;
		position: relative;
	}
	
	.change_list .box.active{
		font-weight: 600;
		border:1px solid #c1bfcd;
		border-bottom:none;
	}
	
	.change_list .box:nth-child(1){
		color:#0e2b75;
	}
	
	.change_list .box:nth-child(1)::before{
		content: "";
		height: 100%;
		border-right:1px solid #c1bfcd;
		position: absolute;
		left:-1px;
		top:0;
	}
	
	.change_list .box:nth-child(1)::after{
		content: "";
		height: 100%;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:0;
	}
	
	.change_list .box:nth-child(2){
		color:#045566;
	}
	
	.change_list .box:nth-child(2)::after{
		content: "";
		height: 100%;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:0;
	}
	
	.change_list .box:nth-child(3){
		color:#6e0606;
	}
	
	.change_list .box:nth-child(3)::after{
		content: "";
		height: 100%;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:0;
	}
	
	.change_list .box:nth-child(4){
		color:#ab8322;
	}
	
	.change_list .box:nth-child(4)::after{
		content: "";
		height: 100%;
		border-right:1px solid #c1bfcd;
		position: absolute;
		right:-1px;
		top:0;
	}
	
	.bottom_cont{
		margin:30px 0 0 0;
	}
	
	.change_cont .box{
		display: none;
	}
	
	.change_cont .box:nth-child(1){
		display: block;
	}
	
	.change_cont .box table,
	.bottom_cont .box table{
		width:100%;
		border-collapse: collapse;
		line-height: 2em;
	}
	
	.change_cont .box table th,
	.bottom_cont .box table th{
		width:90px;
		vertical-align: top;
		font-size: 1.4rem;
		padding:15px 5px;
		border-top:1px solid #c1bfcd;
		border-bottom:1px solid #c1bfcd;
		font-weight: 400;
	}
	
	.change_cont .box:nth-child(1) table th{
		background:#e6edfb;
	}
	
	.change_cont .box:nth-child(2) table th{
		background:#e2f4f0;
	}
	
	.change_cont .box:nth-child(3) table th{
		background:#fff7f4;
	}
	
	.change_cont .box:nth-child(4) table th{
		background:#fff7e2;
	}
	
	.bottom_cont .box table th{
		background:#eee6fb;
	}
	
	.change_cont .box table td,
	.bottom_cont .box table td{
		vertical-align: top;
		font-size: 1.4rem;
		padding:15px 15px;
		border-top:1px solid #e8e8e8;
		border-bottom:1px solid #e8e8e8;
	}
	
	.change_cont .box:nth-child(1){
		display: block;
	}
	
	.change_cont span.co1{
		font-weight: 600;
		color:#045566;
		text-decoration: underline;
	}
	.change_cont span.co2{
		font-weight: 600;
		color:#6e0606;
		text-decoration: underline;
	}
	
	/*csr*/
	.csr_graph_cont{
		margin:0 0 50px 0;
		width:100%;
		padding:40px 0;
		background:#eaecf3;
	}
	
	.csr_graph_cont .innerbox{
		width:90%;
		max-width: 825px;
		margin:0 auto;
	}
	
	.csr_graph_cont .innerbox .txbox{
		padding:10px 10px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		letter-spacing: 0.05em;
		width:100%;
		background:#fff;
		border-radius: 5px;
		margin:0 0 15px 0;
	}
	
	.csr_graph_cont .innerbox .txbox.box2{
		padding:10px 10px;
	}
	
	.csr_graph_cont .innerbox .txbox .sub{
		font-size: 1.1rem;
		color:#460d43;
		font-weight: 600;
	}
	
	.csr_graph_cont .innerbox .txbox .mtl{
		font-size: 1.8rem;
		font-weight: 600;
	}
	
	.csr_graph_cont .innerbox .txbox .tl{
		font-size: 1.5rem;
		font-weight: 600;
		color:#460d43;
	}
	
	.csr_graph_cont .innerbox .eq{
		display: flex;
		justify-content: center;
		padding:0 0 15px 0;
	}
	
	.csr_graph_cont .innerbox .eq::after{
		content: "";
		width:8px;
		height:12px;
		border-left:3px solid #333;
		border-right:3px solid #333;
		display: block;
	}
	
	.csr_graph_cont .innerbox .imgbox{
		padding: 0 0 20px 0;
	}
	
	.csr_graph_cont .innerbox .flexbox{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin:0 0 -10px 0;
	}
	
	.csr_graph_cont .innerbox .flexbox .tx{
		font-size: 1.4rem;
		color:#fff;
		padding:10px 10px;
		font-weight: 500;
		margin:0 0 10px 0;
		border-radius: 5px;
		background:#9a91b2;
		text-align: center;
		width:100%;
	}
	
	.csr_list_cont{
		margin:30px 0 0 0;
	}
	
	.csr_list_cont .headtl{
		background:#2f4965;
		color:#fff;
		font-size: 1.5rem;
		line-height: 2em;
		font-weight: 500;
		text-align: center;
		letter-spacing: 0.1em;
		padding:5px 0;
		margin: 0 0 10px 0;
	}
	
	.csr_list_cont .flexbox{
		display: flex;
		border-bottom:1px solid #cecece;
		flex-direction: column;
	}
	
	.csr_list_cont .flexbox.bo{
		border-top:1px solid #cecece;
	}
	
	.csr_list_cont .flexbox .tl{
		padding:15px 5%;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		background-color:#e8f0f6;
		background-image:url("/images/common/plus_b.svg");
		background-size:15px;
		background-position: right 15px top 50%;
		background-repeat: no-repeat;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		font-weight: 600;
		width:100%;
	}
	
	.csr_list_cont .flexbox .tl.active{
		padding:15px 5%;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		background-color:#e8f0f6;
		background-image:url("/images/common/minus_b.svg");
		background-size:15px;
		background-position: right 15px top 50%;
		background-repeat: no-repeat;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		font-weight: 600;
		width:100%;
	}
	
	.csr_list_cont .flexbox .tx_icon{
		width:100%;
		display: none;
		padding:20px 0 20px 0;
		border-top:1px solid #cecece;
	}
	
	.csr_list_cont .flexbox .tx_icon .tx{
		width:100%;
		font-size: 1.4rem;
		line-height: 2em;
		letter-spacing: 0.1em;
	}
	
	.csr_list_cont .flexbox .tx_icon .iconbox{
		display: flex;
		justify-content: space-between;
		width:100%;
		padding:20px 0 0 0;
	}
	
	.csr_list_cont .flexbox .tx_icon .iconbox img{
		width:calc((100% - 20px) / 3);
	}
	
	.csr_graph_flexbox{
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		margin:0 0 50px 0;
	}
	
	.csr_graph_flexbox .txbox{
		width:100%;
	}
	
	.csr_graph_flexbox figure{
		width:100%;
		padding:40px 0 0 0;
	}
	
	.csr_scrollbox{
		width:100%;
		overflow: scroll;
	}
	
	.csr_scrollbox table{
		width:1065px;
		border-collapse: collapse;
		letter-spacing: 0.1em;
	}
	
	.csr_scrollbox table th{
		background:#39396b;
		color:#fff;
		text-align: center;
		font-size: 1.5rem;
		font-weight: 500;
		padding:15px 0;
	}
	
	.csr_scrollbox table td{
		border-bottom: 1px solid #cecece;
		padding:30px 0;
	}
	
	.csr_scrollbox table td:nth-child(1){
		width:90px;
		text-align: center;
		vertical-align: middle;
	}
	
	.csr_scrollbox table td:nth-child(1) span{
		width:45px;
		height:45px;
		background:#eaecf3;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size:1.8rem;
		color:#333366;
		margin:0 auto;
		font-weight: 500;
	}
	
	.csr_scrollbox table td:nth-child(2){
		width:32%;
		padding:30px 0;
		position: relative;
	}
	
	.csr_scrollbox table td:nth-child(2)::after{
		content: "";
		border-left:1px solid #cecece;
		height: calc(100% - 60px);
		position: absolute;
		top:30px;
		left: 0;
	}
	
	.csr_scrollbox table td:nth-child(2){
		vertical-align: top;
		width:33%;
	}
	
	.csr_scrollbox table td:nth-child(2) ul{
		padding:5px 30px;
		height: 100%;
		line-height: 2em;
		color:#333366;
		font-size: 1.4rem;
	}
	
	.csr_scrollbox table td:nth-child(2) ul li{
		text-indent: -15px;
		padding-left: 15px;
	}
	
	.csr_scrollbox table td:nth-child(2) ul li::before{
		content: "";
		width:10px;
		height: 10px;
		border-radius: 50%;
		display: inline-block;
		margin:0 5px 0 0;
		background:#333366;
	}
	
	.csr_scrollbox table td:nth-child(3){
		width:50px;
		text-align: center;
	}
	
	.csr_scrollbox table td:nth-child(3)::after{
		content: "";
		width: 0;
  		height: 0;
  		border-style: solid;
  		border-top: 11px solid transparent;
  		border-bottom: 11px solid transparent;
  		border-left: 20px solid #39396b;
  		border-right: 0;
		display: block;
	}
	
	.csr_scrollbox table td:nth-child(4){
		width:20%;
		padding:30px 0;
		vertical-align: top;
	}
	
	.csr_scrollbox table td:nth-child(4) p{
		width:100%;
		padding:40px 0;
		background:#eaecf3;
		display: flex;
		justify-content: center;
		align-items: center;
		text-align: center;
		font-size:1.4rem;
		color:#333366;
		margin:0 auto;
		font-weight: 600;
		line-height: 1.8em;
	}
	
	.csr_scrollbox table td:nth-child(5){
		vertical-align: top;
		width:33%;
	}
	
	.csr_scrollbox table td:nth-child(5) ul{
		padding:5px 30px;
		height: 100%;
		line-height: 2em;
		color:#333366;
		font-size: 1.4rem;
	}
	
	.csr_scrollbox table td:nth-child(5) ul li{
		text-indent: -15px;
		padding-left: 15px;
	}
	
	.csr_scrollbox table td:nth-child(5) ul li::before{
		content: "";
		width:10px;
		height: 10px;
		display: inline-block;
		margin:0 5px 0 0;
		background:#333366;
	}
	
.scroll__inner {
  background-color: #ffffff;
  padding: 0 0 0 0;
  overflow-x: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}
.scroll__inner::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}
	
.simplebar-scrollbar {
	top: 0 !important;
}
.simplebar-scrollbar::before {
  background: #ffffff;
  border-radius: 0 !important;
  height: 3px !important;
  margin-left: 0 !important;
  margin-top: 0 !important;
	left:0 !important;
	top: 0 !important;
}
.simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
.simplebar-track {
  background: #e5e5e5;
  height: 3px !important;
}
	
	
	/*privacy*/
	.privacy_cont{
		width:90%;
		margin:0 auto 50px;
		max-width: 1065px;
	}
	
	.privacy_cont .box{
		margin:0 0 30px 0;
	}
	
	.privacy_cont .box h2{
		margin:0 0 10px 0;
		font-size: 1.6rem;
		line-height: 1.5em;
		letter-spacing: 0.1em;
		font-weight: 600;
	}
	
	.privacy_cont .box p{
		margin:0 0 10px 0;
		font-size: 1.4rem;
		line-height: 2em;
		letter-spacing: 0.1em;
		color:#333;
	}
	
	.privacy_cont .box p.borderbox{
		padding:0 0 0 20px;
		border-left: 3px solid #e2e2e2;
	}
	
	.privacy_cont .box ul{
		counter-reset:number;
  		list-style-type: none!important;
		margin:0 0 10px 0;
		color:#333;
	}
	
	.privacy_cont .box ul li{
		position: relative;
  		line-height: 2em;
  		padding: 0 0 0 1.75em;
	}
	
	.privacy_cont .box ul li:before{
		position: absolute;
  		counter-increment: number;
  		content: counter(number);
  		background: none;
  		color: 000;
		border:1px solid #000;
  		font-size: 1rem;
		line-height: 2;
  		border-radius: 50%;
		top:0.5em;
  		left: 0;
  		width: 1.6rem;
  		height: 1.6rem;
  		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	
	.privacy_cont .box ul li ul{
		counter-reset:number2;
  		list-style-type: none!important;
		margin:10px 0 0 0;
	}
	
	.privacy_cont .box ul li ul li{
		position: relative;
  		line-height: 2em;
  		padding: 0 0 0 1.75em;
	}
	
	.privacy_cont .box ul li ul li:before{
		position: absolute;
  		counter-increment: number2;
  		content: counter(number2)".";
  		background: none;
  		color: 000;
		border:none;
		font-size: 1em;
		top:0.45em;
	}
	
	/*include*/
	#company_list{
		padding:50px 0;
		background:#f5f6f6;
	}
	
	#company_list .innerbox{
		width:90%;
		margin:0 auto;
		max-width: 1065px;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
	}
	
	#company_list .innerbox .tl{
		font-size:1.5rem;
		font-weight: 600;
		line-height: 1.6em;
		letter-spacing: 0.1em;
		margin:0 0 20px 0;
		display: flex;
		align-items: center;
		width:100%;
	}
	
	#company_list .innerbox .tl span{
		width:16px;
		height:16px;
		border-radius: 50%;
		background:#460d43;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 5px 0 0;
	}
	
	#company_list .innerbox .tl span::before{
		content: "";
		width: 4px;
  		height: 4px;
  		background: none;
		transform: rotate(-45deg) skew(10deg, 10deg);
		border-right:1px solid #fff;
		border-bottom:1px solid #fff;
		transition: all 0.3s;
		position: relative;
		z-index: 2;
		left:-1px;
	}
	
	#company_list .innerbox .linklist{
		width:100%;
		padding:0 0 10px 0;
		margin: 0 0 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		box-sizing: border-box;
	}
	
	#company_list .innerbox .linklist::after{
		content: "";
		width:calc((100% - min(10vw,100px)) / 3);
		height: 0;
		display: block;
	}
	
	#company_list .innerbox a.arrow_link{
		width:calc((100% - min(5vw,20px)) / 2);
		padding:20px 25px 20px 10px !important;
		display: flex;
		align-items: center;
	}
	
	#company_list .innerbox a.arrow_link span{
		width:20px;
	}
	
	#company_list .innerbox a.arrow_link:nth-child(3) span{
		border-top:none;
	}
	
	#company_list .innerbox a.arrow_link span:after{
		width:20px;
	}
	
	#company_list .innerbox a.arrow_link figure{
		width:110px;
		margin:0 25px 0 0;
	}
	
	#company_list .innerbox a.arrow_link .txbox{
		width:calc(100% - 110px - 25px);
	}
	
	#company_list .innerbox a.arrow_link .txbox .tl{
		font-size: 1.8rem;
		margin: 0 0 7px 0;
		color:#333;
	}
	
	#company_list .innerbox a.arrow_link .txbox .tx{
		font-size: 1.2rem;
		line-height: 1.8em;
		letter-spacing: 0.1em;
		color:#666;
	}
}