@charset "utf-8";
/* 会社概要 */
.wrapper {
max-width: 100%;
}
main {
margin-bottom: 20px;
}
.pageLink {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
margin-top: 60px;
margin-bottom: 80px;
}
.pageLink li {
position: relative;
}
.pageLink li a {
font-size: 1.4rem;
font-weight: bold;
color: #111;
text-decoration: none;
padding: 0 25px;
}
.pageLink li:before {
font-size: 1.2rem;
position: absolute;
top: 50%;
content: "/";
display: block;
transform: translate(-50%, -50%);
color: #ccc;
}
.pageLink li a:hover {
text-decoration: underline;
color: #287B44;
}
.current:before {
display: none !important;
}
h3 {
font-family: 'Roboto', sans-serif;
font-size: 2.4rem;
font-weight: bold;
color: #277A44;
line-height: 100%;
margin-right: 15px;
}
.subJ {
font-size: 1.3rem;
line-height: 100%;
}
.titlebox {
display: flex;
justify-content: flex-start;
align-items: center;
flex-wrap: nowrap;
margin-bottom: 50px;
}
.imgBox {
max-width: 300px;
}
.ceoImg {
margin-bottom: 5px;
animation-name: fade;
animation-duration: 0.5s;
animation-delay: 0s;
animation-timing-function:ease-out;
}
@keyframes fade {
from {
    opacity: 0;
    transform: translateX(50px);
}
to {
    opacity: 1;
    transform: translateX(0);
}

}
.ceoImg img {
width: 100%;
}
.ceoName {
font-size: 1.8rem;
text-align: right;
font-family: "Hannari","source-han-serif-japanese";
}
.jobTitle {
font-size: 1.3rem;
}
.ceoTxt {
font-size: 1.45rem;
line-height: 200%;
display: block;
width: 65%;
}
.greetingBox {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: wrap;
margin-bottom: 100px;
}
h4 {
font-weight: 700;
font-size: 2.4rem;
line-height: 100%;
text-align: center;
letter-spacing: 0.2em;
color: #1F1F1F;
margin-bottom: 100px;
}
.creedTitle {
font-weight: 700;
font-size: 2.4rem;
line-height: 160%;
letter-spacing: 0.2em;
color: #1F1F1F;
}
.txt01 {
font-size: 1.5rem;
line-height: 220%;
margin-left: 50px;
}
.creedBox {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
margin-bottom: 100px;
}
.pTitle {
font-size: 1.5rem;
font-weight: bold;
letter-spacing: 0.2em;
line-height: 100%;
max-width: 180px;
width: 100%;
}
.txt02 {
font-size: 1.4rem;
line-height: 200%;
}
.pBox {
display: flex;
justify-content: flex-start;
align-items: center;
padding: 25px 10px 25px 35px;
border-bottom: solid 1px #ddd;
}
.bTop {
border-top: solid 1px #ddd;
}
.mb120 {
margin-bottom: 120px;
}
.chart {
max-width: 920px;
width: 100%;
margin-left: 20px;
margin-bottom: 100px;
}
.chart img {
width: 100%;
}
h5 {
font-size: 1.7rem;
line-height: 100%;
display: block;
margin-bottom: 20px;
font-weight: bold;
margin-left: 20px;
}
.txt03 {
font-size: 1.5rem;
line-height: 180%;
margin-bottom: 50px;
padding: 0 10px 0 20px;
}
.txt04 {
line-height: 180%;
display: block;
padding: 0px 20px 5px 0px;
}
.purpose {
padding: 0 25px;
margin-left: 20px;
margin-bottom: 40px;
}
.purpose li { 
padding: 5px 40px 5px 5px;
display:list-item;
list-style-type: decimal;
}
.locationArea {
width: 100%;
background-color: #F6F6F6;
padding: 100px 0 50px;
}
.locationArea_body {
max-width: 1120px;
width: 100%;
margin: 0 auto;
}
.box {
max-width: 980px;
margin: 0 auto;
width: 100%;
}
h6 {
font-size: 1.8rem;
font-weight: bold;
line-height: 100%;
margin-bottom: 15px;
}
.addressTxt {
line-height: 160%;
margin-left: 10px;
margin-bottom: 25px;
}
.locationImg {
max-width: 1120px;
width: 100%;
}
.locationImg img {
width: 100%;
}
.locationBox {
max-width: 1120px;
width: 100%;
z-index: -5;
}
.locationBox_inner {
max-width: 980px;
margin: -60px auto;
background-color: #fff;
border: solid 1px #eee;
padding-bottom: 50px;
margin-bottom: 70px;
z-index: 5;
position: relative;
}
.innerBox {
max-width: 900px;
margin: 0px auto;
padding-top: 40px;
}
.map {
position: relative;
max-width: 900px;
width: 100%;
padding-top: 43%; /* = height ÷ width × 100 */
border: solid 1px #ddd;
margin: 0px auto 20px;
}
.gMap {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
padding: 3px;
}
.accessTxt {
font-weight: bold;
margin-bottom: 10px;
}
.txt05 {
margin-left: 10px;
line-height: 160%;
}
.pt-80 {
padding-top: 80px;
}
.pb-80 {
padding-bottom: 80px;
}
.actionBox {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
margin-left: 20px;
margin-bottom: 15px;
padding-right: 20px;
width: 100%;
font-size: 1.5rem;
}
.actionBox dt {
max-width: 90px;
width: 100%;
}
.actionBox dd {
line-height: 200%;
margin-left: 10px;
}

