@charset "UTF-8";
.main-area{
	max-width: 1000px;
	margin: 200px auto 0;
	text-align: center;
}
.main-area_3{
	max-width: 1000px;
	margin: 30px auto 0;
	text-align: center;
    padding: 0 10px;	
}
.main-area_2{
	width: 1000px;
	margin: 100px auto 0;
	text-align: center;
}
.mv-area{
	margin: 80px 0 0;
	text-align: center;
}
.point-mv-area{
	margin: 90px 0 0;
	text-align: center;
}
#no-domain,#transfer,#no-transfer{
	padding-top: 150px;
    margin-top: -150px;
}

.af_partner_plan{
	background-color: #efefef;
	text-align: center;
	font-weight: bold;
}
.af_partner_plan p{
	display: inline-block;
	width: auto;
	text-align: center;
	padding: 10px 0;
}
.point_mv{
	text-align: center;
}
.partner_mv_pc {
	display: block;
	background-image: url("../images/bg-ditto.png");
}
.partner_mv_pc_02{
	display: block;
	background-color: #FFFFFF;
}
.partner_mv_pc_03{
	display: block;
	background: rgb(186,220,38);
	background: -webkit-linear-gradient(left, rgba(186,220,38,1) 0%, rgba(186,220,38,1) 48%, rgba(78,194,221,1) 49%, rgba(78,194,221,1) 100%);
	background: -o-linear-gradient(left, rgba(186,220,38,1) 0%, rgba(186,220,38,1) 48%, rgba(78,194,221,1) 49%, rgba(78,194,221,1) 100%);
	background: linear-gradient(to right, rgba(186,220,38,1) 0%, rgba(186,220,38,1) 48%, rgba(78,194,221,1) 49%, rgba(78,194,221,1) 100%);
	border-top: solid 20px #333;
    border-bottom: solid 20px #333;
	
}
.partner_mv_pc_03 img {
	max-width: 100%;
	margin: 0 auto;
}
.partner_mv_sp , .partner_mv_sp_02 , .partner_mv_sp_03{
	display: none;
}
.icon_area{
	display: none;
}
.icon_area_2{
	display: block;
	width: 90%;
	margin: 0 auto 50px;
	overflow: hidden;
}
.icon_area_2 .left{
	width: 45%;
	float: left;
	margin: 0 auto;
}
.icon_area_2 .right{
	width: 45%;
	float: right;
	margin: 0 auto;
}
.icon_area_2 .left p{
	background-color: #badc26;
	padding: 15px;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: bold;
	border-radius: 100px;
	margin-bottom: 15px;
}
.icon_area_2 .right p{
	background-color: #4cc2dc;
	padding: 15px;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: bold;
	border-radius: 100px;
	margin-bottom: 15px;
}
.icon_area_2 .left a:hover ,.icon_area_2 .right a:hover{
	opacity: 0.8;
}
.breadcrumbs {
    background-color: #1c42ae;
}
.breadcrumbs li , .breadcrumbs li a{
	color: #FFFFFF;
}
h1{
	font-size: 35px;
	font-weight: bold;
	color: #badc26;
}

h2 {
	font-size: 25px;
	font-weight: bold;
    border-bottom: dotted 5px #325bf8;
	padding: 5px 10px;
	display: inline-block;
	text-align: center;
	word-break: break-all;
	margin: 10px;
	color: #325bf8;
	font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
}

h3{
	padding: 10px 0 10px 20px;
	margin: 10px 10px 30px;
	color: #325bf8;
	position: relative;
	font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
}
h3::before{
	content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 8px;
    height: 80%;
    transform: translateY(-50%);
    background-color: #3366ff;
    border-radius: 4px;
}
h4{
	border: solid 1px #333;
	border-radius: 3px;
	padding: 5px 10px;
	display: inline-block;
	margin: 10px;
	font-size: 20px;
}
p{
	font-size: 16px;
}
b {
	font-size: 16px;
}
.tab{
	font-weight: bold;
	margin: 10px;
}
.graph-h3{
	width: 70%;
	margin: 50px auto 20px;
}
.graph-text{
	font-weight: normal;
	text-align: left;
	font-size: 17px;
}

