.main.page {
margin: clamp(2.5rem, 0.309rem + 8.99vw, 7.5rem) auto clamp(5rem, 4.091rem + 4.55vw, 7.5rem);
}
.recruit-over-flow {
overflow: hidden;
}
.h1-wrap {
max-width: 1312px;
margin: 0 auto;
padding: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) 16px clamp(1.25rem, 0.702rem + 2.25vw, 2.5rem);
}
h1 {
color: var(--white-color);
font-size: 32px;
font-weight: 600;
line-height: 1.2;
position: relative;
}
.h1-border {
position: relative;
display: inline-block;
margin-bottom: 12px;
}
.h1-border.left::before {
content: "";
position: absolute;
right: -18px;
bottom: -12px;
width: 100vw;
height: 4px;
}
.h1-border.right::before {
content: "";
position: absolute;
left: -200px;
bottom: -12px;
width: 100vw;
height: 4px;
}
.h1-border.white::before {
background: var(--white-color);
}
h2 {
font-size: 28px;
padding-bottom: 12px;
margin: 60px 0 24px;
position: relative;
}
h2::before {
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 160px;
height: 4px;
background: var(--sub-color);
}
h2.recruit-h2 .en {
display: block;
font-size: 14px;
color: var(--sub-color);
}
h3 {
color: var(--sub-color);
margin: 40px 0 16px;
font-size: 24px;
}
h4 {
margin: 32px 0 8px;
font-size: 20px;
}
h2.m-t0 {
margin-top: 0;
}
h2.ai-labo span {
display: block;
color: var(--sub-color);
font-size: 18px;
}
.page-wrap figure {
margin: 20px 0;
}
.page-wrap figure img {
width: auto;
max-width: 100%;
border-radius: 10px;
}
.flex-two-col {
display: grid;
width: 100%;
gap: 40px;
grid-template-columns: 1fr 1fr;
margin: 20px 0;
}
.flex-three-col {
display: grid;
width: 100%;
gap: 20px;
grid-template-columns: 1fr 1fr 1fr;
margin: 20px 0;
}
.left-white {
background: linear-gradient(to right, var(--white-color) 50%, transparent 50%);
overflow-x: hidden;
color: var(--main-color);
margin: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) auto clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem);
padding-right: 16px;
}
.left-white .one-container {
background: var(--white-color);
border-radius: 0 10px 10px 0;
max-width: 1296px;
}
.left-white .white-wrap {
padding: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) 0;
}
.right-white {
background: linear-gradient(to left, var(--white-color) 50%, transparent 50%);
overflow-x: hidden;
color: var(--main-color);
margin: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) auto clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem);
padding-left: 16px;
}
.right-white .one-container {
background: var(--white-color);
border-radius: 10px 0 0 10px;
max-width: 1296px;
}
.right-white .white-wrap {
padding: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) 0;
}
.access-case {
display: flex;
gap: 40px;
flex-wrap: wrap;
color: var(--main-color);
font-weight: 600;
}
.access-case h2 {
margin: 0 0 20px;
padding: 0;
}
.access-case h2::before {
content: "";
display: none;
}
.page-wrap .access-case ul{
margin: 0;
padding: 0;
list-style-type: none;
}
.page-wrap .access-case ul li{
margin: 0;
padding: 0;
}
.page-wrap .access-inner {
display: flex;
justify-content: space-between;
gap: 40px;
width: 100%;
}
.page-wrap .access-left {
display: flex;
flex-direction: column;
gap: 20px;
color: var(--white-color);
width: 50%;
}
.page-wrap .access-right {
width: 50%;
}
.page-wrap .access-info {
display: flex;
width: 100%;
line-height: 1.2;
font-weight: 600;
flex-wrap: wrap;
gap: 6px;
}
.page-wrap .access-info dt {
width: 80px;
font-weight: 600;
line-height: 1.2;
}
.page-wrap .access-info dd {
width: calc( 100% - 86px );
font-size: clamp(0.875rem, 0.688rem + 0.39vw, 1rem);
}
.page-wrap .access-info.tel dd {
display: flex;
gap: 12px;
}
.page-wrap .access-info.tel dd a {
color: var(--white-color);
font-weight: 600;
}
.table-wrap {
margin: 20px 0;
position: relative;
}
.table-access {
margin-top: 40px;
}
.table-wrap table,.table-access table {
border-collapse: collapse;
width: 100%;
}
.table-wrap table caption {
font-weight: 600;
margin-bottom: 4px;
}
.table-wrap table tr > * {
border: 2px solid var(--sub-color);
text-align: center;
vertical-align: middle;
padding: 12px 8px;
}
.table-wrap table thead tr th:not(:last-child) {
border-right: 2px solid var(--white-color);
}
.table-wrap table tr > th {
white-space: nowrap;
background: var(--sub-color);
color: var(--white-color);
text-align: center;
font-weight: 600;
}
.column-table table tr:not(:last-child) th,.table-voice table tr:not(:last-child) th {
border-bottom: 2px solid var(--white-color);
}
.table-wrap table tr > td {
color: var(--main-color);
text-align: center;
background: var(--white-color);
}
.table-wrap.job-table table tr > td {
text-align: left;
padding: 12px;
}
.job-table table tr td dl {
margin: 16px 0 0
}
.job-table table tr td > ul,.job .job-table table tr td > ol {
margin: 0;
padding: 0;
}
.job-table table tr td > ul > li > ul,.job .job-table table tr td > ol > li > ul {
list-style-type: circle;
}
.job-table table tr td > ul > li > ul li,.job .job-table table tr td > ol > li > ul li {
padding: 4px 0;
margin-left: 12px;
}
.table-wrap.fee-table .highlight {
color: #ff0606;
font-size: 24px;
font-weight: 600;
}
.table-access table {
color: var(--white-color);
font-size: 14px;
text-align: center;
font-weight: 600;
}
.table-access table tr > *:first-child {
text-align: left;
padding: 8px 0;
font-size: clamp(0.75rem, 0.375rem + 0.78vw, 1rem);
}
.table-access table tr th,.table-access table tr td {
padding: 8px;
}
.table-access .table-access-note {
font-size: 14px;
margin-top: 8px;
color: var(--white-color);
}
.page-wrap .word-sec table tr {
border-bottom: 1px solid var(--white-color);
}
.page-wrap .word-sec table tr > th,.page-wrap .word-sec table tr > td {
background: none;
border: none;
color: var(--white-color);
white-space: nowrap;
padding: 16px 8px;
font-size: 14px;
}
.page-wrap .word-sec table tr > td:last-child {
white-space: normal;
}
.page-wrap .access-right iframe {
border-radius: 10px;
width: 100%;
}

