@charset "utf-8";

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub,  var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}

img {
vertical-align: bottom;
}


article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}

nav ul {
list-style:none;
}

blockquote, q {
quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}

*, *:before, *:after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}


/* change colours to suit your needs */
ins {
background-color:#ff9;
color: #232323;
text-decoration:none;
}

/* change colours to suit your needs */
mark {
background-color:#ff9;
color: #232323;
font-style:italic;
font-weight:bold;
}

del {
text-decoration: line-through;
}

abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}

table {
border-collapse:collapse;
border-spacing:0;
}

/* change border colour to suit your needs */
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}

input, select {
vertical-align:middle;
}

ul li {
list-style-type: none;
}


/*------------------------------------------------------------------------*\

$common

\*------------------------------------------------------------------------*/

html {
font-size: 62.5%;
}

body,html{
min-width:1080px;
height: 100%;
}

* {
box-sizing: border-box;
}

body {
margin: 0px;
padding: 0px;
text-align: left;
font-family:"Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
/* font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", Meiryo, serif; */
font-size:1.6rem;
line-height: 1.8;
font-weight: 400;
color: #000000;
font-feature-settings : "palt";
-webkit-text-size-adjust: 100%;
height: 100%;
}

#wrapper {
overflow: hidden;
}

.en {
font-family: "Hind Madurai", sans-serif;
font-weight: 600;
}

@media (max-width: 768px){
body,html{
min-width:100% !important;
}

body {
word-wrap:break-word;
}

#wrapper {
box-sizing: border-box;
}
}

/*------------------------------------------------------------------------*\

$リンク系

\*------------------------------------------------------------------------*/

a {
color: #28489C;
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
text-decoration: underline;
}

a:hover {
-webkit-transition: all .5s;
transition: all .5s;
text-decoration: none;
}

a:link {
-webkit-transition: all .5s;
transition: all .5s;
}

a.blank[target="_blank"] {
position: relative;
}

a.blank[target="_blank"]:after {
content: '';
background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2048%2048%22%3E%3Cdefs%3E%3Cstyle%3E.b%7Bfill%3Anone%3Bstroke%3A%23005acc%3Bstroke-linecap%3Around%3Bstroke-linejoin%3Around%3Bstroke-width%3A2px%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cpath%20style%3D%22fill%3Anone%22%20d%3D%22M0%200h48v48H0z%22%2F%3E%3Cpath%20class%3D%22b%22%20d%3D%22M27%2012h9v9M32%2026v8H14V16h8M24%2024l11-11%22%2F%3E%3C%2Fsvg%3E');
position: absolute;
right: -26px;
top: 0;
width: 24px;
height: 24px;
}

a[href$=".pdf"] {
content:"";
display: inline-block;
background: url(../images/ico_pdf.svg) no-repeat center right;
background-size: 22px 23px;
margin:0;
padding:2px 27px 2px 0;
}
a.no[href$=".pdf"] {
content:none;
background: none;
padding:0;
}

a[href$=".doc"] {
content:"";
display: inline-block;
background: url(../images/ico_doc.svg) no-repeat center right;
background-size: 23px;
margin:0;
padding:2px 27px 2px 0;
}

a[href$=".xls"] {
content:"";
display: inline-block;
background: url(../images/ico_xls.svg) no-repeat center right;
background-size: 23px;
margin:0;
padding:2px 27px 2px 0;
}

.disabled_link {
pointer-events: none;
}
@media (max-width: 768px){
.disabled_link {
pointer-events: auto;
}
}


/*------------------------------------------------------------------------*\

$photo

\*------------------------------------------------------------------------*/

.photo {
overflow: hidden;
position: relative;
}

a .photo img {
display: block;
transition-duration: 0.3s;
}

a:hover .photo img {
transform: scale(1.1);
transition-duration: 0.3s;
}


/*------------------------------------------------------------------------*\

$余白系

\*------------------------------------------------------------------------*/

.mt0 {
margin-top: 0px !important;
}
.mt5 {
margin-top: 5px !important;
}
.mt10 {
margin-top: 10px !important;
}
.mt20 {
margin-top: 20px !important;
}
.mt30 {
margin-top: 30px !important;
}
.mt40 {
margin-top: 40px !important;
}
.mt50 {
margin-top: 50px !important;
}
.mb0 {
margin-bottom: 0px !important;
}
.mb5 {
margin-bottom: 5px !important;
}
.mb10 {
margin-bottom: 10px !important;
}
.mb15 {
margin-bottom: 15px !important;
}
.mb20 {
margin-bottom: 20px !important;
}
.mb30 {
margin-bottom: 30px !important;
}
.mb40 {
margin-bottom: 40px !important;
}
.mb50 {
margin-bottom: 50px !important;
}
.mb60 {
margin-bottom: 60px !important;
}
.mb70 {
margin-bottom: 70px !important;
}
.mb80 {
margin-bottom: 80px !important;
}

