@charset "UTF-8";
#header.subheader{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    background:rgba(0,131,220,0.6); 
    }


#subVisual{padding: 200px 0 70px;background: #333;}
#subVisual.businessVisual{background: url("../img/business/h2.jpg")no-repeat center bottom / cover;}
#subVisual.productVisual{background: url("../img/product/h2.jpg")no-repeat center bottom / cover;}
#subVisual.factoryVisual{background: url("../img/factory/h2.jpg")no-repeat center bottom / cover;}
#subVisual.companyVisual{background: url("../img/company/h2.jpg")no-repeat center bottom / cover;}
#subVisual.recruitVisual{background: url("../img/recruitment/h2.jpg")no-repeat center bottom / cover;}
.subVisualInner{
    width: 100%;
    margin: auto;
    color: #fff;
    }
#subVisual h2{
    margin: 0 auto;
    width: 96%;
    max-width: 1200px;
    font-size: 5.0rem;
    letter-spacing: 0.15em;
    font-weight: 600;
    line-height: 1.3;
    text-transform: uppercase;
    text-align: left;
    font-feature-settings: "palt";
    }
#subVisual h2 span{
    display: block;
    font-size: 13.0rem;
    letter-spacing: 0.01em;
    font-weight: 600;
    line-height: 1.2;
    }
/* TAB */
@media screen and (max-width: 899px) {
#subVisual{padding: 200px 0 40px;}
#subVisual h2{font-size: 3.0rem;}
#subVisual h2 span{font-size: 8.0rem;}
}
/* SP */
@media screen and (max-width: 480px) {
#subVisual{padding: 160px 0 30px;}
#subVisual h2{font-size: 2.0rem;}
#subVisual h2 span{font-size: 5.0rem;}
}

/* bread_crumb
--------------------------------------------------*/
.bread_crumb_list {
    padding:0 0;
    width: 100%;
    margin:0;
    }
ul.bread_crumb {
	text-align:left;
	margin: 0 auto;
	padding:0;
    width: 96%;
    max-width: 1200px;
	}
.bread_crumb li {
	display:inline;
	font-size: 1.3rem;
    font-family: var(--ff-main);
	font-weight: 600;
    color: #333;
	}
.bread_crumb .material-icons{vertical-align:-0.2em !important;}
.bread_crumb li:after {
    content : '>';
    padding-left:5px;
    margin-right:5px;
	}
.bread_crumb li:last-child:after {content : '';}
.bread_crumb li a {color:#333;text-decoration:underline;}
.bread_crumb li a:hover{text-decoration:none;}
.bread_crumb li.current {}

@media screen and (max-width: 899px) {}
@media screen and (max-width: 480px) {
.bread_crumb li {font-size: 1.2rem;}
}

/* subcon
---------------------------------------------------------------------------*/
.subcon{
    font-size: 1.8rem;
    line-height: 2.2;
    font-weight: normal;
    }
.subcon .cntInner{
    max-width: 1200px;
    width: 96%;
    margin: 0 auto;
    padding: 0;
    }
.subcon section{padding: 100px 0;}
.subcon .bg01{
    background: var(--c-main);
    color: #fff;
    }
.subcon .bg02{background: #f6f6f6;}
.subcon ._Title .en{font-weight: 600;}
.subcon ._Title02 h4{line-height: 1.5}


/* TAB */
@media screen and (max-width: 899px) {
.subcon{
    font-size: 1.6rem;
    line-height: 1.8;
    }
 #mainBox .subcon{font-size: 1.6rem;}   
 #mainBox .subcon p{
    font-size:1.6rem;
    line-height: 1.8;
    }
.subcon section{padding:60px 0;}
}
/* SP */
@media screen and (max-width: 480px) {
.subcon{
    font-size:1.4rem;
    line-height: 1.6;
    letter-spacing: .05em;
    }
 #mainBox .subcon{font-size: 1.4rem;}   
 #mainBox .subcon p{
    font-size:1.4rem;
    line-height: 1.6;
    letter-spacing: .05em;
    } 
.subcon section{padding: 40px 0;}
    .subcon ._Title02 h4{font-size: 2.5rem;}
}



