/*オカベ*/

/* Base Layout
------------------------------------------------------------ */
html {
	overflow: auto;
    scroll-behavior: smooth;
}
* html { /* for IE6 */
	overflow: hidden;
	overflow-x: auto;
	height: 100%;
}
body {
	color: #231815;
	line-height: normal;
	font-family: 'Noto Sans JP' , "ヒラギノ角ゴ Pro",メイリオ, Hiragino Kaku Gothic Pro,"ＭＳ Ｐゴシック",sans-serif;
    font-weight: 400;
	position: relative;
	min-width: 280px;
	background-color: #FFFFFF;
	font-size: 15px;
	width: 100%;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
	margin-left: 0px;
	/*text-align: justify;*/
	box-sizing: border-box;
	overflow-x: hidden;
}
* html body { /* for IE6 */
	overflow-y: auto;
	height: 100%;
}

ul{	list-style:none;}
li{	float:left;}
/* clearfix */
.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}
.clearfix { display: inline-block; }
/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

/*clearfix to objects*/
header:after,
footer:after,
section:after,
.container:after,
div.widthsize:after,
ul:after{
	content: ".";
	display: block;
	height: 0px;
	font-size: 0;
	clear: both;
	visibility: hidden;
}
body,div,dl,dt,dd,ul,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,legend,textarea,p,blockquote,th,td{ 
	margin:0;padding:0;
}
img{
	border:0;
	vertical-align:middle;
    width: 100%;
}
	
#topbutton {
      /* ▼表示位置を画面の右下に固定 */
      position: fixed; /* ←表示場所を固定 */
      bottom: 5px;   /* ←下端からの距離 */
      right: 50px;    /* ←右端からの距離 */

      /* ▼最初は非表示にしておく */
      display: none;
	  z-index:100;
}

section{
	width:100%;
	position:relative;
	padding-bottom:8em;
}