.page-wrap ul,.page-wrap ol {
border-radius: 10px;
background: var(--white-color);
padding: 8px 16px;
margin: 20px 0;
color: var(--main-color);
}
.page-wrap ol {
list-style-type: decimal;
}
.page-wrap ul {
list-style-type: disc;
}
.page-wrap .m-b0 {
margin-bottom: 0;
}
.page-wrap ul li::marker,.page-wrap ol li::marker {
color: var(--sub-color);
}
.page-wrap ul li,.page-wrap ol li {
font-weight: 600;
padding: 8px 0;
margin-left: 20px;
}
.page-wrap ul > li > ul,.page-wrap ul > li > ol,.page-wrap ol > li > ol,.page-wrap ol > li > ul {
margin: 0;
padding: 0;
}
.page-wrap ol dl dd ul {
margin: 12px 0;
padding: 0;
}
.page-wrap ol.arrow-order {
background: no-repeat;
padding: 0;
list-style: none;
display: grid;
gap: 60px;
margin-bottom: 60px;
}
.page-wrap ol.arrow-order > li {
background: var(--white-color);
margin: 0;
padding: clamp(2rem, 1.781rem + 0.9vw, 2.5rem) clamp(1rem, 0.89rem + 0.45vw, 1.25rem);
border-radius: 10px;
counter-increment: point-counter;
display: flex;
gap: clamp(0.75rem, 0.531rem + 0.9vw, 1.25rem);
align-items: center;
position: relative;
}
.page-wrap ol.arrow-order > li::before {
content: counter(point-counter);
font-family: "Merriweather", serif;
font-size: clamp(2.5rem, 2.171rem + 1.35vw, 3.25rem);
color: var(--sub-color);
}
.page-wrap ol.arrow-order li:not(:last-child)::after {
position: absolute;
bottom: -60px;
left: calc(50% - 20px);
display: block;
content: '';
width: 0;
height: 0;
border: 20px solid transparent;
border-top: 20px solid var(--white-color);
}
.page-wrap ol.arrow-order > li > div {
font-size: clamp(0.875rem, 0.82rem + 0.22vw, 1rem)
}
.page-wrap ol.arrow-order > li > div > *,.page-wrap ol.arrow-order > li dl,.page-wrap ol.arrow-order > li dl dd ul {
margin: 0;
}
.page-wrap dl {
margin-bottom: 20px;
}
.page-wrap dl dt {
color: var(--sub-color);
font-weight: 600;
font-size: 18px;
margin-bottom: 8px;
}
.page-wrap dl dd ul {
margin: 12px 0 0;
}
.pdf::after {
content: url("");
display: inline-block;
width: 24px;
height: 24px;
background-color: currentColor;
-webkit-mask: url("../img/common/icon-pdf.svg") no-repeat center;
-webkit-mask-size: contain;
mask: url("../img/common/icon-pdf.svg") no-repeat center;
mask-size: contain;
}
/*fee*/
.fee-nav {
max-width: 1312px;
margin: 0 auto;
padding: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) 16px 0;
display: flex;
gap: 20px;
flex-wrap: wrap;
}
.fee-nav li a {
display: flex;
padding: 16px 12px;
color: var(--main-color);
background: var(--white-color);
border-radius: 10px;
text-decoration: none;
font-size: 16px;
font-weight: 600;
gap: 12px;
align-items: center;
justify-content: center;
}
.fee-nav li a::after {
content: "";
margin-bottom: 4px;
width: 8px;
height: 8px;
border-right: 2px solid var(--sub-color);
border-bottom: 2px solid var(--sub-color);
transform: rotate(45deg);
}
.page-wrap ul.fee-pdf {
background: none;
display: flex;
list-style: none;
flex-wrap: wrap;
gap: 12px;
padding: 0;
}
.page-wrap ul.fee-pdf li {
margin: 0;
}
.page-wrap.fee figure img {
width: auto;
}
.page-wrap.fee figure img:first-child {
margin-bottom: 20px;
}
.safety-sec02.flex-three-col {
gap: clamp(0.75rem, -0.017rem + 3.15vw, 2.5rem);
}
.safety-sec02.flex-three-col > * {
border-radius: 10px;
}
.safety-sec03.flex-two-col img {
border-radius: 10px;
}
.qa-nav dt {
font-size: 18px;
font-weight: 600;
margin: 0 0 12px;
}
.qa-nav dt:last-of-type{
margin: 40px 0 12px;
}
.qa-nav dd ul {
max-width: 1000px;
width: 100%;
display: flex;
flex-wrap: wrap;
gap: 4%;
}
.qa-nav ul li{
width: 48%;
}
.qa-nav ul li a{
text-decoration: none;
padding: 6px 10px;
border-bottom: 1px solid var(--sub-color);
color: var(--main-color);
font-size: 14px;
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
}
.qa-nav ul li a::after {
content: "";
display: inline-block;
margin-bottom: 4px;
width: 8px;
height: 8px;
border-right: 2px solid var(--sub-color);
border-bottom: 2px solid var(--sub-color);
transform: rotate(45deg);
}
dl.qa {
margin-bottom: 0
}
dl.qa dt {
display: flex;
align-items: center;
gap: 12px;
}
dl.qa dd:not(:last-child) {
margin-bottom: 40px;
}
dl.qa dd p:last-child  {
margin-bottom: 0;
}
dl.qa dt::before {
content: "Q";
font-family: "Merriweather", serif;
font-size: 32px;
}
.word-toc {
max-width: 1312px;
margin: 20px auto 0;
padding: 0 16px;
width: 100%;
display: flex;
justify-content: center;
flex-wrap: wrap;
row-gap: 12px;
column-gap: clamp(1.25rem, 0.921rem + 1.35vw, 2rem);
}
.word-toc li a {
text-decoration: none;
color: var(--white-color);
font-size: clamp(1.125rem, 0.961rem + 0.67vw, 1.5rem);
font-weight: 600;
}
.word-wrap section:first-child h2 {
margin-top: 40px;
}
.contact.form {
max-width: 800px;
}
.form dl {
display: flex;
flex-wrap: wrap;
row-gap: 36px;
align-items: flex-start;
margin-bottom: 36px;
}
.form dl dt {
width: 30%;
color: var(--white-color);
display: flex;
align-items: flex-end;
gap: 4px;
font-size: 18px;
padding-top: 12px;
margin-bottom: 0;
}
.form dl dt span {
font-size: 12px;
color: var(--accent-color);
padding-left: 4px;
}
.form dl dd {
width: 70%;
max-width: 560px;
}
.confirm .form dl dd,.entry-confirm .form dl dd {
padding-top: 12px;
}
.form dl dd.address {
display: flex;
flex-direction: column;
gap: 12px;
}
.form dl dd select {
padding: 12px 8px;
border-radius: 10px;
color: var(--main-color);
font-weight: 600;
}
.form dl dd.select-sex {
display: flex;
gap: 20px:
}
.form dl dd.select-sex > span {
width: calc(50% - 10px);
background: var(--white-color);
border-radius: 10px;
color: var(--main-color);
}
.form dl dd.select-sex > span:hover {
opacity: 0.8;
}
.form dl dd.select-sex > span label {
font-weight: 600;
width: 100%;
display: block;
padding: 12px 8px;
}
.form dl dd.select-sex > span label input {
accent-color: var(--main-color);
}
.form dl dd.age {
display: flex;
gap: 12px;
align-items: flex-end;
}
.form dl dd.age input {
width: auto;
}
.form dd.select-time .end-wrapper {
display: none;
}
.form dd .end-wrapper > span {
padding: 8px;
}
.form dl dd > input,.form dl dd.address > div > input,.form dl dd textarea {
padding: 12px 8px;
border-radius: 10px;
color: var(--main-color);
width: 100%;
}
.form dl dd.address div:first-child input {
width: 100px;
}
.form dl dd.address div:first-child span {
padding-right: 8px;
font-size: 20px;
}
.entry-confirm .form dl dd.address div:first-child span {
padding-right: 4px;
font-size: 16px;
}
.notes {
background: var(--sub-color);
border-radius: 10px;
padding: 20px;
}
.notes p:last-child {
margin-bottom: 0;
}
.form-button {
margin-top: 36px;
width: 100%;
}
.confirm .form-button,.entry-confirm .form-button {
display: flex;
gap: 32px;
}
.form-button input {
width: 100%;
padding: 20px 4px;
text-align: center;
border: 10px;
color: var(--white-color);
font-weight: 600;
background: var(--accent-color);
border-radius: 10px;
}
.confirm .form-button input:first-child,.entry-confirm .form-button input:first-child  {
color: var(--main-color);
font-weight: 600;
background: var(--white-color);
}
.form-button input:hover {
opacity: 0.9;
}
.thanks .tel-button a,.entry-thanks .tel-button a {
display: flex;
gap: 12px;
padding: 20px 0;
margin-top: 40px;
max-width: 520px;
background: var(--white-color);
color: var(--main-color);
border-radius: 10px;
font-size: 24px;
font-weight: 600;
width: 100%;
align-items: center;
justify-content: center;
text-decoration: none;
}
.thanks .tel-button a svg,.entry-thanks .tel-button a svg {
width: 32px;
height: 32px;
color: var(--sub-color);
}
.page-wrap .recommend-link ul {
background: none;
display: flex;
flex-wrap: wrap;
gap: 2%;
list-style-type: none;
margin: 0;
padding: 0;
}
.page-wrap .recommend-link > dt {
padding-bottom: 12px;
margin: 60px 0 24px;
position: relative;
font-size: 28px;
color: var(--white-color);
}
.page-wrap .recommend-link > dt::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 160px;
height: 4px;    background: var(--sub-color);
}
.page-wrap .recommend-link ul {
background: none;
display: flex;
flex-wrap: wrap;
list-style-type: none;
margin: 0;
padding: 0;
column-gap:2%;
row-gap: 18px;
}
.page-wrap .recommend-link ul li {
width: calc(50% - 1%);
margin: 0;
display: flex;
flex-direction: row;
align-items: stretch;
padding: 0;
}
.page-wrap .recommend-link ul li a {
display: flex;
align-items: center;
padding: 12px 16px;
background: var(--white-color);
border-radius: 10px;
text-decoration: none;
position: relative;
width: 100%;
padding-right: 12px;
}
.page-wrap .recommend-link ul li a dl {
margin-bottom: 0;
padding-right: 12px;
}
.page-wrap .recommend-link ul li a dl dt {
margin-bottom: 0;
}
.page-wrap .recommend-link ul li a dl dd {
color: var(--main-color);
}
.page-wrap .recommend-link ul li a::after {
content: "";
position: absolute;
top: calc(50% - 6px);
right: 16px;
transform: rotate(45deg);
width: 12px;
height: 12px;
border-right: 2px solid var(--sub-color);
border-top: 2px solid var(--sub-color);
}
/*about facilities*/
.page-wrap .facilities-list {
background: none;
list-style: none;
display: flex;
gap: 32px;
padding: 0;
margin: 0;
flex-wrap: wrap;
}
.page-wrap .facilities-list li {
max-width: calc(50% - 16px);
margin: 0;
padding: 0;
width: 340px;
}
.page-wrap .facilities-list li figure {
margin: 0;
}
.page-wrap .facilities-list li figure img {
border-radius: 10px;
}
.page-wrap .facilities-list li figure figcaption {
color: var(--white-color);
text-align: center;
font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem);
padding-top: 4px;
}

