﻿@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
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,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
body {
    font-size:14px;
    color:#382400;
    font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
    line-height:1.6;
    background:#000;
}

#menu {
    overflow:hidden;
    width:1000px;
    margin:0 auto;
    background-image:url("../images/back2.jpg");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
}

#contents {
    overflow:hidden;
    width:1000px;
    margin:0 auto;
    background-image:url("../images/back1.jpg");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
}

#main {
    box-sizing: border-box;
    overflow:hidden;
    float:right;
    width:800px;
    padding:10px;
    margin-bottom:-32768px;
    padding-bottom:32768px;
}


#sub {
    box-sizing: border-box;
    overflow:hidden;
    float:left;
    width:200px;
    margin-bottom:-32768px;
    padding-bottom:32768px;
}

#sub img{
    width: 100%;
    margin-bottom:50px;
}

footer {
    box-sizing: border-box;
    width:980px;
    margin:0 auto;
}

section {
    margin-bottom:50px;
}

a {
    color:#13895f;
}
a:hover {
    color:#2fa279;
}

h1 {
    color:#fbfbfb;
    font-size:28px;
    line-height:1.2;
}
h1 a {
    color:#fbfbfb;
    text-decoration:none;
}
h1 a:hover {
    color:#85d1c6;
}

h2 {
    padding-left: 90px;
    margin-bottom:5px;
    font-size:23px;
    color:#ffccff;
}

h3 {
    margin-bottom:0.25em;
    padding:2px 5px;
    color:#000;
    font-size:16px;
    background:#333;
}

h4 {
    margin-bottom:0.25em;
    font-size:16px;
    color:#15adb3;
}

h5 {
    margin-bottom:0.25em;
    padding:2px;
    font-size:16px;
    border-left:5px solid #15adb3;
    background:#eee;
}

h6 {
    margin-bottom:0.25em;
    color:#382400;
    font-size:14px;
    font-weight:bold;
}

h7 {
    border-left: 18px solid #999;
    font-size:16px;
    color: #fff;
    text-align: center;
    margin: 20px;
    padding: 0 0 5px 30px;
}

p {
    text-align: center;
    max-width: 100%;
    margin:0 0 1px 0;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align:bottom;
}

em {
    font-weight:bold;
}

strong {
    font-weight:bold;
    color:#d45451;
}

pre {
    margin:1em 0;
    padding:1em;
}

blockquote {
    margin-bottom:1em;
    padding:1em;
    border-left:5px solid #ddd;
}

ul,ol,dl {
    margin:0 0 1em 0;
}
ul li {
    list-style:disc;
}
ol li {
    list-style:decimal;
}
li {
    margin-left:2em;
}

dt {
    margin-bottom:0.5em;
}
dt:before {
    content:"\0025a0";
}
dd {
    text-align:left;
    margin-bottom:1px;
    padding-left: 95px;
}

table {
    width:100%;
    margin-bottom:1em;
    border-collapse:collapse;
    background:#fff;
}
th {
    padding:10px;
    text-align:center;
    vertical-align:middle;
    background:#eee;
}
td {
    padding:10px;
    text-align:left;
    border:1px solid #ddd;
}

box {
    text-align:center;
    margin: 0 auto;
}
/*================================================
 *  ヘッダー
 ================================================*/
header {
    position:relative;
    background:#000;
}

header h1 {
    padding:10px;
}

.summary {
    margin:0;
    padding:10px;
    color:#ddd;
}

/*================================================
 *  グローバルナビゲーション
 ================================================*/
nav {
    overflow:hidden;
}

nav ul {
    margin:0;
    padding:0;
}
nav li {
    font-family:Times New Roman;
    list-style:none;
    margin:0;
    padding:0;
}
nav li a {
    font-size:16px;
    display:block;
    padding:16px;
    color:#fbfbfb;
    text-decoration:none;
    background:#1f2124;
    background-image:url("../images/button2.png");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
}
nav li a:hover {
    color:#ffff33;
    border-left: 8px solid #ffdbc9;
    background:#18191b;
    background-image:url("../images/button2-hover.png");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    transition:all 0.2s ease 0s;
}

/*================================================
 *  SNS
 ================================================*/
sns {
    clear:both;
}

.snsmenu {
    width:100%;
    height: auto;
    padding:30px 0;
    overflow:hidden;
    background:#000;
    text-align: center;
}
.snsmenu ul {
    position:relative;
    margin:0 auto;
    padding:0;
    letter-spacing: 3px;
}
.snsmenu li {
    position:relative;
    list-style:none;
    margin:0 auto;
    padding:0 20px;
    font-size:12px;
    text-align:center;
}
.snsmenu a {
    color:#cc66cc;
    text-decoration:none;
}
.snsmenu a:hover {
    color:#fbfbfb;
}


/*================================================
 *  フッター
 ================================================*/
footer {
    clear:both;
}

.footmenu {
    width:100%;
    height: auto;
    padding:20px 0;
    overflow:hidden;
    background:#111;
}
.footmenu ul {
    position:relative;
    float:left;
    left:50%;
    margin:0;
    padding:0;
}
.footmenu li {
    position:relative;
    left:-50%;
    float:left;
    list-style:none;
    margin:0;
    padding:0 20px;
    font-size:12px;
    text-align:center;
}
.footmenu a {
    color:#999;
    text-decoration:none;
}
.footmenu a:hover {
    color:#55ffff;
}

.copyright {
    clear:both;
    padding:20px 0;
    font-size:11px;
    text-align:center;
    color:#333e48;
    background:#000;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
    position:fixed;
    bottom:15px;
    right:15px;
}
.totop a {
    display:block;
    text-decoration:none;
}
.totop img {
    background:#6633ff;
}
.totop img:hover {
    background:#b384ff;
}