/*h1 {font-size: 1em;}*/
.ml1{ margin-left:1em;}
.mt1{ margin-top:1em;}
.mt2{ margin-top:2em;}
.mt3{ margin-top:3em;}
.mt5{ margin-top:5em;}
.mt5{ margin-top:5em;}
.mb1{ margin-bottom:1em;}
.mb5{ margin-bottom:5em;}
.center{text-align:center;}
.fnt08{font-size:0.8em;}
.fnt15{font-size:1.5em;}
.mincho{font-family: 'Noto Serif JP', serif;}
.text_red{color: #F90004;}
/**/
.flex{
    display: inline-flex;
    flex-wrap: wrap;
}
/*　Base Link 
------------------------------------------------------------ */
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

a:link {
	color:#000;
	text-decoration:none;
}
a:visited {
	color:#000;
	text-decoration:none;
}
a:hover, a:active  {
	color: #999;
	text-decoration: none;
}
footer a:link,
footer a:visited{
	color:#fff;
	text-decoration:none;
}

/* 
------------------------------------------------------------ */
p.resizeimage img { width: 100%; }


/* 共通
------------------------------------------------------------ */
.sp_none,.sp_none02{ display:none;}
.sp_w80 img { width:80%;}
.sppad_w100 img{ width:100%;}

header {
	width:100%;
	color:#FFFFFF;
}

.widthsize{
	max-width: 766px;
	margin-right: 1em;
	margin-left: 1em;
	position: relative;
}
/* 画面外にいる状態 */
.element {
	opacity : 0.1;
	transform : translate(0, 80px);
	transition : all 1s;
	}

/* 画面内に入った状態 */
.element.scrollin {
	opacity : 1;
	transform : translate(0, 0);
	}

.fadeLeft{
  opacity: 0;
  transform: translateX(-150px);
  transition: opacity 1s, transform 1s;
}

.fadeLeft.scrollin {
  opacity: 1;
  transform: translateX(0);
}
.fadeRight{
  opacity: 0;
  transform: translateX(150px);
  transition: opacity 1s, transform 1s;
}
.fadeRight.scrollin {
  opacity: 1;
  transform: translateX(0);
}

/*
-----------------------------------------------------------*nav*/
*, *:before, *:after {
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}
ol, ul {
	list-style: none;
}
a {
	text-decoration: none;
	color: inherit;
}
#nav_sp{
    background: #000;
}
.head_name{
    width: 70%;
    padding: 15px;
}
.cp_cont {
	height: 65vh;
}
.cp_offcm01 {
	position: fixed;
	top: 20px;
	right: 20px;
	display: inline-block;
    z-index: 10000;
}
/* menu */
.cp_offcm01 .cp_menu {
	position: fixed;
	top: 0;
	right: -100vw;
	width: 80vw;
	height: 100%;
	cursor: pointer;
	-webkit-transition: 0.53s transform;
	        transition: 0.53s transform;
	-webkit-transition-timing-function: cubic-bezier(.38,.52,.23,.99);
	        transition-timing-function: cubic-bezier(.38,.52,.23,.99);
	background-color: #0081cc;
	opacity: 0.9;
}
.cp_offcm01 .cp_menu ul {
	margin: 0;
	padding: 10px 0 0 0;
}
.cp_offcm01 .cp_menu li {
	list-style: none;
    width: 100%;
	color: #ffffff;
    text-align: center;
    font-size: 1.2em;
    font-weight: 400;
    letter-spacing: 1px;
}
.cp_offcm01 .cp_menu li a {
	display: block;
	padding: 20px 20px;
	text-decoration: none;
	color: #ffffff;
}
.cp_offcm01 #cp_toggle01 {
	position: absolute;
	display: none;
	opacity: 0;
}
.cp_offcm01 #cp_toggle01:checked ~ .cp_menu {
	-webkit-transform: translateX(-100vw);
	        transform: translateX(-100vw);
}
/* menu toggle */
.cp_offcm01 #cp_toggle01 ~ label {
	display: block;
	padding: 0.5em;
	cursor: pointer;
	-webkit-transition: 0.5s transform;
	        transition: 0.5s transform;
	-webkit-transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
	        transition-timing-function: cubic-bezier(.61,-0.38,.37,1.27);
	text-align: center;
	color: #0081cc;
}
.cp_offcm01 #cp_toggle01:checked ~ label {
	-webkit-transform: translateX(-78vw);
	        transform: translateX(-78vw);
}
.cp_offcm01 #cp_toggle01 ~ label::before {
    content: url("../img/common/menu_btn_01.png");
	/*font-family: 'FontAwesome';
	content: '\f0c9';
	font-size: 2em*/
}
.cp_offcm01 #cp_toggle01:checked ~ label::before {
	content: url("../img/common/menu_btn_02.png");
    /*content: '\f00d';*/
}

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

footer {
	width: 100%;
	background:#0081cc;
	padding:2em 0;
	color:#FFFFFF;
    text-align: center;
}
footer .f_logo{
	width: 40%;
	margin: 10px auto;
}
footer .f_add{
	font-weight: 600;
    font-size: 1.2em;
    line-height: 2em;
}
/* inneer
------------------------------------------------------------ */
/*----------------------------------------------------------------------- top */

