@charset "utf-8";
/*
Theme Name: 有限会社貫木産業 Ver1.0.2
Theme URI: https://tsunagi-sangyo.co.jp
Author: 有限会社貫木産業
Author URI: https://tsunagi-sangyo.co.jp
Description: 貫木産業専用テーマ（レスポンシブWebデザイン）
Version: 1.0.2
License: 有限会社貫木産業
*/

/*--------------------------------------------------------------------------
	初期設定
--------------------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, font, ins, kbd,
q, s, samp, small, strike, strong, sub, sup,
tt, var, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}
a { outline:none !important;	text-decoration:none; color:#131e00; }
a:focus { outline:none !important; color:#131e00; }
a:active { outline:none !important; color:#131e00; }
a:visit { color:#131e00; }
address {
	margin-top:0;
}
b,
strong {
	font-weight: 700;
}
p {
	margin-bottom: 0px;
}
ul,
ol {
	list-style: none;
}
ul {}
ol {}
li > ul,
li > ol {}
img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
}
button,
input,
select,
textarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	margin: 0;
	vertical-align: baseline;
}
button,
input {
	line-height: normal;
}
textarea {
	background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); /* Removing the inner shadow, rounded corners on iOS inputs */
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
	border:none;
}

button[disabled],
input[disabled] {
	cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
	vertical-align: top;
	resize:vertical;
}
table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin:0 auto 24px auto;
	width: 100%;
}
caption,
th,
td {
	font-weight: normal;
	text-align: left;
}
th {
	border-width: 0 1px 1px 0;
	font-weight: bold;
}
td {
	border-width: 0 1px 1px 0;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}

input, select {
    vertical-align:middle;
}
.blk {
    display: none;
}
.sp {
    display: none;
}
.fx {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.more {
    position: relative;
    display: block;
    line-height:60px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
    width:400px;
    border-radius:70px;
    background:#fff;
    text-align: center;
    border:1px solid #333;
    box-shadow: 0 5px 0 rgba(0,0,0,0.10);
}
.more:after {
    position: absolute;
    content:'';
    right: 30px;
    top:50%;
    margin-top:-6px;
	width: 12px;
	height: 12px;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.ctr {
    margin:0 auto;
}

/*----------------------------------------------------------------------
	body
 ---------------------------------------------------------------------*/

body {
	font-family:'Lucida Grande',
				'メイリオ',
				Meiryo,
				'Hiragino Kaku Gothic ProN',
				'ヒラギノ角ゴ ProN W3',
				sans-serif;
	color:#000;
	min-width:1100px;
	font-size:16px;
	background:#f9f9f9;
    line-height: 150%;
    letter-spacing: 1px;
}
html, body {
	height:100%;
	width:100%;
	margin:0;
	padding:0;
}
main {
    padding:0 !important;
    margin:0 !important;
}

/*-----------------------------------------------------------------------------------------
	header
-----------------------------------------------------------------------------------------*/

header {
	position:fixed;
    top:0;
    left:0;
	width:100%;
	/*min-width:1100px;*/
	background:rgba(255,255,255,0.98);
	padding:0 0 0 15px;
	height:70px;
	z-index:10;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
			align-items: center;
	-webkit-justify-content: space-between;
			justify-content: space-between;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
header #logo {
	position: relative;
	width:170px;
}
header #logo img {
	width:100%;
	height:auto;
}

/*------------------------------ Grobal Nav ----------*/
nav#gnav {
	margin:0 170px 0 0;
	display: -webkit-flex;
    display: flex;
	-webkit-align-items: center;
			align-items: center;
	-webkit-justify-content: space-between;
			justify-content: space-between;
}
nav#gnav ul {
	display: -webkit-flex;
    display: flex;
}
nav#gnav ul li {
	font-family: 'Noto Sans JP', sans-serif;
	position:relative;
	font-size: 16px;
	line-height:100%;
    letter-spacing: 2px;
}
nav#gnav ul li a {
	position: relative;
	display: block;
	padding:0;
    margin:0 25px;
    line-height: 80px;
    font-weight:500;
	text-align: center;
    white-space: nowrap;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
nav#gnav ul li a:after {
    position: absolute;
    content:"";
    top:50%;
    right:-30px;
    border-top:1px solid #131e00;
    width:20px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
nav#gnav ul li:nth-child(4) a:after,
nav#gnav ul li:nth-child(5) a:after {
    display: none;
}
nav#gnav ul li:before {
 	position: absolute;
 	content: '';
 	bottom: 25%;
 	left: 10%;
 	background:#555;
 	width: 80%;
	height: 2px;
	transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	transform: scale(0, 1);
	transform-origin: left top;
}
nav#gnav ul li:hover:before {
	transform-origin:left top;
	transform:scale(1, 1);
	color:#fff;
}

/*------------------------------ button on the right ----------*/
.li_cont {
	position: fixed;
	top:0;
	right:0;
    z-index: 10;
    border-left:5px solid rgba(0,0,0,0.10);
    border-bottom:5px solid rgba(0,0,0,0.10);   
}
.li_cont li {
    position: relative;
    overflow: hidden;
    text-align: center;
	width:150px;
}
.li_cont li:before {
    position: absolute;
    content:'';
    bottom:0;
    left:0;
    z-index:1;
    width:150px;
    clip-path: polygon(0 100%,100% 0,100% 100%);
    aspect-ratio: 1;
    background:rgba(255,255,255,0.03);
}
.li_cont a {
    position: relative !important;
	display: block;
    width:150px;
    padding:70px 0 55px 0;
    color:#fff;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 2;
}
.li_cont a:after {
    position: absolute;
    content:'';
    bottom:15% !important;
    margin: auto auto auto auto;
    right:0;
    left:0;
    font-size:12px;
    color:rgba(255,255,255,0.70);
}

.li_cont .con1 {
    background:#008139;
}
.li_cont .con1 a {
    background:url("img/parts/ic_inquiry.svg") 53% 30px no-repeat;
    background-size:27px auto;
}
.li_cont .con2 {
    background:#00993e;
}
.li_cont .con2 a {
    background:url("img/parts/ic_processing.svg") 53% 15px no-repeat;
    background-size:40px auto;
}
.li_cont .con1 a:after {
    content:'Inquiry';
}
.li_cont .con2 a:after {
    content:'Processing';
}

@media only screen and (max-width:1300px) {
	header #logo {
		width:160px;
	}
    nav#gnav {
        margin-right:0;
    }
    nav#gnav ul li a {
        font-size:14px;
    }
    .li_cont {
        top:70px;
        border:none;
    }
    .li_cont li {
        width:120px;
        font-size:12px;
    }
    .li_cont li:before {
        width:120px;
    }
    .li_cont a {
        position: relative !important;
        display: block;
        width:120px;
        padding:60px 0 55px 0;
        color:#fff;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        z-index: 2;
    }
    .li_cont .con1 a {
        background:url("img/parts/ic_inquiry.svg") 53% 30px no-repeat;
        background-size:24px auto;
    }
    .li_cont .con2 a {
        background:url("img/parts/ic_processing.svg") 53% 15px no-repeat;
        background-size:34px auto;
    }

}

@media only screen and (max-width:1050px) {
    .li_cont {
        display: none;
    }
}

/*-----------------------------------------------------------------------------------------
	footer
-----------------------------------------------------------------------------------------*/

footer {
    position: relative;
    background:#f0f0f0;
}
#footer {
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
			align-items: center;
	-webkit-justify-content: space-between;
			justify-content: space-between;
    padding:80px 30px 50px 30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.information p.logo-f {
	margin-bottom:20px;
    width:200px;
}
.information p.logo-f img {
    width:100%;
    height:auto;
}
.information p {
	font-size:12px;
	line-height:150%;
    margin-bottom:20px;
}
.information p strong {
	display: block;
	font-weight:700;
	margin-bottom:5px;
}

/*---------- Footer navi ----------*/
#fnav {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
#fnav div {
    margin-left:70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#fnav ul li {
    position: relative;
    font-size:13px;
    line-height:200%;
    white-space: nowrap;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#fnav ul li ul {
    position: relative;
    margin-top:10px;
}
#fnav ul li ul li {
    padding-left:20px;
}
#fnav ul li ul li:before {
    position: absolute;
    content:'';
    top:50%;
    left:3px;
    width:4px;
    height:4px;
    margin-top:-2px;
    border-top:1px solid #333;
    border-right:1px solid #333;
    transform:rotate(45deg);
}
footer small {
    text-align: center;
    font-size:12px;
    display: block;
    background:#008139;
    line-height:50px;
    letter-spacing: 2px;
    color:#fff;
}

/*---------- PageTop ----------*/
#pageUp {
	position:fixed;
	right:40px;
    bottom:30px;
	width:60px;
	height:60px;
	background:#008139;
    border-radius:50%;
    margin-left:-30px;
    box-shadow:0 5px 0 rgba(0,0,0,0.10);
	z-index:10;
}
#pageUp:after {
	position: absolute;
	content:'';
	top:25px;
	left:22px;
	width:15px;
	height:15px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	-webkit-transform: rotate(-45deg);
			transform: rotate(-45deg);
}
#pageUp:hover {
	cursor: pointer;
}

@media only screen and (max-width:1300px) {
    #fnav div {
        margin-left:50px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    #pageUp {
        bottom:30px;
        right:37px;
        width:44px;
        height:44px;
        margin-left:-22px;
    }
    #pageUp:after {
        top:20px;
        left:16px;
        width:10px;
        height:10px;
    }
    #pageUp:hover {}
}

/*-----------------------------------------------------------------------------------------
	Top
-----------------------------------------------------------------------------------------*/

