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

/*===== reset css =====
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
=======================*/

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, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}

body {
line-height:1;
}

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

nav ul {
list-style:none;
}

blockquote, q {
quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}

a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}

/* change colours to suit your needs */
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}

/* change colours to suit your needs */
mark {
background-color:#ff9;
color:#000; 
font-style:italic;
font-weight:bold;
}

del {
text-decoration: line-through;
}

abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}

table {
border-collapse:collapse;
border-spacing:0;
}

/* change border colour to suit your needs */
hr {
display:block;
height:1px;
border:0;   
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}

input, select {
vertical-align:middle;
}

/*=== その他リセット ===*/
html{
font-size: 16.5px;
}

table {
border-collapse: separate;
width: 100%;
}

ul,
ol{
list-style: none;
}

/*=== リンク設定===*/
a{
margin: 0;
padding: 0;
text-decoration: none;
outline: 0;
vertical-align: baseline;
background: transparent;
font-size: 100%;
font-weight: 600;
}

a:link,
a:visited{
color: #F87706;
}

a,
a::before,
a::after,
span{
-webkit-transition: 0.2s;
-moz-transition: 0.2s;
-o-transition: 0.2s;
-ms-transition: 0.2s;
transition: 0.2s;
}

a:hover,
a:active{
text-decoration: underline;
}

/*--- Clearfix ---*/
.clearfix::after {
content: '';
display: block;
clear: both;
}

/*=== 全体 ===*/
body{
font: 100%/1.8 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
color:#333;
background: #FEF1E6 url(../images/bkpattern.jpg) repeat !important;
background-size: 120px 120px !important;
-webkit-text-size-adjust: 100%;
letter-spacing: 0.1em;
}

body *,
body *::before,
body *::after{
box-sizing: border-box;
}

#wrapper_wrapper{
position: relative;
max-width: 1200px;
width: 100%;
margin: 0 auto;
}

.flex{
display: -webkit-flex; /* Safari */
display: flex;
-webkit-flex-wrap: wrap; /* Safari */
flex-wrap: wrap;
}

/*--- drawer ---*/
.drawer-nav{
left: auto !important;
width: 20% !important;
background: rgba(255, 255, 255, .7) !important;
border: hidden !important;
box-sizing: border-box !important;
box-shadow: 0 1px 5px rgba(0, 0, 0, .2);
}

.drawer-menu > ul{
padding: 25px !important;
}

.drawer-menu li + li,
.drawer-menu li > ul{
border-top: 1px solid #fff;
}

.drawer-menu li.last,
.drawer-menu > ul > li:last-child{
border-radius: 0 0 20px 20px;
overflow: hidden;
}

.drawer-brand + li{
border-top: hidden !important;
}

.drawer-brand,
.drawer-menu a{
line-height: 1.7 !important;
padding: .5em .75em !important;
text-decoration: none !important;
}

.drawer-brand{
font-size: .8rem !important;
padding-left: 0 !important;
color: #333 !important;
border-top: hidden !important;
border-bottom: 2px solid #333;
}

.drawer-brand:nth-child(n + 2){
padding-top: 25px !important;
}

.drawer-menu a{
display: block;
background: rgba(254, 241, 230, .8);
}

/*
.drawer-menu a:not(.drawer-dropdownBt):visited,
#post a:visited{
color: #C38CE2;
}*/

.drawer-menu a:not(.drawer-dropdownBt):hover{
color: #F87706 !important;
text-decoration: underline !important;
background: rgba(254, 241, 230, .6);
}

.drawer-dropdown > a{
position: relative;
padding-right: 2em !important;
background: #F87706 !important;
color: #fff;
}

.drawer-dropdown > a::before{
display: block;
content: '';
position: absolute;
top: 50%;
right: .75em;
transform: translate(0, -50%) rotate(-45deg);
margin-top: -2px;
width: 10px;
height: 10px;
border-left: 2px solid #fff;
border-bottom: 2px solid #fff;
}

.drawer-dropdown.open > a,
.drawer-dropdown > a:hover{
background: rgba(248, 119, 6, .8) !important;
}

/*=== mainContent ===*/
#wrapper{
padding: 25px 0 25px 25px;
}

#wrapper > * + *{
margin-top: 25px;
}

/*--- header ---*/
#header,
#content,
#footer{
border-radius: 20px;
padding: 25px;
box-shadow: 1px 1px 5px rgba(0, 0, 0, .2);
}

#header,
#footer{
background: rgba(255, 255, 255, .7);
}

#header h2{
position: relative;
padding-left: 1.5em;
}

#header h2::after{
position: absolute;
content: "";
display: block;
top: 50%;
left: 0;
transform: translate(0, -50%);
width: 8px;
height: 100%;
background: #F99238;
border-radius: 3px;
}

#header h2 a{
font-family: 'arial unicode ms';
display: inline-block;
color: #333;
font-size: 1rem;
text-decoration: none;
}

/*--- content ---*/
#content{
background: #fff;
}

#content_header h1{
line-height: 1.5;
font-size: 2rem;
padding: 5px 25px 20px;
border-bottom: 2px solid #F99238;
border-radius: 20px 20px 0 0;
}

#main_img{
position: relative;
width: 100%;
height: auto;
overflow: hidden;
border-radius: 0 0 20px 20px;
}

#main_img::before{
content: "";
display: block;
padding-top: 50%;
}

.main_img_inner{
position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;
}

#main_img img{
position: relative;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
max-width: 100%;
height: auto;
vertical-align: bottom;
}

/*--- post ---*/
#post{
padding: 25px 0;
}

#post > * + *{
margin-top: 25px;
}

/* 見出し */
#post h2,
#post h3,
#post h4{
position: relative;
font-weight: bold;
padding: 20px 25px;
}

