/*
Theme Name:SOURCE-child
Theme URI:https://tcd-theme.com/tcd045
Description:WordPressテーマ「source_tcd045」の自作子テーマです。
Template:source_tcd045
Author:TCD
Author URI:https://tcd-theme.com/
Version:1.13
*/

/* ----------------------------------------------------------------------
  カスタマイズ
---------------------------------------------------------------------- */

.footer_link {
    text-align: center;
    font-size: 12px;
}

.footer_link a:hover {
    color: #262626!important;
    text-decoration: none;
}

#left_col {
    display: block;
    margin: 0 auto;
	float: none;
}

.button-wrap{
	text-align:center;
}

.button-external {
    background-color: #054BA7;
    background-image: url(/wp-content/uploads/2025/01/external-link.png);
    background-repeat: no-repeat;
    background-size: 15px auto;
    background-position: 168px;
    padding-right: 20px;
}


.button-grey:hover {
    background-color: #333333!important;
}

.button01 {
    background-color: #054BA7;
    color: #FFFFFF!important;
    font-size: 14px;
    text-decoration: none;
    padding: 0 45px;
    height: 50px;
    line-height: 3.5;
    display: inline-block;
    margin: 25px 0 0 0;
    border-radius: 50px;
    min-width: 230px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.button01:hover {
    background-color: #333333;
    color: #FFFFFF;
	text-decoration: none!important;
}

.wp-block-button__link{
	background-color: #054BA7!important;
}

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

#logo_image .pc_logo_image,
.logo_area img {
    width: 65% !important;
    height: auto !important;
}

.home #header {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 200;
    background-color: rgba(38,38,38,1.0);
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.4);
    animation: slideDown 0.5s ease;
    -ms-animation: slideDown 0.5s ease;
    -webkit-animation: slideDown 0.5s ease;
    -moz-animation: slideDown 0.5s ease;
}

.pc .home #global_menu li.current-menu-item > a {
	 color: #8C8C8C!important;
}

.pc .home #global_menu > ul > li > a:hover {
	color: #8C8C8C!important;
}

.pt_main_text {
    padding-top: 62px !important;
}

.home #top {
    width: 1150px;
    margin: 0 auto 100px;
}

#header_slider {
    padding-top: 100px;
}

@media only screen and (max-width: 1199px) {
	#header_slider {
    padding-top: 20px;
	}

}

@media only screen and (max-width: 1149px) {
    .home #top {
        width: initial;
        width: auto;
        margin: 0 0 40px 0 !important;
        padding: 0 20px;
    }

	.pt_main_text {
    padding-top: 12px !important;
    }

	#header_slider {
    padding-top: 20px;
	}

}

@media only screen and (max-width: 767px) {
    .home #top {
        padding: 0;
        margin: 0;
    }

	#header_slider {
    padding-top: 0px;
	}

}

/* ----------------------------------------------------------------------
  共通テンプレート
---------------------------------------------------------------------- */

.mt0 {
    margin-top: 0px !important;
}

.mr0 {
    margin-right: 0px !important;
}

.mb0 {
    margin-bottom: 0px !important;
}

.ml0 {
    margin-left: 0px !important;
}

.pt0 {
    padding-top: 0px !important;
}

.pr0 {
    padding-right: 0px !important;
}

.pb0 {
    padding-bottom: 0px !important;
}

.pl0 {
    padding-left: 0px !important;
}

.mt5 {
    margin-top: 5px !important;
}

.mr5 {
    margin-right: 5px !important;
}

.mb5 {
    margin-bottom: 5px !important;
}

.ml5 {
    margin-left: 5px !important;
}

.pt5 {
    padding-top: 5px !important;
}

.pr5 {
    padding-right: 5px !important;
}

.pb5 {
    padding-bottom: 5px !important;
}

.pl5 {
    padding-left: 5px !important;
}

.mt10 {
    margin-top: 10px !important;
}

.mr10 {
    margin-right: 10px !important;
}

.mb10 {
    margin-bottom: 10px !important;
}

.ml10 {
    margin-left: 10px !important;
}

.pt10 {
    padding-top: 10px !important;
}

.pr10 {
    padding-right: 10px !important;
}

.pb10 {
    padding-bottom: 10px !important;
}

.pl10 {
    padding-left: 10px !important;
}

.mt15 {
    margin-top: 15px !important;
}

.mr15 {
    margin-right: 15px !important;
}

.mb15 {
    margin-bottom: 15px !important;
}

.ml15 {
    margin-left: 15px !important;
}

.pt15 {
    padding-top: 15px !important;
}

