@charset "UTF-8";
/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
/* These browsers currently include
** Android 4.3-4.4+,
** Chrome 39-40+,
** Firefox 34-35+,
** Internet Explorer 10-11+,
** iOS 7-8+,
** Safari 7-8+,
** Windows Phone 8.1+.
*/
/*
 * Normalization
 */
:root {
		-ms-overflow-style: -ms-autohiding-scrollbar;
		-webkit-text-size-adjust: 100%;
		   -moz-text-size-adjust: 100%;
		    -ms-text-size-adjust: 100%;
		        text-size-adjust: 100%;
}

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

details {
		display: block;
}

input[type=number] {
		width: auto;
}
input[type=search] {
		-webkit-appearance: textfield;
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
		-webkit-appearance: none;
}

main {
		display: block;
}

summary {
		display: block;
}

pre {
		overflow: auto;
}

progress {
		display: inline-block;
}

small {
		font-size: 75%;
}

template {
		display: none;
}

textarea {
		overflow: auto;
}

[hidden] {
		display: none;
}

[unselectable] {
		-webkit-user-select: none;
		   -moz-user-select: none;
		    -ms-user-select: none;
		        user-select: none;
}

/*
 * Universal inheritance
 */
*,
::before,
::after {
		-webkit-box-sizing: inherit;
		        box-sizing: inherit;
}

* {
		font-size: inherit;
		line-height: inherit;
}

::before,
::after {
		text-decoration: inherit;
		vertical-align: inherit;
}

/*
 * Opinionated defaults
 */
*,
::before,
::after {
		border-style: solid;
		border-width: 0;
}

* {
		margin: 0;
		padding: 0;
}

:root {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		cursor: default;
		font: 62.5%/1em sans-serif;
		text-rendering: optimizeLegibility;
}
@media screen and (min-width: 769px) {
		:root {
				font: 0.78125vw/1em sans-serif;
		}
}
@media screen and (min-width: 1600px) {
		:root {
				font: 78.125%/1em sans-serif;
		}
}

html {
		background-color: #FFFFFF;
}

a {
		text-decoration: none;
}

audio,
canvas,
iframe,
img,
svg,
video {
		vertical-align: middle;
}

button,
input:not([type=radio]),
select,
textarea {
		background-color: transparent;
}

button,
input:not([type=radio]),
select,
textarea {
		color: inherit;
		font-family: inherit;
		font-style: inherit;
		font-weight: inherit;
}

button,
[type=button],
[type=date],
[type=datetime],
[type=datetime-local],
[type=email],
[type=month],
[type=number],
[type=password],
[type=reset],
[type=search],
[type=submit],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
select,
textarea {
		min-height: 1em;
}

code,
kbd,
pre,
samp {
		font-family: monospace, monospace;
}

nav ol,
nav ul {
		list-style: none;
}

select {
		-moz-appearance: none;
		-webkit-appearance: none;
}
select::-ms-expand {
		display: none;
}
select::-ms-value {
		color: currentColor;
}

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

textarea {
		resize: vertical;
}

::-moz-selection {
		background-color: #e9ff00;
		text-shadow: none;
}

::selection {
		background-color: #e9ff00;
		text-shadow: none;
}

@media screen {
		[hidden~=screen] {
				display: inherit;
		}

		[hidden~=screen]:not(:active):not(:focus):not(:target) {
				clip: rect(0 0 0 0) !important;
				position: absolute !important;
		}
}
* {
		margin: 0;
		padding: 0;
		outline: 0;
}

/* general params
--------------------*/
h1, h2, h3, h4, h5, h6,
div, p, pre, ul, ol, dl, dt, dd,
address, form, blockquote {
		margin: 0;
		padding: 0;
		/* margin&padding reset */
		font-style: normal;
}

h1, h2, h3, h4, h5, h6, dt {
		font-weight: 400;
}

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

table {
		border-collapse: collapse;
		font-size: small;
		margin: 0;
		empty-cells: show;
}

hr, .areaAnchor, .anchor {
		display: none;
}

img {
		vertical-align: bottom;
		border: none;
		/* img do not want a border */
}

li {
		list-style: none;
}

blockquote, q {
		quotes: none;
}

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

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

small, sub, sup {
		font-size: 0.83em;
}

sub {
		display: inline-block;
		vertical-align: middle;
		-webkit-transform: translateY(15%);
		        transform: translateY(15%);
}

sup {
		display: inline-block;
		vertical-align: middle;
		-webkit-transform: translateY(-15%);
		        transform: translateY(-15%);
}

mark {
		font-weight: bold;
		font-style: italic;
		color: #000;
		background-color: #ff9;
}

del {
		text-decoration: line-through;
}

abbr[title], dfn[title] {
		cursor: help;
		border-bottom: 1px dotted;
}

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

/* acronyms and abbreviations styles
-------------------------------------*/
acronym, abbr {
		cursor: help;
}

/* word break
-------------------------------------*/
p {
		word-break: normal;
}

/* image position
-------------------------------------*/
img {
		vertical-align: bottom;
}

/*
===== 2: form setting ===========================
*/
option {
		padding-right: 10px;
}

input, select {
		vertical-align: middle;
}

/*--------------------------------------------------------------- */
/* 全体で使用する common style を記述
/*--------------------------------------------------------------- */
/* 游ゴシック */
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 100;
}
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 200;
}
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 300;
}
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Medium");
		font-weight: 400;
}
@font-face {
		font-family: "Yu Gothic";
		src: local("Yu Gothic Bold");
		font-weight: bold;
}
.en {
		font-family: "EB Garamond", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
		font-weight: 400;
}

.min {
		font-family: "Noto Serif JP", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
		font-weight: 400;
}

.def {
		font-family: "Noto Sans JP", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
		font-weight: 400;
}

/*-------------------------------------------> html / body style */
html {
		height: 100%;
		background: #faf5ed;
}

