@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Cardo:700');


/* Base Setting
==========================================================*/

body { font-family: "ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体","YuGothic","游ゴシック","Yu Gothic","メイリオ",'Meiryo',"ＭＳ Ｐゴシック",Helvetica,Arial,sans-serif;
color: #3D5A5B; background: #F6EDE2; line-height: 1.8; font-size: 13px; -webkit-text-size-adjust: 100%; font-weight: 400; margin:0; padding: 0; letter-spacing: 0.05em; }

a       { text-decoration: none; color: #3D5A5B; outline:none; transition: .4s; }
a:hover { text-decoration: none; color: rgba(61, 90, 91, 0.7);}
img { -ms-interpolation-mode: bicubic; max-width:100%; height: auto; vertical-align: middle;}
:focus { outline: 0; }

.fn_Cardo { font-family: 'Cardo', serif; font-weight: 700;}


/* ------------------ */


/* main-layout
==========================================================*/

#wrapper { width: 100%;}
.wrap {}

.col {}
  .col-l{ float: left;}
  .col-r{ float: right;}

  .flex {
    display: -webkit-box; /*Android4.3*/
    display: -moz-box;    /*Firefox21*/
    display: -ms-flexbox; /*IE10*/
    display: -webkit-flex; /*PC-Safari,iOS8.4*/
    display: flex;
  }

  .flex-sb {
    -webkit-box-pack: justify; /*Android4.3*/
    -moz-box-pack: justify;    /*Firefox21*/
    -ms-flex-pack: justify;    /*IE10*/
    -webkit-justify-content: space-between; /*PC-Safari,iOS8.4*/
    justify-content: space-between;
  }
  .flex-wrap {
    -ms-flex-wrap: wrap; /*IE10*/
    -webkit-flex-wrap: wrap; /* Safari6.1以降 */
    flex-wrap: wrap;
  }



/* TOP
==========================================================*/

#TopPage { position: relative; width: 100%; height: -webkit-calc(100vh - 190px); height: -moz-calc(100vh - 190px); height: calc(100vh - 190px); min-height: 500px;}
#TopPage #TopPageInner { position: absolute; top: 20%; right: 0; left: 0; margin: auto; height: 520px;}

  #TopPage .main_logo_Box { text-align: center; margin-bottom: 160px;}
  #TopPage .main_logo_Box p { margin-top: 30px; font-size: 30px; line-height: 1.3;}

  #TopPage .link_Box { width: 100%; text-align: center;}
  #TopPage .link_Box ul { font-size: 0;}
  #TopPage .link_Box ul li { display: inline-block; font-size: 16px;}
  #TopPage .link_Box ul li:first-child { margin-left: 55px;}
  #TopPage .link_Box ul li:nth-child(2) { margin: 0 25px;}


@media screen and (max-height: 900px) {

  #TopPage #TopPageInner { top: 15%; height: 460px;}
  #TopPage .main_logo_Box { text-align: center; margin-bottom: 100px;}

}

@media screen and (max-height: 780px) {

  #TopPage #TopPageInner { top: 15%; height: 420px;}
  #TopPage .main_logo_Box {margin-bottom: 80px;}
  #TopPage .main_logo_Box img { width: 150px;}
  #TopPage .main_logo_Box p { font-size: 26px;}

}


/* footer
==========================================================*/

#footerContainer { width: 100%; margin: 40px 0 50px; overflow: hidden;}
.footerInner { width: 94%; max-width: 1600px; margin: 0 auto;}

.top-footer_box1 { max-width: 300px; width: 30%}
  .top-footer_box1 .footer_logo { width: 25%; max-width: 81px;}
  .top-footer_box1 .footer_logo_link { width: 65%; max-width: 193px; margin-top: 30px;}
  .top-footer_box1 .footer_logo_link ul li:first-child { margin-bottom: 15px;}

.top-footer_box2 { width: 65%; max-width: 800px; border-top: .6px solid rgba(61, 90, 91, 0.6); padding-top: 30px; margin-top: 30px; line-height: 40px;}
  .top-footer_box2 p.copyright { font-size: 13px; order: -1;}
  .top-footer_box2 ul { margin-right: 50px; width: 220px; font-size: 20px;}
  .top-footer_box2 ul li { margin-left: auto;}






/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 1060px) {

#TopPage .link_Box ul li img { height: 40px; width: auto;}

/* footer
==========================================================*/

.top-footer_box2 ul { margin-right: 0; width: 180px; font-size: 18px;}

}



/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 850px) {

#TopPage { height: -webkit-calc(100vh - 140px); height: -moz-calc(100vh - 140px); height: calc(100vh - 140px); min-height: 540px;}
#TopPage #TopPageInner { top: 20%; height: 420px; }
  #TopPage .main_logo_Box {margin-bottom: 100px;}
  #TopPage .main_logo_Box img { width: 150px;}
  #TopPage .main_logo_Box p { font-size: 26px;}

#TopPage .link_Box ul li img { height: 34px; width: auto;}


/* footer
==========================================================*/
#footerContainer { margin: 20px 0;}
.top-footer_box1 .footer_logo_link ul li:first-child { margin-bottom: 10px; }

.top-footer_box2 { margin-top: 40px; padding-top: 15px;}
  .top-footer_box2 p.copyright { font-size: 11px;}
  .top-footer_box2 ul { width: 160px; font-size: 16px;}

}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 768px) {

#TopPage { height: 100vh;}

  #TopPage .link_Box ul li { display: block; width: 90%; margin: 0 auto;}
  #TopPage .link_Box ul li:first-child { margin: 0 auto 5%;}
  #TopPage .link_Box ul li:nth-child(2) { display: none;}


/* footer
==========================================================*/
#footerContainer { margin-top: 0;}
.top-footer_box1 { display: none;}
.top-footer_box2 { width: 100%; margin-top: 0;}


  @media screen and (max-height: 800px) {

    #TopPage { min-height: 640px;}
    #TopPage #TopPageInner { top: 15%;}
    #TopPage .main_logo_Box { margin-bottom: 60px; }
  }


}


/* Responsive
-----------------------------------------------------------*/
@media screen and (max-width: 500px) {

  #TopPage .main_logo_Box { margin-bottom: 80px;}
  #TopPage .main_logo_Box img { width: 120px;}
  #TopPage .main_logo_Box p { font-size: 20px; line-height: 1.5; margin-top: 20px;}

  #TopPage .link_Box ul li img { height: 32px; width: auto;}
  #TopPage .link_Box ul li:first-child { margin-bottom: 10%;}

/* footer
==========================================================*/
.top-footer_box2 { display: block; text-align: center;}
.top-footer_box2 ul { width: 170px; margin: 0 auto; display: block;}

}