@charset "UTF-8";

h2.toppage {
    margin: 0.5em 0em 0em;
    text-align: left;
    border-bottom: 1px white solid;
    padding: 0 1em 0.5em;	
}

div.navi_contents {
	background-color:white;
	padding: 0.5em 0;
    margin: 2em 0 0;
	text-align: center;
}
ul.navi_drawer {
padding:0!important;
list-style: none;

}
.navi_drawer li {
  display: inline-block;
  width: 20%;
  text-align:center;
}

.navi_drawer li a {
    display: inline-block;
    padding: 0em 0em;
    text-decoration: inherit;
    transition: background .6s;
}
.navi_drawer li a:hover {
	background: rgba(255,255,255,.3);
}

/* スマホドロワーメニュー------------------------------------------------ */
#navTgl:checked ~ .contents {
	transform: translateX(250px);
}

/* :::::: toggle button :::::: */
#navTgl {
	display: none;
}
label {
	cursor: pointer;
	position: fixed;
	top: 0;
	left: 0;
}
.open {
	z-index: 2;
	width: 48px;
	height: 48px;
	background: #FFF310;
	transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	border-radius: 2em;
	top: 2em;
left: 2em;
}
.open::before,
.open::after {
	content: "";
}
.open span,
.open::before,
.open::after {
	content: "";
	position: absolute;
	top: calc(50% - 1px);
	left: 30%;
	width: 40%;
	border-bottom: 2px solid black;
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
	transform: translateY(-8px);
}
.open::after {
	transform: translateY(8px);
}
.close {
	z-index: 1;
	width: 100%;
	height: 100%;
	pointer-events: none;
	transition: background .6s;
}
#navTgl:checked + .open {
	background: #DDD;
	transform: translateX(250px);
}
#navTgl:checked + .open span {
	transform: scaleX(0);
}
#navTgl:checked + .open::before {
	transform: rotate(45deg);
}
#navTgl:checked + .open::after {
	transform: rotate(-45deg);
}
#navTgl:checked ~ .close {
	pointer-events: auto;
	background: rgba(169,164,158,.3);
}

/* :::::: drawer menu :::::: */
.menu {
	z-index: 1;
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	width: 250px;
	height: 100%;
	margin: 0;
	padding: 10px;
	box-sizing: border-box;
	background: rgba(0,0,0,.6);
	transform: translateX(-100%);
	transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	font-weight:bold;
}
.menu h2,
.menu a {
	color: white;
}
.menu h2 {
	text-align: left;
}
.menu ul {
	margin: 0;
	padding: 0;
}
.menu li {
	font-size: 1em;
	line-height: 1.4;
}


/*  
.menu li:not(:first-child) {
	border-top: 1px solid rgba(255,255,255,.6);
}
*/
.menu li {
	border-bottom: 1px solid rgba(255,255,255,.6);

}
.menu li:first-child {
	border-bottom: 1px solid rgba(255,255,255,.6);

}

.menu a.toppage {
    display: block;
    padding: 1em 0em;
    text-decoration: inherit;
    transition: background .6s;
}
.menu a.toppage:hover {
	background: none;
}


.menu a {
	display: block;
	padding: 1em 2em;
	text-decoration: inherit;
	transition: background .6s;
}
.menu a:hover {
	background: black;
}
#navTgl:checked ~ .menu {
	transform: none;
}

/* :::::: header, footer :::::: */
header,
footer {
	box-sizing: border-box;
	text-align: center;
}
header .logo,
footer .copyright {
	margin: 0;
	color: #553969;
	font-family: "Ubuntu Condensed", sans-serif;
	font-weight: 400;
	line-height: 120px;
	letter-spacing: .1em;
}
header {
	position: relative;
	margin-bottom: 40px;
}
footer {
	background: rgba(255,255,255,.6);
}
footer small {
	font-size: 1em;
}