.scrap_area {
    position: relative;
}
.scrap_area h1{
    margin: 3em auto;
    width: 60%;
}
.scrap_area h2{
    color: #0081cc;
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1.3em;
}
.txt_en{
    font-weight: 700;
    font-size: 1.1em;
}
.scrap_area_img{
    width: 40%;
    margin: 1em auto;
    position: absolute;
    right: 0;
}
.seiri_area{
    margin-top: 1em;
}
.seiri_area h2{
    color: #0081cc;
    font-size: 26px;
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1.3em;
    width: 70%;
    position: relative;
}
.seiri_area_img{
    width: 50%;
    position: absolute;
    right: -25px;
    top:-50px;
}
.prid {
    margin-top: 100px;
    position: relative;
}
.prid h3{
    width: 80%;
}
.prid ul{
    margin-top: 1em;
}
.prid li{
    color: #0081cc;
    font-size: 18px;
    font-weight: 600;
    text-indent: -24px;
    padding-left: 24px;
    margin-bottom: 1em;
}
.prid li::before{
    content: "●";
    color: #0081cc;
    font-size: 18px;
    margin-right: 5px;
}
.txt_b_w700{
    font-weight: 700;
    font-size: 1.1em;
    margin-top: 2em;
    margin-bottom: 1em;
}
.prid_area_img{
    width: 40%;
    margin: 1em auto;
    position: absolute;
    right: 0;
}

.info_box{
    width: 100%;
    background: #0081cc;
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    padding: 1em;
    margin-top: 100px;

}
.info_box .flex{
    width: 100%;
    justify-content: center;
    align-items: center;
    line-height: 2.5em;
}
.info_box .tel{
    width: 100%;
    font-size: 22px;
}
.info_box .tel a:link,
.info_box .tel a:visited{
    color: #fff;
}
.info_box .tel::before{
    content: "";
    display: inline-block;
    width: 40px;
    height: 40px;
    background:  url("../img/common/icon_tel_white.png");
    background-size: cover;
    vertical-align: middle;
    margin-right: 5px;
}
.info_box .info_mail{
    width: 15%;
}
.ad_scrap01{
    background: url("../img/top/scrap-_bg.jpg") center no-repeat;
    padding: 80px 1em;
    color: #fff;
}
.ad_ttl{
    font-size: 28px;
    font-weight: 800;
    letter-spacing: 2px;
}
.ad_sub_ttl{
    font-size: 26px;
    font-weight: 600;
}
.ad_en{
    font-size: 26px;
    font-weight: 600;
}
.ad_txt{
    margin-top: 2em;
    background: #231815;
	opacity: 0.7;
	filter: alpha(opacity=70);
    padding: 20px;
}
.ad_scrap02{
    background: url("../img/top/scrap-_bg02.jpg") center no-repeat;
    min-height:320px;
    position: relative;
}
.ad_item{
    width: 40%;
    position: absolute;
    top:20px;
    left: 20px;
}
section.used_area {
     padding-bottom: 0;
}

.used_ttl_box{
    background: url("../img/top/used_bg.jpg") center no-repeat;
    padding: 80px 0 60px;
    color: #fff;
    font-weight: 800;
    font-size: 26px;
}
.used_txt_box{
    background: url("../img/top/used_bg02.jpg") top center no-repeat;
    padding: 20px 0 ;
    color: #0081cc;
    font-weight: 600;
    font-size: 18px;
}
.used_txt_box .txt_en{
     color: #231815;
}
.used_area .info_box .txt_en{
     color: #fff;
}
#top h4{
    margin: 3em 5px;
    font-size: 24px;
    font-weight: 800;
}
.lnk_banner{
    width: 100%;
    margin-bottom: 10px;
}
/*----------------------------------------------------------------------- FAQ */
#faq h1,
#recruit h1{
    margin: 2em auto 0;
    width: 50%;
}
#faq dl{
    width: 100%;
}
#faq dt{
    color: #ea5614;
    font-size: 18px;
    text-indent: -36px;
    padding-left: 36px;
}
#faq dt::before{
    content: "Q：";
    color: #ea5614;
    font-size: 18px;
    margin-right: 5px;
}
#faq dd{
    margin: 1em auto 1.5em;
    padding-bottom: 1.5em;
    border-bottom: #b5b6b6 solid 1px;
    text-indent: -33px;
    padding-left: 33px;
}
#faq dd::before{
    content: "A：";
    font-size: 18px;
    margin-right: 5px;
}
#faq .under_txt{
    font-size: 1.1em;
    margin: 3em auto 2em;
}
/*
-----------------------------------------------------------*profile*/
#profile .message_box{
    margin-top: 5em;
}
#profile .message_img{
    width: 80%;
    margin: 0 auto 2em;
}
#profile .message_txt{
    font-weight: 500;
}
#profile .message_name{
    text-align: right;
}
#profile h1{
    text-align: center;
    font-size: 30px;
}
.indent{
    text-indent: 1em;
}
#profile .inner_tbl{
    width: 100%;
    }
