@charset "UTF-8";

/* -----------------------------------------------
1200px以下
-------------------------------------------------- */

@media screen and (max-width: 1200px) {
.container-fluid_top {
    position: relative;
    z-index: 1;
    top: -1em;
    width: 92%;
    left: 4%;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 2px 2px 6px #d1d1d1;
}
.container_bg {
    display: none;
}
.container-fluid_mi {
    position: relative;
    z-index: 1;
    top: 2em;
    width: 100%;
	border-radius: 0px;
    margin-bottom: 2em;
	box-shadow: 0px 0px 0px #d1d1d1;
}
.container_mi {
	height: auto;
    padding: 7% 4%;
}
.vertical_text {
	-ms-writing-mode:horizontal-tb;
	writing-mode: horizontal-tb;
	text-align: left;
	display: inline-block;
    padding: .5em .8em;
}

h2.top_ttl {
	margin: 0px 0 10px 0px;
  padding: 0 1rem;
  text-align: left;
	-ms-writing-mode:horizontal-tb;
	writing-mode: horizontal-tb;
}
  h2.top_ttl span{
    display: block;
    font-size: 12px;
    line-height: 1em;
     font-style: normal;
     letter-spacing: 1px;
}  
h2.top_ttl::before {
  display: none;
}
h2.top_ttl_mi_sp {
	margin: 0px 0 10px 0px;
  padding: 0 1rem;
  text-align: left;
	-ms-writing-mode:horizontal-tb;
	writing-mode: horizontal-tb;
	text-shadow:0 0 10px rgba(63,93,26,1);
}
  h2.top_ttl_mi_sp span{
    display: block;
    font-size: 12px;
    line-height: 1em;
     font-style: normal;
     letter-spacing: 1px;
}  
h2.top_ttl_mi_sp::before {
  display: none;
}

.ml50_zero{ margin-left:0 !important; }

.container_mi p{
    margin-bottom:1em;
	line-height: 2;
}
.pc {display: none;}
.sp {display: block;}

}
 

/* -----------------------------------------------
1024px以下
-------------------------------------------------- */

@media screen and (max-width: 1024px) {
}

/* -----------------------------------------------
 992px以下
-------------------------------------------------- */

@media screen and (max-width: 992px) {
.box_left{
    position: relative;
    width: 90%;
    top:-0.5em;
    right: 0;
    left: 0;
    margin: 0 auto;
    background-color: white;
    padding: 2em;
    z-index: 10
}
}


/* -----------------------------------------------
 768px以下（tablet）
-------------------------------------------------- */

 @media screen and (max-width: 768px) {
body { padding-bottom: 0px; }
.no_br br{display: none;}
/* -----------------------------------------------
 index
-------------------------------------------------- */

#cover{
	position: relative;
	left: 0px;
	top: 0px;
    background-image: url("../images/cover01_sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
	}
#cover #ttl{
    max-width: 500px;
}
#cover h1{
    font-size: 2.75em;
	letter-spacing: 8px;
}
#cover h1::before{
    bottom: 140px;
    left: 0;
    transform: scale(0.8);
}
#cover h1::after{
    bottom: .5em;
    right: 0;
    transform: scale(0.8);
}

.top_service .col-md-4{
    margin-bottom: 4em
}
.ml50_zero{ 
font-size: 20px!important;
margin-left:0 !important; 
}

.container_mi p{
    font-size: 16px;
}
     
h2.top_ttl{
    font-size: 2.5em;
	letter-spacing: 5px;
	margin: 12px 0 0px 0px;
}
h2.top_ttl span{
    display: block;
    font-size: 12px;
    line-height: 1em;
     font-style: normal;
     letter-spacing: 1px;
}
h2.top_ttl_mi_sp{
    font-size: 2.5em;
	letter-spacing: 5px;
	margin: 12px 0 0px 0px;
}
h2.top_ttl_mi_sp span{
    display: block;
    font-size: 12px;
    line-height: 1em;
     font-style: normal;
     letter-spacing: 1px;
}   
.bg_join{
 	width: 100%;
	height: 600px;
	position: relative;
	left: 0px;
	top: 0px;
    background-image: url("../images/join_sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;   
}
#join_ttl{
    max-width: 270px;
}
#join_ttl h1.join{
    font-size: 2.75em;
    letter-spacing: 5px;
}
#join_ttl h1.join::before{
    bottom: 70px;
    left: 30px;
    transform: scale(0.6);
}
#join_ttl h1.join::after{
    bottom: .3em;
    right: 0;
    transform: scale(0.6);
}
#join_ttl h1.join span{
    font-size: 30%;
}
/* -----------------------------------------------
 common
-------------------------------------------------- */
#cover2{
    height: 300px;
}
.py5p{ padding:6% 0 !important;  margin-bottom: 6%}
.flow .flowbox {
	padding: 1em 1.5em 1em;
	}
}

/* -----------------------------------------------
smartPhone
-------------------------------------------------- */

@media (max-width: 576px) {
html {font-size: 16px;}
body { line-height: 1.5;}
.container{
	padding: 1em 0;
}
.container p{font-size: 16px;}
.row p{font-size: 16px;}
.text_bold_m {
	font-size: 15px!important;
}
h1{ font-size:28px; font-size:1.75rem;}
h2{font-size:24px; font-size:1.5rem;}
h3{ font-size:20px; font-size:1.25rem;}
h4 ,h5 { font-size:18px; font-size:1.125rem;}
    
#cover{
height:500px;
}
#cover #ttl{

height: 200px;
}
#cover h1{
bottom: 55%;
font-size: 2.2em;
}
#cover h1::before{
    bottom: 120px;
    left: 20px;
    transform: scale(0.8);
}
#cover h1::after{
    bottom: .5em;
    right: 10px;
    transform: scale(0.8);
}

.bg_join{
	height: 550px; 
}  

.w60{
	width: 90%;
}
a.btn_contact,
a.btn_company{
    font-size: 16px;
    color: white;
    margin: 2em 1em;
}
.pc_br {
       display: none;
    }
}
/*-- fix_icon1-- */
#fix_icon1{ display:none}

/* -----------------------------------------------
PRINT Module
-------------------------------------------------- */
@media print {
* {color: #666 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
body { width: 100%; }
@page  { margin: 0.5cm; }
p, h2, h3 { orphans: 3; widows: 3; }
h2, h3 { page-break-after: avoid; }
thead { display: table-header-group; }
tr,img { page-break-inside: avoid; }
li { content: "» "; }
}