body {
		background: #faf5ed;
		width: 100%;
		min-width: 100%;
		height: 100%;
		color: #261e23;
		font-family: "Noto Sans JP", "Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", sans-serif;
		font-weight: 400;
		overflow-y: scroll;
		overflow-x: hidden;
		position: relative;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 768px) {
		body .pc {
				display: block;
		}
		body .sp {
				display: none;
		}
		body img.pc, body .svg.pc {
				display: inline;
		}
		body > * {
				-webkit-font-feature-settings: "palt";
				        font-feature-settings: "palt";
		}
}
@media screen and (max-width: 767px) {
		body {
				height: 100%;
		}
		body .pc {
				display: none;
		}
		body .sp {
				display: block;
		}
		body img.pc {
				display: none;
		}
		body img.sp, body .svg.sp {
				display: inline;
		}
		body img {
				max-width: 100%;
				height: auto;
		}
		body > * {
				-webkit-font-feature-settings: "palt";
				        font-feature-settings: "palt";
		}
}

/*-------------------------------------------> link style */
a {
		outline: none;
		color: inherit;
		cursor: pointer;
}
a:link {
		text-decoration: none;
}
a:visited {
		text-decoration: none;
}
a:hover {
		text-decoration: none;
}
a:active {
		text-decoration: none;
}

@media screen and (min-width: 768px) {
		.OverOpacity,
.OverOpacityGroup a {
				opacity: 1;
				-webkit-transition: opacity 0.15s ease-out;
				transition: opacity 0.15s ease-out;
		}
		.OverOpacity:hover,
.OverOpacityGroup a:hover {
				opacity: 0.25;
		}
}
/*-------------------------------------------> Footer fix */
.container {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		min-height: 100%;
}
.container .body {
		-webkit-box-flex: 1;
		    -ms-flex: 1 0 auto;
		        flex: 1 0 auto;
}
.container #Footer {
		-webkit-box-flex: 0;
		    -ms-flex-positive: 0;
		        flex-grow: 0;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
		margin-top: 0;
}

.ie11 body,
.ie11 .container {
		min-height: initial;
}
.ie11 body #Footer,
.ie11 .container #Footer {
		margin-top: 0;
}

/*-------------------------------------------> Common style */
.inner {
		max-width: 1280px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 2.34375%;
		padding-right: 2.34375%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}
@media screen and (min-width: 1600px) {
		.inner {
				padding-left: 30px;
				padding-right: 30px;
		}
}
@media screen and (max-width: 767px) {
		.inner {
				max-width: initial;
				width: 100%;
				margin-left: 0;
				margin-right: 0;
				padding-left: 6.6666666667vw;
				padding-right: 6.6666666667vw;
		}
}

img {
		max-width: 100%;
		height: auto;
		vertical-align: top;
}

br.pc {
		display: block;
}
br.sp {
		display: none;
}
@media screen and (max-width: 767px) {
		br.pc {
				display: none;
		}
		br.sp {
				display: block;
		}
}

.taLeft {
		text-align: left !important;
}

.taCenter {
		text-align: center !important;
}

.taRight {
		text-align: right !important;
}

@media screen and (max-width: 767px) {
		#Main {
				padding-top: 20vw;
		}
}

/*-------------------------------------------> Header */
#Header {
		position: sticky;
		z-index: 100;
		top: 0;
		left: 0;
		width: 100%;
		height: 90px;
		background: rgba(255, 255, 255, 0.95);
}
@media screen and (max-width: 767px) {
		#Header {
				position: fixed;
				height: 100%;
				background: transparent;
				pointer-events: none;
				/*
				display: flex;
				justify-content: center;
				align-items: center;
				*/
		}
		#Header::after {
				position: absolute;
				z-index: 1;
				top: 0;
				left: 0;
				content: "";
				display: block;
				width: 100%;
				height: 100%;
				background: rgba(255, 255, 255, 0.95);
				-webkit-transition: all 0.3s ease-out;
				transition: all 0.3s ease-out;
				opacity: 0;
				pointer-events: none;
		}
}