/*--------- slider ----------*/
#slider {
	position: relative;
    clear:both;
    overflow: hidden;
	margin-top:70px;
}
#catchcopy {
    position: absolute;
    top:25%;
    left:7%;
    max-width:600px;
    width:40%;
    height:auto;
    z-index: 1;
}
.swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
}
.swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.swiper-pagination-bullet {
    width: 8px !important;
    height: 8px !important;
    border-radius:50% !important;
}
.swiper-pagination {
    bottom: 30px !important; /* スライダーから50px下に配置 */
}

/*--------- about us ----------*/
#about {
    position: relative;
    overflow: hidden;
    padding:150px 10px;
    text-align: center;
    background:#fff;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#about h1 {
    position: relative;
	font-family: Barlow, sans-serif;
    color:#008139;
    font-size:22px;
    margin-bottom:50px;
    padding-top:100px;
    background:url("img/parts/logomark.svg") 50% 0 no-repeat;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#about h1 span {
    display: block;
    margin-top:20px;
    font-size:14px;
    color:#CBC194;
}
#about p {
    position: relative;
	line-height:250%;
    font-size:18px;
    margin-bottom:40px;
}
#about p:last-child {
    margin-bottom:0;
}

/*--------- technology ----------*/
#tech {
    position: relative;
    clear:both;
    overflow: hidden;
    background:url("img/parts/bg-tech.svg") 0 0 repeat-y #259356;
    padding:0 0 80px 0;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#tech h1 {
    position: relative;
	font-family: Barlow, sans-serif;
    color:#fff;
    font-size:22px;
    padding-top:110px;
    padding-left:170px;
    line-height:150%;
    wdith:30%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#tech h1:before {
    position: absolute;
    content:'';
    top:123px;
    left:0;
    width:140px;
    border-top:1px solid #fff;
}
#tech h1 span {
    display: block;
    font-size:16px;
    margin-top:10px;
}
#tech .bx-tech {
    background:#f9f9f9;
    padding:80px;
    width:70%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#tech .bx-tech div {
    position: relative;
}
#tech .bx-tech h2 {
	position: relative;
    font-family: Barlow, sans-serif;
    font-size:36px;
    font-weight:500;
    margin-bottom:50px;
    line-height:170%;
}
#tech .bx-tech p {
    position: relative;
    font-size:20px;
    font-weight:500;
    margin-bottom:50px;
    line-height:180%;
    width:80%;
}
#tech #img-tech {
    display: block;
    width:95%;
    height:auto;
    margin-left:5%;
}
#tech .li_tech {
    position: relative;
    margin:5% 12% 0 5%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
#tech .li_tech li {
    position: relative;
    overflow: hidden;
    width:32%;
    border:10px solid #52aa7c;
    background:#fff;
    padding:5% 2% 7% 2%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#tech .li_tech li a {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	text-indent:-999px;
	background/*\**/: #fff\9;
	filter:alpha(opacity=0);
}
#tech .li_tech dl div dt {
	font-family: Barlow, sans-serif;
    font-size:24px;
    font-weight:700;
    padding-bottom:30px;
    margin-bottom:30px;
    color:#3d2e2e;
    border-bottom:1px solid #333;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#tech .li_tech dl div dd {
    position: relative;
    color:#3d2e2e;
    font-size:16px;
}
#tech .li_tech dl div:after {
    position: absolute;
    content:'';
    right:30px;
    bottom:20px;
    background:url("img/parts/ic_arrow.svg") 0 0 no-repeat;
    background-size:100% auto;
    width:35px;
    height:35px;
}

/*--------- company ----------*/
#information {
    position: relative;
    padding:250px 10px;
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background:url("img/parts/bg_company.jpg") 50% 50% no-repeat;
    background-size:cover;
}
#information:before {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(14,28,19,0.50);
    z-index: 0;
}
#information h1 {
    position: relative;
	font-family: Barlow, sans-serif;
    color:#fff;
    font-size:36px;
    margin:0 auto 120px auto;
}
#information h1 span {
    display: block;
    font-size:20px;
    margin-bottom:40px;
}

@media only screen and (max-width:1300px) {
    /*--------- technology ----------*/
    #tech {}
    #tech h1 {
        font-size:18px;
        padding-left:100px;
        wdith:33%;
    }
    #tech h1:before {
        top:123px;
        width:80px;
    }
    #tech h1 span {
        display: block;
        font-size:14px;
        margin-top:10px;
    }
    #tech .bx-tech {
        padding:100px 60px;
        width:67%;
    }
    #tech .bx-tech div {}
    #tech .bx-tech h2 {
        font-size:30px;
        margin-bottom:30px;
    }
    #tech .bx-tech p {
        font-size:18px;
    }
    #tech #img-tech {}
    #tech .li_tech {
        margin:5% 12% 0 5%;
    }
    #tech .li_tech li {
        width:32%;
        padding:3% 2% 7% 2%;
    }
    #tech .li_tech li a {}
    #tech .li_tech dl div dt {
        font-size:16px;
        line-height:180%;
        padding-bottom:20px;
        margin-bottom:20px;
    }
    #tech .li_tech dl div dd {
        font-size:12px;
    }
    #tech .li_tech dl div:after {
        right:20px;
        bottom:10px;
        background:url("img/parts/ic_arrow.svg") 0 0 no-repeat;
        background-size:100% auto;
        width:30px;
        height:30px;
    }

    /*--------- company ----------*/
    #information {
        padding:200px 10px;
    }
    #information:before {}
    #information h1 {
        font-size:30px;
        margin:0 auto 100px auto;
    }
    #information h1 span {
        font-size:16px;
        margin-bottom:20px;
    }
}

/*-----------------------------------------------------------------------------------------
	layout
-----------------------------------------------------------------------------------------*/

main{}
article {
    position: relative;
    background:#f9f9f9;
}
article h1 {
	font-family: Barlow, sans-serif;
    position: relative;
    overflow: hidden;
    padding:350px 10px 270px 10px;
    color:#fff;
    font-size:20px;
    letter-spacing: 8px;
    text-align: center;
    text-shadow: 0 0 10px rgba(14,28,19,0.50);
    z-index: 1;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
article h1 span {
    font-size:40px;
    margin-top:40px;
    display: block;
}
article h1:before {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(14,28,19,0.50);
    z-index: -1;
}
article h1.ttl-company {
    background: url("img/parts/bg_company.jpg") 0 50% no-repeat;
    background-size:cover;
}
article h1.ttl-contact,
article h1.ttl-privacypolicy {
    padding:200px 10px 150px 10px;
    margin-bottom:100px;
}

/*--------- content area ----------*/
.bx {
    position: relative;
    overflow: hidden;
    margin:0 auto 100px auto;
    padding:100px 80px;
    max-width:1300px;
    border-radius:10px;
    background:#fff;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}

/*---------- inquiry wrap ----------*/
#wrap-contact {
    background:#fff;
    padding:50px 10px 100px 10px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-end;
            align-items: flex-end;
    -webkit-justify-content: center;
            justify-content: center;
}
#wrap-contact div {
    width:40%;
    margin-right:8%;
    padding:80px 10px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wrap-contact div h1 {
    font-family: Barlow, sans-serif;
    font-weight:500;
    font-size:36px;
    margin-bottom:50px;
}
#wrap-contact div h1 span {
	font-size:18px;
    margin-bottom:30px;
    display: block;
    color:#008139;
}
#wrap-contact div hr {
    margin:35px 0;
}
#wrap-contact div .txt-tel {
    font-size:18px;
    line-height:220%;
}
#wrap-contact div .txt-tel span {
    font-size:16px;
}

/*---------- inquiry link button ----------*/
#wrap-contact ul {
    padding:0 10px;
    margin-bottom:80px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wrap-contact ul li {
    position: relative;
    margin-bottom:50px;
    font-size:18px;
}
#wrap-contact ul li:last-child {
    margin-bottom:0;
}
#wrap-contact ul li a {
    display: block;
    border-radius: 70px;
    padding:0 120px 0 50px;
    line-height:70px;
    color:#fff !important;
    background:#008139;
    box-shadow: 0 5px 0 rgba(0,0,0,0.10);
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wrap-contact ul li:nth-child(2) a {
    background:#00993e;
}
#wrap-contact ul li a:after {
    position: absolute;
    content:'';
    right: 30px;
    top:50%;
    margin-top:-6px;
	width: 12px;
	height: 12px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

@media only screen and (max-width:1300px) {
    /*---------- inquiry wrap ----------*/
    #wrap-contact {
        padding:50px 10px 100px 10px;
    }
    #wrap-contact div {
        width:47%;
        margin-right:2%;
    }
    #wrap-contact div h1 {}
    #wrap-contact div h1 span {}
    #wrap-contact div hr {
        margin:45px 0;
    }
    #wrap-contact div .txt-tel {
        font-size:16px;
        line-height:220%;
    }
    #wrap-contact div .txt-tel span {
        font-size:14px;
    }

    /*---------- inquiry link button ----------*/
    #wrap-contact ul {
        padding:0 10px;
        margin-bottom:80px;
        width:40%;
        -webkit-box-sizing:border-box;
                box-sizing:border-box;
    }
    #wrap-contact ul li {
        position: relative;
        margin-bottom:40px;
        font-size:16px;
        width:80%;
    }
    #wrap-contact ul li:last-child {}
    #wrap-contact ul li a {
        border-radius: 60px;
        line-height:60px;
        padding:0 100px 0 35px;
    }
    #wrap-contact ul li:nth-child(2) a {}
    #wrap-contact ul li a:after {}
}

/*-----------------------------------------------------------------------------------------
	2nd page - Company
-----------------------------------------------------------------------------------------*/

#greeting {
    position: relative;
    overflow: hidden;
    margin-bottom: 100px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#greeting:before {
    position: absolute;
    content:'';
    width:100%;
    height:50%;
    left:0;
    bottom:0;
    background: #fff;
    z-index: 0;
}

