@charset "UTF-8";
/*=============================================================
 02_base
=============================================================*/
/*!  02_base
================================================ */
html { overflow: auto; }
body { min-width: 320px; line-height: 1.42; overflow: hidden; color: #030303; font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; font-size: 1.4rem; letter-spacing: .05em; }
@media all and (min-width: 600px) { body { min-width: 1100px; } }
a { color: #030303; text-decoration: underline; }
@media all and (min-width: 600px) { a:hover { text-decoration: none; } }
.alpha { display: block; text-decoration: none; }
@media all and (min-width: 600px) { .alpha { transition: all .3s ease; }  .alpha:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; } }
img { max-width: 100%; height: auto; }
@media all and (max-width: 599px) { .viewPc { display: none; } }
@media all and (min-width: 600px) { .viewSp { display: none; } }
.cf:after { display: block; clear: both; content: ""; }
.ib { display: inline-block; }
#mediaQuery { display: none; font-family: "sp"; }
@media all and (min-width: 600px) { #mediaQuery { font-family: "pc"; } }
/*! layout
-------------------------------------- */
#wrapper { position: relative; }
#container { padding: 20px 0 50px; }
@media all and (min-width: 600px) { #container { padding: 20px 0 30px; } }
#container #sidebar { width: 85%; margin: 0 auto; padding-top: 20px; }
@media all and (min-width: 600px) { #container { padding: 70px 0 80px; }  #container.col2 { width: 1020px; margin: 0 auto; }  #container.col2 #contents { float: left; width: 640px; padding: 0; }  #container.col2 #sidebar { float: right; width: 300px; margin: 0; padding-top: 0; } }
/*=============================================================
 03_layout
=============================================================*/
/* #gHeader
================================================ */
#gHeader { position: absolute; z-index: 2000; width: 100%; }
@media all and (min-width: 600px) { #gHeader { min-width: 1020px; } }
body:not(#home) #gHeader { position: relative; background: #fff; }
@media all and (min-width: 600px) { body:not(#home) #gHeader { height: 105px; } }
/* #hdInfo
-------------------------------------- */
#hdInfo { position: relative; z-index: 3; height: 70px; }
@media all and (min-width: 600px) { #hdInfo { width: 1020px; height: 105px; margin: 0 auto; } }
#hdInfo .logo { width: 148px; height: 30px; overflow: hidden; margin: 20px 0 0 22px; background-image: url(../img/common/ft_logo01.svg); background-repeat: no-repeat; background-position: left top; background-size: 100% auto; text-indent: 101%; white-space: nowrap; }
@media all and (min-width: 600px) { #hdInfo .logo { width: 168px; height: 36px; margin: 35px 0 0; } }
#hdInfo .logo a { display: block; width: 148px; height: 30px; }
@media all and (min-width: 600px) { #hdInfo .logo a { width: 168px; height: 36px; } }
#hdInfo .btnGnav { position: absolute; top: 5px; right: 5px; width: 60px; height: 54px; cursor: pointer; }
@media all and (min-width: 600px) { #hdInfo .btnGnav { top: 20px; right: 10px; } }
#hdInfo .btnGnav .line { position: absolute; left: 10px; width: 40px; height: 2px; background: #fff; content: ""; transition: all .3s ease; }
#hdInfo .btnGnav .line:nth-child(1) { top: 10px; }
#hdInfo .btnGnav .line:nth-child(2) { top: 26px; width: 30px; }
#hdInfo .btnGnav .line:nth-child(3) { top: 42px; width: 20px; }
#hdInfo .btnGnav.is_open .line:nth-child(1) { top: 26px; transform: rotate(-45deg); }
#hdInfo .btnGnav.is_open .line:nth-child(2) { opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
#hdInfo .btnGnav.is_open .line:nth-child(3) { top: 26px; width: 40px; transform: rotate(45deg); }
body:not(#home) #hdInfo { overflow: hidden; }
body:not(#home) #hdInfo .btnGnav .line { background: #030303; }
body:not(#home) #hdInfo .btnGnav.is_open .line { background: #fff; }
/* #gNav
================================================ */
#gNav { display: none; position: fixed; top: 0; left: 0; z-index: 2; box-sizing: border-box; width: 100%; height: 100%; padding: 80px 0 0; background: rgba(0, 0, 0, .75); text-align: center; }
@media all and (min-width: 600px) { #gNav { position: fixed; width: 100%; overflow-y: auto; padding: 140px 0 30px; } }
@media all and (min-width: 600px) { #gNav .list { width: 600px; margin: 0 auto; } }
#gNav .item { font-family: "Segoe Script", "Caveat", cursive; font-size: 3rem; }
@media all and (min-width: 600px) { #gNav .item { font-size: 4rem; } }
#gNav a { display: block; padding: 12px 0; color: #fff; text-decoration: none; }
@media all and (min-width: 600px) { #gNav a { padding: 16px 0; } }
/* #overlay
================================================ */
#overlay { display: none; position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; height: 100%; background: rgba(0, 0, 0, .25); }
@media all and (min-width: 600px) { #overlay { display: none !important; } }
/* #mainVisual HOME
================================================ */
#mainVisual { position: relative; height: 100vh; overflow: hidden; background-image: url(../img/home/mainimg.jpg); background-position: center top; background-size: cover; }
@media all and (min-width: 600px) { #mainVisual { height: 105vh; min-height: 800px; max-height: 1160px; } }
#mainVisual:after { display: block; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background: rgba(0, 0, 0, .6); content: ""; }
#mainVisual .logo { display: block; position: absolute; top: 50vh; left: 50%; z-index: 2; width: 200px; height: 48px; overflow: hidden; background-image: url(../img/home/mainimg_logo01.svg); background-repeat: no-repeat; background-position: center; background-size: 100% auto; text-indent: 101%; white-space: nowrap; transform: translateX(-50%) translateY(-50%); }
@media all and (min-width: 600px) { #mainVisual .logo { width: 274px; height: 52px; } }
#mainVisual .ico { position: absolute; top: 95vh; left: 50%; z-index: 2; width: 72px; height: 62px; transform: translateX(-50%) translateY(-100%); }
#mainVisual .ico a { display: block; width: 72px; height: 62px; background-image: url(../img/home/mainimg_ico01.svg); background-repeat: no-repeat; background-position: left top; background-size: auto 100%; text-align: right; }
@media all and (min-width: 600px) { #mainVisual .ico a { transition: all .3s ease; }  #mainVisual .ico a:hover { opacity: .7; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; } }
#mainVisual .ico span { display: block; padding: 35px 0 0 0; color: #fbfbfb; font-size: 1.4rem; }
/* #mainImg
================================================ */
#mainImg { display: -ms-flexbox; display: flex; position: relative; height: 135px; background-position: center top; background-size: cover; font-weight: 700; font-size: 1.5rem; text-align: center; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; }
@media all and (min-width: 600px) { #mainImg { height: 300px; } }
#mainImg:after { display: block; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background: rgba(0, 0, 0, .7); content: ""; }
#mainImg .tit { position: relative; z-index: 2; color: #fbfbfb; font-family: "Segoe Script", "Caveat", cursive; font-size: 3.2rem; }
/* #breadcrumb
================================================ */
#breadcrumb .list { padding: 8px 10px 25px; }
#breadcrumb .list .item { display: inline-block; }
#breadcrumb .list .item + .item { padding-left: 5px; }
#breadcrumb .list .item + .item:before { margin-right: 4px; content: ">"; }
/* #sidebar
================================================ */
/* .secSidebar
-------------------------------------- */
.secSidebar .tit { margin-bottom: .5em; font-size: 2rem; }
.secSidebar .latest .item { line-height: 2.14286; padding: 5px 0; border-bottom: 1px dashed #707070; font-size: 1.4rem; }
.secSidebar .latest .item a { display: block; text-decoration: none; transition: all .3s linear; }
.secSidebar .latest .item a:hover { text-decoration: underline; }
.secSidebar .latest .item a .entry-date { display: block; font-size: 1.2rem; }
.secSidebar .more { margin-top: 5px; margin-bottom: 40px; text-align: right; }
.secSidebar .more a { text-decoration: none; }
.secSidebar .more a:hover { text-decoration: underline; }
.secSidebar .author .item { position: relative; margin-bottom: 10px; padding-left: 1em; }
.secSidebar .author .item:before { display: block; position: absolute; top: 0; left: 0; content: "・"; }
.secSidebar .author .item a { text-decoration: none; }
.secSidebar .author .item a:hover { text-decoration: underline; }
/* #gFooter
================================================ */
#gFooter .logo { width: 38px; margin: 0 auto 10px; }
@media all and (min-width: 600px) { #gFooter .ftNav { text-align: center; } }
#gFooter .ftTit { display: block; width: 160px; margin: 0 auto 20px; }
@media all and (min-width: 600px) { #gFooter .ftTit { display: inline-block; margin: 0 12px 0 0; vertical-align: middle; } }
#gFooter .list { padding: 0 15%; }
@media all and (max-width: 599px) { #gFooter .list { font-size: 0; text-align: center; letter-spacing: 0; } }
@media all and (min-width: 600px) { #gFooter .list { display: inline-block; vertical-align: middle; } }
#gFooter .item { display: inline-block; padding: 7px 0; }
@media all and (max-width: 599px) { #gFooter .item { font-size: 1.4rem; letter-spacing: .05em; }  #gFooter .item:nth-child(-n+3) { width: 33%; }  #gFooter .item:nth-child(n+4) { width: 35%; }  #gFooter .item:nth-child(n+6) { width: 31%; } }
@media all and (min-width: 600px) { #gFooter .item { width: auto; margin: 0 5px; padding: 0 10px; vertical-align: middle; } }
#gFooter a { text-decoration: none; }
#gFooter .fb { padding: 0; font-size: 4.3rem; }
@media all and (min-width: 600px) { #gFooter .fb { line-height: 1; padding: 0 5px; font-size: 2rem; } }
#gFooter .insta { padding: 0; font-size: 4.3rem; }
@media all and (min-width: 600px) { #gFooter .insta { line-height: 1; padding: 0 5px; font-size: 2rem; } }
#gFooter .cr { padding: 34px 0 20px; font-size: 1.2rem; text-align: center; }
@media all and (min-width: 600px) { #gFooter .cr { padding: 30px 0 50px; } }
/* #pagetop
================================================ */
@media all and (max-width: 599px) { #pagetop { position: static !important; } }
#pagetop a { display: block; padding: 10px; background: #000; color: #fff; text-decoration: none; text-align: center; }
@media all and (min-width: 600px) { #pagetop { position: fixed; right: 0; bottom: 0; visibility: hidden; margin: 0 30px 30px 0; opacity: 0; transition: opacity .3s ease; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }  #pagetop.is_view { visibility: visible; opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }  #pagetop a { display: block; box-sizing: border-box; width: 50px; height: 50px; padding: 12px 0 0; border-radius: 25px; } }
/*=============================================================
 05_helper
=============================================================*/
/*!  .js-name
================================================ */
/*=============================================================
 06_lib
=============================================================*/

/*# sourceMappingURL=maps/common.css.map */