/* CSS Document */
@charset "UTF-8";

.sp_only{display: none;}

.cardo{ font-family: 'Cardo', serif;font-weight: 400;letter-spacing: 0;}
.nserif{font-family: 'Noto Serif JP', serif;font-weight: 400;}

.c_cover img{width:100%;height:100%;object-fit:cover;}
.c_contain img{width:100%;height:100%;object-fit:contain;}

.c_link01{font-size: 14px;line-height:20px;color: #1C458E;}
.c_link01 i{font-size: 10px;margin-left:8px;width: 20px;line-height: 20px;border-radius: 50%;background: #1C458E;color: #FFF;text-align: center;overflow:hidden;vertical-align:bottom;}
.c_link01 span{position:relative;}
.c_link01 span::before{content:"";width:0%;height:1px;background:#1C458E;position:absolute;bottom:0;right:0;transition:0.5s;}
.c_link01:hover span::before{width:100%;left:0;right:auto;}
.c_link01:hover i::before{display:block;animation: arrow-scroll 500ms ease;}
	
@keyframes arrow-scroll {
	0% {transform:translateX(0);}
	50% {transform:translateX(100%);}
	51% {transform:translateX(-100%);}
	100% {transform:translateX(0);}
}
	
@keyframes arrow-scroll-r {
	0% {transform:translateX(0);}
	50% {transform:translateX(-100%);}
	51% {transform:translateX(100%);}
	100% {transform:translateX(0);}
}
	
.c_pagenation{font-size: 18px;display:flex;justify-content:center;flex-wrap:wrap;text-align:center;}
.c_pagenation *{min-width: 15px;margin: 10px 15px;padding:2px;box-sizing:border-box;}
.c_pagenation p{color: #1C458A;position:relative;}
.c_pagenation p::before{content:"";width:100%;height:1px;background:#1C458A;position:absolute;bottom:-5px;left:0;}


.c_return {display:block;position:relative;font-size:14px;line-height:60px;width:280px;text-align:center;color:#FFF;background:#1C458E;margin: 0 auto;}
.c_return i{font-size: 10px;width: 20px;line-height: 20px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;position:absolute;top:50%;right:15px;transform:translateY(-50%);}
.c_return span{position:relative;}
.c_return span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
.c_return:hover span::before{width:100%;left:0;right:auto;}
.c_return:hover i::before{display:block;animation: arrow-scroll 500ms ease;}

.c_submit {display:block;position:relative;font-size:14px;line-height:60px;width:280px;text-align:center;color:#FFF;background:#1C458E;margin: 0 auto;}
.c_submit i{font-size: 10px;width: 20px;line-height: 20px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;position:absolute;top:50%;right:15px;transform:translateY(-50%);}
.c_submit input{position:relative;width:100%;border-radius:0;padding:0;border:none;text-align:center;display:block; -webkit-appearance: none;cursor:pointer;background:rgba(0,0,0,0);}
.c_submit input::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
.c_submit:hover input::before{width:100%;left:0;right:auto;}
.c_submit:hover i::before{display:block;animation: arrow-scroll 500ms ease;}

@media(min-width:835px){
	a[href^="tel:"]{pointer-events:none;}
}
header {position:absolute;width:100%;box-sizing:border-box;z-index:100;}
header .wrap{margin: 0 auto;display:flex;justify-content:space-between;}
header .logo {width:110px;margin:30px 0 0  40px;}
header nav .navwrap{display:flex;flex-wrap:wrap;justify-content:flex-end;}
header nav .link{position:relative;overflow:visible;transition:0.5s;}
header nav .link::before{content:"";width:0%;height:1px;background:#1C458E;position:absolute;bottom:0;right:0;transition:0.5s;}
header nav .navwrap01{font-size:15px;order:2;width:100%;margin-top:30px;text-align:right;padding:0 25px;color:#FFF;}
header nav .navwrap01 .link{padding:10px 10px;}
header nav .navwrap01 .link::before{background:#FFF;}
header nav .navwrap01 .link:hover::before{width:100%;left:0;right:auto;}
header nav .navwrap02{font-size:13px;line-height:20px;color:#4C4C4C;display:flex;background:#FFF;align-self: flex-start;}
header nav .navwrap02 .link{padding:5px 22px;}
header nav .navwrap02 .link + .link{margin-left:3px;}
header nav .navwrap02 .link + .link::after{content:"";position:absolute;top:calc(50% - 10px);left:-2px;width:1px;height:20px;background:#D2D8DE;}
header nav .navwrap02 .link:hover{color:#1C458E;}
header nav .navwrap02 .link:hover::before{width:100%;left:0;right:auto;}

body.top header {padding:10px;}
body.top header nav .navwrap02{padding:0 0 10px 10px;}

body:not(.top) header {}
body:not(.top) header nav .navwrap02{padding:10px 10px 10px 10px;}


body.nohero main{padding-top:200px;}
@media(min-width:835px){
	body.nohero .navwrap01 {color:#000000;}
	body.nohero .navwrap02 {background:#F2F2F2;}
	body.nohero header nav .navwrap01 .link::before{background:#000000;}
}

@media(max-width:834px){
	header .logo {width:90px;margin:22px 0 0  22px;}
	header nav {position:fixed;top:0;right:0;z-index:100;width:0;height:100vh;transition:0.5s;background:#FFF;box-sizing:border-box;display:block;overflow:scroll;}
	header nav .navwrap{min-height:100vh;padding-top:125px;display:block;}
	header nav .navwrap01{width:275px;display:block;padding:0;margin: 0 auto;}
	header nav .navwrap01 .link{font-size:15px;line-height:20px;padding:2px;margin: 14px 0!important;color:#000;display:block;text-align:left;}
	header nav .navwrap01 .sp_link{font-size:13px;line-height:20px;padding:2px;margin: 14px 0!important;color:#999999;display:block;text-align:left;}
	header nav .navwrap02{width:275px;display:block;padding:0!important;margin: 0 auto;}
	header nav .navwrap02 .link{font-size:15px;line-height:20px;padding:2px;margin: 14px 0!important;color:#000;display:block;}
	header nav .navwrap02 .link::after{display:none;}
	header #humb.active + nav{width:100%;}
	header #humb{color:#FFF;font-size:10px;display:flex;cursor:pointer;order:3;position:fixed;top:0;right:0;width:70px;height:70px;padding:20px;box-sizing:border-box;background:#FFF;z-index:10000;}
	header #humb .name{align-self:center;margin-right:10px;}
	header #humb .border{width:30px;height:30px;position:relative;}
	header #humb .border01{position:absolute;width:30px;height:2px;background:#1C458E;top:7px;left:50%;transform:translate(-50%, -50%);transition:0.5s;}
	header #humb .border02{position:absolute;width:30px;height:2px;background:#1C458E;top:50%;left:50%;transform:translate(-50%, -50%);transition:0.5s;}
	header #humb .border03{position:absolute;width:30px;height:2px;background:#1C458E;bottom:7px;left:50%;transform:translate(-50%, 50%);transition:0.5s;}
	header #humb.active .border01{top:50%;transform:translate(-50%, -50%) rotate(135deg);} 
	header #humb.active .border02{width:0;} 
	header #humb.active .border03{bottom:50%;transform:translate(-50%, 50%) rotate(-135deg);} 
}

footer .ban_contact .link{padding:64px 0;background:#1C458E;text-align:center;display:block;position:relative;transition:0.5s;}
footer .ban_contact .link:hover{background:#0F3B7C;}
footer .ban_contact .wrap{width:1200px;max-width:100%;margin: 0 auto;position:relative;}
footer .ban_contact .etitle{font-size: 13px;line-height: 20px;color: #FFFFFF;margin-bottom: 5px;}
footer .ban_contact .title{font-size: 30px;letter-spacing: 0.1em;color: #FFFFFF;margin-bottom: 25px;}
footer .ban_contact .capture{font-size: 14px;line-height: 24px;color:#FFFFFF;}
footer .ban_contact .icon {position:absolute;top:50%;right:50px;transform:translateY(-50%);}
footer .ban_contact .icon i{font-size: 15px;width: 40px;line-height: 40px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;}
footer .ban_contact .icon span{position:relative;}
footer .ban_contact .icon span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
footer .ban_contact .link:hover .icon span::before{width:100%;left:0;right:auto;}
footer .ban_contact .link:hover .icon i::before{display:block;animation: arrow-scroll 500ms ease;}

footer .sec_footer{padding:55px 0 30px;}
footer .sec_footer .wrap{width:1100px;max-width:100%;margin: 0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;}
footer .sec_footer .logos{}
footer .sec_footer .logos .logo{width:110px;margin-bottom:20px;}
footer .sec_footer .logos .name{font-size:14px;line-height:24px;}
footer .sec_footer .logos .address{font-size:14px;line-height:24px;}
footer .sec_footer .logos .tels{font-size:14px;line-height:24px;}
footer .sec_footer .logos .tels .tel{margin-right:10px;}
footer .sec_footer .logos .sns{font-size:14px;line-height:24px;display: flex;margin: 30px 0;}
footer .sec_footer .logos .sns .link{font-size: 23px;width:23px;line-height:100%;letter-spacing:0;text-align:center;display: block;transition:0.5s;}
footer .sec_footer .logos .sns .link + .link{margin-left:25px;}
footer .sec_footer .logos .sns .link:hover{color:#1C458E;}

footer .sec_footer .links{display:flex;flex-wrap:wrap;flex-direction:column;justify-content:space-between;align-content:space-between;width:400px;height:210px;}
footer .sec_footer .links .link01{display:block;font-size:0;line-height:0;}
footer .sec_footer .links .link02{display:block;font-size:0;line-height:0;}
footer .sec_footer .links .link01 a{display:inline-block;font-size:15px;line-height:21px;}
footer .sec_footer .links .link02 a{display:inline-block;font-size:13px;line-height:16px;color:#999999;}
footer .sec_footer .links .link01 + *{margin-top:12px;}
footer .sec_footer .links .link02 + *{margin-top:7px;}
footer .sec_footer .links a{position:relative;padding:2px;display:inline-block;}
footer .sec_footer .links a::before{content:"";width:0%;height:1px;background:#1C458E;position:absolute;bottom:0;right:0;transition:0.5s;}
footer .sec_footer .links a:hover{color:#1C458E;}
footer .sec_footer .links a:hover::before{width:100%;left:0;right:auto;}
footer .sec_footer .copyright{font-size:13px;color:#999999;width:100%;padding-top:35px;border-top:1px solid #E3E9EF;}

@media(max-width:834px){

	footer .ban_contact .link{padding:0;}
	footer .ban_contact .wrap{padding:35px 80px 35px 20px;box-sizing:border-box;text-align:left;}
	footer .ban_contact .title{font-size: 24px;margin-bottom: 15px;}
	footer .ban_contact .icon {right:20px;}
	footer .ban_contact .icon i{font-size: 10px;width: 20px;line-height: 20px;}
/*footer .ban_contact .icon span{position:relative;}*/
/*footer .ban_contact .icon span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}*/
/*footer .ban_contact .link:hover .icon span::before{width:100%;left:0;right:auto;}*/
/*footer .ban_contact .link:hover .icon i::before{display:block;animation: arrow-scroll 500ms ease;}*/

	footer .sec_footer{padding:35px 20px;}
/*footer .sec_footer .wrap{width:1100px;max-width:100%;margin: 0 auto;display:flex;justify-content:space-between;flex-wrap:wrap;}*/
/*footer .sec_footer .logos{}*/
/*footer .sec_footer .logos .logo{width:110px;margin-bottom:20px;}*/
/*footer .sec_footer .logos .name{font-size:14px;line-height:24px;}*/
/*footer .sec_footer .logos .address{font-size:14px;line-height:24px;}*/
/*footer .sec_footer .logos .tels{font-size:14px;line-height:24px;}*/
/*footer .sec_footer .logos .tels .tel{margin-right:10px;}*/
/*footer .sec_footer .logos .sns{font-size:14px;line-height:24px;display: flex;margin: 30px 0;}*/
/*footer .sec_footer .logos .sns .link{font-size: 23px;width:23px;line-height:100%;letter-spacing:0;text-align:center;display: block;transition:0.5s;}*/
/*footer .sec_footer .logos .sns .link + .link{margin-left:25px;}*/
/*footer .sec_footer .logos .sns .link:hover{color:#1C458E;}*/

	footer .sec_footer .links{display:none;}
/*footer .sec_footer .copyright{font-size:13px;color:#999999;width:100%;padding-top:35px;border-top:1px solid #E3E9EF;}*/

}

.sec_subhero{position: relative;width: 100%;height: 500px;}
.sec_subhero .titles{position: absolute;top:270px;width: 100%;text-align: center;color: #FFFFFF;}
.sec_subhero .img{height: 100%; }
.sec_subhero .etitle{font-size: 13px;}
.sec_subhero .title{font-size: 30px;line-height: 53px;letter-spacing: 0.1em;}

.sec_subhero02{position: relative;width: 100%;height: 500px;}
.sec_subhero02 .titles{position: absolute;top:250px;width: 100%;text-align: center;color: #FFFFFF;}
.sec_subhero02 .img{height: 100%; }
.sec_subhero02 .etitle{font-size: 13px;}
.sec_subhero02 .title{font-size: 30px;line-height: 53px;letter-spacing: 0.1em;}
.sec_subhero02 .caption{font-size: 18px;line-height: 33px;width:280px;letter-spacing: 0.1em;text-align:center;border:1px solid #FFFFFF;display:inline-block;margin-top:15px;}


.top .sec_hero{position: relative;width:100%;height: 100vh;border: 10px solid #FFFFFF;box-sizing:border-box;}
.top .sec_hero .slider{width:100%;height:100%;position:relative;overflow:hidden;}
.top .sec_hero .slider .img{width:100%;height:100%;position:absolute;top:0;transition:1s;}
.top .sec_hero .slider .img:nth-child(1){left:-100%;}
.top .sec_hero .slider .img:nth-child(2){left:0%;}
.top .sec_hero .slider .img:nth-child(3){left:100%;}
.top .sec_hero .texts{position:absolute;top:50%;right:50%;transform:translate(50%,-40%);}
.top .sec_hero .title{font-size: 38px;color: #FFFFFF;display: flex;justify-content: center;align-items: center;margin-bottom: 20px;padding-bottom: 25px;border-bottom: 1px solid #FFFFFF;}
.top .sec_hero .title >*:nth-of-type(1){letter-spacing: 0.2em;}
.top .sec_hero .title >*:nth-of-type(2){letter-spacing: 0;}
.top .sec_hero .title .img{margin: 0 16px;width: 54px;}
.top .sec_hero .text{font-size: 20px;letter-spacing: 0.35em;color: #FFFFFF;text-align: center;}
.top .sec_hero .sns{position: absolute;left: 40px;bottom:25px;display: flex;}
.top .sec_hero .sns .link{font-size: 25px;width:25px;line-height:100%;letter-spacing:0;text-align:center;color: #FFFFFF;display: block;transition:0.5s;}
.top .sec_hero .sns .link + .link{margin-left:25px;}
.top .sec_hero .sns .link:hover{color:#1C458E;}

.top .sec01{position: relative;padding-top: 70px;background: linear-gradient(to top,#1C458E 135px,#F2F2F2 135px 100%);}
.top .sec01 .wrap{width: 1100px;max-width: 100%;margin: 0 auto;display: flex;position:relative;z-index:2;}
.top .sec01 .titles{padding:40px 39px 0;height:240px;box-sizing:border-box;writing-mode:vertical-rl;-ms-writing-mode: tb-rl;background: #FFFFFF;}
.top .sec01 .title{font-size: 30px;line-height: 40px;letter-spacing: 0.1em;margin-right:2px;}
.top .sec01 .etitle{font-size: 13px;line-height: 20px;color:#1C458E;}
.top .sec01 .texts{width:calc(100% - 140px);margin-top: 50px;padding-left: 42px;box-sizing:border-box;}
.top .sec01 .text{font-size: 14px;line-height: 24px;margin-bottom: 14px;}
.top .sec01 .img{height:400px;width:calc(600px + 50%);max-width:100%;margin:-85px 0 0 auto;}
.top .sec02{background: linear-gradient(to right,#1C458E 50%,#0F3B7C 50% 100%);padding:68px 0 68px;}
.top .sec02 .wrap{width: 1100px;max-width: 100%;margin: 0 auto;text-align: center;}
.top .sec02 .img{overflow:hidden;}
.top .sec02 .img img{transition:0.5s;}
.top .sec02 .titles .etitle{font-size: 13px;line-height: 20px;color: #FFFFFF;margin-bottom:5px;}
.top .sec02 .titles .title{font-size: 30px;letter-spacing: 0.1em;color: #FFFFFF;margin-bottom: 20px;}
.top .sec02 .links{margin-bottom: 26px;display: flex;}
.top .sec02 .link{position: relative;width: 50%;}
.top .sec02 .link .texts{position:absolute;top:50%;width:100%;left:0;transform:translateY(-20%);text-align:center;}
.top .sec02 .link .title{font-size: 24px;line-height: 30px;letter-spacing: 0.1em;color: #FFFFFF;margin-bottom: 20px;}
.top .sec02 .link .icon{font-size: 14px;line-height:20px;color: #FFF;}
.top .sec02 .link .icon i{font-size: 10px;margin-left:8px;width: 20px;line-height: 20px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;vertical-align:bottom;}
.top .sec02 .link .icon span{position:relative;}
.top .sec02 .link .icon span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
.top .sec02 .link:hover .img img{transform:scale(1.1);}
.top .sec02 .link:hover .icon span::before{width:100%;left:0;right:auto;}
.top .sec02 .link:hover .icon span::before{width:100%;left:0;right:auto;}
.top .sec02 .link:hover .icon i::before{display:block;animation: arrow-scroll 500ms ease;}
.top .sec02 .capture{font-size: 16px;line-height: 24px;color: #FFFFFF;text-align: center;}
	
.top .sec03{padding: 72px 0;}
.top .sec03 .wrap{width: 900px;max-width: 100%;min-height:270px;margin: 0 auto;position: relative;display: flex;justify-content: space-between;}
.top .sec03 .titles{writing-mode: vertical-rl;-ms-writing-mode: tb-rl;order:2;}
.top .sec03 .titles .etitle{font-size: 13px;line-height: 100%;color: #1C458E;}
.top .sec03 .titles .title{	font-size: 30px;line-height: 40px;letter-spacing: 0.1em;margin-right:5px;}
.top .sec03 .posts{width: 700px;max-width: calc(100% - 112px);border-top:1px solid #E3E9Ef;}
.top .sec03 .post{font-size: 14px;display: block;padding: 21px 20px 20px 0;border-bottom:1px solid #E3E9Ef;position: relative;}
.top .sec03 .post::before{content:"";width:0%;height:1px;background:#1C458E;position:absolute;bottom:0;right:0;transition:0.5s;}
.top .sec03 .post::after{font-size: 10px;color: #1C458E;font-family: "Font Awesome 5 Free"; font-weight: 600;content:"\f061";position: absolute;right: 10px;top: 50%;transform: translate(50%,-50%);transition:0.5s;}
.top .sec03 .post:hover::before{width:100%;left:0;right:auto;}
.top .sec03 .post:hover::after{right:0;transform: translate(0%,-50%);}
.top .sec03 .post .date{font-size: 12px;line-height: 24px;color:#999999;}
.top .sec03 .post .title{font-size: 14px;line-height: 24px;}
.top .sec03 .link{position: absolute;right: 0;bottom: 0;}
	
.top .sec04{background: linear-gradient(to bottom,transparent 110px,#F2F2F2 110px);margin-bottom: 70px;padding-bottom:50px;}
.top .sec04 .img{height:400px;width:calc(600px + 50%);max-width:100%;margin:0 auto 0 0;}
.top .sec04 .wrap{width: 900px;max-width: 100%;margin: -105px auto 0;display: flex;position:relative;z-index:2;}
.top .sec04 .titles{padding:40px 39px 0;height:210px;box-sizing:border-box;writing-mode:vertical-rl;-ms-writing-mode: tb-rl;background: #FFFFFF;}
.top .sec04 .title{font-size: 30px;line-height: 40px;letter-spacing: 0.1em;margin-right:2px;}
.top .sec04 .etitle{font-size: 13px;line-height: 20px;color:#1C458E;}
.top .sec04 .texts{margin-left: 60px;align-self:flex-end;}
.top .sec04 .text{font-size: 14px;margin-bottom: 16px;}

.top .sec05{margin-bottom: 70px;}
.top .sec05 .link{display:block;width: 900px;max-width: 100%;margin: 0 auto;position:relative;}
.top .sec05 .img{width:100%;overflow:hidden;}
.top .sec05 .img img{transition:0.5s;}
.top .sec05 .texts{width:100%;text-align:center;position:absolute;top:50%;left:0;transform:translateY(-50%);}
.top .sec05 .etitle{font-size: 13px;line-height: 20px;color: #FFFFFF;margin-bottom:5px;}
.top .sec05 .title{font-size: 30px;letter-spacing: 0.1em;color: #FFFFFF;margin-bottom: 25px;}
.top .sec05 .capture{font-size: 14px;line-height: 24px;color:#FFFFFF;margin-bottom: 18px;}
.top .sec05 .icon{font-size: 14px;line-height:20px;color: #FFF;}
.top .sec05 .icon i{font-size: 10px;margin-left:8px;width: 20px;line-height: 20px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;vertical-align:bottom;}
.top .sec05 .icon span{position:relative;}
.top .sec05 .icon span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
.top .sec05 .link:hover .img img{transform:scale(1.1);}
.top .sec05 .link:hover .icon span::before{width:100%;left:0;right:auto;}
.top .sec05 .link:hover .icon i::before{display:block;animation: arrow-scroll 500ms ease;}

.p_company .sec01 {position:relative;padding:70px 0;}
.p_company .sec01::before {content:"";width:calc(50% + 550px);max-width:100%;height:calc(100% - 160px);background:#F2F2F2;position:absolute;top:0;left:0;z-index:-1;}
.p_company .sec01 .texts{width:1100px;max-width:100%;background:#FFF;margin:0 auto;padding-left:180px;padding-top:65px;box-sizing:border-box;position:relative;}
.p_company .sec01 .title{font-size:28px;letter-spacing:0.1em;writing-mode: vertical-rl;-ms-writing-mode: tb-rl;position:absolute;top:70px;left:80px;}
.p_company .sec01 .text{font-size:14px;line-height:24px;text-align:justify;}
.p_company .sec01 .ceo{font-size:14px;line-height:24px;text-align:right;margin-top:25px;}
.p_company .sec01 .ceo .name{font-size:18px;}
	
.p_company .sec02 {position:relative;background:#F2F2F2;padding-bottom:70px;}
.p_company .sec02 .img{width:100%;height:380px;position:absolute;top:0;left:0;z-index:1;}
.p_company .sec02 .title{font-size:28px;letter-spacing:0.1em;color:#FFF;text-align:center;padding:60px 0;position:relative;z-index:2;}
.p_company .sec02 dl{font-size:14px;line-height:24px;width:1100px;max-width:100%;padding:40px 75px;box-sizing:border-box;background:#FFF;display:flex;flex-wrap:wrap;margin: 0 auto;position:relative;z-index:2;}
.p_company .sec02 dt{width:100px;color:#1C4589;padding:23px 0;}
.p_company .sec02 dd{width:calc(100% - 100px);padding:23px 0;}
.p_company .sec02 dt:nth-of-type(n + 2){border-top:1px solid #DEE4EA;}
.p_company .sec02 dd:nth-of-type(n + 2){border-top:1px solid #DEE4EA;}
.p_company .sec02 iframe{width:1100px;max-width:100%;height:340px;display:block;margin: 0 auto;}


.p_works .sec01 .wrap{width: 1100px;max-width: 100%;margin: 70px auto;}
.p_works .sec01 .items{display: flex;justify-content: space-between;flex-wrap: wrap;}
.p_works .sec01 .items::after{content:"";width: 330px;max-width: 100%;}
.p_works .sec01 .item{margin-bottom:50px;width: 330px;max-width: 100%;}
.p_works .sec01 .img{margin-bottom: 10px;height:220px;overflow:hidden;}
.p_works .sec01 .img img{transition:0.5s;}
.p_works .sec01 a:hover .img img{transform:scale(1.1);}
.p_works .sec01 .title{font-size: 14px;line-height: 21px;letter-spacing: 0.05em;}

.p_work .sec01 .wrap{width: 1000px;max-width: 100%;margin: 0 auto;text-align:center;}
.p_work .sec01 .title{font-size:24px;line-height:42px;margin-bottom:10px;}
.p_work .sec01 .text{font-size:14px;line-height:24px;margin-bottom:10px;}
.p_work .sec01 .img{width:100%;margin: 50px auto 0;}
.p_work .sec01 .img.h100{height:1000px;max-width:100vw;width:auto;}
.p_work .sec01 .img.h100 img{height:100%;width:auto;}

.p_work .sec01 .return_wrap {margin: 65px auto;text-align:center;}
.p_work .sec01 .return {display:inline-block;}

.p_work .sec01 .return{font-size: 14px;line-height:20px;color: #1C458E;}
.p_work .sec01 .return i{font-size: 10px;margin-right:8px;width: 20px;line-height: 20px;border-radius: 50%;background: #1C458E;color: #FFF;text-align: center;overflow:hidden;vertical-align:bottom;}
.p_work .sec01 .return span{position:relative;}
.p_work .sec01 .return span::before{content:"";width:0%;height:1px;background:#1C458E;position:absolute;bottom:0;left:0;transition:0.5s;}
.p_work .sec01 .return:hover span::before{width:100%;right:0;left:auto;}
.p_work .sec01 .return:hover i::before{display:block;animation: arrow-scroll-r 500ms ease;}


.p_takumi .sec01 {position:relative;padding:50px 0 80px;}
.p_takumi .sec01 .title{font-size:28px;letter-spacing:0.55em;text-align:center;margin-bottom:60px;}
.p_takumi .sec01 .title span{position:relative;font-size:50px;margin-right: 0.2em;}
.p_takumi .sec01 .title span::before{content:"";position:absolute;top:50%;left:50%;width:80px;height:80px;background:#EAECF1;transform:translate(-50%,-45%) rotate(45deg);z-index:-1;}
.p_takumi .sec01 .subtitle{font-size:28px;letter-spacing:0.1em;text-align:center;margin-bottom:15px;}
.p_takumi .sec01 .text{font-size:14px;line-height:30px;letter-spacing:0.1em;text-align:center;}
	
.p_takumi .sec02 {margin-top:50px;background:linear-gradient(to right , #F2F2F2 50% , transparent 50%);}
.p_takumi .sec02 .area{width:1100px;max-width:100%;display:flex;background:#F2F2F2;justify-content:space-between;margin: 0 auto;}
.p_takumi .sec02 .img{width:550px;max-width:100%;transform:translateY(-50px);}
.p_takumi .sec02 .texts{display:flex;flex-wrap:wrap;align-content:center;width:510px;padding-right:50px;box-sizing:border-box;}
.p_takumi .sec02 .title{font-size:28px;letter-spacing:0.1em;margin-bottom:10px;}
.p_takumi .sec02 .text{font-size:14px;line-height:24px;text-align:justify;}

.p_takumi .sec03 {padding:60px 0 70px;}
.p_takumi .sec03 .title{font-size:28px;letter-spacing:0.1em;margin-bottom:15px;color:#1C4582;text-align:center;}
.p_takumi .sec03 .items{width:1100px;max-width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;margin: 0 auto;}
.p_takumi .sec03 .item{margin-top:60px;border: 1px solid #1C4582;width:340px;height:150px;padding-top:20px;box-sizing:border-box;display:flex;align-items:center;justify-content:center;text-align:center;position:relative;}
.p_takumi .sec03 .item .num{font-size:60px;color:#1C4582;position:absolute;top:0;left:50%;width:120px;text-align:center;background:#FFF;transform:translate(-50%,-50%);}
.p_takumi .sec03 .item .text{font-size:20px;line-height:35px;letter-spacing:0.1em;color:#1C4582;}

.p_takumi .sec04 {margin-top:50px;margin-bottom:70px;background:linear-gradient(to left , #F2F2F2 50% , transparent 50%);}
.p_takumi .sec04 .area{width:1100px;max-width:100%;display:flex;background:#F2F2F2;justify-content:space-between;margin: 0 auto;}
.p_takumi .sec04 .img{width:550px;max-width:100%;transform:translateY(-50px);order:2;}
.p_takumi .sec04 .texts{display:flex;flex-wrap:wrap;align-content:center;width:510px;padding-left:50px;box-sizing:border-box;}
.p_takumi .sec04 .title{font-size:28px;letter-spacing:0.1em;margin-bottom:10px;}
.p_takumi .sec04 .text{font-size:14px;line-height:24px;text-align:justify;}

.p_wood .sec01{padding:45px 0 70px;}
.p_wood .sec01 .wrap{width: 1100px;max-width: 100%;margin: 0 auto;}
.p_wood .sec01 .caption{font-size: 14px;line-height: 30px;letter-spacing: 0.1em;text-align: center;margin-bottom: 40px;}
.p_wood .sec01 .gallery{display: flex;justify-content: space-between;flex-wrap:wrap;}
.p_wood .sec01 .gallery .img{width:360px;}
.p_wood .sec02{padding: 70px 0;background: #F2F2F2;}
.p_wood .sec02 .wrap{width: 1100px;max-width:100%;margin: 0 auto;padding: 45px 75px 70px;background: #FFFFFF;box-sizing:border-box;}
.p_wood .sec02 .title{font-size: 28px;text-align: center;letter-spacing: 0.1em;margin-bottom: 45px;}
.p_wood .sec02 .row{display: flex;align-items: center;}
.p_wood .sec02 .row + .row{margin-top: 20px;padding-top: 20px;border-top: 1px solid #D6DCE2;}
.p_wood .sec02 .number {font-size: 50px;width: 85px;}
.p_wood .sec02 .img{width: 200px;}
.p_wood .sec02 .texts{width: calc(100% - 285px);padding-left:30px;box-sizing:border-box;}
.p_wood .sec02 .subtitle{font-size: 20px;line-height: 35px;letter-spacing: 0.1em;margin-bottom: 5px;}
.p_wood .sec02 .text{font-size: 14px;line-height: 24px;text-align:justify;}
.p_wood .sec03{position:relative;}
.p_wood .sec03 .text{font-size: 14px;line-height: 30px;letter-spacing: 0.1em;color: #FFFFFF;text-align: center;position: absolute;top:50%;transform: translateY(-50%);width:100%;}
.p_wood .sec03 .img{height: 245px;}

.p_possible .sec01{	padding: 50px 0 15px;}
.p_possible .sec01 .caption{font-size: 14px;line-height: 30px;letter-spacing: 0.1em;text-align: center;margin-bottom: 48px;}
.p_possible .sec01 .items{display: flex;justify-content: space-between;flex-wrap: wrap;width: 1100px;max-width: 100%;margin: 0 auto;}
.p_possible .sec01 .item{margin-bottom: 50px;width: 330px;}
.p_possible .sec01 .img{margin-bottom: 10px;}
.p_possible .sec01 .title{font-size: 20px;line-height: 30px;letter-spacing: 0.1em;margin-bottom: 5px;}
.p_possible .sec01 .text{font-size: 14px;line-height: 24px;text-align:justify;}
.p_possible .sec02{background: #F1F1F1;padding:68px 0 70px;}
.p_possible .sec02 .wrap{width: 1100px;max-width: 100%;margin: 0 auto;text-align: center;}
.p_possible .sec02 .titles .etitle{font-size: 13px;line-height: 20px;color: #1C458D;margin-bottom:5px;}
.p_possible .sec02 .titles .title{font-size: 30px;letter-spacing: 0.1em;margin-bottom: 20px;}
.p_possible .sec02 .links{display: flex;}
.p_possible .sec02 .link{position: relative;width: 50%;}
.p_possible .sec02 .link .img{overflow:hidden;}
.p_possible .sec02 .link .img img{transition:0.5s;}
.p_possible .sec02 .link .texts{position:absolute;top:50%;width:100%;left:0;transform:translateY(-20%);text-align:center;}
.p_possible .sec02 .link .title{font-size: 24px;line-height: 30px;letter-spacing: 0.1em;color: #FFFFFF;margin-bottom: 20px;}
.p_possible .sec02 .link .icon{font-size: 14px;line-height:20px;color: #FFF;}
.p_possible .sec02 .link .icon i{font-size: 10px;margin-left:8px;width: 20px;line-height: 20px;border-radius: 50%;background: #FFF;color: #1C458E;text-align: center;overflow:hidden;vertical-align:bottom;}
.p_possible .sec02 .link .icon span{position:relative;}
.p_possible .sec02 .link .icon span::before{content:"";width:0%;height:1px;background:#FFF;position:absolute;bottom:0;right:0;transition:0.5s;}
.p_possible .sec02 .link:hover img{transform:scale(1.1);}
.p_possible .sec02 .link:hover .icon span::before{width:100%;left:0;right:auto;}
.p_possible .sec02 .link:hover .icon i::before{display:block;animation: arrow-scroll 500ms ease;}

.p_news .sec01{padding-bottom:60px;}
.p_news .sec01 .items{width:1100px;max-width:100%;margin: 15px auto 50px;}
.p_news .sec01 .item{padding:45px 0 50px;border-bottom: 1px solid #DFE5EB;}
.p_news .sec01 .date{font-size:12px;color:#959595;margin-bottom:5px;}
.p_news .sec01 .title{font-size:24px;letter-spacing:0.1em;margin-bottom:20px;}
.p_news .sec01 .text{font-size:14px;line-height:24px;}
.p_news .sec01 .imgs{display:flex;flex-wrap:wrap;justify-content:space-between;margin-top:30px;}
.p_news .sec01 .img{width:calc(50% - 10px);height:405px;}


.p_requirements {background:#F2F2F2;}
.p_requirements .sec01 .wrap{width:1100px;max-width:100%;padding:50px 70px;box-sizing:border-box;margin: 70px auto;background:#FFF;}
.p_requirements .sec01 .title{font-size:24px;margin-bottom:50px;}
.p_requirements .sec01 dl{display:flex;flex-wrap:wrap;border-top:1px solid #DFE5EB;font-size:14px;line-height:24px;}
.p_requirements .sec01 dt{width:140px;color:#1C4589;border-bottom:1px solid #DFE5EB;padding:20px 0;}
.p_requirements .sec01 dd{width:calc(100% - 140px);border-bottom:1px solid #DFE5EB;padding:20px 0;}

.p_requirements .sec01 .c_return {margin: 50px auto 0;}

.p_form .sec_subhero + .secinput{margin-top:60px;}
.p_form .secinput{width:850px;max-width:100%;box-sizing:border-box;margin: 0 auto;}
.p_form .secinput .title{font-size:24px;margin-bottom:20px;}
.p_form .secinput .text{font-size:14px;}
.p_form .secinput .caption{font-size:16px;line-height:26px;margin-bottom:20px;}
.p_form .text01{font-size:30px;line-height:40px;letter-spacing:0.1em;text-align:center;margin-bottom:20px;}
.p_form .text02{font-size:18px;line-height:30px;text-align:center;}
.p_form .text03{font-size:14px;line-height:24px;text-align:center;margin-bottom:20px;}
.p_form .items{margin-bottom:60px;}
.p_form .item{font-size:14px;line-height:25px;display:flex;flex-wrap:wrap;margin:42px 0;}
.p_form .name{width:250px;padding-top:12px;}
.p_form .name span{font-size:13px;width:45px;text-align:center;color:#FFF;background:#B3B3B3;display:inline-block;margin-right:15px;letter-spacing:0.05em;}
.p_form .name span.req01{background:#1C4589;}
.p_form .input{width:calc(100% - 250px);}
.p_form .output{width:calc(100% - 250px);padding-top:10px;}
.p_form input[type="text"],
.p_form input[type="email"],
.p_form select,
.p_form textarea{width:100%;padding:9px 10px;border:1px solid #F2F2F2;box-sizing:border-box;border-radius:0;background:#F2F2F2;}
.p_form input[type="text"],
.p_form input[type="email"],
.p_form select{max-width:450px;}
.p_form select{appearance: none;-webkit-appearance: none;-moz-appearance: none;}
.p_form .selectwrap{position:relative;}
.p_form .selectwrap::before{content:"\f078";font-family: "Font Awesome 5 Free";font-weight: 900;position:absolute;top:50%;right:10px;transform:translateY(-50%);pointer-events:none;}

/*.p_form select{padding:14px 10px;;}*/
.p_form .input.address input:first-of-type{max-width:135px;margin-bottom:15px;}
.p_form .input.address input:last-of-type{max-width:100%;}
.p_form .submit {width:280px;transition:0.5s;position:relative;margin: 40px auto;}
/*.p_form .submit::before{content: "\f078";font-family: "Font Awesome 5 Free";color:#FFF;font-weight: 900;font-size:10px;position:absolute;top:50%;right:20px;transform:translateY(-50%);}*/
.p_form *::placeholder{color:#B3B3B3;}
.p_form .type_radio01{margin-top:12px;}
.p_form .type_radio01 .name{display:inline-block;}
.p_form .type_radio01 label{font-size:13px;position:relative;margin-right:20px;padding-left:15px;cursor:pointer;}
.p_form .type_radio01 .input{display:inline-block;}
.p_form .type_radio01 input{opacity:0;}
.p_form .type_radio01 span{content:"";border-color:#D7D7D7;}
.p_form .type_radio01 span::before{content:"";width:20px;height:20px;background:inherit;border-radius:10px;position:absolute;top:calc(50% - 10px);left:0;}
.p_form .type_radio01 span::after{content:"";width:18px;height:18px;border:1px solid ;border-color:inherit;background:#FFF;border-radius:50%;position:absolute;top:50%;left:10px;transform:translate(-50%, -50%);transition:0.5s;}
.p_form .type_radio01 input:checked + span::before{background:#1C4589;}
.p_form .type_radio01 input:checked + span::after{width:10px;height:10px;border:none;}
.p_form .return {margin: 40px auto;background:#2F2F2F;}