@media screen and (min-width: 768px) {
		#Navi {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				width: 100%;
				height: 90px;
		}
		#Navi .logo {
				padding: 0 50px 0 95px;
				-webkit-box-flex: 0;
				    -ms-flex-positive: 0;
				        flex-grow: 0;
				-ms-flex-negative: 0;
				    flex-shrink: 0;
		}
		#Navi .logo img, #Navi .logo .svg {
				width: 166px;
		}
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
		#Navi .logo {
				padding: 0 2.6041666667vw 0 4.9479166667vw;
		}
		#Navi .logo img, #Navi .logo .svg {
				width: 12.96875vw;
		}
}
@media screen and (min-width: 768px) {
		#Navi .gnavi {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				margin: 0 0 0 auto;
				font-size: 18px;
				line-height: 1;
				letter-spacing: 0.1em;
		}
		#Navi .gnavi li {
				margin: 0 1.5625vw;
				white-space: nowrap;
		}
}
@media screen and (min-width: 768px) and (min-width: 768px) {
		#Navi .gnavi li a {
				display: block;
				-webkit-transition: all 0.15s ease-out;
				transition: all 0.15s ease-out;
		}
		#Navi .gnavi li a:hover {
				padding-top: 0.5em;
		}
}
@media screen and (min-width: 768px) {
		#Navi .gnavi li.mag, #Navi .gnavi li.online {
				margin: 0;
				-webkit-box-flex: 0;
				    -ms-flex-positive: 0;
				        flex-grow: 0;
				-ms-flex-negative: 0;
				    flex-shrink: 0;
		}
		#Navi .gnavi li.mag a, #Navi .gnavi li.online a {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				padding: 0 50px;
				width: 180px;
				height: 90px;
		}
		#Navi .gnavi li.mag a span, #Navi .gnavi li.online a span {
				display: block;
				width: 100%;
		}
}
@media screen and (min-width: 768px) and (max-width: 1280px) {
		#Navi .gnavi li.mag a, #Navi .gnavi li.online a {
				width: 9.375vw;
				padding: 0 2.6041666667vw;
		}
}
@media screen and (min-width: 768px) {
		#Navi .gnavi li.online a {
				background: #003459;
		}
}
@media screen and (min-width: 768px) {
		#Navi .sns {
				display: none;
		}
}
@media screen and (max-width: 767px) {
		#Navi {
				z-index: 50;
				width: 100%;
				height: 100%;
				padding-top: 26.6666666667vw;
				padding-bottom: 6.6666666667vw;
				/*
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				padding-top: vw(200);
				padding-bottom: vw(200);
				*/
				overflow-y: hidden;
				pointer-events: none;
		}
		#Navi .logo {
				pointer-events: auto;
				width: 100%;
				height: 20vw;
				background: #FFF;
				position: fixed;
				z-index: 100;
				top: 0;
				left: 0;
				padding: 6vw 0 0 6.6666666667vw;
		}
		#Navi .logo img, #Navi .logo .svg {
				width: 30.4vw;
		}
		#Navi .gnavi {
				position: relative;
				z-index: 10;
				opacity: 0;
				pointer-events: none;
				-webkit-transition: all 0.3s ease-out;
				transition: all 0.3s ease-out;
				width: 40vw;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				margin: 0 auto;
				padding-bottom: 10vw;
				border-bottom: solid 1px #261e23;
		}
		#Navi .gnavi li {
				font-size: 23px;
				/* legacy */
				font-size: 6.1333333333vw;
				line-height: 2;
				letter-spacing: 0em;
				font-weight: 400;
				text-align: center;
				width: 100%;
		}
		#Navi .gnavi li a {
				display: block;
		}
		#Navi .gnavi li.mag, #Navi .gnavi li.online {
				width: 50%;
				padding-top: 12vw;
				text-align: center;
		}
		#Navi .gnavi li.mag {
				text-align: left;
		}
		#Navi .gnavi li.mag img {
				width: 14.4vw;
		}
		#Navi .gnavi li.online {
				text-align: right;
		}
		#Navi .gnavi li.online .svg {
				width: 169;
		}
		#Navi .gnavi li.online .svg .gm-online {
				fill: #003459;
		}
		#Navi .sns {
				position: relative;
				z-index: 10;
				opacity: 0;
				pointer-events: none;
				-webkit-transition: all 0.3s ease-out;
				transition: all 0.3s ease-out;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				margin: 9.3333333333vw auto 0;
				width: 34.1333333333vw;
		}
		#Navi .sns li {
				-webkit-box-flex: 0;
				    -ms-flex: 0 0 6.9333333333vw;
				        flex: 0 0 6.9333333333vw;
		}
		#Navi .sns li .svg .fill-sns {
				fill: #261e23;
		}
}

#MenuBtn {
		display: none;
}
@media screen and (max-width: 767px) {
		#MenuBtn {
				pointer-events: auto;
				position: absolute;
				z-index: 200;
				top: 0;
				right: 0;
				display: block;
				width: 20vw;
				height: 20vw;
		}
		#MenuBtn button {
				width: 100%;
				height: 100%;
				padding: 6vw;
		}
		#MenuBtn .icon {
				position: relative;
				width: 8vw;
				height: 8vw;
		}
		#MenuBtn .icon span {
				display: block;
				width: 100%;
				height: 0.2666666667vw;
				position: absolute;
				top: calc(50% - 0.1333333333vw);
				left: calc(50% - 4vw);
				background: #003459;
				-webkit-transition: all 0.3s ease-out;
				transition: all 0.3s ease-out;
		}
		#MenuBtn .icon span:nth-of-type(1) {
				-webkit-transform: translateY(2.2666666667vw);
				        transform: translateY(2.2666666667vw);
		}
		#MenuBtn .icon span:nth-of-type(3) {
				-webkit-transform: translateY(-2.2666666667vw);
				        transform: translateY(-2.2666666667vw);
		}
}

.MOpen #Header::after {
		opacity: 1;
		pointer-events: auto;
}
.MOpen #Navi {
		margin: auto;
		top: 0;
		bottom: 0;
		pointer-events: auto;
		overflow-y: auto;
}
.MOpen #Navi .gnavi,
.MOpen #Navi .sns {
		opacity: 1;
		pointer-events: auto;
}
.MOpen #MenuBtn .icon span:nth-of-type(2) {
		opacity: 0;
}
.MOpen #MenuBtn .icon span:nth-of-type(1) {
		-webkit-transform: translateY(0) rotate(210deg);
		        transform: translateY(0) rotate(210deg);
}
.MOpen #MenuBtn .icon span:nth-of-type(3) {
		-webkit-transform: translateY(0) rotate(-210deg);
		        transform: translateY(0) rotate(-210deg);
}

/*-------------------------------------------> Footer */
.grecaptcha-badge {
		visibility: hidden;
}

#Footer {
		background: #003459;
		color: #FFF;
}
#Footer .inner {
		max-width: 1920px;
		padding-top: 4.9479166667%;
		padding-right: 13.5416666667%;
		padding-left: 13.5416666667%;
}
@media screen and (min-width: 1600px) {
		#Footer .inner {
				padding-left: 260px;
				padding-right: 260px;
		}
}
@media screen and (max-width: 1280px) {
		#Footer .inner {
				padding-right: 4.1666666667%;
				padding-left: 4.1666666667%;
		}
}
@media screen and (max-width: 767px) {
		#Footer .inner {
				max-width: initial;
				padding-top: 13.3333333333vw;
				padding-left: 9.3333333333vw;
				padding-right: 9.3333333333vw;
		}
}
#Footer .wrap {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
@media screen and (max-width: 1280px) {
		#Footer .wrap {
				display: block;
				text-align: center;
		}
}
@media screen and (max-width: 767px) {
		#Footer .wrap {
				display: block;
				text-align: center;
		}
}
#Footer .wrap .logoWrap {
		-webkit-box-flex: 0;
		    -ms-flex: 0 1 16.4285714286%;
		        flex: 0 1 16.4285714286%;
		margin-right: auto;
}
#Footer .wrap .logoWrap .sns {
		margin-top: 55px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}