.pr15 {
    padding-right: 15px !important;
}

.pb15 {
    padding-bottom: 15px !important;
}

.pl15 {
    padding-left: 15px !important;
}

.mt20 {
    margin-top: 20px !important;
}

.mr20 {
    margin-right: 20px !important;
}

.mb20 {
    margin-bottom: 20px !important;
}

.ml20 {
    margin-left: 20px !important;
}

.pt20 {
    padding-top: 20px !important;
}

.pr20 {
    padding-right: 20px !important;
}

.pb20 {
    padding-bottom: 20px !important;
}

.pl20 {
    padding-left: 20px !important;
}

.mt25 {
    margin-top: 25px !important;
}

.mr25 {
    margin-right: 25px !important;
}

.mb25 {
    margin-bottom: 25px !important;
}

.ml25 {
    margin-left: 25px !important;
}

.pt25 {
    padding-top: 25px !important;
}

.pr25 {
    padding-right: 25px !important;
}

.pb25 {
    padding-bottom: 25px !important;
}

.pl25 {
    padding-left: 25px !important;
}

.mt30 {
    margin-top: 30px !important;
}

.mr30 {
    margin-right: 30px !important;
}

.mb30 {
    margin-bottom: 30px !important;
}

.ml30 {
    margin-left: 30px !important;
}

.pt30 {
    padding-top: 30px !important;
}

.pr30 {
    padding-right: 30px !important;
}

.pb30 {
    padding-bottom: 30px !important;
}

.pl30 {
    padding-left: 30px !important;
}

.mt35 {
    margin-top: 35px !important;
}

.mr35 {
    margin-right: 35px !important;
}

.mb35 {
    margin-bottom: 35px !important;
}

.ml35 {
    margin-left: 35px !important;
}

.pt35 {
    padding-top: 35px !important;
}

.pr35 {
    padding-right: 35px !important;
}

.pb35 {
    padding-bottom: 35px !important;
}

.pl35 {
    padding-left: 35px !important;
}

.mt40 {
    margin-top: 40px !important;
}

.mr40 {
    margin-right: 40px !important;
}

.mb40 {
    margin-bottom: 40px !important;
}

.ml40 {
    margin-left: 40px !important;
}

.pt40 {
    padding-top: 40px !important;
}

.pr40 {
    padding-right: 40px !important;
}

.pb40 {
    padding-bottom: 40px !important;
}

.pl40 {
    padding-left: 40px !important;
}

.mt45 {
    margin-top: 45px !important;
}

.mr45 {
    margin-right: 45px !important;
}

.mb45 {
    margin-bottom: 45px !important;
}

.ml45 {
    margin-left: 45px !important;
}

.pt45 {
    padding-top: 45px !important;
}

.pr45 {
    padding-right: 45px !important;
}

.pb45 {
    padding-bottom: 45px !important;
}

.pl45 {
    padding-left: 45px !important;
}

.mt50 {
    margin-top: 50px !important;
}

.mr50 {
    margin-right: 50px !important;
}

.mb50 {
    margin-bottom: 50px !important;
}

.ml50 {
    margin-left: 50px !important;
}

.pt50 {
    padding-top: 50px !important;
}

.pr50 {
    padding-right: 50px !important;
}

.pb50 {
    padding-bottom: 50px !important;
}

.pl50 {
    padding-left: 50px !important;
}

.mt55 {
    margin-top: 55px !important;
}

.mr55 {
    margin-right: 55px !important;
}

.mb55 {
    margin-bottom: 55px !important;
}

.ml55 {
    margin-left: 55px !important;
}

.pt55 {
    padding-top: 55px !important;
}

.pr55 {
    padding-right: 55px !important;
}

.pb55 {
    padding-bottom: 55px !important;
}

.pl55 {
    padding-left: 55px !important;
}

.mt60 {
    margin-top: 60px !important;
}

.mr60 {
    margin-right: 60px !important;
}

.mb60 {
    margin-bottom: 60px !important;
}

.ml60 {
    margin-left: 60px !important;
}

.pt60 {
    padding-top: 60px !important;
}

.pr60 {
    padding-right: 60px !important;
}

.pb60 {
    padding-bottom: 60px !important;
}

.pl60 {
    padding-left: 60px !important;
}

.mt65 {
    margin-top: 65px !important;
}

.mr65 {
    margin-right: 65px !important;
}

.mb65 {
    margin-bottom: 65px !important;
}

.ml65 {
    margin-left: 65px !important;
}

.pt65 {
    padding-top: 65px !important;
}

.pr65 {
    padding-right: 65px !important;
}