/* :::::: article :::::: */
article {
	width: 100%;
	max-width: 647px;
	margin: 0 auto 100px;
	padding: 0 10px;
	box-sizing: border-box;
}
article h1 {
	width: 7em;
	height: 7em;
	margin: 0 auto;
	font-size: 1em;
	line-height: 7em;
	font-weight: normal;
	text-align: center;
	background: rgba(0,0,0,.05);
	border-radius: 50%;
}
section {
	margin: 0em 0;
}
section h2 {
	margin: 0 0 .6em;
}
figure {
	position: relative;
	margin: 0;
	padding-bottom: 3.6em;
}
figure img {
	max-width: calc(100% - 10px);
	margin-bottom: .8em;
	padding: 5px;
	vertical-align: middle;
	background: rgba(255,255,255,.6);
}
figcaption {
	font-size: .8em;
}
section .btn {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 1em 2em;
	color: white;
	background: lightSeaGreen;
	text-align: center;
	text-decoration: inherit;
	transition: background .3s;
}
section .btn:hover {
	background: indianRed;
}



/* SNS ----------------------------------------------------------------*/


/* ボタン全体 */
.flowbtn8{
    border-radius: 50%;
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    font-size: 20px;
    text-decoration: none;
    transition: .5s;
    margin: 0.2em 0.1em 0.1em;
    padding: 0.2em 0 0;
}
/* ボタンマウスホバー時のテキスト指定 */
.flowbtn8:hover{
color:#fff!important;
}
/* アイコンをど真ん中に */
.flowbtn8 i{
position:absolute;
top:50%;
left:50%;
-ms-transform:translate(-50%,-50%);
-webkit-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
/* Twitter */
.flowbtn8.fl_tw2{
border:solid 1px #DDD;
background:#DDD;
color:#FFF;
}
/* Twitterマウスホバー時 */
.flowbtn8.fl_tw2:hover{
border:solid 1px #333;
background:#333;
}
/* Instagram */
.flowbtn8.insta_btn2 {
border:solid 1px #DDD;
background:#DDD;
color:#FFF;
}
/* Instagramマウスホバー時 */
.flowbtn8.insta_btn2:hover{
border:solid 1px #333;
background:#333;
}
/* Facebook */
.flowbtn8.fl_fb2{
border:solid 1px #DDD;
background:#DDD;
color:#FFF;
}
/* Facebookマウスホバー時 */
.flowbtn8.fl_fb2:hover{
border:solid 1px #333;
background:#333;
}
/* Feedly */
.flowbtn8.fl_fd2{
border:solid 1px #6cc655;
color:#6cc655;
font-size:28px;
}
/* Feedlyマウスホバー時 */
.flowbtn8.fl_fd2:hover{
border:solid 1px #6cc655;
background:#6cc655;
}
/* Pocket */
.flowbtn8.fl_pk2{
border:solid 1px #ef3f56;
color:#ef3f56;
font-size:32px;
}
/* Pocketマウスホバー時 */
.flowbtn8.fl_pk2:hover{
border:solid 1px #ef3f56;
background:#ef3f56;
}
/* はてブ */
.flowbtn8.fl_hb2{
border:solid 1px #1ba5dc;
color:#1ba5dc;
font-size:25px;
}
/* はてブマウスホバー時 */
.flowbtn8.fl_hb2:hover{
border:solid 1px #1ba5dc;
background:#1ba5dc;
}
/* YouTube */
.flowbtn8.fl_yu2{
border:solid 1px #fc0d1c;
color:#fc0d1c;
font-size:28px;	
}
/* YouTubeマウスホバー時 */
.flowbtn8.fl_yu2:hover{
border:solid 1px #fc0d1c;
background:#fc0d1c;
}
/* LINE */
.flowbtn8.fl_li2{
border:solid 1px #00c300;
color:#00c300;
font-size:35px;
}
/* LINEマウスホバー時 */
.flowbtn8.fl_li2:hover{
border:solid 1px #00c300;
background:#00c300;
}
/* お問い合わせ */
.flowbtn8.fl_ma2{
border:solid 1px #DDD;
background:#DDD;
color:#FFF;
}
/* お問い合わせマウスホバー時 */
.flowbtn8.fl_ma2:hover{
border:solid 1px #333;
background:#333;
}
/* ulタグの内側余白を０にする */
ul.snsbtniti{
padding:0;
list-style: none;
margin: 0.5em auto 0;
}
/* ボタン全体の位置 */
.snsbtniti{
display:flex;
flex-flow:row wrap;
justify-content:space-around;
}
/* ボタン同士の余白 */
.snsbtniti li{
flex:0 0 0%;
text-align:center!important;
margin: 0 0.2em 0 0;
}

img.icon_drawer {
	width:47px;
	height:47px;
}
img.icon {
	width:43px;
	height:43px;
}


img.icon_drawer:hover {
	opacity: 0.5 ;
}
