@charset "utf-8";
/* CSS Document */

/*===========================================
1024
===========================================*/
@media all and (max-width: 1024px) {
	#mainVisual .prev-arrow {
		top: 40%;
		left: 2.5%;
	}
	#mainVisual .next-arrow {
		right: 2.5%;
		top: 40%;
	}
	#mainVisual .mainVisual01 .sp {
		overflow: hidden;
	}
	#mainVisual .mainVisual01 .sp img {
		width: 100%;
		vertical-align: top;
	}
	#mainVisual .mainVisual01 .sp .btn01 {
		width: 50%;
		display: block;
		float: left;
	}
	#mainVisual .mainVisual01 .sp .btn02 {
		width: 50%;
		display: block;
		float: left;
	}
    .mfp-iframe-scaler {
        padding-top: 65%!important;
    }
    #mainVisual .mainVisual01 .btn03 div span {
        animation: reflection 4s ease-in-out infinite;
    }
    #mainVisual .mainVisual01 .btn04 div span {
        animation: reflection2 4s ease-in-out infinite;
        animation-delay: 2s;
    }
    @keyframes reflection {
        0% { transform: scale(0) rotate(45deg); opacity: 0; }
        80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { transform: scale(4) rotate(45deg); opacity: 1; }
        100% { transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-webkit-keyframes reflection {
        0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-moz-keyframes reflection {
        0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-ms-keyframes reflection {
        0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-o-keyframes reflection {
        0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @keyframes reflection2 {
        0% { transform: scale(0) rotate(45deg); opacity: 0; }
        80% { transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { transform: scale(4) rotate(45deg); opacity: 1; }
        100% { transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-webkit-keyframes reflection2 {
        0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-moz-keyframes reflection2 {
        0% { -moz-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -moz-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -moz-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -moz-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-ms-keyframes reflection2 {
        0% { -ms-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -ms-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -ms-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -ms-transform: scale(50) rotate(45deg); opacity: 0; }
    }
    @-o-keyframes reflection2 {
        0% { -o-transform: scale(0) rotate(45deg); opacity: 0; }
        80% { -o-transform: scale(0) rotate(45deg); opacity: 0.5; }
        81% { -o-transform: scale(4) rotate(45deg); opacity: 1; }
        100% { -o-transform: scale(50) rotate(45deg); opacity: 0; }
    }
	#introduction {
		width: auto;
	}
	#introduction img {
		width: 9%;
	}
	#introduction .txt01 {
		width: 89%;
	}
	#information {
		width: auto;
	}
	#information #reserch {
		width: 62%;
	}
	#information #reserch #update {
		padding-top: 15px;
	}
	#information #reserch #update p {
		padding: 0 8px 15px;
		font-size: 17px;
	}
	#information #reserch #update p strong {
		padding: 5px 10px;
		font-size: 16px;
	}
	#information #reserch #refine .tab li.select {
		width: 54%;
	}
	#information #reserch #refine .tab li {
		width: 46%;
	}
	#information #reserch #refine .area .kantou {
		width: 48%;
		padding-right: 2%;
	}
	#information #reserch #refine .area .kantou dd {
		background: url(/top/images/mapKantou.gif) no-repeat 0 0;
		background-size: 100%;
		height: auto;
	}
	#information #reserch #refine .area .toukai {
		width: 48%;
	}
	#information #reserch #refine .area .toukai dd {
		background: url(/top/images/mapToukai.gif) no-repeat 0 0;
		background-size: 100%;
		height: auto;
	}
	#information #reserch #refine .area .kantou dd ul, #information #reserch #refine .area .toukai dd ul {
		overflow: hidden;
	}
	#information #reserch #refine .area .kantou dd ul li, #information #reserch #refine .area .toukai dd ul li {
		display: block;
		float: left;
		margin: 0 2% 10px 0;
		width: 48%;
	}
	.btnConditions01 {
		width: 60%;
	}
	#information #new {
		width: 32%;
		padding: 0 2% 20px;
	}
	#information #new h2 {
		position: static;
		width: 90%;
		font-size: 20px;
		color: #ee7f90;
		background-size: 80%;
	}
	#information #new ul {
		margin-top: 5px;
	}
	#information #new ul li a {
		font-size: 11px;
		padding: 0 12px;
	}
	#topic {
		width: auto;
	}
	#topic li {
		width: 18.4%;
	}
	#topic li:not(:last-child) {
		margin-right: 2%;
	}
	#topic li a span {
		font-size: 15px;
	}
	#topic li:nth-child(4) a span {
		font-size: 13px;
		padding: 12px 0;
		height: 46px;
	}
	#report .reportContentsWrap {
		width: auto;
		border-spacing: 15px 0;
	}
	#report .catch br {
		display: none;
	}
	#flow h2 span {
		width: 70%;
	}
	#flow .boxFlowWrap {
		width: auto;
	}
	#flow .boxFlow01 h3, #flow .boxFlow02 h3 {
		font-size: 20px;
	}
	#flow .boxFlow01 h3 img, #flow .boxFlow02 h3 img {
		width: 40px;
	}
	#flow .boxFlow01 p, #flow .boxFlow02 p {
		font-size: 14px;
	}
	#uniqueness h2 span {
		width: 70%;
	}
	.boxUniquenessWrap {
		width: auto;
	}
	#uniqueness .boxUniqueness01 img {
		width: 9%;
	}
	#uniqueness .boxUniqueness01 p {
		width: 88%;
	}
	#uniqueness section p {
		font-size: 14px;
	}
	#list section {
		width: auto;
	}
	#list section.listBox01 dl dt {
		width: 13%;
		padding-left: 1.2%;
	}
	#list section.listBox01 dl dd {
		width: 84%;
	}
	#bnrArea ul li a img {
		width: 80%;
	}
	#welcome {
		width: auto;
	}
	#welcome p {
		font-size: 14px;
	}
    #recruit {
        width: auto;
    }
}