#Footer .wrap .logoWrap .sns li {
		margin: 0 20px;
}
#Footer .wrap .logoWrap .sns li .svg {
		width: 27px;
}
@media screen and (max-width: 1280px) {
		#Footer .wrap .logoWrap {
				margin-right: 0;
		}
		#Footer .wrap .logoWrap .logo img {
				width: 230px;
		}
		#Footer .wrap .logoWrap .sns {
				margin-top: 55px;
		}
		#Footer .wrap .logoWrap .sns li {
				margin: 0 20px;
		}
		#Footer .wrap .logoWrap .sns li .svg {
				width: 27px;
		}
}
@media screen and (max-width: 767px) {
		#Footer .wrap .logoWrap {
				margin-right: 0;
		}
		#Footer .wrap .logoWrap .logo img {
				width: 40.5333333333vw;
		}
		#Footer .wrap .logoWrap .sns {
				margin-top: 11.3333333333vw;
		}
		#Footer .wrap .logoWrap .sns li {
				margin: 0 2.6666666667vw;
		}
		#Footer .wrap .logoWrap .sns li .svg {
				width: 5.8666666667vw;
		}
}
#Footer .wrap .linkWrap {
		-webkit-box-flex: 0;
		    -ms-flex: 0 1 67.8571428571%;
		        flex: 0 1 67.8571428571%;
		margin-left: 30px;
}
#Footer .wrap .linkWrap .page, #Footer .wrap .linkWrap .outside {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		font-size: 26px;
		line-height: 1;
		letter-spacing: 0em;
}
@media screen and (max-width: 1280px) {
		#Footer .wrap .linkWrap .page, #Footer .wrap .linkWrap .outside {
				font-size: 20px;
				line-height: 1;
				letter-spacing: 0em;
		}
}
#Footer .wrap .linkWrap .page li, #Footer .wrap .linkWrap .outside li {
		margin: 0 1em;
}
#Footer .wrap .linkWrap .page li a, #Footer .wrap .linkWrap .outside li a {
		white-space: nowrap;
}
#Footer .wrap .linkWrap .outside {
		margin-top: 2em;
}
#Footer .wrap .linkWrap .outside .ec img {
		width: 245px;
}
#Footer .wrap .linkWrap .outside .mag img {
		width: 262px;
}
#Footer .wrap .linkWrap .banner {
		position: relative;
		padding-top: 9.4736842105%;
		margin-top: 8.4210526316%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: 100%;
}
#Footer .wrap .linkWrap .banner::before {
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		background: #FFF;
		position: absolute;
		top: 0;
		left: 0;
}
#Footer .wrap .linkWrap .banner .bnr_mc {
		-ms-flex-preferred-size: 17.2631578947%;
		    flex-basis: 17.2631578947%;
}
#Footer .wrap .linkWrap .banner .bnr_shobre {
		-ms-flex-preferred-size: 10.1052631579%;
		    flex-basis: 10.1052631579%;
}
#Footer .wrap .linkWrap .banner .bnr_chiaki {
		-ms-flex-preferred-size: 18.3157894737%;
		    flex-basis: 18.3157894737%;
}
#Footer .wrap .linkWrap .banner .bnr_dogshien {
		-ms-flex-preferred-size: 23.7894736842%;
		    flex-basis: 23.7894736842%;
}
#Footer .wrap .linkWrap .banner .bnr_dogsupport {
		-ms-flex-preferred-size: 13.2631578947%;
		    flex-basis: 13.2631578947%;
}
@media screen and (max-width: 1280px) {
		#Footer .wrap .linkWrap {
				margin-top: 60px;
		}
}
@media screen and (max-width: 767px) {
		#Footer .wrap .linkWrap {
				margin-left: 0;
				margin-top: 8vw;
		}
		#Footer .wrap .linkWrap .page, #Footer .wrap .linkWrap .outside {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
				font-size: 16px;
				/* legacy */
				font-size: 4.2666666667vw;
				line-height: 1;
				letter-spacing: 0em;
		}
		#Footer .wrap .linkWrap .page li, #Footer .wrap .linkWrap .outside li {
				-webkit-box-flex: 1;
				    -ms-flex: 1 1 calc(100% / 3);
				        flex: 1 1 calc(100% / 3);
				margin: 0;
		}
		#Footer .wrap .linkWrap .page li a, #Footer .wrap .linkWrap .outside li a {
				display: block;
				padding: 5.0666666667vw 0;
		}
		#Footer .wrap .linkWrap .outside {
				margin-top: 0;
		}
		#Footer .wrap .linkWrap .outside li {
				-ms-flex-preferred-size: 50%;
				    flex-basis: 50%;
		}
		#Footer .wrap .linkWrap .outside li.ec {
				text-align: left;
		}
		#Footer .wrap .linkWrap .outside li.ec img {
				width: 34.6666666667vw;
		}
		#Footer .wrap .linkWrap .outside li.mag {
				text-align: right;
		}
		#Footer .wrap .linkWrap .outside li.mag img {
				width: 34.9333333333vw;
		}
		#Footer .wrap .linkWrap .banner {
				padding-top: 8vw;
				margin-top: 8vw;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-ms-flex-pack: distribute;
				    justify-content: space-around;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
		}
		#Footer .wrap .linkWrap .banner::before {
				height: 0.2666666667vw;
		}
		#Footer .wrap .linkWrap .banner li {
				margin-bottom: 6.6666666667vw;
		}
		#Footer .wrap .linkWrap .banner .bnr_mc {
				-ms-flex-preferred-size: 23.2vw;
				    flex-basis: 23.2vw;
		}
		#Footer .wrap .linkWrap .banner .bnr_shobre {
				-ms-flex-preferred-size: 16.2666666667vw;
				    flex-basis: 16.2666666667vw;
		}
		#Footer .wrap .linkWrap .banner .bnr_chiaki {
				-ms-flex-preferred-size: 25.0666666667vw;
				    flex-basis: 25.0666666667vw;
		}
		#Footer .wrap .linkWrap .banner .bnr_dogshien {
				-ms-flex-preferred-size: 31.7333333333vw;
				    flex-basis: 31.7333333333vw;
		}
		#Footer .wrap .linkWrap .banner .bnr_dogsupport {
				-ms-flex-preferred-size: 17.3333333333vw;
				    flex-basis: 17.3333333333vw;
		}
}
#Footer .under {
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		margin-top: 8.4210526316%;
		padding-bottom: 1.5625%;
		font-size: 16px;
		line-height: 1;
		letter-spacing: 0em;
}
@media screen and (max-width: 767px) {
		#Footer .under {
				padding-bottom: 4vw;
		}
}
#Footer .under .copyright {
		padding-right: 1em;
		border-right: solid 1px #FFF;
}
#Footer .under .other {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
#Footer .under .other li {
		margin: 0 1em;
}
@media screen and (max-width: 1280px) {
		#Footer .under {
				-webkit-box-orient: vertical;
				-webkit-box-direction: reverse;
				    -ms-flex-direction: column-reverse;
				        flex-direction: column-reverse;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				text-align: center;
		}
		#Footer .under .other {
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				margin-left: auto;
				margin-right: auto;
		}
		#Footer .under .copyright {
				margin-top: 1em;
		}
}
@media screen and (max-width: 767px) {
		#Footer .under {
				width: 100vw;
				margin-left: 0;
				text-align: center;
				-webkit-box-orient: vertical;
				-webkit-box-direction: reverse;
				    -ms-flex-direction: column-reverse;
				        flex-direction: column-reverse;
				margin-top: 0;
		}
		#Footer .under .copyright {
				font-size: 2.1333333333vw;
				padding-right: 0;
				border-right: none;
				margin-top: 2.6666666667vw;
		}
		#Footer .under .other {
				font-size: 2.9333333333vw;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				margin-top: 2.6666666667vw;
		}
		#Footer .under .other li {
				margin: 0 1em;
		}
}

