@charset "UTF-8";
/*
  base
========================================== */
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, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, 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, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

img { margin: 0; padding: 0; border: 0; vertical-align: bottom; }

ol, ul { list-style: none; }

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

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }

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

a img { border: none; }

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

input { border-radius: 0; }

button, [type="button"], [type="reset"], [type="submit"][role="button"] { cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; margin: 0; }

[disabled] { cursor: default; }

[type="number"] { width: auto; }

textarea { overflow: auto; resize: vertical; }

button, input, select, textarea { font: inherit; }

button { overflow: visible; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: 0; padding: 0; }

button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { outline: 1px dotted ButtonText; }

button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }

button, select { text-transform: none; }

button, input, select, textarea { background-color: transparent; border-style: none; color: inherit; }

legend { border: 0; color: inherit; display: table; max-width: 100%; white-space: normal; }

/*
base role
//影響範囲が大きいため、作成をはじめてからの
//追記は極力避ける
=======================================*/
* { -webkit-box-sizing: border-box; box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

html body { font-family: -apple-system, BlinkMacSystemFont, futura-pt, "游ゴシック体", YuGothic, "Yu Gothic Medium", sans-serif; font-size: 15px; -webkit-font-feature-settings: "pkna" 1; font-feature-settings: "pkna" 1; line-height: 1.8; color: #000; letter-spacing: 0.09em; word-break: break-word; }

@media only screen and (max-width: 896px) { html body { font-size: 90%; } }

@media only screen and (max-width: 670px) { html body { font-size: 85%; } }

a > img { -webkit-transition: .3s; transition: .3s; }

a > img:hover { opacity: .5; }

::selection { background: #EF9E9F; /*背景色*/ color: #fff; /*文字色*/ }

::-moz-selection { background: #EF9E9F; /*背景色*/ color: #fff; /*文字色*/ }

/*
grobal width
========================================*/
.width { width: 96%; max-width: 1320px; margin: 0 auto; }

.in-width { width: 100%; max-width: 1200px; margin: 0 auto; }

/*
inline style
========================================*/
small { font-size: .8em; }

strong { font-weight: 600; }

/*
  parts
========================================== */
/*
  parts
========================================== */
/*
article,section
========================================*/
.box { padding: 20px; background: #fff; }

.box.-gray { background: #eeeeee; }

.box.-pale { background: #f5efc4; }

.box.-border { border: 1px solid #CCC; }

.box.-accent { border: 1px solid #177E89; }

.box.-main { border: 1px solid #F6EA8C; background: #fcf9dc; }

.box.-sub { border: 1px solid #EF9E9F; background: #fdf6f6; }

.box.-inner-pd { padding: 60px 0; }

.box.-clear { background: transparent; }

.box.-alert { border: 1px solid #ea5532; background: #fce7e2; }

.box.-error { margin-top: 5px; padding: 10px 10px 8px; border: 2px solid #ea5532; }

.box-shadow { -webkit-box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.16); box-shadow: 10px 10px 0 rgba(0, 0, 0, 0.16); }

.box-shadow.-img { display: inline-block; }

.box-shadow.-main { -webkit-box-shadow: 10px 10px 0 #F6EA8C; box-shadow: 10px 10px 0 #F6EA8C; }

.card-outer { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

.card { width: 25%; padding: 10px; display: -webkit-box; display: -ms-flexbox; display: flex; }

.card-inner { border: 1px solid #CCC; padding: 30px; text-align: center; position: relative; }

.card-inner::before { content: ""; width: 40px; height: 40px; background-image: url("/img/common/tri-t-main.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.card-inner::after { content: ""; width: 40px; height: 40px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }

.card-title { font-weight: 600; font-size: 1.3em; padding-bottom: 10px; }

.card-title .-iconbox { display: block; padding-bottom: 10px; }

.card-title .-iconbox > img { width: 100%; max-width: 90px; }

.card-desc { color: #6B6B6B; font-size: .85em; }

.phase-box { padding: 25px 20px 20px; position: relative; border: 1px solid #CCC; margin-bottom: 60px; }

.phase-title { position: absolute; top: -22px; left: 2em; width: calc(100% - 2em); }

.phase-title .-inner { background: #fff; padding: 0 10px; }

.phase-title .-en { padding-right: 10px; color: #EF9E9F; font-weight: 600; }

.phase-title .-ja { font-size: 1.5em; font-weight: 600; }

@media only screen and (max-width: 896px) { .card { width: 33.333%; }
  .card-inner { padding: 20px; }
  .card-title .-iconbox > img { width: 100%; max-width: 50px; }
  .phase-box { margin-bottom: 40px; } }

@media only screen and (max-width: 670px) { .box { padding: 20px 5px; }
  .box.-inner-pd { padding: 30px 0; }
  .card { width: 50%; } }

@media only screen and (max-width: 480px) { .card { padding: 5px; }
  .card-inner { padding: 20px 10px; }
  .card-inner::before { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-t-main.png"); background-size: contain; position: absolute; top: 0; left: 0; }
  .card-inner::after { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }
  .card-title { font-size: .9em; } }

.sub-title { background-image: url("/img/common/sub-title.jpg"); height: 160px; position: relative; }

.sub-title::after { content: ""; width: 60px; height: 60px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }

.balloon { position: absolute; top: 40px; left: 40px; }

.balloon > img { width: 100%; max-width: 220px; }

.balloon-txt { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); top: 45%; width: 100%; }

.balloon-txt .-en { font-size: 1.6em; text-align: center; display: block; }

.balloon-txt .-ja { text-align: center; display: block; line-height: 1.3; font-size: .85em; }

.content-h { position: relative; padding: 5px 10px 0 100px; border-bottom: 1px solid #CCC; }

.content-h::before { content: ""; width: 25px; height: 25px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.content-h::after { content: ""; width: 25px; height: 25px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }

.content-h .-en { font-size: 2.4em; font-weight: 600; }

.content-h .-en::before { content: ""; width: 40px; height: 40px; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: 35px; background-image: url("/img/common/balloon-icon.png"); background-size: contain; background-repeat: no-repeat; background-position: center center; display: inline-block; }

.content-h .-ja { padding: 0 40px; }

.content-h-nonbln { position: relative; padding: 8px 40px; border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; font-size: 2em; font-weight: 600; }

.content-h-nonbln::before { content: ""; width: 25px; height: 25px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.content-h-nonbln::after { content: ""; width: 25px; height: 25px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }

.middle-h { padding: 10px; font-weight: 600; font-size: 1.2em; position: relative; }

.middle-h::after { content: ""; width: 0; height: 0; border-style: solid; border-color: transparent transparent #fff transparent; border-width: 0 0 20px 20px; position: absolute; bottom: 2px; right: 2px; }

.middle-h.-main { background: #F6EA8C; }

.middle-h.-sub { background: #EF9E9F; }

.middle-h.-accent { color: #fff; background: #177E89; }

.top-h { position: relative; }

.top-h > img { width: 100%; max-width: 150px; }

.top-h .top-h-txt { position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); padding-left: 40px; top: 45%; }

.top-h .-ja, .top-h .-en { display: block; }

.top-h .-ja { line-height: 1.2; padding-bottom: 5px; }

.top-h .-en { font-size: 2.5em; font-weight: 600; line-height: 1; }

@media print, screen and (max-width: 1024px) { .sub-title { height: 130px; }
  .balloon { top: 10px; left: 20px; }
  .balloon > img { width: 100%; max-width: 180px; }
  .balloon-txt .-en { font-size: 1.3em; }
  .balloon-txt .-ja { font-size: .8em; } }

@media only screen and (max-width: 670px) { .sub-title { height: auto; padding: 10px; }
  .sub-title::after { width: 40px; height: 40px; }
  .balloon { position: static; display: inline-block; top: auto; left: auto; }
  .balloon > img { width: 100%; max-width: 100px; }
  .balloon-txt { position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); left: auto; top: 45%; padding-left: 10px; width: auto; }
  .balloon-txt .-en { text-align: left; font-size: 1.5em; display: inline; }
  .balloon-txt .-ja { text-align: left; font-size: .8em; display: inline; padding-left: 8px; }
  .content-h { padding: 5px 10px 0 60px; }
  .content-h::before { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }
  .content-h::after { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }
  .content-h .-en { font-size: 2em; }
  .content-h .-en::before { width: 30px; height: 30px; left: 18px; }
  .content-h .-ja { padding: 0 20px; font-size: .85em; }
  .middle-h { padding: 7px; font-size: 1.1em; }
  .middle-h::after { content: ""; width: 0; height: 0; border-style: solid; border-color: transparent transparent #fff transparent; border-width: 0 0 10px 10px; position: absolute; bottom: 2px; right: 2px; }
  .top-h > img { width: 100%; max-width: 100px; }
  .top-h .top-h-txt { padding-left: 10px; }
  .top-h .-ja { padding-bottom: 3px; font-size: .85em; }
  .top-h .-en { font-size: 2em; } }

@media only screen and (max-width: 480px) { .content-h { padding: 5px 10px 0 40px; }
  .content-h::before { content: ""; width: 15px; height: 15px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }
  .content-h::after { content: ""; width: 15px; height: 15px; background-image: url("/img/common/tri-b-sub.png"); background-size: contain; position: absolute; bottom: 0; right: 0; }
  .content-h .-en { font-size: 1.5em; }
  .content-h .-en::before { width: 20px; height: 20px; left: 10px; }
  .content-h .-ja { padding: 0 10px; font-size: .8em; }
  .top-h > img { width: 100%; max-width: 85px; }
  .top-h .-ja { font-size: .8em; }
  .top-h .-en { font-size: 1.5em; } }

.list { padding-left: 30px; }

.list > li { padding-bottom: 5px; }

.list > li:last-child { padding-bottom: 0; }

.list.-disc { list-style-type: disc; }

.list.-square { list-style-type: square; }

.list.-demical { list-style-type: decimal; }

.list.-rows { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.list.-rows > li { width: 50%; padding-right: 30px; }

.list.-rows > li:nth-of-type(2n) { padding-right: 0; }

.list.-rows > li:nth-last-child(2) { padding-bottom: 0; }

.flow-title { position: relative; padding: 8px 15px; border-bottom: 1px solid #CCC; font-weight: 600; font-size: 1.1em; }

.flow-title::before { content: ""; width: 25px; height: 25px; background-image: url("/img/common/tri-t-main.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.inc::before { counter-increment: flow; content: counter(flow) "."; padding-right: 10px; }

.flow-reset { counter-reset: flow; }

.flow-desc { padding: 0 20px; }

@media only screen and (max-width: 480px) { .list-rows { display: block; }
  .list-rows > li { width: 100%; padding-right: 0; }
  .list-rows > li:nth-last-child(2) { padding-bottom: 5px; } }

.t-center { text-align: center; }

.t-left { text-align: left; }

.t-right { text-align: right; }

.tl { color: #177E89; text-decoration: none; -webkit-transition: color .3s, border-bottom-color .3s; transition: color .3s, border-bottom-color .3s; border-bottom: 1px dashed #177E89; }

.tl:hover, .tl:active, .tl:focus { color: #e14648; border-bottom-color: #F6EA8C; }

.tl.-arrow { position: relative; margin-left: 13px; }

.tl.-arrow::before { content: "\f101"; font-family: FontAwesome; color: #000; font-weight: 400; position: absolute; top: -3px; left: -12px; }

.tl.-ext { position: relative; margin-right: 15px; }

.tl.-ext::after { content: "\f08e"; font-family: FontAwesome; font-weight: 400; font-size: .6em; position: absolute; top: -3px; right: -15px; }

.lead { font-weight: 600; font-size: 1.2em; padding: 6px 10px; }

.lead.-tri { position: relative; }

.lead.-tri::before { content: ""; width: 40px; height: 40px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.lead.-tri::before { z-index: -1; }

.strong { font-weight: 600; }

.del { text-decoration: line-through; }

.small { font-size: 0.85em; }

.small-middle { font-size: 0.93em; }

.big { font-size: 1.3em; }

.m-big { font-size: 1.7em; }

.clr-main { color: #F6EA8C; }

.clr-alert { color: #ea5532; }

.clr-white { color: #fff; }

.clr-gray { color: #999; }

.bg-gray { background: #eeeeee; }

.bg-main { background: #F6EA8C; }

.bg-sub { background: #EF9E9F; }

.bg-accent { background: #177E89; }

.indent { text-indent: 1em; }

.r-indent { padding-left: 1em; position: relative; }

.r-indent::before { position: absolute; left: 0; top: 0; }

.r-indent.kome::before { content: "※"; }

.marker.-main { background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, #F6EA8C)); background: -webkit-linear-gradient(transparent 60%, #F6EA8C 0%); background: linear-gradient(transparent 60%, #F6EA8C 0%); }

.marker.-sub { background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, #EF9E9F)); background: -webkit-linear-gradient(transparent 60%, #EF9E9F 0%); background: linear-gradient(transparent 60%, #EF9E9F 0%); }

.marker.-pad { padding: 0 5px; }

@media only screen and (max-width: 670px) { .m-big { font-size: 1.5em; }
  .lead { font-size: 1.1em; padding: 0px 5px; }
  .lead.-tri { padding: 5px; }
  .lead.-tri::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; } }

.btn { padding: 10px 30px; border: 1px solid #000; max-width: 400px; text-align: center; color: #000; text-decoration: none; -webkit-transition: background .3s ,color .3s; transition: background .3s ,color .3s; display: inline-block; cursor: pointer; }

.btn.-main { background: #F6EA8C; }

.btn.-main:hover, .btn.-main:active, .btn.-main:focus { background: #EF9E9F; }

.btn.-sub { background: #EF9E9F; }

.btn.-re-sub { border: 2px solid #fff; font-weight: 600; color: #fff; background: #EF9E9F; }

.btn.-re-sub:hover, .btn.-re-sub:active, .btn.-re-sub:focus { color: #000; }

.btn.-accent { border: 2px solid #fff; font-weight: 600; color: #fff; background: #177E89; }

.btn.-accent:hover, .btn.-accent:active, .btn.-accent:focus { color: #000; }

.btn.-arrow { position: relative; padding: 10px 50px; }

.btn.-arrow::after { content: "\f101"; font-family: fontAwesome; position: absolute; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); top: 46%; right: 15px; font-weight: 400; }

.btn.-long { width: 100%; max-width: 800px; padding: 20px 50px; font-size: 1.2em; }

.btn:hover, .btn:active, .btn:focus { background: #F6EA8C; }

.flex-half { display: -webkit-box; display: -ms-flexbox; display: flex; }

.flex-half .-half { width: 50%; padding: 10px; }

@media only screen and (max-width: 896px) { .flex-half { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .flex-half .-half { width: 100%; }
  .flex-half .-order { -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } }

@media only screen and (max-width: 670px) { .flex-half .-half { width: 100%; padding: 10px 0; } }

.sp-only, .sp-only-inline { display: none; }

@media only screen and (max-width: 896px) { .pc-only { display: none; } }

@media only screen and (max-width: 670px) { .sp-none { display: none; }
  .sp-only { display: block; }
  .sp-only-inline { display: inline; } }

.simple-table { width: 100%; border-left: 1px solid #CCC; border-right: 1px solid #CCC; }

.simple-table .main-clr th { background: #F6EA8C; font-weight: 600; }

.simple-table td, .simple-table th { padding: 15px; border-bottom: 1px solid #CCC; border-right: 1px solid #CCC; }

.simple-table .-nowrap { white-space: nowrap; }

.simple-table tr:first-of-type td, .simple-table tr:first-of-type th { border-top: 1px solid #CCC; }

.simple-table.scroll { min-width: 830px; }

.no-width th { width: auto; }

.fixtable { table-layout: fixed; }

.pr-table { table-layout: fixed; font-size: .9em; }

.pr-table th { width: auto; background: #eeeeee; }

.pr-table.scroll { min-width: 900px; }

.pr-mini-table { max-width: 800px; }

@media only screen and (max-width: 896px) { .table-cvr { overflow-x: auto; -webkit-overflow-scrolling: touch; } }

@media only screen and (max-width: 670px) { .simple-table th, .simple-table td { padding: 15px 5px; }
  .resp-table { border-top: 5px solid #F6EA8C; border-left: 1px solid #CCC; }
  .resp-table th, .resp-table td { display: block; width: 100%; border: none; border-bottom: 1px solid #CCC; }
  .resp-table tr:first-of-type td, .resp-table tr:first-of-type th { border-top: none; }
  .table-cvr { padding: 0 10px 10px; border: 1px solid #177E89; position: relative; }
  .table-cvr::before { content: "※下記の表は横に動かして見ることができます"; color: #0068b7; font-size: .8em; } }

/*
pankuzu
=================================*/
.bread { width: 96%; max-width: 1320px; margin: 0 auto; font-size: 0.85em; padding: 3px 0; text-align: right; }

.bread-item { display: inline; color: #999; }

.bread-item::after { content: "\f105"; font-family: FontAwesome; padding: 0 7px 0 10px; vertical-align: middle; }

.bread-item:last-of-type::after { content: ""; padding: 0; }

/*
header
=================================*/
.header-inner { display: -ms-grid; display: grid; -ms-grid-rows: -webkit-max-content -webkit-max-content; -ms-grid-rows: max-content max-content; -ms-grid-columns: 25% 1fr; grid-template: "head-comm head-comm" -webkit-max-content
 "head-logo head-nav" -webkit-max-content /
 25% 1fr; grid-template: "head-comm head-comm" max-content
 "head-logo head-nav" max-content /
 25% 1fr; }

.head-logo { -ms-grid-row: 2; -ms-grid-column: 1; grid-area: head-logo; }

.nav { -ms-grid-row: 2; -ms-grid-column: 2; grid-area: head-nav; }

.head-comm { -ms-grid-row: 1; -ms-grid-column: 1; -ms-grid-column-span: 2; grid-area: head-comm; }

.header-inner { width: 96%; max-width: 1320px; margin: 0 auto; padding-bottom: 20px; }

.head-logo { padding-top: 10px; }

.logo-link { position: relative; display: inline-block; }

.logo-link > img { width: 100%; max-width: 160px; }

/*
nav
=================================*/
.sp-nav-btn { display: none; }

.gnav-list { display: -webkit-box; display: -ms-flexbox; display: flex; padding: 35px 0 0 0; }

.gnav-item { width: 16.6666%; position: relative; }

.gnav-a { position: absolute; left: 50%; -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transform: translateX(-50%); text-align: center; padding: 0 5px; display: block; color: #000; text-decoration: none; line-height: 1.3; }

.gnav-a .en, .gnav-a .ja { display: block; white-space: nowrap; }

.gnav-a .en { font-size: 1.5em; letter-spacing: 0; font-weight: 300; padding-bottom: 10px; }

.gnav-a .ja { font-size: .8em; font-weight: 300; }

.gnav-a:hover::before, .gnav-a:active::before, .gnav-a:focus::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

/*
contact
=================================*/
.contact-umekomi { padding: 170px 30px 50px; background-image: url("../img/common/bg01.jpg"); background-size: cover; background-position: center center; position: relative; overflow: hidden; }

.balloon-contact { background-image: url("../img/common/balloon-w.png"); background-repeat: no-repeat; background-size: contain; padding: 45px; font-size: 1.5em; position: absolute; top: -30px; left: 20%; }

/*
footer
=================================*/
.footer { border-top: 1px solid #000; padding-top: 10px; }

.foot-link-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.foot-link-item { padding-left: 10px; }

.foot-link-item::before { content: "\f101"; font-family: fontAwesome; }

/*
copyright
=================================*/
.copy { text-align: right; }

.page-nav { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.page-nav-item { padding: 0 10px; }

.in-link { color: #000; text-decoration: none; font-size: 1.3em; }

.in-link i { position: relative; top: 0; -webkit-transition: top .3s; transition: top .3s; }

.in-link:hover i { top: 3px; }

.home-body .home-nav::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.service-body .service-nav::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.package-body .package-nav::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.contact-body .contact-nav::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

.access-body .access-nav::before { content: ""; width: 30px; height: 30px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }

@media only screen and (max-width: 670px) { .home-body .home-nav::before { background: none; width: 0; height: 0; }
  .service-body .service-nav::before { background: none; width: 0; height: 0; }
  .package-body .package-nav::before { background: none; width: 0; height: 0; }
  .contact-body .contact-nav::before { background: none; width: 0; height: 0; }
  .access-body .access-nav::before { background: none; width: 0; height: 0; } }

@media only screen and (max-width: 896px) { /*
header
=================================*/
  .header-inner { -ms-grid-rows: -webkit-max-content -webkit-max-content; -ms-grid-rows: max-content max-content; -ms-grid-columns: 130px 1fr; grid-template: "head-comm head-comm" -webkit-max-content
 "head-logo head-nav" -webkit-max-content /
 130px 1fr; grid-template: "head-comm head-comm" max-content
 "head-logo head-nav" max-content /
 130px 1fr; }
  .header-inner { padding-bottom: 10px; }
  .head-logo { padding-top: 0; }
  /*
nav
=================================*/
  .gnav-a .en { font-size: 1.2em; padding-bottom: 5px; }
  .gnav-a .ja { font-size: .7em; }
  .gnav-a:hover::before { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }
  .gnav-a.now::before { content: ""; width: 20px; height: 20px; background-image: url("/img/common/tri-t-sub.png"); background-size: contain; position: absolute; top: 0; left: 0; }
  .head-logo { -ms-grid-row: 2; -ms-grid-column: 1; }
  .nav { -ms-grid-row: 2; -ms-grid-column: 2; }
  .head-comm { -ms-grid-row: 1; -ms-grid-column: 1; -ms-grid-column-span: 2; } }

@media only screen and (max-width: 670px) { /*
header
=================================*/
  .header-inner { display: block; }
  .head-comm { display: none; }
  .sp-nav-btn { display: block; }
  .logo-link > img { width: 100%; max-width: 95px; }
  .header-inner { padding-bottom: 0; position: relative; }
  .head-logo { padding: 5px 0; }
  /*
nav
=================================*/
  .nav { position: fixed; display: block; visibility: hidden; top: 0; left: 0; overflow: auto; overflow-x: hidden; width: 100%; height: 100%; min-height: 100vh; z-index: 9; opacity: 0; background: rgba(255, 255, 255, 0.9); -webkit-transition: opacity .6s ease,
 visibility .6s ease; transition: opacity .6s ease,
 visibility .6s ease; }
  .nav.open { opacity: 1; visibility: visible; }
  .sp-nav-btn { position: fixed; z-index: 10; right: 30px; top: 35px; }
  .gnav-list { display: block; padding: 65px 0 0 0; }
  .menu-trigger { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); top: 55%; width: 35px; height: 32px; text-decoration: none; cursor: pointer; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .menu-trigger span { width: 100%; height: 1px; left: 0; display: block; background: #333; position: absolute; -webkit-transition: top .5s ease, -webkit-transform .6s ease-in-out; transition: top .5s ease, -webkit-transform .6s ease-in-out; transition: transform .6s ease-in-out, top .5s ease; transition: transform .6s ease-in-out, top .5s ease, -webkit-transform .6s ease-in-out; }
  .menu-trigger span:nth-child(1) { top: 0; }
  .menu-trigger span:nth-child(2) { top: 14px; }
  .menu-trigger span:nth-child(3) { top: 28px; }
  .menu-trigger.active span:nth-child(1) { top: 15px; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
  .menu-trigger.active span:nth-child(2) { top: 15px; width: 0; left: 50%; }
  .menu-trigger.active span:nth-child(3) { top: 15px; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
  .gnav-item { width: auto; text-align: center; padding-bottom: 20px; opacity: 0; -webkit-transform: translateX(100px); -ms-transform: translateX(100px); transform: translateX(100px); -webkit-transition: opacity .2s ease, -webkit-transform .6s ease; transition: opacity .2s ease, -webkit-transform .6s ease; transition: transform .6s ease, opacity .2s ease; transition: transform .6s ease, opacity .2s ease, -webkit-transform .6s ease; }
  .open .gnav-item { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); -webkit-transition: opacity .9s ease, -webkit-transform 1s ease; transition: opacity .9s ease, -webkit-transform 1s ease; transition: transform 1s ease, opacity .9s ease; transition: transform 1s ease, opacity .9s ease, -webkit-transform 1s ease; }
  .open .gnav-item:nth-of-type(2) { -webkit-transition-delay: .15s; transition-delay: .15s; }
  .open .gnav-item:nth-of-type(3) { -webkit-transition-delay: .3s; transition-delay: .3s; }
  .open .gnav-item:nth-of-type(4) { -webkit-transition-delay: .45s; transition-delay: .45s; }
  .open .gnav-item:nth-of-type(5) { -webkit-transition-delay: .6s; transition-delay: .6s; }
  .open .gnav-item:nth-of-type(6) { -webkit-transition-delay: .75s; transition-delay: .75s; }
  .open .gnav-item:nth-of-type(7) { -webkit-transition-delay: .9s; transition-delay: .9s; }
  .gnav-a { left: auto; -webkit-transform: none; -ms-transform: none; transform: none; position: relative; padding: 0; display: inline; color: #000; text-decoration: none; line-height: 1.3; }
  .gnav-a .en, .gnav-a .ja { white-space: nowrap; display: inline; }
  .gnav-a .en { font-size: 1.8em; letter-spacing: 0; font-weight: 300; padding-bottom: 0; }
  .gnav-a .ja { font-size: .8em; font-weight: 300; }
  .gnav-a .ja::before { content: "\A"; white-space: pre; }
  .gnav-a:hover::before, .gnav-a:active::before, .gnav-a:focus::before { content: ""; width: 0; height: 0; background-image: none; top: 0; left: 0; }
  .gnav-a.now::before { content: ""; width: 0; height: 0; background-image: none; top: 0; left: 0; } }

.mb { margin-bottom: 60px; }

.mb30 { margin-bottom: 30px; }

.mb20 { margin-bottom: 20px; }

.mb10 { margin-bottom: 10px; }

.mb5 { margin-bottom: 5px; }

.mb0 { margin-bottom: 0 !important; }

.padding20 { padding: 20px; }

.padding10 { padding: 10px; }

.pb { padding-bottom: 60px; }

.pb30 { padding-bottom: 30px; }

.pb20 { padding-bottom: 20px; }

.pb10 { padding-bottom: 10px; }

.pb0 { padding-bottom: 0 !important; }

@media only screen and (max-width: 896px) { /*
  margin・padding
========================================== */
  .mb { margin-bottom: 40px; }
  .mb30 { margin-bottom: 20px; }
  .mb20 { margin-bottom: 10px; }
  .pb { padding-bottom: 40px; }
  .pb30 { padding-bottom: 20px; }
  .pb20 { padding-bottom: 10px; } }

@media only screen and (max-width: 480px) { /*
  margin・padding
========================================== */
  .mb { margin-bottom: 20px; }
  .mb20 { margin-bottom: 5px; }
  .padding20 { padding: 10px; }
  .pb { padding-bottom: 20px; }
  .pb20 { padding-bottom: 5px; } }

/* ======================================= */
.privacy-inner { width: 96%; max-width: 1100px; margin: 0 auto; }
