/* すべてのページに適用される - 設定 */
html {
    font-size:16px;
    font-family: sans-serif;
}
* {
    box-sizing: border-box;
}
body {
    margin: 0 0 0 0;
}
p, li, td {
    line-height: 1.7;
} 
a:link {
    color: #F07D34;
    text-decoration: none;
} 
a:visited {
    color: #F07D34;
    text-decoration: none;
}
a:hover {
    color: #F07D34;
    text-decoration: underline;
}  
a:active {
    color: #F07D34;
    text-decoration: underline;
} 
img {
    max-width: 100%;
}                                  
/* すべてのページに適用 - ヘッダー */
.header {
    text-align: center;
}
.lang ul {
    margin: 8px 0 0 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: center;
    gap: 10px;
    font-size: 0.9em;
}
.lang a:link {
    color: #253958;
}
.lang a:visited {
    color: #253958;
}
.lang a:hover {
    text-decoration: none;
}
.lang a:active {
    text-decoration: none;
}
.logo {
    width: 80px;
    height: 50px;
    margin: 0 auto 0 auto;
    padding: 30px 0 0 0;
}
.syamei{   
    font-size: 32px; 
    font: HGPゴシックE;
    
}
.nav ul {
    margin: 30px 0 0 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: center;
    gap: 50px;
}
.nav a:link {
    color: #15112C;
}
.nav a:visited {
    color: #15112C;
}
.nav a:hover {
    text-decoration: none;
}
.nav a:active {
    text-decoration: none;
}
/* すべてのページに適用 - 画像 */
.backg {
    text-align: center;
    color: #FFFFFF;
    padding: 188px 0 188px 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.backg.index {
    
    background-image: url(../image/topimg5.jpg);
    background-size: contain;
}
.backg.products {
    padding: 20px 0;
    background-color: #093652;
}
.backg.company {
    padding: 20px 0;
    background-color: #093652;
}
.backg.access {
    padding: 20px;
    background-color: #093652;
}

.backg.contact{
    padding: 20px;
    background-color: #093652;
}

/* すべてのページに適用 - メイン */
header {
    margin: 0 auto 0 auto;

}
main {
    margin: 40px auto 90px auto;
    max-width: 800px;
}
main h2 {
    margin: 60px 0 20px 0;
    border-bottom: 2px solid #093652;
    padding: 5px 0;
    color: #093652;
    font-size: 1.3rem;
}
main2 {
    max-width: 600px;
}
/* すべてのページに適用 - フッター */
.gotop {
    text-align: center;
}
.copyright {
    margin-top: 20px;
    margin-bottom: 0;
    padding-top: 75px;
    padding-bottom: 75px;
    background-color: #093652;
    color: #FFFFFF;
    text-align: center;
}

/* 個別のスタイル */

/* index.html */
.banner ul{
    margin: 30px 0 0 0;
    padding: 0;
    list-style-type: none;
    display: flex;
    justify-content: center;
    gap: 30px;
}
.banner img:hover {
    opacity: 0.6;
    transition: 0.2s;
}
.company-info {
    border-collapse: collapse;
}
.company-info th, .company-info td {
    border: 1px solid #C3C3C3;
    padding: 8px;
}
.company-info th {
    width: 180px;
    text-align: left;
    vertical-align: top;
}
.company-info2 {
    border-collapse: collapse;
    th{font-weight: normal;}
}
.company-info2 th, .company-info2 td {
    border: 1px solid #C3C3C3;
    padding: 8px;
}
.company-info2 th {
    width: 50px;
    text-align: left;
    vertical-align: top;
}
/* products.html */
.items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
}
/* モバイル対応 */
@media(max-width: 767px) {
    .nav ul {
        flex-wrap: wrap;
        gap: 20px;
    }
    main {
        padding: 0 4% 0 4%;
    }
    .items {
        grid-template-columns: 1fr 1fr;
    }
    .container {
        grid-template-columns: 1fr;
    }
}
@media(max-width: 767px) {
    .banner ul {
        flex-wrap: wrap;
        gap: 10px;
    }
    main {
        padding: 0 4% 0 4%;
    }
    .items {
        grid-template-columns: 1fr 1fr;
    }
}
/* Googl Mapと住所の横並び及びレスポンシブ化 */
xiframeWrapper {
    position: relative;
    width: 100%;
}
xp {
    width: 100%;
}
xiframeWrapper::before {
    content: "";
    display: block;
    padding-top: calc(400 / 600 * 100%);
}

xiframeWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
/* Google Mapを任意の大きさで表示させる */
.iframeWrapper iframe {
    box-sizing: content-box;
    width: 100%;
    aspect-ratio: 6/4;
    
}
.iframeWrapper {
    align-content: center;
}

