/* login */

{
  align-items: center;
  background-color: var(--x3base);
  display: flex;
  flex-direction: column;
  min-height: 1431px;
  width: 1280px;
}

.header {
  align-items: center;
  background-color: var(--x3gray-2);
  display: flex;
  flex-direction: column;
  /*left: 0;*/
  min-height: 112px;
  position: fixed;
  top: 0;
  width: 1280px;
  z-index: 5;
}

.flex-row {
  align-items: flex-start;
  display: flex;
  height: 60px;
  margin-left: 12.0px;
  margin-top: 26px;
  min-width: 1228px;
}

.logo {
  align-items: flex-start;
  display: flex;
  overflow: hidden;
  width: 248px;
}

.overlap-group {
  height: 48px;
  margin-top: -0.1px;
  position: relative;
  width: 52px;
}

.psd_1_ {
  background-image: url(../img/rectangle-1@2x.png);
  background-size: 100% 100%;
  height: 7px;
  left: 0;
  position: absolute;
  top: 41px;
  width: 7px;
}

.group {
  height: 45px;
  left: 6px;
  position: absolute;
  top: 1px;
  width: 46px;
}

.psd_1_-1 {
  background-image: url(../img/-------1--1@2x.png);
  background-size: 100% 100%;
  height: 10px;
  left: 44px;
  position: absolute;
  top: 0;
  width: 6px;
}

.group-1 {
  height: 29px;
  left: 9px;
  position: absolute;
  top: 12px;
  width: 22px;
}

.flex-col {
  align-items: flex-start;
  align-self: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 1.45px;
  margin-left: 11px;
  min-height: 33px;
  width: 184px;
}

.vector-container {
  align-items: center;
  display: flex;
  margin-left: 0.03px;
  min-width: 73px;
}

.vector {
  height: 1px;
  margin-top: 0.15px;
  width: 11px;
}

.vector-1 {
  height: 9px;
  margin-left: 2px;
  margin-top: 0.04px;
  width: 11px;
}

.vector-2 {
  align-self: flex-end;
  height: 9px;
  width: 11px;
}

.vector-3 {
  align-self: flex-start;
  height: 9px;
  margin-left: 2px;
  width: 11px;
}

.vector-4 {
  height: 9px;
  margin-bottom: 0.07px;
  margin-left: 1px;
  width: 11px;
}

.vector-5 {
  height: 9px;
  margin-top: 0.04px;
  width: 11px;
}

.group-2 {
  height: 17px;
  margin-top: 7px;
  width: 184px;
}

.group-1-1 {
  align-items: flex-end;
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  margin-left: 334px;
  min-height: 42px;
  width: 646px;
}

.frame-1 {
  align-items: flex-start;
  display: flex;
  min-width: 646px;
}

.x3textlink-3 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  min-width: 72px;
}

.text_label {
  letter-spacing: 2.40px;
  line-height: 16px;
  margin-top: -1px;
  min-height: 16px;
  white-space: nowrap;
}

.x3textlink {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-left: 36px;
  min-width: 72px;
}

.x3textlink-4 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-left: 36px;
  min-width: 70px;
}

.x3textlink-5 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-left: 36px;
  min-width: 108px;
}

.x3textlink-6 {
  align-items: flex-start;
  display: flex;
  height: 12px;
  margin-right: 136px;
  margin-top: 14px;
  min-width: 78px;
}

.text_label-4 {
  letter-spacing: 1.20px;
  line-height: 12px;
  margin-top: -1px;
  min-height: 12px;
  white-space: nowrap;
}

.line-53-stroke {
  height: 12px;
  margin-top: 14px;
  width: 1280px;
}

.frame-10 {
  align-items: center;
  align-self: flex-start;
  display: flex;
  margin-left: 105px;
  margin-top: 240px;
  min-width: 139px;
  z-index: 4;
}

.x3textlink-7 {
  align-items: flex-start;
  display: flex;
  height: 26px;
  min-width: 53px;
}

.text_label-1 {
  letter-spacing: 1.68px;
  line-height: 26px;
  margin-top: -1px;
  min-height: 26px;
  white-space: nowrap;
}

.x {
  height: 8px;
  margin-left: 10px;
  width: 6px;
}

.x3textlink-8 {
  align-items: flex-start;
  display: flex;
  height: 26px;
  margin-left: 10px;
  min-width: 60px;
}

