/*
Theme Name:NANAIRO  共通CSS
*/

@charset "UTF-8";

/*
=================================================================*/

/* 
  Reset: margin, padding propaty
-----------------------------------------------------------------*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h4,h5,h6,pre,form,fieldset,input,p,blockquote {
	margin:0;padding:0; } 

/* 
  Reset: border propaty
-----------------------------------------------------------------*/
abbr,acronym,fieldset,img {
	border:0; } 

/*
  Reset: [table] selector
-----------------------------------------------------------------*/
table {
	 border-collapse:collapse; border-spacing:0; } 
 
table,th,td,h3 {
	margin:0;padding:0; } 

caption,th,td {
	text-align:left; } 

/*
  Reset: List selector
-----------------------------------------------------------------*/
ol,ul {
	list-style:none; }


/*
  フォントの基本設定
=================================================================*/
/*
  Reset: font-size, line-height propaty
-----------------------------------------------------------------*/
body {
	font-size:14px;
	line-height:1.8;
}
h1,h2,h3,h4,h5,h6 {
	font-size:14px;
	line-height:1.8;
}
div,p,li,dt,dd {
	font-size:14px;
	line-height:1.8;
}
table,caption,th,td {
	font-size:14px;
	line-height:1.8;
}

/* 
  Reset: font-family propaty
-----------------------------------------------------------------*/
body {
    font-family: fot-tsukumin-pr6n, sans-serif;
    font-style: normal;
    font-weight: 300;
    color: #4d4d4d;
    letter-spacing: 0.1em;
    padding-top: 140px;
}

/*
  画像
=================================================================*/
img{
	border:none;
	vertical-align:top;
	width: 100%;
	height: auto;
}

/*
  IE対策
=================================================================*/
* {
	zoom: 1;
}
ul,ol,li {
	zoom: normal;
}

/*
  main css
=================================================================*/
html{
	height:100%;
}
.container{
    position: relative;
	width: 1300px;
	margin: 0 auto;
}
a{
	text-decoration:none;
}
a img,a{
	-webkit-transition: 0.3s ease-in-out;
     -moz-transition: 0.3s ease-in-out;
     -o-transition: 0.3s ease-in-out;
     transition: 0.3s ease-in-out;
}
a:hover img ,a:hover{
     opacity: 0.8;
}

.sp{
	display: none;
}
/*
  #header
=================================================================*/
/*headerレイアウト*/
header{
    position: fixed;
    width: 100vw;
    height: 140px;
    background: #fff;
    top:0;
    left: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding: 80px 0 10px;
    box-sizing: border-box;
    z-index: 999;
}
h1{
    width: 25%;
    max-width: 334px;
    margin-left: 5%;
    padding-bottom: 5px;
}
#navi{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 3% 0 0;
    width: 62%;
    max-width: 1000px;
}
#navi li{
    text-align: center;
}
#navi li img{
    width: 40px;
    display: block;
    margin: 0 auto;
}
#navi li:nth-child(5) img{
    width: 51px;
}
#navi li a{
    color: #4d4d4d;
    font-size: 15px;
}
.header_link{
    position: absolute;
    top:0;
    right: 5%;
}
.header_link li{
    width: 213px;
    height: 42px;
    text-align: center;
}
.header_link li img{
    width: 24px;
    margin-right: 5px;
}
.header_link li a{
    width: 100%;
    height: 42px;
    background: #854b30;
    color: #ddd;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.drawer{
    display: none;
}
/*
  footer
=================================================================*/
footer{
    padding: 80px 0 20px;
}
footer dl{
    text-align: center;
    margin-bottom: 30px;
}
footer dl dt{
    width: 197px;
    margin: 0 auto 20px;
}
footer dl dd{
    font-family: "fot-tsukuardgothic-std", sans-serif;
    color: #ae8046;
    letter-spacing: normal;
}
footer dl dd+dd{
    font-size: 30px;
}
address{
    font-size: 10px;
    font-style: normal;
    text-align: center;
    font-family: "fot-tsukuardgothic-std", sans-serif;
}
/*
  contact_link
=================================================================*/
#contact_link{
    background: #c1b7a7;
    padding: 30px 0 30px;
    margin-top: 50px;
}
#contact_link dl{
    width: 1300px;
    margin: 0 auto;
    color: #fff;
    text-align: center;
}
#contact_link dl dt{
    font-size: 35px;
    margin-bottom: 10px;
}
#contact_link dl dd{
    font-size: 25px;
}
#contact_link dl dd a{
    background: #fff;
    background-size: 10px auto;
    display: block;
    width: 304px;
    height: 55px;
    line-height: 55px;
    color: #1a1a1a;
    border-radius: 30px;
    margin: 10px auto 0;
    font-size: 20px;
    font-weight: bold;
}
/*
  トップ・ページ共通部分
=================================================================*/
#strengths figure{
    width: 819px;
    margin: 40px auto;
}
#strengths ul{
    display: flex;
    justify-content: space-between;
}
#strengths ul li{
    width: 413px;
    text-align: center;
    font-size: 27px;
    border: 1.5px solid #ac8046;
    height: 110px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.2em;
}
#strengths p,#sec_op p{
    text-align: center;
    font-size: 22px;
    margin: 40px 0;
}
#reform p{
    text-align: center;
    font-size: 22px;
    margin: 20px 0 40px;
}