/* TBL
---------------------------------------------------------------------------*/
.subcon .defTable01{
    width: 100%;
    margin: 40px auto 0;
    border: none;
    border-collapse: collapse;
    }
.subcon .defTable01 th {
    width: 280px;
    padding:25px 20px;
    margin: 0;
    text-align: left;
    vertical-align: middle;
    font-size:1.7rem;
    font-weight: 600;
    line-height: 1.6;
    border-bottom: 1px solid #ddd;
    background:rgba(255,255,255,0.5);
    color: #313334;
    }
.subcon .defTable01 td {
    padding:25px 25px;
    margin: 0;
    text-align: left;
    vertical-align: middle;
    font-size:1.6rem;
    line-height: 1.6;
    border-bottom: 1px solid #ddd;
    background:rgba(255,255,255,0.5);
    font-weight: normal;
    }
.subcon .defTable01 tr:first-child th{border-top: 1px solid #ddd;}
.subcon .defTable01 tr:first-child td {border-top: 1px solid #ddd;}



/* TAB */
@media screen and (max-width: 899px) {
  .subcon .defTable01 th {
    width: 180px;
    font-size:1.5rem;
    padding:15px 10px;
    line-height: 1.6;
    }  
.subcon .defTable01 td {
    padding:15px 10px;
    font-size:1.5rem;
    line-height: 1.6;
    }
}
/* SP */
@media screen and (max-width: 480px) {
.subcon .defTable01{
    margin: 20px auto;
    }
.subcon .defTable01 th {
    display: block;
    width: 100%;
    padding:15px;
    font-size:1.4rem;
    line-height: 1.5;
    border-bottom:none;
    background: #e9eff4;
    }
.subcon .defTable01 td {
    display: block;
    width: 100%;
    padding:15px;
    font-size:1.4rem;
    line-height: 1.5;
    background: #fff;
    border-bottom:none;
    }
.subcon .defTable01 tr:first-child th{border-top:none;}
.subcon .defTable01 tr:first-child td {border-top: none;}
.subcon .defTable01 tr:last-child td{border-bottom: 1px solid #e9eff4;}
}


/* business
---------------------------------------------------------------------------*/
#business01 p{
    display: block;
    padding-bottom: 25px;
    }
#business01 .cntList li{
    width: 46%;
    margin: 3% 0;
    }
#business01 li .cntImg{margin: 0 0 20px;}
#business01 li .cntDiv{
    padding: 0 0 0 40px;
    border-left: 2px solid var(--c-main);
    }
#business01 li h3,
#business01 li h5{
    font-weight: 600;
    font-size: 2.5rem;
    padding-top: 20px;
    margin-bottom: 25px;
    line-height: 1.4;
    color:var(--c-main);
    }
#business01 li h5 span{
    display: block;
    font-size: 1.3rem;
    letter-spacing: 0;
    }
.subcon #business01 li p{
    font-size: 1.6rem;
    line-height: 1.8;
    }

/* TAB */
@media screen and (max-width: 899px) {
#business01 .cntList li{
    width: 90%;
    margin: 3% auto;
    }   
    
}
/* SP */
@media screen and (max-width: 480px) {
#business01 p{padding-bottom: 15px;}
#business01 .cntList li{
    width: 100%;
    margin: 20px 0;
    }
#business01 li .cntImg{margin: 0 0 10px;}
#business01 li .cntDiv{padding: 0 20px 0 20px;}
#business01 li h3,
#business01 li h5{
    font-size: 1.8rem;
    padding-top: 10px;
    margin-bottom: 15px;
    line-height: 1.4;
    }