/*about intro*/
.intro-prof {
display: flex;
background: var(--white-color);
padding: 20px;
border-radius: 10px;
gap: 20px;
margin-bottom: 32px;

}
.intro-prof figure {
margin: 0;
max-width: 280px;
min-width: 180px;
width: 100%;
}
.intro-prof figure img {
border-radius: 10px;
width: 100%;
object-fit: cover;
}
.intro-prof dl {
margin: 0;
}
.intro-prof dl dt {
font-size: clamp(1rem, 0.813rem + 0.39vw, 1.125rem);
}
.intro-prof dl dd {
font-size: clamp(0.875rem, 0.688rem + 0.39vw, 1rem);
}
.intro-prof dl dd ul {
margin: 0;
padding: 0;
list-style: none;
}
.intro-prof dl dd ul li {
padding: 0;
margin: 0;
}
.intro-prof dl dd ul li:not(:last-child) {
margin: 0 0 12px;
}
/*about staff*/
.page-wrap .staff-sec {
position: relative;
background: var(--white-color);
border-radius: 0 10px 10px 0;
padding: 20px 20px 20px 0;
margin-bottom: 40px;
}
.page-wrap .staff-sec::before {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: -100vw;
right: 100%;
background: var(--white-color);
z-index: -1; 
}
.page-wrap .staff-sec > dt {
display: flex;
align-items: flex-end;
border-bottom: solid 2px var(--sub-color);
gap: 20px;
padding-bottom: 12px;
color: var(--main-color);
font-size: 28px;
line-height: 1.4;
margin-bottom: 20px;
}
.page-wrap .staff-sec > dt > span:nth-child(2) {
display: flex;
flex-direction: column;
font-size: 24px;
}
.page-wrap .staff-sec > dt > span:nth-child(2) span {
color: var(--sub-color);
font-size: 16px;
}
.page-wrap .staff-sec > dd {
display: flex;
gap:20px;
}
.page-wrap .staff-sec > dd figure {
margin: 0;
width: 28%;
}
.page-wrap .staff-sec > dd figure img {
border-radius: 10px;
}
.page-wrap .staff-sec > dd dl {
border-radius: 10px;
width: calc(72% - 20px);
margin-bottom: 0;
}
.page-wrap .staff-sec > dd dl dt {
font-size: clamp(1rem, 0.813rem + 0.39vw, 1.125rem);
}
.page-wrap .staff-sec > dd dl dt:not(:first-child) {
margin-top: 20px;
}
.page-wrap .staff-sec > dd dl dd {
font-size: clamp(0.875rem, 0.688rem + 0.39vw, 1rem);
}
.page-wrap .staff-sec > dd dl dd ul {
margin: 0;
padding: 0;
list-style: none;
}
.page-wrap .staff-sec > dd dl dd ul li {
margin: 0 0 8px 0;
padding: 0;
}
.page-wrap .staff-sec > dd dl dd ul li:last-child {
margin: 0;
}

