/*! HTML5 Boilerplate v4.3.0 | MIT License | https://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}






/* ==========================================================================
   Author's custom styles
   ========================================================================== */

/* ライトボックスプラグインCSS */
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#fff;}
#colorbox{outline:0;}
    #cboxContent{margin-top:32px; overflow:visible; background:#000;}
        .cboxIframe{background:#fff;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#000; padding:1px;}
        #cboxLoadingGraphic{background:url(../img/loading.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#000;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}

        /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
        #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; text-indent:-9999px; width:20px; height:20px; position:absolute; top:-20px; background:url(../img/controls.png) no-repeat 0 0;}
        
        /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
        #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

        #cboxPrevious{background-position:0px 0px; right:44px;}
        #cboxPrevious:hover{background-position:0px -25px;}
        #cboxNext{background-position:-25px 0px; right:22px;}
        #cboxNext:hover{background-position:-25px -25px;}
        #cboxClose{background-position:-50px 0px; right:0;}
        #cboxClose:hover{background-position:-50px -25px;}
        .cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
        .cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
        .cboxSlideshow_on #cboxSlideshow:hover{background-position:-100px -25px;}
        .cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
        .cboxSlideshow_off #cboxSlideshow:hover{background-position:-75px -25px;}


/* ヘッダーフッター固定処理 */

body{
		background-color: #E5DDCA;
}

#header_back,
header{
	display: block;
	position: fixed !important;  
	position: absolute;  
	top: 0;  
	left: 0;  
	width: 100%;  
	height: 80px; 
	overflow: hidden;
}

header{
	z-index: 10;
	padding: 20px 30px 0px 30px;
	height: 60px; 
}

#header_back{
	background: #FFF url("../img/back.jpg");
	box-shadow: 0px 0px 18px rgba(0,0,0,0.4);
	-moz-box-shadow: 0px 0px 18px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 18px rgba(0,0,0,0.4);
    
     filter:alpha(opacity=65);
     -moz-opacity:0.65;
     -khtml-opacity: 0.65;
     opacity:0.65;
     z-index: 5;
}

footer {  
	position: fixed !important;  
	position: absolute;  
	bottom: 0;  
	left: 0;  
	width: 100%;  
	height: 16px;
	overflow: hidden; 
	background-color: #D3C8B2;
}

#main_contents{
	padding: 100px 30px 80px 30px;
}


/* 共通CSS設定 */

html{
	color: #423023;
	font-size:0.75em;
	letter-spacing: 0.1em;
}

a,
a:visited{
	color: #423023;
}

a:hover{
	color: #B71111;
}

h1,h2{
	font-size:1.15em;
}

section{
	margin: 3em 0 1.5em 0;
}


/* ヘッダ */

#header_title{
	float: left;
	letter-spacing: 0.15em;
}

#header_title a{
	text-decoration: none;
}

#header_title h1{
	margin: 0;
	font-size:1.2em;
}

#header_title h2{
	margin: 0;
	font-size:0.8em;
	color: #896146;
	font-weight: normal;
}

#header_title .color_red{
	color: #B71111;
}

#header_navigation {
	display: block;
	text-align: right;
	margin-right: 30px;
	padding-top: 34px;
	padding-right: 30px;
	font-size:0.8em;
}

#header_navigation ul li{
	display: inline-block;
	margin: 0px 2px 0px 2px;
}

#header_navigation a{
	display: inline-block;
	padding : 0 2em 0 2em;
	text-decoration: none;
	font-weight: bold;
	text-align: center;
}

#header_navigation a:hover,
#header_navigation .thispage{
	border-bottom: solid 6px #B71111;
}


/* フッター */

footer p{
	display: block;
	margin: 2px 0 0 30px;
	letter-spacing: 0em;
	font-size:1em;
}

#footer_gotop{
	float: right;
	margin: 0 30px 0 0;
}

#footer_gotop a{
	text-decoration: none;
	letter-spacing: 0em;
	font-weight: bold;
	font-size:0.8em;
}


/* ギャラリー */

#main_contents .sakuhin ul{
	list-style: none;
	padding: 0;
	
}

#main_contents .sakuhin ul li{
	display: inline-block;
	margin: 0 10px 3em 10px;
	vertical-align: top;
	background-color: #FFF;
	padding: 8px 8px 18px 8px;
	border: solid 1px #FFF;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	-moz-box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	font-size:0.8em;
}

#main_contents .sakuhin ul li a{
	text-decoration: none;
}


/* お知らせ */

.clear_both{
	clear: both;
}


.info{
	display: block;
	height: auto;
	clear: both;
}


.info .info_rightside{
	clear: both;
	float: left;
	width: 450px;
	margin: 2em 0 2em 220px;
}

.info .info_leftside{
	float: left;
	margin: 2em 0 2em -670px;
}

.info img{
	border: solid 5px #FFF;
	border-radius: 5px;
	margin: 5px 2px;
	vertical-align: top;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	-moz-box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 2px 2px 3px rgba(0,0,0,0.4);
}

/* 啓心塾 */

#contents table.style{
	width: 400px ;
	border-collapse: collapse;
	border: 1px solid;
}

#contents table.style tr td{
	text-align: center;
	border-collapse: collapse;
	border: 1px solid;
	height: 30px;
	
}

.tategaki{
	width: 2em;
	padding: 0.5em;
}



/* お問い合わせフォーム */

.inputs i{
	color: #B71111;
	font-style: normal;
	letter-spacing: 0em;
	font-weight: bold;
}

.inputs label{
	margin: 2em 0 0 0;
	display: block;
	font-weight: bold;
}


#form_button img{
	margin: 0 2em 0 2em;
	border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

.inputs{
	list-style: none !important;
}






/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (min-width: 35em) {
    /* Style adjustments for viewports that meet the condition */
}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}


