@charset "utf-8";

/*---top---*/

#topmain {
width: 100%;
}

#topmain ul.gallery {
width: 100%;
padding-bottom: 75px;
}

#topmain ul.gallery li {
display: inline-block;
vertical-align: top;
width: 32%;
margin: 0 0.8% 1% 0;
}

#topmain ul.gallery li:nth-child(3n) {
display: inline-block;
vertical-align: top;
width: 32%;
margin: 0 ;
}

#topmain ul.gallery li img {
max-width: 100%;
width: 100%;
}

#topmain ul.greeting {
width: 70%;
margin: 0 auto;
padding-bottom: 75px;
}

#topmain ul.greeting li.grimg img {
max-width: 100%;
width: 100%;
}

#topmain ul.greeting li.tit {
width: 100%;
text-align: center;
}

#topmain ul.greeting li.cnt {
width: 90%;
margin: 0 auto;
}

#topmain ul.greeting li.cnt p {
font-size: 18px;
font-weight: bold;
line-height: 220%;
letter-spacing: 0.05em;
padding-top: 25px;
}

#topmain ul.person {
width: 100%;
background: #d5eaeb;
padding: 3% 0;
}

#topmain ul.person li ul.box-align {
width: 85%;
margin: 0 auto;
}

#topmain ul.person li ul.box-align li {
display: inline-block;
vertical-align: top;
width: 31.5%;
margin: 0 1% 0 0;
}

#topmain ul.person li ul.box-align li:nth-child(3n) {
display: inline-block;
vertical-align: top;
width: 31.5%;
margin: 0 ;
}

#topmain ul.person li ul.box-align li img {
max-width: 100%;
width: 100%;
border-radius: 4px 4px 0 0;
}

#topmain ul.person li ul.box-align p.job {
font-weight: bold;
font-size: 16px;
letter-spacing: 0.09em;
color: #fff;
background: #3667B3;
text-align: center;
padding: 10px 0;
border-radius:  0 0 4px 4px;
}

#topmain ul.person li ul.box-align p.name {
font-weight: bold;
font-size: 16px;
letter-spacing: 0.09em;
padding: 12px 0 5px 0;
}

#topmain ul.person li ul.box-align p.comment {
font-size: 14px;
letter-spacing: 0.08em;
padding: 12px 0;
}

#topmain ul.person li ul.box-align p.bt {
background: #19519E;
border-radius: 4px;
width: 90%;
margin: 10px auto 20px auto;
}

#topmain ul.person li ul.box-align p.bt a {
font-size: 15px;
text-align: center;
display: block;
padding: 15px 0;
letter-spacing: 1px;
font-weight: bold;
color: #fff;
text-decoration: none;
}

#topmain ul.person li ul.box-align p.bt a:hover {
border-radius: 4px;
background: #2975C9;
box-shadow: 4px 8px 15px rgba(0,0,0,0.25);
opacity: 1.0;
}

#topmain ul.contact {
width: 100%;
background: url(../images/top/contactbg.jpg) no-repeat;
padding: 6% 0;
background-size: cover;
background-position: center center;
margin-bottom: 50px;
}

#topmain ul.contact li p.tit {
text-align: center;
color: #fff;
font-size: 45px;
letter-spacing: 0.08em;
font-weight: bold;
text-shadow: 0 0 4px rgba(0,0,0,.7);
}

#topmain ul.contact li.cnt {
margin: 0 auto;
max-width: 900px;
padding: 2.0% 0;
text-align: center;
display: block;
}

#topmain ul.contact li.cnt p {
color: #fff;
font-size: 17px;
letter-spacing: 0.08em;
line-height: 200%;
font-weight: bold;
text-shadow: 0 0 4px rgba(0,0,0,.7);
text-align: left;
display: inline-block;
}

#topmain ul.contact li.detailbt {
width: 40%;
margin: 0 auto;
border:  2px solid #fff;
border-radius: 2px;
}

#topmain ul.contact li.detailbt a {
opacity: 1.0;
border-radius: 2px;
display: block;
text-align: center;
letter-spacing: 0.1em;
color: #fff;
text-decoration: none;
padding:  15px 2% 15px 2%;
font-size: 18px;
font-weight: bold;
}