.page-wrap.gairai table tr > *:first-child {
white-space: nowrap;
}
/*gairai for-men*/
.page-wrap.for-men ul li {
font-weight: normal;
}
/*gairai kids*/
.page-wrap.kids figure img {
width: auto;
max-width:100%;
border-radius: 10px;
}
/*gairai frst*/
.first figure img {
border-radius: 10px;
}
.first .message {
display: flex;
align-items: center;
gap: 20px;
flex-direction: row-reverse;
background: var(--white-color);
color: var(--main-color);
padding: clamp(1rem, 0.556rem + 0.93vw, 1.25rem);
border-radius: 10px;
font-weight: 600;	
}
.first .message figure {
margin: 0;
width: 36%;	
}
.first .message > div {
width: calc(64% - 20px);
}
.first .message > div p:last-child {
margin-bottom: 0;
}
.first .seminar {
background: var(--white-color);
padding: clamp(1rem, 0.556rem + 0.93vw, 1.25rem);
border-radius: 10px;
color: var(--main-color);
font-weight: 600;
}
.first .seminar > dd > div {
display: flex;
gap: 20px;
}
.first .seminar > dt {
margin-bottom: 20px;
}
.first .seminar > dd > div figure {
margin: 0;
width: 36%;
}
.first .seminar > dd > div > div {
width: calc(64% - 20px);
}
.first .seminar .button01 a {
color: var(--white-color);
text-decoration: none;
margin: 20px 0 0;
display: flex;
padding: 10px;
justify-content: center;
border-radius: 10px;
background: var(--sub-color);
width: 100%;
}
/*gairai treatment*/
.page-wrap.treatment dl dt {
margin: 40px 0 px;
font-size: clamp(1.25rem, 1.14rem + 0.45vw, 1.5rem);
}
.page-wrap.treatment dl dt a {
color: var(--sub-color);
text-decoration: none;
}
.page-wrap.treatment dl dt a::after {
content: "→";
padding-left: 8px;
}
.page-wrap.treatment ul {
background: no-repeat;
list-style-type: none;
display: flex;
padding: 0;
margin: 0;
gap:20px;
flex-wrap: wrap;
}
.page-wrap.treatment ul li  {
margin: 0;
padding: 0;
width: calc(50% - 10px);
}
.page-wrap.treatment ul li a  {
text-decoration: none;
background: var(--white-color);
color: var(--main-color);
padding: 20px 16px;
border-radius: 10px;
display: flex;
justify-content: center;
width: 100%;
}
/* /treatment/taigai-jusei/ */
.page-wrap.taigai-jusei ol li dl {
margin-bottom: 0;
}
.page-wrap.taigai-jusei ol li dl dt {
margin-bottom: 0;
}
.page-wrap.taigai-jusei ol li dl dd {
font-weight: normal;
}