.text-21 {
  letter-spacing: 1.05px;
  line-height: 36px;
  margin-left: 4.0px;
  margin-top: 53px;
  min-height: 36px;
  white-space: nowrap;
  width: 1026px;
  z-index: 2;
}

.overlap-group2 {
  align-items: center;
  background-color: var(--x3gray);
  display: flex;
  flex-direction: column;
  margin-left: 4.0px;
  margin-top: 69px;
  min-height: 429px;
  padding: 60px 0;
  width: 816px;
  z-index: 1;
}

.formhead {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  min-height: 64px;
  width: 396px;
}

.id {
  letter-spacing: 0.98px;
  line-height: 16px;
  margin-left: 0;
  margin-top: -1px;
  min-height: 16px;
  white-space: nowrap;
}

.rectangle-27 {
  background-color: var(--white);
  height: 40px;
  margin-top: 9px;
  width: 396px;
}

.formhead-1 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  margin-top: 24px;
  min-height: 64px;
  width: 396px;
}

.id-1 {
  letter-spacing: 0.98px;
  line-height: 16px;
  margin-left: 0;
  margin-top: -1px;
  min-height: 16px;
  white-space: nowrap;
}

.check-boxform {
	display: flex;
	margin-right: 3.0px;
	margin-top: 40px;
	width: 396px;
	text-align: center;
	align-items: center;
	justify-content: center;
}

.checkbox {
  align-items: center;
  display: flex;
  height: 16px;
  min-width: 16px;
  padding: 0 2px;
}

.subtract {
  height: 12px;
  width: 12px;
}

.label {
  height: 12px;
  letter-spacing: 0.36px;
  line-height: 12px;
  margin-left: 6px;
  margin-top: 1px;
  white-space: nowrap;
}

.btn {
  align-items: flex-start;
  background-color: var(--x3black);
  display: flex;
  height: 40px;
  margin-top: 12px;
  min-width: 396px;
  padding: 11px 164px;
  border: none;
	outline: none;
}

.text-19 {
  letter-spacing: 1.12px;
  line-height: 16px;
  min-height: 16px;
  min-width: 68px;
  text-align: center;
  white-space: nowrap;
}

.text-20 {
  letter-spacing: 0.60px;
  line-height: 12px;
  margin-right: 4.0px;
  margin-top: 11px;
  min-height: 12px;
  min-width: 290px;
  text-align: center;
  white-space: nowrap;
}

.span {
  letter-spacing: 0.07px;
}

.span1 {
  letter-spacing: 0.07px;
  text-decoration: underline;
}

.footer {
  align-items: center;
  background-image: url(../img/vector-2@1x.svg);
  background-size: 100% 100%;
  display: flex;
  height: 410px;
  justify-content: flex-end;
  margin-top: 168px;
  min-width: 1280px;
  padding: 40px 93.0px;
  z-index: 3;
}

.vector-6 {
  align-self: flex-start;
  height: 326px;
  width: 1px;
}

.flex-col-1 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  margin-bottom: 8.0px;
  margin-left: 64px;
  min-height: 274px;
  width: 272px;
}

.frame-container {
  align-items: flex-start;
  display: flex;
  height: 116px;
  min-width: 272px;
}

.frame-2779 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  min-height: 116px;
  width: 68px;
}

.x3textlink-1 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  min-width: 68px;
}

.text_label-2 {
  letter-spacing: 1.12px;
  line-height: 16px;
  margin-top: -1px;
  min-height: 16px;
  white-space: nowrap;
}

.x3textlink-2 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-top: 34px;
  min-width: 68px;
}

.frame-2780 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  margin-left: 102px;
  min-height: 116px;
  width: 102px;
}

.x3textlink-9 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-top: 34px;
  min-width: 67px;
}

.x3textlink-10 {
  align-items: flex-start;
  display: flex;
  height: 16px;
  margin-top: 34px;
  min-width: 102px;
}

.group-14 {
  align-items: flex-end;
  display: flex;
  justify-content: flex-end;
  margin-top: 53px;
  min-width: 196px;
}

.icon-twitter {
  height: 44px;
  margin-bottom: -233px;
  width: 44px;
}

.icon-container {
  height: 44px;
  margin-bottom: -233px;
  margin-left: 32px;
  position: relative;
  width: 61px;
}