#topmain ul.contact li.detailbt a:hover {
background: #E98312;
color: #fff;
border-radius: 0px;
}

@media screen and (max-width: 800px){
#topmain ul.gallery {
padding-bottom: 40px;
}
	
#topmain ul.greeting {
width: 90%;
padding-bottom: 0px;
}

#topmain ul.greeting li.cnt {
width: 100%;
}

#topmain ul.greeting li.cnt p {
font-size: 14px;
line-height: 190%;
padding-top: 10px;
}

#topmain ul.person {
margin-bottom: 0px;
}

#topmain ul.person li ul.box-align {
width: 90%;
}

#topmain ul.person li ul.box-align li {
width: 100%;
padding-bottom: 6%;
}

#topmain ul.person li ul.box-align li:nth-child(3n) {
width: 100%;
}

#topmain ul.person li ul.box-align p.job {
font-size: 16px;
padding: 10px 0;
top: 0px;
opacity: 1.0;
}

#topmain ul.person li ul.box-align p.bt {
background: #19519E;
border-radius: 4px;
width: 95%;
margin: 10px auto 20px auto;
}

#topmain ul.person li ul.box-align p.bt a {
font-size: 14px;
padding: 12px 0;
}

#topmain ul.contact li.cnt {
max-width: 100%;
padding: 5% 3%;
}

#topmain ul.contact li.cnt p {
font-size: 13px;
}

#topmain ul.contact li.detailbt {
width: 70%;
border:  2px solid #fff;
border-radius: 2px;
}

#topmain ul.contact li.detailbt a {
font-size: 14px;
}
}


/*---person---*/

#personmain {
width: 100%;
}

#personmain ul.picture {
width: 100%;
margin-bottom: 35px;
}

#personmain ul.picture img {
width: 100%;
max-width: 100%;
}

#personmain ul.picture li.name {
background: #275cad;
}

#personmain ul.picture li.name p {
text-align: center;
padding: 1.2%;
color:#fff;
letter-spacing: 0.09em;
font-size: 36px;
font-weight: 400;
font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

#personmain ul.picture li.name p .info {
font-size: 24px;
font-weight: 400;
margin: 0 0 0 25px;
}

#personmain ul.cntgroup {
width: 95%;
margin: 0 auto;
padding-bottom: 30px;
}

#personmain ul.cntgroup li.title {
margin-bottom: 5px;
}

#personmain ul.cntgroup li.title p {
color:#003992;
font-size: 22px;
font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
letter-spacing: 0.08em;
font-weight: bold;
}

#personmain ul.cntgroup li.comment p {
font-size: 15px;
line-height: 200%;
}

#personmain ul.message {
width: 90%;
margin: 0 auto 2% auto;
padding: 2%;
background: url(../images/person/messagebg.png);
border-radius: 8px;
}

#personmain ul.message li.title p {
color: #f54949;
text-align: center;
font-size: 28px;
font-weight: bold;
}

#personmain ul.message li.comment {
max-width: 80%;
margin: 0 auto;
}

#personmain ul.message li.comment p {
font-size: 15px;
text-align: center;
line-height: 200%;
font-weight: bold;
}

#personmain ul.messege {
width: 95%;
margin: 0 auto;
background: #e3f0f7;
padding: 4% 0;
}

#personmain ul.messege p.tit {
text-align: center;
color: #003992;
font-size: 25px;
font-weight: 600;
font-family: 'Noto Serif JP', "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
letter-spacing: 0.08em;
padding: 0 2% 15px 0;
}

#personmain ul.messege p.nor {
text-align: center;
font-size: 16px;
font-weight: 600;
padding: 0 2%;
}

@media screen and (max-width: 800px){
#personmain ul.picture li.name p {
padding: 2%;
font-size: 21px;
}

#personmain ul.picture li.name p .info {
font-size: 15px;
}

#personmain ul.cntgroup li.title p {
font-size: 18px;
}

#personmain ul.message {
width: 95%;
padding: 2% 1.5%;
}

#personmain ul.message li.title p {
font-size: 24px;
}

#personmain ul.message li.comment {
max-width: 90%;
}

