/*
Theme Name: yokoyamaseikei.com
Theme URI: https://www.yokoyamaseikei.com/
Description: 医療法人社団横山整形外科公式サイト
Version: 1
Author: Hideaki Shibata
Author URI:
*/


@charset "utf-8";


/*基本条件
----------------------------------------------------------------------------------------------------*/

/*カラー
---------------------------------------------------------------------------*/
	/* #0062CD main(中心色) */
	/* #2478D4 accent(mainの同系/薄色) */
	/* #0054AF accent(mainの同系/濃色) */
	/* #CD6B00 accent(mainの補色) */
	/* #FAF8F6 accent(背景色) */

/*レスポンシブデザイン ブレークポイント
---------------------------------------------------------------------------*/
	/* 画面幅1440px以上の設定 @media screen and (min-width:1440px){ } */
	/* 画面幅1100px以下の設定 @media screen and (max-width:1100px){ } */
	/* 画面幅 800px以下の設定 @media screen and (max-width:800px){ } */
	/* 画面幅 480px以下の設定 @media screen and (max-width:480px){ } */


/*デザイン
----------------------------------------------------------------------------------------------------*/

/*基本設定
---------------------------------------------------------------------------*/
html { scroll-behavior: smooth; }

body {
	margin: 0px;
	padding: 0px;
	color: #000000;	
	font-family: "Noto Sans JP", Quicksand, 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 16px;
	letter-spacing: 0.1em;
	font-weight:400;
	line-height: 2em;
	background: #ffffff;
	-webkit-text-size-adjust: none;
}

h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form {margin: 0px;padding: 0px;font-size: 100%;}
ul {list-style-type: none;}
ol {padding: 0 0 1em 2.4em;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
iframe {width: 100%;}

.inner {
	width: auto;
	margin: 0 6em;
}

.inner-s {
	width:900px;
	margin:0 auto;
}

/*画面幅1440px以上の設定
--------------------------------------------------*/
@media screen and (min-width:1440px) { 
	.inner {
		width: calc(1440px - 12em);
		margin: 0 auto;
	}
}

/*画面幅1100px以下の設定
--------------------------------------------------*/
@media screen and (max-width:1100px) {
	body {
		font-size: 14px;
	}
	
	.inner {
		width: auto;
		margin: 0 2em;
	}
}

/*画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.inner {
		width: 90%;
		margin: 0 auto;
	}
	
	.inner-s {
		width:90%;
		margin:0 auto;
	}
}

/*画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	body {
		font-size: 12px;
		line-height: 1.8em;
	}
}

/*リンク
---------------------------------------------------------------------------*/
a {
	color: #000000;
	text-decoration: none;
}

a:hover {
	color: #0054AF;
}

/*強調
---------------------------------------------------------------------------*/
strong {
	color: #0062CD;
}

/*ヘッダー
---------------------------------------------------------------------------*/
header {
	width: 100%;
	background-color: rgba(0,98,205,1);
	position: fixed;
	height: 85px;
    z-index: 100;
}

/*ヘッダースクロール・カラー変更スクリプト*/
#visible {
	top: 0;
	transition: all 1.0s ease;
}

.hidden {
	background-color: rgba(0,0,0,0.4);
	transition: all 1.0s ease;
}

/*ロゴ*/
header #logo {
	float: left;
	line-height:85px;
}

header #logo img {
	width: 180px;
}

/*コンタクト*/
header #contact {
	float: right;
	line-height:85px;
}

header #contact img {
	width: 240px;
	margin-left:3em;
}

/* 画面幅1440px以上の設定
--------------------------------------------------*/
@media screen and (min-width:1440px) {
	header {
		width: 1440px;
		left: calc((100% - 1440px)/2);
	}
}

/*画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	/*コンタクト*/
	header #contact {
		display:none;
	}
}

/*画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	header {
		height: 75px;
	}
	
	/*ロゴ*/
	header #logo {
		line-height:75px;
	}

	header #logo img {
		width: 150px;
	}
	
	/*コンタクト*/
	header #contact {
		line-height:75px;
	}
}