/*================================================
 *  クラス
 ================================================*/
.textL {
    text-align:left;
}

.textR {
    text-align:right;
}

.list {
    padding:0 0 0 0.5em;
}
.list li {
    margin:0;
    padding:0 0 0 15px;
    list-style:none;
    background:url(../images/check.png) 0 5px no-repeat;
}

.info dt {
    border-bottom:none;
}
.info dd {
    padding-bottom:1em;
    color: #ffcccc;
    font-size:14px;
}

.service {
    overflow:hidden;
    margin:10px -2% 0 0;
}
.service li {
    list-style:none;
    float:left;
    width:18%;
    margin:0 2% 10px 0;
}
.service li img {
    width:100%;
}

.staff {
    margin:10px -3% 0 0;
}
.staff div {
    float:left;
    width:31%;
    margin-right:2%;
}
.staff div img {
    width:100%;
    margin-bottom:5px;
}

/*================================================
 *  スライドショー
 ================================================*/
.slide {
    position:relative;
    width:100%;
    overflow:hidden;
    position:relative;
    margin-bottom:20px;
    padding-bottom:25px;
}

.slideInner {
    list-style:none;
    margin:0;
    padding:0;
}
.slideInner li {
    position:absolute;
    background:#fbfbfb;
    margin:0;
    padding:0;
}
.slideInner li img {
   width:100%;
}

.slidePrev {
     position:absolute;
     width:50px;
     height:60px;
     left:0;
     cursor:pointer;
     z-index:100;
}

.slideNext {
     position:absolute;
     display:block;
     width:50px;
     height:60px;
     right:0;
     cursor:pointer;
     z-index:100;
}

.controlNav {
     position:absolute;
     float:left;
     left:50%;
     bottom:0;
}
.controlNav span {
     position:relative;
     left:-50%;
     float:left;
     margin:5px;
     -webkit-border-radius:5px;
     -moz-border-radius:5px;
     border-radius:5px;
     width:10px;
     height:10px;
     overflow:hidden;
     background:#ddd;
     text-indent:-9999px;
     vertical-align:middle;
}
.controlNav span:hover {
     background:#ccc;
     cursor:pointer;
}
.controlNav span.current {
     background:#85d1c6;
}

/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:779px) {

    #menu {
       box-sizing: border-box;
       width:100%;
    background-image:url("../images/back2.jpg");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100% 100%;
    }


    #contents {
       box-sizing: border-box;
       width:100%;
    background-image:url("../images/back_phone.jpg");
    background-repeat: no-repeat;
    -moz-background-size: 100% 100%;
    background-size: 100%;
    }

    #main {
       float:none;
       width:100%;
    }

    #sub {
       float:none;
       width:100%;
    }

    footer {
       width:100%;
    }

    nav {
        display:block;
        position:relative;
        width:100%;
    }
    nav h3 {
        font-family:Times New Roman;
        cursor:pointer;
        margin-bottom:0;
        padding:12px;
        font-size:20px;
        color:#ddd;
        background:#000;
        background-image:url("../images/button1.png");
        background-repeat: no-repeat;
        -moz-background-size: 100% 100%;
        background-size: 100% 100%;
        border:none;
    }
    nav li a {
        padding:10px 30px;
    }

    #navBtn {
        display:inline-block;
        position:absolute;
        top:10px;
        right:10px;
        width:30px;
        height:30px;
        border-radius:5%;
        background:#555;
        filter:alpha(opacity=80);
        -moz-opacity: 0.8;
        opacity :0.8;
    }

    #navBtnIcon {
        display:block;
        position:absolute;
        top:50%;
        left:50%;
        width:14px;
        height:2px;
        margin:-1px 0 0 -7px;
        background:#ffdbc9;
        transition:.2s;
    }
    #navBtnIcon:before,
    #navBtnIcon:after {
        display:block;
        content:'';
        position:absolute;
        top:50%;
        left:0;
        width:14px;
        height:2px;
        background:#ffdbc9;
        transition:0.3s;
    }
    #navBtnIcon:before {
        margin-top:-6px;
    }
    #navBtnIcon:after {
        margin-top:4px;
    }
    #navBtn .close {
        background:transparent;
    }
    #navBtn .close:before,
    #navBtn .close:after {
        margin-top:0;
    }
    #navBtn .close:before {
        transform:rotate(-45deg);
        -webkit-transform:rotate(-45deg);
    }
    #navBtn .close:after {
        transform:rotate(-135deg);
        -webkit-transform:rotate(-135deg);
    }

   .totop {
        display:none !important;
    }

}

/*================================================
 *  ギャラリー
 ================================================*/
/*ギャラリー全体のコンテナー*/
#stage {
	position: relative;
	max-width: 650px;
	margin: 0 auto;
}
/*全サムネイルのコンテナー*/
#thumbs {
	margin-left:2%;
}
/*サムネイルの幅、ポインターを手のひら*/
#thumbs label img {
	width:18.5%;
	cursor: pointer;
}

#thumbs :hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

/*ラジオボタンを非表示に*/
#r1, #r2, #r3, #r4, #r5 {
	display: none;
}
/*表示写真の初期配置（全部透明に）とtransition設定*/
.photo {
	position: absolute;
	left: 0;
	top: 0;
}
.photo img {
	width:100%;
	opacity: 0;
	-webkit-transition: opacity 1s ease;
	transition: opacity 1s ease;
}

/*チェックされたサムネイルに相当する写真だけを表示*/
#r1:checked ~ #photo1 img, #r2:checked ~ #photo2 img, #r3:checked ~ #photo3 img, #r4:checked ~ #photo4 img, #r5:checked ~ #photo5 img {
	opacity: 1;
}