/*!
 * Start Bootstrap - Stylish Portfolio Bootstrap Theme (http://startbootstrap.com)
 * Code licensed under the Apache License v2.0.
 * For details, see http://www.apache.org/licenses/LICENSE-2.0.
 */

/* Global Styles */

html,
body {
    width: 100%;
    height: 100%;
}

body {
    font-family: 'Vollkorn',"Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro",  "ＭＳ ゴシック", sans-serif;
}

hr{
  margin-bottom:5em;
}

a:hover img{
    opacity: 0.8;
}

br.pc{
  display: block;
}

br.sp{
  display: none;
}



/*********************
text alignment
*********************/
.text-left{
  text-align: left;
}

.text-center{
  text-align: center;
}

.text-right{
  text-align: right;
}

/*********************
Typography
*********************/
.cred{
  color: red;
}

.caution{
  color: #aaa;
}

/*-------------------------------------------------
  Margin-top control
---------------------------------------------------*/
.mt0{
  margin-top: 0px !important;
}

.mt5{
  margin-top: 5px !important;
}

.mt10{
  margin-top: 10px !important;
}

.mt15{
  margin-top: 15px !important;
}

.mt20{
  margin-top: 20px !important;
}

.mt25{
  margin-top: 25px !important;
}

.mt30{
  margin-top: 30px !important;
}

.mt35{
  margin-top: 35px !important;
}

.mt40{
  margin-top: 40px !important;
}

.mt45{
  margin-top: 45px !important;
}

.mt50{
  margin-top: 50px !important;
}

/*-------------------------------------------------
  Margin-bottom control
---------------------------------------------------*/
.mb0{
  margin-bottom: 0px !important;
}

.mb5{
  margin-bottom: 5px !important;
}

.mb10{
  margin-bottom: 10px !important;
}

.mb15{
  margin-bottom: 15px !important;
}

.mb20{
  margin-bottom: 20px !important;
}

.mb25{
  margin-bottom: 25px !important;
}

.mb30{
  margin-bottom: 30px !important;
}

.mb35{
  margin-bottom: 35px !important;
}

.mb36{
  margin-bottom: 36px !important;
}

.mb40{
  margin-bottom: 40px !important;
}

.mb45{
  margin-bottom: 45px !important;
}

.mb50{
  margin-bottom: 50px !important;
}

.mb100{
  margin-bottom: 100px !important;
}

/*-------------------------------------------------
  Margin-left control
---------------------------------------------------*/
.ml0{
  margin-left: 0px !important;
}

.ml10{
  margin-left: 10px !important;
}

.ml15{
  margin-left: 15px !important;
}

.ml20{
  margin-left: 20px !important;
}

.ml30{
  margin-left: 30px !important;
}

.ml40{
  margin-left: 45px !important;
}

.ml45{
  margin-left: 45px !important;
}

/*-------------------------------------------------
  Margin-Right control
---------------------------------------------------*/
.mr0{
  margin-right: 0px !important;
}

.mr10{
  margin-right: 10px !important;
}

.mr15{
  margin-right: 15px !important;
}

.mr20{
  margin-right: 20px !important;
}

.mr30{
  margin-right: 30px !important;
}

.mr40{
  margin-right: 40px !important;
}

/*-------------------------------------------------
  Padding-top control
---------------------------------------------------*/
.pt0{
  padding-top: 0px !important;
}

.pt5{
  padding-top: 5px !important;
}

.pt10{
  padding-top: 10px !important;
}

.pt15{
  padding-top: 15px !important;
}

.pt20{
  padding-top: 20px !important;
}

.pt25{
  padding-top: 25px !important;
}

.pt30{
  padding-top: 30px !important;
}

.pt35{
  padding-top: 35px !important;
}

.pt40{
  padding-top: 40px !important;
}

.pt45{
  padding-top: 45px !important;
}

.pt50{
  padding-top: 50px !important;
}

/*-------------------------------------------------
  Padding-bottom control
---------------------------------------------------*/
.pb0{
  padding-bottom: 0px !important;
}

.pb5{
  padding-bottom: 5px !important;
}

.pb10{
  padding-bottom: 10px !important;
}

.pb15{
  padding-bottom: 15px !important;
}

.pb20{
  padding-bottom: 20px !important;
}

.pb25{
  padding-bottom: 25px !important;
}