#post h2{
font-size: 1.7rem;
background: #FEF1E6 url(../images/bkpattern.jpg) repeat !important;
background-size: 120px 120px !important;
border-radius: 20px;
text-shadow: 1px 1px 5px rgba(0, 0, 0, .2);
box-shadow: 1px 1px 5px rgba(0, 0, 0, .2) inset;
}

#post h3{
left: -25px;
font-size: 1.4rem;
border-left: 6px solid #F99238;
}

#post h3,
#post h3::after{
background: rgba(254, 241, 230, .8);
}

#post h3::after{
position: absolute;
display: block;
content: "";
right: -25px;
bottom: 0;
width: 25px;
height: 100%;
border-radius: 0 20px 20px 0;
}

#post h4{
left: -25px;
font-size: 1.1rem;
border-left: 6px solid #bbb;
}

/* リスト */
#post ul,
#post ol{
background: rgba(254, 241, 230, .6);
padding: 25px;
border-radius: 20px;
overflow: hidden;
box-shadow: 1px 1px 5px rgba(0, 0, 0, .2);
}

#post li{
position: relative;
display: block;
padding: 0 0 0 1.3em;
}

#post li + li{
margin-top: 1em;
}

#post li::after,
#post li::before{
position: absolute;
content: "";
display: block;
top: 50%;
left: -25px;
transform: translate(0, -50%);
width: 25px;
height: 25px;
line-height: 25px;
text-align: center;
}

#post ul li::after{
left: 0;
width: 0;
height: 0;
margin-left: -6px;
border: 6px solid transparent;
border-right-color: #F99238;
border-bottom-color: #F99238;
transform: translate(0, -50%) rotate(-45deg);
}

#post ol{
counter-reset: olNum;
}

#post ol li::after{
background: #F99238;
border-radius: 0 20px 20px 0;
}

#post ol li::before{
counter-increment: olNum;
content: counter(olNum) "";
font-size: .8rem;
font-weight: bold;
color: #fff;
z-index: 1;
}

/*--- footer ---*/
#footer p{
font-size: .8rem;
text-align: center;
}

/* 1250px以以下
------------------------------------------------------------*/
@media only screen and (max-width: 1250px){
	#wrapper {
	padding: 25px;
	}
}

/* 901px以上
------------------------------------------------------------*/
@media only screen and (min-width: 901px){
	
	/*--- drawer ---*/
	/* styled scrollbars */
	.iScrollVerticalScrollbar {
	width: 15px;
	top: 5px;
	left: 0;
	bottom: 5px;
	border-left: 5px solid #FEF1E6;
	}
	
	/* do not fix */
	.iScrollVerticalScrollbar {
	overflow: hidden;
	position: absolute;
	z-index: 9999;
	}
	
	.iScrollVerticalScrollbar .iScrollIndicator {
	width: 5px;
	}
	
	.iScrollIndicator {
	position: absolute;
	background: #FFA593;
	border-radius: 5px;
	box-sizing: border-box;
	}
	
	.drawer-hamburger,
	.drawer-nav h6{
	display: none !important;
	}
	
	.drawer-nav{
	top: 0 !important;
	}
	
}

/* 900px以下から
------------------------------------------------------------*/
@media only screen and (max-width: 900px){
	
	/*--- drawer ---*/
	.drawer-nav {
	left: 0 !important;
	width: 100% !important;
	background: #fff !important;
	box-shadow: none;
	}
	
	.drawer-nav h6{
	position: relative;
	display: block;
	padding: 20px;
	text-align: center;
	font-size: .8rem;
	letter-spacing: .5em;
	z-index: 1;
	}
	
	.drawer-nav h6::after{
	position: absolute;
	content: "";
	display: block;
	top: 0;
	left: 20px;
	width: calc(100% - 40px);
	height: 50%;
	border-bottom: 2px solid #F99238;
	z-index: -1;
	}
	
	.drawer-nav h6 span{
	display: inline-block;
	padding: 0 .75em;
	background: #fff;
	}
	
	.drawer-menu > ul{
	padding: 0 20px 20px !important;
	}
	
	/* drawer-hamburger */
	.drawer-hamburger{
	display: block !important;
	top: 0 !important;
	width: 55px !important;
	height: 55px !important;
	padding: 0 !important;
	background: rgba(0, 0, 0, .7) !important;
	box-sizing: border-box !important;
	}
	
	.drawer-hamburger-icon{
	position: absolute !important;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 30px !important;
	margin-top: 0 !important;
	background: #fff !important;
	}
	
	.drawer-hamburger-icon,
	.drawer-hamburger-icon::before,
	.drawer-hamburger-icon::after{
	background: #fff !important;
	height: 3px !important;
	border-radius: 3px !important;
	}
	
	.drawer-open .drawer-hamburger-icon{
	background: transparent !important;
	}
	
	.drawer-menu a {
	background: rgba(254, 241, 230, 1);
	}
	
	.drawer-menu a:hover{
	background: rgba(254, 241, 230, 1);
	}
	
	.drawer-dropdown.open > a, .drawer-dropdown > a:hover {
	background: rgba(248, 119, 6, 1) !important;
	}
	
	/*--- mainContent ---*/
	#wrapper {
	padding: 10px;
	}
	
	#header, #content, #footer{
	padding: 20px;
	}
	
	#content_header h1{
	padding: 0 0 15px;
	}
	
	#post {
	padding: 25px 0 20px;
	}
	
	#post h2, #post h3, #post h4 {
	padding: 15px 20px;
	}
	
	#post h3,
	#post h4{
	left: -20px;
	}
	
	#post ul, #post ol{
	padding: 20px;
	}
	
	#post li::after, #post li::before{
	left: -20px;
	}
	
}

