@charset "utf-8";

/*
======== table of content. ===============
summary:共通設定
==========================================
*/

/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}img{border-style:none}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}


/* ================================================================================
bese
================================================================================= */
html {
  font-size:62.5%;
}
body {
  font-family:'Noto Serif JP', serif;
  font-size:1.4rem;
  line-height:1.6;
  color:#000;
  width:100%;
  font-weight:500;
  -webkit-text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
hr {
  display:none;
}
a {
  text-decoration:none;
  color:#000;
  outline:none;
}
a:hover {
  color:#666;
}
strong {
  font-weight:bold;
}
ol, ul {
  list-style:none;
}
img {
  height:auto;
  max-width:100%;
  vertical-align:bottom;
}
:focus {
  outline:none;
}
#wrapper {
  position:relative;
  margin:0 auto;
}

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
a[href^="tel:"] {
  cursor:default;
  pointer-events:none;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
body {
  font-size:1.4rem;
  line-height:1.6;
}
img {
  width:100%;
  height:auto;
}
#wrapper {
  width:auto;
  min-width:320px;
}
a:hover {
  color:#000;
}
}


/* ================================================================================
header
================================================================================= */
#header_inner {
  position:relative;
}
#logo {
  position:absolute;
  left:0;
  right:0;
  margin:0 auto;
}
#logo a,
#logo img {
  display:block;
}

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
#header_inner {
  min-width:1100px;
  height:110px;
}
#logo {
  top:34px;
  width:200px;
}
#logo a:hover {
  opacity:.6;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#header {
  height:70px;
}
#header_inner {
  width:100%;
  min-width:320px;
  height:70px;
}
#logo {
  top:21px;
  width:140px;
}
}


/* ================================================================================
nav PCサイズ
================================================================================= */
@media (min-width:769px) {
.slicknav_menu,
#global_nav .sp_sns {
  display:none;
}
#header_nav {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:center;
  justify-content:center;
  -webkit-align-items:center;
  align-items:center;
  min-width:1100px;
  background:#000;
  text-align:center;
}
#header_nav li {
  position:relative;
  font-weight:bold;
}
#header_nav a {
  display:block;
  padding:0 30px;
  color:#fff;
  font-size:1.5rem;
  color:#fff;
  line-height:40px;
  transition:.3s;
}
#header_nav a:hover {
  background:#888;
}
#header_nav a.current {
  background:#fff;
  color:#000;
}
}