/*　for iPad 縦　*/
@media screen and (min-width:768px) and ( max-width:979px) {
.pageLink li a {
font-size: 1.3rem;
font-weight: bold;
color: #111;
text-decoration: none;
padding: 0 20px;
}
.ceoTxt {
font-size: 1.3rem;
line-height: 200%;
display: block;
width: 55%;
}
.creedTitle {
margin-bottom: 30px;
text-align: center;
}
.txt01 {
font-size: 1.5rem;
line-height: 220%;
margin-left: 0px;
text-align: center;
}
.creedBox {
display: block;
margin-bottom: 100px;
}
.chart {
width: 100%;
margin-left: 0px;
margin-bottom: 100px;
}
.locationBox_inner {
width: 90%;
margin: -50px auto;
padding-bottom: 20px;
margin-bottom: 40px;
z-index: 5;
position: relative;
}
.map {
width: 90%;
}
.accessTxt {
font-size: 1.2rem;
margin-left: 30px;
margin-bottom: 6px;
}
.txt05 {
font-size: 1.2rem;
margin-left: 35px;
padding-right: 20px;
}
.box {
width: 95%;
}
.actionBox {
display: block;
margin-left: 20px;
margin-bottom: 15px;
width: 100%;
}
.actionBox dt {
margin-bottom: 5px;
}
.actionBox dd {
margin-left: 0px;
}
}


/* IE11にのみ適用したいスタイルシート */
@media screen and (-ms-high-contrast: none) {

.main_inner {
width: 980px;
margin: auto;
margin-bottom: 100px;
}
.imgBox {
width: 300px;
}
}

/*スマートフォン*/

