@charset "utf-8";


/*------------------------------------
共通
------------------------------------*/
img { image-rendering: -webkit-optimize-contrast; }

/*------------------------------------
めざすみち
------------------------------------*/
#lead_area {
    width: 100%;
    position: relative;
    padding: 50px 20px 85px;
}
.lead_txt_box {
    background-color: #fff;
    display: inline-block;
    position: absolute;
    top: 50%;     
    transform: translate(0, -50%);
    right: -4%;
    margin: auto;
    padding: 30px 30px;
    letter-spacing: 0.1em;
}
.lead_ttl {
    font-size: 2.6rem;
    font-weight: 900;
    letter-spacing: 0.15em;
    margin-bottom: 0.4em;
    line-height: 1;
}
.lead_txt_box p {
    line-height: 2.1em;
    letter-spacing: 0.1em;
}

@media screen and (max-width: 1240px) {
    .lead_txt_box {
        right: 0;
    }
}
@media screen and (max-width: 728px) {
    .bg_main {
        background: url("../img/bg_top.jpg") no-repeat top 18vw center;
        background-size: contain;
    }
     #lead_area {
        padding: 0 0 21vw;
    }
    .lead_txt_box {
        background-color: transparent;
        position: relative;
        top: 15vw;
        left: 0;
        right: 0;
        transform: translate(0, 0);
        margin: 0;
        padding: 0;
    }
    .lead_img {
        display: none;
    }
    .lead_ttl {
        font-size: 6vw;
        text-align: center;
        color: #fff;
        margin-bottom: 28vw;
    }
    .lead_txt_box p {
        width: 100%;
        padding: 1em 20px;
        font-size: 1.5rem;
        line-height: 1.7em;
        background-color: #fff;
    }
}

/*------------------------------------
メニュー
------------------------------------*/
#cp_link_list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#cp_link_list ul li {
    width: 365px;
    max-width: 31%;
    margin-bottom: 3em;
    text-align: center;
}
#cp_link_list ul li p {
    font-size: 2rem;
    margin-top: 0.5em;
}
#cp_link_list a .img_area {
    width: 100%;
    overflow: hidden;
    display: block;
    border-radius: 10px;
    box-shadow: 0 3px 20px 0 #dcdcdc;
    transition: all .3s;
}
#cp_link_list a:hover .img_area {
    box-shadow: 1px 1px 1px 1px #dcdcdc;
}

@media screen and (max-width: 728px) {
    #cp_link_list ul li {
        max-width: 47%;
        margin-bottom: 1.5em;
    }
    #cp_link_list ul li p {
        font-size: 1.5rem;
        margin-top: 0.3em;
    }
    #cp_link_list a .img_area {
        border-radius: 5px;
        box-shadow: 0 4px 10px 0 #dcdcdc;
    }
}

/*------------------------------------
下部リンク
------------------------------------*/
#sec_link_area {
    padding: 70px 0 110px
}
#sec_link_area p {
    text-align: center;
    margin-bottom: 2.5em;
}

@media screen and (max-width: 728px) {
    #sec_link_area {
        padding: 4vw 0 75px;
    }
    #sec_link_area p {
        font-size: 1.4rem;
        margin-bottom: 1em;
    }
}


/*------------------------------------
企業理念
------------------------------------*/
#idea_cont {
    width: 100%;
    position: relative;
    padding: 40px 20px 120px;
}
.idea_img {
    width: 810px;
    max-width: 100%;
    margin: 70px auto 0;
}

@media screen and (max-width: 728px) {
    #idea_cont {
        padding: 3vw 20px 10vw;
    }
    .idea_img {
        margin: 6vw auto 0;
    }
}


/*------------------------------------
組織概要
------------------------------------*/
#orga_cont {
    width: 100%;
    position: relative;
    padding: 40px 20px 100px;
}
#orga_cont table{
    width: 100%;
    max-width: 100%;
    margin: 40px auto 0;
}
#orga_cont th, #orga_cont td {
    font-size: 2rem;
    letter-spacing: 0.1em;
    padding: 1em 1em;
}
#orga_cont th {
    width: 25%;
}
.google_map{
    width: 100%;
    height: 0;
    position: relative;
    padding-top: 42%;
    margin: 1em 0;
}
.google_map iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
a.map_link {
    color: #3d6029;
    text-decoration: underline;
}
a.map_link:hover {
    text-decoration: none;
}
.orga_img {
    margin: 1.5em auto;
}
@media screen and (max-width: 728px) {
    #orga_cont {
        padding: 3vw 20px 14vw;
    }
    #orga_cont table {
        margin: 25px auto 0;
    }
    #orga_cont th, #orga_cont td {
        display: block;
        width: 100%;
        font-size: 1.6rem;
        letter-spacing: 0.1em;
    }
    #orga_cont th {
        border-right: none;
        border-bottom: 1px solid #A6A6A6;
        padding: 0.5em 0.8em;
    }
    #orga_cont td {
        padding: 0.5em 0.8em 1em;
    }
    #orga_cont td:nth-child(n + 2) {
        border-left: none;
    }
    .orga_img {
        margin: 0.5em auto 1em;
    }
}