/* ================================================================================
nav  SPサイズ
================================================================================= */
@media (max-width:768px) {
.sp_nav_open,
.sp_nav_open body {
  overflow:hidden;
}
#header_nav {
  display:none;
}
.slicknav_btn {
  position:fixed;
  top:10px;
  right:10px;
  display:block;
  width:50px;
  height:50px;
  border-radius:0;
  z-index:9999;
  background:#000;
}
.slicknav_icon {
  display:block;
  position:relative;
  width:50px;
  height:50px;
  z-index:9999;
}
.slicknav_icon span {
  display:block;
  position:absolute;
  top:16px;
  left:0;
  right:0;
  margin:0 auto;
  width:22px;
  height:2px;
  background:#fff;
  transition:all 0.3s;
}
.slicknav_icon span:nth-child(2) {
  top:25px;
}
.slicknav_icon span:nth-child(3) {
  top:34px;
}
.slicknav_open .slicknav_icon span {
  width:18px;
  top:25px;
  height:2px;
}
.slicknav_open .slicknav_icon span:nth-child(1) {
  -webkit-transform:rotate(-225deg);
  -ms-transform:rotate(-225deg);
  transform:rotate(-225deg);
}
.slicknav_open .slicknav_icon span:nth-child(2) {
  width:0;
  left:0;
  right:0;
}
.slicknav_open .slicknav_icon span:nth-child(3) {
  -webkit-transform:rotate(225deg);
  -ms-transform:rotate(225deg);
  transform:rotate(225deg);
}
.slicknav_menutxt {
  display:none;
  position:absolute;
  bottom:7px;
  width:100%;
  font-size:1.2rem;
  text-align:center;
  color:#fff;
  z-index:999999;
}
.slicknav_open .slicknav_menutxt {
  display:block;
}
.slicknav_nav {
  position:fixed;
  top:0;
  left:0;
  bottom:0;
  right:0;
  width:100%;
  height:100%;
  background:#333;
  z-index:998;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.slicknav_nav:before {
  content:"";
  display:block;
  width:100%;
  height:70px;
  background:#fff url(../img/logo.svg) center center no-repeat;
  background-size:140px 29px;
}

/* ナビゲーション内 ----------------- */
.slicknav_nav .main_nav li {
  position:relative;
  color:#fff;
  font-weight:bold;
}
.slicknav_nav .main_nav li {
  border-bottom:1px solid #666;
}
.slicknav_nav .main_nav span,
.slicknav_nav .main_nav a {
  display:block;
  padding:0 25px;
  line-height:46px;
  color:#fff;
}

/* SNSアイコン ----------------- */
.slicknav_nav .sp_sns {
  display:-webkit-flex;
  display:flex;
  -webkit-flex-wrap:wrap;
  flex-wrap:wrap;
  -webkit-justify-content:space-between;
  justify-content:space-between;
  -webkit-align-items:center;
  align-items:center;
  position:relative;
  width:103px;
  margin:20px 0 0 18px;
  z-index:2;
}
.slicknav_nav .sp_sns li:nth-child(n+3) {
  margin-top:10px;
}
.slicknav_nav .sp_sns a {
  display:block;
  width:42px;
  height:42px;
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:32px 32px;
}
.slicknav_nav .sp_sns .icon_facebook {
  background-image:url(../img/icon_facebook.png);
}
.slicknav_nav .sp_sns .icon_twitter {
  background-image:url(../img/icon_twitter.png);
}
.slicknav_nav .sp_sns .icon_instagram {
  background-image:url(../img/icon_instagram.png);
}
.slicknav_nav .sp_sns .icon_youtube {
  background-image:url(../img/icon_youtube.png);
}
}


/* ================================================================================
main
================================================================================= */
#main {
  position:relative;
  min-width:1100px;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#main {
  min-width:320px;
}
}


/* ================================================================================
footer
================================================================================= */
#footer {
  position:relative;
  min-width:1100px;
  padding-bottom:35px;
  background:url(../img/bg_paper_02.jpg) center center repeat;
  background-size:350px 350px;
  text-align:center;
}
#footer:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background:url(../img/bg_lattice_white.png) center center repeat;
  background-size:80px 50px;
  opacity:.2;
  z-index:1;
}
#footer_inner {
  position:relative;
  margin-bottom:55px;
  padding:55px 15px;
  background:#fff;
  z-index:2;
}
#footer_logo img {
  width:268px;
  margin-bottom:25px;
}
#footer_txt img {
  width:524px;
}
.footer_sns {
  display:flex;
  justify-content:center;
  align-items:center;
  position:relative;
  margin-bottom:40px;
  z-index:2;
}
.footer_sns li {
  margin:0 14px;
}
.footer_sns a {
  display:block;
  width:34px;
  height:34px;
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
  background-repeat:no-repeat;
  background-position:center center;
  background-size:32px 32px;
}
.footer_sns .icon_facebook {
  background-image:url(../img/icon_facebook.png);
}
.footer_sns .icon_twitter {
  background-image:url(../img/icon_twitter.png);
}
.footer_sns .icon_instagram {
  background-image:url(../img/icon_instagram.png);
}
.footer_sns .icon_youtube {
  background-image:url(../img/icon_youtube_pc.png);
  background-size:34px 32px;
}
.footer_sns a:hover {
  opacity:.75;
}
#footer .copyright small {
  color:#fff;
  font-size:1.4rem;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#footer {
  min-width:320px;
}
#footer_inner {
  margin:0;
  padding:30px 0;
}
#footer_logo img {
  width:128px;
  margin-bottom:15px;
}
#footer_txt img {
  width:189px;
}
.footer_sns {
  display:none;
}
#footer .copyright {
  margin-top:45px;
}
#footer .copyright small {
  font-size:1.2rem;
}
}


/* ================================================================================
print
================================================================================= */
@media print {
}