.element-box {
	margin: 50px auto 100px;
    text-align: left;
	width: 90%;
}
.element-box-90 p{
	width: 90%;
	margin: 0 auto;
	font-size: 16px;
}
.element-box p{
	width: 70%;
	margin: 0 auto;
	font-size: 16px;
}
.element-box ol{
	width: 90%;
	margin: 0 auto;
}
.element-box_02{
	margin: 50px auto;
	text-align: left;
	}

table{
	width: 70%;
	margin: 0 auto;
}
table , td, th {
	border-collapse: collapse;
	font-size: 15px;
	font-weight: bold;
	line-height: 1.5rem;
	vertical-align: middle;
}
td, th {
	padding: 10px;
	width: 30px;
	height: auto;
	text-align: center;
}
th {
	background: #1991ac;
	color: #fff;
}
.contents-table tr{
	margin: 10px 0;
	padding: 10px 0;
}
.contents-table tr td{
	padding: 20px 10px;
	font-weight: normal;
}
#application_home{
	width: 70%;
	margin: 0 auto;
}
#application_home p{
	width: 100%;
}
#application_home .element-box table{
	border: none;
	width: 100%;
	border-collapse: separate;
    border-spacing: 10px 20px;
}
#application_home .element-box table td{
	text-align: center;
}
#application_home .element-box table td input{
	background-color: #FFFFFF;
	width: 95%;
	font-weight: bold;

}
input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #ffffff inset;
}
#application_home .element-box table th{
	width: 30%;
}
.btn-area{
	background-color: #badc26;
	padding: 100px 0 200px;
	margin: 100px 0 0;
}
.btn-area .contact-btn{
	width: 500px;
	margin: 0 auto;
}
.btn-area .contact-btn a {
    color: #ff6600;
    background-color: #ffffff;
    padding: 20px 50px;
    margin: 10px;
    border: solid 3px #ff6600;
    border-radius: 50px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    line-height: 1.6rem;
    display: inline-block;
    width: 400px;
	position: relative;
}
.btn-area .contact-btn a::after{
	content: "\e5cc";
    font-family: 'Material Icons';
    font-weight: normal;
    font-style: normal;
    letter-spacing: normal;
    text-transform: none;
    display: inline-block;
    white-space: nowrap;
    word-wrap: normal;
    direction: ltr;
    -webkit-font-feature-settings: 'liga' 1;
    font-feature-settings: 'liga' 1;
    -webkit-font-smoothing: antialiased;
    vertical-align: middle;
    font-size: 1.5625rem;
    font-weight: 500;
    color: #f26100;
    position: absolute;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
	right: 25px;
}
.send_btn{
	text-align: center;
	margin: 20px auto;
    position: relative;
    width: 480px;
}
.send_btn input{
	background-color: #ff6600;
	padding: 25px 30px 25px 25px;
	font-size: 25px;
	border-radius: 100px;
	display: inline-block;
	font-weight: bold;
	color: #FFFFFF;	
	width: 100%;
	border: solid 4px #1c42ae;
	border-bottom: solid 10px #1c42ae;
	font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 700;
}
.send_btn input:hover{
	cursor: pointer;
	cursor: hand;
	border-bottom: solid 4px #1c42ae; 
	border-top: solid 10px #1c42ae;
}
.arrow-icon::after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ff6600;
    border-right: 2px solid #ff6600;
    transform: rotate(45deg);
    right: 30px;
    top: 45%;
}
.arrow-icon_2::after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(45deg);
    right: 30px;
    top: 42%;
}
.name{
	background-color: #b0e6f2;
	color: #333333;
}
.even {
	background: #fbf8f0;
}
.odd {
	background: #fefcf9;
}

.bg_e2f6fb{
background-color: #e2f6fb;
margin: 120px 0 0;	
}
.domain-serch {
	text-align: center;
}

