/* =====================================================

2020-7-20
Atelier88%
 
===================================================== */

@media screen and (max-width:768px) {


	
	
/*  base
===================================================== */
img {
	max-width: 100%;
	height : auto ;
}
.mobile {
	display: inline-block;
}
.pc {
	display: none;
}


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

html, body {
	height: 100%;
}
body {
	line-height: 130%;
	font-size: 90%;
	-webkit-text-size-adjust: 100%; /*文字の大きさが自動で調整OFF*/
	left: 0;
	position: relative;
	z-index: 0;
	word-break:break-all;
	background-image: none;
}

/*テキスト少ない時footer固定*/
article {
	min-height: calc(100vh - 290px);
}

/* h2, p */
p, dt, dd, li {
	text-align: justify;
	text-justify: inter-ideograph;
}

.imgL, .imgR {
	margin: 5px auto 10px;
	float: none;
	display:block;
	max-width: 100%;
}
hr {
	margin: 5px auto 20px;
}

	
/*  layout
===================================================== */
h1,
header,
#headerLogo,
#wrapper,
#headerImg,
#container,
footer,
address {
	display: block;
	margin: 0 0;
	width: 100%;
    min-width: 100%;
	padding: 0;
}
h1 {
	background-color: #6f6f6f;
	height: 15px;
	font-size: 7pt;
	line-height: 15px;
    margin: 0 0 auto;
    position: fixed;
    z-index: 10013;
}
header {
    margin: 15px 0 auto;
    height: 64px; /*PCに同じ*/
    background-color: rgba(0,0,0,1.00);
    box-shadow: 0 1px 0px rgba(0,0,0,0.50);
    position: fixed;
    overflow: hidden;
    z-index: 10013;
}
#headerLogo li:first-child {
	padding-left: 3%;
	padding-top: 10px;
}
#headerLogo li:last-child {
	padding-left: 3%;
	text-align: left;
}

#topNavi,
#headerNavi,
#sideNaviL,
#sideNaviR,
#footerNavi {
 	display: none;
}

#headerImg {
    margin: 0px auto;
	border-top: 79px solid transparent;
    height: 200px;
}
	
#container {
	background-image: none;
}
#contents {
	margin: 0 2%;
	width: 96%;
    min-width: 96%;
    padding: 20px 0;
}
	
footer {
	margin: 0;
	min-width: 100%;
	width: 100%;
}
#footerNavi {
 	display: none;
}


#footerNavi {
	padding: 0.5em 0;
}
address {
	margin: 0 autox;
	padding: 15px 2% 15px;
}


a.anchor {
	padding-top: 80px;
	margin-top: -80px;
}

#page-top {
	position: fixed ;
	bottom: 10px ;
	right: 2%;
}
#page-top a {
	width: 40px;
	height: 40px;
	line-height: 35px;
}
	
	
	
/* drawer */
.drawer_nav {
	display: block;
    margin: auto;
    position: fixed;
    top: 0;
    left: -301px;
    width: 300px;
    min-width: 300px;
    height: 100%;
    -webkit-transition: ease .5s;
    transition: ease .5s;
    z-index: 10012;
	background-color: #fff;
	padding-top: 85px; /*header height*/
}
.drawer_nav.open {
    top: 0;
    left: 0px;
	box-shadow: 0 0 8px #ccc;
}
.drawer_nav ul {
	display: block;
}
.drawer_nav li {
	width: 100%;
}
.drawer_nav dt,
.drawer_nav a {
    cursor: pointer;
	display: block;
    width: 100%;
    height: 35px;
    color: #1a509d;
    font-size: 16px;
    padding-left: 1.0em;
    font-weight: normal;
    line-height: 35px;
    text-decoration: none;
	position: relative;
	border-bottom: 1px solid #d8d8d8;
}
.drawer_nav dt {
	font-weight: normal;
}
.drawer_nav a {
    background-image: url(../images/_base2/arrow06.png);
    background-repeat: no-repeat;
    background-position: right 20px center;
}
.drawer_nav > ul > li:nth-child(1) > a {
    background-image: url("../images/_base2/m-home.png");
    background-position: right 17px center;
}
.drawer_nav > ul > li:nth-child(6) > a {
    background-image: url("../images/_base2/m-mail.png");
    background-position: right 17px center;
}
.drawer_nav > ul > li:nth-child(10) > a {
    background-image: url("../images/_base2/m-info.png");
    background-position: right 17px center;
}
.drawer_nav dd a {
    padding-left: 1.5em;
	background-color: #f9f9f9;
}
.drawer_nav dd li:first-child a {
	box-shadow: 0 6px 8px -8px #ddd inset;
}
.drawer_nav dd li:last-child a {
	box-shadow: 0 -6px 8px -8px #ddd inset;
}

.drawer_nav dt {
}
.drawer_nav dt::after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url(../images/_base2/arrow07.png);
    background-repeat: no-repeat;
    background-position: center center;
    transition: transform .4s;
    margin-left: 4px;
}
.drawer_nav dt.open::after {
	transform: rotateZ(180deg);
}
.drawer_nav dd {
    display: none;
}