#business01 li h5 span{font-size: 1.2rem;}
.subcon #business01 li p{
    font-size: 1.4rem;
    line-height: 1.5;
    }
}


/* product
---------------------------------------------------------------------------*/

#product01 .cntList{margin-top: 100px;}
#product01 .cntList li{width: 33.3333%}

/* TAB */
@media screen and (max-width: 899px) {}
/* SP */
@media screen and (max-width: 480px) {}


/* factory
---------------------------------------------------------------------------*/
#factory01 .cntList{
    background: #efefef;
    padding: 40px;
    box-sizing: border-box;
    border-radius: 4px;
    margin-top: 60px;
    }
#factory01 table{
    width: 48%;
    border: none;
    border-collapse: collapse;
    }
#factory01 table th {
    width: 200px;
    padding:15px 15px;
    margin: 0;
    text-align: left;
    vertical-align: middle;
    font-size:1.6rem;
    font-weight: 600;
    line-height: 1.6;
    border-bottom: 2px solid #efefef;
    background:#f6f6f6;
    }
#factory01 table thead th{
    background: none;
    height: 55px;
    border: none;
    /*color: #313334;*/
    font-size:2.5rem;
    text-align: left;
    padding: 0;
    line-height: 1.0;
    color:var(--c-main);
    }
#factory01 table thead th span{
    border-left: 7px solid var(--c-main);
    padding:0px 10px 1px;
    font-weight: 800;
    }
#factory01 table td {
    padding:15px 15px;
    margin: 0;
    text-align: left;
    vertical-align: middle;
    font-size:1.6rem;
    line-height: 1.6;
    border-bottom: 2px solid #efefef;
    background:#fff;
    font-weight: normal;
    }
/* TAB */
@media screen and (max-width: 899px) {  
#factory01 .cntList{
    padding: 20px 40px;
    margin-top: 40px;
    }
#factory01 table{
    width: 100%;
    margin: 20px 0;
    }   
  
}
/* SP */
@media screen and (max-width: 480px) {
#factory01 .cntList{
    padding: 5px 20px;
    margin-top: 20px;
    }
#factory01 table th {
    display: block;
    width: 100%;
    padding:10px 15px;
    font-size:1.5rem;
    border-bottom: none;
    }
    #factory01 table th br{display: none;}
#factory01 table thead th{
    height: auto;
    font-size:1.8rem;
    padding: 0 0 10px;
    }
#factory01 table thead th span{
    border-left: 5px solid var(--c-main);
    padding:0px 10px 1px;
    }
#factory01 table td {
    display: block;
    width: 100%;
    padding:10px 15px;
    font-size:1.5rem;
    line-height: 1.6;
    border-bottom:none;
    }
    
    
}


/* company
---------------------------------------------------------------------------*/
#company01 .cntBox{width: 50%}
#company01 .cntBox p{display: block;padding-bottom: 15px;}
#company01 .cntBox .name{display: block;text-align: right;}
#company01 .cntImg{width: 45%;}

#company02{background: url("../img/company/company.png")no-repeat top right ,url("../img/company/bg.png")repeat;}

#company03.bg01{
    background: url("../img/company/bg02.jpg")no-repeat top right fixed;
    background-size: cover;
    }
#company03 table{
    width: 100%;
    margin: 40px auto 0;
    border: none;
    border-collapse: collapse;
    position: relative;
    }
#company03 table::after{
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    top: 0;
    left: 14px;
    background: #b9d5e9;
    }
#company03 table th {
    width: 180px;
    padding:25px 0 25px 40px;
    margin: 0;
    text-align: left;
    vertical-align: top;
    font-size:1.7rem;
    font-weight: 600;
    line-height: 1.6;
    position: relative;
    }
#company03 table th::before{
    position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 100px;
    background: #b9d5e9;
    top: 35px;
    left: 10px;
    }
#company03 table td {
    padding:25px 10px;
    margin: 0;
    text-align: left;
    vertical-align: top;
    font-size:1.6rem;
    line-height: 1.6;
    }
