@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@300;400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700&display=swap");
.inner, #breadcrumb ul { width: 90%; max-width: 1280px; margin: 0 auto; }
@media (max-width: 959px) { .inner, #breadcrumb ul { width: 90%; } }

.inner-m { width: 90%; max-width: 1140px; margin: 0 auto; }
@media (max-width: 959px) { .inner-m { width: 90%; } }

.inner-s { width: 90%; max-width: 1045px; margin: 0 auto; }
@media (max-width: 959px) { .inner-s { width: 90%; } }

.inner-ss { width: 90%; max-width: 965px; margin: 0 auto; }
@media (max-width: 959px) { .inner-ss { width: 90%; } }

.MainImage { position: relative; }
.MainImage img { width: 100%; height: auto; }
.MainImage > div { position: absolute; left: 0; bottom: 15%; width: 100%; }
.MainImage h1 { font-size: 40px; font-weight: 500; line-height: 100%; text-shadow: 0 0 10px #fff; }
@media (max-width: 959px) { .MainImage h1 { font-size: 4vw; } }
.MainImage h1 i { display: block; margin-top: 0.5em; font-size: 20px; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
@media (max-width: 959px) { .MainImage h1 i { font-size: 3vw; } }

#breadcrumb { padding: 40px 0; background: #fff; }
@media (max-width: 959px) { #breadcrumb { padding: 5vw 0; } }
#breadcrumb ul { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; font-size: 14px; }
@media (max-width: 959px) { #breadcrumb ul { font-size: 3.5vw; } }
#breadcrumb li + li:before { content: ">"; margin: 0 1em; }
@media (max-width: 959px) { #breadcrumb li + li:before { margin: 0 0.5em; } }
#breadcrumb span { color: #5fbcb9; }
#breadcrumb a:link span, #breadcrumb a:visited span { color: #000; }
#breadcrumb a:hover { opacity: 0.6; }

.Msg { padding: 30px 0 130px 0; background: #f9f7f2; }
@media (max-width: 959px) { .Msg { padding: 10vw 0 40vw 0; } }
.Msg h2 { position: relative; z-index: 10; font-size: 30px; line-height: 1.7em; text-align: center; }
@media (max-width: 959px) { .Msg h2 { font-size: 4.5vw; line-height: 1.8em; } }
.Msg h2 span { color: #5fbcb9; }
.Msg h2 .Black { color: #000; }
@media (max-width: 959px) { .Msg h2 .Black { color: #5fbcb9; } }
.Msg p { position: relative; z-index: 10; width: 580px; margin: 4em auto 0 auto; font-size: 15px; line-height: 2.4em; }
@media (max-width: 959px) { .Msg p { width: 85%; margin: 2em auto 0 auto; font-size: 3.5vw; line-height: 2.2em; } }

h2.Title { color: #5fbcb9; font-size: 28px; line-height: 100%; text-align: center; }
@media (max-width: 959px) { h2.Title { font-size: 4.5vw; } }
h2.Title i { display: block; margin-top: 0.5em; color: #000; font-size: 18px; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
@media (max-width: 959px) { h2.Title i { font-size: 3.5vw; margin-top: 0.8em; } }

.Sub-Contact { padding: 100px 0 130px 0; background: url(../img/service/service_bg_pc.jpg) no-repeat top left/cover; }
@media (max-width: 959px) { .Sub-Contact { display: none; } }
.Sub-Contact h2 { margin-bottom: 1.5em; font-size: 26px; font-weight: 500; text-align: center; }
@media (max-width: 959px) { .Sub-Contact h2 { font-size: 4.5vw; margin-bottom: 1em; } }
.Sub-Contact h2 img { display: block; width: 200px; margin: 0 auto 0.5em auto; }
@media (max-width: 959px) { .Sub-Contact h2 img { width: 32vw; } }
.Sub-Contact h2 + p { font-size: 18px; line-height: 1.8em; text-align: center; }
.Sub-Contact .Btn { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: start; align-items: flex-start; margin-top: 50px; }
.Sub-Contact .Btn a.Tel { display: block; width: 305px; padding: 0.9em 0; color: #fff; font-size: 28px; font-weight: 300; line-height: 100%; text-align: center; border-radius: 100px; background: #5fbcb9; }
.Sub-Contact .Btn a.Tel i { display: block; margin-top: 0.6em; color: #fff; font-size: 20px; font-weight: 500; }
@media (max-width: 1280px) { .Sub-Contact .Btn a.Tel i { font-size: 18px; } }
.Sub-Contact .Btn a.Tel:hover { background: #ADDDCC; }
.Sub-Contact .Btn a.Mail { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-box-align: center; align-items: center; width: 305px; height: 120px; margin-left: 70px; color: #fff; font-size: 20px; font-weight: 500; line-height: 100%; text-align: center; border-radius: 100px; background: #ffa25a; }
@media (max-width: 1280px) { .Sub-Contact .Btn a.Mail { width: 300px; height: 110px; font-size: 20px; margin-left: 40px; } }
.Sub-Contact .Btn a.Mail:before { content: ""; display: block; width: 1.55em; height: 1.3em; margin-right: 0.8em; background: url(../img/service/icon04.svg) no-repeat top center/100% auto; }
.Sub-Contact .Btn a.Mail:hover { background: #ffc786; }

.Flow { padding: 100px 0 25px 0; background: #f8f3e8; }
@media (max-width: 959px) { .Flow { padding: 0; } }
.Flow .inner-ss { position: relative; }
@media (max-width: 959px) { .Flow .inner-ss { padding: 13vw 0 0 0; } }
.Flow .inner-ss:before { position: absolute; top: -50px; right: -30px; content: ""; display: block; width: 215px; height: 200px; background: url(../img/service/flow_pc.png) no-repeat top left/100% auto; }
@media (max-width: 959px) { .Flow .inner-ss:before { top: -9vw; right: auto; left: 10vw; width: 25vw; height: 200px; } }
.Flow ul { margin: 70px 0 0 0; }
@media (max-width: 959px) { .Flow ul { margin: 8vw 0 0 0; } }
.Flow ul li { position: relative; padding: 50px 100px 40px 100px; border-radius: 50px; background: #fff; }
@media (max-width: 959px) { .Flow ul li { padding: 4vw 6vw; border-radius: 3em; } }
.Flow ul li + li { margin-top: 80px; }
@media (max-width: 959px) { .Flow ul li + li { margin-top: 15vw; } }
.Flow ul li + li:before { position: absolute; top: -80px; left: 0; content: ""; display: block; width: 100%; height: 80px; background: url(../img/service/icon05.svg) no-repeat center center/7.5px auto; }
@media (max-width: 1280px) { .Flow ul li + li:before { top: -80px; height: 80px; background: url(../img/service/icon06.svg) no-repeat center center/7px auto; } }
@media (max-width: 959px) { .Flow ul li + li:before { top: -15vw; height: 15vw; background: url(../img/service/icon06.svg) no-repeat center center/2.5vw auto; } }
.Flow h3 { margin-bottom: 2em; font-size: 18px; line-height: 100%; }
@media (max-width: 959px) { .Flow h3 { margin-bottom: 1em; font-size: 4vw; text-align: center; } }
.Flow h3 span { color: #5fbcb9; font-weight: 700; }
.Flow p { font-size: 16px; line-height: 2.2em; }
@media (max-width: 1280px) { .Flow p { font-size: 18px; } }
@media (max-width: 959px) { .Flow p { font-size: 3.5vw; line-height: 2em; letter-spacing: 0; } }