/*メニュー
---------------------------------------------------------------------------*/
/*PC用メニュー*/
#menubar {
	float: right;
	height:80px;
}

#menubar li {
	float: left;
	margin:0 0.3em;
	line-height:85px;
}

#menubar li a {
	display: block;
	color:#ffffff;
	font-size:0.9em;
	text-decoration: none;
	padding: 0 0.8em;
	-webkit-transition: 0s;
	transition: 0s;
}

#menubar li a:hover {
	color: #cccccc;
}

/*ドロップダウンメニュー*/
#menubar ul.ddmenu {
	position:absolute;
	visibility: hidden;
	margin-top:0.1em;
}

#menubar ul.ddmenu li {
	float: none;
	line-height:45px;
	width:170px;
}

#menubar ul.ddmenu li a {
	background:#0054AF;
}

#menubar ul.ddmenu li a:hover {
	color: #cccccc;
}

/*３本バーアイコン非表示*/
#menubar_hdr {
	display: none;
}

/*スマホ用メニュー非表示*/
#menubar-s {
	display: none;
}

/*画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	/*PC用メニュー非表示*/
	#menubar {
		display: none;
	}
	
	/*ドロップダウンメニュー非表示*/
	ul.ddmenu {
		display: none;
	}
	
	/*３本バーアイコン表示*/
	#menubar_hdr {
		display: block;
		position: absolute;
		top: 1.4em;
		right: 2em;
		width: 2em;
		border: 1px solid #cccccc;
		border-radius: 4px;
		padding: 12px 10px 5px;
    	z-index: 101;
	}

	#menubar_hdr span {
		display: block;
		border-top: 2px solid #ffffff;
		border-radius: 2px;
		margin-bottom: 7px;
	}
	
	/*スマホ用メニュー表示*/
	#menubar-s {
		display: block;
		position: absolute;
		top: 80px;
		left: 0px;
		width: 100%;
		z-index: 102;
		border-top: 1px solid #ffffff;
	}
	
	#menubar-s li {
		float: left;
		width: 50%;
		border-bottom: 1px solid #ffffff;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	
	#menubar-s li:nth-child(even)  {
		border-left: 1px solid #ffffff;
	}
	
	#menubar-s a {
		display: block;
		height: 50px;
		line-height: 50px;
		text-decoration: none;
		background: #000000;
		background: rgba(0,0,0,0.8);
		color: #ffffff;
		padding-left:20px;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	
	#menubar-s i {
		padding-right:10px;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	/*３本バーアイコン表示*/
	#menubar_hdr {
		top: 1.2em;
	}
	
	/*スマホ用メニュー*/
	#menubar-s li {
		float: none;
		width: auto;
	}
	
	#menubar-s li:nth-child(even)  {
		border-left: none;
	}
}

/*ブロック
---------------------------------------------------------------------------*/
.block {
	padding:8em 0 0 ;
}

.block-bg{
	padding: 6em 0;
	margin-top: 8em!important;
	background-color:#f7f7f7;
}

