@charset "utf-8";


/*　タイアップサイト用
-------------------------------------------------*/
@media screen and (min-width:768px) {
	body {
	  text-align:center;
	}
}

body {
	text-align:center;
  text-align:center;
  color:#000;
  font-family: 游ゴシック, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight:500;
  font-size:14px;
  line-height:1.8em;
  width:100%;
  overflow-x:hidden;
}


@media all and (-ms-high-contrast:none){
  body { 
	  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
   } 
}

@media screen and (min-width:950px) {
	body {
		font-size: 17px;
	}
}

#tieup a:link,
#tieup a:visited {
  color:#03030;
}

#tieup a:link {
  opacity: 1;
  filter: alpha(opacity=100);
  -ms-filter: "alpha(opacity=100)";
  -khtml-opacity: 1;
  -moz-opacity: 1;
  transition:0.5s
}

#tieup a:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -khtml-opacity: 0.7;
  -moz-opacity: 0.7;
  transition:0.5s
}

#tieup * {
	box-sizing: border-box;
}

img {
	max-width:100%;
	height: auto;
}

#tieup a:hover {
  text-decoration:none;
  color:#ccc;
  opacity: 0.5;
  filter: alpha(opacity=50);
  -ms-filter: "alpha(opacity=50)";
  -khtml-opacity: 0.5;
  -moz-opacity: 0.5;
  transition:0.5s;
}


/*　枠組み
----------------------------------------------------------*/

.container {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	text-align: justify;
	line-height: 1.8;
    padding-left: 25px;
    padding-right: 25px;
}

/*タブレット対応*/
@media screen and (min-width:758px) {
    
  .container {
       max-width: 650px;
       margin-left: auto;
       margin-right: auto ;
    }  
}

@media screen and (min-width:950px) {
    
    .container {
        max-width: 750px;
        box-sizing: content-box !important;
    }
    
    .container--920 {
        max-width: 920px;
    }
}


/*.mainv*/

.mainv {
    padding: 15px;
}

.mainv-img {
    text-align: center;
}

.mainv-img img {
    width: 100%;
    max-width: 1360px;
    margin: 0 auto;
}

.mainv-ttl {
    text-align: left;
    margin: -20px 10px 20px 10px;
}

@media screen and (min-width:950px) {
    .mainv {
        padding: 30px 30px 0 30px;
    }
    .mainv-ttl {
        margin: -50px auto 50px auto;
        max-width: 980px;
    }
    
    .mainv-ttl-img {
        width: 765px;
    }
}


/*lead*/

.lead .container {
    line-height: 1.5;
}

.lead {
    text-align: justify;
    margin-top: -15px;
}

.lead-img-sp {
    width: 35%;
    margin: 3px 0 10px 15px;
    float: right;
}

@media screen and (min-width:950px) {
    
    .container.lead {
        max-width: 980px;
    }
    
    .lead {
        display: flex;
        justify-content: space-between;
        margin-top: 30px;
    }

    .lead-txt {
        width: 73%;
    }

    .lead-img-pc {
        width: 22%;
    }
}


/*２段組*/
@media screen and (min-width:758px) {
 
    .c-d-md-flex {
        justify-content: space-between;
        flex-direction: row-reverse;
    }
    
    .sec-01-txt {
        width: 49%;
    }
    
    .sec-01-img {
        width: 43.5%;
    }
    
}


.img-radius {
    border-radius: 10px;
}

@media screen and (min-width:758px) {
    .img-radius {
        border-radius: 20px;
    }
    
    .img-mw-700 {
        max-width: 650px;
    }
}

.img-01 {
    padding-bottom: 15px;
    margin: 0 6%;
}


.img-01 figcaption {
    padding-top: 0.5em;
    line-height: 1.3;
    font-size: 80%;
    color: #666;
}

@media screen and (min-width:758px) {
    .img-01 {
        margin: 0;
    }
    
    .img-01 figcaption {
        padding-bottom: 20px;
        padding-top:1em;
    }
}

.ttl-01 {
    text-align: center;
    font-size: 21px;
    line-height: 1.3;
    font-weight: bold;
    color: #03B9FC;
    padding-bottom: 20px;
}

@media screen and (min-width:758px) {
    .ttl-01 {
        font-size: 32px;
        padding-bottom: 40px;
    }
}

.txt-01 {
    padding-bottom: 15px;
}


@media screen and (min-width:758px) {
    .txt-01 {
        padding-bottom: 35px;
    }
    
    .txt-01:last-child {
        padding-bottom: 0;
    }
}
.section {
    padding: 40px 0 35px 0;
}

.bg-gray {
    background: #F5F5F5;
    border-radius: 50px 0 50px 0;
}

@media screen and (min-width:758px) {
    
    .section {
        padding: 120px 0;
    }
    
    .bg-gray {
        border-radius: 150px 0 150px 0;
    }
}
.judge {
    text-align: center;
    line-height: 1.3;
}

.judge h3 strong {
    font-size: 115%;
}

.judge h3 {
    padding: 10px 0 5px 0;
}

.judge-txt {
    font-size: 85%;
}

@media screen and (max-width:757.9px) {
    
    .sec-03-img {
        display: flex;
        justify-content: space-between;
    }
    
    .judge {
        width: 48%;
        padding-top: 15px;
    }
}

@media screen and (min-width:758px) {
    
    .sec-03 .container {
        max-width: 720px;
    }
    
    .sec-03-txt {
        width: 60%;
    }   
    
    .sec-03-img {
        width: 32%;
    }   
    
    .judge {
        padding-top: 5px;
    }
    
    .judge + .judge {
        padding-top: 20px;
    } 

}


.img-big {
    margin: 10px 0;
}

.img-big.img-big--mt0 {
    margin-top: 0;
}

@media screen and (min-width:758px) {
    .img-big {
        width: 85%;
        margin:25px auto;
        text-align: center;
    }
}

.logo-01 {
    width: 50%;
    max-width: 294px;
}

.btn-01 img {
    width: 90%;
    max-width: 460px;
}

.logo-02 {
    width: 80%;
    max-width: 426px;
}

hr {
    border: none;
    height: 1px;
    background: #ccc;
}