/*共通
-------------------------------------*/
#photo-top .pickup{
    padding: 1rem 2rem;
    border-left: 5px solid #27A5B8;
    background: #f4f4f4;
    font-size: 1.6em;
    text-align:left;
}


a.purchase:link, a.purchase:visited, a.purchase:hover, a.purchase:active {
  color: blue;
  text-decoration: underline;
}

/*ボタン*/

.bt_buy a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 1em 2em;
  max-width: 400px;
  color: #000;
  font-size: 18px;
  font-weight: 700;
  background-color: #ffc36a;
  border-radius: 50vh;
}

.bt_buy a::after {
  content: '';
  width: 10px;
  height: 10px;
  border-top: 3px solid #333333;
  border-right: 3px solid #333333;
  transform: rotate(135deg);
}

.bt_buy a:hover {
  text-decoration: none;
  background-color: #ff9800;
  color: #000;
}


/*画像のレスポンシブ表示 ここから*/

/* カードのラッピング化 */
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    max-width: 1280px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

/* 金賞のみで使用：疑似要素のafterを適用しないため */
#cardlayout-wrap2 {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    margin: 2em auto;
    max-width: 1280px;
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
}

/* リンクテキストの下線を非表示 */
a.card-link {
    text-decoration: none;
}

/* カードレイアウト内の画像を幅いっぱいに表示 */
#cardlayout-wrap img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* カードレイアウト内の画像を幅いっぱいに表示 */
#cardlayout-wrap2 img {
    display: block;
    max-width: 100%;
    height: auto;
}

.card-figure {
    margin: 0;
    padding: 0;
}

/* カードレイアウトのタイトル部分 */
.card-title {
    margin: 0.6em 0 0;
    color: #333;
    text-align: center;
    font-size: 1.4em;
}

/* カードレイアウトの説明文部分 */
.card-text-tax {
    margin: 0;
    padding: 1em;
    color: #818181;
    font-size: 1em;
}

/* カードレイアウトのタイトル部分 */
.card-title2 {
    margin: 0.6em 0 0;
    color: #333;
    text-align: center;
    font-size: 1.6em;
}

/* カードレイアウトの説明文部分 */
.card-text-tax2 {
    margin: 0;
    padding: 1em;
    color: #818181;
    font-size: 1.2em;
}

/* カードレイアウト(入賞)を1カラムで配置 */
.card-list {
    margin: 0.5em 0;
    padding: 0;
    width: calc(96% / 2);
    background: #f0f0f0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

/* カードレイアウト(金賞)を1カラムで配置 */
.card-list2 {
    text-align:center;
    margin: 0.5em auto;
    padding: 0;
    max-width:600px;
    width: 96%;
    background: #f0f0f0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

/* カードレイアウト(銀賞)を1カラムで配置 */
.card-list3 {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
    background: #f0f0f0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

/* カードレイアウト(カレンダー用)を1カラムで配置 */
.card-list4 {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
    background: #f0f0f0;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);
}

.bt-list2{
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
}


/* 画面幅768px以上の場合カードレイアウトを2カラムで配置 */
@media all and (min-width: 768px) {
    .card-list3 {
        margin: 0.5em 0;
        width: calc(96% / 2); /* 96%幅を2で割るという指定 */
    }
    .card-list4 {
        margin: 0.5em 0;
        width: calc(96% / 2); /* 96%幅を2で割るという指定 */
    }
    .bt-list2{
    	margin: 0.5em 0;
        width: calc(96% / 2); /* 96%幅を2で割るという指定 */
	}
}

/* 画面幅992px以上の場合カードレイアウトを3カラムで配置 */
@media all and (min-width: 992px) {
    .card-list {
        width: calc(96% / 3); /* 96%幅を3で割るという指定 */
    }
    .card-list3 {
        width: calc(96% / 3); /* 96%幅を3で割るという指定 */
    }
    
/* 最後の行が3列より少ない場合左寄せにレイアウトさせる */
    #cardlayout-wrap::after{
        content: "";
        display: block;
        width: calc(96% / 3);
    }
}

@media all and (max-width: 767px) {

	/* カードレイアウトのタイトル部分 */
	.card-title {
	    margin: 0.6em 0 0;
	    color: #333;
	    text-align: center;
	    font-size: 1em;
	}

	/* カードレイアウトの説明文部分 */
	.card-text-tax {
	    margin: 0;
	    padding: 1em;
	    color: #818181;
	    font-size: 0.8em;
	}
	.bt_buy a {
	  font-size: 14px;
	}
}

/*画像のレスポンシブ表示 ここまで*/

.scroll{
overflow: auto;　　　　/*tableをスクロールさせる*/
}
.scroll::-webkit-scrollbar{　　/*tableにスクロールバーを追加*/
 height: 5px;
}
.scroll::-webkit-scrollbar-track{　　/*tableにスクロールバーを追加*/
 background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {　　/*tableにスクロールバーを追加*/
 background: #BCBCBC;
}

.scroll table{
  width: 100%;
  border-collapse:separate;
  border-spacing: 0;
  white-space: nowrap;　　/*tableのセル内にある文字の折り返しを禁止*/
}

.scroll table th:first-child{
  border-radius: 5px 0 0 0;
}

.scroll table th:last-child{
  border-radius: 0 5px 0 0;
  border-right: 1px solid #3c6690;
}

.scroll table th{
  text-align: center;
  color:white;
  background: linear-gradient(#67d0c0,#27A5B8);
  border-left: 1px solid #27A5B8;
  border-top: 1px solid #27A5B8;
  border-bottom: 1px solid #27A5B8;
  box-shadow: 0px 1px 1px rgba(255,255,255,0.3) inset;
  width: 25%;
  padding: 10px 0;
}

.scroll table td{
  text-align: center;
  border-left: 1px solid #a8b7c5;
  border-bottom: 1px solid #a8b7c5;
  border-top:none;
  box-shadow: 0px -3px 5px 1px #eee inset;
  width: 25%;
  padding: 10px 0;
}

.scroll table td:last-child{
  border-right: 1px solid #a8b7c5;
}

.scroll table tr:last-child td:first-child {
  border-radius: 0 0 0 5px;
}

.scroll table tr:last-child td:last-child {
  border-radius: 0 0 5px 0;
}

#photo-top .title_kinsyo {
    font-size: 16px;
    color: #0080cc;
    background-color: #e9c800;
    border-radius: 5px;
    width: 150px;
    padding: 5px;
    margin: 0 auto 20px;
}

#photo-top .title_ginsyo {
    font-size: 16px;
    color:#0080cc;
    background-color: #cad5dc;
    border:1px solid #000;
    border-radius: 5px;
    width: 150px;
    padding: 5px;
    margin: 0 auto 20px;
}

.btnlogo a {
	background-color: #ff9800;
	color: #fff;
}

.btnlogo a::before {
	content: '';
	position: absolute;
	top: 50%;
	right: 27px;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background-color: transparent;
	color: #fff;
}

.btnlogo a::after {
	content: '';
	position: absolute;
	top: calc(50% - 1px);
	right: 27px;
	transform: rotate(45deg) translateY(-50%);
	width: 6px;
	height: 6px;
	color: #fff;
}

.btnlogo a:hover {
	background-color: #ff9800;
	color: #fff;
}

.btnlogo a:hover::before {
	border: 1px solid #f2f2f2;
	color: #fff;
}

.btnlogo a:hover::after {
	color: #fff;
}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}


