@charset "UTF-8";
/* CSS Document */

*{
	margin: 0;
	padding: 0;
}
.clearfix:after{
	content:"";
	display:block;
	clear:both;}
.clear{
	clear:both;
	}
body {
margin: 0;
  padding: 0;
  width: 100%;
    background:#fff;
	font-family:font-family: "sawarabi Mincho","ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif ;
	color:#333;
    font-size:1.6rem;
    line-height: 1.8;
}
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, 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,
figure, figcaption,
article, section, nav, header, footer {
  margin: 0;
  padding: 0;
}
html {
    Font-size:62.5%;/*10px*/
}

a{
	text-decoration:none;
color:darkolivegreen;
font-weight: 300;}
p{
    font-size:1.6rem;
    margin-top:12px;
}
@media screen and (min-width:640px) {
Font-size:1.5rem;
}
@media screen and (min-width: 1200px) {
Font-size:1.6rem;
}
@media screen and (min-width: 768px){
.br-sp {display: none; }
}

img {border:none;}

#wrapper{
	width:100%;
	}
#gara{
    width: 100%;
    background: url(img/back2.png) repeat;
    padding: 30px;
    z-index: 10;
    margin: 0 auto;
}

#main{
	margin:0 auto;
		width:96%;
    background:#fff;
		box-shadow:3px 3px 3px 0px rgba(204,204,204,0.4);
    box-shadow:  -12px 0px 7px -7px rgba(204,204,204,0.4);
	-webkit-box-shadow:3px 3px 3px 0px rgba(204,204,204,0.4),-12px 0px 7px -7px rgba(204,204,204,0.4);
	-moz-box-shadow:3px 3px 3px 0px rgba(204,204,204,0.4),-12px 0px 7px -7px rgba(204,204,204,0.4);
	}
h2{
    margin: 0 auto;
    text-align: center;
    padding-top: 20px;
}
h2 img{
    width: 96%;
    height: auto;
}
#main p{
    display: flex;
    justify-content: center;
    margin:30px auto;
    line-height: 2.5em;
}
.p2{
    width: 70%;
    display: block;
    margin:30px auto;
    line-height: 2.5em;
}
.p3{
    width: 600px;
    display: block;
    margin:30px auto;
    line-height: 2.5em;
}
figure{
    margin: 0 auto;
    margin-bottom: 50px;
    text-align: center;
}
figure img{
    width: 96%;
    height: auto;
}
.price{
    display: flex;
  align-items: center;
  justify-content: center;
    font-size:18px;
    text-decoration:underline dotted #ff0000;
    text-underline-offset: 7px;
    line-height: 2.2em;
    
}
h1{margin-top: 50px;
    padding-top:7px;
    text-align: center;
    font-style:normal;
    font-size:30px;    
}
h1 a{
     font-family: sans-serif;
    font-size:30px;
    color:#2f4f4f;
}
h1 a:hover{
    font-family: serif;
    font-size:24px;
    color:#ccc;
}


.btn{
    display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 500px;
    height: auto;
	margin: auto;
	padding: 1.4rem 2rem;
	font-weight: bold;
	background-image: linear-gradient(to right, #2a83a2 0%, #333631 100%);
	border-radius: 100vh;
	color: #fff;
	border: 2px solid #fff;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, .2);
	transition: 0.5s;
}
.btn:hover{
    color: #fff;
	background-image: linear-gradient(to left, #2a83a2 0%, #333631 100%);
}
#attention{
    border: 1px solid #666;
    margin: 0 auto;
    width:60%;
    padding: 0em 1em 0.3em 1em;
}
#attention p{
    margin: 0;
    padding: 0;
    margin: 0 auto;
    padding: 5px;
    line-height: 1.5em;
}
#linen{
    display: flex;
    justify-content: center;
}
#linen h2{
    display: inline-block;
    border-left:5px solid #666;
    padding: 0.25em 0.5em;
   margin-top: 50px;
    margin-bottom: 30px;
    font-size:24px;
    line-height: 1.5rem;
}
ul{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: 10px auto;
    width: 80%;
}
ul li{
    list-style: none;
   margin: 20px auto;
    margin-bottom: 0;
}
#linen p{
    display: block;
    line-height: 1.5em;
}

#gentei{
    width: 70%;
    border: 1px solid #666;
    padding: 20px;
    margin: 0 auto;
}
#gentei h3{
    margin-left: 30px;
    display: inline-block;
    border-left:3px solid #666;
    padding: 10px;
}
#gentei p{
    margin: 0;
    padding: 0;
    margin: 0 auto;
    padding: 5px;
    line-height: 1.5em;
}
.howto{
     justify-items: center;
  align-items: center;
display: grid;
    grid-template-columns: repeat(2, 1fr); /* 3つのカラムを作成 */
    grid-template-rows: auto;
    gap: 30px; /* カード間の隙間 */
}
.card{
    grid-row: span 2;
    display: grid;
    grid-template-rows: subgrid; /* ここでSubgridを使用 */
    grid-row: span 1; /* 1行分のスペースを占めるように調整 */
    gap:10px;
}
footer{
    margin-top: -30px;
	width:100%;
	height:auto;
	text-align:center;
	background:#fff;
box-shadow:1px 5px 7px 7px rgba(204,204,204,0.4); }
footer p{
	padding-top:20px;
	color:#666;}
	