.wide10 {
width: 10% !important;
}
.wide15 {
width: 15% !important;
}
.wide20 {
width: 20% !important;
}
.wide25 {
width: 25% !important;
}
.wide30 {
width: 30% !important;
}
.wide35 {
width: 35% !important;
}
.wide40 {
width: 40% !important;
}
.wide45 {
width: 45% !important;
}
.wide50 {
width: 50% !important;
}
.wide55 {
width: 55% !important;
}
.wide60 {
width: 60% !important;
}
.wide65 {
width: 65% !important;
}
.wide70 {
width: 70% !important;
}
.wide75 {
width: 75% !important;
}
.wide80 {
width: 80% !important;
}
.wide85 {
width: 85% !important;
}
.wide90 {
width: 90% !important;
}
.wide95 {
width: 95% !important;
}
.wide100 {
width: 100% !important;
}

@media (max-width: 768px){
.wide .wide10,
.wide .wide15,
.wide .wide20,
.wide .wide25,
.wide .wide30,
.wide .wide35,
.wide .wide40,
.wide .wide45
.wide .wide50,
.wide .wide55,
.wide .wide60,
.wide .wide65,
.wide .wide70
.wide .wide75,
.wide .wide80,
.wide .wide85,
.wide .wide90,
.wide .wide95 {
width: 100% !important;
}
.w20{
width: 20% !important;
margin: auto;
}
.w25{
width: 25% !important;
margin: auto;
}
.w30{
width: 30% !important;
margin: auto;
}
.w35{
width: 35% !important;
margin: auto;
}
.w40 {
width: 40% !important;
margin: auto;
}
.w45 {
width: 45% !important;
margin: auto;
}
.w50 {
width: 50% !important;
margin: auto;
}
.w55 {
width: 55% !important;
margin: auto;
}
.w60 {
width: 60% !important;
margin: auto;
}
.w65 {
width: 65% !important;
margin: auto;
}
.w70 {
width: 70% !important;
margin: auto;
}
.w75 {
width: 75% !important;
margin: auto;
}
.w80 {
width: 80% !important;
margin: auto;
}
.w85 {
width: 85% !important;
margin: auto;
}
.w90 {
width: 90% !important;
margin: auto;
}
.w95 {
width: 95% !important;
margin: auto;
}
}

/*------------------------------------------------------------------------*\

$float

\*------------------------------------------------------------------------*/

.pctL {
float: left;
margin-right:40px !important;
margin-bottom: 15px;
}

.pctR {
float: right;
margin-left:40px !important;
margin-bottom: 15px ;
}

.cl {
clear: both;
}


/*------------------------------------------------------------------------*\

$clearfix

\*------------------------------------------------------------------------*/

.clearfix:after {
content: " ";
display: block;
height: 0;
clear: both;
visibility: hidden;
overflow:hidden;
font-size:0.1em;
line-height:0;
}

.clearfix {
display: inline-block;
}

/* Holly Hack Targets IE Win only \*/
* html .clearfix {
height: 1%;
}

.clearfix {
display: block;
}
/* End Holly Hack */




/*------------------------------------------------------------------------*\

$text-align

\*------------------------------------------------------------------------*/

@media (max-width: 1460px) {
.youtubeBox {
padding-top: 56.25%;
position: relative;
height: 0;
overflow: hidden;
}

.youtubeBox iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
}


/*------------------------------------------------------------------------*\

$text-align

\*------------------------------------------------------------------------*/

.aLeft {
text-align: left !important;
}

.aRight {
text-align: right !important;
}

.aCenter {
text-align: center !important;
}


/*------------------------------------------------------------------------*\

$position

\*------------------------------------------------------------------------*/

.centered {
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
}

/*------------------------------------------------------------------------*\

$レスポンシブ系

\*------------------------------------------------------------------------*/

.sp {
display:none;
}

.tb {
display: none;
}

@media (max-width:1650px) {
.tb {
display: block !important;
}
}

@media (max-width: 768px) {
.pc {
display:none !important;
}

.tb {
display: none !important;
}

.sp {
display:block !important;
}

img {
max-width: 100%;
}

.wide {
width:100% !important;
height:auto;
}

.responsiveBox {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
margin-top: 20px;
}

.responsiveBox iframe,
.responsiveBox object,
.responsiveBox embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
}

/*------------------------------------------------------------------------*\

$テキスト系

\*------------------------------------------------------------------------*/


.ss {
font-size: 1.4rem;
}

.pointTxt {
color: #DF3138;
font-weight: 900;
}

.pointTxt_s {
color: #DF3138;
}

.pointTxtUd {
text-decoration: underline;
font-weight: 900;
}

sup {
font-size: 1.1rem !important;
}

.nw {
white-space: nowrap !important;
}

.err {
font-size: 1.4rem;
}

@media (max-width: 768px){
.err {
font-size: 1.2rem;
}
.ss {
font-size: 1.2rem;
}
}