.subcon #company03 table td p,
#company03 table td ul li{font-size:1.6rem;line-height: 1.4;font-weight: 500;}

#company03 table td ul li{
    line-height: 1.4;
    padding-bottom: 15px;
    list-style: disc;
    }
#company03 table td ul{padding-left: 15px;}

#company04 ul{margin-top: 40px;}
#company04 ul li{
    width: 48%;
    margin-top: 40px;
    box-sizing: border-box;
    }
#company04 ul .cntImg{width: 22%;}
#company04 ul dl{width: 74%;}

.subcon #company04 ul dl dt{
    font-size: 2.2rem;
    margin-top: 10px;
    margin-bottom: 16px;
    line-height: 1.5;
    padding-left:1.4em;
    text-indent:-1.4em;
    font-weight: 600;
    }
.subcon #company04 ul dl dt span{
    font-size: 1.5rem;
    padding-right: 10px;
    letter-spacing: 0;
    color: #666;
    }
.subcon #company04 ul dl p{
    font-size: 1.6rem;
    line-height: 1.6;
    }


/* TAB */
@media screen and (max-width: 899px) {
#company04 ul li{width: 100%;}
}
/* SP */
@media screen and (max-width: 480px) {
#company01 .cntBox{width: 100%}
#company01 .cntBox p{padding-bottom: 15px;}
#company01 .cntImg{width: 100%;}
#company03.bg01{
    background: url("../img/company/bg02.jpg")no-repeat top center;
    background-size: cover;
    }
#company03 table{
    margin: 20px auto 0;
    }
#company03 table::after{
    position: absolute;
    content: "";
    width: 2px;
    height: 100%;
    top: 0;
    left: 14px;
    background: #b9d5e9;
    }
#company03 table th {
    width: 130px;
    padding:15px 0 15px 30px;
    font-size:1.5rem;
    }
#company03 table th::before{
    width: 10px;
    height: 10px;
    top: 25px;
    left: 10px;
    }
#company03 table td {
    padding:15px 10px;
    font-size:1.4rem;
    line-height: 1.6;
    }
.subcon #company03 table td p,
#company03 table td ul li{font-size:1.4rem;}
#company03 table td ul li{padding-bottom: 10px;}
#company03 table td ul{padding-left: 15px;}

#company04 ul{margin-top: 20px;}
#company04 ul li{
    width: 100%;
    margin-top: 20px;
    }
#company04 ul .cntImg{width: 20%;}
#company04 ul dl{width: 75%;}

.subcon #company04 ul dl dt{
    font-size: 1.6rem;
    margin-top: 0;
    margin-bottom: 13px;
    }
.subcon #company04 ul dl dt span{
    font-size: 1.2rem;
    padding-right: 10px;
    }
.subcon #company04 ul dl p{
    font-size: 1.4rem;
    line-height: 1.6;
    }
    
}


/* recruitment
--------------------------------------------------*/
.subcon #recruit01{background: url("../img/recruitment/bg.png")no-repeat top right,url("../img/recruitment/bg02.png")no-repeat bottom left;}
.subcon #recruit01 h5{
    font-weight: bold;
    font-size: 2.4rem;
    margin-top: 65px;
    margin-bottom: 45px;
    }
.subcon #recruit01 p{
    display: block;
    margin-bottom: 35px;
    }

#recruit02 .cntDiv{
    background: #4fa8e4;
    padding: 50px 60px 40px;
    box-sizing: border-box;
    margin-top: 40px;
    border-radius: 4px;
    }
#recruit02 h5{
    font-size: 2.8rem;
    margin: 0 0 50px;
    font-weight: 800;
    line-height: 1.5;
    position: relative;
    }
#recruit02 h5 span{
    background: #4fa8e4;
    padding: 1px 20px 1px 0;
    position: relative;
    z-index: 1;
    }