#profile .profile_box .inner_tbl th,
#profile .profile_box .inner_tbl td{
    padding: 1em;
    font-weight: 400;
    font-size: 1.1em;
    }
#profile .profile_box .inner_tbl th{
    width: 30%;
    vertical-align: top;
    text-align-last: justify;
    }
#profile .profile_box .inner_tbl td{
    width: 70%;
    text-align: left;
    }
#profile .enkaku_box h2{
    letter-spacing: .25em;
    font-weight: 400;
    }
#profile .enkaku_box .inner_tbl th,
#profile .enkaku_box .inner_tbl td{
    width: 100%;
    font-weight: 400;
    font-size: 1.1em;
    display: block;
    box-sizing: border-box;
    text-align: left;
    }
#profile .enkaku_box .inner_tbl th{
    padding: 1em 1em .5em;
    border-bottom: 2px solid;
    }
#profile .enkaku_box .inner_tbl td{
    padding: .5em 1em 1em;
    }
#profile .office_img_box{
    justify-content: space-between;
    margin: 3em auto;
}
#profile .office_img{
    width: 48%;
}
.map_box iframe, .map_box object, .map_box embed {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}
/*
-----------------------------------------------------------*yuzan*/
#yuzan .shop_img{
    width: 90%;
    margin: 3em auto 2em;
}
#yuzan h1{
    font-size: 26px;
    font-weight: 500;
}
#yuzan .inner_tbl th,
#yuzan .inner_tbl td{
    display: block;
    width: 100%;
    font-weight: 400;
    font-size: 1.1em;
    box-sizing: border-box;
}
#yuzan .inner_tbl th{
    border-left: 5px solid;
    border-bottom: 1px solid;
    padding: 0 0 .5em 1em;
    text-align: left;
    }
#yuzan .inner_tbl td{
    padding: .5em 1.5em;
    margin-bottom: 1em;
    }
#yuzan h2{
    font-size: 30px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 1em;
}
/*----------------------------------------------------------------------- toiawase */
#toiawase h1{
    margin: 2em auto;
    width: 80%;
}
.formTable{
    margin: 1em auto 2em;
    width: 100%;
    text-align: left;
}
.formTable th,.formTable td{
    width: 100%;
    float: left;
    letter-spacing: 2px;
    }
.formTable input , .formTable textarea{
    line-height: 1.5em;
    padding: 5px 10px;
    margin: .5em auto 1em;
    width: 100%;
    box-sizing: border-box;
    }
.formTable input[type="radio"]{
    width:2em;
}
.formTable select{
    width: 100px;
    padding: 5px 1em;
}
.btn_kakunin{
    margin: 3em auto 0;
    text-align: center;
    width: 100%;
    color: #fff;
    background: #000;
    padding: 10px 0;
    letter-spacing: 5px;
    font-size: 1.1em;
    border: 1px solid;
    display: inline-block;
    box-sizing: border-box;
    }
.btn_kakunin a{
    }
.btn_kakunin a:hover{
    display:inline-block;
    transition: all 0.5s ease;
    text-decoration: none;
    background: #fff;
    }
.btn_reset{
    margin: 2em auto 2em;
    text-align: center;
    width: 80%;
    color: #fff;
    background: #999;
    padding: 10px 0;
    letter-spacing: 5px;
    font-size: 1.2em;
    border: 1px solid #999;
    display: inline-block;
    box-sizing: border-box;
    }