/*------------------------------------------------------------------------*\

$右寄せ矢印

\*------------------------------------------------------------------------*/

.arrow_r {
position: relative;
display: inline-block;
padding: 0 0 0 24px;
vertical-align: middle;
text-decoration: none;
}

.arrow_r::before,
.arrow_r::after {
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}

.arrow_r::before {
width: 16px;
height: 16px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #ffd835;
}

.arrow_r::after {
left: 4px;
width: 6px;
height: 6px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}


/*------------------------------------------------------------------------*\

$Flex

\*------------------------------------------------------------------------*/

.box02,
.box03,
.box04,
.box05,
.box06 {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 0 0 30px 0;
position: relative;
}

.flex-start {
justify-content: start;
}

.flex-end {
justify-content: flex-end;
}

.flex-space-around {
justify-content: space-around;
}

.flex-center {
align-items: center;
justify-content: center;
text-align: center;
}

.reverse {
flex-flow: row-reverse;
}

.box02::after {
content: "";
display: block;
width: 48.5%;
}

.box02.reverse::after {
content: none;
}

.box03::after {
content: "";
display: block;
width: 32%;
}

.box04::before {
content: "";
display: block;
width: 23.5%;
order: 1;
}

.box04::after {
content: "";
display: block;
width: 23.5%;
}

.box02 li,
.box02 .box02Inner {
width: 48.5%;
flex-shrink: 0;
max-width: 100%;
}

.box03 li,
.box03 .box03Inner {
width: 32%;
flex-shrink: 0;
max-width: 100%;
}

.box04 li,
.box04 .box04Inner {
width: 23.5%;
flex-shrink: 0;
max-width: 100%;
}

.box05 li,
.box05 .box05Inner {
width: 18%;
flex-shrink: 0;
max-width: 100%;
}

.box02 .wide li,
.box03 .wide li,
.box04 .wide li {
width: 100%;
flex-shrink: 0;
max-width: 100%;
}

.box02.flex-start li,
.box02.flex-start .box02Inner {
width: auto !important;
}

.box02.box05.flex-start li:first-child,
.box05.flex-start .box02Inner:first-child {
margin-right: 30px;
}

@media (max-width: 768px){
.box02,
.box03,
.box04,
.box05 {
display: block;
width: 100%;
margin: 0 0 20px 0;
}

.box02.half,
.box03.half,
.box04.half,
.box05.half {
display: flex !important;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 0;
position: relative;
}

.box02 li,
.box03 li,
.box04 li,
.box05 li,
.box02 .box02Inner,
.box03 .box03Inner,
.box04 .box04Inner,
.box05 .box05Inner {
width: 100%;
margin-bottom: 20px;
}

.box02.half li,
.box03.half li,
.box04.half li,
.box05.half li,
.box02.half .box02Inner,
.box03.half .box03Inner,
.box04.half .box04Inner,
.box05.half .box05Inner {
width: 48%;
flex-shrink: 0;
max-width: 100%;
}

.box02.flex-start li:first-child,
.box02.flex-start .box02Inner:first-child {
margin-right: 0;
}
}


/*------------------------------------------------------------------------*\

$colorBox

\*------------------------------------------------------------------------*/

.colorBox {
background: #F2F2F2;
padding: 50px;
}

.colorBox .link_t {
margin-top: 30px;
text-align: center;
}

.colorBox .colorBoxInner {
background: #FFF;
padding: 50px;
}

.colorBox .colorBoxInner ul:last-child,
.colorBox .colorBoxInner li:last-child,
.colorBox .colorBoxInner p:last-child {
margin-bottom: 0;
}

@media (max-width: 768px){
.colorBox {
padding: 20px;
}

.colorBox.link {
background: #F2F2F2;
padding: 20px 20px 10px 20px;
}

.colorBox .link_t {
margin-top: 10px;
text-align: center;
font-size: 1.4rem;
}

.colorBox .colorBoxInner {
padding: 20px;
}
}


/*------------------------------------------------------------------------*\

$borderBox

\*------------------------------------------------------------------------*/

.borderBox {
border: 2px solid #44af35;
border-radius: 4px;
padding: 30px;
margin-bottom: 30px;
line-height: 1.4;
text-align: center;
font-weight: 900;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}

.borderBox ul:last-child,
.borderBox li:last-child,
.borderBox p:last-child {
margin-bottom: 0;
}


/*------------------------------------------------------------------------*\

$contactBox

\*------------------------------------------------------------------------*/

#Co .contactBox {
-js-display: flex;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
align-items: stretch;
margin: 0 auto;
}

#Co .contactBox .contactBoxInner {
-js-display: flex;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
align-items: stretch;
border: 2px	solid rgba(0,112,186,1);
width: 40%;
margin-right: 2%;
padding: 40px 0;
box-sizing: border-box;
margin-top: 30px;
text-align: center;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
}