/*-------------------------------------------> BlogCode */
.blogCode p, .blogCode ul, .blogCode ol, .blogCode table {
		margin-bottom: 2em;
}
.blogCode ul, .blogCode ol {
		margin-left: 1.5em;
}
.blogCode h1, .blogCode h2, .blogCode h3, .blogCode h4, .blogCode h5, .blogCode h6 {
		margin-top: 1.2em;
		margin-bottom: 0.5em;
		font-weight: 700;
}
.blogCode h1, .blogCode h2, .blogCode h3 {
		font-size: 100%;
}
.blogCode h4 {
		font-size: 140%;
}
.blogCode h5 {
		font-size: 130%;
}
.blogCode h6 {
		font-size: 120%;
}
.blogCode ul, .blogCode ol {
		list-style-position: outside;
}
.blogCode ul {
		list-style: disc;
}
.blogCode ul li {
		list-style: disc;
}
.blogCode ol {
		list-style: decimal;
}
.blogCode ol li {
		list-style: decimal;
}
.blogCode a {
		text-decoration: underline;
		padding: 0 0.5em;
}
.blogCode a:hover {
		background: #003459;
		color: #FFF;
}
.blogCode strong, .blogCode b {
		font-weight: 700;
}
.blogCode img {
		max-width: 100%;
		height: auto;
}
.blogCode table {
		border: solid 1px #261e23;
}
.blogCode table tr th, .blogCode table tr td {
		padding: 0.2em 1em;
		border: solid 1px #261e23;
}

/*-------------------------------------------> Loading */
#Loading {
		position: fixed;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		z-index: 9998;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #003459;
}
#Loading .Loading-wrap {
		display: none;
		width: 250px;
		height: 220px;
		text-indent: -9999px;
		background: url(../images/loading_logo.png) no-repeat left top;
		background-size: contain;
}
@media screen and (max-width: 767px) {
		#Loading .Loading-wrap {
				width: 40vw;
				background-position: center center;
		}
}

/*-------------------------------------------> plugin style */
/* Slick */
.slick-slider {
		position: relative;
		display: block;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
		-ms-touch-action: pan-y;
		touch-action: pan-y;
		-webkit-tap-highlight-color: transparent;
}

.slick-list {
		position: relative;
		overflow: hidden;
		display: block;
		margin: 0;
		padding: 0;
}
.slick-list:focus {
		outline: none;
}
.slick-list.dragging {
		cursor: pointer;
		cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
}

.slick-track {
		position: relative;
		left: 0;
		top: 0;
		display: block;
		margin-left: auto;
		margin-right: auto;
}
.slick-track:before, .slick-track:after {
		content: "";
		display: table;
}
.slick-track:after {
		clear: both;
}
.slick-loading .slick-track {
		visibility: hidden;
}

.slick-slide {
		float: left;
		min-height: 1px;
		display: none;
}
[dir=rtl] .slick-slide {
		float: right;
}
.slick-slide img {
		display: block;
}
.slick-slide.slick-loading img {
		display: none;
}
.slick-slide.dragging img {
		pointer-events: none;
}
.slick-initialized .slick-slide {
		display: block;
}
.slick-loading .slick-slide {
		visibility: hidden;
}
.slick-vertical .slick-slide {
		display: block;
		height: auto;
		border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
		display: none;
}

/* Arrows */
.slick-prev,
.slick-next {
		position: absolute;
		display: block;
		height: 48px;
		width: 48px;
		line-height: 0px;
		font-size: 0px;
		cursor: pointer;
		background: transparent;
		color: transparent;
		top: 50%;
		-webkit-transform: translate(0, -50%);
		        transform: translate(0, -50%);
		padding: 0;
		border: none;
		outline: none;
}
.slick-prev::before, .slick-prev::after,
.slick-next::before,
.slick-next::after {
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		display: block;
		width: 100%;
		height: 100%;
}
.slick-prev:hover,
.slick-next:hover {
		outline: none;
		background: transparent;
		color: transparent;
}
.slick-prev:hover::after,
.slick-next:hover::after {
		opacity: 1;
}
.slick-prev::before,
.slick-next::before {
		z-index: 1;
}
.slick-prev::after,
.slick-next::after {
		z-index: 10;
		opacity: 0;
		-webkit-transition: opacity 0.3s ease-out;
		transition: opacity 0.3s ease-out;
}