/*===========================================
738
===========================================*/
@media all and (max-width: 738px) {
	#mainVisual .sp {
		display: block!important;
	}
	#mainVisual .slick-prev,
	#mainVisual .slick-next {
		display: none!important;
	}
	#mainVisual ul.slide-dots {
		text-align: center;
		letter-spacing: -.4em;
		margin: 15px auto 0;
	}
	#mainVisual ul {
		margin: 0 auto;
	}
	#mainVisual ul.slide-dots li {
		display: inline-block;
		letter-spacing: -.4em;
		margin: 0 12px;
		width: 16px;
		/*height: 16px;*/
	}
	#mainVisual ul.slide-dots li button {
		width: 100%;
		height: 0;
		display: block;
		padding-top: 22px;
		border-radius: 100%;
		background: #dddddd;
		overflow: hidden;
		border: none;
        outline: none;
	}
	#mainVisual ul.slide-dots li.slick-active button {
		background: #ee7f90;
	}
	#mainVisual .mainVisual01 .sp {
        position: relative;
	}
	#mainVisual .mainVisual01 .sp .btn03 {
        position: absolute;
        top: 38.75%;
        left: 12%;
        display: block;
        width: 37.6%;
	}
	#mainVisual .mainVisual01 .sp .btn04 {
        position: absolute;
        top: 38.75%;
        right: 12%;
        display: block;
        width: 37.6%;
	}
    .mfp-iframe-scaler {
        padding-top: 145%!important;
    }
	#introduction {
		padding: 10px 3% 0;
	}
	#introduction img {
		width: 20%;
		display: inline-block;
		margin: 0 2% 0.4em 0;
	}
	#introduction .txt01 {
		width: auto;
		float: none;
	}
	#introduction .txt01 h1 {
		font-size: 17px;
		margin-bottom: 0.8em;
		line-height: 1.4;
	}
	#information {
		padding: 0 3%;
	}
	#information #reserch {
		width: auto;
		float: none;
	}
	#information #reserch #update {
		padding-top: 20px;
	}
	#information #reserch #update p {
		padding: 0 0 20px 3.5em;
		font-size: 15px;
		letter-spacing: -1px;
		text-indent: -3.5em;
	}
	#information #reserch #update p strong {
		margin-right: 5px;
		font-size: 14px;
		padding: 5px;
	}
	#information #reserch #refine .tab {
		overflow: hidden;
	}
	#information #reserch #refine .tab li {
		display: block;
		float: left;
	}
	#information #reserch #refine .tab li.select,
	#information #reserch #refine .tab li {
		font-size: 13px;
		width: 50%;
	}
	#information #reserch #refine .tab li.select strong,
	#information #reserch #refine .tab li strong {
		display: block;
		font-size: 22px;
	}
	#information #reserch #refine .tab li.select img,
	#information #reserch #refine .tab li img {
		width: 22px;
	}
	#information #reserch #refine .area .kantou dt, #information #reserch #refine .area .toukai dt {
		font-size: 17px;
	}
	#information #reserch #refine .area .kantou dt span, #information #reserch #refine .area .toukai dt span {
		margin-right: 5px;
	}
	#information #reserch #refine .area .kantou dt strong, #information #reserch #refine .area .toukai dt strong {
		display: inline;
	}
	#information #reserch #refine .area .kantou dd,
	#information #reserch #refine .area .toukai dd {
		padding: 0;
	}
	#information #reserch #refine .freeword {
		padding: 15px 0;
	}
	#information #reserch #refine .freeword dd input#freeword {
		font-size: 14px;
		padding: 8px;
		width: 94%;
	}
	#information #reserch #refine .freeword input.btnFreeword01 {
		width: 30%;
		margin: 0.8em auto 0;
		display: block;
		font-size: 16px;
	}
	#information #reserch #refine .conditions dl {
		margin-bottom: 1.2em;
		padding-bottom: 1.2em;
	}
	#information #reserch #refine .conditions dl dd input, #information #reserch #refine .conditions dl dd select {
		padding: 2%;
	}
	#information #reserch #refine .conditions dl dd input[type="text"], #information #reserch #refine .conditions dl dd textarea {
		padding: 2% 1%;
	}
	#information #new {
		width: auto;
		float: none;
	    margin-top: 45px;
		padding: 0 4% 40px;
	}
	#information #new h2 {
		width: 80%;
		font-size: 24px;
		background-size: 75%;
		padding: 14px 0 16px;
	}
	#information #new ul li a {
		font-size: 14px;
		background: url(/common/images/arrow04.png) no-repeat 97% 48%;
		background-size: 2.5% auto;
	}
	#information #new ul li a div {
		padding: 15px 10px 15px 0;
	}
	#information #new ul li a div strong {
		margin-bottom: 3px;
	}
	#topic {
		margin: 25px auto 0;
		padding: 0 3%;
	}
	#topic li {
		text-align: left;
		width: 44%;
		vertical-align: top;
	}
	#topic li:not(:last-child) {
		margin: 20px 3% 0;
	}
	#topic li:last-child {
		margin: 0 auto;
		float: none;
		clear: both;
		padding-top: 20px;
	}
	#report {
		padding-top: 40px;
	}
	#report .reportBox01 {
		background: url(/top/images/reportBg01.gif) repeat-x 0 0 #faf2ec;
		padding: 35px 6% 25px;
		background-size: 4%;
	}
	#report .reportBox01 h2 {
		font-size: 26px;
		margin-bottom: 15px;
		line-height: 1.4;
	}
	#report .reportContentsWrap {
		display: block;
	}
	#report .reportContents01, #report .reportContents02, #report .reportContents03 {
		display: block;
		width: auto;
		margin-bottom: 30px;
	}
	#report .catch {
		padding: 15px 20px;
		font-size: 16px;
		margin-bottom: 15px;
	}
	#report .reportContents01 ul li a,
	#report .reportContents02 ul li a,
	#report .reportContents03 ul li a {
		background: url(/common/images/arrow04.png) no-repeat 100% 48%;
		background-size: 3% auto;
	    padding: 12px 5% 12px 0;
	}
	#report .box01 {
		padding: 0 3% 20px;
	}
	#report .box01 .btn01 {
		width: 60%;
	}
	#flow h2 span {
		display: block;
		background: #ee7f90;
		width: auto;
		margin: 0 auto;
		padding: 23px 0;
		color: #fff;
		font-weight: bold;
		font-size: 26px;
		text-align: center;
	}
	#flow .boxFlow01 {
		padding: 10px 20px 0 10px;
	}
	#flow .arrow01 {
		display: block;
		width: 20%;
		margin: 10px auto 0;
	}
	#uniqueness h2 {
		margin-bottom: 20px;
	}
	#uniqueness h2 span {
		width: auto;
		font-size: 26px;
	}
	.boxUniquenessWrap {
		padding: 0 3%;
	}
	#uniqueness .boxUniqueness01 img{
		/*width: 14%;
		margin: 0 auto 10px;*/
		display: none;
	}
	#uniqueness .boxUniqueness01 {
		margin-bottom: 20px;
	}
	#uniqueness .boxUniqueness01 p {
		width: auto;
	}
	#uniqueness section h3 {
		font-size: 17px;
		border-bottom: 2px solid #ff8a5b;
		letter-spacing: -.4em;
	}
	#uniqueness section h3 strong {
		font-family: 'Sriracha', cursive;
		font-size: 50px;
		display: inline-block;
		letter-spacing: normal;
		vertical-align: middle;
		width: 14%;
	}
	#uniqueness section h3 b {
		display: inline-block;
		letter-spacing: normal;
		vertical-align: middle;
		width: 86%;
	}
	#uniqueness section p {
		margin: 0.8em 0 0 0;
	}
	#listSp {
		margin: 40px 0 20px;
		background: #f8f8f8;
		padding-top: 0;
	}
	#listSp h2 {
		font-size: 26px;
		padding: 23px 0;
		color: #fff;
		font-weight: bold;
		text-align: center;
		box-shadow: 0 3px 3px rgba(0,0,0,0.2);
		background: #35c3c5;
		margin-bottom: 7px;
	}
	#listSp dl dt {
		font-size: 20px;
		padding: 10px 3% 5px;
		color: #333;
		font-weight: bold;
		border-bottom: 1px solid #ccc;
		background: #ddd;
		background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ddd));
		background: -webkit-linear-gradient(top, #fff, #ddd);
		background: linear-gradient(to bottom, #fff, #ddd);
		position: relative;
	}
	#listSp dl dt img {
		display: inline-block;
		vertical-align: middle;
		width: 7%;
		margin-right: 6%;
	}
	#listSp dl dt.active {
		background: #c6f4f5;
	}
	#listSp dl dt span.plus,
	#listSp dl dt span.minus {
		position: absolute;
		top: 24%;
		right: 3%;
		font-family: 'Comfortaa', cursive;
		font-size: 24px;
		color: #fff;
		background: #ee7f90;
		padding: 4px;
		border-radius: 8px;
		font-weight: 900;
	}
	#listSp dl dd {
		display: none;
	}
	#listSp dl dd ul li a {
		display: block;
		font-size: 18px;
		padding: 15px 0 15px 24%;
		color: #333;
		font-weight: bold;
		border-bottom: 1px dashed #b2b2b2;
		background: url(/common/images/arrow02.png) no-repeat 17% 50%;
		background-size: 3% auto;
	}
	#bnrArea ul li a img {
		width: 100%;
	}
	#welcome {
		margin: 25px auto 0;
		padding: 0 3%;
	}
	#welcome h2 {
		font-size: 18px;
	}








	#recruit {
		width: auto;
		margin-top: 40px;
		background: #fcf7f4;
		padding: 15px 0 30px;
	}
	#recruit .celebration {
		width: 100px;
		top: 5px;
		right: 5px;
	}
	#recruit h3 {
		font-size: 24px;
	}
	#recruit h4 {
		font-size: 20px;
		line-height: 1.4;
		margin-top: 15px;
	}
	#recruit h4 span {
		background: none;
	}
	#recruit h4::before{
		display: none;
	}
	#recruit .recruitBox01 li {
		margin-bottom: 5px;
		font-size: 16px;
	}
	#recruit table {
		border: none;
	}
	#recruit table th {
		display: block;
		width: auto;
		border: none;
	    background: #ebebeb;
	}
	#recruit table th .required,
	#recruit table th .option {
		top: -2px;
	}
	#recruit table td {
		display: block;
		width: auto;
		padding: 18px 10px;
		border: none;
	}
	#recruit table td input {
		font-size: 14px;
		padding: 8px;
		width: 94%;
		background: #fff;
	}
	#recruit table td select {
		padding: 8px;
		background: #fff;
	}
	#recruit table td textarea {
		background: #fff;
	}
	#recruit table td p.txtForm01 {
		display: none;
		/*display: block;*/
		margin: 5px 0 0;
	}
	#recruit .formBtn01 {
		width: 60%;
		margin: 0 auto;
	}


}