#Co .contactBox .contactBoxInner:last-child {
border: 2px	solid rgba(0,166,141,1);
margin-right: 0%;
margin-left: 2%;
padding: 40px 0 50px;
}

#Co .contactBox .contactBoxInner:hover {
background: rgba(0,112,186,1);
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
}

#Co .contactBox .contactBoxInner:last-child:hover {
background: rgba(0,166,141,1);
color: #FFF;
}

#Co .contactBox .contactBoxInner a {
-js-display: flex;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
align-items: center;
font-size: 2rem;
text-decoration: none;
margin: 0 auto;
}

#Co .contactBox .contactBoxInner a p {
font-size: 2rem;
margin-bottom: 0;
color: rgba(0,112,186,1);
font-weight: 900;
line-height: 2.4rem;
text-align: left;
}

#Co .contactBox .contactBoxInner a p:before {
content: '';/*何も入れない*/
display: inline-block;/*忘れずに！*/
width: 30px;/*画像の幅*/
height: 22px;/*画像の高さ*/
background-image: url(../images/ico_mail.png);
background-repeat: no-repeat;
background-size: contain;
vertical-align: middle;
margin-right: 20px;
}

#Co .contactBox .contactBoxInner:hover a p:before {
background-image: url(../images/ico_mail_on.png);
}

#Co .contactBox .contactBoxInner a p .ss {
font-size: 1.4rem;
}

#Co .contactBox .contactBoxInner:last-child a p {
color: rgba(0,166,141,1);
font-size: 3rem;
font-family: 'Roboto', sans-serif;
font-weight: 700;
position: relative;
margin-left: 60px;
}

#Co .contactBox .contactBoxInner:last-child a p:before {
content: '';/*何も入れない*/
display: inline-block;/*忘れずに！*/
width: 24px;/*画像の幅*/
height: 39px;/*画像の高さ*/
background-image: url(../images/ico_tel.png);
background-repeat: no-repeat;
background-size: contain;
vertical-align: middle;
position: absolute;
left: -40px;
top: 25%;
}

#Co .contactBox .contactBoxInner:last-child:hover a p:before {
background-image: url(../images/ico_tel_on.png);
}

#Co .contactBox .contactBoxInner:hover p {
color: #FFF !important;
}

@media (max-width: 768px){
#Co .contactBox {
display: block;
}

#Co .contactBox .contactBoxInner {
width: 100%;
margin-right: 0;
padding: 20px 0;
margin-top: 30px;
}

#Co .contactBox .contactBoxInner:last-child {
margin-right: 0%;
margin-left: 0;
padding: 10px 0 15px;
}

#Co .contactBox .contactBoxInner a p {
font-size: 1.6rem !important;
}

#Co .contactBox .contactBoxInner a p .ss {
font-size: 1.4rem;
}

#Co .contactBox .contactBoxInner:last-child a p {
font-size: 2.6rem !important;
margin-left: 40px;
}

#Co .contactBox .contactBoxInner:last-child a p:before {
left: -35px;
top: 15%;
}
}


/*------------------------------------------------------------------------*\

$テーブル系

\*------------------------------------------------------------------------*/

#Co table th,
#Co table td {
margin: 0;
padding: 30px 0;
font-size: 1.6rem;
line-height: 1.6;
}

#Co table td ul {
margin: 0;
}

#Co table td li {
margin: 0 0 5px 0;
}

#Co table td li:last-child {
margin: 0;
}

#Co table th .ss,
#Co table td .ss {
font-size: 1.2rem;
}

#Co table.tbl,
#Co table.tblBorder {
margin: 0 0 40px 0;
padding: 0;
width: 100%;
}

#Co table.tblBorder th,
#Co table.tblBorder td {
box-sizing: border-box;
border-bottom: solid 1px #000;
vertical-align: middle;
text-align: left;
}

#Co table.tblBorder tr:last-child th,
#Co table.tblBorder tr:last-child td {
border-bottom: none;
}

#Co table.tblBorder tr:first-child th,
#Co table.tblBorder tr:first-child td {
border-top: solid 1px #000;
}

#Co table.tblBorder th {
width: 20%;
padding-right: 20px;
text-align: left;
}

#Co table.tblBorder.fix,
#Co table.tbl.fix {
width: 100%;
table-layout: fixed;
}

#Co table.tblBorder.fix th,
#Co table.tbl.fix th {
width: auto;
}

#Co table.tbl.center th,
#Co table.tbl.center td {
text-align: center !important;
}

#Co table.tbl.center th.no,
#Co table.tbl.center td.no {
text-align: left !important;
}

#Co table.tbl th,
#Co table.tbl td {
padding: 15px;
border: 1px solid #DFDFDF;
text-align:left;
vertical-align: middle;
}

#Co table.tbl th {
font-weight: bold;
background:#f7f7f7;
text-align: left;
}

#Co table td .head {
display: inline-block;
width: 25rem;
margin-bottom: 5px;
}