.x3icon {
  height: 44px;
  left: 17px;
  position: absolute;
  top: 0;
  width: 44px;
}

.icon-instagram {
  height: 44px;
  left: 0;
  position: absolute;
  top: 0;
  width: 44px;
}

.textlink-container {
  align-items: flex-start;
  display: flex;
  margin-top: 47px;
  min-width: 252px;
}

.x3textlink-11 {
  align-items: flex-start;
  display: flex;
  height: 14px;
  min-width: 149px;
}

.text_label-3 {
  letter-spacing: 0.98px;
  line-height: 14px;
  margin-top: -1px;
  min-height: 14px;
  white-space: nowrap;
}

.x3textlink-12 {
  align-items: flex-start;
  display: flex;
  height: 14px;
  margin-left: 44px;
  min-width: 59px;
}

.flex-col-2 {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  margin-bottom: 19.0px;
  margin-left: 239px;
  min-height: 283px;
  width: 420px;
}

.group-3 {
  align-items: flex-start;
  display: flex;
  min-width: 358px;
}

.overlap-group1 {
  height: 68px;
  margin-top: -0.01px;
  position: relative;
  width: 76px;
}

.psd_1_-2 {
  background-image: url(../img/rectangle@2x.png);
  background-size: 100% 100%;
  height: 9px;
  left: 0;
  position: absolute;
  top: 59px;
  width: 11px;
}

.group-4 {
  height: 65px;
  left: 10px;
  position: absolute;
  top: 2px;
  width: 66px;
}

.psd_1_-3 {
  background-image: url(../img/-------1-@2x.png);
  background-size: 100% 100%;
  height: 14px;
  left: 64px;
  position: absolute;
  top: 0;
  width: 9px;
}

.group-5 {
  height: 41px;
  left: 13px;
  position: absolute;
  top: 17px;
  width: 32px;
}

.flex-col-3 {
  align-items: flex-start;
  align-self: center;
  display: flex;
  flex-direction: column;
  margin-bottom: 0.66px;
  margin-left: 15px;
  min-height: 46px;
  width: 267px;
}

.vector-container-1 {
  align-items: center;
  display: flex;
  min-width: 107px;
}

.vector-7 {
  height: 2px;
  margin-bottom: 1.61px;
  width: 16px;
}

.vector-8 {
  height: 13px;
  margin-left: 3px;
  margin-top: 0.06px;
  width: 17px;
}

.vector-9 {
  align-self: flex-end;
  height: 13px;
  margin-left: 1px;
  width: 17px;
}

.vector-10 {
  align-self: flex-start;
  height: 13px;
  margin-left: 2px;
  width: 15px;
}

.vector-11 {
  height: 13px;
  margin-bottom: 0.09px;
  margin-left: 2px;
  width: 16px;
}

.vector-12 {
  height: 13px;
  margin-left: 1px;
  margin-top: 0.06px;
  width: 16px;
}

.group-6 {
  height: 24px;
  margin-left: 0.49px;
  margin-top: 9px;
  width: 266px;
}

.x106-0041-3 {
  letter-spacing: 1.19px;
  line-height: 30px;
  margin-top: 35px;
  min-height: 120px;
  width: 420px;
}

.copyright {
  letter-spacing: 1.26px;
  line-height: 12px;
  margin-left: 1px;
  margin-top: 48px;
  min-height: 12px;
  white-space: nowrap;
}

.x3page-top {
  align-items: flex-start;
  align-self: flex-end;
  display: flex;
  flex-direction: column;
  margin-bottom: 32px;
  margin-left: 75px;
  min-height: 146px;
  width: 12px;
}

.vector-13 {
  height: 75px;
  margin-left: 3.0px;
  margin-top: -2px;
  width: 9px;
}

.surname {
  letter-spacing: 1.17px;
  line-height: 12px;
  margin-left: -27.0px;
  margin-top: 33px;
  min-height: 12px;
  transform: rotate(-90.00deg);
  white-space: nowrap;
}


/*  navigation  */

.navigation {
position: absolute;
top: 118px;
left: 105px;
align-items: center;
display: flex;
min-width: 207px;
width: 1280px;
height: 32px;
}

.navigation_home {
  align-items: flex-start;
  display: flex;
  height: 26px;
  min-width: 53px;
}

.navigation_text_label {
  letter-spacing: 1.68px;
  line-height: 26px;
  margin-top: -1px;
  min-height: 26px;
  white-space: nowrap;
}