.pb30{
  padding-bottom: 30px !important;
}

.pb35{
  padding-bottom: 35px !important;
}

.pb40{
  padding-bottom: 40px !important;
}

.pb45{
  padding-bottom: 45px !important;
}

.pb50{
  padding-bottom: 50px !important;
}



.text-vertical-center {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.text-vertical-center h1 {
    margin: 0;
    padding: 0;
    font-size: 4.5em;
    font-weight: 700;
}

/* Custom Button Styles */

.btn{
  padding:0.5em 1em;
}

.btn-dark {
    border-radius: 5px;
    color: #fff;
    background-color: rgba(0,0,0,0.4);
}

.btn-dark:hover,
.btn-dark:focus,
.btn-dark:active {
    color: #fff;
    background-color: rgba(0,0,0,0.7);
}

.btn-light {
    border-radius: 5px;
    color: #333;
    background-color: rgb(255,255,255);
}

.btn-light:hover,
.btn-light:focus,
.btn-light:active {
    color: #333;
    background-color: rgba(255,255,255,0.8);
}

.bnr{
    margin:30px auto;
}

/* Custom Horizontal Rule */

hr.small {
    max-width: 100px;
}

.table th{
    width:40%;
}


.table td{
    text-align: left;
}

/* Side Menu */

#sidebar-wrapper {
    z-index: 1000;
    position: fixed;
    right: 0;
    width: 250px;
    height: 100%;
    margin-right: -250px;
    overflow-y: auto;
    background: #222;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.sidebar-nav {
    position: absolute;
    top: 0;
    width: 250px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sidebar-nav li {
    text-indent: 20px;
    line-height: 40px;
}

.sidebar-nav li a {
    display: block;
    text-decoration: none;
    color: #999;
}

.sidebar-nav li a:hover {
    text-decoration: none;
    color: #fff;
    background: rgba(255,255,255,0.2);
}

.sidebar-nav li a:active,
.sidebar-nav li a:focus {
    text-decoration: none;
}

.sidebar-nav > .sidebar-brand {
    height: 55px;
    font-size: 18px;
    line-height: 55px;
}

.sidebar-nav > .sidebar-brand a {
    color: #999;
}

.sidebar-nav > .sidebar-brand a:hover {
    color: #fff;
    background: none;
}

#menu-toggle {
    z-index: 1;
    position: fixed;
    top: 0;
    right: 0;
}

#sidebar-wrapper.active {
    right: 250px;
    width: 250px;
    -webkit-transition: all 0.4s ease 0s;
    -moz-transition: all 0.4s ease 0s;
    -ms-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
}

.toggle {
    margin: 5px 5px 0 0;
}

/* ページトップ */
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 80%;
}
#page-top a {
    background: #666;
    text-decoration: none;
    color: #fff;
    width: 100px;
    padding: 25px 0;
    text-align: center;
    display: block;
    border-radius: 10px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}

/* Header */

.header {
    display: table;
    position: relative;
    width: 100%;
    height: 100%;
    background: url(../img/bg.jpg) no-repeat center center scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
}

.header .wrap{
  width:90%;
  margin:0 auto;
}

.header h1{
    font-family: 'Vollkorn', serif;
}
.header h3{
    color:#b5b5b5;
}


/* About */

.about {
    background:#313131;
      color:#fff;
    padding: 50px 0;
}

.lead{
    line-height:1.8;
}

.lead span{
    border-bottom:4px solid #85e65a;
}


/* Services */

.services {
    padding: 50px 0;
    background: #36a352;
}

.service-item {
    margin-bottom: 50px;
}


/* news */

.news{
    padding: 50px 0;
    background:#80c091;
}
.news dl a:link,
.news dl a:visited{
  color:#206231;
}

.news .small{
    border-color:#666;
}

.news dl{
    font-size:1.2em;
    margin-bottom:2em;
}

.cred{
    color:red;
}

.news dl dt,
.news dl dd{
    padding:0.5em;
}


.news dl dd{
    text-align: left;
}


/* Callout */

.callout .pc{
    display: none;
}

.callout {
  position: relative;
    display: table;
    width: 100%;
    background:#f1f4fd url("../img/bg2.jpg") no-repeat top center;
    background-size:contain;
    padding: 0 0 50px;
}

.callout .hikkoshi-logo{
  margin-top:50px;
}

