.line-box::before { background: #005396; }
.line-box .block-inner { display: grid; gap: 3rem; grid-template-columns: repeat(2, 1fr); }
.line-box.r .maincopy { text-align: right; }
@media screen and (max-width: 600px) { .line-box .block-inner { gap: 0; grid-template-columns: 1fr; }
  .line-box .block { width: 100%; }
  .line-box .block:nth-of-type(even) { margin-right: auto; }
  .line-box .block:nth-of-type(even) .maincopy, .line-box .block:nth-of-type(even) .subcopy { text-align: left; }
  .line-box.r .subcopy { text-align: right; }
  .line-box.r .block:nth-of-type(even) .subcopy { text-align: right; } }

.img01 { width: 90%; max-width: 800px; margin: 3rem auto 0 auto; }
.img01 .txt { display: inline-block; margin-top: 1rem; width: 90%; max-width: 400px; background: #fff; }
@media screen and (max-width: 600px) { .img01 { margin: 3rem auto 0 0; }
  .img01 .txt { margin-left: calc(5% + 1rem); } }

.jiban { background: url("../images/position/bg-position.jpg") no-repeat 0% 0%; background-size: cover; padding: 5rem 0; }
.jiban::before { display: none; }
.jiban .maincopy, .jiban .lead, .jiban .note { color: #fff; }
.jiban .maincopy { text-align: center; }
.jiban .lead { max-width: 800px; margin-right: auto; margin-left: auto; }
.jiban .img02 { width: 100%; max-width: 900px; margin: 3rem auto 0 auto; }
.jiban .img02 .note { text-align: right; margin-right: 5%; }

.rosenzu { background: #fff; width: 86%; max-width: 1056px; margin: 0 auto; padding: 0; margin-top: 3rem; width: 100%; }
.rosenzu .img + .note { margin-top: 1rem; text-align: right; }
.rosenzu .txt { width: 90%; max-width: 600px; }
.rosenzu .txt img { display: block; margin-top: 1rem; width: 100%; height: auto; }
@media screen and (max-width: 600px) { .rosenzu .img { overflow-x: scroll; }
  .rosenzu .img img { height: 300px; width: auto; }
  .rosenzu .img + .note { margin-right: 5%; }
  .rosenzu .txt { margin: 1rem auto 0 auto; } }

.toshin { background: url("../images/position/bg-position.jpg") no-repeat 0% 0%; background-size: cover; padding: 5rem 0 0 0; }
.toshin::before { display: none; }
.toshin .maincopy, .toshin .lead, .toshin .note { color: #fff; }
.toshin .maincopy { text-align: center; }
.toshin .lead { max-width: 800px; margin-right: auto; margin-left: auto; }
.toshin .img03 { width: 100%; max-width: 700px; margin: 3rem auto 0 auto; }
.toshin .img03 .note { text-align: right; margin-right: 5%; }

.img04 { width: 90%; max-width: 900px; margin: 3rem auto 0 auto; }
.img04 .note { text-align: right; }
@media screen and (max-width: 600px) { .img04 { margin: 3rem auto 0 0; } }

.shopping .graph-list { margin: 3rem auto 0 auto; display: grid; gap: 2rem 4rem; grid-template-columns: repeat(3, 1fr); /*grid-template-areas:
	"g01 g02 g03";*/ }
.shopping .graph-list .g-ttl { text-align: right; font-family: "Helvetica Neue", "Helvetica","Yu Gothic",  'Noto Sans JP', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif; font-weight: normal; font-size: 1.4rem; line-height: 1.2; }
.shopping .g04 { max-width: 400px; margin: 3rem auto 0 auto; }
@media screen and (max-width: 600px) { .shopping .graph-list { grid-template-columns: 1fr; max-width: 360px; margin: 0 auto; } }
@media screen and (max-width: 480px) { .shopping { /*.graph-list{
	grid-template-columns: 1fr;
	grid-template-areas:
		"g01"
		"g02"
		"g03";
	.g02,.g03{
		width: 80%;
		margin: 0 auto;
	}
}*/ }
  .shopping .graph-list { gap: 2rem 1rem; } }

.future .f-box { margin: 3rem auto 0 auto; display: grid; gap: 3rem; grid-template-columns: 1fr 65%; }
.future .f-box .img05 { order: -1; }
.future .link-box { margin: 5rem auto 0 auto; width: 90%; max-width: 400px; }
.future .link-box a { display: block; background: #2F9473; color: #fff; text-align: center; font-size: 1.6rem; line-height: 1.2; padding: 1.5rem 2.5rem; transition: .3s; }
.future .link-box a:hover { filter: brightness(120%); }
.future .link-box a .txt-s { font-size: 90%; display: -webkit-box; display: flex; flex-wrap: wrap; gap: .5rem; -webkit-box-align: center; align-items: center; padding-bottom: 1rem; }
.future .link-box a .txt-s div, .future .link-box a .txt-s li { min-height: 0%; }
.future .link-box a .txt-s::before, .future .link-box a .txt-s::after { content: ""; background: #fff; height: 1px; flex: 1; }
@media screen and (max-width: 600px) { .future .f-box { grid-template-columns: 1fr; }
  .future .f-box .img05 { order: 2; max-width: 400px; margin: 0 auto; } }
