@charset "UTF-8";
/* ==========================================================
!HTML5 elements
========================================================== */
nav,
main,
section,
aside,
article {
	display: block;
}

figure,
figcaption {
	margin: 0;
	padding: 0;
}

/* ==========================================================
!Reseting
========================================================== */
/* 全ての要素のbox-sizingをデフォルトでborder-boxにする */
:root {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

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

html {
	font-size: 100%;
}

body {
	position: relative;
	color: #222222;
	font-family: FujitsuInfinityPro, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", sans-serif;
	font-size: 16px;
	font-size: 1.6em;
	font-weight: 400;
	-webkit-font-feature-settings: "palt";
	        font-feature-settings: "palt";
	line-height: 1.7;
	-webkit-text-size-adjust: none;
	   -moz-text-size-adjust: none;
	    -ms-text-size-adjust: none;
	        text-size-adjust: none;
	background: #ffffff none;

	overflow-scrolling: touch;
}

body,
div,
pre,
p,
blockquote,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
th,
td {
	margin: 0;
	padding: 0;
}

input,
textarea {
	margin: 0;
	font-size: 100%;
}
textarea{
    width: 100%;
}

label {
	cursor: pointer;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 100%;
}

fieldset,
img {
	border: 0;
}

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

address,
caption,
cite,
code,
dfn,
em,
th,
var {
	font-weight: normal;
	font-style: normal;
}

ol,
ul {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
}

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

a,
input {
	/* outline: none; */
}

abbr,
acronym {
	border: 0;
}

/* ==========================================================
!Layout
========================================================== */
html {
	overflow-y: scroll;
}

html .inner01 {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 80px;
}

html .pc {
	display: block !important;
}

html .sp {
	display: none !important;
}

/* 1200px以下 */
@media (max-width: 1200px) {
	html .inner01 {
		padding: 0 3.7%;
	}
}

/* 768px以下 */
@media (max-width: 768px) {
	html body {
		overflow-x: hidden;
	}
	html .sp {
		display: block !important;
	}
	html .pc {
		display: none !important;
	}
}

@media print {
	html,
	html body {
		*zoom: 0.65;
	}
}

@font-face {
	font-family: F37GingerPro;
	font-weight: 400;

	src: url(../font/F37GingerPro-Regular.woff2) format("woff2"), url(../font/F37GingerPro-Regular.woff) format("woff");
}

@font-face {
	font-family: F37GingerPro;
	font-weight: 600;

	src: url(../font/F37GingerPro-Demi.woff2) format("woff2"), url(../font/F37GingerPro-Demi.woff) format("woff");
}

@font-face {
	font-family: F37GingerPro;
	font-weight: 700;

	src: url(../font/F37GingerPro-Bold.woff2) format("woff2"), url(../font/F37GingerPro-Bold.woff) format("woff");
}

.w-100 {
	width: 100% !important;
}

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

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

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

.c-white {
	color: #ffffff !important;
}

.c-red {
	color: #e60000 !important;
}

/* 768px以下 */
@media (max-width: 768px) {
	.text-center {
		text-align: left !important;
	}
}

/* デフォルト値 */
.fade-in {
	opacity: 0;
	-webkit-animation-duration: 1s;
	        animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
}

@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-20px, 0, 0);
		        transform: translate3d(-20px, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@keyframes fadeInLeft {
	from {
		opacity: 0;
		-webkit-transform: translate3d(-20px, 0, 0);
		        transform: translate3d(-20px, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@-webkit-keyframes fadeInRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(20px, 0, 0);
		        transform: translate3d(20px, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@keyframes fadeInRight {
	from {
		opacity: 0;
		-webkit-transform: translate3d(20px, 0, 0);
		        transform: translate3d(20px, 0, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 20px, 0);
		        transform: translate3d(0, 20px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 20px, 0);
		        transform: translate3d(0, 20px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@-webkit-keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -10px, 0);
		        transform: translate3d(0, -10px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

@keyframes fadeInDown {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -10px, 0);
		        transform: translate3d(0, -10px, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		        transform: none;
	}
}

.fadeIn {
	-webkit-animation-name: fadeIn;
	        animation-name: fadeIn;
	-webkit-animation-duration: 1.8s;
	        animation-duration: 1.8s;
}

.fadeIn.left {
	-webkit-animation-name: fadeInLeft;
	        animation-name: fadeInLeft;
}

.fadeIn.right {
	-webkit-animation-name: fadeInRight;
	        animation-name: fadeInRight;
}

.fadeIn.up {
	-webkit-animation-name: fadeInUp;
	        animation-name: fadeInUp;
}

.fadeIn.down {
	-webkit-animation-name: fadeInDown;
	        animation-name: fadeInDown;
}

.fadeIn.bg-anime--left,
.fadeIn.bg-anime--right {
	width: 100%;
}

.fadeIn.bg-anime--left::before,
.fadeIn.bg-anime--right::before {
	display: block;
	position: absolute;
	top: 40px;
	z-index: 2;
	width: 80%;
	height: 100%;
	content: "";
	        animation-name: bg-anime;
	-webkit-animation-duration: 0.7s;
	        animation-duration: 0.7s;
	-webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
	        animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-animation-delay: 0.4s;
	        animation-delay: 0.4s;
	-webkit-animation-fill-mode: both;
	        animation-fill-mode: both;
	-webkit-transform: scale(1, 1);
	    -ms-transform: scale(1, 1);
	        transform: scale(1, 1);

	-webkit-animation-name: bg-anime;
}

.fadeIn.bg-anime--left.blue01:before,
.fadeIn.bg-anime--right.blue01:before {
	background-color: #00a6c4;
}

.fadeIn.bg-anime--left::before {
	left: 0;

	-webkit-transform-origin: left top;

	    -ms-transform-origin: left top;

	        transform-origin: left top;
}

.fadeIn.bg-anime--right::before {
	right: 0;

	-webkit-transform-origin: right top;

	    -ms-transform-origin: right top;

	        transform-origin: right top;
}

@-webkit-keyframes zoomOut {
	from {
		opacity: 0;
		-webkit-transform: scale(1.08, 1.08);
		        transform: scale(1.08, 1.08);
	}
	50% {
		opacity: 0.5;
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		        transform: scale(1, 1);
	}
}

@keyframes zoomOut {
	from {
		opacity: 0;
		-webkit-transform: scale(1.08, 1.08);
		        transform: scale(1.08, 1.08);
	}
	50% {
		opacity: 0.5;
	}
	to {
		opacity: 1;
		-webkit-transform: scale(1, 1);
		        transform: scale(1, 1);
	}
}

.zoomOut {
	-webkit-animation-name: zoomOut;
	        animation-name: zoomOut;
}

@-webkit-keyframes bg-anime {
	from {
		-webkit-transform: scale(0, 1);
		        transform: scale(0, 1);
	}
	to {
		-webkit-transform: scale(1, 1);
		        transform: scale(1, 1);
	}
}

@keyframes bg-anime {
	from {
		-webkit-transform: scale(0, 1);
		        transform: scale(0, 1);
	}
	to {
		-webkit-transform: scale(1, 1);
		        transform: scale(1, 1);
	}
}

.bg-gray {
	background-color: #f3f3f3;
}

.bg-gray .art_basic01:not(:first-of-type) {
	padding-top: 0 !important;
}

.bg-gray form + .art_basic01 {
	padding-top: 0 !important;
}

.bg-orange {
	background-image: -webkit-linear-gradient(0deg, #fa1118 0%, #fa461e 65%, #f97b23 100%);
	background-image:     -ms-linear-gradient(0deg, #fa1118 0%, #fa461e 65%, #f97b23 100%);
}

.introduction01 {
	padding-top: 80px;
    padding-bottom: 80px;
}

.art_basic01 {
	padding: 80px 0 95px 0;
}

.art_basic01 .art_basic01:last-of-type {
	padding-bottom: 0;
}

.art_basic02 {
	padding: 95px 0 95px 0;
}

/* 768px以下 */
@media (max-width: 768px) {
	.introduction01 {
		padding-top: 8%;
	}
	.art_basic01 {
		padding: 12% 0 12% 0;
	}
	.art_basic02 {
		padding: 12% 0 12% 0;
	}
}

/* 768px以下 */
.header-simple .header_inner {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 80px;
}

@media (max-width: 1200px) {
	.header-simple .header_inner {
		padding: 0 3.7%;
	}
}

.header {
	position: relative;
	z-index: 1000;
	background: #ffffff;
}

.header_inner {
	margin: auto;
	padding: 0 3.7%;
}

.p-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	height: 70px;
	text-align: left;
}

@media (max-width: 1000px) {
	.p-header {
		height: 50px;
	}
}

.p-header_logo {
	width: 96px;
	height: 47px;
}

@media (max-width: 1000px) {
	.p-header_logo {
		width: 65px;
		height: 32px;
	}
}

.p-header_logo a {
	display: block;
	width: 96px;
	height: 47px;
}

@media (max-width: 1000px) {
	.p-header_logo a {
		width: 65px;
		height: 32px;
	}
}

.p-header_logo img {
	display: block;
	width: 100%;
	height: auto;
	vertical-align: top;
}

.p-header_nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.p-header_globalnav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	-webkit-transition: opacity 0.3s linear 0s;
	-o-transition: opacity 0.3s linear 0s;
	transition: opacity 0.3s linear 0s;
}

.p-header_globalnav_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
}

.p-header_globalnav_item {
	padding-left: 2.5vw;
	font-size: 0.9375rem;
	white-space: nowrap;
}

@media (max-width: 1000px) {
	.p-header_globalnav_item {
		padding-left: 0;
		white-space: normal;
	}
}

.p-header_globalnav_item > a {
	display: block;
	color: #000000;
	text-decoration: none;
}

@media (max-width: 1000px) {
	.p-header_globalnav_item > a {
		position: relative;
	}
}

.p-header_globalnav_item > a:hover {
	color: #ea0000;
}

.p-header_globalnav_item > button {
	display: block;
}

@media (max-width: 1000px) {
	.p-header_globalnav_item > button {
		position: relative;
		padding: 12px 3.7%;
	}
	.p-header_globalnav_item > button::after {
		display: block;
		position: absolute;
		top: 50%;
		right: 3.7%;
		width: 10px;
		height: 10px;
		margin-top: -5px;
		border-top: 1px solid #000000;
		border-right: 1px solid #000000;
		content: "";
		-webkit-transform: rotate(45deg);
		    -ms-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
}

.p-header_change {
	margin-left: auto;
	padding-left: 0;
	text-align: center;
}

.p-header_change svg {
	width: 17px;
	vertical-align: middle;

	fill: #000000;
}

.p-header_change a:hover svg {
	fill: #ea0000;
}

.p-header_countryname {
	display: block;
	margin-top: 2px;
	font-size: 0.62813rem;
	line-height: 1.2;
}

@media (max-width: 375px) {
	.p-header_countryname {
		width: 75%;
		margin-right: 5%;
		font-size: 0.7vw;
		text-align: right;
		white-space: normal;
	}
}

@media (max-width: 1000px) {
	.p-header_countryname {
		margin-top: 3px;
		margin-left: 2px;
		font-size: 0.5rem;
	}
}

.footer-simple {
	font-size: 0.625rem;
}

@media (max-width: 1000px) {
	.footer-simple {
		font-size: 0.875rem;
	}
}

.footer-simple .p-footer_copyright {
	margin-top: 0;
}

.footer {
	position: relative;
	z-index: 333;
	padding: 30px 0;
	text-align: center;
	background-color: #121e2d;
}

.footer_inner {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 80px;
}

@media (max-width: 1200px) {
	.footer_inner {
		padding: 0 3.7%;
	}
}

.p-footer {
	color: #ffffff;
}

.p-footer a {
	color: #ffffff;
}

.p-footer_menu_wrap {
	margin-top: 30px;
	padding: 0 11%;
	border-top: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
}

@media (max-width: 1000px) {
	.p-footer_menu_wrap {
		padding: 0;
	}
}

.p-footer_menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
}

@media (max-width: 1000px) {
	.p-footer_menu {
		display: block;
	}
}

@media (max-width: 1000px) {
	.p-footer_menu_item {
		border-top: 1px solid #ffffff;
	}
	.p-footer_menu_item:first-child {
		border-top: none;
	}
}

.p-footer_menu_item a {
	display: block;
	position: relative;
	padding: 15px 26px 15px 0;
	font-weight: 700;
	line-height: 1;
}

@media (max-width: 1000px) {
	.p-footer_menu_item a {
		padding: 15px 3.7%;
		font-size: 0.875rem;
		text-align: left;
	}
}

.p-footer_menu_item a:hover {
	text-decoration: underline;
}

.p-footer_menu_item a::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 8px;
	width: 14px;
	height: 14px;
	margin-top: -7px;
	border-top: 2px solid #b2b2b2;
	border-right: 2px solid #b2b2b2;
	content: "";
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: margin 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
	-o-transition: margin 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: margin 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
}

@media (max-width: 1000px) {
	.p-footer_menu_item a::after {
		display: none;
	}
}

.p-footer_sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-top: 30px;
}

.p-footer_sns_item {
	width: 45px;
	margin: 0 10px;
}

.p-footer_sns_item a {
	text-decoration: none;
}

.p-footer_sns_item a:hover {
	text-decoration: underline;
}

.p-footer_btm {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	margin-top: 40px;
	font-size: 0.625rem;
}

@media (max-width: 1000px) {
	.p-footer_btm {
		display: block;
		padding-right: 3.7%;
		padding-left: 3.7%;
		font-size: 0.875rem;
	}
}

.p-footer_link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
}

@media (max-width: 1000px) {
	.p-footer_link {
		display: block;
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
	}
}

.p-footer_link_item {
	margin-left: 5%;
}

@media (max-width: 1000px) {
	.p-footer_link_item {
		margin-top: 25px;
		margin-left: 0;
		text-align: left;
	}
}

.p-footer_link_item a {
	text-decoration: none;
}

.p-footer_link_item a:hover {
	text-decoration: underline;
}

.p-footer_copyright {
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
	-ms-flex-preferred-size: 300px;
	    flex-basis: 300px;
	text-align: left;
}

@media (max-width: 1000px) {
	.p-footer_copyright {
		display: block;
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
		margin-top: 40px;
		text-align: center;
	}
}

.p-footer_copyright a {
	text-decoration: none;
}

.p-footer_copyright a:hover {
	text-decoration: underline;
}

.breadcrumb {
	background-color: #f3f3f3;
}

.breadcrumb ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	    flex-flow: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	padding-top: 10px;
	padding-bottom: 10px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.breadcrumb ul li {
	padding-left: 0.75rem;
	font-size: 0.75rem;
}

.breadcrumb ul li a {
	position: relative;
	margin-right: 20px;
	padding-right: 30px;
	color: #222222;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.breadcrumb ul li a:hover {
	text-decoration: underline;
}

.breadcrumb ul li a:before {
	position: absolute;
	top: 50%;
	right: 0;
	width: 10px;
	height: 10px;
	border-top: 2px solid #b2b2b2;
	border-right: 2px solid #b2b2b2;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	content: "";
	-webkit-transform: translateY(-50%) rotate(45deg);
	    -ms-transform: translateY(-50%) rotate(45deg);
	        transform: translateY(-50%) rotate(45deg);
}

/* 1000px以下 */
@media (max-width: 1000px) {
	.breadcrumb ul li {
		font-size: 0.6875rem;
	}
	.breadcrumb ul li a {
		margin-right: 10px;
		padding-right: 15px;
	}
	.breadcrumb ul li a:before {
		width: 8px;
		height: 8px;
	}
}

.mv_basic01 {
	overflow: hidden;
	position: relative;
	height: 50vh;
}

.mv_basic01.mv-grad .mv_title {
	font-size: 2.875rem;
}

.mv_basic01.mv-grad .mv_title span {
	display: block;
	width: 30%;
	max-width: 500px;
}

.mv_basic01.mv-grad .bg01,
.mv_basic01.mv-grad .bg02 {
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 50%;
	height: 100%;
	background: 0 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.mv_basic01.mv-grad .bg01:before {
	display: block;
	position: absolute;
	top: -2.5%;
	left: -2.5%;
	width: 105%;
	height: 105%;
	content: "";
	background-image: url(../img/bgg-rd-mg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.mv_basic01.mv-grad .bg02 {
	right: 0;
}

.mv_basic01.mv-grad .bg02:before {
	display: block;
	position: absolute;
	top: -2.5%;
	left: -2.5%;
	width: 105%;
	height: 105%;
	content: "";
	background-image: url(../img/top/mv02_pc.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.mv_basic01.mv-grad .bg_logo {
	position: relative;
	width: 100%;
	height: 100%;
}

.mv_basic01.mv-grad .bg_logo:before {
	position: absolute;
	top: 50%;
	left: 51.8%;
	z-index: 1;
	width: 440px;
	height: 350px;
	margin: 0 auto;
	content: "";
	background-image: url(../img/infinity-mg.png);
	background-repeat: no-repeat;
	background-size: 100%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}

.mv_basic01 .mv_title {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding-left: 80px;
	color: #222222;
	font-size: 2.375rem;
	font-weight: bold;
	line-height: 1.6;
	/* tarnslate で要素の縦横それぞれ50%分の長さを動かすことで、要素を中央にする. */
	-webkit-transform: translate(0, -50%);
	    -ms-transform: translate(0, -50%);
	        transform: translate(0, -50%);
}

.mv_basic01 img {
	width: 100%;
}

.mv_basic02 {
	overflow: hidden;
	position: relative;
	padding: 130px 0;
}

.mv_basic02.mv-gray {
	background-color: #dad9d6;
}

.mv_basic02.mv-gray .mv_title {
	color: #222222;
}

.mv_basic02.mv-gray:before {
	content: none;
}

.mv_basic02:before {
	display: block;
	position: absolute;
	top: -2.5%;
	left: -2.5%;
	z-index: -1;
	width: 105%;
	height: 105%;
	content: "";
	background-image: url(../img/bgg-rd-mg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.mv_basic02.pd-small {
	padding: 51px 0;
}

.mv_basic02 .mv_title {
	z-index: 1;
	max-width: 1440px;
	margin: 0 auto;
	padding-right: 80px;
	padding-left: 80px;
	color: #ffffff;
	font-size: 2.375rem;
	font-weight: bold;
}

.mv_basic02 .mv_title span {
	display: block;
}

.mv_basic02 .mv_title span:nth-of-type(1) {
	padding-bottom: 0;
	font-size: 0.9375rem;
	font-weight: normal;
}

.mv_basic02 .mv_title span:nth-of-type(2) {
	padding-top: 5px;
	font-size: 1.5625rem;
	font-weight: normal;
}

/* 1440px以下 */
@media (max-width: 1440px) {
	.mv_basic01.mv-grad .mv_title {
		font-size: 2.875vw;
	}
}

@media screen and (max-width: 1279px) {
	.mv_basic01.mv-grad .mv_title span {
		width: 28vw;
	}
	.mv_basic01.mv-grad .bg_logo:before {
		width: calc(11 / 32 * 100vw);
		height: calc(11 / 32 * 0.8 * 100vw);
	}
}

/* 1200px以下 */
@media (max-width: 1200px) {
	.mv_basic01 .mv_title,
	.mv_basic02 .mv_title {
		padding-right: 4%;
		padding-left: 4%;
	}
	.mv_basic01.mv-grad .mv_title {
		font-size: 3.2vw;
	}
}

/* 1000px以下 */
@media (max-width: 1000px) {
	.mv_basic01 .mv_title {
		font-size: 1.825rem;
	}
}

/* 768px以下 */
@media (max-width: 768px) {
	.mv_basic01 {
		padding: 0;
	}
	.mv_basic01.mv-grad {
		height: 110vw;
	}
	.mv_basic01.mv-grad .mv_title {
		font-size: 6vw;
		-webkit-transform: translate(0, 0);
		    -ms-transform: translate(0, 0);
		        transform: translate(0, 0);
	}
	.mv_basic01.mv-grad .mv_title span {
		width: 90%;
	}
	.mv_basic01.mv-grad .bg01 {
		position: static;
		width: auto;
		margin: 0;
		padding: 0;
		white-space: normal;
		-webkit-transform: translateY(0);
		    -ms-transform: translateY(0);
		        transform: translateY(0);
	}
	.mv_basic01.mv-grad .bg01:before {
		height: 55%;
	}
	.mv_basic01.mv-grad .bg02 {
		top: 52%;
		width: 100%;
		width: 100%;
		height: 0;
		padding-top: 100%;
		background-position: top center;
	}
	.mv_basic01.mv-grad .bg02:before {
		height: 55%;
		background-image: url(../img/top/mv02_sp.jpg);
	}
	.mv_basic01.mv-grad .bg_logo {
		position: absolute;
		top: auto;
		bottom: 0;
		z-index: 1;
		height: 50%;
	}
	.mv_basic01.mv-grad .bg_logo:before {
		width: calc(8 / 16 * 100vw);
		height: calc(8 / 16 * 0.81640625 * 100vw);
	}
	.mv_basic01 .mv_title {
		top: 21%;
		left: 0.5rem;
		font-size: 6vw;
	}
	.mv_basic02 {
		padding: 16% 0;
	}
	.mv_basic02.pd-small {
		padding: 16% 0;
	}
	.mv_basic02 .mv_title {
		padding-right: 8%;
		padding-left: 8%;
		font-size: 6vw;
	}
	.mv_basic02 .mv_title span:nth-of-type(1) {
		font-size: 3.6vw;
	}
	.mv_basic02 .mv_title span:nth-of-type(2) {
		font-size: 4vw;
	}
}

.box_banner01 {
	margin: 45px auto 0 auto;
}

.box_banner01 a {
	display: block;
	text-decoration: none;
}

.box_banner01 a:hover img {
	opacity: 0.75;
}

.box_banner01 a img {
	width: 100%;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.box_info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	    flex-flow: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin-top: 60px;
}

.box_info > li {
	width: 40%;
	margin-right: 10%;
}

.box_info > li:nth-of-type(1),
.box_info > li:nth-of-type(2) {
	margin-bottom: 40px;
}

.box_info > li > a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	color: #ffffff;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.box_info > li > a:hover {
	opacity: 0.75;
}

.box_info > li > a .box_info_ico {
	width: 10%;
	margin-right: 5%;
	text-align: center;
}

.box_info > li > a > dl {
	width: 85%;
}

.box_info > li > a > dl > dt {
	font-size: 1.125rem;
	font-weight: bold;
}

.box_info > li > a > dl > dd {
	font-size: 0.9375rem;
}

.box_thumb {
	padding: 60px 0 95px 0;
	text-align: center;
}

.box_overview {
	margin-bottom: 50px;
}

.box_overview dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	width: 100%;
	padding: 2% 0;
	border-top: 1px solid #cccccc;
}

.box_overview dl:last-of-type {
	border-bottom: 1px solid #cccccc;
}

.box_overview dl.box_overview_prof dd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}

.box_overview dl.box_overview_prof dd > img {
	margin-right: 40px;
}

.box_overview dl dt {
	width: 15%;
	margin-right: 2%;
	margin-left: 2%;
	font-size: 1rem;
	font-weight: bold;
}

.box_overview dl dd {
	width: 81%;
	font-size: 0.9375rem;
}

.box_overview dl dd .note01 {
	
	font-size: 0.8125rem;
}

.box_program01 {
	margin-bottom: 50px;
}

.box_program01 dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	padding: 2% 0;
	border-top: 1px solid #cccccc;
}

.box_program01 dl:last-of-type {
	border-bottom: 1px solid #cccccc;
}

.box_program01 dl:nth-of-type(1) dt:before {
	content: "1.";
}

.box_program01 dl:nth-of-type(2) dt:before {
	content: "2.";
}

.box_program01 dl:nth-of-type(3) dt:before {
	content: "3.";
}

.box_program01 dl:nth-of-type(4) dt:before {
	content: "4.";
}

.box_program01 dl:nth-of-type(5) dt:before {
	content: "5.";
}

.box_program01 dl:nth-of-type(6) dt:before {
	content: "6.";
}

.box_program01 dl:nth-of-type(7) dt:before {
	content: "7.";
}

.box_program01 dl:nth-of-type(8) dt:before {
	content: "8.";
}

.box_program01 dl:nth-of-type(9) dt:before {
	content: "9.";
}

.box_program01 dl:nth-of-type(10) dt:before {
	content: "10.";
}
.box_program01 dl:nth-of-type(11) dt:before {
	content: "11.";
}

.box_program01 dl:nth-of-type(12) dt:before {
	content: "12.";
}
.box_program01 dl:nth-of-type(13) dt:before {
	content: "13.";
}

.box_program01 dl:nth-of-type(14) dt:before {
	content: "14.";
}
.box_program01 dl:nth-of-type(15) dt:before {
	content: "15.";
}
.box_program01 dl:nth-of-type(16) dt:before {
	content: "16.";
}
.box_program01 dl:nth-of-type(17) dt:before {
	content: "17.";
}
.box_program01 dl:nth-of-type(18) dt:before {
	content: "18.";
}
.box_program01 dl:nth-of-type(19) dt:before {
	content: "19.";
}
.box_program01 dl:nth-of-type(20) dt:before {
	content: "20.";
}



.box_program01 dl dt {
	position: relative;
	width: 10%;
	margin-right: 2%;
	padding-left: 5rem;
	font-size: 1rem;
	font-weight: bold;
}

.box_program01 dl dt:before {
	display: block;
	position: absolute;
	top: 0;
	left: 1rem;
	font-family: F37GingerPro, sans-serif;
	font-size: 2rem;
	bottom: 0;
    margin: auto;
    height: 2rem;
	line-height: 1;
;
    line-height: 1;
}

.box_program01 dl dd {
	width: 83%;
	font-size: 0.9375rem;
}

.box_program02 {
	margin-bottom: 50px;
}

.box_program02 dl dt {
	font-weight: bold;
}

.box-note01 {
	background-color: #ffffff;
}

.box-note01 dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 100%;
	margin-top: 50px;
	padding: 50px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.box-note01 dl dt {
	width: 10%;
	margin-right: 2%;
	font-size: 1.125rem;
	font-weight: bold;
}

.box-note01 dl dd {
	width: 85%;
}

.box-note01 dl dd ul li {
	position: relative;
	padding-left: 1rem;
	font-size: 0.9375rem;
}

.box-note01 dl dd ul li:before {
	position: absolute;
	top: 45%;
	left: 0.5rem;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	content: "";
	background-color: #222222;
}

.box_session > dl:nth-of-type(1) > dt:before {
	content: "1";
}

.box_session > dl:nth-of-type(2) > dt:before {
	content: "2";
}

.box_session > dl:nth-of-type(3) > dt:before {
	content: "3";
}

.box_session > dl:nth-of-type(4) > dt:before {
	content: "4";
}

.box_session > dl:nth-of-type(5) > dt:before {
	content: "5";
}
.box_session > dl:nth-of-type(6) > dt:before {
	content: "6";
}
.box_session > dl:nth-of-type(7) > dt:before {
	content: "7";
}
.box_session > dl:nth-of-type(8) > dt:before {
	content: "8";
}
.box_session > dl:nth-of-type(9) > dt:before {
	content: "9";
}
.box_session > dl:nth-of-type(10) > dt:before {
	content: "10";
}
.box_session > dl:nth-of-type(11) > dt:before {
	content: "11";
}
.box_session > dl:nth-of-type(12) > dt:before {
	content: "12";
}
.box_session > dl:nth-of-type(13) > dt:before {
	content: "13";
}
.box_session > dl:nth-of-type(14) > dt:before {
	content: "14";
}
.box_session > dl:nth-of-type(15) > dt:before {
	content: "15";
}
.box_session > dl:nth-of-type(16) > dt:before {
	content: "16";
}
.box_session > dl:nth-of-type(17) > dt:before {
	content: "17";
}
.box_session > dl:nth-of-type(18) > dt:before {
	content: "18";
}
.box_session > dl:nth-of-type(19) > dt:before {
	content: "19";
}
.box_session > dl:nth-of-type(20) > dt:before {
	content: "20";
}
.box_session > dl:nth-of-type(21) > dt:before {
	content: "21";
}
.box_session > dl:nth-of-type(22) > dt:before {
	content: "22";
}
.box_session > dl:nth-of-type(23) > dt:before {
	content: "23";
}
.box_session > dl:nth-of-type(24) > dt:before {
	content: "24";
}
.box_session > dl:nth-of-type(25) > dt:before {
	content: "25";
}

.box_session > dl > dt {
	position: relative;
	margin-bottom: 30px;
	padding: 25px 0 25px 3rem;
	border-width: 1px 0 1px 0;
	border-style: solid;
	border-color: #cccccc;
	font-size: 1.0625rem;
	font-weight: bold;
}
.box_session > dl > dd a img.vmiddle{
	display: none !important;
}

.box_session > dl > dt:before,
.box_session > dl > dt:after {
	display: block;
	position: absolute;
}

.box_session > dl > dt:after {
	top: 20px;
	left: 0;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	content: "";
	background-color: #222222;
}

.box_session > dl > dt:before {
	top: 24px;
	left: 13px;
	z-index: 1;
	color: #ffffff;
	font-family: F37GingerPro, sans-serif;
}

.box_session > dl > dd .box_session_title {
	margin-bottom: 20px;
	font-size: 1.625rem;
	font-weight: bold;
}

.box_session > dl > dd > dl > dt {
	margin-bottom: 15px;
	font-size: 1.25rem;
	font-weight: bold;
}

.box_session > dl > dd > dl > dd {
	margin-bottom: 35px;
	font-size: 0.9375rem;
	line-height: 2.5;
}

.box_message {
	margin-bottom: 45px;
	padding: 60px 30px 60px 30px;
	font-size: 0.9375rem;
	background-color: #ffffff;
}

.box_status {
	padding: 15px 0;
	background-color: #ffffff;
}

.box_status .inner01 {
	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;
}

.box_status .inner01 .box_status_text {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	font-size: 1rem;
	font-weight: bold;
}

.box_status .inner01 .box_status_text dt {
	margin-right: 15px;

}
.box_status .inner01 .box_status_text dt::after{
	content: "様";
	margin-left: 0.5rem;
	display: inline-block;
}

.box_column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	margin-top: 85px;
}

.box_column .box_column_container {
	width: 48.5%;
}

.box_column .box_column_container:nth-of-type(1) a {
	overflow: hidden;
}

.box_column .box_column_container:nth-of-type(1) a .box_column_text {
	position: relative;
}

.box_column .box_column_container:nth-of-type(1) a .box_column_text:before {
	display: block;
	position: absolute;
	top: -2.5%;
	left: -2.5%;
	z-index: -1;
	width: 105%;
	height: 105%;
	content: "";
	background-image: url(../img/bgg-bl-cy.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.box_column .box_column_container:nth-of-type(2) a {
	overflow: hidden;
}

.box_column .box_column_container:nth-of-type(2) a .box_column_text {
	position: relative;
}

.box_column .box_column_container:nth-of-type(2) a .box_column_text:before {
	display: block;
	position: absolute;
	top: -2.5%;
	left: -2.5%;
	z-index: -1;
	width: 105%;
	height: 105%;
	content: "";
	background-image: url(../img/bgg-dg-lg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.box_column .box_column_container a {
	display: block;
	color: #222222;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.box_column .box_column_container a:hover .box_column_img img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.box_column .box_column_container a:hover .c_btn.c-white .c_btn_ico:before {
	border-color: #ffffff !important;
}

.box_column .box_column_container a:hover .c_btn.c-white .c_btn_ico svg {
	fill: #ffffff !important;
}

.box_column .box_column_container a:hover .c_btn.c-white .c_btn_ico svg .circle {
	stroke: #ffffff !important;
}

.box_column .box_column_container a .box_column_img {
	overflow: hidden;
}

.box_column .box_column_container a .box_column_img img {
	width: 100%;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.box_column .box_column_container a .box_column_text {
	padding: 50px 8% 30px 8%;
	color: #ffffff;
	background-repeat: no-repeat;
	background-size: cover;
}

.box_column .box_column_container a .box_column_text dl {
	margin-bottom: 20px;
}

.box_column .box_column_container a .box_column_text dl dt {
	margin-bottom: 20px;
	color: #ffffff;
	font-size: 1.625rem;
	font-weight: bold;
}

.box_column .box_column_container a .box_column_text dl dt span {
	display: block;
	margin-bottom: 15px;
	font-size: 0.8125rem;
	font-weight: normal;
}

.box_column .box_column_container a .box_column_text dl dd {
	color: #ffffff;
	font-size: 0.9375rem;
}

.box_column .box_column_container a .box_column_text .text_link01 {
	color: #ffffff;
	font-size: 0.875rem;
	text-align: left;
}

.box_tag01 {
	padding: 15px 0 30px;
	background-color: #ffffff;
}

.box_tag01 ul {
	max-width: 960px;
	margin: 0 auto;
}

.box_tag01 ul li {
	display: inline-block;
	margin-top: 15px;
	margin-right: 5px;
	padding: 12px 13px;
	border-radius: 18px;
	color: #010101;
	font-size: 0.75rem;
	line-height: 1;
	background-color: #f2f2f2;
}

/* 768px以下 */
@media (max-width: 768px) {
	.box_banner01 {
		margin: 10% auto 10% auto;
	}
	.box_info {
		display: block;
		margin-top: 8%;
	}
	.box_info > li {
		width: 100%;
		margin-bottom: 8%;
	}
	.box_info > li > a {
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.box_info > li > a .box_info_ico {
		width: 12%;
		margin-right: 8%;
	}
	.box_info > li > a > dl {
		width: 80%;
	}
	.box_info > li > a > dl > dt {
		margin-bottom: 10px;
		font-size: 4.5vw;
	}
	.box_info > li > a > dl > dd {
		font-size: 3.8vw;
	}
	.box_thumb {
		padding: 8% 0 12% 0;
	}
	.box_overview {
		margin-bottom: 12%;
	}
	.box_overview dl {
		display: block;
		padding: 6% 4%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.box_overview dl.box_overview_prof dd {
		display: block;
		text-align: center;
	}
	.box_overview dl.box_overview_prof dd > img {
		margin: 0 auto 4% auto;
	}
	.box_overview dl.box_overview_prof dd p {
		text-align: left;
	}
	.box_overview dl dt {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5px;
		margin-left: 0;
		font-size: 4.5vw;
	}
	.box_overview dl dd {
		width: 100%;
		font-size: 4vw;
	}
	.box_overview dl dd .note01 {
		display: block;
		margin-left: 0;
		font-size: 3.6vw;
	}
	.box_program01 {
		margin-bottom: 12%;
	}
	.box_program01 dl {
		display: block;
		padding: 6% 4%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.box_program01 dl dt {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5px;
		margin-left: 0;
		padding-left: 6vw;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		font-size: 4.5vw;
	}
	.box_program01 dl dt:before {
		top: -1.5vw;
		left: 0;
		font-size: 6vw;
	}
	.box_program01 dl dd {
		width: 100%;
		font-size: 4vw;
	}
	.box-note01 dl {
		display: block;
		margin-top: 12%;
		padding: 12% 4%;
	}
	.box-note01 dl dt {
		width: 100%;
		margin-right: 0;
		font-size: 5vw;
		text-align: center;
	}
	.box-note01 dl dd {
		width: 100%;
	}
	.box-note01 dl dd ul li {
		font-size: 4vw;
	}
	.box-note01 dl dd ul li:before {
		top: 2.8vw;
	}
	.box_session > dl:nth-of-type(1) > dt:before {
		left: 3.25vw;
	}
	.box_session > dl > dt {
		padding-left: 10vw;
		font-size: 4.5vw;
	}
	.box_session > dl > dt:after {
		top: 25px;
		width: 8vw;
		height: 8vw;
	}
	.box_session > dl > dt:before {
		top: 26px;
		left: 2.75vw;
		font-size: 4.5vw;
	}
	.box_session > dl > dd .box_session_title {
		font-size: 5.5vw;
	}
	.box_session > dl > dd > dl > dt {
		margin-bottom: 10px;
		font-size: 4.5vw;
	}
	.box_session > dl > dd > dl > dd {
		font-size: 4vw;
		line-height: 1.65;
	}
	.box_message {
		margin-bottom: 10%;
		padding: 8% 5% 8% 5%;
		font-size: 4vw;
	}
	.box_status .inner01 .box_status_text {
		font-size: 4vw;
	}
	.box_column {
		display: block;
		margin-top: 12%;
	}
	.box_column .box_column_container {
		width: 100%;
	}
	.box_column .box_column_container:nth-of-type(1) {
		margin-bottom: 12%;
	}
	.box_column .box_column_container a .box_column_text {
		padding: 8% 8% 4% 8%;
	}
	.box_column .box_column_container a .box_column_text dl {
		margin-bottom: 8%;
	}
	.box_column .box_column_container a .box_column_text dl dt {
		margin-bottom: 4%;
		font-size: 5.25vw;
	}
	.box_column .box_column_container a .box_column_text dl dt span {
		margin-bottom: 10px;
		font-size: 3vw;
	}
	.box_column .box_column_container a .box_column_text dl dd {
		color: #ffffff;
		font-size: 4vw;
	}
	.box_column .box_column_container a .box_column_text .text_link01 {
		font-size: 3.5vw;
	}
}

.text_lead01 {
	max-width: 960px;
	margin: 0 auto;
	font-size: 1.25rem;
}

.text_lead02 {
	max-width: 960px;
	margin: 0 auto;
	font-size: 1.125rem;
}

.text_lead02 p {
	margin-bottom: 20px;
}

.text_lead02 p:last-of-type {
	margin-bottom: 0;
}

.text_lead03,
.text {
	margin-bottom: 20px;
	font-size: 0.9375rem;
}

.text_lead03:last-of-type,
.text:last-of-type {
	margin-bottom: 0;
}

.text_number {
	margin-bottom: 35px;
	font-size: 1rem;
	font-weight: bold;
	text-align: center;
}

.text_number span {
	font-size: 2.5rem;
}

.text_link01 {
	margin-bottom: 20px;
	text-align: center;
}

.text_link01 a {
	display: inline-block;
	margin: 0 auto;
	color: #606060;
	font-size: 0.9375rem;
	text-decoration: none;
}

.text_link02 {
	display: inline-block;
	color: #003399;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.text_link02:hover {
	text-decoration: underline;
}

.text_link02[target="_blank"] {
	position: relative;
	margin-right: 0.5rem;
	padding-right: 1rem;
}

.text_link02[target="_blank"]:after {
	position: absolute;
	top: 7px;
	right: 0;
	width: 13px;
	height: 13px;
	content: "";
	background-image: url(../img/ico_blank.png);
	background-repeat: no-repeat;
	background-size: 100%;
}

.text_link03 {
	margin-bottom: 20px;
	text-align: center;
}

.text_link03 a {
	display: inline-block;
	margin: 0 auto;
	color: #003399;
	font-size: 1rem;
	font-weight: 500;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.text_link03 a:hover {
	text-decoration: none;
}

.text-note01 {
	margin-bottom: 15px;
	font-size: 0.8125rem;
}

.text + .title_basic03 {
	margin-top: 70px;
}

a[href$=".pdf"] {
	position: relative;
	padding-left: 2.25rem;
	color: #222222;
}

a[href$=".pdf"]:before {
	display: inline-block;
	position: absolute;
	top: -0.25rem;
	left: 0;
	width: 30px;
	height: 30px;
	content: " ";
	background: url(../img/ico_pdf.svg) no-repeat;
}

.text_contact p {
	margin-bottom: 10px;
}

/* 768px以下 */
@media (max-width: 768px) {
	.text_lead01 {
		margin: 0;
		font-size: 4.5vw;
	}
	.text_lead02 {
		margin: 0;
		font-size: 4.5vw;
	}
	.text_lead02 p {
		margin-bottom: 3%;
	}
	.text_lead02 p:last-of-type {
		margin-bottom: 0;
	}
	.text_lead03,
	.text {
		margin-bottom: 3%;
		font-size: 4vw;
		text-align: left;
	}
	.text_link03 {
		margin-top: 4%;
	}
	.text_link03 a {
		font-size: 3.8vw;
	}
	.text_number {
		margin-bottom: 6%;
		font-size: 3.8vw;
	}
	.text_number span {
		font-size: 6.5vw;
	}
	.text-note01 {
		font-size: 3.5vw;
	}
	a[href$=".pdf"] + span {
		padding-top: 10px;
	}
}

.card_list01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	    flex-flow: wrap;
	justify-content: space-between;
	width: 100%;
	&:after,&:before{
		content: "";
		width: calc(33.33333% - 27px);
	}
}
.card_list01:after,.card_list01:before{
	content: "";
	width: calc(33.33333% - 27px);
	order: 999;
}

.card_list01.hidden {
	display: none;
}

.card_list01.hidden.js-filter-display {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.card_list01.hidden + .text_link01 {
	margin-bottom: 0;
	padding-bottom: 60px;
}

#forBacknumberWrap{
	display: none;
	padding-bottom: 3rem;
}
.card_list01 a {
	display: block;
	color: #222222;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.card_list01 > li {
	width: calc(33.33333% - 27px);
	margin-bottom: 35px;
	padding-bottom: 30px;
	background-color: #ffffff;
}


.card_list01 > li.moreCard {
	display: none !important;
}
	
.card_list01 > li#card_default {
display: none !important;
}




.card_list01 > li > a {
	padding: 15px 15px 15px 15px;
}

.card_list01 > li > a .card_list_img {
	overflow: hidden;
}

.card_list01 > li > a .card_list_img img {
	width: 100%;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.card_list01 > li > a:hover .card_list_img img {
	-webkit-transform: scale(1.1);
	    -ms-transform: scale(1.1);
	        transform: scale(1.1);
}

.card_list01 > li > a dl {
	padding: 0 15px;
	line-height: 1.65;
}

.card_list01 > li > a dl dt {
	margin: 20px auto 10px auto;
	font-size: 1.1875rem;
	font-weight: bold;
	line-height: 1.6;

	word-break: break-all;
}

.card_list01 > li > a dl dd {
	font-size: 0.9375rem;
}

.card_list01 > li .card_list_tag {
	padding: 0 30px 0 30px;
}

.card_list01 > li .card_list_tag {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	    flex-flow: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin-bottom: 15px;
}

.card_list01 > li .card_list_tag li {
	margin-right: 5px;
	margin-bottom: 5px;
}

.card_list01 > li .card_list_tag li label {
	padding: 3px 5px;
	font-size: 0.75rem;
	background-color: #e8e8e8;
    cursor: pointer;
    display: block;
}

.card_list01 > li .card_list_tag li label:hover {
	opacity: 0.7;
}

.card_list01 > li .card_list_wrap {
	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;
	padding: 0 30px 0 30px;
}

.card_list01 > li .card_list_wrap .card_list_more {
	color: #606060;
	font-size: 0.75rem;
}

.card_list01 > li .card_list_wrap .card_list_more:before {
	left: calc(25px - -0.65rem);
}

.card_list01 > li .card_list_wrap .card_list_more:after {
	left: 30px;
}

.card_list01 > li .card_list_wrap .card_list_status {
	display: block;
	padding: 3px 8px;
	border: 1px solid #222222;
	font-size: 0.75rem;
	font-weight: bold;
}

/* 768px以下 */
@media (max-width: 768px) {
	.card_list01 {
		display: block;
	}
	.card_list01.hidden + .text_link01 {
		padding-bottom: 12%;
	}
	.card_list01 > li {
		width: 100%;
		margin-bottom: 4%;
		padding-bottom: 25px;
	}
	.card_list01 > li:not(:nth-of-type(3n)) {
		margin-right: 0;
	}
	.card_list01 > li:last-of-type {
		margin-bottom: 4%;
	}
	.card_list01 > li > a {
		padding: 12px 12px 15px 12px;
	}
	.card_list01 > li > a dl {
		padding: 0 12px;
	}
	.card_list01 > li > a dl dt {
		font-size: 4.5vw;
	}
	.card_list01 > li > a dl dd {
		font-size: 3.8vw;
	}
	.card_list01 > li .card_list_tag {
		padding: 0 24px;
	}
	.card_list01 > li .card_list_tag li a {
		font-size: 3vw;
	}
	.card_list01 > li .card_list_wrap {
		padding: 0 24px 0 24px;
	}
	.card_list01 > li .card_list_wrap .card_list_more:before {
		left: calc(25px - -0.35rem);
	}
	.card_list01 > li .card_list_wrap .card_list_more:after {
		left: 24px;
	}
	.card_list01 > li .card_list_wrap .card_list_status {
		padding: 1px 8px;
	}
}

.btn_accordion {
	padding-bottom: 30px;
	text-align: center;
}

.btn_accordion .btn_accordion_title {
	display: inline-block;
	position: relative;
	margin: 80px auto 0 auto;
	padding: 20px 185px;
	color: #ffffff;
	font-size: 1.1875rem;
	font-weight: bold;
	text-align: center;
	background-color: #121e2d;
	cursor: pointer;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_accordion .btn_accordion_title:hover {
	opacity: 0.75;
}

.btn_accordion .btn_accordion_title.close {
	width: 100%;
	padding-top: 35px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 1.5rem;
	font-weight: bold;
}

.btn_accordion .btn_accordion_title.close:hover {
	opacity: 1;
}

.btn_accordion .btn_accordion_title.close:before,
.btn_accordion .btn_accordion_title.close:after {
	position: absolute;
	top: 35px;
	right: 25px;
	z-index: 2;
	width: 25px;
	height: 2px;
	content: "";
	background-color: #ffffff;
}

.btn_accordion .btn_accordion_title.close:before {
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.btn_accordion .btn_accordion_title.close:after {
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.btn_accordion .btn_accordion_title.close span:before {
	content: none;
}

.btn_accordion .btn_accordion_title span {
	display: block;
	position: relative;
	padding-left: 3rem;
}

.btn_accordion .btn_accordion_title span:before {
	position: absolute;
	top: 14%;
	left: 0;
	width: 50px;
	height: 39px;
	content: "";
	background-image: url(../img/icon-accordion_white.svg);
	background-repeat: no-repeat;
	background-size: 60%;
}

.btn_accordion .btn_accordion_body {
	display: none;
	/* はじめは非表示 */
	position: relative;
	z-index: 1;
	color: #ffffff;
	text-align: right;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner {
	padding: 35px 70px;
	background-color: #121e2d;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	margin-bottom: 5px;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li > p {
	width: 10%;
	font-size: 1.0625rem;
	font-weight: bold;
	text-align: left;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-flow: wrap;
	    flex-flow: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	width: 90%;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check {
	line-height: 1;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check label {
	display: inline-block;
	position: relative;
	margin: 0 0.2em 15px 10px;
	padding: 10px 12px 10px 12px;
	border: 1px solid #5a626c;
	border-radius: 25px;
	font-size: 0.9375rem;
	cursor: pointer;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check label:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 1em;
	height: 1em;
	content: "";
	        -ms-transform: translateY(-50%);
	            transform: translateY(-50%);

	-webkit-transform: translateY(-50%);
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check label:after {
	display: block;
	opacity: 0;
	position: absolute;
	top: 55%;
	left: 8px;
	width: 10px;
	height: 4px;
	margin-top: -0.2em;
	border-bottom: 2px solid #121e2d;
	border-left: 2px solid #121e2d;
	content: "";
	        -ms-transform: translateY(-50%) rotate(-45deg);
	            transform: translateY(-50%) rotate(-45deg);
	-webkit-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;

	-webkit-transform: translateY(-50%) rotate(-45deg);
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check input {
	display: none;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check input:checked {
	padding-left: 10px;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check input:checked + label {
	padding: 6px 10px 6px 25px;
	border: 1px solid #ffffff;
	color: #121e2d;
	background: #ffffff;
}

.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check input:checked + label:after {
	opacity: 1;
}

.btn_accordion .btn_accordion_body .btn_clear {
	font-size: 1rem;
	font-weight: bold;
	background-color: transparent;
	cursor: pointer;
}

/* 768px以下 */
@media (max-width: 768px) {
	.btn_accordion {
		margin: 12% auto 0 auto;
		padding-bottom: 6%;
	}
	.btn_accordion .btn_accordion_title {
		width: 100%;
		margin: 0;
		padding: 4% 0;
		font-size: 4.5vw;
	}
	.btn_accordion .btn_accordion_title.close:before,
	.btn_accordion .btn_accordion_title.close:after {
		top: 30px;
		right: 20px;
	}
	.btn_accordion .btn_accordion_title.close span {
		padding-left: 0;
	}
	.btn_accordion .btn_accordion_title span {
		padding-left: 0.5rem;
		font-size: 4.8vw;
	}
	.btn_accordion .btn_accordion_title span:before {
		top: 15%;
		left: 1rem;
		width: 100%;
		height: 100%;
		background-size: 6vw;
	}
	.btn_accordion .btn_accordion_body {
		margin-top: -1px;
	}
	.btn_accordion .btn_accordion_body .btn_accordion_inner {
		padding: 4% 8%;
	}
	.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li {
		display: block;
		margin-bottom: 1rem;
	}
	.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li > p {
		width: 100%;
		margin-bottom: 10px;
		font-size: 4.5vw;
	}
	.btn_accordion .btn_accordion_body .btn_accordion_inner .form_accordion .form_accordion_list li .form_checkbox_inner .label_check label {
		margin: 0 10px 10px 0;
		padding: 8px 13px;
		font-size: 3.7vw;
	}
	.btn_accordion .btn_accordion_body .btn_clear {
		font-size: 4vw;
	}
}

.ico-arrow01 {
	position: relative;
	padding-left: 1.85rem;
	font-weight: 500;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.ico-arrow01:before {
	position: absolute;
	top: 9px;
	left: 7px;
	z-index: 1;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #606060;
	content: "";
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.ico-arrow01:after {
	position: absolute;
	top: -2px;
	left: 0;
	z-index: 0;
	width: 20px;
	height: 20px;
	border-width: 1px;
	border-style: solid;
	border-color: #606060;
	border-radius: 50%;
	content: "";
	background-color: transparent;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.ico-arrow01:hover:before {
	border-color: #ffffff;
}

.ico-arrow01:hover:after {
	background-color: #606060;
}

.ico-arrow01.size-m {
	padding-left: 2.25rem;
}

.ico-arrow01.size-m:before {
	top: 11px;
	left: 7px;
	width: 8px;
	height: 8px;
}

.ico-arrow01.size-m:after {
	width: 25px;
	height: 25px;
}

.ico-mail {
	position: relative;
	padding-left: 1.75rem;
}

.ico-mail:before {
	position: absolute;
	top: -1px;
	left: 0;
	width: 20px;
	height: 16px;
	content: "";
	background-image: url(../img/ico_mail_black.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}

.ico-tel {
	position: relative;
	padding-left: 1.75rem;
}

.ico-tel:before {
	position: absolute;
	top: -1px;
	left: 0;
	width: 20px;
	height: 20px;
	content: "";
	background-image: url(../img/ico_phone_black.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}

.ico-fax {
	position: relative;
	padding-left: 1.75rem;
}

.ico-fax:before {
	position: absolute;
	top: -1px;
	left: 0;
	width: 20px;
	height: 20px;
	content: "";
	background-image: url(../img/ico_fax_black.svg);
	background-repeat: no-repeat;
	background-size: 100%;
}

.c_btn {
	position: relative;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	text-decoration: none;
}

.c_btn.size-m .c_btn_ico {
	width: 32px;
	height: 32px;
}

.c_btn.c-white .c_btn_ico {
	color: #ffffff;
}

.c_btn.c-white .c_btn_ico:before {
	border-color: #ffffff;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.c_btn.c-white .c_btn_ico svg {
	fill: #ffffff;
}

.c_btn.c-white .c_btn_ico svg .circle {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;

	fill: none;
	stroke: #ffffff;
}

.c_btn_ico {
	display: inline-block;
	position: relative;
	top: -2px;
	width: 26px;
	height: 26px;
	margin-right: 7px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
}

.c_btn_ico::before {
	display: block;
	opacity: 0;
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #222222;
	border-radius: 50%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	content: "";
}

.c_btn_ico svg {
	position: absolute;
	top: 0;
	left: 0;

	fill: #222222;
}

.c_btn_ico svg .circle {
	width: 100%;
	height: 100%;

	fill: none;
	stroke: #222222;
	stroke-width: 1px;
	-webkit-transform-origin: center;
	    -ms-transform-origin: center;
	        transform-origin: center;
}

.c_btn_ico svg .arrow {
	-webkit-transition: -webkit-transform 0.3s ease-in-out;
	transition: -webkit-transform 0.3s ease-in-out;
	-o-transition: transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out;
	transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

button:hover .c_btn .c_btn_ico::before,
a:hover .c_btn .c_btn_ico::before {
	opacity: 0.1;
}

button:hover .c_btn .c_btn_ico svg .arrow,
a:hover .c_btn .c_btn_ico svg .arrow {
	-webkit-animation: arrow 1.5s forwards ease-in-out;
	        animation: arrow 1.5s forwards ease-in-out;
}

button:hover .c_btn .c_btn_ico svg .circle,
a:hover .c_btn .c_btn_ico svg .circle {
	-webkit-animation: circle 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);
	        animation: circle 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);

	fill: transparent;
	stroke: #222222;
	stroke-width: 1;
}

button:hover .c_btn.c-white .c_btn_ico:before,
a:hover .c_btn.c-white .c_btn_ico:before {
	border-color: #222222;
}

button:hover .c_btn.c-white .c_btn_ico svg,
a:hover .c_btn.c-white .c_btn_ico svg {
	fill: #222222;
}

button:hover .c_btn.c-white .c_btn_ico svg .circle,
a:hover .c_btn.c-white .c_btn_ico svg .circle {
	stroke: #222222;
}

button.c_btn:hover .c_btn_ico::before,
a.c_btn:hover .c_btn_ico::before {
	opacity: 0.1;
	-webkit-animation: arrow_bg 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);
	        animation: arrow_bg 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);
}

button.c_btn:hover .c_btn_ico svg .arrow,
a.c_btn:hover .c_btn_ico svg .arrow {
	-webkit-animation: arrow 1.5s forwards ease-in-out;
	        animation: arrow 1.5s forwards ease-in-out;
}

button.c_btn:hover .c_btn_ico svg .circle,
a.c_btn:hover .c_btn_ico svg .circle {
	-webkit-animation: circle 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);
	        animation: circle 2s forwards cubic-bezier(0.215, 0.61, 0.355, 1);

	fill: transparent;
	stroke: #222222;
	stroke-width: 1;
}

button.c-white .c_btn_ico:before,
a.c-white .c_btn_ico:before {
	border-color: #222222;
}

button.c-white .c_btn_ico svg,
a.c-white .c_btn_ico svg {
	fill: #222222;
}

button.c-white .c_btn_ico svg .circle,
a.c-white .c_btn_ico svg .circle {
	stroke: #222222;
}

@-webkit-keyframes arrow_bg {
	0% {
		opacity: 0.1;
	}
	100% {
		opacity: 0;
	}
}

@keyframes arrow_bg {
	0% {
		opacity: 0.1;
	}
	100% {
		opacity: 0;
	}
}

@-webkit-keyframes arrow {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	10% {
		opacity: 0;
		-webkit-transform: translateX(50%);
		        transform: translateX(50%);
	}
	25% {
		opacity: 0;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	40% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@keyframes arrow {
	0% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	10% {
		opacity: 0;
		-webkit-transform: translateX(50%);
		        transform: translateX(50%);
	}
	25% {
		opacity: 0;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
	}
	40% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@-webkit-keyframes circle {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);

		stroke-dasharray: 0 300;
	}
	10% {
		stroke-dasharray: 50 100;
	}
	20% {
		stroke-dasharray: 100 200;
	}
	30% {
		stroke-dasharray: 150 300;
	}
	40% {
		stroke-dasharray: 200 300;
	}
	60% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);

		stroke-dasharray: 300 300;
	}
}

@keyframes circle {
	0% {
		-webkit-transform: rotate(0);
		        transform: rotate(0);

		stroke-dasharray: 0 300;
	}
	10% {
		stroke-dasharray: 50 100;
	}
	20% {
		stroke-dasharray: 100 200;
	}
	30% {
		stroke-dasharray: 150 300;
	}
	40% {
		stroke-dasharray: 200 300;
	}
	60% {
		-webkit-transform: rotate(360deg);
		        transform: rotate(360deg);

		stroke-dasharray: 300 300;
	}
}

.btn_all {
	text-align: center;
}

.btn_all p {
	display: inline-block;
	position: relative;
	padding: 20px 0 50px 0;
	font-size: 1rem;
	text-align: center;
	cursor: pointer;
}

.btn_all p:before {
	position: absolute;
	right: 0;
	bottom: 35px;
	left: 0;
	width: 15px;
	height: 15px;
	margin: 0 auto;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #222222;
	content: "";
	-webkit-transform: rotate(135deg);
	    -ms-transform: rotate(135deg);
	        transform: rotate(135deg);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_all p:hover:before {
	bottom: 32px;
}

.text + .btn_basic01 {
	margin-top: 30px;
}

.btn_basic01 {
	text-align: center;
}

.btn_basic01 a,
.btn_basic01 button {
    cursor: pointer;
	display: inline-block;
	width: 620px;
	max-width: 620px;
	padding: 15px 0;
	border: 1px solid #222222;
	color: #ffffff;
	font-size: 1.375rem;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	background-color: #121e2d;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_basic01 a:hover,
.btn_basic01 button:hover {
	color: #222222;
	background-color: #ffffff;
}

.btn_basic01 a:hover .c-white,
.btn_basic01 button:hover .c-white {
	color: #222222 !important;
}

.btn_close {
	margin: 0 auto;
	text-align: center;
}

.btn_close a {
	display: inline-block;
	position: relative;
	padding-left: 2.5rem;
	color: #222222;
	font-size: 0.9375rem;
	font-weight: 500;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_close a:hover:before {
	background-color: #ffffff;
}

.btn_close a:hover:after {
	color: #222222;
}

.btn_close a:before {
	position: absolute;
	top: -3px;
	left: 0;
	width: 30px;
	height: 30px;
	border: 1px solid #222222;
	border-radius: 50%;
	content: "";
	background-color: #222222;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
big{
    font-size: inherit;
}
.btn_close a:after {
	position: absolute;
	top: -2px;
	left: 9px;
	z-index: 1;
	color: #ffffff;
	font-size: 1.125rem;
	content: "×";
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_column01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.btn_column01 a,
.btn_column01 button {
	height: 70px;
	max-height: 70px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.btn_back01 {
	margin-right: 20px;
}

.btn_back01 a {
	display: block;
	padding: 20px 40px;
	border: 1px solid #222222;
	color: #222222;
	font-size: 1.125rem;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_back01 a:hover {
	color: #ffffff;
	background-color: #222222;
}

.btn_logout {
	display: block;
	padding: 10px 20px;
	border: 1px solid #222222;
	color: #222222;
	font-size: 0.9375rem;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_logout:hover {
	color: #ffffff;
	background-color: #222222;
}

.btn_basic02 {
	display: block;
	width: 120px;
	margin: 0 auto;
	padding: 10px 0;
	border: 1px solid #222222;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	color: #ffffff;
	font-size: 0.9375rem;
	text-decoration: none;
	text-align: center;
	background-color: #222222;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_basic02:hover {
	color: #222222;
	background-color: #ffffff;
}

.btn-column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.btn_cancel {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	margin-top: 40px;
}

.btn_cancel a ,.btn_cancel button{
	display: block;
	width: 340px;
	padding: 15px 0;
	border: 1px solid #222222;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	font-size: 1.125rem;
	text-decoration: none;
	text-align: center;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.btn_cancel a:nth-of-type(1) {
	margin-right: 10px;
	color: #222222;
	background-color: #ffffff;
}

.btn_cancel a:nth-of-type(1):hover {
	color: #ffffff;
	background-color: #222222;
}

.btn_cancel button {
	margin-left: 10px;
	color: #ffffff;
	background-color: #222222;
}

.btn_cancel button:hover {
	color: #222222;
	background-color: #ffffff;
}

.form_table .disnone {
    display: none;
}
.form_table tr td .name_wrap {
   display: flex;
}
.form_table tr td .name_wrap li {
   width: 48%;
}
.form_table tr td .name_wrap li:last-of-type {
margin-left: 4%;
}
.form_table tr td ul li {
    font-size: 0.9375rem;
}
.form_table tr#kana1 td div ul,.form_table tr#name1 td div ul {
   display: flex;
   flex-wrap: wrap;
   align-items: flex-start;
}
.form_table tr#kana1 td div ul li,.form_table tr#name1 td div ul li {
	display: flex;
    flex-wrap: wrap;
    max-width: 49%;
	width: 48%;;
	align-items: center;
 }
 .form_table tr#kana1 td ul li.ss_input,.form_table tr#name1 td ul li.ss_input {
	display: inline;
	margin-right: 2%;
 }
.form_table tr#name1 td div ul li span {
	width: 2rem;
 }
 .form_table tr#kana1 td div ul li span {
	width: 3rem;
 }
.form_table tr#name1 td div ul li input[type="text"] {
	max-width:calc(100% - 4rem);
 }
 .form_table tr#kana1 td div ul li input[type="text"] {
	max-width:calc(100% - 5rem);
 }

.form_table tr#kana1 td div ul li:first-of-type,.form_table tr#name1 td div ul li:first-of-type {
	margin-right: 2%;
 }


.verification .form_table tr td .name_wrap li{
    width: auto;
}
.verification .form_table tr td .name_wrap li:last-of-type {
    margin: 0;
}
.form_table tr span.form_before{
	display: inline-block;
    width: 50px;
    margin-right: 5px;
    font-size: 0.9375rem;
	}
.form_table tr .checkbox_wrap{
    font-size: 1rem;
}
.form_table tr .checkbox_wrap label input[type="checkbox"]{
    width: 1.5rem;
    height: 1.5rem;
    margin: 1rem;
    margin-left: 0;
    font-size: 1.5rem;
    transform: translateY(0.35rem);
}
.form_table tr .checkbox_wrap label input[type="radio"]{
    width: 1.5rem;
    height: 1.5rem;
    margin: 1rem;
    font-size: 1.5rem;
    transform: translateY(0.35rem);
}
.form_table #mm_caption{
    background:none !important;
}
.form_table #mm_caption td{
padding: 2rem 0 !important;
font-size: 0.9375rem!important;
        background:none !important;

}
.form_table #mm_caption td h2{
margin-bottom: 15px;
padding-bottom: 10px;
font-size: 1.625rem !important;
font-weight: bold;
line-height: 1.6;
    
}

.form_table tr .checkbox_wrap label input[type="radio"]:first-of-type{
  margin-left: 1rem;
}
/* 1370px以下 */
@media (max-width: 1370px) {
	.btn-column {
		display: block;
	}
	.btn-column a:not(:first-of-type) {
		margin-top: 4%;
	}
}

/* 1000px以下 */
@media (max-width: 1000px) {
	.btn_column01 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		    -ms-flex-direction: column;
		        flex-direction: column;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.btn_column01 .btn_back01 {
		-webkit-box-ordinal-group: 3;
		    -ms-flex-order: 2;
		        order: 2;
		width: 70%;
		max-width: 100%;
		margin-top: 4%;
		margin-right: 0;
		text-align: center;
	}
	.btn_column01 .btn_basic01 {
		-webkit-box-ordinal-group: 2;
		    -ms-flex-order: 1;
		        order: 1;
		width: 100%;
		max-width: 100%;
		text-align: center;
	}
	.btn_column01 .btn_basic01 button {
		width: 100%;
		max-width: 100%;
	}
}

/* 768px以下 */
@media (max-width: 768px) {
	.btn_all p {
		margin-bottom: 8%;
		padding: 6% 0 4% 0;
		font-size: 4vw;
	}
	.btn_all p:before {
		bottom: 0;
	}
	.btn_all p:hover:before {
		bottom: 0;
	}
	.text + .btn_basic01 {
		margin-top: 6%;
	}
	.btn_basic01 {
		margin-bottom: 4%;
	}
	.btn_basic01.sp-ico .c_btn .c_btn_ico {
		left: 0;
		-webkit-transform: translateX(-3rem);
		    -ms-transform: translateX(-3rem);
		        transform: translateX(-3rem);
	}
	.btn_basic01.sp-ico .c_btn .c_btn_ico svg {
		top: 40% !important;
	}
	.btn_basic01.sp-ico .m-left {
		margin-left: -1.5rem;
	}
	.btn_basic01 a,
	.btn_basic01 button {
		width: 100%;
		max-width: 100%;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		font-size: 1.125rem;
	}
	.btn_basic01 a p:before,
	.btn_basic01 button p:before {
		top: 13px;
	}
	.btn_basic01 a p:after,
	.btn_basic01 button p:after {
		top: 0;
	}
	.btn_logout {
		padding: 5px 15px;
		font-size: 3.8vw;
	}
	.btn_basic02 {
		width: 24vw;
		font-size: 3.8vw;
	}
	.btn_cancel {
		display: block;
		margin-top: 12%;
	}
	.btn_cancel a {
		width: 100%;
		font-size: 4.5vw;
	}
	.btn_cancel a:nth-of-type(1) {
		margin-right: 0;
		margin-bottom: 4%;
	}
	.btn_cancel a:nth-of-type(2) {
		margin-left: 0;
	}
	.btn_back01 a {
		font-size: 1rem;
	}
}

.title_basic01 {
	margin-bottom: 20px;
	font-size: 1.625rem;
	font-weight: bold;
	line-height: 1.6;
	text-align: center;
}

.title_basic02 {
	margin-bottom: 15px;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 1.6;
}

.title_basic03 {
	margin-bottom: 15px;
	padding-bottom: 10px;
	border-bottom: 1px solid #cccccc;
	font-size: 2.25rem;
	font-weight: bold;
	line-height: 1.6;
}

.title_basic03.bdr-none {
	border-bottom: none;
}

/* 768px以下 */
@media (max-width: 768px) {
	.title_basic01 {
		margin-bottom: 4%;
		font-size: 5.5vw;
	}
	.title_basic02 {
		margin-bottom: 3%;
		font-size: 5vw;
	}
	.title_basic03 {
		margin-bottom: 3%;
		font-size: 6.675vw;
	}
}

.link_anchor01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	width: 100%;
	margin-bottom: 65px;
}

.link_anchor01 li {
	width: 33.3333%;
	border-right: 2px solid #ffffff;
	background-color: #ffffff;
}
.link_anchor01.half li {
width: 50%;
}
.link_anchor01.full.half li {
width: 100%;
}
.link_anchor01 li.submit_anchor {
	border: none;
}

.link_anchor01 li.submit_anchor a p:before {
	top: 13px;
	left: 7px;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.link_anchor01 li a {
	display: block;
	padding: 20px 0;
	color: #ffffff;
	font-size: 1rem;
	font-weight: 500;
	text-decoration: none;
	text-align: center;
	background-color: #121e2d;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
    cursor: pointer;
}

.link_anchor01 li a:hover {
	opacity: 0.75;
}

.link_anchor01 li a p {
	display: inline-block;
	position: relative;
	padding-left: 2rem;
}

.link_anchor01 li a p:before {
	position: absolute;
	top: 12px;
	left: 8px;
	z-index: 1;
	width: 6px;
	height: 6px;
	margin: -4px 0 0 0;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #ffffff;
	content: "";
	-webkit-transform: rotate(135deg);
	    -ms-transform: rotate(135deg);
	        transform: rotate(135deg);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.link_anchor01 li a p:after {
	position: absolute;
	top: 2px;
	left: 0;
	z-index: 0;
	width: 20px;
	height: 20px;
	border-width: 1px;
	border-style: solid;
	border-color: #ffffff;
	border-radius: 50%;
	content: "";
	background-color: transparent;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

/* 768px以下 */
@media (max-width: 768px) {
	.link_anchor01.half li {
		width: 100%;
		}
	.link_anchor01 {
		display: block;
		margin-bottom: 12%;
	}
	.link_anchor01 li {
		width: 100%;
		margin-bottom: 2px;
		border: none;
	}
	.link_anchor01 li:last-of-type {
		margin-bottom: 0;
	}
	.link_anchor01 li:last-of-type a p:before {
		right: 1.5rem;
		left: auto;
	}
	.link_anchor01 li:last-of-type a p:after {
		right: 0.95rem;
		left: auto;
	}
	.link_anchor01 li a {
		padding: 15px 0;
	}
	.link_anchor01 li a p {
		display: block;
		padding-left: 0;
	}
	.link_anchor01 li a p:before {
		left: 1.5rem;
	}
	.link_anchor01 li a p:after {
		left: 1rem;
	}
}

.border_gradation01 {
	margin-bottom: 60px;
	padding-top: 120px;
}

.border_gradation01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	position: relative;
	width: 80%;
	margin: 0 auto;
}

.border_gradation01 ul:before {
	position: absolute;
	top: -50px;
	left: 0;
	width: 100%;
	height: 35px;
	border-radius: 25px;
	content: "";
	background-color: #dadada;
}

.border_gradation01 ul.active01:after,
.border_gradation01 ul.active02:after {
	position: absolute;
	top: -50px;
	left: -2.5%;
	width: 105%;
	height: 35px;
	border-radius: 25px;
	content: "";
	background-image: url(../img/bgg-rd-mg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.border_gradation01 ul.active01:after {
	left: 0;
	width: calc(50% - -15px);
}

.border_gradation01 ul.active01 li:nth-of-type(1),
.border_gradation01 ul.active01 li:nth-of-type(2) {
	color: #e60000;
}

.border_gradation01 ul.active01 li:nth-of-type(1):after,
.border_gradation01 ul.active01 li:nth-of-type(2):after {
	background-color: #e60000;
}

.border_gradation01 ul.active02:before {
	position: absolute;
	top: -50px;
	left: 0;
	width: 100%;
	height: 35px;
	border-radius: 25px;
	content: "";
	background-image: url(../img/bgg-rd-mg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.border_gradation01 ul.active02 li:nth-of-type(1),
.border_gradation01 ul.active02 li:nth-of-type(2) {
	color: #e60000;
}

.border_gradation01 ul.active02 li:nth-of-type(1):after,
.border_gradation01 ul.active02 li:nth-of-type(2):after {
	background-color: #e60000;
}

.border_gradation01 ul.active02:after {
	content: none;
}

.border_gradation01 ul.active02 li:nth-of-type(2),
.border_gradation01 ul.active02 li:nth-of-type(3) {
	color: #e60000;
}

.border_gradation01 ul.active02 li:nth-of-type(2):after,
.border_gradation01 ul.active02 li:nth-of-type(3):after {
	background-color: #e60000;
}

.border_gradation01 ul li {
	position: relative;
	width: 33.333333333%;
	color: #888888;
	font-size: 1.0625rem;
}

.border_gradation01 ul li:before,
.border_gradation01 ul li:after {
	display: block;
	position: absolute;
}

.border_gradation01 ul li:after {
	top: -50px;
	left: 0;
	z-index: 1;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	content: "";
	background-color: #bbbbbb;
}

.border_gradation01 ul li:before {
	top: -46px;
	left: 13px;
	z-index: 2;
	width: 35px;
	height: 35px;
	color: #ffffff;
	font-family: F37GingerPro, sans-serif;
	text-align: center;
}

.border_gradation01 ul li:nth-of-type(1) {
	text-align: left;
}

.border_gradation01 ul li:nth-of-type(1):before {
	left: 1px;
	content: "1";
}

.border_gradation01 ul li:nth-of-type(2) {
	text-align: center;
}

.border_gradation01 ul li:nth-of-type(2):after {
	right: 0;
	left: 0;
	margin: 0 auto;
}

.border_gradation01 ul li:nth-of-type(2):before {
	right: 0;
	left: 2px;
	margin: 0 auto;
	content: "2";
}

.border_gradation01 ul li:nth-of-type(3) {
	text-align: right;
}

.border_gradation01 ul li:nth-of-type(3):after {
	right: 0;
	left: auto;
}

.border_gradation01 ul li:nth-of-type(3):before {
	right: -1px;
	left: auto;
	content: "3";
}

/* 768px以下 */
@media (max-width: 768px) {
	.border_gradation01 {
		margin-bottom: 12%;
		padding-top: 32%;
	}
	.border_gradation01 ul {
		width: 100%;
	}
	.border_gradation01 ul.active02:after {
		width: 53%;
	}
	.border_gradation01 ul li {
		font-size: 0.875rem;
	}
	.border_gradation01 ul li:before {
		font-size: 1rem;
	}
}

.form_check {
	margin-top: 60px;
}

.form_check table {
	width: 100%;
}

.form_check table tr {
	border-top: 1px solid #cccccc;
}

.form_check table tr:nth-of-type(1) td dl dt:before {
	left: -2.15rem;
	content: "1";
}

.form_check table tr:nth-of-type(2) td dl dt:before {
	content: "2";
}

.form_check table tr:nth-of-type(3) td dl dt:before {
	content: "3";
}

.form_check table tr:nth-of-type(4) td dl dt:before {
	content: "4";
}

.form_check table tr:nth-of-type(5) td dl dt:before {
	content: "5";
}
.form_check table tr:nth-of-type(6) td dl dt:before {
	content: "6";
}
.form_check table tr:nth-of-type(7) td dl dt:before {
	content: "7";
}
.form_check table tr:nth-of-type(8) td dl dt:before {
	content: "8";
}
.form_check table tr:nth-of-type(9) td dl dt:before {
	content: "9";
}
.form_check table tr:nth-of-type(10) td dl dt:before {
	content: "10";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(11) td dl dt:before {
	content: "11";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(12) td dl dt:before {
	content: "12";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(13) td dl dt:before {
	content: "13";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(14) td dl dt:before {
	content: "14";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(15) td dl dt:before {
	content: "15";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(16) td dl dt:before {
	content: "16";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}

.form_check table tr:nth-of-type(17) td dl dt:before {
	content: "17";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}

.form_check table tr:nth-of-type(18) td dl dt:before {
	content: "18";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}

.form_check table tr:nth-of-type(19) td dl dt:before {
	content: "19";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(20) td dl dt:before {
	content: "20";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(21) td dl dt:before {
	content: "21";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(22) td dl dt:before {
	content: "22";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(23) td dl dt:before {
	content: "23";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(24) td dl dt:before {
	content: "24";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}
.form_check table tr:nth-of-type(25) td dl dt:before {
	content: "25";
	    letter-spacing: -0.15em;
    left: -2.6rem;
}


.form_check table tr:last-of-type {
	border-bottom: 1px solid #cccccc;
}

.form_check table tr th {
	width: 8%;
	padding: 0 35px;
	border-right: 1px solid #cccccc;
	text-align: center;
}

.form_check table tr td dl {
	padding: 20px 30px 20px 4.5rem;
}

.form_check table tr td dl dt {
	position: relative;
	font-size: 1.0625rem;
	font-weight: bold;
}

.form_check table tr td dl dt:before,
.form_check table tr td dl dt:after {
	display: block;
	position: absolute;
}

.form_check table tr td dl dt:after {
	top: -3px;
	left: -3rem;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	content: "";
	background-color: #222222;
}

.form_check table tr td dl dt:before {
	top: 0;
	left: -2.25rem;
	z-index: 1;
	color: #ffffff;
	font-family: F37GingerPro, sans-serif;
}
.form_check table tr td dl dd.sub_title {
	font-size: 1rem;
}
.form_check table tr td dl dd.memo {
	font-size: 1rem;
	font-weight: bold;
}
.form_check table tr td dl dd a {
	color: #003399;
	font-size: 0.9375rem;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.form_check table tr td dl dd a:hover {
	text-decoration: none;
}

.form_table {
	width: 100%;
}

.form_table input {
	padding-left: 1rem;
	font-size: 0.9375rem;
}

.form_table tr {
	display: table;
	width: 100%;
	margin-top: 30px;
}

.form_table tr th {
	width: 20%;
	padding-right: 2%;
	font-size: 1.0625rem;
	font-weight: bold;
	vertical-align: baseline;
}

.form_table tr td {
	width: 78%;
}

.form_table tr td .form_login {
	padding: 30px;
	background-color: #e7e7e7;
}

.form_table tr td .form_login p {
	margin-bottom: 0;
}

.form_table tr td .form_login .login_title {
	margin-top: 15px;
	margin-bottom: 5px;
	font-size: 0.8125rem;
}

.form_table tr td .form_login .login_title span {
	font-size: 0.9375rem;
	font-weight: bold;
}

.form_table tr td .form_login input {
	padding-left: 1rem;
	font-size: 0.9375rem;
}

.form_table tr td .form_login .login_column {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.form_table tr td .form_login .login_column button {
	height: 50px;
	margin-left: 30px;
	padding: 10px 30px;
	color: #ffffff;
	font-size: 0.9375rem;
	font-weight: bold;
	background-color: #121e2d;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.form_table tr td .form_login .login_column button:hover {
	opacity: 0.75;
}

.form_table tr td .form_login input {
	width: 60%;
}
.ss_txtRedB {
	font-size: 0.9375rem;
    font-weight: bold;
}
.form_table tbody {
	width: 100%;
    display: block;
}
.form_table tr input {
	width: 100%;
	height: 50px;
}

.form_table tr select {
	width: 100%;
	height: 50px;
	padding-right: 1rem;
	padding-left: 1rem;
	border-radius: 0;
	font-size: 0.9375rem;

	-webkit-appearance: none;
	        -moz-appearance: none;
	     appearance: none;
	/* デフォルトのスタイルを無効 */
}

.form_table tr select::-ms-expand {
	display: none;
	/* デフォルトのスタイルを無効(IE用) */
}

.form_table tr .container {
	position: relative;
	width: 50%;
}

.form_table tr .container::before {
	position: absolute;
	top: 20px;
	right: 1.5rem;
	z-index: 1;
	width: 10px;
	height: 10px;
	margin: -4px 0 0 0;
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #222222;
	content: "";
	-webkit-transform: rotate(135deg);
	    -ms-transform: rotate(135deg);
	        transform: rotate(135deg);
	        transition: all 0.3s;

	-webkit-transition: all 0.3s;
	     -o-transition: all 0.3s;
}

.form_table tr .text-note01 {
	margin-top: 10px;
}

.form_table tr .required {
	padding-left: 5px;
	color: #e60000;
	font-size: 0.875rem;
	font-weight: normal;
}

.form_table tr .input_column {
	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;
}

.form_table tr .input_column .input_column_container {
	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: 50%;
}

.form_table tr .input_column .input_column_container:nth-of-type(2) {
	margin-left: 30px;
}

.form_table tr .input_column span {
	display: inline-block;
	width: 50px;
	margin-right: 5px;
	font-size: 0.9375rem;
}

.form_table tr .input_column input {
	width: 100%;
}

.verification .form_table {
	margin-bottom: 45px;
}

.verification .form_table tr {
	margin-top: 0;
	border-top: 1px solid #cccccc;
}

.verification .form_table tr:last-of-type {
	border-bottom: 1px solid #cccccc;
}

.verification .form_table tr th {
	width: 15%;
	padding: 25px 0 25px 1rem;
}

.verification .form_table tr td {
	width: 83%;
	padding: 25px 0 25px 1rem;
	font-size: 0.9375rem;
}

/* 1000px以下 */
@media (max-width: 1000px) {
	.form_table tr td .form_login .login_column {
		display: block;
	}
	.form_table tr td .form_login .login_column button {
		width: 100%;
		margin: 4% 0 0 0;
	}
	.form_table tr td .form_login input {
		width: 100%;
	}
}

/* 768px以下 */
@media (max-width: 768px) {
	.form_check {
		margin-top: 8%;
	}
	.form_check table tr:nth-of-type(1) td dl dt:before {
		left: -6.75vw;
	}
	.form_check table tr td dl {
		padding: 30px 0 30px 15vw;
	}
	.form_check table tr td dl dt {
		font-size: 4.5vw;
	}
	.form_check table tr td dl dt:after {
		left: -10vw;
		width: 8vw;
		height: 8vw;
	}
	.form_check table tr td dl dt:before {
		top: -2px;
		left: -7.25vw;
		font-size: 4.5vw;
	}
	.form_check table tr td dl dd {
		line-height: 1;
	}
	.form_check table tr td dl dd a {
		font-size: 4vw;
	}
	.form_table input {
		font-size: 4vw;
	}
	.form_table tr {
		display: block;
		margin-top: 8%;
	}
	.form_table tr:first-of-type {
		margin-top: 2%;
	}
	.form_table tr th {
		display: block;
		width: 100% !important;
		margin-bottom: 2%;
		padding-right: 0;
		font-size: 4.265vw;
	}
	.form_table tr td {
		display: block;
		width: 100%;
	}
	.form_table tr td .form_login {
		padding: 6% 4%;
	}
	.form_table tr td .form_login .login_title {
		margin-top: 6%;
		font-size: 3.5vw;
	}
	.form_table tr td .form_login .login_title span {
		font-size: 4vw;
	}
	.form_table tr td .form_login .login_column {
		display: block;
	}
	.form_table tr td .form_login .login_column button {
		height: auto;
		margin-top: 6%;
		padding: 6% 0;
		font-size: 4.5vw;
	}
	.form_table tr input {
		width: 100%;
		height: 14vw;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
	}
	.form_table tr select {
		height: 14vw;
		font-size: 4vw;
		background-color: #ffffff;
	}
	.form_table tr .container {
		width: 100%;
	}
	.form_table tr .container::before {
		top: 45%;
	}
	.form_table tr .required {
		padding-left: 5px;
		font-size: 3.5vw;
	}
	

	.form_table tr .input_column {
		display: block;
	}
	.form_table tr .input_column .input_column_container {
		width: 100%;
	}
	.form_table tr .input_column .input_column_container:nth-of-type(2) {
		margin-top: 2%;
		margin-left: 0;
	}
	.form_table tr .input_column span {
		width: 14vw;
		font-size: 4vw;
	}
	.verification .form_table tr {
		margin-bottom: 0;
	}
	.verification .form_table tr th {
		width: 100%;
		padding-bottom: 0;
	}
	.verification .form_table tr td {
		width: 100%;
		padding-top: 0;
		font-size: 4vw;
	}
}

.btn_basic01 + .list_basic01,
.btn_basic01 .list_basic02 {
	margin-top: 70px;
}

.list_basic01,
.list_basic02 {
	margin-bottom: 20px;
}

.list_basic01 li,
.list_basic02 li {
	position: relative;
	padding-left: 0.5rem;
	font-size: 0.9375rem;
	line-height: 2.25;
	text-align: left;
}

.list_basic01 li:before,
.list_basic02 li:before {
	position: absolute;
	top: 0.95rem;
	left: 0;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	content: "";
	background-color: #222222;
}

.list_basic02 {
	padding-left: 3rem;
}

/* 768px以下 */
@media (max-width: 768px) {
	.list_basic01,
	.list_basic02 {
		margin-bottom: 3%;
		font-size: 3.8vw;
	}
	.list_basic02 {
		padding-left: 0;
	}
	.btn_basic01 + .list_basic01,
	.btn_basic01 .list_basic02 {
		margin-top: 10%;
	}
}

.text + .table_basic01 {
	margin-top: 25px;
}

.table_basic01 + .table_basic01 {
	margin-top: 30px;
}

.table_basic01 table {
	width: 100%;
}

.table_basic01 table tr {
	width: 50%;
	border: 1px solid #cccccc;
}

.table_basic01 table tr:last-of-type th {
	border-right: none;
}

.table_basic01 table tr th {
	padding: 20px 1rem;
	border-right: 1px solid #cccccc;
	font-size: 1.0625rem;
	font-weight: bold;
	text-align: left;
}

.table_basic01 table tr td {
	padding: 20px 1rem;
	border: 1px solid #cccccc;
	font-size: 0.9375rem;
}

.table_basic02 table {
	width: 100%;
}

.table_basic02 table tr {
	width: 50%;
	border: 1px solid #cccccc;
}

.table_basic02 table tr th {
	padding: 20px 1rem;
	border-right: 1px solid #cccccc;
	font-size: 1.0625rem;
	font-weight: bold;
	text-align: left;
}

.table_basic02 table tr td {
	padding: 20px 1rem;
	border: 1px solid #cccccc;
	font-size: 0.9375rem;
}

.table_basic02 table tbody tr th {
	vertical-align: baseline;
}

.table_basic02 table tbody tr td:first-of-type {
	vertical-align: baseline;
}

/* 768px以下 */
@media (max-width: 768px) {
	.table_basic01 {
		overflow-x: scroll;
	}
	.table_basic01 + .table_basic01 {
		margin-top: 6%;
	}
	.table_basic01 table {
		width: 1440px;
	}
	.table_basic01 table tr th {
		font-size: 4.265vw;
	}
	.table_basic01 table tr td {
		font-size: 4vw;
	}
	.table_basic02 {
		overflow-x: scroll;
	}
	.table_basic02 table {
		width: 1440px;
	}
	.table_basic02 table tr th {
		font-size: 4.265vw;
	}
	.table_basic02 table tr td {
		font-size: 4vw;
	}
}

/*# sourceMappingURL=../../map/style.css.map */

.displayNoneON{
	display: none;
}
.program_table{
	display: none;
}
.program_tableON{
	display: block;
}
.session_table{
	display: none;
}
.session_tableON{
	display: block;
}
.block-name{
    font-size: 12px;
}
#acting_alert {
    position:absolute;
    left: 0px;
    top: 0px;
    width:240px;
    margin:5px;
    z-index: 1000;
    opacity: .60;
    -moz-opacity: .60;
    filter:progid:DXImageTransform.Microsoft.Alpha(opacity=60);
}

#acting_alert p.close_alert {
    margin:0;
    padding:3px;
    background:#1393c0;
    text-align:right;
    height:25px;
}

#acting_alert p.content {
    padding:1em;
    margin:0;
    background:#fff;
    border: 1px solid #1393c0;
    height:100%;
}

#acting_alert span.top,
#acting_alert span.bottom {
    display:block;
    background: #fff;
}

#acting_alert span.top span,
#acting_alert span.bottom span {
    display:block;
    height: 1px;
    overflow: hidden;
    background: #1393c0;
}

#acting_alert span.r1{margin: 0 5px;}
#acting_alert span.r2{margin: 0 3px;}
#acting_alert span.r3{margin: 0 2px;}
#acting_alert span.top span.r4, span.bottom span.r4{
    margin: 0 1px;
    height: 2px;
}
#acting_alert span.item {
    font-size: 12px;
}
.close_alert a {
	background-image:url(../img/bannerClose.gif);
	display:block;
	width:23px;
	height:23px;
}
.close_alert a img {
	display:none;
}

#place_1:checked + label,#implementation_1:checked + label,#theme_0:checked + label,#event_1:checked + label{
    pointer-events: none;
}
#jsonDataWrap{
    display: none;
}
#cpcode{
    display: none;
}

.icon_wrap .icon{
	border: 1px solid black;
    display: inline-block;
    padding: 0.25rem 1rem;
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: 1rem;
}
.prof_image{
	margin-right: 1rem;
	width: inherit;
		max-width: fit-content;
}
@media (max-width: 768px) {
	.prof_image{
		margin: auto;
		margin-bottom: 1rem;
	}
}