@media (max-width: 768px){
#Co table.tblBorder {
margin: 0 0 20px 0;
padding: 0;
width: 100%;
}

#Co table.tblBorder th,
#Co table.tblBorder td {
display: block;
width: 100% !important;
margin: 0;
padding: 15px 0;
font-size: 1.4rem;
line-height: 1.6;
}

#Co table.tblBorder th,
#Co table.tblBorder td {
box-sizing: border-box;
border-bottom: none;
vertical-align: middle;
text-align: left;
}

#Co table.tblBorder tr:first-child th,
#Co table.tblBorder tr:first-child td {
border-top: none;
}

#Co table.tblBorder th {
width: 100% !important;
padding-right: 0;
border-bottom: solid 1px #000;
padding: 15px 15px 15px 0;
}

#Co table td .head {
width: 22rem;
}
#Co table td.short .head {
width: 40%;
}
#contactForm tr th .hissu {
margin-right: 10px;
}

#Co table.tbl {
margin: 0 0 20px 0;
width: 100%;
}

#Co table.tbl th,
#Co table.tbl td {
font-size:1.4rem;
}

/*------------------------------------------------------------------------*\

$scroll

\*------------------------------------------------------------------------*/

.scroll {
overflow-x: scroll;
margin-bottom: 30px;
}

.scroll table {
width: 800px !important;
}

.scroll::-webkit-scrollbar {
height: 5px;
}

.scroll::-webkit-scrollbar-track {
background: #dddddd;
}

.scroll::-webkit-scrollbar-thumb {
background: #44AE35;
}

.scroll::-webkit-scrollbar-thumb {
background: #44AE35;
}

#Co table.tbl.fix {
width: 100%;
table-layout: auto;
}

#Co table.tbl.fix th {
white-space: nowrap;
}
}

/*------------------------------------------------------------------------*\

$リスト系

\*------------------------------------------------------------------------*/

ul,
ol {
margin-bottom: 30px;
}

ol {
padding: 0 0 0 1.5rem ;
}

ul li,
ol li {
font-size: 1.6rem;
padding: 0;
margin-bottom: 10px;
}

ul li:last-child,
ol li:last-child {
margin-bottom: 0;
}

.point li {
padding-left:1em;
text-indent:-1em;
}

.point li::before{
content: '';
display: inline-block;
width: 0;
height: 0;
margin-right: 8px;
border-style: solid;
border-width: 4.5px 0 4.5px 8px;
border-color: transparent transparent transparent #44af35;
}

.point02 li {
position: relative;
padding-left: 10px;
}

.point02 li:before {
content: "";
position: absolute;
top: 0.75em;
left: 0;
width: 3px;
height: 3px;
background: rgba(0,0,0,0.8);
border-radius: 50%;
}

.ind {
text-indent: -1em !important;
padding-left: 1em !important;
}

@media only screen and (max-width: 767px){
ul li,
ol li {
font-size: 1.4rem;
}
}



/*------------------------------------------------------------------------*\

$蛍光ペン

\*------------------------------------------------------------------------*/

.pen {
position: relative;
z-index: 1;
}

.pen:after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 0%;
height: 20px;
background: linear-gradient(transparent 60%, #ffe001 40%);
z-index: -1;
transition: all 0.8s;
}

.pen.isActive:after {
width: 100%;
}

.wavy {
text-decoration: #ffe001 wavy underline;
-webkit-text-decoration: #ffe001 wavy underline;
}


/*------------------------------------------------------------------------*\

$section

\*------------------------------------------------------------------------*/

.sectionInner {
padding: 80px 0;
width: 1020px;
margin: 0 auto;
position: relative;
}

.wideInner {
padding: 80px 5%;
width: 100%;
margin: 0 auto;
position: relative;
}

.sectionInner .catch {
font-size: 1.6rem;
margin-bottom: 5px;
text-align: center;
line-height: 1.6;
}

@media only screen and (max-width: 767px){
.sectionInner {
padding: 40px 20px;
width: 100%;
margin: 0 auto;
position: relative;
}

.wideInner {
padding: 40px 20px;
width: 100%;
margin: 0 auto;
position: relative;
}
}


/*------------------------------------------------------------------------*\

$動く下線

\*------------------------------------------------------------------------*/

.Text-Span {
position: relative;
z-index: 1;
}
.Text-Span:after {
content: '';
position: absolute;
left: 0;
bottom: -14px;
width: 0%;
height: 4px;
background: #5bc8ac;
z-index: -1;
transition: all 0.8s;
}
.Text-Span.isActive:after {
width: 100%;
}

/*------------------------------------------------------------------------*\

$dot

\*------------------------------------------------------------------------*/

.dot {
position: relative;
padding-top: 0.2em;
color: #e76c15;
}

.dot::before {
position: absolute;
content: "";
width: 0.1em;
height: 0.1em;
border-radius: 50%;
background-color: #e76c15;
top: 0;
left: 50%;
transform: translate(-50%, 0);
}


