@charset "utf-8";
/*
Theme Name: torio-themes-solution
Theme URI: http://www.solution-sy.com/
Author: solution.STC
Author URI: http://www.crossdesign-company.co.jp  
Description: This is a default wordpress themes
Version: 1.0
License: GNU General Public License v2 or later
License URI: LICENSE
*/

* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  background: 0 0;
  box-sizing: border-box;
}

:after, :before {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  overflow-x: hidden;
}

body {
  /*font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "MS Mincho", "MS 明朝", "Meiryo", serif;*/
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  /*font-family: メイリオ, Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  font-size: 18px;
  line-height: 1.6;
  color: #333333;
  width: 100%;
  overflow-x: hidden;
  --white:#fff;
  --lightgrey:#f4f3f3;
  --black:#000000;
  --blue:#12337D;
  --yellow:#f3cc02;
  --orange:#e8a246;
  --green:#4d9e5c;
  --red:#d40000;
  --darkred:#5b2a2a;
  --grey:#9c9c9c;
  --brown:#8f7e4b;
  --redbrown:#4e3f31;
}

@media screen and (max-width: 1520px) {
  body{
    font-size: 16px;
  }
}
@media screen and (max-width: 1080px) {
  body{
    font-size: 14px;
  }
}

address, caption, code, figcaption, pre, th {
  font-size: 1em;
  font-weight: normal;
  font-style: normal;
}

blockquote, q {
  quotes: none;
}

blockquote:after, blockquote:before, q:after, q:before {
  content: '';
  content: none;
}

fieldset, iframe, img {
  border: 0;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

caption, th {
  text-align: left;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

button {
  background: 0 0;
  border: 0;
  box-sizing: content-box;
  color: inherit;
  cursor: pointer;
  font: inherit;
  line-height: inherit;
  overflow: visible;
  vertical-align: inherit;
}

button:disabled {
  cursor: default;
}

audio:not([controls]) {
  display: none;
}

:focus[data-focus-method=mouse]:not(input):not(textarea):not(select), :focus[data-focus-method=touch]:not(input):not(textarea):not(select) {
  outline: 0;
}

::-moz-focus-inner {
  border: 0;
  padding: 0;
}

a, a:link, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

a:active {
  text-decoration: none;
}

ul {
  list-style: none;
}

em {
  font-style: normal;
}

img {
  display: block;
  height: auto;
  max-width: 100%;
}

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #ccc;
  opacity: 1;
}

::-moz-placeholder {
  color: #ccc;
  opacity: 1;
}

input:-ms-input-placeholder {
  color: #ccc;
  opacity: 1;
}

input::-webkit-input-placeholder {
  color: #ccc;
  opacity: 1;
}

::-webkit-scrollbar {
  width: 10px;
  height: 15px;
  background-color: #f3f3f3;
  border-left: 1px solid #dddddd;
}

::-webkit-scrollbar:hover {
  background-color: transparent;
}

::-webkit-scrollbar-thumb {
  cursor: pointer;
  border-radius: 15px;
  background-color: var(--darkred); 
}

::-webkit-scrollbar-thumb:hover {
  background-color: #333;
}

::-webkit-scrollbar-button:start:decrement, ::-webkit-scrollbar-button:end:increment {
  display: none;
}
/*hasbg*/
.hasbg{background-repeat:no-repeat;background-size:cover;background-position:center center;}
.hasbg:after{display:block;content:"";padding-top:100%;}
.hasbg>img{display:none;}

@font-face {
  font-family: 'iconfont';
  src: url('iconfont/iconfont.woff2?t=1731760230767') format('woff2'),
       url('iconfont/iconfont.woff?t=1731760230767') format('woff'),
       url('iconfont/iconfont.ttf?t=1731760230767') format('truetype'),
       url('iconfont/iconfont.svg?t=1731760230767#iconfont') format('svg');
}

.iconfont {
  font-family: "iconfont" !important;
  font-size: 16px;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


@font-face {
  font-family: 'epgyobld';
  src: url('font/EPGYOSHO.ttf') format('truetype');
}
.ftepgyobld{font-family:"epgyobld"!important;}
/*sp mobile-btn*/
/* sp mobile-btn and nav css */

.spscreen {
  display: none; }
.mobilebtn{display:none;}
@media screen and (max-width: 768px) {
  .logged-in .mobilebtn{
    top:60px;
  }
  .mobilebtn {
    position: fixed;
    z-index: 110;
    top: 20px;
    right: 20px;
    display: block; }

  .mobilebtn div {
    width: 30px;
    height: 20px;
    background: none;
    cursor: pointer;
    display: block;
    position: relative;
    right: 0;
    top: 0;
    transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1); }

  .mobilebtn div span {
    width: 30px;
    height: 2px;
    top: 9px;
    background: var(--white);
    display: block;
    position: absolute;
    z-index: 5;
    left: 50%;
    margin: 0 0 0 -15px;
    transform-origin: center;
    -webkit-transform-origin: center;
    -moz-transform-origin: center;
    -o-transform-origin: center;
    -ms-transform-origin: center;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -o-transition: all 0.4s;
    -ms-transition: all 0.4s; }

  .mobilebtn div span:nth-child(1) {
    -moz-transform: translateY(-9px);
    -webkit-transform: translateY(-9px);
    -o-transform: translateY(-9px);
    -ms-transform: translateY(-9px);
    transform: translateY(-9px); }

  .mobilebtn div span:nth-child(3) {
    -moz-transform: translateY(9px);
    -webkit-transform: translateY(9px);
    -o-transform: translateY(9px);
    -ms-transform: translateY(9px);
    transform: translateY(9px); }

  .mobilebtn .active {
    transform:translateX(-200px) rotate(180deg); /* */}

  .mobilebtn .active span:nth-child(1) {
    transform: rotate3d(0, 0, 1, -45deg) !important;
    transform-origin: center center !important;/*0.71429px*/
    width: 30px !important; }

  .mobilebtn .active span:nth-child(2) {
    transform: rotate3d(0, 1, 0, -90deg) !important;
    width: 0!important;
  }

  .mobilebtn .active span:nth-child(3) {
    transform: rotate3d(0, 0, 1, 45deg) !important;
    transform-origin: center center !important;/*0.71429px */
    width: 30px !important; }

  .sp-wrapper-move {
    transform: translateX(0px) !important; }

  .spscreen {
    width: 200px;
    height: 100vh;
    position: fixed;
    z-index: 100;
    background: var(--darkred);
    right: 0;
    top: 0;
    transform: translateX(200px);
    transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);
    display: block; }

  .spscreen .sp-heading {
    width: 100%;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 24px;
    text-transform: uppercase;
    color: #fff; }

  .spscreen nav ul {
    padding: 0 15px; }

  .spscreen nav ul li:first-child {
    border-top: 1px solid var(--white); }

  .spscreen nav ul li {
    border-bottom: 1px solid var(--white); }

  .spscreen nav ul li a {
    color: #fff;
    display: block;
    text-align: center;
    text-decoration: none;
    padding: 10px 0;
    text-transform: uppercase;
    transition: .3s; }

  .spscreen nav ul li a:hover {
    background: #f2f2f2;
    color: #000; }

  .spscreen nav ul li ul{
    display:none;
  }
  .spscreen nav ul li a.current{position:relative;}
  .spscreen nav ul li a.current:after{content:"";border-top:5px solid #fff;border-left:5px solid transparent;border-right:5px solid transparent;position:absolute;top:50%;right:0;transform:translateY(-50%);transform-origin:center;}
  .spscreen nav ul li a.current.active:after{transform:rotate(180deg);}
  .spscreen nav ul li a:hover{background:#f2f2f2;color:#000;}
  .spscreen nav ul li ul{display:none;padding:0;}
  .spscreen nav ul li ul li a{font-size:12px;}
}

.spscreenmask{position:fixed;top:0;right:0;z-index:99;background:rgba(0,0,0,0.6);width:0%;height:100%;transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);}
.spscreenmask.spscreenmaskmove{width:100%;}


/*headerfixed*/
.headerfixed{width:100%;background:var(--black);box-shadow: 0 0 5px 5px rgba(0,0,0,0.3);-webkit-animation: headeranimation .5s linear  0s 1;animation: headeranimation .5s linear  0s 1; }
.headerfixed .sitelogo{width:120px;}
@keyframes headeranimation {
  0% {
    transform:translateY(-100%);
    opacity:0;
  }
  100% {
    transform:translateY(0);
    opacity:1;
  }
}
@-webkit-keyframes headeranimation {
  0% {
    transform:translateY(-100%);
    opacity:0;
  }
  100% {
    transform:translateY(0);
    opacity:1;
  }
}

header{position:fixed;top:0;left:0;z-index:90;width:100%;display:flex;justify-content:space-between;transition: all 500ms cubic-bezier(0.86, 0, 0.07, 1);}



.sitelogo{width:300px;padding:20px 20px 20px 40px;}
@media screen and (max-width: 1520px) {
  .sitelogo{width:240px;padding:10px 20px;}
}
@media screen and (max-width: 1080px) {
  .sitelogo{width:200px;}
}
@media screen and (max-width: 768px) {
  .sitelogo{width:150px;}
}

/* /header css */
/*banner*/
.banner{position:relative;}
.bannerpic{width:100%;height:100%;position:relative;}
.bannerpic:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:360px;background:var(--white);transform:skewY(-10deg);transform-origin:right bottom;}
.bannerpic figure{width:100%;height:100%;} 
.banner .bannermain{}
.banner .bannermain li{overflow:hidden;}
.banner .bannermain figure{width:100%;height:100%;position:relative; }

.bannertext{position:absolute;right:10%;top:0;z-index:10;width:50%;height:100%;display:flex;padding:100px 20px 20px;display:flex;justify-content:flex-end;}
.bannertext h1{font-size:60px;letter-spacing:0.1em; writing-mode: vertical-rl;text-shadow:0 0 5px #ffffff75,0 0 10px #ffffffe0,0 0 10px #ffffff75,0 0 15px #ffffffe0,0 0 10px #ffffff75,0 0 10px #ffffffe0,0 0 15px #ffffffe0,0 0 10px #ffffffe0,0 0 10px #ffffffe0,0 0 15px #ffffff75,0 0 10px #ffffffe0,0 0 10px #ffffffe0,0 0 15px var(--white),0 0 10px #ffffff75,0 0 10px #ffffffe0,0 0 15px #ffffffe0,0 0 10px #ffffff75,0 0 10px #ffffff75,0 0 15px #ffffffe0,0 0 10px #ffffff75,0 0 10px #ffffff75,0 0 15px #ffffff75;margin-top:30px;-webkit-animation: option .5s linear  0s 1;animation: option .5s linear  0s 1;animation-fill-mode:forwards;}
.bannertext h3{}
.bansign{width: 80px;margin-left:80px;}

@keyframes option{
  0% {
 opacity: 0;
 transform: rotateY(90deg);
}
 100% {
 opacity: 1;
 transform: rotateY(0deg);
}
}

@keyframes picmove1 {
 0% {
 -webkit-transform:scale(1.2, 1.2);
transform:scale(1.2, 1.2);
}
 50% {
 -webkit-transform:scale(1, 1);
transform:scale(1, 1);
}
 100% {
 -webkit-transform:scale(1.2, 1.2);
transform:scale(1.2, 1.2);
}
}
@media screen and (max-width: 1520px) {
  .bannerpic:after{height:300px;transform:skewY(-6deg);}
  .bannertext{padding:80px 20px 20px;}
  .bannertext h1{font-size:45px;margin-top:30px;}
  .bansign{width:60px;margin-left:50px;} 
}
@media screen and (max-width: 1080px) {
  .bannerpic:after{height:200px;}
  .bannertext{padding:60px 20px 20px;}
  .bannertext h1{font-size:36px;margin-top:20px;}
  .bansign{width:38px;margin-left:30px;}
}
@media screen and (max-width: 768px) {
  .bannerpic:after{height:150px;transform:skewY(-3deg);}
  .bannertext h1{font-size:28px;margin-top:10px;}
  .bansign{width:30px;margin-left:20px;}
}
@media screen and (max-width: 528px) {
  .bannerpic:after{height:35px;}
  .bannertext h1{font-size:20px;margin-top:5px;}
  .bansign{width:24px;margin-left:10px;}
}

/*/banner*/

/*public*/

.part{padding:80px 40px;}
.partfull{padding:50px 0;}
.w1520{width:100%;max-width:1520px;margin:0 auto;}
.w1320{width:100%;max-width:1320px;margin:0 auto;}
.w1200{width:100%;max-width:1200px;margin:0 auto;}
.w1100{width:100%;max-width:1100px;margin:0 auto;}
@media screen and (max-width: 1080px) {
  .part{padding:30px 20px;}
  .partfull{padding:30px 0;}
}


.flex{display:flex;}
.flexwrap{flex-wrap: wrap;}
.justifyspacebetween{justify-content:space-between;}
.justifycenter{justify-content:center;}
.aligncenter{align-items:center;}
.flexcolumn{flex-direction:column;}
.flexrowreverse{flex-direction:row-reverse;}
.flexcenter{justify-content:center;align-items:center;}

.layout{display:flex;flex-wrap: wrap;}
.avcol2{width:50%;}
.avcol3{width:33.333333%;}
.avcol4{width:25%;}
.avcol5{width:20%;}
.avcol6{width:16.666667%;}
.pcshow{display:block!important;}
.spshow{display:none!important;;}
@media screen and (max-width: 768px) {
.pcshow{display:none!important;;}
.spshow{display:block!important;;}
}

.bgpartgrey{position:relative;}
.bgpartgrey:after{content:"";background:#ececec;position:absolute;top:0;left:0;width:100%;height:100%;transform:skewY(-5deg);}
.bgpartlightgrey{position:relative;}
.bgpartlightgrey:after{content:"";background:#f3f3ef;position:absolute;top:0;left:0;width:100%;height:100%;transform:skewY(-5deg);}
.patternbg{background:url(img/patternbg.jpg) repeat;}
.cloudsbg{background:url(img/cloudsbg.jpg) repeat;background-size:contain;background-position:center;}
.ftminchao{font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", "MS Mincho", "MS 明朝", "Meiryo", serif;}

.colorwhite{color:var(--white);}
.colorlightgrey{color:var(--lightgrey);}
.colordarkred{color:var(--darkred);}

.roundpic{border-radius:50%;overflow:hidden;}
.textcenter{text-align:center;}
.bidsize{font-size:280px;}
.t1{}
.t2{font-size:45px;}
.t3{font-size:38px;}
.t5{font-size:24px;}
@media screen and (max-width: 1520px) {
  .bidsize{font-size:160px;}
  .t1{}
  .t2{font-size:38px;}
  .t3{font-size:32px;}
  .t5{font-size:20px;}
}
@media screen and (max-width: 1080px) {
  .bidsize{font-size:100px;}
  .t1{}
  .t2{font-size:30px;}
  .t3{font-size:24px;}
  .t5{font-size:18px;}
}
@media screen and (max-width: 768px) {
  .bidsize{font-size:50px;}
  .t1{}
  .t2{font-size:24px;}
  .t3{font-size:18px;}
}

.twocolumn{display:flex;justify-content:space-between;flex-wrap:wrap;width:100%;}
.twocolumn .text{width:calc(50% - 20px);}
.twocolumn .pic{width:calc(50% - 20px);}
@media screen and (max-width: 1080px) {
  .twocolumn .text{width:calc(50% - 10px);}
  .twocolumn .pic{width:calc(50% - 10px);}
}
@media screen and (max-width: 768px) {
  .twocolumn .text{width:100%;margin-bottom:20px;}
  .twocolumn .pic{width:100%;}
}

.sharelist{display:flex;flex-wrap:wrap;}
.sharelist li{list-style-type:none;margin-right:30px;}
.sharelist li a{font-size:50px;color:var(--grey);transition:.3s;}
.sharelist li a:hover{text-decoration:none;color:var(--darkred);}
@media screen and (max-width: 1520px) {
  .sharelist li {margin-right:20px;}
  .sharelist li a{font-size:38px;}
}
@media screen and (max-width: 1080px) {
  .sharelist li {margin-right:10px;}
  .sharelist li a{font-size:28px;}
}


.item{display:block;}
.item:hover{text-decoration:none;color:var(--black);}
.itempic{overflow:hidden;margin-bottom:15px;}
.itempic figure{transition:.3s;}
.itempic figure:after{padding-top:70%}
.item:hover .itempic figure{transform:scale(1.1,1.1);}
.itemtext{}
.itemtext p{margin-bottom:15px;line-height:1.8;}
.itemtext strong{font-weight:normal;}
@media screen and (max-width: 1080px) {
  .itempic{margin-bottom:10px;}
  .itemtext p{margin-bottom:7px;line-height:1.6;}
}

.sidecontact{position:fixed;right:0;top:10%;z-index:90; width:60px;border-radius:30px;padding:2px;background: linear-gradient(to bottom, #9f8651 0%, #73551c 32%, #fdf1da 50%,#705218 65%, #bea97b 100%);}
.sidecontact a{color:var(--white);display:flex;flex-direction:column;justify-content:center;align-items:center; padding:30px 20px;border-radius:30px;border:1px solid var(--white);background:var(--darkred);text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.36);font-size:24px;line-height:1.5;text-align:center;}
.sidecontact a:hover{text-decoration:none;}
.sidecontact a span{}
.sidecontact a i{margin-top:20px;}
.iconarrow{display:flex;flex-direction:column;justify-content:center;align-items:center;width:36px;height:36px;border-radius:50%;background:var(--white);}
.iconarrow:before{content:"";width:2px;height:14px;background:var(--darkred);}
.iconarrow:after{content:"";width:10px;height:10px;border:solid var(--darkred);border-width:0 0 2px 2px;transform:rotate(-45deg);margin-top:-10px;}
@media screen and (max-width: 1080px) {
  .sidecontact{width:38px;}
  .sidecontact a{padding:20px 5px;font-size:16px;line-height:1.2;}
  .sidecontact a i{margin-top:10px;}
  .iconarrow{width:20px;height:20px;}
  .iconarrow:before{width:1px;height:8px;}
  .iconarrow:after{width:5px;height:5px;margin-top:-5px;}
}
@media screen and (max-width: 768px) {
  .sidecontact{bottom:0;top:auto;bottom:0; width:100%;border-radius:0;}
  .sidecontact a{flex-direction:row;border-radius:0;padding:10px;}
  .sidecontact a i{margin-top:0;margin-left:10px;transform:rotate(-90deg);}
}

.number{background:url(img/num.png) no-repeat;background-size:contain;background-position:center;display:flex;justify-content:center;align-items:center;color:var(--white);}

/*scrolltop*/
.scrolltop{position: fixed;right: 2%;bottom:5%;z-index: 70;transition:.5s;background:var(--darkred);color:var(--white);width: 50px;height: 50px;display: flex;justify-content: center;align-items: center;text-decoration:none;padding:15px 10px 10px 10px;border-radius:50%;}
.scrolltop:after{content:"";display:block;width:16px;height:16px;border:solid var(--white);border-width:2px 2px 0 0;transform:rotate(-45deg);}
@media screen and (max-width: 1080px) {
  .scrolltop{width: 40px;height: 40px;padding:5px 0 0 0;}
}


/*/public*/

.paragraph{}
.paragraph p{line-height:2;}
.paragraph p:not(:last-child){margin-bottom:30px;}
@media screen and (max-width: 1520px) {
.paragraph p{line-height:1.8;}
.paragraph p:not(:last-child){margin-bottom:20px;}
}


.charm{}
.charm .charmmain{position:relative;z-index:10;}
.charm .twocolumn{margin-bottom:50px;}
.charm .twocolumn .pic{width:calc(58% - 20px);}
.charm .twocolumn .text{width:calc(42% - 20px);position:relative;}
.charm .twocolumn .text .textpic{top:-60%;width:360px;}
.charm .twocolumn .text .bidsize{ }
.charm .twocolumn .text .t3{writing-mode: vertical-rl;position:relative;z-index:10;font-weight:bold;letter-spacing:0.2em;}
.charm .charmp{}
@media screen and (max-width: 1520px) {
  .charm .twocolumn{margin-bottom:30px;}
  .charm .twocolumn .pic{width:calc(55% - 20px);}
  .charm .twocolumn .text{width:calc(45% - 20px);}
  .charm .twocolumn .text .textpic{width:300px;}
}
@media screen and (max-width: 1080px) {
  .charm .twocolumn{margin-bottom:20px;}
  .charm .twocolumn .pic{width:calc(55% - 10px);}
  .charm .twocolumn .text{width:calc(45% - 10px);}
  .charm .twocolumn .text .textpic{width:200px;}
}
@media screen and (max-width: 768px) {
  .charm .twocolumn .pic{width:100%;}
  .charm .twocolumn .text{width:100%;padding:20px 0;}
  .charm .twocolumn .text .bidsize{writing-mode: horizontal-tb;font-size:30px;text-align:center;top:auto;bottom:0%;transform:translate(-50%,50%);}
  .charm .twocolumn .text .t3{writing-mode:horizontal-tb;}
}


.thorn.part{padding-top:120px}
.thorn .thornmain{position:relative;z-index:10;}
.thorn .twocolumn{margin-bottom:80px;align-items:center;}
.thorn .twocolumn .pic{width:calc(58% - 20px);}
.thorn .twocolumn .text{width:calc(42% - 20px);position:relative;}

.thorn .twocolumn .text .textpic{top:-130%;width:300px;}
.thorn .twocolumn .text .t3{writing-mode: vertical-rl;position:relative;z-index:10;font-weight:bold;letter-spacing:0.1em;}
.thorn .twocolumn .text .t3 span:last-child{padding-top:1em;}
.thorn .thornp{padding-left:42%;}

.textpic{position:absolute; }
@media screen and (max-width: 1520px) {
  .thorn.part{padding-top:80px;}
  .thorn .twocolumn{margin-bottom:60px;}
  .thorn .twocolumn .pic{width:calc(55% - 20px);}
  .thorn .twocolumn .text{width:calc(45% - 20px);}
  .thorn .twocolumn .text .textpic{top:-100%;width:240px;}
  .thorn .thornp{padding-left:36%;}
}
@media screen and (max-width: 1080px) {
  .thorn.part{padding-top:60px;}
  .thorn .twocolumn{margin-bottom:50px;}
  .thorn .twocolumn .pic{width:calc(55% - 10px);}
  .thorn .twocolumn .text{width:calc(45% - 10px);}
  .thorn .twocolumn .text .textpic{top:-80%; width:150px;}
  .thorn .thornp{padding-left:30%;}
}
@media screen and (max-width: 768px) {
  .thorn.part{padding-top:30px;}
  .thorn .twocolumn{margin-bottom:30px;}
  .thorn .twocolumn .pic{width:100%;}
  .thorn .twocolumn .text{width:100%;padding:20px 0;}
  .thorn .twocolumn .text .bidsize{font-size:30px;text-align:center;top:auto;bottom:0%;transform:translate(-50%,50%);}
  .thorn .twocolumn .text .t3{writing-mode:horizontal-tb;}
  .thorn .thornp{padding-left:0%;}
}


.variety{}

.varietytop{}
.variety .varietytop.twocolumn .text .t3{/*writing-mode: vertical-rl;*/position:relative;z-index:10;font-weight:bold;letter-spacing:0.1em;margin:0;display:flex;align-items:center;}
.varietytop .text{position:relative;display:flex;justify-content:center;}
.varietytop .text .bidsize{position:absolute;left:50%;top:50%;transform:translate(-36%,-50%); width:3em;/*220px*/line-height:1.2;letter-spacing:0.1em;}
@media screen and (max-width: 1520px) {
/*   .varietytop .text .bidsize{width:160px;} */
}
@media screen and (max-width: 1080px) {
/*   .varietytop .text .bidsize{width:100px;} */
}
@media screen and (max-width: 768px) {
  .varietytop .text .bidsize{width:100%;}
  .variety .varietytop.twocolumn .text {padding:20px 0;}
  .variety .varietytop.twocolumn .text .bidsize{text-align:center;top:auto;bottom:0;transform:translate(-50%,50%);}
  .variety .varietytop.twocolumn .text .t3{writing-mode:horizontal-tb;}
}

.variety .twocolumn{margin:60px auto;}
.variety .twocolumn .text{width:calc(45% - 20px);}
.variety .twocolumn .text .t3{font-weight:normal;margin-top:20px;margin-bottom:30px;}
.variety .twocolumn .text p{margin-bottom:30px;line-height:2;letter-spacing:1px;}
.variety .twocolumn .pic{width:calc(55% - 20px);}
@media screen and (max-width: 1520px) {
  .variety .twocolumn .text p{margin-bottom:20px;line-height:1.8;}
}
@media screen and (max-width: 1080px) {
  .variety .twocolumn{margin:30px auto;}
  .variety .twocolumn .text{width:calc(45% - 10px);}
  .variety .twocolumn .text .t3{margin-top:10px;margin-bottom:20px;}
  .variety .twocolumn .text p{margin-bottom:10px;line-height:1.6;}
  .variety .twocolumn .pic{width:calc(55% - 10px);}
}
@media screen and (max-width: 768px) {
  .variety .twocolumn{margin:20px auto;}
  .variety .twocolumn .text{width:100%;}
  .variety .twocolumn .pic{width:100%;}
}



.varietylist{margin-bottom:60px;}
.varietylist ul{margin-bottom:-60px;margin-right:-60px;}
.varietylist ul li{margin-bottom:60px;padding-right:60px;}
@media screen and (max-width: 1520px) {
.varietylist ul{margin-bottom:-30px;margin-right:-30px;}
.varietylist ul li{margin-bottom:30px;padding-right:30px;}

}
@media screen and (max-width: 1080px) {
.varietylist ul{margin-bottom:-20px;margin-right:-20px;}
.varietylist ul li{margin-bottom:20px;padding-right:20px;}
}
@media screen and (max-width: 768px) {
.varietylist ul li{width:50%;}
}
@media screen and (max-width: 568px) {
.varietylist ul li{width:100%;}
.varietylist ul li .varietyitem{width:100%;max-width:320px;margin:0 auto;}
}

.varietyitem{display:flex;flex-direction:column;justify-content:center;}
.varietyitem h3{font-size:30px;margin:30px auto ;letter-spacing:0.2em;}
.varietyitem p{letter-spacing:1px;line-height:1.8;}
@media screen and (max-width: 1520px) {
  .varietyitem h3{font-size:24px;margin:20px auto ;letter-spacing:0.1em;}
}
@media screen and (max-width: 1080px) {
  .varietyitem h3{font-size:18px;margin:10px auto ;letter-spacing:2px;}
}

.disclosure{}
.disclosure .disclosuremain{position:relative;z-index:10;}
.disclosure .twocolumn{margin:80px auto;align-items:flex-end;}
.disclosure .twocolumn .text{width:calc(45% - 80px);}
.disclosure .twocolumn .text h3{margin-bottom:50px;color:var(--redbrown);font-weight:normal;}
.disclosure .twocolumn .text p{margin-bottom:30px;letter-spacing:1px;line-height:2;}
.disclosure .twocolumn .pic{width:55%;}
@media screen and (max-width: 1520px) {
  .disclosure .twocolumn{margin:50px auto;}
  .disclosure .twocolumn .text{width:calc(50% - 50px);}
  .disclosure .twocolumn .text h3{margin-bottom:30px;}
  .disclosure .twocolumn .text p{margin-bottom:15px;}
  .disclosure .twocolumn .pic{width:50%;}
}
@media screen and (max-width: 1080px) {
  .disclosure .twocolumn{margin:30px auto;align-items:flex-start;}
  .disclosure .twocolumn .text{width:calc(50% - 20px);}
  .disclosure .twocolumn .text h3{margin-bottom:20px;}
  .disclosure .twocolumn .text p{margin-bottom:10px;line-height:1.8;}
}
@media screen and (max-width: 768px) {
  .disclosure .twocolumn{width:100%;max-width:500px;margin:20px auto;}
  .disclosure .twocolumn .text{width:100%;}
  .disclosure .twocolumn .pic{width:100%;}
}



.recipe{}
.recipe .t2{margin-bottom:60px;letter-spacing:0.2em;}
.recipelist{}
.recipelist .twocolumn{margin:50px auto;}
.recipelist .twocolumn .pic{width:calc(62% - 120px);}
.recipelist .twocolumn .pic figure:after{padding-top: 70%;}
.recipelist .twocolumn .text{width:38%;/*writing-mode: vertical-rl;*/}
.recipelist .twocolumn .text h3{display:flex;flex-wrap:wrap;/*flex-direction:column;*/justify-content:space-between;align-items:center;width:100%;/*margin-left:50px;*/margin-bottom:20px;font-weight:normal;letter-spacing:0.1em;line-height:1.1;}
.recipelist .twocolumn .text h3 .number{padding:10px;border-radius:50%;width:90px;height:90px;font-size:30px;}
.recipelist .twocolumn .text h3 img{width:90px;height:90px;}
.recipelist .twocolumn .text h3 div{display:flex;/*flex-direction:column;*/flex-wrap:wrap;width:calc(100% - 110px);}
.recipelist .twocolumn .text h3 span{width:50%;}
.recipelist .twocolumn .text h3 span:last-child{text-indent:2em;}
.recipelist .twocolumn .text p{margin-left:30px;letter-spacing:1px;line-height:2;}
@media screen and (max-width: 1520px) {
  .recipe .t2{letter-spacing:0.1em;margin-bottom:30px;}
  .recipelist .twocolumn .pic{width:calc(55% - 70px);/*68*/}
  .recipelist .twocolumn .text{width:45%;/*32*/}
  .recipelist .twocolumn .text h3{/*width:80px;margin-left:30px;*/}
  .recipelist .twocolumn .text h3 .number{width:70px;height:70px;font-size:20px;}
  .recipelist .twocolumn .text h3 img{width:70px;height:70px;}
  .recipelist .twocolumn .text h3 div{width:calc(100% - 90px);}
  .recipelist .twocolumn .text p{margin-left:20px;line-height:1.8;}
}
@media screen and (max-width: 1080px) {
  .recipe .t2{letter-spacing:1px;margin-bottom:20px;}
  .recipelist .twocolumn{margin:30px auto;}
  .recipelist .twocolumn .pic{width:calc(55% - 30px);}
/*   .recipelist .twocolumn .text{width:45%;} */
/*   .recipelist .twocolumn .text h3{width:60px;} */
  .recipelist .twocolumn .text h3 .number{width:60px;height:60px;font-size:18px;}
  .recipelist .twocolumn .text h3 div{width:calc(100% - 70px);}
  .recipelist .twocolumn .text h3 img{width:50px;height:50px;}
  .recipelist .twocolumn .text p{margin-left:10px;line-height:1.6;}
}
@media screen and (max-width: 768px) {
  .recipelist .twocolumn{width:100%;max-width:500px;margin:20px auto;}
  .recipelist .twocolumn .pic{width:100%;margin-bottom:20px;}
  .recipelist .twocolumn .text{width:100%;writing-mode: horizontal-tb;}
  .recipelist .twocolumn .text h3{width:100%;flex-direction:row;justify-content:flex-start;align-items:center;margin-left:0;margin-bottom:20px;}
  .recipelist .twocolumn .text h3 .number{width:45px;height:45px;}
  .recipelist .twocolumn .text h3 div{height:auto;width:auto;margin-left:10px;width:calc(100% - 60px);}
  .recipelist .twocolumn .text h3 span{width:auto;}
  .recipelist .twocolumn .text h3 span:last-child{text-indent:0;}
  .recipelist .twocolumn .text h3 img{width:30px;height:30px;}
  .recipelist .twocolumn .text p{margin-left:0;margin-bottom:15px;}
}

.voice .t2{margin-bottom:50px;color:var(--white);letter-spacing:0.5em;margin-right:-0.5em;font-weight:normal;}
.voicelist{padding:100px;background:var(--white);}
.voicelist ul{margin-bottom:-50px;margin-right:-50px;}
.voicelist ul li{margin-bottom:50px;padding-right:50px;}
.voiceitem{border:1px solid var(--brown);border-radius:2px;background:var(--white);padding:30px 20px;}
.voicepic{width:100%;max-width:200px;margin:0 auto 30px;}
.voicepic img{}
.voiceitem h3{margin-bottom:20px;}
.voiceitem h3 span{margin-left:20px;}
@media screen and (max-width: 1520px) {
  .voice .t2{margin-bottom:30px;letter-spacing:0.3em;margin-right:-0.3em;}
  .voicelist{padding:50px;}
  .voicelist ul{margin-bottom:-30px;margin-right:-30px;}
  .voicelist ul li{margin-bottom:30px;padding-right:30px;}
  .voiceitem{padding:20px;}
  .voicepic{max-width:160px;margin:0 auto 20px;}
  .voiceitem h3{margin-bottom:15px;}
}
@media screen and (max-width: 1080px) {
  .voice .t2{margin-bottom:20px;letter-spacing:0.1em;margin-right:-0.1em;}
  .voicelist{padding:20px;}
  .voicelist ul{margin-bottom:-20px;margin-right:-20px;}
  .voicelist ul li{margin-bottom:20px;padding-right:20px;}
  .voicepic{max-width:120px;margin:0 auto 10px;}
  .voiceitem h3 span{margin-left:10px;}
}
@media screen and (max-width: 768px) {
  .voicelist ul li{width:50%;}
}
@media screen and (max-width: 568px) {
  .voicelist ul li{width:100%;}
  .voicelist ul li .voiceitem{max-width:360px;margin:0 auto;}
}




.product{}
.product .t2{margin-bottom:50px;font-weight:normal;letter-spacing:0.5em;margin-right:-0.5em;}
.productlist{}
.productlist ul{margin-right:-38px;margin-bottom:-38px;}
.productlist ul li{padding-right:38px;margin-bottom:38px;}
.productlist ul li figure:after{padding-top:70%;}
@media screen and (max-width: 1520px) {
  .product .t2{margin-bottom:30px;letter-spacing:0.3em;margin-right:-0.3em;}
  .productlist ul{margin-right:-30px;margin-bottom:-30px;}
  .productlist ul li{padding-right:30px;margin-bottom:30px;}
}
@media screen and (max-width: 1080px) {
  .product .t2{margin-bottom:20px;letter-spacing:0.1em;margin-right:-0.1em;}
  .productlist ul{margin-right:-20px;margin-bottom:-20px;}
  .productlist ul li{padding-right:20px;margin-bottom:20px;}
}
@media screen and (max-width: 768px) {
  .productlist ul li{width:50%;}
}
@media screen and (max-width: 568px) {
  .productlist ul li{width:100%;}
  .productlist ul li .item{width:100%;max-width:320px;margin:0 auto;}
}




.companyinfo{}
.companyinfo .twocolumn{}
.companyinfo .twocolumn .pic{width:640px;}
.companyinfo .twocolumn .pic figure{width:100%;}
.companyinfo .twocolumn .pic figure:after{padding-top:70%;}
.companyinfo .twocolumn .text{width:calc(100% - 750px);}
.companyinfo .twocolumn .text .t2{font-weight:normal;letter-spacing:0.7em;margin-bottom:50px;}
.companyinfo .twocolumn .text p{line-height:1.8;letter-spacing:1px;margin-bottom:30px;}
@media screen and (max-width: 1520px) {
  .companyinfo .twocolumn .pic{width:500px;}
  .companyinfo .twocolumn .text{width:calc(100% - 600px);}
}
@media screen and (max-width: 1080px) {
  .companyinfo .twocolumn .pic{width:450px;}
  .companyinfo .twocolumn .text{width:calc(100% - 480px);}
  .companyinfo .twocolumn .text .t2{letter-spacing:0.5em;margin-bottom:30px;}
  .companyinfo .twocolumn .text p{margin-bottom:20px;}
}
@media screen and (max-width: 768px) {
  .companyinfo .twocolumn .pic{width:300px;}
  .companyinfo .twocolumn .text{width:calc(100% - 320px);}
  .companyinfo .twocolumn .text .t2{letter-spacing:0.2em;margin-bottom:20px;}
  .companyinfo .twocolumn .text p{margin-bottom:10px;}
}
@media screen and (max-width: 600px) {
  .companyinfo .twocolumn .pic{width:100%;max-width:380px;margin:0 auto 20px;}
  .companyinfo .twocolumn .text{width:100%;max-width:380px;margin:0 auto;}
}


/* footer css */
.copyright{background:var(--darkred);width:100%;}
.copyright p{width:100%;max-width:1400px;margin:0 auto;padding:10px 40px;font-size:14px;text-align:center;color:#fff;}

@media screen and (max-width: 1080px) {
  .copyright p{padding:10px 20px;font-size:12px;}
}
@media screen and (max-width: 768px) {
  .copyright p{padding:5px 10px;}
}
/* /footer css */






