@charset "utf-8";
/*-----------------------------------------------------
Reset
----------------------------------------------------- */
html, body, div, span,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }

* { margin: 0; padding: 0; }
img { max-width: 100%; width: 100%; height: auto; vertical-align: top; image-rendering: -webkit-optimize-contrast; }

* { min-height: 0; min-width: 0; }

html { font-size: 62.5%; }
body { line-height: 1; margin: 0; padding: 0; height: 100%; font-family: 'Zen Maru Gothic', sans-serif; color: #1e1e1e; font-feature-settings: "palt"; letter-spacing: .15em; background: #faf4f1; }

a {	text-decoration: none; color: inherit; transition: 0.3s ease-in-out; }
@media (min-width: 1025px) {
	a[href*="tel:"] { pointer-events: none; cursor: default; text-decoration: none;}
}
p , div { text-align: justify; }
p { font-size: 1.5em; line-height: 25px; }
button { margin: 0; padding: 0; outline: 0; border: 0; border-radius: 0; color: inherit; vertical-align: middle; text-align: inherit;font: inherit; -webkit-appearance: none; appearance: none; }

/*----------------
common
-----------------*/
.container { max-width: 1200px; width: 90%; margin: 0 auto; box-sizing: border-box;}
.pc { display: block; }
.sp { display: none; }

span.js-marker { display: inline;　position: relative; background-image: linear-gradient(90deg, #fcd13e, #fcd13e); background-repeat: no-repeat; background-position: bottom left; background-size: 0 30%; transition: all 1s ease-in-out; font-weight: bold; }
span.js-marker.inview { background-size: 100% 30%; }

/*
@media (hover: hover) and (pointer: fine) {
	a:hover { opacity: .3; }
	header .logo a:hover { opacity: 1; }
	header ul li:hover::after { transform: scaleX(1); transform-origin: left top; }
	header ul li:hover > .dropdown { display: block; animation: fade .6s ease forwards; }
	header ul li dl dd:hover::after { transform: scaleX(1); transform-origin: left top; }
	footer .pagetop a:hover { opacity: 1; }
}
*/

/*----------------

common animation

-----------------*/

.fuwafuwa { animation: move-y 1s infinite alternate ease-in-out; }
@keyframes move-y {
  from { transform: translateY(0); }
  to { transform: translateY(20px); }
}

/*----------------
header
-----------------*/
header { position:fixed; width: 100%; z-index: 999; height: 80px; background: #fff; }
header .container { display: flex; justify-content: space-between; align-items: center; height: 80px; }
header h1 img { width: 457px; height: auto; }
header .tel a { pointer-events: none; font-size: 5em; font-weight: 700; color: #4777b2; }
header .tel a::before { content: ""; display: inline-block; width: 41px; height: 36px; background: url("../images/icon_tel_h.png")no-repeat center; background-size: 100% auto; margin-right: 5px; }

/*----------------
main
-----------------*/
#Kv { background: url("../images/kv_bg.png") no-repeat; background-size: auto; padding: 80px 0; min-height: 455px; display: flex; justify-content: center;}
#Kv picture { margin: 0 auto; }
#Kv picture.kv_catch { display: block; max-width: 1013px; width: 100%; margin-bottom: 25px; }
#Kv picture.kv_maincopy { display: block; }
#Kv .kv_wrap { display: flex; justify-content: center; align-items: center; flex-direction: column; }

#Onayami { position: relative; padding-bottom: 200px; background: linear-gradient(rgba(208,236,255, 0.8), rgba(208,236,255, 0.8)), url(../images/onayami_bg.png) repeat; background-size: 60%; }
#Onayami .container { padding-top: 200px; }
#Onayami .main_point { position: absolute; top: -100px; left: 50%; -webkit-transform: translateX(-50%); filter: drop-shadow(0 10px 25px rgba(101, 157, 182, 1)); max-width: 1200px; width: 100%; box-sizing: border-box; }
#Onayami h2 { position: relative; max-width: 1200px; width: 100%; box-sizing: border-box; font-size: 4.5em; font-weight: 700; text-align: center; line-height: 1.2em; margin-bottom: 60px; }
#Onayami h2::before { content: ''; display: inline-block; background: url("../images/check.png") no-repeat; background-size: contain; width: 52px; height: 38px; }
#Onayami h2 img.mam { position: absolute; left: 90px; top: -18px; max-width: 125px; width: 100%; height: auto; }
#Onayami h2 img.dad { position: absolute; right: 90px; top: -30px; max-width: 125px; width: 100%; height: auto; }
#Onayami .onayami_img { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; margin-bottom: 60px; }
#Onayami .onayami_img figure { text-align: center; width: calc(100% / 4); }
#Onayami .onayami_img figure:first-child { max-width: 288px;}
#Onayami .onayami_img figure:nth-child(2n) { max-width: 302px; }
#Onayami .onayami_img figure:nth-child(3n) { max-width: 288px; }
#Onayami .onayami_img figure:nth-child(4n) { max-width: 289px; }
#Onayami .onayami_img img { width: 90%; }
#Onayami p.onayami_txt { text-align: center; font-size: 2.8em; line-height: 1.5em; font-weight: 700; }

/*
.fadeUp { animation-name:fadeUpAnime; animation-duration:.8s; animation-delay:.6s; animation-fill-mode:forwards; opacity: 0; }
@keyframes fadeUpAnime{
  from { opacity: 0; }
  to { opacity: 1; }
}

.delay-time02{ animation-delay: 1s; }
.delay-time04{ animation-delay: 1.3s; }
.delay-time06{ animation-delay: 1.6s; }
*/

#Sindan { position: relative; }
#Sindan::before { content: ''; background: url("../images/arch.svg")no-repeat; background-size:cover; position: absolute; width: 100vw; padding: 300px 0 0; top: -100px; background-position: center; }
#Sindan .sindan_copy { position: relative; width: 100%; height:236px; background: #f29a9d; text-align: center; }
#Sindan .sindan_copy img { max-width: 800px; text-align: center; top: -30px; position: absolute; left: 0; right: 0; margin: auto; z-index: 1; }
#Sindan .sindan_copy::after { position: absolute; content: ''; display: block; background: url("../images/bg_down.svg") no-repeat; background-size: contain; width: 800px; height: 192px; left: 50%; -webkit-transform: translateX(-50%); top: 210px; z-index: -1; }
#Sindan .sindan_copy::before { content: ""; max-width: 1200px; width: 100%; height: 395px; background: url(../images/staff01.png) no-repeat right bottom; background-size: 250px auto; position: absolute; z-index: 1; left: 0; right: 0; margin: 0 auto; top: -159px; }

#Course { background: #faf4f1; }
#Course article { background: #fff; border-radius: 30px; padding: 80px 60px 50px; box-shadow: 20px 100px 60px -100px #d89e8f; }
#Course article:not(:last-of-type) { margin-bottom: 50px; }
#Course article h2 { margin-bottom: 45px; }
#Course article#Course01 h2 { margin-bottom: 45px; max-width: 750px; margin: 0 auto 45px; }
#Course .sitatenaosi { max-width: 1000px; margin: 0 auto 50px; }
#Course .remodeling { text-align: center; margin-top: 100px; padding-bottom: 120px; }
#Course .remodeling h2 { font-size: 8em; font-weight: 700; margin-bottom: 30px; }
#Course .remodeling h2 + p { font-size: 5.5em; font-weight: 700; text-align: center; margin-bottom: 60px; }
#Course .remodeling_type { display: flex; justify-content: center; align-items: center; gap: 20px; }
#Course .remodeling_type figure { max-width: 450px; width: 100%; }
#Course .remodeling_type figure.single { box-shadow: 0px 90px 50px -100px #249cd1; }
#Course .remodeling_type figure.w {box-shadow: 0px 90px 50px -100px #f7aabf; }
#Course .poyopoyo { animation: poyopoyo 2s ease-out infinite; opacity: 1; }
@keyframes poyopoyo {
  0%, 40%, 60%, 80% { transform: scale(1.0); }
  50%, 70% { transform: scale(0.95); }
}
#Course .poyopoyo2 { animation: poyopoyo2 2s ease-out infinite; opacity: 1; animation-delay: 1s; }
@keyframes poyopoyo2 {
  0%, 40%, 60%, 80% { transform: scale(1.0); }
  50%, 70% { transform: scale(0.95); }
}
#Course .flex { display: flex; justify-content: space-around; align-items: center; margin: 200px 0 120px; }
#Course .flex a { display: flex; align-items: center; justify-content: center; }
#Course .flex a:first-child { position: relative; background: url("../images/maruarai_bg.png") no-repeat; background-size: contain; width: 483px; height: 371px; }
#Course .flex a:last-child { position: relative; background: url("../images/reform_bg.png") no-repeat; background-size: contain; width: 450px; height: 371px;  }
#Course .flex a:first-child::after { position:absolute; content: ''; display: block; background: url("../images/arrow_maruarai.png") no-repeat; background-size: contain; width: 78px; height: 87px; bottom: -40px; }
#Course .flex a:last-child::after { position:absolute; content: ''; display: block; background: url("../images/arrow_reform.png") no-repeat; background-size: contain; width: 78px; height: 87px; bottom: -25px; }
#Course .flex a img { max-width: 248px; width: 100%; z-index: 120; }
#Course .flex a:first-of-type img { position: absolute; bottom: 100px; }
#Course .updown { animation-name:updown; animation-delay:0s; animation-duration: 3s; animation-timing-function: ease-in-out; animation-iteration-count: infinite; }
@keyframes updown {
  0% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
  100% { transform: translateY(0); }
}
#Course .updown2 { animation-name:updown2; animation-delay:0s; animation-duration: 3s; animation-timing-function: ease-in-out; animation-iteration-count: infinite; }
@keyframes updown2 {
  0% { transform: translateY(0); }
  50% { transform: translateY(20px); }
  100% { transform: translateY(0); }
}

#Course .fuwafuwa { animation: fuwafuwa 3s infinite ease-in-out .8s alternate; display: inline-block; transition: 1.5s ease-in-out; }
@keyframes fuwafuwa {
  0% { transform:translate(0, 0) rotate(0deg); }
  50% { transform:translate(0, 0) rotate(50deg); }
  100% { transform:translate(0, 0) rotate(0deg); }
}
#Course .fuwafuwa2 { animation: fuwafuwa2 3s infinite ease-in-out .8s alternate; display: inline-block; transition: 1.5s ease-in-out; }
@keyframes fuwafuwa2 {
  0% { transform:translate(0, 0) rotate(0deg); }
  50% { transform:translate(0, 0) rotate(-50deg); }
  100% { transform:translate(0, 0) rotate(0deg); }
}

#Course .wrapper { background: #faf4f1; padding: 50px; }
#Course .wrapper p { font-size: 4em; text-align: center; line-height: 1.8em; margin-bottom: 30px; font-weight: 700; }
#Course ol { display: flex; justify-content: space-between; flex-wrap: wrap; }
#Course ol li { font-size: 2em; line-height: 1.5em; max-width: 480px; width: 48%; position: relative; margin-bottom: 30px; letter-spacing: .03em; }
#Course ol li strong { font-size: 2.5rem; font-weight: 700; display: inline-block; margin-bottom: 15px; }
#Course ol li strong::before { content: ''; background-size: contain; width: 30px; height: 30px; display: inline-block; vertical-align: -5px; margin-right: 10px; } 
#Course ol li:first-child strong::before { content: ''; background: url("../images/no1.svg") no-repeat; background-size: contain; } 
#Course ol li:nth-child(2) strong::before { content: ''; background: url("../images/no2.svg") no-repeat; background-size: contain; } 
#Course ol li:nth-child(3) strong::before { content: ''; background: url("../images/no3.svg") no-repeat; background-size: contain; } 
#Course ol li:nth-child(4) strong::before { content: ''; background: url("../images/no4.svg") no-repeat; background-size: contain; } 
#Course ol li:nth-child(5) strong::before { content: ''; background: url("../images/no5.svg") no-repeat; background-size: contain; } 
#Course ol li:nth-child(6) strong::before { content: ''; background: url("../images/no6.svg") no-repeat; background-size: contain; } 
#Course ol li img { margin-bottom: 20px; }
#Course .course02_catch { max-width: 650px; width: 100%; margin: 0 auto 30px; }

#Size_case { position: relative; margin-bottom: 80px; z-index: 1; }
#Size_case::before { content: ''; position: absolute; border-top-right-radius: 50px; border-bottom-right-radius: 50px; background: #f29a9d url("../images/sizecase_bg.png") repeat; background-size: 20%; background-blend-mode: multiply; margin-bottom: 50px; height: 100%; z-index: -1; width: calc(100% - 70px); }
#Size_case h2 { position: relative; font-size: 8em; font-weight: 700; color: #fced3e; margin-bottom: 30px; padding-top: 130px; }
#Size_case h2::after { content: ''; background: url("../images/chon.gif")no-repeat; background-size: contain; position: absolute; width: 54px; height: 76px; bottom: 50px; }
#Size_case p.sub { font-size: 4em; color: #fff; margin-bottom: 70px; letter-spacing: initial; }
#Size_case article { box-shadow: 20px 100px 60px -100px #d89e8f; margin-bottom: 50px; z-index: 10; }
#Size_case .container { position: relative; padding-bottom: 80px; }
#Size_case .staff02 { position: absolute; right: 0; max-width: 263px; width: 100%; top: -66px; z-index: -1; }

#Shop { background: #fff; }
#Shop ul { display: flex; justify-content: space-between; flex-wrap: wrap; }
#Shop ul li { font-size: 1.6em; letter-spacing: .06em; line-height: 1.143em; max-width: 320px; width: 32%; margin-bottom: 30px; }
#Shop ul li:nth-child(-n+2) { max-width: 490px; width: 49%; }
#Shop ul li img { margin-bottom: 10px; }
#Shop .inner{ max-width: 1000px; width: 95%; margin-left: auto; margin-right: auto; padding-bottom: 30px; padding-top: 80px; }

#Contact { padding-bottom: 80px; }
#Contact .inner { max-width: 900px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
#Contact .txt { max-width: 540px; width: 54%; }
#Contact h2 { font-size: 1.813rem; color: #4777b2; font-weight: 600; width: 180px; height: 52px; display: flex; align-items: center; justify-content: center; border: 2px solid #4777b2; background: #FFF; box-sizing: border-box; border-radius: 10px; margin: 0 auto 20px; }
#Contact p { text-align: center; }
#Contact p a { pointer-events: none; font-size: 3.875em; font-weight: 600; color: #4777b2; display: block; margin-bottom: 15px; }
#Contact a::before { content: ""; display: inline-block; width: 41px; height: 36px; background: url(../images/icon_tel_h.png)no-repeat center; background-size: 100% auto; margin-right: 5px; }
#Contact .img { max-width: 460px; width: 46%; margin-top: 35px; order: -1; }
#Contact p.case_matome { font-size: 3.7em; color: #f27e70; text-align: center; line-height: 1.45em; font-weight: 700; margin-bottom: 30px; }

/*----------------
footer
-----------------*/
footer { background: #fff; }
footer .inner { max-width: 1000px; width: 95%; margin: 0 auto; }
footer .logo { max-width: 350px; width: 100%; }
footer .logo img { margin-bottom: 30px; }
footer .copy { font-size: 1.2em; letter-spacing: .1em; color: #006029; display: flex; align-items: center; justify-content: center; background: #eef6ec; height: 40px; margin-top: 100px; }
footer .tel { font-size: 4em; font-weight: 700; }
footer .tel::before { content: ''; display: inline-block; background:url("../images/icon_tel.png") no-repeat; width: 25px; height: 21px; background-size: contain; margin-right: 5px; }
footer #Outline { display: flex; justify-content: space-between; }
footer #Map { width: 100%; position: relative; overflow: hidden; margin-bottom: 50px; }
footer address { font-size: 1.6em; margin-bottom: 10px; }
footer dl dt { font-size: 1.5em; color: #999999; margin-bottom: 5px; }
footer dl dd { font-size: 2em; margin-bottom: 15px; }
footer dl dd ul { display: flex; }
footer dl dd ul li:not(:last-child)::after { content: '｜'; display: inline-block; font-size: 2rem; }

@media screen and (max-width: 1200px) {
	.container { padding-left: 2.46%; padding-right: 2.46%; }
	header .container { width: 100%; }
	#Kv { padding: 80px 0; }
	#Onayami .main_point { width: 90%; }
	#Onayami h2 img.mam { left: 0; }
	#Onayami h2 img.dad { right: 0; }
	#Onayami p.onayami_txt { font-size: 2.4em; }
	#Sindan .sindan_copy img { left: -120px; }
	#Course .flex a:first-child { width: 450px; }
	#Size_case p.sub { font-size: 3em; }
}

@media screen and (max-width: 960px) {
	.pc { display: none; }
	.sp { display: block; }
	#Contact p.case_matome { font-size: 3em; }
	header h1 img { width: 175px; }
	#Kv { background: url("../images/kv_bg_sp.png") no-repeat; background-size: 100%; height: 45vh; min-height: initial; background-position: bottom; }
	#Kv picture.kv_catch { width: 80%; }
	#Kv picture.kv_maincopy { width: 80%; }
	#Onayami { padding-bottom: 400px; }
	#Onayami .container { padding-top: 410px; }
	#Onayami .onayami_img figure { max-width: initial!important; width: 48%; margin-bottom: 40px; }
	#Onayami h2 { font-size: 4em; }
	#Onayami .main_point { width: 80%; }
	#Onayami .main_point img { top: -200px; }
	#Onayami h2 img.mam { left: 0; top: 20px; }
	#Onayami h2 img.dad { right: 0; top: 20px; }
	#Course .container { padding: inherit; }
	#Course .course02_catch { width: 60%; }
	#Course .wrapper p { font-size: 4em; }
	#Course .flex { margin-top: 690px; }
	#Course .remodeling h2 + p { font-size: 4.5em; }
	#Course .flex a:first-child , #Course .flex a:last-child {  width: 370px; height: 300px; }
	#Course .flex a:first-child::after , #Course .flex a:last-child::after { bottom: -60px; }
	#Course ol li strong { font-size: 2.2rem; margin-bottom: 10px; }
	#Course ol li strong::before { width: 35px; height: 35px; }
	#Size_case p.sub { font-size: 2.5em; line-height: 1.5em; margin-bottom: 50px; }
	#Size_case .staff02 { right: 40px; }
	#Sindan .sindan_copy::before { left: 0; }
	#Sindan .sindan_copy img { max-width: inherit; top: -380px; left: 0; }
	#Sindan .sindan_copy { height: initial; }
	#Sindan::before , #Sindan .sindan_copy::before , #Sindan .sindan_copy::after { content: none; }
	#Size_case h2 { font-size: 5em; }
	#Contact p a { font-size: 2.875em; }
	#Contact a::before { width: 31px; height: 26px; }
	#Course .flex a:first-of-type img { bottom: 60px; }
	footer dl { text-align: center; }
	footer dl dd ul { justify-content: center; }
	footer #Outline { display: block; }
	footer .logo { margin:0 auto 40px; text-align: center; }
	footer .logo img { width: 80%; }
	footer .tel , footer address { text-align: center; }
}

@media screen and (max-width: 640px) {
  	header .tel a { display: block; width: 110px; height: 47px; overflow: hidden; }
  	header .tel a::before { content: ''; display: inline-block; background: url("../images/sp_tel.svg")no-repeat center; width: 110px; height: 36px; background-size: 100% auto; margin-right: 0; }
	#Onayami h2 { font-size: 3em; }
	#Onayami h2::before { width: 38px; height: 27px; }
	#Onayami .onayami_img { margin-bottom: 30px; }
	#Onayami .container { padding-top: 300px; padding-right: inherit; padding-left: initial; }
	#Onayami .main_point { top: -60px; }
	#Course .course02_catch { width: 70%; margin-bottom: 20px; }
	#Course .flex { margin-top: 400px; }
	#Course .flex a img { width: 55%; }
	#Course article { padding: 50px 30px 35px; }
	#Course .wrapper { padding: 30px; }
	#Course .flex a:first-child, #Course .flex a:last-child { height: 260px; }
	#Course .wrapper p { font-size: 3.55em; line-height: 1.4em; }
	#Course ol li { width: 100%; font-size: 1.5em; line-height: 1.6em; }
	#Course ol li strong { font-size: 1.6rem; }
	#Course ol li strong::before { width: 25px; height: 25px; vertical-align: -4px; margin-right: 6px; }
	#Course .remodeling h2 { font-size: 6em; }
	#Course .remodeling h2 + p { font-size: 3.5em; }
	#Size_case h2 { font-size: 4em; }
	#Shop ul li:nth-child(-n+2) { max-width: 100%; width: 100%; }
	#Shop ul li { width: 49%; margin-top: 20px; }
	#Contact .inner { flex-wrap: wrap; }
	#Contact h2 { height: 40px; }
	#Contact p { font-size: 1.3rem; line-height: .5em; }
	#Contact a::before { width: 31px; height: 26px; }
	#Contact .txt { width: 100%; }
	#Contact .img { width: 100%; margin: 25px auto 0 auto; order: 2; }
	#Course .flex a:first-of-type img { left: 40px; bottom: 50px; }
	footer dl dd{ font-size: 1.8em; }
	footer dl dd ul li:not(:last-child)::after { font-size: 1.8rem; }
	#Course article#Course01 h2 { width: 80%; margin-bottom: 20px; }
	#Course article#Course02 h2 { width: 90%; margin: 0 auto 20px; }
	#Contact p a { pointer-events: none; font-size: 3em; }
}

@media screen and (max-width: 414px) {
	#Contact p.case_matome { font-size: 1.8em; line-height: 1.55em; }
	#Kv { padding-bottom: 30px; }
	#Onayami h2 { font-size: 2.2em; margin-bottom: 40px; }
	#Onayami p.onayami_txt { font-size: 1.45em; }
	#Onayami .container { padding-top: 215px; }
	#Onayami h2 img.mam , #Onayami h2 img.dad { width: 20%; top: 27px; }
	#Onayami .onayami_img img { width: 100%; } 
	#Onayami .onayami_img figure { margin-bottom: 20px; }
	#Onayami h2::before { width: 28px; height: 19px; }
	#Course .flex { margin-top: 150px; margin-bottom: 50px; }
	#Course .flex a:first-child, #Course .flex a:last-child { height: 156px; }
	#Course .flex a:first-child::after, #Course .flex a:last-child::after { bottom: -12px; width: 28px; height: 37px; }
	#Course .flex a:first-of-type img { bottom: 50px; }
	#Course .flex a img { right: 0; }
	#Course article h2 { margin-bottom: 25px; }
	#Course .wrapper p { font-size: 2em; margin-bottom: 15px; }
	#Course article { padding: 40px 20px 25px; }
	#Course ol li { font-size: 1.35em; line-height: 1.4em; }
	#Course .wrapper { padding: 20px; }
	#Course ol li strong::before { width: 15px; height: 15px; vertical-align: -2px; margin-right: 3px; }
	#Course .remodeling h2 { font-size: 4em; margin-bottom: 10px; }
	#Course .remodeling h2 + p { font-size: 2.5em; margin-bottom: 20px; }
	#Course .remodeling { margin-top: 60px; padding-bottom: 60px; }
	#Size_case h2 { font-size: 3em; padding-top: 50px; margin-bottom: 10px; } 
	#Size_case h2::after { width: 34px; height: 26px; bottom: 30px; }
	#Size_case p.sub { font-size: 1.5em; margin-bottom: 20px; }
	#Size_case .staff02 { width: 30%; right: 0; top: 0; }
	#Size_case .container { padding-bottom: 30px; padding-left: initial; padding-right: initial; }
	#Course .sitatenaosi { margin-bottom: 20px; }
	#Shop ul li:nth-child(-n+2) { margin-bottom: 5px;}
	#Shop ul li:first-child { margin-top: 0; }
	#Shop ul li { font-size: 1.4em; margin-bottom: 0px; }
	footer dl dd { font-size: 1.3em; }
	footer dl dt { font-size: 1.4em; margin-bottom: 8px; }
	footer dl dd ul li:not(:last-child)::after { font-size: 1rem; }
}

@media screen and (max-width: 360px) {
	#Size_case .staff02 { top: 10px; }
	footer .tel { font-size: 3.4em; }
	footer dl dd ul { flex-wrap: wrap; }
	footer dl dd ul li{ margin-bottom: 5px; }
}

@media (hover: none) and (pointer: coarse) {
	header .tel a,#Contact p a { pointer-events: auto; } 
}