.search-area{
	padding: 60px 0 100px;
    text-align: center;
}
.search-box{
	background-color: #fff;
	border: solid 2px #a1cdd7;
    width: 480px;;
    height: 50px;
	font-size: 28px;
    margin: 10px 0;
	padding: 0 10px
}
.search-btn{
	background-color: #ff6600;
    padding: 11px 35px;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
	border-radius: 50px;
	border-bottom: 3px solid #d95700;
}
.search-btn:hover{
	cursor: pointer;
	cursor: hand;
}

.white-box{
	background-color: #fff;
	padding: 20px 0;
}
.link-deco{
	color: #3539FF;
}
small{
	font-weight: normal;
}
.image-capture{
	border: solid 1px #333;
	width: 100%;
	margin: 20px auto;
}
.image-capture img{
	width: 100%;
}
ol li{
	list-style: decimal;
	margin-bottom: 20px;
	line-height: 1.5rem;
	font-size: 16px;
}
.breadcrumbs li{
	margin: 0px;
}
.lead-text{
	font-size: 16px;
	width: 100%;
	margin: 20px auto 50px;
	text-align: center;
	
}
.lead-text-point{
	font-size: 16px;
	width: 100%;
	margin: 20px auto 50px;
	text-align: center;
}
.support-btn_01, .support-btn_02,.support-btn_03{
	text-align: center;
}
.support-btn_01 li{
	color: #fff;
}
.support-btn_02 li{
	color: #4cc2d6;
}
.support-btn_03{
}

.support-btn_01 a{
    background-color: #4870fd;
    padding: 20px;
    width: 300px;
    margin: 10px;
    border-radius: 50px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    display: inline-block;
    border: solid 4px #1c42ae;
    border-bottom: solid 7px #1c42ae;
	position: relative;
}
.support-btn_02 a{	
	background-color: #fff;
	padding: 20px;
	width: 300px;
	margin: 10px;
	border: solid 3px #4cc2dc;
	border-radius: 50px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	box-shadow: 0px 3px 3px 0px rgb(0 0 0 / 10%);
}
.support-btn_03 a{
	color: #fff;
    background-color: #ff6600;
	padding: 20px;
	margin: 10px;
	border-radius: 50px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.6rem;
	display: inline-block;
	width: 68%;
	box-shadow: 0px 3px 3px 0px rgb(0 0 0 / 10%);
}
.contact-btn{
	text-align: center;
}
.contact-btn a {
	color: #ff6600;
    background-color: #ffffff;
	padding: 10px 20px;
	margin: 10px;
	border: solid 3px #ff6600;
	border-radius: 50px;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 1.6rem;
	display: inline-block;
	width: 30%;
}
.support-btn_03 a small{
	color: #fff;
}
.support-btn_01 a:hover{
	opacity: 0.8;
	box-shadow: none;
	border-bottom: solid 4px #1c42ae;
	border-top: solid 10px #1c42ae;
}
.support-btn_02 a:hover{
	opacity: 0.8;
	box-shadow: none;
}
.support-btn_03 a:hover{
	opacity: 0.8;
	box-shadow: none;
}
.element-box .left-text , .element-box_02 .left-text{
	text-align: left;
    width: 95%;
	font-size: 16px;
    margin: 10px auto;
}
.anchor_link_area{
	background-color: #fff9ad;
	padding: 40px 0;
}

