@charset 'UTF-8';

/*
css
　 ├ style.css--------：WEB 1,400px以上
　 ├ pc.css-----------：WEB 1,399px以下、1,025以上
　 ├ tablet.css-------：WEB 1,024以下、601px以上
　 └ smart.css--------：WEB 600px以下
*/

/* css記載順序
01. 固定ページのh1,h2見出し
02. toppage
03. form
04. 下層ページ
end css記載順序*/

/*************************** 01. 固定ページのh1,h2見出し *******************/
h1 {
	font-size: 3.2rem;
	line-height: 1.6;
	text-align: center;
	letter-spacing: 2px;
	color: #000;
}
.page-head h1{
	color:#fff;
}

h1 span{
	display: block;
	font-size: 2.2rem;
    font-style: italic;
    font-weight: normal;
}
#top h1{
	font-size: 2.0rem;
	line-height: 5.4rem;
	margin-bottom: 2.0rem;
	color: #000;
}

h2 {
    color: #333;
    letter-spacing: 3px;
    margin: 0 auto;
    text-align: center;
    padding-bottom: 4rem;
    padding-top: 4rem;
    font-size: 2rem;
    line-height: 1;
    position: relative;
}

h2 > span{
    font-style: italic;
	display:block;
	font-size:6.6rem;
	margin-bottom:1rem;
	font-weight: bold;
	color: #133B7A;
	font-family: "Manrope", sans-serif;
}