#recruit02 h5::after{
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    background: #89c9f4;
    top: 22px;
    left: 0;
    }

#recruit02 .graphList01{
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap:         wrap;
    justify-content:space-between;
    }
#recruit02 .cntDiv .graphList01 li{
    float: none;
    margin: 0 0 20px;
    border-bottom:none;
    width: 32%;
    box-sizing: border-box;
    }
#recruit02 .cntDiv .graphList01 li:nth-child(4),
#recruit02 .cntDiv .graphList01 li:nth-child(5){width: 49%;}

#recruit02 .cntDiv .ranking .cntText{
    background: #d1e9fa;
    padding: 20px 30px;
    box-sizing: border-box;
    border-radius: 4px;
    color: #111;
    font-size: 2.1rem;
    line-height: 1.5;
    margin-bottom: 10px;
    }
#recruit02 .cntDiv .ranking .cntText span{
    font-size: 1.6rem;
    letter-spacing: 0;
    line-height: 1.1;
    color: #004a7d;
    margin-right: 20px;
    background: url("../img/recruitment/ic01.png")no-repeat center left;
    background-size: 16px;
    padding-left: 20px;
    }
#recruit02 .cntDiv .ranking .cntDiv02{width: 52%;}
#recruit02 .cntDiv .ranking .cntImg{width: 45%;}
#recruit02 .cntDiv h6{margin-top: 30px;}
#recruit02 .cntDiv ul{
    margin-top: 10px;
    font-weight: 600;
    overflow: hidden;
    }
#recruit02 .cntDiv ul li{
    float: left;
    margin: 0 25px 12px 0;
    line-height: 1.6;
    border-bottom: 2px solid #89c9f4;
    }

#recruit03{background: url("../img/company/bg.png")repeat}


@media screen and (max-width: 1200px) {
.subcon #recruit01{background: url("../img/recruitment/bg.png")no-repeat top right /60%,url("../img/recruitment/bg02.png")no-repeat bottom left;}
}
/* TAB */
@media screen and (max-width: 899px) {
.subcon #recruit01{background: url("../img/recruitment/bg.png")no-repeat top right /50%,url("../img/recruitment/bg02.png")no-repeat bottom left;}
.subcon #recruit01 h5{
    font-size: 1.6rem;
    margin-top: 45px;
    margin-bottom: 25px;
    }
.subcon #recruit01 p{margin-bottom: 25px;}
#recruit02 .cntDiv{
    padding: 20px 30px 30px;
    margin-top: 30px;
    }
#recruit02 h5{
    font-size: 2.6rem;
    margin: 0 0 20px;
    }
#recruit02 .graphList01{
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap:         wrap;
    justify-content:space-between;
    }
#recruit02 .cntDiv .graphList01 li{
    margin: 0 0 5px;
    width: 49%;
    text-align: center;
    }
#recruit02 .cntDiv .graphList01 li:nth-child(4),
#recruit02 .cntDiv .graphList01 li:nth-child(5){width: 49%;}
#recruit02 .cntDiv .ranking .cntText span{display: block;margin: 0 0 5px 0}
#recruit02 .cntDiv .ranking .cntDiv02{width: 100%;}
#recruit02 .cntDiv .ranking .cntImg{width: 100%;} 
    
}
/* SP */
@media screen and (max-width: 480px) {
.subcon #recruit01 p br{display: none;}    
    
#recruit02 .cntDiv{
    padding: 15px 15px 15px;
    margin-top: 10px;
    }
#recruit02 h5{
    font-size: 1.8rem;
    margin: 0 0 10px;
    }
#recruit02 h5 span{padding: 1px 10px 1px 0;}
#recruit02 h5::after{top: 15px;}


#recruit02 .cntDiv .graphList01 li{
    margin: 0 auto 10px;
    width: 85%;
    }