.p-common-sub-kv {
    height: 0px;
    width: 100%;
    margin-top: 120px;
}
.p-common-sub-kv_02 {
    height: 0px;
    width: 100%;
    margin-top: 160px;
}
.p-common-breadcrumbs_02 {
    position: absolute;
    bottom: 10px;
    right: 0;
    letter-spacing: -.4em;
}
.p-common-sub-kv__wrap {
    width: calc(100% - 200px);
    height: 40%;
    margin: 0 auto;
    position: relative;
}
.p-common-breadcrumbs__item .c-icon {
    color: #badc26;
    font-size: 1.125rem;
}
.left-red-text{
	width: 90%;
	margin: 0 auto;
	line-height: 1.5em;
	color: red;
	font-size: 16px;
}
.left-red-text a{
	color: red;
	text-decoration: underline;
}
.end-text{
	color: red;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    margin-bottom: 50px;
    background-color: #ffc;
    padding: 30px;
}
.partner_text{
	background-color: #fff6a1;
	text-align: left;
	padding: 30px;
	font-size: 18px;
	margin-bottom: 100px;
	
}
.partner_text strong{
	color: #ff6600;
	font-size: 25px;
}
.partner_box{
	margin-bottom: 100px;
	font-size: 18px;
    display: flex; /* Flexboxを有効にする！ */
    gap: 10%; /* カラム間の隙間（現在の45%+45%だと10%が隙間になる） */
    align-items: stretch; /* これで子要素の高さを自動で揃える！(デフォルト値) */
    flex-wrap: wrap; /* 画面幅が狭くなったら折り返す！ */
}
#business-partner{
    flex-basis: 45%; /* Flexアイテムのベース幅を設定（元の45%） */
    max-width: 45%; /* 幅の上限を確保 */
}
#business-partner img{
	width: 90%;
}
.sales-img :hover , .af-img :hover{
	opacity: 0.8;
}
.business-text{
	background-color: #fff;
	padding: 20px;
	text-align: left;
}

.business-text h3{
	color: #325bf8;
}

.business-text h2{
	color: #ff6600;
	text-align: center;
	border-bottom: dotted 5px #ff6600;
	line-height: 1.2em;
	margin-bottom: 30px;
}
.business-text p{
	padding-left: 20px;
	padding: 0 0 20px 20px;
}

#af-partner{
    flex-basis: 45%; /* Flexアイテムのベース幅を設定（元の45%） */
    max-width: 45%; /* 幅の上限を確保 */
}
#af-partner img{
	width: 90%;
}
.af-text{
	background-color: #fff;
	padding: 20px;
	text-align: left;
}
.af-text p{
	padding: 0 0 20px 20px;
}

.af-text h3{
	color: #325bf8;
}