/*------------------------------------------------------------------------*\


$btnTop


\*------------------------------------------------------------------------*/

#btnTop{
width: 40px;
height: 40px;
position: fixed;
right: 20px;
bottom: 40px;
background:rgba(20,126,122,0.6);
border-radius: 50%;
z-index: 200;
}

#btnTop a{
position: relative;
display: block;
width: 40px;
height: 40px;
text-decoration: none;
}

#btnTop a::before{
content: '';
border-top: 4px solid #FFFFFF;
border-left: 4px solid #FFFFFF;
transform: rotate(45deg);
width: 10px;
height: 10px;
color: #fff;
position: absolute;
top: 4px;
bottom: 0;
right: 0;
left: 0;
margin: auto;
text-align: center;
}


@media only screen and (max-width: 767px){
#btnTop{
bottom: 80px;
}
}


/*------------------------------------------------------------------------*\

$btn

\*------------------------------------------------------------------------*/

#Co .btn a {
color:  #FFFFFF;
line-height: 1;
text-decoration: none;
position: relative;
background: #44af35;
padding: 15px 10px;
width: 300px;
font-size: 1.6rem;
border-radius: 100px;
margin: 0 auto;
-webkit-transition-duration: 0.5s;
transition-duration: 0.5s;
text-align: center;
justify-content: center;
font-weight: 500;
display: flex;
cursor: pointer;
align-items: center;/* 縦位置の調整 */
}

#Co .btn a:hover {
background: #007431;
-webkit-transition-duration: 0.5s;
transition-duration: 0.5s;
}

#Co .btn a:after {
content: "";
transition: .3s;
position: absolute;
right: 10px;
top: 50%;
width: 8px;
height: 8px;
border-top: solid 2px #FFFFFF;
border-right: solid 2px #FFFFFF;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
}

@media only screen and (max-width: 767px){
#Co .btn a {
width: 80%;
font-size: 1.4rem;
}
}

/*------------------------------------------------------------------------*\

$btngroup

\*------------------------------------------------------------------------*/

#Co #btngroup ul {
width: 100%;
margin: 0;
position:relative;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 30px 0;
position: relative;
}

#Co #btngroup ul li {
margin-bottom: 20px;
width: 31.5%;
}

#Co #btngroup ul li a {
width: 100%;
display: block;
position: relative;
border: 1px solid #44af35;
background: #FFF;
color: #44af35;
padding: 15px 20px;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
font-size: 1.4rem;
text-decoration: none;
-webkit-transform: translateZ(0);
transform: translateZ(0);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
/* -moz-osx-font-smoothing: grayscale; */
-webkit-transition-property: transform;
transition-property: transform;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

#Co #btngroup ul li a:after {
content: "";
position: absolute;
right: 10px;
top: 50%;
width: 8px;
height: 8px;
border-top: solid 2px #44af35;
border-right: solid 2px #44af35;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
}

#Co #btngroup ul li a:hover:after,
#Co #btngroup ul li a.on:after {
border-top: solid 2px #FFF;
border-right: solid 2px #FFF;
}

#Co #btngroup ul li a:before,
#Co #btngroup ul li a.on:before {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: #44af35;
-webkit-transform: scaleX(0);
transform: scaleX(0);
-webkit-transform-origin: 0 50%;
transform-origin: 0 50%;
-webkit-transition-property: transform;
transition-property: transform;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

#Co #btngroup ul li a:hover:before,
#Co #btngroup ul li a:focus:before,
#Co #btngroup ul li a:active:before,
#Co #btngroup ul li a.on:before {
-webkit-transform: scaleX(1);
transform: scaleX(1);
background: #44af35;
}

#Co #btngroup ul li a:hover,
#Co #btngroup ul li a.on {
color: #FFFFFF;
}

@media only screen and (max-width: 767px){
#Co #btngroup ul li {
margin-bottom: 15px;
width: 48.5%;
}

#Co #btngroup ul li a {
padding: 15px 5px;
font-size: 1.2rem;
}

#Co #btngroup ul li a:after {
content: none;
}
}


/*------------------------------------------------------------------------*\

$anchorBox

\*------------------------------------------------------------------------*/

#anchorBox ul {
width: 1020px;
margin: 0;
position: relative;
margin: 0 auto 30px auto;
}

#anchorBox ul li {
margin-bottom: 20px;
}

#anchorBox ul li a {
width: 100%;
display: block;
position: relative;
border: 1px solid #f83600;
background: #FFF;
color: #f83600;
padding: 15px 20px;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
font-size: 1.4rem;
text-decoration: none;
-webkit-transform: translateZ(0);
transform: translateZ(0);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
/* -moz-osx-font-smoothing: grayscale; */
-webkit-transition-property: transform;
-webkit-transition-property: -webkit-transform;
transition-property: -webkit-transform;
transition-property: transform;
transition-property: transform, -webkit-transform;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