#recruit02 .cntDiv .graphList01 li:nth-child(4),
#recruit02 .cntDiv .graphList01 li:nth-child(5){width: 85%;}
    
#recruit02 .cntDiv .ranking .cntText{
    padding: 15px 16px;
    font-size: 1.5rem;
    margin-bottom: 5px;
    }
#recruit02 .cntDiv .ranking .cntText span{
    font-size: 1.5rem;
    background: url("../img/recruitment/ic01.png")no-repeat center left;
    background-size: 15px;
    padding-left: 18px;
    }
#recruit02 .cntDiv h6{margin-top: 20px;}
#recruit02 .cntDiv ul{
    margin-top: 5px;
    }
#recruit02 .cntDiv ul li{
    margin: 0 15px 8px 0;
    }    
}






/* pagenavi*/
.subcon .wp-pagenavi {
    margin:100px auto 0;
    font-size: 1.6rem;
    text-align: center;
    font-family: var(--ff-main);
    font-weight: 600;
    }
.subcon .wp-pagenavi a {color:var(--c-main);}
.subcon .pages {margin-right: 20px;}
.subcon .wp-pagenavi .current,
.subcon .wp-pagenavi a.page {
    margin: 0 6px 6px 0;
    display: inline-block;
    border: solid 2px var(--c-main);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    line-height: 40px;
    text-align: center;
    transition: 0.7s;
    }
.subcon .wp-pagenavi .current {
    border: none;
    background: var(--c-main);
    color: #fff;
    }
.subcon .wp-pagenavi a.page:hover {
    background: var(--c-main);
    color: #fff;
    }
.subcon .wp-pagenavi .first,
.subcon .wp-pagenavi .extend {margin-right: 10px;}
.subcon .wp-pagenavi span.pages,
.subcon .wp-pagenavi .previouspostslink,
.subcon .wp-pagenavi .nextpostslink {display: none;}
.subcon .pagenation{}
.subcon .pagenation .pagenation_content {
    margin:100px auto 0;
    width: 100%;
    text-align: center;
    position: relative;
    font-family:var(--ff-main);
    font-size: 1.5rem;
    font-weight: 600;
    }
.subcon .pagenation .pagenation_content span {
    width: 15%;
    min-width: 60px;
    color: #fff;
    transition: all 0.35s ease;
    background: var(--c-main);
    padding: 10px 10px;
    }
.subcon .pagenation .pagenation_content a {
    width: 15%;
    text-align: center;
    min-width: 60px;
    border: solid 2px var(--c-main);
    background: var(--c-main);
    color:#fff;
    transition: all 0.35s ease;
    padding: 10px 10px;
    }
