@charset "UTF-8";
/**************************************
							共 通 項 目
**************************************/
body { overflow-x: hidden; background-color: #EEE; }

.wrapper { width: 100%; max-width: 1920px; margin: auto; background-color: #FEFEFE; }

h2 { font-size: 2.2rem; font-weight: 700; position: relative; border-bottom: solid 2px #22B573; padding-left: 1.0rem; }
h2::before { position: absolute; bottom: 0; left: 0; width: 8px; height: 90%; background-color: #22B573; content: ""; display: block; }

h3 { font-size: 1.8rem; font-weight: 500; }
h3 span { font-size: 1.4rem; }

.supplement, .notice { font-size: 1.0rem; font-weight: 500; line-height: 1.6rem; text-align: center; }
.supplement span, .notice span { color: #FF0000; }

.notice { text-align: left; padding-left: 1.0rem; text-indent: -1.0rem; }

.contactForm { display: flex; flex-wrap: wrap; align-items: center; width: 65%; }
.contactForm .tell, .contactForm .formBtnS { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; width: 100%; position: relative; transition: .4s; }
.contactForm .tell img, .contactForm .formBtnS img { margin-right: 0.5rem; }
.contactForm .tell a, .contactForm .formBtnS a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; text-indent: -9999px; }
.contactForm .tell { margin-bottom: 0.25rem; }
.contactForm .tell img { width: 2.5rem; }
.contactForm .tell p { font-size: 1.6rem; font-weight: 900; font-family: 'Lato','Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif; text-align: center; line-height: 1.4rem; }
.contactForm .tell p span { font-size: 0.8rem; font-weight: 400; }
.contactForm .formBtnS { background-color: #22B573; padding: 0 2.0rem; height: 3.0rem; border-radius: 2.0rem; box-shadow: 2px 3px 0px #118266; }
.contactForm .formBtnS img { width: 1.5rem; }
.contactForm .formBtnS p { color: #FEFEFE; font-weight: 400; }
.contactForm .formBtnS:hover { transform: translate(2px, 3px); box-shadow: none; }
@media (min-width: 768px) { .contactForm { width: auto; }
  .contactForm .tell, .contactForm .formBtnS { width: auto; }
  .contactForm .tell { margin-right: 2.0rem; margin-bottom: 0; }
  .contactForm .tell img { width: 3.75rem; }
  .contactForm .tell p { font-size: 2.0rem; line-height: 1.8rem; }
  .contactForm .formBtnS { padding: 0 3.5rem; height: 4.0rem; border-radius: 2.0rem; }
  .contactForm .formBtnS img { width: 1.5rem; } }

hr { border: none; border-bottom: dashed 1px #AAA; }

/**************************************
						コ ン テ ン ツ
**************************************/
.header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; }
.header .drcnLogo { width: 8.0rem; }
.header .drcnLogo img { width: 100%; height: auto; }

.heroArea { font-size: 0; color: #FEFEFE; overflow: hidden; }
.heroArea h1 { font-size: 0; text-align: center; width: 100%; }
.heroArea h1 img { width: 100%; }
@media (min-width: 1200px) { .heroArea h1 img { height: 630px; object-fit: cover; } }

.globalNavi { background-color: #22B573; }
.globalNavi ul { display: flex; align-items: center; flex-wrap: wrap; }
.globalNavi ul li { display: flex; align-items: center; justify-content: center; width: 50%; font-size: 1.0rem; color: #FEFEFE; position: relative; line-height: 4.0rem; border-bottom: solid 1px #52D28C; transition: .4s; position: relative; }
.globalNavi ul li:nth-child(even)::before { position: absolute; top: 50%; left: -1px; width: 2px; height: 80%; content: ""; display: block; background-color: #52D28C; border-radius: 1px; transform: translateY(-50%); }
.globalNavi ul li a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; text-indent: -9999px; }
.globalNavi ul li:hover { background-color: #118266; }
@media (min-width: 768px) { .globalNavi ul li { width: 25%; }
  .globalNavi ul li::before { position: absolute; top: 50%; left: -1px; width: 2px; height: 80%; content: ""; display: block; background-color: #52D28C; border-radius: 1px; transform: translateY(-50%); }
  .globalNavi ul li:last-child::after { position: absolute; top: 50%; right: -1px; width: 2px; height: 80%; content: ""; display: block; background-color: #52D28C; border-radius: 1px; transform: translateY(-50%); } }

#sticky { border: solid 1px #DDD; background-color: #F6F6F6; padding: 1.0rem; }
#sticky li { width: 100%; font-size: 1.0rem; line-height: 2.6rem; text-align: center; background-color: #22B573; margin-bottom: 0.25rem; color: #FEFEFE; position: relative; transition: 0.4s; /*@include lg {&:nth-child(-n+3){display: none;}}*/ }
#sticky li:last-child { margin-bottom: 0; }
#sticky li a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; text-indent: -9999px; }
#sticky li:hover { background-color: #118266; }

.mainContent { font-size: 1.2rem; }
.mainContent .point { list-style-type: decimal; list-style-position: inside; padding: 0.5rem 0; }
.mainContent .point li { font-size: 1.2rem; padding-left: 1.2rem; text-indent: -1.2rem; line-height: 1.8rem; margin-bottom: 0.25rem; }
.mainContent .point li span { font-weight: 700; color: #FF0000; }
.mainContent .point li:last-child { margin-bottom: 0; }
.mainContent .textArea { font-size: 1.2rem; line-height: 1.8rem; padding: 0.5rem 0; }
.mainContent .textArea span { font-weight: 700; color: #FF0000; }
.mainContent .textArea a:hover { text-decoration: underline; }

.howto { display: flex; justify-content: center; flex-wrap: wrap; flex-direction: column; align-items: center; position: relative; }
.howto .iconHowto { background-color: #22B573; width: 100%; max-width: 10.0rem; border-radius: 1.0rem; transition: .4s; }
.howto p.textArea { font-weight: 700; transition: .4s; }
.howto:hover .iconHowto { opacity: 0.8; }
.howto:hover p.textArea { color: #22B573; }
.howto a { width: 100%; height: 100%; margin: 0; padding: 0; display: block; position: absolute; top: 0; left: 0; text-indent: -9999px; }
.howto a, .howto a:visited { color: #333; }

.souhu { width: 100%; text-align: center; padding: 0; margin: 2rem auto; }
.souhu > p { font-weight: 700; margin-bottom: 0.5rem; }
.souhu ul { padding: 0.75rem 2rem; border-left: double 7px #666; text-align: left; background-color: #EEE; color: #444; font-style: italic; font-weight: 500; box-shadow: 3px 3px 0px #D0D0D0; list-style-type: circle; }
.souhu ul li { font-size: 1.0rem; padding: 0.375rem 0; border-bottom: dashed 1px #666; }
.souhu ul li:last-child { border-bottom: none; }

.kiyaku { list-style-type: circle; list-style-position: inside; }
.kiyaku li { font-size: 1.0rem; font-weight: 400; line-height: 1.5rem; padding: 0.5rem 0; border-bottom: dashed 1px #AAA; padding-left: 1.5rem; text-indent: -1.5rem; margin-bottom: 0.5rem; }
.kiyaku li span { color: #FF0000; font-weight: 500; }

#mibunsyou ul .notice { font-size: 0.8rem; font-weight: 400; }

.contact { background: url(../img/image2.jpg) center/cover no-repeat; background-attachment: fixed; }
.contact h3 { font-size: 2.4rem; font-weight: 700; color: #FEFEFE; text-align: center; text-shadow: 3px 3px 5px #444; }
.contact .contactArea { background-color: #FEFEFE; padding: 1.0rem; }
.contact .contactArea .contactForm { border: solid 1px #22B573; padding: 2.0rem; width: 100%; align-items: stretch; }
.contact .contactArea .contactForm .tell, .contact .contactArea .contactForm .formBtnS { border: none; }
.contact .contactArea .contactForm h4 { width: 100%; margin: 0; padding: 0; position: relative; text-align: center; font-weight: 500; margin-bottom: 2.0rem; }
.contact .contactArea .contactForm h4::before { width: 100%; height: 2px; position: absolute; top: 50%; left: 0; transform: translateY(-50%); background-color: #000; border-radius: 1px; display: block; content: ""; }
.contact .contactArea .contactForm h4 span { background-color: #FEFEFE; padding: 0; z-index: +1; display: inline-block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 15.5rem; }
@media (min-width: 576px) { .contact .contactArea .contactForm h4::before { width: 95%; }
  .contact .contactArea .contactForm h4 span { padding: 0 1.0rem; width: auto; } }

/**************************************
							店 舗 情 報
**************************************/
#shop { background-color: #22B573; color: #FEFEFE; }

#shop .row { align-items: center; }

.shopinfo { text-align: center; }
.shopinfo .shopinfo-txt1 { font-family: 'Open Sans', sans-serif; font-size: 3.0rem; font-weight: 800; letter-spacing: -0.1rem; line-height: 1.0; }
.shopinfo .shopinfo-txt2 { font-size: 1.6rem; font-weight: 700; line-height: 2.4rem; }
.shopinfo p.shopelement { padding-top: 0.5rem; margin: 1.0rem auto 0 auto; border-top: 0.1rem solid #FEFEFE; font-size: 1.0rem; text-align: left; width: 80%; }
.shopinfo p.shopelement span { display: block; margin-bottom: 0.3rem; font-family: 'Open Sans', sans-serif; font-size: 1.4rem; font-weight: 800; letter-spacing: -0.1rem; }
@media (min-width: 992px) { .shopinfo { text-align: left; }
  .shopinfo p.shopelement { width: 100%; } }

.shopinfo a, .shopelement a { color: #FEFEFE; transition: color .3s ease-out; }

.shopinfo a:hover, .shopelement a:hover { color: #f6921e; }

.mapimg { text-align: center; }

.mapimg img { width: 100%; }

.copyright { color: #FEFEFE; width: 100%; font-size: 1.0rem; text-align: center; font-family: Georgia, "Times New Roman", Times, serif; background-color: #22B573; }