.af-text h2{
	color: #ff6600;
	text-align: center;
	border-bottom: dotted 5px #ff6600;
	line-height: 1.2em;
	margin-bottom: 30px;
}
.business-box, .af-box{
	border: solid 4px #1c42ae;
	border-radius: 20px;
	background-color: #325bf8;
	padding: 50px 0;
    height: 80%; /* 親（#business-partnerなど）の高さいっぱいに広げる */
}
.l-global-footer {
    background-color: #fff;
    height: 160px;
    padding: 0 100px;
    line-height: 140px;
	width: auto;
}
.l-footer {
    background-color: #000;
    overflow: hidden;
    width: 100%;
    border-top: solid 50px #1c42ae;
}
#sozai-area{
	border: solid 4px #333;
	border-radius: 20px;
	background-color: #badc26;
    padding: 30px 0;
	margin: 80px 0 50px;
} 
.sozai-box{
	background-color: #fff;
	overflow: hidden;
	margin-top: -50px;
}
.sozai-box .left{
	float: left;
	width: 30%;
	margin: 20px 0 15px 50px;
}
.sozai-box .left img{
	width: 65%;
}
.sozai-box .right{
	float: right;
	width: 55%;
	margin-top: 30px;
}
.sozai-box .right p{
	text-align: left;
	font-size: 18px;
}
.sozai-box .right p span{
	font-size: 30px;
	font-weight: bold;
	
}
.btn a{
	border: solid 3px #ff6600;
	border-radius: 100px;
	background-color: #fff;
	font-weight: bold;
	color: #ff6600;
	font-size: 30px;
	padding: 20px 10px;
	width: 320px;
	display: inline-block;
	margin: 40px 0;
	position: relative;
}
.btn a:hover{
	opacity: 0.8;
}
.frow_mv{
	margin-bottom: 10px;
}
.send-completely-area,.error-area{
	font-size: 30px;
    text-align: center;
    font-weight: bold;
    border-top: solid 30px #4cc2dc;
    padding: 60px 10px 0;
    margin-bottom: 100px;
}
.error-area p{
	color: #FF0004;
}
.send-completely-area p span{
	font-size: 20px;
	font-weight: normal;
}
#af_recruitment,#a8,#vc,#moshimo,#business_recruitment,#business_application,#business_application,#business_reward,#application_home,#business-partner,#af-partner,#recruitment,#application,#sozai,#sozai,#vps_A,#vps_B,#ubuntu,#maincraft,#office,#sozai-area,#manual{
	padding-top: 80px;
	margin-top: -80px;
}
.vps #pageTop a{
	 background-color: #badc26;
}
.p-vps-bg--light {
    background-color: #FFFFFF;
}
.l-local-header.active .l-local-header__logo {
    width: 200px;
    line-height: 80px;
}
.gray-table{
	width: 95%;
	border: none;
	border-collapse: separate;
    border-spacing: 5px 0px;	
}
.gray-table th {
	width: 30%;
}
.gray-table td {
	width: 65%;
}
.gray-table th , .gray-table td{
	background-color: #efefef;
	color: #333333;
	border: none;
	padding: 20px 10px;
}
.rental-table th {
	background-color: #4cc2dc;
	color: #333333;
}
.table-box{
	border-radius: 25px;
	border: solid 4px #1c42ae;
	width: 70%;
	margin: 0 auto;
	overflow: hidden;
}
.storage-table{
	width: 100%;
}
.storage-table-wide{
	width: 90%;
	margin: 0 auto;
}
.storage-table th , .storage-table td , .storage-table-wide th , .storage-table-wide td , .rental-table th , .rental-table td{
	border: solid 1px #6c8bff;
}
.storage-table th , .storage-table-wide th{
	background-color: #325bf8;
	color: #FFFFFF;
}
.storage-table .name , .storage-table-wide .name , .rental-table .name{
	background-color: #fffbbd;
	color: #333333;
}
.storage-table .bdcbfd{
	background-color: #bdcbfd;
	color: #333333;
}
.dl_btn{
	width: 80%;
	margin: 0 auto 100px;
	border: solid 3px #f26100;
	text-align: center;

}
.dl_btn a ::before{
	content: url("img/sozai/icon_01.png");
  	vertical-align: middle;
 	transform: scale(0.1);
	margin-right: 10px;	
}

.dl_btn a :hover::before {
	content: url("img/sozai/icon_03.png");
}

.dl_btn a p{
	font-size: 30px;
	font-weight: bold;
	color: #f26100;
	padding: 25px 0;
}
.dl_btn :hover{
  background: #f26100;
  color: #fff;
}
.image{
	width: 95%;
	margin: 0 auto;
}
.image ul {
	overflow: hidden;
}
.image ul .left{
	float: left;
	display: inline-block;
	}
.image ul .right{
	float: right;
	display: inline-block;
	}
.image ul li , .image_02 ul li {
	border: solid 1px #333333;
	margin: 20px;
	cursor: pointer;
  	max-width: 410px;
  	position: relative;
}
.image{
	cursor: pointer;
	position: relative;
}
.image_02{
	width: 100%;
	text-align: center;
}
.image_02 h3{
	text-align: left;
}