.subcon .pagenation .pagenation_content a:hover {background:#fff; color:var(--c-main);}
.subcon .pagenation .pagenation_content .prev:after {left: 0px;}
.subcon .pagenation .pagenation_content .all {
    left: 0;
    right: 0;
    width: 26%;
    margin: auto;
    }
.subcon .pagenation .pagenation_content .next {right: 0px;}


/* TAB */
@media screen and (max-width: 899px) {}

/* SP */
@media screen and (max-width: 480px) {
.subcon .wp-pagenavi {
    margin:50px auto 0;
    font-size: 1.4rem;
    }
.subcon .pagenation .pagenation_content {
    margin:50px auto 0;
    font-size: 1.4rem;
    }
}


/* contact
---------------------------------------------------------------------------*/

.sub_contact_box{
    background: var(--c-main);
    color: #fff;
    text-align: center;
    padding:60px 60px 50px;
    box-sizing: border-box;
    margin-bottom: 40px;
    border-radius: 4px;
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: .075em;
    }
 .sub_contact_box .--ff-en{
    margin-top: 10px;
    font-size: 4.0rem;
    }
.sub_contact_box .--ff-en span {
    margin-right: 10px;
    font-size: 1.8rem;
    }


.subcon .defTable01 label {
    font-size:1.6rem;
    line-height: 1.7;
    }
.subcon .defTable01 input[type=radio],
.subcon .defTable01 input[type=checkbox] {
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
    padding: 0;
    margin: 2px 4px;
    font-size:1.6rem;
    }
.subcon .defTable01 input[type=text],
.subcon .defTable01 input[type=email],
.subcon .defTable01 input[type=tel] {
    border: 1px solid #ddd;
    padding:10px;
    background: #f6f6f6;
    width: 100%;
    box-sizing: border-box;
    line-height: 1.6;
    border-radius: 2px;
    font-size:1.6rem;
    }
.subcon .defTable01 input.form-m[type=text] {width: 50%; }
.subcon .defTable01 input.form-s[type=text] {width: 13%; }
.subcon .form-box {margin: 10px 0; }
.subcon .defTable01 select {
    border: 1px solid #ddd;
    background: #f6f6f6;
    padding:10px;
    width: 50%;
    box-sizing: border-box;
    line-height: 1.6;
    border-radius: 2px;
    font-size:1.6rem;
    }
.subcon .defTable01 select optgroup {background: #ddd; }
.subcon .defTable01 textarea {
    border: 1px solid #ddd;
    padding: 10px;
    background: #f6f6f6;
    width: 100%;
    box-sizing: border-box;
    border-radius: 2px;
    font-size:1.6rem;
    }
.subcon .defTable01 input[type=text]::-moz-placeholder, .subcon .defTable01 input[type=email]::-moz-placeholder, .subcon .defTable01 input[type=tel]::-moz-placeholder, .subcon .defTable01 input[type=text]::placeholder, .subcon .defTable01 input[type=email]::placeholder, .subcon .defTable01 input[type=tel]::placeholder {
    color: #666;
    font-size:1.6rem;
    font-family: var(--ff-main);
    }
.subcon .defTable01 textarea::-moz-placeholder, .subcon .defTable01 textarea::placeholder {
    color: #666;
    font-size:1.6rem;
    font-family: var(--ff-main);
    }
.subcon .defTable01 td a {text-decoration: underline; }
.subcon .defTable01 td a:hover {text-decoration: none; }


.subcon .defTable01 .privacy_box{
    max-height: 450px;
    overflow-y: scroll;
    padding: 40px;
    margin: 20px 0;
    background: #f6f6f6;
    box-sizing: border-box;
    border: 1px solid #e1ded8;
    }
.subcon .defTable01 .privacy_box ._Title2{
    font-size: 1.8rem;
    margin-top: 40px;
    font-weight: 600;
    margin-bottom: 20px;
    }
.subcon .defTable01 .privacy_box h4{margin-top: 20px;}
#mainBox .subcon .defTable01 .privacy_box p,
.subcon .defTable01 .privacy_box ul li{
    line-height: 1.5;
    font-size: 1.6rem;
    font-weight: 400;
    }
.subcon .defTable01 .privacy_box ul{margin: 10px 0 10px 1.5em;}
.subcon .defTable01 .privacy_box ul li{list-style: decimal;}
.subcon .form_btn {
    text-align: center;
    margin-top: 5rem;
    }
.subcon .form_btn input {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    height: 60px;
    font-size: 1.6rem;
    font-weight: 600;
    color: #fff;
    letter-spacing: .075em;
    background: var(--c-main);
    border: 1px solid var(--c-main);
    transition: 0.5s;
    margin: auto;
    font-family: var(--ff-main);
    border-radius: 100px;
    }
.subcon .form_btn input:hover {
    background: #fff;
    color:var(--c-main);
    }
.subcon .defTable01 em.colR {
    font-style: normal;
    color: var(--c-main);
    font-size:2.2rem;
    margin-left: 4px;
    font-weight: 600;
    font-weight: bold;
    }


/* TAB */
@media screen and (max-width: 899px) {
.subcon .defTable01 label {
    font-size:1.5rem;
    line-height: 1.5;
    }
.subcon .defTable01 input[type=radio],
.subcon .defTable01 input[type=checkbox] {
    line-height: 1.5;
    font-size:1.5rem;
    }
.subcon .defTable01 input[type=text],
.subcon .defTable01 input[type=email],
.subcon .defTable01 input[type=tel] {
    padding:10px;
    line-height: 1.5;
    font-size:1.5rem;
    }
.subcon .defTable01 input.form-m[type=text] {width: 50%; }
.subcon .defTable01 input.form-s[type=text] {width: 15%; }
.subcon .form-box {margin: 10px 0; }
.subcon .defTable01 select {
    padding:10px;
    line-height: 1.5;
    font-size:1.5rem;
    }
.subcon .defTable01 select optgroup {background: #ddd; }
.subcon .defTable01 textarea {
    padding: 10px;
    line-height: 1.5;
    font-size:1.5rem;
    }
.subcon .defTable01 input[type=text]::-moz-placeholder, .subcon .defTable01 input[type=email]::-moz-placeholder, .subcon .defTable01 input[type=tel]::-moz-placeholder, .subcon .defTable01 input[type=text]::placeholder, .subcon .defTable01 input[type=email]::placeholder, .subcon .defTable01 input[type=tel]::placeholder {
    font-size:1.5rem;
    }
.subcon .defTable01 textarea::-moz-placeholder, .subcon .defTable01 textarea::placeholder {
    font-size:1.5rem;
    }
.subcon .defTable01 .privacy_box{
    padding: 30px;
    }
.subcon .defTable01 .privacy_box ._Title2{
    font-size:1.8rem;
    }
.subcon .form_btn input {
    width: 100%;
    max-width: 350px;
    font-size: 1.6rem;
    margin-top: 10px;
    font-weight: 600;
    }
}
/* SP */
@media screen and (max-width: 480px) {
.sub_contact_box{
    padding:20px 10px;
    margin-bottom: 20px;
    font-size: 1.4rem;
    line-height: 1.6;
    letter-spacing: .05em;
    }
.sub_contact_box .--ff-en{
    margin-top: 0;
    font-size: 2.5rem;
    } 
    
.subcon .defTable01 label {
    font-size:1.4rem;
    line-height: 1.5;
    }
.subcon .defTable01 input[type=radio],
.subcon .defTable01 input[type=checkbox] {
    font-size:1.4rem;
    line-height: 1.5;
    }
.subcon .defTable01 input[type=text],
.subcon .defTable01 input[type=email],
.subcon .defTable01 input[type=tel] {
    font-size:1.4rem;
    line-height: 1.5;
    }
.subcon .form-box {margin: 10px 0; }
.subcon .defTable01 select {
    font-size:1.4rem;
    line-height: 1.5;
    }
.subcon .defTable01 textarea {
    font-size:1.4rem;
    line-height: 1.5;
    }
.subcon .defTable01 input[type=text]::-moz-placeholder, .subcon .defTable01 input[type=email]::-moz-placeholder, .subcon .defTable01 input[type=tel]::-moz-placeholder, .subcon .defTable01 input[type=text]::placeholder, .subcon .defTable01 input[type=email]::placeholder, .subcon .defTable01 input[type=tel]::placeholder {
    font-size:1.4rem;
    }
.subcon .defTable01 textarea::-moz-placeholder, .subcon .defTable01 textarea::placeholder {
    font-size:1.4rem;
    }
.subcon .defTable01 .privacy_box{
    max-height: 250px;
    }
.subcon .defTable01 .privacy_box ._Title2{
    font-size:1.6rem;
    }
#mainBox .subcon .defTable01 .privacy_box p,
.subcon .defTable01 .privacy_box ul li{
    font-size: 1.4rem;
    }
.subcon .form_btn {
    margin-top: 2rem;
    }
.subcon .defTable01 em.colR {
    font-size:1.8rem;
    }
}