/*---------- 代表挨拶 ----------*/
.bx-greeting {
    max-width:70%;
    margin:100px auto;
    padding:80px 160px;
    background:#fff;
    border-radius: 10px 10px 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-greeting h2 {
	font-family: Barlow, sans-serif;
    position: relative;
    color:#008139;
    font-size:22px;
    font-weight:500;
    margin-bottom:50px;
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-greeting h2 span {
    display: block;
    margin-top:10px;
    font-size:14px;
    color:#CBC194;
}
.bx-greeting p {
    position: relative;
    line-height:200%;
    font-size:18px;
    margin-bottom:30px;
}
.bx-greeting p.owner {
    text-align: right !important;
    line-height:100%;
    font-size:16px;
    margin:50px 20px 0 0;
}
.bx-greeting p.owner strong {
    display: inline-block;
    margin-left:20px;
    font-size:24px;
    font-weight:normal;
}

/*---------- 会社概要 ----------*/
.mt {
	font-family: Barlow, sans-serif;
    position: relative;
    border-bottom:3px solid #efefef;
    font-size:26px;
    padding:25px 10px;
    margin-bottom:70px;
    letter-spacing:5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.mt:after {
    position: absolute;
    content:'';
    left:0;
    bottom:-3px;
    width:270px;
    border-bottom:3px solid #008139;
}

/*-- profile --*/
.li_company {
    margin-bottom:100px;
}
.li_company div {
    display: -webkit-flex;
    display: flex;
    padding:25px 20px;
    border-bottom:1px dotted #eee;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_company div dt {
    width:10%;
    font-size:18px;
    font-weight:normal;
    text-align:justify;
    text-align-last:justify;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_company div dd {
    font-size:18px;
    font-weight:normal;
    width:75%;
}

/*-- prods --*/
.li_prods {
    position: relative;
    overflow: hidden;
    margin:50px auto 100px auto;
}
.li_prods div dt {
    font-size:20px;
    font-weight:700;
    margin:0 0 20px 10px;
    color:#008139;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_prods div dd {
    position: relative;
    float:left;
    min-width:49%;
    /*padding:10px 10px 10px 20px;*/
    padding:25px;
    margin:0 2% 2% 0;
    background:rgba(244,243,241,1.00);
    font-weight:700;
    border-radius:5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_prods div dd:nth-child(2n-1) {
    margin-right:0 !important;
}

/*-- history --*/
.li_history {
    margin-bottom:100px;
}
.li_history div {
    display: -webkit-flex;
    display: flex;
    padding:25px 20px;
    border-bottom:1px dotted #eee;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_history div dt {
    width:10%;
    font-size:18px;
    font-weight:normal;
    text-align:justify;
    text-align-last:justify;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_history div dd {
    font-size:18px;
    font-weight:normal;
    width:75%;
}

/*-- accessMap --*/
#accessmap h3 {
    font-size:20px;
    font-weight:700;
    margin-bottom:10px;
}
#accessmap p {
    font-size:16px;
    margin-bottom:20px;
}
#accessmap iframe {
    width:100%;
    height:650px;
    margin-bottom:50px;
}
#accessmap iframe:last-child {
    margin-bottom:0;
}

@media only screen and (max-width:1300px) {
    .bx {
        margin:0 auto 100px auto;
        padding:100px 80px;
        max-width:90%;
    }
    /*---------- 代表挨拶 ----------*/
    .bx-greeting {
        max-width:90%;
    }
    .bx-greeting  h2 {}
    .bx-greeting  h2 span {}
    .bx-greeting p {
        position: relative;
    }
    .bx-greeting p.owner {}
    .bx-greeting p.owner strong {}

    /*---------- 会社概要 ----------*/
    .mt {
        font-size:20px;
        padding:20px 5px;
        margin-bottom:50px;
    }
    .mt:after {}

    /*-- profile --*/
    .li_company {
        margin-bottom:100px;
    }
    .li_company div {
        display: -webkit-flex;
        display: flex;
        padding:20px;
    }
    .li_company div dt {
        width:15%;
        font-size:16px;
    }
    .li_company div dd {
        font-size:16px;
        font-weight:normal;
        width:70%;
    }

    /*-- prods --*/
    .li_prods {
        position: relative;
        overflow: hidden;
        margin:50px auto 100px auto;
    }
    .li_prods div dt {
        font-size:16px;
        font-weight:700;
        margin:0 0 20px 10px;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .li_prods div dd {
        padding:20px;
        font-size:14px;
    }
    .li_prods div dd:nth-child(2n-1) {
        margin-right:0 !important;
    }

    /*-- history --*/
    .li_history {
        margin-bottom:100px;
    }
    .li_history div {
        padding:20px;
    }
    .li_history div dt {
        width:15%;
        font-size:16px;
        font-weight:normal;
        text-align:justify;
        text-align-last:justify;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .li_history div dd {
        font-size:16px;
        font-weight:normal;
        width:70%;
    }
}

/*-----------------------------------------------------------------------------------------
	2nd page - WPC
-----------------------------------------------------------------------------------------*/

/*---------- title ----------*/
.ttl-wpc {
    position: relative;
    text-align: center;
    padding:150px 10px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.ttl-wpc:before {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,169,157,0.70);
    z-index:0;
}
.ttl-wpc h2 {
    position: relative;
    font-family: Barlow, sans-serif;
    color:#fff;
    font-size:40px;
}
.ttl-wpc h2 span {
    position: relative;
    display: block;
    font-size:18px;
    margin-bottom:40px;
    letter-spacing:2px;
}
.ttl-features {
    background:url("img/parts/bg_features.jpg") 50% 50% no-repeat fixed;
    background-size: cover;
    margin-bottom:80px;
}
.ttl-products {
    background:url("img/parts/bg_products.jpg") 50% 50% no-repeat fixed;
    background-size: cover;
    margin-bottom:80px;
}

/*---------- main ----------*/
#wpc-info {
    position: relative;
    padding: 130px 10px 130px 7%;
    margin-top:70px;
    background: url("img/parts/bg_wpc.jpg") 50% 50% no-repeat;
    background-size:cover;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
#wpc-info:before {
    position: absolute;
    content:'';
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,169,157,0.70);
    z-index:0;
}
#wpc-info p {
	font-family: Barlow, sans-serif;
    position: relative;
    color:#fff;
    margin-bottom:60px;
    font-size: 24px;
    line-height:170%;
    text-shadow: 3px 3px 3px rgba(0,0,0,0.30);
}
#wpc-info p strong {
    font-size:38px;
    line-height:170%;
    width:50% !important;
    display: block;
}