#personmain ul.message li.comment p {
font-size: 14px;
font-weight: normal;
}

#personmain ul.messege p.tit {
font-size: 19px;
}
}



/*---entry---*/

#entrymain {
width: 100%;
}

#entrymain ul.entryform {
width: 100%;
padding-bottom: 75px;
}

#entrymain ul.entryform li.at {
width: 90%;
margin: 0 auto;
padding-bottom: 40px;
text-align: center;
}

#entrymain ul.entryform li.at p.tit {
text-align: center;
font-size: 20px;
padding-bottom: 18px;
}

#entrymain ul.entryform li.at p.cnt {
line-height: 170%;
display: inline-block;
text-align: left;
}

#entrymain ul.entryform li.at p.cnt {
line-height: 170%;
display: inline-block;
text-align: left;
}

#entrymain ul.entryform li.requiredtxt {
padding: 8px 0 15px 5px;
}

#entrymain ul.entryform table	{
width: 100%;
border-collapse: collapse;
border-spacing: 0;
}

#entrymain ul.entryform table th	{
width: 24%;
}

#entrymain ul.entryform table th p.title {
text-align: left;
font-weight: 600;
padding: 5px 12px 15px 12px;
}

#entrymain ul.entryform table th p.cap {
text-align: left;
font-size: 13px;
padding: 0 12px 0 12px;
}

#entrymain ul.entryform table .req_label {
border-radius: 4px;
margin-right: 8px;
padding: 6px;
display: inline-block;
text-align: center;
background: #fc5656;
color: #fff;
letter-spacing: 0.15em;
font-size: 12px;
}

#entrymain ul.entryform table td p.cnt {
text-align: left;
padding: 12px;
line-height: 170%;
}

#entrymain ul.entryform .input1 {
width: 80%;
border-radius: 3px;
padding: 10px;
border: 2px solid #d8d8d8;
margin:0 0 15px;
}

#entrymain ul.entryform .input1:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .input2 {
width: 60%;
border-radius: 3px;
padding: 10px;
border: 2px solid #d8d8d8;
margin:0 0 15px;
}

#entrymain ul.entryform .input2:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .input3 {
width: 15%;
border-radius: 3px;
padding: 10px;
border: 2px solid #d8d8d8;
margin:0 0 15px;
}

#entrymain ul.entryform .input3:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .textarea1 {
width: 80%;
height: 200px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
padding: 6px;
border: 2px solid #d8d8d8;
margin:0 0 10px;
}

#entrymain ul.entryform .textarea1:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .textarea2 {
width: 80%;
height: 100px;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
padding: 6px;
border: 2px solid #d8d8d8;
margin:0 0 10px;
}

#entrymain ul.entryform .textarea2:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .checkbox {
margin-bottom: 15px;
}

#entrymain ul.entryform .checkbox-input {
display: none;
}

#entrymain ul.entryform .checkbox-parts {
padding-left: 20px;
position:relative;
margin-right: 20px;
font-size: 14px;
color: #4a4944;
line-height: 200%;
}
#entrymain ul.entryform .checkbox-parts::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 0;
width: 15px;
height: 15px;
border: 1px solid #666666;
border-radius: 3px;
}

#entrymain ul.entryform .checkbox-input:checked + .checkbox-parts {
color: #f24052;
font-weight: 600;
}

#entrymain ul.entryform .checkbox-input:checked + .checkbox-parts::after {
content: "";
display: block;
position: absolute;
top: -5px;
left: 5px;
width: 7px;
height: 14px;
transform: rotate(40deg);
border-bottom: 3px solid #f24052;
border-right: 3px solid #f24052;
}

#entrymain ul.entryform .select-small {
border-radius: 3px;
padding: 6px;
border: 2px solid #d8d8d8;
margin: 0 0 10px;
width: 8%;
}

#entrymain ul.entryform .select-small:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .select-medium {
border-radius: 3px;
padding: 6px;
border: 2px solid #d8d8d8;
margin: 0 0 10px;
width: 20%;
}

#entrymain ul.entryform .select-medium:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .select-big {
border-radius: 3px;
padding: 6px;
border: 2px solid #d8d8d8;
margin: 0 0 10px;
width: 25%;
}