#anchorBox ul li a:after {
content: "";
position: absolute;
right: 10px;
top: 50%;
width: 8px;
height: 8px;
border-top: solid 2px #f83600;
border-right: solid 2px #f83600;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
}

#anchorBox ul li a:hover:after,
#anchorBox ul li a.on:after {
border-top: solid 2px #FFF;
border-right: solid 2px #FFF;
}

#anchorBox ul li a:before,
#anchorBox ul li a.on:before {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: #f83600;
-webkit-transform: scaleX(0);
transform: scaleX(0);
-webkit-transform-origin: 0 50%;
transform-origin: 0 50%;
-webkit-transition-property: transform;
-webkit-transition-property: -webkit-transform;
transition-property: -webkit-transform;
transition-property: transform;
transition-property: transform, -webkit-transform;
-webkit-transition-duration: 0.3s;
transition-duration: 0.3s;
-webkit-transition-timing-function: ease-out;
transition-timing-function: ease-out;
}

#anchorBox ul li a:hover:before,
#anchorBox ul li a:focus:before,
#anchorBox ul li a:active:before,
#anchorBox ul li a.on:before {
-webkit-transform: scaleX(1);
transform: scaleX(1);
background: #f83600;
background: -webkit-gradient(linear, left top, right top, from(#f83600), to(#ff7c00));
background: linear-gradient(90deg, #f83600 0%, #ff7c00 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f83600",endColorstr="#ff7c00",GradientType=1);
}

#anchorBox ul li a:hover,
#anchorBox ul li a.on {
color: #FFFFFF;
}

@media screen and (max-width: 767px) {
#anchorBox ul {
width: 100%;
margin: 0 auto 10px auto;
}
#anchorBox ul li {
width: 48.5% !important;
margin-bottom: 10px;
}
#anchorBox ul li a {
padding: 10px 20px;
}
}


/*------------------------------------------------------------------------*\

$pager

\*------------------------------------------------------------------------*/

.pager .pagination {
text-align: center;
margin-top: 50px;
}

.pager .pagination li {
display: inline;
margin: 0 2px;
padding: 0;
display: inline-block;
background:#147e7a;
width: 40px;
height: 40px;
text-align: center;
position: relative;
border-radius: 40px;
}

.pager .pagination li a{
vertical-align: middle;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
text-align: center;
display:table;
color: #fff;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
font-size: 1.3rem;
}

.pager .pagination li a span{
display:table-cell;
vertical-align:middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
color: #000;
background: #ecf7ea;
border-radius: 50px;
}

@media only screen and (max-width: 767px){
.pager {
margin: 30px 0;
}

.pager .pagination {
margin-top: 0;
}

.pager .pagination li{
display: none;
}

.pager .pagination li.pre,
.pager .pagination li.next{
display: inline-block;
width: 40%;
height: 50px;
text-align: center;
}

.pager .pagination li.pre a,
.pager .pagination li.next a{
width: 100%;
text-align: center;
}

.pager .pagination li.pre span::after{
content: "前の10件へ";
}

.pager .pagination li.next span::before{
content: "次の10件へ";
}
}


/*------------------------------------------------------------------------*\

$contact

\*------------------------------------------------------------------------*/

#Co p .hissu {
display:inline-block;
font-size: 0.688em;
background: #f44336;
color: #FFF;
padding: 1px 15px;
line-height: 1.6em;
border-radius: 30px;
}

#Co tr th .hissu {
display: block;
text-align: right;
float: right;
font-size: 1rem;
background: #f44336;
color: #FFF;
padding: 3px 15px;
line-height: 1;
border-radius: 30px;
margin-top: 5px;
}

#contactForm input[type="text"],
#contactForm input[type="password"],
#contactForm textarea {
padding: 14px 20px;
background-color: #f6f6f6;
border: 1px solid #e5e5e5;
border-radius: 3px;
box-sizing: border-box;
font-size:1.6rem;
width:100%;
color:#3e3e3e;
font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

#contactForm .select {
position: relative;
height: 47.5px;
background: white;
display:inline-block;
color: #525259;
}

#contactForm .select:after {
content: '';
position: absolute;
top: 0;
width: 0;
height: 0;
right: 10px;
bottom: 0;
margin: auto;
border-style: solid;
border-width: 5px 5px 0 5px;
border-color: #FFFFFF transparent transparent transparent;
pointer-events: none;
}

#contactForm .select:before {
width: 30px;
position: absolute;
top: 1px;
right: 1px;
bottom: 1px;
background: #147e7a;
content: '';
pointer-events: none;
}

#contactForm .select select {
font-size: 14px;
border: none;
box-shadow: none;
border-radius: 0;
background: transparent;
height: 100%;
width: 100%;
cursor: pointer;
outline: none;
padding-right: 35px;
padding-left: 15px;
background:#f6f6f6;
border: 1px solid #e5e5e5;
-moz-appearance: none;
-webkit-appearance: none;
color: #525259;
font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