.hover-mask {
  align-items: center; /* テキストの中央揃え */
  background: rgba(0, 0, 0, .5); /* マスクの色(黒の50%) */
  bottom: 0;
  color: #fff; /* テキストの色 */
  display: flex; /* テキストの中央揃え */
  height: auto;
  justify-content: center; /* テキストの中央揃え */
  left: 0;
  opacity: 0; /* 最初は透明(非表示) */
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity .6s ease; /* ゆっくりopacityのみへ変化させる */
  width: 100%;
}
.hover-mask_02 {
  align-items: center; /* テキストの中央揃え */
  background: rgba(0, 0, 0, .5); /* マスクの色(黒の50%) */
  bottom: 0;
  color: #fff; /* テキストの色 */
  display: flex; /* テキストの中央揃え */
  height: auto;
  justify-content: center; /* テキストの中央揃え */
  left: 0;
  opacity: 0; /* 最初は透明(非表示) */
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity .6s ease; /* ゆっくりopacityのみへ変化させる */
  width: 100%;
}
.hover-mask:hover ,  .hover-mask_02:hover{
  opacity: 1; /* hoverしたら透過しない(表示させる) */
}
.hover-mask img{
  width: 20%; /* テキストを横幅いっぱいにならないようにする */
}
.hover-mask_02 img{
	max-width: 100%;
}
#vps_A .image_02 ul , #vps_B .image_02 ul , #vps_C .image_02 ul , #ubuntu .image_02 ul , #maincraft .image_02 ul , #office .image_02 ul{
	width: 100%;
}
#vps_A .image_02 ul li , #vps_B .image_02 ul li , #vps_C .image_02 ul li , #ubuntu .image_02 ul li , #maincraft .image_02 ul li , #office .image_02 ul li{
	border: none;
	max-width: 100%;
	margin: 20px 20px 100px;
}


.image{
	text-align: center;
	margin-bottom: 100px;
}
.banner-title{
	background-color: #efefef;
	padding: 20px;
	margin: 20px 0 50px;
	text-align: center;
	font-size: 25px;
	font-weight: bold;
}
#pageTop a {
    display: block;
    z-index: 999;
    padding: 0;
    width: 80px;
    height: 40px;
    color: #325bf8;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    background-color: #ff6600;
}
#pageTop i {
    padding-top: 10px;
    color: #325bf8;
}
.eligibility li{
	list-style: disc;
	line-height: 1.5em;
    margin-left: 20px;	
}
#postCnt {
    width: 95%;
    margin: 0 auto;
}
#postCnt ul {
    display: flex;
    margin: 40px 0 20px 0;
    padding: 12px 0;
}
#postCnt ul li {
    list-style: none;
    position: relative;
    padding: 0;
    line-height: 1.1;
    margin-bottom: 15px;
}
ul.formFlow{
	display: flex;
    height: 40px;
    align-items: center;
    justify-content: center;
    margin: 60px 0 30px;
    padding: 0;
}
ul.formFlow li.active {
    background: #ff6600;
    color: #fff;
    position: relative;
}
ul.formFlow li.active:after {
    position: absolute;
    content: "";
    right: -40px;
    top: 0;
    z-index: 1;
    width: 0;
    height: 0;
    border: 20px solid transparent;
    border-left: 20px solid #ff6600;
}
ul.formFlow li {
    display: inline-flex;
    justify-content: center;
    flex: 1 0 33.333%;
    background: #ECEDF5;
    color: #3E3A39;
    list-style: none;
    padding: 0;
    margin: 0 !important;
    height: 100%;
    font-size: 16px;
    font-weight: bold;
    align-items: center;
    position: relative;
}
#formArea .required {
    text-align: left;
    color: #FF0004;
    font-weight: normal;
	width: 100%;
}
#formArea dl {
    display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
    margin: 0 0 30px;
}
#formArea dl dt, #formArea dl dd {
    min-height: 60px;
}
#formArea dl dd {
    background-color: #e9f1ff;
    padding: 10px;
    flex-basis: calc(100% - 5px - 30%);
    max-width: calc(100% - 5px - 30%);
    width: 100%;
    padding: 0 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
}
textarea , input {
    font-size: 0.8em;
    width: 100%;
    padding: 10px;
}
#formArea dl dt {
    background-color: #439bf1;
    font-weight: bold;
    padding: 10px;
    flex-basis: 30%;
    max-width: 30%;
    width: 100%;
    padding: 0 !important;
    margin: 0 !important;
}
#formArea dl dt label {
    color: #fff;
    background-color: #305bf9;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