.btn_reset a{
    }
.btn_reset a:hover{
    display:inline-block;
    transition: all 0.5s ease;
    text-decoration: none;
    background: #fff;
    }
.err input{
    width: auto;
    padding: 10px 50px;
}
.err_messe{
    text-align: center;
} 

@media screen and ( min-width:320px )
{
.info_box .flex{
    justify-content: space-between;
}
.info_box .tel{
    width: 80%;
    font-size: 26px;
}
.info_box .info_mail{
    width: 15%;
}

}
@media screen and ( min-width:767px )
{
.widthsize{	
    max-width: 979px;
    margin-left: 2em;
    margin-right: 2em;
}
.sp_none02{ display:block;}
.pc_none02{ display:none;}
/*
-----------------------------------------------------------*nav*/
.head_name{
    width: 40%;
    padding: 15px;
}
/*
-----------------------------------------------------------*footer*/
footer .f_logo{
	width: 170px;
}
/*
-----------------------------------------------------------*top*/
.scrap_area h2{
    width: 80%;
    font-size: 32px;
    letter-spacing: -4px;
}
.scrap_area_img{
    top:50%;
    right: 5%;
    width: 20%;
}
.seiri_area{
    margin-top: 3em;
}
.seiri_area_img{
    width: 30%;
    right: 0;
    top:-150px;
}

.prid {
    margin-top: 0;
}
.prid h3{
    width: 50%;
}
.prid ul{
    width: 90%;
}
.prid li{
    font-size: 22px;
    font-weight: 700;
}
.txt_b_w700{
    font-size: 18px;
    }
.prid_area_img{
    width: 20%;
    right: 5%;
    bottom: 3em;
}
.info_box{
    width: 70%;
    padding-left: 100px;
    margin-top: 0;
}
.info_box .tel{
    font-size: 32px;
}

.ad_scrap02{
    min-height:500px;
}
.ad_scrap01{
    padding: 100px 0;
}
.ad_ttl{
    font-size: 50px;
    letter-spacing: 0;
}
.ad_sub_ttl{
    font-size: 30px;
}
.ad_txt{
    padding: 30px 80px;
    margin-top: 50px;
    font-weight: 600;
    text-align: center;
}
.ad_item{
    width: 250px;
    left: inherit;
    right: 20px;
    top:10%;
}
.used_ttl_box{
    background-size: cover;
    padding: 200px 0 60px;
    font-size: 30px;
}
.used_txt_box{
    padding: 30px 0 ;
    font-weight: 700;
    font-size: 22px;
    letter-spacing: -1px;
}
.used_area .info_box{
    margin-top: 80px ;
}
#top h4{
    margin: 5em 5px;
    font-size: 30px;
}
.lnk_banner_box{
    justify-content: space-between;
    width: 100%;
}

.lnk_banner{
    width: 48%;
}
/*----------------------------------------------------------------------- FAQ */
#faq h1{
    width: 25%;
}
/*----------------------------------------------------------------------- recruit */
#recruit h1{
    width: 40%;
}
/*
------------------------------------------------------------------------ profile */
#profile .message_box{
    justify-content: space-between;
}
#profile .message_img{
    width: 38%;
    margin-bottom: 0;
}
#profile .message_txt{
    width: 60%;
    text-align: justify;
    }
#profile .profile_box .inner_tbl,
#profile .enkaku_box .inner_tbl{
    width: 70%;
    margin: auto;
    }
#profile .profile_box .inner_tbl th{
    width: 20%;
    }
#profile .profile_box .inner_tbl td{
    width: 80%;
    }
#profile .enkaku_box h2{
    margin: auto;
    padding-left: 1rem;
    width: 70%;
    }
#profile .enkaku_box .inner_tbl th,
#profile .enkaku_box .inner_tbl td{
    display: inline-table;
    }