#reform ul{
    display: flex;
    width: 914.5px;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
}
#reform ul li{
    width: 205px;
    margin-bottom: 20px;
    background: #fff;
}

/*
  レスポンシブ
=========================================================================================================*/

@media screen and (max-width: 959px) {
    body{
        padding-top: 60px;
    }
    .pc{
        display: none;
    }
    .sp{
        display: block;
    }
    .container{
        width: 90%;
    }
    h1{
        max-width: 171px;
        margin-left: 5%;
        width: 30%;
    }
    #navi{
        display: none;
    }
    /*drawer*/
    .drawer{
        display: block;
    }
    .menu-trigger {
        transition: .3s;
        width: 60px;
        height: 60px;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9999;
    }
    .menu-trigger p{
        position: absolute;
        top: 28px;
    }
    .menu-trigger span {
        display: inline-block;
        box-sizing: border-box;
        position: absolute;
        top:20px;
        left: 25%;
        width: 50%;
        height: 2px;
        background-color: #ad8046;
        transition: all .5s;
    }
    .top_drawer .menu-trigger span {
      background-color: #ad8046;
    }
    .menu-trigger span:nth-of-type(2) {
      top: 30px;
    }
    .menu-trigger span:nth-of-type(3) {
      top: 40px;
    }
    .menu-trigger.active span {
        top:25px;
    }
    .menu-trigger.active span:nth-of-type(3) {
      top: 35px;
    }
    .menu-trigger.active span{
        background: #ad8046;
        height: 2px;
        width: 50%;
    }
    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-5px) rotate(45deg);
        transform: translateY(-5px) rotate(45deg);
    }
    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(5px) rotate(-45deg);
        transform: translateY(5px) rotate(-45deg);
    }
    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
        -webkit-animation: active-menu-bar02 .8s forwards;
      animation: active-menu-bar02 .8s forwards;
    }

    /*drawer中*/
    nav {
        width: 60%;
        height: 100%;
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9998;
        transform: translate3d(100%,0,0);
        transition: all .5s;
        padding: 8vh 0 0 20px;
        background: #fff;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box;
    }
    #drawer_navi li{
        display: flex;
        align-items: center;
        margin: 10px 0;
    }
    #drawer_navi li img{
        width: 30px;
        margin-right: 20px;
    }
    #drawer_navi li a{
        color: #666;
    }
    .drawer_link li{
        margin-bottom: 10px;
    }
    .drawer_link li img{
        width: 20px;
        margin-right: 10px;
    }
    .drawer_link li a{
        width: 90%;
        height: 42px;
        background: #854b30;
        color: #ddd;
        font-size: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    nav.open {
        transform: translate3d(0,0,0);
    }
    header{
        padding: 0 0 10px;
        height: 60px;
    }
    /*
      contact_link
    =================================================================*/
    #contact_link dl{
        width: 90%;
    }
    #contact_link dl dt{
        font-size: 25px;
        margin-bottom: 10px;
    }
    #contact_link dl dt span,#contact_link dl dd span{
        display: block;
    }
    #contact_link dl dd{
        font-size: 18px;
    }
    #contact_link dl dd a{
        font-size: 18px;
    }
    /*
      footer
    =================================================================*/
    footer{
        padding: 50px 0 90px;
    }
    footer dl dt{
        width: 30%;
    }
    footer dl dd a{
        color: #ae8046;
    }
    /*
      トップ・ページ共通部分
    =================================================================*/
    #strengths figure{
        width: 100%;
    }
    #strengths ul{
        display: block;
    }
    #strengths ul li{
        width: 80%;;
        font-size: 20px;
        height: 70px;
        margin: 0 auto 10px;
    }
    #strengths p,#reform p,#sec_op p{
        font-size: 14px;
    }
    #reform ul{
        width: 100%;
    }
    #reform ul li{
        width: 24%;
        margin-bottom: 20px;
    }
    #sp_footer{
        position: fixed;
        bottom: 0;
        width: 100vw;
        background: #fff;
    }
    #sp_footer ul{
        display: flex;
        justify-content: space-between;
    }
    #sp_footer li{
        width: 33%;
        height: 50px;
    }
    #sp_footer li a{
        background: #c1b7a7;
        color: #fff;
        display: block;
        width: 100%;
        text-align: center;
        height: 50px;
        line-height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 13px;
        letter-spacing: -0.05em;

    }
    #sp_footer li img{
        width: 20px;
        margin-right: 5px;
    }
}

/*
  SP
=========================================================================================================*/

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

}