/* 画面幅1440px以上の設定
--------------------------------------------------*/
@media screen and (min-width:1440px) {
	.block{
		width: 1440px;
		margin:0 auto;
	}

	.block-bg{
		width: 1440px;
		margin:0 auto;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	.block{
		padding: 4em 0 0;
	}
	
	.block-bg{
		padding: 4em 0 2em;
		margin-top: 4em!important;
		background-color:#FAF8F6;
	}
}

/*ブロック2分割
---------------------------------------------------------------------------*/
.split-block {
	display:flex;
	justify-content:space-between;
}

.split-block-el {
	width:49%;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.split-block {
		display:block;
		/*width:90%;*/
		margin:0 auto;
	}
	
	.split-block-el {
		width:100%;
		padding-bottom:2em;
	}
}

/*contents
---------------------------------------------------------------------------*/
/*共通*/
.contents {
	clear: both;
	width: auto;
}

.contents h1 {
	clear: both;
	font-size:2em;
	padding-bottom:1.5em;
}

.contents h2 {
	clear: both;
	font-size:1.6em;
	padding-bottom:0.2em;
	border-bottom:1px solid #d7d7d7;
	margin-bottom: 0.5em;
}

.contents h2 i{
	color:#0062CD;
	padding-right:0.2em;
}

.contents h3 {
	clear: both;
	font-size:1.4em;
}

.contents h3:before {
	content: "\f0fe";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #0062CD;
	padding:0 0.3em 0 0;
}

.contents h4 {
	clear: both;
	font-size:1.2em;
}

.contents h5 {
	clear: both;
	font-size:1.1em;
}

.contents h5:before {
	content: "\f0da";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #0062CD;
	padding:0 0.3em 0 0.1em;
}

.contents p {
	padding: 0 0 1em 0;
}

.contents img {
	padding: 0 0 1em 0;
}

/*トップページ専用(キャッチコピー)*/
.contents h1.top-catch{
	font-size: 1.8em;
	line-height: 1.8em;
	text-align: center;
	padding-bottom:0.5em;
}

.contents h2.top-catch_s{
	font-size:1.4em;
	line-height: 1.8em;
	text-align: center;
	border:none;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	/*共通*/
	.contents h2 {
		font-size:1.4em;
	}
	
	/*トップページ専用(キャッチコピー)*/
	.contents h1.top-catch{
		font-size: 1.6em;
	}

	.contents h2.top-catch_s{
		font-size:1.2em;
	}
}

/*フッター
---------------------------------------------------------------------------*/
footer {
	clear: both;
	color: #ffffff;
	background: #0062CD;
	text-align: center;
	padding: 1.4em 0 0.6em;
	margin-top:8em;
}

.footer-logo img {
	width:160px;
}

small {
	font-size:0.6em;
}

/* 画面幅1440px以上の設定
--------------------------------------------------*/
@media screen and (min-width:1440px) {
	footer {
		width: 1440px;
		margin:8em auto 0;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	footer {
		margin-top:4em;
	}
}

/*メイン画像
---------------------------------------------------------------------------*/
/*共通*/
.hero {
	position:relative;
	height: 75vh;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-image: url(https://www.yokoyamaseikei.com/wp-content/uploads/2023/12/main-img.jpg);
}

.hero-overlay/*::after*/ {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(0, 0, 0, 0.25);
}

.hero-text {
	position: absolute;
	top: 55%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 10;
}

.hero-title {
	color: #ffffff;
	font-size: 2em;
	line-height: 1.4em;
	text-align: center;
}

.hero-description {
	color: #ffffff;
	font-size: 1.2em;
	line-height: 1.4em;
	text-align: center;
}

/*トップページ専用*/
.top-hero {
	position:relative;
	height: 100vh;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-image: url(https://www.yokoyamaseikei.com/wp-content/uploads/2023/12/main-img.jpg);
}

.top-hero-overlay/*::after*/ {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(0, 0, 0, 0.25);
}

.top-hero-text {
	position: absolute;
	top: 52%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 10;
	text-align: center;
}

.top-hero-text img {
	width:50%;
}

/*トップページ専用 ヒーロータイトルフェードイン*/
.fadein {
	opacity: 0;
	animation: fadein 5s ease forwards;
}

@keyframes fadein {
	100% {  opacity: 1;}
}

/*以下遅延の指定*/
.txt01 {animation-delay: 1s;}
.txt02 {animation-delay: 3s;}
.txt03 {animation-delay: 5s;}

/* 画面幅1440px以上の設定
--------------------------------------------------*/
@media screen and (min-width:1440px) {
	/*共通*/
	.hero {
		height: 600px;
		background-size: 1440px;
	}
	
	.hero-overlay/*::after*/ {
		left: calc((100% - 1440px) / 2);
		width: 1440px;
	}
	
	.hero-text {
		top: 52%;
	}
	
	.hero-title {
		font-size: 2.4em;
	}
	
	/*トップページ専用*/
	.top-hero {
		height: 800px;
		background-size: 1440px;
		background-position: center top;
	}
	
	.top-hero-overlay/*::after*/ {
		left: calc((100% - 1440px) / 2);
		width: 1440px;
	}
	
	.top-hero-text {
		top: 50%;
	}
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	/*共通*/
	.hero {
		height: 75vh;
		background-image: url(https://www.yokoyamaseikei.com/wp-content/uploads/2023/12/main-img-s.jpg);
	}
	
	.hero-text {
		top: 55%;
	}
	
	.hero-title {
		font-size:2.4em;	
	}
	
	.hero-description {
		font-size: 1.2em;
	}

	/*トップページ専用*/
	.top-hero {
		height: 75vh;
		background-image: url(https://www.yokoyamaseikei.com/wp-content/uploads/2023/12/main-img-s.jpg);
	}
	
	.top-hero-text {
		top: 55%;
	}
	
	.top-hero-text img {
		width:60%;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	/*共通*/
	.hero-title {
		font-size:1.8em;	
	}
	
	.hero-description {
		font-size: 1.2em;
	}
	
	/*トップページ専用*/
	.top-hero-text img {
		width:80%;
	}
}

/*トップページ　お知らせ
---------------------------------------------------------------------------*/
#new dl {
	margin:0 0.2em 0.6em;
	padding-bottom:0.6em;
}

#new dt::before{
	font-family: "Font Awesome 5 Free"; 
    font-weight: 900;
	content: "\f152";
	color: #0062CD;
	padding:0 0.5em 0 0.1em;
}

#new .news-title {
	font-size:1.2em;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	#new dt {
		display:block;
		float:none;
		padding:0;
	}
	#new dd {
		display:block;
		float:none;
		padding:0;
	}
}

/*トップページ　予約バナー
---------------------------------------------------------------------------*/
.reserve-banner {
	width:80%;
	margin:0 auto;
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	.reserve-banner {
		width:100%;
	}
}

/*FAQ
---------------------------------------------------------------------------*/
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

.cp_qa .cp_actab {
	position: relative;
	overflow: hidden;
	width: 100%;
	margin: 0 0 1em 0;
	color: #1b2538;
}

.cp_qa .cp_actab input {
	position: absolute;
	opacity: 0;
}

/* 質問 */
.cp_qa .cp_actab label {
	font-weight: bold;
	line-height: 1.6em;
	position: relative;
	display: block;
	margin: 0 0 0 0;
	padding: 0.6em 1em 0.6em 3em;
	cursor: pointer;
	text-indent: 1em;
	border-radius: 0.5em;
	background: #f7f7f7;
}

.cp_qa .cp_actab label::before {
	font-family: serif;
	font-size: 1.5em;
	margin-left: -1.65em;
	padding-right: 0.5em;
	content: 'Q';
}

.cp_qa .cp_actab label:hover {
	transition: all 0.3s;
	color: #CD6B00;
}

/* --質問の＋アイコン */
.cp_qa .cp_actab label::after {
	font-size: 1.6em;
	font-weight: bold;
	line-height: 1.6em;
	position: absolute;
	top: 0;
	right: 0;
	content: '＋';
	display: inline-block;
	width: 2em;
	height: 2em;
	-webkit-transition: transform 0.4s;
	        transition: transform 0.4s;
}

/* 答え */
.cp_qa .cp_actab .cp_actab-content {
	position: relative;
	overflow: hidden;
	max-height: 0;
	padding: 0 0 0 2.5em;
	-webkit-transition: max-height 0.2s;
	        transition: max-height 0.2s;
	border-radius: 0 0 0.5em 0.5em;
}

.cp_qa .cp_actab .cp_actab-content::before {
	font-family: serif;
	font-size: 1.5em;
	position: absolute;
	margin: 0.4em 0 0 -1em;
	padding: 0;
	content: 'A';
}

.cp_qa .cp_actab .cp_actab-content p {
	margin: 1em 1em 1em 0.5em;
}

/* --答えの高さ */
.cp_qa .cp_actab input:checked ~ .cp_actab-content {
	max-height: 40em;
	border: 10px solid #f7f7f7;
}

/* 質問をクリックした時のアイコンの動き */
.cp_qa .cp_actab input:checked ~ label {
	color: #0054AF;
	border-radius: 0.5em 0.5em 0 0;
}

/* 質問をクリックした時の+の動き */
.cp_qa .cp_actab input[type=checkbox]:checked + label::after {
	-webkit-transform: rotateZ(45deg);
	transform: rotateZ(45deg);
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

.cp_qa i {
	color:#0062CD;
	padding:0 0.5em 0 0.2em; 
}

/*2box
---------------------------------------------------------------------------*/
.two-box > div {
	display:flex;
	padding-bottom:4em;
}

.two-box > div:nth-child(odd) {
	flex-direction: row-reverse;
}

.two-box > div .two-box-img {
	flex:1;
	padding:0.3em 1em 0 0;
}

.two-box > div:nth-child(odd) .two-box-img {
	flex:1;
	padding:0.3em 0 0 1em;
}

.two-box-desc {
	flex:2;
}

.two-box-desc p {
	padding:0;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.two-box > div {
		display:block;
		padding-bottom:2em;
	}
	
	.two-box-img {
		width:50%;
		margin:1em auto;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	.two-box-img {
		width:80%;
	}
}

/*3box
---------------------------------------------------------------------------*/
.three-box > div{ 
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.three-box > div > div{ 
    width:32%;
	padding-bottom:1.5em;
}

.three-box > div::after {
    content: "";
    display:block;
    width:32%;
}

.three-box > div > div:nth-last-child(-n+3) {
	padding-bottom:0;
}

.three-box h4 {
	font-size:1.1em;
}

.three-box h5 {
	font-size:1em;
}

.three-box img {
	padding-bottom:0.5em;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.three-box > div {
		width:80%;
		padding-bottom:1em;
		margin:0 auto;
	}

	.three-box > div > div{ 
		width:49%;
		padding-bottom:1.5em;
	}

	.three-box > div::after {
		content: "";
		display:block;
		width:49%;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	.three-box > div {
		display:block;
	}

	.three-box > div > div{ 
		width:100%;
		padding-bottom:1.5em;
	}
}

/*アウトライン
---------------------------------------------------------------------------*/
.outline h1 {
	font-size:1.4em;
	padding-bottom:0.8em;
}

.outline p {
	padding-bottom:1em;
}

.outline i {
	color:#0062CD;
}

/*プロフィール
---------------------------------------------------------------------------*/
.profile h1 {
	font-size:1.4em;
	line-height:1.6em;
	padding-bottom:0.5em;
}

.profile h1 span {
	display: block;
	color:#0062CD;
	font-size:0.3em;
	line-height:0.5em;
	padding-top:2em;
}

.profile p {
	padding-bottom:1em;
}

/*map
---------------------------------------------------------------------------*/
/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.map {
		width:70%;
		margin:1em auto 0;
	}
}

/* 画面幅 480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	.map {
		width:80%;
	}
}

/*装飾ボタン
---------------------------------------------------------------------------*/
/*共通*/
.c-button{
	text-align: center;
	padding:1em;
}

.c-button a{
	padding:1.2em 2em; 
	color:#ffffff; 
	background:#0054AF;
	text-decoration: none;
}

.c-button a:hover{
	opacity: 0.8;
}

/*装飾ボタン(矢印稼働)
---------------------------------------------------------------------------*/
/*共通*/
.arrow-r-btn {
	text-align: right;
}

.arrow-r-btn a{
	color:#ffffff; 
	background:#0062CD;
	padding:0.7em 1.2em 0.7em 1em;
	margin:0 0.2em 1em;
	vertical-align: middle;
}

.arrow-r-btn a i{
	color:#ffffff!important;
	padding-right:1em;
}

.arrow-r-btn a:hover{
	background-color:#0054AF;
}

.arrow-r-btn a:hover i {
	transition: all 0.5s;
	transform: translateX(0.3em);
}

@media screen and (max-width:800px) {
	/*共通*/
	.arrow-r-btn {
		text-align: center;
		margin-top:2em;
	}
}

/*リスト
---------------------------------------------------------------------------*/
/*共通*/
.arrow-list ul {
	padding: 0.5em 1em 0em 1.5em;
	position: relative;
}

.arrow-list ul li {
	list-style-type: none!important;
}

.arrow-list ul li:before {
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	content: "\f0da";
	position: absolute;
	left : 0.5em;
	color: #0062CD;
}

/*テーブル
---------------------------------------------------------------------------*/
/*共通*/
.cp_table *, .cp_table *:before, .cp_table *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.cp_table {
	width: calc(100% - 0.4em);
	margin:0 0.2em 1em;
}

.cp_table, .cp_table th, .cp_table td {
	/*border-bottom: 1px solid #ffffff;*/
	word-break: break-all;
}

.cp_table th {
	width: 30%;
	text-align: center;
	padding:0.3em 0;
}

.cp_table td {
	text-align: center;
	padding:0.3em 0;
}

/*トップページ専用*/
.info-table {
	margin-bottom:1em;
}

.info-table tr {
	border-bottom:1px solid #d7d7d7;
}

.info-table th {
	font-weight:400;
	text-align:left;
	vertical-align:top;
	padding:0.3em 0.5em;
}

.info-table td {
	vertical-align:top;
	padding:0.3em 0.5em;
}

/* 画面幅 800px以下の設定
--------------------------------------------------*/
@media screen and (max-width:800px) {
	.cp_table th {
		width: 100px;
		padding: 5px;
	}
	
	.cp_table td {
		width: auto;
		padding: 5px;
	}
}

/*画面幅480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	/*トップページ専用*/
	.info-table th {
		padding:0.1em 0.1em;
	}

	.info-table td {
		padding:0.1em 0.1em;
	}
}

/*マーカーアニメーション
---------------------------------------------------------------------------*/
/*共通*/
.marker-animation.active{
    background-position: -100% .2em;
}
 
.marker-animation {
    background-image: -webkit-linear-gradient(left, transparent 50%, rgb(153,253,255) 50%);
    background-image: -moz-linear-gradient(left, transparent 50%, rgb(153,253,255) 50%);
    background-image: -ms-linear-gradient(left, transparent 50%, rgb(153,253,255) 50%);
    background-image: -o-linear-gradient(left, transparent 50%, rgb(153,253,255) 50%);
    background-image: linear-gradient(left, transparent 50%, rgb(153,253,255) 50%);
    background-repeat: repeat-x;
    background-size: 200% 1.2em;
    background-position: 0 .2em;
    transition: all 2s ease;
    font-weight: bold;
}

/*その他
---------------------------------------------------------------------------*/
/*共通*/
.clear {clear: both;}
img.fl {float: left; width:60%; padding:0.5em 1em 0.5em 0;}
img.fr {float: right; width:60%; padding:0.5em 0 0.5em 1em;}

/*共通 改行切替(無し)*/
.span-down {display:inline;}

/*共通 改行切替(有り)*/
.span-up {display:block;}


/*画面幅480px以下の設定
--------------------------------------------------*/
@media screen and (max-width:480px) {
	/*共通 float*/
	img.fl, img.fr { float:none; display:block; width:80%; padding:1em 0!important; margin:0 auto; }
	
	/*共通 改行切替(無し→有り)*/
	.span-down {display:block;}
	
	/*共通 改行切替(有り→無し)*/
	.span-up {display:inline;}
}

