@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 Sans JP', sans-serif;
  font-size:1.5rem;
  line-height:1.75;
  color:#000;
  width:100%;
  font-weight:400;
  -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;
  min-width:1100px;
}

/* 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.5;
}
img {
  width:100%;
  height:auto;
}
#wrapper {
  width:auto;
  min-width:320px;
}
a:hover {
  color:#000;
}
}


/* ================================================================================
header
================================================================================= */

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
#header {
  position:relative;
  width:100%;
  min-width:1100px;
}
#header:before {
  content:"";
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:183px;
  background:url(../img/header_bg.jpg) center center no-repeat;
  background-size:cover;
}
#header_inner {
  position:relative;
  width:1100px;
  height:183px;
  margin:0 auto;
  overflow:hidden;
}
#logo {
  position:absolute;
  top:50px;
  left:25px;
  max-width:1100px;
  margin:0 auto;
  z-index:10;
}
#logo a {
  display:block;
  width:288px;
}
#logo a:hover {
  opacity:.8;
}
#header_ttl {
  position:absolute;
  top:70px;
  right:25px;
  font-size:2.8rem;
  font-weight:700;
}
#header_ttl:before {
  content:"";
  display:inline-block;
  width:30px;
  height:25px;
  margin-right:10px;
  background:url(../img/icon_home.svg) no-repeat;
  background-size:contain;
}
#header_ttl span {
  display:inline-block;
}
#header_ttl .en {
  margin-left:1em;
  font-size:1.8rem;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#header {
  padding:60px 0 30px;
  text-align:center;
}
#logo {
  margin-bottom:30px;
}
#logo:after {
  content:"";
  display:block;
  width:100%;
  height:80px;
  background:url(../img/header_bg.jpg) center center no-repeat;
  background-size:cover;
}
#logo a {
  display:block;
  width:248px;
  margin:0 auto 35px;
}
#header_ttl {
  font-size:2rem;
  font-weight:700;
}
#header_ttl:before {
  content:"";
  display:block;
  width:24px;
  height:20px;
  margin:0 auto 15px;
  background:url(../img/icon_home.svg) no-repeat;
  background-size:contain;
}
#header_ttl span {
  display:inline-block;
}
#header_ttl .en {
  margin-left:.7em;
  font-size:1.5rem;
}
}


/* ================================================================================
nav PCサイズ
================================================================================= */
@media (min-width:769px) {
#nav_toggle {
  display:none;
}
#gloval_nav > ul {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:center;
  justify-content:center;
  -webkit-align-items:center;
  align-items:center;
  background:#3f3f3f;
  text-align:center;
  line-height:1.6;
}
#gloval_nav a {
  display:block;
  position:relative;
  padding:12px 35px;
  font-size:1.5rem;
  font-weight:500;
  transition:.3s;
  color:#fff;
}
#gloval_nav a span {
  display:block;
}
#gloval_nav a .en {
  font-size:1.4rem;
  color:#b9aa6e;
}
#gloval_nav .current a:after {
  content:"";
  display:block;
  position:absolute;
  left:50%;
  bottom:0;
  width:0;
  height:0;
  margin-left:-4px;
  border-style:solid;
  border-width:0 4px 7px 4px;
  border-color: transparent transparent #fff transparent;
  z-index:2;
}
#gloval_nav a:hover {
  background-color:#666;
}
#gloval_nav .sp_only,
#gloval_nav .cat_middle {
  display:none;
}
}


/* ================================================================================
nav SPサイズ
================================================================================= */
@media (max-width:768px) {
.nav_open {
  overflow:hidden;
}
#nav_toggle {
  position:fixed;
  top:0;
  right:0;
  height:44px;
  z-index:9999;
}
#nav_toggle div {
  position:relative;
  width:44px;
  height:44px;
  background:#3e3f3f;
}
#nav_toggle span {
  display:block;
  position:absolute;
  left:0;
  right:0;
  margin:0 auto;
  width:14px;
  height:2px;
  background:#b9aa6e;
  transition:all 0.3s;
}
#nav_toggle span:nth-child(1) {
  top:14px;
}
#nav_toggle span:nth-child(2) {
  top:21px;
}
#nav_toggle span:nth-child(3) {
  bottom:14px;
}

/* nav_toggle open ----------------- */
.nav_open #nav_toggle {
  width:100%;
  background-color:#a5191e;
  text-align:right;
}
.nav_open #nav_toggle div {
  display:inline-block;
  background:transparent;
}
.nav_open #nav_toggle span {
  width:16px;
  top:22px;
  background:#fff;
}
.nav_open #nav_toggle span:nth-child(1) {
  -webkit-transform:rotate(-225deg);
  -ms-transform:rotate(-225deg);
  transform:rotate(-225deg);
}
.nav_open #nav_toggle span:nth-child(2) {
  opacity:0;
}
.nav_open #nav_toggle span:nth-child(3) {
  -webkit-transform:rotate(225deg);
  -ms-transform:rotate(225deg);
  transform:rotate(225deg);
}