.navigation-item {
  height: 8px;
  margin-left: 10px;
  width: 6px;
}

.navigation_child {
  align-items: flex-start;
  display: flex;
  height: 26px;
  margin-left: 10px;
  min-width: 65px;
}

body {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}


/*  main_content  */

#main_content{
	position: relative;
	overflow: hidden;
	width: 1280px;
	background-color: var(--x3base2);
	background-color: #F9F9F9;
	margin: 0 auto;
	height: 920px;
}

/* content_box */

.content_box{
		position: relative;
		left: 50%;
		height: 100vh;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		margin-top: 230px;
}
.content_name{
	position: absolute;
	left: 115px;
	top: 10px;
	transform: rotate(90.00deg);
	transform-origin: left top;
	z-index: 999;
}
.content_title{
	position: absolute;
	left: 129px;
	top: -35px;
	height: 32px;
	z-index: 999;
}

.content_title_text{
	color: black;
	font-size: 35px;
	font-style: normal;
	font-weight: 500;
}

.content_line{
	position: absolute;
	left:120px;
	width: 1px;
	height: 7000px;
	background-color: black;
	z-index: 999;
}
.content_body{
	position: absolute;
	left: 232px;
	top: 13px;
	z-index: 999;
}
.content_image{
	position:absolute;
	left:154px;
	top:272px;
	width:816px;
	height:322px;
	background-color: gray;
	z-index: 999;
}
.content_link{
	position:absolute;
	left:154px;
	top:618px;
	width:365px;
	height:32px;
	background-color: white;
	z-index: 999;
	border-bottom:3px solid black; 
}

.content_link:hover{
	border-bottom:3px solid red; 
	z-index: 999;
}

.content_line:hover{
	background-color: green;
	z-index: 999;
}
.officer_name{
	transform: rotate(90.00deg);
	transform-origin:left top;
}

/* item_group */

.item_group {
	display: flex;
	flex-wrap: wrap; /* 折返し指定 */
	width:1050px ;
	min-width:900px ;
}

.item_box {
	position:relative;
	height:500px;
}
.item_box_c1 .item_box{
	width: calc(100% - 4%);
}
.item_box_c2 .item_box{
	width: calc(50% - 3%);
}
.item_box_c3 .item_box{
	width: calc(33.33% - 3%);
}
.item_box_c4 .item_box{
	width: calc(25% - 3%);
}
.item_box_c5 .item_box{
	width: calc(20% - 3%);
}
		
.item_name{
		position: absolute;
		left: 95px;
		top: 10px;
		transform: rotate(90.00deg);
		transform-origin: left top;
		z-index: 999;
}
.item_username{
	position: absolute;
	left: 350px;
	top: 25px;
	z-index: 999;
}
.item_title{
	position:absolute;
	left:350px;
	top:12px;
	width:297px;
	height:32px;
	z-index: 999;
}
.item_line{
	position: absolute;
	left: 325px;
	top: 10px;
	width: 1px;
	height: 450px;
	background-color: black;
	z-index: 999;
}
.item_body{
  position: absolute;
  left: 350px;
  top: 60px;
  width: 80%;
  height: 90px;
  z-index: 999;
}
.item_image{
	position: absolute;
	top: 10px;
	width: 270px;
	height:380px;
	left: 90px;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index: 999;
	background-color: ;
}

.item_image img{
	width: 270px;
	height: 380px;
  object-fit: scale-down;
  object-position:center top;
}

.item_link{
	position: absolute;
	left: 50%;
	right: 10px;
	top: 120px;
	width: 30%;
	height: 32px;
	z-index: 999;
}
/*
.item_line:hover{
	background-color: green;
	z-index: 999;
}
*/
.officer_name{
	transform: rotate(90.00deg);
	transform-origin:left top;
}
html {
  height: 100%; /* required */
}
body {
  margin: 0px;
  display: flex; /* required */
  flex-direction: column; /* required */
  height: 100%; /* required */
}
header {
  height: 112px;
}
main {
  flex-grow: 0; /* required */
}
footer {
  height: 410px;
}
.login_error{
	position: absolute;
	left: 212px;
	top: 96px;
	z-index: 999;
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 16px;

	/* identical to box height, or 114% */
	letter-spacing: 0.07em;

	/* 3/accent */
	color: #BC2C27;
}