/*------------------------------------
アオレンのあゆみ
------------------------------------*/
#history_cont {
    width: 100%;
    position: relative;
    padding: 40px 20px 100px;
}
#history_cont .history_table{
    width: 100%;
    max-width: 100%;
    margin: 40px auto 0;
}
.history_table th, .history_table td {
    font-size: 2rem;
    letter-spacing: 0.1em;
}
.history_table th {
    width: 25%;
    background-color: #f4ecdc;
    padding: 1em 0.8em;
}
.history_table th span {
    font-size: 2em;
}
.history_table td {
    padding: 2.2em 1em 0.8em;
}

@media screen and (max-width: 728px) {
    #history_cont {
        padding: 3vw 20px 14vw;
    }
    #history_cont .history_table {
        margin: 25px auto 0;
    }
    .history_table th, .history_table td {
        display: block;
        width: 100%;
        font-size: 1.6rem;
        letter-spacing: 0.1em;
    }
    .history_table th {
        padding: 0.1em 0.8em 0.3em;
    }
    .history_table th span {
        font-size: 1.7em;
        font-weight: bold;
    }
    .history_table td {
        padding: 0.5em 0.8em 1em;
    }
}


/*------------------------------------
営業カレンダー
------------------------------------*/
#calendar_cont {
    width: 100%;
    position: relative;
    padding: 40px 20px 70px;
}
.calendar_img {
    width: 1240px;
    max-width: 100%;
    margin: 20px auto 0;
}

@media screen and (max-width: 728px) {
    #calendar_cont {
        padding: 3vw 20px 10vw;
    }
    .idea_img {
        margin: 6vw auto 0;
    }
}


/*------------------------------------
関連リンク
------------------------------------*/
#link_cont {
    width: 100%;
    position: relative;
    padding: 40px 20px 100px;
}
.link_cont_inner {
    width: 100%;
    max-width: 1000px;
    margin: 70px auto 0;
    font-size: 2.7rem;
}
.link_cont_inner li {
    margin-bottom: 60px;
}
.link_list_ttl {
    font-weight: bold;
}
.link_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.link_list div {
    margin-right: 1em;
}
.link_list div:last-child {
    margin-right: 0;
}
.link_list a {
    font-size: 1.6rem;
    color: #008bb4;
    text-decoration: underline;
}



@media screen and (max-width: 728px) {
    #link_cont {
        padding: 3vw 20px 11vw;
    }
    .link_cont_inner {
        width: 100%;
        max-width: 100%;
        margin: 10px auto 0;
    }
    .link_cont_inner li {
        margin-bottom: 9vw;
    }
    .link_cont_inner .list_3 li {
        text-align: center;
        padding: 0;
    }
    .link_cont_inner .list_3 li::after {
        display: none;
    }
    .link_list_ttl {
        font-size: 1.6rem;
        display: inline-block;
        position: relative;
        padding-left: 1em;
        margin-bottom: 1em;
    }
    .link_list_ttl::after {
        position: absolute;
        left: 0;
        top: 0.55em;
        content: "";
        width: 0.7em;
        height: 0.7em;
        background-color: #da4f48;
    }
    .link_list {
        width: 520px;
        max-width: 100%;
        display: block;
        margin: 0 auto;
    }
    .link_list div {
        /*margin: 0 0 13px;*/
        margin: 0 auto;
    }
    .link_list a {
        font-size: 1.5rem;
       /* display: block;
        color: #fff;
        text-decoration: none;
        background-color: #da4f48;
        padding: 0.5em 2.5em;
        border-radius: 20px;
        position: relative;*/
    }
   /* .link_list a::after {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 1.1em;
        width: 1em;
        height: 1em;
        content: "";
        background: url("../../common/img/ico_blank.png") no-repeat center center;
        background-size: contain;
        margin: auto;
    }*/
}