.slick-prev {
		left: 0;
		-webkit-transform: translate(-100%, -50%);
		        transform: translate(-100%, -50%);
}
[dir=rtl] .slick-prev {
		left: auto;
		right: 0;
		-webkit-transform: translate(100%, -50%);
		        transform: translate(100%, -50%);
}
.slick-prev::before {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:transparent;}.slide-arrow{fill:%23003459;}</style></defs><circle class="slide-arrow-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow" d="M25,50A25,25,0,1,1,50,25,25.02832,25.02832,0,0,1,25,50ZM25,1.0262A23.9738,23.9738,0,1,0,48.9738,25,24.00095,24.00095,0,0,0,25,1.0262Z"/><polygon class="slide-arrow" points="26.779 35.854 15.926 25 26.779 14.146 27.505 14.872 17.377 25 27.505 35.128 26.779 35.854"/></svg>');
}
[dir=rtl] .slick-prev::before {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:transparent;}.slide-arrow{fill:%23003459;}</style></defs><circle class="slide-arrow-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow" d="M25.00006,50A25,25,0,1,1,50,25,25.02834,25.02834,0,0,1,25.00006,50Zm0-48.9738A23.9738,23.9738,0,1,0,48.9738,25,24.001,24.001,0,0,0,25.00006,1.0262Z"/><polygon class="slide-arrow" points="23.221 35.854 22.495 35.128 32.623 25 22.495 14.872 23.221 14.146 34.075 25 23.221 35.854"/></svg>');
}
.slick-prev::after {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:%23003459;}.slide-circle{fill:%23003459;}.slide-arrow{fill:%23faf5ed;}</style></defs><circle class="slide-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow-circle" d="M25,50A25,25,0,1,1,50,25,25.02832,25.02832,0,0,1,25,50ZM25,1.0262A23.9738,23.9738,0,1,0,48.9738,25,24.00095,24.00095,0,0,0,25,1.0262Z"/><polygon class="slide-arrow" points="26.779 35.854 15.926 25 26.779 14.146 27.505 14.872 17.377 25 27.505 35.128 26.779 35.854"/></svg>');
}
[dir=rtl] .slick-prev::after {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:%23003459;}.slide-circle{fill:%23003459;}.slide-arrow{fill:%23faf5ed;}</style></defs><circle class="slide-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow-circle" d="M25.00006,50A25,25,0,1,1,50,25,25.02834,25.02834,0,0,1,25.00006,50Zm0-48.9738A23.9738,23.9738,0,1,0,48.9738,25,24.001,24.001,0,0,0,25.00006,1.0262Z"/><polygon class="slide-arrow" points="23.221 35.854 22.495 35.128 32.623 25 22.495 14.872 23.221 14.146 34.075 25 23.221 35.854"/></svg>');
}

.slick-next {
		right: 0;
		-webkit-transform: translate(100%, -50%);
		        transform: translate(100%, -50%);
}
[dir=rtl] .slick-next {
		left: 0;
		right: auto;
		-webkit-transform: translate(-100%, -50%);
		        transform: translate(-100%, -50%);
}
.slick-next::before {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:transparent;}.slide-arrow{fill:%23003459;}</style></defs><circle class="slide-arrow-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow" d="M25.00006,50A25,25,0,1,1,50,25,25.02834,25.02834,0,0,1,25.00006,50Zm0-48.9738A23.9738,23.9738,0,1,0,48.9738,25,24.001,24.001,0,0,0,25.00006,1.0262Z"/><polygon class="slide-arrow" points="23.221 35.854 22.495 35.128 32.623 25 22.495 14.872 23.221 14.146 34.075 25 23.221 35.854"/></svg>');
}
[dir=rtl] .slick-next::before {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:transparent;}.slide-arrow{fill:%23003459;}</style></defs><circle class="slide-arrow-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow" d="M25,50A25,25,0,1,1,50,25,25.02832,25.02832,0,0,1,25,50ZM25,1.0262A23.9738,23.9738,0,1,0,48.9738,25,24.00095,24.00095,0,0,0,25,1.0262Z"/><polygon class="slide-arrow" points="26.779 35.854 15.926 25 26.779 14.146 27.505 14.872 17.377 25 27.505 35.128 26.779 35.854"/></svg>');
}
.slick-next::after {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:%23003459;}.slide-circle{fill:%23003459;}.slide-arrow{fill:%23faf5ed;}</style></defs><circle class="slide-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow-circle" d="M25.00006,50A25,25,0,1,1,50,25,25.02834,25.02834,0,0,1,25.00006,50Zm0-48.9738A23.9738,23.9738,0,1,0,48.9738,25,24.001,24.001,0,0,0,25.00006,1.0262Z"/><polygon class="slide-arrow" points="23.221 35.854 22.495 35.128 32.623 25 22.495 14.872 23.221 14.146 34.075 25 23.221 35.854"/></svg>');
}
[dir=rtl] .slick-next::after {
		content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><defs><style>.slide-arrow-circle{fill:%23003459;}.slide-circle{fill:%23003459;}.slide-arrow{fill:%23faf5ed;}</style></defs><circle class="slide-circle" cx="25" cy="25" r="24.4869"/><path class="slide-arrow-circle" d="M25,50A25,25,0,1,1,50,25,25.02832,25.02832,0,0,1,25,50ZM25,1.0262A23.9738,23.9738,0,1,0,48.9738,25,24.00095,24.00095,0,0,0,25,1.0262Z"/><polygon class="slide-arrow" points="26.779 35.854 15.926 25 26.779 14.146 27.505 14.872 17.377 25 27.505 35.128 26.779 35.854"/></svg>');
}

@media screen and (max-width: 767px) {
		.slick-prev,
.slick-next {
				height: 6.9333333333vw;
				width: 6.9333333333vw;
		}
}
/* Dots */
.slick-dotted.slick-slider {
		margin-bottom: 0;
}