.page-wrap.taigai-jusei ol li ul li {
padding: 4px 0;
}
.page-wrap.taigai-jusei ol.machine > li:not(:last-child) {
margin-bottom: 0 0 20px;
}
.page-wrap.taigai-jusei ol.machine li dl dt {
display: flex;
flex-direction: column;
color: var(--main-color);
}
.page-wrap.taigai-jusei ol.machine li dl dt span {
color: var(--sub-color);
}
.page-wrap.taigai-jusei ol.machine li dl dd dt {
margin-top: 20px;
}
.page-wrap.taigai-jusei ol.machine li dl dd ol {
margin: 0;
}
/* /treatment/tamago-dock/ */
.r-button a {
background: var(--sub-color);
text-decoration: none;
color: var(--white-color);
border-radius: 10px;
padding: 20px 60px;
font-weight: 600;
max-width: 100%;
text-align: center;
width: 300px;
display: block;
margin: auto;
}
/*sitemap*/
.sitemap dl dt {
padding-bottom: 12px;
margin: 60px 0 0;
position: relative;	
color: var(--sub-color);
font-size: 20px;
}
.sitemap dl dt::before {
content: "";
position: absolute;
bottom: 0;
width: 160px;
height: 4px;
background: var(--sub-color);
}
.sitemap dl dt a {
color: var(--white-color);
text-decoration: none;
}
.sitemap ul {
border-radius: none;
background: none;
padding: 8px 0;
font-size: 18px;
list-style-type: none;
}
.sitemap ul li {
margin-left: 0;
color: var(--sub-color);
}
.sitemap ul li.sub-link {
margin-left: 20px;
}
.sitemap ul li a {
color: var(--white-color);
}
.recruit .job-list {
display: grid;
padding: 40px 0 40px clamp(1.25rem, -1.082rem + 7.46vw, 2.5rem);
gap: 60px;
position: relative;
border-radius: 10px 0 0 10px;
}
.recruit .job-list::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: calc(50% - 50vw);
width: 50vw;
background: var(--white-color);
z-index: -1;
}
.recruit .job-list > li {
display: flex;
gap: 40px;
margin: 0;
padding: 0;
}
.recruit .job-list > li figure {
margin: 0;
width: 32%;
}
.recruit .job-list > li dl {
margin: 0;
width: calc(68% - 40px);
}
.recruit .job-list > li dl dt {
font-size: 24px;
}
.recruit .job-button {
display: flex;
width: 100%;
justify-content: space-between;
}
.recruit .job-button a {
width: calc(50% - 10px);
background: var(--main-color);
color: var(--white-color);
padding: clamp(0.75rem, 0.659rem + 0.45vw, 1rem) clamp(0.25rem, -0.023rem + 1.36vw, 1rem);
border-radius: 10px;
text-decoration: none;
text-align: center;
font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}
.recruit .benefits-list {
position: relative;
display: flex;
margin: 0;
padding: 40px clamp(1.25rem, -1.082rem + 7.46vw, 2.5rem) 40px 0;
gap: 40px;
list-style-type: none;
flex-wrap: wrap;
border-radius: 0 10px 10px 0;
}
.recruit .benefits-list::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: calc(50% - 50vw);
width: 50vw;
background: var(--white-color);
z-index: -1;
}
.recruit .benefits-list > li {
width: calc(50% - 20px);
margin: 0;
padding: 0;
}
.recruit .benefits-list > li figure {
margin: 0;
}
.recruit .benefits-list > li dl {
margin: 20px 0 0;
padding: 0 8px;
}
.recruit .benefits-list > li dl dt {
font-size: clamp(1.125rem, 0.794rem + 0.88vw, 1.5rem);
}
.recruit .benefits-list > li dl dd ul {
margin: 0;
padding: 0 16px;
}
.recruit .benefits-list > li dl dd ul li {
font-size: clamp(1rem, 0.89rem + 0.29vw, 1.125rem);
margin-bottom: 0;
padding: 4px 0;
}
.recruit .benefits-list > li dl dd ul .benefits-note {
font-size: 14px;
}
.recruit .benefits-list > li dl dd ul li ul {
list-style-type: none;
}
.recruit .benefits-list > li dl dd ul li ul li {
margin: 0;
}
.recruit .recruit-cta {
position: relative;
margin: clamp(2.5rem, 1.952rem + 2.25vw, 3.75rem) auto;
padding: clamp(2rem, 1.818rem + 0.91vw, 2.5rem) 0;
background: var(--white-color);
}
.recruit .recruit-cta::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
left: calc(50% - 50vw);
width: 100vw;
background: var(--white-color);
z-index: -1;
}
.recruit .recruit-cta dl {
margin-bottom: 0;
}
.recruit .recruit-cta dl dt {
font-size: 32px;
font-weight: 600;
line-height: 1.2;
text-align: center;
}
.recruit .recruit-cta dl dt span:first-child {
display: block;
font-size: 14px;
color: var(--sub-color);
}
.recruit .recruit-cta dl dt span:last-child {
position: relative;
display: inline-block;
margin-bottom: 12px;
color: var(--main-color);
}
.recruit .recruit-cta dl dt span:last-child::after {
content: "";
position: absolute;
left: -6px;
bottom: -12px;
width: calc(100% + 12px);
height: 4px;
background: var(--sub-color);
}
.recruit .recruit-cta dl dd ul {
display: flex;
justify-content: center;
padding: 0;
gap: 20px;
margin-top: clamp(1.25rem, 0.795rem + 2.27vw, 2.5rem);
list-style-type: none;
width: 100%;
flex-wrap: wrap;
}
.recruit .recruit-cta dl dd ul li {
margin: 0;
padding: 0;
width: 380px;
max-width: 100%;
}
.recruit .recruit-cta dl dd ul li a {
display: flex;
gap: 12px;
padding: clamp(1.25rem, 0.977rem + 1.36vw, 2rem) 0;
background: var(--main-color);
color: var(--white-color);
border-radius: 8px;
font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
font-weight: 600;
align-items: center;
justify-content: center;
text-decoration: none;
}
.recruit .recruit-cta dl dd ul li a svg {
width: clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
height: clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
color: var(--sub-color);
}
.recruit dl.qa dd .insta {
background: var(--white-color);
display: flex;
width: 180px;
max-width: 100%;
border-radius: 10px;
padding: 4px 8px;
}
.recruit .qa ul {
background: none;
padding: 0 0 0 8px;
margin: 12px 0;
color: var(--white-color);
}
.recruit .qa ul li::marker {
color: var(--white-color);
}
.job .entry-parts dt {
padding-bottom: 12px;
margin: 60px 0 24px;
position: relative;
font-size: clamp(1.375rem, 1.211rem + 0.67vw, 1.75rem);
color: var(--white-color);
}
.job .entry-parts dt::after {
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 160px;
height: 4px;
background: var(--sub-color);
}
.job .entry-parts dd ul {
background: none;
display: flex;
flex-wrap: wrap;
list-style-type: none;
margin: 0;
padding: 0;
column-gap: 2%;
row-gap: 18px;
}
.job .entry-parts dd ul li {
width: calc(50% - 1%);
margin: 0;
display: flex;
flex-direction: row;
align-items: stretch;
padding: 0;
}
.job .entry-parts dd ul li a {
display: flex;
align-items: center;
padding: clamp(1rem, 0.795rem + 1.02vw, 1.563rem) clamp(1rem, 0.909rem + 0.45vw, 1.25rem);
background: var(--white-color);
border-radius: 10px;
text-decoration: none;
position: relative;
width: 100%;
padding-right: 12px;
gap: 12px;
font-size: clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);
color: var(--main-color);
}
.job .entry-parts dd ul li a::after {
content: "";
position: absolute;
top: calc(50% - 6px);
right: 16px;
transform: rotate(45deg);
width: 12px;
height: 12px;
border-right: 2px solid var(--sub-color);
border-top: 2px solid var(--sub-color);
}
.job .entry-parts dd ul li a svg {
width: clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
height: clamp(1.5rem, 1.318rem + 0.91vw, 2rem);
color: var(--sub-color);
}
.job-nurse .interview img {
width: 240px;
}
.job-nurse .interview figcaption {
margin: 8px 0 0;
font-size: 18px;
}
@media (max-width: 1000px) {
.word-sec {
overflow: auto;
-webkit-overflow-scrolling: touch;
}
.page-wrap .word-sec table tr > *:first-child::before {
border-left: none;
border-right: none;
}
.page-wrap .word-sec table tr > th,.page-wrap .word-sec table tr > td {
text-align: left;
padding: 16px 12px;	
}
.page-wrap .word-sec table tr > td:last-child  {
white-space: nowrap;
}
}
@media (max-width: 880px) {
.page-wrap.safety .safety-sec03 {
display: flex;
flex-direction: column-reverse;
margin: 0;
gap: 20px;
}
.page-wrap.safety .safety-sec03 figure {
margin: 0;
}
.page-wrap.safety .safety-sec03 figure img {
margin: 0;
}
}
@media (max-width: 768px) {
h1 {
font-size: clamp(1.5rem, 0.984rem + 2.12vw, 2rem);
}
h2 {
font-size: clamp(1.375rem, 1.211rem + 0.67vw, 1.75rem);
}
h3 {
font-size: clamp(1.25rem, 1.14rem + 0.45vw, 1.5rem);
}
h2.ai-labo span {
font-size: 16px;
}
.two-container .page-wrap  {
width: 100%;
}
.page-wrap .access-inner {
flex-direction: column;
}
.page-wrap .access-left,.page-wrap .access-right {
width: 100%;
}
.page-wrap .access-info {
flex-direction: column;
}
.table-access {
margin-top: 0;
}
.table-wrap table tr > * {
padding: 8px;
}
.column-table table tr {
display: flex;
flex-direction: column;
}
.column-table table tr:not(:last-child) th,.table-wrap.table-voice table tr th {
border-bottom: none;
}
.table-wrap.table-voice table tr:first-child th {
border-right: 2px solid var(--white-color);
}
.table-wrap.table-voice table tr:last-child th {
border-left: 2px solid var(--white-color);
}
.table-voice tbody {
display: flex;
}
.table-voice tbody tr {
display: flex;
flex-direction: column;
width: 50%;
}
.table-gairai {
overflow: auto;
-webkit-overflow-scrolling: touch;
white-space: nowrap;
box-shadow: inset 2px 0 0 var(--sub-color);
}
.table-gairai table {
border-collapse: collapse; 
width: 100%;
}
.table-gairai table tr th {
background: var(--sub-color);
background-clip: padding-box;
border-top: none;
border-bottom: none;
}
.table-gairai table thead tr th:first-child {
border-left: none;
border-right: none;
}
.table-gairai table thead tr th:last-child {
border-left: 1px solid var(--white-color);
border-right: none;
}
.table-gairai table tr td {
border: 1px solid var(--sub-color);
background: var(--white-color);
background-clip: padding-box;
border-top: none;
}
.table-gairai table tr > *:first-child {
position: sticky;
left: 0;
z-index: 2;
border: none;
transform: translateZ(0);
isolation: isolate;
}
.table-gairai table tr > *:nth-child(2) {
border-left: none;
}
.table-gairai table tr > td:first-child {
background: var(--white-color);
box-shadow:
inset 1px 0 0 var(--sub-color),
inset -1px 0 0 var(--sub-color),
inset 0 -1px 0 var(--sub-color),
inset 0 -1px 0 var(--sub-color); 
}
.table-gairai table tr > th:first-child {
background: var(--sub-color);
box-shadow:
inset 1px 0 0 var(--sub-color),
inset -1px 0 0 var(--white-color),
inset 0 -1px 0 var(--sub-color),
inset 0 -1px 0 var(--sub-color);
}
.table-gairai td.red {
background: #f7d7d7;
background-clip: padding-box;
}
/*
.table-gairai table tr > *:first-child {
position: sticky;
top: 0;
left: 0;
background: none;
border-left: none;
border-right: none;
}
.table-gairai table tr > *:first-child::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: calc(100% + 2px);
height: 100%;
border-left: 2px solid var(--sub-color);
z-index: -1;
}
.table-gairai table tr > th:first-child::before {
background: var(--sub-color);
border-right: 2px solid var(--white-color);
}
.table-gairai table tr > td:first-child::before {
background: var(--white-color);
border-right: 2px solid var(--sub-color);
}
.page-wrap .word-sec table tr > *:first-child::before {
background: var(--main-color);
border-left: none;
border-right: none
}*/
.page-wrap .word-sec table tr > th:first-child::before {
background: var(--main-color);
}
.page-wrap .access-right iframe {
height: clamp(15.625rem, 2.728rem + 52.91vw, 28.125rem);
}
.fee-nav li {
width: calc(50% - 10px);
}
.fee-nav li a {
font-size: 14px;
}
.fee-figure img {
width: 100%;
}
.qa-nav ul li{
width: 100%;
}
.safety-sec03.flex-two-col {
grid-template-columns: 1fr;
gap: 0;
}
.form dl {
flex-direction: column;
row-gap: 8px;
}
.form dl dt {
width: 100%;
font-size: 16px;
padding-left: 4px;
}
.confirm .form dl dt,.entry-confirm .form dl dt {
padding-left: 0px;
}
.form dl dd {
padding-bottom: 0;
width: 100%;
}
.confirm .form dl dd,.entry-confirm .form dl dd {
padding-top: 0;
}
.confirm .form-button,.entry-confirm .form-button {
gap: 20px;
}
.form-button input {
font-size: 14px;
padding: 16px 4px;
}
.confirm .form-button input,.entry-confirm .form-button input {
width: calc(50% - 10px);
}
.thanks .tel-button a,.entry-thanks .tel-button a {
font-size: clamp(1.25rem, 0.992rem + 1.06vw, 1.5rem);
}
.page-wrap .recommend-link > dt {
font-size: clamp(1.5rem, 0.984rem + 2.12vw, 2rem);
}
.page-wrap .recommend-link ul li {
width: 100%;
}
/*about facilities*/
.page-wrap .facilities-list {
row-gap: 24px;
column-gap: 12px;
}
.page-wrap .facilities-list li {
width: calc(50% - 6px);
}
/*about intro*/
.intro-prof {
flex-wrap: wrap;
padding: 16px;
}
.intro-prof figure {
margin: auto;
max-width: 100%;
}
.intro-prof dl dt {
font-size: 18px;
}
.intro-prof dl dd {
font-size: 16px;
}
/*about staff*/
.page-wrap .staff-sec > dd {
flex-direction: column;
}
.page-wrap .staff-sec > dd figure {
width: 100%;
}
.page-wrap .staff-sec > dd figure img {
width: 100%;
max-width: 300px;
}
.page-wrap .staff-sec > dd dl {
width: 100%;
}
.page-wrap .staff-sec > dd dl dt {
font-size: 18px;
}
.page-wrap .staff-sec > dd dl dd {
font-size: 16px;
}
/*gairai first*/
.first .message {
flex-wrap: wrap;
}
.first .message > figure,.first .message > div {
width: 100%;
}
.first .message > figure img,.first .seminar > dd > div > figure img {
width: auto;
margin: auto;
}
.first .seminar > dd > div {
flex-wrap: wrap;
}
.first .seminar > dd > div > figure,.first .seminar > dd > div > div{
width: 100%;
}
/*/recruit/job-embryologist/*/
.job .entry-parts dd ul {
flex-wrap: wrap;
}
.job .entry-parts dd ul li {
width: 100%;
}
.recruit .job-list li {
display: grid;
grid-template-columns: 1fr;
grid-template-areas:
"dt"
"figure"
"dd";
gap: 16px;
}
.recruit .job-list li > figure {
grid-area: figure;
width: 100%;
}
.recruit .job-list li > dl {
display: contents;
width: 100%
} 
.recruit .job-list li > dl > dt {
grid-area: dt;
margin: 0;
}
.recruit .job-list li > dl > dd {
grid-area: dd;
margin: 0;
}
.recruit .recruit-cta dl dt {
font-size: clamp(1.5rem, 0.468rem + 4.23vw, 2.5rem);
}
.recruit .recruit-cta dl dt .en {
font-size: clamp(0.875rem, 0.23rem + 2.65vw, 1.5rem);
}
}
@media (max-width: 600px) {
.recruit .benefits-list > li {
width: 100%;
}
}
@media (max-width: 580px) {
.fee-nav {
gap: 16px;
}
.fee-nav li {
width: 100%;
}
.fee-nav li a {
padding: 12px 4px;
}
/*gairai treatment*/
.page-wrap.treatment ul li  {
width: 100%;
}
.page-wrap.treatment ul li a  {
padding: 16px 8px;
}
}
@media (max-width: 500px) {
.page-wrap .staff-sec > dd figure img {
margin: auto;
}
}