@charset "utf-8";
/* CSS Document */

@media (max-width: 767px) {
  .cont09 .cont09_box {
      display: block;
      height: auto;
      overflow: hidden;
      width: 300px;
      margin: 20px auto 0;
  }
}

@media (max-width: 1439px) and (min-width: 768px) {
	
}

/*---------------------共通/---------------------*/

@media (max-width: 415px) {
    body,
    table th,
    table td{
        font-size: 3.8vw;
    }    
}
header h1 img {
	width: auto;
	height: 40px;
}
a{
     font-weight: 500;
}
@media (max-width: 767px) {

p{
	font-size: 3.8vw;
}

#addbanner {
	padding: 0px 5% 20px;
}

#addbanner img{
	width: 100%;
}

.pc{
	display: none;
}

.sp{
	display: block;
}

.position03{
	right: 10px;
	bottom: 15%;
}

.position03 img{
	width: 250px;
	height: auto;
}

.position03 p{
	font-size: 14px;
	top: 15px;
	left: 15px;
}

.btn{
	font-size: 3.6vw;
    margin-bottom: 10px;
}
    
.f_10,
.f_10 span{
	font-size: 3.0vw;
}
    
.f_12,
.f_12 span{
	font-size: 3.0vw;
}

.f_14,
.f_14 span{
	font-size: 3.4vw;
}

.f_18,
.f_18 span{
	font-size: 3.2vw;
}
.f_20,
.f_20 span{
	font-size: 3.6vw;
}
.f_21,
.f_21 span{
	font-size: 4.4vw;
}

.f_22,
.f_22 span{
	font-size: 4.6vw;
}
.f_24,
.f_24 span{
	font-size: 5.0vw;
}


.f_26,
.f_26 span{
	font-size: 4.0vw;
}

.f_28,
.f_28 span{
	font-size: 4.2vw;
}
.f_30,
.f_30 span{
	font-size: 5.0vw;
}
.f_32,
.f_32 span{
	font-size: 4.6vw;
}
.f_36,
.f_36 span{
	font-size: 4.6vw;
}

.f_40,
.f_40 span{
	font-size: 5.0vw;
}

.spf_36{
	font-size: 4.6vw;
}

.f_42,
.f_42 span{
	font-size: 5.2vw;
}
    
.f_48,
.f_48 span{
	font-size: 5.6vw;
}
    
.f_50,
.f_50 span{
	font-size: 8.0vw;
}  
.f_56,
.f_56 span{
	font-size: 5.5vw;
}

.f_60,
.f_60 span{
	font-size: 6.4vw;
}

    
.f_64,
.f_64 span{
	font-size: 8.0vw;
}

.f_72,
.f_72 span{
	font-size: 10.0vw;
}
    
.f_84,
.f_84 span{
	font-size: 12.0vw;
}

.f_96,
.f_96 span{
	font-size: 15.0vw;
}
    
}

.mt10{
    margin-top: 5px;
}


.mt20{
    margin-top: 10px;
}

.mt30{
    margin-top: 15px;
}

.mt40{
    margin-top: 20px;
}

.mt50{
    margin-top: 25px;
}

.mt60{
    margin-top: 30px;
}
.mt80{
    margin-top: 40px;
}
.mt100{
    margin-top: 50px;
}

.mt120{
    margin-top: 60px;
}

.ptpb100{
	padding: 40px 0;
}
.mt0_sp{
    margin-top: 0;
}

.line_main_s {
    border-bottom: 2px solid #ff6400;
}
.line_main_wh {
    border-bottom: 2px solid #fff;
}
.line_main_wh02 {
    border-bottom: 2px solid #fff;
}
.line_main_navy {
    border-bottom: 2px solid #162f69;
}
.line_main_gray {
    border: none;
    border-bottom: 1px solid #999;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.line_main_og {
    border-bottom: 2px solid #FF6400;
}
.sp_block{
	display: block !important;
}

.pc_block{
	display: none !important;
}

