@charset "UTF-8";
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav.gnav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav.gnav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}
html,body{overflow-x:hidden}
body{font-size: 16px;color:#000;font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;line-height:1.6;-webkit-text-size-adjust:100%}
#w-back{width:100%;background:#fff;margin:0;padding:40px 0 60px;box-sizing:border-box}
#kw-back{width:100%;background:#fff;margin:0;padding:10px 0 60px;box-sizing:border-box}
#contents{width:980px;margin:0 auto;box-sizing:border-box}
header + #contents{padding-top:50px}
.inner{position:relative;width:980px;margin:0 auto;box-sizing:border-box}
a{color:#004080}
a:hover{color:#00f}
h1{font-size:28px}
h2{position:relative;margin:3em 0 2em;font-size:28px;color:#333;text-align:center;line-height:1.0;z-index:2}
h2:before{content:'';position:absolute;bottom:-15px;display:inline-block;width:60px;height:5px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);background-color:#00f;border-radius:5px}
h3{font-size:20px;font-weight:bold;margin:40px 0 10px;z-index:2}
h3 span{position:relative;font-size:12px}
h3 span:before{position:absolute;top:50%;left:-20px;z-index:1;content:'';display:block;width:1em;margin-top:-1px;border-top:1px solid #333}
h3 span:after{position:absolute;top:50%;right:-20px;z-index:1;content:'';display:block;width:1em;margin-top:-1px;border-top:1px solid #333}
.hline{display:inline;font-size:22px;padding:0 5px;background-image:linear-gradient(rgba(0,0,0,0)70%,rgb(255,255,0)70%)}
.hlineb{display:inline;font-size:22px;padding:0 5px;background-image:linear-gradient(rgba(0,0,0,0)70%,rgb(0,255,255)70%)}
h4{margin-top:.25em;margin-bottom:.25em;font-size:16px;font-weight:bold}
h5{margin-bottom:.25em;padding-left:25px;font-size:16px}
h6{margin-bottom:.25em;padding-left:5px;font-size:16px;font-weight:bold}
p{margin:0 0 1em 0}
img{max-width:100%;height:auto;vertical-align:bottom}
em{font-weight:bold}
strong{font-weight:bold}
pre{margin:1em 0;padding:1em}
blockquote{margin-bottom:1em;padding:1em;border:1px dotted #ddd;border-left:5px solid #ddd}
ul,ol,dl{margin:0 0 1em 0}
ul li{list-style:disc}
ol li{list-style:decimal}
li{margin-left:2em}
dt{margin-bottom:.5em;border-bottom:1px dotted #ddd}
dd{margin-bottom:1em}
table{width:100%;margin-bottom:1em;border-collapse:collapse;border:1px solid #ddd}
th{padding:10px;text-align:center;vertical-align:middle;border:1px solid #ddd;background:#f1f1f1}
td{padding:10px;text-align:left;border:1px solid #ddd}
/*汎用クラス*/
.bold{font-weight:bold}
.red{color:#f00}
.blue{color:#00f}
.right{float:right}
p.right{margin:-10px 0 0 0}
p.right::after{display:block;content:'';clear:both}
.clearfix{clear:both}
.heading{background:#f7f7e3;padding:20px 20px;margin:20px 0;border-radius:10px}
.heading h3{font-weight:bold}
/*写真ズーム*/
.zoom{overflow:hidden}
.zoom img{display:block;-moz-transition:-moz-transform .8s linear;-webkit-transition:-webkit-transform .8s linear;transition:transform .8s linear}
.zoom img:hover{-webkit-transform:scale(1.05);-moz-transform:scale(1.05);transform:scale(1.05)}
.zoom img{margin-bottom:0}
/*シャボン*/
section.ktop1{position:relative;width:auto;margin:0px;padding:0px}
section.middle1{position:relative;margin:0}
section.bottom1{position:relative;margin:0}
.anim-box{position:absolute;left:calc(50% - 100px);top:calc(50% - 150px);width:300px;height:300px;border-radius:50% 48% 49% 52%;overflow:hidden;background:radial-gradient(at 50% 50%, transparent 55%, rgba(0,160,255,.3) 70%, rgba(210,255,255,.7) 0%) 50% 50% no-repeat;animation:poyo 10s 0s ease-in-out infinite;z-index:1}
.anim-box::before{content:"";position:absolute;right:-10%;bottom:-10%;width:60%;height:60%;border-radius:50% 0;background:radial-gradient(at 0 0, rgba(255,165,0,.2) 50%, rgba(255,150,255,.4) 50%);transform-origin:0 0;animation:tuya 14s 0s ease-in-out infinite;filter:blur(15px)}
.anim-box::after{content:"";position:absolute;left:-10%;top:-10%;width:60%;height:60%;border-radius:50% 0;background:radial-gradient(at 100% 100%, rgba(255,255,0,.3) 50%, rgba(120, 255, 140, 0.4) 50%);transform-origin:100% 100%;animation:tuya 15s 0s ease-in-out infinite;filter:blur(15px)}
.anim-box2{position:absolute;left:calc(20% - 0px);top:calc(30% - 0px);width:100px;height:100px;border-radius:50% 48% 49% 52%;overflow:hidden;background:radial-gradient(at 50% 50%, transparent 50%, rgba(0,160,255,.3) 70%, rgba(210,255,255,.7) 0%) 50% 50% no-repeat;animation:poyo2 15s 0s ease-in-out infinite;z-index:1}
.anim-box2::before{content:"";position:absolute;right:-10%;bottom:-10%;width:60%;height:60%;border-radius:50% 0;background:radial-gradient(at 0 0, rgba(255,165,0,.2) 50%, rgba(255,150,255,.4) 50%);transform-origin:0 0;animation:tuya 14s 0s ease-in-out infinite;filter:blur(15px)}
.anim-box2::after{content:"";position:absolute;left:-10%;top:-10%;width:60%;height:60%;border-radius:80% 0;background:radial-gradient(at 100% 100%, rgba(255,255,0,.3) 50%, rgba(120,255,140,.4) 50%);transform-origin: 100% 100%;animation:tuya 15s 0s ease-in-out infinite;filter:blur(15px)}
.anim-box3{position:absolute;left:calc(60% - 0px);top:calc(70% - 0px);width:150px;height:150px;border-radius:50% 48% 49% 52%;overflow:hidden;background:radial-gradient(at 50% 50%, transparent 50%, rgba(0,160,255,.3) 70%, rgba(210,255,255,.7) 0%) 50% 50% no-repeat;animation:poyo3 15s 0s ease-in-out infinite;z-index:1}
.anim-box3::before{content:"";position:absolute;right:-10%;bottom:-10%;width:60%;height:60%;border-radius:50% 0;background:radial-gradient(at 0 0, rgba(255,165,0,.2) 50%, rgba(255,150,255,.4) 50%);transform-origin:0 0;animation:tuya 14s 0s ease-in-out infinite;filter:blur(15px)}
.anim-box3::after{content:"";position:absolute;left:-10%;top:-10%;width:60%;height:60%;border-radius:80% 0;background:radial-gradient(at 100% 100%, rgba(255,255,0,.3) 50%, rgba(120,255,140,.4) 50%);transform-origin: 100% 100%;animation:tuya 15s 0s ease-in-out infinite;filter:blur(15px)}
@keyframes tuya{
0%{transform:rotate(0)}
50%{transform:rotate(160deg)}
}
@keyframes poyo{
0%{transform:translate(0,0)}
50%{transform:translate(5px,30px)}
}
@keyframes poyo2{
0%{transform:translate(0,0)}
25%{transform:translate(15px,15px)}
50%{transform:translate(0,0)}
75%{transform:translate(10px,10px)}
}
@keyframes poyo3{
0%{transform:translate(0,0)}
33%{transform:translate(10px,-10px)}
66%{transform:translate(-10px,10px)}
}
.tar{transform:translateY(50px)}
.tou{transform:translateZ(-50px)}
.jshide{opacity:0}
.jsshow{opacity:1;transform:translate3d(0,0,0);transition:1.2s}
/*ヘッダー*/
header{position:fixed;top:0;left:0;width:100%;background:rgba(255,255,255,.8);z-index:100}
header:after{content:"";display:block;clear:both}
header h1{float:left;height:50px;font-size:16px;line-height:50px;color:#fff;margin-left:10px}
header h1 img{position:absolute;top:10px;filter:drop-shadow(2px 2px 1px #fff);z-index:100}
.telephone{position:absolute;top:50px;right:0;display:block;width:100%;text-align:right;font-size:18px;color:#00f;padding-bottom:10px;background:rgba(255,255,255,.8);z-index:10;transition:.2s}
.telephone .inner{font-weight:bold;padding:0 10px}
/*サービス内容*/
.boxl{display:block;margin:30px 0;padding:10px;text-align:left;background:#ffc;box-sizing:border-box;border-radius:10px}
.boxl p,.boxr p{z-index:3;text-align:left}
.boxl img{display:block;margin:10px;float:right;width:50vw;max-width:500px;height:auto}
.boxr{display:block;margin:30px 0;padding:10px;text-align:right;background:#ffc;box-sizing:border-box;border-radius:10px}
.boxr img{display:block;margin:10px;float:left;width:50vw;max-width:500px;height:auto}
.boxl h3,.boxr h3{margin:15px 5px;font-size:24px}
.boxr::after,.boxl::after{content:"";display:block;clear:both}
/*店舗案内ページ*/
table.tenpo{width:100%;border:none}
table.tenpo th{position:relative;text-align:left;width:100px;border:none;background:none}
table.tenpo th:after{display:block;content:"";width:15px;height:2px;background-color:#333;position:absolute;top:calc(50% - 1px);right:-5px}
table.tenpo td{text-align:left;padding:7px 0 7px 30px;border:none}
table.tenpo tr:nth-child(odd){background-color:#ffc}
.gmap{position:relative;height:0;overflow:hidden;margin:20px 0 1em;padding-bottom:56.25%;box-shadow:1px 1px 5px #999}
.gmap iframe{position: absolute;left:0;top:0;height:100%;width:100%}
/*料金ページ*/
.rhyo{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch;position:relative}
.rhyo table.prc{;border-collapse:separate;border-spacing:5px;border:none;width:100%;min-width:550px}
.rhyo table.prc th,table.prc td{border-radius:5px;text-align:center;padding:10px 0;border:none}
.rhyo table.prc th{background:#ffc;border:solid 1px #2b95ff;font-weight:bold;white-space:nowrap}
.rhyo table.prc th:nth-child(1){min-width:200px;z-index:1;position:sticky;top:0;left:0}
.rhyo table.prc th.hc{background:#d5ffff;border:solid 1px #00f}
.rhyo table.prc td{background:#fff;border:solid 1px #5af;min-width:130px}
.rhyo img{width:140px;height:auto;position:absolute;top:calc(50% - 45px);left:calc(50% - 70px);opacity:0;z-index:2;transition:1.2s}
@keyframes sayuu{
from{transform:translateX(-20px)}
20%{transform:translateX(20px)}
40%{transform:translateX(-20px)}
60%{transform:translateX(20px)}
80%{transform:translateX(-20px)}
to{transform:translateX(0)}
}
/*問い合わせ*/
#kojin h3{text-align:center;margin:80px auto 40px}
#kojin h4{color:#004080}
/*サイトマップ*/
ul#sitem{margin-left:30px;list-style-image:url('images/ls.png')}
ul#sitem li{list-style-type:none;margin-top:2em;list-style-image:url('images/ls.png')}
ul#sitem2 li{list-style-type:none;margin-top:2em}
ul#sitem2 li ul li{list-style-image:url('images/ls.png')}
/*フッター*/
footer{clear:both;padding-top:60px;background:#f5f5dc}
footer .inner{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-around;flex-wrap:wrap}
footer section{text-align:left}
footer section a{text-decoration:none}
footer h5{margin:0 15px 15px 0;padding-left:0}
.fnav ul{width:auto;margin:0;font-size:14px}
.fnav ul li{text-align:left;font-weight:bold;margin:10px 20px;list-style:none}
.fnav ul li a{text-decoration:none;color:#004080;transition:.5s}
.fnav ul li a:hover{color:#00f}
.copyright{margin-top:20px;padding:10px 0 calc(env(safe-area-inset-bottom) + 5px);color:#fff;font-size:11px;text-align:center;background:#00f}
a[href^="tel:"]{text-decoration:none;color:#333}
/*カレンダー*/
ul#bcalendar{margin:0;padding:40px 0 60px;background:#fff;clear:both}
ul#bcalendar li{list-style-type:none;text-align:center;margin:0 auto;padding:40px 10px;background:#f4faff}
ul#bcalendar li p{text-align:left}
#biz_calendar{width:auto;max-width:500px}

/*ページトップ*/
.totop{position:fixed;bottom:50px;right:15px;z-index:1}
.totop a{display:block;text-decoration:none}
.totop img{opacity:.5;transition:.3s;filter:drop-shadow(5px 10px 2px #999)}
.totop img:hover{opacity:.6}
/*パンくず*/
#toppath{display:inline-block;margin:10px 0}
video{max-width:100%;height:auto}
.alignr{text-align:right}
.alignl{text-align:left}
.alignr a,.alignl a{display:inline-block;color:#004080;border:3px solid #004080;text-decoration:none;margin:10px 0 20px;padding:4px 8px;border-radius:5px;transition:.3s}
.alignr a:hover,.alignl a:hover{color:#00f;border:3px solid #00f}
/*gutenberg修正*/
.has-text-align-center{text-align:center}
.has-text-align-left{text-align:left}
.has-text-align-right{text-align:right}
img.aligncenter,.aligncenter img{display:block;margin:5px auto;max-width:95%;width:auto;height:auto}
img.alignright,.alignright img{float:right;width:50%;height:auto;margin-left:10px}
img.alignleft,.alignleft img{float:left;width:50%;height:auto;margin-right:10px}
.navigation::after{display:block;content:"";clear:both}
.navigation .alignl{float:left}
.navigation .alignr{float:right}
figure ul li{list-style-type:none;margin:0}
figure figcaption{font-size:15px;text-align:center;margin:-20px 1rem 1rem}
/*投稿*/
#main{box-sizing:border-box;overflow:hidden;float:right;width:68%;margin-bottom:60px}
#sub{box-sizing:border-box;overflow:hidden;float:left;width:28%;text-align:left;margin:30px 0 80px 10px}
div.dateinfo,div.date{float:right;margin-right:10px;font-weight:bold}
h3.pos,h3.page-title{text-align:left;font-size:22px;font-weight:bold}
h3.pos::first-line,h3.page-title::first-line{text-align:center}
div.dateinfo{margin-bottom:20px}
div.cont-inner{margin:10px 20px;clear:both}
div.cont-inner p{font-size:18px}
div.cont-inner img{margin-bottom:30px}
img + figcaption{display:block;margin-top:-20px}
hr.i-bar,hr.b-bar{border-top: 3px double #bbb;}
div.cont-inner hr{margin:70px 0;clear:both}
section#toko hr:last-child{margin:50px 0 1em}
.thumbnail img{float:left;margin:5px 30px 10px 5px;width:200px;height:auto}
a.more{display:inline-block;border:3px solid #4bc2c5;text-decoration:none;padding:2px 5px;margin-left:5px;border-radius:5px;float:right;transition:.3s;color:#4bc2c5}
a.more:hover{color:#9dd3a8;border:3px solid #9dd3a8}
div.entry-meta{display:block;margin:20px 0;clear:both;font-size:15px}
div.entry-meta a{display:inline-block;border:1px solid #333;border-radius:50px;margin:5px;padding:2px 7px;text-decoration:none;min-width:40px;text-align:center}
.tag-links,.cat-links{display:inline-block}
/*サイド*/
.submenu h4{width:auto;font-size:18px;margin:1rem 0 .5rem;padding:3px 0 3px 15px;text-align:left;color:#00f;border:2px solid #00f;border-radius:5px}
.submenu li{margin:0;padding:0;list-style:none;font-size:14px;font-weight:bold}
.submenu li a{display:block;padding:10px 5px;color:#000;border-bottom:1px dotted #999;text-decoration:none}
.submenu li a:hover{background:#eee}
/*個別トップ*/
#topPhoto{position:relative;width:100%;max-height:350px;overflow:hidden}
#topPhoto img{display:block;height:auto;width:100%;object-fit:cover}
#topPhoto .text{position:absolute;right:20px;bottom:40px;font-weight:bold;color:#fff;text-shadow:2px 2px 2px #333;text-align:center;vertical-align:middle;pointer-events:none;z-index:2;font-size:50px;letter-spacing:3px;animation:appear 1s}
#topPhoto .text span{font-weight:bold}
@keyframes appear{
from{opacity:0}
50%{opacity:0}
to{opacity:1}
}
/*ナビ*/
@media print, screen and (min-width:769px){
nav.gnav:after{content:'';display:block;clear:both}
nav.gnav {display:block !important;float:right}
nav.gnav > ul{display: block !important;margin:0;padding:0}
nav.gnav ul li{position:relative;line-height:50px;margin:0;padding:0;list-style:none}
nav.gnav ul li a{display:block;color:#00f;font-size:14px;font-weight:bold;text-decoration:none;transition:.2s}
nav.gnav ul li:hover > a{color:#00008b;background:#fff}
nav.gnav > ul > li{position:relative;width:120px;float:left;margin:0;padding:0;text-align:center;list-style:none;line-height:50px}
nav.gnav ul li:nth-of-type(2){width:120px}
nav.gnav ul li:nth-of-type(3){width:140px}
nav.gnav ul li:first-of-type{width:70px}
nav.gnav ul li:nth-of-type(4){width:100px}
nav.gnav ul li:nth-of-type(5){width:110px}
nav.gnav > ul > li.subnav a{padding-right:20px}
nav.gnav > ul > li.subnav > a:after{position:absolute;content:"";top:50%;width:0;height:0;margin-top:-2.5px;margin-left:5px;border:5px solid transparent;border-top-color:#00f}
nav.gnav ul li ul{position:absolute;z-index:3;top:100%;left:0;width:180px;margin:0;padding:0}
nav.gnav ul li.subnav ul li{width:140px}
nav.gnav ul li ul li{overflow:hidden;height:0;color:#fff;transition:.2s}
nav.gnav ul li ul li a{padding:0 15px;text-align:left;color:#fff;background:#00f;font-weight:normal}
nav.gnav ul li ul li a:hover{color:#fff;background:#00008b}
nav.gnav ul li:hover > ul > li{overflow:visible;height:40px;line-height:40px;border-bottom:1px solid #fff}
nav.gnav ul li:hover ul li:last-child{border-bottom:none}
nav.gnav > ul > li:last-child > ul{left:-60px}
nav.gnav ul li ul li ul:before{position:absolute;content:"";top:17.5px;left:-20px;width:0;height:0;border:5px solid transparent;border-left-color:#fff}
nav.gnav > ul > li:last-child ul li ul:before{position:absolute;content:"";top:17.5px;left:200%;margin-left:-20px;border:5px solid transparent;border-right-color:#fff}
#spMenu,#telBtn,.sp{display:none}
}
/*スマホ*/
@media screen and (max-width:768px){
nav.gnav{display:none}
nav.gnav ul{margin:0;padding:0}
nav.gnav > ul{position:fixed;z-index:2;overflow:auto;top:50px;right:0;width:100%;height:88%;height:-webkit-calc(100% - 50px);height:calc(100% - 50px)}
nav.gnav li{opacity:0;position:relative;width:100%;float:none;margin:0;text-align:left;list-style:none;border-bottom:1px solid #9a9afe;background:#ffa}
nav.gnav.panelactive li{animation-name:gnavAnime;animation-duration:.6s;animation-delay:.1s;animation-timing-function:ease-in-out;animation-fill-mode:forwards}
@keyframes gnavAnime{
0% {opacity:0}
100% {opacity:1}
}
nav.gnav li:first-child{border-top:1px solid #9a9afe}
nav.gnav li.subnav{border-bottom:0}
nav.gnav li a{display:block;padding:20px 20px;color:#00f;text-decoration:none;transition:.3s}
nav.gnav li a:hover{color:#00f;background:#ffd700}
nav.gnav ul ul{position:relative}
nav.gnav li li a{box-sizing:border-box;width:100%;padding:20px 30px 20px 34px;text-align:left}
nav.gnav .subnav > a:before{display:block;content:"";position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);top:30px;right:20px;width:10px;height:10px;margin-top:-5px;background:#00f}
nav.gnav .subnav > a:after{display:block;content:"";position:absolute;-webkit-transform:rotate(45deg);transform:rotate(45deg);top:30px;right:20px;width:10px;height:10px;margin-top:-10px;background:#ffa;transition:.3s}
nav.gnav .subnav a:hover:after{background:#ffd700}
nav.gnav .subnav.active > a:before{margin-top:0}
nav.gnav .subnav.active > a:after{margin-top:5px}
.spMenuWrap{display:block;position:fixed;top:0;right:0;-webkit-transition:all 1s;-moz-transition:all 1s;-ms-transition:all 1s;-o-transition:all 1s;transition:all 1s;background:transparent;z-index:2}
#spMenu{position:absolute;top:9px;right:20px;display:block}
#spMenu:hover{cursor:pointer}
#spTel{position:fixed;top:8px;right:80px}
#telBtn{display:inline-block;position:relative;width:33px;height:33px;border-radius:20%}
#telBtn img{position:absolute;top:12%;left:12%;width:30px;height:auto;filter:drop-shadow(2px 2px 1px #fff)}
#navBtn{display:inline-block;position:relative;width:33px;height:33px}
#navBtn img{position:absolute;top:75%;width:30px;height:auto;filter:drop-shadow(2px 2px 1px #fff)}
#navBtnIcon{display:block;position:absolute;top:35%;left:9%;width:30px;height:2px;background:#00f;transition:.6s;filter:drop-shadow(2px 2px 1px #fff)}
#navBtnIcon:before,#navBtnIcon:after{display:block;content:'';position:absolute;top:50%;left:0;width:24px;height:2px;background:#00f;transition:.6s;filter:drop-shadow(1px 1px 1px #fff)}
#navBtnIcon:before{margin-top:-8px}
#navBtnIcon:after{margin-top:6px}
#navBtn .close{background:transparent;transform:rotate(-360deg)}
#navBtn .close:before,#navBtn .close:after{margin-top:0;filter:none}
#navBtn .close:before{transform:rotate(-45deg);-webkit-transform:rotate(-225deg)}
#navBtn .close:after{transform:rotate(-135deg);-webkit-transform:rotate(-135deg)}
.circle-bg{position:fixed;z-index:1;width:100px;height:100px;border-radius:50%;background:#ffd700;transform:scale(0);top:calc(50% - 50px);left:calc(50% - 50px);transition:all .6s}
.circle-bg.circleactive{transform:scale(20);background:rgba(255,255,170,.6)}
.nav-header{background-color:rgba(255,255,170,1);transition:1s}
p.right{margin-top:0}
header h1{padding:0 0 0 10px}
.telephone{display:none}
.boxl{float:none;margin:30px 0;padding:10px;width:auto;border-radius:5px}
.boxr{float:none;margin:30px 0;padding:10px;text-align:left;width:auto;border-radius:5px}
.boxl img,.boxr img{float:none;width:90vw;margin:10px auto}
footer .inner{display:inline-block;box-sizing:border-box;padding:0 30px}
footer section{text-align:right}
footer section a{text-decoration:underline}
footer h5{margin:0 0 15px}
.fnav{display:block}
footer .inner section:nth-of-type(2){margin-top:40px}
.fnav ul{width:100%}
.fnav ul li{margin:25px 20px}
a[href^="tel:"]{text-decoration:underline;color:#004080;transition:.5s}
a[href^="tel:"]:hover{color:#00f}
#main{float:none;width:auto;margin:0 10px 1rem;padding-bottom:0}
div.cont-inner{margin:10px 5px}
#sub{float:none;width:auto;margin:30px 10px 0;padding-bottom:0}
.submenu h4{text-align:center;padding:3px 10px}
.thumbnail img{width:40%;margin:5px 15px 10px 5px}
#topPhoto .text{font-size:40px}
}
@media screen and (max-width:1015px){
.inner{width:100%}
#contents{box-sizing:border-box;width:auto;padding:0 10px}
footer{width:100%}
.lock{overflow:hidden}
}
@media screen and (max-width:550px){
h2{font-size:22px}
#topPhoto .text{font-size:30px}
.boxl h3,.boxr h3{margin:15px 5px;font-size:20px}
.boxl img,.boxr img{width:100%}
}
@media screen and (max-width:420px){
.anim-box{width:250px;height:250px}
.anim-box3{width:100px;height:100px}
}
@media screen and (max-width:360px){
header h1 img{width:160px;height:auto}
h2{font-size:18px}
#spMenu{right:10px}
#spTel{right:50px}
#topPhoto .text{font-size:20px}
}
@media screen and (max-width:330px){
.anim-box{width:200px;height:200px}
}