#wpc-info a {
    position: relative;
    width:500px;
    line-height:70px;
    border-radius:70px;
    display: block;
    color:#fff;
    padding-left:50px;
    font-size:20px;
    font-weight:700;
    background: linear-gradient(to right, #ff7424 0%, #ff4235 100%);
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-info a:after {
    position: absolute;
    content:'';
    right: 40px;
    top:50%;
    margin-top:-8px;
	width: 16px;
	height: 16px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

/*---------- about our wpc technology ----------*/
#wpc-about {
    position: relative;
    overflow: hidden;
    padding:80px 0;
    background:#fff;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-about:before {
    position: absolute;
    content:'';
    bottom:0;
    right:0;
  width: 65%;
  aspect-ratio: 1;
  clip-path: polygon(0 100%,100% 60%,100% 100%);
  background:#f9f9f9;
}
#wpc-about h2 {
    font-family: Barlow, sans-serif;
	position: relative;
    font-size:30px;
    font-weight:500;
    text-align: center;
    margin-bottom:100px;
}
#wpc-about h2 span {
    display: block;
    margin-bottom:20px;
    font-size:12px;
    color:#008139;
}
.bx-about {
    position: relative;
    margin-top:5%;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    /*
    padding:3% 12% 8% 45%;
    background:url("img/parts/img-wpc01.png") 0 0 no-repeat;
    background-size:40% auto;
    */
}
.bx-about img {
    width:40%;
    height: auto;
}
.bx-about div {
    width:53%;
    padding:3% 14% 8% 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bx-about p {
    position: relative;
    font-size:18px;
    margin-bottom:40px;
    line-height:180%;
}

/*---------- features ----------*/
#wpc-features {
    position: relative;
    background:#f2fbfa;
    overflow: hidden;
    padding-bottom:80px 10px 100px 10px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-features p {
    font-size:22px;
    text-align: center;
    margin-bottom:40px;
    line-height:150%;
}

.li_features {
    width:80%;
    margin:200px auto 100px auto;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.li_features li {
    position: relative;
    width:32%;
    padding:20px 20px 50px 20px;
    background:#fff;
    -webkit-box-shadow: 3px 3px 20px rgba(0,0,0,0.05);
            box-shadow: 3px 3px 20px rgba(0,0,0,0.05);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_features li img {
    width:100%;
    height:auto;
    display: block;
    margin-bottom:40px;
}
.li_features li dl div dt {
    font-family: Barlow, sans-serif;
    font-size:24px;
    font-weight:500;
    text-align: center;
    min-height:120px;
    line-height:160%;
    vertical-align: middle;
    border-bottom:1px solid #efefef;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.li_features li dl div dd {
    font-size:18px;
    word-break: break-all;
    line-height:180%;
    padding:8% 2%;
}
.li_features li:before {
    position: absolute;
    content:'';
    top:-100px;
    left:50%;
    margin-left:-75px;
    width:150px;
    height:150px;
    background:50% 70% #008139 no-repeat;
    border-radius:50%;
    box-shadow:0 5px 0 rgba(0,0,0,0.10);
    z-index:1;
}
.li_features li:first-child:before {
    background-image:url("img/parts/ic_features01.png");
    background-size:90% auto;
}
.li_features li:nth-child(2):before {
    background-image:url("img/parts/ic_features02.png");
    background-size:90% auto;
}
.li_features li:nth-child(3):before {
    background-image:url("img/parts/ic_features03.png");
    background-size:90% auto;
}

/*---------- olympic ----------*/
#wpc-olympic {
    position: relative;
    overflow: hidden;
    background:#fff;
    padding:150px 0 100px 0;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-olympic h2 {
    font-family: Barlow, sans-serif;
    font-weight:500;
    position: relative;
    font-size:50px;
    line-height:150%;
    text-align: center;
    color:#008139;
    margin-bottom:100px;
}
.olympic {
    position: relative;
}
.olympic img {
    background:#f9f9f9;
    width:65%;
    padding:60px 40% 60px 60px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.olympic div {
    position:relative;
    padding:80px 180px 80px 80px;
    width:65%;
    margin:-350px 0 0 35%;
    background:#fff;
    border-radius:10px 0 0 10px;
    box-shadow:0 0 30px rgba(0,0,0,0.05);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.olympic div p {
    font-size:18px;
    line-height:180%;
    margin-bottom:30px;
}
.olympic div p:last-child {
    margin:0 !important;
}

/*---------- products ----------*/
#wpc-products {
    position: relative;
    background: #f2fbfa;
    padding: 0 0 150px 0;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-products p {
    text-align: center;
    font-size:20px;
    line-height:180%;
    margin-bottom:40px;
}
#wpc-products h3 {
    font-family: Barlow, sans-serif;
    text-align: center;
    font-size:22px;
    font-weight:700;
    margin-bottom:40px;
}
.bx-products {
    position: relative;
    margin:0 auto 100px auto;
    width:960px;
    padding:60px;
    border-radius:10px;
    background:#fff;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
.bx-products:before {
    position: absolute;
    content:'';
    left:50%;
    top:15%;
    height: 75%;
    border-left:1px solid #ddd;
}
.bx-products dl {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    -webkit-justify-content:space-between;
            justify-content:space-between;
}
.bx-products dl div {
    width:40%;
}
.bx-products dl div dt {
    color:#008139;
    margin-bottom:25px;
    font-size:20px;
    font-weight:700;
}
.bx-products dl div dd {
    position: relative;
    padding-left:20px;
    line-height:220%;
    list-style: disc;
}
.bx-products dl div dd:before {
    position: absolute;
    content:'';
    top:15px;
    left:0;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#000;
}

/*---------- products slider ----------*/
.swiper-products {
    position: relative;
    overflow: hidden;
}
.swiper-products .swiper-slide {
    border:20px solid #fff;
    box-sizing:border-box;
    border-radius:10px;
    box-shadow: 0 0 10px rgba(0,0,0,0.05);
}
.swiper-products .swiper-slide span {
    position: absolute;
    width:100%;
    font-size:16px;
    bottom:0;
    display: block;
    text-align: center;
    line-height: 60px;
}

/*---------- wpc-commitment ----------*/
#wpc-commitment {
    position: relative;
    background:url("img/parts/bg_commitment.jpg") 50% 0 no-repeat;
    background-size:cover;
    padding:280px 10px 600px 10%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-commitment h2,
#wpc-commitment p {
    position: relative;
    text-shadow: 3px 3px 3px rgba(0,0,0,0.30);
}
#wpc-commitment h2 {
    font-family: Barlow, sans-serif;
    color:#fff;
    font-size:50px;
    font-weight:700;
    line-height:150%;
    margin-bottom: 40px;
}
#wpc-commitment h2 span {
    display: block;
    font-size:18px;
    margin-bottom:15px;
    font-weight: normal !important;
}
#wpc-commitment p {
    font-family: Barlow, sans-serif;
    color:#fff;
    font-size:24px;
    margin-bottom:30px;
    line-height:180%;
    width:50%;
}

/*---------- wpc-processing ----------*/
#wpc-processing {
    padding:150px 10px 100px 10px;
    background:#fff;
}
#wpc-processing h2 {
    font-family: Barlow, sans-serif;
	position: relative;
    font-size:46px;
    font-weight:500;
    color:#3d2e2e;
    text-align: center;
    margin-bottom:80px;
    letter-spacing:3px;
}
#wpc-processing h2 span {
    display: block;
    margin-bottom:30px;
    font-size:14px;
    color:#008139;
}
#wpc-processing p {
    text-align: center;
    margin-bottom:40px;
    font-size:20px;
    line-height:180%;
}
#wpc-processing a {
    position: relative;
    width:450px;
    line-height:70px;
    border-radius:70px;
    display: block;
    color:#fff;
    margin:100px auto;
    padding-left:50px;
    font-size:20px;
    font-weight:700;
    background: linear-gradient(to right, #ff7424 0%, #ff4235 100%);
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#wpc-processing a:after {
    position: absolute;
    content:'';
    right: 40px;
    top:50%;
    margin-top:-8px;
	width: 16px;
	height: 16px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.txt-contact {
    text-align: center !important;
}
.txt-contact strong {
    display: block;
    font-size:20px !important;
    margin:1% 0;
}
.txt-contact br {
    display: block !important;
}
.txt-contact span {
    font-size:14px !important;
}
.txt-contact a {
    text-align: center !important;
    background:none !important;
    color:#000 !important;
    padding:0 !important;
    margin:0 !important;
    display:inline !important;
    width:100% !important;
    line-height:100% !important;
    border-radius:0 !important;
}
.txt-contact a:after {
    display: none;
}


@media only screen and (max-width:1300px) {
    /*---------- title ----------*/
    .ttl-wpc {
        padding:120px 10px;
    }
    .ttl-wpc:before {}
    .ttl-wpc h2 {
        position: relative;
        font-family: Barlow, sans-serif;
        color:#fff;
        font-size:40px;
    }
    .ttl-wpc h2 span {
        position: relative;
        display: block;
        font-size:18px;
        margin-bottom:40px;
        letter-spacing:2px;
    }
    .ttl-features {
        background:url("img/parts/bg_features.jpg") 50% 50% no-repeat fixed;
        background-size: cover;
        margin-bottom:80px;
    }
    .ttl-products {
        background:url("img/parts/bg_products.jpg") 50% 50% no-repeat fixed;
        background-size: cover;
        margin-bottom:80px;
    }

    /*---------- main ----------*/
    #wpc-info {
        padding: 100px 10px 100px 7%;
        margin-top:70px;
    }
    #wpc-info:before {}
    #wpc-info p {
        margin-bottom:60px;
        font-size: 22px;
        line-height:170%;
    }
    #wpc-info p strong {
        font-size:32px;
    }
    #wpc-info a {
        width:480px;
        padding-left:50px;
        font-size:16px;
    }
    #wpc-info a:after {}

    /*---------- about our wpc technology ----------*/
    #wpc-about {}
    #wpc-about:before {}
    #wpc-about h2 {
        font-size:30px;
    }
    #wpc-about h2 span {
        margin-bottom:20px;
        font-size:12px;
    }
    .bx-about {
        position: relative;
        margin-top:5%;
    }
    .bx-about img {
        padding-top:10%;
        width:43%;
        height: auto;
    }
    .bx-about div {
        width:53%;
        padding:3% 14% 8% 0;
    }
    .bx-about p {
        font-size:16px;
        margin-bottom:40px;
    }

    /*---------- features ----------*/
    #wpc-features {}
    #wpc-features p {
        font-size:18px;
        margin-bottom:40px;
    }
    .li_features {
        width:85%;
        margin:170px auto 100px auto;
    }
    .li_features li {
        position: relative;
        width:32%;
        padding:10px 10px 50px 10px;
    }
    .li_features li img {
        margin-bottom:20px;
    }
    .li_features li dl div dt {
        font-size:20px;
        min-height:100px;
        line-height:160%;
    }
    .li_features li dl div dd {
        font-size:14px;
        padding:8% 4%;
    }
    .li_features li:before {
        top:-80px;
        left:50%;
        margin-left:-60px;
        width:120px;
        height:120px;
    }
    .li_features li:first-child:before {}
    .li_features li:nth-child(2):before {}
    .li_features li:nth-child(3):before {}

    /*---------- olympic ----------*/
    #wpc-olympic {
        padding:100px 0 100px 0;
    }
    #wpc-olympic h2 {
        font-size:40px;
        margin-bottom:80px;
    }
    .olympic {}
    .olympic img {
        width:65%;
        padding:60px 30% 60px 60px;
    }
    .olympic div {
        padding:60px 160px 60px 60px;
        width:55%;
        margin:-400px 0 0 45%;
    }
    .olympic div p {
        font-size:18px;
        line-height:180%;
        margin-bottom:30px;
    }
    .olympic div p:last-child {}

    /*---------- products ----------*/
    #wpc-products {
        padding: 0 0 120px 0;
    }
    #wpc-products p {
        font-size:18px;
        margin-bottom:30px;
    }
    #wpc-products h3 {
        font-size:20px;
        margin-bottom:30px;
    }
    .bx-products {}
    .bx-products:before {}
    .bx-products dl {}
    .bx-products dl div {}
    .bx-products dl div dt {
        font-size:18px;
    }
    .bx-products dl div dd {}
    .bx-products dl div dd:before {}

    /*---------- products slider ----------*/
    .swiper-products {}
    .swiper-products .swiper-slide {}
    .swiper-products .swiper-slide span {}

    /*---------- wpc-commitment ----------*/
    #wpc-commitment {
        padding:300px 10px 400px 10%;
    }
    #wpc-commitment h2,
    #wpc-commitment p {}
    #wpc-commitment h2 {
        font-size:44px;
        margin-bottom: 30px;
    }
    #wpc-commitment h2 span {}
    #wpc-commitment p {
        font-size:22px;
    }

    /*---------- wpc-processing ----------*/
    #wpc-processing {
        padding:100px 10px;
    }
    #wpc-processing h2 {
        font-size:40px;
        margin-bottom:60px;
    }
    #wpc-processing h2 span {}
    #wpc-processing p {}
    #wpc-processing a {
        width:550px;
        line-height:60px;
        border-radius:60px;
    }
    #wpc-processing a:after {
        position: absolute;
        content:'';
        right: 40px;
        top:50%;
        margin-top:-8px;
        width: 16px;
        height: 16px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
    }
    .txt-contact {}
    .txt-contact strong {}
    .txt-contact br {}
    .txt-contact span {}
}