/* ナビゲーション内 ----------------- */
#gloval_nav {
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  width:100%;
  height:100%;
  visibility:hidden;
  z-index:998;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  opacity:0;
  transition:opacity .4s ease, visibility .4s ease;
}
#gloval_nav ul {
  overflow:hidden;
  padding-top:44px;
}
#gloval_nav li {
  background:#dbd0af;
  opacity:0;
  -webkit-transform:translateX(80px);
  transform:translateX(80px);
  transition:transform .4s ease, opacity .4s ease;
}
#gloval_nav li + li {
  border-top:1px solid #fff;
}
#gloval_nav .current {
  background:#b9aa6e;
}
#gloval_nav a {
  display:block;
  padding:0 25px;
  line-height:44px;
  font-size:1.6rem;
  font-weight:500;
}
#gloval_nav a span {
  display:inline-block;
}
#gloval_nav .en {
  padding-left:1em;
  line-height:44px;
  font-size:1.4rem;
  font-weight:500;
}
#gloval_nav .en:after,
#gloval_nav .en:before {
  content:"-";
  display:inline-block;
}
#gloval_nav .en:before {
  margin-right:.25em;
}
#gloval_nav .en:after {
  margin-left:.25em;
}

/* gloval_nav open ----------------- */
.nav_open #gloval_nav {
  visibility:visible;
  opacity:1;
}
.nav_open #gloval_nav li {
  opacity:1;
  -webkit-transform:translateX(0);
  transform:translateX(0);
  transition:transform .7s ease, opacity .5s ease;
}
.nav_open #gloval_nav ul li:nth-child(1) {
  transition-delay:0s;
}
.nav_open #gloval_nav ul li:nth-child(2) {
  transition-delay:.05s;
}
.nav_open #gloval_nav ul li:nth-child(3) {
  transition-delay:.1s;
}
.nav_open #gloval_nav ul li:nth-child(4) {
  transition-delay:.15s;
}
.nav_open #gloval_nav ul li:nth-child(5) {
  transition-delay:.2s;
}
.nav_open #gloval_nav ul li:nth-child(6) {
  transition-delay:.25s;
}
.nav_open #gloval_nav ul li:nth-child(7) {
  transition-delay:.3s;
}
.nav_open #gloval_nav ul li:nth-child(8) {
  transition-delay:.35s;
}
.nav_open #gloval_nav ul li:nth-child(9) {
  transition-delay:.4s;
}
.nav_open #gloval_nav ul li:nth-child(10) {
  transition-delay:.45s;
}
.nav_open #gloval_nav ul li:nth-child(11) {
  transition-delay:.5s;
}
}


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

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


/* ================================================================================
footer
================================================================================= */
#footer {
  position:relative;
  min-width:1100px;
}
#footer .bt_pagetop a {
  display:block;
  position:relative;
  height:100px;
  text-indent:100%;
  white-space:nowrap;
  overflow:hidden;
}
#footer .bt_pagetop a:after {
  content:"";
  display:block;
  position:absolute;
  top:45px;
  left:50%;
  width:34px;
  height:20px;
  margin-left:-17px;
  background:url(../img/icon_pagetop.svg) no-repeat;
  background-size:contain;
}
#footer .bt_pagetop a:hover {
  opacity:.7;
}
#footer .bt_contact {
  position:fixed;
  z-index:997;
}
#footer .bt_contact a {
  display:block;
  background:#b9aa6e;
  text-align:center;
  font-size:1.5rem;
  font-weight:500;
}
#footer .bt_contact a:after {
  content:"";
  display:inline-block;
  width:20px;
  height:8px;
  margin-top:10px;
  background:url(../img/icon_more_arrow.svg) no-repeat;
  background-size:contain;
}
#footer .bt_contact a:hover,
#footer .bt_contact a:hover:after {
  color:#000;
  background-color:#ccc49b;
}
#copyright {
  padding:25px 15px;
  text-align:center;
  font-size:1.2rem;
}

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
#footer .bt_contact {
  display:none;
  top:35%;
  right:0;
}
#footer .bt_contact a {
  height:160px;
  padding:20px 0;
  line-height:50px;
  -ms-writing-mode:tb-rl;
  writing-mode:vertical-rl;
  text-orientation:upright;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#footer {
  min-width:320px;
  padding-bottom:44px;
}
#footer .bt_pagetop a {
  height:55px;
}
#footer .bt_pagetop a:after {
  top:15px;
  width:24px;
  height:14px;
  margin-left:-12px;
}
#footer .bt_contact {
  display:none;
  bottom:0;
  left:0;
  width:100%;
}
#footer .bt_contact a {
  line-height:44px;
}
#footer .bt_contact a:after {
  margin-left:10px;
}
#copyright {
  font-size:1rem;
}
}


