@charset "utf-8";
/* Theme Name : www.torizendining.co.jp */
/* ----- reset ----- */
*,
*::before,
*::after { box-sizing: border-box; }
h1,h2,h3,h4,
p,
ul,ol,li,
figure,
figcaption,
blockquote,
dl,dd,
th,td { word-wrap:break-word; overflow-wrap:break-word; }
body { margin:0; min-height:100vh; scroll-behavior: smooth; text-rendering: optimizeSpeed; line-height: 1.5; }
p { margin:0 0 1em; }
ul[class],
ol[class] { list-style:none; padding:0; }
a:not([class]) { text-decoration-skip-ink: auto; }
img { max-width: 100%; display: block; }
article > * + * { margin-top: 1em; }
input,button,textarea,select { font: inherit; }
select,option { appearance:none; -webkit-appearance:none; -moz-appearance:none; -ms-appearance:none; font:inherit; position:relative; background-color:#fff; border:0; border-radius:0; }
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ----- base layout ----- */
body {
  color: #333;
  font: normal 400 16px/1.8 "Lato", "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
main {
  position: relative;
  min-height: 80vh; height: auto;
  margin: 30px auto 0;
  /* max-width: 1920px; */ width: auto;
  z-index: 10;
}
body.home main { margin-top: 0 !important; }

nav li { list-style: none; }
a { color: #333; text-decoration: none; }
a:hover { opacity: 0.65; }
nav a:hover { color: #666; }
address { font-style: normal; }

table { width: 100%;/* max-width: 940px;*/ border-collapse: collapse; border-spacing: 0; }
main .wp-block-table { overflow-x: inherit; }
th { vertical-align: top; }
main aside { padding: 2em 0 4em; background: #f1f5f6;
}
/***#header, #footer***/
header#header {
  position: relative;
  background: #fff;
  box-shadow: 0 0 6px 0px rgb(51 51 51 / 0.2);
  z-index: 998;
}
#header h1 { margin: 0 auto 0 0; }
#header a.logo { line-height: 40px; width: 350px; padding: 0 10px; font-size: 18px; }
#header a.logo img { display: inline; vertical-align: middle; }
#header a.logo,
#header nav a,
#footer nav a { display:block; line-height:56px; }
@media only screen and (max-width: 768px) {
  #header a.logo,
  #header nav a { line-height: 42px; }
}
#header ul,
#footer ul { margin:0; padding:0; list-style: none; }

/*#footer*/
#footer { line-height: 1.5; color: #fff; background-color: #424242; }
#footer a { color: #fff; }
#footer address { display:flex; padding:10px;  margin-right:auto; font-size:90%; }
#footer .mark { width: 75px; margin:1em 30px; }
#footer .footer-left { margin-top:1em;}

/*copyright*/
#footer small { padding: 1rem 0; display: block; text-align: center; font-size: 88%; }

/*breadcrumb*/
#breadcrumb { display: none; }

/* ----- base ----- */
.contents { margin: 0 auto; position: relative; }
#header .contents { background: #fff; z-index: 999; }
#header .contents,
#footer .contents { display: flex; justify-content: space-between; }

main h1 {
  display: flex; justify-content: center; flex-direction: column;
  margin: 0 auto;
  width: 245px;
  text-align: center;
  font-size: 150%; line-height: 1;
}
main h1 i {
  display:inline-block; margin-bottom: 0.5rem;
  font: normal 300 36px/1.3 "Lato", sans-serif; font-weight: 300;
  color: #b61b27; border-bottom: 1px solid #b61b27;
}
main h2 {
  margin: 0 auto 0.5rem;
  padding: 0 0.3rem;
  /*max-width: 940px;*/
}
main h2.titBlack {
  margin-bottom: 2em;
  font-size: 80%;
}
main h2.titBlack i {
  display: block;
  margin-bottom: 0.5rem;
  font: normal 300 36px/1.3 "Lato", sans-serif;
  color: #333;
  border-bottom: 1px solid #333;
}
main h2.titWhite {
  color: #fff;
}
main h2.titWhite i {
  border-bottom: 2px solid #fff;
}
body.page-id-11 main h2 {
  margin: 1em auto 0;
}
main h3 {
  margin: 1rem auto;
  color: #554b4c;
  text-align: center;
}
main h3.titBlack {
  width: 238px;
  color: #333;
  font-weight: normal;
  border-bottom: 2px solid #b61b27;
}
main h3.entry-title { font-size: 110%; }
.tit03 {
 margin: 1.5em 0 1em .5em!important; padding-left: 0.6em; line-height: 1.2; text-align:left!important;
 border-left: 5px solid #b61c27;
}
.tit04 {
  padding: 1rem 0; position: relative;
  text-align: left; font-weight: bold;
}
.tit04::before { content: "■"; }
.page main header:first-child {
  padding: 65px 0;
  height: 216px;
  background: #f7f7f7;
}

/** table, dl*/
.page .wp-block-table table,
.page main dl { margin: 0 auto; text-align: left; border-bottom: 1px solid #cecece; }
.page .wp-block-table td, .page .wp-block-table th { border:none; }
.page .wp-block-table th,
.page main dt { width: 170px; color: #a71120; border-top: 1px solid #cecece; }
.page .wp-block-table td,
.page main dd { border-top: 1px solid #cecece;}
.page main dt { float: left; padding: 1.5rem; }
.page main dd { padding: 1.5rem 0 1.5rem 192px; }
@media only screen and (min-width: 768px) {
  .page .wp-block-table td, .page .wp-block-table th { padding:2em 1em; }
}
/* ----- parts ----- */
iframe.map {
  margin: 0.8em auto 1.5em;
  width: 100%;
  height: 350px;
  vertical-align: middle;
  border: 0;
}
.linkExt {
  position: relative;
  text-align: right !important;
}
.linkExt a {
  display: inline-block;
  padding: 0 2.5em;
}
.linkExt a::after {
  position: absolute;
  top: 0.5rem;
  right: 0.95rem;
  content: "";
  width: 10px;
  height: 10px;
  border-top: 1px solid #333;
  border-right: 1px solid #333;
}
.linkExt a::before {
  position: absolute;
  top: 0.9rem;
  right: 0.7rem;
  content: "";
  width: 18px;
  height: 3px;
  border-bottom: 1px solid #333;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  transform: rotate(135deg);
}

.btn { position: relative; }
.btnWhite { color: #333; border: 1px solid #b3b3b3; background: #fff; }
.btnBeg { width: 60%; background: #f1e7cc; border-radius: 3px; }
.btnRed { color: #b61b27; border: 1px solid #b61b27; background: #fff; }
.btnItems { color: #333; background: #fff; text-align: right; }

a.btn, 
.btn a { display: block; padding: 0.6em 1em; }
a.btn { margin:1em; background:#f1e7cc; }
a.btn::after,
.btn a::after {
  position: absolute;
  top: calc(100% - 1.8em); right: 0.8em;
  content: ""; width: 0.6em;  height: 0.6em;
  border-right: 1px solid #333; border-bottom: 1px solid #333;
  -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg);
}
nav.btn { margin: 0.5em auto 3em; }
@media only screen and (max-width: 767px) {
  .btn { padding: 0.3em 1em; }
  .btn a::after { top: calc(100% - 2.1em); }
  .btnWhite,
  .btnRed { margin: 3em; width: auto; }
}
/*.btnContact*/
nav.btnContact a {
  display: block;
  padding-right: 10px;
  text-align: right;
  color: #fff;
  background: #b61b27 url(//www.torizendining.co.jp/img/icon_mail.svg) no-repeat 10px center;
  background-size: 25px auto;
}

/**subnav*/
nav.contents { margin-top: 4em; max-width: 940px; }
nav.contents .subnav {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 1px auto 3em; padding:0;
  font-size: 86%;
}
nav.contents .subnav li {
  list-style: none;
  position: relative;
}
nav.contents .subnav li a {
  margin: -1px 2.5% 0; padding: 1.5em;
  display: block;
  width: 100%;
  line-height: 1.2;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
nav.contents .subnav li a::after {
  position: absolute;
  top: 2em; right: .5em;
  content: "";
  width: 0.6em; height: 0.6em;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
@media only screen and (min-width: 521px) {
  nav.contents .subnav li { flex-basis: 33.3%; }
}
@media only screen and (max-width: 520px) {
  nav.contents .subnav li { flex-basis: 50%; }
  nav.contents .subnav li a {padding:1em; }
  nav.contents .subnav li a::after {top: 1.35em;right: 0;}
}
/***sns*/
ul.sns {
  text-align: center;
}
ul.sns li {
  display: inline-block;
  margin: 0.5em;
}
ul.sns li img {
  width: 30px;
}
#header ul.sns li a {
  padding: 1em;
}
#footer ul.sns {
  height: 45px;
  margin: 0.5em 1.5em;
  padding: 0 1em;
}
@media only screen and (min-width: 1160px) {
  #footer ul.sns {
    border-right: 1px solid #fff;
  }
}

/***infoArea - home/news */
#home .section { margin:3vh 0 6vh; }
#home .section h2 { max-width:300px; text-align:center; }
#home .section ul { padding:0; }
#home .section li,
.infoArea .entry-title { padding:1em .5em .6em; margin: 0 0 0.6em; list-style: none; border-bottom: 1px solid #ddd; }
#home .section:first-child,
.infoArea .entry-title:first-child { padding-top: 0;}
#home .section time,
.infoArea time { width:6em; display:inline-block; }
#home .section li i,
.infoArea i {
  padding: 0.15rem 0.8rem; margin-right:1em; display: inline-block; 
  color: #fff; font-style: normal; font-size:75%;
  background: #593333; border-radius: 2px;
}
#home .section li p,
.entry-title p { display:inline-block; }
/* .infoArea .entry-title a { padding:1em; } */

@media only screen and (max-width: 767px) {
  #home .section h2 { height: auto; }
  #home .section ul { margin-bottom:3em; padding:0; }
}

/***category - news */
@media only screen and (min-width: 960px) {
  #news .infoArea {
    /*max-width: 940px;*/
    margin: 4em auto;
  }
  #news .infoArea .entry-title {
    display: flex;
  }
  #news .infoArea i {
    display: block;
    flex-basis: 14%;
    text-align: center;
  }
  #news .infoArea time {
    margin-right: 0;
    display: block;
    flex-basis: 18%;
    text-align: center;
  }
}
@media only screen and (max-width: 959px) {
  .infoArea .entry-title { flex-wrap:wrap; }
  #news .infoArea .entry-title a { display: block; margin-top: 0.4em; }
  #news .infoArea i { margin-right: 1em; }
}

/*pagenation*/
nav.pagenation { margin: 2em 0.5em; text-align: center; }
.infoArea .lcp_nextlink,
.infoArea .lcp_prevlink,
.infoArea .page-numbers,
.infoArea .pagenation a,
.infoArea .lcp_currentpage { display: inline-block; padding:.8em 1em; line-height:1; background: #eee; border:none; }
.infoArea .lcp_currentpage,
.current,
.page-numbers:hover { color: #fff; background: #333; }
.lcp_paginator li { border:none!important; }

/* ----- purpose ----- */
body.single .entry-contents p {
  margin-bottom: 1em;
}
body.single .entry-contents a {
  color: #007fac;
}
/* ----- common ----- */
/**flexbox*/
.flexbox {
 display: flex; gap:2vw; flex-wrap: wrap; justify-content: center;
 padding-top: 3em !important;
}
.flexbox.col2 > * { flex-basis: 45%; }
.flexbox.col3 > * { flex-basis: 30%; }

/**panels*/
.panels .flexbox li { padding: 3em 2em; align-self: stretch; align-content: center; border:1px solid #dedede; }
.panels .flexbox a { display: block; line-height: 15; text-align: center; }
.panels .flexbox img { display: inline; vertical-align: middle; }
@media only screen and (min-width: 426px) and (max-width: 1105px) {
  .panels .flexbox.col3 li { padding: 0 20px; flex-basis: 29%; }
  .panels .flexbox.col3 a { line-height: 15;}
}
@media only screen and (max-width: 425px) {
  .panels .flexbox.col3 { display: flex; gap: 1em; }
  .panels .flexbox.col3 li { padding: 0 12px; flex-basis: 44%; }
  .panels .flexbox.col3 a { line-height: 10; }
}
/**tablist*/
ul[role="tablist"] {
  border-bottom: 1px solid #dedede;
}
ul[role="tablist"] li {
  margin-right: -1px;
  margin-bottom: -1px;
  padding: 0.5em 3em;
  border: 1px solid #dedede;
}
ul[role="tablist"] li.active {
  border-bottom-color: #fff;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
.aligncenter,
.textCenter { text-align: center !important; }
.textCenter img { display: inline-block; }
.block,
.visible { display: block; }
.noto400 { font-weight: 400; }
.noto700 { font-weight: 700; }
.font28 { font-size: 28px; }
.font16 { font-size: 16px; }
.fontBlue { color: #018dcd; }
.fontRed { color: #b61b27; }
.m00 { margin: 0 !important; }
.mT10 { margin-top: 1em !important; }
.mT40 { margin-top: 4em !important; }
p.p1em { padding: 0 1em 0.5em; }
.lead {
  display: block;
  margin: 2em auto 1em;
  font-family: "Noto Serif JP", serif;
  text-align: center;
  line-height: 1.8;
}
.normal * {
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  width: 100% !important;
  float: none !important;
  color: #333 !important;
  text-align: left !important;
}
em.copy {
  line-height: 1.8;
  color: #b61b27;
  font: 20px/2 normal;
}

main .wp-block-buttons { margin: 1em auto 2em; }
main .wp-block-button__link { padding:.5em 1.5em; border-radius: 3px; }

/***form*/
.cf-turnstile { text-align: center; }

form { margin-top:2em; border-top: 1px solid #cecece; }
form p { display: inline;}
form #privacyBox p { margin-top:.5em; }
form #privacyBox a { text-decoration: underline; }
label {
  padding: 0.6rem 1rem 1.5rem; margin: 1rem 0;
  display: flex;
  text-align: left;
  border-bottom: 1px solid #cecece;
}
form .label { display: block; color: #333; font-weight: bold; }
input,
textarea,
select { padding:.5em; margin-bottom:.2rem; border: 1px solid #cecece; }
select { padding:.5em 2em .5em .3em; min-height: 32px; width: 100%; color:#333;
  background:#fff url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%20fill%3D%22currentColor%22%20class%3D%22bi%20bi-chevron-down%22%20viewBox%3D%220%200%2016%2016%22%3E%20%3Cpath%20fill-rule%3D%22evenodd%22%20d%3D%22M1.646%204.646a.5.5%200%200%201%20.708%200L8%2010.293l5.646-5.647a.5.5%200%200%201%20.708.708l-6%206a.5.5%200%200%201-.708%200l-6-6a.5.5%200%200%201%200-.708%22%2F%3E%3C%2Fsvg%3E') no-repeat right 5px top 55%; 
}

/* ドロップダウン部分全体のスタイル for iphone*/
::picker(select) {
  border:1px solid #cecece;  
  box-shadow: rgba(15, 15, 15, 0.05) 0px 0px 0px 1px, rgba(15, 15, 15, 0.1) 0px 3px 6px,rgba(15, 15, 15, 0.2) 0px 9px 24px;
}
input[type="submit"] {
  display: block; min-width:300px;
  margin: 1em auto; padding: .8em 3em;
  color: #fff; background: #b61b27; border: 1px solid #ff2828;
}
@media only screen and (min-width: 768px) {
  form .label { width: 250px; }
  form .textareaBox { width:calc(100% - 250px); }
}
.w100 { display: inline-block; width: 100px; margin-right: 0.3em;}
.w200 { display: inline-block; width: 200px; margin-right: 0.3em;}
.textarea { display: inline-block; width:98%; height: 6em;}
.attention { margin-left: 0.5em; color: #ed1c24; font-size: 85%; }
.ex { display: block; font-size: 85%; }
.grecaptcha-badge { margin: 0 auto;}
main#contact div.wpcf7-response-output { margin: 0 0.5em 1em; }

/* ----- entryArea ----- */
.entryArea { padding:2em; }
.entryArea .wp-block-buttons { gap:2em; }
.entryArea .wp-block-button { width:41%;}
@media only screen and (max-width: 767px) {
  .entryArea .wp-block-button { width:94%; }
  .input90 { width:90%!important; margin-right: 0.3em; }
  span[date-name=radio-107] .wpcf7-list-item { width:auto!important; }
  input[type=radio] { width:20px!important; }
  form p { display:block; }

}
/* 採用-エントリーフォームページ */
.page-id-1264 form { border-top:none!important; }
.page-id-1264 table,
.page-id-1264 form.wpcf7-form { max-width: 800px; margin: 15px auto; }
.page-id-1264 form.wpcf7-form input.wpcf7-submit { cursor: pointer; font-weight: bold; transition: background-color 0.3s ease; }
.page-id-1264 form.wpcf7-form input.wpcf7-submit:hover { background: #f25246; opacity: unset; }



/* ----- divisionArea ----- */
.home #divisionArea { padding: 2em 2.5em 0; background: #efefef; }
.page #divisionArea { padding:2.5em; background: #efefef; }
.page #divisionArea h3 { margin: 2em 0 1em; line-height: 1.3; }
.page #divisionArea .wp-block-image { margin-bottom:1em; }
#divisionArea .inner { padding: 3em 1em; margin: 3em 2em 2em; background: #fff; }
#divisionArea .inner table { margin-bottom: 1.5em; }
#divisionArea .inner img { display: inline-block; vertical-align: bottom; margin-right: 6px; }


.imgVisual { margin:2rem 0; text-align:center; }
.imgVisual img { display:inline-block; max-width:600px!important; width:100%; margin:0 auto; }

@media only screen and (max-width: 1023px) {
  .page #direct-sales-division #divisionArea { padding: 1em; font-size: 14px; }
  #divisionArea { padding-inline:1.5em!important; }
  #divisionArea .inner { margin: 0; }
  .page #divisionArea td { padding: 0.3rem 0; border-top: none; }
  .page #divisionArea tr { border-top: 1px dotted #cecece; }
}

/* ----- companyArea ----- */
 .companyArea { padding:0 0 3em;}
 .companyArea .wp-block-columns { margin:0; gap:0 2em; }
 .companyArea .btn { padding-left: 0; margin-top: .5em; border-bottom:1px solid #ddd; }

/*====================
スマホを基本設計にする 320-767/768-1024/(1024-1279)/1025-1280-1920
====================*/

@media only screen and (max-width: 767px) {
  br:not([class]) { display: none; }
  br.br600,
  td br { display: block !important; }
  .page td:nth-child(2) { border: none !important; }
  .wp-block-table td, .wp-block-table th { padding:.8em; }
  a.btn { margin:0 0 .5em!important; }
  main h1 { font-size:1.2em; } 
  main h1 i { font-size:24px; }
  main h2.tit03 { font-size:1em; }
  section,
  p.lead { margin: 2rem auto; }
  /* iframe { width: 80%; } */
  .page main form,
  .page table,
  .page main dl { margin: 1rem 0; padding: 0.8rem 0 0; }
  .page th,
  .page main dt { padding: 0.5rem 0.5rem 0; display: block; width: 100%; text-align: left; }
  .page td,
  .page main dd { padding: 0 0.5rem 0; margin-bottom: 0.5rem; display: block; line-height: 1.5;  border-top: none; }
  .page .wp-block-table th, .page main dt { width:100%; }
  label { padding: 0; display: block; border: 0; }
  form .label { margin-bottom: 0.2rem; }
  .wpcf7 input,
  .wpcf7 textarea { width: 100%; }
  form .attention { display: inline-block; }

  .page-id-11 .flexbox.col3 { padding-top:0 !important; display: block;}
  #footer address .footer-left p { text-align: center;}
}

/*====================ブレイクポイント====================*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .page form,
  .page table,
  .page main dl { margin: 0 auto;}
  .page th,
  .page td,
  .page main dt,
  .page main dd { padding: 1.5rem; }

  /*companyPage*/
  #companyPage iframe { margin-bottom: 40px; }
  #companyPage address { width: 750px; margin: 0 auto 1rem; display: block; text-align: left; }
  #companyPage .normal { margin: 0 auto; padding: 1rem 1.5rem; width: 750px; background: #f7f7f7; }
}

/*====================ブレイクポイント====================*/
@media only screen and (max-width: 1024px) {
  main .contents,
  nav.contents { width: 95%; padding: 1em 2.5%; }
  body.single main .contents { padding: 3em 2.5%; }
  .contents h2,
  .contents h3 { font-size: 130%; text-align: center; }

  #header nav.gnav,
  #header address { display: none; }
  #header a.logo { padding: 0 10px; width: 250px; }
  #header nav.btnContact { margin-right: 42px; }
  #header nav.btnContact a {
    margin: 0 auto;
    width: 45px;
    height: 42px;
    text-indent: 9999px;
    overflow: hidden;
  }
  /*menu*/
  nav[aria-label="menu"] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    text-align: center;
    background: #000;
    transform: translateY(-100%);
    transition: all 0.6s;
    transform: translate3d(0, 0, 0);
    opacity: 0.92;
    z-index: 9000;
  }
  nav[aria-label="menu"] ul {
    padding: 39px 0 10px !important;
    width: 100%;
    z-index: 9001;
  }
  nav[aria-label="menu"] li a {
    display: block;
    padding: 1em 0;
    color: #fff;
  }
  nav[aria-label="menu"].active,
  nav[aria-label="menu"].active ul {
    display: block !important;
  }

  /*navToggle*/
  a.navToggle {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    width: 42px;
    height: 42px;
    background: #000;
    cursor: pointer;
    z-index: 9999;
  }
  a.navToggle span {
    display: block;
    position: absolute;
    left: 6px;
    width: 30px;
    border-bottom: 1px solid #fff;
  }
  a.navToggle span:nth-child(1) {
    top: 10px;
  }
  a.navToggle span:nth-child(2) {
    top: 19px;
  }
  a.navToggle span:nth-child(3) {
    top: 28px;
  }
  /*active*/
  a.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    transform: rotate(-45deg);
  }
  a.navToggle.active span:nth-child(2),
  a.navToggle.active span:nth-child(3) {
    top: 18px;
    left: 6px;
    transform: rotate(45deg);
  }

  #footer .contents { display: block; text-align: center; }
  #footer address { display: inline-block;}
  #footer .mark { margin:.5em auto; width: 38px; }
  #footer nav.gnav { display: none; }
  #footer small { padding: 0; font-size: 12.5px; }
  #footer nav.btnContact a { margin: 1em auto; width: 150px; height: 42px; line-height: 40px; }
}

/*====================ブレイクポイント====================*/
@media only screen and (min-width: 1025px) {
  #header ul.sns,
  #header a.navToggle { display: none !important; height: 0 !important; }
  #header a.logo,
  #header nav a,
  #footer nav a { height: 60px; }
  nav.btnContact a { width: 146px; height: 60px; }
  nav.gnav ul { display: flex; }
  nav.gnav li { margin-right: 1.5rem; }
  main .contents { padding: 3em 0; width: 92%; max-width: 1920px; }
  .entry-contents { width:90%; margin: 2rem auto; }
  .single .entry-contents { width:840px; }

  /*breadcrumb*/
  #breadcrumb { display: block; background: #f7f7f7;}
  #breadcrumb ul { margin: 0 auto; padding: 5px 28px; }
  #breadcrumb li { position: relative; display: inline-block; padding-right: 1.5em; }
  #breadcrumb li a::after { width: 1em;  display: inline-block; position: absolute; right: 0; content: ">"; color: #bbb;}
  #breadcrumb,
  #breadcrumb a { font-size: 13px; color: #666; }

  form.wpcf7 { margin: 0 auto; }
}
/*====================ブレイクポイント====================*/
@media only screen and (min-width: 1280px) {
  #header .contents { width: 100%; }
  #footer .footer-left { margin-left: 50px; }
  body.page main .contents { width: 1280px; }
  body.page main#contact .contents { width: 840px; }
  /* body.single main .contents, 
  /* body.single-post main .contents { width: 940px; } */
}
/*====================ブレイクポイント====================*/
@media only screen and (min-width: 1920px) {
  #header .contents,
  #footer .contents,
  #breadcrumb .contents {  width: 1920px !important; }
}
