@charset "UTF-8";
@import url(aos.css);
@import url("https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap");
.inner, .MainImage, .Service #Details, .Service #handle { width: 960px; margin: 0 auto; }
@media (max-width: 959px) { .inner, .MainImage, .Service #Details, .Service #handle { width: 85%; } }

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

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

.MainImage { position: relative; margin: 160px auto 120px auto; }
@media (max-width: 959px) { .MainImage { position: static; margin: 18vw auto 20vw auto; } }
.MainImage img { position: absolute; top: 0; right: -30px; width: 580px; height: auto; }
@media (max-width: 959px) { .MainImage img { position: static; display: block; width: 100%; margin: 6.5vw auto; } }
@media (max-width: 959px) { .MainImage .PC { display: none; } }
.MainImage .Contents { position: relative; z-index: 10; padding: 240px 0 0 0; }
@media (max-width: 959px) { .MainImage .Contents { padding: 0 0 0 0; } }
.MainImage .Contents h1 { font-size: 41px; line-height: 100%; letter-spacing: 0.1em; font-family: "Sawarabi Mincho", serif; }
@media (max-width: 959px) { .MainImage .Contents h1 { font-size: 7vw; } }
.MainImage .Contents h1 i { display: block; margin-top: 1.2em; font-size: 0.55em; letter-spacing: 0.05em; font-family: "Sawarabi Mincho", serif; }
@media (max-width: 959px) { .MainImage .Contents h1 i { margin-top: 0.6em; } }
.MainImage .Contents > div { margin-left: 40px; }
@media (max-width: 959px) { .MainImage .Contents > div { margin-left: 0; } }
.MainImage .Contents h2 { margin: 2.35em 0 1.15em 0; font-size: 29px; line-height: 100%; line-height: 1.5em; font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; text-shadow: 2px 2px 2px #fff, -2px -2px 2px #fff, -2px 2px 2px #fff,  2px -2px 2px #fff, 2px 0 2px #fff, -2px  0 2px #fff, 0 2px 2px #fff,  0 -2px 2px #fff; }
@media (max-width: 959px) { .MainImage .Contents h2 { margin: 2.35em 0 2.2em 0; font-size: 5vw; line-height: 1.8em; letter-spacing: 0; text-shadow: none; } }
.MainImage .Contents p { font-size: 17px; line-height: 2.65em; font-family: "Noto Sans JP", sans-serif; }
@media (max-width: 959px) { .MainImage .Contents p { font-size: 3.5vw; line-height: 2.1em; } }

body { background: #fff; }

.MainImage-bg { overflow: hidden; border-radius: 0 0 150px 150px; background: #faf8f3; }
@media (max-width: 959px) { .MainImage-bg { border-radius: 0; } }

.MainImage { margin-bottom: 80px; }
@media (max-width: 959px) { .MainImage { margin-bottom: 15vw; } }
.MainImage .Contents { padding-top: 200px; }
@media (max-width: 959px) { .MainImage .Contents { padding-top: 0; } }
@media (max-width: 959px) { .MainImage .Contents h2 { margin: 2.35em 0 1em 0; } }

.Service #Details { margin: 140px auto 0 auto; }
@media (max-width: 959px) { .Service #Details { margin: 12vw auto 0 auto; } }
.Service #Details h2 { margin: 0 0 35px 40px; font-size: 40px; line-height: 100%; letter-spacing: 0.1em; font-family: "Sawarabi Mincho", serif; }
@media (max-width: 959px) { .Service #Details h2 { margin: 0 0 1.5em 0; font-size: 4.5vw; } }
.Service #Details h2 + p { margin: 0 0 60px 40px; font-size: 16px; font-family: "Noto Sans JP", sans-serif; }
@media (max-width: 959px) { .Service #Details h2 + p { margin: 0 0 1em 0; font-size: 3.5vw; letter-spacing: 0; } }
.Service #Details ul { padding: 60px 0; margin-top: 40px; border-radius: 40px; background: url(../img/b1.jpg); }
@media (max-width: 959px) { .Service #Details ul { padding: 4vw 6vw 8vw 6vw; margin-top: 13vw; border-radius: 5vw; } }
.Service #Details ul span { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
@media (max-width: 959px) { .Service #Details ul span { -webkit-flex-direction: column; flex-direction: column; } }
.Service #Details ul li { display: -webkit-flex; display: flex; -webkit-box-align: center; align-items: center; }
@media (max-width: 959px) { .Service #Details ul li { -webkit-flex-direction: column; flex-direction: column; } }
.Service #Details ul li:nth-child(1) { -webkit-justify-content: center; justify-content: center; width: 380px; border-right: 1px solid #555557; }
@media (max-width: 959px) { .Service #Details ul li:nth-child(1) { width: 100%; border-right: none; border-bottom: 1px solid #555557; } }
@media (max-width: 959px) { .Service #Details ul li:nth-child(1) div { display: -webkit-flex; display: flex; -webkit-box-direction: reverse; flex-direction: column-reverse; } }
.Service #Details ul li:nth-child(2) { flex: 1; padding-left: 110px; font-size: 16px; line-height: 2.2em; }
@media (max-width: 959px) { .Service #Details ul li:nth-child(2) { width: 100%; margin-top: 1.5em; padding-left: 0; font-size: 3.3vw; line-height: 2em; letter-spacing: 0; } }
.Service #Details ul h3 { margin-bottom: 1em; font-size: 16px; line-height: 100%; text-align: center; }
@media (max-width: 959px) { .Service #Details ul h3 { margin-top: 0.7em; margin-bottom: 1.7em; font-size: 3.5vw; } }
.Service #Details ul img { display: block; width: 90px; margin: 0 auto; background: #fff; border-radius: 50%; }
@media (max-width: 959px) { .Service #Details ul img { width: 13vw; } }
@media (max-width: 959px) { .Service #Details ul + ul li:nth-child(2) { text-align: center; } }
.Service #handle { padding-top: 100px; margin: 90px auto 210px auto; }
@media (max-width: 959px) { .Service #handle { padding-top: 10vw; margin: 10vw auto 10vw auto; } }
.Service #handle h2 { margin: 0 0 35px 40px; font-size: 40px; line-height: 100%; letter-spacing: 0.1em; font-family: "Sawarabi Mincho", serif; }
@media (max-width: 959px) { .Service #handle h2 { margin: 0 0 3em 0; font-size: 4.5vw; } }
.Service #handle ul { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; }
.Service #handle ul li { width: 44%; margin-top: 40px; }
@media (max-width: 959px) { .Service #handle ul li { width: 100%; margin-top: 0; margin-bottom: 15vw; } }
.Service #handle ul li:nth-child(3), .Service #handle ul li:nth-child(4) { margin-top: 60px; }
@media (max-width: 959px) { .Service #handle ul li:nth-child(3), .Service #handle ul li:nth-child(4) { margin-top: 0; } }
.Service #handle ul img { width: 100%; height: auto; }
@media (max-width: 959px) { .Service #handle ul img { display: block; width: 80%; margin: 0 auto; } }
.Service #handle ul h3 { margin-top: 1.4em; font-size: 25px; line-height: 100%; text-align: center; }
@media (max-width: 959px) { .Service #handle ul h3 { font-size: 4.2vw; } }
.Service #handle ul h3 i { margin-left: 1.4em; font-size: 0.8em; }
@media (max-width: 959px) { .Service #handle ul h3 i { font-size: 3.5vw; } }
.Service #handle ul p { margin-top: 1em; padding-left: 4em; font-size: 16px; line-height: 1.85em; font-family: "Noto Sans JP", sans-serif; }
@media (max-width: 959px) { .Service #handle ul p { padding: 0; font-size: 3.2vw; text-align: center; } }