h3 {
	font-size: 2.2rem;
	margin-bottom: 2.6rem;
	font-weight: bold;
	margin-bottom: 2.0rem;
}
h4 {
	font-size: 2.2rem;
	margin-bottom: 2.2rem;
	padding-left: 5.6rem;
	position: relative;
	font-weight: bold;
	border-left: 0.8rem solid #aaa;
    padding-left: 0.8rem;
    margin-bottom: 1.0rem;
}
h5 {
	font-size: 2.0rem;
	margin-bottom: 2.0rem;
	border-left: 6px solid #bbb;
    padding-left: 6px;
    margin-bottom: 10px;
}
h6 {
	font-size: 1.8rem;
	margin-bottom: 1.8rem;
	border-left: 0.4rem solid #ccc;
    padding-left: 0.4rem;
    margin-bottom: 1.0rem;
}
/*************************** 02. toppage ***********************/
.top #content{
	padding-top: 0;
}
.mainVisual{
	position:relative;
}
.mainVisual-box{
	position: absolute;
	top: 50%;
    left: 22%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.mainVisual-img{
	background: url(/wp-content/themes/proximo/assets/images/img/main.jpg) top center no-repeat;
	background-size: cover;
}
.mainVisual-img img{
	user-select: none; /* CSS3 */
	-moz-user-select: none; /* Firefox */
	-webkit-user-select: none; /* Safari、Chromeなど */
	-ms-user-select: none; /* IE10かららしい */
}
.mainVisual-box p{
	color: #333;
	font-size: 1.8rem;
	color: #fff;
}
.mainVisual-box p.mainVisual-copy{
	font-size: 5rem;
	font-weight: 600;
}

main article .top-01{
	text-align: center;
	background: #f5f5f5;
	padding: 6rem 0;
}
main article .top-01 p{
	line-height: 2.4;
}
.top-03 .flex-container-two > figure img{
	width: 88%;
}
.top-03 ul.listing li{
	font-size: 2rem;
}
.top-02{
	background:#f5f5f5;
	background: url(/wp-content/themes/proximo/assets/images/img/top-01.webp) top center no-repeat;
	background-size: cover;
	padding: 6rem 0;
	margin-top: 0;
}
.top-02-box > * {
    border-radius: 8px;
    background: #fff;
    padding: 2rem;
}
.top-02 h3{
	border: 0;
	padding-left:0;
	display: flex;
	align-items:end;
	font-size: 2.2rem;
}
.pointTitle_num {
    flex-grow: 0;
    flex-shrink: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 5rem;
    height: 5rem;
    margin: 0.25em 0.5em 0 0.25em;
    padding: 1rem;
    font-size: 3rem;
    color: #333;
    border: 2px solid #CCC;
}
.pointTitle_num:before {
    content: "";
    position: absolute;
    top: -0.15em;
    left: -0.15em;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 32px 32px 0 0;
    border-color: #0E3777 transparent transparent transparent;
}
main article .top-04,{
	background: linear-gradient(0deg, #12202F 0%, #0E3777 100%);
	margin-top: 0;
	padding: 6rem 0;
	color: #fff;
}
main article .top-04 p strong{
	color: #fff;
	background: none;
}
.top-04 h2,
.top-04 h2 > span{
	color: #fff;
}
.top-04 h2{
	text-align: center;
}
.top-04 h3{
	text-align: center;
	border-left: 0;
	font-size: 2.4rem;
}
.top-04 p{
	text-align: center;
}
.top-04 dl.table dt span {
	font-size:2.5rem;
	font-weight:bold;
}
.top-04 dl.table dd {
	font-size:4rem;
	font-weight:bold;
}
.top-04 dl.table dd span{
	font-size:1.6rem;
}

ul.top-04-box li{
	text-align:center;
	font-weight:bold;
	padding: 2rem 1rem;
}
ul.top-04-box li figure{
	border: #EFEFEF 8px solid;
    border-radius: 50%;
    padding: 4rem;
    max-width: 200px;
    margin: 0 auto 3rem;
    background: #EFEFEF;
}
ul.top-04-box li img{
    width: 100%;
    aspect-ratio: 5/5;
}
main article .top-05{
	padding-bottom: 8rem;
}
ul.sns-box-sns{
	display: flex;
    justify-content: flex-end;
}
ul.sns-box-sns li{
	list-style: none;
    margin-left: 16px;
}
ul.sns-box-sns li a svg{
	width: 32px;
    height: auto;
    transition: .3s;
}
.top-06 figure{
	max-width: 30%;
}
.top-06 figure img{
	border:4px solid #EFEFEF;
}
.top-06 .flex-container-two{
	justify-content:space-around;
	align-items:flex-start;
}
.top-06 .name{
	font-size: 3rem;
	line-height: 1.6;
	text-align: right;
}
.top-06 .name span{
	font-size: 1.8rem;
	color:#999;
	display: block;
}
.top-06-box >*{
	width: 60%;
}
.strong {
	text-align: center;
}
main article .top-08{
	margin-top: 0;
	background: #f5f5f5;
	padding-top: 6rem;
}
main article .top-08 h2{
	text-align: center;
}

.top-08 .flex-container-two{
	justify-content: flex-start;
}
main article .top-09{
	background: #f5f5f5;
	margin-top: 0;
	padding: 6rem 0 9rem;
}
.top-09 h3{
	margin-bottom: 0;
	color: #133B7A;
	font-size:2rem;
}
.top-09 h3,.top-09 > p{
	text-align: center;
}
.top-09 .flex-container-three > section{
	width: 30%;
    background: #fff;
    padding: 3rem;
    box-shadow: 0px 4px 8px 4px rgba(58, 58, 58, 0.12);
    margin-bottom: 2%;
}
.top-09 figure{
	width: 78%;
	margin: 0 auto;
	margin-bottom: 2rem;
}
.top-10{
    margin-top: 0;
    padding: 9rem 0 13rem;
}
main article .top-10 section{
	border-radius: 8px;
	padding: 0rem 4rem 0rem 0rem;
	margin-top: 6rem;
}

.top-10 .flex-container-two{
	align-items: center;
}
.top-10 .flex-container-two.rv{
	flex-direction: row-reverse;
}
main article .top-10 section.flex-container-two.rv {
	padding-right: 0;
}
.top-10 .flex-container-two > *{
	margin-bottom: 0;
}
.top-10 .flex-container-two > figure{
	width: 38%;
	margin:0;
}
.top-10 .flex-container-two > figure img{
	border-radius: 8px;
}
.top-10 .flex-container-two > div{
	width: 60%;
	padding-left: 2rem;
}
.top-10 .flex-container-two.rv > div{
	padding-left: 0;
}
.top-10 .flex-container-two.rv > figure{
	padding-left: 2rem;
}
.top-11{
	background: #f5f5f5;
	padding: 6rem 0 9rem;
}
.top-11 .flex-container-three{
	justify-content: space-between;
}
.top-11 .flex-container-three > section {
    width: 31%;
    background: #fff;
    padding: 3rem;
    box-shadow: 0px 4px 8px 4px rgba(58, 58, 58, 0.12);
    margin:0 0 2%;
}
.top-11 .center{
	text-align: center;
}
.top-11 > p{
	text-align: center;
}
.top-11 >p.annotation {
    font-size: 1.6rem;
    line-height: 1.6;
    color: #333;
    text-align: left;
}
.top-11 p.center{
	margin: 3rem 0;
	padding-bottom: 2rem;
	border-bottom: 1px solid #ddd;
}
.top-11 p strong{
	background: 0;
	color: #133B7A;
    font-size: 5rem;
    line-height: 1;
    margin-top: 2.25rem;
    order: 3;
    text-align: left;
}
.top-12 {
	position: relative;
	height: 36rem;
}
.top-12 p{
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    font-size: 4rem;
    font-weight: bold;
    text-align: center;
}
.top-12 img{
	height: 100%;
}
p.campain{
	background: linear-gradient(138deg, #0E3777 50%, #4A9CFF 100%);
	font-size: 3rem;
	color:#fff;
	text-align: center;
	margin-top: 5rem;
}
p.campain a{
	color: #fff;
	padding:6rem 3rem;
	font-weight: bold;
	display: block;
	width: 100%;
	height:100%;
}
/*************************** 03. form  ***********************/
.inquiry-box {
    text-align: center;
}
.inquiry-box .form-inner {
    margin: 5% auto;
    width: 75%;
}
.inquiry-box .form-inner .contact-form {
    margin: auto;
    background: #F7F7F7;
    padding: 5%;
}
.inquiry-box .form-inner .contact-form .input-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    text-align: left;
}
.inquiry-box .form-inner .contact-form .input-box:not(:first-child) {
    margin-top: 6.7%;
}
.inquiry-box .form-inner .contact-form .input-box .label-area {
    padding: 6px 0;
    width: 25%;
    font-size: 1.6rem;
    position: relative;
}

.inquiry-box .form-inner .contact-form .input-box .label-area span.required,
.inquiry-box .form-inner .contact-form .input-box .label-area span.will{
    margin-right:15px;
    background:#009bde;
    color:#fff;
    padding:8px 12px;
    text-decoration: none;
    border-bottom:none;
    font-size: 1.4rem;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.inquiry-box .form-inner .contact-form .input-box .label-area span.will{
    background:#999;
    color:#fff;
}

.inquiry-box .form-inner .contact-form .input-box .input-area {
    width: 75%;
    color: #d0d0d0;
    position: relative;
}
.inquiry-box .form-inner .contact-form .input-box .input-area input {
    padding: 9px 12px;
    width: 100%;
    font-size: 1.8rem;
    color: #d0d0d0;
    border: 1px solid #d0d0d0;
}
.inquiry-box .form-inner .contact-form .input-box .input-area select{
	padding: 9px 12px;
    width: 100%;
    font-size: 1.8rem;
    color: #000;
    border: 1px solid #d0d0d0;
}
.inquiry-box .form-inner .contact-form .input-box .input-area textarea {
    resize: none;
    padding: 9px 12px;
    width: 100%;
    height: 243px;
    font-size: 1.8rem;
    color: #d0d0d0;
    border: 1px solid #d0d0d0;
}
.inquiry-box .form-inner .contact-form .input-box .input-area input:focus, .inquiry-box .form-inner .contact-form .input-box .input-area textarea:focus {
    outline: none;
    color: #343434;
    border: 1px solid #127dd6;
    box-shadow: 0 0 1px 0 rgba(18, 125, 214, 0.45);
}
.inquiry-box .form-inner .contact-form .input-box .input-area .input-error {
    display: none;
    position: absolute;
    bottom: -30px;
    left: 0;
    color: #c00;
}
.inquiry-box .form-inner .contact-form .input-box .input-area .input-error.wpcf7-not-valid-tip {
    display: block;
}
.inquiry-box .form-inner .contact-form .action-box {
    margin-top: 7%;
}
.inquiry-box .form-inner .note {
    margin-top: 4%;
}
.inquiry-box .form-inner .note small {
    font-size: 1.4rem;
    line-height: 2.4;
    letter-spacing: 0.2em;
}

input[type="submit"] {
    transition: all 0.3s ease 0.2s;
    border: none;
    background: #02367C;
    color: #fff;
    -webkit-transition: all 0.3s ease 0.2s;
    z-index: 1;
    padding: 17px 0;
    width: 260px;
    font-size: 1.6rem;
    font-family: 'Noto Sans Japanese', sans-serif;
    letter-spacing: 0.18em;
    overflow: hidden;
    position: relative;
}
input[type="submit"]:hover {
    opacity: 0.7;
    transition: all 0.3s ease 0.2s;
    color: #fff;
    border: none;
}
input[type="submit"]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: -webkit-linear-gradient(left, #127dd6, #4ec9e5);
    background: linear-gradient(to right, #127dd6, #4ec9e5);
    z-index: -1;
    opacity: 0;
    -webkit-transition: all 0.3s ease 0.2s;
    transition: all 0.3s ease 0.2s;
}
.wpcf7-spinner{
    display: none;
}
/*************************** 04. 下層ページ  ***********************/