/*-----------------------------------------------------------------------------------------
	2nd page - processing
               inquiry
-----------------------------------------------------------------------------------------*/

/*---------- title ----------*/
#inquiry section h2 {
    text-align: center;
    font-size:26px;
    margin-bottom:40px;
}

/*---------- Form common ----------*/
.attention {
	position: relative;
	display:block !important;
	color:#e50012;
	padding-left:20px;
	font-size: 12px;
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.attention:before {
	position: absolute;
	content:'※';
	top:1px;
	left:0;
}

/*---------- Form ----------*/
.mailForm {
	position: relative;
}
.mailForm p {
    margin:0 !important;
    padding:10px 0 0 0 !important;
    font-size:14px !important;
}
.mailForm div {
	border-bottom:1px solid #efefef;
	padding:25px 10px;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items:center;
			align-items:center;	
}
.mailForm div dt {
	position: relative;
	padding:0 0 0 70px;
	width:30%;
	font-weight:700;
}
.mailForm div dd {
	width:70%;
}
.mailForm div dt,
.mailForm div dd {
	font-size:16px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}

.mailForm div dd input[type="text"],
.mailForm div dd input[type="email"],
.mailForm div dd input[type="tel"] {
	width:100%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
	display: inline-block;
	background:#fff;
    border:1px solid #ccc;
	font-size: 16px;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd.zip input[type="text"],
.mailForm div dd.telephone input[type="text"] {
	width:30%;
	padding:0 10px;
	display: inline-block;
}
.mailForm div dd select {
	width:40%;
	height: 50px;
	line-height: 50px;
	padding:0 10px;
	display: inline-block;
	background:#fff;
	font-size: 16px;
	border:1px solid #ccc;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd textarea {
	display: block;
	width:100%;
	min-height: 200px;
	padding:10px;
	background:#fff;
    border:1px solid #ccc;
	font-size: 16px;
    line-height:150%;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
}
.mailForm div dd img {
	margin:15px 0;
}
.wpcf7-captchar {
	width:40% !important;
}
.h:before {
	position: absolute;
	content:'必 須';
	top:3px;
	left:0;
	margin:0;
	color:#fff;
	width:55px;
	font-size:12px;
	background:#f2483b;
	border-radius:3px;
	text-align: center;
}
.n:before {
	position: absolute;
	content:'任 意';
	top:3px;
	left:0;
	margin:0;
	color:#fff;
	width:55px;
	font-size:12px;
	background:#ccc;
	border-radius:3px;
	text-align: center;
}
.error {
	display: block;
	margin:10px 0 0 0;
	color:#ff0000;
}
.bx-send {
    position: relative;
	padding:50px 0 20px 0 !important;
	text-align:center;
    margin:0 auto;
    border-bottom:0 !important;
}
.bx-send input[type="submit"] {
	display: block;
    border:none;
	background:#008139;
	color:#fff;
	width:350px;
	height:70px;
	line-height:70px;
	font-size:16px;
	margin:0 auto;
    border-radius:70px;
    box-shadow: 0 7px 0 rgba(0,0,0,0.10);
	-webkit-transition:0.3s;
			transition:0.3s;
}
.bx-send input[type="submit"]:hover {
	background:rgba(0,23,41,1.00);
	cursor: pointer;
}
.bx-send p {
	margin:0;
}
.error-entry {
	border:1px solid #c1272d;
	padding:4%;
	text-align: center;
	color:#c1272d;
	margin-bottom: 50px;
	background:rgba(255,77,1,0.10);
	-webkit-box-sizing:border-box;
			box-sizing:border-box;
}
.wpcf7-list-item {
	display: block;
}
.wpcf7-response-output {
    text-align: center;
    background:#fff;
    font-size:12px !important;
    padding:20px 10px !important;
}

/*---------- radio, checkbox ----------*/
.mailForm div dd label {
    line-height: 45px !important;
    width:30%;

}
.mailForm div dd span {
    display: inline;
}
.mailForm div dd label:hover {
	cursor: pointer;
}
.mailForm div dd input[type="radio"],
.mailForm div dd input[type="checkbox"] {
    position: relative;
    right: 0;
    bottom: 0;
    left: 0;
    top:-10px !important;
    height: 20px;
    width: 20px;
    vertical-align: -100%;
    transition:all .15s ease-out 0s;
    cursor: pointer;
    display: inline-block;
    margin: 0 10px 0 0;
    outline: none;
    border-radius: 10%;
	opacity:1 !important;
	-webkit-appearance: none;
    		appearance: none;
}
.mailForm div dd input[type="radio"] {
    border-radius: 50%;
}
.mailForm div dd input[type="radio"]:checked:before,
.mailForm div dd input[type="checkbox"]:checked:before {
    transform: scale(0.5);
}
.mailForm div dd input[type="radio"]:before {
    content: '';
	margin:-2px 0 0 -2px;
    width: 22px;
    height: 22px;
	display: block;
    border-radius: 50%;
    transform: scale(0);
    -webkit-transition: 0.2s;
			transition: 0.2s;
}
.mailForm div dd input[type="checkbox"]:before {
    content: '';
	margin:-2px 0 0 -2px;
    width: 22px;
    height: 22px;
	display: block;
    transform: scale(0);
    -webkit-transition: 0.2s;
			transition: 0.2s;
}
.mailForm div dd input[type="radio"],
.mailForm div dd input[type="checkbox"] {
    border: 1px solid #999;
	background:#fff;
}
.mailForm div dd input[type="radio"]:checked:before,
.mailForm div dd input[type="checkbox"]:checked:before {
    background: #008139;
}
.mailForm div dd input[type="checkbox"] {
	position: relative;
	width:20px;
	height:20px;
	top:5px;
	-webkit-transform:scale(1.1);
			transform:scale(1.1);
}

/*------------------------------ inquiry only ----------*/
#inquiry {}
#inquiry section section {
    padding:0 !important;
    width:90%;
    max-width:1100px;
    margin:0 auto;
}
#inquiry p {
    max-width:1100px;
    font-size:18px;
    line-height:180%;
    margin:0 auto 40px auto;
}
#inquiry p a {
    text-decoration: underline;
    color:#008139;
}
#inquiry section h2 {
	font-family: Barlow, sans-serif;
    font-size: 22px;
    font-weight:500;
    text-align: center;
    margin:0 0 70px 0;
    color:#008139;
}
#bx-tel {
    position: relative;
    margin:0 auto;
    text-align: center;
    padding:0 20px;
    max-width:1100px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#bx-tel img {
    max-width:45%;
    height:auto;
}

/*------------------------------ privacy policy ----------*/
#bx-privacy {
    position: relative;
    background:#fff;
    border-radius:10px;
    border:2px solid #efefef;
    padding:40px 20px;
    margin:120px auto 80px auto;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#bx-privacy h2 {
    position: relative;
	font-family: 'Noto Sans JP', sans-serif;
    text-align: center;
    font-size:18px;
    font-weight:700;
    margin:40px 0;
}
#bx-privacy h3 {
    font-size:14px;
    font-weight:700;
}
#bx-privacy p {
    font-size:14px;
    margin-bottom:20px;
}
#bx-privacy ul {
    margin-bottom:20px;
}
#bx-privacy ul li {
    font-size:14px;
    list-style:disc;
    margin-left:20px;
}
#bx-privacy div {
    position: relative;
    height: 350px;
    overflow-x:hidden;
    padding:0 40px;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}

/*------------------------------ agree ----------*/
#agree {
    display: block;
    text-align: center;
    width:330px;
    margin: 0 auto;
    font-size:18px;
}
#agree input[type="checkbox"],
#agree input[type="radio"] {
    border:1px solid #ccc;
    margin-right:20px;
    -webkit-transform: scale(2.5, 2.5);
            transform: scale(2.5, 2.5);
}
.screen-reader-response ul li {
    margin:10px 0 !important;
    font-size:12px !important;
}

.w10 {
    width:10% !important;
}
.inline {
    width:auto !important;
    margin-right:5%;
}

@media only screen and (max-width:1300px) {
    /*------------------------------ inquiry only ----------*/
    #inquiry {}
    #inquiry section section {}
    #inquiry p {
        max-width:1100px;
        font-size:16px;
    }
    #inquiry p a {}
    #inquiry section h1 {
        font-size: 30px;
        margin:0 0 40px 0;
    }
    #bx-tel {}
    #bx-tel img {}

    /*------------------------------ privacy policy ----------*/
    #bx-privacy {}
    #bx-privacy h2 {
        font-size:18px;
    }
    #bx-privacy h3 {}
    #bx-privacy p {
        font-size:14px;
        margin-bottom:20px;
    }
    #bx-privacy ul {
        margin-bottom:20px;
    }
    #bx-privacy ul li {
        font-size:14px;
        list-style:disc;
        margin-left:20px;
    }
    #bx-privacy div {}

    /*------------------------------ agree ----------*/
    #agree {}
    #agree input[type="radio"],
    #agree input[type="checkbox"] {}
    #agree input[type="radio"] {
        border-radius: 50%;
    }
    #agree input[type="radio"]:checked:before,
    #agree input[type="checkbox"]:checked:before {}
    #agree input[type="radio"]:before {}
    #agree input[type="checkbox"]:before {}
    #agree input[type="radio"],
    #agree input[type="checkbox"] {}
    #agree input[type="radio"]:checked:before,
    #agree input[type="checkbox"]:checked:before {}
}