.slick-dots {
		position: absolute;
		bottom: -30px;
		list-style: none;
		display: block;
		text-align: center;
		padding: 0;
		margin: 0;
		width: 100%;
}
.slick-dots li {
		position: relative;
		display: inline-block;
		height: 12px;
		width: 12px;
		margin: 0 12px;
		padding: 0;
		cursor: pointer;
}
.slick-dots li button {
		border: 0;
		background: transparent;
		display: block;
		height: 12px;
		width: 12px;
		outline: none;
		line-height: 0px;
		font-size: 0px;
		color: transparent;
		padding: 5px;
		cursor: pointer;
}
.slick-dots li button:hover, .slick-dots li button:focus {
		outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
		opacity: 1;
}
.slick-dots li button:before {
		position: absolute;
		top: 0;
		left: 0;
		content: "•";
		text-indent: -9999px;
		width: 12px;
		height: 12px;
		border-radius: 6px;
		background-color: #261e23;
		font-family: "slick";
		font-size: 6px;
		line-height: 20px;
		text-align: center;
		color: #261e23;
		opacity: 0.25;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
		color: #261e23;
		opacity: 0.75;
}

@media screen and (max-width: 767px) {
		.slick-dotted.slick-slider {
				margin-bottom: 0;
		}

		.slick-dots {
				bottom: 0;
		}
		.slick-dots li {
				width: 2.4vw;
				height: 2.4vw;
				margin: 0 2.6666666667vw;
		}
		.slick-dots li button {
				width: 2.4vw;
				height: 2.4vw;
				padding: 0px;
		}
		.slick-dots li button:before {
				width: 2.4vw;
				height: 2.4vw;
		}
}
/*--------------------------------------------------------------- */
/* 全体で使用する module style を記述
/*--------------------------------------------------------------- */
.clearfix:after {
		content: "";
		display: block;
		clear: both;
}

.imgRound {
		overflow: hidden;
		border-radius: 20px;
}
@media screen and (max-width: 767px) {
		.imgRound {
				border-radius: 3.3333333333vw;
		}
}