:placeholder-shown {
    color: #bbb;
    font-weight: 500;
}
#contact p {
    color: #333;
    font-weight: bold;
}
.send {
    width: 250px;
    padding: 20px 0 20px 20px;
    font-size: 20px;
    margin: 30px 30px 0;
}
.submit-btn {
	display: block;
	background-color: #ff4e00;
	padding: 20px 10px;
	margin: 30px auto 0;
	border-radius: 100px;
	font-size: 20px;
	color: #1c42ae;
	font-weight: bold;
	text-align: center;
	border: solid 6px #1c42ae;
	border-bottom: solid 10px;
	position: relative;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 700;
}
.submit-btn:hover{
	border-bottom: solid 6px;
	border-top: solid 10px;
	opacity: 0.8;
}
.arrow-icon-white::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(45deg);
    right: 40px;
    top: 42%;
}
.application-form-table{
	border: none;
    width: 100%;
    border-collapse: separate;
    border-spacing: 10px 20px;
}
.application-form-table th{
	width: 30%;
	background-color: #3366ff;
}
.application-form-table td{
	border: 1px solid #3366ff;
    border-collapse: collapse;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5rem;
	text-align: left;
}
.application-form-table th , .application-form-table td{
	padding: 10px;
    height: auto;
    vertical-align: middle;
}
.application-form-table td input{
	background-color: #FFFFFF;
    width: 90%;
    font-weight: bold;
}
.check-box{
	text-align: center;
	margin-top: 30px;
}
	.check-box p{
		text-align: center;
		font-size: 16px;
	}
.check-box label{
	font-size: 16px;
	font-weight: bold;
}
.check-box label input{
	appearance: auto;
	width: auto;
	text-align: center;
}
.order-kiyaku{
	width: 95%;
	margin: 160px auto 100px;
}
@media screen and (max-width: 1024px) {
.p-common-breadcrumbs {
    position: absolute;
    bottom: -30px;
    right: -60px;
    letter-spacing: -.4em;
	}
.p-common-sub-kv_02 {
    height: 0px;
    width: 100%;
    margin-top: 240px;
}	
.mv-area img{
		width: 100%;
	}
.arrow-icon-white::after {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    transform: rotate(45deg);
    right: 20px;
    top: 45%;
 }	
}
@media screen and (max-width: 916px) {
.breadcrumbs {
    top: 160px;
}
}
@media screen and (max-width: 768px) {
	
.main-area{
	width: 100%;
	margin: 100px auto 0;
}
.main-area_2{
	width: 100%;
	margin: 100px auto 0;
}	
.main-area_3{
	width: 100%;
	margin: 0 auto;
}
.mv-area{
	margin-top: 70px;
}	
.mv-area img{
	width: 100%;
}	
.point_mv img{
	width: 25%;
	}
table {
	width: 90%;
	}
#application_home{
	width: 90%;
}	
#application_home p{
	width: 90%;
}

#application_home .element-box table td input {
    width: 90%;
}
.element-box-90{
	width: 90%;
	margin: 0 auto;
	}	
.element-box p{
	width: 90%;
	margin: 0 auto;
}
.element-box ol{
	width: 85%;
	margin: 0 auto;
}
.element-box ol li{
	font-size: 16px;
	margin: 10px;
	line-height: 1.5em;
}
.image-capture{
	border: solid 1px #333;
	width: 100%;
	margin: 20px auto;
}
.image ul .left , .image ul .right{
	float: none;
}
.image ul li , .image_02 ul li {
  	max-width: 240px;
}	
.hover-mask , .hover-mask_02 , .hover-mask img , .hover-mask_02 img{
	display: none;
}	
.partner_box {
        flex-direction: column; /* 縦並び（1列）にする */
        gap: 50px; /* 縦並びにしたときの要素間の隙間 */
    }
    #business-partner, #af-partner {
        flex-basis: 100%; /* 幅を100%にする */
        max-width: 100%;
        margin: 0 auto;
    }