@media all and (max-width : 767px ){
.wrapper {
max-width: 100%;
}
main {
width: 90%;
margin-bottom: 0px;
}
.pageLink {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
margin-top: 20px;
margin-bottom: 40px;
}
.pageLink li {
position: relative;
}
.pageLink li a {
font-size: 1.0rem;
padding: 0 15px;
}
.pageLink li:before {
font-size: 1.0rem;
}
.current:before {
position: absolute;
top: 50%;
content: "/";
display: block !important;
transform: translate(-50%, -50%);
color: #ccc;
}
h3 {
font-size: 1.6rem;
margin-right: 15px;
}
.subJ {
font-size: 1.1rem;
line-height: 100%;
}
.titlebox {
margin-bottom: 20px;
}
.imgBox {
max-width: 100%;
margin-bottom: 15px;
}
.ceoImg {
margin-bottom: 5px;
}
.ceoImg img {
width: 100%;
}
.ceoName {
font-size: 1.4rem;
text-align: right;
font-family: "Hannari","source-han-serif-japanese";
}
.jobTitle {
font-size: 1.1rem;
}
.ceoTxt {
font-size: 1.2rem;
line-height: 180%;
width: 100%;
margin-bottom: 10px;
}
.greetingBox {
display: flex;
justify-content: space-between;
align-items: flex-start;
flex-wrap: wrap;
flex-direction: column;
margin-bottom: 50px;
}
h4 {
font-size: 1.5rem;
margin-top: 50px;
margin-bottom: 100px;
}
.creedTitle {
font-size: 1.5rem;
margin-top: 50px;
margin-bottom: 25px;
text-align: center;
}
.txt01 {
font-size: 1.2rem;
line-height: 180%;
margin-left: 0px;
text-align: center;
}
.creedBox {
display: block;
justify-content: center;
align-items: center;
flex-wrap: wrap;
margin-bottom: 100px;
}
.pTitle {
font-size: 1.4rem;
margin-bottom: 5px;
max-width: 180px;
width: 100%;
}
.txt02 {
font-size: 1.2rem;
}
.pBox {
display: block;
padding: 20px 10px 15px 15px;
}
.mb120 {
margin-bottom: 80px;
}
.chart {
max-width: 920px;
margin-left: 0px;
margin-bottom: 80px;
}
h5 {
font-size: 1.4rem;
margin-bottom: 20px;
margin-left: 0px;
}
.txt03 {
font-size: 1.2rem;
line-height: 180%;
margin-bottom: 30px;
padding: 0 10px 0 0px;
}
.txt04 {
line-height: 180%;
display: block;
padding: 0px 20px 5px 0px;
}
.purpose {
padding: 0 0 0 20px;
margin-left: 0px;
margin-bottom: 40px;
font-size: 1.2rem;
}
.purpose li { 
padding: 5px 0px 5px 5px;
display:list-item;
list-style-type: decimal;
}
.locationArea {
width: 100%;
background-color: #F6F6F6;
padding: 50px 0 20px;
}
.locationArea_body {
max-width: 1120px;
width: 100%;
margin: 0 auto;
}
.box {
max-width: 980px;
margin: 0 auto;
width: 90%;
}
h6 {
font-size: 1.4rem;
margin-bottom: 10px;
}
.addressTxt {
font-size: 1.2rem;
margin-left: 5px;
margin-bottom: 20px;
}
.locationImg {
width: 100%;
}
.locationBox {
width: 100%;
z-index: -5;
}
.locationBox_inner {
width: 90%;
margin: -30px auto;
padding-bottom: 20px;
margin-bottom: 40px;
z-index: 5;
position: relative;
}
.innerBox {
max-width: 900px;
margin: 0px auto;
padding-top: 20px;
}
.map {
position: relative;
max-width: 900px;
width: 90%;
padding-top: 43%; /* = height ÷ width × 100 */
border: solid 1px #ddd;
margin: 0px auto 10px;
}
.gMap {
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
padding: 3px;
}
.accessTxt {
font-size: 1.1rem;
margin-left: 13px;
margin-bottom: 6px;
}
.txt05 {
font-size: 1.1rem;
margin-left: 20px;
padding-right: 15px;
}
.pt-80 {
padding-top: 50px;
}
.pb-80 {
padding-bottom: 50px;
}
.actionBox {
display: block;
margin-left: 0px;
margin-bottom: 15px;
width: 100%;
font-size: 1.2rem;
}
.actionBox dt {
max-width: 200px;
width: 100%;
font-weight: bold;
margin-bottom: 5px;
}
.actionBox dd {
line-height: 180%;
margin-left: 0px;
}

}