/*IE対応*/
#contactForm select::-ms-expand {
display: none;
}

#contactForm input[type=submit],
#contactForm input[type=button]{
background:none;
border:none;
}

#btnCheck{
text-align:center;
margin-top: 50px;
}

#btnCheck input[type=submit],
#btnSent input[type=submit],
#btnSent input[type=button] {
color:  #FFFFFF;
display: block;
line-height: 1;
text-decoration: none;
position: relative;
background: rgb(0,112,186);
background: -moz-linear-gradient(270deg, rgba(0,112,186,1) 0%, rgba(0,166,141,1) 100%);
background: -webkit-linear-gradient(270deg, rgba(0,112,186,1) 0%, rgba(0,166,141,1) 100%);
background: linear-gradient(270deg, rgba(0,112,186,1) 0%, rgba(0,166,141,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0070ba",endColorstr="#00a68d",GradientType=1);
padding: 25px 40px;
width: 400px;
font-size: 1.6rem;
margin: 0 auto;
border-radius: 100px;
-webkit-transition-duration: 0.5s;
transition-duration: 0.5s;
-webkit-transition-property: box-shadow;
transition-property: box-shadow;
text-align: center;
font-weight: 900;
}

input[type=submit],
input[type=button] {
border-radius: 0;
-webkit-box-sizing: content-box;
-webkit-appearance: button;
appearance: button;
border: none;
box-sizing: border-box;
cursor: pointer;
}

#btnSent input[type=button] {
background: #CCC !important;
color: #FFF;
}

#btnSent {
margin-top: 50px;
}

#btnSent ul{
margin:0 !important;
text-align:center;
}

#btnSent li{
display:inline-block;
}

@media only screen and (max-width: 767px){
#btnCheck input[type=submit],
#btnSent input[type=submit],
#btnSent input[type=button] {
padding: 25px 10px;
width: 100%;
font-size: 1.4rem;
}

#btnSent {
margin-top: 30px;
}

#Co .page #btnSent li{
display:inline-block;
width: 48.5%;
}

#Co .page #btnSent li input[type=submit],
#Co .page #btnSent li input[type=button] {
width: 100%;
margin: 0 ;
padding: 15px 0px;
font-size: 1.4rem;
}
}


/*------------------------------------------------------------------------*\

$タブレットスタイル

\*------------------------------------------------------------------------*/

.iPad {
}




/*------------------------------------------------------------------------*\

$動き

\*------------------------------------------------------------------------*/

.mushroom {
font-weight: 400;
font-style: normal;
color: transparent;
letter-spacing: .1em;
line-height: 1;
display: -webkit-box;
display: flex;
color: #000;
}

@media(max-width:767px) {
.mushroom {
font-size: 13.3333333333vw;
-webkit-text-stroke: .5vw #fff;
}
}

.mushroom span {
-webkit-transform: scaleY(0);
transform: scaleY(0);
-webkit-transform-origin: bottom center;
transform-origin: bottom center
}

.mushroom.active span {
-webkit-animation: mushroom .6s ease-out forwards;
animation: mushroom .6s ease-out forwards;
}

@-webkit-keyframes mushroom {
0% {
-webkit-transform: scaleY(0) rotate(-10deg);
transform: scaleY(0) rotate(-10deg)
}
25% {
-webkit-transform: scaleY(1) rotate(20deg);
transform: scaleY(1) rotate(20deg)
}
75% {
-webkit-transform: scaleY(1) rotate(-20deg);
transform: scaleY(1) rotate(-20deg)
}
to {
-webkit-transform: scaleY(1) rotate(0);
transform: scaleY(1) rotate(0)
}
}

@keyframes mushroom {
0% {
-webkit-transform: scaleY(0) rotate(-10deg);
transform: scaleY(0) rotate(-10deg)
}
25% {
-webkit-transform: scaleY(1) rotate(20deg);
transform: scaleY(1) rotate(20deg)
}
75% {
-webkit-transform: scaleY(1) rotate(-20deg);
transform: scaleY(1) rotate(-20deg)
}
to {
-webkit-transform: scaleY(1) rotate(0);
transform: scaleY(1) rotate(0)
}
}

@-webkit-keyframes mushroom-hover {
0% {
-webkit-transform: rotate(0);
transform: rotate(0)
}
25% {
-webkit-transform: rotate(20deg);
transform: rotate(20deg)
}
75% {
-webkit-transform: rotate(-20deg);
transform: rotate(-20deg)
}
to {
-webkit-transform: rotate(0);
transform: rotate(0)
}
}

@keyframes mushroom-hover {
0% {
-webkit-transform: rotate(0);
transform: rotate(0)
}
25% {
-webkit-transform: rotate(20deg);
transform: rotate(20deg)
}
75% {
-webkit-transform: rotate(-20deg);
transform: rotate(-20deg)
}
to {
-webkit-transform: rotate(0);
transform: rotate(0)
}
}