.breadcrumbs {
        top: 60px;
    }	
}
@media screen and (max-width: 48em) {
	
table , td, th {
	font-size: 12px;

}
	td, th {
		padding: 7px;
	}	
.mv-area{
	margin-top: -30px;
}
.mv-area img {
    margin-top: 90px;
}	
.partner_mv_pc , .partner_mv_pc_02 , .partner_mv_pc_03{
	display: none;
}
.partner_mv_sp , .partner_mv_sp_02 , .partner_mv_sp_03{
	display: block;
}
.partner_mv_sp_03{
	border-top: solid 15px #333;
    border-bottom: solid 15px #333;	
	}	
.l-nav-sp {
    display: block;
}
h2{
	font-size: 22px;
	}	

h3{
	font-size: 20px;
	}	
.graph-h3{
	width: 90%;
}	
.graph-text{
	font-size: 12px;
}
.element-box{
	width: 90%;
	margin: 50px auto;
	text-align: left;
	}	
.element-box_02{
	width: 90%;
	margin: 50px auto;
	text-align: left;
	}
.p-common-sub-kv {
    height: 0px;
    width: 100%;
    margin-top: 140px;
}
.p-common-sub-kv_02 {
    height: 0px;
    width: 100%;
    margin-top: 140px;
}	
.p-common-breadcrumbs {
    position: absolute;
    bottom: 50px;
    right: -90px;
    letter-spacing: -.4em;
}
.p-common-breadcrumbs_02 {
    position: absolute;
    bottom: 10px;
    right: -100px;
    letter-spacing: -.4em;
}	
.support-btn_01 a,.support-btn_02 a {
	width: 80%;	
}
.support-btn_01 a li{
	font-size: 16px;
}		
.support-btn_02 a li{
	font-size: 16px;
}
.support-btn_03 a{
	font-size: 16px;
	width: 80%;
}
.search-box{
	width: 90%;
}	
.end-text {
    width: 80vw;
    padding: 20px;
    line-height: 1.5em;
    margin: 0 auto 20px;
}
.partner_text{
	margin: 0 10px 30px;
}	
.icon_area{
	display: block;
	width: 85%;
	margin: 0 auto 50px;
	overflow: hidden;
}
.icon_area .left{
	width: 45%;
	float: left;
	margin: 0 auto;
}
.icon_area .right{
	width: 45%;
	float: right;
	margin: 0 auto;
}	

#business-partner{
	float: none;
	width: 90%;
	margin: -50px auto 50px;
}
#af-partner{
	float: none;
	width: 90%;
	margin: -50px auto 50px;
}
#sozai-area{
	width: 90%;	
	margin: -80px auto 50px;
	}
.sozai-box .left , .sozai-box .right{
	float: none;
	width: 90%;
	margin: 0 auto;
}
.sozai-box .left{
	margin: 20px auto;
}
	.sozai-box .left img{
		width: 50%;
	}	
.sozai-box .right p{
	text-align: center;
}	

.business-text {
    padding: 20px 20px 0px;
}	


.btn-area .contact-btn{
	width: 100%;
}	
.btn-area .contact-btn a{
	width: 251px;
}	
.btn a{
	width: 250px;
	font-size: 25px;
}
.icon_area img{
	width: 100%;
	margin-top: 10px;
}
.frow_mv img{
	width: 30%;
}
.application-form-table td input{
	
}
#identification{
	width: 90%;
}	
.send_btn{
	width: 100%;
}
.send_btn input{
	padding: 15px 18px;
	font-size: 16px;
	width: 100%;
}

.send-completely-area p{
	font-size: 20px;
}	
.contact-btn a {
    padding: 10px;
    margin: 10px 0;
    font-size: 17px;
    line-height: 1.6rem;
    width: 90%;
}
.dl_btn{
	width: 100%;
	margin: 0 auto 50px;
}
.dl_btn a p{
	font-size: 17px;
	padding: 10px;
}
#vps_A .image_02 ul li, #vps_B .image_02 ul li, #ubuntu .image_02 ul li, #maincraft .image_02 ul li, #office .image_02 ul li {
    margin: 20px 20px 50px;
}
.icon_area_2 .left p{
	font-size: 13px;
}
.icon_area_2 .right p{
	font-size: 13px;
}	
.table-box {
    border-radius: 20px;
    border: solid 4px #1c42ae;
    width: 100%;
}	
	
}