.callout .hikkoshi-logo img{
  max-width:100%;
}

.callout .hikkoshi-text{
  font-size:1.5em;
  line-height:1.6;
}

.callout .forsubmit{
  margin-top:-40px;
}

.callout .forsubmit img{
  max-width:100%;
}

.callout .table{
    margin-top:3em;
}

.callout .table th,
.callout .table td{
    padding:1em;
    font-size:1.2em;
}

.callout .flow{
  margin-top:100px;
  border:5px solid #9ad6d4;
  padding:50px 0;
}

.callout .flow h3{
  margin:0;
  padding:0;
  color:#1cc9c3;
}
.callout .flow h3 span{
  margin:1em auto;
  color:#333;
  display: inline-block;
  font-size:0.8em;
}

.callout .flow ul{
display:table;
table-layout: fixed;
width:100%;
padding:0;
margin:0;
}

.callout .flow ul li{
display:table-cell;
vertical-align:top;
text-align:center;
padding:0;
margin:0;
}

.callout .flow ul li img{
  max-width:90%;
  margin-bottom:1em;
}

.arrow{
  position: relative;
  display: inline-block;
}

.arrow:before{
  margin-left:-15px;
  content: '';
  width: 20px;
  height: 20px;
  border: 0px;
  border-top: solid 2px #5bc0de;
  border-right: solid 2px #5bc0de;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 40%;
  left: 0;
  margin-top: -4px;
}

.anshin{
  margin:50px auto;
  text-align: center;
}

.anshin h3 img{
  margin:20px 0;
  max-width:100%;
}

.markclick{
  background:#fff;
  border-radius: 5px;
  padding:0.5em;
  display: inline-block;
}

.contactform{
    background-color:#d4dbf0;
    border-radius: 5px;
    padding:2em;
}

.contactform h2{
    margin-bottom:1em;
}

.manage a{
  display: block;
  background:#36A352;
  padding:1em;
  font-size:1.5em;
  color:#fff;
}

.manage a:hover{
  opacity: 0.8;
  text-decoration: none;
}


/* greetings */

.greetings{
  margin-bottom:2em;
}

.greetings img{
  margin-bottom:2em;
}

.greetings p{
  text-align: left;
  font-size:1.2em;
}

.greetings .text-right{
  padding-top:1em;
  text-align: right!important;
}

/* Portfolio */

.portfolio {
    padding: 50px 0;
}

.portfolio-item {
    margin-bottom: 50px;
}

.portfolio .table th,
.portfolio .table td{
    padding:1em;
    font-size:1.2em;
}


.img-portfolio {
    margin: 0 auto;
}

.img-portfolio:hover {
    opacity: 0.8;
}

/* Call to Action */

.call-to-action {
    padding: 50px 0;
}

.call-to-action .btn {
    margin: 10px;
}

/* Map */

.map {
    height: 500px;
}

/* blog */

/* Header */

#second .header {
    display: table;
    width: 100%;
    height: 300px;
}

#second .header h1{
    font-family: 'Vollkorn', serif;
}

#second select{
  color: #666;
  font-size: 16pt;
  font-weight: 300;
  line-height: 1.65em;
  background:#fff;
  margin-bottom:1em;
}

#second .post{
    margin:3em auto;
}

#second .post-btm{
    margin-bottom:3em;
}

#second select{
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  border-radius: 4px;
  border: none;
  border: solid 1px #ccc;
  color: inherit;
  display: block;
  outline: 0;
  padding: 0 1em;
  text-decoration: none;
  width: 100%;
}

#second select:invalid{
  box-shadow: none;
}

#second select:focus {
  border-color: #6bd4c8;
}


#second .select-wrapper {
  text-decoration: none;
  display: block;
  position: relative;
}
#second .select-wrapper:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}
#second .select-wrapper:before {
  color: rgba(144, 144, 144, 0.5);
  content: '\f078';
  display: block;
  height: 2.75em;
  line-height: 2.75em;
  pointer-events: none;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  width: 2.75em;
}
#second .select-wrapper select::-ms-expand {
  display: none;
}

.entry-content{
  margin:3em auto 0;
}

.entry-content h2{
  font-size:1.5em;
  padding:1em;
  background:#ddd;
  border-radius: 5px;
  margin-bottom:2em;
}