.pb65 {
    padding-bottom: 65px !important;
}

.pl65 {
    padding-left: 65px !important;
}

.mt70 {
    margin-top: 70px !important;
}

.mr70 {
    margin-right: 70px !important;
}

.mb70 {
    margin-bottom: 70px !important;
}

.ml70 {
    margin-left: 70px !important;
}

.pt70 {
    padding-top: 70px !important;
}

.pr70 {
    padding-right: 70px !important;
}

.pb70 {
    padding-bottom: 70px !important;
}

.pl70 {
    padding-left: 70px !important;
}

@media screen and (max-width: 767px) {
	
    .sp_mt0 {
        margin-top: 0px !important;
    }

    .sp_mr0 {
        margin-right: 0px !important;
    }

    .sp_mb0 {
        margin-bottom: 0px !important;
    }

    .sp_ml0 {
        margin-left: 0px !important;
    }

    .sp_pt0 {
        padding-top: 0px !important;
    }

    .sp_pr0 {
        padding-right: 0px !important;
    }

    .sp_pb0 {
        padding-bottom: 0px !important;
    }

    .sp_pl0 {
        padding-left: 0px !important;
    }

    .sp_mt5 {
        margin-top: 5px !important;
    }

    .sp_mr5 {
        margin-right: 5px !important;
    }

    .sp_mb5 {
        margin-bottom: 5px !important;
    }

    .sp_ml5 {
        margin-left: 5px !important;
    }

    .sp_pt5 {
        padding-top: 5px !important;
    }

    .sp_pr5 {
        padding-right: 5px !important;
    }

    .sp_pb5 {
        padding-bottom: 5px !important;
    }

    .sp_pl5 {
        padding-left: 5px !important;
    }

    .sp_mt10 {
        margin-top: 10px !important;
    }

    .sp_mr10 {
        margin-right: 10px !important;
    }

    .sp_mb10 {
        margin-bottom: 10px !important;
    }

    .sp_ml10 {
        margin-left: 10px !important;
    }

    .sp_pt10 {
        padding-top: 10px !important;
    }

    .sp_pr10 {
        padding-right: 10px !important;
    }

    .sp_pb10 {
        padding-bottom: 10px !important;
    }

    .sp_pl10 {
        padding-left: 10px !important;
    }

    .sp_mt15 {
        margin-top: 15px !important;
    }

    .sp_mr15 {
        margin-right: 15px !important;
    }

    .sp_mb15 {
        margin-bottom: 15px !important;
    }

    .sp_ml15 {
        margin-left: 15px !important;
    }

    .sp_pt15 {
        padding-top: 15px !important;
    }

    .sp_pr15 {
        padding-right: 15px !important;
    }

    .sp_pb15 {
        padding-bottom: 15px !important;
    }

    .sp_pl15 {
        padding-left: 15px !important;
    }

    .sp_mt20 {
        margin-top: 20px !important;
    }

    .sp_mr20 {
        margin-right: 20px !important;
    }

    .sp_mb20 {
        margin-bottom: 20px !important;
    }

    .sp_ml20 {
        margin-left: 20px !important;
    }

    .sp_pt20 {
        padding-top: 20px !important;
    }

    .sp_pr20 {
        padding-right: 20px !important;
    }

    .sp_pb20 {
        padding-bottom: 20px !important;
    }

    .sp_pl20 {
        padding-left: 20px !important;
    }

    .sp_mt25 {
        margin-top: 25px !important;
    }

    .sp_mr25 {
        margin-right: 25px !important;
    }

    .sp_mb25 {
        margin-bottom: 25px !important;
    }

    .sp_ml25 {
        margin-left: 25px !important;
    }

    .sp_pt25 {
        padding-top: 25px !important;
    }

    .sp_pr25 {
        padding-right: 25px !important;
    }

    .sp_pb25 {
        padding-bottom: 25px !important;
    }

    .sp_pl25 {
        padding-left: 25px !important;
    }

    .sp_mt30 {
        margin-top: 30px !important;
    }

    .sp_mr30 {
        margin-right: 30px !important;
    }

    .sp_mb30 {
        margin-bottom: 30px !important;
    }

    .sp_ml30 {
        margin-left: 30px !important;
    }

    .sp_pt30 {
        padding-top: 30px !important;
    }
	
    .sp_pr30 {
        padding-right: 30px !important;
    }

    .sp_pb30 {
        padding-bottom: 30px !important;
    }

    .sp_pl30 {
        padding-left: 30px !important;
    }

    .sp_mt35 {
        margin-top: 35px !important;
    }

    .sp_mr35 {
        margin-right: 35px !important;
    }

    .sp_mb35 {
        margin-bottom: 35px !important;
    }

    .sp_ml35 {
        margin-left: 35px !important;
    }

    .sp_pt35 {
        padding-top: 35px !important;
    }

    .sp_pr35 {
        padding-right: 35px !important;
    }

    .sp_pb35 {
        padding-bottom: 35px !important;
    }

    .sp_pl35 {
        padding-left: 35px !important;
    }

    .sp_mt40 {
        margin-top: 40px !important;
    }

    .sp_mr40 {
        margin-right: 40px !important;
    }

    .sp_mb40 {
        margin-bottom: 40px !important;
    }

    .sp_ml40 {
        margin-left: 40px !important;
    }

    .sp_pt40 {
        padding-top: 40px !important;
    }

    .sp_pr40 {
        padding-right: 40px !important;
    }

    .sp_pb40 {
        padding-bottom: 40px !important;
    }

    .sp_pl40 {
        padding-left: 40px !important;
    }

    .sp_mt45 {
        margin-top: 45px !important;
    }

    .sp_mr45 {
        margin-right: 45px !important;
    }

    .sp_mb45 {
        margin-bottom: 45px !important;
    }

    .sp_ml45 {
        margin-left: 45px !important;
    }

    .sp_pt45 {
        padding-top: 45px !important;
    }

    .sp_pr45 {
        padding-right: 45px !important;
    }

    .sp_pb45 {
        padding-bottom: 45px !important;
    }

    .sp_pl45 {
        padding-left: 45px !important;
    }

    .sp_mt50 {
        margin-top: 50px !important;
    }

    .sp_mr50 {
        margin-right: 50px !important;
    }

    .sp_mb50 {
        margin-bottom: 50px !important;
    }

    .sp_ml50 {
        margin-left: 50px !important;
    }

    .sp_pt50 {
        padding-top: 50px !important;
    }

    .sp_pr50 {
        padding-right: 50px !important;
    }

    .sp_pb50 {
        padding-bottom: 50px !important;
    }

    .sp_pl50 {
        padding-left: 50px !important;
    }

    .sp_mt55 {
        margin-top: 55px !important;
    }

    .sp_mr55 {
        margin-right: 55px !important;
    }

    .sp_mb55 {
        margin-bottom: 55px !important;
    }

    .sp_ml55 {
        margin-left: 55px !important;
    }

    .sp_pt55 {
        padding-top: 55px !important;
    }

    .sp_pr55 {
        padding-right: 55px !important;
    }

    .sp_pb55 {
        padding-bottom: 55px !important;
    }

    .sp_pl55 {
        padding-left: 55px !important;
    }

    .sp_mt60 {
        margin-top: 60px !important;
    }

    .sp_mr60 {
        margin-right: 60px !important;
    }

    .sp_mb60 {
        margin-bottom: 60px !important;
    }

    .sp_ml60 {
        margin-left: 60px !important;
    }

    .sp_pt60 {
        padding-top: 60px !important;
    }

    .sp_pr60 {
        padding-right: 60px !important;
    }

    .sp_pb60 {
        padding-bottom: 60px !important;
    }

    .sp_pl60 {
        padding-left: 60px !important;
    }

    .sp_mt65 {
        margin-top: 65px !important;
    }

    .sp_mr65 {
        margin-right: 65px !important;
    }

    .sp_mb65 {
        margin-bottom: 65px !important;
    }

    .sp_ml65 {
        margin-left: 65px !important;
    }

    .sp_pt65 {
        padding-top: 65px !important;
    }

    .sp_pr65 {
        padding-right: 65px !important;
    }

    .sp_pb65 {
        padding-bottom: 65px !important;
    }

    .sp_pl65 {
        padding-left: 65px !important;
    }

    .sp_mt70 {
        margin-top: 70px !important;
    }

    .sp_mr70 {
        margin-right: 70px !important;
    }

    .sp_mb70 {
        margin-bottom: 70px !important;
    }

    .sp_ml70 {
        margin-left: 70px !important;
    }

    .sp_pt70 {
        padding-top: 70px !important;
    }

    .sp_pr70 {
        padding-right: 70px !important;
    }

    .sp_pb70 {
        padding-bottom: 70px !important;
    }

    .sp_pl70 {
        padding-left: 70px !important;
    }
}

@media screen and (max-width: 767px) {
    .pconly {
        display: none !important
    }
}

.sponly {
    display: none !important
}

@media screen and (max-width: 767px) {
    .sponly {
        display: block !important
    }
}