@charset "UTF-8";
/* font
----------------------------------------------- */
:root { --mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "MS P明朝", serif; /* font-family: var(--mincho); */ --gothic: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; /* font-family: var(--gothic); */ }

/* default sp
	----------------------------------------------- */
* { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video { padding: 0; margin: 0; font: inherit; word-wrap: break-word; border: 0; vertical-align: baseline; outline: none; }
body { padding: 0; margin: 0; color: #000; font-size: 3.5vw; font-family: 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; -webkit-text-size-adjust: 100%; font-style: normal; line-height: 1; }
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
strong, b { font-weight: bold; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object { height: auto; border: none; display: block; }
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
a { color: #000; text-decoration: none; display: block; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
a:hover { opacity: 0.6; }

.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }
.sp { display: block; }

/* common sp
----------------------------------------------- */
.wrapper { width: 100%; position: relative; }
.container {width: 100%;padding-top: 20vw;overflow: hidden;z-index: 1;position: relative;}
.contact-items {width: 70vw;margin: auto;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;}
.contact-items li {width: 100%;height: 14.5vw;font-family: var(--mincho);font-weight: 600;background: linear-gradient(to right, #1E5903, #3e9e12, #1E5903);-moz-border-radius: 3px;-webkit-border-radius: 3px;border-radius: 3px;border: 1px solid #fff;outline: 2px solid #1E5903;}
.contact-items a {width: 100%;height: 100%;padding: 0.4vw;color: #fff;}
.contact-items .icon {font-size: 5vw;}
.contact-items .title {padding-right: 3.5vw;margin-left: 1vw;font-size: 4vw;background: url(../images/arrow01.png?v=1785606342) no-repeat center right;background-size: 1.5vw;}
.contact-item-inner {width: 100%;-moz-border-radius: 2px;-webkit-border-radius: 2px;border-radius: 2px;display: -webkit-box;display: -webkit-flex;display: flex;-webkit-justify-content: center;justify-content: center;-webkit-align-items: center;align-items: center;}
.contact-items .deco{display:block;width: 44%;text-align: center;background:#fff;color:#1E5903;margin: 1vw auto 1%;padding: 1%;border-radius: 50px;}
.cv { padding: 8vw 0; background: url(../images/cv-bg.jpg?v=1785606342) no-repeat center; background-size: cover; }
.cv-banner { width: 90vw; margin: 0 auto 5vw; }
.cv-banner img { width: 100%; }

/* header sp
----------------------------------------------- */
.header {width: 100%;height: 20vw;background: #fff;z-index: 10;position: fixed;top: 0;left: 0;}
.header-content { width: 100%; height: 100%; padding: 1px 4vw; display: -webkit-box; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; }
.header-logo {width: 40vw;}
.header-logo img { width: 100%; -moz-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -o-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); -webkit-transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); transition: all 0.3s cubic-bezier(0.76, 0, 0.24, 1); }
.header-contact-items {width: 56vw;margin-right: 0;}
.header-contact-items li {width: 100%;}

/* hero sp
----------------------------------------------- */
.hero { width: 100%; position: relative; }
.hero-image { width: 100%; }
.hero-image img { width: 100%; }

/* footer sp
----------------------------------------------- */
.copyright { padding: 3vw 0 2.5vw; color: #fff; font-size: 3.16vw; text-align: center; line-height: 1.4; letter-spacing: 0.2vw; background: #3b3522; }
.footer ul{background: #3b3522;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;width:100%;margin:0 auto;padding: 3% 0 0 0;}
.footer li {width: 36%;text-align: center;}
.footer li a{color:#fff;font-weight:bold;padding: 5% 0;position:relative;}
.footer li:nth-child(1) a:after{content:"|";position:absolute;right:-7vw}


.second{line-height:1.6;font-size:3.5vw;margin-bottom: 15vw;}
.second .inner{width:90%;margin:0 auto;}

.second-hero .second-title{margin-bottom:6vw;}
.second-hero .second-title{background:#000;padding:10vw;font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif;}
.second-hero .second-title span{color:#fff;text-align:center;display:block;font-size:4vw;line-height:1.4;}
.second-hero .second-title .en{font-size:8vw;}

.privacy p {margin-bottom: 5%; }
.privacy dl{ margin-bottom: 5%;}
.privacy dt{margin-bottom: 2%;background: #9b9173;padding: 1% 2% 1%;color: #fff;font-weight: bold;}
.privacy dd{margin-bottom: 9%;}
.privacy li{position:relative;padding:0 0 0 5%;margin-bottom:3%;}
.privacy ul span{position:absolute;left:0;}
.privacy  a{display:inline-block;text-decoration:underline;font-weight:bold;}
.privacy .right{text-align:right;}

.tbl-box{margin-bottom:10%;}
.tbl-box table{width:100%;border: 1px solid #e8e8e8;}
.tbl-box tr{border-bottom:1px solid #e8e8e8;}
.tbl-box tr:nth-child(1){border-top:1px solid #e8e8e8;}
.tbl-box th,.tbl-box td{padding:3% 5%;line-height: 1.4;vertical-align: middle;}
.tbl-box th{background:#e8e8e8;width:35%;border-bottom:1px solid #ffffff;font-weight: bold;}
.tbl-box tr:nth-last-child(1) th{border-bottom:none;}
.tbl-box td{width:65%;}


/* =============================================
pc-size
================================================*/
@media screen and (min-width: 736px) { /* default pc ----------------------------------------------- */
  body { font-size: 15px; background: #000; }
  .sp { display: none; }
  .pc { display: block; }
	
  /* common pc ----------------------------------------------- */
  .wrapper { width: 1000px; margin: auto; -moz-box-shadow: 0 0 10px #554c32, 0 0 20px #554c32, 0 0 40px #554c32; -webkit-box-shadow: 0 0 10px #554c32, 0 0 20px #554c32, 0 0 40px #554c32; box-shadow: 0 0 10px #554c32, 0 0 20px #554c32, 0 0 40px #554c32; }
  .container { padding-top: 120px; }
  .contact-items {width: 490px;}
  .contact-items li {width: 100%;height: auto;text-align: center;padding: 10px 0;}
  .contact-items a { padding: 4px; }
  .contact-items .icon { font-size: 28px; }
  .contact-items .title { padding-right: 25px; margin-left: 8px; font-size: 25px; background-position: top 6px right; background-size: 8px; }
  .contact-item-inner {padding-top: 2px;display: inline-block;width: 300px;}
  .contact-items .deco{display:inline-block;width: 120px;margin: 0 5px 0 0;padding: 10px 0;font-size: 18px;position: relative;top: -2px;}
  .cv { padding: 40px 0; }
  .cv-banner { width: 90%; margin-bottom: 25px; }
	
  /* header pc ----------------------------------------------- */
  .header { width: 1000px; height: 120px; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
  .header-content { padding: 1px 2.5%; }
  .header-logo {width: 215px;}
	
  /* hero pc ----------------------------------------------- */
  .top-hero-content { padding-top: 0; }
  .top-hero-title { width: 450px; padding: 0; font-size: 34px; top: 220px; left: 50vw; }
  .top-hero-image { min-width: 2000px; position: relative; left: 50%; -moz-transform: translateX(-50%); -ms-transform: translateX(-50%); -webkit-transform: translateX(-50%); transform: translateX(-50%); }
	
  /* footer pc ----------------------------------------------- */
  .footer ul{padding:30px 0 0 0;}
  .footer li{width: 160px;}
  .copyright {padding: 10px 0 17px;font-size: 15px;letter-spacing: 2px;}
.footer li:nth-child(1) a:after{right:-30px;}

.second-hero .second-title{padding: 50px 0;margin: 0 0 0 0;}
.second-hero .second-title .en{font-size:50px;}
.second-hero .second-title span{font-size:18px;}
.second{background:#fff;font-size: 16px;padding: 70px 0 50px 0;margin-bottom: 0;}

.privacy p{margin-bottom:20px;}
.privacy li{padding:0 0 0 15px;margin-bottom: 9px;}
.privacy dl{margin-bottom:40px;}
.privacy dt{margin-bottom:10px;font-size:18px;}
.privacy dd{margin-bottom:20px;}
	
.tbl-box th{width:25%;}
.tbl-box th, .tbl-box td{padding:20px 20px}
.tbl-box td{line-height: 1.8;}
	
  /* retina用 ----------------------------------------------- */ }
@media screen and (min-width: 736px) and (-webkit-min-device-pixel-ratio: 2), screen and (min-width: 736px) and (min-resolution: 2dppx) { 
  .contact-items .title { background: url(../images/arrow01@2x.png?v=1785606342) no-repeat top 6px right; background-size: 8px; }
  .cv { background: url(../images/cv-bg@2x.jpg?v=1785606342) no-repeat center; background-size: cover; } }