.entrybody h3{
  margin: inherit;
  font-size: inherit;
  color: inherit;
  padding:inherit;
  background:inherit;
}

.entry-content p.postmeta{
  clear: both;
}

.entry-content p.postmeta span a{
  background: #444444;
  color: #fff;
  margin: 0px 0px 0px 10px;
  padding: 2px 10px;
  text-decoration: none;
}

.entry-content p.postmeta span a:hover{
  background: #333;
  color: #fff;
}

.entry-content .entrybody{
  margin:1em 1em 2em;
  line-height: 1.6;
  font-size:16px;
}
.entry-content .entrybody p{
  padding: 0 0 1em 0;
}

.entrybody ul, .entrybody ol{
  margin: 1em 1em 2em 2em;
}

.entrybody h2,
.entrybody h3{
  margin:0;
  padding:0;
}
.entrybody h2{
  background:none!important;
  border-bottom:5px solid #ddd;
  padding-bottom:0.5em;
  margin-top:3em;
  margin-bottom:2em;

}

.entry-content ul{
  list-style-type: inherit;
}

.entry-content ol{
  list-style-type: decimal;
}

.entry-content blockquote{
  border: 1px solid #b2b1a3;
  margin: 1em 0;
  padding: 0.5em;
}

.entry-content img{
  margin: 5px;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.entry-content .alignleft, .entry-content img.alignleft{
  display: block;
  float: left;
  margin: 0 15px 15px 0;
}
.entry-content .alignright, .entry-content img.alignright{
  display: block;
  float: right;
  margin: 0 0 15px 15px;
}
.entry-content .aligncenter, .entry-content img.aligncenter{
  display: block;
  margin-right: auto;
  margin-left: auto;
  text-align: center!important;
}
.entry-content video, .entry-content object{
  max-width: 100%;
  height: auto;
}
.entry-content pre{
  background: #eee;
  border: 1px solid #cecece;
  padding: 10px;
}

/* end .entry-content */
.wp-caption{
  background: #eee;
  padding: 5px;
  /* images inside wp-caption */
}
.wp-caption img{
  margin-bottom: 0;
  width: 100%;
}
.wp-caption p.wp-caption-text{
  font-size: 0.85em;
  margin: 4px 0 7px;
  text-align: center;
}

/* end .wp-caption */
/* image gallery styles */
/* end .gallery */
/* gallery caption styles */
.size-full{
  margin-bottom: 20px;
}

.size-full img{
  margin-bottom: 20px;
}


@media(max-width:768px) {

br.pc{
  display: none;
}

br.sp{
  display: block;
}

.header h3{
    font-size:1.0em;
}

    .map {
        height: 75%;
    }
    .callout .pc{
        display: block;
    }

.callout h1{
    font-size:1.5em;
}
.callout h1 span{
    line-height:4.0;
}

.spcenter img{
  margin-right:auto;
  margin-left:auto;
  text-align: center;
}

.hikkoshi-logo{
  margin:-5px 10px 20px 0!important;
  text-align: right;
}

.hikkoshi-logo img{
  width:70%;
}

.hikkoshi-text{
  width:90%;
  font-size:0.9em!important;
  margin:0 auto;
}

.callout .forsubmit{
  margin-top:-20px;
}

.callout .flow{
  margin-top:50px;
  border:5px solid #9ad6d4;
  padding:20px 0 0px;
}

.callout .flow h3 span{
  font-size:0.5em;
}

.callout .flow ul{
display:block;
overflow: hidden;
}

.callout .flow ul li{
display:block;
float:left;
width:100%;
margin-bottom:3em;
}


.arrow{
  position: relative;
  display: inline-block;
}

.arrow:before{
  margin-left:0px;
  content: '';
  width: 20px;
  height: 20px;
  border: 0px;
  border-top: solid 2px #5bc0de;
  border-right: solid 2px #5bc0de;
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  top: -20%;
  left: 45%;
  margin-top: 0;
}


.anshinpics{
  display: none;
}

.anshin div{
}

.anshin{
 background: url(../img/anshin.png) left top no-repeat;
 background-size:30%;
  margin:20px auto;
}

.anshincopy{
  text-align: right;
}

.anshincopy img{
  width:80%;
  text-align: right;
}

.anshin .sp{
  display:none;
}

}

/* Footer */

footer {
  background:#333;
  color:#fff;
  padding: 50px 0;
}