@charset "utf-8";
/* CSS Document */


/*PC*/
@media screen and (min-width: 1680px) {


.head { width: 100%; height: 250px; background: #EEE url(../images/company/head_img.png) center right no-repeat; background-size: contain; align-content: center;}
.head .box { width: 1680px; margin: auto; padding: 0 130px;}
.head .box h2 { font-size: 36px; font-weight: 600; margin-bottom: 5px;}
.head .box p { font-size: 18px;}


.cont01 {}
.cont01 .inner { width: 1680px; margin: 90px auto 90px;}
.cont01 .inner table { width: 1000px; border-collapse: collapse; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 15px; font-feature-settings: "palt"; letter-spacing: 0.05em;}
.cont01 .inner table th { padding: 40px 0; border-bottom: dotted 1px #333; width: 300px; font-weight: 400; text-align: left; padding-left: 100px;}
.cont01 .inner table td { padding: 40px 0; border-bottom: dotted 1px #333;}
.cont01 .inner table tr:nth-of-type(1) th { border-top: dotted 1px #333; width: 300px; font-weight: 500;}
.cont01 .inner table tr:nth-of-type(1) td { border-top: dotted 1px #333;}
.cont01 .inner table td ul {}
.cont01 .inner table td ul li { padding-left: 1em; position: relative;}
.cont01 .inner table td ul li::before { content: "･"; position: absolute; top: 0; left: 0;}


.cont02 {}
.cont02 .inner { width: 1680px; margin: 0 auto 90px;}
.cont02 .inner .txt { text-align: center; margin-bottom: 50px;}
.cont02 .inner .txt h3 { text-align: center; padding-bottom: 50px; margin-bottom: 20px; position: relative; font-size: 36px;}
.cont02 .inner .txt h3::after { content: attr(data-en); display: block; position: absolute; left: 0; right: 0; bottom: 10px; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 20px;}
.cont02 .inner .txt p { display: inline-block; text-align: left; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 15px;}
.cont02 .inner .map { width: 1560px; height: 500px; margin: auto;}
.cont02 .inner .map iframe { width: 100%; height: 100%; border: none;}


}


/*PC*/
@media print, screen and (min-width: 768px) and ( max-width: 1679px) {


.head { width: 100%; height: 14.8810vw; background: #EEE url(../images/company/head_img.png) center right no-repeat; background-size: contain; align-content: center;}
.head .box { width: 100%; margin: auto; padding: 0 7.7381vw;}
.head .box h2 { font-size: 2.1429vw; font-weight: 600; margin-bottom: 0.2976vw;}
.head .box p { font-size: 1.0714vw;}


.cont01 {}
.cont01 .inner { width: 100.0000vw; margin: 5.3571vw auto 5.3571vw;}
.cont01 .inner table { width: 59.5238vw; border-collapse: collapse; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 0.8929vw; font-feature-settings: "palt"; letter-spacing: 0.05em;}
.cont01 .inner table th { padding: 2.3810vw 0; border-bottom: dotted 1px #333; width: 17.8571vw; font-weight: 400; text-align: left; padding-left: 5.9524vw;}
.cont01 .inner table td { padding: 2.3810vw 0; border-bottom: dotted 1px #333;}
.cont01 .inner table tr:nth-of-type(1) th { border-top: dotted 1px #333; width: 17.8571vw; font-weight: 500;}
.cont01 .inner table tr:nth-of-type(1) td { border-top: dotted 1px #333;}
.cont01 .inner table td ul {}
.cont01 .inner table td ul li { padding-left: 1em; position: relative;}
.cont01 .inner table td ul li::before { content: "･"; position: absolute; top: 0; left: 0;}


.cont02 {}
.cont02 .inner { width: 100%; margin: 0 auto 5.3571vw;}
.cont02 .inner .txt { text-align: center; margin-bottom: 2.9762vw;}
.cont02 .inner .txt h3 { text-align: center; padding-bottom: 2.9762vw; margin-bottom: 1.1905vw; position: relative; font-size: 2.1429vw;}
.cont02 .inner .txt h3::after { content: attr(data-en); display: block; position: absolute; left: 0; right: 0; bottom: 0.5952vw; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 1.1905vw;}
.cont02 .inner .txt p { display: inline-block; text-align: left; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 0.8929vw;}
.cont02 .inner .map { width: 92.8571vw; height: 29.7619vw; margin: auto;}
.cont02 .inner .map iframe { width: 100%; height: 100%; border: none;}


}



/*sp*/
@media only screen and (max-width: 767px) {


.head { width: 100%; height: 29.3333vw; background: #EEE url(../images/company/head_img.png) center right no-repeat; background-size: contain; align-content: center;}
.head .box { margin: auto; padding: 0 6.6667vw;}
.head .box h2 { font-size: 5.3333vw; font-weight: 600; margin-bottom: 1.3333vw;}
.head .box p {}


.cont01 {}
.cont01 .inner { margin: 12.0000vw auto 12.0000vw; padding: 0 4.0000vw;}
.cont01 .inner table { border-collapse: collapse; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-feature-settings: "palt"; letter-spacing: 0.05em; width: 100%;}
.cont01 .inner table th { display: block; width: 100%; padding: 4.0000vw 2.6667vw 1.3333vw; border-bottom: dotted 1px #333; font-weight: 500; text-align: left;}
.cont01 .inner table td { display: block; width: 100%; padding: 1.3333vw 2.6667vw 4.0000vw;}
.cont01 .inner table td ul {}
.cont01 .inner table td ul li { padding-left: 1em; position: relative;}
.cont01 .inner table td ul li::before { content: "･"; position: absolute; top: 0; left: 0;}


.cont02 {}
.cont02 .inner { margin: 0 auto 12.0000vw;}
.cont02 .inner .txt { text-align: center; margin-bottom: 10.6667vw;}
.cont02 .inner .txt h3 { text-align: center; padding-bottom: 6.6667vw; margin-bottom: 5.3333vw; position: relative; font-size: 6.6667vw;}
.cont02 .inner .txt h3::after { content: attr(data-en); display: block; position: absolute; left: 0; right: 0; bottom: 0; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 3.2000vw;}
.cont02 .inner .txt p { display: inline-block; text-align: left; font-family: "Noto Serif JP", serif; font-weight: 400;}
.cont02 .inner .map { height: 66.6667vw; margin: auto;}
.cont02 .inner .map iframe { width: 100%; height: 100%; border: none;}


}




/*sp*/
@media only screen and (width: 750px) {


.head { width: 100%; height: 220px; background: #EEE url(../images/company/head_img.png) center right no-repeat; background-size: contain; align-content: center;}
.head .box { margin: auto; padding: 0 50px;}
.head .box h2 { font-size: 40px; font-weight: 600; margin-bottom: 10px;}
.head .box p {}


.cont01 {}
.cont01 .inner { margin: 90px auto 90px; padding: 0 30px;}
.cont01 .inner table { border-collapse: collapse; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-feature-settings: "palt"; letter-spacing: 0.05em; width: 100%;}
.cont01 .inner table th { display: block; width: 100%; padding: 30px 20px 10px; border-bottom: dotted 1px #333; font-weight: 500; text-align: left;}
.cont01 .inner table td { display: block; width: 100%; padding: 10px 20px 30px;}
.cont01 .inner table td ul {}
.cont01 .inner table td ul li { padding-left: 1em; position: relative;}
.cont01 .inner table td ul li::before { content: "･"; position: absolute; top: 0; left: 0;}


.cont02 {}
.cont02 .inner { margin: 0 auto 90px;}
.cont02 .inner .txt { text-align: center; margin-bottom: 80px;}
.cont02 .inner .txt h3 { text-align: center; padding-bottom: 50px; margin-bottom: 40px; position: relative; font-size: 50px;}
.cont02 .inner .txt h3::after { content: attr(data-en); display: block; position: absolute; left: 0; right: 0; bottom: 0; margin: auto; font-family: "Noto Serif JP", serif; font-weight: 400; font-size: 24px;}
.cont02 .inner .txt p { display: inline-block; text-align: left; font-family: "Noto Serif JP", serif; font-weight: 400;}
.cont02 .inner .map { height: 500px; margin: auto;}
.cont02 .inner .map iframe { width: 100%; height: 100%; border: none;}


}

