@charset "UTF-8";

/*=====================================

      ---------------------------
        color
      ---------------------------
        - Main     : #5DBAF0 (blue)
        - Accent   : #ffd454 (yellow オレンジより)
        - Accent   : #ffe553 (yellow)
        - Accent   : #a5cc4a (green あかるめ)
        - Accent   : #7ba742 (green)
        - Accent   : #F27B50 (orange)
        - Accent   : #f29199 (pink)
        - font     : #555555
        - link     : #5DBAF0
        - link     : #F2E8DF
      ---------------------------
        font
      ---------------------------
        - title  : Baloo Thambi 2
        - text   :
      ---------------------------
        Structure
      ---------------------------
        - 0.General
        - 1.Header
        - 2.Contents
        - 3.Footer
        - 4.Space

=====================================*/


/*=====================================

      0.General

======================================*/

/*    0.1 Import
======================================*/

@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?xzxaxg');
  src:  url('../fonts/icomoon.eot?xzxaxg#iefix') format('embedded-opentype'),
        url('../fonts/icomoon.ttf?xzxaxg') format('truetype'),
        url('../fonts/icomoon.woff?xzxaxg') format('woff'),
        url('../fonts/icomoon.svg?xzxaxg#icomoon') format('svg');
}
[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon' /*!important*/;
}

/*    0.2 Other
======================================*/
* {
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
  /* ▼ スマホ横にしても文字が大きくならない */
  -moz-text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
  -ms-text-size-adjust:100%;
}
body {
  position: relative;
  height: 100%;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background-image: repeating-linear-gradient(120deg, #eeeeee, #eeeeee 1px, transparent 1px, transparent 4px);
  color: #555;
  font-family: 'Lato',Helvetica Neue,Arial,Hiragino Sans,Hiragino Kaku Gothic ProN,BIZ UDPGothic,Meiryo,sans-serif;
  font-feature-settings: "palt";
  word-wrap: break-word;
}
img {
  max-width:100%;
  height: auto;
}
a {
  color: #5DBAF0;
  text-decoration: none;
  transition: .2s ease-in-out;
}
a:hover {
  color: #F2E8DF;
}
.clearfix::after {
  display: block;
  clear: both;
  content: " ";
}

/*=====================================

      1.Header

======================================*/

header.header {
  height: 100%;
  width: 100%;
  max-width: 95rem;
  margin: 0 auto;
  padding: 5rem 0 0 0;
}
.headerInner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0 5rem;
}

/*    1.1 Logo,Title
======================================*/
h1 {
  margin: 0;
  padding-bottom: 1.5rem;
  color: #5DBAF0;
  font-size: 3.2rem;
  font-weight: 500;
  font-family: 'Baloo Thambi 2', cursive;
	letter-spacing : 0.2rem;
}
h1 a {
  padding: 0.5rem 0 0.5rem 5.2rem;
  background: url(../img/logo.png);
  background-repeat: no-repeat;
  background-position: left center;
  -webkit-background-size: 4.5rem auto;
  background-size: 4.5rem auto;
}
h1 a:hover{
  color: #F2E8DF;
}

/*    1.2 Navi
======================================*/
.headerInner nav {
  margin: 0 0 0 auto;
}
.headerInner nav ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
.headerInner nav ul li {
  position: relative;
  margin: 0 0 0 1.5rem;
  padding:0 0 1.5rem 2.5rem;
}
.headerInner nav ul li a {
  align-items: flex-start;
  font-size: 1.8rem;
  font-weight: 500;
  font-family: 'Baloo Thambi 2','icomoon', cursive;
  letter-spacing : 0.03em;
  color: #555;
}
.headerInner nav ul li a:hover {
  color: #F2E8DF;
}
/* nav icon */
.icon-01 a:before,
.icon-02 a:before,
.icon-03 a:before,
.icon-04 a:before,
.icon-05 a:before {
  position: absolute;
  left: 3px;
  color: #5DBAF0;
}

