@charset "UTF-8";
/* --- Google Fonts (筆記体 'Allura' を追加) --- */
@import url('https://fonts.googleapis.com/css2?family=Allura&family=Montserrat:wght@700;800;900&family=Noto+Sans+JP:wght@400;500;700&display=swap');
/* --- Google Fonts (WindSong, Kaushan Script, Homemade Apple を追加) --- */
@import url('https://fonts.googleapis.com/css2?family=WindSong:wght@400;500&family=Kaushan+Script&family=Homemade+Apple&family=Montserrat:wght@700;800;900&family=Noto+Sans+JP:wght@400;500;700&display=swap');
/* Table Of Contents
----------------------------------------

1. General
	1.a. Display
	1.b. Alignment
	1.c. Float
	1.d. Width
	1.e. Color
	1.f. Margin - Padding
	1.g. Font
2. Form
3. Button
4. Icon
5. Components
	5.a. Main head
	5.b. Heading
	5.c. Column
	5.d. Thumbnail
	5.e. News
	5.f. Page navi
	5.g. List
	5.h. Banner
6. Table

----------------------------------------*/


/* 1. General
---------------------------------------------------------------------------- */
/* 1.a. Display */
.hide { display: none !important; }
.show { display: block !important; }

/* 1.b. Alignment */
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

/* 1.c. Float */
.pull-left { float: left; }
.pull-right { float: right; }
.pull-center { margin: 0 auto; }
.clear { clear: both; }

/* 1.d. Width */
.w100 { width: 100px !important; }
.w120 { width: 120px !important; }
.w150 { width: 150px !important; }
.w292 { width: 292px !important; }
.w570 { width: 570px !important; }
.w610 { width: 610px !important; }
.w630 { width: 630px !important; }
.w680 { width: 680px !important; }
.w1012 { width: 1012px !important; }
.w1024 { width: 1024px !important; }

.max-w200 { max-width: 200px !important; }