/*-----------------------------------------------------------------------------------------
	2nd page - privacypolicy
-----------------------------------------------------------------------------------------*/

#privacypolicy section {
    max-width:1300px;
    margin:0 auto;
    padding:0 10px 100px 10px;
    line-height:180%;
    -webkit-box-sizing:border-box;
            box-sizing:border-box;
}
#privacypolicy section h2 {
	font-family: Barlow, sans-serif;
    text-align: center;
    font-size:20px;
    margin:40px 0 80px 0;
    color:#008139;
}
#privacypolicy section h3 {
    font-size:16px;
    font-weight:700;
    margin:0 0 10px 0;
}
#privacypolicy section p {
    font-size:16px;
    margin-bottom:20px;
}
#privacypolicy section ul {
    margin-bottom:20px;
}
#privacypolicy section ul li {
    font-size:14px;
    list-style:disc;
    margin-left:20px;
}

/*------------------------------ scroll_up ----------*/
.up {
    transition: 0.6s ease-in-out;
    transform: translateY(20px);
    opacity: 0;
}
.up.on {
    transform: translateY(0);
    opacity: 1.0;
}

/*------------------------------ scroll_left ----------*/
.left {
    -webkit-transition: 0.6s ease-in-out;
    -moz-transition: 0.6s ease-in-out;
    -o-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
    transform: translateX(-20px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.left.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}

/*------------------------------ scroll_right ----------*/
.right {
    -webkit-transition: 0.6s ease-in-out;
    -moz-transition: 0.6s ease-in-out;
    -o-transition: 0.6s ease-in-out;
    transition: 0.6s ease-in-out;
    transform: translateX(20px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.right.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateX(0);
}

/*------------------------------ delay ----------*/

.ti01 {transition-delay: .1s;}
.ti02 {transition-delay: .2s;}
.ti03 {transition-delay: .3s;}
.ti04 {transition-delay: .4s;}
.ti05 {transition-delay: .5s;}
.ti06 {transition-delay: .6s;}
.ti07 {transition-delay: .7s;}
.ti08 {transition-delay: .8s;}

/*--------------------------------------------------------------------------------------------------------------------
	- SP
--------------------------------------------------------------------------------------------------------------------*/

@media only screen and (max-width:800px) {

/*--------------------------------------------------------------------------
	初期設定
--------------------------------------------------------------------------*/
    html, body, div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6,
    p, blockquote, pre, a, abbr, acronym, address,
    big, cite, code, del, dfn, em, font, ins, kbd,
    q, s, samp, small, strike, strong, sub, sup,
    tt, var, dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td {}
    article,
    aside,
    details,
    figcaption,
    figure,
    footer,
    header,
    hgroup,
    nav,
    section {}
    a {}
    a:focus {}
    a:active {}
    a:visit {}
    address {}
    b,
    strong {}
    p {}
    ul,
    ol {}
    ul {}
    ol {}
    li > ul,
    li > ol {}
    img {}
    button,
    input,
    select,
    textarea {}
    button,
    input {}
    textarea {}

    button,
    html input[type="button"],
    input[type="reset"],
    input[type="submit"] {}

    button[disabled],
    input[disabled] {}

    input[type="checkbox"],
    input[type="radio"] {}

    input[type="search"] {}

    input[type="search"]::-webkit-search-decoration {}

    button::-moz-focus-inner,
    input::-moz-focus-inner {}
    textarea {}
    table {
        margin:0 auto;
    }
    caption,
    th,
    td {}
    th {}
    td {}
    table {}
    input, select {}
    .blk {
        display: block;
    }
    .sp {
        display: block;
    }
    .fx {
        display: block;
    }
    .more {
        line-height:50px;
        width:90%;
        border-radius:50px;
        font-size:14px;
        margin: 0 auto 20% auto;
    }
    .more:after {}
    .ctr {}

    /*----------------------------------------------------------------------
        body
     ---------------------------------------------------------------------*/

    body {
        min-width:100%;
        font-size:16px;
        line-height: 150%;
    }
    html, body {}
    main {}

    /*-----------------------------------------------------------------------------------------
        header
    -----------------------------------------------------------------------------------------*/

    header {
        position:fixed;
        height:50px;
    }
    header #logo {
        position: relative;
        width:140px;
    }
    header #logo img {}

    /*------------------------------ global Nav, Menu ----------*/
	#panel-btn {
		display: inline-block;
		position: fixed;
		top:0;
		right:10px;
		width:50px;
		max-width:50px;
		min-width:50px;
		height:50px;
		margin-top:0;
		z-index:7000;
	}
	#panel-btn:after {
		position: absolute;
		content:'menu';
		top:28px;
		left:11px;
		font-size:10px;
		font-weight:700;
		color:#008139;
	}
	#panel-btn-icon {
		display: block;
		position: absolute;
		top: 35%;
		left: 12px;
		width: 20px;
		height: 2px;
		background: #008139;
		border-radius:50px;
		-webkit-transition: 0.2s;
				transition: 0.2s;
	}
	#panel-btn-icon:before,
	#panel-btn-icon:after {
		position: absolute;
		content: '';
		top: 50%;
		left: 0;
		display: block;
		height: 2px;
		background: #008139;
		-webkit-transition: 0.3s;
				transition: 0.3s;
	}
	#panel-btn-icon:before {
		margin-top: -8px;
		width: 10px;
	}
	#panel-btn-icon:after {
		margin-top: 6px;
		width: 30px;
	}
	#panel-btn .close {
		background: transparent;
	}
	#panel-btn .close:before,
	#panel-btn .close:after {
		margin-top: 0;
		background: #008139;
	}
	#panel-btn .close:before{
      width:30px;
	  -webkit-transform: rotate(-45deg);
			  transform: rotate(-45deg);
	}
	#panel-btn .close:after{
	  -webkit-transform: rotate(-135deg);
			  transform: rotate(-135deg);
	}
	.dr_on {
		top:60px !important;
		left:0 !important;
		visibility:visible !important;
		opacity:1 !important;
		z-index:9999 !important;
		-webkit-transition: .7s;
				transition: .7s;
	}
	.dr_off {
		top:50px;
		visibility:hidden;
		opacity:0;
		-webkit-transition: .7s;
				transition: .7s;
	}
	.over_hide {
    	overflow: hidden !important;
	}

    /*------------------------------ Grobal Nav ----------*/
    nav#gnav {
        position: fixed;
		display: block;
		top:50px !important;
		left:0;
		width:100%;
		max-width:100%;
		height:100%;
		visibility:hidden;
		opacity:0;
		margin-left:0;
		background:rgba(255,255,255,0.98);
		z-index:15000 !important;
    }
    nav#gnav ul {
		display:block;
		margin:10% auto;
		height:80%;
		width:80%;
		overflow-x: hidden;
	}
	nav#gnav ul li {
		line-height:100%;
		border-bottom:1px dotted rgba(0,0,0,0.10) !important;
	}
	nav#gnav ul li a {
		position: relative;
		font-size: 16px !important;
		padding:0 0 0 20px;
		line-height:60px !important;
		text-align: left !important;
		color:#008139;
	}
	nav#gnav ul li:before {
		display: none;
	}
	nav#gnav ul li:hover:before{
		display: none;
	}
	nav#gnav ul li:after {
		position: absolute;
		content:'';
		top:50%;
		left:10px;
		height:6px;
		width:6px;
		margin-top:-3px;
		background:none;
		display: block !important;
		border-top:1px solid #008139;
		border-right:1px solid #008139;
		-webkit-transform: rotate(45deg);
				transform: rotate(45deg);
	}
    nav#gnav ul li a:after {
        display: none !important;
    }

    /*------------------------------ button on the right ----------*/
    .li_cont {
        display: none;  
    }
    .li_cont li {}
    .li_cont li:before {}
    .li_cont a {}
    .li_cont a:after {}

    .li_cont .con1 {}
    .li_cont .con1 a {}
    .li_cont .con2 {}
    .li_cont .con2 a {}
    .li_cont .con1 a:after {}
    .li_cont .con2 a:after {}

    /*-----------------------------------------------------------------------------------------
        footer
    -----------------------------------------------------------------------------------------*/

    footer {}
    #footer {
        display:block;
        padding:10% 5%;
    }
    .information p.logo-f {
        margin:0 auto 8% auto;
        width:40% !important;
    }
    .information p.logo-f img {}
    .information p {
        font-size:12px;
        line-height:150%;
        margin:0 auto 5% auto;
        width:75%;
    }
    .information p strong {
        margin-bottom:1%;
    }

    /*---------- Footer navi ----------*/
    #fnav {
        display: none;
    }
    footer small {}

    /*---------- PageTop ----------*/
    #pageUp {
        bottom:30px;
        right:15px;
        width:44px;
        height:44px;
        margin-left:-22px;
        z-index: 1;
    }
    #pageUp:after {
        top:20px;
        left:16px;
        width:10px;
        height:10px;
    }
    #pageUp:hover {}

    /*-----------------------------------------------------------------------------------------
        Top
    -----------------------------------------------------------------------------------------*/

    /*--------- slider ----------*/
    #slider {
        margin-top:50px;
    }
    #catchcopy {
        top:55%;
        left:4%;
        max-width:80%;
        width:80%;
    }
    .swiper-slide {}
    .swiper-slide img {
        display: block;
        width: 400%;
        height: 400%;
        margin:0 0 0 -160%;
        object-fit: cover;
    }
    .swiper-pagination-bullet {
        width: 6px !important;
        height: 6px !important;
        border-radius:50% !important;
    }
    .swiper-pagination {
        bottom: 20px !important;
    }

    /*--------- about us ----------*/
    #about {
        padding:10% 1% 20% 1%;
    }
    #about h1 {
        font-size:18px;
        margin-bottom:30px;
        padding-top:100px;
        background:url("img/parts/logomark.svg") 50% 20% no-repeat;
        background-size:50px auto;
    }
    #about h1 span {
        margin-top:4%;
        font-size:12px;
    }
    #about p {
        width:90%;
        text-align: left;
        font-size:16px;
        line-height:200%;
        margin:0 auto 8% auto;
    }
    #about p:last-child {}
    #about p br {
        display: none;
    }

    /*--------- technology ----------*/
    #tech {
        padding:0 0 15% 0;
    }
    #tech h1 {
        text-align: center;
        font-size:18px;
        padding:0;
        line-height:150%;
        width:100%;
        margin:10% 0;
    }
    #tech h1:before {
        display: none;
    }
    #tech h1 span {
        font-size:16px;
        margin-top:2%;
    }
    #tech .bx-tech {
        padding:8% 5%;
        width:90%;
        margin:0 auto;
        border-radius: 5px 5px 0 0;
    }
    #tech .bx-tech div {}
    #tech .bx-tech h2 {
        font-size:24px;
        margin-bottom:8%;
        text-align: center;
    }
    #tech .bx-tech p {
        position: relative;
        font-size:16px;
        margin-bottom:12%;
        line-height:180%;
        width:100%;
    }
    #tech #img-tech {
        width:100%;
        height:auto;
        margin-left:0;
    }
    #tech .li_tech {
        margin:10% auto;
        display:block;
    }
    #tech .li_tech li {
        width:80%;
        margin:0 auto 8% auto;;
        padding:8% 6% 18% 6%;
    }
    #tech .li_tech li a {}
    #tech .li_tech dl div dt {
        font-size:18px;
        padding-bottom:6%;
        margin-bottom:6%;
    }
    #tech .li_tech dl div dd {
        font-size:14px;
        line-height:180%;
    }
    #tech .li_tech dl div:after {
        position: absolute;
        content:'';
        right:30px;
        bottom:20px;
        width:30px;
        height:30px;
    }

    /*--------- company ----------*/
    #information {
        padding:25% 1%;
    }
    #information:before {}
    #information h1 {
        font-size:28px;
        margin:0 auto 20% auto;
    }
    #information h1 span {
        font-size:16px;
        margin-bottom:5%;
    }

    /*-----------------------------------------------------------------------------------------
        layout
    -----------------------------------------------------------------------------------------*/

    main{}
    article {}
    article h1 {
        padding:30% 0 20% 0;
        font-size:16px;
        letter-spacing:5px;
    }
    article h1 span {
        font-size:28px;
        margin-top:3%;
    }
    article h1:before {}
    article h1.ttl-company {
        padding:30% 0 30% 0;
        margin-bottom:0;
    }
    article h1.ttl-contact,
    article h1.ttl-privacypolicy {
        padding:20% 0 15% 0;
        margin-bottom:10%;
    }

    /*--------- content area ----------*/
    .bx {
        margin:0 auto 20% auto;
        padding:5%;
        max-width:95%;
        border-radius:5px;
    }

    /*---------- inquiry wrap ----------*/
    #wrap-contact {
        padding:20% 8% 20% 8%;
        display:block;
    }
    #wrap-contact div {
        width:100%;
        margin:0 0 20% 0;
        padding:0;
        text-align: center;
    }
    #wrap-contact div h1 {
        font-size:24px;
        margin-bottom:10%;
    }
    #wrap-contact div h1 span {
        font-size:14px;
        margin-bottom:4%;
    }
    #wrap-contact div hr {
        margin:8% 0;
    }
    #wrap-contact div .txt-tel {
        font-size:14px;
        line-height:220%;
    }
    #wrap-contact div .txt-tel span {
        font-size:13px;
        letter-spacing:0 !important;
    }

    /*---------- inquiry link button ----------*/
    #wrap-contact ul {
        padding:0;
        margin:0 auto 15% auto;
        width:90%;
    }
    #wrap-contact ul li {
        margin-bottom:10%;
        font-size:16px;
        width:100%;
    }
    #wrap-contact ul li:last-child {}
    #wrap-contact ul li a {
        border-radius: 60px;
        padding:0 0 0 8%;
        line-height:60px;
    }
    #wrap-contact ul li:nth-child(2) a {}
    #wrap-contact ul li a:after {}

    /*-----------------------------------------------------------------------------------------
        2nd page - Company
    -----------------------------------------------------------------------------------------*/

    #greeting {
        margin-bottom: 20%;
    }
    #greeting:before {}

    /*---------- 代表挨拶 ----------*/
    .bx-greeting {
        position: relative;
        max-width:95%;
        margin:20% auto 10% auto;
        padding:15% 5% 10% 5%;
        border-radius: 5px 5px 0 0;
    }
    .bx-greeting  h2 {
        font-size:22px;
        margin-bottom:10%;
    }
    .bx-greeting  h2 span {
        margin-top:2%;
        font-size:14px;
    }
    .bx-greeting p {
        position: relative;
        line-height:220%;
        font-size:16px;
    }
    .bx-greeting p.owner {
        font-size:14px;
        margin:10% 0 0 0;
    }
    .bx-greeting p.owner strong {
        margin-left:5%;
        font-size:22px;
    }

    /*---------- 会社概要 ----------*/
    .mt {
        font-size:20px;
        padding:4% 2%;
        margin-bottom:8%;
        letter-spacing:2px;
        border-bottom:2px solid #efefef;
    }
    .mt:after {
        width:45%;
        bottom:-2px;
        border-bottom:2px solid #008139;
    }

    /*-- profile --*/
    .li_company {
        margin-bottom:20%;
    }
    .li_company div {
        padding:5% 2%;
    }
    .li_company div dt {
        width:22%;
        font-size:15px;
    }
    .li_company div dd {
        font-size:15px;
        width:65%;
    }

    /*-- prods --*/
    .li_prods {
        margin:12% auto 20% auto;
    }
    .li_prods div dt {
        font-size:18px;
        margin:0 0 8% 0;
        text-align: center;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
    }
    .li_prods div dd {
        position: relative;
        float:none;
        display: block;
        text-align: center;
        font-size:16px;
        min-width:100%;
        padding:5%;
        margin:0 0 4% 0;
    }
    .li_prods div dd:nth-child(2n-1) {}

    /*-- history --*/
    .li_history {
        margin-bottom:20%;
    }
    .li_history div {
        padding:5% 2%;
    }
    .li_history div dt {
        width:22%;
        font-size:15px;
    }
    .li_history div dd {
        font-size:15px;
        width:65%;
    }

    /*-- accessMap --*/
    #accessmap h3 {
        font-size:18px;
        margin-bottom:2%;
    }
    #accessmap p {
        font-size:16px;
        margin-bottom:4%;
    }
    #accessmap iframe {
        height:450px;
        margin-bottom:10%;
    }
    #accessmap iframe:last-child {}

    /*-----------------------------------------------------------------------------------------
        2nd page - WPC
    -----------------------------------------------------------------------------------------*/

    /*---------- title ----------*/
    .ttl-wpc {
        padding:20% 2%;
        background-attachment: inherit !important;
        background-size:auto 100% !important;
    }
    .ttl-wpc:before {}
    .ttl-wpc h2 {
        font-size:28px;
    }
    .ttl-wpc h2 span {
        font-size:16px;
        margin-bottom:5%;
    }
    .ttl-features {
        margin-bottom:20%;
    }
    .ttl-products {
        margin-bottom:20%;
    }

    /*---------- main ----------*/
    #wpc-info {
        position: relative;
        padding: 15% 10%;
        margin-top:50px;
    }
    #wpc-info:before {}
    #wpc-info p {
        margin-bottom:10%;
        font-size: 15px;
        line-height:170%;
    }
    #wpc-info p strong {
        font-size:26px;
        line-height:170%;
        width:100% !important;
    }

    #wpc-info a {
        width:100% !important;
        line-height:60px;
        border-radius:60px;
        padding-left:30px;
        font-size:14px;
    }
    #wpc-info a:after {
        right: 25px;
        top:50%;
        margin-top:-6px;
        width: 12px;
        height: 12px;
    }

    /*---------- about our wpc technology ----------*/
    #wpc-about {
        padding:15% 0 10% 0;
    }
    #wpc-about:before {}
    #wpc-about h2 {
        font-size:26px;
        margin-bottom:5%;
    }
    #wpc-about h2 span {
        margin-bottom:4%;
    }
    .bx-about {
        margin-top:0;
        display:block;
    }
    .bx-about img {
        width:100%;
        height: auto;
    }
    .bx-about div {
        width:86%;
        padding:10% 0 15% 0;
        margin:0 auto;
    }
    .bx-about p {
        font-size:16px;
        margin-bottom:5%;
    }

    /*---------- features ----------*/
    #wpc-features {
        padding-bottom:15% 0 30% 0;
    }
    #wpc-features p {
        font-size:16px;
        margin:0 auto 5% auto;
        width:85%;
        line-height:180%;
        text-align:left;
    }

    .li_features {
        width:85%;
        display: block;
        margin:20% auto;
    }
    .li_features li {
        position: relative;
        width:100%;
        margin-bottom:20%;
        padding:10px 10px 50px 10px;
    }
    .li_features li img {
        margin-bottom:0;
    }
    .li_features li dl div dt {
        font-size:22px;
        min-height:auto;
        line-height:160%;
        padding:10% 0;
    }
    .li_features li dl div dd {
        font-size:14px;
        padding:8% 4%;
    }
    .li_features li:before {
        top:-40px;
        left:50%;
        margin-left:-60px;
        width:120px;
        height:120px;
    }
    .li_features li:first-child:before {}
    .li_features li:nth-child(2):before {}
    .li_features li:nth-child(3):before {}

    /*---------- olympic ----------*/
    #wpc-olympic {
        padding-bottom:15% 0 30% 0;
    }
    #wpc-olympic h2 {
        font-size:24px;
        margin-bottom:15%;
    }
    .olympic {}
    .olympic img {
        width:100%;
        padding:10% 20% 30% 20%;
    }
    .olympic div {
        padding:8%;
        width:90%;
        margin:-20% auto 0 auto;
        background:#fff;
        border-radius:10px;
    }
    .olympic div p {
        font-size:18px;
        margin-bottom:6%;
    }
    .olympic div p:last-child {}

    /*---------- products ----------*/
    #wpc-products {
        padding: 0 0 20% 0;
    }
    #wpc-products p {
        font-size:18px;
        line-height:180%;
        text-align: left;
        margin:0 auto 5% auto;
        width:90%;
    }
    #wpc-products p br {
        display: none;
    }
    #wpc-products h3 {
        font-size:20px;
        margin:10% auto;
    }
    .bx-products {
        margin:0 auto 20% auto;
        width:90%;
        padding:5%;
    }
    .bx-products:before {
        display: none;
    }
    .bx-products dl {
        display:block;
    }
    .bx-products dl div {
        width:100%;
        padding:12% 0;
    }
    .bx-products dl div:first-child {
        border-bottom:1px solid #efefef;
    }
    .bx-products dl div dt {
        text-align: center;
        margin-bottom:8%;
        font-size:18px;
    }
    .bx-products dl div dd {
        font-size:16px;
        width:75%;
        margin:0 auto;
    }
    .bx-products dl div dd:before {}

    /*---------- products slider ----------*/
    .swiper-products {
        width:100%;
        margin:0 auto;
    }
    .swiper-products .swiper-slide {
    }
    .swiper-products .swiper-slide img {
        margin-bottom:8%;
        display: block;
        width: 100% !important;
        height: 100% !important;
        margin:0 0 20% 0 !important;
        border-radius:10px !important;
        object-fit: cover;
    }
    .swiper-products .swiper-slide span {
        display:block;
        padding:10% auto !important;
        margin:0 !important;
        width:100%;
        font-size:14px;
        line-height: 180%;
    }

    /*---------- wpc-commitment ----------*/
    #wpc-commitment {
        padding:20% 10% 45% 10%;
    }
    #wpc-commitment h2,
    #wpc-commitment p {
        position: relative;
        text-shadow: 3px 3px 3px rgba(0,0,0,0.30);
    }
    #wpc-commitment h2 {
        font-size:28px;
        margin-bottom: 8%;
    }
    #wpc-commitment h2 span {
        font-size:16px;
        margin-bottom:4%;
    }
    #wpc-commitment p {
        font-size:16px;
        margin-bottom:6%;
        width:auto !important;
    }

    /*---------- wpc-processing ----------*/
    #wpc-processing {
        padding:15% 1%;
    }
    #wpc-processing h2 {
        font-size:28px;
        font-weight:700;
        margin-bottom:10%;
        letter-spacing:1px;
    }
    #wpc-processing h2 span {
        margin-bottom:6%;
        font-size:14px;
        font-weight: 500;
    }
    #wpc-processing p {
        text-align: left;
        margin:0 auto 5% auto;
        width:90%;
        font-size:18px;
    }
    #wpc-processing p br {
        display: none;
    }
    #wpc-processing p strong {
        display: block;
    }
    #wpc-processing a {
        width:80%;
        line-height:60px;
        border-radius:60px;
        margin:15% auto;
        padding-left:5%;
        font-size:15px;
    }
    #wpc-processing a:after {
        right: 35px;
        top:50%;
        margin-top:-6px;
        width: 12px;
        height: 12px;
    }
    .txt-contact {}
    .txt-contact strong {
        display: block;
        margin:1% 0;
    }
    .txt-contact br {}
    .txt-contact span {}

    /*-----------------------------------------------------------------------------------------
        2nd page - processing
                   inquiry
    -----------------------------------------------------------------------------------------*/

    /*---------- title ----------*/
    #inquiry section h2 {
        text-align: center;
        font-size:20px;
        margin-bottom:5%;
    }

    /*---------- Form common ----------*/
    .attention {}
    .attention:before {}

    /*---------- Form ----------*/
    .mailForm {}
    .mailForm p {
        margin:0 !important;
        padding:2% 0 0 0 !important;
        font-size:14px !important;
    }
    .mailForm div {
        padding:5% 0;
        display:block;	
    }
    .mailForm div dt {
        padding:0 0 0 80px;
        width:100%;
        margin-bottom:5%;
    }
    .mailForm div dd {
        width:100%;
        margin-bottom:2%;
    }
    .mailForm div dt,
    .mailForm div dd {
        font-size:14px;
    }
    .mailForm div dd input[type="text"],
    .mailForm div dd input[type="email"],
    .mailForm div dd input[type="tel"] {}
    .mailForm div dd.zip input[type="text"],
    .mailForm div dd.telephone input[type="text"] {}
    .mailForm div dd select {}
    .mailForm div dd textarea {}
    .mailForm div dd img {
        margin:4% 0;
    }
    .wpcf7-captchar {
        width:40% !important;
    }
    .h:before {}
    .n:before {}
    .error {
        margin:2% 0 0 0;
    }
    .bx-send {
        padding:15% 0 8% 0 !important;
    }
    .bx-send input[type="submit"] {
        width:70%;
        height:60px;
        line-height:60px;
        font-size:16px;
        margin:0 auto;
        border-radius:60px;
    }
    .bx-send input[type="submit"]:hover {}
    .bx-send p {}
    .error-entry {
        margin-bottom: 12%;
    }
    .wpcf7-list-item {}
    .wpcf7-response-output {
        padding:4% 2% !important;
    }

    /*---------- radio, checkbox ----------*/
    .mailForm div dd label {
        line-height: 40px !important;
        width:100%;
        display: inline-block;
    }
    .mailForm div dd span {}
    .mailForm div dd label:hover {}
    .mailForm div dd input[type="radio"],
    .mailForm div dd input[type="checkbox"] {}
    .mailForm div dd input[type="radio"] {}
    .mailForm div dd input[type="radio"]:checked:before,
    .mailForm div dd input[type="checkbox"]:checked:before {}
    .mailForm div dd input[type="radio"]:before {}
    .mailForm div dd input[type="checkbox"]:before {}
    .mailForm div dd input[type="radio"],
    .mailForm div dd input[type="checkbox"] {}
    .mailForm div dd input[type="radio"]:checked:before,
    .mailForm div dd input[type="checkbox"]:checked:before {}
    .mailForm div dd input[type="checkbox"] {}

    /*------------------------------ inquiry only ----------*/
    #inquiry {}
    #inquiry section section {
        padding:0 !important;
        width:90%;
        max-width:100%;
        margin:0 auto;
    }
    #inquiry p {
        max-width:100%;
        font-size:14px;
        line-height:180%;
        margin:0 auto 12% auto;
    }
    #inquiry p a {}
    #inquiry section h2 {
        font-size: 18px;
        margin:0 0 8% 0;
    }
    #bx-tel {
        padding:0;
        max-width:100%;
    }
    #bx-tel img {
        max-width:70%;
        height:auto;
    }

    /*------------------------------ privacy policy ----------*/
    #bx-privacy {
        border-radius:5px;
        padding:4% 2% 4% 4%;
        margin:30% auto 10% auto;
    }
    #bx-privacy h2 {
        font-size:16px !important;
        margin:0 0 10% 0;
        padding-top:10%;
    }
    #bx-privacy h3 {}
    #bx-privacy p {
        margin-bottom:5%;
    }
    #bx-privacy ul {
        margin-bottom:5%;
    }
    #bx-privacy ul li {}
    #bx-privacy div {
        height: 300px;
        padding:0 4%;
    }

    /*------------------------------ agree ----------*/
    #agree {
        display: block;
        text-align: center;
        width:70%;
        margin: 0 auto;
        font-size:16px;
    }
    #agree input[type="checkbox"],
    #agree input[type="radio"] {
        margin-right:10%;
        -webkit-transform: scale(2, 2);
                transform: scale(2, 2);
    }
    .screen-reader-response ul li {
        margin:2% 0 !important;
    }
    .w10 { width:25% !important; }
    .inline {}
    .inline label { display: inline !important; text-align:left !important; }

    /*-----------------------------------------------------------------------------------------
        2nd page - privacypolicy
    -----------------------------------------------------------------------------------------*/

    #privacypolicy section {
        max-width:90%;
        margin:0 auto;
        padding:0 0 10% 0;
    }
    #privacypolicy section h2 {
        font-size:18px;
        margin:10% 0 10% 0;
    }
    #privacypolicy section h3 {
        font-size:16px;
        margin:0 0 2% 0;
    }
    #privacypolicy section p {
        font-size:16px;
        margin-bottom:5%;
    }
    #privacypolicy section ul {
        margin-bottom:5%;
    }
    #privacypolicy section ul li {}

    /*----------------------------
    scroll_up
    ----------------------------*/
    .up {}
    .up.on {}

    /*----------------------------
    scroll_left
    ----------------------------*/
    .left {}
    .left.on {}

    /*----------------------------
    scroll_right
    ----------------------------*/
    .right {}
    .right.on {}

    /*----------------------------
    delay 
    ----------------------------*/
    .ti01 {}
    .ti02 {}
    .ti03 {}
    .ti04 {}
    .ti05 {}
    .ti06 {}
    .ti07 {}
    .ti08 {}


}






