﻿@import 'https://fonts.googleapis.com/css?family=Parisienne|Lora|Noto Serif JP: 300';

@font-face
{
font-family: はんなり明朝;
src: url('https://cdn.leafscape.be/hannari/hannari_web.woff2')
     format("woff2");
}

*{
margin:0;
padding:0;
list-style:none;
box-sizing:border-box;
}

body{
margin:2.85em 0;
background:#fff;
font-family:'Lora', "メイリオ", serif;
font-size:11px;
font-weight:normal;
letter-spacing:1.65px;
line-height:1.95;
text-align:justify;
word-break:break-all;
color:#555;
overflow-x:hidden;
}

html:before, html:after,
body:before, body:after{
content:'';
display:block;
background:#f2f2f2;
position:fixed;
z-index:2;
}

html:before{
height:12px; 
width:100vw;
top:0;
left:0;
}

html:after{
width:12px;
height:100vh;
top:0;
right:0;
}

body:before{
height:12px;
width:100vw;
bottom:0;
left:0;
}

body:after{
width:12px;
height:10000px;
top:0;
left:0;
}

a{
text-decoration:none;
color:#333;
border-bottom:#eee solid 2px;
}

mark{
background:linear-gradient(transparent 40%, #fdeff2 40%);
 background:-webkit-linear-gradient(transparent 40%, #fdeff2 40%);
}

header{
margin:0 4.75em;
text-align:center;
}

h1{
margin:0 0;
padding:0 0;
font-family:'Parisienne', serif;
font-size:22px;
text-align:center;
color:#555;
text-transform:capitalize;
position:relative;
}


h1 img{
margin:0 auto .85em;
width:200px;
display:block;
}

aside{
margin:3.95em auto;
padding:1.95em 2.15em;
max-width:400px;
width:85%;
background:#f2f2f2;
font-size:10px;
position:relative;
}

aside div{
padding:.15em .25em;
background-image:linear-gradient(#fff 1px, transparent 1px);
background-size:2.2em 2.2em;
line-height:2.2em;
}

aside:before, aside:after,
aside div:before, aside div:after{
content:'';
width:26px;
height:26px;
background:#fff;
border-radius:50%;
position:absolute;
}

aside:before{
top:-10px;
left:-11px;
}

aside:after{
top:-10px;
right:-11px;
}

aside div:before {
bottom:-10px;
left:-11px;
}

aside div:after {
bottom:-10px;
right:-11px;
}

main{
max-width:500px;
margin:0 auto;
padding:0 4.35em;
}

section{margin:1.85em 0;}

.thumb{
margin:2.25em auto 3.95em;
width:100%;
display:flex;
 display:-webkit-flex;
justify-content:space-between;
 -webkit-justify-content:space-between;
flex-wrap:wrap;
 -webkit-flex-wrap:wrap;
}

.thumb li{
margin:1.75em 0;
width:70px;
height:70px;
display:block;
text-align:center;
}

.thumb li a img{
max-width:100%;
width:70px;
height:70px;
display:block;
border:1px solid #edf0f4;
object-fit:cover;
}

h2{
margin:0 0 1.3em;
font-family:'Parisienne', serif;
font-size:18px;
text-transform:capitalize;
}

h2 img{
margin:0 0 .25em;
width:200px;
display:block;
}

.nv{font-size:10pt; margin-bottom:4em; margin-top:4em; font-family:"メイリオ", serif;}

.kj{
margin:1.45em 0;
padding:1.35em 1.6em 1.35em 6.5em;
background:#f2f2f2;
position:relative;
}

.kj a{border-bottom:#fff solid 2px;}

.img{
top:50%;
left:.75em;
transform:translateY(-50%);
width:55px;
height:55px;
background-size:270px auto;
background-position:center;
background-repeat:no-repeat;
border:#fff solid 2px;
border-radius:50%;
object-fit:cover;
position:absolute;
}

h3{
font-family: 'Lora',はんなり明朝, serif;
font-size:12.5px;
line-height:1.35;
margin-bottom:0.35em;
}

h4{
margin-top:1em;
padding:0 .35em;
display:inline-block;
background:#fff;
font-size:11px;
font-weight:normal;
}

h5{
font-family: 'Lora',はんなり明朝, serif;
font-size:12.5px;
line-height:1.35;
margin-bottom:0.35em;
border-bottom:#fff solid 2px;
display: inline-block;
}


nav{
margin:1.65em 0;
text-align:center;
}

.pg{
margin:3.65em 0;
width:100vw;
display:flex;
 display:-webkit-flex;
justify-content:flex-start;
 -webkit-justify-content:flex-start;
}

.pg li{
padding:.45em 0;
background:#f2f2f2;
text-align:center;
border-left:#fff solid 1px;
flex-grow:1;
 -webkit-flex-grow:1;
}

nav ul li a{border-bottom:none;}

.t_pg li{
margin:0 .5em;
padding:.15em .7em;
display:inline-block;
background:#f2f2f2;
}

select, input[type], textarea{
background:#eee;
font-family:'Lora', 'Noto Serif JP', '游明朝', 'Yu Mincho', 'YuMincho', serif;
font-size:11px;
font-weight:normal;
letter-spacing:1.65px;
line-height:1.95;
text-align:justify;
word-break:break-all;
color:#333;
margin:5px auto;
padding:4px 7px;
width:auto;
height:27px;
border:none;
border-radius:0;
text-shadow:none;
box-shadow:none;
outline:none;
resize:vertical;
vertical-align:middle;
}

input[type=submit]{
cursor:pointer;
text-transform:lowcase;
}

.nm input[type]{margin:5px 3px;}

.nm input[type=text]{width:50px;}

textarea{
width:100%;
}




::selection{background:#f2f2f2;}

::-moz-selection{background:#f2f2f2;}

hr{
    height: 0;
    margin:70px auto;
    padding: 0;
    border: 0;
}

.hr-001{
    height: 40px;
    width: 40px;
    background-image:url(img/001.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-002{
    height: 40px;
    width: 40px;
    background-image:url(img/002.gif);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-003{
    height: 40px;
    width: 40px;
    background-image:url(img/003.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-004{
    height: 40px;
    width: 40px;
    background-image:url(img/004.jpg);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-005{
    height: 40px;
    width: 40px;
    background-image:url(img/005.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-006{
    height: 40px;
    width: 40px;
    background-image:url(img/006.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-007{
    height: 40px;
    width: 40px;
    background-image:url(img/007.gif);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-008{
    height: 40px;
    width: 40px;
    background-image:url(img/008.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-009{
    height: 40px;
    width: 40px;
    background-image:url(img/009.gif);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-010{
    height: 40px;
    width: 40px;
    background-image:url(img/010.gif);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-011{
    height: 40px;
    width: 40px;
    background-image:url(img/011.gif);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}

.hr-012{
    height: 40px;
    width: 40px;
    background-image:url(img/012.png);
    background-repeat:no-repeat;
    background-position:50% 0;
    border-radius: 50%;
}


#formWrap {
	width:100%;
	margin:9em auto 0;
	color:#555;
	line-height:120%;
	font-size:90%;
	text-align:center;
}
table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;

}
table.formTable th{
	font-weight:normal;
	background:#efefef;
	text-align:left;
}



/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:568px) {
#formWrap {
	width:100%;
	margin:10em auto 0;

}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
input[type="text"], textarea {
	width:auto;
	height:27px;
	padding:5px;
	font-size:90%;
	display:inline;
}
select{width:30%;}

input[type="submit"], input[type="reset"], input[type="button"] {
	width:auto;
	height:27px;
}
}