.drawer_toggle {
    z-index: 10014;
    display: block;
    margin: auto;
    position: fixed;
    top: 23px;
    right: 4%;
    cursor: pointer;
    padding: 5px;
}
.drawer_toggle span {
	position: relative;
	display: block;
	height: 2px;
	width: 30px;
    background-color: #333;
	-webkit-transition: ease .5s;
	transition: ease .5s;
}
.drawer_toggle span:nth-child(1) {
	top: 0;
}
.drawer_toggle span:nth-child(2) {
	margin: 8px 0;
}
.drawer_toggle span:nth-child(3) {
	top: 0;
}
/*OPEN時の動き*/
.drawer_toggle.open {
}
.drawer_toggle.open span {
}
.drawer_toggle.open span:nth-child(1) {
	top: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.drawer_toggle.open span:nth-child(2) {
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	opacity: 0;
}
.drawer_toggle.open span:nth-child(3) {
	top: -10px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.drawerBGwrapper.open {
	display: block;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10011;
	background-color: rgba(79,79,79,0.3)
}
	
	
	
	
/* h2345 */
#contents h2 {
    margin: 0 auto 20px;
	font-size: 15px;
}
#contents h3 {
	font-size: 15px;
}
div.p {
	margin: 0px 1% 2em;
}


/* a */

/* index */
#contents .waku1 a {
    margin: 5px 1% 10px;
}
.box19 {
    position: relative;
	margin: 0 20px 2em;
    padding: 1em 2em;
}
.boxCM  {
    height: 90px;
	font-size: 1.2em;
	line-height: 120%;
	text-indent: 0em;
	padding: 25px 10px;
}
	
	
/*  local
===================================================== */
/* step */
.box20 {
    position: relative;
	margin: 0 20px 2em;
    padding: 1em 2em;
}
dl.process dd {
	margin: 0 0 1.5em;
}

/* charge */
ul.price {
    margin: 2em auto 2em;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
	flex-direction: column;
}
#contents ul.price li:first-child {
	text-align: center;
	min-width: 100%;
}
ul.price li:first-child img {
	max-width: 60%;
}

ul#lang-price {
    margin: 0px 0px 20px;
}
ul#lang-price li a {
    padding: 0.5em 0.25em;
}

	
	
	
	
/* inquiry */
table.inquiry th,
table.inquiry td,
table.formTable th,
table.formTable td {
	display: block;
	border: none;
	width: 100%;
}
table.formTable th {
	padding: 5px 7px;
}
div.inquiry input[type="button"],
div.inquiry input[type="reset"],
div.inquiry input[type="submit"],
table.formTable + p input[type="button"],
table.formTable + p input[type="reset"],
table.formTable + p input[type="submit"],
div#formWrap input[type="button"] {
    padding: 0.5em 1em;
	margin-bottom: 10px;
}
div.inquiry.error,
.thanx {
	margin: 2em auto 0px;
	min-height: calc(100vh - 290px);
}

table.inquiry.confirm th {
	width: 100%;
}
	
div.inquiry #err_box {
	padding: 1em;
}
	
ul.sitemap > li:first-child {
	padding: 20px 10px 20px 15px;
	background-position: left 0px top 27px;
}
ul.sitemap > li:nth-child(n+2) {
	padding: 20px 10px 20px 0px;
 }




/* 削除しないこと
===================================================== */
}


/* ------------------------------------------------
mediaQueriesの指定を入れておきます。
------------------------------------------------ */
/* ===========================================
	タブレット系 480 - 768
=========================================== */
@media screen and (min-width: 480px) and (max-width: 768px) {

#topNavi {
 	display: block;
}
#topNavi {
    height: 121px;
    width: 200px;
    padding: 15px 20px 0;
    background-size: 200px auto;
}
#topNavi li a {
    height: 40px;
    width: 160px;
    background-size: 160px auto;
}
#topNavi li a img {
	height: 40px;
	width: 160px;
}
	
.imgR {
	float: right;
	display:block;
	margin: 0 0 10px 2em;
	max-width: 49%;
}
.imgL {
	float: left;
	display:block;
	margin: 0 2em 10px 0;
	max-width: 49%;
}

	
.drawer_nav {
    left: -351px;
    width: 350px;
    min-width: 350px;
}
.drawer_toggle {
	top: 28px;
	right: 4%;
}

#contents .waku1 a {
    margin: 5px auto 10px;
	max-width: 70%;
}
.box19 {
 	margin: 0 120px 2em;
}
.boxCM  {
    height: 90px;
	line-height: 90px;
	padding: 0px 2em;
}


/* charge */
ul.price {
    flex-direction: row;
}
#contents ul.price li:first-child {
	min-width: 230px;
}
ul.price li:first-child img {
	max-width: 100%;
}
.waku1 br.mobile,
h4 br.mobile {
	display: none;
}

/* inquiry */
able.inquiry th,
table.inquiry td {
	display: table-cell;
}
div.inquiry.error,
.thanx {
	margin: 2em auto 0px;
	min-height: calc(100vh - 290px);
}
	
table.inquiry.confirm th,
table.inquiry.confirm td {
	display: block;
	width: 100%;
}
	
div.inquiry #err_box {
	padding: 20px 50px;
}
	

ul.sitemap > li:first-child {
	padding: 20px 0 20px 30px;
	background-position: left 10px top 27px;
}
ul.sitemap > li:nth-child(n+2) {
	padding: 20px 0 20px 10px;
}
	
	
	
	
	
/* 削除しないこと
=========================================== */
}
