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


@media (max-width: 1200px) {

    header .row {
        justify-content: center !important;
      }  
      
}

@media (max-width: 415px) {
    body,
    table th,
    table td{
        font-size: 3.8vw;
    }    
}

a{
     font-weight: 500;
}

header{
	display: none;
}


#wap{
    margin-top: 60px;
}

p{
	font-size: 3.8vw;
}

.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: 4.0vw;
}
.f_20,
.f_20 span{
	font-size: 4.4vw;
}
.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: 5.4vw;
}

.f_28,
.f_28 span{
	font-size: 5.8vw;
}
.f_32,
.f_32 span{
	font-size: 6.0vw;
}
.f_36,
.f_36 span{
	font-size: 6.0vw;
}

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

.f_42,
.f_42 span{
	font-size: 6.8vw;
}
    
.f_48,
.f_48 span{
	font-size: 7.0vw;
}
    
.f_56,
.f_56 span{
	font-size: 7.5vw;
}

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

    
.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;
}
    


.mt120{
    margin-top: 60px;
}

.mt10 {
    margin-top: 1vw;
  }
  .mb10 {
    margin-bottom: 1vw;
  }
  .mt20 {
    margin-top: 2vw;
  }
  .mb20 {
    margin-bottom: 2vw;
  }
  .mt30 {
    margin-top: 3vw;
  }
  .mb30 {
    margin-bottom: 3vw;
  }
  .mt40 {
    margin-top: 4vw;
  }
  .mb40 {
    margin-bottom: 4vw;
  }
  .mt50 {
    margin-top: 5vw;
  }
  .mb50 {
    margin-bottom: 5vw;
  }
  .mt60 {
    margin-top: 6vw;
  }
  .mb60 {
    margin-bottom: 6vw;
  }
  .mt70 {
    margin-top: 7vw;
  }
  .mb70 {
    margin-bottom: 7vw;
  }
  .mt80 {
    margin-top: 8vw;
  }
  .mb80 {
    margin-bottom: 8vw;
  }
  .mb90 {
    margin-bottom: 9vw;
  }

  .mt100 {
    margin-top: 10vw;
  }
  .mb100 {
    margin-bottom: 10vw;
  }

  .mt150 {
    margin-top: 15vw;
  }

.mt0_sp{
    margin-top: 0;
}

.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%
}

.btn_main {
  padding: 3vw;
}
.btn_main i {
  font-size: 6vw;
}

.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---------------------*/
#pagetop a.sp_block {
  border-radius: 100%;
  width: 10vw;
  height: 10vw;
  display: flex !important;
  align-items: center;
  justify-content: center;
}
#pagetop a.sp_block .material-icons {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-content: center;
}
footer{
    width: 100%;
    text-align: center;
}

footer h1 img{
    width: 60%;
    height: auto;
}

footer .footer_box01{
    width: 100%;
}

footer .form_link{
    width: 80%;
    margin: 30px auto 0;
}

address {
  padding: 20px 20px 17vw 20px;
}

footer address.f_14{
    font-size: 2vw;
    right: 1%;
}

footer .page_top{
    top: 0;
    font-size: 3vw;
}

footer .form_link .btn_main {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 5vw;
}
footer .form_link .btn_main span.material-icons-outlined{
  font-size: 5vw;
  margin-top: 3px;
}

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

.bg01{
    padding: 60px 0;
}

.news_box_wap{
    width: 100%;
    margin-top: 30px;
}

.news_box_wap .news_box_ttl {
    padding-right: 40px;
}
.news_s_box{
    margin-bottom: 100px;
}


.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;
}


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;
}

.mt-200 {
    margin-top: -15px;
}

main {
  margin-top: 60px;
}
/*************************** main slider ****************************/
.main-view .main-view-text img{
    width: 13vw;
  }

/*************************** main slider ****************************/

.cont11 .cont11-box .table-ptn01 tr th,.cont11 .cont11-box .table-ptn01 tr td {
    display: block;
  }
  .cont11 .cont11-box .table-ptn01 tr th {
    width: 100%;
  }
  .table-ptn02-wrap {
    overflow-x: scroll;
  }
  .cont11 .cont11-box .table-ptn02 {
    width: 800px;
  }

  .cont14 .cont14-row-wrap .cont14-row{
    flex-direction: column !important;
  }
  .cont14 .cont14-row-wrap .cont14-row .cont14-row-item{
    width: 100%;
  }
/*---------------------cont/---------------------*/
.cont01 .cont01_ttl{
    width: 100%;
    text-align: center;
}
.cont01 .cont01_ttl .btn_main{
    display: none;
}

.cont01 .btn_wap{
    width: 100%;
}

.cont01 .btn_wap .btn_main{
    display: inline-block !important;
}

.cont02 {
  margin-left: auto;
  margin-right: auto;
}

.cont02 > img{
  width: 100%;
  left: 0;
  height: 300px;
  object-fit: cover;
}

.cont02 .cont02_txt_box{
  width: 100%;
  margin-top: 10px;
  right: 0;
}

.cont02 .cont02_txt_box .bg_inner{
  padding: 40px 0;
}

.con03 .container{
    width: 100%;
}

.cont04{
    padding: 60px 0;
}
.cont06 .cont06-row {
    flex-direction: column;
    margin-bottom: 40px;
}
.cont06 .cont06-row img {
    margin-bottom: 30px;
}
.cont06 .cont06-row img,.cont06 .cont06-row p {
    width: 100%;
  }

.cont07 iframe{
    height: 200px;
}

.cont08 .cont08_box_txt02 i{
    font-size: 7vw;
}

.cont09 .cont09_box figure img{
    height: 140px;
    object-fit: cover;
}

.cont09 .cont09_box figure .material-icons-outlined {
    left: unset;
    right: 10%;
    top: 50%;
    transform: translate(0,-50%);
}

.cont12 .cont12-wrap .cont12-item {
   flex-direction: column;
   padding: 20px;
  }

.cont12.cont12-1 .cont12-wrap .cont12-item p:first-child {
    border-right: none;
    border-bottom: 1px solid #438368;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
.cont12 .cont12-wrap .cont12-item p:last-child {
    padding-left: 0;
  }
.cont12 .cont12-wrap .cont12-item img{
    width: 100%;
    margin: 30px 0;
   }


.anchor-link  {
    flex-direction: column;
  }
.anchor-link  a:nth-child(2) {
    margin:20px 0;
  }
.anchor-point {
    transform: translateY(-60px);
  }
  

/*---------------------/cont---------------------*/