/* ================================================================================
footer_kuraso
================================================================================= */

/* PC調整 ----------------------------　*/
@media (min-width:769px) {
#footer_kuraso {
  padding:45px 0;
}
#footer_kuraso .inner {
  display:-webkit-flex;
  display:flex;
  -webkit-justify-content:space-between;
  justify-content:space-between;
  max-width:1100px;
  margin:0 auto;
  padding:0 50px;
}
#footer_kuraso .box_add dl {
  font-weight:500;
  font-size:1.5rem;
}
#footer_kuraso .box_add dt {
  position:relative;
  margin-bottom:23px;
  padding-bottom:37px;
}
#footer_kuraso .box_add dt span {
  position:absolute;
  bottom:0;
}
#footer_kuraso .box_add dt img {
  width:288px;
}
#footer_kuraso .add_tel {
  margin-bottom:23px;
}
#footer_kuraso .add_tel a {
  display:inline-block;
  margin-top:5px;
}
#footer_kuraso .add_add ul {
  letter-spacing:-.4em;
}
#footer_kuraso .add_add li {
  display:inline-block;
  letter-spacing:normal;
  margin-right:1em;
}
#footer_kuraso .footer_nav {
  display:-webkit-flex;
  display:flex;
}
#footer_kuraso .footer_nav ul + ul {
  margin-left:35px;
}
#footer_kuraso .footer_nav a {
  display:inline-block;
  padding:3px 0;
  font-size:1.4rem;
  font-weight:500;
}
#footer_kuraso .footer_nav a span {
  display:inline-block;
}
#footer_kuraso .footer_nav .en {
  padding-left:.25em;
}
#footer_kuraso .footer_nav .en:after,
#footer_kuraso .footer_nav .en:before {
  content:"-";
  display:inline-block;
}
#footer_kuraso .footer_nav .en:before {
  margin-right:.25em;
}
#footer_kuraso .footer_nav .en:after {
  margin-left:.25em;
}
#footer_kuraso .md_sns_icon {
  margin-top:55px;
  -webkit-justify-content:flex-end;
  justify-content:flex-end;
}
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#footer_kuraso {
  padding:40px 0 15px;
  text-align:center;
}
#footer_kuraso .box_add dl {
  font-weight:500;
  font-size:1.5rem;
}
#footer_kuraso .box_add dt {
  margin-bottom:25px;
}
#footer_kuraso .box_add dt span {
  display:block;
  margin-bottom:20px;
  font-size:1.5rem;
}
#footer_kuraso .box_add dt img {
  width:101px;
}
#footer_kuraso .add_tel {
  margin-bottom:1em;
  font-size:1.6rem;
}
#footer_kuraso .add_tel a {
  display:inline-block;
  margin-top:10px;
}
#footer_kuraso .add_add {
  font-size:1.4rem;
}
#footer_kuraso .add_add ul {
  margin-top:1em;
}
#footer_kuraso .footer_nav {
  display:none;
}
#footer_kuraso .md_sns_icon {
  margin-top:20px;
}
}


/* ================================================================================
footer_numajiri
================================================================================= */
#footer_numajiri {
  padding:28px 0;
  background:#3f3f3f;
}
#footer_numajiri .inner {
  max-width:1100px;
  margin:0 auto;
}
#footer_numajiri dt {
  width:276px;
  margin-bottom:25px;
}
#footer_numajiri .link_list {
  display:-webkit-flex;
  display:flex;
  font-size:1.4rem;
  font-weight:500;
}
#footer_numajiri .link_list li + li {
  margin-left:1.8em;
}
#footer_numajiri .link_list a {
  color:#fff;
}
#footer_numajiri .link_list a:hover {
  opacity:.7;
}
#footer_numajiri .link_list a:before {
  content:"";
  display:inline-block;
  width:0;
  height:0;
  margin-right:.4em;
  border-style:solid;
  border-width:5px 0 5px 6px;
  border-color:transparent transparent transparent #FFF;
}

/* SP調整 ----------------------------　*/
@media (max-width:768px) {
#footer_numajiri {
  padding:20px 0;
}
#footer_numajiri .inner {
  margin:0 auto;
}
#footer_numajiri dt {
  width:202px;
  margin:0 auto 20px;
}
#footer_numajiri .link_list {
  display:block;
}
#footer_numajiri .link_list li + li {
  margin-left:0;
}
#footer_numajiri .link_list a {
  display:block;
  padding:10px 25px;
  color:#fff;
  background:#3f3f3f;
}
#footer_numajiri .link_list a:hover {
  opacity:1;
  background:#6b6b6b;
}
}


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