/*
Theme Name:NITOERU
Theme URI:https://nitoeru.co.jp/
Version: 1.0
Author:
Author URI:https://nitoeru.co.jp/
Description: Theme for "NITOERU".
*/

@charset "utf-8";
/* CSS Document */


html, body {min-width:100%;}

html {font-size:62.5%; line-height:1.5;}

body {
color:#555;
font-family: YakuHanJP, "Poppins", "Inter", /*"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo,*/ sans-serif;
font-weight:400;
margin:0;
padding:0;
-webkit-text-size-adjust:100%;
transition:0.2s;
background:#FFF;
}

.mincho {font-family:YakuHanMP, 'Noto Serif JP', serif;}
em {font-style:normal !important; color:#cf2e2e;}


*{text-align:justify; text-justify:inter-ideograph;
background-size:contain !important; background-repeat:no-repeat !important;}


div,ul,ol,li,p,h1,h2,h3,h4,h5,h6,input,dl,dt,dd,figure {
padding:0;
margin:0;
}

ul,ol {list-style-type: none;}
img {border:none; max-width:100% !important; height:auto;}


/* link */
a {transition:0.2s;}
a:link {color:#111; text-decoration:none;}
a:visited {color:#111; text-decoration:none;}
a:active {color:#6843b7; text-decoration:underline;}
a:hover {color:#6843b7; text-decoration:underline;}
a img {transition:0.2s;}
a:hover img {filter:alpha(opacity=80);-moz-opacity:0.80;opacity:0.80;}

div.clear {clear:both;}


/* 動いて表示 -------------------------------------------------- */
.move {opacity:0; transform:translate3d(0, 25px, 0); transition:1s;}
.move.animated {opacity:1; transform:translate3d(0, 0, 0);}


/* HEADER -------------------------------------------------- */
HEADER {width:100%; height:80px; margin:0 auto; position:fixed; left:0; right:0; top:0; background:#333333CC; z-index:999;}

HEADER H1.head_logo,
HEADER a.head_logo {display:block; width:190px; height:44px; background:url("images/logo_w.png") center center; background-size:contain !important; margin:18px 0 18px 100px; float:left;}
HEADER H1.head_logo span,
HEADER a.head_logo span {display:none;}

HEADER div.head_menu {}
HEADER div.head_menu ul {display:table; margin:auto; padding-right:100px;}
HEADER div.head_menu ul li {display:inline-block;}

HEADER div.head_menu ul li a {display:block; font-size:1.8rem; font-weight:500; letter-spacing:0.1em; line-height:1; text-align:center; text-decoration:none; padding:31px 20px; color:#FFF; position:relative; transition:.2s;}
HEADER div.head_menu ul li a::after {content:""; display:block; height:1px; background:#FFF; position:absolute; left:10px; right:10px; bottom:20px; z-index:-1; opacity:0; transform:scaleX(0); transition:.2s;}
HEADER div.head_menu ul li a:hover::after {content:""; opacity:1; transform:scaleX(1);}
HEADER div.head_menu ul li a p {display:none;}

HEADER a.contact {position:fixed; top:100px; right:0; z-index:500; display:block; background:#6843b7; width:110px; height:100px; box-sizing:border-box; padding:13px 0 0 0; border-top-left-radius:5px; border-bottom-left-radius:5px;}
HEADER a.contact {font-size:1rem; letter-spacing:0.1em; text-align:center; font-weight:400; line-height:1.5rem; color:#FFF; text-decoration:none;}
HEADER a.contact p {font-size:1rem; letter-spacing:0.1em; text-align:center; font-weight:400; position:relative; margin-top:4px; padding-top:42px;}
HEADER a.contact p::before {font-family:FontAwesome; content:"\f0e0"; font-size:2.6rem; line-height:2.8rem; color:#6843b7; display:block; position:absolute; left:0; right:0; top:6px; margin:auto;}
HEADER a.contact p::after {content:""; display:block; width:40px; height:40px; border-radius:100%; background:#FFF; position:absolute; left:0; right:0; top:0; margin:auto; z-index:-1;}
HEADER a.contact:hover {background:#333; width:120px;}
HEADER a.contact:hover p::before {color:#333;}


/* MAIN -------------------------------------------------- */
MAIN {margin:80px 0 0;}


/* FOOTER -------------------------------------------------- */
div.bg {position:absolute; top:70vh; background:#faf9f5; width:100%; z-index:-3; height:300px;}
div.bg::before {content:""; background:#faf9f5; position:absolute; left:0; right:0; top:-200px; bottom:299px; clip-path: polygon(100% 0, 100% 100%, 0 100%);}
div.bg::after {content: ""; background:#faf9f5; position:absolute; left:0; right:0; top:299px; bottom:-200px; clip-path: polygon(0 0, 100% 0, 0 100%);}
body:not(.index) div.bg {top:20vh;}
body.about div.bg {display:none;}
body.news div.bg {display:none;}



a.pagetop {position:fixed; right:20px; color:#555; text-decoration:none; display:block; width:50px; height:50px; background:#FFF; border:1px #555 solid; border-radius:50%; z-index:1000;}
a.pagetop::before {font-family:"FontAwesome"; content:"\f077"; display:block; text-align:center; font-size:23px; line-height:50px; transition:0.2s;}
a.pagetop:hover {background:#555; color:#FFF;}
a.pagetop:hover::before {line-height:45px; color:#FFF;}
a.pagetop span {display:none;}


/*お知らせ*/
div.foot_news {background:#f2f2f3; padding:100px 0;}
div.foot_news H2 {font-size:3rem; letter-spacing:0.25em; font-weight:400; text-align:center;}
div.foot_news H2 p {font-size:1.5rem; font-weight:200; letter-spacing:0.1em; text-align:center; color:#c79f6c;}

div.foot_news ul.list {width:1000px; margin:30px auto 0; line-height:30px;}
div.foot_news ul.list li {border-bottom:1px #9b9b9b solid; margin-bottom:1em;}
div.foot_news ul.list li a {display:block; overflow:hidden; padding:10px 0 15px; text-decoration:none;}
div.foot_news ul.list li a p {float:left; font-size:1.4rem;}
div.foot_news ul.list li a p.date {width:7em; font-size:1.2rem; font-weight:300;}
div.foot_news ul.list li a p.category {width:8em; font-size:1.3rem; line-height:2.8rem; text-align:center; color:#555; border:1px #555 solid; transition:.2s;}
div.foot_news ul.list li a:hover p.category {background:#555; color:#FFF;}
div.foot_news ul.list li a p.ttl {letter-spacing:0.05em; margin-left:1.5em; width:calc(100% - 17em); display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden;}

div.foot_news ul.list li.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s;}
div.foot_news ul.list li.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div.foot_news ul.list li.move:nth-of-type(1) {transition-delay:.1s}
div.foot_news ul.list li.move:nth-of-type(2) {transition-delay:.2s}
div.foot_news ul.list li.move:nth-of-type(3) {transition-delay:.3s}

div.foot_news ul.list_column {width:1000px; margin:60px auto 0; font-size:0;}
div.foot_news ul.list_column li {display:inline-block; width:300px; vertical-align:top;}
div.foot_news ul.list_column li:nth-of-type(n+2) {margin-left:50px;}
div.foot_news ul.list_column li a {display:block; text-decoration:none;}
div.foot_news ul.list_column li a p.ph {display:flex; width:300px; height:215px; overflow:hidden; position:relative; margin-bottom:10px;}
div.foot_news ul.list_column li a p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0; opacity:1; transition:transform 0.2s linear;}
div.foot_news ul.list_column li a:hover p.ph img {transform: scale(1.1);}
div.foot_news ul.list_column li a p.ttl {font-size:1.4rem; line-height:2rem; letter-spacing:0.05em;}

div.foot_news ul.list_column li.move {opacity:0; transform:translate3d(0, 15px, 0); transition:1s;}
div.foot_news ul.list_column li.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div.foot_news ul.list_column li.move:nth-of-type(1) {transition-delay:.1s}
div.foot_news ul.list_column li.move:nth-of-type(2) {transition-delay:.2s}
div.foot_news ul.list_column li.move:nth-of-type(3) {transition-delay:.3s}



FOOTER {margin:160px 0 0;}

FOOTER div.foot_guide {}
FOOTER div.foot_guide H2 {display:table; margin:0 auto;}
FOOTER div.foot_guide H2 a {display:block; width:525px; height:125px; background:url("images/logo.png") center center; background-size:contain !important;}
FOOTER div.foot_guide H2 a span {display:none;}
FOOTER div.foot_guide H2 p {font-size:1.6rem; font-weight:400; letter-spacing:0.1em; color:#6843b7; text-align:center; margin-top:1em;}

FOOTER div.foot_guide ul.address {margin:60px 0 80px;}
FOOTER div.foot_guide ul.address li {font-size:1.5rem; line-height:3rem; text-align:center;}
FOOTER div.foot_guide ul.address li H3 {font-size:1.8rem; line-height:4rem; text-align:center;}
FOOTER div.foot_guide ul.address li.address {}
FOOTER div.foot_guide ul.address li.tel {}
FOOTER div.foot_guide ul.address li.tel::before {font-family:"FontAwesome"; content:"\f095"; font-size:1.3rem; margin-right:.3em;}
FOOTER div.foot_guide ul.address li.fax {}
FOOTER div.foot_guide ul.address li.fax::before {font-family:"FontAwesome"; content:"\f1ac"; font-size:1.3rem; margin-right:.3em;}

FOOTER div.foot_contact {}
FOOTER div.foot_contact ul.partner {width:1000px; font-size:0; margin:0 auto;}
FOOTER div.foot_contact ul.partner li {display:inline-block; width:480px;}
FOOTER div.foot_contact ul.partner li:nth-of-type(2) {margin-left:40px;}
FOOTER div.foot_contact ul.partner li a {display:block; border:2px #6843b7 solid; background:#FFF; font-size:2rem; line-height:5.6rem; font-weight:bold; color:#6843b7; text-align:center; box-sizing:border-box; padding-right:1em; border-radius:6rem; text-decoration:none; position:relative;}
FOOTER div.foot_contact ul.partner li a::before {font-family:"FontAwesome"; content:"\f0e0"; font-size:1.8rem; line-height:6rem; color:#FFF; position:absolute; right:20px; z-index:1; transition:.2s;}
FOOTER div.foot_contact ul.partner li a::after {content:""; width:36px; height:36px; border-radius:100%; background:#6843b7; position:absolute; right:12px; top:12px;}
FOOTER div.foot_contact ul.partner li a:hover {background:#6843b7; color:#FFF;}
FOOTER div.foot_contact ul.partner li a:hover::before {color:#6843b7;}
FOOTER div.foot_contact ul.partner li a:hover::after {background:#FFF;}

FOOTER div.foot_contact {background:#faf9f5; box-sizing:border-box; padding:60px 0 0; border-top:1px #99999988 solid;}
FOOTER div.foot_contact H3 {font-size:1.8vw; font-weight:400; letter-spacing:0.05em; color:#555; text-align:center;}
FOOTER div.foot_contact ul.contact {width:800px; margin:30px auto 0; display:flex; justify-content:space-between;}
FOOTER div.foot_contact ul.contact li {padding:20px 15px; box-sizing:border-box; background:#FFF;}
FOOTER div.foot_contact ul.contact li.tel {width:480px;}
FOOTER div.foot_contact ul.contact li.tel H4 {text-align:center; font-size:2rem; color:#2B3D7F;}
FOOTER div.foot_contact ul.contact li.tel p.tel {display:table; margin:15px auto 10px; font-size:5rem; font-weight:600; letter-spacing:0.01em; line-height:1.3; border-bottom:2px solid;}
FOOTER div.foot_contact ul.contact li.tel p.tel::before {font-family:"FontAwesome"; content:"\f095"; font-size:3.5rem; margin-right:.2em;}
FOOTER div.foot_contact ul.contact li.tel p.time {text-align:center; font-size:1.6rem; font-weight:500;}
FOOTER div.foot_contact ul.contact li.tel p.time span {font-size:1.4rem; font-weight:400; margin-left:.5em;}
FOOTER div.foot_contact ul.contact li.tel p.note {text-align:center; font-size:1.5rem; font-weight:500; line-height:2;}

FOOTER div.foot_contact ul.contact li.mail {width:280px;}
FOOTER div.foot_contact ul.contact li.mail H4 {text-align:center; font-size:2rem; color:#6843b7; position:relative; padding-right:15px;}
FOOTER div.foot_contact ul.contact li.mail H4::before {font-family:"FontAwesome"; content:"\f0e0"; font-size:1.8rem; color:#FFF; position:absolute; right:6px; top:2px; z-index:1;}
FOOTER div.foot_contact ul.contact li.mail H4::after {content:""; display:block; width:30px; height:30px; border-radius:100%; background:#6843b7; position:absolute; right:0; top:0;}
FOOTER div.foot_contact ul.contact li.mail a {display:block; margin:10px auto 0; background:#FFF; font-size:1.4rem; line-height:2.8rem; letter-spacing:0.05em; font-weight:500; color:#555; border:1px #555 solid; text-align:center; box-sizing:border-box; padding:0; border-radius:6rem; text-decoration:none; position:relative;}
FOOTER div.foot_contact ul.contact li.mail a::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3rem; color:#555; position:absolute; right:12px; z-index:1; transition:.2s;}
FOOTER div.foot_contact ul.contact li.mail a:hover::before {right:6px; color:#333;}
FOOTER div.foot_contact ul.contact li.mail a:hover {}
FOOTER div.foot_contact ul.contact li.mail a.contact {background:#6843b7; color:#FFF; border:1px #6843b7 solid;}
FOOTER div.foot_contact ul.contact li.mail a.contact::before {color:#FFF;}

FOOTER div.foot_contact ul.bottom {width:1000px; margin:40px auto 0; line-height:3rem; overflow:hidden; color:#555;}
FOOTER div.foot_contact ul.bottom li {}
FOOTER div.foot_contact ul.bottom li.copy {font-size:1.4rem; float:left;}
FOOTER div.foot_contact ul.bottom li.privacy {font-size:1.2rem; float:right;}
FOOTER div.foot_contact ul.bottom li.privacy a {color:#555; text-decoration:none;}



/* #INDEX -------------------------------------------------- */
div#index {margin:0 auto 200px;}

/*冒頭画像*/
div#index div.index_intro {height:57vw; background-size:cover !important; background-position:center center; position:relative; z-index:-1; display:none;}
div#index div.index_intro H2 {font-size:3.6rem; line-height:6rem; font-weight:bold; letter-spacing:0.1em; text-align:right; position:absolute; right:calc(50% - 550px); bottom:30vw;}
div#index div.index_intro H2 span {color:#6843b7;}

div#index div.index_slide {position:relative; width:100%; height:auto; aspect-ratio:16/9; max-height:calc(100vh - 180px); box-sizing:border-box; z-index:50;}
div#index div.index_slide H2 {display:table; margin:auto; color:#000; font-size:2rem; line-height:4rem; font-weight:400; letter-spacing:0.1em; position:absolute; left:calc(50% - 500px); top:0; bottom:0; z-index:51; background:#FFFFFFCC; padding:2rem 4rem;}
div#index div.index_slide ul.index_slide {}
div#index div.index_slide ul.index_slide li {width:100%; height:auto; aspect-ratio:16/9; max-height:calc(100vh - 180px); box-sizing:border-box; padding:0;}
div#index div.index_slide ul.index_slide li {background-position:center center; background-repeat:no-repeat; background-size:cover !important;}

div#index div.index_slide ul.index_slide li[aria-hidden="false"] {transform:scale(1.1); animation:slide_zoom 5s linear;}
div#index div.index_slide ul.index_slide li[aria-hidden="true"] {transform:scale(1.1);}
@keyframes slide_zoom {
    0% {transform: scale(1.0);}
    100% {transform: scale(1.1);}
}


/*OEMについて*/
div#index div.index_oem {margin-top:140px;}
div#index div.index_oem H2 {font-size:3rem; letter-spacing:0.25em; font-weight:400; text-align:center;}
div#index div.index_oem H2 span {font-size:2.6rem;}
div#index div.index_oem H2 p {font-size:1.5rem; font-weight:200; letter-spacing:0.1em; text-align:center; color:#c79f6c;}
div#index div.index_oem p.intro {width:860px; margin:60px auto 80px; font-size:1.5rem; letter-spacing:0.05em; line-height:2; text-align:center;}
div#index div.index_oem p.intro span {display:table; text-align:center; margin:0 auto;}
div#index div.index_oem p.intro span img {display:inline-block; width:200px;}

div#index div.index_oem div.oem_flow {padding:80px 0 0;}
div#index div.index_oem div.oem_flow H2 {font-size:2.4rem; font-weight:400; letter-spacing:0.1em; text-align:center; color:#6843b7;}
div#index div.index_oem div.oem_flow > p.desc {width:1000px; margin:40px auto 0; font-size:1.4rem; letter-spacing:0.05em; line-height:2; text-align:center;}
div#index div.index_oem div.oem_flow ul.flow {width:1000px; margin:80px auto 100px; display:flex; justify-content:space-between; counter-reset:number 0;}
div#index div.index_oem div.oem_flow ul.flow li {position:relative;}
div#index div.index_oem div.oem_flow ul.flow li:not(:first-child) {padding-left:30px;}
div#index div.index_oem div.oem_flow ul.flow li:not(:first-child)::before {font-family:"FontAwesome"; content:"\f0da"; position:absolute; top:0; bottom:0; margin:auto; left:6px; font-size:3rem; height:1em; color:#6843b7; animation:flow_arrow 2s infinite;}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(2)::before {animation-delay:0.2s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(3)::before {animation-delay:0.4s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(4)::before {animation-delay:0.6s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(5)::before {animation-delay:0.8s}
@keyframes flow_arrow {
    0% {opacity:0; left:2px;}
   25% {opacity:1;}
   50% {opacity:1;}
   75% {opacity:1;}
  100% {opacity:0; left:8px;}
}
div#index div.index_oem div.oem_flow ul.flow li p.ttl {font-size:1.5rem; line-height:2.4rem; letter-spacing:0.05em; font-weight:500; text-align:center;}
div#index div.index_oem div.oem_flow ul.flow li p.ttl::before {counter-increment:number 1; content:"STEP" counter(number, decimal); font-size:1.3rem; letter-spacing:0; display:block; color:#6843b7;}
div#index div.index_oem div.oem_flow ul.flow li p.desc {font-size:1.2rem; line-height:2rem; padding:1em .5em 0; font-weight:400;}

div#index div.index_oem div.oem_flow.move {}
div#index div.index_oem div.oem_flow.move H2 {transition-delay:.1s;}
div#index div.index_oem div.oem_flow.move > p.desc {transition-delay:.2s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(1) {transition-delay:.4s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(2) {transition-delay:.5s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(3) {transition-delay:.6s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(4) {transition-delay:.7s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(5) {transition-delay:.8s;}


div#index div.index_oem a.detail {display:table; margin:0 auto; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 6rem; text-decoration:none; position:relative; transition:.2s;}
div#index div.index_oem a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:24px; z-index:1; transition:.2s;}
div#index div.index_oem a.detail:hover {background:#555; color:#FFF;}
div#index div.index_oem a.detail:hover::before {right:18px; color:#FFF;}

div#index div.index_oem H2 p.move {opacity:0; transform:translate3d(0, 15px, 0); transition:1s; transition-delay:.1s;}
div#index div.index_oem H2 p.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div#index div.index_oem p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s;}
div#index div.index_oem p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}


/*商品情報*/
div#index div.index_product {margin-top:200px;}
div#index div.index_product H2 {font-size:3rem; letter-spacing:0.25em; font-weight:400; text-align:center;}
div#index div.index_product H2 p {font-size:1.5rem; font-weight:200; letter-spacing:0.1em; text-align:center; color:#c79f6c;}
div#index div.index_product p.intro {width:860px; margin:40px auto 60px; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div#index div.index_product ul {width:1000px; margin:0 auto 40px; font-size:0; text-align:center;}
div#index div.index_product ul li {display:inline-block; width:220px; vertical-align:top;}
div#index div.index_product ul li:nth-of-type(n+2) {margin-left:40px;}
div#index div.index_product ul li p.ph {display:flex; width:220px; height:220px; overflow:hidden; position:relative; margin-bottom:10px;}
div#index div.index_product ul li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div#index div.index_product ul li H3 {font-size:1.8rem; line-height:2.4rem; margin-bottom:5px;}
div#index div.index_product ul li p.desc {font-size:1.2rem; line-height:1.6rem;}

div#index div.index_product a.detail {display:table; margin:0 auto; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 6rem; text-decoration:none; position:relative; transition:.2s;}
div#index div.index_product a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:24px; z-index:1; transition:.2s;}
div#index div.index_product a.detail:hover {background:#555; color:#FFF;}
div#index div.index_product a.detail:hover::before {right:18px; color:#FFF;}

div#index div.index_product H2 p.move {opacity:0; transform:translate3d(0, 15px, 0); transition:1s; transition-delay:.1s;}
div#index div.index_product H2 p.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div#index div.index_product p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s;}
div#index div.index_product p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}

div#index div.index_product ul li.move:nth-of-type(1) {transition-delay:.1s}
div#index div.index_product ul li.move:nth-of-type(2) {transition-delay:.2s}
div#index div.index_product ul li.move:nth-of-type(3) {transition-delay:.3s}
div#index div.index_product ul li.move:nth-of-type(4) {transition-delay:.4s}



/* 下層 -------------------------------------------------- */
div#main {margin:200px auto 100px;}
div#main H1 {width:1000px; margin:0 auto; font-size:3rem; letter-spacing:0.15em; font-weight:400; position:relative;}
div#main H1::after {content:""; position:absolute; left:0; right:100%; bottom:0; border-bottom:1px solid; transition:.3s; transition-delay:.5s;}
div#main H1.animated::after {right:50%;}



div#main div.page_content {width:1000px; margin:60px auto 80px; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}

/*OEM*/
div.page_oem {}
div.page_oem p.intro {width:860px; margin:60px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_oem div.oem_catch {margin-top:80px;}
div.page_oem div.oem_catch ul {width:1000px; margin:0 auto 40px; font-size:0; text-align:center;}
div.page_oem div.oem_catch ul li {display:inline-block; width:280px; vertical-align:top;}
div.page_oem div.oem_catch ul li:nth-of-type(n+2) {margin-left:40px;}
div.page_oem div.oem_catch ul li p.ph {display:flex; width:240px; height:240px; border-radius:100%; overflow:hidden; position:relative; margin:0 auto 15px;}
div.page_oem div.oem_catch ul li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_catch ul li p.name {font-size:1.6rem; line-height:2.4rem; font-weight:500; text-align:center;}
div.page_oem div.oem_catch ul li p.price {font-size:1.5rem; line-height:2.5rem; font-weight:300; color:#FFF; display:table; margin:5px auto 0; background:#c79f6c; border-radius:3px; padding:0 1em;}

div.page_oem p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_oem p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_catch.move {}
div.page_oem div.oem_catch ul li.move {}
div.page_oem div.oem_catch ul li.move:nth-of-type(1) {transition-delay:.2s}
div.page_oem div.oem_catch ul li.move:nth-of-type(2) {transition-delay:.4s}
div.page_oem div.oem_catch ul li.move:nth-of-type(3) {transition-delay:.6s}

div.page_oem a.contact_oem {display:table; margin:0 auto; background:#6843b7DD; text-align:center; color:#FFF; font-size:2rem; line-height:6rem; letter-spacing:0.05em; font-weight:500; box-sizing:border-box; padding:0 4em; border-radius:6rem; text-decoration:none; position:relative;}
div.page_oem a.contact_oem::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.8rem; line-height:6rem; color:#FFF; position:absolute; right:20px; z-index:1; transition:.2s;}
div.page_oem a.contact_oem:hover::before {right:15px;}

div.page_oem div.oem_point {background:#faf9f5; padding:140px 0; counter-reset:number 0; margin:0 0 120px;}
div.page_oem div.oem_point H2 {font-size:3.6rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_point H2::first-letter {font-size:4rem;}
div.page_oem div.oem_point H2::after {content:""; position:absolute; background:#f3f549; height:15px; left:-20px; right:-20px; bottom:8px; z-index:-1;}
div.page_oem div.oem_point H2.move::after {opacity:0;transition:1s; transition-delay:.5s; right:calc(100% + 20px);}
div.page_oem div.oem_point H2.move.animated::after {opacity:1; right:-20px;}

div.page_oem div.oem_point div.point_list {width:860px; margin:0 auto;}
div.page_oem div.oem_point div.point_list:nth-of-type(1) {margin-top:100px;}
div.page_oem div.oem_point div.point_list:nth-of-type(n+2) {margin-top:160px;}
div.page_oem div.oem_point div.point_list H3 {font-size:4.6rem; font-weight:400; letter-spacing:0.05em; line-height:1; color:#6843b7;}
div.page_oem div.oem_point div.point_list H3 p.point {display:inline-block; font-size:1.8rem; letter-spacing:0; line-height:1; border-bottom:2px #6843b7 solid; margin-right:1.5em;}
div.page_oem div.oem_point div.point_list H3 p.point::after {counter-increment:number 1; content:counter(number, decimal); font-size:3.6rem; font-weight:300; margin-left:.2em;}
div.page_oem div.oem_point div.point_list H3 p.ttl {display:inline-block;}
div.page_oem div.oem_point div.point_list H3 p.copy {font-size:1.6rem; letter-spacing:0; padding-left:6.5em; line-height:2.5; color:#555;}
div.page_oem div.oem_point div.point_list > p.desc {font-size:1.4rem; letter-spacing:0.05em; line-height:2; margin-top:40px;}
div.page_oem div.oem_point div.point_list ul.detail {font-size:0; margin-top:40px; text-align:center;}
div.page_oem div.oem_point div.point_list ul.detail li {display:inline-block; width:700px; vertical-align:top;}
div.page_oem div.oem_point div.point_list ul.detail li p.ph {display:flex; width:700px; height:380px; overflow:hidden; position:relative; margin-bottom:10px;}
div.page_oem div.oem_point div.point_list ul.detail li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_point div.point_list ul.detail li p.desc {font-size:1.2rem; line-height:1.6rem; font-weight:400; margin-top:5px; text-align:center;}

div.page_oem div.oem_point div.point_list.move H3 {opacity:0; transform:translate3d(0, 0, 0); transition:1s;}
div.page_oem div.oem_point div.point_list.move.animated H3 {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move H3 p.point {opacity:0; transform:translate3d(10px, 0, 0); transition:.8s; transition-delay:.5s;}
div.page_oem div.oem_point div.point_list.move.animated H3 p.point {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move H3 p.ttl {opacity:0; transform:translate3d(0, -10px, 0); transition:.6s; transition-delay:.8s;}
div.page_oem div.oem_point div.point_list.move.animated H3 p.ttl {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move H3 p.copy {opacity:0; transform:translate3d(10px, 0, 0); transition:.8s; transition-delay:1s;}
div.page_oem div.oem_point div.point_list.move.animated H3 p.copy {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move > p.desc {opacity:0; transform:translate3d(0, 20px, 0); transition:1s; transition-delay:1.5s;}
div.page_oem div.oem_point div.point_list.move.animated > p.desc {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move ul.detail li {opacity:0; transform:translate3d(0, 20px, 0); transition:1s;}
div.page_oem div.oem_point div.point_list.move.animated ul.detail li {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_point div.point_list.move ul.detail li:nth-of-type(1) {transition-delay:2s;}
div.page_oem div.oem_point div.point_list.move ul.detail li:nth-of-type(2) {transition-delay:2.2s;}


div.page_oem div.oem_item {width:1000px; margin:160px auto 0;}
div.page_oem div.oem_item H2 {font-size:3.6rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_item H2::after {content:""; position:absolute; background:#f3f549; height:15px; left:-20px; right:-20px; bottom:8px; z-index:-1;}
div.page_oem div.oem_item H2.move::after {opacity:0;transition:1s; transition-delay:.5s; right:calc(100% + 20px);}
div.page_oem div.oem_item H2.move.animated::after {opacity:1; right:-20px;}
div.page_oem div.oem_item p.desc {margin:40px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_oem div.oem_item ul.item {font-size:0;}
div.page_oem div.oem_item ul.item li {display:inline-block; width:220px; vertical-align:top; margin-right:40px; margin-top:40px;}
div.page_oem div.oem_item ul.item li:nth-of-type(4n) {margin-right:0;}
div.page_oem div.oem_item ul.item li p.ph {display:flex; width:220px; height:220px; overflow:hidden; position:relative; margin-bottom:10px;}
div.page_oem div.oem_item ul.item li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_item ul.item li p.ttl {font-size:1.6rem; line-height:2.4rem; font-weight:600; text-align:center; color:#c79f6c;}
div.page_oem div.oem_item ul.item li p.desc {font-size:1.2rem; line-height:1.6rem; font-weight:400; margin-top:5px;}

div.page_oem div.oem_item p.desc.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_oem div.oem_item p.desc.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_item ul.item li.move {opacity:0; transform:translate3d(0, 15px, 0); transition:1s;}
div.page_oem div.oem_item ul.item li.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_item ul.item li.move.animated:nth-of-type(1) {transition-delay:.1s;}
div.page_oem div.oem_item ul.item li.move.animated:nth-of-type(2) {transition-delay:.2s;}
div.page_oem div.oem_item ul.item li.move.animated:nth-of-type(3) {transition-delay:.3s;}
div.page_oem div.oem_item ul.item li.move.animated:nth-of-type(4) {transition-delay:.4s;}

.material_plus {display:none;}
.material_plus_check {display:block; cursor:pointer; position:relative; line-height:4.5rem; text-align:center; margin-top:30px; background:#F0F0F0; box-sizing:border-box; padding:0; border-radius:5px; transition:.2s;}
.material_plus_check::before {content:"資材をもっと見る"; font-size:1.6rem;}
.material_plus_check::after {font-family:"FontAwesome"; content:"\f078"; font-size:2rem; position:absolute; right:calc(50% - 5em);}
.material_plus_check:hover {background:#ede8f6; color:#6843b7;}
.plus_list {height:140px; opacity:1; transition:.5s; overflow:hidden;}
.material_plus:checked + .material_plus_check + .plus_list {height:auto; opacity:1; visibility:visible;}
.material_plus:checked + .material_plus_check + ul.material.plus_list::before {display:none;}
.material_plus:checked + .material_plus_check::before {content:"閉じる";}
.material_plus:checked + .material_plus_check::after {font-family:"FontAwesome"; content:"\f077";}

div.page_oem div.oem_material {width:1000px; margin:120px auto 0;}
div.page_oem div.oem_material H2 {font-size:3rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_material H2::after {content:""; position:absolute; background:#f3f549; height:15px; left:-20px; right:-20px; bottom:4px; z-index:-1;}
div.page_oem div.oem_material H2.move::after {opacity:0;transition:1s; transition-delay:.5s; right:calc(100% + 20px);}
div.page_oem div.oem_material H2.move.animated::after {opacity:1; right:-20px;}
div.page_oem div.oem_material p.desc {margin:40px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_oem div.oem_material ul.material {font-size:0; position:relative;}
div.page_oem div.oem_material ul.material.plus_list::before {content:""; position:absolute; left:0; right:0; top:0; height:140px; z-index:1; background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0.5) 100%);}
div.page_oem div.oem_material ul.material li {display:inline-block; width:180px; vertical-align:top; margin-right:25px; margin-top:30px;}
div.page_oem div.oem_material ul.material li:nth-of-type(5n) {margin-right:0;}
div.page_oem div.oem_material ul.material li p.ph {display:flex; width:180px; height:180px; overflow:hidden; position:relative; margin-bottom:5px;}
div.page_oem div.oem_material ul.material li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_material ul.material li p.ttl {font-size:1.4rem; line-height:2rem; font-weight:600;}
div.page_oem div.oem_material ul.material li p.ttl span {font-size:1.2rem; line-height:2rem; font-weight:500;}
div.page_oem div.oem_material ul.material li p.number {font-size:1.2rem; line-height:2rem; font-weight:400;}
div.page_oem div.oem_material ul.material li p.desc {font-size:1rem; line-height:1.2rem; font-weight:400; margin-top:5px;}

div.page_oem div.oem_material p.desc.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_oem div.oem_material p.desc.move.animated {opacity:1; transform:translate3d(0, 0, 0);}

div.page_oem div.oem_material ul.material.plus {}

a.fancybox {cursor:zoom-in;}
div.fancybox-skin * {background-size:auto !important;}


div.page_oem div.oem_flow {background:#faf9f5; padding:100px 0 80px; margin:120px 0 0;}
div.page_oem div.oem_flow H2 {font-size:3rem; font-weight:400; letter-spacing:0.15em; text-align:center; color:#6843b7;}
div.page_oem div.oem_flow > p.desc {width:1000px; margin:40px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2; text-align:center;}
div.page_oem div.oem_flow ul.flow {width:1000px; margin:80px auto 100px; display:flex; justify-content:space-between; counter-reset:number 0;}
div.page_oem div.oem_flow ul.flow li {position:relative;}
div.page_oem div.oem_flow ul.flow li:not(:first-child) {padding-left:30px;}
div.page_oem div.oem_flow ul.flow li:not(:first-child)::before {font-family:"FontAwesome"; content:"\f0da"; position:absolute; top:0; bottom:0; margin:auto; left:6px; font-size:3rem; height:1em; color:#6843b7; animation:flow_arrow 2s infinite;}
div.page_oem div.oem_flow ul.flow li:nth-of-type(2)::before {animation-delay:0.2s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(3)::before {animation-delay:0.4s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(4)::before {animation-delay:0.6s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(5)::before {animation-delay:0.8s}
@keyframes flow_arrow {
    0% {opacity:0; left:2px;}
   25% {opacity:1;}
   50% {opacity:1;}
   75% {opacity:1;}
  100% {opacity:0; left:8px;}
}
div.page_oem div.oem_flow ul.flow li p.ttl {font-size:1.5rem; line-height:2.4rem; letter-spacing:0.05em; font-weight:500; text-align:center;}
div.page_oem div.oem_flow ul.flow li p.ttl::before {counter-increment:number 1; content:"STEP" counter(number, decimal); font-size:1.3rem; letter-spacing:0; display:block; color:#6843b7;}
div.page_oem div.oem_flow ul.flow li p.desc {font-size:1.2rem; line-height:2rem; padding:1em .5em 0; font-weight:400;}

div.page_oem div.oem_flow.move {}
div.page_oem div.oem_flow.move H2 {transition-delay:.1s;}
div.page_oem div.oem_flow.move > p.desc {transition-delay:.2s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(1) {transition-delay:.4s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(2) {transition-delay:.5s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(3) {transition-delay:.6s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(4) {transition-delay:.7s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(5) {transition-delay:.8s;}

div.page_oem div.oem_works {margin:0 auto; box-sizing:border-box; padding:120px 0 0;}
div.page_oem div.oem_works H2 {font-size:3rem; letter-spacing:0.3em; width:fit-content; margin:auto; color:#555; position:relative;}
div.page_oem div.oem_works.move H2::after {content:""; position:absolute; background:#FFF; height:15px; left:-15px; right:calc(100% + 15px); bottom:5px; z-index:-1; opacity:1; transition:1s; transition-delay:.5s;}
div.page_oem div.oem_works.move.animated H2::after {right:calc(-15px + 0.3em);}

div.page_oem div.oem_works > p.desc {margin:40px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_oem div.oem_works div.works {width:860px; background:#FFF; box-sizing:border-box; padding:39px; overflow:hidden; margin:40px auto 0; border:1px solid;}
div.page_oem div.oem_works div.works p.ph {display:flex; width:160px; height:160px; overflow:hidden; position:relative; float:left; margin-right:30px; border-radius:100%;}
div.page_oem div.oem_works div.works p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_works div.works p.ttl {font-size:2rem; line-height:2.4rem; font-weight:bold;}
div.page_oem div.oem_works div.works p.desc {font-size:1.3rem; line-height:2rem; margin-top:1.5em; float:right; width:calc(100% - 200px);}

div.page_oem div.oem_works a.detail {display:table; margin:60px auto 0; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 6rem; text-decoration:none; position:relative; transition:.2s;}
div.page_oem div.oem_works a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:24px; z-index:1; transition:.2s;}
div.page_oem div.oem_works a.detail:hover {background:#555; color:#FFF;}
div.page_oem div.oem_works a.detail:hover::before {right:18px; color:#FFF;}

div.page_oem div.oem_faq {width:1000px; margin:160px auto 0;}
div.page_oem div.oem_faq H2 {font-size:4rem; letter-spacing:0.1em; text-align:center;}
div.page_oem div.oem_faq > p.desc {margin:40px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_oem div.oem_faq ul.faq {}
div.page_oem div.oem_faq ul.faq li {margin-top:60px;}
div.page_oem div.oem_faq ul.faq li p.faq_q {display:inline-block; border-bottom:2px #c79f6c solid; font-size:1.8rem; letter-spacing:0.1em; font-weight:bold; color:#c79f6c;}
div.page_oem div.oem_faq ul.faq li p.faq_q::before {content:"Q.";}
div.page_oem div.oem_faq ul.faq li p.faq_a {font-size:1.4rem; line-height:2rem; font-weight:500; margin-top:1em; padding-left:1.5em;}

div.page_oem div.oem_faq a.detail {display:table; margin:80px auto 0; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 6rem; text-decoration:none; position:relative; transition:.2s;}
div.page_oem div.oem_faq a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:24px; z-index:1; transition:.2s;}
div.page_oem div.oem_faq a.detail:hover {background:#555; color:#FFF;}
div.page_oem div.oem_faq a.detail:hover::before {right:18px; color:#FFF;}


div.page_oem div.oem_faq.move {}
div.page_oem div.oem_faq.move H2 {transition-delay:.1s;}
div.page_oem div.oem_faq.move > p.desc {transition-delay:.2s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(1) p.faq_q {transition-delay:.4s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(1) p.faq_a {transition-delay:.55s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(2) p.faq_q {transition-delay:.6s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(2) p.faq_a {transition-delay:.75s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(3) p.faq_q {transition-delay:.8s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(3) p.faq_a {transition-delay:.95s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(4) p.faq_q {transition-delay:1s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(4) p.faq_a {transition-delay:1.05s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(5) p.faq_q {transition-delay:1.1s;}
div.page_oem div.oem_faq.move ul.faq li:nth-of-type(5) p.faq_a {transition-delay:1.25s;}

div.page_oem div.oem_faq.move ul.faq li p.faq_q {opacity:0; transform:translate3d(15px, 0, 0); transition:.6s;}
div.page_oem div.oem_faq.move.animated ul.faq li p.faq_q {opacity:1; transform:translate3d(0, 0, 0);}
div.page_oem div.oem_faq.move ul.faq li p.faq_a {opacity:0; transform:translate3d(15px, 0, 0); transition:.6s;}
div.page_oem div.oem_faq.move.animated ul.faq li p.faq_a {opacity:1; transform:translate3d(0, 0, 0);}



/*PRODUCTS*/
div.page_product {}
div.page_product p.intro {width:860px; margin:60px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}

div.page_product p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_product p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}


div.page_product div.product {width:1000px; margin:200px auto 0;}

div.page_product div.product.noitem {width:1000px; margin:200px auto; text-align:center; font-size:1.5rem; color:#999;}

div.page_product div.product div.product_detail {width:480px; float:left;}
div.page_product div.product div.product_detail H2 {font-size:2rem; font-weight:400; letter-spacing:0.1em; line-height:1.1; padding-bottom:.2em; position:relative;}
div.page_product div.product div.product_detail H2::after {content:""; border-bottom:1px solid; position:absolute; left:100%; right:0; bottom:-2px; transition:.3s;}
div.page_product div.product div.product_detail p.desc {font-size:1.3rem; letter-spacing:0.05em; line-height:2; margin-top:2em;}
div.page_product div.product div.product_detail ul.product_link {margin-top:4em;}
div.page_product div.product div.product_detail ul.product_link li {margin-top:10px;}
div.page_product div.product div.product_detail ul.product_link li a {display:block; background:#FFF; color:#555; font-size:1.5rem; line-height:3.8rem; border:1px #555 solid; border-radius:3px; text-decoration:none;}
div.page_product div.product div.product_detail ul.product_link li a p {text-align:center;}
div.page_product div.product div.product_detail ul.product_link li a p::before {font-family:"FontAwesome"; content:"\f07a"; margin-right:.5em; font-size:1.3rem;}
div.page_product div.product div.product_detail ul.product_link li a[href*="https://amzn.to"] p::before,
div.page_product div.product div.product_detail ul.product_link li a[href*="https://www.amazon.co.jp"] p::before {content:"\f270";}/*amazon*/
div.page_product div.product div.product_detail ul.product_link li a[href*="rakuten.co.jp"] p::before {content:"\f07a";}/*rakuten*/
div.page_product div.product div.product_detail ul.product_link li a[href*="https://store.shopping.yahoo.co.jp"] p::before {content:"\f07a";}/*Yahoo*/
div.page_product div.product div.product_detail ul.product_link li a p::after {margin-left:.3em; font-size:1.2rem;}
div.page_product div.product div.product_detail ul.product_link li a[href*="https://amzn.to"] p::after,
div.page_product div.product div.product_detail ul.product_link li a[href*="https://www.amazon.co.jp"] p::after {content:"（amazon）";}/*amazon*/
div.page_product div.product div.product_detail ul.product_link li a[href*="rakuten.co.jp"] p::after {content:"（楽天市場）";}/*rakuten*/
div.page_product div.product div.product_detail ul.product_link li a[href*="https://store.shopping.yahoo.co.jp"] p::after {content:"（Yahoo!ショッピング）";}/*Yahoo*/
div.page_product div.product div.product_detail ul.product_link li a:hover {background:#555; color:#FFF;}

div.page_product div.product div.product_detail table.product_spec {font-size:1.2rem; line-height:3rem; width:100%; margin-top:2em;}
div.page_product div.product div.product_detail table.product_spec th,
div.page_product div.product div.product_detail table.product_spec td {font-weight:400; padding:5px; border-bottom:1px #9b9b9b solid; vertical-align:top;}
div.page_product div.product div.product_detail table.product_spec th {width:10em;}
div.page_product div.product div.product_detail table.product_spec td {}
div.page_product div.product div.product_detail ul.product_data {line-height:2rem; margin-top:2em; text-align:left;}
div.page_product div.product div.product_detail ul.product_data li {display:inline-block; margin:1em 1em 0 0;}
div.page_product div.product div.product_detail ul.product_data li a {display:inline-block; border:1px #555 solid; font-size:1.3rem; letter-spacing:0.1em; line-height:1; color:#555; padding:10px 20px 10px; text-decoration:none;}
div.page_product div.product div.product_detail ul.product_data li a::after {font-family:"FontAwesome"; content:"\f15b"; margin-left:.3em;}
div.page_product div.product div.product_detail ul.product_data li a[href*=".pdf"]::after {content:"\f1c1";}/*PDF*/
div.page_product div.product div.product_detail ul.product_data li a[href*=".xlsx"]::after,
div.page_product div.product div.product_detail ul.product_data li a[href*=".xls"]::after {content:"\f1c3";}/*EXCEL*/
div.page_product div.product div.product_detail ul.product_data li a[href*=".pptx"]::after,
div.page_product div.product div.product_detail ul.product_data li a[href*=".ppt"]::after {content:"\f1c4";}/*PowerPoint*/
div.page_product div.product div.product_detail ul.product_data li a[href*=".zip"]::after {content:"\f1c6";}/*ZIP*/
div.page_product div.product div.product_detail ul.product_data li a:hover {background:#555; color:#FFF;}

div.page_product div.product div.product_ph {width:480px; float:right; font-size:0;}
div.page_product div.product div.product_ph p {margin-bottom:20px;}
div.page_product div.product div.product_ph p img {}
div.page_product div.product div.product_ph ul.product_ph {}
div.page_product div.product div.product_ph ul.product_ph li {}
div.page_product div.product div.product_ph ul.product_ph li img {}

div.page_product div.product div.product_ph .bx-wrapper .bx-controls-direction a {width:30px; height:105px; top:15px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-prev {left:-30px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-prev::before {border-color:#333; width:8px; height:8px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-next {right:-30px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-next::before {border-color:#333; width:8px; height:8px;}


div.page_product div.product.move {}
div.page_product div.product div.product_detail.move {}
div.page_product div.product div.product_detail.move H2 {opacity:0; transform:translate3d(15px, 0, 0); transition:1s;}
div.page_product div.product div.product_detail.move.animated H2 {opacity:1; transform:translate3d(0, 0, 0);}
div.page_product div.product div.product_detail.move H2::after {transition-delay:.4s;}
div.page_product div.product div.product_detail.move.animated H2::after {left:0;}
div.page_product div.product div.product_detail.move p.desc {opacity:0; transform:translate3d(0, -10px, 0); transition:.6s; transition-delay:.5s;}
div.page_product div.product div.product_detail.move.animated p.desc {opacity:1; transform:translate3d(0, 0, 0);}
div.page_product div.product div.product_detail.move ul.product_link li {opacity:0; transform:translate3d(15px, 0, 0); transition:.6s;}
div.page_product div.product div.product_detail.move.animated ul.product_link li {opacity:1; transform:translate3d(0, 0, 0);}
div.page_product div.product div.product_detail.move.animated ul.product_link li:nth-of-type(1) {transition-delay:.4s;}
div.page_product div.product div.product_detail.move.animated ul.product_link li:nth-of-type(2) {transition-delay:.5s;}
div.page_product div.product div.product_detail.move.animated ul.product_link li:nth-of-type(3) {transition-delay:.6s;}
div.page_product div.product div.product_detail.move.animated ul.product_link li:nth-of-type(4) {transition-delay:.7s;}

div.page_product div.product div.product_detail.move table.product_spec tr {opacity:0; transform:translate3d(10px, 0, 0); transition:1s;}
div.page_product div.product div.product_detail.move.animated table.product_spec tr {opacity:1; transform:translate3d(0, 0, 0);}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(1) {transition-delay:.6s;}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(2) {transition-delay:.7s;}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(3) {transition-delay:.8s;}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(4) {transition-delay:.9s;}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(5) {transition-delay:1s;}
div.page_product div.product div.product_detail.move table.product_spec tr:nth-of-type(6) {transition-delay:1.1s;}

div.page_product div.product div.product_detail.move ul.product_data li {opacity:0; transform:translate3d(10px, 0, 0); transition:.6s;}
div.page_product div.product div.product_detail.move.animated ul.product_data li {opacity:1; transform:translate3d(0, 0, 0);}
div.page_product div.product div.product_detail.move ul.product_data li:nth-of-type(1) {transition-delay:1s;}
div.page_product div.product div.product_detail.move ul.product_data li:nth-of-type(2) {transition-delay:1.1s;}
div.page_product div.product div.product_detail.move ul.product_data li:nth-of-type(3) {transition-delay:1.2s;}
div.page_product div.product div.product_detail.move ul.product_data li:nth-of-type(4) {transition-delay:1.3s;}
div.page_product div.product div.product_detail.move ul.product_data li:nth-of-type(5) {transition-delay:1.4s;}

div.page_product div.product div.product_ph.move {transition-delay:.5s}



/*COMPANY*/
body.about div#main {margin:200px auto 0;}
div.page_company {}
div.page_company p.message {width:860px; margin:60px auto 0; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}
div.page_company p.message.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_company p.message.move.animated {opacity:1; transform:translate3d(0, 0, 0);}

div.page_company div.company_outline {background:#faf9f5; margin:100px 0 0; padding:100px 0 0;}
div.page_company div.company_outline table.company_outline {width:860px; font-size:1.4rem; letter-spacing:0.1em; line-height:1.2; margin:0 auto;}
div.page_company div.company_outline table.company_outline th {font-weight:400; padding:25px 30px 15px 0; border-bottom:1px #9b9b9b solid; vertical-align:top; white-space:nowrap;}
div.page_company div.company_outline table.company_outline td {font-weight:400; padding:25px 0 15px; border-bottom:1px #9b9b9b solid; vertical-align:top; letter-spacing:0;}
div.page_company div.company_outline table.company_outline td span.map {margin-left:1em;}
div.page_company div.company_outline table.company_outline td span.map a {color:#6843b7;}
div.page_company div.company_outline table.company_outline td ul.license {line-height:1;}
div.page_company div.company_outline table.company_outline td ul.license li {}
div.page_company div.company_outline table.company_outline td ul.license li:nth-of-type(n+2) {margin-top:5px;}

div.page_company div.company_outline div.map {position:relative; padding:0 0 600px; height:0; overflow:hidden; margin-top:60px;}
div.page_company div.company_outline div.map iframe {position:absolute; left:0; top:0; width:100%; height:100%;}

div.page_company div.company_outline.move {transition-delay:.5s;}
div.page_company div.company_outline.move.animated {}
div.page_company div.company_outline.move table.company_outline tr {opacity:0; transform:translate3d(15px, 0, 0); transition:.6s;}
div.page_company div.company_outline.move.animated table.company_outline tr {opacity:1; transform:translate3d(0, 0, 0);}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(1) {transition-delay:0.6s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(2) {transition-delay:0.7s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(3) {transition-delay:0.8s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(4) {transition-delay:0.9s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(5) {transition-delay:1.0s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(6) {transition-delay:1.1s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(7) {transition-delay:1.2s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(8) {transition-delay:1.3s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(9) {transition-delay:1.4s;}
div.page_company div.company_outline.move table.company_outline tr:nth-of-type(10) {transition-delay:1.5s;}



/*PRIVACY*/
div.page_privacy {width:800px; margin:60px auto 0;}
div.page_privacy p.intro {font-size:1.3rem;}

div.page_privacy p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s; transition-delay:.1s;}
div.page_privacy p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}

div.page_privacy H2 {font-size:1.6rem; margin:4em 0 1em;}
div.page_privacy H2::before {content:"●"; margin-right:.3em;}
div.page_privacy p.txt {font-size:1.3rem; padding-left:10px;}
div.page_privacy ul.list {padding-left:40px; margin-top:2em; font-size:1.2rem; list-style-type:decimal-leading-zero;}
div.page_privacy ul.list li {margin-top:.4em;}

div.page_privacy ul.company {padding-left:20px; margin-top:2em; font-size:1.2rem;}
div.page_privacy ul.company li {margin-left:.5em;}
div.page_privacy ul.company li.com {margin:0 0 .5em; font-size:1.4rem; font-weight:bold;}
div.page_privacy ul.company li.nam {}
div.page_privacy ul.company li.add {}
div.page_privacy ul.company li.tel {}


/*CONTACT*/
div.page_contact {width:1000px; margin:60px auto 0;}

div.page_contact div.contact_form {width:1000px; margin:100px auto 0;}
div.page_contact div.contact_form label {cursor:pointer;}
div.page_contact div.contact_form * {font-family: YakuHanJP, "Inter", "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; font-weight:500;}

div.page_contact div.contact_form table {width:100%; margin:0 0 0; font-size:1.4rem;}
div.page_contact div.contact_form table th {width:12em; box-sizing:border-box; padding:15px; text-align:right; line-height:20px; font-weight:500;}
div.page_contact div.contact_form table th p {text-align:right; line-height:20px;}
div.page_contact div.contact_form table th span.must {color:#F10012; font-size:1.2rem; display:block;  text-align:right;}
div.page_contact div.contact_form table td {box-sizing:border-box; padding:15px; text-align:left;}
div.page_contact div.contact_form table td p {margin-bottom:1em;}
div.page_contact div.contact_form table td p:last-of-type {margin-bottom:0;}
div.page_contact div.contact_form table th span.note {font-size:1.2rem; color:#555; line-height:1.5em; display:block; text-align:right;}

div.page_contact div.contact_form table tr {transition:.2s;}
div.page_contact div.contact_form table tr:hover {background:#ede8f6;}

div.page_contact div.contact_form input[type="text"],
div.page_contact div.contact_form input[type="email"],
div.page_contact div.contact_form input[type="tel"],
div.page_contact div.contact_form input[type="number"],
div.page_contact div.contact_form input[type="url"],
div.page_contact div.contact_form select {padding:8px; width:100%; box-sizing:border-box; font-size:1.4rem; background:#EEE; border:1px #999 solid; border-radius:4px; color:#333;}
div.page_contact div.contact_form textarea {padding:10px; display:block; margin-top:5px; width:100%; box-sizing:border-box; font-size:1.4rem; background:#EEE; border:1px #999 solid; border-radius:4px;}

div.page_contact div.contact_form table tr:hover input[type="text"],
div.page_contact div.contact_form table tr:hover input[type="email"],
div.page_contact div.contact_form table tr:hover input[type="tel"],
div.page_contact div.contact_form table tr:hover input[type="number"],
div.page_contact div.contact_form table tr:hover input[type="url"],
div.page_contact div.contact_form table tr:hover select,
div.page_contact div.contact_form table tr:hover textarea {background:#FFF;}

div.page_contact div.contact_form table th label {display:block; text-align:right;}
div.page_contact div.contact_form table td label {padding:5px 10px 5px 5px; display:inline-block; letter-spacing:0;}

div.page_contact div.contact_form input[type="submit"] {margin:20px auto 0; padding:20px; width:300px; display:block; background:#6843b7DD; border:none; color:#FFF; letter-spacing:0.3em; text-align:center; cursor:pointer; font-size:1.6rem; transition:.2s;}
div.page_contact div.contact_form input[type="submit"]:hover,
div.page_contact div.contact_form form.invalid input[type="submit"]:hover {background:#333; color:#FFF;}

div.page_contact div.contact_form span[data-name="contact_zipcode"] input[type="text"] {width:8em;}
div.page_contact div.contact_form table td span.note {font-size:1.2rem; color:#555; letter-spacing:0; line-height:1.5em; display:inline-block; margin-left:1em;}

div.page_contact div.contact_form table td input:checked + span {color:#6843b7;}

div.page_contact div.contact_form table.message th {display:block; width:100%; text-align:left;}
div.page_contact div.contact_form table.message tr:nth-of-type(1) th {padding-top:0;}
div.page_contact div.contact_form table.message td {display:block; width:calc(100% - 10em); margin-left:10em; text-align:left;}
div.page_contact div.contact_form table.message th span.must {color:#F10012; font-size:1.2rem; display:inline-block; text-align:left; margin-left:.5em;}
div.page_contact div.contact_form table.message td {padding:0 15px 15px;}

div.page_contact div.contact_form div.note {font-size:1.4rem; margin:2em 2em 1em 14em;}
div.page_contact div.contact_form div.note p {text-indent:-1em; padding-left:1em;}
div.page_contact div.contact_form div.note p::before {content:"▼";}

div.page_contact div.contact_form HR {border:none; border-bottom:1px #9b9b9b solid; margin:4em 0;}

div.page_contact div.contact_form table.other {margin:5em 0 4em;}
div.page_contact div.contact_form table.other th {display:block; width:100%;}
div.page_contact div.contact_form table.other th p {text-align:center;}
div.page_contact div.contact_form table.other th p a {color:#6843b7;}
div.page_contact div.contact_form table.other td {display:block; width:100%;}
div.page_contact div.contact_form table.other td span {display:block; width:100%; margin:0; text-align:center;}
div.page_contact div.contact_form table.other td label {display:block; text-align:center; padding:10px;}
div.page_contact div.contact_form table.other td label span {display:inline;}


div.page_contact div.contact_form input[type="submit"]:disabled {cursor:not-allowed;}
div.page_contact div.contact_form input[type="submit"]:disabled:hover {background:#2fa677DD;}


/*エラー表示*/
div.page_contact div.contact_form table td span.wpcf7-not-valid-tip {color:#BF0000; font-size:1.2rem; font-weight:bold; line-height:1; margin-top:5px;}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {border:none !important; text-align:center; color:#BF0000; font-weight:bold;}

.wpcf7-response-output {font-size:1.5rem;}

input.wpcf7-not-valid,
select.wpcf7-not-valid,
span.wpcf7-not-valid {border:1px #BF0000 solid !important; display:inline-block; border-radius:4px;}



/* お知らせ  -------------------------------------------------- */
/*ページネーション*/
div.wp-pagenavi {text-align:center; margin-top:100px;}

.wp-pagenavi {clear:both; text-align:center;}

.wp-pagenavi a,
.wp-pagenavi span {height:45px; width:45px; border-radius:50%; line-height:41px; text-align:center; border: 2px solid #6843b7 !important; box-sizing:border-box;
text-decoration: none; margin:0 .2em !important; padding:0 !important; display:inline-block; background:#FFF; color:#6843b7;
font-size:2rem; letter-spacing:0;
}
.wp-pagenavi span.current,
.wp-pagenavi a:hover {color:#FFF; background:#6843b7; font-weight:normal !important;}

.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {color:#6843b7; background:none; border:none !important; width:auto !important;}
.wp-pagenavi a.previouspostslink:hover,
.wp-pagenavi a.nextpostslink:hover {color:#101010;}

.wp-pagenavi a.previouspostslink {margin-right:1em !important;}
.wp-pagenavi a.previouspostslink p {position:relative; padding-right:1em; color:#6843b7; font-size:1.8rem; font-weight:bold;}
.wp-pagenavi a:hover.previouspostslink p {color:#333;}
.wp-pagenavi a.previouspostslink p::after {content:"\f0d9"; position:absolute; right:0; color:#6843b7; font-family:FontAwesome; font-size:2rem; transition:.2s;}
.wp-pagenavi a:hover.previouspostslink p::after {color:#101010;}

.wp-pagenavi a.nextpostslink {margin-left:1em !important;}
.wp-pagenavi a.nextpostslink p {position:relative; padding-left:1em; color:#6843b7; font-size:1.8rem; font-weight:bold;}
.wp-pagenavi a:hover.nextpostslink p {color:#101010;}
.wp-pagenavi a.nextpostslink p::before {content:"\f0da"; position:absolute; left:0; color:#6843b7; font-family:FontAwesome; font-size:2rem; transition:.2s;}
.wp-pagenavi a:hover.nextpostslink p::before {color:#101010;}

.wp-pagenavi span.extend {border:none !important; background:none !important; color:#6843b7; width:auto;}
.wp-pagenavi span.pages {display:none; /*display:block; border:none !important; background:none !important; color:#6843b7; width:auto;*/}

.wp-pagenavi span.pages p,
.wp-pagenavi a.first p,
.wp-pagenavi a.last p {text-align:center; font-weight:bold;}
.wp-pagenavi a.first ,
.wp-pagenavi a.last {border:none !important; background:none !important; color:#6843b7 !important;}
.wp-pagenavi a.first p ,
.wp-pagenavi a.last p {font-size:1.6rem;}
.wp-pagenavi a.first:hover ,
.wp-pagenavi a.last:hover {color:#101010 !important;}

/*RETURN*/
div.return {margin:40px auto 0; width:800px;}
div.return ul.return {display:flex; flex-wrap:nowrap;}
div.return ul.return li {width:100%; height:50px;}
div.return ul.return li a {display:block; text-decoration:none; font-size:1.5rem; line-height:3rem; font-weight:500; color:#6843b7;}
div.return ul.return li a::before,
div.return ul.return li a::after {font-family:"FontAwesome"; transition:.2s;}
div.return ul.return li.next a {text-align:right;}
div.return ul.return li.next a::before {content:"\f060"; margin-right:.5em;}
div.return ul.return li.next a:hover::before {margin-right:.7em;}
div.return ul.return li.prev a {text-align:left;}
div.return ul.return li.prev a::after {content:"\f061"; margin-left:.5em;}
div.return ul.return li.prev a:hover::after {margin-left:.7em;}
div.return ul.return li.all a {text-align:center;}
div.return ul.return li.all a::before {content:"\f0ca"; margin-right:.5em;}
div.return ul.return li a:hover {color:#333;}




/* お知らせ  -------------------------------------------------- */
H1.news {}
H1.news p {display:inline-block; font-size:4rem; color:#6843b7; margin-left:1em;}

div.news_area {width:1000px; margin:60px auto 0;}
div.news_area div.news_side {float:left; width:180px;}
div.news_area div.news_main {float:right; width:740px;}

div.news_area div.news_side H3 {font-size:1.8rem; text-align:center;}
div.news_area div.news_side ul.news_category {font-size:1.4rem; line-height:4rem; font-weight:600; margin-top:2em;}
div.news_area div.news_side ul.news_category li {border-bottom:1px #9b9b9b solid;}
div.news_area div.news_side ul.news_category li a {display:block; text-decoration:none; position:relative;}
div.news_area div.news_side ul.news_category li a:hover {background:#ede8f6;}
div.news_area div.news_side ul.news_category li a span {position:absolute; right:24px; text-align:right;}
div.news_area div.news_side ul.news_category li a::after {font-family:"FontAwesome"; content:"\f105"; position:absolute; right:5px; transition:.2s;}
div.news_area div.news_side ul.news_category li a:hover::after {right:2px;}

div.news_area div.news_main div.news_entry {width:100%; box-sizing:border-box;}
div.news_area div.news_main div.news_entry:nth-of-type(n+2) {margin-top:160px;}
div.news_area div.news_main div.news_entry p.catch {margin-bottom:4em;}
div.news_area div.news_main div.news_entry p.catch img {display:block; margin:0 auto; max-height:600px; width:auto;}
div.news_area div.news_main div.news_entry p.ttl {font-size:2.4rem; line-height:1.2; font-weight:bold; padding-bottom:.3em; border-bottom:1px #9b9b9b solid; margin-bottom:.5em;}
div.news_area div.news_main div.news_entry p.date {font-size:1.3rem; line-height:2rem; float:left;}
div.news_area div.news_main div.news_entry ul.category {font-size:1.3rem; line-height:2rem;}
div.news_area div.news_main div.news_entry ul.category li {display:inline-block;}
div.news_area div.news_main div.news_entry ul.category li a {color:#6843b7; margin-left:1em;}
div.news_area div.news_main div.news_entry div.content {font-size:1.6rem; line-height:3rem;}
div.news_area div.news_main div.news_entry div.content > p {margin-top:1.3em;}
div.news_area div.news_main div.news_entry div.content a {}
div.news_area div.news_main div.news_entry div.content img {display:block; margin:3em auto; max-height:600px; width:auto;}

div.news_area div.news_main div.news_entry div.content p + ul.faq {margin-top:40px;}
div.news_area div.news_main div.news_entry div.content ul.faq {background:#faf9f5; padding:40px;}
div.news_area div.news_main div.news_entry div.content ul.faq li {}
div.news_area div.news_main div.news_entry div.content ul.faq li:nth-of-type(n+2) {margin-top:40px;}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_q {display:inline-block; border-bottom:2px #c79f6c solid; font-size:1.8rem; letter-spacing:0.1em; font-weight:bold; color:#c79f6c;}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_q::before {content:"Q.";}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_a {font-size:1.4rem; line-height:2rem; font-weight:500; margin-top:1em; padding-left:1.5em;}








/* レスポンシブ関連 -------------------------------------------------- */
/*-------------------------------------------------------------------- */
.only_sp {display:none !important;}

/*TABLET*/
@media screen and (max-width:1023px){
}

@media screen and (max-width:767px){
*{
max-width:100% !important;
height:auto;
width:auto;
letter-spacing:0 !important;
}
.only_pc {display:none !important;}
.only_sp {display:block !important;}

body {
font-size:1.2rem;
line-height:1.5;
}

HEADER,
div#index,
FOOTER {min-width:auto;}



/* HEADER -------------------------------------------------- */
HEADER {width:100%; height:60px; margin:0 auto; position:fixed; left:0; right:0; top:0; z-index:999;}

HEADER H1.head_logo,
HEADER a.head_logo {display:block; width:170px; height:40px; background:url("images/logo_w.png") center center; background-size:contain !important; margin:10px 0 10px 10px; float:left;}
HEADER H1.head_logo span,
HEADER a.head_logo span {display:none;}

/* DRAWER -------------------------------------------------- */
button.drawer-hamburger {z-index:101;}
button.drawer-hamburger {width:30px; background:#FFF; padding:29px 15px 28px; top:0; right:0 !important; z-index:1000; transition:.2s;}
button.drawer-hamburger::before,
button.drawer-hamburger::after {content:""; width:100%; height:100%; position:absolute; top:0; left:0; background:#FFF; z-index:-1; transition:.2s;}

.drawer-hamburger-icon:after, .drawer-hamburger-icon:before {top:-10px !important;}
.drawer-hamburger-icon:after {top:10px !important;}

body.drawer-open main
{/*オープンで他はボカす*/
    filter: blur(3px);
}

nav.drawer-nav {}
nav.drawer-nav ul.drawer-menu {margin:80px 0 40px;;}
nav.drawer-nav ul.drawer-menu li {}
nav.drawer-nav ul.drawer-menu li a {display:block; font-size:1.5rem; font-weight:500; padding:10px 20px;}
nav.drawer-nav ul.drawer-menu li a p {display:none;}
nav.drawer-nav ul.drawer-menu li.home {}
nav.drawer-nav ul.drawer-menu li.home a {}





/* MAIN -------------------------------------------------- */
MAIN {margin:60px 0 0;}

/* FOOTER -------------------------------------------------- */
div.bg {position:absolute; top:70vh; width:100%; z-index:-3; height:300px;}
div.bg::before {content:""; position:absolute; left:0; right:0; top:-100px; bottom:299px; clip-path: polygon(100% 0, 100% 100%, 0 100%);}
div.bg::after {content: ""; position:absolute; left:0; right:0; top:299px; bottom:-100px; clip-path: polygon(0 0, 100% 0, 0 100%);}
body:not(.index) div.bg {top:20vh;}
body.about div.bg {display:none;}
body.news div.bg {display:none;}


/*お知らせ*/
div.foot_news {background:#f2f2f3; padding:40px 20px;}
div.foot_news H2 {font-size:1.8rem; letter-spacing:0.25em !important; font-weight:400; text-align:center;}
div.foot_news H2 p {font-size:1.4rem; font-weight:200; letter-spacing:0.1em !important; text-align:center; color:#c79f6c;}

div.foot_news ul.list {width:100%; margin:30px auto 0; line-height:25px;}
div.foot_news ul.list li {border-bottom:1px #9b9b9b solid; margin-bottom:1em;}
div.foot_news ul.list li a {display:block; overflow:hidden; padding:10px 0 10px; text-decoration:none;}
div.foot_news ul.list li a p {float:left; font-size:1.3rem;}
div.foot_news ul.list li a p.date {width:7em; font-size:1.1rem; line-height:2rem; font-weight:300;}
div.foot_news ul.list li a p.category {width:8em; font-size:1.2rem; line-height:1.8rem; text-align:center; color:#555; border:1px #555 solid; transition:.2s;}
div.foot_news ul.list li a:hover p.category {background:#555; color:#FFF;}
div.foot_news ul.list li a p.ttl {float:none !important; letter-spacing:0.05em !important; padding-top:.5em; margin-left:1.5em; width:calc(100% - 2em); display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden;}

div.foot_news ul.list_column {width:100%; margin:50px auto 0; font-size:0;}
div.foot_news ul.list_column li {display:inline-block; width:48%; vertical-align:top;}
div.foot_news ul.list_column li:nth-of-type(n+2) {margin-left:4%;}
div.foot_news ul.list_column li a {display:block; text-decoration:none;}
div.foot_news ul.list_column li a p.ph {display:flex; width:100%; height:auto; aspect-ratio:300/215; overflow:hidden; position:relative; margin-bottom:5px;}
div.foot_news ul.list_column li a p.ttl {font-size:1.3rem; line-height:1.5rem; letter-spacing:0.05em !important;}

div.foot_news ul.list_column li.move:nth-of-type(3) {display:none;}




FOOTER {margin:40px 0 150px;}

FOOTER div.foot_guide {}
FOOTER div.foot_guide H2 {display:table; margin:0 auto;}
FOOTER div.foot_guide H2 a {display:block; width:60vw; height:auto; aspect-ratio:525/125; background:url("images/logo.png") center center; background-size:contain !important; margin:auto;}
FOOTER div.foot_guide H2 a span {display:none;}
FOOTER div.foot_guide H2 p {font-size:3vw; font-weight:400;}

FOOTER div.foot_guide ul.address {margin:20px 0 40px;}
FOOTER div.foot_guide ul.address li {font-size:1.1rem; line-height:1.5rem;}
FOOTER div.foot_guide ul.address li H3 {font-size:1.4rem; line-height:2.2rem;}
FOOTER div.foot_guide ul.address li.address {}
FOOTER div.foot_guide ul.address li.tel {}
FOOTER div.foot_guide ul.address li.tel::before {font-family:"FontAwesome"; content:"\f095"; font-size:1.1rem; margin-right:.3em;}
FOOTER div.foot_guide ul.address li.fax {}
FOOTER div.foot_guide ul.address li.fax::before {font-family:"FontAwesome"; content:"\f1ac"; font-size:1.1rem; margin-right:.3em;}

FOOTER div.foot_contact {}
FOOTER div.foot_contact ul.partner {width:1000px; font-size:0; margin:0 auto;}
FOOTER div.foot_contact ul.partner li {display:inline-block; width:480px;}
FOOTER div.foot_contact ul.partner li:nth-of-type(2) {margin-left:40px;}
FOOTER div.foot_contact ul.partner li a {display:block; border:2px #6843b7 solid; background:#FFF; font-size:2rem; line-height:5.6rem; font-weight:bold; color:#6843b7; text-align:center; box-sizing:border-box; padding-right:1em; border-radius:6rem; text-decoration:none; position:relative;}
FOOTER div.foot_contact ul.partner li a::before {font-family:"FontAwesome"; content:"\f0e0"; font-size:1.8rem; line-height:6rem; color:#FFF; position:absolute; right:20px; z-index:1; transition:.2s;}
FOOTER div.foot_contact ul.partner li a::after {content:""; width:36px; height:36px; border-radius:100%; background:#6843b7; position:absolute; right:12px; top:12px;}
FOOTER div.foot_contact ul.partner li a:hover {background:#6843b7; color:#FFF;}
FOOTER div.foot_contact ul.partner li a:hover::before {color:#6843b7;}
FOOTER div.foot_contact ul.partner li a:hover::after {background:#FFF;}

div.foot_contact_sp {background:#faf9f5; box-sizing:border-box; padding:0 3vw; position:fixed; left:0; right:0; bottom:0; border-top:1px #99999988 solid;}
div.foot_contact_sp H3 {font-size:3.4vw; letter-spacing:0.05em !important; font-weight:600; color:#6843b7; text-align:center; margin:1em 0 .5em;}
div.foot_contact_sp ul.contact {width:auto; margin:0; display:flex; justify-content:space-between;}
div.foot_contact_sp ul.contact li {background:#FFF; border-radius:6px; box-sizing:border-box; padding:6px;}
div.foot_contact_sp ul.contact li.tel {width:50vw;}
div.foot_contact_sp ul.contact li.tel p.tel {display:table; margin:0 auto 5px; font-size:2rem; font-weight:500; letter-spacing:0.01em !important; line-height:1.3; border-bottom:1px solid;}
div.foot_contact_sp ul.contact li.tel p.tel::before {font-family:"FontAwesome"; content:"\f095"; font-size:1.3rem; margin-right:.2em;}
div.foot_contact_sp ul.contact li.tel p.time {text-align:center; font-size:1.3rem; font-weight:500;}
div.foot_contact_sp ul.contact li.tel p.time span {font-size:1.1rem; font-weight:400; margin-left:.5em;}
div.foot_contact_sp ul.contact li.mail {width:42vw;}
div.foot_contact_sp ul.contact li.mail a {display:block; margin:4px auto 0; background:#FFF; font-size:1rem; line-height:1.8rem; letter-spacing:0.05em !important; font-weight:500; color:#6843b7; border:1px #6843b7 solid; text-align:center; box-sizing:border-box; padding:0; border-radius:6rem; text-decoration:none; position:relative;}
div.foot_contact_sp ul.contact li.mail a:nth-of-type(n+2) {margin:10px auto 0;}
div.foot_contact_sp ul.contact li.mail a.contact {background:#6843b7; color:#FFF; border:1px #6843b7 solid;}
div.foot_contact_sp ul.contact li.mail a.partner {}
div.foot_contact_sp ul.contact li.mail a::before {font-family:"FontAwesome"; content:"\f054"; font-size:1rem; line-height:2rem; color:#6843b7; position:absolute; right:8px; z-index:1; transition:.2s;}
div.foot_contact_sp ul.contact li.mail a.contact::before {color:#FFF;}
div.foot_contact_sp ul.contact li.mail a.partner::before {}
div.foot_contact_sp ul.contact li.mail a:hover::before {right:4px;}

div.foot_contact_sp ul.bottom {width:100%; margin:5px auto 3px; line-height:2rem; overflow:hidden; color:#555;}
div.foot_contact_sp ul.bottom li {}
div.foot_contact_sp ul.bottom li.copy {font-size:1rem; float:left;}
div.foot_contact_sp ul.bottom li.privacy {font-size:1.1rem; float:right;}
div.foot_contact_sp ul.bottom li.privacy a {color:#555; text-decoration:none;}

/**********************************/



/* #INDEX -------------------------------------------------- */
div#index {margin:0 auto 100px;}

/*冒頭画像*/
div#index div.index_slide {position:relative; width:100%; height:auto; aspect-ratio:16/9; max-height:calc(100vh - 180px); box-sizing:border-box; z-index:50;}
div#index div.index_slide H2 {display:table; margin:auto; color:#000; font-size:1.4rem; line-height:2.4rem; font-weight:400; letter-spacing:0.1em; position:absolute; left:0; top:0; bottom:0; z-index:51; background:#FFFFFFCC; padding:1.5rem 2rem;}
div#index div.index_slide ul.index_slide {}
div#index div.index_slide ul.index_slide li {width:100%; height:auto; aspect-ratio:16/9; max-height:calc(100vh - 180px); box-sizing:border-box; padding:0;}
div#index div.index_slide ul.index_slide li {background-position:center center; background-repeat:no-repeat; background-size:cover !important;}


/*OEMについて*/
div#index div.index_oem {margin-top:80px; box-sizing:border-box; padding:0 20px;}
div#index div.index_oem H2 {font-size:2rem; letter-spacing:0.25em !important; font-weight:400; text-align:center;}
div#index div.index_oem H2 span {font-size:1.7rem; letter-spacing:inherit !important;}
div#index div.index_oem H2 p {font-size:1.3rem; font-weight:200; letter-spacing:0.1em !important; text-align:center; color:#c79f6c;}
div#index div.index_oem p.intro {width:100%; margin:40px auto 40px; font-size:1.3rem; letter-spacing:0.05em !important; line-height:1.6; text-align:left;}
div#index div.index_oem p.intro span {display:table; text-align:center; margin:0 auto;}
div#index div.index_oem p.intro span img {display:inline-block; width:120px;}

div#index div.index_oem div.oem_flow {padding:40px 0 0;}
div#index div.index_oem div.oem_flow H2 {font-size:1.8rem; font-weight:400; letter-spacing:0.1em !important; text-align:center; color:#6843b7;}
div#index div.index_oem div.oem_flow > p.desc {width:100%; margin:40px auto 0; font-size:1.3rem; letter-spacing:0.05em; line-height:1.6; text-align:left;}
div#index div.index_oem div.oem_flow ul.flow {width:100%; margin:40px auto 60px; display:flex; justify-content:center; counter-reset:number 0; flex-wrap:wrap;}
div#index div.index_oem div.oem_flow ul.flow li {position:relative; width:30%;}
div#index div.index_oem div.oem_flow ul.flow li:not(:first-child) {padding-left:5%;}
div#index div.index_oem div.oem_flow ul.flow li:not(:first-child)::before {font-family:"FontAwesome"; content:"\f0da"; position:absolute; top:0; bottom:0; margin:auto; left:6px; font-size:2rem; height:1em; color:#6843b7; animation:flow_arrow 2s infinite;}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(2)::before {animation-delay:0.2s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(3)::before {animation-delay:0.4s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(4)::before {animation-delay:0.6s}
div#index div.index_oem div.oem_flow ul.flow li:nth-of-type(5)::before {animation-delay:0.8s}

div#index div.index_oem div.oem_flow ul.flow li p.ttl {font-size:1.3rem; line-height:1.8rem; letter-spacing:0.05em; font-weight:500; text-align:center; min-height:54px;}
div#index div.index_oem div.oem_flow ul.flow li p.ttl::before {counter-increment:number 1; content:"STEP" counter(number, decimal); font-size:1.3rem; letter-spacing:0; display:block; color:#6843b7;}
div#index div.index_oem div.oem_flow ul.flow li p.desc {font-size:1.1rem; line-height:1.4rem; padding:1em .5em 0; font-weight:400;}

div#index div.index_oem div.oem_flow.move {}
div#index div.index_oem div.oem_flow.move H2 {transition-delay:.1s;}
div#index div.index_oem div.oem_flow.move > p.desc {transition-delay:.2s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(1) {transition-delay:.4s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(2) {transition-delay:.5s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(3) {transition-delay:.6s;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(4) {transition-delay:.7s; margin-top:30px;}
div#index div.index_oem div.oem_flow.move ul.flow li:nth-of-type(5) {transition-delay:.8s; margin-top:30px;}


div#index div.index_oem a.detail {display:table; margin:0 auto; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em !important; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 3rem; text-decoration:none; position:relative; transition:.2s;}
div#index div.index_oem a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:14px; z-index:1; transition:.2s;}
div#index div.index_oem a.detail:hover {background:#555; color:#FFF;}
div#index div.index_oem a.detail:hover::before {right:8px; color:#FFF;}

div#index div.index_oem H2 p.move {opacity:0; transform:translate3d(0, 15px, 0); transition:1s; transition-delay:.1s;}
div#index div.index_oem H2 p.move.animated {opacity:1; transform:translate3d(0, 0, 0);}
div#index div.index_oem p.intro.move {opacity:0; transform:translate3d(15px, 0, 0); transition:1s;}
div#index div.index_oem p.intro.move.animated {opacity:1; transform:translate3d(0, 0, 0);}


/*商品情報*/
div#index div.index_product {margin-top:120px; box-sizing:border-box; padding:0 20px;}
div#index div.index_product H2 {font-size:2rem; letter-spacing:0.25em !important; font-weight:400; text-align:center;}
div#index div.index_product H2 p {font-size:1.3rem; font-weight:200; letter-spacing:0.1em !important; text-align:center; color:#c79f6c;}
div#index div.index_product p.intro {width:100%; margin:40px auto 40px; font-size:1.3rem; letter-spacing:0.05em !important; line-height:1.6; text-align:left;}
div#index div.index_product ul {width:100%; margin:0 auto 40px; font-size:0; text-align:center;}
div#index div.index_product ul li {display:inline-block; width:48%; vertical-align:top;}
div#index div.index_product ul li:nth-of-type(n+2) {margin-left:4%; margin-bottom:6%;}
div#index div.index_product ul li:nth-of-type(2n+1) {margin-left:0;}
div#index div.index_product ul li p.ph {display:flex; width:100%; height:auto; aspect-ratio:1/1; overflow:hidden; position:relative; margin-bottom:10px;}
div#index div.index_product ul li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div#index div.index_product ul li H3 {font-size:1.4rem; line-height:1.8rem; margin-bottom:5px;}
div#index div.index_product ul li p.desc {font-size:1.1rem; line-height:1.4rem;}

div#index div.index_product a.detail {display:table; margin:0 auto; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em !important; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 3rem; text-decoration:none; position:relative; transition:.2s;}
div#index div.index_product a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:14px; z-index:1; transition:.2s;}
div#index div.index_product a.detail:hover {background:#555; color:#FFF;}
div#index div.index_product a.detail:hover::before {right:8px; color:#FFF;}



/* 下層 -------------------------------------------------- */
div#main {margin:100px auto 60px;}
div#main H1 {width:100%; margin:0 auto; font-size:2rem; letter-spacing:0.15em !important; font-weight:400; position:relative; box-sizing:border-box; padding:0 15px;}
div#main H1::after {content:""; position:absolute; left:0; right:100%; bottom:0; border-bottom:1px solid; transition:.3s; transition-delay:.5s;}
div#main H1.animated::after {right:50%;}

div#main div.page_content {width:100%; margin:60px auto 80px; font-size:1.5rem; letter-spacing:0.05em; line-height:2;}


/*OEM*/
div.page_oem {}
div.page_oem p.intro {width:100%; margin:40px auto 0; font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6; box-sizing:border-box; padding:0 20px;}

div.page_oem a.contact_oem {display:table; margin:0 auto; background:#6843b7DD; text-align:center; color:#FFF; font-size:1.8rem; line-height:3.6rem; letter-spacing:0.05em !important; font-weight:500; box-sizing:border-box; padding:0 2em; border-radius:4rem; text-decoration:none; position:relative;}
div.page_oem a.contact_oem::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.6rem; line-height:3.6rem; color:#FFF; position:absolute; right:15px; z-index:1; transition:.2s;}
div.page_oem a.contact_oem:hover::before {right:10px;}

div.page_oem div.oem_point {background:#faf9f5; padding:100px 0 80px; counter-reset:number 0; margin:0 0 80px;}
div.page_oem div.oem_point H2 {font-size:2.2rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_point H2::first-letter {font-size:2.4rem;}
div.page_oem div.oem_point H2::after {content:""; position:absolute; background:#f3f549; height:10px; left:-20px; right:-20px; bottom:6px; z-index:-1;}

div.page_oem div.oem_point div.point_list {width:100%; margin:0 auto; box-sizing:border-box; padding:0 20px;}
div.page_oem div.oem_point div.point_list:nth-of-type(1) {margin-top:60px;}
div.page_oem div.oem_point div.point_list:nth-of-type(n+2) {margin-top:80px;}
div.page_oem div.oem_point div.point_list H3 {font-size:2.4rem; font-weight:400; letter-spacing:0.05em !important; line-height:1; color:#6843b7;}
div.page_oem div.oem_point div.point_list H3 p.point {display:inline-block; font-size:1.4rem; letter-spacing:0; line-height:1; border-bottom:2px #6843b7 solid; margin-right:1.5em;}
div.page_oem div.oem_point div.point_list H3 p.point::after {counter-increment:number 1; content:counter(number, decimal); font-size:2rem; font-weight:300; margin-left:.2em;}
div.page_oem div.oem_point div.point_list H3 p.ttl {display:inline-block;}
div.page_oem div.oem_point div.point_list H3 p.copy {font-size:1.1rem; letter-spacing:0; padding-left:1.5em; line-height:1.5; color:#555; padding-top:1em;}
div.page_oem div.oem_point div.point_list > p.desc {font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6; margin-top:30px;}
div.page_oem div.oem_point div.point_list ul.detail {font-size:0; margin-top:20px; text-align:center;}
div.page_oem div.oem_point div.point_list ul.detail li {display:inline-block; width:100%; vertical-align:top;}
div.page_oem div.oem_point div.point_list ul.detail li p.ph {display:flex; width:100%; height:auto; aspect-ratio:70/38; overflow:hidden; position:relative; margin-bottom:10px;}
div.page_oem div.oem_point div.point_list ul.detail li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_point div.point_list ul.detail li p.desc {font-size:1.1rem; line-height:1.4rem; font-weight:400; margin-top:5px; text-align:center;}

div.page_oem div.oem_item {width:100%; margin:100px auto 0; box-sizing:border-box; padding:0 20px;}
div.page_oem div.oem_item H2 {font-size:2.2rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_item H2::after {content:""; position:absolute; background:#f3f549; height:10px; left:-20px; right:-20px; bottom:6px; z-index:-1;}
div.page_oem div.oem_item p.desc {margin:30px auto 0; font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6;}
div.page_oem div.oem_item ul.item {font-size:0;}
div.page_oem div.oem_item ul.item li {display:inline-block; width:48%; vertical-align:top; margin-right:4%; margin-top:4%;}
div.page_oem div.oem_item ul.item li:nth-of-type(2n) {margin-right:0;}
div.page_oem div.oem_item ul.item li p.ph {display:flex; width:100%; height:auto; aspect-ratio:1/1; overflow:hidden; position:relative; margin-bottom:5px;}
div.page_oem div.oem_item ul.item li p.ttl {font-size:1.4rem; line-height:2rem; font-weight:600; text-align:center; color:#c79f6c;}
div.page_oem div.oem_item ul.item li p.desc {font-size:1.1rem; line-height:1.4rem; font-weight:400; margin-top:5px;}


.material_plus {display:none;}
.material_plus_check {display:block; cursor:pointer; position:relative; line-height:4rem; text-align:center; margin-top:25px; background:#F0F0F0; box-sizing:border-box; padding:0; border-radius:5px; transition:.2s;}
.material_plus_check::before {content:"資材をもっと見る"; font-size:1.4rem;}
.material_plus_check::after {font-family:"FontAwesome"; content:"\f078"; font-size:1.8rem; position:absolute; right:calc(50% - 5.5em);}
.material_plus_check:hover {background:#ede8f6; color:#6843b7;}
.plus_list {height:120px; opacity:1; transition:.5s; overflow:hidden;}
.material_plus:checked + .material_plus_check + .plus_list {height:auto; opacity:1; visibility:visible;}
.material_plus:checked + .material_plus_check + ul.material.plus_list::before {display:none;}
.material_plus:checked + .material_plus_check::before {content:"閉じる";}
.material_plus:checked + .material_plus_check::after {font-family:"FontAwesome"; content:"\f077";}

div.page_oem div.oem_material {width:100%; margin:100px auto 0; box-sizing:border-box; padding:0 20px;}
div.page_oem div.oem_material H2 {font-size:2.2rem; font-weight:400; letter-spacing:0.15em; width:fit-content; margin:auto; position:relative;}
div.page_oem div.oem_material H2::after {content:""; position:absolute; background:#f3f549; height:10px; left:-20px; right:-20px; bottom:6px; z-index:-1;}
div.page_oem div.oem_material p.desc {margin:30px auto 0; font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6;}
div.page_oem div.oem_material ul.material {font-size:0; position:relative;}
div.page_oem div.oem_material ul.material.plus_list::before {content:""; position:absolute; left:0; right:0; top:0; height:140px; z-index:1; background-image: linear-gradient(0deg, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0.5) 100%);}
div.page_oem div.oem_material ul.material li {display:inline-block; width:30%; vertical-align:top; margin-right:5%; margin-top:5%;}
div.page_oem div.oem_material ul.material li:nth-of-type(5n) {margin-right:5%;}
div.page_oem div.oem_material ul.material li:nth-of-type(3n) {margin-right:0;}
div.page_oem div.oem_material ul.material li p.ph {display:flex; width:100%; height:auto; aspect-ratio:1/1; overflow:hidden; position:relative; margin-bottom:3px;}
div.page_oem div.oem_material ul.material li p.ph img {display:block; margin:auto; position:absolute; left:0; top:0; right:0; bottom:0;}
div.page_oem div.oem_material ul.material li p.ttl {font-size:1.1rem; line-height:1.4rem; font-weight:600;}
div.page_oem div.oem_material ul.material li p.ttl span {font-size:1rem; line-height:1.2rem; font-weight:500;}
div.page_oem div.oem_material ul.material li p.number {font-size:1rem; line-height:1.2rem; font-weight:400;}
div.page_oem div.oem_material ul.material li p.desc {font-size:1rem; line-height:1.1rem; font-weight:400; margin-top:3px; letter-spacing:0;}


div.page_oem div.oem_flow {background:#faf9f5; padding:80px 20px 60px; margin:80px 0 0;}
div.page_oem div.oem_flow H2 {font-size:1.8rem; font-weight:400; letter-spacing:0.1em !important; text-align:center; color:#6843b7;}
div.page_oem div.oem_flow > p.desc {width:100%; margin:40px auto 0; font-size:1.3rem; letter-spacing:0.05em; line-height:1.6; text-align:left;}
div.page_oem div.oem_flow ul.flow {width:100%; margin:60px auto 80px; display:flex; justify-content:center; counter-reset:number 0; flex-wrap:wrap;}
div.page_oem div.oem_flow ul.flow li {position:relative; width:30%;}
div.page_oem div.oem_flow ul.flow li:not(:first-child) {padding-left:5%;}
div.page_oem div.oem_flow ul.flow li:not(:first-child)::before {font-family:"FontAwesome"; content:"\f0da"; position:absolute; top:0; bottom:0; margin:auto; left:6px; font-size:2rem; height:1em; color:#6843b7; animation:flow_arrow 2s infinite;}
div.page_oem div.oem_flow ul.flow li:nth-of-type(2)::before {animation-delay:0.2s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(3)::before {animation-delay:0.4s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(4)::before {animation-delay:0.6s}
div.page_oem div.oem_flow ul.flow li:nth-of-type(5)::before {animation-delay:0.8s}

div.page_oem div.oem_flow ul.flow li p.ttl {font-size:1.3rem; line-height:1.8rem; letter-spacing:0.05em; font-weight:500; text-align:center; min-height:54px;}
div.page_oem div.oem_flow ul.flow li p.ttl::before {counter-increment:number 1; content:"STEP" counter(number, decimal); font-size:1.3rem; letter-spacing:0; display:block; color:#6843b7;}
div.page_oem div.oem_flow ul.flow li p.desc {font-size:1.1rem; line-height:1.4rem; padding:1em .5em 0; font-weight:400;}

div.page_oem div.oem_flow.move {}
div.page_oem div.oem_flow.move H2 {transition-delay:.1s;}
div.page_oem div.oem_flow.move > p.desc {transition-delay:.2s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(1) {transition-delay:.4s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(2) {transition-delay:.5s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(3) {transition-delay:.6s;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(4) {transition-delay:.7s; margin-top:30px;}
div.page_oem div.oem_flow.move ul.flow li:nth-of-type(5) {transition-delay:.8s; margin-top:30px;}


div.page_oem div.oem_works {display:none;}/*一旦非表示*/


div.page_oem div.oem_faq {width:100%; margin:120px auto 0; box-sizing:border-box; padding:0 20px;}
div.page_oem div.oem_faq H2 {font-size:2rem; font-weight:400; letter-spacing:0.1em; text-align:center;}
div.page_oem div.oem_faq > p.desc {margin:40px auto 0; font-size:1.3rem; letter-spacing:0.05em; line-height:1.6;}
div.page_oem div.oem_faq ul.faq {}
div.page_oem div.oem_faq ul.faq li {margin-top:40px;}
div.page_oem div.oem_faq ul.faq li p.faq_q {display:inline-block; border-bottom:1px #c79f6c solid; font-size:1.3rem; letter-spacing:0.1em; font-weight:bold; color:#c79f6c; text-indent:-1.2em; padding-left:1.2em;}
div.page_oem div.oem_faq ul.faq li p.faq_q::before {content:"Q.";}
div.page_oem div.oem_faq ul.faq li p.faq_a {font-size:1.2rem; line-height:1.6rem; font-weight:500; margin-top:.5em; padding-left:1em;}

div.page_oem div.oem_faq a.detail {display:table; margin:60px auto 0; background:#FFF; font-size:1.4rem; line-height:3.8rem; letter-spacing:0.05em !important; font-weight:400; color:#555; box-sizing:border-box; border:1px #555 solid; padding:0 3rem; text-decoration:none; position:relative; transition:.2s;}
div.page_oem div.oem_faq a.detail::before {font-family:"FontAwesome"; content:"\f054"; font-size:1.2rem; line-height:3.8rem; color:#555; position:absolute; right:14px; z-index:1; transition:.2s;}
div.page_oem div.oem_faq a.detail:hover {background:#555; color:#FFF;}
div.page_oem div.oem_faq a.detail:hover::before {right:8px; color:#FFF;}



/*PRODUCTS*/
div.page_product {}
div.page_product p.intro {width:100%; margin:40px auto 0; font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6; box-sizing:border-box; padding:0 20px;}

div.page_product div.product {width:100%; margin:140px auto 0; box-sizing:border-box; padding:0 20px;}

div.page_product div.product.noitem {width:100%; margin:160px auto; text-align:center; font-size:1.4rem; color:#999;}

div.page_product div.product div.product_detail {width:100%; float:none;}
div.page_product div.product div.product_detail H2 {font-size:1.8rem; font-weight:400; letter-spacing:0.1em !important; line-height:1.1; padding-bottom:.2em; position:relative;}
div.page_product div.product div.product_detail H2::after {content:""; border-bottom:1px solid; position:absolute; left:100%; right:0; bottom:-2px; transition:.3s;}
div.page_product div.product div.product_detail p.desc {font-size:1.3rem; letter-spacing:0.05em; line-height:1.6; margin-top:2em;}

div.page_product div.product div.product_detail table.product_spec {font-size:1.2rem; line-height:2.5rem; width:100%; margin-top:2em;}
div.page_product div.product div.product_detail table.product_spec th,
div.page_product div.product div.product_detail table.product_spec td {font-weight:400; padding:5px; border-bottom:1px #9b9b9b solid; vertical-align:top;}
div.page_product div.product div.product_detail table.product_spec th {width:8em;}
div.page_product div.product div.product_detail table.product_spec td {}

div.page_product div.product div.product_ph {width:100%; float:none; font-size:0; margin-top:4rem;}
div.page_product div.product div.product_ph p {margin-bottom:20px;}
div.page_product div.product div.product_ph p img {}
div.page_product div.product div.product_ph ul.product_ph {}
div.page_product div.product div.product_ph ul.product_ph li {}
div.page_product div.product div.product_ph ul.product_ph li img {}

div.page_product div.product div.product_ph .bx-wrapper .bx-controls-direction a {width:30px; height:105px; top:15px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-prev {left:-30px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-prev::before {border-color:#333; width:8px; height:8px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-next {right:-30px;}
div.page_product div.product div.product_ph .bx-wrapper .bx-next::before {border-color:#333; width:8px; height:8px;}



/*COMPANY*/
body.about div#main {margin:200px auto 0;}
div.page_company {}
div.page_company p.message {width:100%; margin:40px auto 0; font-size:1.4rem; letter-spacing:0.05em !important; line-height:1.6; box-sizing:border-box; padding:0 20px;}

div.page_company div.company_outline {background:#faf9f5; margin:80px 0 0; padding:20px 20px 0; box-sizing:border-box;}
div.page_company div.company_outline table.company_outline {width:100%; font-size:1.3rem; letter-spacing:0.1em !important; line-height:1.2; margin:0 auto;}
div.page_company div.company_outline table.company_outline th {display:block; width:100%; font-weight:600; padding:15px 0 0 0; border-bottom:none; vertical-align:top; white-space:nowrap;}
div.page_company div.company_outline table.company_outline td {display:block; width:100%; font-weight:400; padding:5px 0 10px 1em; border-bottom:1px #9b9b9b solid; vertical-align:top; letter-spacing:0;}
div.page_company div.company_outline table.company_outline td span.map {margin-left:1em; display:block;}
div.page_company div.company_outline table.company_outline td span.map a {color:#6843b7;}
div.page_company div.company_outline table.company_outline td ul.license {line-height:1;}
div.page_company div.company_outline table.company_outline td ul.license li {}
div.page_company div.company_outline table.company_outline td ul.license li:nth-of-type(n+2) {margin-top:5px;}

div.page_company div.company_outline div.map {position:relative; padding:0 0 40vh; height:0; overflow:hidden; margin-top:30px;}
div.page_company div.company_outline div.map iframe {position:absolute; left:0; top:0; width:100%; height:100%;}


/*PRIVACY*/
div.page_privacy {width:100%; margin:40px auto 0; box-sizing:border-box; padding:0 20px;}
div.page_privacy p.intro {font-size:1.2rem;}

div.page_privacy H2 {font-size:1.4rem; margin:3em 0 1em;}
div.page_privacy H2::before {content:"●"; margin-right:.3em;}
div.page_privacy p.txt {font-size:1.2rem; padding-left:10px;}
div.page_privacy ul.list {padding-left:30px; margin-top:2em; font-size:1.1rem; list-style-type:decimal-leading-zero;}
div.page_privacy ul.list li {margin-top:.4em;}

div.page_privacy ul.company {padding-left:20px; margin-top:2em; font-size:1.2rem;}
div.page_privacy ul.company li {margin-left:.5em;}
div.page_privacy ul.company li.com {margin:0 0 .5em; font-size:1.3rem; font-weight:bold;}
div.page_privacy ul.company li.nam {}
div.page_privacy ul.company li.add {}
div.page_privacy ul.company li.tel {}



/*CONTACT*/
div.page_contact {width:100%; margin:40px auto 0; box-sizing:border-box; padding:0 20px;}

div.page_contact div.contact_form {width:100%; margin:80px auto 0;}
div.page_contact div.contact_form table {width:100%; margin:0 0 0; font-size:1.4rem;}
div.page_contact div.contact_form table th {display:block; width:100%; box-sizing:border-box; padding:15px 15px 5px 15px; text-align:left; line-height:20px; font-weight:500;}
div.page_contact div.contact_form table th p {text-align:left; line-height:20px;}
div.page_contact div.contact_form table th span.must {color:#F10012; font-size:1.2rem; display:inline-block; text-align:right; margin-left:.5em;}
div.page_contact div.contact_form table td {display:block; width:100%; box-sizing:border-box; padding:0 15px 15px 15px; text-align:left;}
div.page_contact div.contact_form table td p {margin-bottom:1em; text-align:left;}
div.page_contact div.contact_form table td p:last-of-type {margin-bottom:0;}
div.page_contact div.contact_form table th span.note {font-size:1.2rem; color:#555; line-height:1.5em; display:block; text-align:right;}

div.page_contact div.contact_form table tr {transition:.2s;}
div.page_contact div.contact_form table tr:hover {background:#ede8f6;}

div.page_contact div.contact_form input[type="text"],
div.page_contact div.contact_form input[type="email"],
div.page_contact div.contact_form input[type="tel"],
div.page_contact div.contact_form input[type="number"],
div.page_contact div.contact_form input[type="url"],
div.page_contact div.contact_form select {padding:8px; width:100%; box-sizing:border-box; font-size:1.4rem; background:#EEE; border:1px #999 solid; border-radius:4px; color:#333;}
div.page_contact div.contact_form textarea {padding:10px; display:block; margin-top:5px; width:100%; box-sizing:border-box; font-size:1.4rem; background:#EEE; border:1px #999 solid; border-radius:4px;}

div.page_contact div.contact_form table tr:hover input[type="text"],
div.page_contact div.contact_form table tr:hover input[type="email"],
div.page_contact div.contact_form table tr:hover input[type="tel"],
div.page_contact div.contact_form table tr:hover input[type="number"],
div.page_contact div.contact_form table tr:hover input[type="url"],
div.page_contact div.contact_form table tr:hover select,
div.page_contact div.contact_form table tr:hover textarea {background:#FFF;}

div.page_contact div.contact_form table th label {display:block; text-align:right;}
div.page_contact div.contact_form table td label {padding:5px 10px 5px 5px; display:inline-block; letter-spacing:0;}

div.page_contact div.contact_form input[type="submit"] {margin:20px auto 0; padding:20px; width:300px; display:block; background:#6843b7DD; border:none; color:#FFF; letter-spacing:0.3em; text-align:center; cursor:pointer; font-size:1.6rem; transition:.2s;}
div.page_contact div.contact_form input[type="submit"]:hover,
div.page_contact div.contact_form form.invalid input[type="submit"]:hover {background:#333; color:#FFF;}

div.page_contact div.contact_form span[data-name="contact_zipcode"] input[type="text"] {width:8em;}
div.page_contact div.contact_form table td span.note {font-size:1.2rem; color:#555; letter-spacing:0; line-height:1.5em; display:inline-block; margin-left:1em;}

div.page_contact div.contact_form table td input:checked + span {color:#6843b7;}

div.page_contact div.contact_form table.message th {display:block; width:100%; text-align:left;}
div.page_contact div.contact_form table.message tr:nth-of-type(1) th {padding-top:0;}
div.page_contact div.contact_form table.message td {display:block; width:calc(100% - 10em); margin-left:10em; text-align:left;}
div.page_contact div.contact_form table.message th span.must {color:#F10012; font-size:1.2rem; display:inline-block; text-align:left; margin-left:.5em;}
div.page_contact div.contact_form table.message td {padding:0 15px 15px;}

div.page_contact div.contact_form div.note {font-size:1.2rem; margin:1em;}
div.page_contact div.contact_form div.note p {text-indent:-1em; padding-left:1em;}
div.page_contact div.contact_form div.note p::before {content:"▼";}

div.page_contact div.contact_form HR {border:none; border-bottom:1px #9b9b9b solid; margin:4em 0;}

div.page_contact div.contact_form table.other {margin:5em 0 4em;}
div.page_contact div.contact_form table.other th {display:block; width:100%;}
div.page_contact div.contact_form table.other th p {text-align:center;}
div.page_contact div.contact_form table.other th p a {color:#6843b7;}
div.page_contact div.contact_form table.other td {display:block; width:100%;}
div.page_contact div.contact_form table.other td span {display:block; width:100%; margin:0; text-align:center;}
div.page_contact div.contact_form table.other td label {display:block; text-align:center; padding:10px;}
div.page_contact div.contact_form table.other td label span {display:inline;}


div.page_contact div.contact_form input[type="submit"]:disabled {cursor:not-allowed;}
div.page_contact div.contact_form input[type="submit"]:disabled:hover {background:#2fa677DD;}


/*エラー表示*/
div.page_contact div.contact_form table td span.wpcf7-not-valid-tip {color:#BF0000; font-size:1.2rem; font-weight:bold; line-height:1; margin-top:5px;}
div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {border:none !important; text-align:center; color:#BF0000; font-weight:bold;}

.wpcf7-response-output {font-size:1.5rem;}

input.wpcf7-not-valid,
select.wpcf7-not-valid,
span.wpcf7-not-valid {border:1px #BF0000 solid !important; display:inline-block; border-radius:4px;}




/* お知らせ  -------------------------------------------------- */
/*ページネーション*/
div.wp-pagenavi {text-align:center; margin-top:80px;}

.wp-pagenavi {clear:both; text-align:center;}

.wp-pagenavi a,
.wp-pagenavi span {height:25px; width:25px; border-radius:50%; line-height:23px; text-align:center; border: 1px solid #6843b7 !important; box-sizing:border-box;
text-decoration: none; margin:0 .2em !important; padding:0 !important; display:inline-block; background:#FFF; color:#6843b7;
font-size:1rem; letter-spacing:0;
}

.wp-pagenavi a.previouspostslink {margin-right:1em !important;}
.wp-pagenavi a.previouspostslink p {position:relative; padding-right:1em; color:#6843b7; font-size:1.3rem; font-weight:bold;}
.wp-pagenavi a:hover.previouspostslink p {color:#333;}
.wp-pagenavi a.previouspostslink p::after {content:"\f0d9"; position:absolute; right:0; color:#6843b7; font-family:FontAwesome; font-size:1.5rem; transition:.2s;}
.wp-pagenavi a:hover.previouspostslink p::after {color:#101010;}

.wp-pagenavi a.nextpostslink {margin-left:1em !important;}
.wp-pagenavi a.nextpostslink p {position:relative; padding-left:1em; color:#6843b7; font-size:1.3rem; font-weight:bold;}
.wp-pagenavi a:hover.nextpostslink p {color:#101010;}
.wp-pagenavi a.nextpostslink p::before {content:"\f0da"; position:absolute; left:0; color:#6843b7; font-family:FontAwesome; font-size:1.5rem; transition:.2s;}
.wp-pagenavi a:hover.nextpostslink p::before {color:#101010;}

.wp-pagenavi span.extend {border:none !important; background:none !important; color:#6843b7; width:auto;}
.wp-pagenavi span.pages {display:none; /*display:block; border:none !important; background:none !important; color:#6843b7; width:auto;*/}

.wp-pagenavi span.pages p,
.wp-pagenavi a.first p,
.wp-pagenavi a.last p {text-align:center; font-weight:bold;}
.wp-pagenavi a.first ,
.wp-pagenavi a.last {border:none !important; background:none !important; color:#6843b7 !important;}
.wp-pagenavi a.first p ,
.wp-pagenavi a.last p {font-size:1.2rem;}
.wp-pagenavi a.first:hover ,
.wp-pagenavi a.last:hover {color:#101010 !important;}

/*RETURN*/
div.return {margin:40px auto 0; width:100%;}
div.return ul.return {display:flex; flex-wrap:nowrap;}
div.return ul.return li {width:100%; height:40px;}
div.return ul.return li a {display:block; text-decoration:none; font-size:1.4rem; line-height:3rem; font-weight:500; color:#6843b7;}
div.return ul.return li a::before,
div.return ul.return li a::after {font-family:"FontAwesome"; transition:.2s;}
div.return ul.return li.next a {text-align:right;}
div.return ul.return li.next a::before {content:"\f060"; margin-right:.5em;}
div.return ul.return li.next a:hover::before {margin-right:.7em;}
div.return ul.return li.prev a {text-align:left;}
div.return ul.return li.prev a::after {content:"\f061"; margin-left:.5em;}
div.return ul.return li.prev a:hover::after {margin-left:.7em;}
div.return ul.return li.all a {text-align:center;}
div.return ul.return li.all a::before {content:"\f0ca"; margin-right:.5em;}
div.return ul.return li a:hover {color:#333;}



/* お知らせ  -------------------------------------------------- */
H1.news {}
H1.news p {display:inline-block; font-size:3rem; color:#6843b7; margin-left:1em;}

div.news_area {width:100%; margin:60px auto 0; box-sizing:border-box; padding:0 20px;}
div.news_area div.news_main {float:none; width:100%;}

div.news_area div.news_main div.news_entry {width:100%; box-sizing:border-box;}
div.news_area div.news_main div.news_entry:nth-of-type(n+2) {margin-top:120px;}
div.news_area div.news_main div.news_entry p.catch {margin-bottom:4em;}
div.news_area div.news_main div.news_entry p.catch img {display:block; margin:0 auto; max-height:50vh; width:auto;}
div.news_area div.news_main div.news_entry p.ttl {font-size:1.8rem; line-height:1.2; font-weight:bold; padding-bottom:.3em; border-bottom:1px #9b9b9b solid; margin-bottom:.5em;}
div.news_area div.news_main div.news_entry p.date {font-size:1.2rem; line-height:2rem; float:left;}
div.news_area div.news_main div.news_entry ul.category {font-size:1.2rem; line-height:2rem;}
div.news_area div.news_main div.news_entry ul.category li {display:inline-block;}
div.news_area div.news_main div.news_entry ul.category li a {color:#6843b7; margin-left:1em;}
div.news_area div.news_main div.news_entry div.content {font-size:1.3rem; line-height:2rem;}
div.news_area div.news_main div.news_entry div.content > p {margin-top:1.3em;}
div.news_area div.news_main div.news_entry div.content a {}
div.news_area div.news_main div.news_entry div.content img {display:block; margin:3em auto; max-height:60vh; width:auto;}

div.news_area div.news_main div.news_entry div.content p + ul.faq {margin-top:40px;}
div.news_area div.news_main div.news_entry div.content ul.faq {background:#faf9f5; padding:20px;}
div.news_area div.news_main div.news_entry div.content ul.faq li {}
div.news_area div.news_main div.news_entry div.content ul.faq li:nth-of-type(n+2) {margin-top:30px;}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_q {display:inline-block; border-bottom:1px #c79f6c solid; font-size:1.3rem; letter-spacing:0.1em; font-weight:bold; color:#c79f6c; text-indent:-1.2em; padding-left:1.2em;}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_q::before {content:"Q.";}
div.news_area div.news_main div.news_entry div.content ul.faq li p.faq_a {font-size:1.2rem; line-height:1.6rem; font-weight:500; margin-top:.5em; padding-left:1em;}








}
