/*
Theme Name: chosic
*/
@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;700&family=Noto+Serif+JP:wght@300;700&display=swap');
*{margin:0; padding:0; border:0; background:none; position:relative; box-sizing:border-box; outline:none;}
body{margin:0; padding:0; font-family: 'Noto Sans JP', sans-serif; font-size:16px; font-weight:300; color:#595959;}
img{display:block;}
div.clear-div{clear:both;}
div.is-mobile{display:none;}
h1, h2, h3, h4, h5, h6{font-family:inherit; font-weight:inherit;}
ul, ul li{list-style:none; margin:0; padding:0;}
a{text-decoration:none; font-family:inherit; font-weight:inherit; color:inherit;}
button{font-family:'Noto Sans JP', sans-serif; font-size:16px; font-weight:300; color:inherit; cursor:pointer;}
input{font-family:'Noto Sans JP', sans-serif; font-size:16px; font-weight:300; color:inherit;}
textarea{font-family:'Noto Sans JP', sans-serif; font-size:16px; font-weight:300; color:inherit;}

.inner{width:100%; max-width:1232px; padding:0px 16px; margin:0 auto;}
.bg-alpha{display:none; position:fixed; width:100%; height:100%; top:0; left:0; background-color:rgba(0,0,0,0.8); z-index:70;}

/* main-color : #ff3d0d */

/*header*/
header.header{position:fixed; width:100%; height:96px; top:0; left:0; box-shadow:0px 1px 1px rgba(0,0,0,0.1); cursor:default; z-index:90;}
header.header.is-admin{top:32px;}
.header-top-description{height:32px; line-height:32px; background-color:#ff3d0d; color:#fff; font-size:12px;}
.header-row{height:64px; background-color:#fff;}
.header-logo{position:absolute; top:50%; left:16px; font-size:32px; font-weight:700; color:#000; transform:translate(0, -50%); letter-spacing:-0.1em;}
.header-nav{float:right; display:inline-block;}
.header-nav-ul-li{display:inline-block; padding:0px 16px;}
.header-nav-ul-li-a{display:block; line-height:64px;}
.header-nav-ul-li-a:hover{color:#ff3d0d;}
.nav-ul-lv2{display:none; position:absolute; top:100%; left:0; width:208px; background-color:#fff; box-shadow:0px 1px 2px rgba(0,0,0,0.1);}
.lv2-li{display:block; border-bottom:dotted 1px #e5e5e5;}
.lv2-li.last{border:0;}
.lv2-a{display:block; padding:8px 16px;}
.lv2-a:hover{background-color:#f2f2f2; color:#000;}
.header-nav-ul-li:hover .nav-ul-lv2{display:block;}

.wrap{margin-top:96px;}

.btn-mobile-menu{
	display:none; position:absolute; width:36px; height:36px; top:50%; right:16px; transform:translate(0,-50%); z-index:90;
	background-image:url('./image/btn-mobile-menu.svg'); background-repeat:no-repeat; background-size:cover; background-position:center center;
}
.btn-mobile-menu.on{background-image:url('./image/btn-mobile-menu-close.svg');}

/*00_index*/
.main-banner-wrap{padding:48px 0px;}
.main-banner{width:100%; max-width:960px; margin:0 auto;}
.main-banner-contents{width:100%;}
.main-banner-contents img{width:100%;}

.main-h2-before{width:1px; height:48px; background-color:#999999; margin:0 auto;}
.main-h2{text-align:center; font-size:32px; font-weight:700; color:#000; line-height:1em; padding-top:16px; padding-bottom:12px; letter-spacing:-0.1em;}
.main-h2-link{display:block; width:125px; height:24px; line-height:24px; border-radius:12px; margin:0 auto; background-color:#ff3d0d; color:#fff; text-align:center;}

.main-latest-ul{width:100%; max-width:960px; margin:0 auto; margin-top:32px; border-top:solid 3px #ff3d0d;}
.main-latest-li{display:block; height:56px; border-bottom:solid 1px #cccccc;}
.main-latest-subject{display:inline-block; line-height:56px; padding-left:48px; font-family:'Noto Serif JP',serif; font-size:24px; font-weight:300; color:#000;}
.main-latest-subject:hover{color:#ff3d0d;}
.main-latest-subject:before{content:''; position:absolute; width:8px; height:8px; top:50%; left:20px; transform:translate(0,-50%); border-radius:4px; background-color:#000;}
.main-latest-more{position:absolute; top:50%; right:16px; transform:translate(0,-50%); font-size:14px; color:#999;}
.main-latest-more:hover{color:#000;}

/*footer*/
footer.footer{padding-top:72px;}
.footer-nav{height:32px; background-color:#ff3d0d;}
.footer-nav-a{display:inline-block; padding-left:20px; color:#fff; font-size:14px; margin-right:8px; line-height:32px;}
.footer-nav-a:before{content:''; position:absolute; width:4px; height:4px; border-radius:2px; top:50%; left:8px; transform:translate(0,-50%); background-color:#fff;}
.footer-nav-a:hover{text-decoration:underline;}
.footer-info{padding:24px 0px; background-color:#262322; color:#fff;}
.footer-info-company{font-size:24px; font-weight:700; line-height:1em;}
.footer-info-address{font-size:16px; line-height:22px; padding-top:8px;}
.footer-info-copyright{font-size:12px; padding-top:4px;}

/*sub-page-common*/
.sub-page-title-wrap{
	width:100%; height:144px; 
	background-image:url('./image/bg-sub-page-title.jpg'); background-repeat:no-repeat; background-size:cover; background-position:center center;
}
.sub-page-title-wrap .inner{height:100%;}
.sub-page-title{position:absolute; top:50%; left:88px; transform:translate(0,-50%); font-family:'Noto Serif JP',serif; font-weight:700; font-size:48px; color:#fff; line-height:1em;}
div.current-mark{width:0px; height:0px; opacity:0; position:fixed; top:0; left:0; overflow:hidden; color:transparent;}
.sub-page-top-nav-wrap{height:48px; background:#fff; border-bottom:solid 1px #e5e5e5;}
.sub-page-top-nav-wrap .inner{height:100%;}
.sub-page-top-nav{display:inline-block; line-height:48px; font-size:14px; color:#000; padding-left:24px; margin-right:8px;}
.sub-page-top-nav:before{
	content:''; position:absolute; width:24px; height:24px; top:50%; left:0; transform:translate(0,-50%);
	background-image:url('./image/icon-sub-page-top-nav.svg'); background-repeat:no-repeat; background-size:cover; background-position:center center;
}
.sub-page-top-nav.home{margin-left:16px;}
.sub-page-top-nav.home:before{
	content:''; position:absolute; width:24px; height:24px; top:50%; left:0; transform:translate(0,-50%);
	background-image:url('./image/icon-sub-page-top-nav-home.svg'); background-repeat:no-repeat; background-size:cover; background-position:center center;
}
.sub-page-top-nav:hover{color:#ff3d0d;}
.sub-page-top-nav.current:hover{color:#000;}

.inner.sub-page-wrap{padding:48px 16px; padding-bottom:0px;}
section.contents-section{float:left; width:calc(100% - 304px);}
div.contents{width:100%; min-height:320px;}
aside.sub-page-aside{float:left; width:256px; margin-left:48px;}
.btn-aside-contact{display:block; width:100%; height:72px; padding:12px; background-color:#ff3d0d; color:#fff; border:solid 2px #ff3d0d;}
.btn-aside-contact .tt{display:block; width:100%; text-align:center; font-size:24px; line-height:1em; letter-spacing:-0.1em;}
.btn-aside-contact .ds{display:block; width:100%; text-align:center; font-size:12px; line-height:1em; letter-spacing:0.05em; margin-top:4px;}
.btn-aside-contact:hover{background-color:#fff;}
.btn-aside-contact:hover > div{color:#000;}

.sub-page-bottom{margin-top:64px; background-color:#f2f2f2; border-top:solid 4px #ff3d0d; padding:16px;}
.sub-page-bottom .text-01{font-size:16px; color:#000; line-height:1em;}
.sub-page-bottom .text-02{font-family:'Noto Serif JP',serif; font-size:24px; font-weight:700; color:#ff3d0d; line-height:1em; padding-top:4px;}
.sub-page-bottom .text-03{font-size:12px; color:#595959; line-height:1em; padding-top:4px;}
.btn-sub-page-bottom{
	position:absolute; top:50%; right:16px; transform:translate(0,-50%); height:36px; line-height:34px; border-radius:18px; background-color:#fff; border:solid 1px #ff3d0d; padding:0px 16px;
	font-size:16px; color:#000; font-weight:700;
}
.btn-sub-page-bottom .icon{
	display:inline-block; width:24px; height:24px; margin-right:4px; transform:translate(0, 6px);
	background-image:url('./image/icon-sub-page-bottom-btn.svg'); background-repeat:no-repeat; background-size:cover; background-position:center center;
}
.btn-sub-page-bottom:hover{background-color:#ff3d0d; color:#fff;}
.btn-sub-page-bottom:hover .icon{background-image:url('./image/icon-sub-page-bottom-btn-hover.svg'); background-repeat:no-repeat; background-size:cover; background-position:center center;}

/*01_company*/
.company-image-01{width:100%;}
.company-image-01 img{width:100%;}
.company-text-01{line-height:1.7em; padding-top:16px;}
.company-image-02{width:147px; margin-top:16px;}
.company-image-02 img{width:100%;}
.company-text{float:left; width:calc(33.333333333333% - 10.666666666666px); margin-right:16px; margin-top:32px;}
.company-text.col-03{margin-right:0;}
.company-text-title{
	height:112px; line-height:112px; background-color:#1a110f; color:#fff; font-size:22px; font-weight:700; padding:0px 24px;
	background-repeat:no-repeat; background-size:auto 112px; background-position:100% center;
}
.col-01 .company-text-title{background-image:url('./image/img-company-03.png');}
.col-02 .company-text-title{background-image:url('./image/img-company-04.png');}
.col-03 .company-text-title{background-image:url('./image/img-company-05.png');}
.company-text-text{padding:8px 0px; line-height:24px; word-break:break-all;}

/*02_itemlsit*/
.itemlsit-aside-dl{width:100%; border-top:solid 3px #ff3d0d; padding-bottom:24px;}
.itemlsit-aside-dl dt{height:48px; line-height:48px; background-color:#f2f2f2; color:#000; font-weight:700; padding:0px 24px;}
.itemlsit-aside{border-bottom:solid 1px #e5e5e5; height:48px; line-height:48px; padding:0px 24px; background-color:#fff;}
.itemlsit-aside a{display:block; color:#000; padding-left:12px;}
.itemlsit-aside a:before{content:''; position:absolute; width:4px; height:4px; top:50%; left:0px; transform:translate(0, -50%); border-radius:2px; background-color:#ff3d0d;}
.itemlsit-aside:hover{background-color:#fff5f2;}
.itemlsit-aside a:hover{font-weight:700;}
.itemlsit-aside.current{background-color:#fff5f2; font-weight:700;}

.itemlsit-li{float:left; width:calc(50% - 24px); height:128px;}
.itemlsit-text{position:absolute; top:50%; left:126px; transform:translate(0, -50%); font-size:24px; color:#000; padding-right:16px;}
.itemlsit-img{
	position:absolute; width:96px; height:96px; border-radius:48px; top:50%; left:16px; transform:translate(0, -50%);
	background-repeat:no-repeat; background-size:100% 100%; background-position:center center; transition:background-size 0.2s;
}
.itemlsit-li.l01 .itemlsit-img{background-image:url('./image/bg-itemlsit-01.jpg');}
.itemlsit-li.l02 .itemlsit-img{background-image:url('./image/bg-itemlsit-02.jpg');}
.itemlsit-li.l03 .itemlsit-img{background-image:url('./image/bg-itemlsit-03.jpg');}
.itemlsit-li.l04 .itemlsit-img{background-image:url('./image/bg-itemlsit-04.jpg');}
.itemlsit-li.l05 .itemlsit-img{background-image:url('./image/bg-itemlsit-05.jpg');}

.itemlsit-li:hover .itemlsit-text{color:#ff3d0d;}
.itemlsit-li:hover .itemlsit-img{background-size:120% 120%; transition:background-size 0.2s;}

.img-itemlsit-content{display:block; width:100%;}


/*03_contact*/
.contact-row{width:100%; max-width:640px; margin:0 auto; padding-bottom:8px;}
.contact-label{display:block; padding-bottom:4px; color:#000;}
.contact-input{width:100%; padding:8px; border:solid 1px #e5e5e5;}
.contact-input:focus{border-color:#ff3d0d;}
.contact-textarea{width:100%; padding:8px; min-height:144px; border:solid 1px #e5e5e5; resize:vertical;}
.contact-textarea:focus{border-color:#ff3d0d;}
.btn-contact-submit{display:block; margin:0 auto; padding:8px 24px; background-color:#000; color:#fff;}
.btn-contact-submit:hover{background-color:#ff3d0d;}

.contact-wrap{width:100%; max-width:640px; margin:0 auto; color:#000;}
.contact-wrap input[type=text]{width:100%; border:solid 1px #e5e5e5; color:#000; padding:4px 8px; margin-bottom:8px;}
.contact-wrap input[type=email]{width:100%; border:solid 1px #e5e5e5; color:#000; padding:4px 8px; margin-bottom:8px;}
.contact-wrap textarea{width:100%; border:solid 1px #e5e5e5; color:#000; padding:4px 8px; resize:vertical;}
.contact-wrap input[type=submit]{display:block; margin:0 auto; padding:8px 24px; background-color:#000; color:#fff; cursor:pointer;}
.contact-wrap input[type=submit]:hover{background-color:#ff3d0d;}

/*04_map*/
iframe.map-map{width:100%; height:480px; margin-top:24px;}

/*05_info*/
.btn-board-list{display:inline-block; margin-top:16px; padding:8px 24px; background-color:#000; color:#fff;}
.btn-board-list:hover{background-color:#ff3d0d;}

.info-top{width:100%; height:3px; background-color:#ff3d0d;}
.info-row{padding:8px 16px; border-bottom:solid 1px #e5e5e5;}
.info-title{display:inline-block; font-size:24px; color:#000;}
.info-title:hover{color:#ff3d0d;}
.info-date{position:absolute; top:50%; right:16px; transform:translate(0, -50%); font-size:13px;}

.info-pagenation{display:block; text-align:center; padding-top:16px;}
.info-pagenation a:hover{color:#ff3d0d;}


@media(max-width: 960px){
	header.header{height:80px;}
	.btn-mobile-menu{display:block;}
	.nav-ul-lv2{width:0px; height:0px; opacity:0;}
	.header-row{height:48px;}
	.header-row .inner{height:100%;}
	.header-logo{font-size:24px;}
	nav.header-nav{position:fixed; width:240px; height:100%; background:#fff; top:80px; right:-240px; z-index:80; transition:right 0.2s;}
	nav.header-nav.on{right:0px; transition:right 0.2s;}
	.header-nav-ul-li{display:block; padding:8px 16px; padding-left:28px; font-size:16px;}
	.header-nav-ul-li:before{content:''; position:absolute; width:4px; height:4px; border-radius:2px; top:50%; left:16px; transform:translate(0, -50%); background-color:#ff3d0d;}
	.header-nav-ul-li-a{line-height:1em;}
	.wrap{margin-top:80px;}
	section.contents-section{width:100%;}
	aside.sub-page-aside{width:100%; margin-left:0; margin-top:16px;}
}

@media(max-width: 640px){
	body{font-size:14px;}
	.inner{padding:0px 8px;}
	.main-banner-wrap{padding:24px 0px;}
	.main-h2{font-size:24px;}
	.main-latest-li{height:auto; padding:8px 0px;}
	.main-latest-subject{line-height:1.2em; font-size:16px; padding-left:28px;}
	.main-latest-subject:before{width:4px; height:4px; border-radius:2px; left:16px;}
	.main-latest-ul{margin-top:16px;}
	footer.footer{padding-top:36px;}
	.footer-info{padding:12px 0px; text-align:center;}
	.footer-info-company{font-size:16px;}

	.sub-page-title-wrap{background-position:right 31.333333333333% center;}
	.sub-page-top-nav-wrap{overflow:hidden;}
	.sub-page-top-nav.home{margin-left:0px;}
	.sub-page-title{left:0; width:100%; text-align:center; font-size:32px;}
	.inner.sub-page-wrap{padding:24px 8px;}
	.sub-page-bottom{margin-top:32px;}
	.btn-sub-page-bottom{position:relative; top:auto; right:auto; transform:translate(0,0); display:block; width:100%; margin-top:8px; font-size:14px}

	.company-text{width:100%; margin-top:16px; margin-right:0;}
	.itemlsit-li{width:100%; height:56px;}
	.itemlsit-img{width:48px; height:48px; border-radius:24px; left:8px;}
	.itemlsit-text{left:64px; font-size:16px; padding-right:0;}

	iframe.map-map{height:240px;}

	.info-row{padding:8px;}
	.info-title{font-size:16px;}
	.info-date{position:relative; top:auto; right:auto; transform:translate(0,0); display:block; margin-top:2px;}

}

@media(max-width: 300px){
	.header-logo{font-size:16px;}
	.main-latest-more{display:none;}
	.btn-sub-page-bottom{font-size:12px;}
	.btn-sub-page-bottom .icon{display:none;}
}