#profile .enkaku_box .inner_tbl th{
    width: 20%;
    border-bottom: none;
    vertical-align: top;
    margin: 1em 0 0 1em;
    }
#profile .enkaku_box .inner_tbl td{
    width: 70%;
    margin: 1em 0 0 1em;
    }
/*
-----------------------------------------------------------*yuzan*/
#yuzan .shop_img{
    width: 80%;
    margin: 5em auto 2em 0;
}
#yuzan .inner_tbl th,
#yuzan .inner_tbl td{
    display: inline-table;
    font-size: 1.5em;
}
#yuzan .inner_tbl th{
    width: 23%;
    border:none;
    padding: 0;
    text-align: inherit;
    vertical-align: top;
    text-align-last: justify;
    }
#yuzan .inner_tbl td{
    width: 60%;
    margin-bottom: 1em;
    margin-left: 2em;
    vertical-align: top;
    }
#yuzan h2{
    font-size: 36px;
    letter-spacing: 1px;
}
/*----------------------------------------------------------------------- toiawase */
#toiawase h1{
    width: 50%;
}

}
@media screen and ( min-width:980px )
{
.sp_none{ display:block;}
.pc_none{ display:none;}
.sppad_w100 img {width:auto;}
.widthsize{
	max-width: 980px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
/*---------------------------------------------------------------------------------- // fixed_menu // ----------*/
.global-nav .flex{
    width: 100%;
    justify-content: space-between;
    align-items: center;
    }
    
.nav-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    background-color:#fcfcfc;
    /*opacity: 0.9;*/
}
.header_left{
    width: 20%;
    }
.head_menu{
	width:70%;
	z-index:100;
    box-shadow: 0 3px 10px -5px #fcede9;
}
.head_menu ul{
    width: 100%;
}
.head_menu li{
}
.head_menu li a{
	color:#231815;
	text-decoration:none;
	display:block;
	font-size:18px;
	font-weight:400;
    position: relative;
    z-index: 100;
}
.head_menu li a:hover{
    color: #231815;
}
.head_menu li a::after {
  position: absolute;
  bottom: -10px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #231815;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .5s;
}
.head_menu li a:hover::after {
  transform: scale(1, 1);
}
/*
-----------------------------------------------------------*top*/
.header_img{
    margin-bottom: 3em;
    }
.bx-wrapper{
    border: none!important;
    box-shadow: none!important;
    }
.scrap_area h2{
    font-size: 36px;
    letter-spacing: -4px;
}
.scrap_area_img{
    right: 15%;
    width: 20%;
}
.seiri_area{
    margin-top: 8em;
}
.seiri_area_img{
    top:-200px;
}
.prid_area_img{
    bottom: 8em;
    right: 15%;
    }
.info_box{
    width: 55%;
    padding-left: 200px;
    max-width: 1000px;
}
.ad_scrap01,
.ad_scrap02{
    background-size: cover;
}
.ad_scrap02{
    min-height:700px;
}
.used_ttl_box{
    padding: 250px 0 60px;

}
.used_area .info_box{
    margin-top: 150px ;
}
#top h4{
    font-size: 36px;
}
/*----------------------------------------------------------------------- FAQ */
#faq h1,
#recruit h1{
    width: 20%;
}
#faq .under_txt{
    text-align: center;
}
/*
-----------------------------------------------------------*yuzan*/
#yuzan .inner_tbl th{
    width: 20%;
    }
#yuzan .inner_tbl td{
    width: 70%;
    margin-left: 3em;
    }
/*----------------------------------------------------------------------- toiawase */
#toiawase h1{
    width: 40%;
    margin: 5em auto 2em;
}


/* footer
-------------------------------------------------------------footer*/
}
@media screen and ( min-width:1300px )
{
    /*
-----------------------------------------------------------*top*/
.info_box{
    width: 55%;
    padding-left: 20%;
    max-width: 1200px;
}
}