.mod_dotList li {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
.mod_dotList li::before {
		content: "・";
		padding-right: 0.5em;
}

.mod_circleList li {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
.mod_circleList li::before {
		content: "●";
		padding-right: 0.5em;
}

.mod_numList {
		list-style-type: decimal;
		list-style-position: outside;
		margin-left: 1.5em;
}
.mod_numList li {
		list-style: decimal;
}

.mod_numListBracket {
		counter-reset: cnt;
}
.mod_numListBracket li {
		counter-increment: cnt;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
.mod_numListBracket li::before {
		content: "(" counter(cnt) ")";
		text-align: right;
		padding-right: 0.5em;
		-webkit-box-flex: 0;
		    -ms-flex: 0 0 2em;
		        flex: 0 0 2em;
}

.mod_dotList li + li, .mod_circleList li + li, .mod_numList li + li, .mod_numListBracket li + li {
		margin-top: 0.5em;
}

/*-------------------------------------------> parts */
.mod_sectionTitle {
		text-align: center;
		color: #003459;
}
.mod_sectionTitle .title {
		width: 250px;
		margin-left: auto;
		margin-right: auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}
.mod_sectionTitle .title span {
		display: block;
}
.mod_sectionTitle .title span.en {
		font-size: 32px;
		line-height: 1;
		letter-spacing: 0em;
		padding-bottom: 15px;
}
.mod_sectionTitle .title span.ja {
		border-top: solid 1px #003459;
		padding-top: 15px;
		font-size: 18px;
		line-height: 1;
		letter-spacing: 0em;
}
@media screen and (max-width: 767px) {
		.mod_sectionTitle .title {
				width: 57.3333333333vw;
		}
		.mod_sectionTitle .title span.en {
				font-size: 27.5px;
				/* legacy */
				font-size: 7.3333333333vw;
				line-height: 1;
				letter-spacing: 0em;
				padding-bottom: 3.7333333333vw;
		}
		.mod_sectionTitle .title span.ja {
				border-top: solid 0.2666666667vw #003459;
				padding-top: 3.2vw;
				font-size: 16px;
				/* legacy */
				font-size: 4.2666666667vw;
				line-height: 1;
				letter-spacing: 0em;
		}
}

.mod_pageTitle {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: 100%;
		min-height: 520px;
}
.mod_pageTitle .title {
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 50.78125%;
		        flex: 1 1 50.78125%;
}
.mod_pageTitle .copy {
		-webkit-box-flex: 1;
		    -ms-flex: 1 1 44.53125%;
		        flex: 1 1 44.53125%;
}
.mod_pageTitle .title span {
		display: block;
		color: #003459;
}
.mod_pageTitle .title span.en {
		font-size: 100px;
		line-height: 1;
		letter-spacing: 0em;
}
.mod_pageTitle .title span.ja {
		font-size: 16px;
		line-height: 1;
		letter-spacing: 0.1em;
		margin-top: 2em;
}
.mod_pageTitle .copy .headCopy {
		font-size: 32px;
		line-height: 2;
		letter-spacing: 0.1em;
}
.mod_pageTitle .copy .headCopy::before {
		display: block;
		width: 0;
		height: 0;
		margin-top: calc((1 - 2) * .5em);
		content: "";
}
.mod_pageTitle .copy .headCopy::after {
		display: block;
		width: 0;
		height: 0;
		margin-bottom: calc((1 - 2) * .5em);
		content: "";
}
.mod_pageTitle .copy .text {
		font-size: 16px;
		line-height: 2.75;
		letter-spacing: 0.05em;
		margin-top: 2em;
}
.mod_pageTitle .copy .text::before {
		display: block;
		width: 0;
		height: 0;
		margin-top: calc((1 - 2.75) * .5em);
		content: "";
}
.mod_pageTitle .copy .text::after {
		display: block;
		width: 0;
		height: 0;
		margin-bottom: calc((1 - 2.75) * .5em);
		content: "";
}
@media screen and (max-width: 767px) {
		.mod_pageTitle {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-webkit-box-align: start;
				    -ms-flex-align: start;
				        align-items: flex-start;
				width: 100%;
				min-height: initial;
				padding-top: 12vw;
				padding-bottom: 11.3333333333vw;
		}
		.mod_pageTitle .title {
				-webkit-box-flex: 1;
				    -ms-flex: 1 0 auto;
				        flex: 1 0 auto;
		}
		.mod_pageTitle .copy {
				-webkit-box-flex: 1;
				    -ms-flex: 1 0 auto;
				        flex: 1 0 auto;
		}
		.mod_pageTitle .title span.en {
				font-size: 12vw;
		}
		.mod_pageTitle .title span.ja {
				font-size: 3.2vw;
				margin-top: 1em;
		}
		.mod_pageTitle .copy .headCopy {
				position: relative;
				width: 93.3333333333vw;
				font-size: 6.1333333333vw;
				margin-top: 1.5em;
		}
		.mod_pageTitle .copy .text {
				width: 86.6666666667vw;
				font-size: 3.4666666667vw;
				text-align: justify;
				text-justify: inter-ideograph;
		}
}

.mod_pageMenu {
		overflow: hidden;
		border-radius: 20px;
		margin-bottom: 195px;
}
.mod_pageMenu .link {
		background: #FFF;
		color: #003459;
		padding: 0 0 45px;
}
.mod_pageMenu .link .anchorLink {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
}
.mod_pageMenu .link .anchorLink li {
		margin: 45px 1.8852459016% 5px;
}
.mod_pageMenu .link .anchorLink li a {
		display: block;
		width: 172px;
		text-align: center;
}
.mod_pageMenu .link .anchorLink li a .linkTitle span {
		display: block;
}
.mod_pageMenu .link .anchorLink li a .linkTitle span.en {
		font-size: 22px;
		line-height: 1;
		letter-spacing: 0em;
}
.mod_pageMenu .link .anchorLink li a .linkTitle span.ja {
		font-size: 14px;
		line-height: 1;
		letter-spacing: 0em;
		padding-top: 10px;
		margin-top: 10px;
		border-top: solid 1px #003459;
}
.mod_pageMenu .link .anchorLink li a .arrow {
		width: 40px;
		margin: 30px auto 0;
}
@media screen and (min-width: 768px) {
		.mod_pageMenu .link .anchorLink li a .arrow .svg .anchor_circle, .mod_pageMenu .link .anchorLink li a .arrow .svg .anchor_arrow {
				-webkit-transition: all 0.3s ease-out;
				transition: all 0.3s ease-out;
		}
		.mod_pageMenu .link .anchorLink li a:hover .arrow .svg .anchor_circle {
				fill: #003459;
		}
		.mod_pageMenu .link .anchorLink li a:hover .arrow .svg .anchor_arrow {
				fill: #FFF;
		}
}
@media screen and (max-width: 767px) {
		.mod_pageMenu {
				overflow: hidden;
				border-radius: 3.3333333333vw;
				margin-bottom: 20vw;
		}
		.mod_pageMenu .link {
				padding: 6.6666666667vw 6.6666666667vw 8vw;
		}
		.mod_pageMenu .link .anchorLink {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
				-webkit-box-pack: start;
				    -ms-flex-pack: start;
				        justify-content: flex-start;
				-ms-flex-wrap: nowrap;
				    flex-wrap: nowrap;
				width: 100%;
		}
		.mod_pageMenu .link .anchorLink li {
				margin: 0;
		}
		.mod_pageMenu .link .anchorLink li + li {
				margin-top: 6.6666666667vw;
		}
		.mod_pageMenu .link .anchorLink li a {
				position: relative;
				width: 100%;
				text-align: left;
		}
		.mod_pageMenu .link .anchorLink li a .linkTitle span.en {
				font-size: 5.3333333333vw;
		}
		.mod_pageMenu .link .anchorLink li a .linkTitle span.ja {
				font-size: 3.4666666667vw;
				margin-top: 0;
				padding-top: 5.3333333333vw;
				border-top: none;
		}
		.mod_pageMenu .link .anchorLink li a .arrow {
				position: absolute;
				z-index: 10;
				top: calc(50% - 4.2666666667vw);
				right: 0;
				width: 8.5333333333vw;
				height: 8.5333333333vw;
				margin: 0;
				-webkit-transform: rotate(-90deg);
				        transform: rotate(-90deg);
		}
		.mod_pageMenu .link .anchorLink li a::after {
				content: "";
				display: block;
				width: 100%;
				height: 0.2666666667vw;
				background: #003459;
				position: absolute;
				z-index: 1;
				top: calc(50% - 0.1333333333vw);
				left: 0;
		}
}

/*-------------------------------------------> button */
.mod_roundLink a, .mod_roundLink button, .mod_roundLink > span {
		-webkit-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;
		border-style: solid;
		border-width: 1px;
		border-color: #003459;
		color: #003459;
		border-radius: 9999px;
		display: inline-block;
		padding: 0 1em;
		height: 40px;
		font-size: 20px;
		line-height: 1;
		letter-spacing: 0;
}
.mod_roundLink a > span, .mod_roundLink button > span {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		height: 40px;
}
.mod_roundLink a:hover, .mod_roundLink button:hover {
		background: #003459;
		color: #FFF;
}
.mod_roundLink span {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		height: 40px;
}
@media screen and (max-width: 767px) {
		.mod_roundLink a, .mod_roundLink button, .mod_roundLink > span {
				border-width: 0.2666666667vw;
				height: 8.2666666667vw;
				font-size: 4.8vw;
		}
		.mod_roundLink a > span, .mod_roundLink button > span {
				height: 8.2666666667vw;
				padding-bottom: 0.5333333333vw;
		}
		.mod_roundLink span {
				height: 8.2666666667vw;
		}
}

a:hover .mod_roundLink > span, button:hover .mod_roundLink > span {
		background: #003459;
		color: #FFF;
}

/*-------------------------------------------> flexbox */
.flex {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
}
@media screen and (max-width: 767px) {
		.flex.sp_column {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
}
@media screen and (max-width: 767px) {
		.flex.sp_column_reverse {
				-webkit-box-orient: vertical;
				-webkit-box-direction: reverse;
				    -ms-flex-direction: column-reverse;
				        flex-direction: column-reverse;
		}
}

/*-------------------------------------------> layout */
.mod_table {
		display: table;
}
.mod_table > dl {
		display: table-row;
}
.mod_table > dl > dt, .mod_table > dl > dd {
		display: table-cell;
}