/* 1.e. Color */
.text-blue { color: #3d47af !important; }
.text-red { color: #FF0004 !important; }
.bgc-blue { background-color:#e4f2fa !important; padding:20px !important;}
.bgc-gray { background-color:#e8eaec !important; padding:20px !important;}


/* 1.f. Margin - Padding */
.mt0 { margin-top: 0 !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }
.mt55 { margin-top: 55px !important; }
.mt60 { margin-top: 60px !important; }
.mt65 { margin-top: 65px !important; }
.mt70 { margin-top: 70px !important; }
.mt75 { margin-top: 75px !important; }
.mt80 { margin-top: 80px !important; }
.mt85 { margin-top: 85px !important; }
.mt90 { margin-top: 90px !important; }
.mt120 { margin-top: 120px !important; }

.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }

.mb-20 { margin-bottom: -20px !important; }
.mb-60 { margin-bottom: -60px !important; }

.pt0 { padding-top: 0 !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }
.pt35 { padding-top: 35px !important; }
.pt40 { padding-top: 40px !important; }
.pt45 { padding-top: 45px !important; }
.pt50 { padding-top: 50px !important; }
.pt55 { padding-top: 55px !important; }
.pt60 { padding-top: 60px !important; }
.pt65 { padding-top: 65px !important; }
.pt70 { padding-top: 70px !important; }
.pt75 { padding-top: 75px !important; }
.pt80 { padding-top: 80px !important; }
.pt85 { padding-top: 85px !important; }
.pt90 { padding-top: 90px !important; }
.pt120 { padding-top: 120px !important; }

.pr0 { padding-right: 0 !important; }
.pr5 { padding-right: 5px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }
.pr35 { padding-right: 35px !important; }
.pr40 { padding-right: 40px !important; }
.pr45 { padding-right: 45px !important; }
.pr50 { padding-right: 50px !important; }
.pr55 { padding-right: 55px !important; }
.pr60 { padding-right: 60px !important; }
.pr65 { padding-right: 65px !important; }
.pr70 { padding-right: 70px !important; }
.pr75 { padding-right: 75px !important; }
.pr80 { padding-right: 80px !important; }
.pr85 { padding-right: 85px !important; }
.pr90 { padding-right: 90px !important; }

.pl0 { padding-left: 0 !important; }
.pl5 { padding-left: 5px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }
.pl35 { padding-left: 35px !important; }
.pl40 { padding-left: 40px !important; }
.pl45 { padding-left: 45px !important; }
.pl50 { padding-left: 50px !important; }
.pl55 { padding-left: 55px !important; }
.pl60 { padding-left: 60px !important; }
.pl65 { padding-left: 65px !important; }
.pl70 { padding-left: 70px !important; }
.pl75 { padding-left: 75px !important; }
.pl80 { padding-left: 80px !important; }
.pl85 { padding-left: 85px !important; }
.pl90 { padding-left: 90px !important; }
.pl100 { padding-left: 100px !important; }
.pd10 { padding: 10px 15px !important;}

/* 1.g. Font */
.size-12 { font-size: 12px !important; }
.size-14 { font-size: 14px !important; }
.size-16 { font-size: 16px !important; }
.size-18 { font-size: 18px !important; }
.size-25{ font-size: 25px !important; }
.bold { font-weight: 700 !important; }
.Lh16 { line-height:1.6 !important;}
.Lh20 { line-height:2.0 !important;}


/* 2. Form
---------------------------------------------------------------------------- */
.custom-file {
	position: relative;
}

.custom-file input[type="file"] {
	display: inline-block;
	position: absolute;
	cursor: pointer;
	opacity: 0;
	width: 100%;
	height: 40px;
}

.custom-file .filename {
	font-size: 14px;
	border: 1px solid #c9ccc7;
	padding: 10px 16px;
	box-sizing: border-box;
	background-color: #f5f6f4;
	width: 480px;
	float: left;
}

.custom-file .button {
	float: right;
	height: 40px;
}

.custom-select {
	display: inline-block;
	position: relative;
	border: 1px solid #eaebea;
	background-color: #f5f6f4;
	margin-right: 5px;
	width: 100%;
}

.custom-select:after {
	content: "";
	width: 11px;
	height: 8px;
	background: url(../images/icons.png) no-repeat -189px -7px;
	z-index: 1;
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -4px;
}

.custom-select select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background-color: transparent;
	box-sizing: border-box;
	font-family: "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HiraKakuPro-W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, sans-serif;
	color: #000;
	font-size: 14px;
	padding: 8px 30px 8px 16px;
	width: 100%;
	outline: none;
}

.radio-list li {
	list-style: none;
	display: inline-block;
	vertical-align: middle;
	margin-right: 20px;
}

.radio-list label {
	display: inline;
}

.radio-list li input {
	margin: 0 5px 0 0;
	display: none;
}

.radio-list li .custom-radio {
	display: inline-block;
	vertical-align: middle;
	width: 28px;
	height: 28px;
	-webkit-border-radius: 14px;
	-moz-border-radius: 14px;
	border-radius: 14px;
	background-color: #f5f6f4;
	border: 1px solid #cacac9;
	margin-right: 8px;
	position: relative;
}

.radio-list li input[type=radio]:checked + label .custom-radio:before {
	content: "";
	width: 16px;
	height: 16px;
	position: absolute;
	left: 6px;
	top: 6px;
	background-color: #4d4d4d;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

.checkbox-list {
	list-style: none;
}

.checkbox-list li {
	display: inline-block;
}

.style-checkbox input,
.checkbox-list li input {
	display: none;
}

.style-checkbox label .custom-checkbox,
.checkbox-list li label .custom-checkbox {
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: middle;
	margin: -2px 9px 0 0;
	background: url(../../image/common/icons.png) no-repeat -83px -72px;
}

.style-checkbox input[type="checkbox"]:checked + label .custom-checkbox,
.checkbox-list li input[type="checkbox"]:checked + label .custom-checkbox {
	background-position: -111px -72px;
}

/* 3. Button
---------------------------------------------------------------------------- */
.button {
	display: inline-block;
	font-size: 17px;
	border: 2px solid #003592;
	background-color: transparent;
	color: #003592;
	font-weight: 500;
	text-align: center;
	padding: 16px 25px 16px 10px;
	-webkit-transition: all 400ms ease;
	-moz-transition: all 400ms ease;
	-o-transition: all 400ms ease;
	transition: all 400ms ease;
	cursor: pointer;
	width: 100%;
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	text-decoration: none;
}

.button-min {
	min-width: 358px;
	width: auto;
}

.button-arrow:after {
	content: "";
	background: url(../../image/common/icons.png) no-repeat -113px -2px;
	width: 9px;
	height: 14px;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -7px;
}

.btn-active .button,
.button:hover,
.button:focus,
.button:active {
	color: #ffffff;
	background-color: #003592;
	text-decoration: none;
	font-weight: 700;
}

.btn-active .button.button-arrow:after,
.button.button-arrow:hover:after,
.button.button-arrow:focus:after,
.button.button-arrow:active:after {
	background-position: -113px -21px;
}

.button-white {
	border-color: #fff;
	color: #fff;
}

.button-white:hover,
.button-white:focus,
.button-white:active {
	background-color: #fff;
	color: #003592;
}

.button-white.button-arrow:after {
	background-position: -113px -21px;
}

.button-white.button-arrow:hover:after,
.button-white.button-arrow:focus:after,
.button-white.button-arrow:active:after {
	background-position: -113px -2px;
}

.s-manage-button {
	padding-right: 190px;
	background-image: url('../../image/product/sports/button.png');
	background-repeat: no-repeat;
	background-position: 95% 50%;
}

/* 4. Icon
---------------------------------------------------------------------------- */
.ico:before {
	content: "";
	background-image: url(../../image/common/icons.png);
	background-repeat: no-repeat;
	display: inline-block;
	vertical-align: middle;
}

.ico-home:before {
	width: 12px;
	height: 15px;
	background-position: 0 0;
}

.ico-check:before {
	width: 18px;
	height: 12px;
	background-position: -127px -22px;
	margin-right: 8px;
}

.ico-arrow-left:before {
	width: 9px;
	height: 17px;
	background-position: -113px -2px;
	margin-right: 8px;
}

.ico-prev:before {
	width: 9px;
	height: 14px;
	background-position: -83px -46px;
}

.ico-next:before {
	width: 9px;
	height: 14px;
	background-position: -98px -46px;
}

/* 5. Components
---------------------------------------------------------------------------- */
/* 5.a. Main head */
.main-head {
	border-top: 1px solid #d1d2d6;
	border-bottom: 1px solid #d1d2d6;
	text-align: center;
	padding: 45px 0 38px;
	margin-bottom: 50px;
	min-width: 960px;
}

.main-head h1 {
	font-size: 30px;
	font-weight: 600;
	margin: 0;
}

.main-head-bg {
	background: url(../../image/bg-grid.png) repeat;
    
	background-position: center top;
	text-align: left;
	padding: 30px 0 36px;
	min-width: 960px;
}

.main-head-bg h1 {
	font-size: 30px;
	font-weight: 700;
	color: #fff;
    padding-left:50px;
}
.main-head-bg span {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
    padding-left:50px;
    line-height:36px;
}
/* 5.b. Heading */
.head-style-1 {
	font-size: 26px;
	font-weight: 600;
	position: relative;
	margin-bottom: 50px;
	padding-bottom: 11px;
}

.head-style-1:after,
.head-style-1:before {
	content: "";
	position: absolute;
	bottom: 0;
	height: 1px;
}

.head-style-1:before {
	width: 50px;
	left: 0;
	background-color: #00a4fa;
}

.head-style-1:after {
	width: calc(100% - 53px);
	left: 53px;
	background-color: #c6c6c6;
}

.icon-check {
    content: "";
    background: url(../../image/common/check_icon.png) no-repeat 0px 5px;
    vertical-align: middle;
    padding-left:40px;
}
h1.icon-sol01:before,
h1.icon-sol02:before,
h1.icon-sol03:before,
h1.icon-sol04:before,
h1.icon-sol05:before {
    content: "";
    line-height:2.0;
    vertical-align: middle;
    padding-left:65px;
}
h1.icon-sol01:before { background: url(../../image/solution/icon_01.png) no-repeat;}
h1.icon-sol02:before { background: url(../../image/solution/icon_02.png) no-repeat;}
h1.icon-sol03:before { background: url(../../image/solution/icon_03.png) no-repeat;}
h1.icon-sol04:before { background: url(../../image/solution/icon_04.png) no-repeat;}
h1.icon-sol05:before { background: url(../../image/solution/icon_05.png) no-repeat;}


.head-style-2 {
	font-size: 20px;
	color: #fff;
	font-weight: 600;
	background-color: #2a70a1;
	padding: 14px 20px 12px;
	margin-bottom: 50px;
}

.head-style-3 {
	font-size: 20px;
	font-weight: 600;
}

.head-style-4 {
	color: #003592;
	font-size: 16px;
	background-color: #e8eaec;
	padding: 10px 20px 7px;
	margin-bottom: 18px;
}

.head-style-5 {
	background-color: #4b5464;
	padding: 14px 28px 12px;
	margin-bottom: 50px;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
}

/* 5.c. Column */
.row {
/*	margin: 0 -15px;*/
}

.col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-1_3 {
	padding: 0 15px;
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.col-1_3 {
	width: 33.33333333%;
}

.col-1_4 {
	width: 25%;
}

.col-2 {
	width: 20%;
}

.col-3 {
	width: 30%;
}

.col-4 {
	width: 40%;
}

.col-5 {
	width: 50%;
}

.col-6 {
	width: 60%;
}

.col-7 {
	width: 70%;
}

.col-8 {
	width: 80%;
}

.col-a {
	width: 405px;
    padding:20px;
	float: left;
}
.col-a p.textA{
    padding: 10px;
}
.col-b {
	float: left;
    text-align:center;
    padding:0 17px;
}
.col-bg {
    background-color:#fef9e9;
    border:#dcdcdc 1px solid;
}
.col-ln {
    border:#dcdcdc 1px solid;
}

.table { display:table;}
.table-child { display:table-cell;}
/* 5.d. Thumbnail */
.thumb img {
	display: block;
	max-width: 100%;
}

.thumb .caption {
	font-size: 13px;
	line-height: 1.3;
	margin-top: 10px;
}


.img_thum { width:880px; margin:0 auto;}
.img_thum3 { float:left; padding-right:20px;}
.img_thum3 img { width: 270px; }
.img_thum3 span { display:block; text-align:center; font-size:11px; line-height:1.4;}
.img_thum4 { float:left; padding-right:20px;}
.img_thum4 img { width: 200px; float:left;}
.img_thum4 span { display:block; text-align:center; font-size:11px; line-height:1.4;}

/* 5.e. News */
.news-dl dd {
    background: url(../../image/common/bg-dash.gif) repeat-x left bottom;
    margin: -1.3em 0 13px 0;
    padding: 0 0 13px 132px;
}

/* 5.f. Page navi */
.page-navi ul {
	list-style: none;
	font-size: 0;
}

.page-navi ul li {
	display: inline-block;
	font-size: 16px;
	padding: 0 2px;
}

.page-navi ul li a {
	text-decoration: none;
	display: inline-block;
	color: #3c3736;
	background-color: #e8eaec;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
}

.page-navi ul li a:hover,
.page-navi ul li a:focus,
.page-navi ul li a:active {
	background-color: #4393cc;
	color: #fff;
}

.page-navi ul li.current a {
	background-color: #4393cc;
	color: #fff;
	font-weight: 700;
}

.page-navi ul li .ico-prev,
.page-navi ul li .ico-next {
	margin-right: -4px;
}

.page-navi ul li a:hover .ico-prev:before {
	background-position: -115px -46px;
}

.page-navi ul li a:hover .ico-next:before {
	background-position: -130px -46px;
}

/* 5.g. List */
.arrow-style {
	list-style: none;
}

.arrow-style li {
	padding: 0 0 10px 15px;
	position: relative;
}

.arrow-style li:before {
	content: "";
	position: absolute;
	left: 0;
	top: 3px;
	background: url(../../image/common/icons.png) no-repeat -113px -2px;
	width: 9px;
	height: 14px;
}

.list-style-1 {
	list-style: none;
}

.list-style-1 li {
	margin-bottom: 13px;
	position: relative;
	overflow: hidden;
}

.list-style-1 li:after,
.list-style-1 li:before {
	content: "";
	height: 100%;
	position: absolute;
	top: 0;
	z-index: -1;
}

.list-style-1 li:before {
	background-color: #1ba4f7;
	width: 300px;
	left: 0;
}

.list-style-1 li:after {
	background-color: #e4f2fa;
	width: 660px;
	right: 0;
}

.list-style-1 li .left,
.list-style-1 li .right {
	float: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 1.6;
}

.list-style-1 li .left {
	width: 300px;
	color: #fff;
	padding: 15px 20px 13px;
	font-weight: 700;
}

.list-style-1 li .left span {
	display: block;
	position: repeat;
	padding: 0 0 0 26px;
}

.list-style-1 li .left span:before {
	position: absolute;
	left: 20px;
	top: 20px;
}

.list-style-1 li .right {
	width: 660px;
	padding: 15px 20px 13px 33px;
}

/* 5.h. Banner */
.banner-style-2,
.banner-style-1 {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 15px 24px 20px 24px;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	position: relative;
  /*  border:#ccd7e9 solid 1px;
    background-color:#f2f6f8;*/
}

.banner-style-2:after,
.banner-style-1:after {
	content: "";
	height: 100%;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
	opacity: 0;
	filter: alpha(opacity=0);
	background: #fff;
	-webkit-transition: opacity 400ms ease;
    -moz-transition: opacity 400ms ease;
    -o-transition: opacity 400ms ease;
    transition: opacity 400ms ease;
}

.banner-style-1:hover:after,
.banner-style-2:hover:after {
	opacity: 0.3;
	filter: alpha(opacity=70);
}

.banner-style-1 {
	height: 150px;
}

.banner-style-2 {
	background-color: #f4f7fa;
	height: 150px;
	border: 1px solid #ccd7e9;
}

.banner-style-2 .title,
.banner-style-1 .title {
	font-size: 28px;
	font-weight: 400;
	margin-bottom: -5px;
	z-index: 2;
	position: relative;
}

.banner-style-1 .title {
	color: #fff;
}

.banner-style-2 p,
.banner-style-1 p {
	font-size: 18px;
	color: #000;
	z-index: 2;
	position: relative;
}

.banner-style-2 .more,
.banner-style-1 .more {
	position: absolute;
	left: 24px;
	bottom: 12px;
	font-size: 14px;
	color: #000;
	text-decoration: none;
	z-index: 2;
}

.banner-style-2 .icon01 {
	position: absolute;
	left: 30px;
	top: 53px;
    height:16px;
    background: #3d47af;
    color:#fff;
    font-weight:bold;
    font-size:12px;
    padding:3px 10px;
    text-align:center;
}
.banner-style-2 .new {
    background:#FFF;
    border:#FF0004 solid 2px;
    color:#FF0004;
    font-size:10px;
    font-weight:bold;
    padding:1px 5px;
    text-align:center;
    vertical-align: middle;
    margin-left:15px !important;
    margin-bottom:5px !important;
}
.banner-style-2 .case-text {
    width:600px;
    height:16px;
    font-size:14px;
    overflow:hidden;
    vertical-align: middle;
}
.banner-style-2 .case-text2 {
    width:600px;
    height:32px;
    font-size:14px;
    overflow:visible;
    vertical-align: middle;
	position: relative; bottom:12px;
}
.banner-style-2 .img-case {
	/*right: 15px;
	top: 50px;*/
	z-index: 2;
}
.banner-style-2 .img-case img {
   	position: absolute;
    max-width:300px !important;
    max-height:130px !important;
    top: 0;
    right: 15px;
    bottom: 0;
    margin: auto;

}
.banner-style-2 .more:before,
.banner-style-1 .more:before {
	content: "";
	background: url(../../image/common/icons.png) no-repeat -113px -2px;
	width: 9px;
	height: 17px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 7px;
}

.banner-style-1 .more {
	color: #fff;
}

.banner-style-1 .more:before {
	background-position: -113px -21px;
}

.clickable,
.clickableTarget {
	cursor: pointer;
}

/* 6. Table
---------------------------------------------------------------------------- */
table {
	width: 100%;
	text-align: left;
}

table caption {
	margin-bottom: 20px;
	text-align: left;
}

.table-style-1 tr {
	border-bottom: 1px solid #e6e6e6;
}
.table-style-1 tr.no-border {
	border-bottom: none;
}
.table-style-1 th,
.table-style-1 td {
	vertical-align: middle;
	padding: 18px 0 11px 20px;
	line-height: 1.6;
}
.table-style-1 tr .date,
.table-style-1 tr .conte {
	vertical-align: middle;
	padding: 5px 0;
	line-height: 1.0;
}
.table-style-1 tr .date { width:75px;}
.table-style-1 tr .conte { width:500px;}

.table-style-1 th {
	width: 202px;
}

.table-style-2 tr {
	border-top: 1px solid #e6e6e6;
}

.table-style-2 tr:last-child {
	border-bottom: 1px solid #e6e6e6;
}

.table-style-2 tr th {
	background-color: #4394cb;
	color: #fff;
	font-weight: 600;
	width: 14.375%;
	border-bottom: 1px solid #4394cb;
	line-height: 1.6;
}

.table-style-2 tr td {
	padding: 9px 18px;
	line-height: 1.6;
}

.table-style-2 tr .sub-title span,
.table-style-2 tr th span {
	display: block;
	border-top: 2px solid #fff;
	padding: 9px 10px 9px 20px;
}

.table-style-2 tr .wid-292 {
	width: 30.4167%;
}

.table-style-2 tr .sub-title {
	background-color: #e8eaec;
	width: 12.5%;
	padding: 0;
}

.table-style-2 tr .sub-title span {
	padding: 9px 5px;
	text-align: center;
}

.table-style-3 {
	margin-bottom: 42px;
}

.table-style-3 tr th,
.table-style-3 tr td {
	border: 1px solid #e1e1e1;
	padding: 12px 15px;
	vertical-align: top;
}

.table-style-3 tr th {
	padding: 12px 15px;
}

.table-style-3 tr th {
	border-right: 1px solid #c9c9c9;
	width: 254px;
}

.table-style-3 tr th label {
	float: left;
	padding: 8px 0 0;
}

.table-style-3 tr th em {
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	font-style: normal;
	background-color: #c70000;
	float: right;
	height: 20px;
	line-height: 20px;
	width: 46px;
	text-align: center;
	margin-top: 8px;
}

.table-style-4 th,
.table-style-4 td,
.table-style-4 tr {
	border: 1px solid #e6e6e6;
	vertical-align: middle;
	padding: 5px;
	line-height: 1.6;
}

.table-style-4 th {
	background-color: #4394cb;
	color: #fff;
	font-weight: 600;
    text-align: center;
}
.table-style-4 .w5 {
    width: 5%;
}
.table-style-4 .w7 {
    width: 7%;
}
.table-style-4 .w16 {
    width: 16%;
}
.table-style-4 .w40 {
    width: 40%;
}
.table-style-4 .Ac {
    text-align:center;
}
.table-style-4 .fc_red {
    color: #c70000;
}
.table-style-4 .bg_red {
	background-color: #f9fcff;
}

.table-style-5 {
    width:720px !important;
    margin:0 auto 50px !important;
}

.table-style-5 tr {
	border-bottom: 1px solid #e6e6e6;
}

.table-style-5 th,
.table-style-5 td {
	vertical-align: middle;
	padding: 8px 10px 5px;
	line-height: 1.6;
}

.table-style-5 th {
	width: 150px;
}


a.icon {
padding-right: 22px;
background: url(../../image/common/link_icon.png) no-repeat center right !important;
}

a.icon_blue {
padding-right: 22px;
background: url(../../image/common/link_icon_blue.png) no-repeat center right !important;
}
a.icon_pdf {
padding-right: 22px;
background: url(../../image/common/pdf_icon1.png) no-repeat center right !important;
}
a.icon_access {
padding-right: 22px;
background: url(../../image/common/access_icon.png) no-repeat center right !important;
}

/* Company */
td li {
	margin-left: 20px;
}

.g-recaptcha {
	margin-right:auto;
	margin-left:auto;
	text-align: center;
	width:300px;
	margin-top:20px;
  }
.item img {
  margin:auto;
  max-width: 80%; /* 親要素の幅を超えないように設定 */
  height: auto;
  display: block; /* 画像の下にできる余白を防ぐ */
}
/* ----- 企業情報ページのボタンレイアウト専用スタイル ----- */

/* company-page-menuの中の.rowだけに適用 */
.company-page-menu .row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

/* company-page-menuの中の.col-1_3だけに適用 */
.company-page-menu .row .col-1_3 {
  flex: 1 1 calc(50% - 10px);
  width: calc(50% - 10px);
  margin-bottom: 0;
}

/* company-page-menuの中の.btn-activeだけに適用 */
.company-page-menu .row .btn-active a {
  background-color: #004488;
  color: #ffffff;
  border-color: #004488;
}
/*20251128 d.sugiyama 追加*/