.btn.sp_block{
    display: inline-block!important;
}


.txt_left_sp{
	text-align: left;
}

.txt_center_sp{
	text-align: center;
}


.fl_box_sp_1{
	width: 100%
}


.fadein:nth-of-type(1) ,
.fadein:nth-of-type(2) ,
.fadein:nth-of-type(3) ,
.fadein:nth-of-type(4) {
    -moz-transition-delay:100ms;
    -webkit-transition-delay:100ms;
    -o-transition-delay:100ms;
    -ms-transition-delay:100ms;
    }

#container{
    margin-top: 0 !important;
}

/*---------------------共通/---------------------*/

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

footer address.f_12 {
	font-size: 8px;
}
/*---------------------footer/---------------------*/


.table01 th{
    padding: 15px 0 0 ;
    width: 100%;
    display: block;
    border: none;
    font-size: 3.8vw;
}

.table01 td{
    padding: 0 0 15px;
    width: 100%;
    display: block;
    border-bottom: 1px solid #ccc;
    font-size: 3.8vw;
}

input[type=button],
input[type=submit]{
    margin-bottom: 10px;
}

.sub_ttl{
    padding: 60px 0;
    margin-top: 0;
}


table.contact_form{
    width: 100%;
}

table.contact_form th{
    padding: 15px 0 5px;
    width: 100%;
    display: block;
    text-align: left;
    border: none;
}


table.contact_form td{
    width: 100%;
    display: block;
    padding: 0;
}

/*---------------------cont/---------------------*/
.cont02 {
	padding: 60px 0;
}
p.text02{
	line-height: 180%;
}
p.text01 {
	width: 96%;
}
p.text01 i{
	color: #ff6400;
	font-size:30px;
}
.cont03{
	background-size: 160% auto;
}
.cont03 .box01{
	margin: 20px;
}
.cont03 .box02{
	margin: 20px;
}
.cont03 .box03{
	margin: 20px;
}
.cont04 {
	margin-bottom: 150px;
}
.cont04 .box01,.cont04 .box02,.cont04 .box03{
	width: 240px;
	height: 240px;
	margin: 0 auto 20px auto;
}
.cont05{
	background-position: left top;
	background-size: cover;
	padding: 1px 0 10% 0;
}
.cont05 .position04{
	width: 120px;
	height: auto;
	top: -120px;
	left: 10px;
}
.cont05 .position04 p{
	width: 120px;
	height: 120px;
	font-size: 12px;
	padding-top: 26px;
}
.mainpspbtn img{
	display: block;
	margin: 0 auto 20px;
}
.cont05 a img,
.mainpspbtn img{
	width: 90%;
	height: auto;
}
.cont06 .box{
	padding: 20px;
	margin-bottom: 20px;
}
.cont07 .box{
	padding: 30px 20px;
	margin-bottom: 60px;
}
.cont08 table{
	margin-bottom: 80px;
}
.cont08 table th,.cont08 table td {
	font-size: 16px;
    padding: 20px 5px;
}
.cont09 {
	padding-bottom: 100px;
}
.cont09 img{
	width: 90%;
	height: auto;
}
.cont11 img {
	width: 90%;
	height: auto;
}
.cont12 table {
	margin-top: 40px;
}
.cont12 table th,.cont12 table td {
    padding: 15px 10px;
}
.cont12 table th {
	display: block;
	width: 100%;
	margin-bottom: 0;
}
.cont12 table th span {
	color: #FF0000;
}
.cont12 table td {
	display: block;
	width: 100%;
	margin-bottom: 0px;
}
.cont13{
	background-image: url("../img/bg05.jpg");	
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
	padding: 7% 0 7% 0;
}
.bg_wh02 {
	width: 90%;
}

.select{
	
	width: 70px;
	height: 40px;
	font-size: 18px;
}
.input{
	width: 70px;
	height: 40px;
	font-size: 18px;
	margin-bottom: 20px;
	
}
/*---------------------/cont---------------------*/