.icon-03-2:before { content: "\e902"; }
.icon-01 a:before { content: "\e906"; font-size: 2rem; top: 1px;   }/*home*/
.icon-02 a:before { content: "\e901"; font-size: 1.7rem; top: 3px; }/*about*/
.icon-03 a:before { content: "\e90a"; font-size: 2rem; top: 1px;   }/*blog*/
.icon-04 a:before { content: "\e922"; font-size: 1.6rem; top: 3px; }/*gallery*/
.icon-05 a:before { content: "\e904"; font-size: 1.6rem; top: 4px; }/*contact*/

/*    1.3 スマホナビ非表示
======================================*/
.sp-nav { display: none; }

/*=====================================

      2.Contents

======================================*/

.wrap {
  width: 100%;
  height: 100%;
  max-width: 95rem;
  margin: 0 auto;
}
main {
  margin: 0 5rem;
  padding: 3rem;
  border: 1px solid #eee;
  border-radius: 10px;
  background-color: #fff;
}

/*    2.2 ContentsHeader
======================================*/
/*.c-Header {}*/
/* パンくずリスト */
.pan {
  margin-bottom: 2rem;
  font-family: 'Baloo Thambi 2','icomoon', cursive;
  font-weight: 500;
}
.pan ol {
  display: flex;
  list-style: none;
  font-size: 1.4rem;
  letter-spacing : 0.1rem;
  flex-wrap: wrap;
}
.pan li { margin: 0 0.8rem 1.4rem 0; }
.pan li.panHome a:before {
  margin-right: 0.3rem;
  content: "\e900";
}
.pan li::before { content: "> "; }
.pan li:first-child::before { content: ""; }
.ft-j span,
.ft-j2 span {
  font-size: 1.2rem;
  font-family:'Lato',Helvetica Neue,Arial,Hiragino Sans,Hiragino Kaku Gothic ProN,BIZ UDPGothic,Meiryo,sans-serif;
}
.ft-j span:before {
  padding-left: 3px;
  padding-right: 1px;
  font-size: 1rem;
  font-family: 'icomoon';
  content: "\e918";
  transition: .2s ease-in-out;
}
/* 各ページタイトル吹き出し */
h2.c-Ttl {
  font-size: 40px;
  font-weight: bold;
  padding: 30px 30px;
  margin-bottom: 1em;
  color: #ffffff;
  background-color: #5DBAF0e6;
  background-image: linear-gradient(90deg, #ffffff1a 2px, transparent 2px), linear-gradient(#ffffff1a 2px, transparent 2px);
  background-position: 10px 10px;
  background-size: 8px 8px;
  box-shadow: 5px 5px 0 0px rgb(235, 235, 235);
  border-radius: 5px;
}
.c-Ttl-in {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: dashed 2px #fff;
}
.c-Ttl-in span.c-Ttl-l {
  padding-bottom: 1rem;
  font-size: 2.5rem;
  font-family: 'Baloo Thambi 2','icomoon', cursive;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing : 0.3rem;
}
.c-Ttl-in span.c-Ttl-l-01:before,
.c-Ttl-in span.c-Ttl-l-02:before,
.c-Ttl-in span.c-Ttl-l-03:before {
  margin-right: 0.5rem;
  font-size: 2rem;
}
.c-Ttl-in span.c-Ttl-l-04:before {
  margin-right: 1rem;
  font-size:1.7rem;
}
.c-Ttl-in span.c-Ttl-l-01:before { content: "\e901"; }/*about*/
.c-Ttl-in span.c-Ttl-l-02:before { content: "\e922"; }/*gallery*/
.c-Ttl-in span.c-Ttl-l-03:before { content: "\e904"; }/*contact*/
.c-Ttl-in span.c-Ttl-l-04:before { content: "\e916"; }/*search*/
.c-Ttl-in span.c-Ttl-r {
  margin: 0 0 0 auto;
  padding-bottom: 1rem;
  font-size: 1.1rem;
  letter-spacing : 0.3rem;
}

/*    2.3 ContentsMain
======================================*/
.c-main {
  margin: 0 3rem 0 3rem;
  font-size: 1.5rem;
}
.c-main p {
  /*margin-bottom: 1rem;*/
  line-height: 1.8;
}

/*    2.4 sideNav
======================================*/
.sideNav {
  position:fixed;
  bottom: 20px;
  right: calc(calc(100vw - 100rem) / 2);
}
.sideNav ul {
  list-style: none;
}
.sideNav ul li a { display:block; }
.topBtn,
.sideTw {
  position: relative;
  width: 40px;
  height: 40px;
  margin-top: 1rem;
  border-radius: 50%;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  background-color: #fff;
}
.topBtn { color: #5DBAF0; border: 2px solid #5DBAF0; }
.sideTw { color: #888; border: 2px solid #888; }
.topBtn:before,
.sideTw:before {
  position:absolute;
  left:0;
  width:100%;
  font-family: 'icomoon';
  text-align:center;
}
.topBtn:before {
  content:'\e908';
  top: 8px;
  font-size: 1.8rem;
}
.sideTw:before {
  content:'\e91b';
  top: 7px;
  font-size: 2.4rem;
}

.topBtn:hover,
.sideTw:hover {
  background-color: #fff;
  text-decoration: none;
}
.topBtn:hover { color: #fff; background-color: #5DBAF0; }
.sideTw:hover { color: #fff; background-color: #888; }

/*=====================================

      3.Footer

======================================*/

footer.footer {
  height: 100%;
  width: 100%;
  max-width: 95rem;
  margin: 0 auto;
  padding: 1.5rem 0;
  font-weight: 300;
  font-family: 'Baloo Thambi 2', cursive;
}
.footerInner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin: 0 5rem;
}
.copy {
  flex: 1;
  font-size: 1.4rem;
  letter-spacing : 0.03rem;
}
.f-txt {
  font-size: 1.1rem;
  letter-spacing : 0.1rem;
  font-family:'Lato',Helvetica Neue,Arial,Hiragino Sans,Hiragino Kaku Gothic ProN,BIZ UDPGothic,Meiryo,sans-serif;
}
.kiri {
  font-size: 1.4rem;
  text-align: right;
  letter-spacing : 0.2rem;
}

/*=====================================

      4.Space

======================================*/

.mt05 { margin-top: 0.5rem!important;    }
.mt10 { margin-top: 1rem!important;      }
.mt15 { margin-top: 1.5rem!important;    }
.mt20 { margin-top: 2rem!important;      }
.mt25 { margin-top: 2.5rem!important;      }

.mr05 { margin-right: 0.5rem!important;  }
.mr10 { margin-right: 1rem!important;    }
.mr15 { margin-right: 1.5rem!important;  }
.mr20 { margin-right: 2rem!important;    }
.mr25 { margin-right: 2.5rem!important;    }

.mb05 { margin-bottom: 0.5rem!important; }
.mb10 { margin-bottom: 1rem!important;   }
.mb15 { margin-bottom: 1.5rem!important; }
.mb20 { margin-bottom: 2rem!important;   }
.mb25 { margin-bottom: 2.5rem!important;   }

.ml05 { margin-left: 0.5rem!important;   }
.ml10 { margin-left: 1rem!important;     }
.ml15 { margin-left: 1.5rem!important;   }
.ml20 { margin-left: 2rem!important;     }
.ml25 { margin-left: 2.5rem!important;     }

.pt05 { padding-top: 0.5rem!important;    }
.pt10 { padding-top: 1rem!important;      }
.pt15 { padding-top: 1.5rem!important;    }
.pt20 { padding-top: 2rem!important;      }
.pt25 { padding-top: 2.5rem!important;      }

.pr05 { padding-right: 0.5rem!important;  }
.pr10 { padding-right: 1rem!important;    }
.pr15 { padding-right: 1.5rem!important;  }
.pr20 { padding-right: 2rem!important;    }
.pr25 { padding-right: 2.5rem!important;    }

.pb05 { padding-bottom: 0.5rem!important; }
.pb10 { padding-bottom: 1rem!important;   }
.pb15 { padding-bottom: 1.5rem!important; }
.pb20 { padding-bottom: 2rem!important;   }
.pb25 { padding-bottom: 2.5rem!important;   }

.pl05 { padding-left: 0.5rem!important;   }
.pl10 { padding-left: 1rem!important;     }
.pl15 { padding-left: 1.5rem!important;   }
.pl20 { padding-left: 2rem!important;     }
.pl25 { padding-left: 2.5rem!important;     }