@charset "utf-8";
/*Theme Name: AGKチャレンジ-common
Description: エイジェックチャレンジのテーマです。
Author: エイジェック広報部
License: Copyright AGEKKE GROUP All Rights Reserved.*/

/*--▼▼▼2024-06▼▼▼--*/
.edit-pc {display:block;}
.edit-sp {display:none;}
@media only screen and (max-width:769px){
.edit-pc {display:none;}
.edit-sp {display:block;}
}

/*--c-fix--*/
.c-fix { zoom: 1; }
.c-fix:before,
.c-fix:after { content: ""; display: table; }
.c-fix:after { clear: both; }
.flo-l {float:left;}

/*--幅--*/
.w-100per, .w-90per, .w-80per, .w-50per, .w-20per, .w-15per, .w-10per {
display:block;
/*background:#ccc;*/
}
.w-100per {width:100%;}
.w-90per {width:94%; background:#fff; margin:0 auto;}
.w-80per {width:80%;}
.w-50per {width:50%; margin:0 auto;}
.w-20per {width:20%;}
.w-15per {width:15%;}
.w-10per {width:10%;}

/*--▼70%から90%--*/
.w70-w90per {width:70%;}
@media only screen and (max-width:769px){
.w70-w90per {width:90%;}
}
/*--▼80%から100%--*/
.w80-w100per {width:80%;}
@media only screen and (max-width:769px){
.w80-w100per {width:100%;}
}
/*--▼100%から70%--*/
.w100-w70per {width:100%; display:block;}
@media only screen and (max-width:769px){
.w100-w70per {width:70%;}
}
/*--▼100%から50%--*/
.w100-w50per {width:100%; display:block;}
@media only screen and (max-width:769px){
.w100-w50per {width:50%;}
}

.w15-30per img{width:15%; display:inline-block;}
@media screen and (max-width: 769px){
.w15-30per img{width:30%;}
}

/*--▼装飾-下線--*/
.bod-btm-gray, .bod-btm-sky, .bod-btm-green, bod-bottom-ora {
padding: 0 0 5px 0;
}
.bod-btm-gray {border-bottom:2px solid #999;}
.bod-btm-sky {border-bottom:2px solid #1e90ff;}
.bod-btm-green {border-bottom:2px solid #006400;}
.bod-btm-ora {border-bottom:2px solid #ff6600; width:100%;}

.bod-marker {
background: linear-gradient(transparent 60%, orange 30%);
display: inline;
}

/*--位置--*/
.mar-0-auto {width;100%; margin:0 auto;}
.text-l{text-align:left;}
.text-c {text-align:center;}
.text-lc{text-align:left;}
@media only screen and (max-width:769px){
.text-lc{text-align:center;}
}

.box-sd > p, .box-sd li{
box-shadow : 0px 4px 8px 0px rgba(0,0,0,0.3);
-webkit-box-shadow : 0px 4px 8px 0px rgba(0,0,0,0.3);
-moz-box-shadow : 0px 4px 8px 0px rgba(0,0,0,0.3);
}

/*--▼line--*/
p.line {
background-color: #00b900;
color: #fff;
border-radius: 30px;
font-size: 14px;
width: 55%;
text-align: center;
}
p.line a {
color: #fff;
padding: 1.5% 2%;
display: block;
}
@media screen and (max-width: 768px){
p.line {
font-size: 10px;
width: 63%;
}
p.line a {
padding: 2.5% 2%;
}
}

/*--font--*/
.font-large {font-size:2em;}
.font-large-l {font-size:2.8em;}
.font-large-ll {font-size:3.0em;}
.font-l {font-size:2.2em;}

.font-08 {font-size:0.8em;}
.font-12 {font-size:1.2em;}
.font-14 {font-size:1.4em;}
.font-16 {font-size:1.6em;}
.font-18 {font-size:1.8em; text-decoration:none;}
.font-20 {font-size:2.0em;}
.font-22 {font-size:2.2em;}

.col-red {color:#cc0066;}
.col-blue {color:#136ac4;}
.col-ora {color:#ff8c00;}
.col-pink {color:#db5798;}
.col-white {color:#fff;}
.col-green-2 {color:#008d6c;}
.bold {font-weight:bold!important;}

.text-trim-blk {
text-shadow:#000 2px 2px 0px,
#000 -2px 2px 0px,
#000 2px -2px 0px,
#000 -2px -2px 0px;
}
.text-trim-white {
text-shadow:#fff 2px 2px 0px,
#fff -2px 2px 0px,
#fff 2px -2px 0px,
#fff -2px -2px 0px;
}

.text-sd {
text-shadow:black 1px 1px 2px, black -1px 1px 2px,
black 1px -1px 2px, black -1px -1px 2px;
}

/*--▼icon-font--*/
.fa-phone {
transform: rotate(100deg);
margin:0 0px 0 12px;
}

/*---明治安田imgトリミング--*/
.merit-trim img{
width:100%;
}
@media only screen and (max-width:769px){
.merit-trim img{
width: 68px;
height: 64px;
object-fit: cover;
object-position: left 0%; /*位置-横×縦*/
margin: 0 auto 0 0;
}
}

/*--▼z-index起点--*/
.rel {position:relative; z-index:0;}
.abs-lb, .abs-rt, .abs-cc {position:absolute;}
/*--▼左下--*/
.abs-lb {left: -10px; bottom:-10px; z-index: -1;}
/*--▼右上--*/
.abs-rt {right: -10px; top:-10px; z-index: -1;}
/*--▼center--*/
.abs-cc {
z-index: 1;
left: 50%;
top:50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
width:96%;
margin:0 auto;
}
/*--▲z-index--*/

/*--▼list--*/
.li-disc li{
list-style-type: disc;
list-style-position:outside;
vertical-align:top;
margin: 0px 0 10px 10px;
padding: 0 0 0 2px;
}
/*.li-disc li:last-child { border-bottom:none; }*/
@media only screen and (max-width:640px) {
.li-disc li:last-child {
border-bottom:1px dotted #fff;
}
}
.li-decimal li{
list-style-type: decimal;
list-style-position:outnside;
vertical-align:top;
margin: 0px 0 10px 20px;
padding: 0 0 0 5px;
}

.fukidashi {
position: relative;
display: inline-block;
margin: 0 0 10px 0;
padding: 0 0px;
width: 90px;
height: 90px;
line-height: 90px;
text-align: center;
color: #FFF;
font-size: 14px;
font-weight: bold;
background: #70a6ff;
border-radius: 50%;
box-sizing: border-box;
text-shadow:none;
}

.fukidashi:before {
content: "";
position: absolute;
bottom: -25px;
left: 50%;
margin-left: -15px;
border: 15px solid transparent;
border-top: 15px solid #70a6ff;
z-index: 0;
}

/*--▼bg--*/
.bg-gray, .bg-navy, .bg-sky, .bg-green, .bg-green-2, .bg-cream, .bg-ora, .bg-line {
display:block;
padding:3px 4px;
border-radius:3px;
/*margin:0 0 10px 0;*/
}
.bg-gray {background:#f1f1f1;}
.bg-navy {background:#043c78; color:#fff;}
.bg-sky {background:#1e90ff; color:#fff;}
.bg-green {background:#006400; color:#fff;}
.bg-green-2 {background:#008d6c; padding:10px; border-radius:0;}
.bg-cream {background:#fdf5e6; color:#ff8c00;}
.bg-ora {background:#ff8c00; color:#fff;}
.bg-line {background:#00b900; color:#fff;}
/*--▼lnikあり--*/
.bg-sky a{background:#1e90ff; color:#fff;}
.bg-line a{background:#00b900; color:#fff;}
.bg-sky a:hover, .bg-line a:hover{
opacity:0.2;
filter:alpha(opacity=20);
transition: all  0.6s ease;
}
/*--memphis柄--*/
.bg-01-y {background:url(img/bg-01-y.png) right bottom 50% no-repeat;}

/*--bg-色のみ--*/
.bg-col-white, .bg-col-gray, .bg-col-navy, .bg-col-sky {
display:inline-block;
padding:1px 4px;
border-radius:1px;
color:#fff;
}
.bg-col-white {background:#fff; color:#222;}
.bg-col-gray {background:#e4e4e4; color:#666;}
.bg-col-navy {background:#043c78;}
.bg-col-sky {background:#1e90ff;}

/*--▼lnikあり--*/
.bg-col-gray a, .bg-col-navy a{
color:#000;
}
.bg-gray a:hover, .bg-navy a:hover{
opacity:0.2;
filter:alpha(opacity=20);
transition: all  0.6s ease;
}



.bg-white {
width:100%;
display:block;
padding:18px 10px 1px 10px;
background:#fff;
margin:0 auto 40px auto;
}
.bg-white p{
margin:0 0 30px 0;
}


/*--▼table汎用--*/
.table-01 {
border-collapse: collapse;
/*border: solid 6px #fff;*/
font-size: 14px;
padding: 0;
vertical-align: baseline;
width:100%;
margin:0 auto 50px auto;
}
.table-01 tr, .table-01 td{
border:0;
padding:10px 6px 6px 6px;
}
.table-01 tr {
background: #fff;
}
.table-01 td {
border-bottom: 1px dotted #444;
}
.table-01 td:first-child{
border-top: 4px solid #99cc00;
border-bottom: 4px solid #99cc00;
font-size: 1.2em;
font-weight:bold;
color: #336633;
text-align:center;
background:#fcfcfc;
}
@media only screen and (max-width:769px){
/*.table-01 tr:nth-child(odd){background: #f9f9f9;}*/
.table-01 td {
width:100%;
display:block;
border:none;
padding:10px 8px 10px 8px;
}
.table-01 td:first-child {
text-align:left;
background:#fff;
border-top: 0px;
padding:14px 8px 2px 8px;
}
}
/*--table汎用--*/

/*--▼bg-チェック--*/
.bg-check-yellow, .bg-check-blue {
background-color: #fff;
background-position: 6px 6px;
background-size: 13px 13px;
padding:20px;
}
.bg-check-blue {
background-image: linear-gradient(90deg, #e1edf1 1px, transparent 1px), linear-gradient(#e1edf1 1px, transparent 1px);
border:1px solid #e1edf1;
}
.bg-check-yellow {
background-image: linear-gradient(90deg, #e9f1f7 1px, transparent 1px), linear-gradient(#e9f1f7 1px, transparent 1px);
border:1px solid #e9f1f7;
}

.bod-btm-green-y {
border-bottom: 3px solid #669933;
color:#669933;
padding:4px 0 2px 0;
font-weight:bold
}

/*--img-トリミング--*/
.img-trim-yoko img {
width: 100%;
height: 120px;
object-fit: cover;
}

/*--▼▼flexboxまとめ--*/
.flexbox-2, .flexbox-2-1, .flexbox-3-2, .flexbox-4, .flexbox-4-2, .flexbox-4-3, .flexbox-70-30 {
display: flex; /*--子要素は自動的にflex-item化--*/
flex-direction: row; /*--横並び--*/
flex-wrap: wrap; /*--画面幅に収まらない場合折り返す--*/
/*--縦の位置指定--*/
align-items:stretch;
align-content:space-between;
justify-content:center; /*水平方向の位置*/
width:100%;
max-width:1200px;
margin:0 auto 30px auto;
word-break:break-all;
/*background:rgba(30, 30, 40, 0.0);*/
}
/*--▼liまとめ--*/
.flexbox-2 li, .flexbox-2-1 li, .flexbox-3-2 li, .flexbox-4 li, .flexbox-4-2 li, .flexbox-4-3 li, .flexbox-70-30 li {
align-self:stretch;
display: flex;
flex-direction: column;
padding:14px 8px 4px 8px;
word-break:break-all;
/*margin:0;*/
/*border:1px solid #cc0066;*/
}
@media only screen and (max-width:769px) {
.flexbox-2 li, .flexbox-2-1 li, .flexbox-3-2 li, .flexbox-4 li, .flexbox-4-2 li, .flexbox-4-3 li, .flexbox-70-30 li {
padding:10px 5px;
}
}
/*--▼imgまとめ--*/
.flexbox-2 img, .flexbox-2-1 img, .flexbox-3-2 img, .flexbox-4 img, .flexbox-4-2 img, .flexbox-4-3 img, .flexbox-70-30 img {
width:100%;
display:block;
margin:5px auto;
}

/*--▼2列と2～1列--*/
.flexbox-2-1 li, .flexbox-2 li{
width:48%;
margin:0 4% 20px 0;
/*padding:4px;*/
background:rgba(255,255,255,0.8);
}
.flexbox-2 li:nth-child(2n + 0), .flexbox-2-1 li:nth-child(2n + 0){
margin:0px 0% 20px 0;
}
@media only screen and (max-width:769px) {
.flexbox-2-1 li, .flexbox-2-1 li:nth-child(2n + 0) {
display:block;
width:100%;
margin:0 0% 20px 0;
}
.flexbox-2-1 li:last-child{
margin:0 auto 20px auto;
}
}

/*--▼3列～2列--*/
.flexbox-3-2 li{
width:32%;
margin:0 2% 20px 0;
}
.flexbox-3-2 li:nth-child(3n + 0){margin:0 0% 20px 0;}
.flexbox-3-2 li:last-child {margin:0 0% 20px 0;}
@media only screen and (max-width:769px) {
.flexbox-3-2 li{
width:48%;
margin:0 4% 14px 0;
}
.flexbox-3-2 li:nth-child(3n + 0){margin:0px 4% 15px 0;}
.flexbox-3-2 li:nth-child(2n + 0){margin:0px 0% 15px 0;}
.flexbox-3-2 li:last-child {margin:0px 0% 15px 0;}
}

/*--▼4列--*/
.flexbox-4 li, .flexbox-4-2 li, .flexbox-4-3 li{
width:22%;
padding:8px 5px;
margin:0 4% 20px 0;
background:rgba(255,255,255, 0);
}
.flexbox-4 li:nth-child(4n + 0){margin:0px 0% 20px 0;}
.flexbox-4 li:last-child {margin:0 0% 20px 0;}
.flexbox-4-2 li:nth-child(4n + 0){margin:0px 0% 20px 0;}
.flexbox-4-2 li:last-child {margin:0 0% 20px 0;}
.flexbox-4-3 li:nth-child(4n + 0){margin:0px 0% 20px 0;}
.flexbox-4-3 li:last-child {margin:0 0% 20px 0;}
/*.flexbox-4 img, .flexbox-4-2 img, .flexbox-4-3 img {width:100%; display:block; margin:auto;}*/
@media only screen and (max-width:769px) {
.flexbox-4-2 li{
width:48%;
padding:6px 4px;
margin:0 4% 10px 0;
}
.flexbox-4-2 li:nth-child(2n + 0){margin:0 0% 15px 0;}
.flexbox-4-3 li{width:32%; margin:0 2% 15px 0;}
.flexbox-4-3 li:nth-child(3n + 0){margin:0px 0% 15px 0;}
.flexbox-4-3 li:nth-child(4n + 0){margin:0px 2% 15px 0;}
.flexbox-4-3 li:last-child {margin:0 0% 15px 0;}
}

/*--▼w70%とw30%--*/
.flexbox-70-30 li{
width:65%;
margin:0px 5% 40px 0;
align-self:stretch;
display: flex;
justify-content: center;
/*--▼要素中央-align-items--*/
align-items: center;
/*--▼要素中央-align-self--*/
/*align-self:center;*/
background:#cc0066;
}
.flexbox-70-30 li:last-child {
width:30%;
margin:0px 0% 40px 0;
background:#e6e6e6;
}
.flexbox-70-30 li> p{
margin:auto;
text-align:left;
background:#ccc;
}
@media only screen and (max-width:769px){
.flexbox-70-30 li, .flexbox-70-30 li:last-child{
width:100%;
display:block;
margin:0 0% 40px 0;
}
}

.pad-10 li{
padding:20px 5px 5px 5px;
}
/*--▲flex-box--*/

/*--▼▼flex-grow-01--*/
/*--全体外枠--*/
.flex-grow-01 {
width:100%;
max-width:1200px;
margin:0 auto 20px auto;
}

.flex-grow-01 .card {
display: flex;
}

/*--.flex-grow-01 .card .item a{ --*/
.flex-grow-01 .card .item {
display: flex;
flex-direction: column;
/*padding:10px 5px;*/
background: #fff;
/*height: 100%;*/
}
/*--box内要素-textなど--*/
.flex-grow-01 .ttl, .txt, .btn {
margin: 5px 0 5px;
padding: 8px 4px;
background: #fff;
line-height: 1.2em;
}
/*--タイトル--*/
.flex-grow-01 .ttl{
vertical-align:middle;
display:block;
justify-content: center;
align-items: center;
display: flex;
height:50px;
overflow:hidden;
background:#fff;
}
.flex-grow-01 .card .item .txt{
align-self:stretch;
display: flex;
flex-direction: column;
flex-grow: 1; /*--数値の意味ググる--*/
}
.flex-grow-01 .card .btn a{
margin-top: auto;
background:#fafafa;
display:block;
}


.bg-orange-100per {
width:100%;
background:orange;
background-image: url(img/orange.jpg);
background-size: cover;
background-attachment: fixed;
background-repeat: no-repeat;
}

.bod-1px-list li{border:1px solid #bbb;}
.bod-1px {border:1px solid #bbb;}
.pad-4px {padding:12px 6px 0 6px;}
.circle {border-radius:50%; background:#ccc; padding:4px;}
.opacity img {opacity: 0.2;}
.opacity img div, .opacity img p, .opacity span {opacity: 1.0;}

.mar-top-auto {margin-top:auto;}
.mar-auto {margin:0 auto;}

.pad-8 li {
padding:8px 8px;
background:ccc;
}

/*--▼btn ★内容 順序注意--*/
.btn-01 a, .btn-02 a, .btn-ora a {
vertical-align:middle;
display:block;
justify-content: center;
align-items: center;
width:90%;
/*height: 100%;*/
display: flex;
border-radius: 4px;
margin:10px auto;
}
.btn-01 a:hover, .btn-02 a:hover, .btn-ora a:hover {
opacity:0.6;
filter:alpha(opacity=60);
transition: all 0.6s ease;
}

.btn-01 a{
text-align: center;
color: #333;
border: solid 2px #888;
border-bottom: solid 4px #888;
font-size: 16px;
padding:2px 2px;
height: 100%;
overflow:auto;
}

.btn-02 a{
text-align: center;
color: #fff;
font-size: 16px;
padding:2px 2px;
width:80%;
background:orange;
}

.btn-ora a{
position:relative;
/*vertical-align:middle;*/
/*display:block;*/
width:80%;
margin:10px auto 10px auto;
padding:5px;
color:#fff;
font-size: 1.1em;
background:#ff8c00;
/*border-radius:4px;*/
}
/*--▼btn-三角icon--*/
.btn-ora a:after{
content: "";
position: absolute;
bottom: 50%;
right: 0px;
width: 1px;
height: 0;
padding:0 4px 0 0;
margin: -8px 1px;/*--icon位置--*/
border: 8px solid transparent; /*iconスタイル*/
border-left: 8px solid #fff; /*iconスタイル*/
}

.content-2025 {
width:70%;
max-width:1200px;
margin:0 auto;
background:rgba(255,255,255,0.2);
}
@media screen and (max-width: 1024px){
.content-2025 {
width:90%;
}
@media only screen and (max-width:769px){
.content-2025 {
width:94%;
}