#entrymain ul.entryform .select-big:focus {
border: solid 2px #fa7f55;
}

#entrymain ul.entryform .formtxt01 {
padding-left: 5px;
font-size: 15px;
}

#entrymain ul.entryform .formtxt02 {
padding-left: 8px;
font-size: 13px;
}

#entrymain ul.entryform .formtxt03 {
padding: 0 12px 0 4px;
}

#entrymain ul.entryform .formtxt04 {
padding: 0 25px 20px 0;
font-size: 13px;
}

#entrymain ul.entryform li.agreement {
margin-top: 35px;
text-align: center;
display: block;
background: #F7F7F7;
border: 2px solid #E3E3E3;
border-radius: 4px;
padding: 2% 4%;
}

#entrymain ul.entryform li.agreement .txt {
font-size: 16px;
font-weight: bold;
padding-left: 7px;
}

#entrymain ul.entryform li ul.buttonarea {
padding: 3% 0 0 25%;
}

#entrymain ul.entryform li ul.buttonarea li {
padding: 15px 0 0 0;
}

#entrymain ul.entryform li ul.buttonarea li .submit {
cursor: pointer;
-webkit-appearance: none;
width: 65%;
height: 48px;
padding: 8px;
border-radius: 3px;
color: #444;
background:#e7e7e7;
border: 3px solid #c7c7c7;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all 0.3s ease;
}

#entrymain ul.entryform li ul.buttonarea li .submit:hover {
border: 3px solid #fa7f55;
background:#fafafa;
border-radius: 3px;
}

#entrymain .privacycomment {
width: 100%;
padding-bottom: 20px;
}

#entrymain ul.privacycnt {
width: 100%;
padding-bottom: 20px;
}

#entrymain ul.privacycnt li {
border-bottom: 1px dotted #b4b4b1;
}

#entrymain ul.privacycnt li .pptext01 {
padding: 20px 0 10px 5px;
font-weight:500;
font-size:16px;
}

#entrymain ul.privacycnt li .pptext02 {
padding: 0 0 15px 0px;
line-height: 170%;
}    

#entrymain ul.thanks {
width: 100%;
height: 500px;
margin-top: 250px;
}

#entrymain ul.thanks p {
text-align: center;
font-size: 22px;
font-weight: 600;
line-height: 250%;
}

#entrymain ul.thanks p a {
text-align: center;
padding-top: 55px;
font-size: 18px;
font-weight: 600;
}

#entrymain ul.thanks p a:hover {
text-decoration: none;
}

@media screen and (max-width: 850px){
#entrymain ul.entryform table {
width: 99.9%;
}

#entrymain ul.entryform table th p.title {
padding: 10px 0;
}

#entrymain ul.entryform table th p.cap {
font-size: 13px;
padding: 0 12px 12px 2px;
}

#entrymain ul.entryform table th,
#entrymain ul.entryform table td {
width: 99.9%;
display: block;
border-top: none;
}

#entrymain ul.entryform .input1 {
margin: 0 0 5px;
}

#entrymain ul.entryform .input2 {
margin: 0 0 5px;
}

#entrymain ul.entryform .input3 {
width: 40%;
}

#entrymain ul.entryform .select-small {
width: 25%;
}

#entrymain ul.entryform .select-medium {
width: 40%;
}

#entrymain ul.entryform .select-big {
width: 65%;
}

#entrymain ul.entryform .textarea1 {
width: 90%;
margin: 0 0 5px;
}

#entrymain ul.entryform li.agreement {
font-size: 15px;
padding: 4% 4%;
}

#entrymain ul.entryform li ul.buttonarea {
padding-left: 0px;
}

#entrymain ul.entryform li ul.buttonarea li {
width: 100%;
}

#entrymain ul.entryform li ul.buttonarea li .submit {
width: 97%;
-webkit-appearance: none;
}

#entrymain ul.entryform li ul.buttonarea li .submit:hover {
border: 3px solid #fa7f55;
background:#fafafa;
transition: all 0.8s ease 0s;
}

#entrymain ul.thanks p {
font-size: 18px;
}

#entrymain ul.thanks p a {
font-size: 16px;
}
}